00:00:28 --- log: started forth/04.04.05 00:00:28 Hmm...reading up on the WISHBONE interface now. 00:00:49 Damn, it's a sweet bus interface. 00:05:47 Crap, I've got to get to bed. Though I don't have school this morning, I do have many other things to work on. 00:05:53 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 00:17:28 --- join: yeoh (~yeoh@219.95.10.231) joined #forth 00:28:35 --- quit: madgarden_ (kornbluth.freenode.net irc.freenode.net) 00:28:35 --- quit: ianp (kornbluth.freenode.net irc.freenode.net) 00:28:36 --- quit: Frek (kornbluth.freenode.net irc.freenode.net) 00:28:36 --- quit: skylan (kornbluth.freenode.net irc.freenode.net) 00:28:36 --- quit: chandler (kornbluth.freenode.net irc.freenode.net) 00:28:36 --- quit: kuvos (kornbluth.freenode.net irc.freenode.net) 00:28:36 --- quit: I440r (kornbluth.freenode.net irc.freenode.net) 00:28:36 --- quit: Klaw (kornbluth.freenode.net irc.freenode.net) 00:28:36 --- quit: warpzero (kornbluth.freenode.net irc.freenode.net) 00:28:37 --- quit: mur (kornbluth.freenode.net irc.freenode.net) 00:28:37 --- quit: ChanServ (kornbluth.freenode.net irc.freenode.net) 00:28:37 --- quit: yeoh (kornbluth.freenode.net irc.freenode.net) 00:28:37 --- quit: fridge (kornbluth.freenode.net irc.freenode.net) 00:28:37 --- quit: thin (kornbluth.freenode.net irc.freenode.net) 00:28:37 --- quit: o-- (kornbluth.freenode.net irc.freenode.net) 00:29:31 --- join: madgarden_ (~madgarden@65.93.147.147) joined #forth 00:29:31 --- join: ianp (nobody@c-24-13-109-164.client.comcast.net) joined #forth 00:29:59 --- join: Frek (~anvil@h33n2fls31o815.telia.com) joined #forth 00:29:59 --- join: skylan (~sjh@vickesh01-4708.tbaytel.net) joined #forth 00:30:05 --- join: chandler (~chandler@chandler.registered) joined #forth 00:30:05 --- join: kuvos (C00K13S@cp12172-a.roose1.nb.home.nl) joined #forth 00:30:06 --- join: I440r (mark4@63-194-165-94.ded.pacbell.net) joined #forth 00:30:06 --- join: Klaw (~anonymous@ip68-225-235-97.oc.oc.cox.net) joined #forth 00:30:06 --- join: warpzero (~warpzero@dsl.142.mt.onewest.net) joined #forth 00:30:06 --- join: mur (~mur@mgw2.uiah.fi) joined #forth 00:30:41 --- join: thin (thin@bespin.org) joined #forth 00:30:41 --- join: yeoh (~yeoh@219.95.10.231) joined #forth 00:30:41 --- join: fridge (~fridge@dsl-203-33-163-195.NSW.netspace.net.au) joined #forth 00:30:41 --- join: o-- (o@virgo.bombsquad.org) joined #forth 00:30:41 --- join: ChanServ (ChanServ@services.) joined #forth 00:30:41 --- mode: irc.freenode.net set +oo thin ChanServ 00:43:55 --- join: Robert (~snofs@c-f55a71d5.17-1-64736c10.cust.bredbandsbolaget.se) joined #forth 00:49:18 --- quit: yeoh (Connection timed out) 00:58:54 --- quit: ianp (Remote closed the connection) 01:51:17 --- quit: I440r (Read error: 104 (Connection reset by peer)) 02:40:17 --- join: I440r (mark4@63-194-165-94.ded.pacbell.net) joined #forth 02:51:09 --- mode: ChanServ set +o I440r 03:14:22 --- join: yeoh (~yeoh@219.95.11.149) joined #forth 03:14:44 Hi :) 03:15:04 Hi Robert. :) 03:17:44 * mur read "yeah Robert" 03:18:25 Hi mur ;) 03:20:30 yeah Robert 03:20:35 yeah yeah 03:21:01 yeoh yeah oh yeah 03:21:43 ? 03:23:01 :D 03:23:05 Just messing with you 03:24:32 ;) 03:28:00 Forth ROCKS! 03:29:17 Hehe 03:29:49 Way To Go! Forth! 03:31:50 yeah 03:34:44 --- join: qFox (C00K13S@cp12172-a.roose1.nb.home.nl) joined #forth 03:35:50 Hi qFox. 03:40:22 hi 04:07:10 --- join: networm (~networm@L0625P08.dipool.highway.telekom.at) joined #forth 04:07:57 hi networm. 04:08:05 hello fellow forthers :) 04:16:23 How do I undefine an earlier word that I have defined? 04:16:31 forget 04:16:59 cool! :) Thanks! 04:31:55 yeah! 04:35:43 see you guys later. :) bye. 04:35:49 --- part: yeoh left #forth 04:54:44 --- quit: networm ("Client exiting") 05:12:59 --- join: ASau (~asau@158.250.48.196) joined #forth 05:13:24 Privet, ASau 05:13:33 God dag! 05:23:26 terve 05:40:25 --- quit: fridge (Read error: 110 (Connection timed out)) 05:54:21 --- join: yeoh (~Yeoh@219.95.27.137) joined #forth 05:54:40 Hello, everyone. :) 06:00:20 yeah 06:00:22 ;) 06:00:23 terve 06:01:21 --- join: madwork (~madgarden@derby.metrics.com) joined #forth 06:01:54 Hi, madwork. 06:02:49 Hi ya. 06:30:15 Is there a wxForth? so that we can use Forth with wxWidgets. 06:32:41 there's a .NET forth and a wx.NET 06:34:09 Thanks. 07:08:13 Oh my God! The .NET Runtime is 23MB in size. And Delta Forth is only 199KB. 07:12:12 lol... 07:17:06 Hehe 07:31:27 --- join: fridge (~hovil@CommSecureAustPtyLtd.sb1.optus.net.au) joined #forth 07:32:30 Hi fridge. 07:48:55 Bye 07:49:04 --- part: yeoh left #forth 08:04:17 --- join: Herkamire (stjohns@h000094d30ba2.ne.client2.attbi.com) joined #forth 08:43:25 --- join: ian` (~user@inpuj.net) joined #forth 08:58:27 --- nick: ian` -> ianp 09:15:29 --- quit: I440r ("Leaving") 09:24:17 --- join: sir (sir@host81-153-36-198.range81-153.btcentralplus.com) joined #forth 09:24:26 ello 09:24:31 hello sir 09:24:42 goodmorning everyone else.. 09:24:44 any 1 know i440r?? 09:24:55 yeah i440r was just here 09:24:59 --- quit: sir (Client Quit) 09:25:20 wakey wakey 09:25:25 we have a big day ahead of us 09:25:27 * fridge awakens 09:25:30 full of sound and fiery 09:25:33 and adventure! 09:25:48 that bean bag is so uncomfortable 09:25:59 heh 09:27:06 --- join: sir (sir@host81-153-36-198.range81-153.btcentralplus.com) joined #forth 09:27:13 --- nick: sir -> sidsnot 09:27:21 that will teach me for sleeping at work I guess 09:27:23 sorry got booted 09:28:04 anyway any 1 know i440r 09:28:14 yes 09:28:22 well, not personally in person 09:28:51 but I've talked to him a bit 09:28:51 what times he grt in he just mail me so i thought id cum and say ello 09:29:17 sidsnot: 09:15 -!- I440r [mark4@63-194-165-94.ded.pacbell.net] has quit ["Leaving"] 09:29:45 he'll definitely be back though 09:29:50 he's usually on everyday 09:29:55 but while he is away 09:30:03 --- quit: madwork (Read error: 104 (Connection reset by peer)) 09:30:11 you can tell us if you have an interest in forth? ;) 09:30:55 if ya see im let im know poped,,, forth nahh i dont program any more 09:31:13 im from blackpool 09:31:29 no time 09:31:45 be good out there 09:32:02 blackpool? 09:32:24 he used to live here is the uk north 09:32:30 ahh 09:32:41 how he's all americanified 09:33:13 he always way,, when back home an that 09:33:20 way was 09:34:24 well got ta run just wachin spiderman rip 09:34:32 --- part: sidsnot left #forth 09:35:01 bah 09:35:05 s/how/now 09:35:06 heh 09:35:09 i'm blind! 09:43:48 yey 09:44:10 my EVAL function processes and reads the input buffer completely, and calls eval.word properly at every delimiter 09:44:23 yay 09:44:24 it skips leading,double and ending delimiters too 09:44:35 whats the diff between eval and evaluate? 09:45:02 hm dunno but the quit thing i found somewhere was : QUIT BEGIN QUERY EVAL AGAIN ; 09:45:14 so i called it eval (it doesnt really matter anyways since its all machine language) 09:45:43 but my eval basicly first parses the input buffer untill he gets a delimited word 09:46:08 then calls ' to look it up, if not found he calls number? ,if not converted then he'll show an error 09:46:44 (those ' number? error words dont work yet :) 09:47:56 the code is 221 instruction words (that includes two 80 char buffers for input/processing) 09:48:10 so its actually like 60 instruction words 09:56:07 --- join: kc5tja (~kc5tja@66-91-231-74.san.rr.com) joined #forth 09:56:15 --- mode: ChanServ set +o kc5tja 09:56:36 Hi 09:56:47 OK, retrofitted the transmitter core to use the Wishbone interface. Took a bit longer than expected, but it wasn't hard. Just lots of little dependencies to take care of. 09:57:23 * Robert works on a simple DC receiver which is going to be part of a small, portable QRP rig. 09:57:24 Also documented the module interface right inside the .v file too. 09:59:26 kc5tja PM 10:13:48 kc5tja> is about 60 instruction words, to enable the p24 cpu to process input per word, much? this only processes hte input buffer, and calls the '-number?-error sequence per word (delimited by a char thats stored in a variable in the memmory, not hardcoded) 10:14:35 I really don't know what you're talking about. 10:14:57 well, my boot code, for my p24 is about 60 instruction words :) 10:15:06 OK. 10:15:10 but i have no idea whats big or not 10:15:48 I have no clue. 10:15:52 heh ok 10:18:23 qFox: where are you getting the text input from? 10:19:07 mirc function pops up a input box 10:19:18 you enter text and the function enters the text in the 80 chars in the memmory 10:19:36 i thought that was about the best i could do to emulate it 10:20:23 so you added an instruction to the p24 that reads a line of input? 10:20:54 no 10:20:59 i coded that 10:21:22 let me publish teh commented code somewhere 10:21:23 hold on 10:22:53 coded it in what? 10:22:55 but in a nutshell, it reads a char, checks either its 0, if so jumps to the end (processes whatever is in the eval buffer one more time) 10:23:10 then it checks either its the same as the delimiter char (default is 32) 10:23:21 if its something else, it stores the char in the eval buffer 10:23:25 and scans the next char 10:23:44 if its a delimiter char, it checks if there's something in the eval buffer, and calls the ' number? error sequence 10:24:00 with the cpu instructions 10:24:03 I understand that you are doing the text parsing on the p24, but what about reading in the text. 10:24:15 p24 does not have KEY or EXPECT or anything 10:24:18 what od you mean? 10:24:23 no, i code it.. 10:24:26 in instructions 10:24:33 how are you getting the text input into the p24's memory space? 10:24:58 what instructions could you use to code KEY? 10:24:59 thats a mirc function, as i dont know how the p24 handles io 10:25:14 and how do you call the mirc function from p24? 10:25:30 the function takes your input, and stores it at the input area of the memmory (80 chars max) 10:25:42 well you dont... 10:25:47 I know what the function does, but it's not part of p24. how are you calling it from p24? 10:25:57 OK, I think I changed the receiver over to Wishbone interface. Now time to convert the unit tests for it over. 10:26:08 no atm my code doesnt continously loop to scan for input 10:26:29 (looping it means that mirc will become "stuck" and stop responding) 10:26:51 so right now, when you start the vm, it asks for some input 10:27:01 it will enter whatever (or nothing...) you enter in the input buffer 10:27:04 and start the cpu 10:27:16 the cpu starts at that QUIT BEGIN QUERY EVAL AGAIN loop 10:27:22 and so forth... 10:28:01 OK, then how does it switch back to mirc? 10:28:07 i havent seen any instructions in that p24 doc, that indicates that you have to do anything to get keyboard input to the memmory... 10:28:11 you added a pause instruction or something? 10:28:14 i added a BYE instruction 10:28:15 ye 10:28:28 right 10:29:00 when you enter more text in mirc, does it reboot the p24? or does it continue where it left off (after the BYE) 10:29:03 i've added three custom instructions... BYE, which halts the script (standard after one looping of QUIT). BUG which echoos a bunch of debug stuff (like, registers, stacks, input and eval buffers). and MOO which merely echoos "moo" 10:29:12 atm it'll reboot 10:29:18 because i'm just testing 10:29:24 but i can continue just as easy 10:29:30 (by removing the reboot function :) 10:30:12 but right now i need to get the interpreter working first 10:30:57 i'm aiming to get the : ; and @ defined. once i get that up n running, i think i'm home free and can continue in Forth with code definitions 10:31:19 cool 10:32:00 next up is creating the dictionary uh 10:32:08 well the dictionary anyways 10:35:59 how are you compiling the p24 instructions into it's memory space? did you write a compiler in mirc? 10:37:37 sort of 10:38:37 i created a function that takes instructions. normally 4 instructions, exceptions to JUMP JZ JNC CALL and n. the jumps will create a correct word for the instruction, the n will return a 24bit number 10:38:48 this function returns the 24bit word in 3 bytes (8bit each) 10:39:12 and another function stores these three bytes in the memmory, and increases a user pointer 10:40:22 http://members.home.nl/qfox/bootcode.txt 10:41:55 once i'm done with the whole bootcode, i'll optimize the words to minimize the total words :) 10:51:21 --- join: cmeme (~cmeme@216.184.11.30.unused.swcp.com) joined #forth 10:53:32 http://members.home.nl/qfox/bootcode.comment.txt 10:53:38 here, that explains what does what :) 10:53:47 the ; is a comment in mirc. 11:21:23 --- join: madwork (~madgarden@derby.metrics.com) joined #forth 11:22:08 qFox: nice code 11:22:22 tnx :) 11:47:55 --- join: networm (~networm@L0657P20.dipool.highway.telekom.at) joined #forth 11:49:05 hi! 11:49:34 hi 11:49:41 what's up? 11:50:10 nothing. so I joined IRC :) 11:50:28 * kc5tja just finished the conversion of his UART transmitter and receiver cores to the Wishbone bus. 11:50:31 Heh. 11:50:36 --- join: TreyB (~trey@cpe-66-87-192-27.tx.sprintbbd.net) joined #forth 11:52:34 The next thing to do is the baud rate generator. 12:03:08 --- quit: ASau () 12:03:12 I can see that I'm going to have to adapt CUT for use with Verilog. 12:03:33 Making test-benches is very tedious otherwise. 12:08:43 --- quit: ianp (Remote closed the connection) 12:09:06 --- join: ian (~user@inpuj.net) joined #forth 12:10:07 hm 12:10:13 for the dictionary 12:10:17 i'll use a linked list 12:10:25 double chained, not looped 12:10:45 Why do you need double-linkage? 12:10:56 every object will have, address of last entry, address of next entry, address of word, string with the name of the word, 0 as termination for the string 12:11:11 not sure tbh, just trying to think ahead, incase i will need it... 12:11:35 unless you can ensure me i'll never need it 12:11:36 If you don't need it, don't add it. 12:11:44 it'll be a bitch to add later 12:11:48 quite sure 12:11:49 :) 12:11:55 I don't see why. 12:12:00 hm ok 12:12:10 ANyway, you won't need it unless you need to traverse the dictionary forwards for some reason. 12:12:15 address of next entry, address of word, string with the name of the word, 0 as termination for the string 12:12:24 you mean backwards 12:12:30 No, I mean forwards. :P 12:12:40 You link from last to first. 12:12:51 you do? oh you do 12:13:11 hm good point 12:13:19 would've screwed that up 12:13:20 :) 12:14:01 :) 12:15:11 This might be helpful to you: http://www.zetetics.com/bj/papers/moving6.htm#FIGURE2 12:15:39 i've thought about the size of the name of a word. one the one side a static length is easy to maintain, but either limited or space wasting 12:15:47 the alternative will take some more coding 12:16:23 hm 12:16:30 why save the length? 12:17:52 So you know how long the word name is? 12:18:02 why not terminate it with 0 12:18:25 --- join: wossname (wossname@HSE-MTL-ppp77934.qc.sympatico.ca) joined #forth 12:18:56 You could. It's generally not done in Forth that way. Plus, 1 byte for a count, or one for a zero terminator... 12:19:11 i wont add count 12:19:24 and i'll compare strings 12:19:26 not size 12:19:29 and you will need to find the dictionary entry from the XT later 12:19:34 so variable length is bad 12:19:44 what do you mean? 12:19:46 Use the NFA. 12:19:55 well, i had it like this: 12:20:09 --- nick: ian -> ianp 12:20:12 | linked list pointer | name | CF | DF 12:20:23 the XT is the address of CF 12:20:31 XT=CFA 12:20:34 since name was variable length, i never could find the position of my word in the dictionary 12:20:45 well 12:20:49 i put the name as last 12:20:52 (given only the CFA) 12:20:53 so the end is variable 12:21:03 What about the BODY then? 12:21:14 BODY> 12:21:17 the body is saved somewhere else (i asume you mean teh actual code?) 12:21:38 there's a pointer to where the actual function is saved 12:21:46 Ahh. 12:21:55 well, as long as only the last element is variable, it should work. (in my case, only DF is variable now) 12:22:02 especially the first set of functions i create in machine language, wont be together with the dictionary entries 12:22:08 well 12:22:09 Still, how will you do BODY>? 12:22:09 so, given the address of any field, i can derive the address of all the others 12:22:17 if you terminate the string with 0 12:22:21 it should work fine 12:22:33 although in my model i wont be able to see stuff efficiently 12:22:37 yet.. 12:22:40 but i'll get around that 12:22:53 i'm not quite sure what you mean with body 12:23:10 http://members.home.nl/qfox/bootcode.comment.txt 12:23:17 look at the first function, QUIT 12:23:24 it starts at some point in the memmory 12:23:36 but that is not the dictionary entry 12:23:43 (doesnt even exist atm) 12:23:53 all the functions will "float" in the memmory like that 12:24:06 and the dictionary will indicate where exactly each function begins 12:24:13 the ret indicates the end of it, basicly 12:24:29 and the user poiter makes sure you dont overwrite old code 12:25:33 How will you convert from the address of some word's code (PFA) to the word's CFA? 12:25:50 not sure what you mean 12:26:01 !fsee body> 12:26:01 Forth: 4Undefined. 12:26:24 what will XTs be? 12:26:36 e.g. : TEST QUIT ; 12:26:45 will it compile into the address of the code of QUIT? 12:26:54 yes 12:26:57 i think so.. 12:27:11 sorry i'm not quite at home with the terminology :\ 12:27:12 ah. so it will be hard getting back e.g. the name field 12:27:15 Imagine this case... 12:27:15 VARIABLE FOO 12:27:15 FOO BODY> .NAME 12:27:15 FOO OK 12:27:19 yes 12:27:30 like i said, in my current setup SEE will be hard to use 12:27:43 yeah, that's exactly the problem i had with ym variable name field 12:27:45 i've had a few idea's about it, but thats for later concerns 12:28:02 you can either enter a field, that simply contains the entire definition in strings 12:28:05 i had to search all the dictionary to find any word with the same XT :P 12:28:16 or lookup the execution address in the dictionary 12:28:19 as the one i wanted the name from 12:28:20 and compose the names that way 12:28:21 etc 12:29:07 oh.. and you also need the datafield/parameter field.. 12:29:17 why? 12:29:43 for compiled words 12:30:01 i'm not sure... 12:30:18 what will (i think, havent started on this part yet) happen is 12:30:23 you define something like 12:30:27 : foo bar ; 12:30:39 the compiler will lookup bar in the dictionary 12:30:47 take the execution address of the word 12:30:54 and compile it for foo 12:30:58 when foo is executed 12:31:07 it will CALL that address, and at the end return to foo 12:31:20 as far as i am currently aware of, this is how forth works... 12:32:05 networm, got that Forth flow chart I linked you before? 12:32:37 nm... 12:32:39 http://img.cmpnet.com/embedded/gifs/2002/0210/0210bcfig1.gif 12:33:48 well thats exactly what i had in mind, except i dont bother with compile/interpreter mode right now yet, since those words will be defined once i have : ; and code defined. 12:34:09 oh, that one.. i think the one i bookmarked is 404 now 12:34:11 Also [ and ] 12:34:16 well 12:34:22 i think that once i've got : code ; 12:34:26 i can define basicly anything 12:34:35 without the use of direct machine language 12:34:46 that includes [ ] and w/e 12:35:06 the question is, how will you differentiate colon-defined-words and code words 12:35:24 the interpreter will take care of that 12:35:30 i think :) 12:35:40 you know, right now i think as i go 12:36:44 yes. that's how i made my forth :) 12:36:52 but i changed my complete design several times 12:36:59 oh i'm sure i will too :) 12:37:05 i spent half my day finding a freaking bug 12:37:13 Seems to be the general way of coding Forth. 12:37:16 heh 12:37:42 its kinda sucky when you're debug output doesnt match whats really happening ;) 12:37:47 for me, before i could understand all the advice i got, i first had to understand how everything works 12:38:14 i have a basic understand of how the forth compiler/interpreter should work 12:38:23 or at least, i think so :p 12:38:39 just wait until you implement DOES> 12:38:57 yes i'm fearing a few words ;) 12:39:05 also the branching 12:39:14 right now i have no clue how to figure that out 12:39:26 branching was easy. especially since it is only compile-only words. 12:39:55 well 12:40:08 you'd have to either backtrace to a token that indicates the start of the branch 12:40:22 or search forward for the closing of the branch and compile that address 12:40:27 either way sounds very sucky to me 12:40:34 but i havent been able to think of another way so far 12:40:50 no, since the standard says that you may use the return stack 12:41:05 there's something about compiling it as a seperate function and call it, then ret at the end of the function 12:41:08 control flow is put on the stack at compile time... and then it's a cinch to sort out. 12:41:12 but i'm sure it'll bork out 12:41:26 hm, or was it the normal stack? i don't remember 12:42:01 but it's like: IF (put address where you need the forward jump to the stack)... THEN (resolve address on stack with current address) 12:42:57 hm 12:42:58 right 12:43:12 i guess that could work 12:44:18 You can use the data stack or some other stack. In Forthy, I use the return stack. It's nice to keep the control flow off of the data stack when compiling... then it doesn't interfere with other stuff you may be doing. 12:45:10 i wonder if i should actually add a control stack 12:45:26 it would be used for all such things 12:45:28 yar, but i have to keep in mind that the p24 has a 17 deep return stack, 22 or something deep data stack and only 1 register to screw around with 12:45:37 The return stack works just fine as a control stack. No need for a seperate one. 12:45:48 a swap is done with, sta push lda pop 12:45:51 for instance... 12:48:07 but i guess the stack thing will work. 12:48:23 i'll figure it out when i get there :) 13:07:50 --- quit: fridge ("Leaving") 13:09:13 --- join: randolm (wossname@HSE-MTL-ppp60694.qc.sympatico.ca) joined #forth 13:24:01 --- quit: wossname (Read error: 110 (Connection timed out)) 13:40:47 --- join: ian_erk (~user@inpuj.net) joined #forth 13:41:07 --- quit: ian_erk (Client Quit) 13:43:03 --- quit: ianp (Remote closed the connection) 13:44:11 --- join: ianp (~user@inpuj.net) joined #forth 13:49:56 --- join: mindbomb (none@host81-153-36-198.range81-153.btcentralplus.com) joined #forth 13:50:02 ahh 13:50:20 ello thin 13:50:50 r you the nobei i once new 13:52:14 ok where is every one ere? 13:52:41 did ya get my mail or what??? 13:52:54 hmmm 13:53:29 I just got out of the shower. 13:53:30 :) 13:53:46 where the F^&k r u i44or 13:54:12 sorry got a bit mad there 4 a sec 13:54:39 i440r works as a software development consultant now, and spends a large part of his day either at work or on the road. 13:55:15 so where is right now he told me 2 see im here is all 13:56:14 development consultant <<< what 13:56:18 He tends to join at night time. 13:56:35 I haven't seen him join or be active during the day. 13:56:42 we is ol mates is all 13:57:28 --- join: wossname (wossname@Toronto-HSE-ppp3699794.sympatico.ca) joined #forth 13:57:29 tell im stan called if ya see im thanx 13:57:35 Will do. 13:57:55 ta 13:58:42 n/p. 13:58:45 kc5 so what do ya do for fun round ere?? 13:58:50 * kc5tja is off to get some food, then to prepare for work. 13:59:29 For fun? In the channel? Typically just chat about various things. Not necessarily Forth related all the time. 13:59:34 --- nick: mindbomb -> sidsnot 13:59:43 ping pong 13:59:47 hmmm 13:59:59 --- nick: sidsnot -> mindbomb 14:00:25 * kc5tja spends what little free time he has working, going to school, or trying to set up his own business. 14:01:41 i cant be doin with that police bacward noyation ... or any kind of programin any more its a head F%^k 14:03:30 you think of makin mony eh! 14:03:45 good 4 ya :) 14:04:48 my addvice remove your self from prograin when u get 2 30<35 14:05:03 I'm sorry, what is '2 30<35'? 14:05:11 * kc5tja doesn't grok 1337-$p34k. 14:05:37 * ianp doesnt get that one either 14:05:49 Maybe I'm reading too much into it. I don't know. 14:05:50 before you get to the age of 30-35 14:05:54 Ahh. 14:05:57 * kc5tja is 29 now. 14:06:03 I can do coding, that's not so much an issue. 14:06:08 But the market is dead. 14:06:25 So I'm trying to change gears and move into hardware design. 14:06:50 be yond me 14:06:59 * kc5tja is working on developing a homebrew computer kit called the Kestrel (yes, a real put-it-together-yourself kind of kit, not assembling parts line a PC). 14:07:17 * kc5tja is also working on offering several pre-programmed gate-array semiconductors for sale as well. 14:07:32 (e.g., as far as the customer is concerned, they're custom chips.) 14:07:40 u can make a semi?? 14:07:49 --- join: fridge (~hovil@CommSecureAustPtyLtd.sb1.optus.net.au) joined #forth 14:07:51 Trying to. 14:08:09 u must have money 2 burn 14:08:22 hi fridge 14:08:27 Nope. 14:08:40 hi mindbomb 14:08:47 But at this stage, I don't need money. 14:08:50 :)) try 2 dev a semi will cost u 14:08:57 * kc5tja is designing the chips in Verilog (hardware description language). 14:09:30 Once I save up about $300, then I'll purchase a CPLD programmer, so that I can start offering UARTs, timer chips, and the like, for the 6502 and Z80 hackers out there. 14:09:56 so like a plug an play thigy 14:09:59 In quantities of 1, an unprogrammed FPGA or CPLD costs around $15. It's not that bad. 14:10:11 No, these are just the raw peripheral chips. 14:10:32 people who mark library books annoy me. 14:11:08 so it very sesiphic then?? 14:11:12 * kc5tja is going to publish a bus standard for the 65816 and 6502 microprocessors that is based on the Wishbone bus though, which will support plug-n-play if the devices have it, and can still work without it if they don't. 14:12:03 If by sesiphic you mean specific, then yes. 14:12:13 so a linux plug an play ... sorry you will need money.. or lots of free time 14:12:27 I have zero intentions of supporting Linux. 14:12:39 Besides, there is nothing special about Linux PnP. 14:12:43 It's just PCI. 14:12:52 And PCI is widely published and resources are available. 14:12:59 PCI's PnP is actually trivial to implement. 14:13:06 haha, linux. 14:13:32 That's the beauty of hardware standards: who cares about the OS when you adhere to a hardware standard? OS is immaterial. 14:13:37 sorry 4 the spellin im dylexic... but very spaceualy awar ,down to mico levels :)) 14:13:49 mindbomb: re spelling; that's OK. It's just hard for me to read sometimes. 14:14:10 --- quit: randolm (Read error: 110 (Connection timed out)) 14:15:17 * kc5tja already has his first chip design 80% complete. I have the behavioral models for the transmitter and receiver portions of my first UART finished. 14:15:34 so you're 20% done then 14:16:07 you think what you r makin can transend all os's i realy do hope you can do that iv been lookin for hard ware 4 years like that :))) 14:16:21 fridge: After looking at most of the 'synthesizable' cores I've seen on the 'net, my code ought to synthesize fairly easily. I'm not too worried about it. 14:16:30 if that old adage applies, "the first 80% of the project with take 20% of the time, the last 20% of the project will take 80% of the time" 14:16:44 mindbomb: Hardware is always OS independnet. 14:17:12 The OS is what the microprocessor runs; it is what lets you run programs. Individual chips are *never* OS dependent. Never. 14:17:28 If hardware is "Windows-specific," it's because device drivers for them haven't been written for other platforms. 14:17:42 There is no fundamental incompatibility between Linux and a WinModem, for example. 14:17:50 Drivers for some WinModems DO exist for Linux. 14:17:54 no its not iv had modems that will not work with anythin other that winblows 14:17:56 Just not all. 14:18:21 That only proves that drivers for your winmodem doesn't exist for Linux. 14:18:25 That's all it proves. 14:18:26 they are dependant no os@s 14:18:35 Sorry, they're not. 14:18:43 They're dependent on what the vendor *supports*. 14:19:17 a spasific os 14:19:43 A WinModem is nothing more than a dumb modem that has a blank DSP program memory. The only thing that makes it a "WinModem" is the fact that the Windows driver either does the DSP for the modem, or has a copy of the DSP program that it downloads to the modem upon driver initialization. Nothing else. 14:20:20 The hardware couldn't care less what OS is running; in fact, it has absolutely no clue about it. 14:20:33 thankfully 14:20:34 It's just a bunch of idle transistors until the CPU touches some register. 14:20:50 Anyway, I've spent too much time. I really do need to grab some food. 14:21:35 ok i understand that is dont know... but the thing is it will only responed to 14:21:47 sorry eat well 14:22:16 It would truly suck if hardware was OS dependant 14:23:07 ie had code onboard that checked via a cryptographic key or similar that the accessing OS was bonafide 14:23:17 some is in my opinion... you will not get a plug and play modem to work i linux 14:23:39 and cdr's 14:23:59 some functions on mother boards ect 14:24:07 mindbomb, is that to a lack of documentation, or active blocking from the hardware? 14:24:12 is that due 14:25:45 no it the pll that manufactur these thing... just a 4instance my adsl will not work from any other os than winblows 14:26:32 i got no choice i use that or a 56k hmmm what would u do 14:27:55 desisged 4 a sesific os 2 my mide anyway 14:28:12 sorry bad spellin 14:31:02 its all about money why would som1 spen time try to work out how there bit of hard ware would work on any other os when winblows is the only one they need??? 14:35:06 it wouold be very nice if i could go out there and buy some hardware knowing it would work on any os,,,, it dont 14:36:40 so far the only thing iv never had trubble with are hardrive floppy 14:36:52 oh a vga's 14:37:01 a=and 14:38:02 am i chattin 2 my self ere??? 14:42:29 goy ta go night 14:42:34 got 14:42:42 --- quit: mindbomb () 14:48:45 heh 14:48:55 funny guy 14:50:40 back 14:52:26 Hi 14:52:55 * Robert found another QRPer. 14:53:22 And yesterday I talked to a guy who had a homebrew 1W transmitter, and he was pretty far away. 14:54:36 does ham work better at night? 14:54:58 On the 80m band, yes. 14:55:00 mmm. ham. 14:55:06 Other bands don't work at all at night. 14:55:20 Above 10MHz. 14:55:33 Hey wossname 14:55:41 hey robert 14:55:50 Sorry I deserted you for a ham 14:55:57 :( 14:56:09 I just _had_ to get done with my daily conversation. ;) 14:56:09 !fhelp 14:56:09 Forth: This is a words database. Add words with !fdef . See words with !fsee . Use !fhelp for more information. This bot is not a parser, so you cannot use it for running code. 14:56:09 Forth: Only define words in Forth, define words that really cannot be defined that way, as CODE. This is a public bot, dont ruin it. 14:56:21 kuvos will be my new friend 14:56:29 so there >:( 14:56:53 Hehe 14:57:18 !fdef : friend ( -- ) wossname and i are friends forever and ever! ; 14:57:19 Forth: Incorrect syntax. Use : word ( stack ) definition ; \ comment (1) 14:57:32 he doesn't want to be friends :( 14:58:58 !fdef : wossname 31337 recurse ; 14:58:59 Forth: Incorrect syntax. Use : word ( stack ) definition ; \ comment (1) 14:59:19 :o 15:00:45 * Robert thinks about what to do when everything he's doing is done. 15:01:09 knock on wood 15:01:33 !fdef : friend ( -- ) wossname and i are friends forever and ever! ; \ ! 15:01:33 Forth: 12: friend 3( -- ) wossname and i are friends forever and ever! 12; 3\ ! 15:01:40 it wants comments :p 15:01:47 :o 15:01:49 sorry i'll probably fix it later 15:01:59 (change it. this was intended) 15:02:20 !fdef : wossname ( -- ) 31337 recurse ; 15:02:20 Forth: Incorrect syntax. Use : word ( stack ) definition ; \ comment (1) 15:02:27 !fdef : wossname ( -- ) 31337 recurse ; \ omg 15:02:27 Forth: 12: wossname 3( -- ) 31337 recurse 12; 3\ omg 15:02:30 Yay. 15:03:20 "This is a public bot, dont ruin it." <-- sorry, didn't see that. ;) 15:03:46 should come natural imo 15:03:47 but hey 15:03:48 :) 15:03:57 !fsee - 15:04:09 !fsee ? 15:04:10 Forth: 12: - 3( x y -- x-y ) -1 xor 1+ + 12; 3\ x-y 15:04:10 Forth: 12: ? 3( adr -- ) @ . 12; 3\ print value of adr 15:04:14 laggy biatch 15:04:39 !fdef : ? ( adr -- ) @ . ; \ print cell contents of adr 15:04:40 Forth: 12: ? 3( adr -- ) @ . 12; 3\ print cell contents of adr 15:04:40 --- quit: fridge ("Leaving") 15:06:11 --- quit: ianp (Remote closed the connection) 15:53:49 --- quit: wossname ("-1") 15:59:59 OK, off to work for me. 16:00:16 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 16:14:08 --- quit: networm ("Client exiting") 16:41:13 --- join: Sonarman (1000@adsl-64-171-254-184.dsl.snfc21.pacbell.net) joined #forth 16:45:50 i think the bot is a bit cheesy heh 16:46:17 it loves you 16:46:23 hug it. 16:47:17 heh 16:47:28 well it shouldn't force us to include stack comments & comments :P 16:47:36 that's very unforthish ;) 16:47:43 at the time i figured it would work better :p 16:47:58 or you'd get all kind of freaky ppl adding stuff that doesnt make sense 16:48:06 we want that :P 16:48:10 hehe 16:48:11 that's alright ;) 16:48:24 * thin shrugs 16:48:33 well pretty soon i'll have my forth vm done 16:48:37 i haven't really contemplated what features a forthbot should have 16:48:43 and i just might turn it in a forth bot 16:48:48 like, a real one 16:48:49 i knwo that i440r started work on a forthbot, so did others 16:48:56 not sure what features they want though 16:49:10 mine has the plus that its native underlying language is mirc 16:49:11 :) 16:49:25 the downside is that its very freaking slow, although the debug output helps alot there 16:49:31 this bot here is like the 3rd or 4th "forth bot" 16:49:58 but lets just say, that while parsing a 80 char string for input, you can get your afternoon nap 16:50:02 herkamire had one, i440r had one (but it wasn't usable), onetom had one but it had a huge security hole 16:50:09 hehe 16:50:10 actually i remember another bot 16:50:13 so probably 4 bots already 16:50:16 so kovus is the 5th 16:50:17 heh 16:50:22 kuvos is lame 16:50:29 just database :p 16:50:46 and you made it in mirc script? 16:50:49 that's nifty 16:50:52 --- topic: set to 'A channel dedicated to the Forth programming language, its implementation, its application, and its philosophy. :: UPDATE: Those interested in the up-coming ForthBox Kestrel home computer kit are invited to review the Kestrel's very own Wiki at http://www.falvotech.com/cgi/kestrel || kuvos will return... || SNEAK PREVIEW IMAGES OF THE FORTHBOX KESTREL!!! http://www.wsu.edu/~jack' by qFox 16:50:59 .p 16:50:59 --- part: kuvos left #forth 16:51:22 yar 16:51:23 but now 16:51:25 you' are an 31337 w4r3z scr1pt k1dd13 and that's a compliment :P 16:51:29 :) 16:51:35 i'm pretty good at mircscripting yar 16:51:41 i made that p24 cpu emulater in mirc 16:51:51 lol 16:52:04 cool :) 16:52:04 busy on the bootcode right now (which is entirely coded in p24 machine language, not mirc, i might add) 16:52:22 i haven't seen that p24 cpu emulator 16:52:33 or heard about it previously 16:52:40 here, http://members.home.nl/qfox/bootcode.comment.txt and http://members.home.nl/qfox/bootcode.txt 16:52:50 i've been bothering you guys with it for the past three days or so ;) 16:53:08 well i know you've been working on something about p24 but thats all i knew 16:53:17 :) 16:53:21 well its an emulator 16:53:37 the leet part, is that mirc has no direct memmory accessing 16:53:52 and the cpu does :) ok not "really" but as far as you'll know it does 16:54:04 and you are coding it in mircscript? 16:54:07 including EVAL ? 16:54:07 sir 16:54:09 sir 16:54:15 :) 16:54:16 where did you see EVAL at? 16:54:21 what do you mean? 16:54:25 i wrote that. i have no example 16:54:41 what forth implementation did you look at for the QUIT loop with EVAL in it 16:54:48 its like, fucking hard to find working source examples 16:54:54 so i figured i might as well do it myself 16:54:59 working source examples for what? 16:55:04 for this 16:55:07 parsing of input 16:55:09 etc 16:55:19 i did this all by myself, i have no examples to work with/from 16:55:44 all i knew was the : QUIT BEGIN QUERY EVAL AGAIN ; definition 16:55:46 which i followed 16:55:57 but i have no examples of how they are coded 16:55:58 how did you know that definition? where did you see it? 16:56:04 hmm 16:56:22 sec, lets see if i can find it 16:56:56 btw, if you wanted to see the definition of QUIT and EVAL etc you might've had to install various forth implentations and try SEEing those words 16:57:02 hm dunno, maybe i saw it in here somewhere 16:57:16 ye but they are all in code, which is obvious, but no explanation 16:57:20 i'm pretty sure that FPC shows QUIT and the words inside it with SEE 16:57:25 oh 16:57:26 well 16:57:34 after searching google for a bit 16:57:37 i decided to do it myself 16:57:40 yeah 16:57:55 right now i just finished coding tick globally 16:58:03 its bugged, but the main outlining is done 16:58:06 actually i'm going to implement something that will save you time finding the definition for QUIT and EVAL etc 16:58:16 you are? 16:58:19 .... like what? 16:58:32 i'm going to consolidate all the forth code out there into one site 16:58:37 i'm doing ' number? and error now 16:58:45 maybe include rankings for the quality of the code 16:58:50 after that i'll hardcode colon CODE and semi-colon 16:59:00 and i hope that after that i can do anything else by forth definitions 16:59:05 i.e. so that ppl know what code is improperly coded versus well-coded 16:59:10 (ok probably not, but its worth a shot) 16:59:20 what do you think of that feature? 16:59:21 oh right 16:59:27 consolidating all the forth code out there into one site 16:59:42 and that includes opening up all forth implementations and taking any code i can 16:59:50 as a section on that forthsite you were making, sure, as a main site thing, well i donno 16:59:56 its a section 16:59:59 then sure 17:00:05 have a vote 17:00:14 what mainstream forth is the best 17:00:24 ? 17:00:30 no it'll have code from everything 17:00:33 even forth-like code 17:00:37 nono i know, but i mean 17:00:42 on the frontpage 17:00:45 have a vote 17:00:48 um whats it called 17:00:52 poll 17:00:53 survey 17:00:54 right 17:00:55 poll 17:01:05 well i was going to have a poll about groupbuying forthchips 17:01:06 where ppl can vote on some of the mainstream forths, what they think is best 17:01:10 oh 17:01:16 well this one can just stick for ages :p 17:01:36 so over time, you can see what ppl use/like most, or who haxed it ;) 17:01:59 yeah 17:02:01 but sure. its hard to find opensource from the ground up forths though 17:02:21 my goal is to CODE as little as possible, and thread as much as possible 17:02:24 its hard to find forths that weren't coded in C for those are the spawn of the devil ;) 17:02:31 CODE the minimal set required, and only do forth from then onwards 17:02:44 yeah 17:02:46 (so anyone using my forth should actually not even bother with my cpu emulator) 17:02:48 machiine forth vm 17:02:55 28 primitives or so 17:03:03 ye thats the cpu 17:03:04 i was planning on implementing machine forth in dos 17:03:09 then coding a forth ontop of that 17:03:16 yep thats what i'm doing basicly 17:03:20 although mine's freaking slow 17:03:24 hehe 17:03:56 btw the site i'm making is basically to solve all the problems i encountered when i first heard of forth 17:03:57 i mean, it'll be: forth on a p24 emulator in mircscripting (and not very optimized ;) in vc++ (or .net) in assembly... 17:04:08 it was hard to find good tutorials, good code, good implementations, etc 17:04:09 a whole shitload of layers just screaming slowness 17:04:10 :p 17:04:16 hm 17:04:28 the tutorials are out there, good ones is another thing 17:04:49 the community suffering partly because the information isn't very accessible 17:04:53 you should also have a section about the minimal set thing, as new forthers (me included) often ask for that 17:05:02 yeah 17:05:18 and that is also hard to find 17:05:26 thats how i stumbled on the p24 actually 17:05:47 ah 17:06:01 ohwell 17:06:09 lets debug my ' word 17:06:17 what other things do new forthers look for? 17:06:24 * thin will take notes if you have any ideas ;) 17:06:35 hmmm a decent forth environment 17:06:37 actually go here.. http://thin.dist.net/site.txt 17:06:43 i think most windows users will be quite content with winforth 17:06:57 there's two main goals of the site which i break up into things to do.. 17:07:10 i dont know about other OS's, but winforth is so far the only one out there that actually has a windows gui where you can decently copypaste and w/e 17:07:18 nah i don't consider winforth a decent forth environment 17:07:24 for windows 17:07:26 it is... 17:07:49 well there's a few other window forths that are probably better heh 17:07:50 it has a huge dictionary and everything is coded in asm 17:07:53 winforth is so bloated 17:08:00 huge dictionary isn't an advantage.. eww 17:08:01 heh 17:08:01 but it has the possibility to create windows exes 17:08:11 i know, i meant those as a downside 17:08:17 you cant SEE much in it 17:08:24 ah 17:08:34 but you CAN do windows programming 17:08:38 there is swiftforth plus several other window forths 17:08:43 which is kinda great if you want that 17:08:44 with support for gui etc 17:08:49 altho most are commercial 17:08:54 swiftforth was like 200$ 17:09:01 exactly 17:09:10 altho one of them you can email the author and ask for it for free by explaining you are a student etc 17:09:13 ok maybe i should add "and is free" to my statement :p 17:09:40 :P 17:09:44 have links to several forths (try a collection of...) and up to date downloads 17:09:45 warez! 17:09:48 window forth warez! 17:09:52 i tried 17:10:03 it'll be located at the newsite.com/_0day/ 17:10:05 ;) 17:10:06 and i consider myself able to get just about anything 17:10:11 0day warez! 17:10:12 but swiftforth was not released 17:10:21 confirmed that 17:10:24 you can download a trial swiftforth 17:10:25 ohwell 17:10:31 ye but that aint the real thing :) 17:10:32 and get a free book in .pdf 17:10:35 i'll get someone to crack it some day 17:10:41 heh 17:10:51 if you have the will, learn to crack it yourself :P 17:10:54 but have a huge list of forths for ppl to get lost in 17:10:55 very educational :) 17:11:06 heh 17:11:12 well theres already a list on taygeta 17:11:31 forth implementations, good working tutorials, a big FAQ 17:11:41 bbiab, suppah 17:11:53 yeah a big assed FAQ 17:11:56 that would be cool 17:12:09 :) 17:12:15 and probably the easiest of all.. 17:12:36 unless you're a perfectionist, in that case... tough break :p 17:12:40 though 17:12:42 tough 17:12:43 though 17:12:46 ... sux2bu 17:16:57 anyone have any idea how you get DEPTH from the p24? what register is the stack counter or w/e? :) 17:17:12 i mean in my script i have a var that keeps track of this counter, but i dont believe the cpu has it... 17:34:19 qFox, from what I understand, DEPTH in Machine Forth is somewhat irrelevant. 17:34:42 --- nick: madgarden_ -> madgarden 17:41:01 oki 17:46:12 qFox, did you watch any of Jeff Fox's Machine Forth tutorials, here: http://www.ultratechnology.com/rmvideo.htm 17:46:15 --- join: yeoh (~yeoh@219.95.10.221) joined #forth 17:46:55 yeoh, I used to buy these Yeo's curry noodles. They were yummy. 17:47:14 Hi madgarden. :) 17:47:20 :) 17:47:56 Yeo's, yes. 17:48:09 I can't find them anymore. 17:48:17 How come? 17:49:55 Well, it seems to be because when I look for them, they aren't there. 17:50:09 Where are you? 17:50:21 Canada. 17:50:58 Oh, I see. I'm in Malaysia. 17:51:08 If Yeo's is still in business, I'm sure their noodles are around here somewhere. 17:52:13 Which Yeo? Are they the ones from Singapore? 17:56:01 --- quit: Herkamire ("out of town for 24 hours") 18:01:06 I really don't know. It was a long time ago that I had them. 18:01:22 I should design a noodlesForth. 18:02:01 Yeo's famous over here.. They sell many kinds of foodstuff, from noodles, sauces to beverages.. 18:03:31 noodlesForth! 18:03:40 Forth rules! 18:08:54 yeoh, you program? 18:09:06 --- join: ianp (~ian@c-24-13-109-164.client.comcast.net) joined #forth 18:09:39 yep. 18:11:27 What sorta stuff? 18:12:07 php/mysql at work. c,c++,asm after work. now learning forth. 18:12:22 most web-based apps 18:12:34 mostly, I mean..oops 18:13:34 Keen. 18:13:34 it seems, as if my ' works, or at least half of it :p 18:14:20 "noodleforth, where your jump is our motto!" 18:14:25 :p 18:14:46 heh? 18:14:59 I dunna get it. 18:15:06 aaaaand no i didnt read any of those tuto's 18:15:17 You don't have to read them, they are movies. :) 18:15:25 jump = goto = spaghetti code = noodle = ... :) 18:15:39 sorta 18:15:40 :) 18:15:47 No GOTO in Forth (well not really) ;) 18:16:14 there will be in noodleforth 18:16:46 the objective of noodleforth is to create as many jumps in the code as possible, and still maintain decent speed. 18:17:07 me likes. 18:17:18 then create a whole set of jump words 18:17:21 for the fuck of it 18:17:30 Well, there's AHEAD THEN. 18:17:40 and annoy some teach with it, here sir, this language is meant to be spaghetti, sue me!! 18:17:41 :p 18:17:45 Though, I never did figure out how it was useful. 18:17:58 um 18:18:02 dunno 18:18:09 dont even know what it doe 18:18:10 s 18:18:57 : TEST THIS-WORD-RUNS AHEAD THIS-WORD-DOESN'T-RUN THEN ; 18:19:11 --- join: slava (~slava@69.196.155.184) joined #forth 18:19:12 hi all 18:19:31 Hi slava. :) 18:19:36 Hia 18:19:42 Forth ROCKS! 18:19:51 rockForth 18:21:58 hm, oh 18:22:12 how is everyone? 18:22:35 i noticed yesterday that the nvidia 3d drivers perform much better on linux than freebsd :( 18:22:48 are we allowed to discard forthnames like hotmail does with accounts? terminate and recycle any name older then x years w/o update? :) 18:23:14 sexylips69Forth? 18:23:34 i added online help to my interpretr 18:23:41 'see' how shows the source code + documentation comments 18:23:55 Next word is at adr 233 18:23:55 Instruction: 000000 JUMP 18:23:55 Target: 56701 18:23:55 Next word is at adr 56701 18:23:55 Instruction: ?? 18:23:58 thats not good 18:24:08 slava, isn't that normally what VIEW does? 18:24:32 madgarden, i guess 18:25:19 while SEE actually decompiles. 18:25:22 i'm gonna do a crazy attempt at crashing my windows with msn :p 18:25:27 my SEE decompiles. 18:25:34 Oh! 18:26:24 if i time out, i made windows cry ;) 18:26:33 with msn! 18:27:04 :| 18:27:06 it didnt work 18:27:07 :( 18:27:11 >:( 18:27:38 MSN... the messenger? 18:28:10 yes... i tried something nifty 18:28:13 that should've worked 18:28:15 but.. it didnt 18:31:44 Quit screwing around in MSN and work on your Forth. JEEZ! 18:32:18 hey 18:32:20 that msn client 18:32:23 that i wrote in mirc 18:32:27 got me my gamecube 18:32:28 so hush 18:32:33 if i find bugs i get stufz0r 18:32:35 Heh. 18:32:49 Yes, but you will never attain Forthvana that way. 18:32:54 so true 18:33:00 but nintendo comes pretty close to it 18:33:06 http://www.microsoft.com/technet/security/Bulletin/MS04-010.mspx <-- my gamecube! 18:33:06 Heh. 18:33:13 my name is there somewhere 18:33:13 :D 18:33:17 I thought you got an X-Box. 18:33:24 i traded it for a cube 18:33:24 hehe 18:33:30 got a pretty good deal too 18:33:32 poor guy 18:33:33 Haha. 18:33:38 I was gonna say... 18:33:47 they gave me a fucking bare xbox 18:33:50 one controller, no games 18:34:00 i mean, i'm a poor fucking student, and they send me that. 18:34:12 so i traded it for a cube with 3 games, 3 controllers, 2 memmory cards 18:34:13 lol 18:34:14 :p 18:34:16 Woo! 18:34:18 What games? 18:34:59 hm 18:35:01 mario sunshine 18:35:05 i played with win32forth todya 18:35:07 which proved to be sucky :( 18:35:20 and metroid prime 18:35:31 and some bmx game 18:35:32 look at this: 18:35:35 1] "cons" see 18:35:36 : cons ( X X -- X ) 18:35:36 #! Push a new cons cell. If the cdr is f or a proper list, 18:35:36 #! this is a proper list; otherwise it is an improper list. 18:35:36 [ 18:35:36 "java.lang.Object" "java.lang.Object" 18:35:38 ] "factor.Cons" jnew ; 18:35:45 Well, at least you got Metroid! 18:35:54 metroid is a FPS 18:35:57 FPS for consoles suck 18:35:59 slava, that's done in Win32Forth? 18:36:00 i didnt know it was fps :( 18:36:06 madgarden, no 18:36:14 i'll probably finish it anyways :) 18:36:19 but i got smash bros from a friend 18:36:24 and that game simply kicks ass 18:36:26 :p 18:36:27 I'm a PS2 guy. 18:36:34 and thats my fault? 18:36:36 ;) 18:36:37 slava, so what are we looking at? 18:36:49 madgarden, factor 18:36:52 War of the Monsters is teh r00lzorz. 18:36:53 nah i like all consoles, but i do favour nintendo 18:36:57 madgarden, doc comments from 'see', new feature :) 18:42:10 Cool! 18:42:22 I take it you don't like \ as a line comment? 18:43:11 there are like a hunderedgazilion ways to comment in forth 18:43:36 \ ( ) { } #! Comment: Comment; 18:43:40 and ... more 18:44:00 (* don't forget this one *) 18:44:12 yet forth is the language in which you should comment while coding 18:44:14 { and } are generally not comments, exactly. 18:44:17 i mean... 18:44:18 :) 18:44:37 well winforth uses it as comments it seems 18:44:39 I like the ( ) comments... I mean, it makes perfect sense to use those. 18:44:52 nah totally not 18:44:55 i can understand \ 18:44:59 but not () 18:45:08 used too common in other languages 18:45:32 not that i miss-use them or anything, but too many languages use () for bracketing 18:45:39 statements i mean 18:45:56 Forth is not supposed to look like other languages. 18:46:07 doesnt mean it shouldnt play nice 18:46:09 Forth does not require bracketing. 18:46:34 i mean, you're not going to write it in chinese, just so it wont look the same as the rest? 18:46:35 :\ 18:46:47 Though, I was messing with the idea of using ( and ) as nothing words, just to help with commenting stuff. 18:46:52 ie. to indicate stack flow. 18:47:03 well yea. i use ( ) only for stack comments 18:47:11 I don't mean that,a ctually.. 18:47:12 any other comment i use \ 18:48:51 i should add a counter 18:48:54 I mean something like this: 18:48:54 10 2 3 + 5 6 * - * 18:48:54 can be commented like this... 18:48:54 ( 10 ( ( 2 3 + ) ( 5 6 * ) - ) * ) 18:49:04 for the number of instructions the cpu has ran thru 18:49:08 and then a special bug 18:49:10 If ( and ) are defined as nothing. 18:49:23 that only debug outputs at instruction x or y 18:49:28 i use ( ... ) for stack effects only. 18:49:31 ! is line comment 18:49:32 #! is doc comment 18:49:42 Yes, fine. 18:49:45 # is a peg for all kinds of misc stuff too :) 18:49:49 madgarden> oh like that. nah too confusing now. 18:49:52 But I'm saying, sometimes the stack flow inside of a word is confusing. 18:49:58 #"..." is a string where escapes \n \t \r \\ are not parsed 18:50:05 So, some form of bracketing comments can be useful. 18:50:10 #'X is a single character literal 18:50:25 #=foo pushes the internalized symbol (think xt) named 'foo' 18:51:18 btw, is 20 seconds for a ' to complete searching the dictionary ONCE, considered slow? ;p 18:51:29 a dictionary of about 6 entries, i should add 18:51:54 qFox... :O 18:52:15 lets see the speed w/o debug 18:52:40 about 1/4th 18:52:54 its funny when i think about it, i have a feeling khaled uses a forth-like system for mirc 18:53:07 defining etc 18:53:26 i can override the default commands with my custom commands (makes it easy to temp disable echoos ;) 18:55:02 Forth is the perfect macro system. 18:55:52 what i dont really understand though, is why this system isnt known very well? 18:56:12 i mean, i never even heard about it untill someone on #ai mentioned it 18:57:03 Because it's just too weird for most people. 18:57:18 The majority can't even get past RPN. 18:57:38 Yet, it's the most "natural" system of any. 18:58:38 ok sod that. crappy bug. sleepy time for moi 18:58:40 nite 18:59:13 laterForth 19:04:14 Forth rules! 19:04:21 --- quit: qFox ("if at first you dont succeed, quit again") 19:47:41 another new factor feature: 19:47:43 0] "2list" find-usages 19:47:43 3list 19:47:43 map 19:47:43 str-map 19:47:44 subset 19:47:48 find all words that reference a given word 19:52:41 here is a gem: rename a word, and change all references to the word too: 19:52:43 : rename ( old new -- ) 19:52:43 over intern [ @name ] extend $dict [ s@ f s@ ] bind ; 20:42:23 --- join: kc5tja (~kc5tja@66-91-231-74.san.rr.com) joined #forth 20:42:28 --- mode: ChanServ set +o kc5tja 20:50:55 --- quit: slava (Read error: 60 (Operation timed out)) 21:12:06 --- quit: ianp (Remote closed the connection) 21:13:09 --- join: ianp (~ian@c-24-13-109-164.client.comcast.net) joined #forth 21:30:58 --- join: Sonarman_ (1000@adsl-64-171-254-199.dsl.snfc21.pacbell.net) joined #forth 21:30:58 --- quit: Sonarman (Read error: 104 (Connection reset by peer)) 21:42:45 --- nick: Sonarman_ -> Sonarman 22:01:00 Wow! The OpenGL examples in bigForth are cool! 22:03:16 --- quit: yeoh ("Client exited") 22:08:07 --- join: yeoh (~yeoh@219.95.7.182) joined #forth 22:17:08 --- join: Sonarman_ (1000@adsl-64-169-93-151.dsl.snfc21.pacbell.net) joined #forth 22:25:40 --- quit: Sonarman (Read error: 60 (Operation timed out)) 22:31:22 hey, yeoh! 22:31:34 i'm playing with bigForth at the moment, too! 22:34:54 Hi Sonarman. :) 22:35:25 bigForth is great! I'm playing with it on Windows and Linux. 22:36:55 if only the code had more comments :) 22:37:08 or any at all :) 22:37:49 Yeah... I still don't understand most of the code. I'm playing with the example programs. 22:39:20 I found an on-line version of Starting Forth by Leo Brodie. 22:39:30 at Marcel Hendrix's site? 22:40:04 Yes, I followed a link from there, I think. 22:40:27 http://home.iae.nl/users/mhx/sf1/sf1.html 22:40:39 yep. it's cool :) 22:40:45 :) 22:43:18 from what i can tell, the compiler is pretty sophisticated. after defining a code word, one specifies which registers are modified by the word, and the compiler uses that information to try to generate optimal, correct code (at least, i think) 22:43:29 i have to go. bye! 22:43:34 --- quit: Sonarman_ ("leaving") 23:11:49 --- quit: ianp (Remote closed the connection) 23:14:42 Postfix Power! 23:27:51 Heh 23:59:59 --- log: ended forth/04.04.05