
19 Feb 2002  

  macros.s      Changed immediate macro to _immediate_ so it wouldnt conflict 
                with the word immediate which is now added to compile.1

  isforth.asm   Moved the sys_brk and sys_mprotect code into linux.1 where I
                should have put it in the first place

  io.1          Moved things arround a little, changed the rot in (.) to a swap.
                Removed the spcs array made spaces do 'do space loop'.
                made type do 'do emit loop' instead of sys_type (removed)
                fixed backspace to not crash us in expect
                started comments on norm-keytable (more later)
                made abort clear tib. all input should be lost on abort
                moved ?missing in from compile.1 
                factored number better
                changed word slightly so fload doesnt try refill from keyboard :P

  compil.1      added/changed some comments
                moved ?missing out to io.1
                added immediate
                made ; set bit 7 of new words count byte (for >name)

  Makefile      removed $(platform) from the makefile in asmsrc, it was no longer 
                being used.  platform is specified on the command line.

20 Feb 2002

  README        Added a little to the legal bullshit section

  compile.1     changed word to skip leading delimiters (doh!)

26 Feb 2002

  isforth.asm   moved things arround alot to get rid of evil forward refs
                fixed defers (will move later maybe)
                removed fixargs - now in .f file to be floaded
                modified init to not reference removed fixargs
                    fixargs defers default now
              
  stack.1       some minor optimizing - nothing real :)
                fixed ?stacks for new stack locaion

  math.1        renamed neg to negate like it should be tcn!

  macros.1      added option to align words on any boundry - 1 is default :)

  loops.1       added ?while and ?until headers

  logic.1       added words either and neither

  linux.1       added sys_poll for key? to use
                modified fread for use by fload

  bleh.f        deleted - no longer needed for testing

  io.1          more indicision about where things should go :)
                added word pollfd to create a pollfd structure
                    is currently commented out tho - exampe only
                added pollfd structure (?kfd) for key?
                added key? to use above :)
                modified .ok for not displaying .ok during fload
                added word (key) but its unused. example only
                    in linux it would be totally evil to hog the cpu 
                    in a tight loop begin key? until. dont use this
                removed code in escape key handling due to it being a 
                totally bugged up example of zimmer code (hehe)
                    or is it laxen and perry's ??
                removed definition for \ 
                    now in a .f file to be floaded
                added parse-word - word needs to skip leading blanks
                    factored it out of word
                added defered word refill called when tib becomes empty 
                removed pictured number stuff. now in .f file 
                moved decimal, hex etc to .f file with <# # #> etc
                made number input accept negative numbers
                
  exec.1        added word goto (no - its NOT evil!)
                removed code to interpret tail. now in .f file

  compile.1
                removed >mark >resolve etc. now in .f file
                removed loop compilation words, now in .f file

  README        small addition/changes                                

  Makefile      changed target from isforth to kernel.com :)
                    extend will fsave isforth

27 Feb 2002

  various       tidied some things up in various files

  compile.1     stripped out variable and constant creation/modification
                words and moved them to new .f file

  isforth.f     added fload of variable.f 

  io.1          removed loadstack buffer - allocated at boot 

  isforth.asm   added allocation of loadstack for nested floads

28 Feb 2002

  various       some more minor changes here and there

  io.1          added fsave and turnkey (we are real now almost :)

Release version 1.00 beta

01 Mar 2002

  various       added/changed comments all over the place

  isforth.asm   moved constants 0 1 2 3 4 5 to .f file and removed all evil
                forward references to them in the assembler sources

  variable.f    added constants 0 1 2 3 4 5 :)

04 Mar 2002     

                Added 2 new .f files - time.f utils.f

  isforth.f     Added function do display active time on exit
                Moved defers out to compile.1

  math.1        Added u>> u<< >> << words

  compile.1     Changed all db '"' to db 022h because nasm is fucked in the
                head and assembles 016h for them grrr
                Moved defers in from isforth.asm
                Added definition for alias (evil word if over used)

   comment.f    Made #! an alias for \ instead of a reference to it
            
   variable.f   Made var an alias for constant instead of a reference to it

   linux.1      Removed <fread> added <read>
                Addded <gettimeofday> for display of elapsed time
                Added <socket> and <connect>

   io.1         added fread to use <read> and changed fload to use fread instead
                of removed <fread>

04 mar 2002     later in the day...

  hello.f       Moved all time related words to time.h

  linux.1       Added a new errno variable
                Removed ALL syscall words - see below :)
                Added table listing number of parameters used by each syscall
                    most entries are blank (unused syscalls) but can be
                    filled in later using new syscall creating word which
                    creates a new syscall class of word
                Added functions to handle syscalls using different number of
                parameters.
                Added do_syscall - run time for all syscall class words
                Added new versions of each syscall required by the kernel
                    these conform to the new syscall word class

  isforth.asm   Inserted new : definition versions for initterm and termreset
                that make use of the new sys_ioctl syscall handler
                Moved init so default wouldnt forward reference it (evil)

  io.1          Renamed fp to fd to be more linuxy - its a file descriptor duh!
                Modified key and emit to make use of new syscall class words
                Made key useable by fload so i could get rid of fread
                Got rid of fread :)

  compile.1     Added word 'syscall' to create handlers for ANY syscall not
                already catered to by the kernel.

  time.f        Moved some words in from hello.f
                Made all words conform to new syscall mechanism

18 Mar 2002     added new files status.f term.f see.f env.f

 number.f       Reworked code to use double number precision

 hello.f        Modified use of # to account for changes in number.f
                Now uses words from new file term.f (cuses without the cursing)

 dump.f         Modified use of # to account for changes in number.f
                            
 memory.1       added cmove>
                moved skip and scan in from io.1

 math.1         added d+ d- dnegate dabs s>d d= d<> d0< d< d>
                modified multiply and divide words - i think they work now :P

 macros.1       removed option for jmp next. its slower and produces larger 
                    executables so why even have it as an option?

                changed header macro to store a pointer just ahead of the cfa
                    (within list space) that points back to the words header
                    this is used by alias

 loops.1        All the words that shared common headers can no longer do so
                    because of the link back to nfa at cfa-4

 isforth.asm    Added a buffer for new file term.h to load terminfo files into

 linux.1        changed all isforth syscall words to have a byte body not dword

 io.1           moved skip and scan to memory.1

 exec.1         added some constant pointers to some headerless words to be used
                by see (work in progress - not releaseable yet :) and the
                eventual debugger

 Makefile       no longer produces listing and strips debug off kernel.com at link

 utils.f        added .id to display any words nfa given its cfa
                added ?default to list all words chained into default

 time.f         modified use of # for double number precision

May 01 2002

 isforth.f      Added include for new file case.f
                Added include for new file rnd.f
                
 hello.f        Fixed .version to save base, use decimal, restore base
                Messed with hello display format a little :)

 variable.f     creating words now do a reveal due to addition of vocabularies
                changed 0,1,2,3,4 and 5 from constants to consts

 args.f         removed ?#!
                modified fixargs to account for shebang case
                modified how shebanged scripts are handled
                    no status or hello, quiet bye when completed

 words.f        reinstated this file - now accounts for vocabulary context

 macros.1       modified to chain words on one current vocabulary

 loops.1        removed references to standard case constructs
                added docase = runtime for stuff compiled in case.f

 linux.1        removed sysnum table
                modified code to fetch #parameters from body of syscall
                   word instead

 isforth.asm    moved header relocatin to new file reloc.1

 io.1           started to implement key unget buffer (for mouse words etc)
                moved fsave words out to fsave.f
                moved fload words out to compile.1

 freebsd.1      modified for new syscall mechanism. not tested.

 exec.1:        moved quit, abort", interpret and related words out to compile.1

 compile.1      modified find for use with vocabularies
                modified creating words to link to current vocan
                modified ; to reveal latest definition
                moved quit, abort", interpret and related words in from io.1

 utils.f        moved dump utility into here

 time.f         fixed a few bugs, refactored a few words
                added ms to go with the already added seconds :)

 status.f       moved this, changed that, tweaked this other thing here

 term.f         all words now compiled into new term vocabulary
                made sequence a parsing word and optimised some the
                    escape sequences
                added some more sequencees etc

20 may 2002

 isforth.f      added word rehash to top of file
                added fload of new file timer.f which is stuff i took out
                    of time.f
                added fload of new file struct.f

 args.f         made changes to the way isforth handles shebanged script files
                    its almost right now :)

 loops.f        made <resolve an alias for , - save code space :)
                added support for for/nxt - note NOT next!!

 words.f        modified where this outputs cr's to work better with hashed
                    vocabularies

 memory.1       re-added w@ and w! which were removed by tcn a while ago
                    ppl were askin for em :)
                added new words <head and <list which move the top of head
                or list space down by a specified ammount, thus allocating
                memort for your use (allot upper memory)

 math.1         commented out u32/ 32/ u16/ u8/ as these can be done using
                    << u<< >> u>>

 loops.1        added new word (nxt) for for/nxt loops

 io.1           renamed char (used by expect) to norm-char so as to not
                    confuse peopel.   char x etc is not definrd in isforth

 freebsd.1      made an abortive attempt to get this to work, there is
                    more to fix than just this file however.  this file
                    is still b0rked.

 exec.1         added new word ?: as a better method of doing if/else/then

 compile.1      made find and head" account for rehashed vocabularies
                added word to hash word names
                added evil word recurse. dont use it, it will rot your brain

 time.f         stripped out interval timing words etc to new file timer.f
                    this file is now date and time only

 term.f         made ed and el aliases for (ed) and (el) respectivly

 case.f         added handling of default case in case: constructs

 color.f        converted color constants to consts
                converted some words to use the new snazzy ?: word

 vocabs.1       added .vocs to display all vocabulary names.
                expanded all vocabularies to 64 threads
                added words to rehash the dictionary. one time use only

 reloc.1        modified for 64 threads
 
Jun 02 2002

 added 2 new extend files.  header.f allows creation of headerless files
 and forget.f allows you to forget definitions.

 all files      thinned out vocabulary by making a whole bunch of words
                    headerless

 comment.f      modified a couple of the commenting words to account for the
                    new fload method (see below)

 memory.1       added new version of scan that will delimit on an eol or the
                    selected delimiter (for new fload method)

                removed the definition for <list, this is not needed and can
                    cause problems

 math.1         removed definitions for u32/ u16/ u8/ as these can be done
                    using u<< and u>>

 macros.1       changed references to the .head section to refer to .data


 linux.1        added 3 new syscalls for the kernel.  <lseek> <mmap> <munmap>

 compile.1      made dp and hp non headerless for forget etc (dont touch)

                reinstated w, (was removed by tcn way back in order to
                    thin out a fattening dictionary but is now needed)

                added 2 new words to push and pop items off the fload nest 
                    stack

                modified fload and endfload to memory map and un-memory map
                    source files.  fload now points tib at the memory map
                    and sets #tib equal to the file size.  the whole file
                    is now interpreted inside a very tight loop!!!

                removed definition for (fload) - floads are now interpreted
                    by the same inner interpreter as is used interactivly

                added word to determin the file size of a file (for fload)

 term.f         fixed cursor control sequences to account for terminal sizes 
                larger than 99 characters in either axis (status bar is now
                    always the correct size duh!)

                modified at to store the new cursor position in #out/#line


Jun 06 2002

 hello.f        modified .version to construct version string in pad
                    before display

 io.1           fixed key to read from stdin instead of stdout
                fixed emit to write to stdout instead of stdin

 compile.1      fixed order of parameters to sys_munmap which was causing
                    some very bad gpf's on compile :P

                recoded (find) in assembler to make it more readable, it was 
                    a little obfuscated before

 header.f       made behead erase the nfa pointers at each beheaded words 
                    cfa -4 so that see/debug will know they are noname words
                    now i gotta write see and the debugger (dammit :)
august 30 2002

 isforth.f      added optional fload of new text windowing extension
                    defaults to being included

 extend         new script file so you can just to ./extend after building 
                    a new kernel

 memory.1       added new variable ?caps to add case insensative option to
                    find and comp (defaults to case sensative)
                renamed comp to (comp) and added case insensavtive (ncomp)
                created new word comp to call one of the above
                note: above is not tested

 macros.1       added _noname_ macro to simulate generation of headerless
                    words (compiles a dd 0 just prior to headerless cfa)

 linux.1        injected some _noname_ macros on headerless words
        
 compile.1      added kludgy code to find to add option for case insensative

 pong.f         a cute game written by someone in my #forth channel :)

 window.f       new text windowing system files added
 screen.f       "                "                  "       
 tui.f          "                "                  "
 menu.f         work in progress
