OSDN Git Service

Ver 301
[fast-forth/master.git] / MSP430-FORTH / MSP_EXP430FR5994 / RTC.4TH
index ec442ef..0d9145b 100644 (file)
@@ -27,6 +27,50 @@ ENDCODE
 
 [THEN]
 
+[UNDEFINED] CONSTANT [IF]
+: CONSTANT 
+DEFER
+HI2LO
+MOV @R1+,R13
+MOV #$1285,-4(R10)
+MOV R14,-2(R10)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] BL [IF]
+#32 CONSTANT BL
+[THEN]
+
+[UNDEFINED] SPACES [IF]
+CODE SPACES
+CMP #0,R14
+0<> IF
+    PUSH R13
+    BEGIN
+        LO2HI
+        BL EMIT
+        HI2LO
+        SUB #2,R13 
+        SUB #1,R14
+    0= UNTIL
+    MOV @R1+,R13
+THEN
+MOV @R15+,R14
+MOV @R13+,R0              
+ENDCODE
+[THEN]
+
+[UNDEFINED] OVER [IF]
+CODE OVER
+MOV R14,-2(R15)
+MOV @R15,R14
+SUB #2,R15
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] U.R [IF]
 : U.R
   >R  <# 0 # #S #>  
@@ -50,7 +94,7 @@ COLON
 ;
 
 : DATE!
-DEPTH 2 > IF
+2 DEPTH U< IF
     HI2LO
     MOV     R14,&$4B6
     MOV.B   @R15,&$4B5
@@ -79,7 +123,7 @@ COLON
 ;
 
 : TIME!
-DEPTH 2 > IF
+2 DEPTH U< IF
     HI2LO
     MOV     R14,&$4B0
     MOV.B   @R15,&$4B1
@@ -97,8 +141,8 @@ RST_HERE
 
 : ESC #27 EMIT ;
 
-: [DEFERRED]
-    ' @ $4030 =
+: [ISDEFERRED?]
+    DUP @ $4030 =
 ; IMMEDIATE
 
 CREATE ABUF 20 ALLOT
@@ -112,18 +156,16 @@ ESC ." [1J"
 ESC ." [H"
 
 CR ." DATE (DMY): "
-ABUF ABUF 20 
-     [DEFERRED] ACCEPT 
-     [IF] ['] ACCEPT >BODY EXECUTE
-     [ELSE] ACCEPT
-     [THEN]
+ABUF DUP 20 
+    ['] ACCEPT [ISDEFERRED?] 
+    [IF] >BODY
+    [THEN] EXECUTE
 EVALUATE CR DATE!
 CR CR ." TIME (HMS): "
-ABUF ABUF 20 
-     [DEFERRED] ACCEPT 
-     [IF] ['] ACCEPT >BODY EXECUTE
-     [ELSE] ACCEPT
-     [THEN]
+ABUF DUP 20 
+    ['] ACCEPT [ISDEFERRED?] 
+    [IF] >BODY
+    [THEN] EXECUTE
 EVALUATE CR TIME!
 CR
 ;