Test for AT instruction code 0x02 (SET_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 (odd addresses).
Test 2 - Check full address range.
Test 3 - Copying to address out of range.
Test 4 - Copying from address out of range.
Test 5 - Copying to address out of range.
Test 6 - Copying from address out of range.
Assembly Code (Test 1):
-----------------------
00000000* SET @00000000 #1111111111111111
0000000d SET @00000001 $00000000
0000001a SET @00000003 $00000000
00000027 SET @00000005 $00000000
00000034 SET @00000007 $00000000
00000041 SET @00000009 $00000000
0000004e SET @0000000b $00000000
0000005b SET @0000000d $00000000
00000068 SET @0000000f $00000000
00000075 SET @00000011 $00000000
00000082 SET @00000013 $00000000
0000008f SET @00000015 $00000000
0000009c SET @00000017 $00000000
000000a9 SET @00000019 $00000000
000000b6 SET @0000001b $00000000
000000c3 SET @0000001d $00000000
000000d0 SET @0000001f $00000000
000000dd SET @00000021 $00000000
000000ea SET @00000023 $00000000
000000f7 SET @00000025 $00000000
00000104 SET @00000027 $00000000
00000111 SET @00000029 $00000000
0000011e SET @0000002b $00000000
0000012b SET @0000002d $00000000
00000138 SET @0000002f $00000000
00000145 SET @00000031 $00000000
00000152 SET @00000033 $00000000
0000015f SET @00000035 $00000000
0000016c SET @00000037 $00000000
00000179 SET @00000039 $00000000
00000186 SET @0000003b $00000000
00000193 SET @0000003d $00000000
000001a0 SET @0000003f $00000000
000001ab FIN
Machine Code (Test 1):
----------------------
01000000001111111111111111020100000000000000020300000000000000020500000000000000020700000000000000020900
000000000000020b00000000000000020d00000000000000020f0000000000000002110000000000000002130000000000000002
1500000000000000021700000000000000021900000000000000021b00000000000000021d00000000000000021f000000000000
00022100000000000000022300000000000000022500000000000000022700000000000000022900000000000000022b00000000
000000022d00000000000000022f0000000000000002310000000000000002330000000000000002350000000000000002370000
0000000000023900000000000000023b00000000000000023d00000000000000023f0000000000000028
Data Dump (Test 1):
-------------------
00000000 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11
00000010 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000020 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000030 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000040 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000050 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000060 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000070 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000080 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000090 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
000000a0 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
000000b0 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
000000c0 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
000000d0 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
000000e0 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
000000f0 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000100 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000110 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000120 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000130 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000140 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000150 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000160 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000170 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000180 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
00000190 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
000001a0 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
000001b0 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
000001c0 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
000001d0 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
000001e0 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
000001f0 00 00 00 00 00 00 00 00 11 11 11 11 11 11 11 11
Assembly Code (Test 2):
-----------------------
00000000* SET @00000000 #ffffffffffffffff
0000000d SET @00000002 $00000000
0000001a SET @00000004 $00000002
00000027 SET @00000006 $00000004
00000034 SET @00000008 $00000006
00000041 SET @0000000a $00000008
0000004e SET @0000000c $0000000a
0000005b SET @0000000e $0000000c
00000068 SET @00000010 $0000000e
00000075 SET @00000012 $00000010
00000082 SET @00000014 $00000012
0000008f SET @00000016 $00000014
0000009c SET @00000018 $00000016
000000a9 SET @0000001a $00000018
000000b6 SET @0000001c $0000001a
000000c3 SET @0000001e $0000001c
000000d0 SET @00000020 $0000001e
000000dd SET @00000022 $00000020
000000ea SET @00000024 $00000022
000000f7 SET @00000026 $00000024
00000104 SET @00000028 $00000026
00000111 SET @0000002a $00000028
0000011e SET @0000002c $0000002a
0000012b SET @0000002e $0000002c
00000138 SET @00000030 $0000002e
00000145 SET @00000032 $00000030
00000152 SET @00000034 $00000034
0000015f SET @00000036 $00000036
0000016c SET @00000038 $00000038
00000179 SET @0000003a $0000003a
00000186 SET @0000003c $0000003c
00000193 SET @0000003e $0000003e
000001ab FIN
Machine Code (Test 2):
----------------------
0100000000ffffffffffffffff020200000000000000020400000002000000020600000004000000020800000006000000020a00
000008000000020c0000000a000000020e0000000c00000002100000000e00000002120000001000000002140000001200000002
1600000014000000021800000016000000021a00000018000000021c0000001a000000021e0000001c00000002200000001e0000
00022200000020000000022400000022000000022600000024000000022800000026000000022a00000028000000022c0000002a
000000022e0000002c00000002300000002e00000002320000003000000002340000003200000002360000003400000002380000
0036000000023a00000038000000023c0000003a000000023e0000003c00000028
Data Dump (Test 2):
-------------------
00000000 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000010 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000020 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000030 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000040 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000050 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000060 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000070 ff ff ff ff ff ff ff ff 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 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
000000a0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
000000b0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
000000c0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
000000d0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
000000e0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
000000f0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000100 ff ff ff ff ff ff ff ff 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 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000130 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000140 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000150 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000160 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000170 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000180 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
00000190 ff ff ff ff ff ff ff ff 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 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
000001c0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
000001d0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
000001e0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
000001f0 ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00
Assembly Code (Test 3):
-----------------------
00000000* SET @00000000 #ffffffffffffffff
0000000d SET @00000040 $00000000
0000001a FIN
Machine Code (Test 3):
-----------------------
0100000000ffffffffffffffff02400000000000000028
Runtime Error (Test 3):
-----------------------
error: overflow
Assembly Code (Test 4):
-----------------------
00000000* SET @00000000 #ffffffffffffffff
0000000d SET @00000000 $00000040
0000001a FIN
Machine Code (Test 4):
----------------------
0100000000ffffffffffffffff02020000004000000028
Runtime Error (Test 4):
-----------------------
error: overflow
Assembly Code (Test 5):
-----------------------
00000000* SET @00000000 #ffffffffffffffff
0000000d SET @ffffffff $00000000
0000001a FIN
Machine Code (Test 5):
----------------------
0100000000ffffffffffffffff02ffffffff0000000028
Runtime Error (Test 5):
-----------------------
error: overflow
Assembly Code (Test 6):
-----------------------
00000000* SET @00000000 #ffffffffffffffff
0000000d SET @00000000 $ffffffff
0000001a FIN
Machine Code (Test 6):
----------------------
0100000000ffffffffffffffff020200000ffffffff028
Runtime Error (Test 6):
-----------------------
error: overflow