Test for AT instruction code 0x0d (NOT_DAT)
-------------------------------------------
For each test the assembly and machine code are listed as is the data dump or expected error if test case has
been created specifically to fail (with a data dump if any data was expected to have changed before the error
occurred).
A summary of the tests follows:
Test 1 - Check some basic usage.
Test 2 - Check highest value works.
Test 3 - Check full address range.
Test 4 - Check overwriting works.
Test 5 - Check address range edge fail.
Test 6 - Check negative adddress fails.
Assembly Code (Test 1):
-----------------------
00000000* SET @00000000 #000000000000000f
0000000d SET @00000001 #000000000000000e
0000001a SET @00000002 #000000000000000d
00000027 SET @00000003 #000000000000000c
00000034 SET @00000004 #000000000000000b
00000041 SET @00000005 #000000000000000a
0000004e SET @00000006 #0000000000000009
0000005b SET @00000007 #0000000000000008
00000068 SET @00000008 #0000000000000007
00000075 SET @00000009 #0000000000000006
00000082 SET @0000000a #0000000000000005
0000008f SET @0000000b #0000000000000004
0000009c SET @0000000c #0000000000000003
000000a9 SET @0000000d #0000000000000002
000000b6 SET @0000000e #0000000000000001
000000c3 NOT @00000000
000000c8 NOT @00000001
000000cd NOT @00000002
000000d2 NOT @00000003
000000d7 NOT @00000004
000000dc NOT @00000005
000000e1 NOT @00000006
000000e6 NOT @00000007
000000eb NOT @00000008
000000f0 NOT @00000009
000000f5 NOT @0000000a
000000fa NOT @0000000b
000000ff NOT @0000000c
00000104 NOT @0000000d
00000109 FIN
Machine Code (Test 1):
----------------------
01000000000f0000000000000001010000000e0000000000000001020000000d0000000000000001030000000c00000000000000
01040000000b0000000000000001050000000a000000000000000106000000090000000000000001070000000800000000000000
0108000000070000000000000001090000000600000000000000010a0000000500000000000000010b0000000400000000000000
010c0000000300000000000000010d0000000200000000000000010e00000001000000000000000d000000000d010000000d0200
00000d030000000d040000000d050000000d060000000d070000000d080000000d090000000d0a0000000d0b0000000d0c000000
0d0d00000028
Data Dump (Test 1):
-------------------
00000000 f0 ff ff ff ff ff ff ff f1 ff ff ff ff ff ff ff
00000010 f2 ff ff ff ff ff ff ff f3 ff ff ff ff ff ff ff
00000020 f4 ff ff ff ff ff ff ff f5 ff ff ff ff ff ff ff
00000030 f6 ff ff ff ff ff ff ff f7 ff ff ff ff ff ff ff
00000040 f8 ff ff ff ff ff ff ff f9 ff ff ff ff ff ff ff
00000050 fa ff ff ff ff ff ff ff fb ff ff ff ff ff ff ff
00000060 fc ff ff ff ff ff ff ff fd ff ff ff ff ff ff ff
00000070 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000090 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000110 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000190 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Assembly Code (Test 2):
-----------------------
00000000* SET @00000001 #ffffffffffffffff
0000000d SET @00000004 #00000000ffffffff
0000001a SET @00000007 #0000000000000000
00000027 SET @0000000a #ffffffffffffffff
00000034 SET @0000000d #00000000ffffffff
00000041 SET @00000010 #0000000000000000
0000004e SET @00000013 #ffffffffffffffff
0000005b SET @00000016 #00000000ffffffff
00000068 SET @00000019 #0000000000000000
00000075 SET @0000001c #ffffffffffffffff
00000082 SET @0000001f #00000000ffffffff
0000008f SET @00000022 #0000000000000000
0000009c SET @00000025 #ffffffffffffffff
000000a9 SET @00000028 #00000000ffffffff
000000b6 SET @0000002b #0000000000000000
000000c3 SET @0000002e #ffffffffffffffff
000000d0 SET @00000031 #00000000ffffffff
000000dd SET @00000034 #0000000000000000
000000ea SET @00000037 #ffffffffffffffff
000000f7 SET @0000003a #00000000ffffffff
00000104 SET @0000003d #0000000000000000
00000111 NOT @00000001
00000116 NOT @00000004
0000011b NOT @00000007
00000120 NOT @0000000a
00000125 NOT @0000000d
0000012a NOT @00000010
0000012f NOT @00000013
00000134 NOT @00000016
00000139 NOT @00000019
0000013e NOT @0000001c
00000143 NOT @0000001f
00000148 NOT @00000022
0000014d NOT @00000025
00000152 NOT @00000028
00000157 NOT @0000002b
0000015c NOT @0000002e
00000161 NOT @00000031
00000166 NOT @00000034
0000016b NOT @00000037
00000170 NOT @0000003a
00000175 NOT @0000003d
0000017a FIN
Machine Code (Test 2):
----------------------
0101000000ffffffffffffffff0104000000ffffffff0000000001070000000000000000000000010a000000ffffffffffffffff
010d000000ffffffff00000000011000000000000000000000000113000000ffffffffffffffff0116000000ffffffff00000000
01190000000000000000000000011c000000ffffffffffffffff011f000000ffffffff0000000001220000000000000000000000
0125000000ffffffffffffffff0128000000ffffffff00000000012b0000000000000000000000012e000000ffffffffffffffff
0131000000ffffffff00000000013400000000000000000000000137000000ffffffffffffffff013a000000ffffffff00000000
013d00000000000000000000000d010000000d040000000d070000000d0a0000000d0d0000000d100000000d130000000d160000
000d190000000d1c0000000d1f0000000d220000000d250000000d280000000d2b0000000d2e0000000d310000000d340000000d
370000000d3a0000000d3d00000028
Data Dump (Test 2):
-------------------
00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000020 00 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00
00000030 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff
00000040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000060 00 00 00 00 00 00 00 00 00 00 00 00 ff ff ff ff
00000070 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000080 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000090 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000b0 00 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00
000000c0 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 ff ff ff ff
00000100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000110 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000140 00 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00
00000150 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff
00000160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000180 00 00 00 00 00 00 00 00 00 00 00 00 ff ff ff ff
00000190 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001a0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
000001b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001d0 00 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00
000001e0 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff
000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Assembly Code (Test 3):
-----------------------
00000000* SET @00000001 #efcdab8967452301
0000000d SET @00000004 #ffffffffffffffff
0000001a SET @00000007 #efcdab8967452301
00000027 SET @0000000a #00000000ffffffff
00000034 SET @0000000d #efcdab8967452301
00000041 SET @00000010 #0000000000000000
0000004e SET @00000013 #efcdab8967452301
0000005b SET @00000016 #ffffffffffffffff
00000068 SET @00000019 #efcdab8967452301
00000075 SET @0000001c #00000000ffffffff
00000082 SET @0000001f #efcdab8967452301
0000008f SET @00000022 #0000000000000000
0000009c SET @00000025 #efcdab8967452301
000000a9 SET @00000028 #ffffffffffffffff
000000b6 SET @0000002b #efcdab8967452301
000000c3 SET @0000002e #00000000ffffffff
000000d0 SET @00000031 #efcdab8967452301
000000dd SET @00000034 #0000000000000000
000000ea SET @00000037 #efcdab8967452301
000000f7 SET @0000003a #ffffffffffffffff
00000104 SET @0000003d #efcdab8967452301
00000111 NOT @00000001
00000116 NOT @00000004
0000011b NOT @00000007
00000120 NOT @0000000a
00000125 NOT @0000000d
0000012a NOT @00000010
0000012f NOT @00000013
00000134 NOT @00000016
00000139 NOT @00000019
0000013e NOT @0000001c
00000143 NOT @0000001f
00000148 NOT @00000022
0000014d NOT @00000025
00000152 NOT @00000028
00000157 NOT @0000002b
0000015c NOT @0000002e
00000161 NOT @00000031
00000166 NOT @00000034
0000016b NOT @00000037
00000170 NOT @0000003a
00000175 NOT @0000003d
0000017a FIN
Machine Code (Test 3):
----------------------
01010000000123456789abcdef0104000000ffffffffffffffff01070000000123456789abcdef010a000000ffffffff00000000
010d0000000123456789abcdef0110000000000000000000000001130000000123456789abcdef0116000000ffffffffffffffff
01190000000123456789abcdef011c000000ffffffff00000000011f0000000123456789abcdef01220000000000000000000000
01250000000123456789abcdef0128000000ffffffffffffffff012b0000000123456789abcdef012e000000ffffffff00000000
01310000000123456789abcdef0134000000000000000000000001370000000123456789abcdef013a000000ffffffffffffffff
013d0000000123456789abcdef0d010000000d040000000d070000000d0a0000000d0d0000000d100000000d130000000d160000
000d190000000d1c0000000d1f0000000d220000000d250000000d280000000d2b0000000d2e0000000d310000000d340000000d
370000000d3a0000000d3d00000028
Data Dump (Test 3):
-------------------
00000000 00 00 00 00 00 00 00 00 fe dc ba 98 76 54 32 10
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000030 00 00 00 00 00 00 00 00 fe dc ba 98 76 54 32 10
00000040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000050 00 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00
00000060 00 00 00 00 00 00 00 00 fe dc ba 98 76 54 32 10
00000070 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000080 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000090 00 00 00 00 00 00 00 00 fe dc ba 98 76 54 32 10
000000a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000c0 00 00 00 00 00 00 00 00 fe dc ba 98 76 54 32 10
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000e0 00 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00
000000f0 00 00 00 00 00 00 00 00 fe dc ba 98 76 54 32 10
00000100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000110 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000120 00 00 00 00 00 00 00 00 fe dc ba 98 76 54 32 10
00000130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000150 00 00 00 00 00 00 00 00 fe dc ba 98 76 54 32 10
00000160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000170 00 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00
00000180 00 00 00 00 00 00 00 00 fe dc ba 98 76 54 32 10
00000190 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001a0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
000001b0 00 00 00 00 00 00 00 00 fe dc ba 98 76 54 32 10
000001c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001e0 00 00 00 00 00 00 00 00 fe dc ba 98 76 54 32 10
000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Assembly Code (Test 4):
-----------------------
000000e3 SET @00000000 #9999999999999999
000000f0 SET @00000001 #1111111111111111
000000fd SET @00000002 #99999999ffffffff
0000010a SET @00000010 #8888888888888888
00000117 SET @00000011 #2222222222222222
00000124 SET @00000012 #77777777ffffffff
00000131 SET @00000020 #6666666666666666
0000013e SET @00000021 #3333333333333333
0000014b SET @00000022 #66666666ffffffff
00000158 SET @00000030 #5555555555555555
00000165 SET @00000031 #4444444444444444
00000172 SET @00000032 #aaaaaaaaffffffff
0000017f NOT @00000000
00000184 NOT @00000000
00000189 NOT @00000010
0000018e NOT @00000010
00000193 NOT @00000010
00000198 NOT @00000020
0000019d NOT @00000020
000001a2 NOT @00000020
000001a7 NOT @00000020
000001ac NOT @00000030
000001b1 NOT @00000030
000001b6 NOT @00000030
000001bb NOT @00000030
000001c0 NOT @00000030
000001c5 FIN
Machine Code (Test 4):
----------------------
01000000009999999999999999010100000011111111111111110102000000ffffffff9999999901100000008888888888888888
011100000022222222222222220112000000ffffffff777777770120000000666666666666666601210000003333333333333333
0122000000ffffffff6666666601300000005555555555555555013100000044444444444444440132000000ffffffffaaaaaaaa
0d000000000d000000000d100000000d100000000d100000000d200000000d200000000d200000000d200000000d300000000d30
0000000d300000000d300000000d300000002801000000009999999999999999010100000011111111111111110102000000ffff
ffff9999999901100000008888888888888888011100000022222222222222220112000000ffffffff7777777701200000006666
666666666666012100000033333333333333330122000000ffffffff666666660130000000555555555555555501310000004444
4444444444440132000000ffffffffaaaaaaaa0d000000000d000000000d100000000d100000000d100000000d200000000d2000
00000d200000000d200000000d300000000d300000000d300000000d300000000d3000000028
Data Dump (Test 4):
-------------------
00000000 99 99 99 99 99 99 99 99 11 11 11 11 11 11 11 11
00000010 ff ff ff ff 99 99 99 99 00 00 00 00 00 00 00 00
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000070 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000080 77 77 77 77 77 77 77 77 22 22 22 22 22 22 22 22
00000090 ff ff ff ff 77 77 77 77 00 00 00 00 00 00 00 00
000000a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000100 66 66 66 66 66 66 66 66 33 33 33 33 33 33 33 33
00000110 ff ff ff ff 66 66 66 66 00 00 00 00 00 00 00 00
00000120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000180 aa aa aa aa aa aa aa aa 44 44 44 44 44 44 44 44
00000190 ff ff ff ff aa aa aa aa 00 00 00 00 00 00 00 00
000001a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Assembly Code (Test 5):
-----------------------
00000000* SET @0000003e #00000000ffffffff
0000000d SET @0000003f #ffffffffffffffff
0000001a NOT @0000003e
0000001f NOT @0000003f
00000024 NOT @00000040
00000029 FIN
Machine Code (Test 5):
----------------------
013e000000ffffffff00000000013f000000ffffffffffffffff0d3e0000000d3f0000000d4000000028
Runtime Error (Test 5):
-----------------------
error: overflow
Data Dump (Test 5):
-------------------
00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000070 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000090 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000110 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000190 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001f0 00 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00
Assembly Code (Test 6):
-----------------------
00000000* NOT @ffffffff
00000005 FIN
Machine Code (Test 6):
----------------------
0dffffffff28
Runtime Error (Test 6):
-----------------------
error: overflow