OSDN Git Service

Merge framagit.org:Jean-Mi/FAST-FORTH
[fast-forth/master.git] / MSP430-FORTH / SD_for_FR5994 / SD_TEST.4th
1
2 ; -----------
3 ; SD_TEST.4th
4 ; -----------
5
6 PWR_STATE
7
8 [UNDEFINED] {SD_TEST} [IF]
9
10 MARKER {SD_TEST}
11
12 [UNDEFINED] AND [IF]
13 CODE AND
14 AND @R15+,R14
15 MOV @R13+,R0
16 ENDCODE
17 [THEN]
18
19 [UNDEFINED] MAX [IF]
20     CODE MAX
21         CMP @R15,R14
22         S< ?GOTO FW1
23     BW1 ADD #2,R15
24         MOV @R13+,R0
25     ENDCODE
26
27     CODE MIN
28         CMP @R15,R14
29         S< ?GOTO BW1
30     FW1 MOV @R15+,R14
31         MOV @R13+,R0
32     ENDCODE
33 [THEN]
34
35 [UNDEFINED] U.R [IF]
36 : U.R
37 >R  <# 0 # #S #>  
38 R> OVER - 0 MAX SPACES TYPE
39 ;
40 [THEN]
41
42 [UNDEFINED] DUMP [IF]
43 CODE DUMP
44 PUSH R13
45 PUSH &BASE
46 MOV #$10,&BASE
47 ADD @R15,R14
48 LO2HI
49   SWAP OVER OVER
50   U. U.
51   $FFF0 AND
52   DO  CR
53     I 7 U.R SPACE
54       I $10 + I
55       DO I C@ 3 U.R LOOP  
56       SPACE SPACE
57       I $10 + I
58       DO I C@ $7E MIN BL MAX EMIT LOOP
59   $10 +LOOP
60   R> BASE !
61 ;
62 [THEN]
63
64 : SD_TEST
65 ECHO CR
66 ." 0 Set date and time" CR
67 ." 1 Load {TOOLS} words" CR
68 ." 2 Load {SD_TOOLS} words" CR
69 ." 3 Load {ANS_COMP} words" CR
70 ." 4 Load ANS core tests" CR
71 ." 5 Load a 100k program " CR
72 ." 6 Read only this source file" CR
73 ." 7 Append a dump of FORTH to YOURFILE.TXT" CR
74 ." 8 Delete YOURFILE.TXT" CR
75 ." 9 Load TST_WORDS" CR
76 ." your choice : "
77 KEY
78 48 - ?DUP
79 0= IF
80     ." LOAD RTC.4TH" CR
81     LOAD" RTC.4TH"
82 ELSE 1 - ?DUP
83     0= IF
84         ." LOAD UTILITY.4TH" CR
85         LOAD" UTILITY.4TH"
86     ELSE 1 - ?DUP
87         0= IF
88             ." LOAD SD_TOOLS.4TH" CR
89             LOAD" SD_TOOLS.4TH"
90         ELSE 1 - ?DUP
91             0= IF
92                 ." LOAD ANS_COMP.4TH" CR
93                 LOAD" ANS_COMP.4TH"
94             ELSE 1 - ?DUP
95                 0= IF
96                     ." LOAD CORETEST.4TH" CR
97                     LOAD" CORETEST.4TH"
98                     PWR_STATE
99                 ELSE 1 - ?DUP
100                     0= IF
101                         ." LOAD PROG100K.4TH" CR
102                         NOECHO
103                         LOAD" PROG100K.4TH"
104                     ELSE 1 - ?DUP
105                         0= IF
106                             ." READ PROG100K.4TH" CR
107                             READ" PROG100K.4TH"
108                             BEGIN
109                                 READ
110                             UNTIL
111                             EXIT
112                         ELSE 1 - ?DUP
113                             0= IF
114                                 ." WRITE YOURFILE.TXT" CR
115                                 WRITE" YOURFILE.TXT"
116                                 ['] SD_EMIT IS EMIT
117                                 $4000 HERE OVER - DUMP
118                                 ['] EMIT >BODY IS EMIT
119                                 CLOSE
120                             ELSE 1 - ?DUP
121                                 0= IF
122                                     ." DEL YOURFILE.TXT" CR
123                                     DEL" YOURFILE.TXT"
124                                 ELSE 1 - ?DUP
125                                     0= IF
126                                         ." LOAD TSTWORDS.4TH" CR
127                                         LOAD" TSTWORDS.4TH"
128                                     ELSE
129                                         ." abort" CR EXIT
130                                     THEN                                        
131                                 THEN
132                             THEN
133                         THEN
134                     THEN
135                 THEN
136             THEN
137         THEN
138     THEN
139 THEN
140 ;
141
142 RST_HERE
143
144 [THEN]
145
146 SD_TEST