[gforth] / gforth / Attic / main.fs  

gforth: gforth/Attic/main.fs

Diff for /gforth/Attic/main.fs between version 1.12 and 1.31

version 1.12, Fri Sep 9 16:27:21 1994 UTC version 1.31, Thu Mar 13 23:40:33 1997 UTC
Line 1 
Line 1 
 \ MAIN.FS      Kernal main load file                   20may93jaw  \ MAIN.FS      Kernal main load file                   20may93jaw
   
   \ Copyright (C) 1995 Free Software Foundation, Inc.
   
   \ This file is part of Gforth.
   
   \ Gforth is free software; you can redistribute it and/or
   \ modify it under the terms of the GNU General Public License
   \ as published by the Free Software Foundation; either version 2
   \ of the License, or (at your option) any later version.
   
   \ This program is distributed in the hope that it will be useful,
   \ but WITHOUT ANY WARRANTY; without even the implied warranty of
   \ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   \ GNU General Public License for more details.
   
   \ You should have received a copy of the GNU General Public License
   \ along with this program; if not, write to the Free Software
   \ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
   
 \ : include bl word count included ;  \ : include bl word count included ;
 \ we want write include...  \ we want write include...
   
Line 7 
Line 25 
 \ : ; ( colon-sys -- )  ?struc postpone exit reveal postpone [ ; immediate  \ : ; ( colon-sys -- )  ?struc postpone exit reveal postpone [ ; immediate
 \ : :noname ( -- xt colon-sys )  here [ ' : @ ] ALiteral cfa, 0 ] ;  \ : :noname ( -- xt colon-sys )  here [ ' : @ ] ALiteral cfa, 0 ] ;
   
 [IFUNDEF] vocabulary include search-order.fs [THEN]  Create mach-file here over 1+ allot place
   
   include errors.fs
   include extend.fs
   include search-order.fs
   
   \ include etags.fs
   
 include cross.fs               \ include cross-compiler  include cross.fs               \ include cross-compiler
   
 decimal  decimal
   
 256 KB makekernal , 0 , 0 , 0 A, 0 A,  cell 2 = [IF] 32 [ELSE] 256 [THEN] KB makekernel ( size )
   \ create image-header
   has-header [IF]
   0 A,    \ base address
   0 ,     \ checksum
   0 ,     \ image size (without tags)
   ,       \ dict size
   16 KB , \ data stack size
   15 KB 512 + ,   \ FP stack size
   15 KB , \ return stack size
   14 KB 512 + ,   \ locals stack size
   0 A,    \ code entry point
   0 A,    \ throw entry point
   16 KB , \ unused (possibly tib stack size)
   0 ,     \ unused
   0 ,     \ data stack base
   0 ,     \ fp stack base
   0 ,     \ return stack base
   0 ,     \ locals stack base
   [THEN]
   
 UNLOCK ghost - drop \ ghost must exist because - would be treated as number  UNLOCK ghost - drop \ ghost must exist because - would be treated as number
 LOCK  LOCK
   
 0 AConstant forthstart  doc-off
   has-prims [IF]
 include aliases.fs             \ include primitive aliases  include aliases.fs             \ include primitive aliases
 \ include cond.fs                \ conditional compile  [ELSE]
 \ include patches.fs             \ include primitive patches      prims-include
       undef-words
       include primitives.fs
       all-words  UNLOCK LOCK
   [THEN]
   doc-on
   
   0 AConstant forthstart
   
 include vars.fs                \ variables and other stuff  include vars.fs                \ variables and other stuff
 include add.fs                 \ additional things  
 include errore.fs  include errore.fs
 include kernal.fs              \ load kernal  include version.fs
 include extend.fs              \ load core-extended  include kernel.fs              \ load kernel
   has-files [IF]
   include args.fs
   include files.fs               \ load file words
   [THEN]
   has-locals [IF]
   include conditionals.fs        \ load IF and co
   [ELSE]
   include cond-old.fs            \ load IF and co w/o locals
   [THEN]
 include tools.fs               \ load tools ( .s dump )  include tools.fs               \ load tools ( .s dump )
 \ include words.fs  
 \ include wordinfo.fs  
 \ include see.fs                 \ load see  
 include toolsext.fs  include toolsext.fs
 \ include search-order.fs  include special.fs             \ special must be last!
   
 \ Setup                                                13feb93py  \ Setup                                                13feb93py
   
Line 42 
Line 97 
 tudp H @ minimal udp !  tudp H @ minimal udp !
 decimal  decimal
   
 \ 64 KB       0 cells !  \ total Space... defined above!  has-header [IF]
 here         1 cells !  \ Size of the system    here         2 cells !  \ image size
   16 KB       2 cells !  \ Return and fp stack size    ' boot >body 8 cells !  \ Entry point
   ' boot >body 3 cells !  \ Entry point  [ELSE]
     >boot
   [THEN]
   
 UNLOCK Tlast @  UNLOCK Tlast @
 LOCK  LOCK
 1 cells - dup forth-wordlist ! Last !  1 cells - dup forth-wordlist ! Last !
 .unresolved  .unresolved
   
 cr cr  
 bigendian [IF]  
    save-cross kernl32b.fi  
 [ELSE]  
    save-cross kernl32l.fi  
 [THEN] cr  
   
 bye  


Generate output suitable for use with a patch program
Legend:
Removed from v.1.12  
changed lines
  Added in v.1.31

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help