00:00:00 --- log: started forth/19.12.05 00:00:32 I think you can do a neat job of it as well 00:01:26 whats the xtal look like ? 00:02:56 Its one of those um 00:03:00 Cylinder ones 00:03:26 The only annoyance is getting some GND area for the caps 00:07:11 dont you have a massive ground copper fill ? 00:07:21 the cylindrical ones are tiny 00:10:18 You reckon scrape off some solder mask ? 00:17:58 yep 00:18:42 mark out the area with a fine felt tip pen first 00:18:44 i've not done that before 00:18:52 How should I be doing that 00:19:28 if you stick to a floorplan drawing as above, use a scalpel blade 00:19:48 not a box cutter or fine knife 00:20:43 a scalpel with a rounded edge is good for scraping the mask off, alternately a sanding disc on a dremel tool 00:21:21 we should be discussing this on #mecrisp 00:21:26 I don't have a dremel with me right now 00:21:31 as this is off topic 00:21:44 Yeah we don't want to be interfering with all the other forth related traffic 00:21:46 :P 00:22:15 there would be lots, theyre just very polite and dont want to interrupt us 00:22:19 :) 00:22:40 Cute :P 00:35:03 --- quit: malyn (*.net *.split) 00:35:03 --- quit: Lord_Nightmare (*.net *.split) 00:35:03 --- quit: catern (*.net *.split) 00:38:42 --- join: malyn joined #forth 00:38:42 --- join: Lord_Nightmare joined #forth 00:38:42 --- join: catern joined #forth 00:38:45 --- quit: catern (Max SendQ exceeded) 00:42:47 --- join: catern joined #forth 00:48:42 tp, crc: thanks, but the question was actually prompted _by_ reading Thinking Forth (...finally, 15+ years after starting coding Forth). 00:49:14 In the meantime I found out that old Forth Dimensions magazines are a pretty good source of random tricks. 00:49:52 Robert, the old Forth Dimensions mags are still great reading :) 00:53:58 --- join: dys joined #forth 00:56:44 tp, have had dramas setting time on the RTC ? 00:59:04 jsoft, Ive not used the rtc yet 00:59:34 jsoft, but andrew palm did, I gave you his code location before 00:59:46 Yeah I am using it. 01:00:06 Just reading through the datasheet, I think his code does not actually account for setting it on the fly. 01:00:09 but having problems ? 01:00:42 no it probably didnt need to do that 01:01:25 it was for use logging samples of LED values when sensing sunlight 01:07:54 Well adjustments are already underway 01:08:12 Pokings and proddings are happening 01:08:22 excellent! 01:23:10 Grr. 01:23:12 Annoying 01:23:23 Some magical hoop jumping must be in order 01:30:54 Nya haaaaaa! 01:31:01 Stupid write protected registers and shit 01:36:41 the usual story 01:36:59 I blame you, personally, for this. 01:37:05 why ? 01:37:11 I expect a billion dollar donation in the next 24 hours. 01:37:55 I hope you take bitter disappointment well ? 01:38:02 Why? Because at one time and almost certainly at this time, the moon was rotating around the earth, while you were not giving me billions. 01:38:20 lol 01:38:24 Aww cmon maaaaaaan 01:38:32 there arent many billionaire technicians about 01:38:36 I like money, give me billions ya hold out :P 01:38:51 sadly we are too honest to steal that kinda money 01:39:15 Welp, Got the hours, minutes, and seconds ticking along it seems 01:39:23 you need to speak to sharks like bill gates or warren buffet if you need a billion $$ 01:40:19 i warned you about special locked registers, I think it's your fault for not paying attention ? 01:40:28 'Hello sharks. I offer the opportunity for you to give me at a minimum, 4 billion dollars, in return for my ability to sleep in on a regular basis, produce zero output in your direction, and ask for more 2 months later. 01:40:40 No its your fault, tp. 01:40:55 As a SJW, I cannot accept responsibility. 01:40:57 thats the ticket! I bet their cheque is already in the mail! 01:41:34 I'm sorry to hear that youre a Software Jinx Writer 01:41:36 Operation sloth is underway 01:41:42 lol 01:41:50 So I've got to write button code now 01:41:59 After testing the hour stuff works first I guess 01:42:16 maybe try using micro-python to get those register humming ? 01:42:23 micro python ? 01:42:34 I am not interested in micro python 01:42:37 youll only need 192KB more flash 01:42:54 and it will only be 30x slower 01:43:03 Brilliant 01:43:18 but at least youll be able to talk to other python hipsters at last 01:43:30 And why would I want to do that? 01:43:52 I actually don't mind python as a 'meh, make it do the things, jump through the hoops' generic language 01:43:52 first step in getting a billion $$ ? 01:44:14 youll never get accepted as a hipster using Forth ! 01:44:15 Having a billion $ 01:45:20 --- join: proteus-guy joined #forth 01:53:36 --- quit: dys (Ping timeout: 245 seconds) 01:55:02 --- quit: malyn (*.net *.split) 01:55:02 --- quit: Lord_Nightmare (*.net *.split) 01:55:02 --- quit: C-Keen (*.net *.split) 01:55:02 --- quit: presiden (*.net *.split) 01:55:03 --- quit: tabemann (*.net *.split) 01:55:03 --- quit: WickedShell (*.net *.split) 01:55:03 --- quit: cheater (*.net *.split) 01:55:03 --- quit: a3f (*.net *.split) 01:55:04 --- quit: tp (*.net *.split) 01:55:05 --- quit: heredoc (*.net *.split) 01:55:05 --- quit: diginet2 (*.net *.split) 01:55:05 --- quit: dzho (*.net *.split) 01:55:05 --- quit: pointfree (*.net *.split) 01:55:05 --- quit: bluekelp (*.net *.split) 01:55:05 --- quit: newcup (*.net *.split) 01:55:06 --- quit: jhei (*.net *.split) 01:55:06 --- quit: dbucklin (*.net *.split) 01:55:06 --- quit: jsoft (*.net *.split) 01:55:06 --- quit: proteusguy (*.net *.split) 01:55:06 --- quit: APic (*.net *.split) 01:55:07 --- quit: deesix (*.net *.split) 01:55:07 --- quit: reepca (*.net *.split) 01:55:07 --- quit: netmonk (*.net *.split) 01:55:07 --- quit: patrickg (*.net *.split) 01:55:08 --- quit: begin (*.net *.split) 01:55:08 --- quit: dne (*.net *.split) 01:55:09 --- quit: chunkypuffs (*.net *.split) 01:55:09 --- quit: djinni (*.net *.split) 01:55:09 --- quit: lonjil (*.net *.split) 01:55:09 --- quit: fiddlerwoaroof (*.net *.split) 01:55:10 --- quit: arrdem (*.net *.split) 01:55:10 --- quit: gabc (*.net *.split) 01:55:10 --- quit: crc (*.net *.split) 01:55:10 --- quit: alex4nder (*.net *.split) 01:55:10 --- quit: mjl (*.net *.split) 01:55:10 --- quit: guan (*.net *.split) 01:55:11 --- quit: Keshl (*.net *.split) 01:56:56 --- join: tp joined #forth 01:56:56 --- join: heredoc joined #forth 01:56:56 --- join: diginet2 joined #forth 01:56:56 --- join: dzho joined #forth 01:56:56 --- join: pointfree joined #forth 01:56:56 --- join: bluekelp joined #forth 01:56:56 --- join: newcup joined #forth 01:56:56 --- join: jhei joined #forth 01:56:56 --- join: dbucklin joined #forth 01:58:20 --- quit: X-Scale` (Ping timeout: 240 seconds) 02:00:18 --- join: jsoft joined #forth 02:00:18 --- join: proteusguy joined #forth 02:00:18 --- join: APic joined #forth 02:00:18 --- join: deesix joined #forth 02:00:18 --- join: reepca joined #forth 02:00:18 --- join: netmonk joined #forth 02:00:18 --- join: patrickg joined #forth 02:00:18 --- mode: karatkievich.freenode.net set +ov proteusguy proteusguy 02:00:45 --- quit: tp (*.net *.split) 02:00:45 --- quit: heredoc (*.net *.split) 02:00:46 --- quit: diginet2 (*.net *.split) 02:00:46 --- quit: dzho (*.net *.split) 02:00:46 --- quit: pointfree (*.net *.split) 02:00:46 --- quit: bluekelp (*.net *.split) 02:00:46 --- quit: newcup (*.net *.split) 02:00:46 --- quit: jhei (*.net *.split) 02:00:46 --- quit: dbucklin (*.net *.split) 02:02:01 --- join: tp joined #forth 02:02:01 --- join: heredoc joined #forth 02:02:01 --- join: diginet2 joined #forth 02:02:01 --- join: dzho joined #forth 02:02:01 --- join: pointfree joined #forth 02:02:01 --- join: bluekelp joined #forth 02:02:01 --- join: newcup joined #forth 02:02:01 --- join: jhei joined #forth 02:02:01 --- join: dbucklin joined #forth 02:02:16 --- join: tabemann joined #forth 02:02:16 --- join: cheater joined #forth 02:02:16 --- join: a3f joined #forth 02:04:07 --- join: Keshl joined #forth 02:04:16 --- join: malyn joined #forth 02:04:16 --- join: Lord_Nightmare joined #forth 02:04:25 --- join: C-Keen joined #forth 02:04:25 --- join: presiden joined #forth 02:04:52 --- join: X-Scale joined #forth 02:04:52 --- join: begin joined #forth 02:04:52 --- join: dne joined #forth 02:04:52 --- join: chunkypuffs joined #forth 02:04:52 --- join: djinni joined #forth 02:04:52 --- join: lonjil joined #forth 02:04:52 --- join: fiddlerwoaroof joined #forth 02:04:52 --- join: arrdem joined #forth 02:04:52 --- join: gabc joined #forth 02:04:52 --- join: crc joined #forth 02:04:52 --- join: mjl joined #forth 02:04:52 --- join: alex4nder joined #forth 02:04:52 --- join: guan joined #forth 02:04:52 --- mode: karatkievich.freenode.net set +v crc 02:05:54 --- quit: chunkypuffs (Max SendQ exceeded) 02:06:20 --- nick: X-Scale -> Guest40053 02:08:55 --- quit: Guest40053 (Ping timeout: 276 seconds) 02:11:54 --- join: X-Scale joined #forth 02:35:52 Ok i am now having problems with running my stuff. 02:37:31 I was doing compiletoram, now I am running compiletoflash, accessing variables definew with create foo bar cells allot fails 02:38:30 --- join: iyzsong joined #forth 02:38:38 I can read from it ok, but not write 02:38:42 Hmm 02:46:20 --- quit: ryke (Ping timeout: 240 seconds) 03:17:10 Outrageous 03:30:46 --- join: chunkypuffs joined #forth 04:06:45 --- join: dys joined #forth 04:29:15 --- quit: iyzsong (Quit: ZNC 1.7.1 - https://znc.in) 06:16:37 --- quit: begin (Remote host closed the connection) 06:29:34 --- join: dddddd joined #forth 07:38:09 --- join: ryke joined #forth 07:39:20 --- quit: tabemann (Ping timeout: 250 seconds) 07:46:40 --- quit: ryke (Ping timeout: 240 seconds) 07:46:40 --- quit: gravicappa (Ping timeout: 240 seconds) 07:47:29 --- join: gravicappa joined #forth 08:24:05 --- quit: jsoft (Ping timeout: 268 seconds) 08:29:05 --- join: ryke joined #forth 08:34:39 --- quit: oxford (Remote host closed the connection) 08:37:00 --- join: oxford joined #forth 08:49:32 --- join: DKordic joined #forth 09:31:08 --- quit: dys (Ping timeout: 250 seconds) 10:30:49 --- join: f-a joined #forth 11:25:55 --- join: begin joined #forth 12:02:18 --- join: WickedShell joined #forth 12:20:29 --- quit: ryke (Ping timeout: 252 seconds) 12:32:36 --- quit: gravicappa (Ping timeout: 268 seconds) 13:07:24 --- join: f-a_ joined #forth 13:09:01 --- quit: f-a (Ping timeout: 265 seconds) 13:12:12 --- quit: f-a_ (Client Quit) 13:12:26 --- join: f-a joined #forth 13:54:48 --- join: dave0 joined #forth 14:13:51 --- join: jedb__ joined #forth 14:16:41 --- quit: jedb_ (Ping timeout: 265 seconds) 14:35:44 morning Forthlings 14:36:05 may all your stacks live long and prosper 14:36:09 o/ 14:36:45 hey f-a, all rugged up, got that bear pelt on ? 14:36:59 hehe 14:38:44 it's 27C at my desk at 0930 am, heading for a maximum of 41C at 3pm here 14:38:51 ouch 14:39:04 grab a fremen suit 14:39:10 one gets used to it 14:39:12 hahah 14:39:37 no spice for me today! 15:11:19 --- join: ryke joined #forth 15:31:00 --- quit: ryke (Ping timeout: 240 seconds) 15:32:13 good morning tp 15:32:38 good afternoon crc :) 15:53:00 --- join: ryke joined #forth 15:54:20 --- join: karswell joined #forth 16:18:02 --- nick: jedb__ -> jedb 16:36:39 --- join: tabemann joined #forth 16:38:46 --- quit: cp- (Quit: Disappeared in a puff of smoke) 16:41:12 --- join: cp- joined #forth 16:58:18 hey guys 16:58:32 hi tabemann 16:59:06 hello tabemann 16:59:09 busy hacking away at zeptoforth 17:00:31 I'm trying to build up enthusiasm to write a Word to increase the GD32VF103 clock speed from 8 to 108Mhz 17:01:15 let'er rip! 17:01:35 mainly as I've done it all before for the STM32F103 and the peripherals for the GD32VF103 appear identical apart from the fact they have changed every register and bitfield name 17:03:57 the GD32VF103 is RISC-V, right? 17:04:08 yes 17:04:25 but with all the cortex-m3 peripherals 17:05:05 and every register and bitfield has been renamed 17:05:44 I can look in the databooks of each and see the gpios, the usarts are exactly the same 17:06:09 so it's a bit tiring to have to learn new names for the same bitfields 17:06:52 my svd2forth parser made quick work of the GD32VF103.svd so at least I can easily examine all registers 17:06:54 :) 17:06:54 did they do this for ~intellectual property~ reasons or something? 17:07:22 obviously they have a reason, but it's annoying 17:08:15 question 17:08:26 does bl use relative or absolute addressing 17:08:36 the mecrisp* source is quite different as well, I must do a line count, arm vs riscv LOC for mecrisp 17:08:40 and if it uses absolute addressing, how in hell does it fit anything in 16 bits 17:09:08 it's up to the assembler and your directions 17:09:29 --- quit: f-a (Ping timeout: 268 seconds) 17:09:41 what, does the assembler decode one that's too far into a blx? 17:09:43 you can use either, but youre right, it's limited in it's range to 1024 locations 17:10:16 the assembler will complain if you try a jump too far 17:10:28 lol, so will Mecrisp-Stellaris 17:10:48 --- join: f-a joined #forth 17:11:05 the scenario I am thinking of is you have a random subroutine that you want to call, and it could be anywhere 17:11:07 occasionally I have to work around the range limit by spinning off a sub word 17:11:26 and you should be considering that because it's a real issue 17:12:29 also, like mecrisp-stellaris is SRT or SRT/NCI to my knowledge; how does it make "long" calls work? 17:12:38 I had some unplesant surprises when I first assumed I could reach subroutines anywhere in the codespace 17:14:31 I think it uses 'registerliteral,' ( x Register - - ) Generate shortest possible sequenceto get x into given low Register 17:15:19 you can jump anywhere providing you can load the 32 bit number into a register, you are limited only by a #imm to 1024 range 17:16:20 but to load a 32 bit immediate number into a register, you have to first load 16 bits then shift, add etc to get the number you want 17:16:43 it's a bit roundabout, but Mecrisp-Stellaris does that 17:17:19 and the same algorithm is available as a Word named "registerliteral," 17:33:19 --- join: jedb_ joined #forth 17:35:41 --- quit: jedb (Ping timeout: 245 seconds) 17:36:20 how do you load 16 bits? 17:36:44 immediate I think 17:36:59 I dont do much assembly being a Forth user 17:39:35 oh wait, there's a MOV Rd, #imm16 17:44:01 --- quit: karswell (Ping timeout: 268 seconds) 18:09:56 I get this 18:09:58 : a movs r0 #$EF ; ok. 18:09:59 see a 18:09:59 200003CC: B500 push { lr } 18:09:59 200003CE: 20EF movs r0 #EF 18:09:59 200003D0: BD00 pop { pc } 18:09:59 ok. 18:10:07 all good so far 18:10:26 : a movs r0 #$EFFF ; Immediate too big 18:10:27 ok. 18:10:40 this is using the Mecrisp-Stellaris interactive assembler 18:16:46 --- quit: dave0 (Quit: dave's not here) 18:24:38 --- join: jsoft joined #forth 18:25:03 tp, was up till 5 am coding away 18:25:19 wow 18:25:21 12 7% bourbons deep, but got it all working, can set the time, etc 18:25:30 serious stack brainitis 18:25:38 nice work 18:25:58 I noticed something though 18:25:59 --- part: f-a left #forth 18:26:00 discovered the flash v/s ram differences I assume 18:26:01 --- join: f-a joined #forth 18:26:05 what worked in ram did not work in flash 18:26:10 yes! :D 18:26:19 stuff like "[']" vs "'" ? 18:26:21 I used... what did I used.. I cant even remember 18:26:53 I ended up using buffer: leds instead of create leds x y allot 18:27:07 sorry, x * y buffer: leds 18:27:21 there are differences, I know all the secrets and they can be yours for only 1 $billion 18:27:47 but only today ! 18:27:51 Nah I will just have a fight with it and find out the hard way :D 18:28:22 now Im depressed, *where* will I ever get that 1 $billion from ? 18:28:38 you were my last hope, thanks for nuffin! 18:29:26 .. so get it booting from flash already ? 18:29:43 Yeah it all boots up and does clock things 18:30:22 awesome 18:30:41 i think matthias will be delighted to see your project if you publish it 18:31:03 Matthias 18:31:04 ? 18:31:10 Oh the Mecrisp dude ? 18:31:14 afaik it will be the first clock type project using Mecrisp-Stellaris 18:31:17 yeah 18:31:24 Matthias Koch, hes the author 18:31:49 Andrew Palm did the RTC stuff for a data logger 18:32:22 --- quit: X-Scale (Ping timeout: 265 seconds) 18:32:27 Cool :) 18:32:34 I'm going to make a new version 18:32:38 A more betterer one 18:33:04 hahah, hes a retired mathematician 18:33:37 I meant a clock, not the RTC code 18:33:41 :P 18:33:51 Then I'll publish it or whatever you call it 18:33:56 but your rtc code handles buttons and manual setting ? 18:34:08 youd be a hit on Hackaday ? 18:34:08 back 18:34:16 Yeah it changes the RTC time when the buttons are pressed 18:34:19 get a few million clicks on your website ? 18:34:30 tabemann, welcome back! 18:34:35 ty 18:34:39 I don't really have a website, just a git repo and other private apps 18:35:02 jsoft, your project is too good not to showcase 18:35:06 Ahh hello there tabemann, you champion 18:35:17 It's just a clock though 18:35:21 I am not a champion! :P 18:35:22 jsoft, get a free hackaday project account and show it off ? 18:35:47 tabemann, you're a champion on $forth! 18:35:55 er #forth 18:36:04 * tabemann laments that hackaday really isn't meant for sofware projects 18:36:26 jsoft, you should at least show those kids on hackaday what a proper schematic looks like! 18:36:28 --- part: f-a left #forth 18:36:57 hackaday is lame, agreed, but their free project server looks ok 18:37:23 tabemann, jsoft is a champion schematic designer 18:37:37 * tabemann envies the people who can hand-solder shit - he can't do that, his hands aren't steady enough 18:38:15 tabemann, have you tried cutting back the Bourbon ? 18:38:27 I don't drink 18:38:34 haha, same as me! 18:38:46 I've never been drunk or even tipsy 18:39:02 --- join: X-Scale joined #forth 18:39:09 not once in my 65 years ... it could be a mistake, but late to change tho 18:39:26 I love drunken soldering 18:39:38 do you burn yourself a lot? 18:39:41 I have always enjoyed the pleasure of thinking far to much to want to reduce it 18:39:42 Never 18:40:24 I've always heard that drunken coding results in bad code, so I assume drunken soldering is the same way 18:40:36 jsoft; The Drunken Solderer 18:40:49 I find drinking can obviously reduce detailed thinking capacity, it can also lubcricate decisions. Like, 'should I do this.. should I do that....' instead its... meh, 'CHARRRRRGE' with whatever the instinct is. 18:40:52 drunken anything is less 18:41:18 tabemann, depends why you are soldering I guess. 18:41:42 tabemann, I never really care about my soldering, so long as it works.. as I mostly make prototype / toy things. 18:41:59 looking at jsofts soldering results it's hard to believe anyone not sober put that clock together 18:42:35 Nawww :P *blushes* 18:43:21 Ive seen about 100 billion soldered pcb boards ... ok maybe less, I can tell whats good and what isn't 18:44:18 one of my production lines made 1750 pcbs a day, 7 days a week and they all looked horrible (bad design) 18:47:33 Ahh are you like the um, pick and place manager guy ? 18:49:38 Not sure the right name for that. 18:50:36 I was back in 1987 18:50:39 Had a geeze over a companys pick and place / reflow / gizmo stuff during a job interview, it was very cool 18:50:49 we ran 3 assembly lines 18:50:58 Ahh trues, what kind of stuff has changed since then ? 18:51:10 we also die and wire bonded Ti ASICS 18:51:25 probably a lot 18:52:01 True 18:52:11 tho wire bonding probably hasn't changed a lot, I bet the wires are still 1/2 thou aluminium mostly 18:52:23 how.. how does that work, soldering / bonding wires to a die? 18:52:32 i bet they still sound like a sewing machine 18:52:43 lol 18:52:53 how does it attach ? 18:52:56 in the case of the one we had, all NC and RF welding 18:53:02 What is NC 18:53:08 numerical control 18:53:18 I am not sure what that means 18:53:21 Automated ? 18:53:22 like a 3d hotmelt glue gun 18:53:33 ansolutely automated 18:53:47 numerical control means automated, I mean ? 18:54:06 the dies are tiny, the actual pads on the die can only be seen clearly under a powerful microscope 18:54:10 sure 18:54:25 So its silicon right 18:54:36 And a wire can actually be welded to that ? 18:54:40 it has to be as the pads may only be 2 thou apart 18:55:04 yep, the weld makes the wire blob to the pad 18:55:14 Weird 18:55:28 So would that work on normal glass then? The same process ? 18:55:29 the microscope and lighting make a 1/2 thou wire look like a electric light pole 18:55:40 the pad is metal 18:55:51 So how does the metal get stuck on there then 18:56:07 it's deposited during the die fab process 18:56:16 Hmm 18:56:29 in fact, thats wrrong 18:56:51 no in this case it's right 18:57:22 we bought boxes of wafers and each wafer probably had 100,000 dies or more 18:57:59 each die was pre tested by Ti, bad ones had a black ink dot on them and the die bonder machine would reject them while bonding 18:58:15 okay, I'm gonna head out - coffee shop is closing shop for the night - will bbiab 18:58:24 tabemann, go getem 18:58:26 the whole setup from dies to wire bonding was fully automated 18:58:33 cya tabemann ! 18:59:16 Cause the silicon has to have impure.. what do you call it... I dunno, stuff to make it more conductive eh 18:59:20 jsoft, the only time we needed a human was to refill and unload the pcb cassettes OR rethread the needle when the wire bonder spool ran out 18:59:21 doping 18:59:53 Was it tricky as a bastard to re-thread the needle ? 19:00:03 sure but thats at the silicon level, I dont know how they made the pads 19:00:28 in a factory of 100 people, only one Chinese lady could do it 19:00:41 none of us could even see the hole in the needle 19:00:51 I looked and looked for it and couldnt see it 19:01:38 it was crazy, shed take one look, and poke the end of the 0.5 thousands of a inch dia wire straight thru the needle, thats what it looked like to me 19:01:43 --- quit: X-Scale (Ping timeout: 268 seconds) 19:01:53 --- join: X-Scale` joined #forth 19:02:00 Mental 19:02:21 I was responsible for all tech in that factory 19:02:28 and all the workers and engineers 19:02:32 --- nick: X-Scale` -> X-Scale 19:02:34 Nice 19:02:40 --- quit: tabemann (Ping timeout: 240 seconds) 19:02:41 problems stopped on my desl 19:02:43 desk 19:03:18 from redesigning customer boards because they used some part that want available to repairing the machinery 19:03:25 wasnt 19:03:40 solving all production problems 19:03:42 etc 19:03:51 Sounds cool 19:04:02 i loved it, best job EVER!! 19:04:10 --- join: MrMobius joined #forth 19:04:19 I reported to the two CEO's 19:04:44 we had some pretty cool gear I must say 19:05:21 one SMT placer had a rotary head like a gattling barrel, it spat the parts out as it rotated 19:05:35 it could do 17,500 parts a hour 19:05:41 in 1987 19:06:27 i still have draws and draws of smt parts from those days 19:06:55 parts I swept up of the floors after the days production because we didnt recycle parts 19:11:58 Crikey :) 19:12:35 very expensive to recycle, gotta clean, sort, repack into feeders etc 19:12:45 oh and test before use 19:12:46 Yeah I can imagine 19:12:54 cheaper to just use new parts 19:13:21 I need to get into getting things assembled actually 19:13:27 and if a part spits off the placer head it just places another 19:13:40 so what ya doing here ? 19:13:55 Idle chit chat, just knocked off work! :) 19:14:02 ahh 19:14:21 36,68 C at this desk atm 19:14:29 Yeah its been outrageously hot today 19:14:33 like 20 degrees or something 19:14:51 HEATWAVE!! 19:15:05 it's on it's way to 41 here in another hour 19:15:31 Uuuuuugh thats way too hot for me 19:15:43 smoke today is terrible, the fires must be full on 19:15:45 I like 10 degrees-ish 19:15:58 I'm not that fon of 41 myself 19:16:02 +d 19:16:51 one problem is the radar cant tell the smoke from rain 19:16:53 I think you should write a stern letter to the weather, Lodging your disapproval 19:17:28 'No look here, Mr Weather. I've just about had it to here with your overly enthusiastic energy levels.' 19:18:06 I will when I get over the bitter disappointment of you not buying my 'guide to F0 Flash Forth programming' for 1 billion $ 19:18:14 lol 19:19:01 visibility is about 300m today 19:20:46 tp, could you give me the link about the Mecrisp register allocator again? I cant find it 19:20:49 air particulates are 10000000 billion parts per million and the flavour is 'assorted bush' 19:21:01 sure 19:21:21 https://mecrisp-stellaris-folkdoc.sourceforge.io/register-generator.html#svd2forth 19:21:25 it's a bit old 19:21:42 but the principles are the same now even in the later versions 19:23:09 thanks 19:23:43 MrMobius, if you need a custom memmap file for any of the chips I'll be happy to make one for you 19:24:27 tho it should all work fine as dl from the site. It only uses a few std unix utils and xmlproc 19:24:31 and shell 19:25:04 tp, thanks but still havent gotten anything to run at all 19:25:07 no need to install Go or Rust or the latest fad\ 19:25:39 I think I need to compile. the zip doesnt seem to come with any binaries afaict 19:25:47 MrMobius, still in the early stages of your Forth ? 19:26:06 oh youre running Mecrisp-Stellaris ? 19:26:26 tp, I just wanted to run it long enough to see how the optimizer works 19:26:32 the Mecrisp-Stellaris zip does contain binaries for every target 19:26:42 it's in the target dir 19:26:54 ahh 19:27:20 MrMobius, so you may as well run the Linux or FreeBSD binary ? 19:27:22 --- join: tabemann joined #forth 19:27:36 under either thumbulator or qemu 19:32:09 MrMobius, Mecrisp-Stellaris RA 2.5.2 for FreeBSD by Matthias Koch 19:32:26 there is also one for Linux 19:33:15 MrMobius, this is the script to run the binary included in the Mecrisp-Stellaris release 19:33:18 #!/bin/bash 19:33:18 stty -icanon -echo 19:33:18 qemu-arm-static mecrisp-stellaris-freebsd-with-disassembler-and-math 19:33:18 stty sane 19:33:52 run that in unix and Mecrisp-Stellaris will pop up in a xterm windows 19:34:18 you do the same with the Linux version, just change the names 19:35:23 ya still on Windows 19:35:55 ah well 19:36:03 sounds like I would need to install a bash shell too before I can even use qemu? 19:36:13 i have no idea 19:36:19 be easier to use a RPI ? 19:36:38 probably so if I had one 19:36:42 the Linux Mecrisp-Stellaris binary will run on Linux on a rpi 19:37:44 get a bootable Linux usb distro and boot that windows box into Linux temporarily ? 19:38:30 trying to interwork windows and Linux is as easy as removing your heart, all by yourself 19:39:04 Windows gets annoying when doing trying to do development work on uC's and what not 19:39:04 tp:i use linux everyday 19:39:22 when doing trying. What super duper goodly england speak. 19:39:26 yunfan, smart move 19:39:41 tp: internetwork? you mean SMB? 19:39:46 tp:well, since i am a backend developer, its really saved my time 19:39:55 ya I thought about switching to linux but random CPLD stuff is windows only and uC stuff is sometimes primarily Windows and linux support is secondary 19:40:00 if so generally SMB works fine if you don't rely on network discovery 19:40:03 windows hold you back when it comes to development. Fine for gaming tho I hear 19:40:10 and i dont use windows for about a decade, only sometimes help my parents fixsome setting 19:40:25 Jookia, no I mean trying to work *with* unix 19:40:40 tp: oh, what do you mean? 19:40:43 tp:well the only gamei prefer is minecraft and some clones, so its not a problem to me 19:40:54 MrMobius, I do understand, windows is still very strong in electronics 19:40:56 beside, we have android for gaming :D 19:41:05 holds you back on windows if youre trying to use something meant for linux. i dont know about otherwise... 19:41:11 yunfan, I have a PS/3 for gaming :) 19:41:54 MrMobius, Mecrisp-Stellaris is a pretty obvious example 19:41:57 MrMobius: yeah, windows doesn't have good unix emulation though linux subsystem for windows is fairly good 19:43:09 MrMobius, Mecrisp-Stellaris is meant for ARM, yet Linux and FreeBSD all run it easily using various freely available emulators 19:44:45 generally the easiest way on windows is to run a VM, install Linux on it and run the app in the VM 19:45:06 the unix way saved lots of my time 19:45:22 so windows-->virtual box-->linux-->qemu-->mecrisp-stellaris 19:45:51 yunfan, but windows is very common in China ? 19:46:06 heh 19:46:46 MrMobius, do you have a chromebook or a android tablet ? 19:47:04 well I got a qemu window up with qemu-system-arm -machine virt mecrisp-stellaris-freebsd-with-disassembler-and-math 19:47:21 tp, no 19:47:22 bargain! 19:47:30 well you dont need one now :) 19:48:25 nothing similar to arm static in the windows version of qemu 19:49:04 MrMobius, now you can run "see lshift" and enjoy the dissasembler 19:49:33 MrMobius, probably just naming differences, as long as it works, thats all you need 19:49:46 im at a (qemu) prompt 19:49:56 not Mecrisp-Stellaris ? 19:50:00 nope 19:50:12 lol, this emulator doesnt see fit to emulate scroll bars 19:50:17 type "words" ? 19:50:22 so most of the help command output scrolls off the screen 19:50:34 see if is actually running Mecrisp-Stellaris ? 19:50:45 tp, unknown command. im definitely not in Mecrisp at this point 19:50:53 ah ok 19:51:00 "help" shows emulator info, nothing to do with mecrisp 19:56:06 WARNING: Image format was not specified 19:56:20 and probing automatically guessed raw 19:56:55 aha 19:56:59 closer ... 20:06:32 -machine lm3s6965evb crashes 20:06:52 -machine raspi2 just gives a black screen 20:07:18 it would 20:07:36 youre using a FreeBSD binary 20:08:38 -machine raspi2 is just a rpi2 bare metal 20:09:07 the Linux and freebsd binaries are just programs that run under Linux or FreeBSD ON a rpi 20:09:44 so if you use -machine raspi2, then youll need to install Linux on it first 20:09:52 Linux for rpi2 20:10:04 hmm 20:10:06 something like 'raspbian' 20:10:22 maybe if i emulate linux for x86 i can install qemu on that and run mecrisp 20:10:50 i dont see why not 20:15:55 --- quit: Jookia (Ping timeout: 260 seconds) 20:17:26 --- join: Jookia joined #forth 20:27:50 lol it's asking for a login and password now 20:27:54 what in the actual hell 20:28:11 welcome to windows ? 20:28:30 nosir, that would be debian :) 20:28:35 windows I can handle 20:28:53 you ave paid your yearly "linux subsystem" Windows fees ? 20:28:58 ;-) 20:29:35 oh ok, you booted up a preinstalled debian image ? 20:29:42 yes 20:29:55 try root/root 20:30:16 but youll probably have to find out the user/pass of the image youve booted 20:30:24 that worked 20:30:31 bargain! 20:30:42 if there's no GUI, the linux subsystem for windows 10 might actually allow you to just run qemu 20:30:44 just use that 20:31:58 now install qemu-arm-static ? 20:32:20 something like "apt-get qemu-arm-static install" 20:32:23 uh 20:32:38 looks like id have to install a full version of linux for that to work 20:33:00 --- join: gravicappa joined #forth 20:33:13 why? 20:33:34 Linux subsystem is very limited isnt it ? 20:33:59 microsoft would hardly install a full Linux ? 20:34:50 the linux subsystem for windows 10 is a literal emulation of linux, or, with newer versions, a linux VM 20:34:58 so they do install basically most of a full linux 20:36:19 so people can do "apt-get install libreoffice" instead of pay for microsoft word ? ... I seriously doubt it 20:36:33 now it wants me to insert a cd 20:36:34 dear lord 20:37:47 tp: no, it doesn't run GUIs 20:37:54 Jookia, a full Linux is a gui windows system with 30,000 ready to install programs, not some restricted Linux shell 20:38:19 yeah it's intended for developers and stuff like this 20:38:34 though some people have created an X server for windows so you can have a GUI 20:38:48 wel youre the windows expert, I havent used it since 1997 20:39:11 you can use chocolatey (a third party package manager) to install libreoffice 20:39:14 which is fine 20:39:24 but other than that windows is still pretty bare 20:39:53 I just use "pkg install libreoffice" using the default package manager ;-) 20:40:33 I exited since its complaining about needing the linux CD before it will let me install qemu 20:40:49 now its going through the 15 minute install procedure again :(((((((((( 20:40:51 wtf 20:46:06 --- join: dave0 joined #forth 20:47:59 --- quit: Keshl (Read error: Connection reset by peer) 20:48:06 --- join: Keshl_ joined #forth 20:48:52 --- nick: Keshl_ -> Keshl 20:52:42 well that was a bust 20:53:47 MrMobius, was that "linux subsystem for windows 10" ? 20:54:29 no debian image for qemu 20:54:34 x86 20:56:11 what processor is the mecrisp image expecting to run on? 20:56:19 ARM 20:56:34 since qemu wont start without me specifying exactly which one 20:57:22 yeah, your version of qemu is similar to the static version which is just each target set up ready to run 20:57:48 what do you mean? 20:58:22 the static qemu's are targeted for each processor type 20:58:45 the version you have does all types but needs config for them 20:59:38 so which machine is it emulating when you start the static version in linux? 20:59:47 just the generic virtual machine? 21:00:27 here are all the statics I have 21:01:44 qemu-aarch64-static qemu-i386-static qemu-mips64-static qemu-mipsel-static qemu-ppc64-static qemu-sparc64-static qemu-system-riscv64 21:01:45 qemu-arm-static qemu-mips-static qemu-mips64el-static qemu-ppc-static qemu-sparc-static qemu-system-riscv32 qemu-x86_64-static 21:02:15 there is even a RISC-V32 one now 21:03:27 so when you run qemu-arm-static, what is it supplying as the -machine parameter? 21:04:04 #!/bin/bash 21:04:04 stty -icanon -echo 21:04:04 qemu-arm-static mecrisp-stellaris-freebsd-with-disassembler-and-math 21:04:04 stty sane 21:04:08 it doesnt 21:04:25 ............. 21:04:28 #!/bin/bash 21:04:28 stty -icanon -echo 21:04:28 qemu-arm-static mecrisp-stellaris-freebsd-with-disassembler-and-math 21:04:28 stty sane 21:04:31 ............. 21:04:36 thats it above 21:04:54 it wont run without that on my system. it complains about it not being set. you must have it set somehow to one of the 50 or some options you get when you run -machine help 21:04:55 for freebsd, similar with Linux 21:05:22 no, Ive not configured anything 21:05:47 you have a different build, yours is not "static" 21:06:19 what machine is the static version emulating? 21:06:39 arm 21:06:51 qemu-arm-static 21:07:18 hmm 21:07:33 what do you get when you run qemu-arm-static -machine help? 21:07:50 this is what I installed on my machine: qemu-user-static-2.11.50.g20181011 QEMU CPU Emulator github bsd-user branch - static user targets 21:08:20 a% qemu-arm-static -machine help? 21:08:21 qemu-arm-static: No match. 21:08:32 yours is a different (non static) build 21:08:36 for windows 21:09:07 in the static versions I guess the -machine is already predefined 21:09:59 ya thats what im trying to figure out. if I knew that I could try it here. im guessing its just the generic ARM VM and not emulating any particular hardware 21:10:42 definitely 21:10:50 it doesnt know about hardware 21:11:03 it's just the MCU core 21:11:46 but you can find out all you need about the optimisations with this 21:15:22 maybe I need to convert the binary into something else 21:16:29 sorry I cant really help with windows 21:16:39 no i mean qemu-img 21:21:22 --- quit: dddddd (Ping timeout: 250 seconds) 21:22:22 this other debian install shows a corrupt display then qemu crashes 21:37:12 MrMobius: what do you need qemu-img for? static doesn't need an image 21:39:01 Jookia, "qemu-system-arm -machine virt mecrisp" complains that mecrisp is in raw format, so I thought converting it with qemu-img might help 21:39:28 it gets rid of the warning about not using raw files but it still just goes to a (qemu) prompt and wont run 21:39:41 MrMobius: no, not qemu-system-arm, qemu-arm 21:39:50 qemu-arm mecrisp 21:41:00 there is no qemu-arm 21:41:21 they are all qemu-system- except qemu-img, qemu-uninstall, qemu-io etc 21:42:09 are you on windows or linux? 21:42:29 windows 21:42:45 and is mecrisp a disk image for hardware? 21:44:41 im not sure. its the mecrisp-stellaris-freebsd-with-disassembler-and-math tp recommended I run 21:45:33 yeah, so you need linux and qemu to run that 21:45:35 make that mecrisp-stellaris-linux-with-disassembler-and-math 21:46:07 ah ok 21:46:19 so it's expecting underlying linux stuff to be installed that it can access? 21:46:48 qemu-system- will emulate an entire system (slowly on windows), so if you had a microcontroller profile for it then you could theoretically do that 21:47:22 qemu-static will emulate a linux ELF executable and shim the syscalls 21:48:02 windows doesn't do linux syscalls outside the linux subsystem for windows or running a linux VM 21:48:03 gotcha 21:48:22 and is qemu-system generally shit? 21:48:36 or just my bad luck that it crashes after 10 minutes of installing debian 21:49:00 it's generally bad on windows since it doesn't have virtualization extensions suport there i don't think 21:49:09 i'm not sure why debian crashed 21:49:40 i mean when debian started the display was garbled then qemu itself froze 21:49:42 windows 10 some latest edition actually just virtualizes linux kernel using hyper-v for its linux subsystem 21:49:48 yikes, that's a bug 21:49:54 tp:yes, just pirate version 21:50:21 i use qemu on linux for virtualization instead of something like virtualbox/vmware 21:50:24 or xen 21:51:01 MrMobius: i mention the windows 10 thing because it's likely the easiest way to install linux unless you need GUI in linux, in which case virtualbox or vmware are probably the things to use 21:51:28 the windows 10 linux thing lets you see your hard drive contents thats in windows in linux 21:52:22 Jookia, I guess I wouldnt need GUI for the mecrisp file then 21:52:38 probably not if it's all terminal based 21:53:01 https://www.osboxes.org/ubuntu/ <- might actually just make things easier, premade VM images for virtualbox/vmware 21:53:15 ya I was thinking about that too 21:53:38 I wanted to try ubuntu on a vm on my old windows 7 laptop but it lacks one of the 2 virtualization things you need 21:53:38 if you also have access to some linux container or server over ssh you could run qemu-static there too if you can install it 21:53:47 maybe it will run on this 2014 machine 21:54:04 wow, how old is it? 21:54:11 2012 21:54:24 hmm, that sounds like it should have vt-x if you're intel 21:54:37 ya i7-2xxx 21:54:40 you might have to enable it in your BIOS 21:55:40 ill give it a try 21:55:44 thanks for your help 21:55:50 np 22:28:04 MrMobius, there is another option, mecrisp runs only from a CLI, no gui is needed, so you could rent a VM online from someone like digitalocean.com for $5 USD a month. Install linux, install qemu-arm-static, do your tests and delete the VM. You get to keep any credit indefinitely and there are no fees 22:28:50 in fact they have vm's with debian preloaded, you just select the OS and it's done 22:29:10 or FreeBSD or whatever (except windows) 22:29:34 well they may have windos but it will cost more than $5uSD/month 22:38:38 Plus it would suck 22:40:00 anyway MrMobius already has windows, it's Linux he nees 22:40:25 or a cortex-m board to run Mecrisp-Stellaris 22:40:56 hey ryke how goes the 6502 ? 22:48:47 Pretty good, working on it as we speak 22:48:56 I've got an interactive prompt going 22:49:10 But it will only push values onto the stack and execute words immediately 22:49:14 No compilation yet 22:49:27 a good start tho ? 22:49:59 Most definitely. I'm very proud of how far it's come 22:50:03 I'm still a user, Ive no idea how to build a Forth and as a tech, it's not on my list of things to do anyway 22:50:21 but I do admire those who build their own 22:50:31 So tp; how come mecrip was having a hissy about when moving to flash? In particular, when I went create leds x cells allot ? 22:51:02 jsoft, are you asking whats the difference between ram and flash ? 22:51:30 thats what youre really asking I think 22:52:10 better have that 1 $billion ready if you want the real answers 22:52:57 but then I tried 'compile to ram' before, followed by another compiletoflash, and then I could not access it 22:53:05 otherwise I may just say something like " the reason is due to the turboencabulator grissle-lock" 22:53:45 Like I get you cant use flash like ram, but why is it assuming I want to allocate an area in flash? 22:53:51 Hmm. 22:54:01 Well I suppose it could be some image or something in flash I might want to load 22:54:18 But then why would I need to allot it 22:54:57 jsoft, when you create a variable in a Word, have you noticed that the variable creation is immediate only ? 22:54:59 anyway, is something like FOO buffer: bar the ideal solution for what I wanted ? 22:55:22 I have never created a variable in a word 22:55:28 so I have not noticed that 22:55:44 well lets put it this way 22:56:07 you may create a file called 'roboclock' ;-) 22:56:14 :P 22:56:15 and in the file may be several Words 22:56:35 but the variable creations wont be inside those words 22:57:23 yet when you load that file into flash the variables are created (along with the words), you can see them in the word list 22:57:46 Mecrisp-Stellaris has 'some special trickery' to quote matthias that does this 22:58:23 mmm ok 22:58:44 now what were you trying to do and couldnt when it came to flash ? 22:58:57 can we have the offending line or word please ? 22:59:13 create leds 72 cells allot 22:59:22 assume that is in a file which gets compiledtoflash. 22:59:28 That part works. 22:59:45 But, lets say if I snuck up all sneaky like, and went 1234 leds ! 22:59:48 it would explode 22:59:58 Unhandled interrupt and such. 23:00:14 Because IIRC it was pointing to an address in flash. I think. 23:00:49 absolutely 23:01:04 Yeah. 23:01:06 And things. 23:01:25 Unhandled interrupt and such happened because you only defined 72 cells then went outside that memory 23:02:11 cortex-m knew you were trying to be sneaky and put a stop to that kind of malarkey quick smart! 23:03:23 Hmm? 23:03:30 What do you mean went outside that memory 23:03:51 72 cells were reserved for that array ? 23:04:07 and then you defined 1234 cells ? 23:04:25 no no no, I was writing 1234 to the _first_ cell 23:04:35 oh 23:05:55 Ive only ever defined array data in the array creation 23:05:56 To combat climate change, no less. 23:06:04 Ahh ok 23:06:15 I havent done it after the array is created 23:06:25 Well yeah, the whole buffer: thingy seemed to do it though, an actually had a ram address 23:06:40 Im not sure if thats 'the way' to do it though 23:06:41 Im guessing the command is wrong if a unhandled occured 23:06:56 yeh it would have 23:07:04 It was exactly the same command which was working perfectly when compiletoram was being used 23:07:36 dont you have to specify the array index when writing and reading ? 23:08:23 if 1234 is your data, whats the index ? 23:08:31 that may be why it bombed 23:08:36 nerp 23:08:43 the name is just the pointer 23:08:59 the name is the 'base' address 23:09:05 it needs a index 23:09:09 and data 23:09:22 and then you can go pointer + index cells if you want to use 23:09:34 yes 23:09:36 yeah so can just add on top of it 23:10:35 "1234 leds !" is incomplete I think 23:10:45 leds is the base address 23:11:03 youre missing the pointer offset 23:11:14 ( I think) 23:11:28 yeah but I was just giving an example 23:11:34 _any_ offset was failing 23:11:39 ???? 23:11:44 it was incomplete 23:11:45 where previously it was working fine in ram 23:11:49 its not incomplete 23:11:50 thats not a example 23:12:19 "1234 leds !: you said 23:12:25 oops 23:12:29 without the : yeah 23:12:29 "1234 leds !" you said 23:12:37 thats incomplete 23:12:47 hows that. 23:13:05 pointer + index cells 23:13:19 ok, and whats pointer + index cells ? 23:13:23 when the index is 0 ? 23:13:36 its the same as the base address ? 23:13:42 ie, leds 23:13:42 a null index is not a index of 0 23:13:47 no 23:13:50 :/ 23:14:11 it spewed becaus ethere was no index 23:14:13 0 cells gives 0 23:14:21 pointer + 0 = pointer 23:14:24 you must specify the index 23:14:39 try it with a index ? 23:14:50 or ya wanna argue with me all night ? 23:14:56 yeah nerd fight! :D 23:15:07 Nah I don't even have it all set up right now 23:15:21 The clock is in the hands of someone else 23:15:21 you may bring any personal weapon, work weapons excluded 23:15:40 ferk it's like armageddon outside 23:16:00 Really? I better go get some bourbon then 23:16:04 such a lame excuse, you get 1/10 23:16:15 ok, 3/10 in that case 23:16:31 Oh don't worry, I'll set my F0 discovery up, and we will go for round two :p 23:16:35 you have a Linux box, you can run Mecrisp-Stellaris anytime you like on it 23:17:02 I have several versions and options set up in my unix menu 23:17:14 I click and hey presto, Mecrisp-Stellaris in a xterm 23:17:48 not to mention a stm32f103 and a GD32VF103 both running on real hardware 23:18:18 i think I'll have to go and buy dust filter masks tomorrow 23:18:47 the smoke is intolerable now, I'm sick of it after 4 weeks 23:18:57 what smoke? 23:19:15 from all the fires in new south wales where I live 23:19:23 Oh yowzers 23:20:01 something like 124 fires burning atm 23:20:03 https://www.rfs.nsw.gov.au/fire-information/fires-near-me# 23:20:12 I live in the town marked "casino" 23:21:06 this is our rain radar http://www.bom.gov.au/products/IDR283.loop.shtml the 'rain' is actually just smoke from the fires 23:21:19 there are no clouds or rain 23:21:25 just thisk smoke 23:23:07 I have a friend who lives right in the middle of the latest outbreak 23:23:37 it looks like his area has been completely burnt on the map 23:24:16 That's terrifying 23:24:24 jsoft, this is the neopixel story I was relating to re your leds: https://wp.josh.com/2016/10/29/a-quick-test-for-crappy-ws2812b-neopixels/ 23:24:34 where I live, all I have to worry about is tornadoes every 5 years or so 23:39:03 ryke, outside the sky is grey nd the sunlight is a dull yellow 23:39:27 ryke, erk, Ive seen films of the American tornadoes! 23:40:07 lol I've never actually seen one in person, but there have been plenty of close calls so I'm told 23:47:14 tp, Ahh yes, I remember you posting that the other day 23:47:27 tp, I think I had like, perhaps 2 or so actual dead leds 23:47:41 Well ones which worked for 0.92 moments and then dieded 23:49:13 tp, oh so you know the um, the wire connecty RF welding shenanigans you were talking about before, is that the same things going on there in that neopixel ? 23:49:19 How you can see the wires and what not ? 23:51:20 --- join: SysDsnEng joined #forth 23:59:59 --- log: ended forth/19.12.05