00:00:00 --- log: started forth/20.04.18 00:21:25 --- quit: _whitelogger (Remote host closed the connection) 00:24:28 --- join: _whitelogger joined #forth 00:41:24 --- join: xek joined #forth 00:50:39 --- quit: dddddd (Ping timeout: 250 seconds) 02:38:55 --- join: dys joined #forth 02:55:16 --- join: jsoft joined #forth 03:08:15 --- quit: iyzsong (Remote host closed the connection) 03:08:40 --- join: iyzsong joined #forth 03:35:27 --- join: TCZ joined #forth 04:09:04 --- join: rdrop-exit joined #forth 04:10:59 crest, here is that promised latest-bitfields.sample.fs http://dpaste.com/2M3FCMN 04:12:23 crest, my stack comments should all be ok now, please yell if you find errors ? 05:15:25 tp: What little computer did you recommend? 05:15:30 Not the blue pill 05:16:13 veltas, recommend to whom ? 05:16:32 to you ? 05:16:36 To me for messing around, writing little programs etc 05:16:37 Yes 05:16:49 well that depends on what you want 05:16:52 I said I was tempted to get a blue pill 05:16:55 And you said don't get that 05:17:11 they are a pain 05:17:20 I want something I can write programs for, not worried about how much GPIO it has, if it has cool sensors etc I might play around with those 05:17:22 whats your budget ? 05:17:23 No project is panned 05:17:26 planned* 05:17:32 Well these chips are cheap right? 05:17:39 which chips ? 05:17:45 Blue pills 05:17:47 So budget is like $20 or less 05:17:57 $30 my fiance says 05:18:01 you can get a lot for $20 05:18:07 $30 is better 05:18:10 It is a birthday present idea 05:18:25 a blue pill is $2 and may not even work, so thats $2 + postage wasted 05:18:42 If I end up with a device that has an interesting processor arch, and very little RAM, and limited ROM, I will still have fun with it 05:19:04 tell your fiance I think she is very sweet for buming it up $10 05:19:09 bumping 05:19:19 lol 05:19:40 my typing is terrible and this kb is worn out 05:20:09 for something to have fun with, I think a M4 is a good idea 05:20:29 How much? 05:20:44 they have various external peripherals, 1MB flash, 192kb ram and are cheap 05:21:01 better you search in your country as I'm geolocked to Australia 05:21:13 let me get a part numbers suggestion for you 05:21:52 Thanks 05:22:08 --- quit: rdrop-exit (Quit: Lost terminal) 05:22:37 Of course if I have forth support I will try that out ;) 05:22:57 of course 05:23:27 There is this 'mecrisp' thing I might look at, keep hearing about it somewhere.... 05:32:36 veltas, https://www.arrow.com/en/products/stm32l476g-disco/stmicroelectronics 05:33:06 thats a good one and will run mecrisp-stellaris and tabemann's Zeptoforth 05:33:42 it's the same board he is using for development 05:34:05 thats definitely the one for you 05:35:18 Mecrisp-Stellaris has a STM Nucleo L432KC STM32L432KC which is pretty close, but tabemann will have a version hes modified to run on the stm32l476g I'm sure 05:35:28 it's only a USART change 05:36:29 veltas, I maintain the 'mecrisp-stellaris' Unofficial Doc page: https://mecrisp-stellaris-folkdoc.sourceforge.io/ 05:37:01 the board comes with a usb programmer/debugger built in 05:37:24 so you wont need anything but a usb cable to get started 05:37:25 I'm assuming you don't actually need "Windows OS" 05:37:29 as it says on the datasheet 05:37:30 nah 05:37:31 Nice 05:37:39 I dont have windows 05:37:51 plus it's fast and has tons of resourced 05:37:56 LEDS on the board 05:38:13 What size is it? 05:38:17 Like physical size? 05:39:05 https://www.st.com/resource/en/data_brief/32l476gdiscovery.pdf 05:39:16 that's the brief product spec 05:39:59 LCD 24 segments, 4 commons in DIP 28 05:40:00 package 05:40:00 Seven LEDs: 05:40:00 ­ LD1 (red/green) for USB communication 05:40:00 ­ LD2 (red) for 3.3 V power on 05:40:00 ­ LD3 Over current (red) 05:40:02 ­ LD4 (red), LD5 (green) two user LEDs 05:40:04 ­ LD6 (green), LD7 (red) USB OTG FS LEDs 05:40:06 Pushbutton (reset) 05:40:08 Four directions Joystick with selection 05:40:13 USB OTG FS with micro-AB connector 05:40:15 SAI Audio DAC, Stereo with output jack 05:40:17 Digital Microphone MEMS Accelerometer and 05:40:19 magnetometer Mems 05:40:21 Gyroscope MEMS 05:40:23 128-Mbit Quad-SPI Flash memory 05:40:25 MCU current ammeter with 4 ranges and auto 05:40:27 calibration 05:40:29 Connector for external board or RF-EEPROM 05:40:31 That doesn't have size 05:40:34 those external peripherals should keep you ammused 05:40:46 Like just simple w x h dimensions 05:41:03 it's about 4" x 2.5 " 05:41:22 around that size, I dont have onw 05:41:33 Yeah it looks quite big 05:41:44 Is there a smaller suggestion? 05:42:10 ???? 05:42:14 it's small! 05:42:49 How big is a blue pill? 05:43:02 if yoiu get something too small like a bluepill youll have to get additional board to flash it etc 05:43:08 Hmm 05:43:26 Yeah tbh it's fine for an entry board, if I get into it maybe I'll consider getting something smaller 05:43:44 I dont have one but theyre really small about 2" by 1" 05:44:46 I mean in the case of the STM, the chips run standalone if you can solder them and have a programmer or serial board 05:44:58 then you can have *really* small 05:45:07 but you DONT want a small dev board 05:45:35 theyre nothing but a hasle 05:47:41 veltas, thislink is better but no stock https://www.mouser.com/ProductDetail/STMicroelectronics/STM32L476G-DISCO?qs=%2Fha2pyFaduhpQt54jv3PaFtNDAp9rq2HiRomCx%2FyuVd0JBG6icCrpw%3D%3D 05:50:40 tp: https://uk.farnell.com/stmicroelectronics/stm32l476g-disco/dev-board-mcu-fpu-discovery/dp/2493817 ? 05:53:09 This looks like the right price but the product code is different, says STM32L476VG 05:53:15 Is that a typo? 05:53:19 no 05:53:29 but probably be ok, let me have a look 05:54:16 tp: i want to try out a serial connection to mecrisp because killing the usb serial with each reset gets annoying 05:55:01 but my ftdi 232 boards have only cts and dtr on the 6 pins they soldered in 05:55:34 veltas, that board is fine and they have a cheaper one as well https://uk.farnell.com/stmicroelectronics/nucleo-l476rg/dev-board-arduino-mbed-nucleo/dp/2493816?MER=sy-me-pd-mi-acce 05:55:43 can those chips be configured to swap dtr and rts? 05:55:46 veltas, $12 05:56:17 crest, yeah it is annoying, which is why I dont use USB 05:56:28 or should i just solder a wire to the rts pin? 05:56:47 crest, you only need CTS on the serial dongle :) 05:56:51 --- join: X-Scale` joined #forth 05:57:02 RTS is on the bluepill 05:57:26 PA11 or PA12? 05:57:27 --- quit: X-Scale (Ping timeout: 256 seconds) 05:57:27 --- nick: X-Scale` -> X-Scale 05:57:44 veltas, bit the cheaper board has no external goodies 05:57:54 but what if the pc driver can't keep up with the serial connection :-P 05:57:58 crest, PA11 I think 05:58:22 crest, ??? it's the board that cant keep up with the pc 05:58:35 ahh I missd the :P 05:59:07 i don't expect the receive queue to overflow on the freebsd/macos end 05:59:07 What external goodies am I missing out on? 05:59:09 Sensors? 05:59:23 crest, you running a 8 MHz 8085 powered laptop from 1985 ? 05:59:51 tp: the slowest is a 2,7ghz dual core 05:59:56 veltas, 05:59:59 On-board ST-LINK/V2-1 supporting USB re-enumeration capability 05:59:59 Interfaces supported on USB - virtual com port, mass storage, debug port 05:59:59 Mbed-enabled (mbed.org) 05:59:59 Seven LEDs 05:59:59 Pushbutton (reset) 06:00:00 Four directions joystick with selection 06:00:02 USB OTG FS with micro-AB connector 06:00:04 SAI audio DAC, stereo with output jack 06:00:06 Digital microphone MEMS accelerometer and magnetometer MEMS 06:00:08 Gyroscope MEMS 06:00:11 128Mbit Quad-SPI flash memory 06:00:13 MCU current ammeter with 4 ranges and auto calibration 06:00:15 Connector for external board or RF-EEPROM 06:00:17 Power supply options - ST-LINK/V2-1, USB FS connector, external 5V, CR2032 battery (not provided) 06:00:19 Extension connectors 06:00:21 crest, too slow get a real PC ! 06:00:42 crest I can bump this up to 5 GHz 06:01:10 crest, the only problem is if I do it will blow the hoses of the water cooler in about 30 seconds ... 06:01:24 "model name : Intel(R) Pentium(R) M processor 1.70GHz" 06:01:36 "cpu MHz : 1200.000" 06:01:45 veltas, date 1873 ? 06:02:57 This is my main dev computer 06:03:31 I like cheap disposable stuff, sue me 06:04:30 It's why I was attracted by the 'blue pill' 06:05:49 veltas, my lawyer says he will need your postal address to sue you ;-) 06:06:05 veltas, we can do cheap and interesting ? 06:06:21 veltas, how about a RISC-V board for $5 ? 06:06:31 it runs mecrisp-quintas fine 06:06:47 mecrisp-quintus Forth 06:07:25 veltas, and you can program it with DFU-UTILS from the USB port 06:08:36 veltas, it even has a color lcd and is TINY 06:08:39 https://www.seeedstudio.com/Sipeed-Longan-Nano-RISC-V-GD32VF103CBT6-Development-Board-p-4205.html 06:08:48 That does sound more interesting 06:09:13 I have one 06:09:50 it's on the bleeding edge of development 06:10:23 it's like those cheap house sales signs "fantastic for the DUI guy!" 06:10:34 DIY I mean 06:10:48 "renovators dream!" 06:11:36 The STM discovery board and chip will make everything as easy as it can be, the Sipeed-Longan-Nano ? not so much 06:11:52 but no harder than a blue pill 06:12:35 Hmmm think I'll go with the discovery for now 06:13:12 veltas, I also have one of these: https://www.seeedstudio.com/Wio-Lite-RISC-V-GD32VF103-p-4293.html 06:13:18 but havent used it 06:13:21 Might as well get both 06:13:30 That RISC-V one being so cheap 06:13:34 veltas, VERY good choice with the Disco 06:14:03 veltas, yeah, and it will give you a good comparison, cheap Disco vs cheap Chinese home grown 06:14:38 veltas, getting both will assure us that #forth wont be boring for the next few years ;-) 06:15:29 veltas, and the Sipeed-Longan-Nano-RISC-V-GD32VF103CBT6-Development-Board now has a ton of new words from a contributor 06:18:35 veltas, for the Longan nano: https://sourceforge.net/projects/mecrisp/files/mecrisp-quintus-0.27a-experimental.tar.gz 06:19:42 veltas, for the Disco: https://sourceforge.net/projects/mecrisp/files/mecrisp-stellaris-2.5.3.tar.gz 06:21:49 --- quit: irsol (Ping timeout: 256 seconds) 06:22:42 --- join: irsol joined #forth 06:24:53 veltas, Mecrisp-Stellaris has a binary ready to run on the STM L476 Discovery with STM32L476VG, no mods needed 06:25:36 I will get those mecrips when I get the boards probably 06:26:21 you dl Mecrisp-Stellaris from the link I gave you above 06:26:41 Actually wget worked so now I have them 06:26:50 and of course if you want a full blown Eclipse C system, theyre all free doe the Disco board 06:27:01 Eclipse ugh 06:27:03 ewww 06:27:06 doe = for 06:27:20 yeah, only 4GB of install probably 06:27:27 I hate Eclipse 06:27:33 And eclipse tools 06:27:41 so would your lappie 06:27:46 Yes 06:28:05 Why do you think I have this laptop? Nothing I do needs more than that 06:28:15 I installed the eclipse STM 'atollic studio' on a Intel NUC with a dual celeron 06:28:17 Although I will admit when I use Facebook occasionally it struggles 06:28:42 to change a menu on that massive system took about 10 minutes on the NUC, LOL 06:29:18 Gross 06:29:31 yeah, it almost made me vomit 06:29:41 --- quit: TCZ (Quit: Leaving) 06:30:07 tp: my workstation is a 16 core amd 3950x with 32gb ram 06:30:09 it looks pretty and so capable, in reality is just horrible 06:30:22 but at the moment i'm on macbook from 2012 06:30:29 crest, youre low end as well huh ? 06:30:45 Eclipse tools are usually just a load of stuff that worked well on the terminal but now I have to run a massive bloated Java app with a horrible interface 06:30:45 ;-) 06:30:50 I hate IDEs so might be biased 06:30:58 its fast enough for ssh and mosh 06:31:18 veltas, when a Forth person says they have a IDE, they are talking about something completely different 06:31:26 crest, lol 06:31:30 and modern browsers work better on macos than freebsd if you have to use a webcam and audio 06:31:34 tp: What are they talking about? I'm interested 06:31:48 --- quit: iyzsong (Quit: ZNC 1.7.1 - https://znc.in) 06:31:58 IDEs aren't inherently bad, just all IDEs I see are like Visual Studio or Eclipse or something 06:32:09 veltas, they mean 'a Integrated Development System' not anything like Atollic with eclipse 06:32:33 Isn't Forth itself an integrated development system? 06:32:48 yeah, thats right, they really mean a MBM a 'Massive Bloated Monolith" 06:33:16 tp: does the default kernel include hardware flow control? 06:33:23 veltas, in a way it is yes 06:33:41 crest, no, matthias didnt need it 06:34:06 crest, matthias is fine with a 200ms EOL and picocom 06:34:23 I watched a good YouTube rant about how new Visual Studio is worse than the old one because its interface (i.e. the main point) is so slow and bloated 06:34:31 is it enough to reconfigure the hardware or i have to change the input/output hooks as well? 06:34:35 It's all written in Visual BASIC so no surprise there 06:34:43 veltas, I'm not surprised, I hate all that junk als well 06:35:09 crest, ALL you need to do is enable RTC on the USART 06:35:13 oops 06:35:15 RTS 06:35:34 so a simple init word is enough? 06:35:48 and select a pin to go with it, plus a Alternate Function config 06:35:49 --- join: Zarutian_HTC| joined #forth 06:35:53 --- quit: Zarutian_HTC (Ping timeout: 265 seconds) 06:36:10 i just have to find out how to configure the pin and bump the uart speed as far as it will go 06:36:29 crest, I dunno, Im about to try a modified init for the dev edition 06:37:01 crest I may have a ready made binary somewhere 06:37:12 one without a USB default 06:37:27 want me to look ? 06:37:40 could the boot 1 jumper on the bluepill be used to switch between serial and usb? 06:37:56 crest, no 06:38:27 crest, not unless you want to flash a binary via serial ? 06:38:41 https://community.st.com/s/question/0D50X00009XkYcY/how-to-boot-from-sram-on-stm32l053 06:39:05 crest, a standard Mecrisp-Stellaris will expect a serial connection 06:39:52 .oO( i wonder if its possible to not reset the usb hardware keep the user serial connected during a reset ) 06:40:30 not on my bluepill binaries, it will always revert to usb on reset 06:40:38 thats what the users wanted 06:41:20 hmm 06:41:21 I want to support that syntax now 06:41:24 .oO( 06:41:30 Alias for ( 06:44:29 tp: I do really hate features that make me think "somebody got promoted for that" 06:45:14 Like Visual Studio changing theme, or getting a dark theme, I'm just thinking maybe they should do a 'fast' theme that would be good. 06:47:26 And then there are changes in programs designed to actually annoy me, like a notification that a program I'm using is about to change how it looks to a "new" more "modern" style that's "easier to read" or something and I just know it's going to lose features, get slower, and display less on the screen 06:48:17 this is my IDE https://www.youtube.com/watch?v=kDi-Nlz3-QA&t=5s 06:48:23 (veltas) 06:48:41 hahaha, I'm the same 06:48:55 you left out ... "cost more" 06:49:36 Overall a lot of repetition of me getting annoyed by people who invest time and money in making my stuff worse 06:49:57 it's for .... the children 06:50:20 I also use vim 06:50:35 cool 06:51:20 veltas, I like simple and I like fast 06:51:49 my system isnt all shown there and it was one of my first ever videos, so pretty crappy 06:52:45 veltas, Ive been thinking about doing another one but there is a lot to show, so I'll need better video compression etc 06:53:00 vim is bloated but I don't care because it has simple setup, runs quickly, and seems to mostly have stuff that lets me work faster 06:53:08 It's not VS bloated though lol 06:53:26 it's not really bloated to anything like that 06:53:38 it's crazy fast here 06:54:00 but I need all the VIM facilities, I cant use a simpler editor 06:54:40 something like Geany wont do much of the stuff I must have 06:55:12 vim is fast on *my laptop* so it is 'fast' lol 06:55:24 yeah it's ok 06:55:43 If I could get 95% of the features I use in vim in something 10% of the code size I would switch 06:55:52 Because inevitably I could understand it and configure it easier 06:56:04 Well it would have to be as fast too, but probably it would be 06:56:47 Some people use the vi stuff that's around still but I don't like vi, lots of stuff is pedantic in vi 06:57:54 same 06:58:21 Features of vim that actually distinguish it for me: macros, whole line select, block select, uppercase/lowercase conversion, search for current word, search forwards/backwards on last search, move backwards/forwards in file jumping history 07:00:06 Save/load session, pattern replacement on file/selection 07:00:26 That's all I can think of, some of those you'll expect on normal editors 07:00:51 I also use it to add Forth diag words and include the line number 07:00:58 in some debugging 07:01:10 Moving forwards/backwards through the file like you would press back/forwards on a browser is super useful and vim is the only editor I have seen do it 07:01:27 it a kind of C 'printf' favility 07:01:36 Nice 07:02:04 emacs has some stuff that I prefer over vim, but it was not worth staying in emacs for 07:02:10 It has one m 07:02:17 'mode' for input 07:02:28 Sorry hit enter too soon 07:02:37 i like emacs but dont want to try and make a competing system for what I have already with it 07:02:54 So the commands you learn for text editing work while editing, moving, and in commands. Most of those commands actually work on most Linux prompts including bash, python, whatever 07:03:30 In vim you have to learn 2 different sets of key commands and inevitably most people don't (including me) 07:03:49 so I feel like an ape correcting vim commands 07:04:26 pressing and holding left key while I'm in a supposedly powerful text editor because I can't remember the command to move one word etc 07:04:57 haha 07:04:59 yeah 07:05:10 I'm slow editing anyway 07:05:17 Forth is good for this 07:05:33 Because it's so factored you could edit it in any editor for roughly the same productivity 07:05:44 And it's hard enough usually that I couldn't benefit from writing faster anyway 07:07:20 you can, but I use my IDE 07:07:44 I never use the terminal to enter code except for short experiments 07:08:26 i do most of my experiments in GVIM anyway as I only have to click on the MAKE button to have them uploaded as you saw in the video 07:08:58 it uploads at 460800 baud after stripping all comments 07:09:51 if the compiler errors I get a beep and the error has a RED "ERR" flag inserted in the problem source location 07:10:30 i also log it all so I can grep for the error if I cant be bothered scrolling up the terminal screen with my mouse wheel 07:10:42 this is all 100% automated 07:13:51 --- join: inkajoo joined #forth 07:13:54 Streaming game development in Forth all day for Ludum Dare #LDJAM #ForthLang #gamedev http://twitch.tv/inkajoo 07:30:59 inkajoo: Might watch in a bit 07:31:47 tp: 07:31:47 https://www.aliexpress.com/item/4000368549335.html?src=google&src=google&albch=shopping&acnt=494-037-6276&isdl=y&slnk=&plac=&mtctp=&albbt=Google_7_shopping&aff_platform=google&aff_short_key=UneMJZVf&&albagn=888888&albcp=1622677378&albag=57224001810&trgt=743612850714&crea=en4000368549335&netw=u&device=c&albpg=743612850714&albpd=en4000368549335&gclid=EAIaIQobChMIo4KttIny6AIVDevtCh0HYQNJEAQYCyABEgJ71vD_BwE&gcls 07:31:53 rc=aw.ds 07:31:53 Oh let me try again 07:31:59 https://www.aliexpress.com/item/4000368549335.html 07:33:48 ill take seed studio over alibaba and the 40 theives anyday 07:37:15 seeed have that horrible website thing of "as soon as you scroll down a bit because you wanted to see info further down we are going to lop off 40% of your screen with our moving banner that should have just stayed at the top but then I wouldn't have gotten the promotion 07:38:08 --- quit: dave0 (Quit: dave's not here) 07:41:45 * Zarutian_HTC| uses pico if he has to use a text editor in a terminal, otherwise he use Notepad++ often with wine or recompiled to work on a linux. (TexfWrangler I use on MacOS X) 07:42:30 well nighto folks, it's midnight here 07:42:44 tp: see ya around 07:42:46 Zarutian_HTC|, pico is ok 07:42:51 Zarutian_HTC|, see ya! 07:43:08 --- nick: Zarutian_HTC| -> Zarutian_HTC 07:43:46 Night tp 07:44:09 Zarutian_HTC: Have you tried scintilla-based alternative on Linux? 07:44:32 They're rubbish but so is Notepad++ (shots absolutely fired) 07:45:46 nope, often I am remoting into some machine and dont have the time or inclination to try to install or setup something 07:46:57 what I have been looking for is resource light code editor with semantic highlighting 07:48:35 gedit is fine, but it has syntax highlighting not sure about semantic 07:48:43 Even the new gedit is fine 07:48:49 that is, say an identifier is coloured the same unless it is being shadowed (in such languages that support that) 07:48:56 You need to enable color syntax, line numbers, etc if you want them 07:49:29 Does anyone here use any programming tools or everyday programs written in Forth? 07:49:56 I know tp does, since he uses FreeBSD I am guessing he uses the Forth-based kernel startup or whatever it is 07:50:02 yeah, I have used gedit but it sometimes seem to want to use propotional small font instead of monospaced for some reason 07:52:37 and dont get me started on IDEs or some electronics design software 07:55:56 veltas: does an home made l seven segment clock count? 07:56:02 --- join: onat joined #forth 07:56:25 I had one running for years, programmed in forth 07:57:14 an atmega328p jobbie with a ported eForth on it iirc 07:57:16 I guess I'm talking more about software on your computer 07:59:26 I see, no not recently. Though I have used gforth to do bit of electronics number crunching 08:00:30 finding a fixed point for a certain resistor network iirc 08:01:41 most of the spice simulator crapped out, gave wrong answers, or were just too costly runtime wise 08:07:50 tp: Bought it from ali because I want the whole chinese experience ;), you can sue me for that too 08:38:10 Zarutian_HTC: Spice simulator? 08:38:32 --- quit: jsoft (Ping timeout: 256 seconds) 08:39:54 right, electronic circuit simulator. The spice line started with ltspice. 08:40:47 but one problem is that they are too inaccurate and cannot simulate certain simple circuits 08:42:05 ltspice was an old project by an phd student in theoritical electronics engineering 08:43:32 veltas: ^ 08:45:18 --- join: TCZ joined #forth 08:57:44 --- quit: TCZ (Quit: Leaving) 09:08:05 --- join: merkc0 joined #forth 09:08:21 is there any way to execute a loop in interpret mode ? 09:09:46 2 0 DO CR LOOP 09:09:46 ^ -312 Only for compilation ! 09:10:36 merkc0, you could make a word then undefine it after you run it 09:11:38 more specifically, I have this problem 09:11:51 A: ' NOP EXECUTE ;A \ this works 09:11:55 but this doesn't: 09:12:09 A: ' NOP 3 n-execute ;A 09:12:23 : n-execute ( xt n ) 0 DO DUP EXECUTE LOOP DROP ; 09:13:04 A: ' NOP 3 n-execute NOP 09:13:04 ^ OFFSET OR IMMEDIATE OPERAND NOT ALLOWED WITH THIS 09:13:04 INSTRUCTION 09:14:30 A: ' NOP EXECUTE ' NOP EXECUTE ' NOP EXECUTE ;A \ also works 09:17:58 Okay the issue is that DO..LOOP assumes the stuff in between is compiled and not 'consumed'. [IF] is possible because you are only doing the input once, loop would not be possible without compiling 09:18:04 That's my 2 cents 09:19:15 It's not impossible but not surprised it's not supported in interpret mode 09:27:37 back 09:27:40 hey guys 09:29:01 control structures other than [if] [else] [then] are not normally allowed when interpreting in Forth 09:29:47 --- quit: Zarutian_HTC (Ping timeout: 250 seconds) 09:43:22 --- join: Zarutian_HTC joined #forth 10:42:28 tp: when you get back - if you have had no luck trying to use the F407 full binaries, that's because they've been corrupt - try the newest ones 10:49:18 --- join: dddddd joined #forth 11:06:48 --- quit: onat (Quit: Lost terminal) 11:49:18 --- quit: merkc0 (Ping timeout: 258 seconds) 12:13:46 --- join: TCZ joined #forth 12:51:49 --- quit: C-Keen (Quit: WeeChat 2.6) 12:55:56 veltas: I use a variety of applications written in forth daily for both personal projects and when at work 12:56:14 That's what I want to hear 12:56:20 In retro? 12:56:23 yes 12:56:26 Or other kinds as well? 12:57:31 all retro, I don't use other forths for anything I rely on 12:58:53 (nothing against other forths; retro is just too comfortable for me at this point as I know it completely) 12:59:54 Well it's your forth right? 13:00:12 yes 13:01:20 I think it's a good sign that you use it all the time for your stuff 13:01:29 A good sign for forth and for retro in particular 13:01:42 I mostly use unix hosts, ficl is buggy, gforth is a pain to build, I've not used pforth much, and quite a few others (x4/isforth, reva, helforth, etc) are 32-bit Linux/x86 only and I need to run on a wider variety of unix systems 13:01:43 I think that's a good benchmark for a language 13:02:14 for retro, I use it as my first choice for projects in almost every case 13:02:21 Right now my go-to languages for "getting stuff done" are Lua and C, I am not really religious about either and would like finding a language to replace at least one of those 13:03:32 gforth *is* a pain to build 13:04:04 (exceptions are mainly where I have to integrate into an existing codebase, which is typically involving either C or Python; even then, if I can get by with using retro and communicating via pipes or sockets, I prefer to do so) 13:04:59 I think I've managed a working gforth build once, on a linux system, and that was a few years ago 13:05:36 Does retro have support for calling C directly? 13:05:51 no 13:06:17 Is there a reason? 13:06:35 I've not needed this in my programs so far 13:07:47 I *have* experimented with this a little, but not enough to release yet 13:07:53 Do you think that would work nicely? 13:09:25 it'll require some work; retro's internal model is purely 32-bit or 64-bit, so there'll be need for bridging to allow tranlsation between byte and cell addressed memory at a minimum 13:10:31 Shame that we moved on from K&R C 13:14:08 my usual modus operandi for C in Forth is basically hand translate it 13:15:14 crc: Is there anything that would stop there being a 16-bit cell retro? Is it an assumption in retro that cell sizes are at least 32-bit? 13:16:17 veltas: the kernel is written for 32-bit or larger cells, but this could be changed (I've done it once as a test) 13:17:11 I'm not familiar with forth terminology, is the 'kernel' the non-portable part that provides the words the portable part uses? 13:17:34 I shouldn't say 'portable' because I mean 'platform-specific' 13:17:47 It's *portable* if one part is platform-specific 13:18:08 Lockdown is definitely hurting my talking/writing ability... 13:18:09 specifically in retro, the kernel is the assembly portion of the system (which in retro, runs on an emulated misc architecture) 13:18:52 So the misc architecture is the bit that needs to be implemented for each system? 13:18:58 And some 'drivers' too I imagine? 13:19:11 the easiest way to run on a 16-bit system is to just compile the vm for 16-bits (and accept a performance hit as the 16-bit vm handles the 32-bit system) 13:19:16 yes 13:19:33 a minimal implantation of the vm in C is around 250 lines of code 13:20:15 john_cephalopod did an x86 assembly version that's just over 1kb of binary 13:20:48 Well I was wondering aloud about whether I could implement a 16-bit cell version in Z80, or how much would fit in that 13:21:25 The smallest I've done was running on a emulated 8086 system, with 64k of ram 13:22:27 Well if it was Z80 I'd run on the Spectrum 13:22:44 I don't assume it would fit, but maybe retro is quite small? 13:23:02 It looks very powerful but in forth I don't assume powerful = big 13:23:29 with 32-bit cells, it's about 40k; it'd be smaller with 16-bits 13:23:57 * crc *is* planning to do a version with 16-bit cells sometime... 13:24:41 (a food chunk of that is dictionary heads, since cells are 32-its, each character in a name uses 4 bytes currently) 13:25:01 Ooooh wow okay 13:25:27 Meanwhile in my forth I have a c-constant 13:25:34 I mean c-variable 13:25:39 For byte-sized variable 13:25:43 But c-constant as well 13:29:51 crc: Are your characters all UTF-32? 13:29:55 hey guys 13:31:48 veltas: I use ascii only, but it'll happily hold any encoding your os supports. On iOS, it uses utf8; I've explored utf16 on windows. I don't know of any hosts using utf32 though 13:32:38 * tabemann hates that he feels the need to make a whole new release for any minor mistake in zeptoforth 13:35:48 * tabemann is on his sixth release of zeptoforth within like a week, and only one of those was really due to new functionality 13:41:21 tabemann: release early and often, especially when it's still early in its life 13:42:03 iirc, with retro6, I was doing weekly releases for quite a while 14:48:09 --- quit: xek (Ping timeout: 260 seconds) 14:52:16 crc: this is more like daily releases 14:54:33 tabemann, no I havent tried Zeptoforth in about a week as Ive been busy trying to finish a binary release of my own which is nearly done 14:54:53 tabemann, but I always compile Zeptoforth as I like to read your changelog 14:55:28 tabemann, I'm very interested to try your pictured numerical output so I can test a new svd2forth release on it 14:55:59 the pictured numeric output is basically straight ANS 14:56:02 --- join: dave0 joined #forth 14:56:17 tabemann, I recommended a L476 to veltas so he can then try Mecrisp-Stellaris and Zeptoforth 14:56:52 tabemann, nice work, you didnt take long to implement it 14:59:50 the pictured numeric output itself was pretty simple 15:01:14 and essential for my svd2forth 15:02:04 a port of svd2forth to zeptoforth would certainly be cool 15:03:03 ill definitely do one for you 15:03:25 most of my work the last week has been fixing up the stack comments 15:03:56 it at a stage where I'm not aware of any issues now 15:06:11 I'm always not aware of any issues in zeptoforth, at least I run into them 15:06:34 *until I 15:06:42 yeah, hence crc's recommendation to release early and often 15:06:58 then others will find the problems also 15:07:27 my problem is I dont get much feedback 15:08:33 for me making a release is some work, because I have to make zeptoforth_full binaries for both the L476 and the F407 15:08:56 --- quit: gravicappa (Ping timeout: 240 seconds) 15:09:00 and this will become moreso in the future, as I support more boards 15:09:00 tabemann, I'd release only major and bug fixes in binary 15:09:27 any real forther will easily git-pull your work 15:10:00 bug fixes are the most common for me; e.g. I only did two minor releases for zeptoforth 15:10:36 hence release binaries infrequently 15:11:25 one thing I dont understand is why a binary is so much work ? 15:11:27 well... I'd prefer to catch bugs before too many users run into them 15:11:46 so I'd do binary releases for bug fixes 15:12:02 for me a binary is a single shell script command 15:12:20 and as long as I'm doing those, I might as well also do them for minor releases, since there aren't too many of them 15:12:20 I've automated everything 15:13:52 well the creation of "full" binaries cannot be fully automated 15:14:01 why ? 15:14:30 you only have to grab the full dictionary and make it into a binary ? 15:14:36 thats what I do 15:14:49 tabemann: nothing wrong with that 15:14:58 using the ihex upload etc 15:15:26 tabemann, it's all scriptable 15:15:44 Have a stable lik to pont to the latest release and advise people to use that 15:16:07 * crc has hourly updates between releaee snapshots now 15:16:09 tabemann, is your terminal unable to auto grab a log ? 15:16:23 tp: screen is able to 15:16:35 the question is how to make e4thcom scriptable 15:16:43 as I am using e4thcom for code loading 15:16:59 tabemann, yeah, e4thcom would be a problem I think 15:17:56 crc, you do have a very slick and well organised system! 15:18:41 okay, I'm gonna take a walk in a moment - I'll be back laater 15:18:49 tabemann cya 15:22:47 crc: Why does your latest.tar.gz have two snapshots in it? 15:23:12 Oh no it doesn't I guess I already had it downloaded lol 15:23:23 that makes more sense 15:23:30 it shouldn't... 15:23:35 veltas, I hope your girlfriend is a lawyer with all the suing going on lately ? ;-) 15:24:15 tp: She's not my girlfriend she's my *fiance* :-P 15:24:33 veltas, oops, apologies, I forgot! 15:24:47 I forgot I downloaded RETRO, and I have no idea why I did 15:25:02 ok 15:25:03 I think maybe I was comparing forth implementations or something? 15:29:25 perhaps 15:32:24 I like automated snapshots and updates; my latest.tar.gz, html formatted examples, documentation, retro/native binaries, and retro-unix.c amalgamation are all rebuilt via a few simple cron jobs 15:37:10 crc: Hey what did you think of the SVFIG forth demo Chuck Moore did last year? 15:37:48 veltas: I don't know if I've watched that 15:38:06 Was this one and had some interesting stuff in it https://www.youtube.com/watch?v=3ML-pJFa8lY 15:39:28 crc, same here, I spent ages automating my projects 15:39:47 veltas: watching now, thanks 15:39:47 Just wondering because he has a personal forth he demos there, which is different to colorforth but has some stuff from that 15:40:04 crc, my philosophy is "automate wherever possible" 15:40:05 And I see in the retro docs that retro took some ideas/inspiration from colorforth 15:40:15 tp: same philosophy here 15:41:45 crc, apart from the possible massive time savings, some of my stuff must be automated to cut errors to zero 15:42:57 crc, my svd2forth is one example, it's just not humanly possible to hand translate 2000 registers and 17,000 bitfields into Forth words 15:56:37 inkajoo: how is your game going? 15:58:00 coming along.. we ran into some really hairy bugs that took up the better half of the day, but we overcame and are now actually putting in the gameplay elements. you'll be playing a designated driver leading a drunk guy to the car. 15:58:39 Is it a team? 16:03:43 back 16:10:36 --- quit: TCZ (Quit: Leaving) 16:10:46 watching this, I see clear evolutions from the old x86 colorforth design, though I disagree with him regarding the usefulness of comments 16:12:05 crc: I really enjoyed watching it in here, his attitude, the stuff he came up with, whole thing 16:12:19 Can't say I agree with him either re comments but I don't think he was preaching 16:12:45 s/ in here// 16:14:42 --- quit: MrMobius (Ping timeout: 256 seconds) 16:23:02 --- join: MrMobius joined #forth 16:24:30 it's me and a friend, yeah. 16:35:19 crc: Anything you liked in there? 16:36:27 it's interesting to see what he's doing now; I was surprised that he's running under windows 16:36:34 I've got respect for a man that will segfault his demo like 10 times and shrug it off 16:37:16 yeh, I'd have had a hard time dealing with that 16:37:35 --- join: [1]MrMobius joined #forth 16:37:56 I think that I'd struggle because that would be considered very bad for me 16:38:18 But I think his own standards on his personal project seem to be "that is fine, working as intended, I typed the wrong stuff after all" 16:38:23 * crc would likely have rehearsed a presentation lke this for a rather significant amount of time 16:39:14 the use of super & subscripts in addition to colors is interesting 16:40:12 --- quit: MrMobius (Ping timeout: 264 seconds) 16:40:12 --- nick: [1]MrMobius -> MrMobius 16:41:29 crc: c:consonant? and c:vowel? 16:41:38 Have you used those? 16:43:24 Also what is Dictionary usually called in forths? Or what are some names you've seen? 16:43:57 I have been struggling to figure out what I will call that 16:44:21 Well not struggling but I know somehow this is something almost all forths will have, just wondering what a conventional name for it is 16:45:14 every word in my core system (except some of the ASCII: wprds) is used in more than one of my larger applications 16:45:49 Just wondering what kind of thing you'd use those for 16:46:12 I've seen Dictionary named as `last` and `dp`. Not all expose dictionary in the same way 16:47:21 I have various filtering words that use those. (E.g., I have used them in a text analysis tool when counting different character types) 16:48:41 if I was using a hashed dictionary and not storing names, I might not have `Dictionary`, or it might be used in a different way 16:54:17 crc: Is there a ToC? http://forth.works/book.html 16:54:53 try this: http://forth.works/doc.html 16:55:53 the single file one has a sidebar with the TOC if the viewport is wide enough 16:57:29 1024x768 16:58:06 If I zoom out once I can see the sidebar 16:58:23 that may be too narrow; I think the sidebar pops up at 1280 width 16:59:26 I'll have to see if I can tweak it to work at 1024 width 16:59:59 You don't have to do that 17:00:48 But it is a shame to have a situation where I don't know how to use a page correctly because my screen is smaller and stuff gets deleted 17:00:54 back 17:03:29 --- join: TCZ joined #forth 17:11:02 --- join: jsoft joined #forth 17:12:01 The "Code It Yourself" manifesto reads like a parody of the Agile manifesto, I wonder if that's intentional 17:13:09 crc: Is there a bit in the guide explaining [ and ] ? 17:18:24 veltas: no, but I will rectify that this weekend 17:18:53 I think the CSS for the sidebar should be working for 1024 width now 17:21:43 crc: It is 17:22:25 I am into the "Aim For The Bushes" manifesto 17:24:00 Okay nn, thanks for your support today crc hopefully I will play with retro at some point, was just trying to 'learn' the language a bit properly 17:29:55 --- quit: inkajoo (Ping timeout: 256 seconds) 17:52:14 --- join: rdrop-exit joined #forth 17:54:42 good morning Forthwrights (-_-)zzz c[] 17:54:52 hi rdrop-exit 17:55:05 hi crc :) 17:56:00 * crc should write a bot to count the nunber of cups of coffee that appear in this channel 17:56:21 :-)) 17:56:53 morning Forth Zen Guru! 17:57:12 hi Forth Master Tech (tm) 18:02:03 rdrop-exit, how goes Manilla ? 18:03:23 ok, more of the same 18:04:43 c[] 18:05:55 --- quit: TCZ (Quit: Leaving) 18:08:30 --- join: iyzsong joined #forth 18:37:03 --- join: boru` joined #forth 18:37:06 --- quit: boru (Disconnected by services) 18:37:08 --- nick: boru` -> boru 18:59:10 what's new in the forth world? 19:01:25 rdrop-exit, I think Ive finished my stack comments, would you mind casting a eye over a short summary of my different auto generated words ? 19:02:11 sure 19:03:25 http://dpaste.com/2M3FCMN 19:07:21 what is the definition of TSC_CR ? 19:08:18 I guess I could change "x" to 1|0 where the BIT word is used, as there is only 1 bit involved ? 19:08:48 TSC_CR is a register so it's definitely is a constant representing it's address 19:09:37 $40021000 constant RCC \ Reset and clock control 19:09:38 184 RCC $0 + constant RCC_CR ( ) \ Clock control register 19:10:05 184 is a file line number sorry 19:10:32 thanks 19:10:40 pleasure 19:15:42 i see I've been working on this since at least 2017 19:15:45 adf1d020e1 2017-07-04 12:05:34 Code_Defect Closed some legends fail to be selected in svdcutter.xsl edit 19:15:45 1ab7a75e18 2018-05-13 03:13:39 Code_Defect Closed generic register print leaves output on stack edit 19:15:45 d37ea73d20 2020-04-18 10:37:41 Code_Defect Closed read only has stack comment input byte 19:17:26 hey guys 19:17:33 hi tabemann 19:17:36 hey tabemann 19:18:27 tp, I don't see anything weird, I'm half-awake though 19:18:32 rdrop-exit, that bitfields file is 109kb and only has 9/33 peripherals selected, and of those the file you see was just a few items 19:18:40 rdrop-exit, well thats a start :) 19:19:09 although I would just use constants throughout 19:19:13 rdrop-exit, when you first looked at them you could have been 1/2 asleep and one eye closed and you'd have seen plenty of issues :) 19:19:36 rdrop-exit, I totally agree re constants thruout 19:19:52 rdrop-exit, sadly my efforts have failed so far 19:20:08 rdrop-exit, Ive had about 3 -4 tries and spent probably a week 19:20:45 I would keep the bitfields separate from the addresses 19:20:57 rdrop-exit, the problem is that the XML source gives offsets from the main register address, and it's all in decimal 19:21:24 I would do like this 19:21:45 $ 1234 constant RCC_CR 19:22:03 rdrop-exit, so I have to use XSLT to convert decimal to hex and sometimes the numbers are so large, XSLT reverts to sci notation 19:22:24 --- join: inkajoo joined #forth 19:22:24 16 bit contant %RCC_CR_HSEON 19:22:43 rdrop-exit, agree, thats what i initially did 19:23:26 rdrop-exit, but XSLT processing issues have prevented that 19:25:17 rdrop-exit, this is a sample from my next version V4 which has been suspended until I fix the problem 19:25:19 : RCC_CR_HSION %1 0 lshift $40021000 bi? ; \ RCC_CR_HSION; Internal High Speed clock enable 19:25:41 the stack notation etc is all the old stuff so thats not fixed 19:26:05 that line is fine as far as the constant goes 19:26:05 what's "bi?" 19:26:40 a old system to remind people to use bit! bis! or bit@ 19:28:31 rdrop-exit, this one shows my problem 19:28:34 \ NVIC_IPR8 (read-write) 19:28:34 : NVIC_IPR8_IPR_N0 ( %XXXXXXXX -- ) 0 lshift $E000E424.76837158203125e-07 bi? ; 19:29:10 there are around 20 of these scattered throuout my output 19:29:22 making V4 unusable for neo 19:29:26 now 19:32:51 ok, the XSLT problem is besides the point 19:33:10 ? 19:33:45 it prevents me producing "$ 1234 constant RCC_CR" 19:34:07 what does it produce instead? 19:34:42 --- quit: dave0 (Quit: dave's not here) 19:34:50 "$E000E424.76837158203125e-07 constant blah" only in some cases 19:35:06 let me rephrase that, what is your definition of RCC_CR at the moment? 19:35:09 my mcu doesnt understand sci notation 19:35:32 do you have a working definition of RCC_CR ? 19:35:45 RCC $0 + constant RCC_CR ( ) 19:36:00 what the heck is that 19:36:17 thats the working definition of RCC_CR 19:36:23 what's you definition of RCC ? 19:36:43 $40021000 constant RCC 19:37:21 so the definition of RCC_CR would be 19:37:41 $40021000 constant RCC_CR 19:37:52 is that correct? 19:38:06 $40021000 constant RCC_CR 19:38:11 thats from V4 19:38:14 correct 19:38:32 tp, where did the idea to use $ come from? ive only seen it for old 8 bit cpus 19:39:01 MrMobius, I thought that looking at $$$$ all the time would make me rich 19:39:04 many Forths use $ for hex input, and % for binary input 19:39:13 $ ff 19:39:20 % 11111111 19:39:26 exactly 19:39:30 neat 19:39:44 MrMobius, Id prefer "0x" but Forth has it's own ways 19:39:48 * crc uses an optional 0x prefix for hex 19:40:00 crc, very nice :) 19:40:33 Many old asseblers used $ and % 19:40:37 MrMobius, so I must use $ for 0x with Mecrisp-Stellaris and lots of other embedded forths 19:40:48 0x is more of a C thing 19:41:06 rdrop-exit, it's also a modern assembler thing 19:41:20 or maybe an Intel vs Motorola thing, I can't remember 19:41:27 Motorola used $ 19:41:54 Arm-none-eabi-as use 0x 19:42:00 tp, lets continue with your example 19:42:04 sure 19:42:22 $ 40021000 constant RCC_CR 19:42:27 k 19:42:36 thats my V4 svd2forth 19:42:47 16 bit contant %RCC_CR_HSEON 19:43:01 my latest working version is V3, that has all the fixed stack comments 19:43:07 --- quit: proteus-guy (Ping timeout: 258 seconds) 19:43:07 --- quit: proteusguy (Ping timeout: 258 seconds) 19:43:21 ok 19:43:29 17 bit constant %RCC_CR_HSERDY 19:43:45 etc... etc... 19:43:52 : RCC_CR_HSEON %1 16 lshift $40021000 bi? ; 19:43:55 V4 19:44:29 lol, V4 didnt even have many stack comments 19:44:43 that's what I'm saying, I would just define constants for each register address, and constants for each bitfield 19:44:54 I cant 19:45:10 due to a XSLT problem 19:45:23 as all these constants are derived 19:45:29 argh 19:45:43 you have this: 19:45:55 : RCC_CR_HSERDY ( -- x addr ) 17 bit RCC_CR ; 19:46:09 I would instead have this: 19:46:16 17 bit constant %RCC_CR_HSERDY 19:46:31 i understand 19:47:36 I cant however have that due to a XLST problem 19:47:42 that's unrelated to your XSLT/XML issues 19:48:00 no, it's directly related 19:48:21 where do you think the constant value comes from ? 19:48:28 your XSLT can't generate this code? 19:48:29 17 bit constant %RCC_CR_HSERDY 19:48:55 not consistently 19:49:02 only in most cases 19:49:14 and one fail is the whole lot fail 19:49:28 this is a XSLT fail 19:49:30 which part of this can't it generate? 19:49:36 17 bit constant %RCC_CR_HSERDY 19:49:53 --- quit: dddddd (Ping timeout: 250 seconds) 19:50:42 it generates that particular one fine 19:50:49 this is a example of a fail 19:50:52 : NVIC_IPR8_IPR_N0 ( %XXXXXXXX -- ) 0 lshift $E000E424.76837158203125e-07 bi? ; 19:51:02 see the constant it generated ? 19:51:12 $E000E424.76837158203125e-07 19:51:16 but we're not talking about that 19:51:24 we're talking about this 19:51:26 sure we are 19:51:31 17 bit constant %RCC_CR_HSERDY 19:51:32 thats the constant 19:51:53 we arent on the same page 19:52:25 having it generate RCC_CR_HSERDY ok, and fail with NVIC_IPR8_IPR_N0 is a system wide fail 19:52:48 there are thousands of constants that must be generated properly 19:53:49 forget about XSLT for a minute 19:53:59 no 19:54:10 XSLT is a vital part of this process 19:54:17 it cant be ignored 19:55:01 the fact that RCC_CR_HSERDY is generated is irellevent, it's a low hex value and it works 19:55:10 but some high values dont 19:55:32 step back for a second from your XML related issues, I am talking about how your factoring the code that you're attempting to output 19:55:40 * you're 19:55:46 oh ok 19:56:03 it's the same in all cases tho ? 19:56:16 it adds the base and the offset 19:56:23 to derive the constant 19:56:28 --- join: proteusguy joined #forth 19:56:28 --- mode: ChanServ set +v proteusguy 19:56:48 constant 19:56:58 yes 19:57:04 the address is derived 19:57:10 constant 19:57:14 from a base and a offset 19:57:25 correct 19:58:07 My equivalent to the code you're generating would be like that, a bunch of register constants, and a bunch of bitmask constants 19:58:37 sure 19:59:08 notice I'm not generating colon definitions 19:59:24 ok 19:59:29 it's all constants 19:59:37 ok 19:59:48 register constants, bitmask constants 19:59:53 thats no use to me tho 19:59:58 absolutely no use 20:00:21 the reason is all the bitfields MUST be words 20:00:30 a constant is a word 20:01:29 --- quit: iyzsong (Read error: Connection reset by peer) 20:01:32 ok 20:02:21 ahhm you want to make every bitmask a constant ? 20:02:31 --- join: proteus-guy joined #forth 20:02:42 that's what I would do 20:03:39 ok, I admit I had no clue there for a while 20:03:47 (whats new?) 20:03:54 --- join: iyzsong joined #forth 20:04:34 now a bitmask is just a particular bit(s) within a register 20:05:19 yes 20:06:15 so currently in V3 our example is 20:06:19 : RCC_CR_HSERDY ( -- x addr ) 17 bit RCC_CR ; 20:07:07 * incedentally, that definition also makes the actual bit easy to find in the doc 20:07:21 as in it's bit 17 of RCC_CR 20:08:28 rdrop-exit, so using that definition, how would you make RCC_CR_HSERDY a constant ? 20:09:05 I'm still not visualising what you mean 20:10:03 constant 20:11:48 the problem I see is that MUST be associated with RCC_CR it cant be used anywhere else 20:12:10 you can't have a 'floating' bitmask 20:12:33 and you cannot do it from memory 20:12:51 not with up to 17000+ bitmasks 20:13:28 well maybe YOU can, I can only remember up to 2 things at anyone time :) 20:13:34 that depends on the target, i.e. if some masks are the same across a subset of the registers 20:13:41 no 20:13:57 yes 20:14:00 masks are NOT unique at all times, not even across the same register 20:14:06 unfortunately 20:14:22 that's what I said, it DEPENDS on the target 20:14:26 ask me how I know this ? 20:14:32 no 20:14:35 hahah 20:14:40 :)) 20:14:53 thew target is cortex-m 20:15:11 svd2forth only applies to cortex-m here 20:15:57 rdrop-exit, interestingly I see this same methodology youre proposing amongst the C programmer people 20:16:41 I don't think it's related to C or not C 20:16:47 they have no idea that the bitfield names must be associated with each register, and each register with each peripheral or there will be collisions 20:17:14 no, I dont either, I do think it's a programmer thing amongst those that dont do much embedded 20:17:23 it depends 20:17:35 yeah it depends on the target 20:18:23 you might have 3 identical peripherals that you access via different registers, but share the same register layout 20:18:34 I have ben meaning to write a program that examines any cmsis-svd file for collisions 20:19:05 thats true, but they have different constants 20:19:21 a good example would be the USARTS 20:19:47 there may be 6 of them, all the same except for the peripheral memory constant 20:19:59 but the register and bitfields are the same 20:20:42 however the timers, and there are about 7 - 12 of them have about 4 variations 20:20:54 so thats hard to say 20:21:26 and in a different model, they may have other variations, so this method could become error prone fast 20:21:55 thats why I do every register separately 20:23:04 i see where youre going there for once, and it's a great idea, I just cant see it working well due to all the differences 20:24:31 I use that as my starting point, where I go from there depends on the specifics 20:25:10 My starting point is always register constants, bitfield constants 20:25:37 you have once again given me a lot to think about :) 20:26:39 I have a bunch of words to extract, manipulate, and pack bitfields that I can use by having that starting point 20:27:08 the main thing to know is that bitfields cannot exit in isolation, they belong to the same register they are defined in withing the cmsis-svd files 20:28:21 of course we have been thru this before, your needs are quite different to mine. I need to define all 17000+ bitfields automatically 20:28:43 you will do all yours by hand 20:28:48 back again 20:28:55 hey tabemann 20:29:38 yes 20:30:15 I always start with their spec 20:31:05 --- quit: proteus-guy (Ping timeout: 265 seconds) 20:31:51 I use a similar approach for protocols as well 20:32:12 (and their bitfields) 20:32:18 in the case of cortex-m, cmsis-svd IS the spec 20:32:40 it's made by the manufacturer of the chip 20:32:53 I prefer real specs :) 20:32:58 and their tech docs use it to make the tech docs 20:33:20 the tech docs use it, theyre one and the same 20:34:09 then I choose the spec that's a real document 20:35:06 paper you mena ? 20:35:09 mean 20:35:16 as in a book ? 20:35:41 I mean the one that's designed for reading with my eyes 20:35:46 because the PDF specs are sourced from the cmsis-svd 20:35:49 :) 20:36:41 brb 20:37:14 no problemo, and thanks for the suggestions :) 20:44:05 --- join: proteus-guy joined #forth 20:47:58 back c[] 20:48:55 off to get some lunch :) 20:48:59 bbl 20:49:09 bon appetit! :) 20:55:04 --- join: merkc0 joined #forth 21:43:29 --- join: gravicappa joined #forth 21:48:09 --- quit: proteus-guy (Ping timeout: 260 seconds) 21:50:00 --- quit: rdrop-exit (Quit: Lost terminal) 22:10:19 --- join: proteus-guy joined #forth 22:13:45 --- quit: tabemann (Remote host closed the connection) 22:13:59 --- join: tabemann joined #forth 22:33:26 --- quit: merkc0 (Quit: Leaving) 22:41:57 --- join: merkc0 joined #forth 22:42:45 : BOX ( w h -- ) 22:42:45 2>R 22:42:45 R> 0 DO 22:42:45 R> 0 ?DO 22:42:45 ." *" 22:42:45 LOOP CR 22:42:47 LOOP 22:42:49 ; 22:42:51 2 10 BOX 22:43:00 any Idea why it enters an infinite loop? 22:44:22 oh the inner R> is called repeatedly, that's not correct 22:46:28 maybe try: : box 0 do dup 0 do ." *" loop cr loop drop ; or : box 2>r r> 0 do r@ 0 do ." *" loop cr loop rdrop ; 22:52:57 thanks, the 1st solution works, the 2nd one with 2>R R> R@ RDROP still infinite loops 22:53:56 do/loop may be doing something with the return stack, probably with the loop indices 22:54:44 yes 22:56:01 * crc can't test this currently as the only forth on my current system (an ipad) isn't a standard system 23:09:25 --- quit: _whitelogger (Remote host closed the connection) 23:12:28 --- join: _whitelogger joined #forth 23:13:52 --- quit: guan (*.net *.split) 23:13:54 --- quit: jimt[m] (*.net *.split) 23:13:54 --- quit: tp (*.net *.split) 23:13:54 --- quit: APic (*.net *.split) 23:15:44 --- join: guan joined #forth 23:15:44 --- join: jimt[m] joined #forth 23:15:44 --- join: tp joined #forth 23:15:44 --- join: APic joined #forth 23:59:59 --- log: ended forth/20.04.18