00:00:00 --- log: started forth/04.04.02 00:25:23 --- quit: ASau () 00:53:48 --- quit: yeoh ("User pushed the X - because it's Xtra, baby") 01:38:51 --- join: ASau (~asau@158.250.48.196) joined #forth 01:46:52 Privet 01:58:51 God dag! 02:45:35 --- join: qFox (C00K13S@cp12172-a.roose1.nb.home.nl) joined #forth 02:58:13 --- quit: jewel (Read error: 54 (Connection reset by peer)) 03:10:13 --- join: crc (crc@1Cust178.tnt1.levittown.pa.da.uu.net) joined #forth 03:14:16 --- quit: crc (Nick collision from services.) 03:14:48 --- join: crc (crc@1Cust191.tnt1.levittown.pa.da.uu.net) joined #forth 03:21:54 --- join: crc_ (crc@1Cust198.tnt1.levittown.pa.da.uu.net) joined #forth 03:22:05 --- quit: crc (Nick collision from services.) 03:22:23 --- nick: crc_ -> crc 03:38:25 --- quit: crc ("Off to work...") 04:56:25 --- join: yeoh (~Yeoh@219.95.25.34) joined #forth 05:01:05 Herkamire 06:00:09 bye :) 06:00:12 --- part: yeoh left #forth 06:06:21 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 06:12:59 --- quit: Robert ("brb") 06:25:49 --- quit: tathi ("leaving") 06:39:20 --- join: Robert (~snofs@c-f55a71d5.17-1-64736c10.cust.bredbandsbolaget.se) joined #forth 07:15:25 --- join: networm (~networm@L0626P08.dipool.highway.telekom.at) joined #forth 07:28:13 --- quit: ASau (kornbluth.freenode.net irc.freenode.net) 07:28:33 --- join: ASau (~asau@158.250.48.196) joined #forth 07:49:32 --- join: kc5tja (~kc5tja@66-91-231-74.san.rr.com) joined #forth 07:49:42 --- mode: ChanServ set +o kc5tja 08:00:13 --- join: Teratogen (~leontopod@intertwingled.net) joined #forth 08:00:20 FORTH UBER ALLES! 08:02:43 Unfortunately, I do not speak German. 08:02:49 Teratogen: you loon 08:04:35 ianp, you crazy person! 08:05:25 thats me 08:08:38 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 08:09:31 --- quit: ASau (Read error: 60 (Operation timed out)) 08:40:57 --- nick: Teratogen -> {}o_0{} 08:40:57 --- quit: networm (Read error: 104 (Connection reset by peer)) 08:41:42 --- nick: {}o_0{} -> Teratogen 08:44:31 qFox 08:46:06 --- join: madwork (~madgarden@derby.metrics.com) joined #forth 08:46:29 yea i'm trying to figure it out myself 08:46:35 having trouble with mul and div 08:48:13 --- join: networm (~networm@L0632P24.dipool.highway.telekom.at) joined #forth 08:50:19 Greetings. 09:00:35 hi madwork! 09:06:08 hi! 09:12:01 Yay for enormously bloated and complexifuckated code bases! 09:16:53 heh 09:17:00 that's what you are working on? 09:17:45 I'm still not 100% sure. :P 09:17:56 It's a huge print engine. 09:18:23 Part of it is an interpreter that converts from some AS400 printer code format to PCL. 09:18:52 hm.. PCL.. should I know it? 09:19:27 Printer Control Language. 09:19:34 ah 09:41:15 hm 09:45:13 qFox: I understand the MUL instruction and DIV instruction in the p24 manual. Although I don't entirely understand Why (on a bit level) they produce a multiply and devision when repeated 09:54:21 oh oh oh oh I get it. I now grok the MUL instruction. 09:55:18 when I read this: "The T-A register pair is now shifted to the right by one bit." I was picturing T on the right. but on the left it works out :) 09:55:46 --- quit: networm (Remote closed the connection) 10:01:38 Otherwise they'd have called it the A-T register pair ;-) 10:02:47 yeah :) seems rather obvious now :) 10:03:18 hm well i think i have it visually, but i have to write it out in order to actually prove to myself that it is correct 10:04:05 * Herkamire tries long devision in binary with a pencil 10:04:19 :p 10:05:41 heh :) gosh, that's easy 10:06:26 but when you shift right 10:06:43 does bit 0 of T shift into bit 24 of A, or bit 23 of A? 10:06:55 no, the div rotates left 10:07:02 sorry i meant for mul 10:07:14 although same thing for div i guess 10:07:19 is the carry ignored? 10:08:24 I don't think the carry should ever get set 10:08:36 the low bit in T is shifted to the high bit of A 10:09:29 yes but they are 25bit registers 10:09:40 and bit 24 (the 25th bit) is the carry 10:10:50 thing is 10:10:55 i have all the instructions scripted now 10:11:00 except for mul and div 10:11:09 so i just copied that example to the memmory 10:11:19 the one on that page 10:11:30 and it worked etc 10:11:36 but the result is the same as what i started with :s 10:14:27 qFox: You're still getting hung up on that 25th bit. 10:14:35 yes 10:14:35 :) 10:14:38 The "Carry" bit is just the 25th bit of an addition or subtraction. 10:14:40 it'll haunt me forever 10:14:40 That's it.b 10:14:46 It's just a 25th bit. 10:14:58 so ignored with the shl/shr in mul/div 10:15:01 It has no more or no less significance than that. 10:15:04 No! 10:15:05 oki 10:15:07 thanks :) 10:15:09 It's a proper 25th bit. 10:15:22 i hate it 10:15:26 and it hates me 10:15:34 kc5tja: is the stack 25 bit also? 10:15:39 Herkamire: Yes. 10:15:41 memory is 24-bit right? 10:15:44 P24 is an offspring of the P21. 10:15:48 Yes, memory is 24 bit. 10:16:17 Anyway, I need to haul off to work. 10:16:39 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 10:17:08 rrrrr... kc5tja, stand by for questioning! 10:17:55 hahaha 10:18:22 I really don't think the carry bit of A is used in multiplication 10:18:30 thats just what he said. 10:18:36 it says a 48 bit product. not a 50 bit product 10:18:46 it says to call MUL 24 times, not 25 times. 10:19:35 if the carry bit of A was used, and you call MUL 24 times like they say, I don't see how the low bit the product (in A) would ever get set. 10:19:53 well i have a picture in my head about how it should go 10:20:53 101 x 101 should be 11001 10:21:07 unfortunatly i cant look forward so i cant do it in my head :) 10:21:17 (any product of two odd numbers comes out odd. eg with the low bit set) 10:24:54 i think i'll write it out with 5 bit registers 10:25:15 i dont feel like actually writing down 24bits a gazlion times :p 10:25:52 heh :) 10:29:26 --- join: I440r (~mark4@64.47.44.254) joined #forth 10:48:27 Hey 10:49:43 --- quit: tathi ("leaving") 11:29:32 herk 11:29:34 Herkamire 11:29:37 you there? 11:31:25 Hey Herk! Hey Herk! Here comes Daedalus! 11:31:41 wrong herk :p 11:50:30 --- quit: madwork (Read error: 104 (Connection reset by peer)) 12:29:21 --- quit: Teratogen ("SKYKING, SKYKING, DO NOT ANSWER") 12:46:10 --- join: madwork (~madgarden@derby.metrics.com) joined #forth 12:49:43 --- join: wossname (wossname@HSE-MTL-ppp61506.qc.sympatico.ca) joined #forth 12:51:52 --- quit: madwork (Read error: 104 (Connection reset by peer)) 13:05:20 --- quit: wossname ("irc is dead? :(") 13:13:14 bah i dont get the mul or div. either the explanation is incorrect or i'm looking at it from the wrong view or whatever. 13:14:08 qFox: ok, I'm back 13:14:17 my hero 13:14:22 hehe 13:14:28 no i really cant figure it out 13:15:07 especially the div 13:15:22 only add S to T if it produces a carry? 13:15:23 work on mul then 13:15:32 cant figure out either 13:15:39 but div is just plain wrong :) 13:15:55 but with mul 13:15:59 div is confusing. I have sortof a vague theoretical understanding of div. 13:16:07 mul makes sense to me 13:16:09 well lets take mul 13:16:18 add S to T, if bit 0 of S is 1 13:16:23 ok, thats fine, np 13:16:41 but then shift T-A right 13:16:41 no 13:16:51 i'm sorry 13:16:55 if bit 0 of A is 1 13:16:55 if bit 0 of A is 1 13:17:03 tahts what i mean 13:17:06 sorry 13:17:08 but ok 13:17:12 then you shift T-A 13:17:41 now am i mistaken or is T-A a bitwise concat like this: ttttttttttttttttttttttttaaaaaaaaaaaaaaaaaaaaaaaa 13:17:51 correct 13:18:04 and the product of the shr will be 0ttttttttttttttttttttttttaaaaaaaaaaaaaaaaaaaaaaa 13:18:09 ? 13:18:18 right 13:18:23 (23 a's, 24 t's, and the 0) 13:18:38 right 13:18:54 um 13:19:09 if you could look at the expression on my face right now... 13:19:18 :) 13:19:26 one side of my brain says its right, and the other side doesnt feel right about it :) 13:19:52 qFox: take a pencil, and do multiplication on paper in binary of these numbers: 11001 x 1011 13:20:08 i'll try again 13:20:22 i have a feeling i'm mixing up the shl/shr with mul/div 13:20:44 shr just moves all the bits to the right one place 13:20:58 --- join: madwork (~madgarden@derby.metrics.com) joined #forth 13:24:17 11001 13:24:18 x 1011 13:24:18 ------- 13:24:18 11001 13:24:18 11001 13:24:20 + 11001 13:24:22 ---------- 13:24:25 100010011 13:25:44 the top number is in S, the next in A 13:26:21 the answer is accumulated in T which is shifted down into A each line 13:29:34 for each digit in A (starting from the right) we add in S (but shifted left once for each digit in A we have already done) 13:29:53 yes, sorry, i "see" the concept, it just has to come thru in my head 13:30:04 the only way i'll remember it 13:30:05 --- quit: I440r ("Leaving") 13:30:58 on that machine, instead of shifting S up to add it in in the right place, it shifts the answer down 13:31:29 after you call MULL 24 times, it has been shifted all the way down into A 13:32:14 yea 13:33:22 kinda cool how the 1011 fully dissapears at the same time that the answer is fully shifted into A 13:34:00 ye :) 13:35:24 --- join: networm (~networm@L0632P24.dipool.highway.telekom.at) joined #forth 13:39:55 --- join: Downix (~downix@adsl-2-24-31.bct.bellsouth.net) joined #forth 13:47:38 --- quit: fridge (Remote closed the connection) 13:54:17 qFox: MUL make sense to you now? 13:54:40 yes, even though on paper it didnt work out with 5 registers, but i'm gonna code it anyways 13:54:49 5 bits 13:54:51 god i'm tired 13:55:59 ok, now lits DIV in 4 bits 13:56:05 we'll do 10/3 13:56:18 k 13:56:25 ie 1010/0011 13:57:28 I'm following the /MOD example 13:57:47 ok 13:57:53 we negate 3 and place it in S. So S is 1101 (-3) 13:58:12 your lsb is left? 13:58:26 x000 is your least significant bit? 13:59:38 no. lsb is on right 13:59:49 always 13:59:57 except in japenese maybe 14:00:26 numbers are always written with the least significant digits on the right 14:00:57 anyway, the 1010 goes in A, and we start T off with a zero 14:01:16 we add S into T. no carry bit. T= 1101 14:02:05 ok, the carry is dropped? 14:02:06 shift T-A left (t's cary (0) goes to A[0]) 14:02:40 so T: 1011, A: 0100 14:02:52 oh 14:02:55 that's one DIV. now we do again 14:04:19 add S into T. T: 11000 (carry set) 14:05:27 rotate T-A left (T's carry into A[0]): T: 0000, A: 1001 14:05:36 --- part: madwork left #forth 14:06:06 again add S into T. T: 1101 (no carry) 14:06:24 oh so it is actually rotated, not shifted 14:06:43 --- quit: warp0b00 ("Tried to warn you about Chino and Daddy Gee, but I can't seem to get to you through the U.S. Mail.") 14:06:54 rotate T-A left (T's lack of carry into A[0]): T: 1011, A: 0010 14:07:19 qFox: don't get lost on the terminology, it just seems like a rotate because the T's cary bit (which seems like the highest bit) is put into A 14:07:35 well if thats not rotating what is... 14:10:08 --- join: warpzero (~warpzero@dsl.142.mt.onewest.net) joined #forth 14:11:32 ok, is the carry condition valid or not? like its explained, i keep tripping over it :( 14:11:45 "If the addition produces a carry place the sum in T, otherwise leave T unchanged." 14:12:08 Oh crap, I forgot about that. 14:12:13 because if this is true, and you mul with a clear T, this condition is NEVER true... 14:12:16 no wonder my answer was coming out wrong :) 14:12:30 as you cant possibly create a carry when adding 0 to a number 14:12:47 it will be true when a high enough value from A is shifted up into T 14:13:09 oh, yea, so basicly all first div's never add 14:13:23 when you do long devision in binary, it iether goes in or it doesn't. if it goes it you put a 1 in your answer and subtract the divisor. 14:13:45 if it doesn't go in you move over a digit and repeat 14:14:23 --- join: I440r (~mark4@64.47.44.254) joined #forth 14:15:56 --- join: I440r_ (~mark4@64.47.44.254) joined #forth 14:17:31 Hi 14:17:41 init S: 1101 T: 0000 A: 1010 14:17:41 add T: 0000 A: 1010 14:17:41 rot T: 0001 A: 0100 14:17:41 add T: 0001 A: 0100 14:17:41 rot T: 0010 A: 1000 14:17:42 add T: 0010 A: 1000 14:17:44 rot T: 0101 A: 0000 14:17:46 add T: 10010 A: 0000 14:17:48 rot T: 0100 A: 0010 14:17:53 add T: 10001 A: 0010 14:17:54 rot T: 0010 A: 1010 14:17:55 is that correct? 14:19:08 --- quit: I440r (Read error: 60 (Operation timed out)) 14:20:19 the first part is 14:20:31 add T: 10010 A: 0000 \ good to here 14:20:40 what a surprise 14:20:48 then what do i do with the carry? 14:20:51 rot T: 0100 A: 0001 14:20:59 what if its this 14:21:04 add T: 11010 A: 0000 14:21:09 how would you rot that? 14:21:22 the carry bit of T goes into the low bit of A 14:21:41 yes but what happens with the high bit of T? 14:21:53 add T: 11010 A: 0000 14:22:08 where does that shift to? 14:22:10 carry? 14:22:41 dunno 14:22:54 :\ 14:23:20 let's play it through that it just dissapears and see if we get the right answer 14:23:47 alright.. 14:24:48 not a good example for that 14:25:01 add T: 10010 A: 0000 14:25:01 rot T: 0100 A: 0001 14:25:01 add T: 10001 A: 0001 14:25:01 rot T: 0010 A: 0010 14:26:21 looks correct to me 14:26:48 shr T: 0001 14:26:58 what's with this though: "1 ldi xor shr" 14:27:12 1 xor would change the low bit. then shr would drop it 14:27:26 what's the point of changing the low bit if you're just going to shr? 14:27:48 (Note: I think that this last shr undoes the most recent shl that is 14:27:48 part of div, aligning the remainder properly in T. Also I think 14:27:48 this division actually only works properly for 47 bit unsigned 14:27:48 numbers in T-A. -- WRC) 14:27:59 oh thats actually for the above, nevermind 14:28:14 but you're asking me? :) 14:28:44 ok, so the answer to your question about the high bit in T shifting out, is that it should always be a zero 14:29:00 I'm not sure about that 14:29:16 not at all... 14:29:26 i have a suggestion 14:29:36 we wait for the human cpu dude to return :p 14:29:45 kct5ja :) 14:29:54 I don't think that that bit will ever have a 1 in it. 14:30:01 ever? 14:30:01 (when the rotate happens) 14:30:07 i doubt that :\ 14:30:21 it only would if you devide by a negative number (one with the top bit set 14:30:24 must be some occurrence when that happens? 14:30:53 I don't know 14:31:36 well, I think I've given you as much as I understand 14:32:07 I gotta do some work now 14:32:30 k, later 14:56:47 on the bright side, my mul works properly now, leaving the high and low part of the result in T and S 14:56:55 (high on tos) 15:01:10 nice :) 15:01:33 that's great. I'm very tempted to write a p24 emulator myself 15:01:46 but unfortunately I have to work now 15:03:08 :) 15:03:36 i suddenly do realize that i have no idea how negative numbers are treated... whatever it is i dont think properly 15:03:40 but i'm not quite sure 15:11:52 with addition it doesn't matter (except that the carry bit often get's set) 15:13:38 I think it does matter with dividing and probably multiplication. we'll have to wait for kc5tja or someone on that one. 15:23:22 where do i go on from here... i cant seem to get specific details on what's next... coding the metacompiler, sure, but where to start? 15:23:52 the cpu emulator works fine, i think. it reads from the "memmory", and executes its instructions accordingly 15:32:48 great :) 15:38:00 next... probably you need to write a cross compiler to compile come code for it to execute. 15:38:12 s/come/some 15:38:42 and you'll probably want to make some way to interract with the p24 15:38:51 yea but i'm not sure how i start. all i have now is a nice cpu that can process memmory, but the memmory is empty :) 15:39:06 right. now you need to put some instructions in memory 15:39:37 use a forth, and define a word for each of the p24 instructions (make a word for each, that compiles that instruction) 15:39:59 so you can paste in the definitions from the p24 manual to compile definitions such as the /MOD one we were trying 15:40:14 yes can understand that, but the problem lies in "use a forth" 15:40:21 --- quit: networm ("Client exiting") 15:40:31 where do i start building a meta compiler... i mean, thats my next step, aint it? 15:41:19 I think cross-compiler is the term. I think meta-compiler is when you write the compiler in the language that the compiler implements 15:41:32 eg, herkforth contains code to compile herkforth. 15:41:52 yes, but thats what i'll want. 15:42:11 define RET which puts 0000010 or whatever the opcode is, and packs it into the next intsruction word 15:42:17 i only want to define the barest of words in code, for the rest i want a threaded forth 15:42:32 oop, dinner. gotta go 15:42:35 k 15:43:25 the other problem is this: how will you interact with the p24? 15:43:40 it has no concept of input and output 15:43:43 i'm using a mirc binvar to emulate the memmory 15:44:18 i read that the forth most basic word is QUIT, which simply loops like : QUIT check-input recurse ; 15:44:24 you could emulate a frame buffer or something 15:44:31 (was recurse the correct word for a word that calls itself?) 15:44:43 looks good 15:44:47 ok, really leaving now 15:44:50 hehe 16:03:38 : QUIT BEGIN QUERY EVAL AGAIN ; 16:07:27 --- quit: ianp (Remote closed the connection) 16:23:15 --- join: Sonarman (1000@adsl-67-113-235-181.dsl.snfc21.pacbell.net) joined #forth 16:30:01 is the word lookup table a linked list structure type? 16:30:11 single or double chain? 16:38:09 < nutbar> [root@linux!/usr/src/bind] grep "{" named.conf.newer | wc -l 16:38:09 < nutbar> 19314 16:38:09 < nutbar> [root@linux!/usr/src/bind] grep "}" named.conf.newer | wc -l 16:38:09 < nutbar> 19313 16:38:09 < nutbar> [root@linux!/usr/src/bind] 16:38:11 < nutbar> great 16:38:14 * nutbar fumes 16:38:17 < nutbar> one fucking missing } 17:00:41 ok here's what i do now. in bytes, the binvar starts at address 1, not 0 so i'll adopt that, hence the first address of the memmory is 1. 17:00:56 1-3 : jump 81 17:01:28 4-6 : user pointer (value where the current dictionary is at, basicly HERE) 17:02:05 7-9 : address of first dictionary entry (this will be a double chained linked list) 17:02:26 10 : number of bytes in input buffer (if 0, there is no input) 17:02:40 11-80 : input buffer 17:02:55 81 : QUIT 17:04:17 hm thats flawed isnt it... should be 91 17:04:44 ok its not flawed, but i mean the standard is 80 char input, so to that it is flawed :) 17:04:49 but ok, QUIT is at 91 17:18:49 oh, i guess you cant have a double chained dictionary lookup table... because then you either had to remember where you started, or you would loop endless if the word didnt exist... oopsie :p 17:20:05 hm or, you can, just a broken chain. 17:20:24 sorry if i bore anyone :) 17:39:26 --- quit: I440r_ ("Leaving") 17:55:27 well that works, yay :) 17:56:03 scripted in a BYE so it wont continously check the buffer (mirc processes scripts serially and "hangs" as long as its processing a script) 18:00:02 next is creating a word that reads in one space delimited word, that looks it up in the table, and returns the adr if a match is found, or 0 if not. 18:00:52 ohwell 4am, bed time for me 18:00:58 you are creating a forth in mIRC? 18:03:36 yep 18:03:48 :) 18:06:39 what about the p24? :) 18:06:56 what do you think is the basis for it? 18:07:35 i've completely emulated the p24 now, with the exception of DIV, which i just cant figure out. will need some help from someone who does know eventually 18:07:57 and just started to create some "boot" code for it 18:08:38 wow :) 18:08:46 so the forth kernel is for your emulated p24? 18:08:50 yep 18:09:21 the goal is to actually only use the p24, and nothing else (no quick mirc hacks to accomplish something) 18:09:39 the next goal is to define a minimal set of words in CODE, and the rest in forth. a threaded forth 18:10:00 so once i coded that minimal set, i'm completely in forth and wont bother about the cpu anymore 18:10:30 all the instructions listed, except for mul now, act exactly like they're supposed to 18:10:47 although i'm seriously thinking of adding a instruction that can retrieve a byte from the memmory :\ 18:10:57 but i kinda dont want to 18:11:24 ohwell 18:11:26 sleep time 18:11:26 nite 18:11:51 nite 18:12:11 --- quit: qFox ("if at first you dont succeed, quit again") 18:17:58 --- join: TheBlueWizard (TheBlueWiz@207.111.96.94) joined #forth 18:17:58 --- mode: ChanServ set +o TheBlueWizard 18:18:03 hiya all 18:29:49 hi 18:31:03 --- join: kc5tja (~kc5tja@66-91-231-74.san.rr.com) joined #forth 18:31:09 --- mode: ChanServ set +o kc5tja 18:31:57 hiya kc5tja 18:32:35 howdy 18:32:50 * kc5tja just purchased a primer book on Verilog. 18:33:24 --- join: thin (thin@bespin.org) joined #forth 18:33:36 A CAD? 18:35:06 * thin installed firefox, opera, kmeleon.. though firefox/kmeleon load fastest at 10 to 12 seconds.. bah 18:36:57 kmeleon loads the pages faster than firefox but firefox has a more userfriendly set up 18:37:07 so i guess i'm going with firefox 18:45:16 Verilog is a hardware description language. 18:45:21 It's used to program FPGA and CPLD chips. 18:45:33 I see 18:46:49 I am hoping to write some behavioral models of the Kestrel's custom logic, and hopefully simulate it in Icarus, an open source Verilog simulator. 18:50:43 I love Icarus 18:51:00 re Downix 18:51:03 hey Sam 18:51:05 Hey, didn't know you were here. 18:51:15 hehe 18:51:17 it's ok 18:51:18 I'm going to be testing the waters of custom hardware design for my Kestrel. 18:51:23 *nods* 18:51:31 I put Andy into an FPGA finally 18:51:50 the video-chip 18:51:56 Although my up-front costs are higher, the end result will end up being cheaper, and hopefully will let me make (a) higher profits, and (b) sell more units. 18:52:00 *nods* 18:52:15 hope things work out for you 18:52:20 The Kestrel's newest hardware plans is to be a micro-Amiga. 18:52:33 Nice 18:52:48 Eddas' current design looks more like a Jaguar raped an Amiga 18:52:48 The bus controller chip will have 8 DMA channels: 4 for video, 2 for audio, and 1 for the PIB, and 1 left unused. 18:52:50 8) 18:53:17 Unlike the Amiga, though, I don't steal cycles from the CPU. 18:53:24 *nods* 18:53:37 I actually use alternate clock phases (one more reason to use the 65816 over a Z-80). 18:53:43 *nods* 18:53:57 I'm making it more a system-in-a-system 18:54:02 communicating over PCI 18:54:04 Video resolutions planned are: 320xV at 16 colors, and 640xV at 4 colors, max. 18:54:09 not bad 18:54:26 And yes, I use bit PLANES thank you very much. 18:54:30 There *IS* a blitter. 18:54:32 no problem 18:54:35 *nods* 18:54:36 But it's CPU-fed, not DMA-fed. 18:54:43 Still much faster than a pure software-only solution. 18:55:19 2 blitter sources, so only 15 logical operations. But carefully designed software can get the same effect as a 3-operand blitter. 18:55:25 *nods* 18:55:31 not bad 18:55:39 mine is GPU-controlled 18:55:48 but DMA-fed 18:56:21 Downix: are you building something too? 18:56:34 *nods* 18:56:49 kc5tja here helped me with some of my hardware work awhile back 18:58:40 I see 18:58:48 but he's designing a much more plausible machine. I'm just having fun 18:58:49 8) 18:59:36 Downix: Well, it's supposed to be a kit. 18:59:54 It'll end up with me pre-soldering more than half the components needed for it though. 18:59:59 *nods* 19:00:00 (for most people, I would imagine) 19:00:07 right 19:00:19 I highly doubt I'll ever make a dime from my work 19:00:21 but it is fun 19:00:26 kc5tja: amiga steals cycles from the cpu? for what? monitor refreshing? 19:00:37 thin: Primarily, yes. 19:00:44 downix: you'r putting "Andy" into an fpga? how does he feel about it? 19:01:08 thin: If you have a 640 pixel wide display, with all four bitplanes running, the CPU won't run except for HSYNC and VSYNC periods. 19:01:29 thin: hehehe, well, it's a tight fit... 19:01:41 kc5tja: so what have you changed to free the cpu from handling the monitor refreshing? 19:01:49 thin: Now, this is a limitation of the original chip set. The AGA chipset relieves this limitation to some extent, but limitations still do exist. 19:02:08 thin: The CPU doesn't refresh the display in the Amiga. Please don't confuse that particular issue. 19:02:18 The Acutiator would have gotten rid of this limit 19:02:22 pity it never arrived 19:05:25 thin: The many chips needed for implementing the address decoder, the video shift register, the PS/2 keyboard and mouse ports, and the audio chip will all almost certainly fit into a single CPLD chip. 19:05:25 thin: Although the CPLD costs in the $15 vicinity for a single chip, it's also true that it is, oh, a single square inch, versus the many square inches needed to use the discrete components. 19:05:25 thin: Therefore, there is a huge net savings just on PCB costs alone. 19:05:26 This will bring the Kestrel's price, even after adding profit, into the target price range of under $130. 19:05:26 And since I will have extra gates left over in a modern CPLD chip, I was planning on implementing lots of nice features. One of them is the DMA controller for the video shift register. 19:05:26 Then I realized, if I do that, I might as well add color. So, there you have it. 19:06:16 hey Sam, I could use your help in locating something 19:06:31 I need to find a FIFO with approx 2-3MB 19:06:37 thin: I'm not changing the site yet because I still have to do a *full* cost analysis, and I can't get that done until I'm done coding up the hardware designs in Verilog, simulated them for correctness, and then synthesized the designs so I know which chips it'll fit into. 19:06:45 dual-clock 19:06:47 A 2 to 3MB FIFO? 19:06:52 That's not going to happen. 19:07:01 I know they exist 19:07:06 frame-buffers 19:07:26 I have a 36kb FIFO here 19:07:28 They're not FIFOs; they are just DMA channels. 19:07:54 I'd thought of doing it like that 19:07:57 I've never seen a FIFO bigger than 64 bytes, personally. 19:08:09 but the problem then becomes synching it all up 19:09:21 I have a nice line-buffer as/is, but I want to get a full frame-buffer going 19:09:46 WOOOHOOOO!!! I CAN PAY RENT THIS MONTH!! 19:10:30 Of course, after paying rent, I'll have all of $15 in the bank left... :( 19:10:56 oh man 19:10:58 sounds like me 19:11:06 I'm doing laptop repair to make ends meet 19:11:32 Well, I wouldn't be in this situation if it weren't for George W. Pubic Hair Jr. 19:12:03 Single-handedly responsible for the largest depression since the 1920s. 19:12:15 Me either 19:12:39 If I ever meet the man personally, I'll nail (without local anesthetic) his balls to the ceiling and let him hang there until he dies. 19:13:07 if he wins re-election I would not be surprised if the 20-year curse takes him 19:13:21 If he wins the re-election, I'm leaving the country. 19:13:22 he's pissed off too many people in the world 19:13:33 same here, moving to some place with more personal freedom, like Cuba 19:13:40 I don't know where I'll go. Maybe Germany. I hear that's a nice place to live. 19:13:43 --- join: fridge (~fridge@dsl-203-113-230-133.NSW.netspace.net.au) joined #forth 19:13:50 I have friends in Germany 19:15:24 So do I, even though I've never actually met them in person. 19:15:25 :) 19:15:37 My friends, come to Canada! 19:15:57 hehe 19:16:03 I met mine in person 19:16:05 Enjoy our balmy, tropical paradise! 19:16:06 Geralds great 19:16:08 madgarden: Why, so I can get more of the same bullshit politics, only with a side of maple syrup instead? 19:16:16 hey, I'd be a happy Canadian, eh! 19:17:09 I'd hardly compare Canadian and American politics. 19:17:17 Not that I'm a politician. 19:17:26 But hell, we don't have Bush up here. That's all I care! 19:17:43 And redneck bible-thumpers generally don't get elected for anything. 19:18:41 You know, if Canada used it's sway, they could really pull the US into line 19:18:57 a little known fact, Canada supplies 40% of the US's oil 19:19:10 half of that from Alberta alone 19:19:32 So, we're next on the invasion list after Iran and Syria. 19:19:35 you got it 19:19:43 Yays! 19:19:44 not Syria, no oil there 19:19:48 Iran tho 19:19:51 I can tell exactly what two models I'm going to be coding my hardware in: behavioral for initial design and simulation, proof of concepts, etc., and GATE-level for everything else. 19:20:17 I was thinking of writing a little text adventure in Forth. 19:21:07 I'm listening to Air America 19:21:15 Downix: Syria too. IIANM, Syria is a strategic point for gaining access to Russian oil in Capsian sea. So while it has no *direct* advantage, . . . 19:21:23 I'm listening to C64 remixes. 19:21:49 madgarden: Hey! I was too, a while ago. 19:21:59 kc5tja: Hrm? Afghanistan was the best position for the caspian pipeline... as they're already building the pipeline 19:22:38 Syria's nowhere near as good a position, would be easier to just pipe it through Iraq. 19:23:43 kc5tja, what would be more appropriate for displaying room descriptions in a text adventure... having a word for each room that simply uses ." to display the text, or some parser word that takes a PFA or address of text data and parses/displays it? Which is more Forthy? 19:24:49 Personally, I would dedicate one block per room, and whenever a room was entered or the user "looked around," I'd just dump the contents of the appropriate block to the screen (stopping at the first blank line or something). 19:25:26 Hm. 19:26:00 Well, let's pretend that some room descriptions might be longer than a block. Which of my two presented solutions would you go for? 19:26:07 You know, writing screenplays is something of a stress reliever 19:26:21 write a horror movie and use people you are mad at as victims 19:26:22 8) 19:26:38 Probably would just have one word per room. 19:27:06 With ." outputing the text? 19:27:46 I was also thinking that a room defining word could be created that scans the text from the source, including newlines, etc. and ends with a " 19:28:26 Downix: good idea :) 19:29:03 So something like: 19:29:03 ROOM: blah description" blah blah blah 19:29:03 blah blah! Blah... 19:29:03 blah blah blah." 19:29:03 ; 19:30:05 Downix: I've oftne considered making a web-comic of my experiences at In-N-Out. 19:30:36 I already signed Bolton's story for what happened at Amiga, Inc for a screenplay 19:30:42 you can't write fiction that strange 19:32:04 In my current script tho, I've already had Fleecy and McCoupon as gay lovers killed by a lynch mob 19:39:31 Heh 19:39:35 Not my kind of movie. 19:39:37 Play. 19:39:38 Whatever. 19:39:53 Although my two pro musician friends are encouraging me to get into acting. 19:40:00 Funny. They say I have a perfect knack for it. 19:40:22 throw in other sordid characters like Genesi people, whatever...should be fun 19:40:28 Apparently because I can maintain a perfect demeanor during a joke and look dead serious while pulling a prank. 19:41:20 *nods* 19:41:35 Ahem, I *AM* a Genesi people 19:42:51 Yes and look how sordid you're being. :D 19:42:54 lol 19:42:58 j/k 19:42:58 * TheBlueWizard blinks then eyes Downix 19:43:15 * Downix is one of the web developers for Genesi 19:43:30 What's a Genesi? 19:43:33 like genesi.lu, pegasosppc.com or morphos.net, you're welcome 19:43:34 8) 19:43:58 madgarden: We manufacture a PowerPC based motherboard and package it up with an Amiga-compatible OS called MorphOS 19:44:25 madgarden: there is a big controversy surrounding Genesi (the lawsuit, OpenBSD spat, and so on) 19:44:54 TheBlueWizard: Hey, if Amiga, Inc had kept up their part of the contract, there wouldn't have been a lawsuit. 19:45:02 Downix, ah! 19:46:05 as for the OpenBSD situation, guilty as charged. Dale isn't the only guy that hasn't been paid properly I can say. 19:46:05 Downix: I don't know all the details, so I can't say much...I know Genesi won the lawsuit, but the saga apparently isn't done 19:46:55 TheBlueWizard: Well, Amiga Inc is claiming that they sold the very property they were to provide in the contract a full year ago, even tho they owned it in deposition 4 months ago. 19:46:57 and I know there are a number of angry Amigans against Genesi.... 19:47:14 I'd classify a lot of the angry amigans in the "kill the messenger" mode 19:47:35 plus, honestly, Genesi's CEO is a very abrasive personality 19:47:36 messenger? who would that be? 19:48:18 Anyone that dares tell the truth about the Amiga, that it is dead, that OS4 is still MIA and 3 years late, that Amiga, Inc stole money from customers, etc. 19:49:39 you should have seen them tear apart Ben Yoris, an ex-Hyperion developer (the guys doing AmigaOS 4.0) when he said it wouldn't be ready by the end of the year. 19:50:47 that was last year, mind you 19:50:49 most of what I know about Genesi are taken from TeamONE ML, so I don't know much...oh, I am perfectly aware of the legendary "Amiga curse".... 19:51:04 Genesi's no angel either, mind you 19:51:08 but at least it's honest. 19:53:58 Genesi's staff includes some of the most abrasive personalities in the Amiga community 19:54:06 they rub people the wrong way 19:54:20 frankly, Theo would have been right at home 19:54:20 8) 19:54:38 What I want to know is, why is Genesi still considered "part of the Amiga community," when they're clearly off doing their own thing now? 19:55:28 Why is Amiga Inc considered part of the Amiga community when they told the community to slink off and die? 19:55:55 kc5tja: many Amigans don't consider Genesi a part of Amiga community, mainly because they believe Genesi is out to divide up the community 19:56:16 Right now, dividing the community is what the so-called Amiga community needs most. 19:56:27 I agree with Sam there 19:56:38 the community is too inbred 19:56:44 too stuck in its ways 19:56:46 Amiga communities have been so *incestuous* (literally) with ideas and misinformation that it's disgusting. Their view of reality is so utterly skewed that it makes me sick. 19:56:54 frankly, this division's been the best thing that's happened in years 19:57:10 the competition's actually giving some life 19:57:17 * Downix nods and nods and nods 19:57:21 trust me, IKWYM 19:57:37 Time to open the windows, throw out the old, smelly, coffee and nicotine-stained couch, and do some vacuuming here. Let in the fresh air! 19:57:38 You try convincing Neko that Voyager needs CSS sometime 19:58:19 Downix: So should I put "Proudly breaks Voyager" on all my websites? I refuse to use anything BUT CSS. 19:58:24 well, I for one have been pretty much out of the "game"...I now follow the Free Software philosophy :) 19:58:26 Sure, go for it 19:58:36 TheBlueWizard: Checked out AROS? 19:58:42 TheBlueWizard: As well you should. Save your sanity! 19:58:50 kc5tja: Breaks all Amiga browsers, actually 19:59:58 AWeb tho looks like they've smartened up 20:00:05 they're dumping their engine for KHTML 20:00:27 I neither know nor care about what goes on in the Amiga community anymore. 20:00:32 *nods* 20:00:39 it's a joke 20:00:48 Downix: I haven't actually checked out AROS (except once where I tried to run two floppy demo...it simply did not boot up) 20:01:09 AROS is still crude, but it's improved a lot 20:01:17 thanks to the code it gained from MorphOS 20:01:21 You know, I would utterly *laugh* if the ForthBox Raven caught the attention of many ex-Amigans and re-ignited their desire for a non-PC computer. 20:01:28 hehe 20:01:40 I mean, the Kestrel is already "almost there." 20:01:41 I'm actually more a fan of Atarians at this point 20:02:01 4 bitplanes, a hardware/software hybrid blitter design, primitive 8-bit, single-voice-but-still-stereo sound . . . 20:03:34 * TheBlueWizard wonders what makes voice a stereo...two speakers? 20:03:53 TheBlueWizard: Yes. 20:03:57 yup 20:04:01 So I have two audio channels, one for the left, one for the right. 20:04:05 I have 6-channel but only 5 speaker support 20:04:10 for my hardware 20:04:59 to by-pass the stupid surround-sound audio patents I used a method created by old movies, the 6-channel optical surround 20:12:53 I wanted to try AROS, but it doesn't work on PPC 20:17:33 --- join: LOOPHOG (jdamisch@207.191.240.134) joined #forth 20:18:03 cmeme, what about forthmeme? :^) 20:19:18 Herkamire: they're working on getting it for PPC. 20:19:28 I like MorphOS for PPC tho 20:19:32 but I am biased 20:20:36 cool 20:20:43 does MorphOS run on a mac? 20:20:57 no 20:21:10 well, officially no 20:23:45 there's an in-development version that does run on some macs, but as Genesi's a hardware company, not much incentive to release it 20:24:21 make sence? 20:24:26 right 20:24:32 ok 20:24:44 * Downix knows it exists as he's seen it running on the bosses powerbook 20:24:47 I'm mostly interested in something open source anyway 20:24:59 Well, it's partly open-source 20:25:07 AROS and MorphOS share source 20:27:00 so much like Mac OS X, but in reverse 20:27:01 8) 20:27:16 WTF dos this haev 2 do wit teh FROTH!?!?!1/ 20:27:24 Ahem. Pardon my outburst. 20:27:38 madgarden: frothing a little there? 20:28:00 * madgarden froths on Herkamire 20:28:09 Well, you're aware that the Mac (and Pegasos for that matter) are Forth-based, right? 20:28:10 Downix: you mean that the core is closed source? 20:28:21 Right, the core of MorphOS is closed-source 20:28:26 grrrr 20:28:31 along with the critical modules like the 68k emulator 20:28:33 it's open in AROS though 20:28:34 I wouldn't call the Mac "Forth-based"... 20:28:37 right 20:28:46 madgarden: the Mac firmware is 20:29:03 Yes, but that doesn't make the whole Mac Forth-based. :) 20:29:27 maybe I can learn from the PPC hardware drivers from AROS 20:29:30 When the core of the machine is,... 20:30:16 can't hurt to look Herkamire 20:34:29 kestrel 20:38:34 --- quit: Downix ("Leaving") 20:42:39 its kind of fun to imagine what i might do... make a game for the kestrel 20:42:51 like a pac-man clone, just for kicks and chuckles 20:43:26 port Skampy? 20:43:55 --- join: Herkamir1 (stjohns@h000094d30ba2.ne.client2.attbi.com) joined #forth 20:46:08 anybody here getting a kestrel besides me 21:00:50 --- quit: Herkamire (Read error: 110 (Connection timed out)) 21:07:33 zzzzzzz 21:11:30 gotta go...bye all 21:11:40 --- part: TheBlueWizard left #forth 21:18:41 phreedah phreephartz 21:18:49 oops 21:19:15 i didn't mean to press enter 21:22:06 i do that all too often :) 21:22:55 i still with that my atari 800xl had forth built in instead of basic 21:33:13 --- nick: Herkamir1 -> Herkamire 21:34:43 I may get a kestrel 21:37:31 --- quit: LOOPHOG (Read error: 60 (Operation timed out)) 21:38:35 --- join: ASau (~asau@158.250.48.196) joined #forth 21:47:14 Sorry; 21:47:23 my roommate came home and we got to talking. 21:53:17 I'm glad to see that I have one person interested at least. And one who "may" be interested. :) 21:53:27 I'm sure it'll make my several hundred dollar investment worth it. 21:53:27 :) 21:57:41 you should measure it in time as well as dollars 22:09:53 --- quit: Sonarman (Read error: 60 (Operation timed out)) 22:18:31 fridge: I don't have that luxury. 22:19:05 fridge: Right now, as long as I can make an income from the device, the time it takes to make the first prototype really is rather immaterial to me. 22:25:25 Especially since In-N-Out is funding its development, indirectly. :) 22:25:28 Plus it's a learning experience. 22:27:00 --- join: Sonarman (1000@adsl-66-124-254-78.dsl.snfc21.pacbell.net) joined #forth 22:50:40 Off to bed. 22:50:47 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 23:11:28 --- quit: Sonarman (Read error: 60 (Operation timed out)) 23:13:00 --- join: Sonarman (1000@adsl-63-196-0-3.dsl.snfc21.pacbell.net) joined #forth 23:21:03 --- join: ianp (nobody@c-24-13-109-164.client.comcast.net) joined #forth 23:23:45 --- quit: Sonarman ("leaving") 23:59:22 --- part: thin left #forth 23:59:59 --- log: ended forth/04.04.02