open-simh.simtools/tests/test-asciz.lst.ok
Olaf Seibert e3042c9175 Remove dubious workaround in parse_unary().
The comment "eat first char of illegal label, else endless loop on
implied .WORD" was no longer true. It did reveal some other small
gotchas, which are corrected now as well.
2021-01-23 21:30:52 +01:00

59 lines
3.2 KiB
Plaintext

1 ;;;;;
2 ;
3 ; Test delimiters of .ASCII and .ASCIZ
4
5 000015 CR = 13.
6 000012 LF = 10.
7 000001 SOH = 1
8
9 000000 015 012 074 .asciz <cr><lf>/<SOH>/ ; 2 bytes and a string
000003 123 117 110
000006 076 000
10 000010 074 143 162 .asciz /<cr><lf><SOH>/ ; only a string
000013 076 074 154
000016 146 076 074
000021 123 117 110
000024 076 000
11 000026 074 143 162 .asciz |<cr><lf><SOH>| ; the same string
000031 076 074 154
000034 146 076 074
000037 123 117 110
000042 076 000
12 000044 015 012 001 .ascii <cr><lf><SOH> ; 3 bytes
13
14 000047 101 102 103 .asciz ;ABC;/DEF/ ; ABCDEF, not recommended practice
000052 104 105 106
000055 000
15 000056 101 102 103 .asciz /ABC/;DEF; ; ABC, not recommended practice
000061 000
16 000062 101 102 103 .asciz /ABC/=DEF= ; ABCDEF, not recommended practice
000065 104 105 106
000070 000
17 000071 043 043 043 .asciz &###& ; another weird delimiter
000074 000
test-asciz.mac:18: ***ERROR Complex expression cannot be assigned to a symbol
18 .asciz =DEF= ; syntax error: assignment
test-asciz.mac:19: ***ERROR Complex expression cannot be assigned to a symbol
19 .asciz =###= ; syntax error: assignment
20 000075 000 .even
test-asciz.mac:21: ***ERROR Invalid expression in .WORD
21 000076 000001 .asciz :SOH: ; syntax error: colon not allowed
test-asciz.mac:22: ***ERROR Illegal symbol definition .ASCIZ
test-asciz.mac:22: ***ERROR Invalid expression in .WORD
22 .asciz :###: ; syntax error: colon not allowed
23 000100 043 043 043 .asciz ^###^ ; previous versions of this macro11
000103 000
24 ; used ^/.../ quoting as an extension; however this should be ^...^.
24
Symbol table
. ******R 001 .ASCIZ 000076R 001 CR = 000015 LF = 000012 SOH = 000001
Program sections:
. ABS. 000000 000 (RW,I,GBL,ABS,OVR,NOSAV)
000104 001 (RW,I,LCL,REL,CON,NOSAV)