00:00:00 --- log: started forth/04.03.12 00:00:45 This way, I can offer the memory modules either as a kit or as a pre-made component (which would be very convenient for the folks who are having a hard enough time putting the Kestrel itself together). 00:02:46 Anyway, I need to get to bed. 00:02:56 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 00:20:48 --- quit: Serg () 00:27:52 --- quit: Nutssh ("Client exiting") 01:20:50 * warpzero is away: And it reproduces images from paper. 01:41:25 --- join: phobos (~d@pcp01518410pcs.reding01.pa.comcast.net) joined #forth 02:41:40 --- join: qFox (C00K13S@cp12172-a.roose1.nb.home.nl) joined #forth 03:45:54 --- quit: phobos (kornbluth.freenode.net irc.freenode.net) 03:45:54 --- quit: cmeme (kornbluth.freenode.net irc.freenode.net) 03:46:51 --- join: phobos (~d@pcp01518410pcs.reding01.pa.comcast.net) joined #forth 03:46:51 --- join: cmeme (~cmeme@216.184.11.30.unused.swcp.com) joined #forth 05:11:53 --- quit: imaginator (".") 06:12:40 Excuse my vulgarity, but... why is Forth so f*cking addictive and fun? And why can't I convince anyone else of this? :D They think I'm a nutcase (well, more of one). 06:13:19 Ehm. Are you somehow implying that you're not? 06:14:42 No, I'm not implying that I'm not. 06:19:01 We're all nutcases/ 06:19:18 Its what Forth does to you. 06:19:28 Thus, I blame Robert for making me a nut by getting me into forth :) 06:20:47 Thanks, :) 06:20:48 Yes, it seems to either attract nuts, or create them. 06:20:54 Hehe. 06:21:04 : nutcase postpone nut postpone case ; immediate 06:21:34 Right., 06:21:40 :) 06:22:57 : discover-forth create does> nutcase ; 06:25:35 : - ; 06:25:50 forth smiley :-) 06:25:58 Heh. 06:26:03 It looks English. :P 06:26:20 I say, would you like a crumpet? Jolly good! : - ; 06:26:29 hihi 06:26:40 : hihi hi hi ; 06:27:07 okay, enough bad jokes, back to work 06:27:42 ah wait, one-liner of the day: 06:27:44 : d# parse-word base @ >r decimal evaluate r> base ! ; immediate 06:27:58 : parse-word bl parse ; 06:28:53 no, i don't care it doesn't do error checking 06:31:49 :) 06:37:01 --- topic: set to 'A channel dedicated to the Forth programming language, its implementation, its application, and its philosophy. And pie. | I might not have internet for a week or two, but I can still check my emails, so contact me at koolaid_male at yahoo dot com :) Keep me entertained!' by chris-xp 06:37:22 * chris-xp is away: School 06:42:43 : pie 0 100 0 DO 100 0 DO i dup * j dup * + 10000 < - LOOP LOOP 0 <# # # # # [char] . hold #s #> type ; 06:42:58 hope that works, it's untested :-) 06:43:10 oh wait, need to multiply by four 06:56:52 --- join: Serg (Serg_Pengu@212.34.52.142) joined #forth 06:57:10 hi 06:58:52 hey ho 06:59:07 segher: where are you from ? 06:59:30 Germany ? 07:00:46 We need the Forthbot. 07:01:22 i wanna ask everyone: 07:01:46 when was the last major political overthrow or money crash in you country ? 07:02:04 i'm from the netherlands, actually, but i'm here in germany right now 07:02:16 Robert said in Sweden last was 1809 07:02:23 who's even more stable ? 07:02:48 segher: hmm, netherlands seem to suffer from world wars ;( 07:03:04 sweden? sweden went from everyone at the left to everyone at the right, overnight, somewhere in the 1950s or 1960s or so 07:03:29 [okay, okay... that's just the side of the road they drive on. duh.] 07:03:40 --- join: ASau (~asau@158.250.48.196) joined #forth 07:03:45 no, i mean war and devastation like in RU at 1917 or 1991-93 07:04:11 i know 07:04:18 i tried to make a joke 07:04:27 not very successful, it seems ;-) 07:10:32 * chris-xp is away: school 07:10:36 Serg: 1967, iirc. 07:10:40 Dobryjj vecher! 07:10:44 er, that was to segher 07:11:22 robert: yeah, something like that 07:11:29 What happened in 1967? 07:11:48 the swedish switched the side of the road they drive on 07:13:07 --- join: networm (~networm@L0632P24.dipool.highway.telekom.at) joined #forth 07:13:12 Dobryjj vecher! 07:13:30 hi 07:13:50 is this a script? 07:14:19 No. 07:14:27 I'm here. 07:15:02 He's just being polite. ;) 07:15:13 isn't it supposed to be "dobre vecher"? 07:15:25 yes, just was wondering, since i got noticed within seconds of joining :) 07:15:45 Haha. Is ASau a script. :) 07:16:06 i try to make a poll about political stability of different countries;)) 07:16:11 segher, no it's written how it ought to be. 07:16:13 oh, hi madgarden 07:16:16 !ASau : square dup * ; 10 square 07:16:24 ASau is not a Forthbot, it seems. 07:16:27 Hi, networm. 07:17:06 anyone who knows about BLOCKS.. i just read the F83 and ANS standard about BLOCK and BUFFER.. i can't seem to see the difference 07:17:26 BUFFER is just a BLOCK, filled with un-initialized data? 07:17:41 networm, BUFFER find free buffer 07:17:57 networm, BLOCK reads in data in addition. 07:18:34 If you want create new screen, you say BUFFER 07:18:34 ah, that makes sense. so if my Forth just provdes a single buffer, BUFFER is the same as FLUSH 07:18:56 If you want get screen from storage, you say BLOCK 07:18:57 --- quit: Serg () 07:19:16 networm, do not use single buffer. 07:20:00 In FIG Forth, there're following words to keep storage cache: 07:21:53 PREV USE FIRST +BUF BUFFER BLOCK FLUSH EMPTY-BUFFERS UPDATE #BUFF 07:23:36 PREV and USE are pointers to least reacently referenced and most recently written blocks. 07:23:37 i'll look at them. what is a typical number of buffers? 07:23:52 #BUFF . 4 OK 07:23:57 --- join: Serg (Serg_Pengu@212.34.52.142) joined #forth 07:24:09 re 07:24:20 Dobryjj vecher, Serg! 07:25:24 networm, FIG Forth use different meanings for buffer and screen. 07:25:50 Buffer size is: B/BUF . 512 OK 07:25:57 in my system. 07:26:24 And screen is: B/SCR . 2 OK 07:26:31 blocks. 07:27:03 Buffer is for one block. 07:27:53 i think i'll make B/SCR = B/BUF = 1024 07:28:02 Actually, you may use more buffers than for 2 screens. 07:28:22 networm, you must mean B/SCR = 1. 07:28:40 ah, yes 07:29:00 The requirement is: B/BUF B/SCR * be 1024 07:30:12 One of our FIG-Forth derivatives had a special constant: 1K 07:50:42 --- join: Nutssh (~Foo@gh-1063.gh.rice.edu) joined #forth 07:50:56 --- quit: Nutssh (Read error: 54 (Connection reset by peer)) 07:51:12 --- join: Nutssh (~Foo@gh-1063.gh.rice.edu) joined #forth 07:51:33 Each buffer would be a dictionary entry? 07:52:07 variable buf1 1024 allot 07:52:08 ? 07:52:21 hm, that idea didn't occur to me yet.. 07:52:32 i assigned a fixed block of 4KB to my 4 blocks 07:52:47 i could have a variable number of blocks 07:53:51 Might as well. 07:54:08 Would be easier to manage multiple buffers, I'd imagine. 07:55:58 I think MINFORTH could make a good Forthbot. 07:56:51 hi 08:09:59 --- join: Herkamire (stjohns@h000094d30ba2.ne.client2.attbi.com) joined #forth 08:14:38 madgarden, no buffers are not a part of dictionary. 08:15:35 Why not? 08:15:35 I'm able to explain, how buffers are made in my FIG Forth. 08:15:56 Because of future multitasking. 08:16:50 You've to make separate dictionary extensions for tasks, but not buffers. 08:17:09 Buffers are shared. 08:17:57 And because of the means to return from interpreting a string. 08:18:51 It's made through executing the special word, that has a name of one blank character. 08:20:21 Well, if you're interested I can continue with explanation. 08:22:44 You might look at "FIG Forth Installation Manual" 08:25:44 I'm interested, but BBL. 08:26:49 Well, how the stuff works. 08:27:41 Nesting: WORD -> BLOCK -> BUFFER -> +BUF 08:28:39 +BUF performs a selection of next, but not LRR (see: PREV), buffer. 08:29:39 --- join: kc5tja (~kc5tja@66-91-231-74.san.rr.com) joined #forth 08:29:42 Thus +BUF makes an illusion of queue of your buffers. 08:29:45 --- mode: ChanServ set +o kc5tja 08:30:29 hi kc5tja 08:30:50 When BUFFER doesn't find free buffer it swaps MRW (see USE) out. 08:30:57 Privet, kc5tja! 08:32:01 Hello. 08:32:01 BLOCK tests whether you want LRR (see PREV). 08:32:08 * kc5tja has some bad news regarding the Kestrel. 08:32:24 kc5tja, what is it? 08:32:27 The only source of 35ns or faster RAM I can find is in surface mount component packages. 08:32:39 This means one of two things: 08:33:24 --- quit: Nutssh ("Client exiting") 08:33:26 1) I provide the ForthBox without RAM, letting the customer purchase RAM modules as a separate product. The modules can either come in kit form (for those who feel advanced enough to try it), or in pre-fabricated boards (for an additional cost). 08:33:50 or 08:33:58 madgarden. If not, it moves through queue in search of cached block, or asks BUFFER to reserve one and R/W to read it from storage. 08:34:32 2) I hand-solder a fixed amount of RAM to the Kestrel's motherboard prior to shipping. Since this involves my time, the cost of the computer will necessarily have to go up (especially since I'm using my resources and solder to do it). 08:35:02 madgarden, after the end of buffer there're two zero bytes. 08:35:34 * slava puts on some electronic music and gets back to work on the game :) 08:35:40 What would you folks think or prefer? 08:35:58 kc5tja, why not soldier a fixed amount, and let the user add more if they need it? 08:35:59 madgarden, when ENCLOSE (called by WORD) meets zero bytes it proceeds like you have input a zero word. 08:36:08 If I solder the RAM directly on the board, the price point of the ForthBox Kestrel changes to being under $140. 08:36:17 slava: See above. 08:37:39 madgarden, zero word is IMMEDIATE and it performs exit out of INTERPRET into QUIT or LOAD. 08:45:19 So you see you have circular queue of buffers which cache blocks of your storage. 08:48:36 --- join: Nutssh (~Foo@gh-1063.gh.rice.edu) joined #forth 08:49:11 kc5: how big is that memory? 08:56:19 segher: I was looking at the 512Kx8 SRAM chips, since they're really the only chips able to keep up with the 65816. 08:57:20 But if I make the RAM off-board, then I can offer up to roughly 4MB to 8MB of address space, letting the user select his/her desired amount of RAM. 08:57:26 512K is definitely the minimum though. 08:57:45 I don't think anyone would want to purchase the computer kit if it had any less than that. 08:57:45 --- quit: madgarden (Read error: 104 (Connection reset by peer)) 08:57:52 --- join: madgarden (~madgarden@Kitchener-HSE-ppp3576712.sympatico.ca) joined #forth 09:01:03 so you're looking for a bog-standard sram cache chip? 09:01:15 you can get those in DIL packages no problem 09:01:29 just get them off of old pentium motherboards, if all else fails 09:01:35 nicely socketed too, most of the time 09:02:04 4 to 8 MB will be at least 4 to 8 chips, though 09:02:53 --- quit: Serg () 09:04:13 segher: Sorry, but those chips aren't 35ns or faster. 09:04:34 segher: And 4MB to 8MB is possible; there exists 2MBx8 SRAM chips. 09:05:09 Moreover, where am I going to get these old Pentium boards from? I am not going to stockpile a huge stack of useless boards just to fulfill my RAM needs. 09:05:16 I only live in a 10'x10' room. 09:05:30 (more or less; there is some closet space, but I don't actually *live* there.) 09:05:33 ASau, hmm, interesting. 09:06:24 On a single user Forth system, you could probably get away with one BUFFER, I'd imagine. 09:09:20 --- quit: Nutssh ("Client exiting") 09:11:47 kc: they are not 35ns, sure. they are 2ns or such, instead 09:11:59 or 5ns, or 7ns 09:12:30 Not in DIP form factor they're not. 09:12:34 That would violate the laws of physic. 09:12:36 That would violate the laws of physics. 09:12:41 nah 09:12:44 it's sram 09:12:47 So? 09:12:55 always has been that fast 09:13:05 Woo! I just got a new job. :) 09:13:06 You have to charge the lines of the chip. That takes time. Lead capacitances on DIPs are not infinitely small. 09:13:38 sure 09:13:47 that's what waitstates are for 09:13:50 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 09:13:52 Besides, it's just plain not practical. What happens when I run out of said RAM chips? 09:13:55 segher: umm.no. 09:14:04 segher: The CPU *must* have instant access to RAM. 09:14:12 It absolutely, positively, 100% must. 09:14:14 NEW JOBZORZ!!!! Hear me, bask in my glory! 09:14:16 There is no exception to that rule. 09:14:19 heh okay 09:14:23 weird design :-) 09:14:43 segher: Remember the CPU is responsible for video refresh. Consequently, any delays in accessing RAM not only defeats the purpose of driving it at 12.6MHz, it also violates video timing. 09:14:50 segher: No, it's not weird. 09:14:58 The CPU is a fast CPU. It needs to be driven by a fast memory. 09:15:02 What is so weird about that? 09:27:29 hm, i think ms is ignoring me... ignorance must be bliss :p 09:29:41 oh, it's doing video. okie. 09:30:06 still should be plenty fast enough though, i think 09:37:06 segher: No. 09:37:14 segher: The video shift register is 8 bits wide. 09:37:19 Each dot is clocked at 12.6MHz. 09:37:34 That shift register must be refilled every 8 cycles. 09:38:09 (I do introduce precisely *one* wait-state when accessing the video shift register because the CPU's block-move instructions take 7 cycles to transfer one byte) 09:38:40 Since 75% of the CPU's time (roughly) is spent refreshing the display, that 12.6MHz is going to feel more like 3.15MHz when the display is active. 09:39:04 Introducing one wait state when accessing RAM is suicide: I may as well reduce the CPU's clock speed to 6.3MHz. 09:39:31 Even if I *could* find a way to keep the VSR filled at those speeds (which I can assure you, I can't), the CPU performance hit is monsterous. 09:39:35 a wait state in _sram_ cycles 09:39:37 Remember, wait states are evil. 09:40:01 segher: The CPU has a one clock cycle per memory cycle latency. This is 4x faster than any other CPU you are probably used to using. 09:40:24 well, my cpus are way faster than any external memory 09:40:51 That depends. 09:40:56 800 Mcycle bus... yummy :-)\ 09:41:03 Yes. 09:41:09 And remember why that bus was introduced? 09:41:11 Wait-states. 09:41:15 And their *elimination* of them. 09:41:26 It's not about the frequency, it's about the latency. 09:41:36 i don't follow, really. 09:41:41 This is why a 1MHz 6502 can compete so favorably with a 2MHz Z-80. 09:41:57 The Z-80 takes 3 to 4 clock cycles to access one byte of RAM (read or write). 09:42:10 yes 09:42:12 Hence, its total memory throughput is only 1/4th its clock rate in MB. 09:42:37 The 6502 can do so is 1x its clock speed. 09:43:23 Hence, to move data around in memory, a 1MHz 6502 is just as fast as a 4MHz Z-80 (note: I'm talking PURELY about raw memory bandwidth; NOT instruction execution rates here) 09:43:59 Now imagine that same bus increased to 12.6MHz. 09:44:18 A 16MHz Z-80 or 80286 or whatever can happily live with slower RAM because of that 4-cycle-per-memory-access latency. 09:44:32 The CPU *imposes automatically* a 3 wait-state penalty for every memory access. 09:44:43 The 65816 (and its predecessor, the 6502) doesn't do that. 09:45:03 Hence, I need MUCH faster RAM than would be necessary for an Intel or, even, Motorola CPU design. 09:46:21 Since the CPU will almost never execute out of ROM (which is ungodly slow anyway), nor can execute out of I/O space, it follows that over 90% of its time will be spent executing out of RAM. 09:46:55 Hence, if I introduce even one wait-state of latency in the memory subsystem, my 12.6MHz clock is *useless*. I may as well just down-clock the chip to 6.3MHz, and avoid the whole wait-state logic all-together. 09:47:09 But then other components fail to operate properly (in particular, video). 09:50:23 HM628512 hitachi 512k*8 sram 25ns 09:50:39 but you want a bit bigger, i think? 09:52:09 That'd be fne. 09:52:27 it's a dil 09:52:28 The question now is, is it a DIP package or a TSOP, or some other surface mount form factor? 10:00:57 I don't think it's being manufactured anymore. 10:04:45 Nope. 10:04:48 Not in DIP form. 10:05:23 The only offerings they have of that chip are the HM628511*-12, which has 12ns access time, and is only available as a 36-pin SOJ packet. 10:08:24 Did you mail Futurlec about the RAM chips they had? 10:10:10 Yes. 10:10:13 No response from them. 10:10:31 Actually, I might decide to go with their 1MBx4 SRAM chips. 10:10:36 Less address decoding for me to put in. 10:10:42 The only question now is cost. 10:10:47 you can get plenty of stuff on SIMM modules -- will that work for you? 10:10:49 Two chips == 1MB of RAM. 10:11:02 No, because SIMMs are DRAM interfaces. 10:11:09 I can't afford to put a DRAM controller on the board. 10:11:17 SRAM sims. 4ns. 10:11:26 segher: I've never heard of such a thing. 10:11:32 want a link? 10:11:35 Yes, please. 10:11:56 http://www.hbe.co.kr/MMdata/SSRAM/en_ssrpinfo.htm 10:12:00 first one i found 10:12:05 synchronous sram, too. 10:12:31 no idea about cost, though 10:12:45 but it's pretty old technology, really 10:15:15 It needs to be async SRAM. 10:15:29 they have that, too 10:15:37 here, another dil: 10:15:40 http://www.microel-elisra.com/pdf/Sram/MES5128(HS).pdf 10:16:10 this stuff isn't that hard to find... no idea about current availability, of course 10:22:09 Well, the 32-bit bus is a little bit *wide* for me (65816 only has an 8-bit data bus) 10:22:33 Anyway, I have to go to work. 10:22:52 I think it'd just be cheaper for me if I offered my own memory modules as separate packages. 10:23:15 It's looking like that's the solution. Everything else is either too big, too bulky, too slow, or too expensive. 10:23:19 Anyway, I'm outta here. 10:23:24 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 10:27:54 --- quit: networm (Read error: 104 (Connection reset by peer)) 10:29:45 madgarden, no 10:29:59 You do need a second buffer. 10:30:43 Otherwise you get troubles when processing data in storage. 10:31:26 You get too big penalty in read-process-write cycle. 10:45:38 --- quit: tathi ("leaving") 10:46:36 --- join: networm (~networm@L0651P30.dipool.highway.telekom.at) joined #forth 10:59:45 --- join: ribbon (~ribbon@cpc1-bolt4-5-0-cust161.mant.cable.ntl.com) joined #forth 11:01:34 --- join: thin (thin@bespin.org) joined #forth 11:02:11 ll 11:02:17 Hi thin. 11:02:24 hey 11:02:54 everything ok? 11:03:15 Kind of.. I'm a bit tired, after like 6 hours of cleaning. 11:04:08 heh 11:04:22 you let your place get that dirty? ;) 11:04:28 Yeah. 11:04:36 Cleaning once a year is better than every week. 11:04:37 :P 11:04:57 You only appreciate the order if you know what it's like without it. 11:05:04 lol 11:05:24 yeah i don't clean frequently enough either 11:06:06 difference between men and women is that men are either resting (30% on) or on (100%) and women are always on (80%) 11:06:35 which explains why we let our places turn into pigstys and why women don't :P 11:06:47 My room looks way better than my sister's... 11:07:03 except in the cases where a woman is in a man's body and a man is in a woman's body 11:07:06 Well, she doesn't have 10 computers around, but still... 11:07:27 she probably hasn't activated yet 11:07:38 Or she's a man in a woman's body. 11:07:44 At least that's what the bullies told her 11:08:08 well a man in a woman's body is like a bull dyke or something. scary creatures 11:08:09 --- join: gNoam (trilluser@bc-van-reg-a53-01-79.look.ca) joined #forth 11:08:35 gnoam: vancouver? :) 11:08:39 yup 11:08:54 i also use hp48nik and a few other nicks on freenode irc 11:08:56 i recall your nick but i forget who you are.. got other nicks? 11:08:59 oh yeah 11:09:00 ok 11:09:08 Ah. The Forthniker. :) 11:09:09 i recall talking to ya 11:09:18 i live in kamloops, 4 hours away from vancouver.. 11:09:23 why are there so many Forthers in the pacific northwest? esp. bc.ca? 11:09:25 cool 11:09:40 My programming teacher did some Forth in the 80s. :) 11:09:54 Now he's teaching basic C++... 11:09:58 Poor bastard. 11:10:02 hehe 11:10:30 the dreadful triad: c c++ java 11:10:35 i won't even mention c# 11:11:04 gnoam: i had a site at thin.bespin but i accidentally deleted it 11:11:17 it can happen ;-) 11:11:21 I know a guy who loves C#... 11:11:25 Not really sure why. 11:11:56 most of us are poor bastards too.. we know what a great lang forth is but we rarely do more than coding forth implementations rather than coding in forth.. 11:12:08 hehe 11:12:20 well i blame it on lack of a good environment etc 11:12:42 you all should give up 11:12:46 become non-non-programmers 11:13:27 OR code the environment 11:13:29 my rule of proglang proliferation: every half-decent programmer who comes along hates all existing languages, and creates his (her?) own, hence thousands of proglangs ;-) 11:13:36 rationally, there is no choice, it is all or nothing 11:14:41 and don't forget forth is a non-language, so don't try to bring artifacts & concepts from other languages to forth 11:15:41 since only a few people seem to understand forth, the rest of you should give up and just focus on love, business, etc :P 11:15:46 forth is classified in a really interesting way here:- 11:16:31 http://www.dmoz.org/Computers/Programming/Languages/Language-OS_Hybrids/ 11:17:02 gnoam: how old are you 11:17:46 i am ... ancient... 44yo 11:17:56 started computing in 1975 ;-) 11:18:00 how about you guys? 11:18:20 i was lucky because my highschool had one of the first computers for student use in all of *.bc.ca 11:18:29 a DEC PDP 10/something 11:18:40 then i did www.cs.ubc.ca 11:18:59 * OrngeTide got his first computer in 1983. and was programming it later that year. 11:19:00 sort of ;-) 11:19:42 i was 4 at the time. ehhehe. so my programs weren't much more than a bunch of PRINTs INPUTs and GOTOs :) 11:19:53 i got my forth rom cartridge for c64 in 1984? but i had a timex/sinclair 1000 before that ;-) 11:20:15 technostalgia is so fun ;-) 11:20:40 gnoam: i'm 22 11:20:45 half your age heh 11:21:10 but don't worry, when you're 66, i'll be two thirds of your age! 11:21:47 hehe 11:21:56 and when you are 10,000 i'll be 99.78% your age 11:22:09 that's a comforting thought 11:22:23 try to live that long eh! 11:22:41 perhaps i'll be a brain in a jar with electrodes 11:22:53 I'm gonna! All I need is my titanium full-body replacement. 11:23:26 yet another forther from canuckistan? 11:23:28 i am located in: 2area code 604/778 12 vancouver.bc.ca 0,4 4,0*0,4 0 11:23:59 i think Canada is to the USA as Forth is to C# 11:24:00 Hi! I'm in Kitchener, ON. 11:24:04 hehe 11:24:06 hi 11:24:22 Was that some kinda automated link thinger you posted? 11:24:35 does any of you have a personal website not listed on forth.bespin.org? you can /msg me if you do 11:24:42 you mean the flag and so on? 11:24:52 gNoam, aye. 11:25:06 it's just a one-line script in mIRC (blush) 11:25:40 i'm a scriptdaddy ;-) 11:27:45 So you click that whenever you get an asl? ;) 11:28:40 hehe.... just comes in handy... i like to know where people are located ;-) 11:28:56 hi all 11:29:01 hey speaking of technostalgia, have you guys ever heard of the JUPITER ACE? 11:29:06 it booted up into FORTH 11:29:08 http://en.wikipedia.org/wiki/Jupiter_Ace 11:29:09 Yep! 11:29:16 Played a little bit on the emulator. 11:29:23 But lately, playing with Blazin' Forth on the C64. 11:29:34 I lost my C64-Forth disk. :( 11:29:41 Though, I was curious as to how the Jupiter Ace implemented its REDEFINE word. 11:29:53 Robert, well C64-Forth is supposed to suck compared to Blazin' Forth. 11:30:46 My C128D isn't feeling very well anyway. And I don't have any monitor for it. 11:32:05 Robert, don't like emulation? 11:32:20 what an interesting group of people hang out on this channel ... somewhat offbeat as you'd expect ;-) 11:33:30 gNoam, almost everyone has their own forth ;) 11:33:49 madgarden: Only of NES! 11:34:05 Robert, what NES emulator do you use? 11:34:24 REAL NES 11:34:26 !!! 11:34:29 :) 11:34:36 gNoam, what do you use forth for? 11:34:55 um... just play around with it... you? 11:34:58 Robert, C64 Forth can be downloaded here: http://project64.c64.org/misc/ 11:34:58 madgarden: Nesticle. 11:35:18 --- quit: thin ("gtg") 11:36:10 I have Nesticle too. Netplay is nice. 11:36:18 Not like anybody plays with me. ;( 11:36:40 gNoam, i have my own language but its not forth 11:37:07 what is it? 11:37:07 sinner! 11:37:09 It's Lispy Forth! 11:37:22 i guess madgarden is right :) 11:37:22 oh... lisp+forth = userRPL 11:37:39 userRPL is the built-in lang for the hp48 calculator line 11:37:48 it's really like lisp+forth... i love it 11:38:15 Joy is also a bit lispy 11:38:31 my language is (forth + lisp + joy) / 3 11:38:47 slava... so, "Floy". 11:38:52 :D 11:38:55 madgarden, umm... sure :) 11:41:44 great chatting with you all... BBL... bye all 11:41:49 Bye. 11:42:02 Does anyone know how to get MINFORTH working with colour terminal output under Win2K? 11:42:12 bye eh gNoam! 11:43:16 peace, harmony, and high throughput! bye 11:43:18 --- part: gNoam left #forth 11:51:14 --- part: segher left #forth 12:10:15 Figured it out. 12:43:27 --- join: fridge (~fridge@dsl-203-33-167-94.NSW.netspace.net.au) joined #forth 12:51:22 --- join: wossname (wossname@HSE-MTL-ppp77504.qc.sympatico.ca) joined #forth 13:00:32 hi wossname 13:00:44 hi fridge 13:18:06 --- join: Downix (~downix@adsl-215-2-68.bct.bellsouth.net) joined #forth 13:32:37 --- quit: Downix (Remote closed the connection) 13:34:18 --- join: Downix (~downix@adsl-215-2-68.bct.bellsouth.net) joined #forth 14:01:23 --- join: Mark4 (~Mark4@204.110.225.254) joined #forth 14:01:39 --- nick: Mark4 -> I440r 14:04:02 What would be a good #forth Forthbot name? 14:05:08 Moore? 14:05:43 Maybe a bit too sycophantic? ;P 14:06:08 Chuck 14:06:56 but what if the real chuck decides to stop by here one day? 14:09:29 FORTHROOLZ 14:09:40 networm: I think he was in here once! :) 14:09:42 FORTHROOLZORZBOT 14:10:01 prolly has better things to do, if i was that smart, i would be busy 14:10:26 Chuckbot 14:10:39 ChuckFan 14:10:40 hehe 14:10:51 CMooreJr 14:10:51 Yea, it would have to at least be a CF bot for warrant the name "Chuck". 14:10:58 madgarden: :) 14:11:25 call it do-drop-in 14:11:30 :P 14:11:54 SWAP 14:12:03 rot ? 14:12:13 i just call mine Forth 14:12:21 That's clever! 14:12:23 i think chuck is good actually 14:12:27 CM goes by chipchuck 14:13:56 i'll be writing a bot soon too 14:14:15 i guess it will be actually useful, since my language has stack effect checking :) 14:14:37 brb 14:14:39 --- quit: I440r ("Leaving") 14:14:49 How about chuckchip 14:16:41 he he 14:18:30 OK, gonna go for supper... bbl 14:24:36 --- quit: Downix (Read error: 104 (Connection reset by peer)) 14:42:43 --- join: qF0x (~C00K13S@12-221-64-176.client.insightBB.com) joined #forth 14:50:08 found out my father in law to-be used to be an avid forther 14:50:20 he's an eye surgeon now 14:54:09 --- quit: qFox (Read error: 110 (Connection timed out)) 14:57:30 wow 14:57:39 from forther to surgeon 14:57:43 --- nick: qF0x -> qFox 14:57:54 i wonder if that is more than mere coincidence 14:58:47 --- quit: wossname ("what") 15:00:16 forth drove him to sharp impliments? 15:00:46 .-1 s/impliments/implements/ 15:00:57 (probably) 15:02:14 yes 15:04:46 i wonder if even now when he is cutting up patients he puts eyeballs on the stack 15:05:36 It's probably just a power trip ;) 15:06:18 how would you display eyeball surgery in forth notation? 15:06:45 <) fix 15:07:50 * ribbon is afk 15:14:20 eyeball @ >r 15:14:29 2 stacks even :) 15:24:40 --- join: qF0x (C00K13S@cp12172-a.roose1.nb.home.nl) joined #forth 15:26:03 --- quit: qFox (Read error: 60 (Operation timed out)) 15:29:34 --- nick: qF0x -> qFox 15:45:04 --- part: phobos left #forth 15:47:36 --- quit: networm ("Client exiting") 16:11:01 --- quit: qFox ("if at first you dont succeed, quit again") 16:11:11 --- join: qFox (C00K13S@cp12172-a.roose1.nb.home.nl) joined #forth 16:13:45 --- quit: qFox (Client Quit) 16:15:41 --- join: qFox (C00K13S@cp12172-a.roose1.nb.home.nl) joined #forth 16:16:13 --- quit: ribbon ("A life without distinction") 16:57:20 --- join: kc5tja (~kc5tja@66-91-231-74.san.rr.com) joined #forth 16:57:29 --- mode: ChanServ set +o kc5tja 17:01:19 fridge: I've decided to produce the ForthBox Kestrel *without* RAM on board. 17:01:31 Thus, memory modules will be offered as a separate item, as will be the power supply. 17:01:39 This is the most affordable way to do things. 17:02:07 It also lets you choose whether you want to build the memory modules or you want ME to build them for you (e.g., more expensive, but guaranteed to work properly). 17:02:28 This is because I can't find affordable sources of DIP-packaged, high-speed static RAM. 17:08:23 Still no reply from Futurlec? 17:08:45 No. 17:09:30 They usually react within a few weeks. ;) 17:14:19 hi 17:15:12 Hi slava 17:15:32 --- join: Sonarman (~matt@adsl-64-160-166-51.dsl.snfc21.pacbell.net) joined #forth 17:15:51 re slava 17:17:20 what's new? 17:19:26 ForthBox Kestrel will no longer have RAM on board. Instead, I'll have an AMP slot -- Asynchronous Memory Port. 17:19:39 RAM modules can be purchased separately, starting at 1MB of RAM. 17:20:06 What kind of software do you plan to run on it? 17:20:16 Robert: It's not called ForthBox for nothing. :) 17:21:09 There's a slight difference between a tiny Forth and GNOME ported to Forth... 17:21:21 Well, you asked a rather open-ended question. 17:21:27 I know :) 17:21:34 Then I can't answer your question. 17:21:37 Do you have any more specific plans? 17:21:39 What do you want to run on it? 17:21:54 Well, I have some application-specific implementations fo the Kestrel that will be sold in the ham radio community. 17:21:55 I have no idea what I'd run on it. That's why I ask you. 17:22:23 The first is to use the basic Kestrel architecture as the core of a 12.8kbps network interface unit for ham radio. 17:22:33 what OS? 17:22:40 slava: BoxOS. 17:23:49 slava: Basically, BoxOS is Forth, but it provides a few standard services that other software environments can use if they want (e.g., screen refresh and/or drawing APIs). 17:24:10 * kc5tja is thinking of implementing a GEM-clone in Forth as the standard graphical user interface. 17:26:51 kc5tja, that's really cool 17:28:51 someone apparently likes GEM. :D 17:35:18 What is GEM? :) 17:39:46 Robert, go freedos.org 17:39:54 There's link. 17:40:57 Long time since I used FreeDOS now. :) 17:51:38 Actually, a better link is the deltacomm.com link. 17:51:46 * kc5tja tries to unearth it. It's been a while since I visited it. 17:58:38 http://www.deltasoft.com/index.html -- found it! 17:59:37 I should point out that the GUI in BoxOS won't be a precise GEM clone either. 17:59:48 It'll be inspired by GEM, but it will be far from GEM itself. 18:00:09 Though I've been considering the possibility of making a port of GEM, then running a standard Forth system within that framework. 18:00:58 Neat, that page says everything but what GEM is. Some sort of desktop environment? 18:03:20 It says everything that GEM is. 18:03:22 It's a GUI. 18:03:30 Think MacOS System 1, and that's pretty much what GEM is like. 18:03:38 so its really small? 18:03:47 I used a Mac, once, when I was 10. 18:04:14 ianp: It was designed to run on 8086-based systems running DOS 2.0, with less than 10MB harddrives, and with 512K of RAM, so yeah, it's pretty small. :) 18:04:27 kc5tja: is it really fast because it uses some sort of special memory management scheme? 18:04:42 Sonarman: Huh? GEM doesn't use any special memory scheme. 18:04:50 It uses DOS's own memory allocation code. 18:05:16 GEM is just a component that sits besides DOS to provide a complete visual, event-driven run-time environment for the PC. 18:05:20 (and later, Atari ST.) 18:05:39 --- topic: set to 'A channel dedicated to the Forth programming language, its implementation, its application, and its philosophy. And pie.' by chris-xp 18:06:20 kc5tja: then was it GEOS that you said used explicitly managed memory hierarchies or somethiung? 18:06:44 hiya 18:08:32 Yes, it was GEOS that aimed to *completely* isolate the programmer from DOS (in fact, GEOS was a true operating system in every sense of the word). 18:09:27 You have to understand that Digital Research already marketed CP/M and CP/M-86 (which was, through no accident, ripped right off by Microsoft to form MS-DOS 1.0). 18:09:48 So they designed GEM as just another component, which exploited the environment already set up by CP/M. 18:10:12 Since MS-DOS was basically CP/M-86, that's the version that got sold. 18:13:52 whats GEM? 18:14:02 chris-xp: You know the Atari ST? 18:14:07 kc5tja: No. 18:14:13 kc5tja: I'm not cool like you. 18:14:13 * kc5tja is sad. :( 18:14:24 C'MON MAN!!! YOU'RE MAKING ME FEEL OLD!!!! :) 18:14:37 You're only old outside #forth. 18:14:45 I know what the Atari ST is. and i'm young and hip and cool 18:15:24 GEM is the graphical user interface used on some PC-compatible software like Ventura Publisher, and pretty much exclusively on the Atari ST. 18:15:47 Bernd Paysan used to use it :P 18:15:53 Sonarman: Yep. 18:16:02 and he's OLD 18:16:20 * kc5tja is a fan of AmigaOS's Intuition, myself. However, I have to admit that for a system like Kestrel, GEM would be way, way better. 18:16:38 I wouldn't use GEM's API without modifications though. 18:17:01 I'd take the time to fix a number of problems with GEM. 18:17:08 Like, its continued use of 8.3-formatted filenames. 18:17:08 :) 18:17:21 (Remember: it was originally designed for CP/M!) 18:17:58 chris-xp: Here are some screen shots of GEM running on the PC: http://www.deltasoft.com/screenshots.htm 18:19:06 ooooh, its Mac-ish :) 18:21:42 fun stuff... 18:21:49 theres a free version, cool 18:22:36 man, 2112 is a kickasss song 18:22:39 In fact, it's *so* Mac-ish that DR got *sued* by Apple because it competed so heavily with MacOS System 1. 18:22:51 kc5tja: *wow* 18:22:57 kc5tja: that is *so* amazing! 18:23:02 * chris-xp is in a mocking mood 18:23:02 Technically, GEM is a better GUI than AmigaOS's Intuition in that it's more flexible. 18:23:19 is it better than Frapiar's GUI? :) 18:23:27 It could be, I don't know. 18:23:32 It might not be. 18:24:49 Well, Eventually I plan to make the Frapiar GUI a cross-platform Lib 18:25:01 the whole Frapiar system, in fact 18:25:08 but for now not :) 18:26:22 http://www.geocities.com/SiliconValley/Station/9442/tos2.html -- here are a few color shots of Atari ST via a TV set. 18:27:00 What amazes me is that Atari managed to make a very functional GUI in 320x200 screen resolution. 18:27:35 GEOS for the Commodore 64 was very limited in what it could do due to screen resolution. But I guess GEOS was striving too hard to achieve something, while GEM was just being itself. 18:28:11 thats just like Mac :) 18:28:49 kc5tja: well, It seems like Atari isn't trying to smack everything on the screen 18:30:08 hrm, Sun stock is way low right now 18:30:49 What would be a good loop timeout for a VM Forthbot? 60000ms? 18:31:05 madgarden: 1 minute? Seems reasonable to me. 18:31:34 kc5tja: ever tried evilwm? 18:31:39 Yea... should be long enough to allow some more complex algorithms to run, and not so long that a goof up is painful to wait for. 18:34:08 kc5tja: you seen one of those new RX-8's? 18:35:14 chris-xp: I've driven one. 18:35:19 chris-xp: No. 18:36:01 kc5tja: are they sweet? :) 18:36:06 and evilwm is nice, btw 18:36:51 chris-xp: Oh yeah . . . they are *damn* sweet. 18:37:09 If I could drop a 13B RENESIS in my '7, I'd do it tomorrow. 18:37:41 :P 18:37:43 man 18:37:57 factory recommended shit at 6000RPM 18:38:01 thats when mine redlines 18:38:10 er, shift, not shit 18:38:10 lol 18:39:49 Yeah, 6500 is my redline too. 18:39:54 Well, no it's not. 18:39:56 7500 is. 18:40:16 But much beyond 6500 and the over-rev buzzer chimes in, and the engine loses a lot of power. 18:40:17 --- join: Mark4 (~Mark4@67-99-193-134.cpe.fastfreedom.net) joined #forth 18:40:27 But I can't imagine *ever* having a need to go beyond 6500 RPM in my car. 18:41:07 The RENESIS redlines at 9500 RPM, BTW. 18:41:36 RX-8 redlines at 12k 18:41:50 or at least his 18:42:41 Stock, it redlines at 9500RPM. 18:42:50 The *ENGINE* redlines (stock) at 10500. 18:43:03 The only reason the RX-8 redlines at 9500RPM is the limitations of the *transmission*. 18:43:22 damn. 18:43:25 If his redlines at 12500, then his engine has been modified. 18:43:26 I'd love one of those 18:43:44 well, its a brand new one --- maybe he's just full of it (I'm going by what he says) 18:43:52 * kc5tja wants the RX-8 to sell well, so that he can see a 4th generation RX-7. 18:44:03 :) 18:44:24 Mazda was leaking hints that the engine in the 4th generation RX-7 will be a 1.5L 15A. 18:45:02 A 15A RENESIS would place the RX-7 firmly in the Corvette C5R territory of performance. 18:45:05 Bone stock. 18:45:29 good stuffs? :) 18:45:30 A car that weighs only 2800 lbs and has a 350HP engine in it would just rock. 18:45:50 :) 18:45:51 man 18:46:02 considering my little V4 50HP piece of crap 18:46:03 lol 18:46:06 That's too funny -- 1.5L putting out 350HP. :D 18:46:14 ? 18:46:29 The 13B rotary engine is only 1.3L displacement, dude.. :) 18:46:34 It gets all its power from high RPMs. 18:47:00 The 15A would have 1.5L displacement, which adds to the torque, but at the same RPMs (since RPMs are limited by the engine's ability to breath). 18:47:03 well, i'd have to say that I don't understand :) 18:47:03 Hence, it'd get more power. 18:47:19 oh 18:47:20 ok 18:49:20 --- join: Sonarman_ (~matt@adsl-64-160-165-111.dsl.snfc21.pacbell.net) joined #forth 18:49:26 --- nick: Mark4 -> I440r 18:49:41 --- quit: Sonarman (Nick collision from services.) 18:49:49 --- nick: Sonarman_ -> Sonarman 18:51:09 brb fooood 19:02:42 I440r: Howdy 19:02:45 I didn't see you join. :( 19:03:06 Unfortunately, I have to start coding again. 19:03:11 I have a *LOT* to finish by tomorrow. 19:03:27 hi :) 19:03:32 i snuk in :) 19:04:12 im driving my car to california so i dont have to leave it in long term parking 19:04:27 That'll be quite a drive for you, yes? 19:04:47 ill be ther by monday night at this rate 19:05:06 You're driving *now*, as you type this? 19:05:12 no lol 19:05:25 with ViaVoice Mobile :) 19:05:34 im holing up for the night at a hampton inn with free high speed :) 19:05:39 --- join: blockhead (default@dialin-224-tnt.nyc.bestweb.net) joined #forth 19:07:44 Nice :) 19:07:49 --- join: ayrnieu_ (julian@65.169.246.30) joined #forth 19:08:24 --- quit: ayrnieu (Read error: 113 (No route to host)) 19:51:04 I440r: why coming to california and where in california? 19:52:36 Too bad he's so far north of me; we could meet and hang ut. 19:52:37 out even 19:53:15 well, if he's going up the 101, he'll likely drive by my town :) 20:03:33 kc5tja: we gotta hang out some time anyway 20:03:40 kc5tja: before I move back to germany 20:04:26 Yeah, definitely. 20:04:38 :) 20:04:39 But you're so far away from me... :) 20:04:39 hrm 20:04:47 kc5tja: SVFIG? :P 20:05:00 That's *minimum* a 7 hour drive from where I live. 20:05:18 kc5tja: hrm ... well, if you ever go to see a relative up north, come up the 101 and stop at camarillo :) 20:05:22 kc5tja: yeah :( 20:05:35 My nearest relative, literally, is in New York state. 20:06:32 !!!!!! 20:06:33 fuck. 20:06:50 well, next time they have a forth convention between here and SD i guess 20:07:00 I'm not familiar with any. 20:07:02 although I am _NOT_ driving to LA 20:07:06 Have there ever been any? 20:07:25 I'm not good at driving to face the onslaught of stupid fucks on the road 20:07:31 kc5tja: probably :) 20:07:34 kc5tja: not sure... 20:07:39 I've never heard of one. 20:07:47 SDFIG. Just doesn't ring. :D 20:08:35 :D 20:10:02 Forth Inc has moved to: 20:10:03 5155 W. Rosecrans Ave. #1018 20:10:03 Los Angeles, CA 90250 20:10:03 +1 310.491.3356 voice 20:10:03 +1 310.978.9454 fax 20:10:24 --- quit: qFox ("if at first you dont succeed, quit again") 20:19:24 --- quit: Sonarman (Read error: 60 (Operation timed out)) 20:24:02 --- join: Sonarman (~matt@adsl-64-160-164-65.dsl.snfc21.pacbell.net) joined #forth 20:24:15 woo i just wrote a BULLETPROOF fibonacci word :) 20:24:36 a sign that i should be actually be doing something useful :) 20:24:37 show show show! 20:24:40 show show show! 20:24:44 : fib ( n -- fib.n ) 20:24:45 dup -2 2 within ?exit 20:24:45 dup 0< 1 or ( n -1|1 ) 20:24:45 dup -rot * ( -1|1 abs.n ) 20:24:45 20:24:47 dup 1- >r 20:24:50 begin 20:24:52 r@ + r> 1- 20:24:55 ?dup while >r repeat 20:24:57 * ; 20:25:56 wait 20:26:16 line 2 should be: 20:26:24 dup -3 2 within ?exit 20:27:02 that's A LOT of work for a fib 20:27:17 is it the linear recursive fib? or binary recursive? 20:27:45 wheee 20:27:48 Hrm 20:27:54 I just had a BITCHING ide 20:27:56 I just had a BITCHING idea 20:27:56 * blockhead is losing his forthness or sometihg - what is "within"? Is that new? 20:28:10 blockhead: its like between 20:28:21 : fib 0 1 rot [ tuck + ] times ; 20:28:49 that's factor for you :-) 20:28:57 chris-xp: 'k :D 20:29:17 * blockhead is still in the forth-83 world :/ 20:29:29 of course 'times' is a bit complex 20:29:42 it evaluates a quotation a given number of times 20:29:52 slava: what about negative numbers? :) 20:29:54 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 20:30:05 I think that DUP should be named TOP... it would be easier to read. It's more absolute. 20:30:08 Sonarman, i don't handle that :-) 20:30:20 who wants to see my TIMES :-) 20:30:34 show show show 20:30:44 : times 20:30:44 [ 20:30:44 over 0 > 20:30:44 ] [ 20:30:44 tuck >r pred >r call r> r> 20:30:44 ] while 2drop ; 20:31:34 * blockhead doesn't know factor. Is times like a multiply? 20:31:38 no 20:31:51 \ 3 [ "hello world" print ] times 20:31:52 hello world 20:31:52 hello world 20:31:52 hello world 20:32:05 : fib ( n -- fib.n ) dup 0= ?exit dup 1- recurse + ; 20:32:38 almost as short as yours :) 20:33:37 oh, it's a looping construct :D gotcha 20:34:12 blockhead, yes. all control structures take the various code blocks to invoke from the stack as lists [ ... ] 20:34:19 however the compiler transforms the code into something very different 20:34:25 so that it doesn't traverse lists while executing 20:34:30 well, yeah, that's what compilers do :D 20:35:57 slava: what does 'pred' do? 20:36:19 : pred 1 - ; 20:36:31 should be named 1- :-) 20:36:41 at one stage the parser had a problem with parsing words that began with digits. 20:36:58 so i had dup2 not 2dup. i changed the stack words when it was fixed, but pred/succ remain for 1- 1+ 20:38:00 Shoulda used INC/DEC. :P 20:38:19 pred/succ is from joy. 20:38:39 here is a joy-like implementation of fib: 20:38:43 : fib 20:38:43 [ 20:38:43 dup 1 <= 20:38:43 ] f [ 20:38:43 pred dup pred 20:38:46 ] [ 20:38:48 + 20:38:50 ] binrec ; 20:39:03 its the one from factor's standard library actually. its binary recursive -- inefficient. i use it for benchmarking the compiler. 20:39:44 note that f and [ ] are exactly the same thing -- they both represent an empty list, a null pointer, or a boolean false 20:40:10 GLEE would be a cool name for a Joy language competitor. 20:40:25 binrec is hairy: 20:40:25 : binrec 20:40:26 binrecP call [ 20:40:26 binrecT call 20:40:26 ] [ 20:40:26 binrecR1 call binrec-left binrec binrec-right binrec r> call 20:40:28 ] ifte ; 20:40:56 but it can still deduce the stack effect of the above: 20:40:59 \ [ fib ] balance . 20:41:00 ( X -- X ) 20:41:19 slava, : fib 0 1 rot [ tuck + ] times ; 20:41:19 How is it different than : fib 0 1 rot 0 do tuck + loop ; 20:41:40 its probably the same 20:41:47 but i don't have immediate words 20:41:54 It leaves 2 values on the stack. 20:41:57 Ahh, OK. 20:42:00 you're right. 20:42:04 it needs a 'nip' at the end. 20:42:22 \ : fib 0 1 rot [ tuck + ] times ; 20:42:22 WARNING: redefining fib 20:42:22 \ [ fib ] balance . 20:42:22 ( X -- X X ) 20:43:40 Actually, I think it needs drop, not nip. 20:43:58 Forthy version (current test wordset): : fib 0 1 rot for tuck + next drop ; 20:44:40 Heh, gotta love that stack effect. 20:45:31 \ [ rot ] balance . 20:45:31 ( X X X -- X X X ) 20:45:34 :-) 20:45:46 \ "rot" see 20:45:46 ~<< rot A B C -- B C A >>~ 20:46:13 shouldn't there be a SUCC after the ROT in your fib, slava? 20:46:37 Sonarman, no, the rot is only executed once 20:46:49 it puts the parameter passed on the stack at the top 20:46:59 so that 'times' can take it an iterate that many times evaluating [ tuck + ] 20:47:19 i mean, shouldn't [ tuck + ] be iterated one more time? 20:47:35 it depends on if you start your fib from 0 or 1 :-) 20:47:40 maybe : fib 1 1 rot [ tuck + ] times nip ; 20:47:57 ah :) 20:48:17 here is a way to measure framerate in my game: 20:48:20 [ yield ] time 20:48:27 'time' prints the time taken to execute the given quotation 20:48:49 'yield' saves a continuation, suspends the current fiber, and posts it to the game eval queue that is evaluated in the next frame 20:51:31 --- join: Nutssh (~Foo@gh-1063.gh.rice.edu) joined #forth 20:51:37 hi Nutssh 20:51:53 Hi. 20:52:37 Hi. 20:53:42 hi ya 21:16:54 Going to get some food. 21:20:19 --- quit: Nutssh ("Client exiting") 21:29:11 --- quit: tathi ("leaving") 21:37:57 back 21:49:26 g'night all 21:49:36 --- quit: blockhead ("Client Exiting") 21:50:04 Does c" not store stuff in the PAD? 21:53:47 Not if it's used inside a :-definition. 21:54:06 Implementation-defined otherwise. 21:55:25 Hmm. 21:55:55 Sorry, but not quite sure what that actually means. Where would the text go? In a BUFFER? 21:58:37 I see... the compiled c" compiles a string literal, then on execution, spits it to wherever it normally spits it. 21:58:54 No, the string is kept right in program code. 21:58:59 It just pushes the address and length onto the stack. 21:59:17 Pushes the address of the string located in code? 21:59:22 Yes. 21:59:32 Not terribly safe in unified code/data environments. :) 21:59:50 Yea, wouldn't want to write to that string. 21:59:53 OK. 21:59:59 Now, interpreted c"... 22:00:06 Is there a reason it wouldn't use PAD? 22:00:16 Mostly because it would get overwritten by CREATEd words? 22:04:33 Maybe, I don't know. 22:04:56 I know that sometimes I've been known to use PAD 256 + for addresses sometimes, because PAD is also used by numeric conversion words. 22:05:28 Ahh... OK. That's why I saw PAD 342 + somewhere. 22:06:17 : PAD HERE _LIT 324 _PLUS ; 22:06:22 From Minforth. 22:07:13 Hmm... 22:07:19 0 0 - here pad c" test" ok 22:07:19 3 0 - .s 39584 39908 114176 ok 22:07:30 c" is putting the text way off in the weeds somewhere. 22:17:03 --- nick: ayrnieu_ -> ayrnieu 22:25:43 --- quit: ASau () 22:38:43 frapiar is now officially awaiting savannah approval 22:59:02 --- quit: fridge (Read error: 110 (Connection timed out)) 23:05:49 --- join: fridge (~fridge@dsl-203-113-230-109.NSW.netspace.net.au) joined #forth 23:20:22 --- quit: Sonarman ("leaving") 23:22:35 --- quit: ayrnieu (Read error: 104 (Connection reset by peer)) 23:37:02 --- join: ayrnieu (julian@65.169.246.30) joined #forth 23:59:59 --- log: ended forth/04.03.12