Test for AT instruction code 0x1b (BZR_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 - Jump forwards and backwords.
Test 3 - Jump to out range address
Test 4 - Jump to not valid address point
Test 5 - infinite loop
Assembly Code (Test 1):
-----------------------
00000000* SET @00000000 #0000000000000000
0000000d BZR $00000000 :00000021
00000013 SET @00000000 #1111111111111111
00000020 FIN
00000021 INC @00000000
00000026 BZR $00000000 :00000013
0000002c FIN
Machine Code (Test 1):
----------------------
010000000000000000000000001b0000000014010000000011111111111111112804000000001b00000000ed28
Data Dump (Test 1):
-------------------
00000000 01 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 00 00 00 00 00 00 00 00
Assembly Code (Test 2):
-----------------------
00000000* SET @00000000 #0000000000000000
0000000d BZR $00000000 :00000021
00000013 SET @00000000 #1111111111111111
00000020 FIN
00000021 INC @00000000
00000026 DEC @00000000
0000002b BZR $00000000 :00000013
00000031 FIN
Machine Code (Test 2):
----------------------
010000000000000000000000001b00000000140100000000111111111111111128040000000005000000001b00000000e828
Data Dump (Test 2):
-------------------
00000000 11 11 11 11 11 11 11 11 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 00 00 00 00 00 00 00 00
Assembly Code (Test 3):
-----------------------
00000000* SET @00000000 #0000000000000000
0000000d BZR $00000000 :00000021
00000013 SET @00000000 #1111111111111111
00000020 FIN
00000021 INC @0000003f
00000026 DEC @0000003f
0000002b BZR $0000003f :0000004b
00000031 FIN
Machine Code (Test 3):
----------------------
010000000000000000000000001b00000000140100000000111111111111111128043f000000053f0000001b3f0000002028
Runtime Error (Test 3):
-----------------------
error: invalid code
Assembly Code (Test 4):
-----------------------
00000000* SET @00000000 #0000000000000000
0000000d BZR $00000000, :00000021
00000013 SET @00000000 #1111111111111111
00000020 FIN
00000021 INC @0000003f
00000026 DEC @0000003f
0000002b BZR $0000003f, :00000024
00000031 FIN
Machine Code (Test 4):
----------------------
010000000000000000000000001b00000000140100000000111111111111111128043f000000053f0000001b3f000000f928
Runtime Error (Test 4):
-----------------------
error: invalid code
Assembly Code (Test 5):
-----------------------
00000000* SET @00000000 #0000000000000000
0000000d BZR $00000000 :00000021
00000013 SET @00000000 #1111111111111111
00000020 FIN
00000021 INC @0000001f
00000026 DEC @0000001f
0000002b BZR $0000001f :00000021
00000031 FIN
Machine Code (Test 5):
----------------------
010000000000000000000000001b00000000140100000000111111111111111128041f000000051f0000001b1f000000f628
Runtime Result (Test 5):
-----------------------
stopped - zero balance