version 1.17, 2007/03/18 22:35:52
|
version 1.21, 2007/12/31 17:34:58
|
Line 1
|
Line 1
|
\ Convert image to C include file |
\ Convert image to C include file |
|
|
\ Copyright (C) 1998,1999,2002,2003 Free Software Foundation, Inc. |
\ Copyright (C) 1998,1999,2002,2003,2007 Free Software Foundation, Inc. |
|
|
\ This file is part of Gforth. |
\ This file is part of Gforth. |
|
|
Line 49 Variable env-current
|
Line 49 Variable env-current
|
t-env? dup IF drop THEN ; |
t-env? dup IF drop THEN ; |
|
|
' Value Alias DefaultValue |
' Value Alias DefaultValue |
|
' Value Alias SetValue |
|
|
: kb 1024 * ; |
: kb 1024 * ; |
|
|
|
' noop alias T |
|
' noop alias H |
|
|
|
: has? parse-name 2drop true ; |
|
|
include machpc.fs |
include machpc.fs |
ENVIRON> |
ENVIRON> |
|
|
Line 76 s" NULL" groups @ cell+ $!
|
Line 82 s" NULL" groups @ cell+ $!
|
IF |
IF |
11 /string $has? 0= IF r@ scan-ifs THEN |
11 /string $has? 0= IF r@ scan-ifs THEN |
ELSE 2dup s" #else" prefix? |
ELSE 2dup s" #else" prefix? |
IF r@ scan-ifs |
IF 2drop r@ scan-ifs |
ELSE 2dup s" GROUP(" prefix? |
ELSE 2dup s" GROUP(" prefix? |
IF 2drop drop 1+ 0 ELSE |
IF 2drop drop 1+ 0 ELSE |
2dup s" INST_ADDR(" prefix? |
2dup s" INST_ADDR(" prefix? |
Line 106 Variable au
|
Line 112 Variable au
|
THEN |
THEN |
dup 1 8 tcell @ * 1- lshift and negate or ; |
dup 1 8 tcell @ * 1- lshift and negate or ; |
|
|
1 cells 4 = [IF] |
|
: bswap ( n -- n' ) bswap? @ 0= ?EXIT 0 |
|
over 24 rshift $FF and or |
|
over 8 rshift $FF00 and or |
|
over 8 lshift $FF0000 and or |
|
over 24 lshift $FF000000 and or nip ; |
|
[THEN] |
|
|
|
1 cells 8 = [IF] |
|
: bswap ( n -- n' ) bswap? @ 0= ?EXIT 0 |
|
over 56 rshift $FF and or |
|
over 40 rshift $FF00 and or |
|
over 24 rshift $FF0000 and or |
|
over 8 rshift $FF000000 and or |
|
over 8 lshift $FF00000000 and or |
|
over 24 lshift $FF0000000000 and or |
|
over 40 lshift $FF000000000000 and or |
|
over 56 lshift $FF00000000000000 and or |
|
nip ; |
|
[THEN] |
|
|
|
: search-magic ( fd -- ) >r |
: search-magic ( fd -- ) >r |
BEGIN magicbuf 8 r@ read-file throw 8 = WHILE |
BEGIN magicbuf 8 r@ read-file throw 8 = WHILE |
magicbuf s" Gforth3" tuck str= UNTIL |
magicbuf s" Gforth3" tuck str= UNTIL |
Line 214 Variable bitmap-chars
|
Line 199 Variable bitmap-chars
|
|
|
: fi2c ( addr u -- ) base @ >r hex |
: fi2c ( addr u -- ) base @ >r hex |
read-image |
read-image |
." static const void* image[" .imagesize ." ] = {" cr .image ." };" cr |
\ .\" const static __attribute__ ((__section__ (\".rodata\"))) void* image[" .imagesize ." ] = {" cr .image ." };" cr |
|
.\" static void* image[" .imagesize ." ] = {" cr .image ." };" cr |
." #ifdef USE_RELOC" cr |
." #ifdef USE_RELOC" cr |
." const char reloc_bits[" .relocsize ." ] = {" cr .reloc ." };" cr |
." const char reloc_bits[" .relocsize ." ] = {" cr .reloc ." };" cr |
." #endif" cr |
." #endif" cr |