OSDN Git Service

V 3.2
[fast-forth/master.git] / MSP430-FORTH / MSP_EXP430FR5994 / CORECOMP.4TH
1
2 ; -----------------------------------------------------
3 ; CORECOMP.4th    words complement to pass CORETEST.4TH
4 ; -----------------------------------------------------
5
6 PWR_STATE
7
8 [DEFINED] {CORE_COMP} [IF]  {CORE_COMP} [THEN]
9
10 [UNDEFINED] {CORE_COMP} [IF]
11
12 [UNDEFINED] MARKER [IF]
13 : MARKER
14 CREATE
15 HI2LO
16 MOV &$1DC8,0(R10)
17 SUB #2,R8
18 MOV R8,2(R10)
19 ADD #4,&$1DC6
20 LO2HI
21 DOES>
22 HI2LO
23 MOV @R1+,R13
24 MOV @R14+,&$180E
25 MOV @R14,&$180C
26 MOV @R15+,R14
27 MOV #RST_STATE,R0
28 ENDCODE
29 [THEN]
30
31 MARKER {CORE_COMP}
32
33 [UNDEFINED] + [IF]
34 CODE +
35 ADD @R15+,R14
36 MOV @R13+,R0
37 ENDCODE
38 [THEN]
39
40 [UNDEFINED] - [IF]
41 CODE -
42 SUB @R15+,R14
43 XOR #-1,R14
44 ADD #1,R14
45 MOV @R13+,R0
46 ENDCODE
47 [THEN]
48
49 [UNDEFINED] @ [IF]
50 CODE @
51 MOV @R14,R14
52 MOV @R13+,R0
53 ENDCODE
54 [THEN]
55
56 [UNDEFINED] ! [IF]
57 CODE !
58 MOV @R15+,0(R14)
59 MOV @R15+,R14
60 MOV @R13+,R0
61 ENDCODE
62 [THEN]
63
64 [UNDEFINED] DUP [IF]
65 CODE DUP
66 BW1 SUB #2,R15
67     MOV R14,0(R15)
68     MOV @R13+,R0
69 ENDCODE
70
71 CODE ?DUP
72 CMP #0,R14
73 0<> ?GOTO BW1
74 MOV @R13+,R0
75 ENDCODE
76 [THEN]
77
78 [UNDEFINED] EXIT [IF]
79 CODE EXIT
80 MOV @R1+,R13
81 MOV @R13+,R0
82
83 ENDCODE
84 [THEN]
85
86 [UNDEFINED] DEPTH [IF]
87 CODE DEPTH
88 MOV R14,-2(R15)
89 MOV #$1C80,R14
90 SUB R15,R14
91 RRA R14
92 SUB #2,R15
93 MOV @R13+,R0
94 ENDCODE
95 [THEN]
96
97 [UNDEFINED] SWAP [IF]
98 CODE SWAP
99 MOV @R15,R10
100 MOV R14,0(R15)
101 MOV R10,R14
102 MOV @R13+,R0
103 ENDCODE
104 [THEN]
105
106 [UNDEFINED] DROP [IF]
107 CODE DROP
108 MOV @R15+,R14
109 MOV @R13+,R0
110 ENDCODE
111 [THEN]
112
113 [UNDEFINED] NIP [IF]
114 CODE NIP
115 ADD #2,R15
116 MOV @R13+,R0
117 ENDCODE
118 [THEN]
119
120 [UNDEFINED] >R [IF]
121 CODE >R
122 PUSH R14
123 MOV @R15+,R14
124 MOV @R13+,R0
125 ENDCODE
126 [THEN]
127
128 [UNDEFINED] R> [IF]
129 CODE R>
130 SUB #2,R15
131 MOV R14,0(R15)
132 MOV @R1+,R14
133 MOV @R13+,R0
134 ENDCODE
135 [THEN]
136
137 [UNDEFINED] @ [IF]
138 CODE @
139 MOV @R14,R14
140 MOV @R13+,R0
141 ENDCODE
142 [THEN]
143
144 [UNDEFINED] ! [IF]
145 CODE !
146 MOV @R15+,0(R14)
147 MOV @R15+,R14
148 MOV @R13+,R0
149 ENDCODE
150 [THEN]
151
152 [UNDEFINED] C@ [IF]
153 CODE C@
154 MOV.B @R14,R14
155 MOV @R13+,R0
156 ENDCODE
157 [THEN]
158
159 [UNDEFINED] C! [IF]
160 CODE C!
161 MOV.B @R15+,0(R14)
162 ADD #1,R15
163 MOV @R15+,R14
164 MOV @R13+,R0
165 ENDCODE
166 [THEN]
167
168 [UNDEFINED] C, [IF]
169 CODE C,
170 MOV &$1DC6,R10
171 MOV.B R14,0(R10)
172 ADD #1,&$1DC6
173 MOV @R15+,R14
174 MOV @R13+,R0
175 ENDCODE
176 [THEN]
177
178 [UNDEFINED] 0= [IF]
179 CODE 0=
180 SUB #1,R14
181 SUBC R14,R14
182 MOV @R13+,R0
183 ENDCODE
184 [THEN]
185
186 [UNDEFINED] 0< [IF]
187 CODE 0<
188 ADD R14,R14
189 SUBC R14,R14
190 XOR #-1,R14
191 MOV @R13+,R0
192 ENDCODE
193 [THEN]
194
195 [UNDEFINED] = [IF]
196 CODE =
197 SUB @R15+,R14
198 0<> IF
199     AND #0,R14
200     MOV @R13+,R0
201 THEN
202 XOR #-1,R14
203 MOV @R13+,R0
204 ENDCODE
205 [THEN]
206
207 [UNDEFINED] U< [IF]
208 CODE U<
209 SUB @R15+,R14
210 0<> IF
211     MOV #-1,R14
212     U< IF
213         AND #0,R14
214     THEN
215 THEN
216 MOV @R13+,R0
217 ENDCODE
218 [THEN]
219
220 [UNDEFINED] < [IF]
221 CODE <
222         SUB @R15+,R14
223         S< ?GOTO FW1
224         0<> IF
225 BW1         MOV #-1,R14
226         THEN
227         MOV @R13+,R0
228 ENDCODE
229
230 CODE >
231         SUB @R15+,R14
232         S< ?GOTO BW1
233 FW1     AND #0,R14
234         MOV @R13+,R0
235 ENDCODE
236 [THEN]
237
238 [UNDEFINED] IF [IF]
239 CODE IF
240 SUB #2,R15
241 MOV R14,0(R15)
242 MOV &$1DC6,R14
243 ADD #4,&$1DC6
244 MOV #$404C,0(R14)
245 ADD #2,R14
246 MOV @R13+,R0
247 ENDCODE IMMEDIATE
248 [THEN]
249
250 [UNDEFINED] THEN [IF]
251 CODE THEN
252 MOV &$1DC6,0(R14)
253 MOV @R15+,R14
254 MOV @R13+,R0
255 ENDCODE IMMEDIATE
256 [THEN]
257
258 [UNDEFINED] ELSE [IF]
259 CODE ELSE
260 ADD #4,&$1DC6
261 MOV &$1DC6,R10
262 MOV #$4048,-4(R10)
263 MOV R10,0(R14)
264 SUB #2,R10
265 MOV R10,R14
266 MOV @R13+,R0
267 ENDCODE IMMEDIATE
268 [THEN]
269
270 [UNDEFINED] BEGIN [IF]
271 CODE BEGIN
272 MOV #HERE,R0
273 ENDCODE IMMEDIATE
274 [THEN]
275
276 [UNDEFINED] UNTIL [IF]
277 CODE UNTIL
278     MOV #$404C,R9
279 BW1 ADD #4,&$1DC6
280     MOV &$1DC6,R10
281     MOV R9,-4(R10)
282     MOV R14,-2(R10)
283     MOV @R15+,R14
284     MOV @R13+,R0
285 ENDCODE IMMEDIATE
286 [THEN]
287
288 [UNDEFINED] AGAIN [IF]
289 CODE AGAIN
290 MOV #$4048,R9
291 GOTO BW1
292 ENDCODE IMMEDIATE
293 [THEN]
294
295 [UNDEFINED] WHILE [IF]
296 : WHILE
297 POSTPONE IF SWAP
298 ; IMMEDIATE
299 [THEN]
300
301 [UNDEFINED] REPEAT [IF]
302 : REPEAT
303 POSTPONE AGAIN POSTPONE THEN
304 ; IMMEDIATE
305 [THEN]
306
307 [UNDEFINED] DO [IF]
308 CODE DO
309 SUB #2,R15
310 MOV R14,0(R15)
311 ADD #2,&$1DC6
312 MOV &$1DC6,R14
313 MOV #$4056,-2(R14)
314 ADD #2,&$1C00
315 MOV &$1C00,R10
316 MOV #0,0(R10)
317 MOV @R13+,R0
318 ENDCODE IMMEDIATE
319 [THEN]
320
321 [UNDEFINED] LOOP [IF]
322 CODE LOOP
323     MOV #$4078,R9
324 BW1 ADD #4,&$1DC6
325     MOV &$1DC6,R10
326     MOV R9,-4(R10)
327     MOV R14,-2(R10)
328 BEGIN
329     MOV &$1C00,R14
330     SUB #2,&$1C00
331     MOV @R14,R14
332     CMP #0,R14
333 0<> WHILE
334     MOV R10,0(R14)
335 REPEAT
336     MOV @R15+,R14
337     MOV @R13+,R0
338 ENDCODE IMMEDIATE
339 [THEN]
340
341 [UNDEFINED] +LOOP [IF]
342 CODE +LOOP
343 MOV #$4066,R9
344 GOTO BW1
345 ENDCODE IMMEDIATE
346 [THEN]
347
348 [UNDEFINED] I [IF]
349 CODE I
350 SUB #2,R15
351 MOV R14,0(R15)
352 MOV @R1,R14
353 SUB 2(R1),R14
354 MOV @R13+,R0
355 ENDCODE
356 [THEN]
357
358 [UNDEFINED] J [IF]
359 CODE J
360 SUB #2,R15      
361 MOV R14,0(R15)
362 MOV 4(R1),R14
363 SUB 6(R1),R14
364 MOV @R13+,R0
365 ENDCODE
366 [THEN]
367
368 [UNDEFINED] UNLOOP [IF]
369 CODE UNLOOP
370 ADD #4,R1
371 MOV @R13+,R0
372 ENDCODE
373 [THEN]
374
375 [UNDEFINED] LEAVE [IF]
376 CODE LEAVE
377 MOV &$1DC6,R10
378 MOV #UNLOOP,0(R10)
379 MOV #$4048,2(R10)
380 ADD #6,&$1DC6
381 ADD #2,&$1C00
382 ADD #4,R10
383 MOV &$1C00,R9
384 MOV R10,0(R9)
385 MOV @R13+,R0
386 ENDCODE IMMEDIATE
387 [THEN]
388
389 [UNDEFINED] AND [IF]
390 CODE AND
391 AND @R15+,R14
392 MOV @R13+,R0
393 ENDCODE
394 [THEN]
395
396 [UNDEFINED] OR [IF]
397 CODE OR
398 BIS @R15+,R14
399 MOV @R13+,R0
400 ENDCODE
401 [THEN]
402
403 [UNDEFINED] XOR [IF]
404 CODE XOR
405 XOR @R15+,R14
406 MOV @R13+,R0
407 ENDCODE
408 [THEN]
409
410 [UNDEFINED] S>D [IF]
411 : S>D
412     DUP 0<
413 ;
414 [THEN]
415
416 [UNDEFINED] + [IF]
417 CODE +
418 ADD @R15+,R14
419 MOV @R13+,R0
420 ENDCODE
421 [THEN]
422
423 [UNDEFINED] - [IF]
424 CODE -
425 SUB @R15+,R14
426 XOR #-1,R14
427 ADD #1,R14
428 MOV @R13+,R0
429 ENDCODE
430 [THEN]
431
432 [UNDEFINED] 1+ [IF]
433 CODE 1+
434 ADD #1,R14
435 MOV @R13+,R0
436 ENDCODE
437 [THEN]
438
439 [UNDEFINED] 1- [IF]
440 CODE 1-
441 SUB #1,R14
442 MOV @R13+,R0
443 ENDCODE
444 [THEN]
445
446 [UNDEFINED] INVERT [IF]
447 CODE INVERT
448 XOR #-1,R14
449 MOV @R13+,R0
450 ENDCODE
451 [THEN]
452
453 [UNDEFINED] LSHIFT [IF]
454 CODE LSHIFT
455             MOV @R15+,R10
456             AND #$1F,R14
457 0<> IF
458     BEGIN   ADD R10,R10
459             SUB #1,R14
460     0= UNTIL
461 THEN        MOV R10,R14
462             MOV @R13+,R0
463 ENDCODE
464 [THEN]
465
466 [UNDEFINED] RSHIFT [IF]
467 CODE RSHIFT
468             MOV @R15+,R10
469             AND #$1F,R14
470 0<> IF
471     BEGIN   BIC #1,R2
472             RRC R10
473             SUB #1,R14
474     0= UNTIL
475 THEN        MOV R10,R14
476             MOV @R13+,R0
477 ENDCODE
478 [THEN]
479
480 [UNDEFINED] MAX [IF]
481 CODE MAX
482     CMP @R15,R14
483     S<  ?GOTO FW1
484 BW1 ADD #2,R15
485     MOV @R13+,R0
486 ENDCODE
487
488 CODE MIN
489     CMP @R15,R14
490     S< ?GOTO BW1
491 FW1 MOV @R15+,R14
492     MOV @R13+,R0
493 ENDCODE
494 [THEN]
495
496 [THEN]
497
498 [UNDEFINED] 2* [IF]
499 CODE 2*
500 ADD R14,R14
501 MOV @R13+,R0
502 ENDCODE
503 [THEN]
504
505 [UNDEFINED] 2/ [IF]
506 CODE 2/
507 RRA R14
508 MOV @R13+,R0
509 ENDCODE
510 [THEN]
511
512 [UNDEFINED] M* [IF]
513
514 $1A00 4 + @ $81F3 U<
515 $81EF $1A00 4 + @ U< 
516 = [IF]   ; MSP430FR2xxx|MSP430FR4xxx subfamilies without hardware_MPY
517
518 CODE M*
519 MOV @R15,R12
520 CMP #0,R12
521 S< IF
522     XOR #-1,0(R15)
523     ADD #1,0(R15)
524 THEN
525 XOR R14,R12
526 CMP #0,R14
527 S< IF
528     XOR #-1,R14
529     ADD #1,R14
530 THEN
531 PUSHM #2,R13
532 LO2HI
533 UM*       
534 HI2LO
535 POPM #2,R13
536 CMP #0,R12
537 S< IF
538     XOR #-1,0(R15)
539     XOR #-1,R14
540     ADD #1,0(R15)
541     ADDC #0,R14
542 THEN
543 MOV @R13+,R0
544 ENDCODE
545
546 [ELSE]  ; MSP430FRxxxx with hardware_MPY
547
548 CODE UM*
549     MOV @R15,&$4C0
550 BW1 MOV R14,&$4C8
551     MOV &$4E4,0(R15)
552     MOV &$4E6,R14
553     MOV @R13+,R0
554 ENDCODE
555
556 CODE M*
557     MOV @R15,&$4C2
558     GOTO BW1
559 ENDCODE
560
561 [THEN]
562
563 [THEN]
564
565 [UNDEFINED] UM/MOD [IF]
566 CODE UM/MOD
567     PUSH #DROP
568     MOV #$407E,R0
569 ENDCODE
570 [THEN]
571
572 [UNDEFINED] SM/REM [IF]
573 CODE SM/REM
574 MOV R14,R12
575 MOV @R15,R11
576 CMP #0,R14
577 S< IF
578     XOR #-1,R14
579     ADD #1,R14
580 THEN
581 CMP #0,0(R15)
582 S< IF
583     XOR #-1,2(R15)
584     XOR #-1,0(R15)
585     ADD #1,2(R15)
586     ADDC #0,0(R15)
587 THEN
588 PUSHM #3,R13
589 LO2HI
590     UM/MOD
591 HI2LO
592 POPM #3,R13
593 CMP #0,R11
594 S< IF
595     XOR #-1,0(R15)
596     ADD #1,0(R15)
597 THEN
598 XOR R12,R11
599 CMP #0,R11
600 S< IF
601     XOR #-1,R14
602     ADD #1,R14
603 THEN
604 MOV @R13+,R0
605 ENDCODE
606 [THEN]
607
608 [UNDEFINED] NEGATE [IF]
609 CODE NEGATE
610 XOR #-1,R14
611 ADD #1,R14
612 MOV @R13+,R0
613 ENDCODE
614 [THEN]
615
616 [UNDEFINED] ABS [IF]
617 CODE ABS
618 CMP #0,R14
619 0>= IF
620     MOV @R13+,R0
621 THEN
622 MOV #NEGATE,R0
623 ENDCODE
624 [THEN]
625
626 [UNDEFINED] FM/MOD [IF]
627 : FM/MOD
628 SM/REM
629 HI2LO
630 CMP #0,0(R15)
631 0<> IF
632     CMP #1,R14
633     S< IF
634       ADD R12,0(R15)
635       SUB #1,R14
636     THEN
637 THEN
638 MOV @R1+,R13
639 MOV @R13+,R0
640 ENDCODE
641 [THEN]
642
643 [UNDEFINED] * [IF]
644 : *
645 M* DROP
646 ;
647 [THEN]
648
649 [UNDEFINED] /MOD [IF]
650 : /MOD
651 >R DUP 0< R> FM/MOD
652 ;
653 [THEN]
654
655 [UNDEFINED] / [IF]
656 : /
657 >R DUP 0< R> FM/MOD NIP
658 ;
659 [THEN]
660
661 [UNDEFINED] MOD [IF]
662 : MOD
663 >R DUP 0< R> FM/MOD DROP
664 ;
665 [THEN]
666
667 [UNDEFINED] */MOD [IF]
668 : */MOD
669 >R M* R> FM/MOD
670 ;
671 [THEN]
672
673 [UNDEFINED] */ [IF]
674 : */
675 >R M* R> FM/MOD NIP
676 ;
677
678 [UNDEFINED] OVER [IF]
679 CODE OVER
680 MOV R14,-2(R15)
681 MOV @R15,R14
682 SUB #2,R15
683 MOV @R13+,R0
684 ENDCODE
685 [THEN]
686
687 [UNDEFINED] ROT [IF]
688 CODE ROT
689 MOV @R15,R10
690 MOV R14,0(R15)
691 MOV 2(R15),R14
692 MOV R10,2(R15)
693 MOV @R13+,R0
694 ENDCODE
695 [THEN]
696 [THEN]
697
698 [UNDEFINED] R@ [IF]
699 CODE R@
700 SUB #2,R15
701 MOV R14,0(R15)
702 MOV @R1,R14
703 MOV @R13+,R0
704 ENDCODE
705 [THEN]
706
707 [UNDEFINED] 2@ [IF]
708 CODE 2@
709 BW1 SUB #2,R15
710     MOV 2(R14),0(R15)
711     MOV @R14,R14
712     MOV @R13+,R0
713 ENDCODE
714 [THEN]
715
716 [UNDEFINED] 2! [IF]
717 CODE 2!
718 BW2 MOV @R15+,0(R14)
719     MOV @R15+,2(R14)
720     MOV @R15+,R14
721     MOV @R13+,R0
722 ENDCODE
723 [THEN]
724
725 [UNDEFINED] 2DUP [IF]
726 CODE 2DUP
727 MOV R14,-2(R15)
728 MOV @R15,-4(R15)
729 SUB #4,R15
730 MOV @R13+,R0
731 ENDCODE
732 [THEN]
733
734 [UNDEFINED] 2DROP [IF]
735 CODE 2DROP
736 ADD #2,R15
737 MOV @R15+,R14
738 MOV @R13+,R0
739 ENDCODE
740 [THEN]
741
742 [UNDEFINED] 2SWAP [IF]
743 CODE 2SWAP
744 MOV @R15,R10
745 MOV 4(R15),0(R15)
746 MOV R10,4(R15)
747 MOV R14,R10
748 MOV 2(R15),R14
749 MOV R10,2(R15)
750 MOV @R13+,R0
751 ENDCODE
752 [THEN]
753
754 [UNDEFINED] 2OVER [IF]
755 CODE 2OVER
756 SUB #4,R15
757 MOV R14,2(R15)
758 MOV 8(R15),0(R15)
759 MOV 6(R15),R14
760 MOV @R13+,R0
761 ENDCODE
762 [THEN]
763
764
765 [UNDEFINED] ALIGNED [IF]
766 CODE ALIGNED
767 BIT #1,R14
768 ADDC #0,R14
769 MOV @R13+,R0
770 ENDCODE
771 [THEN]
772
773 [UNDEFINED] ALIGN [IF]
774 CODE ALIGN
775 BIT #1,&$1DC6
776 ADDC #0,&$1DC6
777 MOV @R13+,R0
778 ENDCODE
779 [THEN]
780
781
782 [UNDEFINED] CHARS [IF]
783 CODE CHARS
784 MOV @R13+,R0
785 ENDCODE
786 [THEN]
787
788 [UNDEFINED] CHAR+ [IF]
789 CODE CHAR+
790 ADD #1,R14
791 MOV @R13+,R0
792 ENDCODE
793 [THEN]
794
795 [UNDEFINED] CELLS [IF]
796 CODE CELLS
797 ADD R14,R14
798 MOV @R13+,R0
799 ENDCODE
800 [THEN]
801
802 [UNDEFINED] CELL+ [IF]
803 CODE CELL+
804 ADD #2,R14
805 MOV @R13+,R0
806 ENDCODE
807 [THEN]
808
809
810 [UNDEFINED] CHAR [IF]
811 : CHAR
812     $20 WORD 1+ C@
813 ;
814 [THEN]
815
816 [UNDEFINED] [CHAR] [IF]
817 : [CHAR]
818     CHAR POSTPONE LITERAL
819 ; IMMEDIATE
820 [THEN]
821
822 [UNDEFINED] +! [IF]
823 CODE +!
824 ADD @R15+,0(R14)
825 MOV @R15+,R14
826 MOV @R13+,R0
827 ENDCODE
828 [THEN]
829
830 [UNDEFINED] MOVE [IF]
831 CODE MOVE
832 MOV R14,R10
833 MOV @R15+,R8
834 MOV @R15+,R9
835 MOV @R15+,R14
836 CMP #0,R10
837 0<> IF
838     CMP R9,R8
839     0<> IF
840         U< IF
841             BEGIN
842                 MOV.B @R9+,0(R8)
843                 ADD #1,R8
844                 SUB #1,R10
845             0= UNTIL
846             MOV @R13+,R0
847         THEN
848         ADD R10,R8
849         ADD R10,R9
850         BEGIN
851             SUB #1,R9
852             SUB #1,R8
853             MOV.B @R9,0(R8)
854             SUB #1,R10
855         0= UNTIL
856     THEN
857 THEN
858 MOV @R13+,R0
859 ENDCODE
860 [THEN]
861
862
863 [UNDEFINED] FILL [IF]
864 CODE FILL
865 MOV @R15+,R9
866 MOV @R15+,R10
867 CMP #0,R9
868 0<> IF
869     BEGIN
870         MOV.B R14,0(R10)
871         ADD #1,R10
872         SUB #1,R9
873     0= UNTIL
874 THEN
875 MOV @R15+,R14
876 MOV @R13+,R0
877 ENDCODE
878 [THEN]
879
880 [UNDEFINED] HERE [IF]
881 CODE HERE
882 MOV #BEGIN,R0
883 ENDCODE
884 [THEN]
885
886
887 [UNDEFINED] HEX [IF]
888 CODE HEX
889 MOV #$10,&$1DDC
890 MOV @R13+,R0
891 ENDCODE
892 [THEN]
893
894 [UNDEFINED] DECIMAL [IF]
895 CODE DECIMAL
896 MOV #$0A,&$1DDC
897 MOV @R13+,R0
898 ENDCODE
899 [THEN]
900
901 [UNDEFINED] ( [IF]
902 : ( 
903 $29 WORD DROP
904 ; IMMEDIATE
905 [THEN]
906
907 [UNDEFINED] .( [IF]
908 CODE .(
909 MOV #0,&$1DB4
910 COLON
911 $29 WORD
912 COUNT TYPE
913 $20 $1DB4 !
914 ; IMMEDIATE
915 [THEN]
916
917 [UNDEFINED] >BODY [IF]
918 CODE >BODY
919 ADD #4,R14
920 MOV @R13+,R0
921 ENDCODE
922 [THEN]
923
924 [UNDEFINED] EXECUTE [IF]
925 CODE EXECUTE
926 MOV R14,R10
927 MOV @R15+,R14
928 MOV R10,R0
929 ENDCODE
930 [THEN]
931
932 [UNDEFINED] RECURSE [IF]
933 CODE RECURSE
934 MOV &$1DC6,R9
935 MOV &$1DBA,0(R9)
936 ADD #2,&$1DC6
937 MOV @R13+,R0
938 ENDCODE IMMEDIATE
939 [THEN]
940
941 [UNDEFINED] SOURCE [IF]
942 CODE SOURCE
943 SUB #4,R15
944 MOV R14,2(R15)
945 MOV &$1DC0,R14
946 MOV &$1DC2,0(R15)
947 MOV @R13+,R0
948 ENDCODE
949 [THEN]
950
951
952 [UNDEFINED] VARIABLE [IF]
953 : VARIABLE 
954 CREATE
955 2 ALLOT
956 ;
957 [THEN]
958
959 [UNDEFINED] CONSTANT [IF]
960 : CONSTANT 
961 CREATE
962 HI2LO
963 MOV R14,-2(R10)
964 MOV @R15+,R14
965 MOV @R1+,R13
966 MOV @R13+,R0
967 ENDCODE
968 [THEN]
969
970 [UNDEFINED] STATE [IF]
971 $1DBE CONSTANT STATE
972 [THEN]
973
974 [UNDEFINED] BASE [IF]
975 $1DDC CONSTANT BASE
976 [THEN]
977
978 [UNDEFINED] >IN [IF]
979 $1DC4 CONSTANT >IN
980 [THEN]
981
982 [UNDEFINED] PAD [IF]
983 $1CE4 CONSTANT PAD
984 [THEN]
985
986 [UNDEFINED] BL [IF]
987 $20 CONSTANT BL
988 [THEN]
989
990 [UNDEFINED] SPACE [IF]
991 : SPACE
992 $20 EMIT ;
993 [THEN]
994
995 [UNDEFINED] SPACES [IF]
996 CODE SPACES
997 CMP #0,R14
998 0<> IF
999     PUSH R13
1000     BEGIN
1001         LO2HI
1002         $20 EMIT
1003         HI2LO
1004         SUB #2,R13 
1005         SUB #1,R14
1006     0= UNTIL
1007     MOV @R1+,R13
1008 THEN
1009 MOV @R15+,R14
1010 MOV @R13+,R0              
1011 ENDCODE
1012 [THEN]
1013
1014 RST_HERE
1015
1016 [THEN]
1017
1018 ECHO