File:  [gforth] / gforth / Attic / main.fs
Revision 1.19: download - view: text, annotated - select for diffs
Tue Nov 7 18:06:52 1995 UTC (28 years, 5 months ago) by anton
Branches: MAIN
CVS tags: HEAD
added copyright headers
changes to loadfilename & co. to make savesystem transparent to
 assertions and ~~

    1: \ MAIN.FS      Kernal main load file                   20may93jaw
    2: 
    3: \ Copyright (C) 1995 Free Software Foundation, Inc.
    4: 
    5: \ This file is part of Gforth.
    6: 
    7: \ Gforth is free software; you can redistribute it and/or
    8: \ modify it under the terms of the GNU General Public License
    9: \ as published by the Free Software Foundation; either version 2
   10: \ of the License, or (at your option) any later version.
   11: 
   12: \ This program is distributed in the hope that it will be useful,
   13: \ but WITHOUT ANY WARRANTY; without even the implied warranty of
   14: \ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   15: \ GNU General Public License for more details.
   16: 
   17: \ You should have received a copy of the GNU General Public License
   18: \ along with this program; if not, write to the Free Software
   19: \ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
   20: 
   21: \ : include bl word count included ;
   22: \ we want write include...
   23: 
   24: \ : : ( -- colon-sys )  Header [ ' : @ ] ALiteral cfa, 0 ] ;
   25: \ : ; ( colon-sys -- )  ?struc postpone exit reveal postpone [ ; immediate
   26: \ : :noname ( -- xt colon-sys )  here [ ' : @ ] ALiteral cfa, 0 ] ;
   27: 
   28: [IFUNDEF] vocabulary include search-order.fs [THEN]
   29: \ include etags.fs
   30: 
   31: include cross.fs               \ include cross-compiler
   32: 
   33: decimal
   34: 
   35: cell 2 = [IF] 32 [ELSE] 256 [THEN] KB
   36: makekernal , 0 , 0 , 0 A, 0 A, 0 A,
   37: 
   38: UNLOCK ghost - drop \ ghost must exist because - would be treated as number
   39: LOCK
   40: 
   41: 0 AConstant forthstart
   42: 
   43: include aliases.fs             \ include primitive aliases
   44: \ include cond.fs                \ conditional compile
   45: \ include patches.fs             \ include primitive patches
   46: 
   47: include vars.fs                \ variables and other stuff
   48: include add.fs                 \ additional things
   49: include errore.fs
   50: include kernal.fs              \ load kernal
   51: include version.fs
   52: include extend.fs              \ load core-extended
   53: include tools.fs               \ load tools ( .s dump )
   54: \ include words.fs
   55: \ include wordinfo.fs
   56: \ include see.fs                 \ load see
   57: include toolsext.fs
   58: \ include search-order.fs
   59: 
   60: \ Setup                                                13feb93py
   61: 
   62: here normal-dp !
   63: tudp H @ minimal udp !
   64: decimal
   65: 
   66: \ 64 KB        0 cells !  \ total Space... defined above!
   67:   here         1 cells !  \ Size of the system
   68:   16 KB        2 cells !  \ Return and fp stack size
   69:   ' boot >body 3 cells !  \ Entry point
   70: 
   71: UNLOCK Tlast @
   72: LOCK
   73: 1 cells - dup forth-wordlist ! Last !
   74: .unresolved
   75: 
   76: cr cr
   77: cell bigendian
   78: [IF]
   79:    dup 2 = [IF]   save-cross kernl16b.fi+  [THEN]
   80:    dup 4 = [IF]   save-cross kernl32b.fi+  [THEN]
   81:    dup 8 = [IF]   save-cross kernl64b.fi+  [THEN]
   82: [ELSE]
   83:    dup 2 = [IF]   save-cross kernl16l.fi+  [THEN]
   84:    dup 4 = [IF]   save-cross kernl32l.fi+  [THEN]
   85:    dup 8 = [IF]   save-cross kernl64l.fi+  [THEN]
   86: [THEN] drop cr
   87: 
   88: bye

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>