Test for AT instruction code 0x01 (SET_VAL)
-------------------------------------------
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 #0000000000000000
0000000d SET @00000001 #0000000000000001
0000001a SET @00000002 #0000000000000002
00000027 SET @00000003 #0000000000000003
00000034 SET @00000004 #0000000000000004
00000041 SET @00000005 #0000000000000005
0000004e SET @00000006 #0000000000000006
0000005b SET @00000007 #0000000000000007
00000068 SET @00000008 #0000000000000008
00000075 SET @00000009 #0000000000000009
00000082 SET @0000000a #000000000000000a
0000008f SET @0000000b #000000000000000b
0000009c SET @0000000c #000000000000000c
000000a9 SET @0000000d #000000000000000d
000000b6 SET @0000000e #000000000000000e
000000c3 SET @0000000f #000000000000000f
000000d0 SET @00000010 #0000000000000010
000000dd SET @00000011 #0000000000000011
000000ea SET @00000012 #0000000000000012
000000f7 SET @00000013 #0000000000000013
00000104 SET @00000014 #0000000000000014
00000111 SET @00000015 #0000000000000015
0000011e SET @00000016 #0000000000000016
0000012b SET @00000017 #0000000000000017
00000138 SET @00000018 #0000000000000018
00000145 SET @00000019 #0000000000000019
00000152 SET @0000001a #000000000000001a
0000015f SET @0000001b #000000000000001b
0000016c SET @0000001c #000000000000001c
00000179 SET @0000001d #000000000000001d
00000186 SET @0000001e #000000000000001e
00000193 SET @0000001f #000000000000001f
000001a0 SET @00000020 #0000000000000020
000001ad SET @00000021 #0000000000000021
000001ba SET @00000022 #0000000000000022
000001c7 SET @00000023 #0000000000000023
000001d4 SET @00000024 #0000000000000024
000001e1 SET @00000025 #0000000000000025
000001ee SET @00000026 #0000000000000026
000001fb FIN
Machine Code (Test 1):
----------------------
01000000000000000000000000010100000001000000000000000102000000020000000000000001030000000300000000000000
01040000000400000000000000010500000005000000000000000106000000060000000000000001070000000700000000000000
0108000000080000000000000001090000000900000000000000010a0000000a00000000000000010b0000000b00000000000000
010c0000000c00000000000000010d0000000d00000000000000010e0000000e00000000000000010f0000000f00000000000000
01100000001000000000000000011100000011000000000000000112000000120000000000000001130000001300000000000000
01140000001400000000000000011500000015000000000000000116000000160000000000000001170000001700000000000000
0118000000180000000000000001190000001900000000000000011a0000001a00000000000000011b0000001b00000000000000
011c0000001c00000000000000011d0000001d00000000000000011e0000001e00000000000000011f0000001f00000000000000
01200000002000000000000000012100000021000000000000000122000000220000000000000001230000002300000000000000
01240000002400000000000000012500000025000000000000000126000000260000000000000028
Data Dump (Test 1):
-------------------
00000000 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00
00000010 02 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00
00000020 04 00 00 00 00 00 00 00 05 00 00 00 00 00 00 00
00000030 06 00 00 00 00 00 00 00 07 00 00 00 00 00 00 00
00000040 08 00 00 00 00 00 00 00 09 00 00 00 00 00 00 00
00000050 0a 00 00 00 00 00 00 00 0b 00 00 00 00 00 00 00
00000060 0c 00 00 00 00 00 00 00 0d 00 00 00 00 00 00 00
00000070 0e 00 00 00 00 00 00 00 0f 00 00 00 00 00 00 00
00000080 10 00 00 00 00 00 00 00 11 00 00 00 00 00 00 00
00000090 12 00 00 00 00 00 00 00 13 00 00 00 00 00 00 00
000000a0 14 00 00 00 00 00 00 00 15 00 00 00 00 00 00 00
000000b0 16 00 00 00 00 00 00 00 17 00 00 00 00 00 00 00
000000c0 18 00 00 00 00 00 00 00 19 00 00 00 00 00 00 00
000000d0 1a 00 00 00 00 00 00 00 1b 00 00 00 00 00 00 00
000000e0 1c 00 00 00 00 00 00 00 1d 00 00 00 00 00 00 00
000000f0 1e 00 00 00 00 00 00 00 1f 00 00 00 00 00 00 00
00000100 20 00 00 00 00 00 00 00 21 00 00 00 00 00 00 00
00000110 22 00 00 00 00 00 00 00 23 00 00 00 00 00 00 00
00000120 24 00 00 00 00 00 00 00 25 00 00 00 00 00 00 00
00000130 26 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 @00000000 #ffffffffffffffff
0000000d SET @00000001 #ffffffffffffffff
0000001a SET @00000004 #ffffffffffffffff
00000027 SET @00000005 #ffffffffffffffff
00000034 SET @00000008 #ffffffffffffffff
00000041 SET @00000009 #ffffffffffffffff
0000004e SET @0000000c #ffffffffffffffff
0000005b SET @0000000d #ffffffffffffffff
00000068 SET @00000010 #ffffffffffffffff
00000075 SET @00000011 #ffffffffffffffff
00000082 SET @00000014 #ffffffffffffffff
0000008f SET @00000015 #ffffffffffffffff
0000009c SET @00000018 #ffffffffffffffff
000000a9 SET @00000019 #ffffffffffffffff
000000b6 SET @0000001c #ffffffffffffffff
000000c3 SET @0000001d #ffffffffffffffff
000000d0 SET @00000020 #ffffffffffffffff
000000dd SET @00000021 #ffffffffffffffff
000000ea SET @00000024 #ffffffffffffffff
000000f7 SET @00000025 #ffffffffffffffff
00000104 SET @00000028 #ffffffffffffffff
00000111 SET @00000029 #ffffffffffffffff
0000011e SET @0000002c #ffffffffffffffff
0000012b SET @0000002d #ffffffffffffffff
00000138 SET @00000030 #ffffffffffffffff
00000145 SET @00000031 #ffffffffffffffff
00000152 SET @00000034 #ffffffffffffffff
0000015f SET @00000035 #ffffffffffffffff
0000016c SET @00000038 #ffffffffffffffff
00000179 SET @00000039 #ffffffffffffffff
00000186 SET @0000003c #ffffffffffffffff
00000193 SET @0000003d #ffffffffffffffff
000001a0 FIN
Machine Code (Test 2):
----------------------
0100000000ffffffffffffffff0101000000ffffffffffffffff0104000000ffffffffffffffff0105000000ffffffffffffffff
0108000000ffffffffffffffff0109000000ffffffffffffffff010c000000ffffffffffffffff010d000000ffffffffffffffff
0110000000ffffffffffffffff0111000000ffffffffffffffff0114000000ffffffffffffffff0115000000ffffffffffffffff
0118000000ffffffffffffffff0119000000ffffffffffffffff011c000000ffffffffffffffff011d000000ffffffffffffffff
0120000000ffffffffffffffff0121000000ffffffffffffffff0124000000ffffffffffffffff0125000000ffffffffffffffff
0128000000ffffffffffffffff0129000000ffffffffffffffff012c000000ffffffffffffffff012d000000ffffffffffffffff
0130000000ffffffffffffffff0131000000ffffffffffffffff0134000000ffffffffffffffff0135000000ffffffffffffffff
0138000000ffffffffffffffff0139000000ffffffffffffffff013c000000ffffffffffffffff013d000000ffffffffffffffff
28
Data Dump (Test 2):
-------------------
00000000 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000020 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000040 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000060 ff ff ff ff ff ff ff ff ff ff ff ff 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 ff ff ff ff ff ff ff ff
00000090 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
000000b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000c0 ff ff ff ff ff ff ff ff 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 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000100 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
00000110 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000120 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
00000130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000140 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
00000150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000160 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
00000170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000180 ff ff ff ff ff ff ff ff ff ff ff ff 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 ff ff ff ff ff ff ff ff
000001b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001e0 ff ff ff ff ff ff ff ff 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 @00000000 #0123456789abcdef
0000000d SET @00000005 #0123456789abcdef
0000001a SET @00000008 #0123456789abcdef
00000027 SET @0000000d #0123456789abcdef
00000034 SET @00000010 #0123456789abcdef
00000041 SET @00000015 #0123456789abcdef
0000004e SET @00000018 #0123456789abcdef
0000005b SET @0000001d #0123456789abcdef
00000068 SET @00000020 #0123456789abcdef
00000075 SET @00000025 #0123456789abcdef
00000082 SET @00000028 #0123456789abcdef
0000008f SET @0000002d #0123456789abcdef
0000009c SET @00000030 #0123456789abcdef
000000a9 SET @00000035 #0123456789abcdef
000000b6 SET @00000038 #0123456789abcdef
000000c3 SET @0000003d #0123456789abcdef
000000d0 FIN
Machine Code (Test 3):
----------------------
0100000000efcdab89674523010105000000efcdab89674523010108000000efcdab8967452301010d000000efcdab8967452301
0110000000efcdab89674523010115000000efcdab89674523010118000000efcdab8967452301011d000000efcdab8967452301
0120000000efcdab89674523010125000000efcdab89674523010128000000efcdab8967452301012d000000efcdab8967452301
0130000000efcdab89674523010135000000efcdab89674523010138000000efcdab8967452301013d000000efcdab8967452301
28
Data Dump (Test 3):
-------------------
00000000 ef cd ab 89 67 45 23 01 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 ef cd ab 89 67 45 23 01
00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000040 ef cd ab 89 67 45 23 01 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 ef cd ab 89 67 45 23 01
00000070 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000080 ef cd ab 89 67 45 23 01 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 ef cd ab 89 67 45 23 01
000000b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000000c0 ef cd ab 89 67 45 23 01 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 ef cd ab 89 67 45 23 01
000000f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000100 ef cd ab 89 67 45 23 01 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 ef cd ab 89 67 45 23 01
00000130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000140 ef cd ab 89 67 45 23 01 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 ef cd ab 89 67 45 23 01
00000170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000180 ef cd ab 89 67 45 23 01 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 ef cd ab 89 67 45 23 01
000001b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000001c0 ef cd ab 89 67 45 23 01 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 ef cd ab 89 67 45 23 01
000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Assembly Code (Test 4):
-----------------------
00000000* SET @00000000 #0000000000000000
0000000d SET @00000000 #ffffffffffffffff
0000001a SET @00000000 #1111111111111111
00000027 SET @00000001 #2222222222222222
00000034 SET @00000010 #0000000000000000
00000041 SET @00000010 #ffffffffffffffff
0000004e SET @00000010 #3333333333333333
0000005b SET @00000011 #4444444444444444
00000068 SET @00000020 #0000000000000000
00000075 SET @00000020 #ffffffffffffffff
00000082 SET @00000020 #5555555555555555
0000008f SET @00000021 #6666666666666666
0000009c SET @00000030 #0000000000000000
000000a9 SET @00000030 #ffffffffffffffff
000000b6 SET @00000030 #7777777777777777
000000c3 SET @00000031 #8888888888888888
000000d0 FIN
Machine Code (Test 4):
----------------------
010000000000000000000000000100000000ffffffffffffffff0100000000111111111111111101010000002222222222222222
011000000000000000000000000110000000ffffffffffffffff0110000000333333333333333301110000004444444444444444
012000000000000000000000000120000000ffffffffffffffff0120000000555555555555555501210000006666666666666666
013000000000000000000000000130000000ffffffffffffffff0130000000777777777777777701310000008888888888888888
28
Data Dump (Test 4):
-------------------
00000000 11 11 11 11 11 11 11 11 22 22 22 22 22 22 22 22
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 33 33 33 33 33 33 33 33 44 44 44 44 44 44 44 44
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 55 55 55 55 55 55 55 55 66 66 66 66 66 66 66 66
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 77 77 77 77 77 77 77 77 88 88 88 88 88 88 88 88
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 5):
-----------------------
00000000* SET @0000003f #1111111111111111
0000000d SET @00000040 #1111111111111111
0000001a FIN
Machine Code (Test 5):
----------------------
013f00000011111111111111110140000000111111111111111128
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 00 00 00 00 11 11 11 11 11 11 11 11
Assembly Code (Test 6):
-----------------------
00000000* SET @ffffffff #1111111111111111
0000000d FIN
Machine Code (Test 6):
----------------------
01ffffffff111111111111111128
Runtime Error (Test 6):
-----------------------
error: overflow