2 ; -----------------------------------------------------------------------
3 ; TESTXASM.4th for MSP_EXP430FR5994
4 ; -----------------------------------------------------------------------
13 ABORT" FastForth V3.9 please!"
145 R> OVER - 0 MAX SPACES TYPE
259 DO I C@ $7E MIN $20 MAX EMIT LOOP
277 ; -----------------------------------------------------------------------------
278 ; DTCforthMSP430FR5xxx ASSEMBLER: CALLA (without extended word)
279 ; -----------------------------------------------------------------------------
280 ; absolute and immediate instructs. must be written as $x.xxxx (DOUBLE numbers)
281 ; indexed instructions must be written as $xxxx(REG) (single numbers)
282 ; -----------------------------------------------------------------------------
289 ; you should see: 4A 13
297 ; you should see: 5A 13 56 34
305 ; you should see: 5F 13 00 00
313 ; you should see: 6A 13
321 ; you should see: 6F 13
329 ; you should see: 7A 13
337 ; you should see: 82 13 56 34
345 ; you should see: B5 13 89 67
348 ; -----------------------------------------------------------------------------
349 ; DTCforthMSP430FR5xxx ASSEMBLER, OPCODES IV : Adda|Cmpa|Mova|Suba
350 ; -----------------------------------------------------------------------------
351 ; absolute and immediate instructs. must be written as $x.xxxx (DOUBLE numbers)
352 ; indexed instructions must be written as $xxxx(REG) (single numbers)
353 ; -----------------------------------------------------------------------------
360 ; you should see: 0B 0A
368 ; you should see: 1A 0B
376 ; you should see: 2B 01 45 23
384 ; you should see: 3E 0F 02 00
392 ; you should see: 3C 0A 34 12
400 ; you should see: 61 0B 45 23
408 ; you should see: 7F 0E 00 00
416 ; you should see: 7A 0C 34 12
424 ; you should see: 8C 00 01 00
432 ; you should see: 9C 01 45 23
440 ; you should see: AC 02 56 34
448 ; you should see: BC 03 67 45
456 ; you should see: CB 0A
464 ; you should see: DB 0A
472 ; you should see: EB 0A
480 ; you should see: FB 0A
483 ; -----------------------------------------------------------------------------
484 ; DTCforthMSP430FR5xxx ASSEMBLER, OPCODES V extended double operand
485 ; -----------------------------------------------------------------------------
486 ; absolute and immediate instructs. must be written as $x.xxxx (DOUBLE numbers)
487 ; indexed instructions must be written as $.xxxx(REG) (DOUBLE numbers)
488 ; -----------------------------------------------------------------------------
496 ; you should see: 0B 4C 40 18 0B 4C
505 ; you should see: 0B 5B 00 18 4B 5B
515 ; you should see: 0B 5B 89 18 4B 5B
525 ; you should see: 0B 5B 07 18 4B 5B
534 ; you should see: 3B 60 76 98 80 1A 7B 60 76 98
543 ; you should see: 1B 62 76 98 80 1A 5B 62 76 98
549 XORX.B $6.5432(R12),R11
552 ; you should see: 5B EC 32 54 46 18 5B EC 32 54
558 SUBCX.A R11,$6.5432(R12)
561 ; you should see: 8C 7B 32 54 06 18 CC 7B 32 54
567 XORX.B R11,$6.5432(R12)
570 ; you should see: CC EB 32 54 46 18 CC EB 32 54
573 ; -----------------------------------------------------------------------------
574 ; DTCforthMSP430FR5xxx ASSEMBLER, OPCODES VI extended single operand
575 ; -----------------------------------------------------------------------------
576 ; absolute and immediate instructs. must be written as $x.xxxx (DOUBLE numbers)
577 ; indexed instructions must be written as $.xxxx(REG) (DOUBLE numbers)
578 ; -----------------------------------------------------------------------------
586 ; you should see: 09 11 40 18 09 11
595 ; you should see: 29 10 00 18 69 10
604 ; you should see: 2C 10 00 18 6C 10
613 ; you should see: 39 10 00 19 79 10
623 ; you should see: 0B 10 08 19 4B 10
633 ; you should see: 0B 10 89 19 4B 10
642 ; you should see: 30 12 45 23 40 18 30 12 45 23
651 ; you should see: 12 12 78 56 00 1A 52 12 78 56
660 ; you should see: 52 12 33 00 40 18 52 12 33 00
669 ; you should see: 5B 12 44 33 40 18 5B 12 44 33
674 ' # 2 + CONSTANT BASE
680 BASE @ %10 BASE ! SWAP 8 EMIT . BASE !
685 BASE @ %10 BASE ! SWAP 8 EMIT U. BASE !
706 ; you should see: %111100001111000
724 ; you should see: %111100001111000
737 ; you should see: %111100001111
750 ; you should see: %11110000
767 ; you should see: %100000000000000
785 ; you should see: %100000000000000
799 ; you should see: %10000000
815 ; you should see: %-100000000000000
833 ; you should see: %-100000000000000
846 ; you should see: %-10000000000000
859 ; you should see: %-1000000000000
872 ; you should see: %-100000000
888 RLAX_T ; you should see -2 -->
905 RLAX_T ; you should see -2 -->
917 RLAX_T ; you should see -4 -->
929 RLAX_T ; you should see -8 -->
941 RLAX_T ; you should see -256 -->
958 ADDX_T ; you should see -1 -->
976 ADDX_T ; you should see -1 -->
989 ADDX_T ; you should see -2 -->
1002 ADDX_T ; you should see -8 -->
1019 SUBX_T ; you should see 1 -->
1037 SUBX_T ; you should see 1 -->
1050 SUBX_T ; you should see 2 -->
1063 SUBX_T ; you should see 8 -->
1077 SUBX_T ; you should see 16 -->
1091 SUBX_T ; you should see 1 -->
1105 SUBX_T ; you should see 2 -->