00:00:00 --- log: started forth/04.07.07 00:00:23 I wish firefox and dillo had that feature 00:00:25 it's very handy 00:01:43 I think it's absolutely rediculous (and rather depressing) that in this day and age when computers are running up in the GHz, that interfaces are slugish. 00:02:41 yup 00:02:56 this is why i want to make an uber-cool opengl gui of some kind :) 00:03:20 not sure what you mean by uber-cool 00:03:31 sounds like it would be fun, but probably not useful 00:04:08 well, time for bed 00:06:21 --- quit: Herkamire ("goodnight") 00:17:37 --- quit: mur (Read error: 110 (Connection timed out)) 00:22:44 --- join: aum (~aum@port-204-54-210.fastadsl.net.nz) joined #forth 01:09:40 --- join: Topaz (~top@spc1-horn1-6-0-cust217.cosh.broadband.ntl.com) joined #forth 01:18:47 --- quit: kuvos (Ping timeout: 14400 seconds) 01:32:41 --- join: foobar (fooboo@dialup-4.152.96.238.Dial1.Atlanta1.Level3.net) joined #forth 01:38:03 --- quit: Topaz (Remote closed the connection) 01:38:23 --- join: Topaz (~top@spc1-horn1-6-0-cust217.cosh.broadband.ntl.com) joined #forth 02:02:33 --- join: qFox (~C00K13S@cp12172-a.roose1.nb.home.nl) joined #forth 02:03:12 --- join: kuvos (C00K13S@cp12172-a.roose1.nb.home.nl) joined #forth 02:09:02 Hi qFox (and twin) 02:09:30 * qFox pets kuvos 02:09:42 Who/what is that? 02:09:51 thats my other computer 02:10:02 Ah. Such a cutie. 02:10:09 but he has a faulthy sscript that runs in an endless loop every now and then 02:10:16 Haha 02:10:30 so then it times out and i need to break out of it when i notice it :) 02:11:27 so in other news 02:11:30 SEE sux. 02:11:37 hmm, i fear that endianness is about to become an issue... 02:11:44 i've randomly reading in file data from memory with @ 02:11:45 In what? 02:11:53 anything really 02:11:53 i'm* 02:12:27 i wonder if isforth has C@ or something... 02:12:31 Sure it has 02:12:36 c@ ( a -- c ) 02:12:48 its x86 so it likely has c@ w@ and @ 02:13:13 and it'll be little-endian, i presume? 02:13:18 Yes. 02:13:20 joy... 02:13:26 :) 02:15:20 I even think I440r is writing a manual for it. 02:15:34 Might be a good thing to use (if you're too lazy to read the sources9 02:16:04 Robert> ever tried to implement SEE ? 02:17:55 What's SEE? 02:18:07 decompile a word 02:18:53 --- quit: TomasuDlrrp (Connection timed out) 02:19:35 The Forth word, yes... But wasn't you refering to some kind of an acronym? 02:19:41 I'm thinking of SSE for some reason. 02:19:46 --- join: TomasuDlrrp (~moose@d66-222-216-222.abhsia.telus.net) joined #forth 02:20:28 And anyway, no. Never needed it. 02:20:38 Real coders keep their source code. ;) 02:21:39 no 02:21:41 i meant SEE 02:21:46 the decompile thing 02:22:08 i've tried it, but hit some walls 02:23:11 two mainly, for one, how can you see the difference between a xt and a literal/dliteral. and how do you know where the end is :\ 02:23:39 Depend on your Forth. 02:23:50 Try writing SEE for an optimizing native code compiler. 02:24:04 I440r uses various cheats. 02:24:20 Like having a "dothen" word, which is basically a NOP, but decompiles to THEN 02:24:26 nah there's no SEE in ciforth, its added with the blocksfile, but that thing seems very bloated 02:25:00 ugh, why was little-endian *EVER* used? heh 02:25:19 Topaz> what makes little endian better then big endian? 02:25:30 :) 02:25:37 well, big endian makes more sense 02:25:42 to you 02:25:54 and some tard thought little endian made more sense 02:26:09 dont get me wrong, i agree with you, little endian sux 02:26:10 :) 02:26:15 or at least 02:26:31 the fact that there are two ways ot interpreter read data 02:26:35 just trying to read 9 bits out of memory is... interesting 02:26:41 ah yes 02:26:49 i gave up on the matter for now 02:26:50 hehe 02:26:53 the 9th bit is the wrong side of the data i want 02:27:06 bitwise fileread/writing gave me a headache 02:27:38 Uhm. 02:27:39 hm need to make mental note to mention that to kc5tja 02:27:45 "wrong side"? 02:27:56 That's because you write the binary numbers BACKWARDS. 02:27:58 * qFox pokes Robert to make that mental note 02:28:32 In fact, the 8-bit binary number 1 could be written as 10000000, but for some reason, westerners write it 00000001 02:28:55 i'm tought 000000001 02:29:00 taught* 02:29:03 whatever. 02:29:06 :) 02:29:07 :) 02:29:09 * Robert <-- pedant 02:29:18 but thats because other bases do the same 02:29:21 Anyway, the thing is, little-endian has some advantages. 02:29:26 1 in 10 base is also 000001 02:29:39 just the MP3 spec requires that you read a chunk of 9 bits 02:30:18 which little-endian makes difficult... 02:30:30 unfortunatly you have no choice in the matter 02:31:41 Topaz, why not grab 32 bits, then mask and shift to get the 9 bits? 02:32:36 That's what I mean, qFox, the LSD could be first instead of last if we wanted... but no... 02:32:43 * Topaz thinks 02:32:59 but why would you? 02:33:04 whats the logic behind that? 02:33:26 but the byte containing the LSB will be more significant than the byte containing the rest of the no 02:33:26 when you write a decimal number you do the same 02:33:36 5000, lsb is right 02:33:52 then why change that with a binary number? 02:33:56 Robert: i have to use the same binary representation as the writers of the MP3 spec ;) 02:34:06 lsb is rightsided too in hex 02:35:25 --- quit: TomasuDlrrp (Read error: 60 (Operation timed out)) 02:35:46 perhaps i should just let go of the SEE word for now and focus on history 02:35:58 --- join: TomasuDlrrp (~moose@d66-222-216-222.abhsia.telus.net) joined #forth 02:38:44 Topaz, : byteswap dup $FF and 8 lshift swap 8 rshift or ; 02:39:41 no 02:39:48 Bah 02:39:54 aha, byteswap sounds good :D 02:40:11 Argh. 02:40:16 :) 02:40:21 It is right-sided in ALL number systems 02:40:24 i can see why in this article I'm reading they use a CPLD to decode the MP3 bitstream ;) 02:40:30 If it wasn't I'd go on a killing spree. 02:40:33 hahahhaha you didnt know? :p 02:40:54 My point is that it isn't TEH ALMIGHTLY GOD who made it that way. 02:41:04 no, its logic 02:41:06 ;) 02:41:23 it just so happens that that logic doesnt always come in handy when programming 02:41:28 well, life sux 02:41:32 Heh 02:41:44 I'm going to the lake... see you forth freaks in a while 02:43:29 be carefull. water == evil 02:43:41 makes you clean and stuff 02:43:58 plus its probably rather cold where you are :D 02:47:18 haha, hideous, but effective: : getmaindatabegin sidedata dup c@ 1 << swap 1+ c@ 7 >> 1 & | ; 02:47:23 i suppose i need to get used to FORTH ;) 02:49:53 bit-twiddling can be confusing in any language :) 02:51:31 --- quit: TomasuDlrrp (Read error: 60 (Operation timed out)) 02:52:02 --- join: TomasuDlrrp (~moose@d66-222-216-222.abhsia.telus.net) joined #forth 02:58:46 here's a webpage all about bit-twiddling: 02:58:50 http://graphics.stanford.edu/~seander/bithacks.html 02:59:19 one of them is patented!! 02:59:31 lol... 02:59:49 not in forth though 02:59:49 :) 03:00:02 I'm opposed to software "patents". 03:00:23 i have my own ideas about them 03:01:36 the patent covers the algorithm, so you couldn't even use in Forth when writing commercial software 03:01:53 without paying $$$ 03:02:04 psh. 03:02:05 :) 03:02:21 commercial forth software o_0 03:03:19 hm. why is there +! but no -! 03:04:38 use "negate foo +!" 03:04:48 eh 03:05:14 hm i'll just define -! 03:05:15 :) 03:05:24 ok 03:06:04 tuck was ( a b -- b a b ) right? 03:06:18 yes 03:08:41 : -! ( n adr -- ) TUCK @ SWAP - SWAP ! ; : -! ( n adr -- ) SWAP NEGATE SWAP +! ; 03:12:32 some of these are quite surreal 03:12:34 b = (b * 0x0202020202ULL & 0x010884422010ULL) % 1023; 03:12:40 reverses all the bits in a byte! 03:12:56 unbelievable 03:26:59 --- quit: Serg () 03:38:01 cmove and move actually copy, right? 03:39:02 --- quit: TomasuDlrrp (Connection timed out) 03:39:32 --- join: TomasuDlrrp (~moose@d66-222-216-222.abhsia.telus.net) joined #forth 03:41:04 nvm found an alternative 03:41:11 i hope :p 03:42:19 * Robert is terug 03:42:50 one day i'll learn proper swedish and kick your ass ;) 03:43:47 Not so hard :D 03:43:59 You've heard 90% of my Dutch vocabulary already ;) 03:44:04 HEHE 03:44:06 hehe 03:44:39 VOCABULARY DUTCH 03:44:42 : GREETING HOI ; 03:44:50 : BYE DOEI ; 03:45:00 : FUCKYOU KAASKOP! ; 03:45:06 END 03:45:10 haha nono thats "neuk jou" 03:45:16 Well, not literaly 03:45:24 that is literal 03:45:29 makes you look dumb as well 03:45:30 :p 03:45:32 Good to know 03:45:38 Oh, and... 03:45:50 : SLUT SLET ; 03:46:03 when you say that ppl will start to laugh, you'll be a typical foreigner trying to speak dutch :D 03:46:30 ;) 03:46:39 so, why do you know just those words i wonder.... :p 03:46:52 I hang with the wrong people :) 03:47:11 it shows 03:47:39 13:00 <@Trickster> Robert is een geile zweedse blonde slet 03:47:46 That's their _greeting bot_ 03:48:05 that name ought to say enough though ;) 03:49:36 It doesn't. 03:49:43 There's a drawing of Trickster. 03:49:52 When you've seen it, you know enogh 03:49:53 enough 03:49:56 hehe 03:53:06 http://pepperann.dyndns.org/mlb/trickster1.jpg 03:53:12 It wasn't too bad though... 03:53:30 :) 03:53:57 Oh, well... 03:54:11 * Robert stops trying to prove for qFox how odd the dutch are. 03:54:26 oh was that what you were trying? 03:54:33 dont worry, we know 03:54:33 :p 03:55:04 --- join: crc (crc@0-1pool176-8.nas6.philadelphia1.pa.us.da.qwest.net) joined #forth 03:56:07 Hehe 03:56:09 Hi crc 03:56:59 Hi Robert 04:11:26 --- quit: TomasuDlrrp (Read error: 60 (Operation timed out)) 04:12:09 --- join: TomasuDlrrp (~moose@d66-222-216-222.abhsia.telus.net) joined #forth 04:35:29 --- quit: TomasuDlrrp (Connection timed out) 04:56:21 --- part: foobar left #forth 05:00:42 hm 05:00:55 ok so i created a table that contains the last x (constant) items 05:01:12 items being the lines that were gotten from the input buffer 05:01:19 (so, strings) 05:01:32 but how the hell will i attach that to the up/down key :\ 05:02:31 problem is, the forward/backward keys already do a history (like in dos without doskey) 05:02:43 but i cant find the code that deals with this :\ 05:02:55 Hehehe 05:03:06 and its not OS, at least i dont think it is... 05:09:32 gah not in the source either. 05:13:08 If it isn't in the source, then it's either part of the underlying OS or an external library 05:13:18 i think this is part of hte os 05:13:28 since the ciforth i'm working with, is the windows port 05:13:37 cos i cant work with blockfiles in the bootable forth 05:13:46 yet.. 05:15:26 From what I've seen, ciForth has confusing source code 05:15:36 yep 05:15:43 but i'm working thru it 05:16:20 its suprisingly easy to alter 05:16:42 i'm not sure if that's normal, but all you have to do is alter the DFA of one word, with the DFA of another 05:16:50 and the whole forth adapts 05:16:58 Interesting 05:17:21 is that normal? 05:17:33 cos i thought the compiler compiled xt's 05:17:35 not dfa's 05:17:42 What threading model does it use? 05:17:51 odd one. most words are threaded 05:18:05 sometimes i dont understand why a word is CODE, and another isnt 05:18:07 1+ is threaded 05:18:54 +! is CODE 05:19:06 but most of the words are threaded 05:19:22 which makes it much easier to understand 05:19:46 I write almost all words in Forth, unless code is easier 05:19:53 Threaded code is nice :-) 05:20:10 yep 05:20:30 but still, is it regular that you can alter a word by replacing its DFA? 05:20:49 in such way that the whole forth adapts to the new word, not just words that are defined afterwards... 05:21:23 according to his source, this is called revectoring, i think 05:21:27 I know that that can be done under Token threading; and I *think* it works that way if you're using Indirect threading 05:21:37 Right 05:21:41 oh ok, neat 05:21:45 :) 05:22:06 but that would also indicate that any CALL in threaded words do a double fetch, doesnt it? 05:22:21 first to get the DFA field, then the actual data... 05:22:37 Probably 05:22:59 hm. i guess its speed vs adaptability 05:23:24 lets see if i can hook into that arrowkey :0 05:23:33 :-) 05:23:34 i already turned the system case insensitive 05:23:46 while preserving case 05:23:47 Very good 05:24:12 pity you cant "expand" words 05:24:28 I'd like to make RetroForth 7 case insensitive, but I'm not sure if I'll get around to it 05:24:43 What do you mean by "expand"? 05:25:08 i merely hooked into (WORD), which was called by all the evaluate words, and passed the string on to UPPER, which makes the string uppercase 05:25:41 well, lets say . prints the number, and i want it to save this number in a table as well. i'd have to redefine . 05:25:57 instead of just pasting some code after it 05:26:07 but i was just thinking, you can ofcourse do it threaded 05:26:31 the way i do it now, is first i backup the original DFA of a word i'm altering 05:26:43 ; (WORD)ORG ; 05:26:59 ' (WORD) >DFA @ ' (WORD)ORG >DFA ! 05:27:21 that copies the dfa of (WORD) to (WORD)ORG ,so (WORD)ORG does now exactly the same as (WORD) 05:27:43 then i take the new word i defined, (WORD)ALT ,and put its dfa into that of (WORD) 05:27:54 ' (WORD)ALT >DFA @ ' (WORD) ! 05:28:09 and now any word that calls (WORD), calls my (WORD)ALT instead 05:28:33 and the process is reversable since the actual high level code is never lost 05:29:28 * qFox now hopes the arrowkeys are not simply "out of ciforth's reach" 05:31:11 hmm the bootable version sees all the arrowkeys as char 224 :\ 05:31:20 which he turns into a tick ' 05:31:52 werent those keys 2 bytes? 05:32:04 up down left right ctrl alt etc 05:32:18 I think so 05:33:00 http://my.execpc.com/~geezer/osd/kbd/us-2.txt for a scancode reference 05:33:18 grmbl then i'd have to alter the source to get arrowkeys :\ 05:33:51 I have to modify RetroForth's source to be able to use 'KEY' from within Forth :-( 05:36:00 well, the only real keyboard input handler ciforth has, is (ACCEPT) 05:36:13 and i dont think those keys are registered by it :( 05:40:22 Well, I'm going to go (time for bed...) 05:40:29 heh, cya 05:40:33 cya 05:40:35 --- quit: crc ("http://www.retroforth.org/dev/beta_releases/retroforth-7.beta4.tar.gz") 05:47:47 : ACCEPT ( adr count -- n ) (ACCEPT) 2SWAP ROT MIN DUP >R MOVE R> ; \ Transfer at most count characters from the terminal to address, until a forthkey(RET) is received. The backspace key on the standard PC keyboard layout is used to delete characters, without involvement of Forth, so changing RUBOUT has no effect. Other editing keys such as forthkey(F3) and cursor keys probably work as usual with a console application. Note that excess characters 05:47:54 gahhhhhhhhhhhhhhh >:( 05:48:23 this ciforth isnt working in a continuous loop, instead it merely waits for an enter to be pressed. 05:48:33 perhaps the bootable forth does check each char 05:52:40 --- join: wossname (~wossname@HSE-MTL-ppp77286.qc.sympatico.ca) joined #forth 06:01:27 bah, the bootcode does check for it. 06:12:25 --- quit: Topaz (Remote closed the connection) 06:13:32 --- join: Topaz (~top@spc1-horn1-6-0-cust217.cosh.broadband.ntl.com) joined #forth 06:20:59 --- join: O3BEPH (~z@212.34.52.140) joined #forth 06:21:32 --- nick: O3BEPH -> Serg 06:51:33 --- join: jdrake (irc_user@CPE00045afdd0e8-CM014410113717.cpe.net.cable.rogers.com) joined #forth 07:02:35 --- quit: Serg () 07:03:13 --- quit: ChanServ (kornbluth.freenode.net irc.freenode.net) 07:03:13 --- quit: skylan (kornbluth.freenode.net irc.freenode.net) 07:03:13 --- quit: ianp (kornbluth.freenode.net irc.freenode.net) 07:03:13 --- quit: Topaz (kornbluth.freenode.net irc.freenode.net) 07:03:13 --- quit: aum (kornbluth.freenode.net irc.freenode.net) 07:03:14 --- quit: fridge_ (kornbluth.freenode.net irc.freenode.net) 07:03:14 --- quit: Klaw (kornbluth.freenode.net irc.freenode.net) 07:03:14 --- quit: slava (kornbluth.freenode.net irc.freenode.net) 07:03:15 --- quit: kuvos (kornbluth.freenode.net irc.freenode.net) 07:03:15 --- quit: madgarden (kornbluth.freenode.net irc.freenode.net) 07:03:30 there we go again 07:03:44 lol 07:05:56 Shit 07:08:25 Freenode is going to die soon, it seems ;) 07:08:25 All that netsplitting can't be healthy 07:08:25 It's like if I'd just lose my kidneys and my heart once in a while 07:09:53 yeah they seem to be heavily under attack 07:14:44 --- join: ChanServ (ChanServ@services.) joined #forth 07:14:44 --- join: Topaz (~top@spc1-horn1-6-0-cust217.cosh.broadband.ntl.com) joined #forth 07:14:44 --- join: aum (~aum@port-204-54-210.fastadsl.net.nz) joined #forth 07:14:44 --- join: slava (~slava@CPE00096ba44261-CM000e5cdfda14.cpe.net.cable.rogers.com) joined #forth 07:14:44 --- join: fridge_ (~fridge@dsl-203-113-230-147.NSW.netspace.net.au) joined #forth 07:14:44 --- join: skylan (~sjh@206.186.187.183) joined #forth 07:14:44 --- join: Klaw (~anonymous@ip68-228-92-218.oc.oc.cox.net) joined #forth 07:14:44 --- join: ianp (ian@inpuj.net) joined #forth 07:14:44 --- mode: irc.freenode.net set +o ChanServ 07:14:47 on the other hand, the notices keep claiming its a config error 07:15:46 --- join: randolm (wossname@HSE-MTL-ppp60657.qc.sympatico.ca) joined #forth 07:16:20 --- join: madgarden (~madgarden@Kitchener-HSE-ppp3576025.sympatico.ca) joined #forth 07:16:20 --- join: kuvos (C00K13S@cp12172-a.roose1.nb.home.nl) joined #forth 07:16:20 --- join: Fare (~rideau@cosey.crpgl.lu) joined #forth 07:18:22 --- quit: htp123 (Killed by zelazny.freenode.net (Nick collision)) 07:18:23 --- quit: I4_wrk (Killed by zelazny.freenode.net (Nick collision)) 07:18:27 --- log: started forth/04.07.07 07:18:27 --- join: clog_ (nef@bespin.org) joined #forth 07:18:27 --- topic: 'FORTH programming language. Info: http://forth.bespin.org/resources/introduction ANSI: http://www.taygeta.com/forth/dpans.htm FIG83: http://forth.sourceforge.net/standard/fst83/ Links: http://members.dsl-only.net/~loophog || Kestrel project weblog: http://www.falvotech.com/weblog || Note: this chan is publicly logged.' 07:18:27 --- topic: set by kc5tja on [Thu Jul 01 21:50:42 2004] 07:18:27 --- names: list (clog_ Fractal [Forth] onetom cmeme Robert clog SDO I4_wrk I440r lalalim htp123 SolarFire-| qFox wossname jdrake Fare kuvos madgarden) 07:20:14 --- join: ChanServ (ChanServ@services.) joined #forth 07:20:14 --- join: Topaz (~top@spc1-horn1-6-0-cust217.cosh.broadband.ntl.com) joined #forth 07:20:14 --- join: aum (~aum@port-204-54-210.fastadsl.net.nz) joined #forth 07:20:14 --- join: slava (~slava@CPE00096ba44261-CM000e5cdfda14.cpe.net.cable.rogers.com) joined #forth 07:20:14 --- join: fridge_ (~fridge@dsl-203-113-230-147.NSW.netspace.net.au) joined #forth 07:20:14 --- join: skylan (~sjh@206.186.187.183) joined #forth 07:20:14 --- join: Klaw (~anonymous@ip68-228-92-218.oc.oc.cox.net) joined #forth 07:20:14 --- join: ianp (ian@inpuj.net) joined #forth 07:20:14 --- mode: irc.freenode.net set +o ChanServ 07:21:22 --- join: randolm (wossname@HSE-MTL-ppp60657.qc.sympatico.ca) joined #forth 07:21:35 --- quit: htp123 (Killed by zelazny.freenode.net (Nick collision)) 07:21:35 --- quit: I4_wrk (Killed by zelazny.freenode.net (Nick collision)) 07:21:35 --- quit: clog (Killed by zelazny.freenode.net (Nick collision)) 07:21:35 --- quit: cmeme (Killed by zelazny.freenode.net (Nick collision)) 07:21:35 --- join: htp123 (~tehsux@S0106000d6151238b.gv.shawcable.net) joined #forth 07:21:35 --- nick: clog_ -> clog 07:21:44 --- join: cmeme (~cmeme@216.184.11.30.unused.swcp.com) joined #forth 07:22:03 --- quit: skylan (bear.freenode.net irc.freenode.net) 07:22:03 --- quit: ianp (bear.freenode.net irc.freenode.net) 07:22:36 --- join: I4_wrk (~mark4@168-215-246-243.gen.twtelecom.net) joined #forth 07:22:40 --- join: skylan (~sjh@206.186.187.183) joined #forth 07:22:40 --- join: ianp (ian@inpuj.net) joined #forth 07:26:46 --- quit: wossname (Connection timed out) 07:30:32 --- quit: jdrake (Read error: 110 (Connection timed out)) 07:32:36 --- join: jdrake (irc_user@CPE00045afdd0e8-CM014410113717.cpe.net.cable.rogers.com) joined #forth 07:46:12 --- join: warpzero (~warpzero@mi093.dn188.umontana.edu) joined #forth 08:15:20 --- join: skylan_ (~sjh@vickesh01-4513.tbaytel.net) joined #forth 08:15:59 kuvos, Falkazz, and TomSwift [23/1138] have team battled Argo, phweak, and Levi- [79/1317] and lost! 08:16:00 hahaha 08:16:56 i can't access this journal because my college is unfit for subscription :-/ 08:17:05 $30 / article they're charging without one 08:17:16 BLeh 08:17:21 and BLEH 08:17:22 :| 08:18:34 --- quit: skylan_ (Read error: 104 (Connection reset by peer)) 08:24:08 --- join: skylan_ (~sjh@vickesh01-4466.tbaytel.net) joined #forth 08:40:26 --- quit: skylan (Connection timed out) 08:54:03 wow 08:54:14 PostgreSQL really is better! 08:54:41 we've migrated all our systems across in the last year 08:54:45 from mysql, that is 08:56:01 --- join: tucknip (~Huck@170.141.109.33) joined #forth 08:56:13 dude 08:56:16 views 08:56:17 amazing 08:59:18 hm what was that mysql VS postgres thing again 08:59:46 mysql was good at high number of threads but low load, while postgres was good at high load but not so good at high number of threads? 09:00:12 and one of the two crashed relatively much more then the other, but i'm not sure which of the two 09:01:43 mysql is simpler and faster 09:01:51 but its missing lots of great SQL 09:02:13 mysql is good if you have like one table that you need to scream 09:02:40 but postgres has stuff like views, referential keys, etc. 09:02:51 --- quit: jdrake (Read error: 110 (Connection timed out)) 09:02:56 stored procedures i guess 09:03:00 but i've never used them 09:03:04 yeah, i had to do a comparison on the both for school last year 09:03:35 including installation of postgres under linux and running it, we made a database connection to a webserver with php running on a different computer 09:03:48 thing is, the lesson was linux 09:03:55 personally i don't think that php is a good language for database interaction 09:04:02 and by the end, it seemed more that our grade was decided on our leetness on having php running on postgres 09:04:20 (the class was.... well not very advanced, teachers was impressed easy :) 09:05:25 well no, the original assignment was to create an odbc database connection 09:05:26 php seems quite popular 09:05:34 but really, screw access 09:05:54 the thing with php is 09:06:06 in a high-load envirment it kindof sucks 09:06:21 well its fairly easy to use 09:06:26 well 09:06:34 yeah but take a page that generates from a query 09:06:46 it has to connect to the database every time and results are not cached 09:06:57 im not even sure if mod_php caches its parsing of php pages 09:07:14 yeah pages can get heavy when not designed properly 09:07:25 whereas with a mod_perl system 09:07:26 heh we ran some tests, on the postgres setup we had there 09:07:34 have a simple page with a single query 09:07:37 you can keep the db connection alive 09:07:38 of about 10000 hits 09:07:40 cache 09:07:45 and press f5 repeatingly 09:07:49 and etc... 09:07:52 server load flew thru the roof :p 09:08:03 but mainly the webservers, not so much the postgresserver 09:08:20 but we used iis i believe 09:08:24 hahaha 09:08:30 (i didnt setup the webserver :) 09:08:35 well back to work 09:22:18 --- join: Murrlin (murr@dialup-207-218-234-78.ev1.net) joined #forth 09:25:28 --- quit: aum (Read error: 113 (No route to host)) 09:27:25 --- quit: Murrlin ("Mischief managed! ....Nox.") 09:29:15 --- join: aum (~aum@port-204-54-210.fastadsl.net.nz) joined #forth 10:04:21 --- join: Herkamire (~jason@h000094d30ba2.ne.client2.attbi.com) joined #forth 10:18:05 --- join: Tomasu (~moose@d66-222-216-222.abhsia.telus.net) joined #forth 10:25:08 hmmm ok question. in 300x200 the video segment is at 0a000h, how do i target this segment in forth, without using asm (or any of the registers directly)? 10:25:22 oh gone 10:25:50 Heh. 10:26:11 "How do I kick a ball without touching it?" 10:27:36 haha robert 10:27:40 you made a funny 10:30:43 you ask someone who does it for you 10:37:03 /kick? 10:38:22 Fare: Hey, long time no see... You're pretty quiet in here. 10:43:20 most of the time on #lisp 10:43:25 #tunes is lethargic 10:43:40 Topaz: kick? 10:44:10 I left #tunes when I got wet. Too much water. 10:44:43 ? 10:44:45 eugh? 10:45:04 water pissed me off. 10:45:07 ok 10:45:37 And besides, I wasn't very interested in Tunes either. 11:00:51 fare is tunes an all but dead project ? 11:06:51 o dear 11:07:04 the netherlands are now ehm, leading the EU 11:07:11 for like a day? 11:07:20 and already "we're" planning to change something 11:07:54 and of course, its to save money 11:08:04 gah. 11:09:32 anyways 11:10:00 Robert> serious though, how can i address this segment from forth? 11:10:44 There can obviously be no standard way 11:10:53 So you HAVE to RTFM or write it yourself. 11:11:00 no fair 11:11:07 :) 11:12:51 mumble 11:13:06 : FARMOVE ( faradr1 faradr2 n -- ) CODE ; \ Move count bytes beginning at faraddr1 to faraddr2. Segments that are zero are replaced by defaults: data segment selector for source, extra segment selector for destination. Copying is done from low to high offset, so there may be memory propagating. This is not easily seen from the _SEGMENT_'s{}_PROTECTED_({{, particularly not so in protected mode}}). As the Intel 86-family is byte-addressing there are 11:13:52 See? 11:13:55 Not so hard. 11:14:04 what is defined as a far adr? 11:14:09 segment adr ? 11:14:17 Data in another segment. 11:14:23 well yeah i mean 11:14:27 stack comments 11:14:46 adr1 adr2 , 1=segment 2=adr ? 11:14:46 --- join: Serg (~z@193.201.231.126) joined #forth 11:14:50 Oh, like that.. not sure. Check the source of the word 11:14:56 meh 11:14:57 Privet Serg 11:15:01 hi ! 11:15:23 hm 11:15:24 POP ECX ;count 11:15:24 POP EDI ;dest 11:15:24 POP EDX 11:15:28 11:15:31 POP ESI ;source 11:15:32 POP EDX 11:15:51 but 11:15:59 thats looks more like, adr segment 11:16:13 adr1 seg1 adr2 seg2 count 11:22:57 --- join: Sonarman (~matt@adsl-63-196-0-187.dsl.snfc21.pacbell.net) joined #forth 11:26:16 robert you have the latest isforth right ? 11:26:30 when you run it what version does it tell you it is ? 11:27:19 1.14b 11:27:28 oopts 11:27:33 lol 11:27:46 i think its supposed to say 1.15b isnt it? 11:27:49 you forgot to change the most important part :P 11:27:58 lol 11:28:21 Uhm 11:28:39 I don't think this is 1.15b 11:28:45 * Robert checks the site 11:28:54 the tgz on the site is 1.15b 11:29:05 but does it SAY that when you run it lol 11:29:41 Hehe 11:29:54 It's easier to do it the MS way you know, update the version nr and nothing else ;) 11:30:09 hehe 11:30:40 lol 11:30:48 thats not what they do 11:30:53 first they add more bugs 11:30:59 Hehe 11:30:59 then they bump the version number 11:31:59 Ah... I remember the last IsForth I downloaded 11:32:08 It had some bug that made it unable to compile :P 11:32:16 what bug 11:32:19 Sources were in the wrong directories 11:32:31 err try 1.15b 11:32:31 and then they take out a couple of the do-nothing loops they added so that they can say it's faster 11:32:41 Yeah, it worked. Just downloaded it. 11:32:59 well does it say 1.15b or what lol 11:33:34 I4_wrk: Would you stab me for adding SDL bindings (or a similar library) to IsForth? 11:33:46 So I can do more than ASCII art ;) 11:34:06 you add whatever you want lol 11:34:14 after you write the resolver :P 11:34:36 * Robert hides again 11:34:57 Hmm.. but anyway, how do I find out what the structures REALLY look? 11:35:01 ASCII AAAAARRRRTTTT!! 11:35:09 After gcc starts messing them up 11:35:22 damnit, how do i figure out what segment my forth is running in :\ 11:35:37 which structures 11:35:40 oh the dns stuff ? 11:35:49 qFox: "push cs" and then it should be on the stack ;) 11:35:53 get the book dns & bind :) 11:35:58 No! 11:36:06 i forgot how powerful SQL really is 11:36:07 Structures, as in C structs in general 11:36:38 http://rdos.net/cvs/viewcvs.cgi/rdos/kernel/os/dns.asm?annotate=1.6&only_with_tag=HEAD 11:36:53 dns packets? 11:37:10 dns queries and answers are described in detail in the rfc 11:39:22 I wrote a dns resolver once 11:39:42 I didn't finish it, but it worked when the server replied with the ip address as the first answer 11:39:42 wheres Julian Fondren ? 11:39:51 cleversomething or other was his nickname 11:40:55 --- quit: Serg (Read error: 104 (Connection reset by peer)) 11:41:02 I4_wrk: he also went by ayrineu 11:41:18 ohhh 11:41:29 i think ive seen him in here recently havent i ? 11:46:45 didnt he get into a fight with kc5tja? 11:46:48 or fight... 11:46:50 argument 11:47:38 whats a good FREE web based email ? 11:48:07 yahoo just increased to 100mb space with 10mb attachments 11:48:23 lets see if it upgraded their spamfilters as well... 11:48:37 no. not yahoo 11:48:39 not lycos 11:48:57 and i suppose hotmail is out of the question as well :p 11:50:03 no google ... why ??? No pop-up ads. No untargeted banners. <--- 11:50:16 how about NO FUCKING ad's at all 11:50:29 I4_wrk: what do you expect for free? 11:50:55 there's plenty of places that will give you email with no ads if you pay 11:51:13 coorection: it was ayrnieu not ayrineu 11:51:37 a.k.a. cleverjulian 11:52:06 does bash totally *(@#&$-up when you enter commands that are longer than the screen width? 11:52:12 no adds and freemail? "does the sun always shine in your world?" 11:52:16 or is this just a special gift just for me? 11:52:25 I'm so #*&$# sick of it 11:52:25 Herkamire: no, i've been blessed with it too 11:52:33 WTF??? 11:52:55 I've been putting up with this for years. Bash is supposed to be this great shell. 11:53:01 hi 11:53:02 it's got loads of features 11:53:19 just right a herkforth replacement :) 11:53:22 *write 11:53:35 but it can't let you enter a command that longer than your screen and see it at the same time (let alone see anything meaningful when you try to edit it 11:54:14 herkforth works great 11:54:24 it doesn't run unix commands though, it runs herkforth words. 11:55:47 Herkamire, can it though? do you have exec()? 11:55:56 add a system()-like word 11:55:56 i want to add a 'shell escape' parsing word for interactive use in factor 11:55:59 so you do RUN: ls 11:56:00 or something 11:56:05 as well as "ls" run 11:56:06 for scripted 11:56:36 slava: no 11:57:47 * Tomasu is away: gots to go 12:00:17 I have no interest in running system commands from herkforth 12:07:26 Sonarman: I asked about in in #bash... here's the deal, in your prompt ($PS1) any escape sequences or whatever in there than's not printable you need to enclose in \[ and \] 12:07:39 so bash knows they will not take up a cell on the display 12:08:03 so if you have say ^V^O in there to make it use the normal font, then you need to put in \[^V^O\] 12:15:02 what the hell is a brain damaged string? 12:18:46 lol 12:24:56 Herkamire: awesome. thanks! 12:25:14 qFox: hehe. where did you read of a brain damaged string? 12:27:38 doc of ciforth, trying to discover how to get the segment of dictionary space 12:27:42 whoa. my PS1 looks like... hungarian 12:27:46 what is it? 12:28:19 qFox: maybe it's an asciiz uncounted string 12:28:38 oh is that what it is? 12:28:51 the two arent related, i just saw it standing there 12:29:25 i just want to copy some data from the dictionary space to the video segment :( 12:30:58 its appearantly not the datasegment, because that results in a gpf from XP 12:33:09 es fs or gs ? 12:33:15 my! 12:33:22 people still writing 16-bit DOS code 12:33:34 get over it, guys -- it's over -- and rightly so 12:33:47 ar 12:33:58 i dont have much choice do i 12:34:10 uh? of course you have 12:34:29 I mean, for $150, I bought this sweet ARM PDA 12:34:34 fine, get me a graphical resolution 12:34:38 more powerful than any MSDOS machine 12:34:51 oh sure, let me see if i can find some cash in my empty pockets >:( 12:34:56 fare have you written a forth for it yet ??? :) 12:35:03 qFox: even FROTH has VGA access -- and that was long ago 12:35:22 I4_wrk: not really. I'm trying to get the linux kernel to recognize PCMCIA 12:35:29 oh 12:35:32 (it does in kernel 2.4, not in kernel 2.6) 12:35:32 which kernel 12:35:38 dont use ANY of the kernel modules 12:35:39 --- quit: randolm (Read error: 104 (Connection reset by peer)) 12:35:50 (2.4 has limitations -- and IF kernel 2.6 works, then I can buy a wireless card) 12:35:55 just enable pcmcia and then install the package 12:36:04 Herkamire: it's working great now. i'm glad you asked in #bash 12:36:13 I don't use the kernel modules --- but I can't get pcmcia to work in 2.6 right yet 12:36:26 getting the interrupt controller right was a PITA 12:36:43 Sonarman: me too... I feel bad that I didn't along time ago, I can't tell you how many times that has been annoying 12:36:51 and even now, it complains about "spurious interrupts" instead of just dropping them 12:36:58 --- join: jdrake (irc_user@CPE00045afdd0e8-CM014410113717.cpe.net.cable.rogers.com) joined #forth 12:37:06 Herkamire: yes 12:37:20 my, I wish the kernel were in FORTH -- so I could hack it interactively instead of doing that horrible compile-reboot-crash cycle 12:37:26 install pcmcia-cs 12:37:31 (which cycle goes through -- shudder -- wince) 12:37:52 is this on a laptop ? 12:37:53 I do have pcmcia-cs installed. The problem is in the kernel. 2.4 drivers don't port to 2.6 as is 12:37:58 sublaptop 12:38:03 oh 12:38:06 jornada820.sf.net 12:42:06 --- join: mur (~mur@mgw2.uiah.fi) joined #forth 12:47:30 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 12:50:00 tathi - you done yet ?? heheh 12:50:06 * I4_wrk cracks the whip 12:51:51 --- join: Sonarman_ (~matt@adsl-64-171-254-117.dsl.snfc21.pacbell.net) joined #forth 12:52:37 I4_wrk: Nope. Around Tuesday is kind of crazy for me. 12:53:07 I usually work 6-2:30 Tue-Thurs. 12:53:20 And I often bike to work, so then I get up around 4:30 or so. 12:53:41 And Tuesday night I play volleyball from 7:30 until 11 or so. 12:53:53 Not much sleep there :) 12:54:44 Actually, I just have syscalls.1, vocabs.1, and the rest of memory.1 to do. 12:56:53 --- quit: Sonarman (Read error: 110 (Connection timed out)) 12:58:00 OK, here's a question for everybody: my youngest brother (Ross) has been playing with Game Maker. (http://www.gamemaker.nl) 12:58:11 But it's apparently kind of buggy, and he's getting frustrated with it. 12:58:37 He certainly has the mentality to be a programmer, but right now he's mostly an artist. 12:58:44 So I'm wondering where to point him. 12:59:17 I just said PyGame off the top of my head, so he's playing with that ATM. 12:59:23 But I'm wondering if there's something better. 13:02:38 GotM 13:02:43 :) 13:03:04 I don't know any game creation programs 13:03:17 but GotM is always looking for artists to help with existing games 13:04:53 well, I wasn't necessarily thinking game creation programs. 13:04:56 --- quit: Fare () 13:05:05 But a programming language with the facilities to create something simple quickly. 13:08:47 I wish there were more forths with graphics capabilities 13:09:07 yeah. 13:09:22 I keep thinking about writing one in C with SDL support. 13:09:25 Or something. 13:18:28 --- join: T0paz (~top@spc1-horn1-6-0-cust217.cosh.broadband.ntl.com) joined #forth 13:20:03 --- quit: Topaz (Read error: 110 (Connection timed out)) 13:40:29 how far short does C+SDL fall? 13:40:48 just need a sprite engine and something to tile backgrounds? 13:41:48 --- join: Research (~Research@12-222-128-22.client.insightBB.com) joined #forth 13:41:52 I just don't much like the idea of C as a first programming language. 13:42:03 heh 13:42:15 yeah 13:42:25 C gave me lots of funny ideas about how computers work 13:42:52 in C i find myself obsessed with the optimisation far more than the program logic 13:43:06 T0paz: yeah. 13:43:16 So I guess we'll see how Python goes. 13:43:17 which is slightly strange, given that i rarely care the slightest about effiency in python, which is vastly slower already ;) 13:43:44 though in python there's usually one clear way of doing something 13:43:59 whereas in C there are vast numbers of ways, varying from nonobvious to almost PERL-like :D 13:44:54 --- quit: Sonarman_ ("leaving") 13:49:39 err...PERL-like is a bad thing? 13:49:51 i.e. "obvious" isn't anywhere in that spectrum? 13:51:03 haha, well 13:51:17 not that I disagree or anything. 13:51:35 C doesn't really compare to python in algorithm-expressibility :) 13:51:55 no. 14:09:41 --- quit: I4_wrk (Read error: 104 (Connection reset by peer)) 14:10:16 --- join: I4_wrk (~mark4@168-215-246-243.gen.twtelecom.net) joined #forth 15:02:21 --- quit: warpzero ("Tried to warn you about Chino and Daddy Gee, but I can't seem to get to you through the U.S. Mail.") 15:12:17 --- quit: tathi ("leaving") 15:13:07 * Tomasu is back (gone 03:15:19) 15:13:40 i dont get it. what use is a farfetch and a farstore if its segment is only 16bit... 15:16:16 --- part: tucknip left #forth 15:24:37 lol 15:25:14 tell me :\ 15:26:31 how do i read/write from the segment A000 if i only have a 16bit:32bit farfetch/store 15:26:32 * Herkamire tries to thnink of some farfetched joke... 15:27:32 heh heh 15:27:48 err you mean how does es:xxxx translate into a physical address ? 15:28:32 a000:0000 is exactly the same address as 9fff:000f 15:28:35 :) 15:29:10 isnt es 32bit? 15:29:13 er no 15:29:14 oh 15:29:16 but 15:29:18 :\ 15:29:29 a000:0000 = 9fff:0010 = 9ffe:0020 15:29:31 etc etc 15:29:44 but thats still 32bit? 15:29:47 no 15:30:02 its not a 32 bit address 15:30:08 let me give a better example 15:30:10 factor web site has moved http://factor.sourceforge.net/ 15:30:38 0001:0000 is the same address as 0000:0010 15:30:54 segment 1 offset 0 is the same as segment 0 offset 16 15:31:19 each segment address references 16 bytes 15:31:29 ok, so if i want to address 0 of segment A000 with FS:EDX , it should be... 15:31:34 0002:0000 is 0000:0020 15:31:51 er your working with flat real mode ? 15:31:58 i honestly dont know 15:32:04 lol 15:32:07 POP EBX ;MEM LOC 15:32:07 POP FS ;SEG REG VAL 15:32:07 MOV EBX,[FS:EBX] 15:32:16 you cant do that 15:32:17 i'm working in native forth 15:32:22 THATS WHAT ITS DOING 15:32:23 #$@%&($*%(#@%*)(#@*$(!#@ 15:32:27 argh 15:32:41 either he is in protected mode 15:32:48 in which case FS is not a segment register 15:32:50 its a selector 15:32:51 can a protected mode cause a reboot? 15:33:00 or its flat real mode 15:33:52 i really dont know, and dont know how to tell. you have the source if you care to look. 15:34:11 look at L@ and L! ,the farfetch/store 15:34:39 doing something wrong causes an instant reboot btw 15:35:00 even when just reading 15:35:14 --- join: I440r_ (~mark4@168-215-246-243.gen.twtelecom.net) joined #forth 15:35:50 i bet ebx is never larger than ffff 15:35:55 and he could be doing fs:bx instead 15:36:07 if he is in real mode thats exactly what he SHOULD be using 15:36:18 --- nick: skylan_ -> skylan 15:36:27 because every instance of EBX is going to be encoded with a 0x66 in front of it 15:36:56 the instruction encodings for mov ax, 1 and mov eax, 1 are identical 15:37:05 by the look of it, its protected mode 15:37:20 ok then he should not be using ANY selectors 15:37:28 fs:xxxx is wrong 15:37:43 or bad 15:38:07 ... i dont know what it is. i just want to address the video segment. why is that so damned hard 15:38:12 it ought to be piss 15:38:34 theres a formula for translating from segment:offset to physical address 15:38:47 shift seg reg right 4 and add to offset ? 15:38:50 ierr i cant remember 15:39:44 alright, but are you perhaps able to tell me what parameters to supply to this? 15:39:45 L@ 15:39:45 STACKEFFECT: faraddr --- n 15:40:04 if i wanted to read from adr 0 in seg A000 15:40:24 i cant even find a freaking decription of what faraddr should look like 15:40:42 i would need to study the code myself heh 15:40:44 but this is the CODE 15:40:45 POP EBX ;MEM LOC 15:40:45 POP FS ;SEG REG VAL 15:40:45 MOV EBX,[FS:EBX] 15:40:45 PUSH EBX 15:41:01 that HAS to be flat real mode 15:41:07 and fs points to 0a000h 15:41:14 and ebx is NEVER above 0000ffff 15:41:44 but isnt A000 a 32bit number? 15:41:52 its a segment 15:42:00 the video memory is in segment a000 15:42:01 but 32bit no? 15:42:04 aye 15:42:05 NO!!! 15:42:27 hehe 15:42:42 segmented memory was invented by someone with a fragmented brain 15:42:49 lol 15:43:13 just trust that ebx though 32 bits is NEVER used to reference an offset above 16 bits :) 15:43:31 ok, lets asume that it is indeed flat real mode, what parms should i supply for faraddr? 15:43:35 the stack comment would make more sense if it didnt show "faraddr" as being ONE item 15:43:36 its two 15:43:49 l@ ( seg off --- n ) 15:43:53 yes, i did figure that 15:43:56 does that make sense 15:44:00 but an example? 15:44:10 $a000 0 l@ 15:44:11 that i can test :) 15:44:19 ok sec 15:44:22 see if it reboots 15:44:30 fetches the 0th why would it 15:44:45 I440r_: Does pop fs use 16 bits or does it add 4 to esp anyway? 15:44:47 it reboots. 15:44:49 fetch the 0th long word of video memory 15:45:21 robert my guess is that in real mode a pop adds 2 to sp. in pmode it adds 4 15:45:30 as for flat real your guess is as good as mine 15:45:36 Hehehe 15:45:50 Sure it's 4b in pmode? 15:46:03 erm if you say pop ax no 15:46:05 your right 15:46:06 Maybe I should rtfm about that 15:46:14 pop ebx is a 4 byte ooeration 15:46:19 pop ax is a 2 byte operation 15:46:29 so pop fs is a 2 byte operation no mater what the mode would be my guess 15:47:04 yes 15:47:08 well, i'm not sure, but the source indicates that its in protected mode 15:47:11 Really? 15:47:23 and, it reboots when i try A000 0 L@ 15:47:28 From the NASM manual it looks like it's 4 bytes in pmode. 15:47:47 perl -e 'print $i=pack (c5,*41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);' 15:48:01 try doing an lc@ 15:48:07 qFox: What about 0 a0000 l@ ? 15:48:17 maybe you cant FETCH a 32 bit item from video memroy 15:48:24 no robert look at the pop order in the pasted code 15:48:25 Sure you can 15:48:40 I440r_: Yeah? 15:48:45 i know you cant write 32 bits at a time to video memory 15:48:53 rep stosd wont work for a clear screan 15:48:57 but rep stosw will 15:48:58 reboot as well 15:49:00 Huh? 15:49:02 Hmm 15:49:11 I've been doing rep stosd all the time 15:49:19 Never ran into any problems 15:49:35 hrm maybe its in a graphical mode you cant do that 15:49:40 not a atext mode 15:49:42 err yea 15:49:43 qFox: Can't you access it directly, a0000 @ ? 15:49:45 is this a text mode ? 15:49:50 Yeah 15:49:52 seems to be the case 15:50:00 text mode is b800 not a000 15:50:01 when i try the examples, it reboots 15:50:05 yeh 15:50:05 try $b800 0 l@ 15:50:11 but... ok 15:50:22 I440r_: Er, I meant the place where I used stosd 15:50:25 I440r_: Not his prog 15:50:36 i dont know but perhaps L@ is a reboot? :\ 15:50:37 robert the vga has an internal 32 bit bus 15:50:39 reboot as well 15:50:48 when you write a pixle in some modes your really just doing a DUMMY write 15:51:11 and one writing multiple pixles uses more of its internal bus to address the actual bits 15:51:28 a stosd can be 32 bits * 4 bitplanes 15:51:32 i.e. more than 32 bits :) 15:51:46 qfox that confuses me 15:51:55 ever thunked about emailing the author ? 15:51:57 --- quit: I4_wrk (Connection timed out) 15:52:02 i dont really understand why it's rebooting in the first place 15:52:08 me either 15:52:10 its "just" reading 15:52:14 in native 15:52:19 so who should care :\ 15:52:23 could be your reading a memory block you dont have access to read 15:52:31 in native mode? 15:52:36 does that forth have a cs@ to get the current code seg ? 15:52:40 try cs@ 0 l@ 15:52:43 sec 15:52:48 see if you can read the 0th dword of code seg 15:52:58 no CS 15:53:04 cs@ ? 15:53:17 nope 15:53:32 can you find out what your data seg is ? 15:53:35 only cs words are stack pointer related 15:53:39 no, i cant 15:53:48 do you per chance just happen to know ? 15:53:49 heh 15:53:49 i cant find any words related to it 15:53:53 nay :\ 15:53:59 can you do coded defs ? 15:54:03 you'd have to alter the source to get that to work 15:54:16 code cs@ push cs next end-code 15:54:16 yes i believe so, but i dont know the assembly syntax for this assembler 15:54:49 erm it would probably be 15:55:00 code cs@ cs: push next end-code 15:55:04 or something 15:56:58 I440r_: Hm, didn't know that.. (about VGA stuff) 15:57:15 no i think its more sophisticated (complicated) then that 15:57:28 ‘MOV, X| T| BX’| R| AX|’ 15:57:33 (example from docs) 15:58:30 --- quit: T0paz (Remote closed the connection) 15:58:34 oh god thats alberts assembler 15:58:36 EVIL lol 15:58:39 it is 15:58:48 damnit, how the hell... 15:58:59 thers only one person in the world who can make sense of that assembler 15:59:02 and thats not me lol 15:59:09 *sigh* 15:59:15 robert i did a HELL of alot of work with vga in the past hehe 15:59:26 i could write code that could blow up your monitor 15:59:30 Haha 15:59:42 OK, note to self: do not run VGA code from I440r_ :P 15:59:45 plus i had an absolute guaranteed method of testing weather you had a VGA or an EGA 15:59:46 heh 16:00:04 VGA in Forth or other langs? 16:00:07 every single program out at the time asked "are you sure you have an actual vga ?" 16:00:11 in asm 16:00:23 the ega and vga are 100% register compat 16:00:35 but some ega regs are read only, some are write only 16:00:38 others are read/write 16:00:45 ALL vga registers are read/write 16:00:52 pick any reg known to be read only 16:00:56 read it 16:01:00 try write a new value to it 16:01:05 if that succeeds you have a vga 16:01:13 write original value back 16:01:16 Heh. 16:01:29 So.. how many computers have EGA cards these days? ;) 16:01:35 err whats an ega ? 16:01:50 this was wayyyy back when 16:02:10 Yeah, I figured 16:02:20 would my problem be fixed if FS in that piece of code was changed to a different reg? 16:02:30 i can almost guarantee my vga mode $12 line drawing code are the fastest routines available for that video mode :) 16:02:36 or perhaps could the entire L@ L! code be changed 16:02:37 Probably not, qFox 16:02:37 no 16:02:43 err 16:02:44 ehr 16:02:50 what machine are you running this on 16:03:00 x86 laptop 16:03:02 I440r_: Hehehe, do you still have some of that stuff? 16:03:08 p200 or something i believe 16:03:27 * Robert <-- P200 :) 16:04:48 this sux 16:05:13 all i want is to play with graphics, and i cant even get to it >:( 16:05:59 robert maybe 16:06:16 on my ftp at home 16:06:22 ill zip it up and email it to ya 16:06:24 or dcc :) 16:06:50 That's be nice :) What lang? 16:07:23 ok. screw this. robert hurry up and make the forth bootable. 16:07:34 Hm? 16:07:38 i've had enough of this shit. fuck ciforth. 16:07:43 :D 16:07:55 I've got a simple little Forth that can boot from a floppy. 16:08:00 pmode 16:08:06 i'm gonna cut my losses and start over 16:08:15 Documentation (as in, you can open the source code from within the Forth) ;) 16:08:18 start with isforth :P 16:08:23 isforth is not bootable 16:08:23 Hehe,. 16:08:30 and ? 16:08:31 i need, i want a bootable forth 16:08:32 heh 16:08:43 linux is just the bios 16:08:44 robert.zizi.org/f.html <-- but I warn you, it is.. uhm.. well.. you'll notice. 16:08:52 lol 16:08:54 I440r_: Problem: he's a windows user. 16:08:55 i want a stand alone forth to expand, with no outer restrictions or things it could fuck up 16:09:22 qFox: That Forth DOES need some expanding. You're very welcome to contribute stuff. :D 16:09:37 * qFox is afraid he'll be spoiled now 16:09:46 And btw, I was "inspired" by IsForth, so it's basicaly a slim IsForth that can boot. 16:09:54 :) 16:09:56 Spoiled, why? 16:10:00 i dont really care, as long as there are no denotations 16:10:00 im honored 16:10:04 you thief! 16:10:04 hehe 16:10:05 I440r_: :D 16:10:14 spoiled by the "extended" wordset 16:10:20 i had bioscalls and everything 16:10:26 Extended wordset of what? 16:10:33 i dont know, all kinda things 16:10:35 nevermind 16:10:40 i'll bug you if i need anything :p 16:10:44 qfox you could have used bios calls to write to the video :) 16:10:45 :D 16:10:51 eh? 16:10:55 isnt that very slow? 16:11:00 :) 16:11:01 yes 16:11:03 Terribly slow 16:11:06 i have a full set of bios words 16:11:09 right 16:11:11 qFox: Did you get my Forth? ;) 16:11:12 so why would i want that? 16:11:21 Robert> slowly reading 16:11:23 outa here... 16:12:55 * Tomasu is away: store 16:13:47 4.01.01 the latest version? 16:13:47 qFox: Slowly reading what? 16:14:16 ugh, are those images up to date? :) 16:14:20 Ah, I guess so, yes... Maybe I did some bugfixes later. 16:14:26 I'll upload a new one in 10 sec 16:14:37 oki 16:14:45 * Tomasu is back (gone 00:01:49) 16:14:57 the sources would be for reference, the image to feed to my laptop :p 16:15:08 It's there now. 16:15:15 Get image-us btw 16:15:16 those are just the sources? 16:15:21 oki, is it up to date? 16:15:28 Unless you _really_ like Swedish kb layout :P 16:15:35 i _really_ dont 16:15:36 :p 16:15:55 The images? Well, image-us is pretty new, and the other shouldn't be too outdated. 16:16:18 That project is pretty dead, so... 16:16:29 oh 16:18:19 looks nice 16:18:33 is there a word that gets the list of words? 16:18:42 and is it CS? 16:19:20 CS? 16:19:38 And, uh, about the words... not really. They're in different dictionaries and all. 16:19:46 But that's a good First Project for you. :) 16:20:01 Printing all the words in a dictionary. 16:20:25 (no, don't be scared) 16:20:31 I'll hold your hand. 16:20:54 "yes i just seen terminator III" lol 16:21:36 thats good 16:21:42 there's no see word? 16:21:47 cs=case sensitive 16:21:53 Ah. Sure it is. 16:22:04 can you give me a simple layout of dict? 16:22:04 CS must be the most used two-letter acronym EVER. 16:22:10 aye :p 16:22:24 CounterStrike, CyberSex, Computer Science, "see you" (in Swedish), ... 16:22:41 Oh, and the segment register. 16:22:47 Code Segment. :) 16:22:52 Anyway... 16:23:02 A dict is nothing but an array of 64 pointers. 16:23:10 To word heders,. 16:23:17 so a dict is limited to 64 words? 16:23:20 No. 16:23:29 A word lookup is done like this... 16:23:38 (1) Get hash value of word 16:23:52 (2) start looking at dictionary[hash_value] 16:24:03 (3) Continue until you find the word, or word->next is NULL 16:24:27 --- join: foobar (fooboo@dialup-4.154.42.243.Dial1.Atlanta1.Level3.net) joined #forth 16:24:42 ok 16:24:50 but i actually meant dictionary entry header :\ 16:25:03 DEA CFA DFA etc 16:25:19 if its listed somewhere just say so and i'll go read :) 16:26:46 Ah. 16:26:50 Wait a sec 16:27:04 Prepare for an IsForth flashback 16:27:33 Hrm, check the macro in kernel/coreheader.asm 16:27:47 First a pointer back to the last defined word. 16:27:58 Then a pointer to the word body 16:28:01 got it 16:28:08 Then a flags byte, then the name 16:28:20 And after that, a pointer back to the start of the header. 16:29:48 previous word cell, cfa cell, ffa byte, nfa .... is an uncounted string?, and then a cell that points to the header again? 16:30:03 It's counted. 16:30:13 i mean, the first byte is the len 16:30:18 Right. 16:30:27 counted string for me is when the len is on the stack 16:30:34 uncounted when its still packed 16:30:42 anyways 16:30:53 will i be able to simply replace words? 16:31:00 "replace", how? 16:31:10 by replacing the data field adr 16:31:17 of the word, with another word 16:31:31 (even though there seems to be no dfa...) 16:32:42 Yes, you can. 16:32:47 DFA? 16:32:57 But already compiled words will not be affected. 16:33:03 and it will be immediately effective in the whole forth? 16:33:04 right 16:33:09 ok 16:33:18 What are you trying to do? 16:33:31 nothing yet 16:33:36 Hehe. 16:33:47 just trying to figure out if i can easily adjust it or not 16:33:51 Implement SEE if you want, or maybe a word to list words. 16:34:10 Easily adjusting == modifying hexadecimal instruction codes, right? ;) 16:34:13 i already discovered the toughness of implementing SEE, i'm cured for that for now 16:34:34 Good :) 16:34:41 But listing words might prove useful. 16:34:42 no, but perhaps i can change the actual code to call a different word instead 16:34:51 yes agreed 16:34:57 but by the look of that editor 16:35:07 you could cheat and just print the definitions as i saw them there 16:35:29 but first i want to create some kind of WORDS list, that'll print me all the words from a certain vocabulary 16:35:44 so for that i'll need the vocabulary/dictionary specific words please 16:35:45 :) 16:35:50 OK. 16:36:03 In dict.asm: 16:36:04 ; hash ( string -- hash*4 ) 16:37:25 no not quite what i meant 16:37:30 No? 16:37:36 do you have multiple vocabulary support? 16:37:39 Yes 16:37:51 where do i find the search order? 16:37:52 It's implemented in the core.f file you see in the editor 16:38:39 There's also a "last" variable (IsForth style, type "last" to get its value, "0 -> last" to set it to zero etc) 16:38:45 Pointing to the last compiled word 16:39:00 "dict" returns the current dictionary. 16:39:23 Note that there can be several dictionaries "open", but only one that new words are added to. 16:39:45 any constants to give that information? 16:39:59 ; >header ( code -- header ) 16:40:02 ; >body ( code -- body ) 16:40:05 ; >code ( header -- code ) 16:40:09 What info? 16:40:23 current dictionary where words are added too 16:40:24 to. 16:40:29 search order of dictionaries 16:40:32 etc 16:40:59 "dict" returns the current dict, yes. 16:41:04 k 16:41:29 Check the dictionary section in the core.f file, it includes the words for dealing with adding/using dictionaries. 16:41:44 And the drivers/editor code demonstrates how it's used in practice. 16:42:08 i need to create a list of words and their defs, if threaded, to give me an idea about the environment first 16:42:16 i dont suppose you have a wordlist? 16:43:29 Uhm... 16:43:41 Nope. :) 16:43:48 So implement a word-listing word. 16:44:10 thats like telling a blind guy to find a bookstore 16:44:13 :\ 16:44:18 Nope. 16:44:20 I'll help you 16:44:27 aye, and i'm the blind guy 16:44:29 :p 16:44:47 ok lets see 16:45:07 dude you dont even have decimal 16:45:13 Bah. 16:45:13 well. you do now 16:45:15 :) 16:45:18 That's for lamers. :P 16:45:42 : words ( dict -- ) 40 for dup words-list 4+ next drop ; 16:45:47 That would be the main loop. 16:45:55 ehr, i think i spoke too soon. even in base A it prints fffff :p 16:45:59 Then just print all words in each sub-list with words-list 16:46:05 :D 16:46:25 You do use a -> base right? 16:46:36 i locked it up!!!! :p 16:46:39 And NO CAPS. 16:46:40 heck no 16:46:44 A BASE ! 16:46:46 or 16:46:46 HAH 16:46:48 well i did lower 16:46:55 I don't use those variables. 16:46:56 dont tell me base is a constant.. 16:46:59 They're used like: 16:46:59 :| 16:47:08 wasnt kidding about being spoiled then 16:47:12 123 var x 16:47:18 x . 123 ok 16:47:24 321 -> x 16:47:28 x . 321 ok 16:47:29 See? 16:47:31 that's just bizarre 16:47:33 : var create (word) , ; ? 16:47:36 why did he do it like this 16:47:41 Who? 16:47:45 I440r 16:47:52 oh, : var create (word) 1 cells allot ; ? 16:47:56 You mean with vars? 16:48:23 I like it.. nice, short syntax, and optimization-friendly. 16:48:40 qFox: The definition should be in core.f 16:48:40 but... it doesnt even have decimal 16:48:48 Anyway... 16:48:59 ah ok 16:49:06 Hm. Do I have any looping constructs? 16:49:20 ye 16:49:24 Er, while-stuff I mean 16:49:32 nnnnnope i dont see a while 16:49:43 repeat and again are present 16:49:46 Oh. 16:50:12 no do either 16:50:13 Should do. Thanks for helping we with my Forth... 16:50:22 hrm well 16:50:35 it had better be some friendlier to me 16:50:59 *grrhmpf... spoiled...* 16:51:01 oki, can i get stack pointers and stuff? 16:51:03 aye 16:51:22 can i create .S ? it seems to lack it 16:51:44 Hmm... 16:52:10 . isn't enough for you? 16:52:11 :) 16:52:17 .s prints the stack 16:52:25 It does? 16:52:40 oh i already crashed it 16:52:45 :D 16:52:54 lol dont know how, was just . a few times ;) 16:53:18 Hehe 16:53:21 when i press ctrl-alt-del i get a KBC error on boot btw. 16:53:42 Not my problem. Get a new BIOS ;) 16:53:45 anyways, you dont seem to have depth, so am i to asume you have no stack related words? 16:53:52 pointers i mean 16:54:03 Well, uhm, not really. But you can easily add one. 16:54:16 you mean you can, it would require asm i think 16:54:22 Hehe 16:54:31 Remember I can build a new copy from over here ;) 16:54:35 aye 16:55:36 Look, you have r@ :) 16:55:46 So you can play with ONE of the stacks 16:55:48 haha 16:56:09 i asume you keep track of stack depth and a stack pointer in the background 16:56:40 so adding dsp@ dsp0 rsp@ rsp0 shouldnt be hard 16:56:58 they would allow one to implement DEPTH and .S 16:57:25 Guess so 16:57:43 push ebx 16:57:43 mov ebx,esp 16:57:43 next 16:57:44 Looks OK for s@ ? 16:57:48 start making a todo list ;) 16:58:23 hm ebx is your dat stack counter? 16:58:27 pointer i mena 16:59:14 ebx = TOS cache 17:00:05 Hmm.. 17:00:10 well, ds0 and rs0 can be constants, as the start of the stacks dont change (i think?) 17:00:27 In fact, I think you can already get the current stack top from the multitasking code. 17:01:28 You know this can (in theory ;) do multithreading, right? 17:01:48 hm, no 17:02:04 but i'm not familiar with the system 17:02:43 :) 17:03:11 Hmm... seems like that was a bit hard to find out. 17:04:27 --- join: jDoctor (~rex@pcp08550359pcs.manass01.va.comcast.net) joined #forth 17:04:37 hey who here knows factor? 17:04:58 I think slava might. 17:05:12 no duh. I think he's like gone doing something though 17:05:14 ehm robert? is this 16bit? 17:05:32 jDoctor: He was here 15 minutes ago. 17:05:35 qFox: No. 17:05:46 yah I was talkin to him like 5 min. ago. I guess i'll just wait 17:05:47 oh nvm 17:06:19 intresting 17:06:24 Oh. 17:06:29 I was wondering if the 'compare' word drops the two numbers it compares 17:06:35 you can crash your forth by reading enough values from the stack when there are none... 17:06:45 after a bunch of replies it just crashes 17:06:49 qFox: Blah, blah, blah... 17:06:52 :P 17:06:54 no, realy 17:07:01 underflow exploit 17:07:04 ^^ 17:07:05 Yeah, fix it if you want. 17:07:17 LOL L33T EXPLOITZ 4 TOTALLY UNPROTECTED SYSTEM 17:07:21 i'd really need stack pointers for that sir 17:07:34 hm I wander how many undeflows there are in m$ windows 17:07:55 they've just barely got the hang of watching for overflows 17:08:27 :) 17:08:35 brb 17:09:16 qFox: Cool, I think I got this working. 17:09:41 One of the ugliest hacks ever: 17:09:43 mov ebx,[proc_current] 17:09:43 mov ebx,[eax+proc_struct.stack] 17:09:43 add ebx,[ebx+mem_header_size+mem_header.size] 17:10:20 Having to go through the process manager and the memory manager internals to get the origin of the stack. 17:12:13 qFox: OK, download the new image-us 17:12:18 qFox: Implements s@ and sbase 17:12:47 : depth sbase s@ - 4/ ; 17:13:02 Well, more or less... might be one stack item off, but then just use 1+ or 1- 17:13:41 * Robert boots F 17:14:33 ...on a computer with 32 MB of video RAM, and 64 MB of main system RAM. :) 17:15:59 Er, oops. 17:16:03 sbase is...buggy. 17:23:55 OK, it's up now 17:24:04 oh 17:24:28 i just downloaded it hehe. that version says that an empty stack has 45180fce items ;) 17:24:46 (s@ - sbase should be 0 on a 0 stack) 17:25:09 btw call s@ dsp@ and call sbase dsp0 17:25:10 :D 17:25:15 data stack pointer 17:25:28 ... please :) 17:25:30 No, I won't... I have to recalculate the hashes manually for renaming them ;) 17:25:35 And, uhm... 17:25:37 eh 17:25:38 There's a slight problem. 17:25:41 oh... 17:25:56 There are 12(hex) words on the stack at boot, for some reason. 17:26:11 yes and going below them will crash you 17:26:18 Yep. 17:26:30 so if we have dsp@ and dsp0 implemented, we can do stack depth checks 17:26:32 Oh, btw 17:26:34 and stack underflow protection 17:26:38 I think I know (kinda) why. 17:26:55 Stack underflow protection == letting the stack have 16(dec) empty items. 17:26:58 I'll change that 17:27:37 yeh, stack underflow should be attempting to pop when the dsp = dsp0 17:27:50 Cool only 2 items left there. 17:27:57 I wonder where they're from. 17:28:07 Something's leaking I suspect... 17:28:09 you ought to know :D 17:28:13 Or maybe they're return addresses. 17:28:19 on a datastack? 17:28:33 you do have 2 stacks, dont ya? ;p 17:28:39 --- nick: SolarFire-| -> Solarfire 17:28:57 Data stack == hardware stack. 17:29:01 So hw return addresses 17:29:23 lets see, : depth s@ sbase - ; 17:29:31 oh 17:30:17 sir 17:30:24 have you assembled it with the correct keyboarD? 17:30:31 i can suddenly no longer create a colon 17:30:31 :p 17:30:52 huh 17:30:56 I'm sure. 17:30:58 colon and semi-colon are reversed 17:31:00 :s 17:31:03 Hmmm 17:31:04 other keys are normal 17:31:25 Is colon with or without shift? 17:31:30 with 17:31:32 but hold on 17:31:36 i think i need to rereboot 17:31:39 . is not printing 17:31:52 Colon with and semicolon without? That's crazy 17:32:05 Much better the other way round 17:32:43 no colon without 17:32:48 ehr 17:32:48 dude 17:32:53 shift=colon 17:32:56 hehe 17:33:34 Uhm, which should it be? 17:33:37 and its not funny. now i'm defining : depth s@ sbase - : 17:33:44 no shift = ; 17:33:46 shift = : 17:34:15 Fixed. 17:34:39 is your stack upwards or downwards? 17:34:45 i seem to be getting negative values 17:34:51 downwards. 17:34:57 It's the hw stack, DUH. 17:34:59 then i need to reverse it 17:35:03 :) 17:35:04 duh for you. 17:35:39 ps. why is it printing unsigned numbers? thats what (you probably dont) you have u. for 17:35:43 keymap-se -> keymap <--- got to love this way of changing keymaps :) 17:35:52 Ehm? 17:36:01 You say that as if pepole actually used negative numbers. 17:37:02 i'm just saying that F is not 17:37:03 :) 17:37:13 Hehe, well, that's another task for you ;) 17:37:35 well, s@ or sbase are not correct, unless you need to fetch sbase 17:37:49 with my def, depth was 28 17:37:52 Implement a signed . if you want 17:37:55 i popped 5 items 17:38:00 and depth was 14 17:38:28 : depth sbase s@ - 4/ ; 17:38:32 That's what you use? 17:38:45 not yet 17:38:48 hehe 17:38:59 i am so tired 17:39:07 Me too, going to bed soon. 17:39:21 It should be like 12 in the start... if you got the old image. Now it's just 2. 17:39:40 I wonder where they're from, but I won't bitch about it too much unless they're doing any damage ;) 17:40:23 well, theoretically i think they mean something is not working like intended 17:40:42 happy hunting though 17:40:42 :D 17:40:46 i'm going to bed 17:40:48 Yeah, right... 17:40:49 nite 17:40:53 Me too, soon :) Welterusten 17:40:58 --- quit: qFox ("meh ircii's netsplit detection appearantly sux ^^") 17:50:33 has slava ever talked about the number game example in factor here/ 17:50:34 ? 17:51:45 I haven't heard it. 17:52:29 I just sat and diagrammed the thing out. almost all of it. 17:52:35 http://thefiles.homelinux.com/pub/Rex/factor/numbers-game.jpeg 17:53:00 its like 10 lines of code 17:53:31 --- part: foobar left #forth 18:09:28 --- join: foobar (fooboo@dialup-4.153.65.170.Dial1.Atlanta1.Level3.net) joined #forth 18:25:20 --- nick: Tomasu -> TomasuDlrrp 18:30:37 * foobar wonders about onetom 18:39:16 onetom is asleep 18:40:07 --- part: foobar left #forth 18:50:17 --- quit: TomasuDlrrp (Read error: 60 (Operation timed out)) 18:50:48 --- join: TomasuDlrrp (~moose@d66-222-216-222.abhsia.telus.net) joined #forth 19:13:26 --- join: TheBlueWizard (TheBlueWiz@207.111.96.131) joined #forth 19:13:27 --- mode: ChanServ set +o TheBlueWizard 19:14:57 --- part: TheBlueWizard left #forth 20:04:06 --- join: doublec (~doublec@coretech.co.nz) joined #forth 20:30:56 arrrr 20:31:00 dependancy stuff is annoying 20:31:29 I just wrote some nifty code, but it depends on words not defined yet 20:31:55 (it's defined in a later block) 20:52:30 eh, it usually doesn't take that much time, but it's annoying 20:52:54 Herkamire: doesnt that mean you did things in teh wrong order? 20:53:15 no, it means I put some of my definitions in the wrong block 20:53:28 right now everything has to be all linear 20:54:40 I'm starting to think that compiling stuff in the right order is something the computer could do better than me 20:56:34 I am perfectly capable of getting my definitions in an order that dependancies are satisfied by compiling sequentially, but I've been thinking about it for a while, and I don't see the advantage of doing this myself 20:57:42 I plan to implement this (computer compiling dependancies for me) shortly after I start storing each definition seperately 20:57:50 which will be relatively soon. 20:58:04 --- quit: doublec ("Leaving") 20:58:29 I'm in the middle of writing code to handle such data 21:07:31 herkforth has a sort of "find next" 21:07:53 it finds the next occurence of the word under the cursor 21:59:20 Herkamire: is 'herkforth' your baby? 22:03:47 my main programming project 22:06:18 I've done all the programming except two words which I copied from tathi 22:06:31 what's the 'spin' of herkforth? 22:06:38 got a url? 22:06:38 (who pretty much implemented what it said in the CPU specs 22:06:54 http://herkamire.com/jason/herkforth 22:07:06 tokenized source like aha 22:07:09 displayed in colorforth 22:07:23 humane interface 22:07:44 address register from colorforth 22:07:45 minimal primitives set? 22:07:58 pretty small 22:08:06 my system to handle immediates 22:08:25 you might like to rethink the page theme - dark blue links on a black background is excruciating on LCD monitors 22:08:49 you can change it if you like 22:09:08 I had it purple, but someone else found it hard to read (possibly because of colorblindness) 22:09:39 http://herkamire.com/jason/style.css?edit 22:10:19 someone pointed me to an excellent forth called 'minforth' - totally minimal set of primitives in ansi c, everything else in forth - http://home.arcor.de/a.s.kochenburger/minforth.html 22:11:18 when I bootstrap from source, 8 words are defined 22:11:36 plus there's a branch table with 8 entries to handle the different colors 22:13:11 --- quit: I440r_ (Read error: 104 (Connection reset by peer)) 22:13:21 if you want to be silly about it, the only primitives you need are : , ; 22:13:44 --- join: I440r_ (~mark4@168-215-246-243.gen.twtelecom.net) joined #forth 22:15:31 I have an asm file to create the initial kernel used in the bootstrapping process. it essembles to 880bytes (including the 84byte ELF header) 22:16:19 keep in mind that all PPC instructions are 4 bytes, so that's 199 instructions 22:16:36 i'd try it out except i'm x86-only here 22:18:46 yeah, it's obscure, and it only runs under an obsure system (ppc linux) 22:19:14 I expect to get a lot more users once it's more complete, and runs as an OS on any newish Mac 22:19:26 Also I'll get it running under an emulator at some point. 22:26:04 minforth looks pretty cool 22:26:40 (from minforth page) "KISS (keep it simple, student)" 22:26:41 --- join: lalalim_ (~lalalim@p508ABA48.dip.t-dialin.net) joined #forth 22:26:51 anybody seen that definition before? 22:27:09 I've always heard "keep it simple, stupid" 22:31:06 trying to avoid insulting people herhaps 22:31:12 s/herhaps/perhaps/ 22:33:44 then don't say KISS... 22:34:36 --- quit: lalalim (Read error: 60 (Operation timed out)) 22:42:44 cool, minforth seems to work on my system. 22:43:44 --- join: onetom_ (~tom@novtan.bio.u-szeged.hu) joined #forth 22:43:58 --- quit: onetom (Read error: 104 (Connection reset by peer)) 22:47:10 if I put a valid string on the stack like the following, should 'type' be able to output it? 22:47:10 ficlStackPushPointer(ficlVmGetDataStack(vm), disp); 22:47:10 ficlStackPushInteger(ficlVmGetDataStack(vm), strlen(disp)); 22:53:18 jdrake: yes 22:54:28 : type ( address count -- ) 22:54:51 uh... minforth works. now what? 22:55:43 yet it doesn't output anything :-( 22:56:38 [0x0284d818 0]: 6 (0x00000006) 22:56:38 [0x0284d814 1]: 3818272 (0x003a4320) 22:56:42 sure enough it is there 22:57:15 but that looks like it is in the wrong order 22:58:34 are there printable chars at that address? 22:58:59 i don't know any way of finding out 22:59:17 unless i can get gdb to print what is at that address 22:59:26 but I do not know how 22:59:26 @ . 22:59:40 will that do just one char? 22:59:47 no, one cell 22:59:52 c@ . will do one char 23:00:15 if you have the count on the top of the stack, do: over c@ . 23:00:16 --- join: SolarFire-| (SolarFire@pD9E59774.dip.t-dialin.net) joined #forth 23:01:08 Program received signal: "EXC_BAD_ACCESS". 23:01:49 if I could figure out a way to get ficl to take a string, i might get it to take something for evaluation 23:07:56 --- quit: Solarfire (Read error: 60 (Operation timed out)) 23:07:59 night 23:25:14 --- quit: jdrake (Read error: 110 (Connection timed out)) 23:59:59 --- log: ended forth/04.07.07