00:00:00 --- log: started forth/02.02.06 00:00:20 --- join: aum (~aum@210.55.76.145) joined #forth 01:01:03 --- part: aum left #forth 01:58:06 --- join: Fare (fare@bespin.org) joined #forth 02:12:56 --- quit: Fare ("Connection reset by pear") 06:20:48 --- join: Fare (fare@bespin.org) joined #forth 06:35:35 --- join: [9of7] (~l@c38038.upc-c.chello.nl) joined #forth 06:35:47 <[9of7]> 'oi 06:50:16 hi 07:03:56 --- nick: [9of7] -> regenerating 07:05:23 --- nick: regenerating -> regenerating9of7 07:47:24 --- quit: regenerating9of7 (Read error: 113 (No route to host)) 08:00:39 --- join: futhin (thin@h24-64-174-54.cg.shawcable.net) joined #forth 08:06:08 --- quit: Fare ("Connection reset by pear") 08:28:32 --- part: futhin left #forth 09:02:41 --- join: futhin (thin@24.64.174.54) joined #forth 10:39:59 --- quit: futhin (Read error: 110 (Connection timed out)) 11:16:52 --- join: futhin (thin@h24-64-174-54.cg.shawcable.net) joined #forth 13:03:31 --- join: I440r (~mark4@1Cust183.tnt1.bloomington.in.da.uu.net) joined #forth 13:03:41 hi :) 13:04:07 hi 13:04:16 i think nasm is fucking me over 13:04:28 ive defined shit in a .header section 13:04:35 and shit in the .text section cant FIND it 13:04:51 are you using labels properly? 13:04:54 they can reference it but they get misdireted someplace off in space 13:04:54 etc? 13:05:05 of corew 13:05:08 corse 13:05:20 any time a header is created in the header section i have a label created for it 13:05:33 for instance if you create a header for a word called foo you get 13:05:40 foo_header: 13:05:45 the header goes here 13:06:03 the shit in .text section gets mixed into the .header section in the actual code 13:06:13 they all get mixed together 13:06:14 i think 13:06:18 but if you do lea eax,foo_header within your .text section you DONT point at the header 13:06:21 no - they are seperate 13:06:50 you can SEE they are seperate by hex viewing the executable 13:06:57 i coded a program in nasm and it is like "jmp to code, , code" 13:07:17 thats how ppl usually write dos .com code 13:07:38 nasm compiled it into jmp to code, data, code 13:07:41 brb 13:07:41 i didn't 13:07:45 --- part: I440r left #forth 13:14:44 --- join: regenerating9of7 (~l@c38038.upc-c.chello.nl) joined #forth 13:16:42 --- join: futhin_ (thin@h24-64-174-54.cg.shawcable.net) joined #forth 13:17:26 --- quit: futhin (Read error: 104 (Connection reset by peer)) 13:17:48 --- nick: futhin_ -> futhin 13:31:54 --- join: Speuler (~l@c38038.upc-c.chello.nl) joined #forth 13:34:41 hi speuler :) 13:34:50 g'day futhin 13:35:08 working on world domination ? 13:35:21 shh! 13:35:24 secret :P 13:35:31 ah 13:35:34 heh 13:35:47 i don't remember saying anything to you about world domination 13:35:50 heh 13:36:04 naw, these days i'm focusing on learning daytrading 13:36:39 or something that generates cash 13:36:52 gotta go buy a router 13:36:53 bbl 13:40:23 --- join: I440r (~mark4@1Cust183.tnt1.bloomington.in.da.uu.net) joined #forth 13:40:24 --- mode: ChanServ set mode: +o I440r 13:40:40 hi regen 13:53:23 bongo explain how your code looks at headers 13:53:41 how does youru code section look at a specific header in the headers section 13:53:47 my code CANT :( 13:55:35 what is your 'find' called ? 14:03:01 ah 14:03:38 its FIND thats segfaulting with me because "last" doesnt point to the expected location 14:03:42 headers: list of db len1,"name1",len2,"name2",len3... 14:03:51 sorry. mistake 14:03:51 because nasm is fucked in the head 14:04:03 section a should be able to directly reference data in section b 14:04:03 it cant 14:04:15 headers: list of: 14:04:23 dd body1 14:04:26 db len1 14:04:31 db "name1" 14:04:36 dd body2 14:04:41 db len2,"name2" 14:04:42 ... 14:05:37 yes - thats similar to wht i have 14:05:38 name> only does @ 14:05:51 i have dd link, db len, db name, dd pointer to code 14:06:07 what is link good for ? 14:06:36 it points to the previous header in the list 14:06:57 it actually points to the NFA of the previous header 14:07:01 there's the possibility of additional data between headers ? 14:07:07 not the lfa 14:08:18 name field lengths are variable and i search from he END of the list to the beginning 14:08:31 the most recently defined words are at the END of the linked list 14:08:40 but, doesn't the len bytes tell you already ? 14:08:56 ah. 14:09:00 how do you know where "len" byte of the previous header is 14:09:06 can't search backwards easily this way. 14:09:09 actually i can find it if i scan backwards for a 0x80 bit 14:09:12 but thats slow 14:09:22 the link field is a speed up 14:09:35 put first word last 14:09:38 and headers are throw away data anyway so it doesnt matter if i make them boigger for speed 14:09:40 no 14:09:40 (hi mem) 14:09:57 headers grow downward in memory heh 14:10:00 then put count byte at end of string 14:10:06 and the variable last points to the last word defined 14:10:16 the link fields work 14:10:27 the feb03 tgsz proves this 14:10:47 contains the link an offset, or an absolute address ? 14:11:18 according to the list file ALL addresses are calculated as offsets from the start of what ever section they reside in 14:12:29 i mean: can you move headers around, without needing to update links ? 14:12:44 no - not once the executable is running 14:12:51 they are absolute addresses by then 14:13:23 your links don't give you a real advantage then, just a restriction 14:13:29 and they cost extra mem 14:13:36 what restriction 14:13:50 if you look at the executable its ALWAYS loaded into the same address 14:14:13 can't relocate headers 14:14:20 i CAN 14:14:25 and i WILL 14:14:27 and the links ? 14:14:37 all i need to do is fucking point to the last one and im sorted 14:14:48 but its totally not where my pointers are pointing 14:14:59 which is FUCLKED IN THE HEAD 14:15:03 how do you correct the links if you move headers ? 14:15:22 by hand dood - thats not the issue 14:15:36 thge issue is being able to point to the fucking things 14:16:03 copy header from .headder section to .bss - writing a dummy link address 14:16:11 the reason for the link field is to be able to take acocunt of the stuff between headers (bodies) which is unnecessary if your headers are in an own segment, packed 14:16:19 copy next header and backfill the dummy link address to the location of the second header 14:16:21 its NOT a problem 14:16:41 there IS not fucking stuff BETWEEN headers 14:16:42 its like putting a horse in front of a car because you always had a horse in front of a carriage 14:16:45 foo_header: 14:16:53 dd pointer_to_previous_header 14:17:01 db length 14:17:03 db "name" 14:17:08 dd pointer_to_code 14:17:15 every header is like that - 14:17:22 theres no EXTRA data between ANY header 14:17:41 theres nothing wrong with the struction of any header 14:17:44 the problem is 14:17:46 if i say 14:17:52 mov ebx,foo_header 14:18:02 ebx does NOT fucking point at foo's header data 14:18:04 AT ALL 14:18:11 sure. if i'd put two link fields in, there still would be nothing wrong, but you'd call that plain stupid 14:18:40 speuler how about we fix the referencing problem before we optimize the code ? 14:18:40 heh 14:18:50 what do i need a pointer to a header, when i got the xt, for ? 14:18:57 ugh 14:19:01 for debug ? 14:19:05 for .name 14:19:07 the CODE does NOT point at ANY headers!!!!!!!!!!!!!!!11 14:19:13 exactly. 14:19:18 there's no problem with that 14:19:19 dood 14:19:27 leave the linking alone - thers nothign wrong with it 14:19:48 i dont care if you can improvbe on it - because your improvement will still have the same failing my headers have 14:19:52 they are NOT locatable 14:19:56 those operations, when you want body>head>name, are not required to be fast operations 14:19:57 your code CANNOT find them 14:20:06 they are. 14:20:15 there are no pointers from body to header 14:20:21 there are no pointers in the headers 14:20:27 my .data section has a word called "last" in it 14:20:28 i can just cmove them ! 14:20:30 it is defined as 14:20:33 call dovariable 14:20:45 dd pointer_to_name_field_of_the_word_last 14:20:49 if i say 14:20:53 last @ count type 14:20:58 i SHOULD type out 14:21:01 last 14:21:04 it doesnt 14:21:05 it get 14:21:11 &^Hi8TR&UOL&^TH(OKHGT*(^R%#**&(HC:SOIUKUWKEUGFOLIK 14:21:11 ok 14:21:30 but, body>name is done compile time. 14:21:42 forget body>name 14:21:44 my body>name just searches through headers, until xt of header = tos 14:21:47 forget >body 14:21:49 if, header found 14:21:49 forget >name 14:21:51 forget all that 14:21:54 slower 14:21:57 hardly ever required 14:22:02 how can you FIND any header if you cant POINT at any 14:22:07 saves me lots of pointers 14:22:14 your going off on a fucking tangent!!!!!!!!!!!! 14:22:18 i you deaf ? 14:22:20 are 14:22:24 i told you 14:22:26 already 14:22:31 can't you read ? 14:22:36 again: 14:22:46 ( xt -- name ) 14:22:55 search headers: 14:23:05 1st header body pointer = xt ? 14:23:05 find doesnt KNOW the XT of the word it is looking for 14:23:12 no, try next header 14:23:13 THATS what its trying tonfind!!!! 14:23:17 until all headers 14:23:23 if no match, 14:23:26 your backwards 14:23:29 no corresponding header 14:23:32 if match 14:23:33 given the NAME of a word 14:23:35 header found 14:23:37 search the dictionary for that name 14:23:43 return that names xt 14:23:53 not - given an xt of a word search for that words name! 14:24:19 sure, easy. just search words until headers match 14:24:22 string compare. 14:24:23 easy 14:24:29 find is written 14:24:30 find words 14:24:45 all it has to do is be able to fucking POINT at the fucking linked list of headers 14:24:49 count 2dup match not while + repeat 14:24:57 stop trying to fix the linked list into a sequential list 14:25:05 thats NOT whats fucking wrong!!!!!!!!!!!!!!1 14:25:11 and when headers move, you may update all pointers ? 14:25:15 you must be kidding 14:25:24 how can i search head space if i cant fucking FIND IT !!!!!!!!!!!!!!!!!!!!!!!!!!!! 14:25:34 headers dont need to move 14:25:37 at all 14:25:49 i know where the last header has been written to 14:25:54 no fantasy ? 14:25:54 so do i 14:26:06 but when i look there,,,, i get junk 14:26:14 run the febo3 and do this 14:26:19 last @ count type 14:26:20 then do 14:26:22 : foo ; 14:26:28 and do last @ count type 14:26:33 then do 14:26:35 : blah ; 14:26:40 then do last @ count type 14:26:47 everything WORKS 14:26:56 well, i've put "words" as example in the startup 14:27:00 all i have to be able to do is KNOW WHERE THE HEADERS ARE!!!!!!!!!!!!!!!!!!!!! 14:27:05 it actually prints them out 14:27:16 do that in feb03 14:27:17 words 14:27:37 then define new words and do words again 14:27:41 it all fucking works! 14:27:46 i believe you when you say your version doesn't do it 14:27:49 ill "optimize" it LATER 14:28:20 bongo u realy are going off on a tangent - you want to fix the flat tier when the engine is blown up!!!! 14:28:30 you can drive the car on a flat tire 14:28:35 you cant drive it with a blown up engine 14:29:03 look in macros.1 - learn how the header macro works 14:29:08 look at how 14:29:09 code 14:29:10 and 14:29:11 colon 14:29:18 macros use the header macro 14:29:23 and the var and constant macros too 14:29:37 wi've given you another engine, and told you you could check air pressure. 14:29:38 then look in isforth.asm and find the definition for the variable LAST 14:29:58 you tell me why you must ride on low pressure. 14:30:00 and see that it does in fact supposedly point to its own name field address 14:30:06 except it DOESNT 14:30:16 tell me WHY it doesnt and tell me how to make it do so 14:30:19 artists fate 14:30:36 i do not want you go give me another engine 14:30:48 i might as well give you the sources to isforht and just go the fuck away 14:30:58 ok 14:31:01 --- quit: regenerating9of7 (No route to host) 14:31:03 you arent addressing the question 14:31:41 no - i wasnt telling you to go away :P 14:31:53 you know your source better than i do. you should be able to tell me why it doesn't work 14:32:03 i have tried 14:32:08 i have tried and tried and tried 14:32:17 by al accounts it SHOULD work 14:32:17 i had a similar problem as you had 14:32:27 ive read the nasm source files and they have shit like this 14:32:29 so i put some effort into to work around the problem 14:32:31 section .data 14:32:32 foo: 14:32:35 db 'blah blah' 14:32:38 section .text 14:32:38 that was not a single action 14:32:42 lea ebx,foo 14:32:47 thats all im trying to do. 14:32:48 that was, adapting the source to nasm 14:33:00 i dont want to "work arround" it 14:33:01 write so that nasm would give me good code 14:33:03 i want to fix it heh 14:33:23 the nasm dox all say what i am trying to do will work 14:33:28 they even give examples of it 14:33:49 fthe first problem i had was with user declared sections 14:34:00 i told your before 14:34:20 so i got rid of user declared sections 14:34:27 those problems disappeared 14:34:35 where do i put my headers 14:34:40 cant put them in .bss 14:34:44 cant put them in .data 14:34:44 no i structured the thing so i could write it in the default sections 14:34:51 cant have my code in .text because thats not writeable 14:35:06 and the result allows to to access the headers, AND they are seperate 14:35:13 if i moved all code to .text and all headers to .data it would work if .text was writeable 14:35:15 and i gave you the result of that work 14:35:23 nasm will NOT allow me to make .text writeable 14:35:37 for problems with nasm you could try the nasm developers 14:35:48 the default sections are 14:35:49 i just worked my way around the features 14:35:54 .text cannot write to this 14:36:00 .data can write and execute here 14:36:06 .bss can write and execute here 14:36:24 i came, while writing this, to dislike nasm, btw 14:36:24 there are no nasm developers 14:36:26 its been dropped 14:36:29 and picked back up again 14:36:32 and dropped 14:36:36 and picked back up again 14:36:47 so many times that finding who is maintaing it now is impossible 14:37:29 and i have contacted them before and they are a bunch of snobbs 14:37:29 that's the problem with free software. would you have commercial, you 14:37:37 dood 14:37:45 'd still obtain no help, but you'd know whom to blame 14:37:47 ugh 14:49:39 * futhin is back 15:02:27 --- join: [aXe] (chaynez@pcp874420pcs.sarast01.fl.comcast.net) joined #forth 15:03:55 --- quit: [aXe] (Client Quit) 15:04:55 bbl 15:04:56 --- quit: futhin ("bye") 15:12:01 eek!!!!!!!!!!!!! 15:12:03 axe! 15:12:34 why the heck didnt he wait arround :P 15:15:28 luckilly - i know where to go find him :) 16:03:18 --- join: futhin (~thin@24.67.116.201) joined #forth 16:04:28 i'm l33tah! 16:04:33 with mah router! ;P 16:06:41 u got it working ? 16:07:00 can u telnet into it ? 16:25:29 --- quit: futhin (Read error: 110 (Connection timed out)) 16:26:18 --- join: futhin (~thin@24.67.116.201) joined #forth 16:28:54 --- join: futhin_ (thin@24.67.116.201) joined #forth 16:49:36 --- quit: futhin (Read error: 110 (Connection timed out)) 16:52:03 --- quit: futhin_ (Read error: 104 (Connection reset by peer)) 18:00:02 ffffffffffffffffffffffffffffuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuccccccccccccccccccccccccccccccccccccckkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk 18:00:08 --- quit: I440r ("Reality Strikes Again") 18:10:17 --- join: I440r (~mark4@1Cust183.tnt1.bloomington.in.da.uu.net) joined #forth 18:15:58 --- quit: I440r ("Reality Strikes Again") 18:17:04 --- join: I440r (~mark4@1Cust183.tnt1.bloomington.in.da.uu.net) joined #forth 18:17:06 fuck 18:17:13 i fucking hate xchat 18:21:28 --- quit: I440r (Client Quit) 18:21:44 --- join: I440r (~mark4@1Cust183.tnt1.bloomington.in.da.uu.net) joined #forth 18:21:51 fucking pile of SHIT 18:22:19 --- quit: I440r (Client Quit) 18:22:40 --- join: futhin (thin@24.67.116.201) joined #forth 18:27:23 --- join: I440r (~mark4@1Cust183.tnt1.bloomington.in.da.uu.net) joined #forth 18:28:33 --- quit: I440r (Client Quit) 18:28:49 --- join: I440r (~mark4@1Cust183.tnt1.bloomington.in.da.uu.net) joined #forth 18:28:52 hi! 18:28:56 bbl 18:28:59 heh 18:29:00 trying to fix xchat 18:29:02 ah 18:29:04 --- quit: I440r (Client Quit) 18:29:05 xchat = lame 18:30:24 --- quit: Speuler ("using sirc version 2.211+KSIRC/1.1") 18:34:04 --- join: regenerating9of7 (~l@c38038.upc-c.chello.nl) joined #forth 18:38:59 --- join: I440r (~mark4@1Cust183.tnt1.bloomington.in.da.uu.net) joined #forth 19:13:40 --- nick: regenerating9of7 -> [9of7] 19:15:19 hi 19:17:28 yup 19:25:39 well isforth is in "going nowhere fast" mode 19:43:09 --- quit: [9of7] (Read error: 113 (No route to host)) 20:07:32 lies 20:07:40 you are coding in it are you not? 20:08:01 just bug ree to setup linux 20:09:17 heh 20:11:04 what's up? 20:11:12 are you deadlocked? 20:13:53 deadlocked ? 20:13:58 if i dont sort this out 20:14:00 its dead 20:14:18 im trying to change perms on .text for writeable 20:16:30 you aren't using a86 because it's not usable in linux? 20:20:20 its not 20:21:35 so what are you doing right now? 20:21:56 i'm contemplating cooking up soup or going to bed 20:21:57 hmm 20:21:58 soup! 20:23:47 debugging 20:23:53 ah 20:23:58 but using ddd/gdb is like useless 20:24:05 because single stepping thru the code its working 20:24:07 code up a debugger in gforth or something 20:24:13 run the program and it segfaults 20:24:26 but really, why not code up a debugger and assembler in gforth? 20:24:34 then use the assembler to compile your asm code 20:24:46 shouldn't take that long :P 20:28:44 forthers are always going on about how easy it is to code stuff in forth :P 20:29:09 eww, this soup sucks 21:15:13 --- join: Bikozaar_ (~cmb@ip68-11-180-77.br.no.cox.net) joined #forth 21:19:18 hi 21:19:36 biko we talked before ? 21:19:46 u a forth coder ? :) 21:21:46 yep... 21:21:55 yep..a 4ther.. 21:22:03 Will catch u later... 21:22:07 gotsa run 21:22:09 --- part: Bikozaar_ left #forth 21:25:19 --- join: I440r_ (~mark4@1Cust183.tnt1.bloomington.in.da.uu.net) joined #forth 21:25:25 --- quit: I440r_ (Client Quit) 21:43:33 --- quit: futhin (Read error: 104 (Connection reset by peer)) 22:22:33 --- quit: I440r ("brb") 22:22:48 --- join: I440r (~mark4@1Cust183.tnt1.bloomington.in.da.uu.net) joined #forth 22:22:53 fuck 22:22:58 still get underlines :( 22:24:11 --- quit: I440r (Client Quit) 22:24:47 --- join: I440r (~mark4@1Cust183.tnt1.bloomington.in.da.uu.net) joined #forth 22:39:19 --- join: futhin (~thin@24.67.116.201) joined #forth 23:48:25 --- quit: futhin ("bed") 23:59:59 --- log: ended forth/02.02.06