--- gforth/cross.fs 1996/04/17 16:39:39 1.34 +++ gforth/cross.fs 1996/07/16 20:57:07 1.37 @@ -357,11 +357,11 @@ variable ResolveFlag VARIABLE ^imm >TARGET -: immediate 20 flag! +: immediate 40 flag! ^imm @ @ dup = IF drop EXIT THEN <> ABORT" CROSS: Cannot immediate a unresolved word" ^imm @ ! ; -: restrict 40 flag! ; +: restrict 20 flag! ; >CROSS \ ALIAS2 ansforth conform alias 9may93jaw @@ -569,6 +569,9 @@ Cond: [Char] ( "" -- ) restrict (THeader ;Resolve ! there ;Resolve cell+ ! docol, depth T ] H ; +: :noname ( -- colon-sys ) + T align H there docol, depth T ] H ; + Cond: EXIT ( -- ) restrict? compile ;S ;Cond Cond: ?EXIT ( -- ) 1 abort" CROSS: using ?exit" ;Cond @@ -703,6 +706,10 @@ DO: ( ghost -- ) ABORT" CROSS: Don't exe Builder Defer by Defer :dodefer resolve +Build: ( inter comp -- ) swap T immediate A, A, H ; +DO: ( ghost -- ) ABORT" CROSS: Don't execute" ;DO +Builder special: + \ Sturctures 23feb95py >CROSS @@ -879,7 +886,7 @@ bigendian Constant bigendian Create magic s" Gforth10" here over allot swap move -[char] 1 bigendian + cell + magic 7 + c! +char 1 bigendian + cell + magic 7 + c! : save-cross ( "image-name" "binary-name" -- ) bl parse ." Saving to " 2dup type cr