Test for AT instruction code 0x10 (PSH_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 address range.
Test 3 - Copying from address out of range.
Test 4 - Pushing out of range
Assembly Code (Test 1):
-----------------------
00000000* SET @00000000 #1111111100000000
0000000d PSH $00000000
00000012 PSH $00000000
00000017 PSH $00000000
0000001c PSH $00000000
00000021 PSH $00000000
00000026 PSH $00000000
0000002b PSH $00000000
00000030 PSH $00000000
00000035 PSH $00000000
0000003a PSH $00000000
0000003f PSH $00000000
00000044 PSH $00000000
00000049 PSH $00000000
0000004e PSH $00000000
00000053 PSH $00000000
00000058 PSH $00000000
0000005d PSH $00000000
00000062 PSH $00000000
00000067 PSH $00000000
0000006c PSH $00000000
00000071 PSH $00000000
00000076 PSH $00000000
0000007b PSH $00000000
00000080 PSH $00000000
00000085 PSH $00000000
0000008a PSH $00000000
0000008f PSH $00000000
00000094 PSH $00000000
00000099 PSH $00000000
0000009e PSH $00000000
000000a3 FIN
Machine Code (Test 1):
----------------------
01000000000000000011111111100000000010000000001000000000100000000010000000001000000000100000000010000000
00100000000010000000001000000000100000000010000000001000000000100000000010000000001000000000100000000010
00000000100000000010000000001000000000100000000010000000001000000000100000000010000000001000000000100000
0000100000000028
Stacks Dump (Test 1):
-------------------
00000200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000210 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000230 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000250 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000270 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000290 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000002a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000002b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000002c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000002d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000002e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000002f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000310 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
00000320 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
00000330 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
00000340 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
00000350 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
00000360 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
00000370 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
00000380 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
00000390 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
000003a0 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
000003b0 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
000003c0 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
000003d0 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
000003e0 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
000003f0 00 00 00 00 11 11 11 11 00 00 00 00 11 11 11 11
Assembly Code (Test 2):
-----------------------
00000000* SET @00000000 #1111111100000000
0000000d PSH $00000000
00000012 SET @00000008 #1211111100000000
0000001f PSH $00000008
00000024 SET @00000018 #1311111100000000
00000031 PSH $00000018
00000036 SET @00000028 #1411111100000000
00000043 PSH $00000028
00000048 SET @00000038 #1511111100000000
00000055 PSH $00000038
0000005a SET @0000003a #1611111100000000
00000067 PSH $0000003a
0000006c SET @0000003c #1711111100000000
00000079 PSH $0000003c
0000007e SET @0000003e #1811111100000000
0000008b PSH $0000003e
00000090 SET @00000001 #1911111100000000
0000009d PSH $00000001
000000a2 SET @00000009 #1a11111100000000
000000af PSH $00000009
000000b4 SET @00000019 #1b11111100000000
000000c1 PSH $00000019
000000c6 SET @00000029 #1c11111100000000
000000d3 PSH $00000029
000000d8 SET @00000039 #1d11111100000000
000000e5 PSH $00000039
000000ea SET @0000003d #1e11111100000000
000000f7 PSH $0000003d
000000fc SET @0000003e #1f11111100000000
00000109 PSH $0000003e
0000010e FIN
Machine Code (Test 2):
----------------------
01000000000000000011111111100000000001080000000000000011111112100800000001180000000000000011111113101800
0000012800000000000000111111141028000000013800000000000000111111151038000000013a000000000000001111111610
3a000000013c0000000000000011111117103c000000013e0000000000000011111118103e000000010100000000000000111111
1910010000000109000000000000001111111a10090000000119000000000000001111111b101900000001290000000000000011
11111c10290000000139000000000000001111111d1039000000013d000000000000001111111e103d000000013e000000000000
001111111f103e00000028
Stacks Dump (Test 2):
-------------------
00000200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000210 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000230 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000250 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000270 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000290 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000002a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000002b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000002c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000002d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000002e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000002f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000310 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000330 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000350 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000370 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00000380 00 00 00 00 00 00 00 00 00 00 00 00 11 11 11 1f
00000390 00 00 00 00 11 11 11 1e 00 00 00 00 11 11 11 1d
000003a0 00 00 00 00 11 11 11 1c 00 00 00 00 11 11 11 1b
000003b0 00 00 00 00 11 11 11 1a 00 00 00 00 11 11 11 19
000003c0 00 00 00 00 11 11 11 18 00 00 00 00 11 11 11 17
000003d0 00 00 00 00 11 11 11 16 00 00 00 00 11 11 11 15
000003e0 00 00 00 00 11 11 11 14 00 00 00 00 11 11 11 13
000003f0 00 00 00 00 11 11 11 12 00 00 00 00 11 11 11 11
Assembly Code (Test 3):
-----------------------
00000000* PSH @00000040
0000000d FIN
Machine Code (Test 3):
-----------------------
104000000028
Runtime Error (Test 3):
-----------------------
error: overflow
Assembly Code (Test 4):
-----------------------
00000000* SET @00000000 #1111111100000000
0000000d PSH $00000000
00000012 PSH $00000000
00000017 PSH $00000000
0000001c PSH $00000000
00000021 PSH $00000000
00000026 PSH $00000000
0000002b PSH $00000000
00000030 PSH $00000000
00000035 PSH $00000000
0000003a PSH $00000000
0000003f PSH $00000000
00000044 PSH $00000000
00000049 PSH $00000000
0000004e PSH $00000000
00000053 PSH $00000000
00000058 PSH $00000000
0000005d PSH $00000000
00000062 PSH $00000000
00000067 PSH $00000000
0000006c PSH $00000000
00000071 PSH $00000000
00000076 PSH $00000000
0000007b PSH $00000000
00000080 PSH $00000000
00000085 PSH $00000000
0000008a PSH $00000000
0000008f PSH $00000000
00000094 PSH $00000000
00000099 PSH $00000000
0000009e PSH $00000000
000000a3 PSH $00000000
000000a8 PSH $00000000
000000ad PSH $00000000
000000b2 FIN
Machine Code (Test 4):
-----------------------
01000000000000000011111111100000000010000000001000000000100000000010000000001000000000100000000010000000
00100000000010000000001000000000100000000010000000001000000000100000000010000000001000000000100000000010
00000000100000000010000000001000000000100000000010000000001000000000100000000010000000001000000000100000
0000100000000010000000001000000000100000000028
Runtime Error (Test 4):
-----------------------
error: overflow