00:00:00 --- log: started forth/01.01.17 02:29:39 --- join: I440r (mark4@purplecoder.com) joined #forth 02:47:32 --- quit: I440r (Reality Strikes Again!) 03:38:33 --- join: I440r (mark4@purplecoder.com) joined #forth 03:39:03 erm 03:39:04 brb 03:39:09 --- part: I440r left #forth 03:39:32 --- join: I440r (mark4@purplecoder.com) joined #forth 03:39:32 --- mode: ChanServ set mode: +o I440r 03:39:34 --- mode: I440r set mode: +o aaronl 03:39:40 aaronl: didnt i add u here yet ? 08:11:06 --- join: Fare (fare@ppp101-net1-idf2-bas1.isdnet.net) joined #forth 12:10:24 --- quit: aaronl (Ping timeout for aaronl[vitelus.com]) 12:15:36 --- join: edrx (edrx@200.240.18.64) joined #forth 13:16:33 --- part: edrx left #forth 15:07:30 --- join: aaronl (aaronl@vitelus.com) joined #forth 15:30:38 --- join: edrx (edrx@200.240.18.64) joined #forth 15:47:15 --- quit: aaronl (Read error to aaronl[vitelus.com]: Connection reset by peer) 15:47:16 --- join: aaronl (aaronl@vitelus.com) joined #forth 15:48:19 aaronl: hi - have you tried some version of colorforth? 15:52:14 no 15:53:09 there's one that runs on DOS and that can be run in dosemu, I went bouncing when I saw that 15:53:33 http://angg.twu.net/e/fortho.e.html#c4th 16:03:48 --- part: edrx left #forth 16:09:17 --- join: Fare_ (fare@ppp101-net1-idf2-bas1.isdnet.net) joined #forth 16:23:20 --- quit: Fare_ (Connection reset by pear) 16:37:27 --- quit: Fare (Ping timeout for Fare[ppp101-net1-idf2-bas1.isdnet.net]) 17:00:20 --- join: Fare (fare@ppp36-net1-idf2-bas1.isdnet.net) joined #forth 17:18:45 --- join: tcn (tcn@207.198.30.66) joined #forth 17:19:35 T C N ! 17:19:55 fare.. what be up? 17:20:11 socialist lies 17:20:17 lots of them, in France. 17:20:33 prices are up, too 17:20:46 hehe.. like this tax on blank media? 17:21:29 %$}%*ยต!?&#~ ! 17:22:12 on the other hand, France Telecom internetworking is down 17:23:16 what are they gonna do, distribute the tax revenues to every copyright holder regardless of, uh, 'market share'? 17:25:00 distribute them to monopolistic corporations that pretend to represent the authors 17:25:34 every economic dream of the fascists come true 17:25:40 thanks to the socialist 17:25:45 national socialists 17:26:14 hehe 17:27:48 i think i'm becoming a luddite 17:28:06 luddite? how so? 17:29:05 not technology in itself, but big industry 17:29:38 which isn't industrious in any way :) 17:30:18 eh, big industry == government, these days 17:31:47 govt isn't AS bad, not in the US at least 17:32:53 the govt & taxpayers are getting fucked over by industry 17:34:45 ahh but they all work the same... "put the morons in charge" 17:38:08 Interesting discussion there, with Stallman.. 17:51:51 hum 17:52:03 wb :) 18:09:11 --- join: Fare_ (fare@ppp36-net1-idf2-bas1.isdnet.net) joined #forth 18:13:23 Fare: what's the last thing you saw? 18:18:28 didn't see much 18:25:11 hum 18:25:11 wb :) 18:25:44 eh, big industry == government, these days 18:25:44 govt isn't AS bad, not in the US at least 18:25:44 the govt & taxpayers are getting fucked over by industry 18:25:44 ahh but they all work the same... "put the morons 18:26:00 Interesting discussion there, with Stallman.. 18:29:16 thanks 18:29:45 well, actually government == lobbies 18:29:55 big industry is but part of the lobbies 18:30:03 oh, I said.. "put the morons in charge" 18:30:05 there are also strong labor unions 18:30:15 rather put the crooks in charge. 18:30:21 hehe 18:30:30 that too 18:32:46 tcn!!! 18:32:47 dood 18:32:51 do me a faver 18:32:57 btw, how's retro? 18:33:06 email me at mark4@purplecoder.com so i have a return address 18:33:14 i wanna start working on isforth again with u 18:33:25 if ur up for it heh 18:33:32 --- mode: I440r set mode: +o aaronl 18:33:34 --- mode: I440r set mode: +o Fare 18:33:41 --- mode: I440r set mode: +o Fare_ 18:33:46 --- mode: I440r set mode: +o tcn 18:34:18 oh, allright 18:35:05 cool! 18:36:00 well, i just read Starting Forth 18:36:27 have you seen the ocaml virtual machine? 18:36:38 it's almost forth 18:37:00 so is the VB VM 18:37:29 JUST read it ??? 18:37:34 hehe its phunnie eh ? 18:38:00 yeah, I read THinking Forth first 18:38:23 but I learned a lot more from SF 18:38:58 especially "Under The Hood" 18:38:59 sf is a brilliant book 18:39:12 its old shit but still the best tutorial that ever there was for forth 18:39:38 I like these pre-ANS words 18:39:44 me 2 18:39:51 ans words are fucked up 18:39:58 i dont even like the term CELL 18:40:01 cell+ and cell* 18:40:03 bullshit 18:40:05 like FLUSH instead of SAVE-BUFFERS 18:40:06 thats 2* and 2+ 18:40:10 hehe 18:40:25 yes, but the ocaml vm is used in a language that truly rocks, and it is quite efficient 18:41:31 well at least ocaml doesn't force all them ()'s on you 18:42:15 well, the VM does have some idiosynchrasies due to supporting currying as an efficient way to achieve multiargument functions 18:42:15 are CHARS and CHAR+ also from ANS? 18:43:03 Fare: i'm not leaving forth for ocaml :) 18:45:39 of course you're not 18:45:53 have you seen POP-11 ? 18:46:04 it's exactly FORTH, except with a GC. 18:46:21 and a different syntax -- was invented at the same moment by someone else 18:46:59 it also has an infix syntax, and the VM supports pop, prolog, commonlisp, ml, and maybe more. 18:47:32 hmm 18:48:04 can a POP function return multiple values? 18:48:53 yea thats why i like forth... no limits on parameters, no limits on returned values 18:48:54 it sure can 18:49:17 so can cl and prolog 18:49:47 (in ml, you return tuples, but I suppose the compilers optimize it on stack when available). 18:49:50 so basically, POP is a complicated variant of FORTH 18:49:52 (or in registers) 18:50:00 no. It's not complicated. 18:50:22 It's rather simple, but with an implicit GC, lots of standardized functions, etc. 18:50:47 thats bloat 18:50:53 depends what for 18:51:04 for symbolic computation, it's just NEEDED 18:51:48 argh why complicate simplicity 18:52:28 well, I should check it out.. might come in handy to have a "robust" language that resembles forth 18:53:07 it would beat Java :) 18:53:56 anyway.. back to the topic, isforth 18:56:47 hmm 18:58:44 you know how intel uses 8=byte, 16=word, 32=dword, 64=qword... are there any generic words for these? like 8=octet.. 18:59:03 I440r: tell me how to manipulate data structures more easily 19:00:45 int8, int16, int32, int64, int128 19:00:46 I guess we could have words like B@ W@ D@ Q@ 19:02:01 well u woudld use a creating word to create them 19:02:08 they would be does> words maybe 19:02:30 except D conflicts with all the D... words, and 2 conflicts with the 2.. words 19:02:45 u could easilly create a self sorting binary heap in forth 19:04:03 --- quit: Fare_ (Connection reset by pear) 19:05:02 you think it's too much to expect code to run on both 16- and 32-bit forths? 19:05:14 yes 19:05:16 hehe 19:05:30 that's the reason for all them CELL words 19:05:37 i know 19:05:40 i STILL hate them 19:07:01 I guess you could always use CELL if you must, but normally write non-portable code 19:08:00 it's just that it wouldn't be so bad if it was C+ C* etc.. 19:08:09 i hate portable code 19:08:22 i thinc portability is an over rated idea 19:08:30 i write my code to be VERY specific 19:08:42 specific to the task at hand and specific to the processor its written for 19:08:43 yeah 19:08:52 no fscking jack of all trade code for me :P 19:09:21 non-portable code is simpler and therefore easier to port 19:11:27 exactly 19:11:32 well 19:11:38 that DOES depend on who writ it hehe 19:11:55 i had a long arguement in #debian about how asm is simpler to read than c 19:12:12 give me an executable and ill convert it to a source file 19:12:28 hehe, yeah, if you know the cpu 19:12:32 give me the c sources to some program and it takes me weeks to get them sorted out in my head 19:12:34 ern no 19:12:38 on any cpu 19:12:48 even one ive never used before 19:12:53 just give me a disassembler 19:13:06 ill figure out the processor on the fly 19:14:41 c is very complex... asm is very simple 19:14:52 they were saying asm is no good for LARGE projects tho heh 19:14:53 duh 19:15:02 ok, so I got ur mail.. 19:15:39 heh, I can't type 'u', it becomes 'you' 19:15:54 grr 19:16:28 --- quit: Fare (3053) 19:17:19 hehe u can get rid of that 19:17:26 ur using xchat rite ? 19:18:06 yeah 19:18:07 look in menu item settings --> replace 19:18:22 hehe 19:18:33 ms word lamenell 19:18:34 ss 19:18:47 that always used to piss me off because i had a bot called U on my irc server way back 19:18:57 hehe 19:18:57 hahahahaha 19:19:02 /msg u blayh blah always became /msg you blah blahg blah 19:19:45 and someone made a bot called you that would tell u to do the opposite 19:20:17 hehe 19:21:03 now, as for coding style, I can follow your example... 19:21:31 k 19:21:40 as long as it stays close to what i was doing heh 19:22:33 I think i'll just straighten out the vocab linking crap, delete some extraneous junk, add my syscall stuff.. 19:22:35 i think i have a problem with letting go of control tho hehe 19:22:44 yea 19:22:48 hehe.. me too. 19:22:50 we need to plan what should be done 19:23:17 if i add u as a developer ill have to share control of the project with you... 19:23:28 you SAHOULD be able to dictate polacy as mych as i do 19:23:35 my first action w/ isforth was to restart from scratch :) 19:23:54 hehehe 19:23:57 ur sacked :P 19:24:08 then I realized that's too much worj 19:24:11 specially if u plan to do it in c :P 19:24:15 hehe 19:24:17 haha 19:24:49 ahh crap, still gettin used to the dvorak layout 19:25:00 define "straightening out the vocab" 19:25:04 u use that? 19:25:22 nope 19:25:29 qerty rox :P 19:26:11 i type bad ennuff with just that heheh 19:26:14 hehe 19:26:17 what words would u delete 19:27:07 what u say we ditch the forth/compiler vocab thing for now.. nasm can't handle it 19:27:22 ? 19:27:24 oh 19:27:29 yea i know what u mean 19:27:32 well yea 19:27:39 we can have all words in the same vocab 19:27:43 all on ONE chain 19:27:56 we cah put in a temporary function to break the chains on boot :) 19:28:02 heh 19:28:03 it would know how etc 19:28:20 wouldnt need complex macros 19:28:26 it's slow but we have k6-350's 19:28:26 actually i was of half a mind to do that ahnyway 19:28:31 those macros are a bitch 19:28:51 well the oplan is for isforht to compile itself eventually 19:28:51 hehe .. they'd never work 19:29:05 forht is much better at handling vocabs than nasm is :P 19:29:15 once isforht can compile itself we wont need nasm at all 19:29:34 this is still the project bootstrap phase 19:29:56 it wont bee till isforht is truely compiling itself that we REALY start the project 19:30:30 all we really need are INTERPRET [ ] : ; and the words they use 19:30:42 quit 19:30:53 erm no 19:31:02 create/does> 19:31:05 the kernel needs alot of support words that he kernel itself doesnt use 19:31:25 but yes... there is alot of stuff in there that should realy be extentions 19:31:35 we may only need about 30 words 19:31:51 and an assembler 19:32:03 i STILl want 99% of the "KERNEL" to be done in assembler 19:32:04 add that later 19:32:18 and i absolutely refuse to use anyone elses assemblers, they are shit or cost :P 19:32:23 ok 19:32:27 well 19:32:39 my assembler sucks :) 19:32:43 let me see if i understand what ur saying... 19:33:11 get rid of things like + / * swap dup etc from the kernel 19:33:38 write the BASICinner interpreter with any primatives that IT needs 19:33:49 then put all the rest of the kernel into extentions ? 19:33:56 we could have 19:33:57 kernel 19:34:04 kernel + core extentions 19:34:13 kernel + core extentions + extentions 19:34:27 keep kernel itself to an absolute minimum 19:34:44 something like that.. compile when u run isforth 19:34:49 kernel could meta compile the extentions into itself 19:34:51 or SAVE" 19:35:06 then u can meta compile any other extentions taht you want 19:35:15 like the editor/debugger etc 19:35:32 this would only work if we could have the assembler as a shared library 19:35:46 WHAT? 19:36:00 the kernel itself would NOT have the assembler built into it 19:36:18 so you wouldnt be able to meta compile the core primatives onto the kernel itself 19:36:20 BUT 19:36:30 but it could compile the assembler 19:36:33 if the kernel were able to tap into a pre compiled assembler 19:36:39 no 19:36:49 because the assembler would be guaranteed to need the core primatives 19:36:55 egg/chicken 19:37:29 well put them in the kernel.. don't trim TOO much 19:38:27 - + DUP SWAP etc, those can be in the kernel.. and u already wrote em 19:38:31 cool :) 19:38:33 im 37 :) 19:38:37 argh wrong window 19:38:46 no 19:38:52 we could trim ALOT 19:38:56 but not yet :) 19:39:04 heh 19:39:12 what we do is we make a humongous kernel with every single word we would ever wont in it 19:39:22 we use that to create a loadable libaray assmbler 19:39:30 it's hard to believe that I440r is almost as old as my dad 19:39:36 then we make a NEW kernel that is absolutely minimal 19:39:37 but then again, both do program in assembly... 19:39:42 NOTHING in it that IT doesnt use itself 19:39:46 not even the assembler 19:40:25 so 19:40:32 we have a realy realy relay SIMPLE kernel 19:40:41 taht has the ability to link a shared lib 19:40:50 do u REALLY want to write 500 words like this: dd DUP,PLUS,STORE 19:41:04 hehe no 19:41:20 we dont need to go to those extreems... we can draw a line :P 19:41:39 but we make a full blown entity kernel with all extentions SOMEHOW 19:41:49 and use that to build the minimal kernel 19:41:51 then the kernel needs just the words needed to compile the standard words 19:41:56 and the shared lib assembler 19:42:14 then we cah use the minimal kernel to compile the core extentions onto itself using the shared lib assembler 19:42:18 hehe yer gettin ahead of me 19:42:24 i know 19:42:29 im always 1 step ahead :P 19:43:05 so the minimal kernel links the assembler, assembles the core extentions onto itself 19:43:08 and saves itself out 19:43:17 call that kernel+ 19:43:36 then we load kernel+ and have it extend itself with what ever... (the application code) or the development code 19:44:01 ok 19:44:02 so 19:44:18 1) nasm kernel 2) compile extensions at boot, in FORTH 3) metacompile 19:44:19 in order to do this we need a badly coded all in one blob forth compiler 19:44:25 which is what were working on now 19:44:29 question 19:44:35 waht words are need in blobbykernel 19:45:00 whatever the assembler/metacompiler need 19:45:21 u see... ur working th ewrong way round to me 19:45:25 ur doing top down 19:45:30 i always code bottom up heh 19:46:08 i'm *planning* top down 19:46:21 :) 19:46:35 coding from syscalls on up 19:48:03 maybe i should just DO it 19:48:20 hehe wait 19:48:22 im adding u 19:49:18 well don't expect anything for a week or so.. i'm going to a fiddle workshop 19:49:33 fiddle workshop ? 19:50:01 i cant find where to add developers hehe 19:50:03 argh :P 19:50:06 heh 19:50:28 then I gotta figure out sourceforge.. 19:50:35 yea :P 19:50:38 ill find it... 19:51:44 I could send you my updates.. 19:51:55 yea 19:52:05 i could do what linus does 19:52:13 nothing gets into the kernel till HE has vetted it hehe 19:52:14 or 19:52:18 thats how he used to do it 19:52:24 i dunno about now tho 19:52:38 hehe.. before linux sucked 19:53:07 :P 19:53:34 hmm.. I guess all this ?>mark stuff can go 19:53:37 are you registered on sf ? 19:53:44 it can 19:53:49 i already commented it out didnt i ? 19:54:13 aww yeah :) 19:54:26 >mark resolve and took me ages to figure those out heh 19:54:59 maybe DO..*LOOP can go, too.. use FOR..NEXT 19:55:24 i dislike for and next 19:55:34 but do and loop are more compex 19:55:52 for and next are not good words tho because "next" is already defined as something completely different 19:55:59 if we use that construct i would suggest a name change 19:56:08 hehe.. all the loop/branch words are so different in DTC, after STC.. 19:56:20 :) 19:56:49 btw 19:57:08 i think the compiling words (creating words) of the kernel can go in a shared lib too 19:57:17 that would be easier than my transient vocab idea 19:57:33 but the kernel would HAVE to be able to load a shared libarry 19:57:46 easier said than done 19:58:02 i know 19:58:06 but i want it now :P 19:58:14 i say. compile extensions at boot time 19:58:35 hmmm 19:58:36 no 19:58:48 ill tel u whay 19:58:53 extentions are optional things 19:59:10 how would you control what got extended when u ran 19:59:13 erm 19:59:14 wait 19:59:18 i goet how!!!! 19:59:27 you make the source file ur going to extend WOTH 19:59:29 a load file 19:59:31 make it +x 19:59:35 and give it a shebang! 19:59:45 ? 19:59:47 #!/usr/bin/isforth 19:59:53 ahha 19:59:56 sounds good 19:59:57 fload some_extention 19:59:59 fload some_extention 19:59:59 fload some_extention 20:00:00 fload some_extention 20:00:00 fload some_extention 20:00:09 are you actually working on isofrth agaaing? 20:00:15 when it finishes extending ur at the forth prompt! 20:00:25 that gets the users into the habit of not running forth itself 20:00:27 yay! 20:00:34 but treating all the source files as executable scripts :) 20:00:35 ok 20:00:38 ok 20:00:42 THAT works for me :) 20:00:51 what's FLOAD btw? 20:01:00 its an fpc thing 20:01:09 it tells forth to load taht source file and compile it 20:01:15 not just load it for edit 20:01:18 ok good 20:01:39 it basically makes the file the standard input stream till u hit eof 20:01:50 forht treats it as if u were typing it 20:01:55 but its coming from a file 20:02:26 by the way. im not against scrapping isforth as it now stands 20:02:36 like USE in ans 20:02:42 erm 20:02:44 i dont know 20:02:48 never learned ans 20:02:56 but "use" sounds like a fucked up word name to me 20:03:00 er, not ans... gforth 20:03:01 ur nto fucking USING that source 20:03:03 ur loading it 20:03:04 oh 20:03:08 gforth sucks big dime 20:03:12 duh 20:03:37 i would call it parse myself 20:03:38 and they change the name of it in each version 20:03:45 parse somefile 20:04:05 but parse is spoken for hehe 20:04:07 ok.. that's good 20:04:11 parse< ??? 20:04:13 parse from ? 20:04:24 parse< blah.forth 20:05:36 --- join: adu (andrew@adsl-63-201-90-7.dsl.snfc21.pacbell.net) joined #forth 20:05:43 helooooooooooo 20:05:50 * adu echos 20:05:52 hi! 20:05:57 --- mode: I440r set mode: +o adu 20:06:00 * adu hears echo 20:06:09 what do u recon to parse< as a word to do that ? 20:06:18 u recon that word is ok ? 20:06:25 recon? 20:06:32 heh 20:06:39 rekon? 20:06:41 think? 20:06:45 beleive? 20:06:55 * aaronl thinks I440r has me on his ignore list 20:07:03 either that or i havent said anything interesting 20:07:09 hehehe 20:07:15 erm 20:07:18 nope 20:07:22 scrollback hehe 20:07:23 is that how you write a parse in forth? 20:07:27 parse< ? 20:07:31 oh i see it hehe 20:07:35 im getting back into it yes 20:08:00 yay!!! 20:08:04 i REALLY can't wait 20:08:11 i want to start writing serrious apps in forth 20:08:19 you need an Xlib wrapper next 20:09:10 yea hehe 20:09:33 heh.. only thing to do is make isforth ignore the #! line 20:10:28 is there a #! word in forth? 20:11:00 heh 20:11:01 nope.. : #! compile \ ; 20:11:11 cool 20:11:19 hey I440r, a friend brought his apple iBook over 20:11:24 and i got to play in open firmware 20:11:26 it was fun! 20:11:32 that kicks any bios' ass 20:12:00 heeh 20:12:09 guess so 20:12:10 just make it a comment 20:12:18 #! is a comment :P 20:13:02 and most shells accept a space after it right? 20:13:13 yup 20:13:16 like #! /usr/bin/forth 20:13:19 cool 20:14:31 sh csh bash 20:15:06 http://webster.cs.ucr.edu/Page_asm/ArtofAssembly 20:17:19 i like the shebang idea for forth sources :) 20:18:17 does INCLUDE make sense, as another name for FLOAD? 20:18:28 yes 20:18:38 as long as its "include" and not "INCLUDE" 20:18:45 but i like parse< hehe 20:18:46 that's what gforth does 20:19:07 USE was for blocks 20:19:25 * aaronl learns x86 asm 20:19:32 "USE xxx as disk image" 20:19:34 bleh isforth will NOT support blocks at all 20:19:45 if someone wants block they dan dmaned well write an extention :P 20:19:47 neway ur added 20:20:06 oh 20:20:13 lesse 20:20:57 erm i dont understand this mechanism for setting ur perms tho hehe 20:21:01 u mite not have ANY hehehe 20:21:10 ur a developer but u arent allowed to develop 20:21:12 ur an admin 20:21:17 bnut ur not allowed to admin hehe 20:21:21 that sort of thing :P 20:21:22 bleh 20:21:26 ill figger it owt :P 20:23:09 ok i htink i got it... 20:23:16 u shud be able to do checkin and checkout now 20:24:40 is that with cvs+ssh? 20:24:54 i3 20:25:10 I486r: on the 386 should i be using nasm or gas? 20:25:30 argh 20:25:32 gas is evil 20:25:34 burn it 20:25:37 shread it 20:25:43 hang draw and quater it 20:25:51 at+t syntax is FSCKED UP! 20:26:19 i thunked intels destination, source syntax was fucked up so much it couldnt be outdone but i was wrong 20:26:34 at+t take the prize on that one 20:26:34 so i should use nasm? 20:28:12 hey.. how'd u add me when I don't have an acct on sourceforge yet? is there another tcn? 20:30:09 tcn 20:30:10 Tom Nebauer 20:30:28 i'm Tom Novelli 20:32:11 hrh 20:33:20 argh 20:33:21 erm 20:33:25 i better delete him eh ? 20:33:26 hehge 20:33:50 heh 20:34:30 well register on sourceforge dood 20:34:33 c-mon!!!! 20:35:00 l440r: ya delete him, thats funny 20:35:09 hehe 20:35:12 its done :P 20:35:22 now tcn fscking register 20:35:24 duh! 20:36:39 tcn u regged yet ? 20:36:44 hurree uup :P 20:37:54 hehe.. will they send me spam? 20:37:59 A full segmented address contains a segment component and an offset component. This text will write segmented addresses as segment:offset. On the 8086 through 20:37:59 the 80286, these two values are 16 bit constants. On the 80386 and later, the offset can be a 16 bit constant or a 32 bit constant. 20:38:02 I give up. 20:38:19 Why the FUCK do they use segmentation? 20:38:43 i never got any 20:38:47 so i doubt it hehe 20:38:54 or... do you WANT them to ? 20:39:01 i can forward all mine to you if u want hehe 20:39:29 hey, u gotta add Freebsd to the list of OSes for isforth 20:39:39 yea 20:39:52 i recon the bsd version of it will be better than the linxu version of it 20:40:03 SEGMENTED ADDRESSING SUCKS 20:40:12 so did you actually do any more coding on isforth yet? 20:40:22 ok.. registered as tnovelli 20:40:33 aaron no were PLANNING our campaign :P 20:41:00 argh ur not yet 20:41:08 not for maybe 6 hours 20:41:16 thats when they run the batch 20:41:18 every 6 hours 20:41:28 i tried adding u but it wouldnt take taht user name 20:41:36 prolly wont till after the next batch run 20:42:03 heh 20:43:41 i'm reading isforth's code now 20:43:42 I440r: try now.. had to verify my email 20:44:10 aha ok :) 20:44:13 i don't see any segmentation bullshit 20:44:44 * aaronl is confused 20:44:51 yup 20:44:53 dun 20:44:56 u is in 20:45:13 I440r: cna you clarify the 386 memory model to me? 20:45:21 in what way 20:45:25 the segmentation ? 20:45:31 yeah 20:45:37 i don't see any segmentation stuff in isforth 20:45:48 is the index/option stuff mandatory? 20:45:55 because its in protected mode 20:46:12 AH! 20:46:14 it IS segmented but isforth isnt in control of the segmentation, linux is 20:46:20 protected mode rules, than 20:46:28 usually you refer to an address via segment:offset 20:46:42 in pmode segment registers are now SELECTOR registers 20:46:44 this tutorial is mostly about real mode 8086 20:46:49 yes 20:46:59 which scares me 20:47:05 do u have an x86 u can code on ? 20:47:09 yeah 20:47:12 right in front of me 20:47:18 real mode is better than pmode 20:47:19 i'm considering throwing out my anti-386 bias 20:47:22 l440r: what do you use? 20:47:27 and trying the assmebly language 20:47:35 well, this x86 runs linux 20:47:37 pmode is a fucked up solution to a very poor design flaw 20:47:40 but i have plenty of spares 20:47:43 yeah 20:47:48 ok 20:47:54 install dos on one of them 20:48:03 go to http://www.eji.com 20:48:11 get a86 and d86 20:48:13 l440r: which design flaw? 20:48:19 segmented memory 20:48:34 heh 20:48:44 i actually have a copy of IBM DOS 20:48:44 really? 20:48:52 me 2 20:48:53 why should i use real mode over pmode? 20:48:58 i have ibm dos 7 here 20:49:09 i don't think i'd ever want more than 64kb of ram anyway :) 20:49:12 l440r: what machine do you use? 20:49:49 here ? 20:49:55 i ahve 2 here 20:50:07 athlon 700 with 128 megs mem and 50 gigs drive space = my server 20:50:16 is that alpha? 20:50:20 i440r why is real mode better than pmode? 20:50:20 then i got an amd k6-3/400 that i have to put back to gether 20:50:23 adu: no, x86 20:50:23 no amd k7 20:50:29 well. 20:50:38 o AMD? 20:50:42 AMD is x86 right? 20:50:44 pmode causes alot more trouble 20:50:47 yes x86 20:50:51 ahh ok 20:51:01 try writing the code to handle pmode... 20:51:03 i've been thinking about getting a dell laptop 20:51:10 heh 20:51:12 u need a shitload of code just to switch INTO pmode 20:51:12 i have a desktop powerpc 20:51:20 pmode is fucked up 20:51:23 is real mode nice to code in? 20:51:27 or is the segment stuff fucked up? 20:51:37 if anyone need to port something to the PPC ask me 20:51:38 the only real way to run in pmode is to TOTALLY write the operating system 20:51:47 heh 20:51:57 i know a li'l ppc asm 20:52:01 and even then, it switches into it at boot 20:52:04 * aaronl has a book on ppc asm 20:52:05 because if ur program needs such and such an interrupt serviced you have to write the code to service it OR... 20:52:07 even worse 20:52:11 for every interrupt you do 20:52:19 i've been reverse engineering MacOS code to learn asm, its fun 20:52:20 jum to pmode interrupt serfvicing routine 20:52:25 save current state 20:52:25 this segment stuff is brain dammage 20:52:28 switch into real mode 20:52:33 eek 20:52:35 jump to the bios isr code 20:52:38 that sounds like a nasty hack 20:52:40 switch back into pmode 20:52:44 linux doesn't use bios calls after boot 20:52:46 and then return 20:52:50 _early_ boot, that is 20:52:50 correct 20:53:02 WHAT the FUCK are all these modes? 20:53:12 so i dont have to worry about all this bullshit pmode crap 20:53:17 all i gota do is write the code 20:53:22 I440r: can i use dosemu? 20:53:30 sure 20:53:33 but i never did 20:53:40 dunno how good it is hehe 20:53:54 heh 20:53:56 a86 sounds cool 20:54:01 but DOS is lame 20:54:10 if you're gonna be low level, might as well write your own os 20:54:20 i once saw the microsoft command.com source 20:54:24 it was fucked up enough to be real 20:54:28 hacks all over the place 20:54:31 it was hillarious 20:54:41 walk first 20:54:43 run later 20:54:49 hehe 20:54:56 a86 is the best assembler i have ever used for any processor/controller 20:54:57 well 20:55:01 the registered one is :P 20:55:20 wAr3z 20:55:29 no 20:55:34 i paid 4 it 20:55:37 hehe 20:55:49 well you're 37 :P 20:56:08 its funny tho 20:56:23 im sure there are warez versions of a86 out there but there cant be very many... 20:56:28 mmm, interesting addressing modes 20:56:34 4.6.2.1 - The Displacement Only Addressing Mode 20:56:34 4.6.2.2 - The Register Indirect Addressing Modes 20:56:34 4.6.2.3 - Indexed Addressing Modes 20:56:34 4.6.2.4 - Based Indexed Addressing Modes 20:56:34 4.6.2.5 - Based Indexed Plus Displacement Addressing Mode 20:56:38 i dont think any of the ppl who regged it would give it to anyone for free... 20:56:42 m68k has more, i thinkl 20:57:12 well actually, most of those are realy done in the same mode hehe 20:57:20 heh 20:57:21 u dont think in terms of this addressing mode 20:57:23 that addressing mode 20:57:29 uhha 20:57:38 u just know u can access w[xyzzy] the word at ddress xyzzy 20:57:39 or 20:57:42 w[ax] 20:57:45 yeah 20:57:47 the word pointed to by ax 20:57:47 or 20:57:51 w[ax+xyzzy] 20:58:01 but the syntax is different for the different modes, right? 20:58:07 not realy 20:58:14 mov ax,[where-ever] 20:58:26 move the contents of the address into ax 20:58:36 if where-ever is a register u get the address it points to 20:59:33 uh huh 21:00:02 i just think of them as the same thing 21:00:11 so the 8086 apparenty has 8 16-bit general purpose registers 21:00:20 and the 386 has e?x ... 21:00:22 in a86 the syntax is different to nasm 21:00:25 its saner 21:00:33 u declare variables without : 21:00:38 myvar dw 0 21:00:40 how many 32-bit registers are there in a 386(for general purpose)? 21:00:46 mov w[myvar],-1 21:00:48 did you ask the auther about a linux port? 21:01:00 in a86 do you put a : after labels? 21:01:07 labels 21:01:08 yes 21:01:12 not variables 21:01:15 foo: 21:01:17 jmp foo 21:01:23 foo is a constant 21:01:31 if u say mov ax,foo you get the address of foo 21:01:35 bar dw 6 21:01:39 mov ax,bar 21:01:46 ui get the contents of the address 21:02:04 uhha 21:02:15 i've seen some assemblers where there are no colons after labels 21:02:18 just: 21:02:20 foo jmp foo 21:02:22 i always wrap my variables tho, its more descriptive 21:02:25 move ax,foo 21:02:27 mov ax,bar 21:02:34 u cant tell if ur getting an address or its contents 21:02:39 that my one critisizm of a86 21:02:42 i always do 21:02:44 mov ax,[bar] 21:02:47 that way i can also do 21:02:52 mov ax,[foo] 21:02:57 and ALWAYS get the contents 21:03:28 ah 21:04:04 a86 knows the size of something 21:04:06 if u define 21:04:09 foo dw 6 21:04:12 you can now say 21:04:16 mov foo,0 21:04:27 or mov [foo],0 21:04:36 is dw an assmebler directive? 21:04:40 but to make the source more descriptive i always pot 21:04:45 mov w[foo],6 21:04:46 yes 21:04:46 --- part: adu left #forth 21:04:51 declare word 21:04:58 dw 1,2,3,4,5,6 21:05:02 yeah 21:05:06 i'm used to .dw 21:05:14 the . is superfluous 21:05:20 a86 gets rid of . bullshit 21:05:29 no assumes either 21:05:35 or proc this or shit like that 21:05:36 well 21:05:38 no fscking red tape 21:05:48 the dot tells an idiot like me that it's to the assembler, not the chip 21:05:57 i don't know any x86, but i can usually understnad what's going on 21:06:12 dw compiles something tho 21:06:27 its not like switching the default radix 21:06:29 .hex 21:06:30 oh 21:06:31 .decimal 21:06:31 yeah 21:06:41 dw does put somethin in the output binary 21:06:43 they dont rely Do anything exceopt change config 21:06:44 but it's not standard 21:06:49 also 21:07:02 in most assemblers radix is handled poorly 21:07:05 not so in a86 21:07:13 * aaronl wonders what radix is 21:07:14 any number starting with a 0 digit is a hex number 21:07:17 01234 is HEX 21:07:24 no ned for 01224h 21:07:26 or 0x1234 21:07:30 i hate that shit 21:07:36 hrm 21:07:36 niether H or X are hex digits 21:07:40 you like obfuscation 21:07:43 what the fuck are they doing in a hex number 21:07:45 no 21:07:47 like 21:07:48 simplification 21:07:52 0a is 10 21:07:53 i would see 425FA53 21:07:56 and go what the fuck 21:08:01 until i tracked down a radix change 21:08:05 you would say 21:08:07 0f123 21:08:14 and it would be a hex number 21:08:16 you say 21:08:23 f123 and its an unknown label 21:08:26 prolly 21:08:32 no $1234 21:08:35 or 0x1234 21:08:37 or 1234h 21:08:42 just 01234 21:08:44 very simple 21:08:52 where did tcn go :P 21:08:54 uh huh 21:09:01 --- quit: tcn (Ping timeout for tcn[207.198.30.66]) 21:09:01 unless you changed the default radix 21:09:13 generaly its a poor idea to do that 21:09:22 fuck this, assembly is so non-standard and fucked up. lets all just read binary object code 21:10:17 --- join: tcn (tcn@207.198.30.62) joined #forth 21:10:17 There are a total of 17 different legal memory addressing modes on the 8086: disp, [bx], [bp], [si], [di], disp[bx], disp[bp], disp[si], disp[di], [bx][si], [bx][di], [bp][si], 21:10:17 [bp][di], disp[bx][si], disp [bx][di], disp[bp][si], and disp[bp][di]. 21:10:28 wow 21:10:35 I440r: does your -' work? can i change the header format? 21:10:44 erm where u see [bp][di] change it to [bp+di] which is much more readable 21:10:56 change it to what 21:11:06 i was working on search and ' when i quit 21:11:26 as long as headers are kept seperate from everything else 21:11:33 what would u change it to tho 21:11:58 hehe.. want to use the length + 1st 3 letters format?? :) 21:12:08 I used to do 80186 assembly programming for a living. 21:12:08 please do not remind me. 21:12:13 no 21:12:14 for the nasm one 21:12:16 definatly NOT 21:12:35 that causes way to ofscking many conflicts 21:12:49 .equ CMND, 0x40005 21:12:49 .equ MODE, 0x40001 21:12:49 .equ CLOCKREG, 0x40003 21:12:49 .equ STATUS, 0x40003 21:12:49 .equ TXDATA, 0x40007 21:12:50 .org 0x2000 21:12:52 _start: move.b #0x10, CMND 21:12:54 move.b #0x93, MODE 21:12:56 move.b #0, MODE 21:12:58 move.b #0xbb, CLOCKREG /* 9600 baud */ 21:13:00 move.b #5, CMND 21:13:02 move.b STATUS, %d1 21:13:04 move.b #0xa, TXDATA 21:13:06 WHY THE HELL ISNT THIS WORKING :( 21:13:25 write two consecutiv values to mode ? 21:13:38 tcn i object strongly to clipped headers 21:13:55 hehe 21:13:58 even in my 8051 forth i dont do that (unfinished) 21:14:37 thers no need to do it anyway 21:14:48 plenty of memory and seperate headers that get dumped on turnkey 21:14:58 they dont waste any code space on turnkeyd apps 21:15:04 ok. now what's this 0x80 in the length byte? immediate? 21:15:13 so use "thisisaverybadlynamedforthwordthatonlyanidiotwoulduse" 21:15:19 yes 21:15:24 erm 21:15:27 no 21:15:35 erm wait 21:15:40 i forget 21:16:10 it might be so that we can scan backwards thru the name field to the previous field but i htini i found a way arround having to do that 21:16:15 most forths use 21:16:16 lionk field 21:16:20 name field 21:16:30 cfa pointer 21:16:34 body 21:16:54 so to parse from cfa to link you had to scan backwards thru the name field till u hit a char with bit 7 set 21:16:58 my headers dont do that 21:17:00 i use 21:17:02 link field 21:17:06 cfa pointer field 21:17:09 name field 21:17:17 no parsing backwards thru name at all 21:17:27 so +80 is prolly immediate 21:17:35 theres also a bit for "compile only" 21:17:38 0x40 ? 21:17:48 --- mode: I440r set mode: +o tcn 21:18:49 the way I was gonna go back was, put the length AFTER the name, and the rest after that. 21:19:00 ack 21:19:03 this is so lame 21:19:06 gas is fucking up 21:19:15 i need a good m68k assembler 21:19:23 gas sucks 21:23:17 hehe.. i'll keep your headers because you wrote everything with headers expected to be allocated separately 21:23:26 :) 21:23:30 correct :P 21:23:31 so... 21:23:38 AH 21:23:42 I AM SO PISSED OFF 21:23:48 gas is broken 21:23:54 i need an assembler and a simulator 21:24:03 if im half way thru the nmame field i can always get backby scanning all the way to the next header, and LINKING back to the start of this one hehe 21:26:02 hmm 21:26:14 would it be evil to write a 68k assembler in 68k assembly? 21:26:25 no 21:26:30 it would be COOL 21:26:47 hm 21:26:55 i'd need an assembler first of course :) 21:27:14 see i have a mac right here 21:27:15 but it sucks 21:27:17 macos 21:27:20 lame lame lame 21:33:42 hehe, you'll like this.. I cut macros.1 in half 21:34:15 yea ? 21:34:15 and length is determined automatically 21:34:17 show me :) 21:34:24 paste it here man :) 21:37:37 %xdefine link 0 21:37:37 21:37:37 %macro header 2 21:37:37 section .data ;assemble header into head space 21:37:37 %link: ;create a symbol for hew header location 21:37:38 dd link ;LINK to previous word in dictionary 21:37:39 %xdefine link %link ;remember current link symbol name 21:37:41 dd %2 ;point header at execution vector of new word 21:37:43 db (%name-$-1)+080h ;LENGTH 21:37:45 db %1 ;NAME 21:37:47 %name: 21:37:49 section .text ;back to code/list space 21:37:51 %endmacro 21:38:30 hmm.. it munged the %'s 21:38:40 erm explain the db (%name-$-1)+080h ? 21:38:46 the %%'s that is 21:39:17 what % ? 21:39:18 that determines the length of the name 21:39:31 argh! i was looking for taht, no need to pass length! 21:39:39 but 21:39:40 it's %%link and %%name 21:40:02 xchat munges %'s 21:40:33 erm 21:40:42 i was looking for a way to do that for ages 21:40:44 so now I gotta take out ALL the lengths 21:40:51 i HATE having to pass length 21:40:56 hehe yea 21:41:05 for THAT ill addu as a developer :P 21:41:06 o 21:41:08 erm 21:41:10 i already did :OP 21:41:17 heh 21:41:34 i was realy looking for a way to do thatm, couldnt figger it owt hehe 21:41:56 you can commit that change NOW... dont gforget to comment the checkin :P 21:43:06 it's late dude.. i'll fuck w/ cvs tomorrow! 21:43:15 yea hehe 21:43:16 k :P 21:43:42 besides, it's in an inconsistent state 21:43:58 how so ? 21:44:12 well i mean u can check it in as soon as the edit is complete.. 21:44:18 after u have removed the lengths 21:44:32 i want to start working on it in that state hehe 21:44:42 heh 21:45:07 hmm.. should I drop FORTH ROOT COMPILER etc? 21:45:28 ie. no vocabs in this version? 21:45:35 no 21:45:39 just forth and compiler 21:45:43 compile everything onto root 21:45:48 ok 21:45:49 but we dont need those macros now 21:45:52 i guess 21:46:49 yea get rid of em, the macros are no longer needed i recon 21:48:33 no macros, but i'll keep the vocab search stuff 21:48:44 k 21:49:23 ok. compiles w/ the includes commented out :) 21:49:38 which includes... heh 21:50:02 the inclued for the unedited files that still pass length ? 21:50:02 heh 21:50:14 heh 21:50:51 well, these macros work 21:51:07 cool 21:51:13 did u generate a listing ? 21:51:18 look at the listing... 21:51:23 see if u got what u expect 21:52:35 pause? (wlit)???? get outta here! 21:52:54 these aren't core words 21:52:59 yes they are 21:53:04 pause is a patchable noop 21:53:06 BUT 21:53:19 wlit is a doliteral for 16 bit literalks 21:53:23 this is a 32 bit forth 21:53:28 goto??? 21:53:38 but alot of the literals we conmpile will fit in 16 bits 21:53:42 hmm 21:53:49 pause isnt needed in isforth it can be removed 21:53:58 goto is GOOD in forth 21:54:04 that'll throw off the alignment (wlit) 21:54:12 so ? 21:54:15 is that bad ? 21:54:22 slow 21:54:26 hrm 21:54:32 well, time test it 21:54:35 ok. 21:54:40 get rid of wlit then hehe 21:54:45 hehe 21:54:55 loss of 16 bits in a 29784365297834652436785 gig machine isnt too bad :P 21:55:00 but dont push it man... hehe 21:55:06 i want SMALL more than fast :P 21:55:19 because it will be fast anyway 21:56:14 hehe 21:56:50 small is bewtephull 21:57:57 hmm 21:58:06 immd+3 21:58:14 ring a bell? 21:58:36 erm 21:58:43 whats that ? 21:59:02 ohhhhh i see 21:59:05 paste me some more context man so i can see what ur talking about 21:59:28 immd=0x40 is the IMMEDIATE flag 21:59:37 yes 21:59:38 so 0x80 is something else 21:59:39 thats it 21:59:41 argh 21:59:53 u still need to pass immed and comp in some way 22:00:16 i think u can overload macros 22:00:17 :( 22:00:24 i dont WANT overloading 22:00:31 overloading is an abomination 22:00:38 only 3 macros 22:00:43 ? 22:01:00 i dont want three macros with 3 different functions all with the same name 22:01:02 wait 22:01:03 taht would SUCK 22:01:18 %xdefine!! 22:01:24 ? 22:02:10 %macro COMPILER %xdefine imm 0x40 22:02:28 %macro FORTH %xdefine imm 0 22:02:33 erm no not compiler, compile_ononly 22:02:48 it means that the word can only be used if you are in compile state 22:03:01 if ur in interpret state and run that word u get 22:03:04 no I mean COMPILER as in IMMEDIATE 22:03:06 compile only echod 22:03:25 compile only and immediate are the flags 22:03:30 i called them comp and immd 22:03:39 but those are bad names hehe 22:03:54 either that, or IMMEDIATE and uhhh UNIMMEDIATE 22:03:59 you could run compile_only macro and immediate macro before a new definition 22:04:04 and it would set flags 22:04:14 yes 22:04:40 then when you create the header it would set those flags in the count bit for you and then CLEAR those flags 22:04:42 BUT 22:04:47 and the 'header' macro will .. yead 22:05:00 BUT 22:05:02 in forth 22:05:05 heh 22:05:07 : blah ....... ; immediate 22:05:12 in nasm 22:05:14 immediate 22:05:17 : blah ........ ; 22:05:19 bad 22:05:31 aha!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 22:05:36 have TWO different macros 22:05:42 with DIFFERENT names 22:05:49 header and iheader! 22:05:56 nah 22:06:01 ive actually not used compile ojnly yet 22:06:08 this is simpler 22:06:10 iheader can call header 22:06:35 i do not like the way we would be presetting the immediate bit when forth would post set it 22:06:44 its going to be confusing 22:06:50 compile-only is just for checking, right? 22:06:52 in nasm immediate macro will say... 22:07:01 yes 22:07:07 its for when you RUN the word 22:07:16 then we don't need it 22:07:27 if u run that word and ur not in compile mode it abort" 22:07:29 no 22:07:30 we dont 22:07:34 but wait 22:07:39 never will, if we use a separate COMPILER chain 22:07:55 the immediate macro that you are proposing is stating that the next word we create will be an immediate word 22:08:07 in forth immediate says taht the last definition created is an immediate word 22:08:13 CONIFUSION FACTOR!!!!!! 22:08:22 understand ? 22:08:28 that's ok. 22:08:34 i would much rather have a header macro and iheader macro 22:09:13 and icode and icolon.. 22:09:19 noi 22:09:21 no 22:09:24 oh 22:09:25 erm 22:09:31 yea ur rite heh 22:09:36 bleh 22:09:37 hrm 22:09:58 the word IMMEDIATE will be 'touching' the word it applies to.. should be pretty clear 22:10:16 dont use all upper case for anything.. 22:10:18 no m,acros 22:10:20 not constants 22:10:22 nto anything 22:10:26 thats suckie :P 22:10:29 well 22:10:54 if we comment every use of immediate stating taht this macro is making the NEXT word immediate i dont object 22:10:58 read taht three times 22:11:10 hehe 22:11:14 ok :) 22:11:18 EVERY time we use it :P 22:11:23 hrm 22:11:36 progress.. i love it :) 22:11:40 hehehe 22:12:21 did u look at the list file after assembling with the new macros there ? 22:12:30 u sure its generating the correct code ?? :) 22:12:41 immediate ;Makes the NEXT word immediate 22:12:57 yes 22:13:00 that works for me 22:13:04 cool 22:13:13 if we need compileonly we can do the same for it 22:13:16 but 22:13:22 please avoid capitalization 22:13:25 even in comments 22:13:47 i tend towards 100% lower case sources except in compiled strings... 22:13:54 ." Upper case is fine here" 22:14:08 : Blah-bad-use-of-upper-case ...... ; 22:14:24 sure 22:14:24 :) 22:14:43 accentuating the word next there mite be good tho 22:14:55 i think i mite have done similar things already.. 22:14:58 cant remember hehe 22:15:10 im not saying DONT ever use upper case... 22:15:14 just shy away from it heh 22:16:12 lower case is alot easier to read anyway :P 22:17:19 yup 22:18:10 cool :) i like being in charge :P 22:18:11 erm 22:18:14 go make me a coffee 22:18:19 erm better yet,,... 22:18:24 go get me a shot of jd :P 22:18:25 heheh 22:28:14 hmm 22:28:21 qleave_link ?? 22:28:29 ?leave 22:28:41 paste waht ur reading 22:29:35 i can't find where qleave_link is defined 22:29:57 don't think i trashed it... 22:29:58 where is qleave defined 22:30:09 loops 22:30:12 qleave_link is created by the header macro 22:30:32 the macro creates a link called wordname_link 22:30:48 oh 22:31:00 so that's what it was... 22:31:13 :P 22:31:31 every header has a label on its link field called wordname_link 22:31:43 which contains a dw previous_wrodname_link 22:31:43 hehe 22:34:05 ohhh 22:34:27 i'm ok then.. just gotta clean up loops.1 22:34:31 its a CHAIN!!!! 22:34:35 hehe 22:36:58 thanks 22:37:37 4 what ? 22:37:38 hehe 22:41:14 that needed an explanation 22:41:52 damn man, no wonder you been putting this off.. it's bloated!! 22:42:02 no it isnt :P 22:42:07 its all very simple 22:42:11 ALOT of very simple stuff 22:42:35 hahah 22:42:49 unnecessary shit 22:46:47 ok.. it compiles 22:46:56 :P 22:47:01 assembles! 22:47:01 but will it run...? 22:47:02 beleh 22:47:05 no 22:47:09 it never has yet :P 22:47:19 look at the reset entry point 22:47:27 its a jump to the reset entry point :P 22:47:28 hehe.. it hangs good 22:47:39 it wont do anything nasty heh 22:50:06 but you will have to kill -9 it hehe 22:51:16 nope 22:51:19 ^C 22:51:35 that worked ? 22:51:49 in freebsd.. 22:51:57 doesnt the program have to respond to eh^c itself ? 22:52:00 aha 22:52:01 ok 22:52:43 i think you hafta do an ioctl to receive ^C 22:52:58 aha ok 22:53:09 ^c is a kill -9 then 22:54:10 sigint 22:54:29 k 22:54:34 no 22:54:44 a signal is the kernel telling the program to die 22:54:54 that program wont respond to any signals :) 22:55:01 hehe.. u use -1 for end-of-chain, cause the first definition starts at 0? 22:55:20 erm there is no -1 on the end of the chain 22:55:29 0? 22:55:40 the vocabulary words POINT to the last word in the chain 22:55:50 u scan backwards thru the chain tillu hit a null link 22:56:02 actually tho 22:56:04 for now 22:56:24 no... scratch that thought... it wouldnt work hehe 22:56:38 ok, but the first 2 defs both have a 0 link 22:56:52 yes because they are both the start of different chains 22:56:53 cause the first one is at address 0 22:57:21 erm 22:57:26 heh 22:57:36 ok 22:57:43 scan back till the second null link :P 22:57:52 or start the chain at address 1 22:57:55 :P 22:58:02 this doesnt need to be aligned anwyay 22:58:06 or pad it 22:58:08 because it wont be 22:58:23 jsut start at address 1 not 0 22:59:19 im not aligning headers anyway so,,.. 22:59:32 i dont feel the need to because they only have an affect at conpile time... 22:59:34 well.. immediate works 22:59:36 or interpret time 22:59:39 nbot run time 22:59:48 in fact they usually dont exist at run time 23:00:56 :) 23:00:58 show me it 23:01:20 tomorrow i'll add my I/O stuff.. then i'll commit ti 23:01:22 and header too 23:01:25 k 23:01:40 then ill check it out and check it out 23:01:40 hehe 23:01:47 start testing from bottom up 23:01:50 sorry, couldnt resist :) 23:01:54 cant test 23:01:58 ded 23:01:59 no decent debuggers for linux 23:02:00 heh 23:02:07 i WONT use ddd 23:02:10 its a piece of shit 23:02:18 IP points at address 0 23:02:26 breakpoint at address 0x23 23:02:29 start program 23:02:37 program breaks at address 0x15 23:02:41 run program 23:02:41 haha 23:02:46 program breaks at addres 0x36 23:02:49 argh! 23:02:56 fucking useless piece of shit 23:03:19 no way to debut the words unless we do dual development in dos and i use d86 23:03:33 int3 at 0x15, then a jmp to 0x36 ?? 23:03:43 erm no 23:03:53 using int 3 is a bad way to do breakpoints 23:04:01 better to use the debug registers 23:04:02 or just FUBAR 23:04:20 its fucked up 23:04:42 it stops prior to a break or it stops AFTER a break 23:04:47 its fucked in the head 23:04:53 i mailed the developer and flamed him 23:04:55 he deserved it 23:05:31 i'll just have it do 65 EMIT at boot.. then TYPE and . and all that.. till I get the interpreter running. I've done it without an OS. 23:06:48 piece of cake 23:08:13 hehe 23:08:30 i never ate anyting today... 23:08:33 im starved now heh 23:08:43 im newkin a can of chunky soup hehe 23:08:45 its all i got 23:08:46 ernm 23:08:49 its out of the can tho hehe 23:10:08 today? u mean the last 2 minutes? 23:10:14 today 23:10:18 didnt eat at all today 23:10:37 got that flu? 23:10:37 so im nuking a can of chunky soup 23:10:40 nope 23:10:43 not any more, 23:10:47 i jsut forgot to eay :P 23:11:58 shit I better get some sleep or I might catch it just in time for this fiddler's thing 23:12:10 fiddler ? 23:12:15 u mean vioplin like fiddle ? 23:12:24 violin even 23:12:25 yead 23:12:35 k :) 23:12:37 u play ? 23:13:01 heh 23:13:05 i play clarinet 23:13:08 how's the bass playing? 23:13:16 bass ? 23:13:19 i play lead :P 23:13:31 gtr? 23:13:34 yes 23:13:40 hahaha 23:15:18 when u said u had an Ibanez 6-string I just assumed "bass" cause that's what my old bass player had.. back when I played lead gtr :) 23:15:35 u play lead ???? 23:15:38 cool :) 23:16:45 i can play paqrt of paganini capriece #24 on guitar :) 23:16:52 play THAT on a fiddle man!!! 23:16:52 yeah.. then I got into fiddle 23:16:56 that would be cool :) 23:17:14 do u play fiddle or violin 23:17:32 i been looking for the sheet music to those.. 23:17:51 :) 23:17:58 paganini is the best 23:17:59 mostly fiddle.. a little bach, now.. 23:18:06 i got a cd of all 24 caprieces 23:18:32 u jknow paganini was a guitarist also ? 23:18:36 I'd play those if I could 23:18:51 yead, and a pianist... 23:19:38 fiddle & guitar go together 23:19:43 yup 23:19:47 real nice 23:19:47 but... 23:19:59 please dont tel me u play c/w music :P 23:20:05 hahaha 23:20:25 NO 23:20:28 :) 23:20:30 phew! 23:20:48 irish, scottish, swedish.. 23:20:54 cool! 23:20:56 appalachian 23:21:00 :) 23:21:26 im a blues purist 23:21:28 a little bluegrass.. 23:21:35 paganini counts :) 23:21:50 i dont like jazz 23:21:57 my brother has a definition for jazz..... 23:22:05 4 men playing 4 different songs at the same time 23:22:12 i have a different definition 23:22:19 one man playing 4 different songs at the same time 23:22:20 heh 23:22:39 blues, hehe.. so does scots/irish music.. "they burned our hames.." 23:22:52 hehe 23:23:47 "two brithars were playing by the bog.." 23:24:47 ? 23:24:55 "the pub's across the river but the bridge is 5 miles away..." 23:25:54 heh.. one shoved the other in the bog.. 23:27:01 and the irish have all these songs about guys who died for the IRA.. 23:27:14 yea :) 23:27:44 u better go zzzman 23:27:51 im on my way there too gege 23:30:51 me too 23:30:58 see ya 23:31:00 --- quit: tcn (Client Exiting) 23:59:59 --- log: ended forth/01.01.17