00:00:00 --- log: started forth/19.02.07 00:49:41 --- join: xek__ (~xek@apn-37-248-138-83.dynamic.gprs.plus.pl) joined #forth 02:03:45 --- quit: ashirase (Ping timeout: 245 seconds) 02:07:38 --- join: ashirase (~ashirase@modemcable098.166-22-96.mc.videotron.ca) joined #forth 02:08:45 Huh interesting quote: http://git.savannah.nongnu.org/cgit/stage0.git/tree/bootstrapping%20Steps.org#n166 02:08:51 "If you want to bootstrap anything, NEVER EVER EVER START WITH FORTH. Get yourself a good assembler first and you might find writing a garbage collected lisp is actually much easier." 02:09:40 This project attempts to bootstrap GCC with a single 1 KByte binary or less. 02:24:16 > Having done all of the above; I must say if I had to start with this forth or the hex monitor, I would always choose the forth but I wouldn't dare dream of trying to jump straight to forth from Hex. 02:30:30 a lisp is easier? 03:03:17 lisp easier to bootstrap from a macro assembler? rather ridiculus I think 03:05:50 datapoint: ECL bootstrap process goes as follows: forth vm compiled from C and then lisp built on top of this forth vm, then its own compiler kicks in 03:06:33 (bytecodes compiler/interpreter working on this vm is still available at runtime) 03:07:53 well, forth-ish as in being threaded and fully stack-based, there is no forth interactive repl whatsoever 03:12:18 has anyone written a basic scheme/lisp with a gc that runs on something like jonesforth? 03:15:23 https://bootstrapping.miraheze.org/wiki/Forth i took notes on going from assembly to forth to lisp on here 03:18:29 --- join: rdrop-exit (~markwilli@112.201.168.172) joined #forth 03:19:18 That quote makes no sense, with Forth you have an interactive assembler at your fingertips. 03:23:11 that's a good point but i think forth can be difficult for people who aren't used to it 03:23:20 im new at forth and i would take hours to do simple tasks in it 03:27:37 we need help from you guys lol 03:29:31 "guys lol" 03:30:04 every subject can be difficult for people who aren't used to it 03:30:14 I newbies are better off starting with a commercial Forth cross-compiler that provides all the ameneties. 03:30:22 * I think 03:32:39 rain1: I'm reading https://github.com/marcpaq/arpilisp 03:33:03 It also mentions the jonesforth author as being a source of inspiration 03:33:36 jonesforth also mentions Lisp in the beginning, heh. The languages aren't all that different. 03:34:30 Yeah if the person of stage0 bootstrapped earlier in Forth it would be easy to implement a Lisp on top of that. 03:35:05 i hope someone will attempt thaht 03:35:08 Once you have Forth running why do you need Lisp? :) 03:35:28 rdrop-exit: the goal is to compile gcc\ 03:35:46 and the way they chose to do this was by writing a c compiler in scheme and using it to build tcc, which can build gcc 03:36:02 This is probably the only Lisp I've seen implemented in Forth https://github.com/tgvaughan/scheme.forth.jl 03:36:02 =8-O 03:36:05 but i think you have a good point, it would be possible to write a c compiler in forth that was capable enough to build tcc 03:36:44 The most advanced one too because it has GC, an unhygienic macro system and first class continuations 03:37:24 ^ it's also utter lunacy to implement forth in a high level language (julia) only to implement another high level one! 03:37:31 I don't see the point of using Forth to write a general purpose language. 03:37:38 nice i added it to my page 03:37:50 Is there a C compiler written in Forth? 03:37:51 rdrop-exit: the aim is to compile gcc 03:38:01 i think forth is a valid tool for thath 03:38:35 would you just stay at forth and not build new languages? or what do you suggest? 03:39:00 Apparently TCC can compile GCC, with some patches 03:39:13 yeah the mob branch 03:40:17 IMO having languages implemented in each other is a good exercise 03:42:38 I've never perceived Forth as a language. 03:43:36 wow 03:44:28 what about postscript 03:46:48 Yes, it's more of a language. 03:47:39 rain1: what are you doing? 03:50:37 As soon as you try to make Forth more language like, you lose much of what makes it unique, and end up with just another language. 03:53:02 a platform? 03:53:58 A technology stack 03:54:52 There's elements of compiler, interpreter, OS, shell, assembler, cross-compiler, cross-assembler, meta-compiler, etc, etc... 03:55:40 Runtime environment, stack machine, and so on... 03:58:24 Treating Forth as just another language to be parsed, misses the whole point of Forth. 03:59:34 interesting 04:00:47 It's its own ecosystem. 04:04:47 That's what makes it so hard to grok. 04:10:21 --- join: [1]MrMobius (~default@c-73-134-82-217.hsd1.va.comcast.net) joined #forth 04:10:59 --- quit: smokeink (Remote host closed the connection) 04:11:20 --- join: smokeink (~smokeink@42-200-118-99.static.imsbiz.com) joined #forth 04:13:31 --- quit: MrMobius (Ping timeout: 250 seconds) 04:13:31 --- nick: [1]MrMobius -> MrMobius 04:17:17 --- join: [1]MrMobius (~default@c-73-134-82-217.hsd1.va.comcast.net) joined #forth 04:20:25 --- quit: MrMobius (Ping timeout: 245 seconds) 04:20:26 --- nick: [1]MrMobius -> MrMobius 04:42:56 customers have no connection to office365 or SIP registration 04:43:06 still not? 04:43:19 we just sent an engineer to the datacentre to pump icmp packets through the router and run wireshark on the other end 04:43:25 working at an isp is mental 04:44:27 hmm.. I have a suggestion for adblocker makers: slow loris 'load' few of the ads. That way even folks not running the adblocker benifits! 04:45:18 --- quit: rdrop-exit (Quit: Lost terminal) 04:46:07 Zarutian: Lol, adblocker SYN floods the server and uses some of the connections to download the ad content with all available bandwidth :D 04:46:52 Otoh people are horrible at building websites. I bet that there are some websites that try to load the ads first, and when they don't load, the whole website takes ages to load if the ad server is down or slow. 04:46:58 john_cephalopoda: nono, slow loris doesnt take up much resources client side but just think of all the TCP control blocks the ad server has to keep around 04:47:38 Zarutian: Hm, I've never heard of "slow loris" before. 04:50:29 Oh, it's basically like SYN flood, but on Application level. 04:54:39 doesn't open tcp connect = less power savings on client? 04:56:49 if you've written a lot of lisps and no forths then what the guy claims might be true. but you typically don't build a new forth target from asm, you typically build it from an already working forth. this is quicker than building a lisp or forth from scratch. 04:59:26 i built my first forth using python to create a metacompiler 04:59:35 wasn't that hard 05:00:20 with lisp you have namespaces to worry about 05:00:23 and parsing 05:07:09 Lisp namespaces? There's just lexical scoping. 05:07:19 And pretty much a global namespace 05:07:25 yes 05:07:37 which is more difficult than forth 05:08:08 I like Forth for its practicality, but then you necessarily have to give up all safety 05:08:23 yea 05:08:34 100 0 ! is not possible in Lisps 05:08:41 lisp won't crash 05:09:01 So it all depends on the use case 05:09:04 but still not much static help 05:09:20 yea i didn't implement much in forth yet, so i don't know how composition influences things 05:09:22 Well I could make it "crash", such as overflowing the stack or running out of memory 05:09:33 you *can* build safety into Forth 05:09:36 but good luck 05:09:39 But you can handle those in Lisp, in Forth you can't. 05:09:50 if you radically decompose, is it so easy to test, that you don't run into problems? don't know yet 05:09:56 It's diametric 05:10:31 My experience with building zkeme80 was through a lot of tests 05:10:32 --- quit: dave0 (Quit: dave's not here) 05:11:13 I would program in Forth over assembly given the choice, obviously. 05:12:45 At the same time, if you know 100% what you're doing you don't need much safety 05:17:14 --- join: dddddd (~dddddd@unaffiliated/dddddd) joined #forth 05:20:14 siraben: You can easily write an assembler in forth that translates something like "EAX EBX MOV32" to assembly. 05:20:16 if you're bootstrapping a machine - it's good for your language model to be as close to your target machine model as possible, imho. 05:20:39 you say that assembler thing every day 05:20:42 we get it 05:21:05 unless you've got a symbolic lisp machine, doing it in lisp means keeping at least two different architectural models in your head at one time. 05:21:34 WilhelmVonWeiner: Point is that assembly is just yet another programming language, which is pretty close to the hardware but it's not the only language that can do that. 05:50:08 --- quit: proteusguy (Ping timeout: 250 seconds) 06:00:18 --- join: proteusguy (~proteusgu@cm-58-10-154-147.revip7.asianet.co.th) joined #forth 06:00:18 --- mode: ChanServ set +v proteusguy 06:07:36 --- quit: smokeink (Ping timeout: 268 seconds) 06:23:47 proteusguy: agreed. 06:24:31 Either you do that, or you spend decades on a beast like GCC to use every trick in the book to optimize the hell out of the code 06:24:56 siraben, so if the lisp model is inherently what your mind naturally tracks then you might be a candidate to do all this bootstrapping in lisp. In all other cases I would say probably not. 06:26:31 I'm pretty flexible so both forth and lisp make sense 06:27:08 siraben, you're rather exceptional in that regard. ;-) 06:27:34 Haha, thanks 06:28:40 I haven't managed to get any Forth OSes to boot on a x86 machine, hm 06:28:45 I thought there would be several by now 06:30:42 --- quit: nighty- (Quit: Disappears in a puff of smoke) 06:31:11 Anyone working on any? 06:31:30 that's because people just like to waste their time rewriting their forth every day instead of doing anything useful with it 06:35:11 Kumool: not all of us just waste time on rewriting forth systems 06:38:38 :S sorry 06:39:00 there was a forth OS around siraben google it 06:39:01 --- join: rdrop-exit (~markwilli@112.201.168.172) joined #forth 06:39:21 at this rate it must be archived 06:39:33 siraben: I have a retro12/native-x86 iso at http://forthworks.com/retro/download/retro.iso.zip - it hasn't been updated recently, but boots to a basic repl 06:40:35 there have been a couple, colorforth basically had an OS and everything 06:42:06 Kumool: I need to revisit it, kind of ran out of ideas 06:42:09 The muse will come back 06:42:18 there is also a much older iso of retro9 (back when retro was an x86 assembly implementation) at http://forthworks.com/retro/r/9.1/binary/retro.iso 06:42:28 crc: i'll check it out 06:43:19 i wonder how much cpu support i'd need to implement multithreading 06:44:19 I used to have retro9 as one of several installed OSes on an old laptop, so I know that one worked on actual hardware and not just emulators/virtualization. 06:49:31 i guess i'd have to switch stacks 06:49:49 Rewriting a Forth is not a waste of time when you're adapting it for a particular application. 06:50:02 or i partition the existing stacks 06:50:10 right now i have 256 elements per stack 06:50:20 i think i could easily make 4 or 8 threads 06:50:38 rdrop-exit: https://github.com/corecode/forth-cpu/blob/master/rtl/cpu.v 06:51:17 I'll take a look tomorrow thanks, it's getting too late for me to stare at code. 06:52:28 This OS has a Forth system http://mikeos.sourceforge.net 06:53:36 Is it possible to draw things graphically on bare metal x86? 06:53:45 How much code would be needed? 06:54:12 Too much 06:55:19 depends. if using a vesa or vga graphics mode it's not that bad 06:55:37 So terminal graphics it is then 07:03:23 siraben: i think with a modern uefi mode, not much 07:06:08 The NetBSD rump kernel provides an interesting way to get access to drivers without bringing in a full OS. 07:06:22 https://en.wikipedia.org/wiki/Rump_kernel 07:08:53 --- quit: proteusguy (Ping timeout: 272 seconds) 07:10:18 I agree with crc on VESA, VGA 07:10:43 why not uefi? 07:11:00 x86 assembly doesn't look too bad, hm 07:11:04 Just bloated 07:11:32 you mean the text or the instruction encoding? 07:11:53 --- quit: reepca (Remote host closed the connection) 07:11:53 The instruction set 07:12:28 --- join: reepca (~user@208.89.170.37) joined #forth 07:13:27 I skimmed some of the UEFI docs a while back, didn't care for it, don't recall why. 07:15:24 Maybe I was just pissed that it killed OpenFirmware. 07:15:51 hehe 07:17:20 Siraben check out https://www.agner.org/optimize/ for good info on x86. 07:18:03 or #osdev 07:18:42 Night guys, keep on Forthin' 07:18:55 --- quit: rdrop-exit (Quit: Lost terminal) 07:19:04 siraben: I have a few old assembly snippits at http://retro.tunes.org/pub/RetroForth/retro5/source/words/draw/ and http://retro.tunes.org/pub/RetroForth/retro5/source/console.1 for drawing to a VGA display 07:19:11 Wow, is this what a Z80 is capable of? https://youtu.be/TwNmMczbZ8w 07:19:22 I'll dive into x86 later, saving those links 07:23:09 isn't the z80 about as powerful as an 8086? 07:23:41 Must be cleverly using interrupts 07:23:49 for what? 07:23:53 multitasking? 07:24:30 Likely 07:24:55 that's how multitasking is often implemented 07:25:03 or cooperative with hand-off 07:30:36 corecode: The Z80 is about half as powerful as an equivalently-clocked 8086. 07:30:45 ok 07:30:53 It's the Z800 that was more in the 8086's league. 07:34:05 I should find uses for interrupts in my OS 07:35:23 looks like the MSX had a 3.5mhz Z80 07:35:35 Being "single threaded" limits things quite a bit. How would one read from the keyboard and draw to the screen, for instance? 07:35:36 so about as powerful processorwise as a commodore 64 :P 07:35:54 A keyboard interrupt seems the best way to do it 07:39:42 siraben: The traditional way in non-interrupt-driven systems is a polling loop. 07:39:52 why would you be single threaded? 07:41:21 i must be missing something 07:41:27 Ah looks like there's a crystal timer on the calculator 07:41:40 That can signal an interrupt every interval 07:42:04 http://wikiti.brandonw.net/index.php?title=83Plus:Ports:30 07:42:09 Might come in handy 07:42:47 corecode: i'm on the z80, and don't have threads. 07:44:36 cpus typically don't have threads 07:44:41 it's implemented by the OS 07:45:17 siraben: https://wiki.osdev.org/Drawing_In_Protected_Mode 07:51:06 I really like that the video of the z80 has sound when something is printed to CLI. 08:03:06 --- join: pierpal (~pierpal@host132-240-dynamic.52-79-r.retail.telecomitalia.it) joined #forth 08:47:57 my laptop makes the same sounds 08:48:32 lucky bastard. Mine is mute.. (I blew the speakers in the first month) 09:14:39 --- quit: pierpal (Quit: Poof) 09:14:57 --- join: pierpal (~pierpal@host132-240-dynamic.52-79-r.retail.telecomitalia.it) joined #forth 09:16:47 i mean i can hear it, it's not that it deliberately makes the sounds 09:30:46 --- quit: xek__ (Remote host closed the connection) 09:31:11 --- join: xek (~xek@apn-37-248-138-83.dynamic.gprs.plus.pl) joined #forth 10:19:17 --- join: X-Scale` (~ARM@85.59.43.5.rev.vodafone.pt) joined #forth 10:20:06 --- quit: X-Scale (Ping timeout: 250 seconds) 10:20:07 --- nick: X-Scale` -> X-Scale 10:23:11 --- join: dys (~dys@tmo-116-187.customers.d1-online.com) joined #forth 10:32:31 --- quit: gravicappa (Ping timeout: 246 seconds) 10:33:06 --- join: gravicappa (~gravicapp@h109-187-219-85.dyn.bashtel.ru) joined #forth 10:36:08 --- quit: dys (Ping timeout: 250 seconds) 10:51:33 --- join: dys (~dys@tmo-087-65.customers.d1-online.com) joined #forth 11:08:31 --- quit: gravicappa (Ping timeout: 244 seconds) 11:11:22 --- quit: the_cuckoo (Quit: WeeChat 1.4) 11:14:32 --- quit: pierpal (Quit: Poof) 11:14:49 --- join: pierpal (~pierpal@host132-240-dynamic.52-79-r.retail.telecomitalia.it) joined #forth 11:19:08 --- join: the_cuckoo (~charlie@d51A50AE9.access.telenet.be) joined #forth 11:34:29 --- join: mtsd (~mtsd@94-137-100-130.customers.ownit.se) joined #forth 11:34:50 --- quit: the_cuckoo (Quit: WeeChat 1.4) 11:52:40 crc: I booted your retro forth OS in virtualbox. Is there an editor? 11:53:35 crc: I used 'words' for the word list, but it scrolls up off the screen and I can't figure out how to scroll up. 12:04:50 --- join: the_cuckoo (~charlie@d51A50AE9.access.telenet.be) joined #forth 12:18:54 Croran: not yet. The system is *very* minimal at the moment; I haven't had time to do the block storage driver yet, so no block editor or saving of the image :( 12:21:25 you dont need storage! keep it all on ram! 12:21:59 Kumool: that only works if you are ok with losing all data easily 12:22:58 exactly! you get to code again and again! 12:23:02 its like programmer heaven 12:23:09 * crc should look at probing to find the actual RAM size so the image isn't constrained to a small subset of it 12:26:21 not for me. retyping is too painful to do unless necessary. 12:29:52 http://forth.works/7538522ed1cd50827e6e5f93b7321930 is my current to-do for the native system 13:09:20 Croran: if it helps, http://forth.works/7243c7c076474f9db04ebbfcffed9622 is a list of the words that are provided in the native system 13:09:27 have you thought about moving to J? less typing! 13:10:05 I prefer to use forth. 13:13:59 thanks 13:14:48 crc oh youre making the forth bootable? 13:15:37 hey crc :) 13:15:40 that's exciting you could steal soem parts from eulex maybe 13:16:15 Hi C-Keen 13:17:14 rain1: no, eulex is GPL, so I'm not going to steal from it 13:18:52 rain1: I'm hoping to *eventually* support booting & use on x86/x86-64, ARM, PIC32, and RISC-V systems 13:21:29 that would be fantastic 13:22:55 --- quit: xek (Ping timeout: 245 seconds) 13:25:41 crc: RSI still plaquing you? 13:26:30 PIC32 is pretty much MIPS iirc 13:27:23 Zarutian: yes to RSI 13:28:10 crc: thought of learning morse and getting a footpedal to morse with? or other such input method? 13:28:13 I've done versions of my prior VM on PIC32 & ARM before, so it shouldn't be too bad to dig them up 13:30:52 crc: other RSI remedies I have heard of is to repurpose small vibes to constantly low massage your forearms 13:31:40 crc: should increase blood flow and sooth certain kind of tiredness/tenderness. 13:32:44 I've been looking at building a chording keyboard to minimize finger movement and might be getting a better ergo keyboard in a month or so 13:33:28 that last you can rig up in a few days thought it might be ackward at those specialities shops 13:34:06 crc: have you tried using dvorak? theres less strain using it as well 13:34:35 Kumool: I only use dvorak :) 13:34:40 :D 13:42:15 --- quit: cantstanya (Remote host closed the connection) 13:43:15 --- quit: mtsd (Quit: WeeChat 1.6) 14:17:48 --- join: cantstanya (~chatting@gateway/tor-sasl/cantstanya) joined #forth 15:47:12 Is there a demo of recursive descent parsing in Forth? 15:47:30 heh 15:48:32 shouldn't that trivial? 15:48:43 Of course 15:50:07 But I'm wondering if there's some elegant "trick" to ir 15:50:27 what is ir? 15:51:22 Oooh, recursive descent parser... I once wrote something about that at university. 15:51:37 corecode: "ir"="it", but misspelled. 15:53:59 * Zarutian for some reason gets the picture of an book reading person going down an Escher staircase 15:54:34 Zarutian: i like that picture 15:56:21 wouldn't you just do something like PARSE_NEXT_WHAT_I_EXPECT CHECK_AND_DESCEND ? 15:56:38 i think a specific language would be useful to talk about how to parse it 15:57:42 The original paper is pretty straightforward. 15:58:48 what paper? 15:58:57 Oh, wait, mixed up recursive descent parser and the packrat parser for parsing expression grammars. 16:00:44 Side note: If there's a project like https://github.com/tbodt/ish a Forth system would be orders of magnitude simpler 16:00:46 crc: look into that UF2/whatever 'loader' that circuitpython uses ;-) 16:01:07 john_cephalopoda: corecode: Sorry, typing on mobile. 16:01:40 Right the problem is not the algorithm but how best to express it in Forth. 16:02:26 There's this BNF parser: https://www.bradrodriguez.com/papers/bnfparse.htm 16:02:32 siraben: what language is it? 16:02:52 to parse 16:03:07 because recursive descent is typically open coded 16:03:23 Let's say it's infix arithmetic. 16:03:44 Right so a Forth solution should be able to be quickly adaptable. 16:04:56 I'm quite fond of that META II paper still, very simple and almost Forth-like. 16:07:01 hi 16:07:15 Hi dave9 16:07:48 hi siraben 16:47:17 --- join: [1]MrMobius (~default@c-73-134-82-217.hsd1.va.comcast.net) joined #forth 16:50:25 --- quit: MrMobius (Ping timeout: 245 seconds) 16:50:26 --- nick: [1]MrMobius -> MrMobius 16:53:32 --- quit: john_cephalopoda (Ping timeout: 252 seconds) 16:55:07 --- join: john_cephalopoda (~john@unaffiliated/john-cephalopoda/x-6407167) joined #forth 17:36:32 hey guys 17:41:02 lo 17:52:41 --- join: nighty- (~nighty@b157153.ppp.asahi-net.or.jp) joined #forth 17:53:48 --- join: X-Scale` (~ARM@85.59.43.5.rev.vodafone.pt) joined #forth 17:55:09 --- quit: X-Scale (Ping timeout: 240 seconds) 17:55:10 --- nick: X-Scale` -> X-Scale 18:16:59 Evening gents. 18:17:42 hiya KipIngram 18:17:45 how goes? 18:18:45 Pretty good. Ready for another vacation, though. 18:18:51 Good thing I have one coming in 5-6 weeks. 18:19:42 Oh, for reasons related to another hobby, I've just set up an Ubuntu 18.04 box on an older computer my daughter used to use. 18:19:52 So soon I'll get to port my Forth to Linux and make it go there. 18:20:01 heh 18:20:13 I'm trying to decide whether to dump the relative addressing as part of that process. 18:20:35 It would work with the relative addressing, but on Linux I could make it work without it, and it would speed up some of the key routines a hair. 18:22:42 KipIngram: the Relative stuff is a great idea for "can read an image from and load it in here" - but, it sounds irksome 18:38:15 damn you assembler for putting out malformed VM code without any good reason 18:38:59 * PoppaVic chuckles 18:39:35 it is just not outputting the first two words in the dictionary that are not primitives 18:40:14 and as VM tokens must be defined in order from lowest to highest, so it doesn't like the gap 18:40:40 Oh, I need to plug my little Cortex M4 board into this new computer. 18:40:55 What really drove this is that my employer (IBM) disabled USB port writing. 18:41:03 So suddenly I had no ability to deal with any "gadgets." 18:41:46 It's supposed to be a security measure - to prevent us from copying company IP off onto portable storage and walking out with it. 18:41:49 idjits 18:41:55 --- quit: dddddd (Remote host closed the connection) 18:41:58 But get this: I can still burn DVDs with the system. 18:42:07 I still haven't figured out how that makes sense to them. 18:42:17 BT, WiFI, etc 18:42:24 Yeah. 18:42:32 KipIngram: corporate.. managers... School O' Wannabe 18:42:43 There's just no way to make a policy like that truly work. 18:42:55 All they achieved was the ability to tell their own management that they "did something." 18:43:03 All about justifying their existence. 18:43:17 well, you could shield and isolate the entire place as WELL as not allow ports at all.. No packages in or out... 18:43:42 I'm fairly sure I could lock it down - and in hours, everyone would quit. 18:43:42 Yes, I guess they've probably done that in some military installations. 18:43:50 ^ Bingo. 18:44:12 ..I can't even envision anyone today not dicking their goddamned cellphone every minute or two 18:47:57 You'd be proud of me - I hardly even carry mine around anymore. 18:48:03 I usually leave it in the car when I go into the office. 18:50:14 KipIngram: you have printers? Way to instanciate QR code generators and encryption software? 18:50:47 KipIngram: yeah, I carry it to/from work (for roadside); it sits on the shelf feeding music off the sdcard via BT to a speaker one of the guys bought. Done.. It goes in, it comes home. No data-plan and no interest in one. 18:51:55 Zarutian: Um, I have a couple of printers here in the house. Where are you going with that? 18:52:44 well, you could get an story encoder inside and then just 'print off' the secrets so to speak 18:52:52 --- join: smokeink (~smokeink@42-200-118-99.static.imsbiz.com) joined #forth 18:53:10 if you are stopped then you show them that you were just priting of a story for your kids or some such 18:53:56 Hide yer cable-compatible flashdrive in yer shoe, since you don't need that phone anymore 18:54:18 Ah. Well, yes, I'm sure there are a million and one ways around it. 18:54:37 Flush it down the poo-poo highway with a beacon 18:54:59 launch it into orbit for the chinee to pickup 18:55:13 oh, this reminds me of a story of some 'corporate espinioage' where the engineers who got the 'secrets' sent them back to the original company with detailed description where that company had fucked up in the design. 18:55:40 * PoppaVic facepalms... 18:55:56 "Now, do it right so we can steal something that works." 18:59:37 --- quit: smokeink (Remote host closed the connection) 19:05:14 PoppaVic: naah it was more of "ya poor bastard. Here is where you fucked up" kind of jab 19:24:23 fucking dammmit - after my changes hashforth segfaults before it reaches the point at which I can do IO, so I am just guessing at what the problem is 19:25:36 it's hard to debug software where it is blind, deaf, and dumb, and where the debugger only really tells you what primitive it crashed in and nothing more 19:27:24 oh wait - it isn't segfaulting anymore, it's complaining about being fed some ridiculous invalid token 19:29:04 Don't do that. 19:30:35 --- join: proteusguy (~proteusgu@cm-58-10-154-147.revip7.asianet.co.th) joined #forth 19:30:36 --- mode: ChanServ set +v proteusguy 19:39:59 --- join: mark4 (~mark4@12.41.103.244) joined #forth 19:55:32 travisb: Welcome to the world of embedded system bring-up... :-) 19:55:59 this isn't even embedded! 19:56:22 Well, I know, but what you're experiencing is typical of embedded. 19:57:38 The best trick I know here, aside from specialized tools, is to stick an "exit" in there near the beginning, and march it forward until you get the segfault instead of a clean exit. 19:58:08 or printfs 19:58:08 That's tedious and slow, but you can find place it's crashing that way. 19:58:15 He can't do I/O yet. 19:58:36 at all? 19:58:37 drat 19:58:38 But you can test stuff, and exit or not depending on the result, so sort of one-bit-at-a-time you can extract information. 19:58:41 That's what he said. 19:58:59 --- quit: mark4 (Quit: brb rebooting) 20:02:39 back 20:03:19 I moved around my IO initialization such that I could do IO 20:03:57 and I read the code a bunch of times over until I realized what happened (I did something like you can do in Forth which you can't do that way in VM assembly) 20:05:34 --- join: mark4 (~mark4@12.41.103.244) joined #forth 20:05:48 btw, im reverse engineering an old dos game that was written in forth 20:06:01 the game was very popular and literally has the forth compiler built in still :) 20:06:09 not very far along yet 20:11:19 --- quit: dave9 (Read error: No route to host) 20:15:33 --- quit: bluekelp (Remote host closed the connection) 20:21:27 --- join: gravicappa (~gravicapp@h109-187-219-85.dyn.bashtel.ru) joined #forth 20:23:57 mark4: starflight? 20:24:18 YES! 20:24:25 you knew about that one? 20:24:47 back 20:24:51 siraben, because the x86/64 CPU and modern motherboards are a serious PITA to get to startup in any useful manner. Most forths boot inside tiny SOCs or 8bit CPUs like your Z80. 20:25:01 now it works, finally 20:25:35 mark4: I've not played it, but read about it a year or so back 20:25:44 Otherwise for PC machines, people just get them running inside virtual machines rather than the direct motherboards. It's a sign of the absolutely unnecessary complexity that hardware manufacturers have imposed on general purpose computing. 20:26:48 it came out about 2 years after elite did. i used to play elite on my c64 about 1/2 a mile away from where the original ARM processor was developed and the guy that wrote elite worked lol 20:30:51 * travisb is always so happy when his code finally works properly after a long debugging session 21:22:17 --- join: dave9 (~dave@193.060.dsl.syd.iprimus.net.au) joined #forth 21:39:14 --- quit: mark4 (Quit: Leaving) 21:39:36 --- join: dave0 (~dave0@193.060.dsl.syd.iprimus.net.au) joined #forth 21:39:51 re 22:12:39 --- quit: pierpal (Remote host closed the connection) 22:38:09 --- quit: dys (Ping timeout: 240 seconds) 22:57:56 --- join: pierpal (~pierpal@host132-240-dynamic.52-79-r.retail.telecomitalia.it) joined #forth 23:27:27 --- join: bluekelp (~bluekelp@bluekelp.com) joined #forth 23:59:59 --- log: ended forth/19.02.07