COLON
$0D EMIT
ABORT" FastForth V3.9 please!"
- [UNDEFINED] WRITE
+ [UNDEFINED] WRITE
[IF]
1 ABORT" no SD_CARD_READ_WRITE addon!"
[THEN]
MARKER {SD_TEST}
- [UNDEFINED] EXIT
+ [UNDEFINED] EXIT
[IF]
CODE EXIT
MOV @R1+,R13
ENDCODE
[THEN]
- [UNDEFINED] SWAP
+ [UNDEFINED] SWAP
[IF]
CODE SWAP
MOV @R15,R10
ENDCODE
[THEN]
- [UNDEFINED] >BODY
+ [UNDEFINED] >BODY
[IF]
CODE >BODY
ADD #4,R14
ENDCODE
[THEN]
- [UNDEFINED] 0=
+ [UNDEFINED] 0=
[IF]
CODE 0=
SUB #1,R14
ENDCODE
[THEN]
- [UNDEFINED] IF
+ [UNDEFINED] IF
[IF]
CODE IF
SUB #2,R15
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] ELSE
+ [UNDEFINED] ELSE
[IF]
CODE ELSE
ADD #4,&$1DC8
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] BEGIN
+ [UNDEFINED] BEGIN
[IF]
CODE BEGIN
MOV #$4032,R0
MOV @R13+,R0
ENDCODE
- CODE DO
+ CODE DO
SUB #2,R15
MOV R14,0(R15)
ADD #2,&$1DC8
ENDCODE IMMEDIATE
[THEN]
- [UNDEFINED] I
+ [UNDEFINED] I
[IF]
CODE I
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] +
+ [UNDEFINED] +
[IF]
CODE +
ADD @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] -
+ [UNDEFINED] -
[IF]
CODE -
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] MAX
+ [UNDEFINED] MAX
[IF]
CODE MAX
CMP @R15,R14
ENDCODE
[THEN]
- [UNDEFINED] C@
+ [UNDEFINED] C@
[IF]
CODE C@
MOV.B @R14,R14
ENDCODE
[THEN]
- [UNDEFINED] SPACE
+ [UNDEFINED] SPACE
[IF]
: SPACE
$20 EMIT ;
[THEN]
- [UNDEFINED] SPACES
+ [UNDEFINED] SPACES
[IF]
CODE SPACES
CMP #0,R14
LO2HI
$20 EMIT
HI2LO
- SUB #2,R13
+ SUB #2,R13
SUB #1,R14
0= UNTIL
MOV @R1+,R13
THEN
MOV @R15+,R14
- MOV @R13+,R0
+ MOV @R13+,R0
ENDCODE
[THEN]
- [UNDEFINED] DUP
+ [UNDEFINED] DUP
[IF]
CODE DUP
BW1 SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] OVER
+ [UNDEFINED] OVER
[IF]
CODE OVER
MOV R14,-2(R15)
ENDCODE
[THEN]
- [UNDEFINED] >R
+ [UNDEFINED] >R
[IF]
CODE >R
PUSH R14
ENDCODE
[THEN]
- [UNDEFINED] R>
+ [UNDEFINED] R>
[IF]
CODE R>
SUB #2,R15
ENDCODE
[THEN]
- [UNDEFINED] CONSTANT
+ [UNDEFINED] CONSTANT
[IF]
- : CONSTANT
+ : CONSTANT
CREATE
HI2LO
MOV R14,-2(R10)
ENDCODE
[THEN]
- [UNDEFINED] STATE
+ [UNDEFINED] STATE
[IF]
$1DBC CONSTANT STATE
[THEN]
- [UNDEFINED] CR
+ [UNDEFINED] CR
[IF]
-
+
CODE CR
MOV #$40B4,R0
ENDCODE
-
+
:NONAME
$0D EMIT $0A EMIT
; IS CR
[THEN]
- [UNDEFINED] U.R
+ [UNDEFINED] U.R
[IF]
: U.R
- >R <# 0 # #S #>
+ >R <# 0 # #S #>
R> OVER - 0 MAX SPACES TYPE
;
[THEN]
- [UNDEFINED] BASE
+ [UNDEFINED] BASE
[IF]
$1DBE CONSTANT BASE
[THEN]
- [UNDEFINED] DUMP
+ [UNDEFINED] DUMP
[IF]
CODE DUMP
PUSH R13
DO I C@ 3 U.R LOOP
SPACE
I $10 + I 8 +
- DO I C@ 3 U.R LOOP
+ DO I C@ 3 U.R LOOP
SPACE SPACE
I $10 + I
DO I C@ $7E MIN $20 MAX EMIT LOOP
;
[THEN]
- [UNDEFINED] HERE
+ [UNDEFINED] HERE
[IF]
CODE HERE
MOV #BEGIN,R0
[THEN]
- [UNDEFINED] DROP
+ [UNDEFINED] DROP
[IF]
CODE DROP
MOV @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] 1+
+ [UNDEFINED] 1+
[IF]
CODE 1+
ADD #1,R14
ENDCODE
[THEN]
- [UNDEFINED] =
+ [UNDEFINED] =
[IF]
CODE =
SUB @R15+,R14
ENDCODE
[THEN]
- [UNDEFINED] CASE
+ [UNDEFINED] CASE
[IF]
: CASE
- 0
+ 0
; IMMEDIATE
: OF
1+
>R
- POSTPONE OVER
+ POSTPONE OVER
POSTPONE =
POSTPONE IF
POSTPONE DROP
R>
- ; IMMEDIATE
+ ; IMMEDIATE
: ENDOF
>R
- POSTPONE ELSE
+ POSTPONE ELSE
R>
- ; IMMEDIATE
+ ; IMMEDIATE
: ENDCASE
POSTPONE DROP
- 0 DO
- POSTPONE THEN
- LOOP
- ; IMMEDIATE
+ 0 DO
+ POSTPONE THEN
+ LOOP
+ ; IMMEDIATE
[THEN]
CODE SD_EMIT
$0D EMIT
CR
." ----------" CR
- ." Bootloader" CR
+ ." SD_TESTS " CR
." ----------" CR
." ? Fast Forth Specifs" CR
." 0 Set date and time" CR
." 8 append FORTH dump to YOURFILE.TXT" CR
." 9 delete YOURFILE.TXT" CR
." your choice: "
- KEY DUP EMIT
+ KEY DUP EMIT CR
NOECHO
{SD_TEST}
CASE
'1' OF LOAD" UTILITY.4TH" ENDOF
'2' OF LOAD" SD_TOOLS.4TH" ENDOF
'3' OF LOAD" CORE_ANS.4TH" ENDOF
- '4' OF LOAD" CORETEST.4TH" ENDOF
+ '4' OF LOAD" CORETEST.4TH" ENDOF
'5' OF LOAD" PROG10K.4TH" ENDOF
'6' OF READ" PROG10K.4TH"
BEGIN READ