00:00:00 --- log: started retro/09.11.30 00:01:27 --- join: virl (n=virl__@chello062178085149.1.12.vie.surfer.at) joined #retro 00:03:18 I'll be fine as soon as I learn to whom I surrender. 08:09:00 --- join: Mat2 (i=57a20890@gateway/web/freenode/x-yjlgsxsvqwaeumqv) joined #retro 08:11:25 --- quit: Mat2 (Client Quit) 09:59:06 --- quit: sixforty ("ircII+tkirc2") 13:28:39 --- join: Mat2 (i=50eff25f@gateway/web/freenode/x-tuoohmapcsovgqpv) joined #retro 13:29:02 hi ! 13:35:07 --- quit: Mat2 (Ping timeout: 180 seconds) 16:51:35 --- quit: virl (Remote closed the connection) 17:16:50 howdy 17:25:49 hi docl 17:25:55 hi zbrown 18:16:31 --- join: Raystm2 (i=rastm2@c-24-8-232-212.hsd1.co.comcast.net) joined #retro 18:17:09 --- quit: SimonRC (Read error: 60 (Operation timed out)) 18:17:36 --- join: SimonRC (n=sc@fof.durge.org) joined #retro 18:18:18 hi Raystm2 18:18:40 HEY! hi docl, how the ____ are you? 18:19:00 pretty good 18:19:03 Hi Charles too. :-) 18:19:10 Excellent. 18:19:20 What are you up to these days? 18:19:40 I got a new job, tech support for a dental practice software company in Salem, OR 18:20:08 No kidding? How do you like OR? 18:20:21 * Raystm2 notes that Chuck Moore would use XOR. 18:20:32 well it is kind of rainy this time of year :P 18:20:54 Such is the northwester Pacific Rain Forest. 18:21:05 yep 18:21:21 Did you move very far? 18:21:28 about 450 miles 18:21:48 Cool. 18:22:01 We moved too. Now in Denver from Fort Worth. 18:22:26 It's a bit of a drive to see my folks... I married an idaho girl too, so it's like we have to visit every weekend or three. 18:22:39 With exception of Charles, I believe, every one I know has moved in the last 5 years. 18:22:53 CONGRATS! 18:23:07 :) 18:23:37 So you're in Denver, eh? My brother lived in Fort Collins until recently. 18:24:37 how do you like the new Retro? I've been playing around with the decompiler. 18:25:43 Also, github rocks... 18:27:23 I like it enough to want to do the Windows hosted version. I have a substructure up and running in BOA constructor, but I have a long way to go to integration. I've been instead focusing on the out put of my colorForth tutorial movies, just now started uploading to http://YouTube.com/Raystm2 18:36:41 http://gist.github.com/246009 18:36:57 I can't figure out what I'm doing wrong... 18:38:46 what's it doing? 18:39:04 you know how vectors work? 18:39:11 besides looking for key 27 to re assign, I mean. 18:39:29 there's 2 nop codes at the beginning of each word, e.g. key 18:39:40 right. 18:39:43 you can use these to insert a jump to another word, such as an anonymous word 18:39:49 sure. 18:40:40 so I made a macro that goes to the address of key and increments by two. now it is essentially a clone of key that does not get vectored when key gets vectored. 18:41:06 Non-vectored key. still following. 18:42:07 so if I get key 27 (escape) it looks for another key. I then assigned that to be what key does as a vector 18:42:32 I see. Your own escape sequence. 18:42:35 right 18:43:22 so if I press escape, that should be a signal for it to take the next key I push and output it as a number 18:44:33 So, to follow the definition of ::... 18:44:56 :: puts here on the stack and then starts the compiler. 18:45:14 right 18:45:20 nv-key executes... 18:45:38 duplicate here, and test with 27 for escape key. 18:46:04 oh wait, compile here here and THEN test 27 with the previous stack. 18:47:07 "take here, start compiler mode, then compile a jump to key+2 18:47:15 right. 18:47:23 okay. :-) sorry. hehe 18:47:42 the here eventually becomes the jump to key. 18:48:03 or rather, what key jumps to 18:48:55 key now jumps to the begining of your nv-key definition. Am I wrong? 18:49:21 nope, that's right 18:49:24 okay cool. 18:49:39 wait, lemme think 18:50:14 it jumps to the beginning of the anonymous stuff 18:50:15 no, I shall stop you from thinking with my mind... ( sixties sifi music looms in the background) :-) 18:50:31 formerly known as "here" :P 18:50:42 ya. nv-key being the first thing it jumps too? 18:50:48 to no too 18:53:04 bracket-tic.. thats compiled to execute on the usage of nv-key... 18:53:20 getting the address of something... 18:53:30 most likely a word label. 18:53:44 actually nv-key is a macro (immediate) so it executes as soon as it is encountered by the compiler 18:53:58 OH! of course. 18:54:02 ty for clarity. 18:54:06 which means the output of that word is what it jumps to 18:54:08 :) 18:54:15 right. right. 18:54:23 shame on me. 18:54:48 I used to use a word, but then I figured a macro would be more efficient than adding 2 to the xt of key every time I call it 18:54:56 so right, 2+key address = nv-key 18:55:03 yeah 18:55:13 it will never = 27 18:55:26 over 18:55:27 ? 18:56:42 this word actually seems to work okay the first time I run it... 18:57:18 wait, maybe because you are re defineing key as key +2 each usage? 18:57:37 is key I mean 18:58:15 http://gist.github.com/246009 19:01:03 that 2 is actually chopped off of 32... 19:01:31 I wonder if the tib pointer is getting offset or something 19:02:00 Charles will have the answer. :-) 19:02:08 yeah 19:02:19 It will be obvious. lol :-) 19:02:24 it always is :) 19:03:11 It's taking me just a bit to shift out of colorForth mode here. 19:04:03 the bracket tic gets the key address, add 2, compile the address in the dictionary... immediate usage. 19:04:15 right 19:04:29 forgot to explain that part 19:04:33 32 enterKey and key accepts new usage. 19:04:52 nv-key is the address of key+2 19:05:02 not fetched it is still the address? 19:05:32 or is it the 32? 19:06:26 if statements are a tad backwards and work differently in colorForth, but not a problem here. 19:06:49 not sure I follow you, sorry 19:06:50 the intention is to skip 27. 19:07:03 oh, sorry, the equivelent if in colorForth... 19:07:08 not just skip 27, but have a custom behavior for the following key 19:07:18 such as . 19:08:03 hmm 19:08:11 yes, sorry, skip 27 and do other things with other keys. 19:08:25 in this case get the address and print the address. 19:08:51 I keep thinking nv-key generates an address and not a specific key code. Am I incorrect here as well? 19:09:08 that's correct I think 19:09:37 nv-key generates an address that is the xt for key, minus the 2 extra bytes for vectoring 19:09:47 I see. 19:10:01 (then it compiles it into the current word) 19:10:04 if the vector is nop then is that necessary? 19:10:36 re-vectoring is the point, I see. 19:10:57 if it is not vectored the nop does nothing... but when I vector it I want my word doing the same thing it otherwise would 19:12:04 got you. 19:12:12 understood. 19:14:32 so if nv-key's first execute discloses 27 ( the escape) the second execution of nv-key is supposed to provide the key scan code for dot to print to screen. 19:14:48 right 19:14:57 if it is an address then the value needs to be fetched? 19:16:01 nv-key @ dup 27 =if nv-key @ . ;then ; ?? 19:16:27 no, nv-key automatically compiles the key-addr in as a jump 19:16:39 so its like a word there 19:16:46 ... as a jump to the key value? 19:17:06 to the xt of the key word (+2) 19:17:18 Xt is an address? 19:17:26 you want to print the address? 19:17:46 no, I want it to jump to the address 19:17:52 right. 19:17:55 ok. 19:17:58 sorry. 19:18:01 slow here. 19:18:04 which it does... I have read the ngaro codes for it :) 19:18:09 :-) 19:18:45 : :: here ] ; 19:18:45 : nv-key ['] key 2 + compile ; immediate ( unvectored key ) 19:18:45 0 0 0 0 19:18:55 oops 19:19:01 http://gist.github.com/246009 19:19:17 I hate it when there are multiple clipboards and they don't work well together 19:19:43 :) 19:19:45 I think I figured out the problem, sort of 19:19:52 good man! 19:20:00 what did you find? 19:21:30 well maybe I don't understand it... thought I almost had it 19:22:03 docl: what are you trying to do? 19:22:05 cool. cool. 19:22:16 Howdy crc. :) 19:22:19 I'm butchering key 19:22:51 escape sequences 19:23:02 example? 19:25:05 ESC-. executes dot 19:25:37 for now I am just having dot the ascii code 19:26:25 the bug I was having was making it echo 2 to the output instead of 32 when I type a space 19:26:36 the first time it would work, the second time it would not 19:30:11 https://gist.github.com/246009/d6740ef2302a393f7c5aaa376daacf01cc7f7682 19:30:26 https://gist.github.com/246009/7d8a80d306689385d75a53187fa9d3b185da7aa8 19:31:06 rather than a specific nv-key, try something more generic: 19:31:08 : default: ' drop which @ d->xt @ 2 + compile ; immediate 19:31:12 then: 19:31:14 default: key 19:31:20 in the new key definition 19:32:33 OH so THAT's how you get the dictionary entry for something 19:32:48 d->xt d->class d->name 19:32:52 are dictionary accessors 19:33:06 which is a metavariable that holds the address of the most recently found word 19:33:38 : default: ' 2 + compile ; immediate 19:33:44 would probably also work 19:34:11 cool 19:34:54 so: 19:34:55 :: default: key dup 27 =if drop default: key dup . then ; is key 19:35:15 I'd been wondering how to get the dictionary entry from a parsed word. ' word gives me the xt. ' word drop which @ would give me the dictionary header. 19:35:24 yes 19:45:18 http://gist.github.com/246027 19:47:34 Ray: I did move about 1.5 years ago, but only 3 miles away from my old location. 19:47:59 Lol. 19:48:04 So there ya go. 19:48:11 Everyone. 19:49:09 crc: nice! 19:49:16 Speaking of whick... neighbers moving all night so far. 19:49:20 -k+h 19:49:27 -e+0 19:50:03 docl, okay, maybe not so obvious. 19:50:37 I suppose it would be had I known the language in question. Shows how behind I am. 19:50:40 docl: if the commentary is helpful, I may post more gists with commented code in the future 19:52:05 crc how is the Twitter-e-mail app comming? 19:52:15 Raystm2: it's working quite well 19:52:19 Neat. 19:52:33 I think I have unlimited texting now... 19:52:34 I have 35 users, and have mailed out over 60,000 tweets to the users 19:52:39 on my phone i mean. 19:52:44 lol WoW 19:52:48 unlimited = good :) 19:53:49 Raystm2: everything is pretty much automated now. I get server logs every hour with current counts, log summaries, etc so I can quickly address problems that may arise 19:54:02 * Raystm2 is addicted to youTube insight information about viewership usages. 19:54:09 sweet 19:55:05 That's neat. 19:55:54 * Raystm2 is awaiting Chuck's answer in regards picture and colorforth.com text usage. 20:07:53 --- join: retro-commit (n=retro-co@sh1-ext.rs.github.com) joined #retro 20:07:53 retro10: 3Charles Childers 07master0 SHA1-f383210 20:07:53 add a general purpose "eval" word; recode editor "e" to use it 20:07:53 http://bit.ly/81iAdQ 20:07:54 --- part: retro-commit left #retro 20:09:34 the new "eval" word takes an address and a count 20:11:22 nice! 20:12:05 sweet. 20:15:43 I talk to Roger now and again and got permission to discuss Glypher in the movies, which means discussing RetroForth, ultimately. I have to write Charles and get permission, too. :-) 20:15:54 permission granted 20:16:00 Gratzi! 20:30:24 anything else I can help with tonight? 20:31:15 : r ['] pop compile ['] dup compile ['] push compile ; immediate 20:31:15 : t 4 for r . next ; 20:31:37 ok t 44 44 44 44 20:31:57 what's causing it to return 44? 20:33:10 wait, it's 0 0 0 0 in a clean retro 20:35:07 docl: use ` here 20:35:07 : r ` pop ` dup ` push ; immediate 20:36:08 cool 20:36:11 reason: pop and push are macros; they inline code when called 20:36:22 oooh 20:36:37 ` is class-aware, so will lay down calls or compiles without bothering you with the low-level details 20:36:55 nice 20:41:42 (just don't tell i440r in #forth about ` - he hates words like this) 20:42:00 hehe 20:42:12 lol 20:49:46 --- join: retro-commit (n=retro-co@sh1-ext.rs.github.com) joined #retro 20:49:46 retro10: 3Charles Childers 07master0 SHA1-416eed9 20:49:46 allow use of ` on numbers 20:49:46 http://bit.ly/8RIIQm 20:49:47 --- part: retro-commit left #retro 20:57:55 http://gist.github.com/246074 - some notes on the use of ` 20:59:13 cool 21:33:31 --- join: retro-commit (n=retro-co@sh1-ext.rs.github.com) joined #retro 21:33:31 forthlets: 3Charles Childers 07master0 SHA1-8e81e60 21:33:31 fix draw forthlet to work with current image 21:33:31 http://bit.ly/7J2dwm 21:33:32 forthlets: 3Charles Childers 07master0 SHA1-bb9e25a 21:33:34 update to latest image 21:33:36 http://bit.ly/6juulR 21:33:38 forthlets: 3Charles Childers 07master0 SHA1-9f3fe5b 21:33:40 bugfixes to rosetta_code samples 21:33:42 http://bit.ly/6jt6MM 21:33:44 forthlets: 3Charles Childers 07master0 SHA1-30c4fe2 21:33:46 update drawing app to latest image 21:33:48 http://bit.ly/8u2nK2 21:33:50 --- part: retro-commit left #retro 21:35:19 * crc will be going to bed in a few minutes. it's 20min till 1:00 and I do have to work in the morning :( 21:36:02 Gosh it is late. 21:36:07 Gn crc. :) 21:36:54 if anyone has more questions, post them and I'll try to answer them all tomorrow 21:37:03 ok 21:41:30 --- join: retro-commit (n=retro-co@sh1-ext.rs.github.com) joined #retro 21:41:30 wheke: 3Charles Childers 07master0 SHA1-613ceea 21:41:30 does> now part of standard image 21:41:30 http://bit.ly/7Gusul 21:41:31 wheke: 3Charles Childers 07master0 SHA1-6b1c9b9 21:41:33 compile-only now part of standard image 21:41:35 http://bit.ly/4OWSdd 21:41:37 wheke: 3Charles Childers 07master0 SHA1-ba8a293 21:41:39 work on moving to current wordset for macros and compile-only words 21:41:41 http://bit.ly/6MG5av 21:41:43 --- part: retro-commit left #retro 21:41:58 and that wraps up my work for tonight; goodnight everyone 21:42:17 goodnight :) 21:43:22 :) 21:43:23 gn 23:59:59 --- log: ended retro/09.11.30