00:00:00 --- log: started forth/04.07.22 00:14:04 --- join: Klaw (~anonymous@ip68-228-92-218.oc.oc.cox.net) joined #forth 00:19:58 --- quit: Fractal (Read error: 110 (Connection timed out)) 01:10:34 it has no Yahoo-like directory, sucks ! 01:17:10 Hi 01:17:24 Make one, serg ;) 01:30:13 it must be designed from beginning 01:30:36 * Serg_penguin is writing tree site engine w/ pages, in SQL, all site in one table 01:49:51 --- join: qFox (C00K13S@cp12172-a.roose1.nb.home.nl) joined #forth 01:50:30 Hi 02:00:40 i gonna change my matchbox-cam - it has broken line in 7-th shot at same place ;( 02:34:35 --- quit: Herkamire ("bed") 02:37:07 Serg_penguin: :/ 02:37:21 Maybe you can expect that from very cheap cameras. ;) 03:24:13 --- join: aum (~aum@port-204-54-210.fastadsl.net.nz) joined #forth 03:24:21 anyway, it has a year of warranty, and i'll use it to full extent 03:24:55 --- join: crc (crc@0-1pool176-2.nas6.philadelphia1.pa.us.da.qwest.net) joined #forth 03:53:41 --- join: arke (arke@melrose-251-251.flexabit.net) joined #forth 03:54:38 HI 03:54:48 iH 03:54:56 Moo..ooM 03:55:22 Hello ... olleH 03:55:30 Good morning arke 03:57:31 good morning charles childers 03:58:56 Are you going to start that again? 03:59:51 What did you expect, a sane discussion? :) 03:59:59 Yes 04:00:00 For once 04:00:02 :-) 04:00:14 Optimist... 04:00:21 I always am 04:00:52 * crc is attempting to get the new kernel working... 04:01:25 :) 04:02:06 Which kernel? 04:02:33 The new kernel for RetroForth/Native 04:02:45 Ah, OK. 04:02:57 A lot of nice stuff - once I get it working 04:04:37 Multitasking, better keyboard driver, improved HDD driver... 04:05:18 * Robert thinks of Chuck's HDD "driver". 04:05:29 Mine 04:05:40 Mine's in assembly. ~100 lines 04:05:51 Loads/saves one sector at a time, using PIO 04:05:55 Very reliable though 04:06:03 OK, any special features? 04:06:33 Not yet 04:06:44 I'm working on quite a bit though: 04:06:59 Persistant storage (to first track on hard drive) 04:07:05 --- quit: lalalim_ (Remote closed the connection) 04:07:10 --- join: lalalim (~lalalim@p508AB336.dip.t-dialin.net) joined #forth 04:07:17 Networking (TCP/IP, PPP) via NIC 04:07:27 VGA/SVGA graphics 04:07:31 crc: coooooool 04:07:38 crc: OH OH OH OH OH OH OH I DO GRAPHICS!!!! 04:08:14 crc: Nice.. Well, I'm going out now, see you later. 04:08:20 Ok 04:08:28 If you manage to get SVGA working properly I'm interested. :) 04:08:56 Oj 04:08:59 Ok 04:09:11 * crc is tired - I just got home from work 04:13:21 arke: can you do a nice 320x240 256 color screen for the boot logo? 04:13:40 I'm not much good with graphics :-( 04:14:03 Assuming that all goes well, I'll have this up and running by the weekend 04:14:40 I have to strip out a few pieces of 'C' code that Tom used in the kernel before I can fully test it 04:14:53 heh 04:15:00 crc: I can start once I'm back homke. 04:15:08 crc: but yes, I can do graphics. 04:15:15 crc: will you let me cheat? 04:15:16 cool 04:15:20 How? 04:15:41 let me perform vm86 calls? 04:16:08 The BIOS functions? 04:16:13 and let me put a pre-pm hook, for init 04:16:22 yes, but only the mode change ones. 04:16:30 Go right ahead 04:16:32 putpixel etc. I can do myself :) 04:16:33 cool 04:16:39 but 04:16:42 I'm not opposed to that 04:16:45 i know nothing of vm86 etc. 04:16:54 so you'll have to help me cheat ;) 04:17:08 well, i meant that i don't know how to do it etc. 04:17:29 i need to be able to claim the real mode 0xa000 segment 04:17:36 The current boot sector changes the mode before switching to PM 04:17:39 Sure 04:17:43 cool. 04:17:44 The memory layout is linear 04:18:00 cool. 04:18:04 is vm86 hard? 04:18:08 Yes 04:18:12 But it's doable 04:18:21 I've done a kernel using it before... 04:18:28 Ok. 04:18:32 Though I prefer to use pure PM code :-) 04:18:47 would you prefer graphics code in asm or forth? 04:18:50 or both? :) 04:19:10 Either one is fine, if you document it :-) 04:19:28 (Just basic comments) 04:19:46 eww comment ;) 04:20:10 Just something like: "This draws XXXX at X,Y" or something 04:20:42 I hate totally uncommented code, but I don't like detailed, line by line comments either 04:21:23 is stack comment enough? 04:21:49 Yes 04:21:57 my words are all less than 80 bytes, including stack comment and name 04:22:02 Cool 04:22:08 so I would rather do 04:22:20 Most of mine are (except for the assembly ones) 04:23:16 : putpixel ( x y c - ) push fbaddr fbseg @ swap pop l! ; 04:23:26 is that commented enough? :) 04:23:30 Yes 04:23:44 col 04:23:46 cool* 04:23:53 its pretty much self-documenting 04:24:05 something you can't really do with most languaghes other than forth 04:24:08 I have a word named 'frame' that points to the start of the video RAM 04:24:10 I agree 04:24:19 That's one of the things I *love* about Forth 04:25:01 :) 04:25:02 Though I left out the stack comments in the current codebase -- they're in the Manual :-) 04:25:08 eww! 04:25:09 :) 04:25:46 No, since most of the binary size is actual Forth code that's compiled on startup, I wanted to keep it as clean as possible 04:26:10 Besides, do you really need stack comments for things like 'swap', 'dup', and so on? :-) 04:26:52 yes 04:26:57 i always do stack comments 04:26:57 Why? 04:27:06 That's fine 04:27:07 ITS A FORMALITY :) 04:27:16 RetroForth is informal 04:27:27 Most of the documentation is in the manual 04:27:37 (Which hasn't been released yet) 04:27:52 I don't think anyone other than me really understands the codebase at the moment 04:28:23 (Tom hasn't touched it since about 6.10, which was a long time ago) 04:28:46 And I didn't even share the code for 7.0 until a week or two ago :-) 04:29:16 The final codebase for 7.0 won't be released to the world until August 1 04:29:30 Though it's a lot nicer than the 6.xx releases were 04:29:42 :) 04:29:48 I just have to get the native version up to speed 04:30:06 It hasn't recieved any real updates since 6.03 :-( 04:30:13 ;) 04:30:34 I tried dropping the 7.0 codebase onto the old kernel and it totally f***ed up 04:30:39 have you ever considered metacompiling retroforth? 04:30:41 Everything broke horribly 04:30:42 Yes 04:30:51 That's a longer term goal (8.0 maybe) 04:31:06 I've been writing an assembler, target compiler, and so on 04:31:15 It's a slow process though 04:31:56 i was thinking 04:31:59 if you metacompile 04:32:11 and keep osdep code separate 04:32:32 then the different versions are likely to stay up to date even if you work on only one 04:32:38 The OS dependent code is mostly separate already 04:32:52 The only routines that depend on a specific OS are KEY, EMIT, and BYE 04:33:22 Which is why it can be released for new OSes so quickly 04:33:35 Going from Native to Linux took a month or so 04:33:46 Then from Linux to Windows was about a month and a half 04:33:53 FreeBSD took two weeks 04:34:04 BeOS was two days 04:34:09 uum 04:34:15 you forgot an important word 04:34:18 What? 04:34:22 key? 04:34:47 What's the difference between KEY? and KEY 04:35:58 KEY ( - c , block until a key is available and return it ) 04:36:13 KEY? ( - f , checks to see if a key is available ) 04:37:27 osdep words, i think, are 04:38:07 EMIT KEY KEY? AT CUR@ BYE and the block words 04:38:27 --- join: crc_ (crc@0-1pool176-2.nas6.philadelphia1.pa.us.da.qwest.net) joined #forth 04:38:38 Under the hosted versions, it Under the hosted versions, it blocks until ENTER is pressed. SubsequentUnder the hosted versions, it blocks until ENTER is pressed. Subsequent calls to KEY fetch from the buffer calls to KEY fetch from the bufferblocks until ENTER is pressed. Subsequent calls to KEY fetch from the buffer 04:38:56 --- quit: crc (Read error: 104 (Connection reset by peer)) 04:39:12 Under the hosted versions, it blocks until ENTER is pressed. Subsequent calls to KEY fetch from the buffer 04:39:22 eww 04:39:38 getchar semantics 04:39:39 --- nick: crc_ -> crc 04:39:41 eww 04:39:55 It's always worked for me 04:40:11 :-) 04:40:30 KEY? could be added to the native version easily though 04:40:48 I'm not sure how to handle it under Linux/FreeBSD/Windows/BeOS using syscalls 04:41:20 under unix, you can just set stdin to not buffer 04:41:41 How? 04:41:44 you can even do that with ANSI C 04:41:51 I haven't found a way to do that cleanly yet 04:41:56 theres a function called setbuf 04:42:05 in ANIS C 04:42:20 although thats C 04:42:32 but look in glibc for setbuf 04:42:34 That'll work for the BeOS port, which uses LIBC. I still have to think about Linux, FreeBSD, and Windows 04:43:03 the unices can do it with syscalls 04:43:28 What syscalls? 04:43:31 with windows too, but itll be a bit different 04:43:38 not sure, ioctl probably 04:43:48 * crc hates ioctl 04:44:00 What's wrong with just having key? 04:44:12 I like KEY :-) 04:45:15 Granted, writing games is harder... 04:45:27 But I have GameForth for that 04:45:50 bleh 04:45:59 getchar emantics are the worst 04:46:21 Why? 04:47:19 gotta go 04:47:23 email me and ask 04:47:23 ok 04:47:25 bye 04:47:28 bye 04:47:47 --- quit: arke ("Lost terminal") 04:48:17 crc: GameForth ? 04:48:41 GameForth is an extended version of RetroForth designed for programming games 04:50:23 Not released to the public yet 04:50:30 Windows only 04:50:56 Being developed at the request of a Forth programmer interested in using RetroForth instead of Win32Forth :-) 04:53:59 It's a low priority project, but is kind of fun 04:54:05 Nonstandard design :-) 04:54:22 * Serg_penguin aiming the smoking hole of /dev/null at Windows 04:55:50 I don't like Windows, but most of RetroForth's users seem to use it! 04:56:09 Linux is pretty well served by IsForth and gForth 04:56:20 There's a growing number of FreeBSD users 04:56:44 And it'll be the only alternative to gForth on BeOS 04:57:06 Eventually I'll be switching GameForth to use libSDL, then it'll run under the other OSes as well 04:57:36 Personally, I'm hoping to stop using any 'traditional' OS within a couple of years 04:57:55 RetroForth/Native is the foundation for my planned OS :-) 05:01:45 I wonder if I should switch to using LILO or GRUB to boot RetroForth/Native 7.0 05:03:15 * Serg_penguin dreams of UNIX in Forth, but has not enough skill to implement one 05:04:30 Tom is working on a simple UNIX-like kernel that has RetroForth built into the kernel 05:05:00 (Actually his work is what I'm using as the basis for the RetroForth/Native 7.0 kernel) 05:09:17 Personally, I want a very non-UNIX environment to use/program for 05:11:31 * crc is sick of traditional OSes 05:23:45 I'm not 05:31:37 Why not? 05:37:55 There are few OSes that don't draw heavily from the Unix design 05:38:15 Oberon System 3 comes to mind 05:45:13 --- quit: lalalim (Read error: 110 (Connection timed out)) 05:45:31 --- join: lalalim (~lalalim@p508ABDEB.dip.t-dialin.net) joined #forth 05:51:09 --- quit: Serg_penguin () 05:59:23 --- join: tucknip (pickroll@dialup-4.153.70.2.Dial1.Atlanta1.Level3.net) joined #forth 06:01:13 Hello tucknip 06:01:19 hi 06:06:02 * crc is continuing to hack RetroForth/Native's new kernel 06:06:38 what's retroforth's claim to fame? 06:07:19 * Robert returns 06:08:04 It's small, portable (across the various x86 OSes), and easy to learn, modify, and use 06:08:06 wb Robert 06:08:14 * aum downloads, makes... 06:08:22 is it x86 only? 06:08:25 Yes 06:08:29 shame 06:08:32 Why? 06:08:37 alienates mac users 06:08:43 True 06:08:49 But I don't have a Mac 06:08:54 and mac users outnumber linux users 06:08:57 When I get one, I'll do a Mac version 06:09:19 So? 06:09:28 I *do not have a mac* 06:09:39 I *can not develop/test for a platform I don't own* 06:09:39 not that i'm too worried - i'm an x86 linux user myself 06:09:42 :-) 06:09:51 Eventually there will be a mac version 06:10:05 Eventually being a long-term goal 06:10:08 is it easy or hard to add C primitives? 06:10:15 It's pretty easy 06:10:29 Look at the RetroForth 7.0-beta4 codebase for 'generic.asm' 06:10:31 are there hooks already, or do i need to write assembler shims? 06:10:41 You have to write assembler shims 06:10:52 crc: are you the developer? 06:10:55 Yes 06:11:10 would you consider adding a framework to ease implementation of c prims? 06:11:14 Yes 06:11:21 Once 7.0 is finished 06:11:22 aum: Among coders? 06:11:35 Robert: yes 06:11:35 (re: mac users outnumbering Linux/x86 users) 06:11:46 Robert: you might have a point 06:11:56 * aum tends to think linux coders way outnumber mac coders 06:12:12 They probably do, because x86 hardware is cheaper 06:12:16 wtf is 'fasm'? 06:12:17 And since it's a stand-alone system, all x86 coders can use it. Right? 06:12:24 FASM is the flat assembler 06:12:31 http://www.flatassembler.net 06:12:34 can't see fasm on debian feeds 06:12:42 It's not on them 06:12:53 Sadly... 06:12:58 nasm not suitable? 06:13:02 * crc also maintains the BeOS port of FASM 06:13:08 You can use NASM with a little work 06:13:23 What are the advantages of FASM? 06:13:23 The 6.30 release can be built with either NASM or FASM 06:13:33 1) Written in assembly language 06:13:38 2) Well supported + documented 06:13:40 I'm a NASM user now, but I'm getting a little annoyed because of its lack of macro features. 06:13:52 3) No libc dependencies (except on the BeOS port) 06:14:00 4) Good macro features :-) 06:14:04 Cool. :) 06:14:10 5) Fewer bugs than NASM 06:14:13 6) Less ' 06:14:20 But NASM has excellent documentation, is widely ported, and I already bothered learning it... 06:14:21 6) Less 'red tape' to deal with 06:14:32 Does it support different output formats? 16-bit code? 06:14:42 FASM is VERY close to NASM's syntax 06:14:43 Yes 06:14:50 16 bit or 32 bit code 06:15:16 flat memory (.com), PE, ELF (executable), ELF (relocatable), COFF, etc file formats 06:15:39 --- part: tucknip left #forth 06:15:50 No external linkers needed for plain assembly projects under Linux/Windows/DOS (unlike NASM) 06:16:20 There are a few directive changes: (NASM -> FASM) 06:16:24 RESB -> RB 06:16:28 RESW -> RW 06:16:32 INCBIN -> FILE 06:16:42 And so on 06:16:47 It's pretty straight forward 06:17:33 it's pretty quiet - doesn't say much 06:17:43 What RetroForth? 06:17:50 RetroForth is as silent as possible 06:17:57 Stays out of the way :-) 06:18:16 .s doesn't work 06:18:24 In which version? 06:18:35 linux-console-fasm 06:18:43 6.30? 06:18:44 crc: Nice :) Does it use any advanced syscalls? (asking because of portability reasons) 06:19:03 Not that I'm aware of 06:19:15 'words' gives incomplete output 06:19:19 --- part: segher left #forth 06:20:29 What's the last word listed by 'words' ? 06:21:11 ( 06:21:14 .s works here (under Windows, but the code for .s is totally portable) 06:21:17 before that, \ 06:21:30 That's the right ending 06:21:48 There's also a macro and forth vocabularies 06:21:54 Try 'forth words' 06:21:57 'macro words' 06:22:01 'domain words' 06:22:12 (Domain was dropped in 7.0) 06:22:30 6.3k binary ?!? 06:22:34 Yup 06:22:40 holy shit 06:22:42 Version 7.0 is <4k binary 06:22:53 you should do a version for ARM and similar embedded cpus 06:22:56 Is that the compiler? 06:23:12 That's the compiler and interpreter and basic words 06:23:15 OK. 06:23:28 A good chunk of that is raw ascii source that's compiled on startup 06:23:35 So it *could be smaller* 06:23:37 :-) 06:23:39 fat.f is a whole 1811 bytes - man that's bloated!! :P 06:23:39 I think my 16-bit Forth's corresponding binary is around 3kB. 06:23:50 That's pretty amazing with Forth.... 06:23:53 I plan to do an ARM version one day too 06:23:54 Useful but still small. 06:23:55 Yup 06:24:10 4k is pretty small for a 32-bit Forth :-) 06:24:22 Yes, but not extreme. 06:24:33 i'd love a forth-powered PXT GPRS cellphone 06:24:34 Still, small enough to fit everywhere. 06:24:39 I agree 06:25:50 here I was, feeling good about stripping a forth binary down to 144k 06:25:58 That's one of the things I like about RetroForth: It runs under Linux, FreeBSD, Windows, and BeOS (and should be easily ported to other OSes) 06:26:08 144k? What takes all THAt space? 06:26:12 aum: Your forth probably does a lot more than RF :-) 06:26:18 Is it written in C? 06:26:20 crc: slightly 06:26:23 crc: yes, in C 06:26:32 * aum has written a plugin framework for FICL 06:26:41 Ahh, FICL is pretty nice 06:26:49 * crc has used FICL in the past 06:27:03 * aum has coded plugins for GUI, sockets, even embedding a python vm 06:27:06 Wow 06:27:10 That's impressive 06:27:29 possible to implement methods of python classes in Forth 06:27:34 cool 06:28:01 manipulates python objects faster than the python bytecode interpreter 06:28:18 I've never done much with python 06:28:26 python r0x0r5 06:28:33 Once I discovered Forth, I haven't used much else 06:28:36 but python has a price - slowness and bloat 06:28:54 I have written a simple Lisp interpreter (in C) though... 06:29:03 tcn likes python 06:29:14 what i like about python is its casual attitude - it takes care of types in the background, and lets you think in the abstract without being pulled up every 5 seconds by low-level red tape 06:29:28 and, the 'everything is an object' paradigm 06:29:37 * crc hates ' 06:29:44 * crc hates 'objects' 06:30:00 crc: i thought you meant that you hate the ' word 06:30:10 No 06:30:26 I use ' sometimes 06:30:44 i use ['] more often than ' 06:30:48 : ' 32 parse find ; 06:30:53 What's ['] ? 06:31:05 crc: it's the immediate version of ' 06:31:12 In RetroForth that'd be: 06:31:24 macro : ' 32 parse find ; forth 06:31:33 Defining ' as a compiler macro :-) 06:32:06 (The compiler searches the macro vocabulary first, and handles the words in it as if they were IMMEDIATE) 06:32:23 In RF 6.30 'parse' is called 'word' 06:32:27 crc: try this in retroforth: 06:32:37 : fib dup 3 < if drop 1 else 1- dup recurse swap 1- recurse + then ; 06:32:56 Why? 06:33:00 1) No ELSE 06:33:05 what??! 06:33:06 2) No RECURSE 06:33:18 To calculate FIB I do: 06:33:29 : .1 >r over + swap r> repeat .1 ; 06:33:29 : fib 0 1 rot .1 swap drop ; 06:33:40 (That example is for RF 7.0) 06:34:03 I've never liked ELSE 06:34:20 crc: i take it your main background is assembler? 06:34:23 My method is faster than the recursive method 06:34:50 I learned to program in BASIC, then went through Pascal, C, Oberon, and finally assembly + Forth 06:34:56 With some use of LISP 06:35:08 i gather your heart is in the bit-bashing side of things 06:35:34 I try to do things in a simple, practical way 06:35:46 Recursion is complex, so I try to avoid it 06:35:56 recursion can be very wasteful 06:36:03 Yes it can 06:36:25 It can be useful at times though 06:36:35 retroforth would be a good OS for a pen-computer 06:36:43 Like a Palm? 06:36:46 or a wristwatch computer 06:36:53 crc: no - a computer in a pen 06:37:03 I'd love to see that :-) 06:38:35 The main use of recursive FIB is for benchmarking? 06:40:08 I can't seem to find any problem with '.s' 06:40:35 crc: .s don't work on my debian box 06:40:48 What does it do? 06:40:52 nothing 06:40:59 What's on the stack? 06:41:19 ahh, tried again with linux-console - it's ok 06:41:27 Odd 06:41:33 I'll look into that 06:41:36 k 06:41:54 I don't think I included '.s' in RetroForth 7 06:42:36 I never actually used it 06:44:59 anyway, way past bed time 06:45:01 g'nite 06:45:04 heh, my FIB finds FIB(45) in 0.012 seconds :-) 06:45:04 --- quit: aum () 06:45:06 g'night 06:45:14 I should go to be too 06:45:33 Good night all! 06:45:37 --- quit: crc ("Time for work...") 08:36:49 --- join: wossname (wossname@HSE-MTL-ppp61837.qc.sympatico.ca) joined #forth 08:57:49 --- join: Serg[GPRS] (~z@193.201.231.126) joined #forth 08:58:57 hi ! 08:59:41 --- quit: Serg[GPRS] (Client Quit) 09:12:13 --- join: Fractal (jah@selling.kernels.to.linus.torvalds.at.hcsw.org) joined #forth 09:23:51 Hi Fractal 09:24:08 How jah doing? 09:24:46 --- join: tgunr (~davec@vsat-148-63-4-106.c001.g4.mrt.starband.net) joined #forth 09:30:45 Hey good 09:31:01 What up? 09:31:57 Not too much, really. A little bit of Forth, a little bit of summer. 09:32:34 Heh ya I guess it is summer in swedeland too 09:33:50 Ya I'd like to go to the scandinavian countries sometime 09:33:59 Sound like pretty cool places 09:34:18 Sure is. :) 09:34:20 And you're into hockey 09:36:44 Not I though, not much of a fan of professional sports. 09:38:21 Er not just professional... you guys don't bust out the skates and head to the pond? 09:38:28 Or street hockey in the summer? 09:40:01 That was a long time ago, I mostly just skate around on the ice in the winter. 09:43:19 Still I'd like to go there... I might have a tough time learning swedelish tho 10:21:36 --- join: I440r_ (~mark4@64.47.44.254) joined #forth 10:23:26 Fractal: Maybe, it's not one of the hardest languages to learn... 10:24:07 dont believe him 10:24:15 he'll say anything to trick yoooo!! 10:24:16 :p 10:24:25 Hehe 10:24:35 qFox-land is more liberal, though. ;) 10:24:42 heck no. 10:24:51 Over here they'd arrest you if they saw some of your old IRC hosts. 10:24:59 appearantly dutch is amongst the hardest languages to learn, although i never had that problem ;) 10:25:03 (ok, lame joke) 10:25:55 I wasn't refering to the language. :) And I don't think dutch looks that bad (because I know Swedish and German, perhaps ;) 10:28:43 i know. but i've heard that it is so 10:29:25 then again chinese is like impossible as well 10:29:38 but 1/5 of the globe speaks it :p 10:29:50 :) 10:29:54 --- join: randolm (wossname@Toronto-HSE-ppp3699884.sympatico.ca) joined #forth 10:30:22 --- quit: wossname (Nick collision from services.) 10:30:29 --- nick: randolm -> wossname 10:36:07 qfox chinese isnt impossible, the chinese are very good at it :) 10:36:49 thats what i said :) 10:36:59 but even swedish makes more sense ;) 10:37:00 to me 10:38:36 then again, thats writing. i think that in spoken language, swedish could just as well be chinese 10:43:26 --- quit: wossname ("poyzsdg") 11:04:04 --- join: SDO (~SDO@67-23-111-213.clspco.adelphia.net) joined #forth 11:05:42 hi all 11:06:35 anyone know much about the architecture of a forth machine? 11:18:26 define forth machine 11:18:33 a forth cpu ? 11:57:59 --- join: Bullrush (~Bull@196.44.2.197) joined #forth 12:11:54 --- join: Herkamire (~jason@h000094d30ba2.ne.client2.attbi.com) joined #forth 12:13:15 --- quit: tgunr (Excess Flood) 12:15:07 --- join: tgunr (~davec@vsat-148-63-4-106.c001.g4.mrt.starband.net) joined #forth 12:15:16 --- quit: I440r_ (Read error: 110 (Connection timed out)) 12:47:02 --- join: snowrichard (richard@adsl-068-209-159-248.sip.shv.bellsouth.net) joined #forth 12:48:37 --- join: wossname (wossname@Toronto-HSE-ppp3699884.sympatico.ca) joined #forth 12:49:15 --- quit: snowrichard (Client Quit) 13:18:24 --- quit: wossname ("$") 14:00:38 forth is a forth machine 14:02:38 A machine is like a cat without a tail. 14:05:12 --- join: Topaz (jonny@spc1-horn1-6-0-cust217.cosh.broadband.ntl.com) joined #forth 14:17:28 --- nick: thin -> cduce 14:32:25 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 14:35:57 'm talking about something slava mentioned once 14:36:10 a machine where the processor directly supports forth 14:37:07 i want a forth proc 14:37:08 yeah 14:37:11 forth machine 14:37:17 or even forthchips 14:37:21 ok, so anyone know much about them? 14:37:36 they're expensive and almost impossible to get hold of? :D 14:37:49 there aren't any currently in production, except maybe from Patriot Scientific. 14:37:49 you'd have more luck implementing one from scratch, on an FPGA 14:38:02 (which various people have done, i believe) 14:38:05 there are several designs in HDL 14:38:14 www.ultratechnology.com 14:38:17 mostly in VHDL, IIRC 14:38:18 go there for forthchips etc 14:38:23 well, I'm willing to look it up if things came to it, but I figured this is the right room to ask about the main differences in forth processors and today's i386 processors 14:39:06 well, a forth processor generally has a small stack on-chip. 14:39:09 the main difference would be the hardware stack, i guess 14:39:46 main? its the whole difference :P 14:39:50 16 cells or so, think most of the implementations do a circular stack rather than dealing with overflow. 14:40:09 so, in i386, there is a huge array of bits- the memory, and they all have memory addresses (well, by the byte, I think) 14:40:10 well, there's also stuff like no-operand chips and things 14:41:57 http://www.ultratechnology.com/chips.htm 14:42:16 http://www.ece.cmu.edu/~koopman/stack_computers/index.html 14:42:35 that second one is Phil Koopman's book "Stack Computers: The New Wave" 14:42:53 Probably the best intro to forth processors out there. 14:45:44 --- join: ASau (~root@217.16.31.100) joined #forth 14:46:09 Dobryjj vecher! 14:47:06 Hi ASau 14:52:48 --- quit: JDoctor ("leaving") 15:14:51 --- join: slava (~slava@CPE00096ba44261-CM000e5cdfda14.cpe.net.cable.rogers.com) joined #forth 15:15:01 hi 15:15:09 --- part: cduce left #forth 15:18:17 * qFox goes play ra2 15:18:19 online 15:18:26 ra2? 15:18:29 red alert 15:18:45 hi qFox, tathi 15:18:57 lo 15:19:18 what's a good syntax for a literal char? 15:19:30 i'm uisng a denotation at the moment, eg #\a 15:19:36 i'm thinking maybe CHAR: a 15:19:37 $literal 15:19:47 c-literal 15:20:00 lit-char 15:20:03 or something? 15:20:10 heh 15:20:18 slava: I like what you're doing already, I think... 15:20:39 The shorter, the better, IMO :) 15:21:06 the problem is that denotations make parser code messy 15:21:32 oh. yeah. 15:21:38 denotations are evil!!!!! 15:22:14 Well, forth just uses CHAR and [CHAR] 15:22:20 I rather like the colon though. 15:22:51 yeah i like a colon after words that read forward 15:24:51 a notation like #a or 'a or whatever, would be just like $ff1234 for hex 15:24:57 it's just base 256 15:25:18 hi Herkamire 15:25:21 Herkamire, how's herkfork going? 15:25:55 a little slow 15:26:22 I'm kinda busy with other stuff, and none of the stuff I want to do on my herkforth todo list look easy :) 15:26:53 heh 15:27:24 i have some annoying stuff in my to do for cfactor, like arbitrary precision math 15:31:25 hi slava 15:32:38 hey 15:32:53 doublec, i'm changing literal char syntax from #\ to CHAR: 15:33:09 doublec, the former is a bit of a pain to parse without a readtable like java factor 15:35:09 oooh :) another advantage of a prefix for base 256 is you can have multiple char constants. 15:36:10 what do you mean? 15:36:26 ok, in herkforth I don't use BASE 15:36:35 I just have a prefix $ which indicates a number in hex 15:36:42 so you enter $a and it puts 10 on the stack 15:37:15 I could make a similar addition to the parser to accept a prefix ' to indicate the number is in bask 256 15:37:33 so 'a would put 97 on the stack 15:37:41 ok 15:38:09 'abcd would put $61626364 on the stack 15:39:34 although... maybe I won't use things like that much now that I'm starting to have string support 15:40:36 slava, ok sounds good. 15:41:20 doublec, i'll start working on bignums next. at first, it will just be boxed 32/64-bit numbers 15:41:27 slava, I've commited changes to the todo app and continuation responder. It's refactored a bit and I check that the user isn't putting ../, etc in the names. You can also add/delete/mark complete now. 15:41:29 doublec, this will let us do image output and float>str/str>float 15:41:34 doublec, cool 15:41:42 nice 15:58:39 --- quit: Topaz ("Leaving") 16:15:08 --- quit: ChanServ (ACK! SIGSEGV!) 16:17:13 --- quit: ASau (Read error: 110 (Connection timed out)) 16:25:01 --- join: tucknip (pickroll@dialup-4.152.81.252.Dial1.Atlanta1.Level3.net) joined #forth 16:27:37 hi tucknip 16:37:13 slava, new todo running on http://www.modalwebserver.co.nz:8888/todo/ 16:38:34 doublec, very nice! 16:38:42 thanks. 16:38:49 show it off in #java :) 16:38:59 I'll do some css stuff and style it nicely and then add some more functionality. 16:39:03 :) 16:39:16 I'm running it in a 'catch' so hopefully it'll stay up. 16:39:31 i'll fix the catch -vs- in-thread thing tonight. 16:39:43 cool. 16:40:00 also i think to minimize the number of words in cont-html, css should be used 16:40:28 yeah, I'm going to sort out what I do there a bit more as it's a bit large. 16:42:34 doublec, the image generator actually parses and loads in CFactor. however, it won't work yet since it assumes 32-bit integers 16:43:17 nice. I'm looking forward to running httpd on CFactor one day. 16:44:14 making an 'empty' image: 16:44:15 3] [ ] with-image 16:44:16 4] . 16:44:16 { 252579084 0 0 0 307 320 68 0 52 0 60 0 76 23 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 0 84 23 24 0 92 12 -257654780 7274614 6357091 7667810 6357100 6881394 7536741 0 147 131 186 11 76 23 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 194 11 11 11 11 11 11 0 84 23 200 0 } 16:47:43 nice 16:47:54 The empty image just starts up and exists I take it? 16:48:07 yes 16:49:12 doublec, update cvs 16:50:46 ok 16:52:25 slava, lots of file changes. Is that the CHAR notation change? 16:52:46 doublec, most of them are changing ! to have a space after it in comments. 16:52:55 ok 16:53:01 doublec, the native parser only recognizes " as a word of its own, if it doesn't end with whitespace 16:53:11 java factor had the read table so that !foo was a comment, #\a was a char, etc. 16:53:52 the actual changes are minor 16:55:07 oh another one is that bitor, bitnot, shift< and shift> operators work in cfactor now 16:55:32 ok, cool 16:57:11 doublec, you there? 16:57:33 doublec, i'm really stuck in the lists vocab, 'partition' word. i need to refactor it to not use custom stack words, since cfactor doesn't support them. 16:58:00 slava, yes 16:58:02 do you have any ideas? 16:58:52 that's a hard one. none come immediately to mind. 17:04:56 --- quit: tathi ("rebooting") 17:15:02 --- join: ChanServ (ChanServ@services.) joined #forth 17:15:02 --- mode: irc.freenode.net set +o ChanServ 17:22:41 --- join: tathi (~josh@pcp02123722pcs.milfrd01.pa.comcast.net) joined #forth 17:26:28 slava, what are your thoughts on persistence for things like the wiki now that the db stuff is removed? 17:27:17 i might rework the wiki to use files. 17:27:26 apart from that, wait until cfactor matures ;) 17:27:46 cool 17:30:51 --- join: crc (crc@0-1pool89-13.nas48.philadelphia1.pa.us.da.qwest.net) joined #forth 17:34:05 Hi crc 17:34:34 hmm...there was something I wanted to tell you... 17:34:41 * tathi goes back to check the logs again 17:34:58 Hi tathi 17:35:54 oh right. Non-blocking input. 17:36:10 What about it? 17:36:11 I know how to do that under Linux and FreeBSD if you want to know. 17:36:29 In assembly? 17:36:37 yah. 17:36:40 Sure 17:37:25 If you can show me how to do it, I'll add non-blocking input to RF 7 17:37:51 well, non-line-buffered input anyway. 17:38:10 That'd be better than nothing: I don't like the line buffered input at all 17:38:29 that's pretty simple. 17:38:38 * tathi goes to collect all the bits from his notes 17:38:47 --- part: ayrnieu left #forth 17:42:15 * crc has half an hour until he has to leave for work 17:43:41 --- part: tucknip left #forth 17:45:18 --- join: Sonarman (~matt@adsl-64-169-93-70.dsl.snfc21.pacbell.net) joined #forth 17:46:36 Hello Sonarman 17:47:26 hi 17:47:45 bah. 17:48:02 stupid game crashes as i'm about to kill the enemys. great great 17:48:05 >:( 17:48:16 :-) 17:48:39 guy creates migs but thassit... no defense no other vehicles, what am i supposed to do... :p 17:48:44 but this odd crash. bah. 17:49:32 me sleep. nite 17:49:41 --- quit: qFox ("meh ircii's netsplit detection appearantly sux ^^") 17:55:22 http://qualdan.com/misc/input.txt 17:55:52 If I left out anything important, just ask. 17:56:21 Cool 17:56:40 And this is non-blocking, or just non-line buffered? 17:57:45 clearing ICANON gives you non-line buffered 17:58:00 It'll still block until a key is pressed? 17:58:07 yes. 17:58:10 Ok 17:58:20 Then it'll be just like the Native version :-) 17:58:42 cool. 17:58:45 I'll have this merged into the source tree tomorrow morning. Thank you! 17:59:03 I was going to say that you _can_ do non-blocking, but it's rather a nuisance and I don't remember all the details. :-) 17:59:05 * crc still needs to make Windows behave like this... 17:59:10 ok 17:59:15 heh. good luck. ;-) 17:59:37 The people on the fasm message boards will probably know how to do it :-) 17:59:53 They always have answered my obscure questions in the past... 17:59:59 that's cool. 18:01:05 yeah, it'll finally behave properly across all platforms 18:01:10 * crc smiles 18:02:40 --- quit: skylan ("bbiab") 18:07:09 I have to go to work. I'll be back in the morning 18:07:21 --- quit: crc ("Time for work...") 19:25:47 --- join: blockhead (default@dialin-404-tnt.nyc.bestweb.net) joined #forth 19:46:09 --- part: blockhead left #forth 20:05:27 --- join: SnowRichard (root@adsl-068-209-159-248.sip.shv.bellsouth.net) joined #forth 20:05:36 hello 20:06:04 hi 20:06:18 just got my dsl upgraded to 3mbit 20:11:45 --- quit: SnowRichard ("ChatZilla 0.9.52B [Mozilla rv:1.6/1]") 20:18:19 --- join: kc5tja (~kc5tja@66-74-218-202.san.rr.com) joined #forth 20:18:26 --- mode: ChanServ set +o kc5tja 20:57:32 hi 20:58:33 Yay, just got my Forthy console working in our game engine. 20:59:00 madgarden, is there a viewcvs link for forthy source? 20:59:01 madgarden: you're making a forth in a game too? 20:59:03 i'd like to dig around :) 20:59:10 Yep! :) 20:59:16 Herkamire, crc is making a gameforth with framebuffer support 20:59:19 Viewcvs... yea sure, let me find you a link. 20:59:30 madgarden, how many primitives in C? 20:59:49 slava: cool :) 21:00:13 Herkamire, how hard is it to encode/decode 64-bit floats, for display? 21:00:42 It can't be that hard 21:00:50 slava: never tried, but it can't be too hard 21:00:56 3.14159 is just 314159 divided by 100000. 21:00:58 kc5tja, it annoys me that almost no language has output of float in a lossless format. 21:00:59 Hmm. You're going to make me count? :P I'd guess 100-ish. They're not exactly primitives, per se... 21:01:01 there's just two bitfields I think 21:01:11 kc5tja, i'm going to have input/output of floats in any base 21:01:12 --- join: skylan (~sjh@vickesh01-4897.tbaytel.net) joined #forth 21:01:14 slava: That is because floating point numbers are inherently lossy. 21:01:22 one for the digits and one for the exponent 21:01:24 kc5tja, so octal floats can map precisely to the representation 21:01:55 Herkamire: Each field is also independently signed. 21:02:13 slava, http://cvs.sourceforge.net/viewcvs.py/forthy/forthy/ 21:02:33 kc5tja: that makes sense 21:03:14 sounds like 3 ppc istructions to break it into digits and exponent 21:04:05 Personally, I prefer rational math over floating point math whenever I can get away with it. 21:04:16 kc5tja, fixed point, or fractions? 21:04:49 Rational math is fractions, but the numerator and/or denominator can be fixed point numbers themselves in some cases. 21:05:30 lisp was the first language to have widespread support for fractions 21:05:59 in the 70's, a lot of new ideas were explored in lisp. howadays, it seems stifled somewhat by common lisp. 21:06:14 kc5tja: I never really thought about doing things that way 21:06:19 interlisp from xerox had a source editor that edited s-expressions in memory. 21:06:24 everything was stored in a persistent image. 21:06:24 Dude, PC/GEOS had the world's first scalable vector fonts (and general purpose skewing, rotations, etc), on an 8088 without an FPU, and the damn thing was still *fast*. 21:06:31 That alone convinced me of rational's power. 21:06:46 but nowadays all cpus have fpu 21:07:21 come to think of it, the line algorithm I use does math like that 21:07:29 slava: Floating point expresses a wider range of numbers than rational does. 21:07:45 slava: no 21:07:50 slava: there is not one on my palm pilot 21:08:33 Herkamire, heh true 21:08:41 or on the kestrel for that matter. 21:08:59 No, but I am considering the possibility of a rational math coprocessor. :D 21:09:11 (not on the first generation, of course) 21:09:12 :) 21:10:02 when do I get to make robots? 21:10:12 ? 21:10:23 what if I don't waaaant to "finish" making my OS first? 21:11:28 OK, I'm really not understanding. But I digress. 21:11:50 I want to make robots 21:13:05 I don't have the resources to start right now, and even if I did I'd like to get herkforth OS working first 21:13:08 When did this urge kick in? :) 21:13:21 dunno, maybe when I was 6 21:13:43 ahh 21:13:59 it's all part of the plan 21:14:23 some day I'll make one do something useful like mow the lawn 21:15:17 * kc5tja isn't quite so ambitious. 21:15:32 * kc5tja wants instead to make a go-kart with a Tesla turbine as the power plant. 21:15:52 And a Constantinesco torque converter for its transmission. 21:18:12 :) 21:18:25 powered by charcoal briquets and steam? 21:18:57 Compressed air will be good enough. 21:19:08 awwww 21:19:26 tesla turbine sounds hard to make 21:20:19 It's trivial. 21:20:38 I've made one out of paper before. 21:20:51 (and verified that on breath power, it developed 500mW of shaft power) 21:20:52 what would you make it out of to power a go-cart? 21:21:09 thats cool 21:21:25 Steel discs for the turbine discs, and everything else aluminum. 21:21:49 I've never done any machining. perhaps that's why it sounds daunting 21:22:05 I've done quite a bit of woodworking, but not metal 21:22:11 For converting data from one type to another, is something like >INT a good name? 21:22:32 Neither have I, but discs can just be stamped out. Turbine *blades* have to be finely machined, and have very, very, very irregular surfaces (they're basically tiny airplane wings). 21:23:05 madgarden: Sounds good enough for me. As long as you're consistent. 21:23:52 Just wondering if the > "to" is used certain types of conversions by forthers normally. 21:24:01 used for 21:24:04 Herkamire: People have made tesla turbines out of AOL CDs and used wood for the rotor housing. 21:24:26 madgarden: Generally, it's O>N, where O is the original type, and N is the new type. 21:24:46 So, S>D for single-to-double precision integers, for example. And I think FS>D is the same for floating point, etc. 21:24:53 kc5tja: I was thinking about CDs :) It sounded like they are plenty big, and it said they should be smothe. 21:25:43 Ahh, OK. Well in my case, I don't care what the type is already... since it's scripting, it just knows. So, cool then. 21:27:03 Gahh...I just can't seem to get single-cycle branches with this new processor architecture. 21:27:44 I can get (effectively) single-cycle arithmetic and logical operations. 21:27:52 So in that respect, it's actually somewhat faster than the MISC. 21:28:34 But memory fetches will always take two cycles (one for the instruction fetch, and one for the data fetch), and it looks like all control flow except call and return will also be two to three cycles, because of how many instructions are necessary to make it happen. 21:28:53 (e.g., in other words, follow the Forth truism -- avoid conditionals in speed-critical code) 21:29:33 You know, I think I'd still use the Kestrel, even with its slow-ass 3 cycle branches. 21:29:36 But, that's just me. 21:30:04 kc5tja: that't goes for anything on x86 or ppc too 21:30:23 Herkamire: PowerPC has single-cycle branches though. 21:30:23 kc5tja, when i write concatenative code i keep variable use (ie, memory access on kestrel) to a minimum. 21:30:27 kc5tja, stacks all the way 21:30:48 kc5tja: but it stalls on conditional branches... well at least if it doesn't predict them properly 21:30:50 slava: You're not going to have a 640x480 pixel buffer on the stack. :D 21:31:12 :) 21:31:13 Herkamire: Which most of the time it WILL predict properly (avg. 80% on x86 at least) 21:31:45 kc5tja: I suppose 21:32:21 As it is, here is what I have to do to make a conditional branch: 21:33:11 DT_T := & NOP := NOP 21:33:23 JZ_T := IR_T & NOP := NOP 21:33:47 So by writing to the Data Top Trigger register, I push a value onto the data stack, which causes the internal Z-flag to be re-evaluated. 21:34:15 JZ is then written to, so that if Z is set, the branch address (taken from the instruction stream, as read from the IR_T register) is laoded into the PC register. 21:35:12 This means: any basic block boundary must have all values written back to the stack prior to the boundary, and all code subsequent to the boundary cannot assume the values in the ALU input registers are valid (and must therefore be re-loaded from the stacks). 21:36:38 I can optimize this a little bit by keeping the top of stack in ALU_1 (in which case, obviously, JZ would test ALU_1 and not the top of the data stack proper). 21:39:06 sounds rather complex 21:39:25 It's actually very simple. 21:39:40 The only CPU "instruction" is to move something. 21:40:03 The move instruction can take one of two forms: 21:40:07 DEST := SRC 21:40:12 DEST := value 21:40:23 kc5tja: what happend with your understanding of the MISC patent? before I left for vacation it sounded like you had decided that the patent was too specific to cause you problems 21:40:27 DEST and SRC are register specifications -- typically 6 or 7 bits wide. 21:40:52 slava, funnily enough the factor httpd server doesn't react to win32 virus attempts. The server has had a couple of 'code red' style URL hits. 21:40:53 There is another patent which describes a microprocessor which executes packed instructions sequentially. 21:41:07 how do you signal a value? (and is it just 6 or 7 bits also? 21:41:30 I should write a responder for '/scripts/' to send something back to the infection attempt... 21:41:33 A single bit is used to indicate whether SRC is a register or is a signed, immediate value. 21:41:35 oh, I didn't realize you found a seccond patent. that sucks 21:42:01 sounds like a stupid patent. 21:42:19 why would think it was unobvious to fetch more than one instruction from memory at a time. 21:42:24 It's not, really. Since it's a hardware patent, AND nothing like it has existed prior, I consider it a valid patent. 21:42:24 that's what instruction caches do 21:43:19 doublec, hahaha 21:43:29 doublec, i like the new todo list. 21:43:32 is it still up? 21:44:00 yep. I moved it to: http://factor.modalwebserver.co.nz/todo/ 21:44:16 Herkamire: Anyway, the TTA gives me RISC-like performance, except in those border-line cases, and does so equally without caches. 21:44:34 kc5tja: cool 21:44:49 kc5tja: how far apart are the bounderies? 21:44:51 (note, WITH caches, I *CAN* get single-cycle execution rates for memory fetches and stores, but it still won't help me for conditional branches.) 21:44:56 slava, I've had a couple of unusual OutOfMemory exceptions. I'll look into it on the weekend. I suspect it's something to do with the number of continuations I'm holding on to. 21:45:08 slava, I'll write a responder that displays JVM memory usage probably. 21:45:17 doublec, yes, good idea! 21:45:24 doublec, i'll add those words to the library 21:45:25 TTA is a transport triggered architecture. More accurately, it is a zero-instruction-set-computer (ZISC). 21:45:32 slava, that'd be great. 21:45:35 doublec, and make similar ones in native factor 21:45:49 ZISC 21:46:12 doublec, wow 21:46:14 doublec, http://factor.modalwebserver.co.nz/inspect/global'httpd-responders'todo'exit 21:46:26 Yes. Also: http://factor.modalwebserver.co.nz/inspect/global%27httpd%2dresponders%27todo%27continuation%2dtable%274356487928627659 21:46:28 doublec, a truly scary looking continuation! 21:46:44 The 'quot' name of that last link 21:47:34 kc5tja: sounds like it has two instructions to me... move-register and load-immediate 21:47:39 doublec, i'm actually making the prettyprinter more robust right now. 21:47:49 Since I don't actually need the entire continuation (just a partial continuation) I could probably manually truncate it if I wanted to get tricky with it. 21:47:49 doublec, it handles circular structure -- before it would overflow the stack 21:47:58 doublec, nah i wouldn't worry aobut it. 21:48:20 slava, I actually like the way you can inspect it. It's pretty cool. 21:48:28 great for debugging what it's doing. 21:48:41 Herkamire: Fine. TISC. Or OBISC. :) 21:48:42 wow 21:48:43 http://factor.modalwebserver.co.nz/inspect/vocabularies'todo-example'simple-todo-page 21:49:25 Very html like isn't it. 21:49:27 it's very colorful 21:49:31 Herkamire: However there are TTAs which don't even distinguish between a small immediate and a register. These CPUs are truely ZISC -- zero bits of instruction space are dedicated to the "instruction." 21:49:56 kc5tja: ahh, hadn't thought of it that way 21:50:28 kc5tja: you have one bit to distinguish? 21:50:49 I actually have two bits. 21:51:21 If bit 0 is clear, then bits 1..31 contain the effective address for a subroutine call. 21:51:42 doublec, how many times has it gone down? 21:51:48 slava, only once. 21:51:54 If bit 1 is set, then bits 1..31 are a MOVE instruction pair (there are two MOVE instructions packed into 30 bits, plus 1 unused bit). 21:51:55 doublec, was it my bug or your bug? 21:52:20 slava, not sure. It was sitting idle for a long time. Maybe the server socket timed out? 21:52:29 Each MOVE instruction is expressed in 15 bits of space: two 7-bit register fields (SRC and DEST), plus one bit to indicate if SRC is immediate or not. 21:52:36 doublec, i think i just crashed it 21:52:41 doublec, i went to global'interpreter'datastack 21:52:41 Note that both MOVE instructions execute at the same time. 21:52:44 slava, yep. 21:52:49 doublec, global'interpreter'catchstack was fine 21:52:51 The compiler is responsible for avoiding register access collisions. 21:52:57 doublec, what's the error? 21:53:08 slava, hmm. doing :s gives a *huge* stack. It's still scrolling my screen 21:53:26 let me restart it... 21:54:52 doublec, i bet the datastack was on the datastack and it overflowed trying to print it? 21:54:54 slava, up now. 21:55:07 slava, yes looks like it. 21:55:07 i won't do it again don't worry. 21:55:15 let me try it here wiht the new prettyprint 21:55:34 it dies 21:55:42 ERROR: java.lang.NullPointerException 21:55:43 oops? 21:56:35 what caused the error? 21:57:29 back in a sec.. 21:57:31 now it works 21:58:11 it randomly dies 21:58:13 with NPEs 22:01:39 back 22:03:37 doublec, i'll have a commit with some fixes shortly 22:04:01 slava, ok, cool 22:10:48 Anyone aware of a mouse pointer editor that works generally for X Windows? 22:11:07 I don't expect there to be one, but it'd be nice of there was one. 22:18:03 kc5tja: "If bit 1 is set, then bits 1..31 are a MOVE instruction pair" did you mean "if bit 0 is set"? 22:20:22 Sonarman: Yes. 22:20:55 bug fixxxed 22:21:07 I compiled instructions to do something instead of doing it 22:21:12 kc: why did you say that two bits are used for the "instruction"? 22:22:24 Bit 0 distinguishes between CALL/MOVE. Then within each MOVE pair, one bit distinguishes between a R=value or R=R form. 22:23:02 ok 22:23:26 A single MOVE instruction looks like this: 22:23:34 DDDDDDDSSSSSSSI 22:23:46 where I indicates whether S is a register ID or a signed, immediate 7-bit value. 22:24:14 right 22:24:46 A complete 32-bit word would be formatted like this: DDDDDDDSSSSSSSIdddddddsssssssi01 22:26:21 --- join: jDoctor (~rex@pcp08550359pcs.manass01.va.comcast.net) joined #forth 22:32:59 --- quit: Herkamire ("bed") 22:40:22 --- quit: doublec ("Leaving") 23:00:58 OK, I'm off to bed now. 23:01:04 --- quit: kc5tja ("THX QSO ES 73 DE KC5TJA/6 CL ES QRT AR SK") 23:19:11 --- join: ASau (~root@217.16.31.100) joined #forth 23:19:32 Dobre jitro! 23:24:22 --- quit: tgunr (Read error: 104 (Connection reset by peer)) 23:26:06 --- join: tgunr (~davec@vsat-148-63-4-106.c001.g4.mrt.starband.net) joined #forth 23:27:11 --- join: aum (~aum@port-204-54-210.fastadsl.net.nz) joined #forth 23:30:21 Dobre jitro, aum! 23:32:02 yo 23:32:20 Maanon, ASau! 23:34:53 --- quit: Sonarman ("leaving") 23:59:59 --- log: ended forth/04.07.22