Fix minor problems in boot.f, temporarily back out changes to eturtle.exe build
authorNick Downing <nick@ndcode.org>
Thu, 27 Jun 2019 11:40:41 +0000 (21:40 +1000)
committerNick Downing <nick@ndcode.org>
Thu, 27 Jun 2019 11:40:41 +0000 (21:40 +1000)
asm8086.f
boot.f
coreext.f
hf86exe.asm
msdos.f
multi.f
optional.f

index a178c36..c036b06 100644 (file)
--- a/asm8086.f
+++ b/asm8086.f
@@ -769,9 +769,8 @@ CHAR " PARSE ROM Model" COMPARE 0=
 [IF] RAM/ROM! [THEN]\r
 BASE !\r
 \r
-\ Nick\r
-\CHAR " PARSE FILE" ENVIRONMENT?\r
-\[IF]\r
-\  0= [IF] << CON [THEN]\r
-\[ELSE] << CON\r
-\[THEN]\r
+CHAR " PARSE FILE" ENVIRONMENT?\r
+[IF]\r
+  0= [IF] << CON [THEN]\r
+[ELSE] << CON\r
+[THEN]\r
diff --git a/boot.f b/boot.f
index c9f5c41..07b0b0d 100644 (file)
--- a/boot.f
+++ b/boot.f
@@ -5,6 +5,7 @@
 \r
 1 CONSTANT char-size\r
 2 CONSTANT cell-size\r
+cell-size 8 * CONSTANT cell-size-in-bits\r
 \r
 16 BASE !\r
   0FF CONSTANT max-char\r
@@ -2674,6 +2675,7 @@ DECIMAL
 \r
 : IF           POSTPONE 0branch xhere 0 code,\r
                1 bal+ ;                \ orig type is 1\r
+               COMPILE-ONLY IMMEDIATE\r
 \r
 \              $COLON  NameIFF,IFF\r
 \              DW      DoLIT,ZBranch,COMPILEComma,XHere,DoLIT,0,CodeComma\r
@@ -3062,7 +3064,7 @@ DECIMAL
                   NEGATE cell-size-in-bits 0\r
                   DO   >R DUP um+ >R >R DUP um+ R> + DUP\r
                        R> R@ SWAP >R um+ R> OR\r
-                       IF >R DROP 1+ R> THEN\r
+                       IF >R DROP 1+ R>\r
                        ELSE DROP THEN\r
                        R>\r
                   LOOP DROP SWAP EXIT\r
@@ -3308,7 +3310,7 @@ DECIMAL
 \              control stack.\r
 \r
 : BEGIN                xhere 0 bal+            \ dest type is 0\r
-               ; COMPILE-ONLY IMMDEDIATE\r
+               ; COMPILE-ONLY IMMEDIATE\r
 \r
 \              $COLON  NameBEGIN,BEGIN\r
 \              DW      XHere,DoLIT,0,BalPlus,EXIT\r
@@ -3343,7 +3345,8 @@ DECIMAL
 \              on control-flow stack, which will be resolved by LOOP or +LOOP.\r
 \r
 : DO           0 rakeVar !  0                  \ ?DO-orig is 0 for DO\r
-\              POSTPONE doDO xhere  bal+       \ DO-dest\r
+               POSTPONE doDO xhere  bal+ ;     \ DO-dest\r
+               COMPILE-ONLY IMMEDIATE\r
 \r
 \              $COLON  NameDO,DO\r
 \              DW      DoLIT,0,RakeVar,Store,DoLIT,0\r
@@ -3370,7 +3373,7 @@ DECIMAL
 \              Put the location of new unresolved forward reference orig2\r
 \              onto control-flow stack.\r
 \r
-: ELSE         POSTPONE AHEAD 2SWAP POSTPONE THEN ; COMPILE-ONLY IMMDEDIATE\r
+: ELSE         POSTPONE AHEAD 2SWAP POSTPONE THEN ; COMPILE-ONLY IMMEDIATE\r
 \r
 \              $COLON  NameELSEE,ELSEE\r
 \              DW      AHEAD,TwoSWAP,THENN,EXIT\r
@@ -3649,7 +3652,7 @@ DECIMAL
 \              Terminate a BEGIN-WHILE-REPEAT indefinite loop. Resolve\r
 \              backward reference dest and forward reference orig.\r
 \r
-: REPEAT       AGAIN THEN ; COMPILE-ONLY IMMEDIATE\r
+: REPEAT       POSTPONE AGAIN POSTPONE THEN ; COMPILE-ONLY IMMEDIATE\r
 \r
 \              $COLON  NameREPEAT,REPEATT\r
 \              DW      AGAIN,THENN,EXIT\r
@@ -3785,7 +3788,7 @@ DECIMAL
 \   SPACES     ( n -- )                        \ CORE\r
 \              Send n spaces to the output device if n is greater than zero.\r
 \r
-: SPACES       DUP 0 > IF 0 DO SPACE LOOP EXIT THEN  DROP;\r
+: SPACES       DUP 0 > IF 0 DO SPACE LOOP EXIT THEN DROP ;\r
 \r
 \                $COLON  6,'SPACES',SPACES,_FLINK\r
 \                DW      DUPP,Zero,GreaterThan,ZBranch,SPACES1\r
index afbc3e8..716047d 100644 (file)
--- a/coreext.f
+++ b/coreext.f
@@ -381,9 +381,8 @@ CHAR " PARSE ROM Model" COMPARE 0=
 [IF] RAM/ROM! [THEN]\r
 BASE !\r
 \r
-\ Nick\r
-\CHAR " PARSE FILE" ENVIRONMENT?\r
-\[IF]\r
-\  0= [IF] << CON [THEN]\r
-\[ELSE] << CON\r
-\[THEN]\r
+CHAR " PARSE FILE" ENVIRONMENT?\r
+[IF]\r
+  0= [IF] << CON [THEN]\r
+[ELSE] << CON\r
+[THEN]\r
index 5e1eb83..fa6d0bc 100644 (file)
@@ -1031,10 +1031,8 @@ RXFET1:  $NEXT
 ;   : set-i/o  S" CON" stdin ;                 \ MS-DOS only\r
 \r
                $COLON  NameSet_IO,Set_IO\r
-; Nick removed this, want to use ordinary DOS redirection instead\r
                DW      DoLIT,Set_IOstr         ;MS-DOS only\r
                DW      COUNT,STDIN             ;MS-DOS only\r
-; to here... now back in again\r
                DW      EXIT\r
 \r
 ;;;;;;;;;;;;;;;;\r
diff --git a/msdos.f b/msdos.f
index a37ebd2..7b76d42 100644 (file)
--- a/msdos.f
+++ b/msdos.f
@@ -963,5 +963,4 @@ BASE !
 \r
 QUIT\r
 \r
-\ Nick\r
-\<< CON\r
+<< CON\r
diff --git a/multi.f b/multi.f
index 20f78ba..54be3bc 100644 (file)
--- a/multi.f
+++ b/multi.f
@@ -266,9 +266,8 @@ CHAR " PARSE EXE Model" COMPARE 0=
 SET-CURRENT\r
 BASE !\r
 \r
-\ Nick\r
-\CHAR " PARSE FILE" ENVIRONMENT?\r
-\[IF]\r
-\  0= [IF] << CON [THEN]\r
-\[ELSE] << CON\r
-\[THEN]\r
+CHAR " PARSE FILE" ENVIRONMENT?\r
+[IF]\r
+  0= [IF] << CON [THEN]\r
+[ELSE] << CON\r
+[THEN]\r
index d8d2797..fe00a10 100644 (file)
@@ -767,9 +767,8 @@ FORTH-WORDLIST SET-CURRENT
 \r
 BASE !\r
 \r
-\ Nick\r
-\CHAR " PARSE FILE" ENVIRONMENT?\r
-\[IF]\r
-\  0= [IF] << CON [THEN]\r
-\[ELSE] << CON\r
-\[THEN]\r
+CHAR " PARSE FILE" ENVIRONMENT?\r
+[IF]\r
+  0= [IF] << CON [THEN]\r
+[ELSE] << CON\r
+[THEN]\r