00:00:00 --- log: started forth/04.09.12 00:28:03 --- quit: imaginator ("sleep") 00:41:59 qFox: look good now? 00:48:01 --- quit: Herkamire ("bed at last") 01:09:51 --- join: scope (~junk@njd.paradise.net.nz) joined #forth 01:26:09 yes . 01:36:01 Morning :) 01:40:17 hi 02:07:02 --- quit: ChanServ (Shutting Down) 02:07:02 --- join: mur_ (~mur@uiah.fi) joined #forth 02:09:52 --- quit: mur (Read error: 60 (Operation timed out)) 02:12:01 --- quit: crc (Read error: 110 (Connection timed out)) 02:12:44 --- join: ChanServ (ChanServ@services.) joined #forth 02:12:44 --- mode: irc.freenode.net set +o ChanServ 02:17:15 --- quit: ChanServ (Shutting Down) 02:28:19 --- join: ChanServ (ChanServ@services.) joined #forth 02:28:19 --- mode: irc.freenode.net set +o ChanServ 02:44:11 --- quit: warpzero ("Tried to warn you about Chino and Daddy Gee, but I can't seem to get to you through the U.S. Mail.") 02:47:32 --- quit: ChanServ (Shutting Down) 02:48:56 --- join: ChanServ (ChanServ@services.) joined #forth 02:48:56 --- mode: irc.freenode.net set +o ChanServ 03:05:24 --- join: mur (~mur@kyberias.uiah.fi) joined #forth 03:07:52 --- quit: mur_ (Read error: 60 (Operation timed out)) 04:23:39 --- quit: qFox ("this quit is sponsored by somebody!") 05:15:57 --- join: mur_ (~mur@mgw2.uiah.fi) joined #forth 05:26:09 --- quit: mur (Read error: 110 (Connection timed out)) 05:28:37 --- join: crc (crc@33-pool1.ras11.nynyc-t.alerondial.net) joined #forth 05:42:10 --- join: qFox (C00K13S@82-169-140-229-mx.xdsl.tiscali.nl) joined #forth 05:42:53 Hi qFox 05:43:05 hi 05:43:12 * qFox now has a 19" 05:43:19 no 21" 05:43:30 not sure whether this one's great though 05:43:40 Hehe. 05:43:51 he aint sharp :( 05:44:01 Poor, poor qFox 05:44:05 * Robert pets his 15" 05:50:50 --- quit: crc (Client Quit) 06:02:27 --- join: crc (crc@33-pool1.ras11.nynyc-t.alerondial.net) joined #forth 06:13:46 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 06:14:13 --- quit: crc (Client Quit) 06:19:23 --- join: Topaz (jonny@spc1-horn1-6-0-cust217.cosh.broadband.ntl.com) joined #forth 06:19:43 --- quit: mur_ (Remote closed the connection) 06:21:32 --- join: mur (~mur@mgw2.uiah.fi) joined #forth 06:22:10 --- quit: Topaz (Remote closed the connection) 07:14:23 --- quit: tathi ("leaving") 07:25:32 --- join: mur_ (~mur@smtp.uiah.fi) joined #forth 07:35:52 --- quit: mur (Read error: 238 (Connection timed out)) 08:04:58 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 08:42:39 --- join: Topaz (jonny@spc1-horn1-6-0-cust217.cosh.broadband.ntl.com) joined #forth 08:47:37 --- quit: mur_ (Remote closed the connection) 08:49:07 --- join: mur (~mur@smtp.uiah.fi) joined #forth 09:20:43 --- quit: Tomasu ("SIGWTF") 09:25:27 --- join: Tomasu (~moose@S010600045a4c73cc.ed.shawcable.net) joined #forth 09:39:19 --- join: crc (crc@33-pool1.ras11.nynyc-t.alerondial.net) joined #forth 09:47:51 --- join: mur_ (~mur@smtp.uiah.fi) joined #forth 09:52:20 --- join: Herkamire (~jason@h000094d30ba2.ne.client2.attbi.com) joined #forth 09:52:20 --- mode: ChanServ set +o Herkamire 09:57:47 --- quit: mur (Read error: 110 (Connection timed out)) 10:08:30 can anybody recommend me to a Forth with sockets? 10:09:06 IsForth, once I440r (yes, you!) finishes the DNS code. ;) 10:10:31 i know about that one, another one, anybody? 10:11:11 arke: forth for what os/arch? 10:11:36 tathi: unix(like), x86 10:11:42 tathi: linuix, to be exact 10:12:31 RetroForth can use sockets, but you'll have to code them yourself :-) 10:12:45 (Or convience cmbrannon to share his networking code) 10:12:47 :-) 10:15:58 actually, I've always wanted to try RetroForth :) 10:16:30 * crc takes a look at the IsForth socket code 10:16:45 * crc needs more code that uses the new syscall interface :-) 10:18:44 robert thats YOUR job :P 10:20:11 * Robert is away: if I440r is looking for me I went to Neptune 10:20:24 yea yea 10:20:42 :) 10:21:45 I440r: YOUR JOB 10:21:50 :) 10:22:04 no. i assigned it to lazyrobert 10:22:06 I440r: does isforth have a word |? 10:22:07 heh 10:22:21 I440r: oh, somebody with a less vertical style? :P 10:22:22 | <-- or |? <-- ? 10:22:26 | 10:22:37 yes - its "or" 10:22:41 & is "and" 10:22:44 etc etc 10:22:46 that may change 10:22:52 * crc uses | for comments 10:22:57 oh 10:23:05 PLEASE CHANGE IT 10:23:26 i prolly will if ennuff ppl complain :P 10:24:28 I440r: why use | & etc? 10:24:51 because i dont like spelling out word names taht have well known symbols for them 10:24:56 like @ ! etc 10:24:56 I mean they're the C operators, and you hate C, right? :) 10:25:24 and lshift rshift (puke) 10:26:25 i wouold rather write shr and shl than lshift rshift << >> 10:26:35 * crc likes << >> 10:26:40 << and >> are perfect 10:26:48 * tathi agrees 10:27:07 well, I guess I'm a minority here :) 10:27:11 lol 10:27:15 * arke likes self-commenting code though 10:27:22 no such thing 10:27:27 not EVEN. 10:27:43 their is partially self commenting code but not fully self commenting 10:27:47 * I440r hides from kc5 10:27:48 Prove that :-) 10:27:53 Hehe. 10:27:56 read my sources 10:28:02 I'm with I440r in this question ;) 10:28:11 I440r: sorry, look at kc5tja's VIBE code. it is 100% readable without comments :) 10:28:19 i thunked you were on neptune :P 10:28:56 Robert: your problem is that you don't comment enough on your assembly :P 10:28:59 im not arguing it - me and kc5 are diametrically opposed on this issue :) 10:29:00 I440r: Damn it. You didn't see that 10:29:24 arke: I don't have to flollow my own advice, do I? 10:29:31 Robert: :) 10:29:41 Robert: hey, your Forth code is great :) 10:29:47 Uh, yeah..sure 10:29:48 Robert: just your assembly is a bit .. well ... weird 10:29:55 The parts that somewhat work 10:29:57 MAYBE 10:30:29 I once found a comment in Robert's source that said "I stole this from somebody once. I wonder what it does?" 10:30:37 OK, enough geek talk. I'll go read some instead. 10:30:39 :) 10:30:44 hehe 10:30:58 arke: Helpful, isn't it? 10:31:16 I put it there to avoid stupud questions, but it's not like it helped 10:32:17 lol 10:38:16 :p 10:38:35 btw 10:38:40 german keyboards, they suck. 10:38:56 on teh same note, i'll bet swedish, and dutch keyboards suck too. 10:39:29 german keyboards? 10:39:38 they suck becauyse they're qwerty 10:39:42 or rather, qwertz 10:39:43 bought a keyboard of ebay (no longer in production). kind of asumed that i wouldnt care about the board having german text keys on them 10:39:51 well thats no problem 10:40:01 I wish I could use dvorak 10:40:04 windows keyboard thing (ehr) fixes that easy 10:40:05 *wert* keyboards suck :P 10:40:06 Or AT LEAST type on qwerty 10:40:18 Robert: is swedish qwertZ? 10:40:22 the z on this keyboard types as y 10:40:24 No, qwerty 10:40:32 thing is though, the \ is at the complete other side of the board 10:40:37 next to, what should be the z 10:40:45 Hah 10:40:49 yep, thats how they work 10:40:52 Here \ is "+" + Alt gr 10:40:58 Very very very annoying. 10:41:01 yes 10:41:03 well 10:41:05 tehre's more 10:41:06 Since you break your hand trying to type that 10:41:09 the enter key is much smaller 10:41:19 | is shift+\ 10:41:28 and the |\ key is where normally part of the enter key is 10:41:46 emacs is probaly even harder for swedes and germans etc. to use than the english :) 10:41:49 so i'm gonna buy me a new keyboard next week from ebay. this time from a dutch guy. :p 10:41:52 which is why i prefer vi 10:41:56 qFox: :P 10:42:02 i hate the way the fscking SHIFT key is larger than the enter key on my kbd 10:42:10 i love this model of keyboard, but goddamn those german bastards! 10:42:11 thats fscked up 10:42:18 i have that. 10:42:35 i prefer the type where the \ is right of the right-shift 10:42:49 not above (OR COMPLETELY LEFT ON THE KEYBOARD) 10:43:03 although i can live with above if i must 10:43:15 ok im outa here ill bbl 10:44:38 kc5tja: you should be awake by now. :) 10:44:46 heh 10:48:28 whats this condition called, in english..., where you're afraid of germs and stuff like that? 10:48:37 uum 10:48:45 afraid to get sick, dont like it when ppl touch you because you might get something, etc 10:48:51 being a mom? 10:48:54 lol 10:48:55 i don't know 10:48:56 hehe 10:49:03 it has a name. 10:49:10 ....fobic 10:49:17 (obviously :p 10:50:45 :) 10:51:48 well, there's "mysophobia" 10:51:54 doesnt ring a bell 10:52:12 well, lets see if translation sites will translate teh dutch word... 10:52:19 but that's more fear of dirt than germs 10:52:47 hm. guess english has a new word :p 10:52:50 google is also showing up verminophobia 10:53:44 when you asked, the first thing I thought was "hypochondriac", but that's someone with imaginary diseases. 10:54:04 not someone who's afraid of disease really. 10:54:57 dutch word is smetvrees 10:55:06 appearantly, its also the english term :p 10:56:38 i'm looking for a movie 10:56:53 or actually just an actor, but he's playing in this movie 10:57:02 maybe somebody knows it, its from last year i think 10:57:25 two main characters, one has this condition 10:57:34 multiple conditions actually 10:57:48 all of which i dont remember the english term 10:57:54 afraid to go out 10:58:05 afraid of germs, and getting a disease etc 10:58:11 afraid to talk to people 10:58:16 but they are scammers 10:58:18 Geekness? 10:58:38 ignoring that comment, and the odd guy has a doughter 10:58:43 daughter 10:58:45 ;_; 10:58:59 >_< 10:59:08 damnit 10:59:12 I'm thinking of that Jack Nicholson movie, uhm, where he's playing "Always look on the bright side of life" 10:59:16 But it's older 10:59:27 no thats not it. 10:59:32 I know 10:59:42 But.. it's pretty funny 10:59:46 perhaps... 11:01:44 matchstick men 11:01:56 damnit. that wasnt the actor i was looking for ;p 11:02:54 --- quit: crc ("Time for bed... Goodnight!") 11:02:58 Poor qFox 11:03:17 i hate this 11:03:23 >_< 11:04:39 alright. lets try again. 11:04:41 :) 11:05:26 this movie is mostly based inside the appartment of one guy. he's having relational problems and has to get this therapist. 11:05:46 his therapist wants to move in with him for the duration of the therapy 11:06:16 at some point the guy has the therapist strapped onto the kitchen table or something. or was it the other way around 11:06:23 i suck at this :p 11:07:55 Heh. 11:08:08 http://www.jesusishitler.com/ <--- some people have too much time :) 11:09:46 uh, lol 11:10:14 A nice parody on all those crackpot theory pages though 11:10:30 mein kampf is sequal to bible :p 11:10:35 >:) 11:11:19 riiiight, so anyways 11:11:57 so, i was appearantly talking about PS your cat is dead, but once again, not the guy i'm looking for 11:11:58 damnit. 11:12:16 suck movie anyways 11:14:20 * qFox gives up. 11:20:11 --- join: T0paz (jonny@spc1-horn1-6-0-cust217.cosh.broadband.ntl.com) joined #forth 11:20:11 --- quit: Topaz (Read error: 104 (Connection reset by peer)) 11:23:10 --- quit: mur_ (Remote closed the connection) 11:24:37 --- quit: tathi ("yardwork") 11:24:56 --- join: mur (~mur@kyberias.uiah.fi) joined #forth 11:25:24 --- join: Topaz (jonny@spc1-horn1-6-0-cust217.cosh.broadband.ntl.com) joined #forth 11:25:27 --- quit: T0paz (Read error: 104 (Connection reset by peer)) 11:40:51 I just decorated my desk :) 11:41:24 :) 11:41:32 I use a clipboard as a mousepad, and the mouse cord has an annoying tendancy to get caught in the clip handle 11:41:49 Herkamire: hehe 11:42:06 hi Herkamire , arke 11:42:09 at some point I taped a used envelope (using the materials at hand... wouldn't want to get up or anything) ever it 11:43:03 later I removed it so I could use my clipboard. I asked my gf if she had a better idea, and she suggested fabric 11:43:39 once I had a big red swatch of fabric in hand, I ended up laying it across my desk, under the monitor etc. 11:43:42 spiffy 11:45:57 herk> site worked fine when you left 12:01:28 qFox: thanks :) 12:03:40 good morning. Or something. 12:05:07 kc5tja: check your emails :) 12:05:12 kc5tja: (im heading out soon) 12:05:19 Good evening, kc5tja 12:05:34 arke: I can't at the moment -- I'm at work. 12:05:37 I will in a few though. 12:05:43 #define BITCOUNT(x) (((BX_(x)+(BX_(x)>>4)) & 0x0F0F0F0F) % 255) 12:05:43 #define BX_(x) ((x) - (((x)>>1)&0x77777777) \ 12:05:43 - (((x)>>2)&0x33333333) \ 12:05:43 - (((x)>>3)&0x11111111)) 12:05:43 -- really weird C code to count the number of bits in a word 12:05:53 Wow. 12:06:01 I got this in fortune today. It's elegant, but man, I can't make heads or tails of it. 12:06:06 * kc5tja will have to remember this for later study. 12:06:24 I'm stunned. :) 12:07:29 Yeah, me too. I mean, I've seen tricky math tricks before, but this one just blows me away. 12:09:02 http://herkamire.com/downloads/desk.jpg 12:09:18 camera wouldn't focus terribly well, so that's about as much detail as there is 12:09:48 kc5tja, that's amazing 12:10:24 kc5tja: tahts, like, o.O 12:10:35 slava: :) Long live fortune, preserver of all things obtuse on the Internet 12:11:07 kc5tja, i think its deliberately obfuscated 12:11:20 slava: I'm not so sure. 12:11:23 (X & 0x0F0F0F0F) % 255 <-- the % 255 is redundant, no? 12:11:36 No. 12:11:42 or rather, can't you just do X & 0xF? 12:11:54 oh wait 12:11:56 Herkamire: :) 12:11:57 its not % 256 is it :) 12:11:57 Because if X has higher order bits set, then its value will be larger than 256. 12:12:01 However, 0x0F would work. 12:13:11 but then it wouldn't return anything > 16? 12:13:21 or 15 rather? 12:15:09 damn that code is terribly confusing 12:16:44 it's %255 though. not %356 12:16:54 my brain isn't even starting to wrap around this 12:17:02 it's %255 though. not %256 12:18:32 that's cool 12:19:08 slava: I'm not sure the above code will work for anything other than 16-bit words. It's hard to tell. 12:19:56 hrm. 12:20:02 0x1 = 0b1 12:20:06 0x3 = 0b11 12:20:12 0x7 = 0b111 12:20:17 seeing a pattern? 12:20:48 I think it's best to start with smaller numbers of bits. Given a 4-bit integer, how do you compute the number of bits in the word, given only that integer? No look-up tables allowed. 12:21:51 maybe try to truncate the above to a char, then plug in a random one by hand and see what it does 12:22:15 What? 12:23:58 * arke is heading out, bye 12:24:23 i think x86 provides an opcode to count bits 12:24:47 What is needed is to transpose the word from a horizontal array of bits into a series of words (conceptually) containing either 0 or 1, and produce a sum over that vector. 12:24:52 slava: Nope. 12:25:10 At least, not as of the Pentium II series of CPUs. It does provide opcodes for finding the first and last bits in a word though. 12:25:21 Maybe P3 and P4 have such an opcode, I don't know. 12:25:32 oh i guess i was wrong then :) 12:26:06 hmm, i'm getting two of those 200 MIPS ARM atmel uCs as samples (via a friend in a fiberchannel-raid mfr) :D 12:28:34 Topaz: Cool. :) 12:28:39 They run at 200MHz? 12:28:49 Let me know how they work out for you. 12:29:02 * kc5tja is a bit hesitant to design anything around a bus that runs at anything above 16MHz. 12:35:15 180mhz, though PLL-variable 12:35:27 i think the 200 MIPS figure is innaccurate actually, heh 12:35:41 i get the impression they were designed for 200 mhz, but the PLL isn't up to it 12:35:41 Topaz, what is arm assembly like? 12:35:43 * kc5tja nods 12:35:48 arm assembly is quite fun 12:35:56 conditionals on every instruction, which is interesting 12:36:01 wow 12:36:11 slava: Like a 16-register RISC, although it's cool because each instruction is predicated. So EVERY CPU instruction is effectively conditional. :) 12:36:19 re 12:36:22 re onetom 12:36:45 so i can do stuff like add two numbers, and jump on carry, in one instruction? 12:36:46 and due to the 32-bit opcode limitation, to allow you to load 32 bit numbers into registers, various opcodes will allow extra shifts and things 12:36:49 which can be handy 12:37:16 Topaz: That's common on most RISCs though. 12:37:34 i guess, heh, i've never used anything bigger than 8-bit other than an ARM though ;) 12:38:11 slava: No. You can add two numbers, and then you'd test for carry, which sets a predicate bit (or is carry one of the predicate bits?), then the jump instruction would conditionally run on whether the carry was true or false. 12:40:02 slava: Every instruction has four bits reserved for predicate selection. I'm sure one of these predicates is "always true", thus effectively making the instruction "unconditional." 12:40:09 ok 12:40:26 That leaves 28 bits left over for the rest of the instruction. 12:40:56 Up to 12 bits are used for the 3 register operands, so that leaves only 16 bits for the opcode and/or other flags. 12:43:12 the onboard-compactflash-interface could be handy methinks 12:43:21 i assume CF is the cheapest way of buying flash, heh 12:49:05 Hehe 12:49:15 --- join: saon (Ecoder@c-24-129-95-254.se.client2.attbi.com) joined #forth 12:49:15 * kc5tja is primarily interested in the CF with the IDE interface -- makes things nice and simple. 12:50:54 hmm, "The True IDE mode is not supported..." 12:50:56 doh ;) 12:51:15 though i'm sure i could spare a few of my 122 PIO lines if i had to 12:51:33 i wish i could keep the top of stack in a register or something 12:51:49 and the stack pointers in a register too 12:52:19 hmm, that's a point, anybody know of any ARM FORTHs? 12:52:45 whats arm? 12:54:50 Topaz, factor runs on linux/arm 12:56:44 ooh 12:56:58 that'll be a task, heh, persuading linux to run on this chip... 12:57:02 apparently it will, though 13:01:43 --- quit: saon ("Leaving") 13:04:27 ok, I get the bitcount code :) 13:04:34 very clever 13:04:58 Topaz: Maybe you can get L4 running on the Arm. Then maybe you can get L4/Linux running on it. :) 13:05:12 haha, well, L4 is probably considerably more sensible 13:05:27 given the rather weird memory arrangement that i'm going to have, i'm going to have to run code from the right place to get speed, heh 13:06:48 Herkamire: As far as I can tell, the only way to get a count of the bits is to treat the integer as an array of 1-bit wide integers, then as an array of 2-bits, then 4-bits, etc. 13:06:50 question... either of you worked with PIC or AVR ? 13:06:56 i've used AVRs 13:06:56 Frek: Talk to Topaz. :) 13:07:00 :P 13:07:12 I've used both, but not for any serious projects. 13:07:14 kc5tja: this does it as an array of 4-bit ints the whole way through 13:07:15 Topaz: AVR is just 8 bit right ? 13:07:24 yeah 13:07:41 ehr lol 13:08:08 appearantly, ra2's online servers have been .... well fucked 13:08:36 guessing somebody is exploiting the client when they join the public chat rooms (where you must go to join other ppl's games) 13:08:56 Topaz: ok, just curious, I'm pondering starting a little business based on either PIC or AVR, I'm trying to figure which of the chips will be the most flexible, AVR seems cheaper, but PIC comes in alot of flavors 13:09:03 whenever me (and a friend of mine) join one of these public rooms, the client crashes a few seconds later 13:09:06 this never happened before 13:09:12 i've programmed both, and prefer AVR for a number of reasons 13:09:13 Frek: What are you going to do? 13:09:40 a) they're far faster, b) they're easier to program, programmer-wise (slightly), c) they have tons of registers, d) they don't use bank switching ;) 13:09:43 Robert: custom embedded solutions; like an cheap alternative to a PLC controller etc 13:10:13 Are there any ultra-low-power AVRs? That's one of the sexy things about some PICs. 13:10:27 But if you don't need it, well... :) 13:10:35 well, they score pretty highly on the power consumption scale, anyway 13:10:44 Topaz: ah, yeah they seems nice; besides you can obviously program AVR with C, PIC seems to be assembly most of the time. 13:10:46 you can always put them to sleep :P 13:10:56 well, yeah, but i tend to program AVRs in assembly 13:11:05 (more fun ;) 13:11:08 Hehe. 13:11:09 yeah it's probably the best 13:11:14 and considerably faster, in most cases 13:11:23 how much ram / rom does a typical AVR have btw ? 13:11:33 well, cheapest don't have any RAM and have 1k of flash 13:11:49 but the flash can be used as RAM I suppose ? 13:11:53 average ones tend to have 512 bytes - 1k of SRAM, and 8k-16k-32k of flash 13:11:54 Herkamire: You're going to have to describe it in greater detail than that. I just don't quite see how it works just yet. 13:11:55 no 13:12:03 you can wire up external ram easily 13:12:05 in each 4-bit field, it does: dup >r r@ 1 >> - r@ 2 >> - r@ 3 >> - 13:12:09 rdrop 13:12:10 Topaz: ah 13:12:15 Some EEPROM too. 13:12:26 Topaz: so the cheap ones are not "real" one chip computers then ? 13:12:26 the 'big daddy' (the ATMega128) has a ridiculous 128k of flash 13:12:30 this gives the bit-count for those four bits 13:12:32 and something like 16k of RAM 13:12:42 well, i've never needed external RAM in any of my projects ;) 13:12:56 though many of my projects haven't needed any RAM at all (fitting it all within the 32 registers) 13:12:57 Topaz: you just use the registers ? 13:13:05 well, there's enough normal RAM 13:13:07 Herkamire: Too deep. 13:13:14 512 bytes is a lot, when you're writing stuff in assembly 13:13:18 Herkamire: It's the whole 1 >> - 2 >> - thing that gets me. 13:13:23 --- quit: qFox ("this quit is sponsored by somebody!") 13:13:29 Herkamire: I just need to figure it out for myself, I guess. 13:13:42 Topaz: does the AVR have a fixed instruction length similar to PIC ? 13:13:58 16 bits, right? 13:14:09 I believe PIC is 12 bits or so 13:14:11 abcd 13:14:11 -abc 13:14:11 - ab 13:14:11 - a 13:14:11 ____ 13:14:13 0xyz 13:14:16 Frek: 14 usually. 13:14:19 right 13:14:30 But the AVR instructions use variable number of clock cycles. 13:14:43 From 1 to 3 (or maybe some exotic ones use 4) 13:14:50 yeah that's not important to me :) 13:14:54 Usually 1 or 2. 13:14:56 atleast not at this stage 13:15:03 Still faster than the PIC. 13:15:05 if the "a" bit is one, it will have a value of 8. subtract it in each other place (value 4, 2 and 1) and you get one. 13:15:30 bit b is worth 4 in the original number. subtract it in the next places (the 2s place and the 1s place) and it'll be 1 13:15:57 AVR instructions are 16-bit 13:16:36 the c bit is worth two (or zero) so if we shift it down and subtract it, it'll be 1 (or zero) 13:17:17 Topaz: if I put it this way; how much external circuits does a really tiny AVR board require ? like power source, crystal and a capacitor ? 13:17:43 two capacitors 13:17:46 but yes, no more 13:17:53 alright 13:17:56 my current project uses an ATMega8535 13:18:05 (and a crystal, and two capacitors) 13:18:13 what levels does the input/output produce ? 13:18:16 +5v ? 13:18:21 (also uses four CMOS chips for other things (since the AVR doesn't have enough pins), but that is irrelevant ;) 13:18:22 yeah 13:18:23 produce/requre even 13:18:25 require even 13:18:25 normal CMOS 13:18:27 okay 13:18:32 though you have to power them between 4-6V 13:18:37 (less if you get the L version) 13:18:42 so you can basically attach optoswitches to them ? 13:18:52 they'll source a surprising current 13:18:55 30mA per pin i think 13:19:01 (no more than 200mA per port though) 13:19:03 Frek: Just curious, are you going to use Forth with your project? 13:19:11 Robert: probably not 13:19:16 OK. :) 13:19:18 i need to get my AVR forth usable 13:19:26 could be rather quick, heh 13:19:48 you can use the %255 thing to sum 8-bit fields 13:19:48 Robert: this project is still just on the planing board, but it's an option I'm considering 13:20:07 --- join: mur_ (~mur@kyberias.uiah.fi) joined #forth 13:21:02 going from 4-bit to 8-bit is much easier than 1->2 or 2->4 because the result of the add fits in 4 bits still, so you don't need to & out the unwanted fields out of the arguments 13:21:48 ie you can do _8bit = (_4bit + (_4bit >> 4)) & 0x0f0f0f0f 13:22:58 instead of _4bit = (_2bit & 0x33333333) + ((_2bit >> 2) & 0x33333333) 13:23:15 mmmm. guess it's only one less & 13:28:22 Herkamire: That's rather interesting -- I had not thought to do it that way. 13:28:51 However, what happens to underflow? 13:28:58 Topaz: what AVR programmer do you use ? 13:29:09 E.g., abcd0000 - 0abcd000 - 00abcd00 - 000abcd ? 13:29:28 Only in this case, the '0' bits are valid data bits in other 4-bit fields. 13:29:28 Frek: the 'avrdude' schematic, and the 'uisp' software 13:29:39 (5 wires and a DB25 plug ;) 13:29:47 works faultlessly, every time 13:29:48 Topaz: ah ok, you haven't tried ATSTK 500 I suppose ? 13:29:51 heh, no 13:29:53 i'm too cheap :P 13:29:54 --- quit: mur (Read error: 110 (Connection timed out)) 13:29:55 ok 13:30:17 but I take you can only program DIL AVRs ? 13:30:39 yeah 13:30:45 i don't like soldering SMT :P 13:30:47 ok that's good enough 13:30:59 i could theoretically wire the same 5 wires to a header on a SMT PCB though 13:31:04 and it'd program fine 13:31:19 i see 13:31:37 (only thing you need to make sure of is that the parallel-port-outputs don't talk to something unwanted when they're talking to the programming pins of the chip, which are dual-purpose) 13:31:59 ie, if you're not careful you may find yourself with two outputs connected together 13:32:15 so as a rule, always make the programming-inputs inputs in your circuit too 13:32:40 though that's kinda obvious 13:32:52 yea, I believe I'll buy a programmer :) 13:33:34 * kc5tja was thinking of introducing a small kit that used a PIC or AVR to allow any QWERTY-keyboard to be hardware remapped to Dvorak (or vice versa). 13:33:40 I can't imagine it'd be that hard. 13:33:54 probably not 13:34:09 kc u mean plug qwerty kbd into your device and that plugs into computer ? 13:34:17 wouldnt u also have to pop the keys ? 13:34:22 * kc5tja just wants to make some extra income. $10/hr makes just enough to pay bills; however, I'd like some extra spending cash too. 13:34:38 I440r: If you want to. I personally don't. 13:34:55 --- nick: mur_ -> mur 13:34:58 so you ignore whats on the key and go 100% from memory ? 13:35:14 I440r: But yes, a device that does the remapping for you -- advantages: a toggle switch can select between operating mode, on the fly, and no OS-specific support needs to be invoked (I challenge you to get Dvorak working consistently in Linux). 13:35:21 I440r: I'm a touch typist. Yes. 13:35:50 i look every now and then heh 13:36:01 I was also thinking of making a device that has real foot-switches, so things like CTRL, SHIFT, etc. are foot operated. That ought to relieve a lot of wrist pain for me. 13:36:18 Also would be cool for humane environments, I think. :) 13:36:46 would it be tricky to get AVR working with USB ? 13:37:22 * kc5tja has been wondering about USB with respect to keyboards. 13:38:01 I have to wonder how hard it is to support USB. My device would need to support both USB host and USB device. :( 13:38:08 I'm just wondering incase my PLC business wont go that well, I could always jump onto the dongle bandwagon :) 13:38:12 Unless I rely on out-board USB-to-PS/2 converters. 13:40:14 heh, i nearly finished a keyboard data logger thing 13:40:28 which had two 8-pin SOIC chips in it, stuck back to pack, not much bigger in size than a pea 13:40:29 Topaz: Do you make kits for resale? 13:40:40 stored 512 thousand keystrokes :D 13:40:42 i don't, no 13:40:51 just tend to buy stuff over the net and make things 13:41:09 * kc5tja is looking to make a little extra cash on the side, as I said earlier. 13:41:29 I ultimately would like to get into the ham radio electronics industry. 13:41:44 It's a niche market, but I like ham radio a lot, so... 13:42:04 Of course, the problem is knowing what to make. :/ 13:42:18 The keyboard remapper is something I would like because I have immediate use for it. 13:42:38 yeah, for PS/2 keyboards it'd be extremely easy to make, too 13:42:44 Yep 13:43:04 That's why I was wondering if I could just rely on out-board PS/2-to-USB (and vice versa) converters. 13:43:28 I suppose it'd be a bit clunky, but... 13:43:35 i must try bit-banging USB sometime, to see exactly how hard it actually is ;) 13:43:56 I can't imagine it'd be that hard. 13:44:13 But are the AVRs even fast enough to handle USB-speeds at the bit-banged level?' 13:44:19 yeah, somebody did it 13:44:30 using a 10mhz AVR, though you can now get 20mhz ones 13:44:31 ??? 13:44:41 'igorusb' 13:44:44 They must have bit-banged a 1.5Mbps USB speed. 13:44:52 yeah 13:45:03 That's still pretty cool. 13:45:04 :) 13:45:20 well, same speed as a USB keyboard ;) 13:45:38 actually 0.8Mbps ought to be enough; as USB only has 0.8Mbps per direction 13:45:44 per channel even 13:45:44 ah yeah 13:45:46 though translating keycodes is probably a lot easier 13:45:58 since you just need to watch for certain USB packets, and flip bits 13:46:13 Frek: The data throughput on USB is either 1.5Mbps or 12Mbps. 13:46:26 (or 480Mbps for "full-speed" USB 2.0 -- whatever) 13:46:37 There is no 0.8Mbps mode for USB. 13:46:41 kc5tja: yes but it's shared with the whole bus; so it don't mean that one device have to keep up to that speed 13:46:49 Frek: Yes, it does. 13:46:53 kc5tja: there's now underflow 13:46:54 nope 13:47:02 It does because it needs to identify when it's being addressed. 13:47:02 I was showing just one four bit field 13:47:15 the bits are shifted down, and bits that go below the 1s place are dropped. 13:47:16 Frek: Yes. 13:47:37 kc5tja: it's the most common error that people assume they have 1.5Mbps available for their applications; infact they only have about 0.8Mbps of bandwidth 13:47:49 Frek: You're talking about actual data generation or consumption rates. What you say is true -- and it's true for any (let me repeat this: ANY) communications device. 13:47:50 kc5tja: that's what the &0x7777777 and &0x33333333 and 0x11111111 in the C program are for 13:48:09 Frek: BUT, that doesn't change the wire-level data transmission speed -- it's still 1.5Mbps!! 13:48:23 so it's abcd - abc - ab - a 13:48:26 kc5tja: sure, but that's not what I'm talking about 13:48:26 The microcontroller MUST keep up with 1.5Mbps throughput to transmit or receive even just one byte. 13:48:35 Frek: That *IS* what I'm talking about though. 13:48:43 It's what I've always been talking about. 13:49:24 And, for what it's worth, if you're largely a producer-only or consumer-only, you actually do have close to 1.5Mbps throughput available to you. You only have 0.8Mbps throughput if you consume and produce data about equally. 13:49:44 USB speakers wouldn't work any other way, for example. :) 14:56:27 : count-bits-1 dup $55555555 and swap 1 >> $55555555 and + dup $33333333 and swap 2 >> $33333333 and + dup 4 >> + $0f0f0f0f and 255 umod ; 14:56:30 : count-bits-2 dup dup 1 >> $77777777 and - over 2 >> $33333333 and - swap 3 >> $11111111 and - dup 4 >> + $0f0f0f0f and 255 umod ; 14:56:52 the first is the more traditional approach of summing 1-bit fields, to 2-bit fields, to 4-bit etc 14:57:27 the seccond is the idea of starting with 4-bit fields, and shifting and subtracting within them as in the C example above. 14:57:41 * kc5tja looks 14:57:59 the first is 5 characters longer, but one word shorter 15:09:44 --- quit: mur (Remote closed the connection) 15:11:15 --- join: mur (~mur@smtp.uiah.fi) joined #forth 15:21:53 I still don't see how summing the 4-bit fields works though. 15:23:11 --- join: warpzero (~warpzero@dsl.103.mt.onewest.net) joined #forth 15:50:41 --- quit: Topaz (Remote closed the connection) 16:01:42 heh i love that bitcount method :) 16:02:07 i also like the n=n and (n-1) method 16:06:08 hi all 16:07:25 kc5tja: you mean the first part? or the %255? 16:11:53 The %255 part. Because in the end you have 4 (I think?) integers in a single 32-bit word. But somehow, it's added to the original word, and through some kind of magic it produces the bit-count? 16:12:33 I440r: I'm not sure what method you're describing. But n=8 and 7 would set n to zero -- clearly not intended. :) 16:12:36 you take the array and %255 to give the bit sum 16:12:46 I'm still working that part out. 16:13:02 it's obvious that it will work with the first (least significant) field 16:13:52 it works on the seccond field, because 255*257= 256*256 -1 16:14:42 Sorry, I just don't grok that at all. 16:15:22 255 devides evenly into 0xffff 16:15:44 Yes. 16:15:58 so values just above that, such as 0x10000 and 0x30000 will mod down nicely 16:16:10 and be effectively added to the first field 16:16:12 But that doesn't explain how they get to be summed. 16:17:02 0x10003 % 255 == 4 16:17:23 0x10003 == 0x10000 + 3 16:17:52 0x10000 % 255 == 1 (because 255 goes into 0xffff evenly) 16:18:11 and 3 % 255 == 3 obviously 16:18:38 so 0x10003 % 255 = 4 16:18:53 OK. So? 16:19:12 I just don't see how this applies. 16:19:42 effectively 0xZ000Y % 255 = Z + Y (where Z and Y are between 0 and 255 inclusive and Z+Y<255) 16:20:24 and it works the same with the next field 16:20:42 --- quit: Frek (Remote closed the connection) 16:21:40 But wait, aren't the fields on 4-bit boundaries, not 16-bits? 16:21:46 255 devides evenly into 0xffffff 16:21:56 kc5tja: yeah, I just realized I skiped a field 16:22:08 255 is 0xff 16:22:19 I just don't see how all this applies, or how one would even think of this stuff. 16:22:20 and goes evenly into 0xffff and 0xffffff 16:23:01 I mean, why is 255 such a magic number here? And 65535, and 16777215? 16:23:06 It just does not make any sense. 16:23:57 255 is the magic number because it's bigger than 32 (the highest possible sum) and it devides evenly into 0xff 0xffff and 0xffffff 16:24:29 damnit 16:24:51 I'm switching back and forth between herkforth and my calcualtor, and trying to do rpn on the calculator 16:24:59 * Herkamire puts the calculator away 16:25:57 should work with 51 too 16:26:19 --- join: Frek (~anvil@h229n2fls31o815.telia.com) joined #forth 16:28:42 yeah, 51 works 16:32:47 lol get an HP :) 16:33:06 #jedit has been hijacked by germans ;) 16:33:11 hah 16:33:14 i'm reading the scrollback and all i see is german 16:38:22 --- join: saon (Ecoder@c-24-129-95-254.se.client2.attbi.com) joined #forth 16:40:11 --- quit: saon (Client Quit) 16:46:04 Herkamire: Who cares if 255 divides evenly into 0xFFFF, 0xFFF..FFF? 16:46:08 Why is that important? 16:46:13 That's my question. 17:13:49 going on lunch. back in a bit. 17:15:37 because 0xAaZz %0xff == Aa + Zz 17:21:23 --- quit: warpzero (Client Quit) 17:24:12 Herkamire, i'm reading a book compiler construction, and its amazing how much time they devote to optimizing poor code -- for example, detecting redundant expressions and computing them only once 17:25:27 Herkamire, also dead code elimination 17:25:39 Herkamire, and not compiling computations whose results are ignored etc 17:26:18 yeah. 17:26:23 C doesn't have DUP :) 17:26:44 sure it does -- instead of 17:26:50 int x = a + b + 2; 17:26:54 int y = a + b + 3; 17:26:55 do 17:26:58 int z = a + b; 17:27:03 int x = z + 2; 17:27:07 int y = z + 3; 17:27:21 but that's a pain 17:27:27 it adds 1 or two lines of code 17:27:33 yeah i guess 17:28:58 slava: you see the C code earlier for counting the 1 bits in a 32-bit word? 17:29:08 yes 17:29:16 most of the calculations are done twice 17:29:24 and a seperate macro had to be defined. 17:29:38 in forth it's just a DUP 17:29:41 oh yeah 17:30:00 one interesteing thing i read in the book 17:30:07 suppose you have a loop in C: 17:30:17 for(i = 0; i < len; i++) do_something(array[i]); 17:30:38 you can use strength reduction and linear test elimination to factor out the multiply by sizeof(array type) in the body 17:30:45 so its compiled as 17:31:12 int limit = array + len * 4; for(i = array; i < limit; i += 4) do_something(i); 17:31:27 indeed that gets rid of an addition as well 17:31:39 do_something(*i); 17:31:56 yeah :) 17:32:03 back 17:32:05 yeah. 17:32:15 i wonder if strength reduction can be done for forth as well, and if it would bring a benefit 17:32:17 in C you really want a compiler to do that sort of stuff for you 17:32:29 the optomised one is almost twice as long 17:32:35 in forth I'd do it that way anyway 17:32:52 array >a for +@ do-something next 17:33:01 what is >a? 17:33:09 length? 17:33:19 pops TOS into the Address register 17:33:43 +@ increments the Address register and fetches 17:33:46 oh right you have that 17:34:24 if you don't have it you do: array swap for dup @ do-something cell+ next drop 17:35:57 C compilers do some neat things 17:48:14 --- join: wossname (~wossname@rn-v1w5a06.uwaterloo.ca) joined #forth 17:51:43 --- join: doublec (~doublec@coretech.co.nz) joined #forth 17:51:43 loop unrolling and all that business 17:52:00 Herkamire, oh yes, loop unrolling might be useful for forth code too 17:52:48 Herkamire, loop unrolling would be a nice way to 'cheat' on FOR/NEXT benchmarks :) 17:53:00 Herkamire, unroll the loop by 4, use constant folding to fold the 4 increments into 4 + :) 17:53:35 heh, wouldn't be hard to write a for/next that would unroll all the way 17:53:45 lol 17:54:40 : memcopy ( src len dest -- ) 17:54:54 : unloop-for here ; immediate 17:56:24 : unloop-next >r here over - r> for 2dup here over allot memcopy next 2drop ; 17:57:51 could do better than "here over allot memcopy" 17:58:52 : copy->here swap w>a 4 / for +@ w, next ; 18:01:01 anyway, you get the idea 18:01:29 yes 18:04:15 there are speed advantages to forth even without an optomizer 18:04:29 more small code fits in L1 cache 18:04:35 yeah 18:04:40 and more clever developers :) 18:04:54 there's some empirical measurements i saw for forth-like interpreted code 18:05:07 I was thinking how there is a lot that can be computed once at compile time in forth that cannot be with C because in forth compile time is generally right before runtime 18:05:11 gave impressive speed increases, but the measurements were for 386 and 486 :o 18:05:30 eg, many things in forth can be compiled as literals, that in C would have to be computed at runtime 18:05:32 are there any modern benchmarks available for cache performance increase? 18:06:26 wossname: 486 has a cache on-chip, so I would think that it'd be just as viable for modern CPUs. Where did you see the original metrics? 18:06:51 in a book called "Optimizing C and C++", or very similar title. unfortunately i don't have it with me 18:07:10 I think it's really hard (impossible perhaps) to compare two languages in this way 18:07:27 in order for the smaller size to make a difference in the caches you'd need a pretty complex program. 18:07:47 well, the cache increase was for relatively simple floating point spreadsheet operations 18:07:49 in a program that size you can not at all be sure that the two different implementations in the different languages are of comparable quality 18:07:55 I disagree. 18:08:01 Even simple programs can benefit. 18:08:12 The trick is in working with data. How you work with data is critical to high performance. 18:08:32 kc5tja: definitely 18:08:38 One reason vector-based languages are so much faster than non-vector-based languages (note, I'm talking interpreted here) is because they exploit cache locality FAR better. 18:08:58 right 18:09:28 Forth is inherently not parallelizable, by its very nature (dynamic, no type signatures to optimize with, etc), so using vectors to hold and manipulate data can be a huge benefit. 18:09:33 yeah, I want to stop using a struct for my dictionary, and do it as seperate arrays 18:10:17 when I search the dictionary (which is perhaps a bad example as I never do it more than once in a row) I fetch a word every 32 bytes. 18:10:27 that's as bad as you could possibly be for the caches 18:10:41 Heheh :D 18:10:42 Yeah. 18:10:43 (as I believe the unit of memory that my caches work with is 32 bytes 18:10:59 64 bytes for my CPU. 18:11:45 my dictionary is 38KB 18:12:06 that's enough to thrash the L1 data cache I think 18:13:20 * kc5tja doesn't even have a vocabulary yet. 18:13:38 * kc5tja has been wanting to implement one for the last two weeks, but my brain is totally drained when coming back from work. 18:13:46 Even the 3-day weekend doesn't help. 18:13:56 I don't do vocabularies 18:14:04 How do you find a word then? 18:14:13 search the dictionary 18:14:17 That's a vocabulary. 18:14:25 A vocabulary is a collection of word,addr mappings. 18:14:28 I don't have multiple vocabularies 18:14:33 I only have tow. 18:14:34 two 18:15:10 One for regular words, and one for "immediate"/compiler words. 18:15:39 kc5tja, like pygmyforth? 18:19:31 slava: Yes. 18:22:20 Without the use of colors or some other form of "out-of-band" markup, I can't imagine any other way of distinguishing compiler from non-compiler words. 18:38:35 hmmm... I'm asuming that an inline 32-bit literal is faster than fetching a 32-bit number from memory 18:38:58 now that I think about it more... not sure I have any evidence 18:41:52 same amount of memory on ppc 18:42:00 the inline is certainly more likely to be in the cache 18:42:47 Herkamire: Maybe. 18:43:16 It's best to benchmark things like that. 18:44:17 yeah, but that's hard 18:44:21 because it's all about caching 18:45:30 way too many factors 18:46:42 While you may feel that way, benchmarking is the only true way to learn. 18:47:34 yeah, but I can't think how to make a meaningful benchmark 18:47:54 I think that which one is faster depends on the situation. 18:47:59 just write code that does a bunch of reads, and code that does a bunch of writes 18:48:21 realistic code. random keys and datastructures 18:48:34 the only meaningful test I can think of is to take some big peice of software that I can time somehow, and run it both ways 18:48:44 something with hundreds of constants preferably 18:49:04 --- quit: doublec ("Leaving") 18:51:48 --- quit: Frek (Read error: 110 (Connection timed out)) 19:44:24 --- join: warpzero (~warpzero@dsl.103.mt.onewest.net) joined #forth 21:00:54 --- quit: mur (burroughs.freenode.net irc.freenode.net) 21:00:54 --- quit: onetom (burroughs.freenode.net irc.freenode.net) 21:00:54 --- quit: warpzero (burroughs.freenode.net irc.freenode.net) 21:00:54 --- quit: kc5tja (burroughs.freenode.net irc.freenode.net) 21:00:54 --- quit: I440r (burroughs.freenode.net irc.freenode.net) 21:00:54 --- quit: slava (burroughs.freenode.net irc.freenode.net) 21:00:54 --- quit: arke (burroughs.freenode.net irc.freenode.net) 21:00:56 --- quit: wossname (burroughs.freenode.net irc.freenode.net) 21:00:56 --- quit: fridge (burroughs.freenode.net irc.freenode.net) 21:00:56 --- quit: lyca (burroughs.freenode.net irc.freenode.net) 21:00:59 --- quit: Herkamire (burroughs.freenode.net irc.freenode.net) 21:00:59 --- quit: scope (burroughs.freenode.net irc.freenode.net) 21:00:59 --- quit: jim (burroughs.freenode.net irc.freenode.net) 21:00:59 --- quit: ChanServ (burroughs.freenode.net irc.freenode.net) 21:00:59 --- quit: Tomasu (burroughs.freenode.net irc.freenode.net) 21:01:01 --- quit: madgarden (burroughs.freenode.net irc.freenode.net) 21:01:01 --- quit: Robert (burroughs.freenode.net irc.freenode.net) 21:01:02 --- quit: tgunr (burroughs.freenode.net irc.freenode.net) 21:01:03 --- quit: Fractal (burroughs.freenode.net irc.freenode.net) 21:01:03 --- quit: cmeme (burroughs.freenode.net irc.freenode.net) 21:01:05 --- quit: madwork (burroughs.freenode.net irc.freenode.net) 21:02:25 --- join: Herkamire (~jason@h000094d30ba2.ne.client2.attbi.com) joined #forth 21:02:25 --- join: warpzero (~warpzero@dsl.103.mt.onewest.net) joined #forth 21:02:25 --- join: wossname (~wossname@rn-v1w5a06.uwaterloo.ca) joined #forth 21:02:25 --- join: mur (~mur@smtp.uiah.fi) joined #forth 21:02:25 --- join: Tomasu (~moose@S010600045a4c73cc.ed.shawcable.net) joined #forth 21:02:25 --- join: ChanServ (ChanServ@services.) joined #forth 21:02:25 --- join: scope (~junk@njd.paradise.net.nz) joined #forth 21:02:25 --- join: kc5tja (~kc5tja@66-74-218-202.san.rr.com) joined #forth 21:02:25 --- join: madgarden (~madgarden@Kitchener-HSE-ppp3575808.sympatico.ca) joined #forth 21:02:25 --- join: tgunr (~davec@vsat-148-63-4-107.c001.g4.mrt.starband.net) joined #forth 21:02:25 --- join: Robert (~snofs@c-bf5a71d5.17-1-64736c10.cust.bredbandsbolaget.se) joined #forth 21:02:25 --- join: I440r (~mark4@216-110-82-59.gen.twtelecom.net) joined #forth 21:02:25 --- join: fridge (~fridge@dsl-220-253-66-141.NSW.netspace.net.au) joined #forth 21:02:25 --- join: cmeme (~cmeme@216.184.11.30.unused.swcp.com) joined #forth 21:02:25 --- join: slava (~slava@CPE00096ba44261-CM000e5cdfda14.cpe.net.cable.rogers.com) joined #forth 21:02:25 --- join: arke (arke@adsl-69-209-54-62.dsl.chcgil.ameritech.net) joined #forth 21:02:25 --- join: onetom (~tom@novtan.bio.u-szeged.hu) joined #forth 21:02:25 --- join: jim (~jim@cpe-24-143-141-183.cable.alamedanet.net) joined #forth 21:02:25 --- join: madwork (~madgarden@derby.metrics.com) joined #forth 21:02:25 --- join: lyca (alycat@rasterburn.org) joined #forth 21:02:25 --- join: Fractal (jah@selling.kernels.to.linus.torvalds.at.hcsw.org) joined #forth 21:02:25 --- mode: irc.freenode.net set +ooo Herkamire ChanServ kc5tja 21:23:54 well theres one BULLSHIT law no longer in existance as of tomorrow 21:24:09 eh 21:24:36 assault weapons ban? 21:24:42 the assault weapon (if anyone can actually give me a definition for one) is gon 21:24:53 also the ban on 10+ round mags 21:24:58 isn't it mac10's and such? 21:25:01 can buy fully automatic machine guns now? 21:25:02 and uzi's? 21:25:06 no 21:25:12 finally, my chinese modded ak is legal? 21:25:16 the assault weapons ban had NOTHING to do with full autp 21:25:23 oh :( 21:25:30 you have full auto ? 21:25:35 thats legal 21:25:45 you just have to pay the $92746592467529374652394923675 daily tax 21:25:51 or 900 a year or something 21:26:13 the assault weapons ban did nothing but ban "scary looking" guns 21:27:10 it also limited my ability to defend myself by making it illegal for me to own or use any mag that can hold 10 or more rounds (pre ban mags were still legal but the price rocketed) 21:27:23 instead of $20 for a 10 round you pay $80 21:27:48 the criminal on the other hand could care less about the limits imposed by the law 21:27:58 gun control isnt about GUN control 21:28:58 yeah, such bans are ridiculous 21:29:21 making it only possible for very rich people to purchase and maintain weaponry legally 21:29:23 "war on " where X is guns/drugs/diapers/whatever only ensures that criminals have a monopoly on . 21:29:33 lets ban all guns... i as a law abiding citizen are thus disarmed. the criminal on the other hand says "wow - its christmas every day!" 21:29:37 quit pussyfooting, either ban guns entirely or admit they should be free for everybody 21:29:51 such gun laws only hurt poorer people 21:29:59 and takes HIS gun and goes robbing innocent people who have been rendered incapable of defending themselves from him 21:30:15 you CANT ban guns 100% 21:30:22 well, you can try :o 21:30:27 not without serious consequences 21:30:31 england has done it 21:30:57 the town i lived in in england is one of the toughest. you got the money i can point the place to go for ANY weapon you want almost 21:31:06 including semtex (tho thats harder for them to get you) 21:31:24 england has one of the highest rates of violent crime now of any country 21:31:37 its so bad that the police now go in pairs and are ARMED 21:31:47 heh, silly english 21:31:54 the worst person you can ever hope to meet with a gun in their hand is a brittish cop 21:31:56 period 21:32:25 i remember a story about a guy who had escaped from prison 21:32:30 the cops were watching his GF 21:32:50 cops could always GET guns back then even, if they felt they needed them 21:33:02 well they saw said GF getting into a car with some guy 21:33:13 and shot the girl? 21:33:15 they opened up on the car killing the man outright and seriously wounding her 21:33:20 it wasnt him 21:33:25 heh! 21:33:36 well, police all over do fucking ridiculous things with guns 21:33:40 that was a long time ago, when i was a kid. the story is typical of "brittish cop with a gun" 21:33:57 actually 99% of the cops in this country cant shoot worth a damn either 21:34:01 it's funny, because you can't leave police without appropriate tools to do their jobs 21:34:09 but if you give them the tools, they will fuck up 21:34:19 ]they should be required to shot their weapon EVERY DAY 21:34:24 for at least an hour 21:34:38 and THEY should pay for the practice not us 21:34:51 i don't know, if it's part of their duty we should pay them for it 21:34:52 also. i believe that speeding tickets are unconstitutional 21:35:02 pffft 21:35:16 I440r, US has more violent crime than UK 21:35:19 the constitution says the government cannot inhibit the peoples right to FREE travel 21:35:25 slava no. it doesnt 21:35:28 slava - by # or %? 21:35:29 I440r, speeding creates a hazard to other drivers 21:35:35 well 21:35:42 I440r: it doesn't say anything about inhibiting at what speed that FREE travel occurs 21:35:47 chicago and washington DC are the murder capitals of the world 21:35:56 but per capita england has a higher violent crime rate 21:36:08 and LA, and NY, and detroit, and st louis, and 21:36:22 fridge - trafic tickets are nothing more than an unconstitutional TAX on travel 21:36:33 if you don't count trailer parks and shit the US has higher per-capita crime 21:36:45 actually the crime rate in detroit has plumeted 21:36:47 heh, then you're counting us trailer parks and shit 21:36:54 ever sice michigan became shall issue 21:37:08 the other citices you mention are in NO issue or MAY issue staets 21:37:40 slava australia has a higher violent crime rate than america 21:37:52 australia and england are in the top 5 21:38:00 us is further down - i forget where 21:38:20 what if you count urban areas only, and not inbred rural towns? 21:38:33 the states that are shall issue have been getting lower and lower violent or otherwise crime rates every year 21:38:35 US would be #1 by far 21:38:41 --- join: Frag-101 (~Frag-101@12-222-128-22.client.insightBB.com) joined #forth 21:38:59 slava no. you would be supprised 21:39:31 who the heck owns that bot ? 21:39:31 lol 21:40:28 not me 21:40:33 I440r, where do you live? 21:40:42 san antonio texas 21:40:51 population? 21:42:28 dont know - its a very large city 21:42:36 very crowded. very low crime rate 21:42:47 very high percentage of firearm owning people 21:42:47 how many murders per year? 21:42:54 dont know - only just moved here :) 21:44:06 in canada the rate of crime is much lower than uS 21:45:03 maybe. i dont know. japan is also a very very low crime rate 21:45:15 but i attribute that in part to the rate of crime reporting 21:45:32 thers a sense of guilt if your victimized there so people are less likely to report a crime 21:45:40 but even so. they have a low rate 21:45:43 and NO guns 21:46:27 japan is a very different type of society 21:46:34 ya 21:46:42 but canada is almost the same as US 21:46:44 maybe canada is too hehe 21:46:49 eek! 21:46:53 blasphemer!!!!!!!!1 21:47:12 * I440r thwaps slava with a bill of rights 21:47:21 something canada lacks 21:48:04 life! 21:48:25 rights? 21:48:30 what rights? 21:48:33 I440r, the bill of rights doesn't mean shit when bushie and his friends trample all over it and introduce patriot act etc 21:48:53 agreed 21:48:59 I440r: Neither do we, for that matter. What we have is meaningless. 21:49:01 absolutely agreed 21:49:14 this country is so regulated it's rediculous 21:49:17 true. because some people are too scared/weak to fight for their rights 21:49:34 yes 21:49:42 i refer you back to my speeding ticket comment 21:49:53 you wern 100 dollars you probably get to keep about 3 or 4 21:52:04 Your last statement makes no sense to me. Wern? 21:52:16 I think it's more because huge corperations have a much more political control than activist groups 21:53:13 They totally do. 21:53:18 our voting system is all messed up 21:53:57 kinda weird, don't you think, that we only have two parties that ever get in office, and they are very similar 21:54:13 Yep. 21:54:37 This country was founded with big business in mind though. You can see it in the founding fathers philosophical beliefs, and in the documents that inspired the creation of this country. 21:54:55 that's weird 21:55:20 don't think they agreed with multinationals though 21:57:33 THat's hard to say. But it is nonetheless true, that "pragmatism" didn't start to catch hold until the late 60s. Before then, we tried to keep things on-shore. 21:57:43 take the vote away from the women and the men with no land - thats what the founding fathers had in mind 21:57:49 only MEN of property can vote 21:57:58 and back then property was LAND 21:58:07 dont think that would work today 21:58:20 I440r: That would take the vote away from people like me, dude. 21:58:22 I won't let you do that. 21:58:28 I will kill you if you tried. Literally, kill. 21:58:30 :) 21:58:31 kc5 im not advocating that 21:58:36 * kc5tja has no qualms with *fighting* for my rights. 21:58:39 im just saying thats the way it WAS :) 21:58:59 :) 21:59:04 kc5 i wouldnt dare take the vote away from women 21:59:08 * kc5tja is total libertarian-socialist. 21:59:12 oh man, i have class tomorrow and i am in no way tired. advice 21:59:16 i just wish i could neuter SOME womens voting desiers 21:59:25 run arround the block 21:59:32 do 100 pushups and 100 situps 21:59:37 then run arround the block again 21:59:46 i think 10 pushups might do the trick 21:59:50 then read the most boring crap you can find 21:59:54 no 21:59:55 100 21:59:57 wossname: Wine. Two glasses of good wine, some cheese and crackers, and listen to music with a beat approximately in the range of 240 bpm. 22:00:00 :) 22:00:09 a shot of JD usually works for me 22:00:09 (or less) 22:00:17 <-- too lazy to do pushups too 22:00:20 :o, no alcohol in drinking range :( 22:00:36 that would be the cleanest solution though 22:00:43 Wiskey or other forms of hard alcohol can be overly dehydrating. Wine is sufficiently alcoholic, but doesn't dehydrate you to the point of becoming a prune. 22:01:54 which is better ..... i 2* + w@ 22:02:00 or ...... 2 +loop 22:02:04 well, i suppose i'll stay up "all night", by which i mean i'll become incredibly tired around 4 and then miss class by sleeping in 22:02:49 ugh 22:03:01 some guy emails me asking me to change jedit's build system from ant to maven 22:03:11 i reply asking 'why fix it if it ain't broke' 22:03:15 and he sends me a link to some blog 22:03:18 anyone here read the bill of NO rights ? 22:03:18 hehe 22:03:22 gotta love that :) 22:03:27 i HATE people that give me links to blogs 22:03:30 I440r: I personally prefer to keep everything as design-time as possible, so I'm a fan of 2 +loopl. 22:03:31 that and "a nation of cowards" 22:03:33 2 +loop 22:03:43 ya 22:03:46 like i WANT to read some windbag shirtlifter talk about buzzwords??!! 22:04:01 shirtlifter lol 22:04:05 slava: You should tell him that. IN those words. :) 22:05:34 i rarely use 2 +loop because i think the problem thru differently - its not till later when looking at my code i see taht +loop also works 22:05:48 im not sure if either way is faster but im leaning towards +loop being more readable 22:05:51 I440r: Hehe :) 22:06:18 Personally I prefer using loops to just iterate over something, but I usually keep a separate pointer to the object I'm trying to manipulate. 22:06:26 Hey, I'll be right back. going home. 22:06:36 it will probably take only a LITTLE effort to modify my way of thinking to accomodate using +loop more 22:06:41 its definatly more versatile 22:06:43 --- join: thefox (~fox@adsl-68-124-189-115.dsl.pltn13.pacbell.net) joined #forth 22:06:46 3 +loop for instance 22:06:51 thefox!!! 22:06:58 how ya doin ? 22:07:09 fine 22:07:33 my freekin radix counting sort code i posted to CLF is totally fubar grrr 22:07:43 i KNOW it used to work and ive no idea how i fscked it up 22:08:58 hey jeff you talked to chuck lately ? 22:09:00 hows he doing ? 22:09:21 you need to translate it to ans for the people there anyway, other the 'challenge' will be to their world view. 22:09:41 yeah, I was up at Chuck's a few days ago. 22:09:48 yea but ans forth makes me cringe as much as c does lol 22:09:50 cool 22:09:59 * I440r wishes HE could vizzit chuck :) 22:10:08 hay jeff, do you like cook hamburgers with chuck or something 22:11:12 Actually, Min (Chuck's wife) cooked steaks for dinner, but you were close. 22:11:21 hehe 22:11:50 ok. it's just that when a jeff visits a chuck, an image of barbeque is instantly conjured 22:12:04 * I440r just ate half a microwave chikkin pie 22:12:05 bleh 22:12:33 whats chuck up to these days? - what are YOU up to ? 22:12:46 i now live/work in san antonio tx 22:13:29 wossname: the coloquial references to 'jeff' and 'chuck' must be local to where you are. I am not familiar with them. 22:13:39 Chuck has joked that 'chuck 22:14:21 it's entirely personal, odd mental association, sorry :( 22:14:30 'chuck' is a singularly ugly word, the coloquial meanings are to vomit, discard, or throw away. 22:15:05 chuck? that is a cut of beef also I think. 22:15:15 any ideas as to the origins of those meanings? 22:15:29 i know shove comes from norwegian 22:15:33 skyv 22:15:34 hi thefox :) 22:15:34 meaning push 22:15:59 yea chuck is beef too hehe 22:16:13 brings a whole new meaning to the term "wheres the beef" 22:16:14 lol 22:16:24 that might explain the hamburger association, except i didn't know that before :~ 22:16:34 how many chips could a chipchuck chuck if a chipchuck could chuck chips? 22:16:42 hehe 22:16:55 thefox i almost said exactly that when chipchuck was in here that time lol 22:17:26 would be nice to see chipchuck in here again 22:18:43 he has a broadband connection now, so it doesn't tie up his phone line. It is mostly an issue of his just taking the time for a visit. 22:20:06 yea, for US loafers irc is the great productivity killer :) 22:22:08 grrr this counting sort has me stumped 22:22:40 ive written a word called .array to display the unsorted data. if i do unsorted 20 erase .array its all 0's 22:22:57 if i fill it with random stuff and do .array i get different data than if i do unsorted 20 dump 22:23:06 totally different values! 22:24:26 what i should be doing is trying to figure out how to interpret /etc/localtime (timezone files) so i can fix the time/date display for isforth under freebsd 22:25:40 --- join: Serg_penguin (~z@212.34.52.140) joined #forth 22:30:02 well i guess its time for zzz 22:30:05 nite ppl 22:30:08 nite serg :) 22:30:18 heh, you know it's time to release a new version when you start feeling embarrassed to show people the last one instead of what's in the repository. 22:30:27 lol 22:30:37 reposatory ? 22:30:41 *snicker* 22:31:46 what? I spelled it right 22:32:02 no - it was "what reposatory" humor 22:33:19 I seem to remember you making some joke about repository that I didn't get for like 20 minutes. 22:35:49 heh i dont remember 22:36:07 i set up a subersion server here for both myself and tathi 22:36:16 so far tathi is the only one using it religously 22:36:27 * I440r thwaps self 22:36:53 anyway, /me is starting to get narcoleptic here.... 22:36:56 it must be old age 22:37:23 back 22:37:30 re thefox :) 22:38:15 http://www.wickenhaeuser.de/html/online_webserver.html 22:38:16 :) 22:38:19 ok im gone 22:38:29 Bye then 22:38:31 And good morning 22:39:49 * kc5tja is not looking forward to tomorrow -- graveyard. :( 22:40:07 Ouch 22:41:25 thefox: I got my FTS/Forth cross compiler to emit valid Linux executables now. They're static -- they cannot link against shared libraries. But it does support basic console I/O and is easily adapted for other Linux system calls too. 22:41:47 thefox: Right now, my next step is to implement a vocabulary on it, so it can search for words by name. 22:42:48 Although that's a pretty big step in and of itself. I need to get the cross-compiler to stuff the vocabulary vectors (arrays), I need to include them in the ELF image, and then I need to implement code in the compiled image to scan them. 22:44:43 --- quit: thefox () 22:45:02 --- quit: Herkamire ("bed") 22:48:47 --- join: mur_ (~mur@uiah.fi) joined #forth 22:51:36 kc5tja: hi :) 22:51:43 kc5tja: check your emails, I replied 22:52:13 I just replied. 22:52:39 cool 22:53:02 Anyway, my mail client is officially down right now, so I'm not checking any more mails. Deal with it. :) 22:53:02 * arke is sleeping soon 22:53:06 Likewise. 22:53:12 gmail isn't down? 22:53:16 Although, I should try to stay up tonight -- I work graveyard tomorrow. 22:53:28 arke: No, but I won't be reading it either. 22:53:32 Too lazy. 22:54:25 kc5tja: graveyard ? 22:55:23 kc5tja: anything specific you want/need done right now? 22:55:55 Serg_penguin: I will be working graveyard shift -- 10PM to 7AM my time. 22:57:02 aha 22:57:02 arke: I'm intending on getting the cross-compiler to support both the Forth and Compiler vocabularies tomorrow. However, it'll still need to be included in the ELF executable image after I'm done. 22:58:01 arke: Tomorrow (remind me -- in fact, send me an e-mail so I'll see it tomorrow), let me send you how I'm going to lay out the vocabulary database in memory. 22:58:25 * arke sleeps 22:59:04 In fact, screw that -- I'll just put it up on my website. It's there for a reason, after all. :) 23:00:05 --- quit: mur (Read error: 110 (Connection timed out)) 23:20:27 --- quit: wossname (No route to host) 23:31:23 --- join: qFox (C00K13S@82-169-140-229-mx.xdsl.tiscali.nl) joined #forth 23:32:23 --- join: wossname (~wossname@rn-v1w5a06.uwaterloo.ca) joined #forth 23:59:59 --- log: ended forth/04.09.12