// +++ file: "test.asm" +++ // K1-16/16 microcode // 2010-04-06 // 2015-12-07 // FAILURES 2010-04-06: // 0MHz: ld sr,sr,cy: oft // 2MHz: all tests passed // 4MHz: all tests passed // 8MHz: ld sr,sr,cy: 4 // 16MHz: Z-Test: 9 // ERROR: mca: Redefinition lokaler Label wird nicht bemerkt! // ================================================================ // Options and Symbolic Names: // ================================================================ // Welcher Quartz-Vorteiler soll maximal eingestellt werden? // 2 -> xtal/2 = 16 MHz // 4 -> xtal/4 = 8 MHz // 8 -> xtal/8 = 4 MHz // 16 -> xtal/16 = 2 MHz // xtal: = 32000 // kHz clock_predivider: = 2 // 2/4/8/16: Der Assembler kennt 'clock_predivider' und ersetzt ggf. "set clock2" und "4". //clock = xtal/clock_predivider // FYI fast_ival_z_test: = 0 // does "tst,nnnn : z" work? (req. 74AC151 on SSW) // note: "tst (areg)" does not work, even with 74AC151! #include "defs.asm" // +++ file: "defs.asm" +++ /* Copyright (c) Günter Woigk 2009 - 2015 mailto:kio@little-bat.de This file is free software This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: ? Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. ? Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ // K1-16/16 microcode // 2015-12-03 // ============================================================================== // Symbolic Names: // dis in out in out // ccc:E:oooooo:aaa:aaa:dddd:dddd // Data Bus: dreg cmd.clk = ___:0:______:___:___:0000:???? // cmd input (r/-) dreg ival.oe = ___:0:______:___:___:____:0000 // ival output (-/w) dreg mem.clk = ___:0:______:___:???:0001:???? // internal ram dreg mem.oe = ___:0:______:___:???:____:0001 // internal ram dreg io.clk = ___:0:____??:___:___:0010:???? // k1-bus i/o dreg io.oe = ___:0:____??:___:___:____:0010 // k1-bus i/o dreg dnop.clk = ___:0:______:___:___:0011:???? // dummy target (-/w) dreg axd.oe = ___:0:______:___:___:____:0011 // a-to-d port (r/-) dreg alu.clk = ___:0:__?_??:___:___:1000:???? // top of stack = tos = akku = alu dreg alu.oe = ___:0:______:___:___:____:1000 // top of stack = tos = akku = alu dreg sr.clk = ___:0:___?__:___:___:1100:???? // shift right // dreg sr_cy.clk = ___:0:___1__:___:___:1100:???? // shift right dreg sr.oe = ___:0:______:___:___:____:1100 // shift right dreg sl.clk = ___:0:___?__:___:___:1101:???? // shift left // dreg sl_cy.clk = ___:0:___1__:___:___:1101:???? // shift left dreg sl.oe = ___:0:______:___:___:____:1101 // shift left dreg d2ar.clk = ___:0:______:___:___:1111:???? // d-to-a register (-/w) dreg cmd_lo.oe = ___:0:______:___:___:____:1111 // cmd.lo register (r/-) dreg d0 = 4 // gp dreg register dreg d1 = 5 // "" dreg d2 = 6 // "" dreg d3 = 7 // scratch dreg dtmp = d3 // scratch dreg dxxx1 = 9 // unused dreg swap = 10 // swap hibyte <-> lobyte dreg dxxx2 = 11 // unused dreg msbit = 14 // 16-to-4 encoder // Address Bus: areg dxa.oe = ___:0:______:___:001:____:____ // d-to-a port areg anop.clk = ___:0:______:001:???:____:____ // dummy target areg d2ar.oe = ___:0:______:___:111:____:____ // d-to-a register (r/-) areg ioaddr.clk = ___:0:______:111:???:____:____ // k1-bus i/o address (w/-) areg ip = 0 // instruction pointer areg sp = 2 // stack pointer areg a0 = 3 // gp address register areg a1 = 4 // "" areg hp = 5 // heap pointer areg atmp = 6 // scratch // Option Lines: opt opt0 = ___:0:_____?:___:___:____:____ opt opt1 = ___:0:____?_:___:___:____:____ opt opt2 = ___:0:___?__:___:___:____:____ opt opt3 = ___:0:__?___:___:___:____:____ opt opt4 = ___:0:_?____:___:___:____:____ opt opt5 = ___:0:?_____:___:___:____:____ opt a_bits = ___:0:??____:___:___:____:____ opt d_bits = ___:0:__????:___:___:____:____ // for ALU: opt alu_fu = ___:0:____??:___:___:____:____ opt alu_cy = ___:0:___?__:___:___:____:____ // alu carry input opt alu_cpl = ___:0:__?___:___:___:____:____ // alu complement input opt cy = ___:0:___1__:___:___:____:____ opt nc = ___:0:___0__:___:___:____:____ opt add = ___:0:__0000:___:___:____:____ opt add_cy = ___:0:__0100:___:___:____:____ opt xor = ___:0:__0_01:___:___:____:____ opt and = ___:0:__0010:___:___:____:____ opt or = ___:0:__0110:___:___:____:____ opt load = ___:0:__0_11:___:___:____:____ opt sub = ___:0:__1100:___:___:____:____ opt sub_nc = ___:0:__1000:___:___:____:____ opt xor_cpl = ___:0:__1_01:___:___:____:____ opt and_cpl = ___:0:__1010:___:___:____:____ opt or_cpl = ___:0:__1110:___:___:____:____ opt load_cpl = ___:0:__1_11:___:___:____:____ // for Address Register: opt a_cpl = ___:0:_?____:___:___:____:____ opt a_dis = ___:0:?_____:___:___:____:____ opt add0 = ___:0:00____:___:001:____:____ // 001 = dxa.out opt sub2 = ___:0:01____:___:001:____:____ // 001 = dxa.out opt add1 = ___:0:00____:___:???:____:____ // ??? = !dxa.out opt sub1 = ___:0:01____:___:???:____:____ // ??? = !dxa.out opt adddis = ___:0:10____:___:???:____:____ // + cmd_lo opt subdis = ___:0:11____:___:???:____:____ // + cmd_lo - 256 // for I/O opt io_bits = ___:0:____??:___:___:____:____ opt i2c_clk = ___:0:___?01:___:___:____:0010 // 0010 = 2 = io.oe opt i2c_data = ___:0:__?_01:___:___:____:0010 // 0010 = 2 = io.oe // output: dreg io_data.clk = ___:0:____00:___:___:0010:???? // 0010 = 2 = io.clk dreg io_select.clk = ___:0:____01:___:___:0010:???? // 0010 = 2 = io.clk dreg io_ie_mask.clk = ___:0:____10:___:___:0010:???? // 0010 = 2 = io.clk dreg io_dummy.clk = ___:0:____11:___:___:0010:???? // 0010 = 2 = io.clk // input: dreg io_dummy.oe = ___:0:____00:___:___:____:0010 // 0010 = 2 = io.oe dreg io_i2c.oe = ___:0:__??01:___:___:____:0010 // 0010 = 2 = io.oe dreg io_irpt.oe = ___:0:____10:___:___:____:0010 // 0010 = 2 = io.oe dreg io_data.oe = ___:0:____11:___:___:____:0010 // 0010 = 2 = io.oe // Misc. Options: opt cmden = ___:0:______:___:___:____:____ opt cmddis = ___:1:___=_:________________ opt value = ___:1:___=_:???????????????? opt abort = ___:1:111=1:1111111111111111 // emulator only; reset on real machine // DIV_FF Names: "___:1:xxx=?:________________" opt clock2 = ___:1:000=?:________________ // 000 0 => XTAL/2 opt clock4 = ___:1:001=?:________________ // 001 0 => XTAL/4 opt halt = ___:1:010=?:________________ opt ei = ___:1:011=?:________________ opt led_grn = ___:1:100=?:________________ opt led_yel = ___:1:101=?:________________ opt led_red = ___:1:110=?:________________ opt reset = ___:1:111=?:________________ // Conditions: "000:_:______:___:___:____:____" cond 0 = 0 // (stay in) code plane 0 cond 1 = 1 // (stay in) code plane 1 cond cy = 2 // fork dep. on ALU carry flag cond z = 3 // fork dep. on ALU zero flag cond ovfl = 4 // fork dep. on ALU signed overflow flag cond rnd = 5 // fork dep. on RND cond bit0 = 6 // fork dep. on data bus bit 0 cond bit15 = 7 // fork dep. on data bus bit 15 // --- file: "defs.asm" --- #include "macros.asm" // +++ file: "macros.asm" +++ // flags.asm: instr test_z1(VALUE) ld d1,VALUE // * test_z1 tst d0 // * test_z1 TRAP !z // * test_z1 tst d1 // * test_z1 TRAP z // * test_z1 end // alu.asm: instr test_addn(V1,V2) ld d1,V1 // * test_addn ld d2,V2 // * test_addn xor alu // * test_addn add d1 // * test_addn add_c d2 // * test_addn equ V1+V2+1 : z // * test_addn jp 0,error // * test_addn sub d2 // * test_addn sub_nc d1 // * test_addn TRAP !z // * test_addn add_c d1 // * test_addn add d2 // * test_addn equ V1+V2+1 : z // * test_addn TRAP 0 // * test_addn sub_nc d2 // * test_addn sub d1 // * test_addn TRAP !z // * test_addn end // dregs.asm: instr test_dreg(DR) ld DR,0 // * test_dreg tst DR // * test_dreg TRAP !z // * test_dreg ld DR,$ffff // * test_dreg tstn DR // * test_dreg TRAP !z // * test_dreg ld alu,$aa55 // * test_dreg ld DR,alu // * test_dreg equ DR // * test_dreg TRAP !z // * test_dreg ld alu,$55aa // * test_dreg ld DR,alu // * test_dreg equ DR // * test_dreg TRAP !z // * test_dreg end instr test_msbit(BIT) ld msbit,~(1<>(15-BIT)) // * test_msbit ld alu,BIT // * test_msbit equ msbit // * test_msbit TRAP !z // * test_msbit end // aregs.asm: instr testIncrDecrA(AR,N) ld AR,N-1 // * testIncrDecrA ld AR,AR+1 // * testIncrDecrA ld alu,N // * testIncrDecrA equ AR // * testIncrDecrA TRAP !z // * testIncrDecrA ld AR,AR-1 // * testIncrDecrA ld alu,N-1 // * testIncrDecrA equ AR // * testIncrDecrA TRAP !z // * testIncrDecrA end instr testAreg(AR) ld AR,0 // * testAreg tst AR // * testAreg TRAP !z // * testAreg ld AR,$ffff // * testAreg tstn AR // * testAreg TRAP !z // * testAreg ld alu,$55aa // * testAreg ld AR,alu // * testAreg equ AR // * testAreg TRAP !z // * testAreg ld alu,$aa55 // * testAreg ld AR,alu // * testAreg equ AR // * testAreg TRAP !z // * testAreg testIncrDecrA AR,1 // * testAreg testIncrDecrA AR,2 // * testAreg testIncrDecrA AR,4 // * testAreg testIncrDecrA AR,8 // * testAreg testIncrDecrA AR,$10 // * testAreg testIncrDecrA AR,$20 // * testAreg testIncrDecrA AR,$40 // * testAreg testIncrDecrA AR,$80 // * testAreg testIncrDecrA AR,$100 // * testAreg testIncrDecrA AR,$200 // * testAreg testIncrDecrA AR,$400 // * testAreg testIncrDecrA AR,$800 // * testAreg testIncrDecrA AR,$1000 // * testAreg testIncrDecrA AR,$2000 // * testAreg testIncrDecrA AR,$4000 // * testAreg testIncrDecrA AR,$8000 // * testAreg testIncrDecrA AR,0 // * testAreg end // --- file: "macros.asm" --- //#include "millicode.asm" //#include "millicode_int.asm" // ======================================================================== // Global Data // start at $0000 // ======================================================================= // Interrupts: int_vector data 16 // interrupt vectors int_mask data 1 // enable mask for installed handlers // Memory Management: gdata_ptr data 1 // allocation pointer for zeropage global data gcode_ptr data 1 // start of space for new words hp_base data 1 // bottom of data heap sp_base data 1 // top of return stack mem_data_start data 1 // Start of dynamic data blocks mem_data_end data 1 // Start of free memory between data and pointers mem_ptr_start data 1 // Start of global data pointers mem_free_ptr data 1 // Pointer to linked list of free global pointers mem_end data 1 mem_ptr_end := mem_end // End of local data pointers // Misc: opcode_Ret data 1 // opcode Ret: return_to_millicode // ====================================================================== // error exit // ====================================================================== // LED Codes: (RYG = red, yellow, green) // // --- after start // --G after first pass OK // --- after second pass OK => blinks with ~ 0.5 ? 1Hz // R-- error: a test failed :error 0:$3FF8 0:data:clk/4=0:$0000 clr clock4 0:$3FF9 0:data:clk/2=0:$0000 clr clock2 0:$3FFA 0:data:led_r=1:$0000 set led_red 0:$3FFB 0:data:led_y=0:$0000 clr led_yel 0:$3FFC 0:data:led_g=0:$0000 clr led_grn 0:$3FFD 0:000011:A1=A6:D3=D3 l1 tst atmp // show error address on dbus 0:$3FFE 0:000011:A1=A6:D0=D0 jp l1 0:$3FFF d15:data:reset=0:$7FFD instr ERROR ld atmp,$ // * ERROR jp error // * ERROR end instr TRAP(COND) if COND // * TRAP ld atmp,$ // * TRAP jp error // * TRAP then // * TRAP end // ================================================================ // RESET // // Reset entry condition: // ? $3FFF:1 with 'cmddis=1' and 'cond=0' (for next instr) forced by INIT // ? $0000:0 is executed // ================================================================ : reset_7fff = $3FFF:1 1:$3FFF 1:data:reset=0:$0000 clr reset // 'nop' : reset = $0000:0 0:$0000 0:data: halt=0:$0000 clr halt 0:$0001 0:data: ei=0:$0000 di 0:$0002 0:data:clk/4=1:$0000 set clock4 // set full speed ? 0:$0003 0:data:clk/2=1:$0000 set clock2 // ? except if xtal/clock > 2 0:$0004 0:data:led_r=0:$0000 clr led_red // LEDs indicate: started 0:$0005 0:data:led_y=0:$0000 clr led_yel 0:$0006 0:data:led_g=0:$0000 clr led_grn // ====================================== // CPU & RAM Test // ====================================== start: #include "cmd.asm" // +++ file: "cmd.asm" +++ // ====================================== // CPU Test as in real mc rom: // ====================================== 0:$0007 0:000011:A1=A0:D8=D0 ld alu,1 0:$0008 0:data:reset=0:$0001 do 0:$0009 0:000011:A1=A0:D4=D8 ld d0,alu 0:$000A 0:000011:A3=A1:D3=D4 ld a0,d0 0:$000B 0:000011:A1=A3:D5=D3 ld d1,a0 0:$000C 0:000011:A4=A1:D3=D5 ld a1,d1 0:$000D 0:000011:A1=A4:D6=D3 ld d2,a1 0:$000E 0:000011:A6=A1:D3=D6 ld atmp,d2 0:$000F 0:000011:A1=A6:D7=D3 ld dtmp,atmp 0:$0010 0:000011:A5=A1:D3=D7 ld hp,dtmp 0:$0011 0:000111:A1=A5:DD=D3 ld sl,hp,cy 0:$0012 d15:000011:A2=A1:D3=DD ld sp,sl : bit15 if 0 0:$0013 0:000011:A1=A2:DC=D3 ld sr,sp,nc else 1:$0013 0:000111:A1=A2:DC=D3 ld sr,sp,cy then 0:$0014 0:000011:A0=A1:D3=DC ld ip,sr 0:$0015 0:000011:A1=A0:DA=D3 ld swap,ip 0:$0016 0:000011:A1=A0:DA=DA ld swap,swap 0:$0017 0:000011:A1=A0:DF=DA ld d2ar,swap 0:$0018 0:000001:A1=A7:D3=D3 equ d2ar TRAP !z 0:$0019 z:data:reset=0:$0000 if !z // * TRAP 0:$001A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$001B 0:data:reset=0:$401A 0:$001C 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$001D d15:data:reset=0:$7FF8 1:$001A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$001B d15:data:reset=0:$401E 0:$001E 0:000000:A1=A7:D8=D8 add alu // nodelay 0:$001F z:data:reset=0:$0000 until z 0:$0020 0:000011:A1=A0:D0=D0 0:$0021 d15:data:reset=0:$4009 // ====================================== // CMD.clk 1:$0020 1:000011:A6=A1:D3=D0 ld atmp,$ // error pos 1:$0021 1:data:reset=0:$C020 1:$0022 0:000011:A1=A0:D3=D8 nop : 0 if 0 0:$0023 0:000011:A1=A7:D0=D0 jp cc1 // dest plane: cond 0 hard coded 0:$0024 d15:data:reset=0:$4027 0:$0025 0:000011:A1=A0:D0=D0 jp error 0:$0026 d15:data:reset=0:$7FF8 0:$0027 0:000011:A1=A7:D0=D0 cc1 jp cc2 // dest plane: cond 1 hard coded 0:$0028 d15:data:reset=0:$C02B 0:$0029 0:000011:A1=A0:D0=D0 jp error 0:$002A d15:data:reset=0:$7FF8 else 1:$0023 1:000011:A1=A0:D0=D0 jp error 1:$0024 d15:data:reset=0:$7FF8 1:$0025 1:000011:A1=A7:D0=D0 jp error 1:$0026 d15:data:reset=0:$7FF8 1:$0027 1:000011:A1=A7:D0=D0 jp error 1:$0028 d15:data:reset=0:$7FF8 1:$0029 1:000011:A1=A7:D0=D0 jp error 1:$002A d15:data:reset=0:$7FF8 then if 1 1:$002B 1:000011:A1=A7:D0=D0 cc2 jp cc3 // dest plane: cond 0 hard coded 1:$002C d15:data:reset=0:$402F 1:$002D 1:000011:A1=A0:D0=D0 jp error 1:$002E d15:data:reset=0:$7FF8 else 0:$002B 0:000011:A1=A7:D0=D0 jp error 0:$002C d15:data:reset=0:$7FF8 0:$002D 0:000011:A1=A7:D0=D0 jp error 0:$002E d15:data:reset=0:$7FF8 then if 0 0:$002F 0:000011:A1=A7:D4=D0 cc3 ld d0,cc4 0:$0030 0:data:reset=0:$4035 0:$0031 0:000011:A1=A0:D0=D4 jp d0 // dest plane: cond bit15 0:$0032 d15:data:reset=0:$0000 0:$0033 0:000011:A1=A0:D0=D0 jp error 0:$0034 d15:data:reset=0:$7FF8 0:$0035 0:000011:A1=A7:D4=D0 cc4 ld d0,cc5 0:$0036 0:data:reset=0:$C03B 0:$0037 0:000011:A1=A0:D0=D4 jp d0 // dest plane: cond bit15 0:$0038 d15:data:reset=0:$0000 0:$0039 0:000011:A1=A0:D0=D0 jp error 0:$003A d15:data:reset=0:$7FF8 else 1:$002F 1:000011:A1=A7:D0=D0 jp error 1:$0030 d15:data:reset=0:$7FF8 1:$0031 1:000011:A1=A7:D0=D0 jp error 1:$0032 d15:data:reset=0:$7FF8 1:$0033 1:000011:A1=A7:D0=D0 jp error 1:$0034 d15:data:reset=0:$7FF8 1:$0035 1:000011:A1=A7:D0=D0 jp error 1:$0036 d15:data:reset=0:$7FF8 1:$0037 1:000011:A1=A7:D0=D0 jp error 1:$0038 d15:data:reset=0:$7FF8 1:$0039 1:000011:A1=A7:D0=D0 jp error 1:$003A d15:data:reset=0:$7FF8 then if 1 1:$003B 1:000011:A1=A7:D4=D0 cc5 ld d0,cc6 1:$003C 1:data:reset=0:$C041 1:$003D 1:000011:A1=A0:D0=D4 jp d0 // dest plane: cond bit15 1:$003E d15:data:reset=0:$0000 1:$003F 1:000011:A1=A0:D0=D0 jp error 1:$0040 d15:data:reset=0:$7FF8 1:$0041 1:000011:A1=A7:D4=D0 cc6 ld d0,cc7 1:$0042 1:data:reset=0:$4047 1:$0043 1:000011:A1=A0:D0=D4 jp d0 // dest plane: cond bit15 1:$0044 d15:data:reset=0:$0000 1:$0045 1:000011:A1=A0:D0=D0 jp error 1:$0046 d15:data:reset=0:$7FF8 else 0:$003B 0:000011:A1=A7:D0=D0 jp error 0:$003C d15:data:reset=0:$7FF8 0:$003D 0:000011:A1=A7:D0=D0 jp error 0:$003E d15:data:reset=0:$7FF8 0:$003F 0:000011:A1=A7:D0=D0 jp error 0:$0040 d15:data:reset=0:$7FF8 0:$0041 0:000011:A1=A7:D0=D0 jp error 0:$0042 d15:data:reset=0:$7FF8 0:$0043 0:000011:A1=A7:D0=D0 jp error 0:$0044 d15:data:reset=0:$7FF8 0:$0045 0:000011:A1=A7:D0=D0 jp error 0:$0046 d15:data:reset=0:$7FF8 then if 0 0:$0047 0:000011:A1=A7:D0=D0 cc7 jp cc99 0:$0048 d15:data:reset=0:$C049 else 1:$0047 1:000011:A1=A7:D0=D0 jp error 1:$0048 d15:data:reset=0:$7FF8 then 1:$0049 1:000011:A1=A7:D3=D8 cc99 nop // --- file: "cmd.asm" --- #include "flags.asm" // +++ file: "flags.asm" +++ /* ---- Z ------------------------------------------------ tst :z ival kommt aus dem uC-Ram => funktioniert nur in 99% aller Fälle (vor Allem Bit $0008 und auch Bit $1000) => vielleicht nach Ersetzen des HC151 durch AC151 */ // instr test_z1(VALUE) // ld d1,VALUE // tst d0 // TRAP !z // tst d1 // TRAP z // end 1:$004A 1:000011:A1=A7:D4=D0 ld d0,0 1:$004B 1:data:reset=0:$0000 test_z1 1 1:$004C 1:000011:A1=A0:D5=D0 ld d1,1 // * test_z1 1:$004D 1:data:reset=0:$0001 1:$004E 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$004F z:data:reset=0:$0000 if !z // * TRAP 0:$0050 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0051 0:data:reset=0:$4050 0:$0052 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0053 d15:data:reset=0:$7FF8 1:$0050 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0051 d15:data:reset=0:$4054 0:$0054 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$0055 z:data:reset=0:$0000 if z // * TRAP 1:$0056 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0057 1:data:reset=0:$C056 1:$0058 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$0059 d15:data:reset=0:$7FF8 0:$0056 0:000011:A1=A0:D0=D0 then // * TRAP 0:$0057 d15:data:reset=0:$C05A test_z1 2 1:$005A 1:000011:A1=A7:D5=D0 ld d1,2 // * test_z1 1:$005B 1:data:reset=0:$0002 1:$005C 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$005D z:data:reset=0:$0000 if !z // * TRAP 0:$005E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$005F 0:data:reset=0:$405E 0:$0060 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0061 d15:data:reset=0:$7FF8 1:$005E 1:000011:A1=A0:D0=D0 then // * TRAP 1:$005F d15:data:reset=0:$4062 0:$0062 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$0063 z:data:reset=0:$0000 if z // * TRAP 1:$0064 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0065 1:data:reset=0:$C064 1:$0066 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$0067 d15:data:reset=0:$7FF8 0:$0064 0:000011:A1=A0:D0=D0 then // * TRAP 0:$0065 d15:data:reset=0:$C068 test_z1 4 1:$0068 1:000011:A1=A7:D5=D0 ld d1,4 // * test_z1 1:$0069 1:data:reset=0:$0004 1:$006A 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$006B z:data:reset=0:$0000 if !z // * TRAP 0:$006C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$006D 0:data:reset=0:$406C 0:$006E 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$006F d15:data:reset=0:$7FF8 1:$006C 1:000011:A1=A0:D0=D0 then // * TRAP 1:$006D d15:data:reset=0:$4070 0:$0070 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$0071 z:data:reset=0:$0000 if z // * TRAP 1:$0072 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0073 1:data:reset=0:$C072 1:$0074 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$0075 d15:data:reset=0:$7FF8 0:$0072 0:000011:A1=A0:D0=D0 then // * TRAP 0:$0073 d15:data:reset=0:$C076 test_z1 8 1:$0076 1:000011:A1=A7:D5=D0 ld d1,8 // * test_z1 1:$0077 1:data:reset=0:$0008 1:$0078 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$0079 z:data:reset=0:$0000 if !z // * TRAP 0:$007A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$007B 0:data:reset=0:$407A 0:$007C 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$007D d15:data:reset=0:$7FF8 1:$007A 1:000011:A1=A0:D0=D0 then // * TRAP 1:$007B d15:data:reset=0:$407E 0:$007E 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$007F z:data:reset=0:$0000 if z // * TRAP 1:$0080 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0081 1:data:reset=0:$C080 1:$0082 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$0083 d15:data:reset=0:$7FF8 0:$0080 0:000011:A1=A0:D0=D0 then // * TRAP 0:$0081 d15:data:reset=0:$C084 test_z1 $10 1:$0084 1:000011:A1=A7:D5=D0 ld d1,$10 // * test_z1 1:$0085 1:data:reset=0:$0010 1:$0086 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$0087 z:data:reset=0:$0000 if !z // * TRAP 0:$0088 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0089 0:data:reset=0:$4088 0:$008A 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$008B d15:data:reset=0:$7FF8 1:$0088 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0089 d15:data:reset=0:$408C 0:$008C 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$008D z:data:reset=0:$0000 if z // * TRAP 1:$008E 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$008F 1:data:reset=0:$C08E 1:$0090 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$0091 d15:data:reset=0:$7FF8 0:$008E 0:000011:A1=A0:D0=D0 then // * TRAP 0:$008F d15:data:reset=0:$C092 test_z1 $20 1:$0092 1:000011:A1=A7:D5=D0 ld d1,$20 // * test_z1 1:$0093 1:data:reset=0:$0020 1:$0094 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$0095 z:data:reset=0:$0000 if !z // * TRAP 0:$0096 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0097 0:data:reset=0:$4096 0:$0098 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0099 d15:data:reset=0:$7FF8 1:$0096 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0097 d15:data:reset=0:$409A 0:$009A 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$009B z:data:reset=0:$0000 if z // * TRAP 1:$009C 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$009D 1:data:reset=0:$C09C 1:$009E 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$009F d15:data:reset=0:$7FF8 0:$009C 0:000011:A1=A0:D0=D0 then // * TRAP 0:$009D d15:data:reset=0:$C0A0 test_z1 $40 1:$00A0 1:000011:A1=A7:D5=D0 ld d1,$40 // * test_z1 1:$00A1 1:data:reset=0:$0040 1:$00A2 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$00A3 z:data:reset=0:$0000 if !z // * TRAP 0:$00A4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$00A5 0:data:reset=0:$40A4 0:$00A6 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$00A7 d15:data:reset=0:$7FF8 1:$00A4 1:000011:A1=A0:D0=D0 then // * TRAP 1:$00A5 d15:data:reset=0:$40A8 0:$00A8 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$00A9 z:data:reset=0:$0000 if z // * TRAP 1:$00AA 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$00AB 1:data:reset=0:$C0AA 1:$00AC 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$00AD d15:data:reset=0:$7FF8 0:$00AA 0:000011:A1=A0:D0=D0 then // * TRAP 0:$00AB d15:data:reset=0:$C0AE test_z1 $80 1:$00AE 1:000011:A1=A7:D5=D0 ld d1,$80 // * test_z1 1:$00AF 1:data:reset=0:$0080 1:$00B0 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$00B1 z:data:reset=0:$0000 if !z // * TRAP 0:$00B2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$00B3 0:data:reset=0:$40B2 0:$00B4 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$00B5 d15:data:reset=0:$7FF8 1:$00B2 1:000011:A1=A0:D0=D0 then // * TRAP 1:$00B3 d15:data:reset=0:$40B6 0:$00B6 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$00B7 z:data:reset=0:$0000 if z // * TRAP 1:$00B8 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$00B9 1:data:reset=0:$C0B8 1:$00BA 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$00BB d15:data:reset=0:$7FF8 0:$00B8 0:000011:A1=A0:D0=D0 then // * TRAP 0:$00B9 d15:data:reset=0:$C0BC test_z1 $100 1:$00BC 1:000011:A1=A7:D5=D0 ld d1,$100 // * test_z1 1:$00BD 1:data:reset=0:$0100 1:$00BE 1:000011:A1=A1:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$00BF z:data:reset=0:$0000 if !z // * TRAP 0:$00C0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$00C1 0:data:reset=0:$40C0 0:$00C2 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$00C3 d15:data:reset=0:$7FF8 1:$00C0 1:000011:A1=A0:D0=D0 then // * TRAP 1:$00C1 d15:data:reset=0:$40C4 0:$00C4 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$00C5 z:data:reset=0:$0000 if z // * TRAP 1:$00C6 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$00C7 1:data:reset=0:$C0C6 1:$00C8 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$00C9 d15:data:reset=0:$7FF8 0:$00C6 0:000011:A1=A0:D0=D0 then // * TRAP 0:$00C7 d15:data:reset=0:$C0CA test_z1 $200 1:$00CA 1:000011:A1=A7:D5=D0 ld d1,$200 // * test_z1 1:$00CB 1:data:reset=0:$0200 1:$00CC 1:000011:A1=A2:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$00CD z:data:reset=0:$0000 if !z // * TRAP 0:$00CE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$00CF 0:data:reset=0:$40CE 0:$00D0 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$00D1 d15:data:reset=0:$7FF8 1:$00CE 1:000011:A1=A0:D0=D0 then // * TRAP 1:$00CF d15:data:reset=0:$40D2 0:$00D2 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$00D3 z:data:reset=0:$0000 if z // * TRAP 1:$00D4 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$00D5 1:data:reset=0:$C0D4 1:$00D6 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$00D7 d15:data:reset=0:$7FF8 0:$00D4 0:000011:A1=A0:D0=D0 then // * TRAP 0:$00D5 d15:data:reset=0:$C0D8 test_z1 $400 1:$00D8 1:000011:A1=A7:D5=D0 ld d1,$400 // * test_z1 1:$00D9 1:data:reset=0:$0400 1:$00DA 1:000011:A1=A4:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$00DB z:data:reset=0:$0000 if !z // * TRAP 0:$00DC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$00DD 0:data:reset=0:$40DC 0:$00DE 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$00DF d15:data:reset=0:$7FF8 1:$00DC 1:000011:A1=A0:D0=D0 then // * TRAP 1:$00DD d15:data:reset=0:$40E0 0:$00E0 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$00E1 z:data:reset=0:$0000 if z // * TRAP 1:$00E2 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$00E3 1:data:reset=0:$C0E2 1:$00E4 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$00E5 d15:data:reset=0:$7FF8 0:$00E2 0:000011:A1=A0:D0=D0 then // * TRAP 0:$00E3 d15:data:reset=0:$C0E6 test_z1 $800 1:$00E6 1:000011:A1=A7:D5=D0 ld d1,$800 // * test_z1 1:$00E7 1:data:reset=0:$0800 1:$00E8 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$00E9 z:data:reset=0:$0000 if !z // * TRAP 0:$00EA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$00EB 0:data:reset=0:$40EA 0:$00EC 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$00ED d15:data:reset=0:$7FF8 1:$00EA 1:000011:A1=A0:D0=D0 then // * TRAP 1:$00EB d15:data:reset=0:$40EE 0:$00EE 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$00EF z:data:reset=0:$0000 if z // * TRAP 1:$00F0 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$00F1 1:data:reset=0:$C0F0 1:$00F2 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$00F3 d15:data:reset=0:$7FF8 0:$00F0 0:000011:A1=A0:D0=D0 then // * TRAP 0:$00F1 d15:data:reset=0:$C0F4 test_z1 $1000 1:$00F4 1:000011:A1=A7:D5=D0 ld d1,$1000 // * test_z1 1:$00F5 1:data:reset=0:$1000 1:$00F6 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$00F7 z:data:reset=0:$0000 if !z // * TRAP 0:$00F8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$00F9 0:data:reset=0:$40F8 0:$00FA 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$00FB d15:data:reset=0:$7FF8 1:$00F8 1:000011:A1=A0:D0=D0 then // * TRAP 1:$00F9 d15:data:reset=0:$40FC 0:$00FC 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$00FD z:data:reset=0:$0000 if z // * TRAP 1:$00FE 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$00FF 1:data:reset=0:$C0FE 1:$0100 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$0101 d15:data:reset=0:$7FF8 0:$00FE 0:000011:A1=A0:D0=D0 then // * TRAP 0:$00FF d15:data:reset=0:$C102 test_z1 $2000 1:$0102 1:000011:A1=A7:D5=D0 ld d1,$2000 // * test_z1 1:$0103 1:data:reset=0:$2000 1:$0104 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$0105 z:data:reset=0:$0000 if !z // * TRAP 0:$0106 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0107 0:data:reset=0:$4106 0:$0108 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0109 d15:data:reset=0:$7FF8 1:$0106 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0107 d15:data:reset=0:$410A 0:$010A 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$010B z:data:reset=0:$0000 if z // * TRAP 1:$010C 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$010D 1:data:reset=0:$C10C 1:$010E 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$010F d15:data:reset=0:$7FF8 0:$010C 0:000011:A1=A0:D0=D0 then // * TRAP 0:$010D d15:data:reset=0:$C110 test_z1 $4000 1:$0110 1:000011:A1=A7:D5=D0 ld d1,$4000 // * test_z1 1:$0111 1:data:reset=0:$4000 1:$0112 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$0113 z:data:reset=0:$0000 if !z // * TRAP 0:$0114 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0115 0:data:reset=0:$4114 0:$0116 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0117 d15:data:reset=0:$7FF8 1:$0114 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0115 d15:data:reset=0:$4118 0:$0118 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$0119 z:data:reset=0:$0000 if z // * TRAP 1:$011A 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$011B 1:data:reset=0:$C11A 1:$011C 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$011D d15:data:reset=0:$7FF8 0:$011A 0:000011:A1=A0:D0=D0 then // * TRAP 0:$011B d15:data:reset=0:$C11E test_z1 $8000 1:$011E 1:000011:A1=A7:D5=D0 ld d1,$8000 // * test_z1 1:$011F 1:data:reset=0:$8000 1:$0120 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$0121 z:data:reset=0:$0000 if !z // * TRAP 0:$0122 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0123 0:data:reset=0:$4122 0:$0124 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0125 d15:data:reset=0:$7FF8 1:$0122 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0123 d15:data:reset=0:$4126 0:$0126 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$0127 z:data:reset=0:$0000 if z // * TRAP 1:$0128 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0129 1:data:reset=0:$C128 1:$012A 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$012B d15:data:reset=0:$7FF8 0:$0128 0:000011:A1=A0:D0=D0 then // * TRAP 0:$0129 d15:data:reset=0:$C12C 1:$012C 1:000011:A1=A7:D3=D8 nop // ---- bit0 ------------------------------------------------ 1:$012D 1:000011:A1=A7:D5=D0 ld d1,~0 1:$012E 1:data:reset=0:$FFFF 1:$012F 1:000011:A1=A7:D4=D0 ld d0,0 1:$0130 1:data:reset=0:$0000 1:$0131 1:000011:A1=A0:D3=D5 tst d1 1:$0132 1:000011:A1=A0:D3=D0 tst $0000 : bit0 1:$0133 d0:data:reset=0:$0000 TRAP 1 if 1 // * TRAP 1:$0134 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0135 1:data:reset=0:$C134 1:$0136 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$0137 d15:data:reset=0:$7FF8 0:$0134 0:000011:A1=A7:D0=D0 then // * TRAP 0:$0135 d15:data:reset=0:$C138 1:$0138 1:000011:A1=A7:D3=D4 tst d0 1:$0139 1:000011:A1=A7:D3=D0 tst $0001 : bit0 1:$013A d0:data:reset=0:$0001 TRAP 0 if 0 // * TRAP 0:$013B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$013C 0:data:reset=0:$413B 0:$013D 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$013E d15:data:reset=0:$7FF8 1:$013B 1:000011:A1=A0:D0=D0 then // * TRAP 1:$013C d15:data:reset=0:$413F 0:$013F 0:000011:A1=A7:D3=D5 tst d1 0:$0140 0:000011:A1=A7:D3=D0 tst $fffe : bit0 0:$0141 d0:data:reset=0:$FFFE TRAP 1 if 1 // * TRAP 1:$0142 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0143 1:data:reset=0:$C142 1:$0144 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$0145 d15:data:reset=0:$7FF8 0:$0142 0:000011:A1=A7:D0=D0 then // * TRAP 0:$0143 d15:data:reset=0:$C146 1:$0146 1:000011:A1=A7:D3=D4 tst d0 1:$0147 1:000011:A1=A7:D3=D0 tst $ffff : bit0 1:$0148 d0:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$0149 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$014A 0:data:reset=0:$4149 0:$014B 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$014C d15:data:reset=0:$7FF8 1:$0149 1:000011:A1=A7:D0=D0 then // * TRAP 1:$014A d15:data:reset=0:$414D // ---- bit15 ------------------------------------------------ 0:$014D 0:000011:A1=A7:D5=D0 ld d1,~0 0:$014E 0:data:reset=0:$FFFF 0:$014F 0:000011:A1=A7:D4=D0 ld d0,0 0:$0150 0:data:reset=0:$0000 0:$0151 0:000011:A1=A0:D3=D5 tst d1 0:$0152 0:000011:A1=A0:D3=D0 tst $0000 : bit15 0:$0153 d15:data:reset=0:$0000 TRAP 1 if 1 // * TRAP 1:$0154 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0155 1:data:reset=0:$C154 1:$0156 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$0157 d15:data:reset=0:$7FF8 0:$0154 0:000011:A1=A0:D0=D0 then // * TRAP 0:$0155 d15:data:reset=0:$C158 1:$0158 1:000011:A1=A7:D3=D4 tst d0 1:$0159 1:000011:A1=A7:D3=D0 tst $8000 : bit15 1:$015A d15:data:reset=0:$8000 TRAP 0 if 0 // * TRAP 0:$015B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$015C 0:data:reset=0:$415B 0:$015D 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$015E d15:data:reset=0:$7FF8 1:$015B 1:000011:A1=A0:D0=D0 then // * TRAP 1:$015C d15:data:reset=0:$415F 0:$015F 0:000011:A1=A7:D3=D5 tst d1 0:$0160 0:000011:A1=A7:D3=D0 tst $7fff : bit15 0:$0161 d15:data:reset=0:$7FFF TRAP 1 if 1 // * TRAP 1:$0162 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0163 1:data:reset=0:$C162 1:$0164 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$0165 d15:data:reset=0:$7FF8 0:$0162 0:000011:A1=A7:D0=D0 then // * TRAP 0:$0163 d15:data:reset=0:$C166 1:$0166 1:000011:A1=A7:D3=D4 tst d0 1:$0167 1:000011:A1=A7:D3=D0 tst $ffff : bit15 1:$0168 d15:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$0169 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$016A 0:data:reset=0:$4169 0:$016B 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$016C d15:data:reset=0:$7FF8 1:$0169 1:000011:A1=A7:D0=D0 then // * TRAP 1:$016A d15:data:reset=0:$416D // ---- cy ------------------------------------------------ // note: "add dreg" wird immer als doppel-opcode assembliert, wg. ripple-cy // "add ival" wird über dtmp realisiert, ist also auch ein "add dreg" // man kann deswegen nie "add $1234 : cy" schreiben, weil der cy-Test nicht auf dem ival // platziert werden kann, weil das add selbst eben ein "add dtmp" ist. 0:$016D 0:000011:A1=A7:D8=D0 ld alu,$7000 0:$016E 0:data:reset=0:$7000 0:$016F 0:000000:A1=A0:D7=D0 add $8000 // *dtmp* 0:$0170 0:data:reset=0:$8000 0:$0171 0:000000:A1=A0:D3=D7 0:$0172 0:000000:A1=A0:D8=D7 TRAP cy 0:$0173 cy:data:reset=0:$0000 if cy // * TRAP 1:$0174 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0175 1:data:reset=0:$C174 1:$0176 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$0177 d15:data:reset=0:$7FF8 0:$0174 0:000011:A1=A0:D0=D0 then // * TRAP 0:$0175 d15:data:reset=0:$C178 1:$0178 1:000000:A1=A7:D7=D0 add $0FFF // *dtmp* 1:$0179 1:data:reset=0:$0FFF 1:$017A 1:000000:A1=A7:D3=D7 1:$017B 1:000000:A1=A7:D8=D7 TRAP cy 1:$017C cy:data:reset=0:$0000 if cy // * TRAP 1:$017D 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$017E 1:data:reset=0:$C17D 1:$017F 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$0180 d15:data:reset=0:$7FF8 0:$017D 0:000011:A1=A7:D0=D0 then // * TRAP 0:$017E d15:data:reset=0:$C181 1:$0181 1:000000:A1=A7:D7=D0 add 1 // *dtmp* 1:$0182 1:data:reset=0:$0001 1:$0183 1:000000:A1=A0:D3=D7 1:$0184 1:000000:A1=A0:D8=D7 TRAP !cy 1:$0185 cy:data:reset=0:$0000 if !cy // * TRAP 0:$0186 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0187 0:data:reset=0:$4186 0:$0188 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0189 d15:data:reset=0:$7FF8 1:$0186 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0187 d15:data:reset=0:$418A 0:$018A 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$018B 0:data:reset=0:$FFFF 0:$018C 0:000000:A1=A7:D7=D0 add 0 // *dtmp* 0:$018D 0:data:reset=0:$0000 0:$018E 0:000000:A1=A0:D3=D7 0:$018F 0:000000:A1=A0:D8=D7 TRAP cy 0:$0190 cy:data:reset=0:$0000 if cy // * TRAP 1:$0191 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0192 1:data:reset=0:$C191 1:$0193 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$0194 d15:data:reset=0:$7FF8 0:$0191 0:000011:A1=A0:D0=D0 then // * TRAP 0:$0192 d15:data:reset=0:$C195 1:$0195 1:000000:A1=A7:D7=D0 add 1 // *dtmp* 1:$0196 1:data:reset=0:$0001 1:$0197 1:000000:A1=A0:D3=D7 1:$0198 1:000000:A1=A0:D8=D7 TRAP !cy 1:$0199 cy:data:reset=0:$0000 if !cy // * TRAP 0:$019A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$019B 0:data:reset=0:$419A 0:$019C 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$019D d15:data:reset=0:$7FF8 1:$019A 1:000011:A1=A0:D0=D0 then // * TRAP 1:$019B d15:data:reset=0:$419E 0:$019E 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$019F 0:data:reset=0:$FFFF 0:$01A0 0:000000:A1=A7:D8=D8 add alu // *dtmp* TRAP !cy 0:$01A1 cy:data:reset=0:$0000 if !cy // * TRAP 0:$01A2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$01A3 0:data:reset=0:$41A2 0:$01A4 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$01A5 d15:data:reset=0:$7FF8 1:$01A2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$01A3 d15:data:reset=0:$41A6 0:$01A6 0:000100:A1=A7:D7=D0 add_c 0 // *dtmp* 0:$01A7 0:data:reset=0:$0000 0:$01A8 0:000100:A1=A0:D3=D7 0:$01A9 0:000100:A1=A0:D8=D7 TRAP cy 0:$01AA cy:data:reset=0:$0000 if cy // * TRAP 1:$01AB 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$01AC 1:data:reset=0:$C1AB 1:$01AD 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$01AE d15:data:reset=0:$7FF8 0:$01AB 0:000011:A1=A0:D0=D0 then // * TRAP 0:$01AC d15:data:reset=0:$C1AF 1:$01AF 1:000100:A1=A7:D7=D0 add_c 0 // *dtmp* 1:$01B0 1:data:reset=0:$0000 1:$01B1 1:000100:A1=A0:D3=D7 1:$01B2 1:000100:A1=A0:D8=D7 TRAP !cy 1:$01B3 cy:data:reset=0:$0000 if !cy // * TRAP 0:$01B4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$01B5 0:data:reset=0:$41B4 0:$01B6 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$01B7 d15:data:reset=0:$7FF8 1:$01B4 1:000011:A1=A0:D0=D0 then // * TRAP 1:$01B5 d15:data:reset=0:$41B8 0:$01B8 0:000011:A1=A7:D8=D0 ld alu,$8000 0:$01B9 0:data:reset=0:$8000 0:$01BA 0:000000:A1=A0:D8=D8 add alu TRAP !cy 0:$01BB cy:data:reset=0:$0000 if !cy // * TRAP 0:$01BC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$01BD 0:data:reset=0:$41BC 0:$01BE 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$01BF d15:data:reset=0:$7FF8 1:$01BC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$01BD d15:data:reset=0:$41C0 0:$01C0 0:000100:A1=A7:D7=D0 add_c $ffff // *dtmp* 0:$01C1 0:data:reset=0:$FFFF 0:$01C2 0:000100:A1=A7:D3=D7 0:$01C3 0:000100:A1=A7:D8=D7 TRAP !cy 0:$01C4 cy:data:reset=0:$0000 if !cy // * TRAP 0:$01C5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$01C6 0:data:reset=0:$41C5 0:$01C7 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$01C8 d15:data:reset=0:$7FF8 1:$01C5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$01C6 d15:data:reset=0:$41C9 // ---- ovfl ------------------------------------------------ 0:$01C9 0:000011:A1=A7:D8=D0 ld alu,$5000 0:$01CA 0:data:reset=0:$5000 0:$01CB 0:000000:A1=A0:D7=D0 add $1000 // $5000 -> $6000 !ovfl *dtmp* 0:$01CC 0:data:reset=0:$1000 0:$01CD 0:000000:A1=A0:D3=D7 0:$01CE 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$01CF ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$01D0 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$01D1 1:data:reset=0:$C1D0 1:$01D2 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$01D3 d15:data:reset=0:$7FF8 0:$01D0 0:000011:A1=A0:D0=D0 then // * TRAP 0:$01D1 d15:data:reset=0:$C1D4 1:$01D4 1:000000:A1=A7:D7=D0 add $3000 // $6000 -> $9000 ovfl *dtmp* 1:$01D5 1:data:reset=0:$3000 1:$01D6 1:000000:A1=A0:D3=D7 1:$01D7 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$01D8 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$01D9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$01DA 0:data:reset=0:$41D9 0:$01DB 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$01DC d15:data:reset=0:$7FF8 1:$01D9 1:000011:A1=A0:D0=D0 then // * TRAP 1:$01DA d15:data:reset=0:$41DD 0:$01DD 0:000000:A1=A7:D7=D0 add $3000 // $9000 -> $C000 !ovfl *dtmp* 0:$01DE 0:data:reset=0:$3000 0:$01DF 0:000000:A1=A0:D3=D7 0:$01E0 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$01E1 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$01E2 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$01E3 1:data:reset=0:$C1E2 1:$01E4 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$01E5 d15:data:reset=0:$7FF8 0:$01E2 0:000011:A1=A0:D0=D0 then // * TRAP 0:$01E3 d15:data:reset=0:$C1E6 1:$01E6 1:000000:A1=A7:D7=D0 add $5000 // $C000 -> $1000 !ovfl *dtmp* 1:$01E7 1:data:reset=0:$5000 1:$01E8 1:000000:A1=A0:D3=D7 1:$01E9 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$01EA ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$01EB 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$01EC 1:data:reset=0:$C1EB 1:$01ED 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$01EE d15:data:reset=0:$7FF8 0:$01EB 0:000011:A1=A7:D0=D0 then // * TRAP 0:$01EC d15:data:reset=0:$C1EF 1:$01EF 1:000000:A1=A7:D7=D0 add $B000 // $1000 -> $C000 !ovfl *dtmp* 1:$01F0 1:data:reset=0:$B000 1:$01F1 1:000000:A1=A0:D3=D7 1:$01F2 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$01F3 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$01F4 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$01F5 1:data:reset=0:$C1F4 1:$01F6 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$01F7 d15:data:reset=0:$7FF8 0:$01F4 0:000011:A1=A7:D0=D0 then // * TRAP 0:$01F5 d15:data:reset=0:$C1F8 1:$01F8 1:000000:A1=A7:D7=D0 add $D000 // $C000 -> $9000 !ovfl *dtmp* 1:$01F9 1:data:reset=0:$D000 1:$01FA 1:000000:A1=A0:D3=D7 1:$01FB 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$01FC ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$01FD 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$01FE 1:data:reset=0:$C1FD 1:$01FF 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$0200 d15:data:reset=0:$7FF8 0:$01FD 0:000011:A1=A7:D0=D0 then // * TRAP 0:$01FE d15:data:reset=0:$C201 1:$0201 1:000000:A1=A7:D7=D0 add $D000 // $9000 -> $6000 ovfl *dtmp* 1:$0202 1:data:reset=0:$D000 1:$0203 1:000000:A1=A0:D3=D7 1:$0204 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$0205 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$0206 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0207 0:data:reset=0:$4206 0:$0208 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0209 d15:data:reset=0:$7FF8 1:$0206 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0207 d15:data:reset=0:$420A 0:$020A 0:000000:A1=A7:D7=D0 add $E000 // $6000 -> $4000 !ovfl *dtmp* 0:$020B 0:data:reset=0:$E000 0:$020C 0:000000:A1=A0:D3=D7 0:$020D 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$020E ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$020F 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0210 1:data:reset=0:$C20F 1:$0211 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$0212 d15:data:reset=0:$7FF8 0:$020F 0:000011:A1=A0:D0=D0 then // * TRAP 0:$0210 d15:data:reset=0:$C213 1:$0213 1:000011:A1=A7:D8=D0 ld alu,$7000 1:$0214 1:data:reset=0:$7000 1:$0215 1:000000:A1=A0:D7=D0 add $1000 // $8000 ovfl *dtmp* 1:$0216 1:data:reset=0:$1000 1:$0217 1:000000:A1=A0:D3=D7 1:$0218 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$0219 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$021A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$021B 0:data:reset=0:$421A 0:$021C 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$021D d15:data:reset=0:$7FF8 1:$021A 1:000011:A1=A0:D0=D0 then // * TRAP 1:$021B d15:data:reset=0:$421E 0:$021E 0:000000:A1=A7:D7=D0 add $7000 // $F000 !ovfl *dtmp* 0:$021F 0:data:reset=0:$7000 0:$0220 0:000000:A1=A0:D3=D7 0:$0221 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$0222 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$0223 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0224 1:data:reset=0:$C223 1:$0225 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$0226 d15:data:reset=0:$7FF8 0:$0223 0:000011:A1=A0:D0=D0 then // * TRAP 0:$0224 d15:data:reset=0:$C227 1:$0227 1:000000:A1=A7:D7=D0 add $7000 // $6000 !ovfl *dtmp* 1:$0228 1:data:reset=0:$7000 1:$0229 1:000000:A1=A0:D3=D7 1:$022A 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$022B ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$022C 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$022D 1:data:reset=0:$C22C 1:$022E 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$022F d15:data:reset=0:$7FF8 0:$022C 0:000011:A1=A7:D0=D0 then // * TRAP 0:$022D d15:data:reset=0:$C230 1:$0230 1:000100:A1=A7:D7=D0 add_c $1fff // $8000 ovfl *dtmp* 1:$0231 1:data:reset=0:$1FFF 1:$0232 1:000100:A1=A7:D3=D7 1:$0233 1:000100:A1=A7:D8=D7 TRAP !ovfl 1:$0234 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$0235 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0236 0:data:reset=0:$4235 0:$0237 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0238 d15:data:reset=0:$7FF8 1:$0235 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0236 d15:data:reset=0:$4239 0:$0239 0:000000:A1=A7:D7=D0 add -1 // $7FFF ovfl *dtmp* 0:$023A 0:data:reset=0:$FFFF 0:$023B 0:000000:A1=A7:D3=D7 0:$023C 0:000000:A1=A7:D8=D7 TRAP !ovfl 0:$023D ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$023E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$023F 0:data:reset=0:$423E 0:$0240 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0241 d15:data:reset=0:$7FF8 1:$023E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$023F d15:data:reset=0:$4242 0:$0242 0:000100:A1=A7:D7=D0 add_c $8000 // $0000 !ovfl *dtmp* 0:$0243 0:data:reset=0:$8000 0:$0244 0:000100:A1=A0:D3=D7 0:$0245 0:000100:A1=A0:D8=D7 TRAP ovfl 0:$0246 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$0247 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0248 1:data:reset=0:$C247 1:$0249 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$024A d15:data:reset=0:$7FF8 0:$0247 0:000011:A1=A0:D0=D0 then // * TRAP 0:$0248 d15:data:reset=0:$C24B 1:$024B 1:000011:A1=A7:D8=D0 ld alu,$7fff 1:$024C 1:data:reset=0:$7FFF 1:$024D 1:000000:A1=A7:D7=D0 add $8000 // *dtmp* 1:$024E 1:data:reset=0:$8000 1:$024F 1:000000:A1=A0:D3=D7 1:$0250 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$0251 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$0252 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0253 1:data:reset=0:$C252 1:$0254 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$0255 d15:data:reset=0:$7FF8 0:$0252 0:000011:A1=A7:D0=D0 then // * TRAP 0:$0253 d15:data:reset=0:$C256 1:$0256 1:000011:A1=A7:D8=D0 ld alu,$7fff 1:$0257 1:data:reset=0:$7FFF 1:$0258 1:000100:A1=A7:D7=D0 add_c $8000 // *dtmp* 1:$0259 1:data:reset=0:$8000 1:$025A 1:000100:A1=A0:D3=D7 1:$025B 1:000100:A1=A0:D8=D7 TRAP ovfl 1:$025C ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$025D 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$025E 1:data:reset=0:$C25D 1:$025F 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$0260 d15:data:reset=0:$7FF8 0:$025D 0:000011:A1=A7:D0=D0 then // * TRAP 0:$025E d15:data:reset=0:$C261 // --- file: "flags.asm" --- #include "alu.asm" // +++ file: "alu.asm" +++ // Test ALU // test alu register: 1:$0261 1:000011:A1=A7:D8=D0 ld alu,0 1:$0262 1:data:reset=0:$0000 1:$0263 1:000011:A1=A0:D3=D8 tst alu TRAP !z 1:$0264 z:data:reset=0:$0000 if !z // * TRAP 0:$0265 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0266 0:data:reset=0:$4265 0:$0267 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0268 d15:data:reset=0:$7FF8 1:$0265 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0266 d15:data:reset=0:$4269 0:$0269 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$026A 0:data:reset=0:$FFFF 0:$026B 0:000001:A1=A7:D3=D0 equ $ffff : z 0:$026C z:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$026D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$026E 0:data:reset=0:$426D 0:$026F 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0270 d15:data:reset=0:$7FF8 1:$026D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$026E d15:data:reset=0:$4271 0:$0271 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$0272 0:data:reset=0:$AA55 0:$0273 0:000001:A1=A2:D3=D0 equ $aa55 : z 0:$0274 z:data:reset=0:$AA55 TRAP 0 if 0 // * TRAP 0:$0275 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0276 0:data:reset=0:$4275 0:$0277 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0278 d15:data:reset=0:$7FF8 1:$0275 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0276 d15:data:reset=0:$4279 0:$0279 0:000011:A1=A7:D8=D0 ld alu,$55aa 0:$027A 0:data:reset=0:$55AA 0:$027B 0:000001:A1=A5:D3=D0 equ $55aa : z 0:$027C z:data:reset=0:$55AA TRAP 0 if 0 // * TRAP 0:$027D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$027E 0:data:reset=0:$427D 0:$027F 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0280 d15:data:reset=0:$7FF8 1:$027D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$027E d15:data:reset=0:$4281 // test cpl: 0:$0281 0:001011:A1=A7:D8=D0 nop,ival.oe,alu.clk,load_cpl // load alu,!0 0:$0282 0:data:reset=0:$0000 dw 0 0:$0283 0:000001:A1=A0:D3=D0 equ $ffff : z 0:$0284 z:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$0285 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0286 0:data:reset=0:$4285 0:$0287 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0288 d15:data:reset=0:$7FF8 1:$0285 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0286 d15:data:reset=0:$4289 0:$0289 0:001011:A1=A7:D8=D0 nop,ival.oe,alu.clk,load_cpl // load alu,!$ffff 0:$028A 0:data:reset=0:$FFFF dw $ffff 0:$028B 0:000001:A1=A7:D3=D0 equ $0000 : z 0:$028C z:data:reset=0:$0000 TRAP 0 if 0 // * TRAP 0:$028D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$028E 0:data:reset=0:$428D 0:$028F 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0290 d15:data:reset=0:$7FF8 1:$028D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$028E d15:data:reset=0:$4291 0:$0291 0:001011:A1=A7:D8=D0 nop,ival.oe,alu.clk,load_cpl // load alu,!xxxx 0:$0292 0:data:reset=0:$55AA dw $55aa 0:$0293 0:000001:A1=A5:D3=D0 equ $aa55 : z 0:$0294 z:data:reset=0:$AA55 TRAP 0 if 0 // * TRAP 0:$0295 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0296 0:data:reset=0:$4295 0:$0297 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0298 d15:data:reset=0:$7FF8 1:$0295 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0296 d15:data:reset=0:$4299 0:$0299 0:001011:A1=A7:D8=D0 nop,ival.oe,alu.clk,load_cpl // load alu,!xxxx 0:$029A 0:data:reset=0:$AA55 dw $aa55 0:$029B 0:000001:A1=A2:D3=D0 equ $55aa : z 0:$029C z:data:reset=0:$55AA TRAP 0 if 0 // * TRAP 0:$029D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$029E 0:data:reset=0:$429D 0:$029F 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$02A0 d15:data:reset=0:$7FF8 1:$029D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$029E d15:data:reset=0:$42A1 // test xor: 0:$02A1 0:000011:A1=A7:D8=D0 ld alu,$0000 // $0000 ^ $0000 0:$02A2 0:data:reset=0:$0000 0:$02A3 0:000001:A1=A0:D8=D0 xor $0000 : z 0:$02A4 z:data:reset=0:$0000 TRAP 0 if 0 // * TRAP 0:$02A5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$02A6 0:data:reset=0:$42A5 0:$02A7 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$02A8 d15:data:reset=0:$7FF8 1:$02A5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$02A6 d15:data:reset=0:$42A9 0:$02A9 0:000001:A1=A7:D3=D0 equ $0000 : z 0:$02AA z:data:reset=0:$0000 TRAP 0 if 0 // * TRAP 0:$02AB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$02AC 0:data:reset=0:$42AB 0:$02AD 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$02AE d15:data:reset=0:$7FF8 1:$02AB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$02AC d15:data:reset=0:$42AF 0:$02AF 0:000011:A1=A7:D8=D0 ld alu,$ffff // $ffff ^ $ffff 0:$02B0 0:data:reset=0:$FFFF 0:$02B1 0:000001:A1=A7:D8=D0 xor $ffff : z 0:$02B2 z:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$02B3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$02B4 0:data:reset=0:$42B3 0:$02B5 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$02B6 d15:data:reset=0:$7FF8 1:$02B3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$02B4 d15:data:reset=0:$42B7 0:$02B7 0:000001:A1=A7:D3=D0 equ $0000 : z 0:$02B8 z:data:reset=0:$0000 TRAP 0 if 0 // * TRAP 0:$02B9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$02BA 0:data:reset=0:$42B9 0:$02BB 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$02BC d15:data:reset=0:$7FF8 1:$02B9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$02BA d15:data:reset=0:$42BD 0:$02BD 0:000011:A1=A7:D8=D0 ld alu,$ffff // $ffff ^ $aa55 0:$02BE 0:data:reset=0:$FFFF 0:$02BF 0:000001:A1=A7:D8=D0 xor $aa55 0:$02C0 0:data:reset=0:$AA55 0:$02C1 0:000001:A1=A2:D3=D0 equ $55aa : z 0:$02C2 z:data:reset=0:$55AA TRAP 0 if 0 // * TRAP 0:$02C3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$02C4 0:data:reset=0:$42C3 0:$02C5 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$02C6 d15:data:reset=0:$7FF8 1:$02C3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$02C4 d15:data:reset=0:$42C7 0:$02C7 0:000011:A1=A7:D8=D0 ld alu,$55aa // $55aa ^ $ffff 0:$02C8 0:data:reset=0:$55AA 0:$02C9 0:000001:A1=A5:D8=D0 xor $ffff 0:$02CA 0:data:reset=0:$FFFF 0:$02CB 0:000001:A1=A7:D3=D0 equ $aa55 : z 0:$02CC z:data:reset=0:$AA55 TRAP 0 if 0 // * TRAP 0:$02CD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$02CE 0:data:reset=0:$42CD 0:$02CF 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$02D0 d15:data:reset=0:$7FF8 1:$02CD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$02CE d15:data:reset=0:$42D1 0:$02D1 0:000011:A1=A7:D8=D0 ld alu,$0000 // $0000 ^ $aa55 0:$02D2 0:data:reset=0:$0000 0:$02D3 0:000001:A1=A0:D8=D0 xor $aa55 0:$02D4 0:data:reset=0:$AA55 0:$02D5 0:000001:A1=A2:D3=D0 equ $aa55 : z 0:$02D6 z:data:reset=0:$AA55 TRAP 0 if 0 // * TRAP 0:$02D7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$02D8 0:data:reset=0:$42D7 0:$02D9 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$02DA d15:data:reset=0:$7FF8 1:$02D7 1:000011:A1=A7:D0=D0 then // * TRAP 1:$02D8 d15:data:reset=0:$42DB 0:$02DB 0:000011:A1=A7:D8=D0 ld alu,$55aa // $55aa ^ $0000 0:$02DC 0:data:reset=0:$55AA 0:$02DD 0:000001:A1=A5:D8=D0 xor $0000 0:$02DE 0:data:reset=0:$0000 0:$02DF 0:000001:A1=A0:D3=D0 equ $55aa : z 0:$02E0 z:data:reset=0:$55AA TRAP 0 if 0 // * TRAP 0:$02E1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$02E2 0:data:reset=0:$42E1 0:$02E3 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$02E4 d15:data:reset=0:$7FF8 1:$02E1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$02E2 d15:data:reset=0:$42E5 // test and: 0:$02E5 0:000011:A1=A7:D8=D0 ld alu,$0000 0:$02E6 0:data:reset=0:$0000 0:$02E7 0:000010:A1=A0:D8=D0 and $0000 : z 0:$02E8 z:data:reset=0:$0000 TRAP 0 if 0 // * TRAP 0:$02E9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$02EA 0:data:reset=0:$42E9 0:$02EB 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$02EC d15:data:reset=0:$7FF8 1:$02E9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$02EA d15:data:reset=0:$42ED 0:$02ED 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$02EE 0:data:reset=0:$FFFF 0:$02EF 0:000010:A1=A7:D8=D0 and 1 0:$02F0 0:data:reset=0:$0001 0:$02F1 0:000001:A1=A0:D3=D0 equ 1 : z 0:$02F2 z:data:reset=0:$0001 TRAP 0 if 0 // * TRAP 0:$02F3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$02F4 0:data:reset=0:$42F3 0:$02F5 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$02F6 d15:data:reset=0:$7FF8 1:$02F3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$02F4 d15:data:reset=0:$42F7 0:$02F7 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$02F8 0:data:reset=0:$FFFF 0:$02F9 0:000010:A1=A7:D8=D0 and $8000 0:$02FA 0:data:reset=0:$8000 0:$02FB 0:000001:A1=A0:D3=D0 equ $8000 : z 0:$02FC z:data:reset=0:$8000 TRAP 0 if 0 // * TRAP 0:$02FD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$02FE 0:data:reset=0:$42FD 0:$02FF 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0300 d15:data:reset=0:$7FF8 1:$02FD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$02FE d15:data:reset=0:$4301 0:$0301 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$0302 0:data:reset=0:$FFFF 0:$0303 0:000010:A1=A7:D8=D0 and $fffe 0:$0304 0:data:reset=0:$FFFE 0:$0305 0:000001:A1=A7:D3=D0 equ $fffe : z 0:$0306 z:data:reset=0:$FFFE TRAP 0 if 0 // * TRAP 0:$0307 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0308 0:data:reset=0:$4307 0:$0309 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$030A d15:data:reset=0:$7FF8 1:$0307 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0308 d15:data:reset=0:$430B 0:$030B 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$030C 0:data:reset=0:$FFFF 0:$030D 0:000010:A1=A7:D8=D0 and $7fff 0:$030E 0:data:reset=0:$7FFF 0:$030F 0:000001:A1=A7:D3=D0 equ $7fff : z 0:$0310 z:data:reset=0:$7FFF TRAP 0 if 0 // * TRAP 0:$0311 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0312 0:data:reset=0:$4311 0:$0313 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0314 d15:data:reset=0:$7FF8 1:$0311 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0312 d15:data:reset=0:$4315 0:$0315 0:000011:A1=A7:D8=D0 ld alu,$55aa 0:$0316 0:data:reset=0:$55AA 0:$0317 0:000010:A1=A5:D8=D0 and $aa55 : z 0:$0318 z:data:reset=0:$AA55 TRAP 0 if 0 // * TRAP 0:$0319 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$031A 0:data:reset=0:$4319 0:$031B 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$031C d15:data:reset=0:$7FF8 1:$0319 1:000011:A1=A7:D0=D0 then // * TRAP 1:$031A d15:data:reset=0:$431D 0:$031D 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$031E 0:data:reset=0:$FFFF 0:$031F 0:000010:A1=A7:D8=D0 and $55aa 0:$0320 0:data:reset=0:$55AA 0:$0321 0:000001:A1=A5:D3=D0 equ $55aa : z 0:$0322 z:data:reset=0:$55AA TRAP 0 if 0 // * TRAP 0:$0323 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0324 0:data:reset=0:$4323 0:$0325 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0326 d15:data:reset=0:$7FF8 1:$0323 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0324 d15:data:reset=0:$4327 0:$0327 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$0328 0:data:reset=0:$AA55 0:$0329 0:000010:A1=A2:D8=D0 and $ffff 0:$032A 0:data:reset=0:$FFFF 0:$032B 0:000001:A1=A7:D3=D0 equ $aa55 : z 0:$032C z:data:reset=0:$AA55 TRAP 0 if 0 // * TRAP 0:$032D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$032E 0:data:reset=0:$432D 0:$032F 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0330 d15:data:reset=0:$7FF8 1:$032D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$032E d15:data:reset=0:$4331 0:$0331 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$0332 0:data:reset=0:$AA55 // and ~$aaaa 0:$0333 0:001010:A1=A2:D8=D0 nop, ival.oe,alu.clk, alu_fu=2, nc, alu_cpl=1 0:$0334 0:data:reset=0:$AAAA dw $aaaa 0:$0335 0:000001:A1=A2:D3=D0 equ $0055 : z 0:$0336 z:data:reset=0:$0055 TRAP 0 if 0 // * TRAP 0:$0337 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0338 0:data:reset=0:$4337 0:$0339 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$033A d15:data:reset=0:$7FF8 1:$0337 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0338 d15:data:reset=0:$433B // test or: 0:$033B 0:000011:A1=A7:D8=D0 ld alu,$0000 0:$033C 0:data:reset=0:$0000 0:$033D 0:000110:A1=A0:D8=D0 or $0000 : z 0:$033E z:data:reset=0:$0000 TRAP 0 if 0 // * TRAP 0:$033F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0340 0:data:reset=0:$433F 0:$0341 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0342 d15:data:reset=0:$7FF8 1:$033F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0340 d15:data:reset=0:$4343 0:$0343 0:000011:A1=A7:D8=D0 ld alu,$55aa 0:$0344 0:data:reset=0:$55AA 0:$0345 0:000110:A1=A5:D8=D0 or $aa55 0:$0346 0:data:reset=0:$AA55 0:$0347 0:000001:A1=A2:D3=D0 equ $ffff : z 0:$0348 z:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$0349 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$034A 0:data:reset=0:$4349 0:$034B 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$034C d15:data:reset=0:$7FF8 1:$0349 1:000011:A1=A7:D0=D0 then // * TRAP 1:$034A d15:data:reset=0:$434D 0:$034D 0:000011:A1=A7:D8=D0 ld alu,$0000 0:$034E 0:data:reset=0:$0000 0:$034F 0:000110:A1=A0:D8=D0 or 1 0:$0350 0:data:reset=0:$0001 0:$0351 0:000001:A1=A0:D3=D0 equ 1 : z 0:$0352 z:data:reset=0:$0001 TRAP 0 if 0 // * TRAP 0:$0353 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0354 0:data:reset=0:$4353 0:$0355 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0356 d15:data:reset=0:$7FF8 1:$0353 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0354 d15:data:reset=0:$4357 0:$0357 0:000011:A1=A7:D8=D0 ld alu,$0000 0:$0358 0:data:reset=0:$0000 0:$0359 0:000110:A1=A0:D8=D0 or $8000 0:$035A 0:data:reset=0:$8000 0:$035B 0:000001:A1=A0:D3=D0 equ $8000 : z 0:$035C z:data:reset=0:$8000 TRAP 0 if 0 // * TRAP 0:$035D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$035E 0:data:reset=0:$435D 0:$035F 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0360 d15:data:reset=0:$7FF8 1:$035D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$035E d15:data:reset=0:$4361 0:$0361 0:000011:A1=A7:D8=D0 ld alu,$0F0F 0:$0362 0:data:reset=0:$0F0F 0:$0363 0:000110:A1=A7:D8=D0 or $55aa 0:$0364 0:data:reset=0:$55AA 0:$0365 0:000001:A1=A5:D3=D0 equ $5FaF : z 0:$0366 z:data:reset=0:$5FAF TRAP 0 if 0 // * TRAP 0:$0367 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0368 0:data:reset=0:$4367 0:$0369 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$036A d15:data:reset=0:$7FF8 1:$0367 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0368 d15:data:reset=0:$436B 0:$036B 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$036C 0:data:reset=0:$AA55 0:$036D 0:000110:A1=A2:D8=D0 or $f0f0 0:$036E 0:data:reset=0:$F0F0 0:$036F 0:000001:A1=A0:D3=D0 equ $FaF5 : z 0:$0370 z:data:reset=0:$FAF5 TRAP 0 if 0 // * TRAP 0:$0371 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0372 0:data:reset=0:$4371 0:$0373 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0374 d15:data:reset=0:$7FF8 1:$0371 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0372 d15:data:reset=0:$4375 0:$0375 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$0376 0:data:reset=0:$AA55 // or ~$aaaa 0:$0377 0:001110:A1=A2:D8=D0 nop,ival.oe,alu.clk, alu_fu=2, cy, alu_cpl=1 0:$0378 0:data:reset=0:$AAAA dw $aaaa 0:$0379 0:000001:A1=A2:D3=D0 equ $ff55 : z 0:$037A z:data:reset=0:$FF55 TRAP 0 if 0 // * TRAP 0:$037B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$037C 0:data:reset=0:$437B 0:$037D 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$037E d15:data:reset=0:$7FF8 1:$037B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$037C d15:data:reset=0:$437F // add, sub: // instr test_addn(V1,V2) // ld d1,V1 // ld d2,V2 // xor alu // // add d1 // add_c d2 // equ V1+V2+1 : z // jp 0,error // sub d2 // sub_nc d1 // TRAP !z // // add_c d1 // add d2 // equ V1+V2+1 : z // TRAP 0 // sub_nc d2 // sub d1 // TRAP !z // end test_addn 0,0 0:$037F 0:000011:A1=A7:D5=D0 ld d1,0 // * test_addn 0:$0380 0:data:reset=0:$0000 0:$0381 0:000011:A1=A0:D6=D0 ld d2,0 // * test_addn 0:$0382 0:data:reset=0:$0000 0:$0383 0:000001:A1=A0:D8=D8 xor alu // * test_addn 0:$0384 0:000000:A1=A0:D3=D5 add d1 // * test_addn 0:$0385 0:000000:A1=A0:D8=D5 0:$0386 0:000100:A1=A0:D3=D6 add_c d2 // * test_addn 0:$0387 0:000100:A1=A0:D8=D6 0:$0388 0:000001:A1=A0:D3=D0 equ 0+0+1 : z // * test_addn 0:$0389 z:data:reset=0:$0001 0:$038A 0:000011:A1=A0:D0=D0 jp 0,error // * test_addn 0:$038B d15:data:reset=0:$7FF8 1:$038A 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$038B 1:001100:A1=A7:D8=D6 1:$038C 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$038D 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$038E z:data:reset=0:$0000 if !z // * TRAP 0:$038F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0390 0:data:reset=0:$438F 0:$0391 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0392 d15:data:reset=0:$7FF8 1:$038F 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0390 d15:data:reset=0:$4393 0:$0393 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$0394 0:000100:A1=A7:D8=D5 0:$0395 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$0396 0:000000:A1=A7:D8=D6 0:$0397 0:000001:A1=A7:D3=D0 equ 0+0+1 : z // * test_addn 0:$0398 z:data:reset=0:$0001 TRAP 0 // * test_addn if 0 // * TRAP 0:$0399 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$039A 0:data:reset=0:$4399 0:$039B 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$039C d15:data:reset=0:$7FF8 1:$0399 1:000011:A1=A7:D0=D0 then // * TRAP 1:$039A d15:data:reset=0:$439D 0:$039D 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$039E 0:001000:A1=A7:D8=D6 0:$039F 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$03A0 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$03A1 z:data:reset=0:$0000 if !z // * TRAP 0:$03A2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$03A3 0:data:reset=0:$43A2 0:$03A4 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$03A5 d15:data:reset=0:$7FF8 1:$03A2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$03A3 d15:data:reset=0:$43A6 test_addn $ffff,0 0:$03A6 0:000011:A1=A7:D5=D0 ld d1,$ffff // * test_addn 0:$03A7 0:data:reset=0:$FFFF 0:$03A8 0:000011:A1=A7:D6=D0 ld d2,0 // * test_addn 0:$03A9 0:data:reset=0:$0000 0:$03AA 0:000001:A1=A0:D8=D8 xor alu // * test_addn 0:$03AB 0:000000:A1=A0:D3=D5 add d1 // * test_addn 0:$03AC 0:000000:A1=A0:D8=D5 0:$03AD 0:000100:A1=A0:D3=D6 add_c d2 // * test_addn 0:$03AE 0:000100:A1=A0:D8=D6 0:$03AF 0:000001:A1=A0:D3=D0 equ $ffff+0+1 : z // * test_addn 0:$03B0 z:data:reset=0:$0000 0:$03B1 0:000011:A1=A0:D0=D0 jp 0,error // * test_addn 0:$03B2 d15:data:reset=0:$7FF8 1:$03B1 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$03B2 1:001100:A1=A7:D8=D6 1:$03B3 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$03B4 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$03B5 z:data:reset=0:$0000 if !z // * TRAP 0:$03B6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$03B7 0:data:reset=0:$43B6 0:$03B8 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$03B9 d15:data:reset=0:$7FF8 1:$03B6 1:000011:A1=A0:D0=D0 then // * TRAP 1:$03B7 d15:data:reset=0:$43BA 0:$03BA 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$03BB 0:000100:A1=A7:D8=D5 0:$03BC 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$03BD 0:000000:A1=A7:D8=D6 0:$03BE 0:000001:A1=A7:D3=D0 equ $ffff+0+1 : z // * test_addn 0:$03BF z:data:reset=0:$0000 TRAP 0 // * test_addn if 0 // * TRAP 0:$03C0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$03C1 0:data:reset=0:$43C0 0:$03C2 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$03C3 d15:data:reset=0:$7FF8 1:$03C0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$03C1 d15:data:reset=0:$43C4 0:$03C4 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$03C5 0:001000:A1=A7:D8=D6 0:$03C6 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$03C7 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$03C8 z:data:reset=0:$0000 if !z // * TRAP 0:$03C9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$03CA 0:data:reset=0:$43C9 0:$03CB 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$03CC d15:data:reset=0:$7FF8 1:$03C9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$03CA d15:data:reset=0:$43CD test_addn $7fff,$7fff 0:$03CD 0:000011:A1=A7:D5=D0 ld d1,$7fff // * test_addn 0:$03CE 0:data:reset=0:$7FFF 0:$03CF 0:000011:A1=A7:D6=D0 ld d2,$7fff // * test_addn 0:$03D0 0:data:reset=0:$7FFF 0:$03D1 0:000001:A1=A7:D8=D8 xor alu // * test_addn 0:$03D2 0:000000:A1=A7:D3=D5 add d1 // * test_addn 0:$03D3 0:000000:A1=A7:D8=D5 0:$03D4 0:000100:A1=A7:D3=D6 add_c d2 // * test_addn 0:$03D5 0:000100:A1=A7:D8=D6 0:$03D6 0:000001:A1=A7:D3=D0 equ $7fff+$7fff+1 : z // * test_addn 0:$03D7 z:data:reset=0:$FFFF 0:$03D8 0:000011:A1=A7:D0=D0 jp 0,error // * test_addn 0:$03D9 d15:data:reset=0:$7FF8 1:$03D8 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$03D9 1:001100:A1=A7:D8=D6 1:$03DA 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$03DB 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$03DC z:data:reset=0:$0000 if !z // * TRAP 0:$03DD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$03DE 0:data:reset=0:$43DD 0:$03DF 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$03E0 d15:data:reset=0:$7FF8 1:$03DD 1:000011:A1=A0:D0=D0 then // * TRAP 1:$03DE d15:data:reset=0:$43E1 0:$03E1 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$03E2 0:000100:A1=A7:D8=D5 0:$03E3 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$03E4 0:000000:A1=A7:D8=D6 0:$03E5 0:000001:A1=A7:D3=D0 equ $7fff+$7fff+1 : z // * test_addn 0:$03E6 z:data:reset=0:$FFFF TRAP 0 // * test_addn if 0 // * TRAP 0:$03E7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$03E8 0:data:reset=0:$43E7 0:$03E9 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$03EA d15:data:reset=0:$7FF8 1:$03E7 1:000011:A1=A7:D0=D0 then // * TRAP 1:$03E8 d15:data:reset=0:$43EB 0:$03EB 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$03EC 0:001000:A1=A7:D8=D6 0:$03ED 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$03EE 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$03EF z:data:reset=0:$0000 if !z // * TRAP 0:$03F0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$03F1 0:data:reset=0:$43F0 0:$03F2 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$03F3 d15:data:reset=0:$7FF8 1:$03F0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$03F1 d15:data:reset=0:$43F4 test_addn $7fff,$8000 0:$03F4 0:000011:A1=A7:D5=D0 ld d1,$7fff // * test_addn 0:$03F5 0:data:reset=0:$7FFF 0:$03F6 0:000011:A1=A7:D6=D0 ld d2,$8000 // * test_addn 0:$03F7 0:data:reset=0:$8000 0:$03F8 0:000001:A1=A0:D8=D8 xor alu // * test_addn 0:$03F9 0:000000:A1=A0:D3=D5 add d1 // * test_addn 0:$03FA 0:000000:A1=A0:D8=D5 0:$03FB 0:000100:A1=A0:D3=D6 add_c d2 // * test_addn 0:$03FC 0:000100:A1=A0:D8=D6 0:$03FD 0:000001:A1=A0:D3=D0 equ $7fff+$8000+1 : z // * test_addn 0:$03FE z:data:reset=0:$0000 0:$03FF 0:000011:A1=A0:D0=D0 jp 0,error // * test_addn 0:$0400 d15:data:reset=0:$7FF8 1:$03FF 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$0400 1:001100:A1=A7:D8=D6 1:$0401 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$0402 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$0403 z:data:reset=0:$0000 if !z // * TRAP 0:$0404 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0405 0:data:reset=0:$4404 0:$0406 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0407 d15:data:reset=0:$7FF8 1:$0404 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0405 d15:data:reset=0:$4408 0:$0408 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$0409 0:000100:A1=A7:D8=D5 0:$040A 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$040B 0:000000:A1=A7:D8=D6 0:$040C 0:000001:A1=A7:D3=D0 equ $7fff+$8000+1 : z // * test_addn 0:$040D z:data:reset=0:$0000 TRAP 0 // * test_addn if 0 // * TRAP 0:$040E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$040F 0:data:reset=0:$440E 0:$0410 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0411 d15:data:reset=0:$7FF8 1:$040E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$040F d15:data:reset=0:$4412 0:$0412 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$0413 0:001000:A1=A7:D8=D6 0:$0414 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$0415 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$0416 z:data:reset=0:$0000 if !z // * TRAP 0:$0417 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0418 0:data:reset=0:$4417 0:$0419 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$041A d15:data:reset=0:$7FF8 1:$0417 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0418 d15:data:reset=0:$441B test_addn 4711,0815 0:$041B 0:000011:A1=A7:D5=D0 ld d1,4711 // * test_addn 0:$041C 0:data:reset=0:$1267 0:$041D 0:000011:A1=A2:D6=D0 ld d2,0815 // * test_addn 0:$041E 0:data:reset=0:$032F 0:$041F 0:000001:A1=A3:D8=D8 xor alu // * test_addn 0:$0420 0:000000:A1=A3:D3=D5 add d1 // * test_addn 0:$0421 0:000000:A1=A3:D8=D5 0:$0422 0:000100:A1=A3:D3=D6 add_c d2 // * test_addn 0:$0423 0:000100:A1=A3:D8=D6 0:$0424 0:000001:A1=A3:D3=D0 equ 4711+0815+1 : z // * test_addn 0:$0425 z:data:reset=0:$1597 0:$0426 0:000011:A1=A5:D0=D0 jp 0,error // * test_addn 0:$0427 d15:data:reset=0:$7FF8 1:$0426 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$0427 1:001100:A1=A7:D8=D6 1:$0428 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$0429 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$042A z:data:reset=0:$0000 if !z // * TRAP 0:$042B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$042C 0:data:reset=0:$442B 0:$042D 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$042E d15:data:reset=0:$7FF8 1:$042B 1:000011:A1=A0:D0=D0 then // * TRAP 1:$042C d15:data:reset=0:$442F 0:$042F 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$0430 0:000100:A1=A7:D8=D5 0:$0431 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$0432 0:000000:A1=A7:D8=D6 0:$0433 0:000001:A1=A7:D3=D0 equ 4711+0815+1 : z // * test_addn 0:$0434 z:data:reset=0:$1597 TRAP 0 // * test_addn if 0 // * TRAP 0:$0435 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0436 0:data:reset=0:$4435 0:$0437 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0438 d15:data:reset=0:$7FF8 1:$0435 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0436 d15:data:reset=0:$4439 0:$0439 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$043A 0:001000:A1=A7:D8=D6 0:$043B 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$043C 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$043D z:data:reset=0:$0000 if !z // * TRAP 0:$043E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$043F 0:data:reset=0:$443E 0:$0440 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0441 d15:data:reset=0:$7FF8 1:$043E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$043F d15:data:reset=0:$4442 test_addn 60425,12082 0:$0442 0:000011:A1=A7:D5=D0 ld d1,60425 // * test_addn 0:$0443 0:data:reset=0:$EC09 0:$0444 0:000011:A1=A4:D6=D0 ld d2,12082 // * test_addn 0:$0445 0:data:reset=0:$2F32 0:$0446 0:000001:A1=A7:D8=D8 xor alu // * test_addn 0:$0447 0:000000:A1=A7:D3=D5 add d1 // * test_addn 0:$0448 0:000000:A1=A7:D8=D5 0:$0449 0:000100:A1=A7:D3=D6 add_c d2 // * test_addn 0:$044A 0:000100:A1=A7:D8=D6 0:$044B 0:000001:A1=A7:D3=D0 equ 60425+12082+1 : z // * test_addn 0:$044C z:data:reset=0:$1B3C 0:$044D 0:000011:A1=A3:D0=D0 jp 0,error // * test_addn 0:$044E d15:data:reset=0:$7FF8 1:$044D 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$044E 1:001100:A1=A7:D8=D6 1:$044F 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$0450 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$0451 z:data:reset=0:$0000 if !z // * TRAP 0:$0452 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0453 0:data:reset=0:$4452 0:$0454 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0455 d15:data:reset=0:$7FF8 1:$0452 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0453 d15:data:reset=0:$4456 0:$0456 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$0457 0:000100:A1=A7:D8=D5 0:$0458 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$0459 0:000000:A1=A7:D8=D6 0:$045A 0:000001:A1=A7:D3=D0 equ 60425+12082+1 : z // * test_addn 0:$045B z:data:reset=0:$1B3C TRAP 0 // * test_addn if 0 // * TRAP 0:$045C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$045D 0:data:reset=0:$445C 0:$045E 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$045F d15:data:reset=0:$7FF8 1:$045C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$045D d15:data:reset=0:$4460 0:$0460 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$0461 0:001000:A1=A7:D8=D6 0:$0462 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$0463 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$0464 z:data:reset=0:$0000 if !z // * TRAP 0:$0465 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0466 0:data:reset=0:$4465 0:$0467 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0468 d15:data:reset=0:$7FF8 1:$0465 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0466 d15:data:reset=0:$4469 test_addn 13409,44581 0:$0469 0:000011:A1=A7:D5=D0 ld d1,13409 // * test_addn 0:$046A 0:data:reset=0:$3461 0:$046B 0:000011:A1=A4:D6=D0 ld d2,44581 // * test_addn 0:$046C 0:data:reset=0:$AE25 0:$046D 0:000001:A1=A6:D8=D8 xor alu // * test_addn 0:$046E 0:000000:A1=A6:D3=D5 add d1 // * test_addn 0:$046F 0:000000:A1=A6:D8=D5 0:$0470 0:000100:A1=A6:D3=D6 add_c d2 // * test_addn 0:$0471 0:000100:A1=A6:D8=D6 0:$0472 0:000001:A1=A6:D3=D0 equ 13409+44581+1 : z // * test_addn 0:$0473 z:data:reset=0:$E287 0:$0474 0:000011:A1=A2:D0=D0 jp 0,error // * test_addn 0:$0475 d15:data:reset=0:$7FF8 1:$0474 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$0475 1:001100:A1=A7:D8=D6 1:$0476 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$0477 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$0478 z:data:reset=0:$0000 if !z // * TRAP 0:$0479 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$047A 0:data:reset=0:$4479 0:$047B 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$047C d15:data:reset=0:$7FF8 1:$0479 1:000011:A1=A0:D0=D0 then // * TRAP 1:$047A d15:data:reset=0:$447D 0:$047D 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$047E 0:000100:A1=A7:D8=D5 0:$047F 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$0480 0:000000:A1=A7:D8=D6 0:$0481 0:000001:A1=A7:D3=D0 equ 13409+44581+1 : z // * test_addn 0:$0482 z:data:reset=0:$E287 TRAP 0 // * test_addn if 0 // * TRAP 0:$0483 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0484 0:data:reset=0:$4483 0:$0485 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0486 d15:data:reset=0:$7FF8 1:$0483 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0484 d15:data:reset=0:$4487 0:$0487 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$0488 0:001000:A1=A7:D8=D6 0:$0489 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$048A 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$048B z:data:reset=0:$0000 if !z // * TRAP 0:$048C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$048D 0:data:reset=0:$448C 0:$048E 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$048F d15:data:reset=0:$7FF8 1:$048C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$048D d15:data:reset=0:$4490 test_addn 38932,16796 0:$0490 0:000011:A1=A7:D5=D0 ld d1,38932 // * test_addn 0:$0491 0:data:reset=0:$9814 0:$0492 0:000011:A1=A0:D6=D0 ld d2,16796 // * test_addn 0:$0493 0:data:reset=0:$419C 0:$0494 0:000001:A1=A1:D8=D8 xor alu // * test_addn 0:$0495 0:000000:A1=A1:D3=D5 add d1 // * test_addn 0:$0496 0:000000:A1=A1:D8=D5 0:$0497 0:000100:A1=A1:D3=D6 add_c d2 // * test_addn 0:$0498 0:000100:A1=A1:D8=D6 0:$0499 0:000001:A1=A1:D3=D0 equ 38932+16796+1 : z // * test_addn 0:$049A z:data:reset=0:$D9B1 0:$049B 0:000011:A1=A1:D0=D0 jp 0,error // * test_addn 0:$049C d15:data:reset=0:$7FF8 1:$049B 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$049C 1:001100:A1=A7:D8=D6 1:$049D 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$049E 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$049F z:data:reset=0:$0000 if !z // * TRAP 0:$04A0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$04A1 0:data:reset=0:$44A0 0:$04A2 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$04A3 d15:data:reset=0:$7FF8 1:$04A0 1:000011:A1=A0:D0=D0 then // * TRAP 1:$04A1 d15:data:reset=0:$44A4 0:$04A4 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$04A5 0:000100:A1=A7:D8=D5 0:$04A6 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$04A7 0:000000:A1=A7:D8=D6 0:$04A8 0:000001:A1=A7:D3=D0 equ 38932+16796+1 : z // * test_addn 0:$04A9 z:data:reset=0:$D9B1 TRAP 0 // * test_addn if 0 // * TRAP 0:$04AA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$04AB 0:data:reset=0:$44AA 0:$04AC 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$04AD d15:data:reset=0:$7FF8 1:$04AA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$04AB d15:data:reset=0:$44AE 0:$04AE 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$04AF 0:001000:A1=A7:D8=D6 0:$04B0 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$04B1 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$04B2 z:data:reset=0:$0000 if !z // * TRAP 0:$04B3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$04B4 0:data:reset=0:$44B3 0:$04B5 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$04B6 d15:data:reset=0:$7FF8 1:$04B3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$04B4 d15:data:reset=0:$44B7 test_addn 8932,796 0:$04B7 0:000011:A1=A7:D5=D0 ld d1,8932 // * test_addn 0:$04B8 0:data:reset=0:$22E4 0:$04B9 0:000011:A1=A2:D6=D0 ld d2,796 // * test_addn 0:$04BA 0:data:reset=0:$031C 0:$04BB 0:000001:A1=A3:D8=D8 xor alu // * test_addn 0:$04BC 0:000000:A1=A3:D3=D5 add d1 // * test_addn 0:$04BD 0:000000:A1=A3:D8=D5 0:$04BE 0:000100:A1=A3:D3=D6 add_c d2 // * test_addn 0:$04BF 0:000100:A1=A3:D8=D6 0:$04C0 0:000001:A1=A3:D3=D0 equ 8932+796+1 : z // * test_addn 0:$04C1 z:data:reset=0:$2601 0:$04C2 0:000011:A1=A6:D0=D0 jp 0,error // * test_addn 0:$04C3 d15:data:reset=0:$7FF8 1:$04C2 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$04C3 1:001100:A1=A7:D8=D6 1:$04C4 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$04C5 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$04C6 z:data:reset=0:$0000 if !z // * TRAP 0:$04C7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$04C8 0:data:reset=0:$44C7 0:$04C9 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$04CA d15:data:reset=0:$7FF8 1:$04C7 1:000011:A1=A0:D0=D0 then // * TRAP 1:$04C8 d15:data:reset=0:$44CB 0:$04CB 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$04CC 0:000100:A1=A7:D8=D5 0:$04CD 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$04CE 0:000000:A1=A7:D8=D6 0:$04CF 0:000001:A1=A7:D3=D0 equ 8932+796+1 : z // * test_addn 0:$04D0 z:data:reset=0:$2601 TRAP 0 // * test_addn if 0 // * TRAP 0:$04D1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$04D2 0:data:reset=0:$44D1 0:$04D3 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$04D4 d15:data:reset=0:$7FF8 1:$04D1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$04D2 d15:data:reset=0:$44D5 0:$04D5 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$04D6 0:001000:A1=A7:D8=D6 0:$04D7 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$04D8 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$04D9 z:data:reset=0:$0000 if !z // * TRAP 0:$04DA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$04DB 0:data:reset=0:$44DA 0:$04DC 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$04DD d15:data:reset=0:$7FF8 1:$04DA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$04DB d15:data:reset=0:$44DE test_addn 32,76 0:$04DE 0:000011:A1=A7:D5=D0 ld d1,32 // * test_addn 0:$04DF 0:data:reset=0:$0020 0:$04E0 0:000011:A1=A0:D6=D0 ld d2,76 // * test_addn 0:$04E1 0:data:reset=0:$004C 0:$04E2 0:000001:A1=A0:D8=D8 xor alu // * test_addn 0:$04E3 0:000000:A1=A0:D3=D5 add d1 // * test_addn 0:$04E4 0:000000:A1=A0:D8=D5 0:$04E5 0:000100:A1=A0:D3=D6 add_c d2 // * test_addn 0:$04E6 0:000100:A1=A0:D8=D6 0:$04E7 0:000001:A1=A0:D3=D0 equ 32+76+1 : z // * test_addn 0:$04E8 z:data:reset=0:$006D 0:$04E9 0:000011:A1=A0:D0=D0 jp 0,error // * test_addn 0:$04EA d15:data:reset=0:$7FF8 1:$04E9 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$04EA 1:001100:A1=A7:D8=D6 1:$04EB 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$04EC 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$04ED z:data:reset=0:$0000 if !z // * TRAP 0:$04EE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$04EF 0:data:reset=0:$44EE 0:$04F0 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$04F1 d15:data:reset=0:$7FF8 1:$04EE 1:000011:A1=A0:D0=D0 then // * TRAP 1:$04EF d15:data:reset=0:$44F2 0:$04F2 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$04F3 0:000100:A1=A7:D8=D5 0:$04F4 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$04F5 0:000000:A1=A7:D8=D6 0:$04F6 0:000001:A1=A7:D3=D0 equ 32+76+1 : z // * test_addn 0:$04F7 z:data:reset=0:$006D TRAP 0 // * test_addn if 0 // * TRAP 0:$04F8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$04F9 0:data:reset=0:$44F8 0:$04FA 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$04FB d15:data:reset=0:$7FF8 1:$04F8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$04F9 d15:data:reset=0:$44FC 0:$04FC 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$04FD 0:001000:A1=A7:D8=D6 0:$04FE 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$04FF 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$0500 z:data:reset=0:$0000 if !z // * TRAP 0:$0501 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0502 0:data:reset=0:$4501 0:$0503 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0504 d15:data:reset=0:$7FF8 1:$0501 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0502 d15:data:reset=0:$4505 // --- file: "alu.asm" --- #include "dregs.asm" // +++ file: "dregs.asm" +++ // Test Data Registers: // instr test_dreg(DR) // ld DR,0 // tst DR // TRAP !z // // ld DR,$ffff // tstn DR // TRAP !z // // ld alu,$aa55 // ld DR,alu // equ DR // TRAP !z // // ld alu,$55aa // ld DR,alu // equ DR // TRAP !z // end test_dreg d0 0:$0505 0:000011:A1=A7:D4=D0 ld d0,0 // * test_dreg 0:$0506 0:data:reset=0:$0000 0:$0507 0:000011:A1=A0:D3=D4 tst d0 // * test_dreg TRAP !z // * test_dreg 0:$0508 z:data:reset=0:$0000 if !z // * TRAP 0:$0509 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$050A 0:data:reset=0:$4509 0:$050B 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$050C d15:data:reset=0:$7FF8 1:$0509 1:000011:A1=A7:D0=D0 then // * TRAP 1:$050A d15:data:reset=0:$450D 0:$050D 0:000011:A1=A7:D4=D0 ld d0,$ffff // * test_dreg 0:$050E 0:data:reset=0:$FFFF 0:$050F 0:001011:A1=A7:D3=D4 tstn d0 // * test_dreg TRAP !z // * test_dreg 0:$0510 z:data:reset=0:$0000 if !z // * TRAP 0:$0511 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0512 0:data:reset=0:$4511 0:$0513 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0514 d15:data:reset=0:$7FF8 1:$0511 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0512 d15:data:reset=0:$4515 0:$0515 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * test_dreg 0:$0516 0:data:reset=0:$AA55 0:$0517 0:000011:A1=A2:D4=D8 ld d0,alu // * test_dreg 0:$0518 0:000001:A1=A2:D3=D4 equ d0 // * test_dreg TRAP !z // * test_dreg 0:$0519 z:data:reset=0:$0000 if !z // * TRAP 0:$051A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$051B 0:data:reset=0:$451A 0:$051C 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$051D d15:data:reset=0:$7FF8 1:$051A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$051B d15:data:reset=0:$451E 0:$051E 0:000011:A1=A7:D8=D0 ld alu,$55aa // * test_dreg 0:$051F 0:data:reset=0:$55AA 0:$0520 0:000011:A1=A5:D4=D8 ld d0,alu // * test_dreg 0:$0521 0:000001:A1=A5:D3=D4 equ d0 // * test_dreg TRAP !z // * test_dreg 0:$0522 z:data:reset=0:$0000 if !z // * TRAP 0:$0523 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0524 0:data:reset=0:$4523 0:$0525 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0526 d15:data:reset=0:$7FF8 1:$0523 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0524 d15:data:reset=0:$4527 test_dreg d1 0:$0527 0:000011:A1=A7:D5=D0 ld d1,0 // * test_dreg 0:$0528 0:data:reset=0:$0000 0:$0529 0:000011:A1=A0:D3=D5 tst d1 // * test_dreg TRAP !z // * test_dreg 0:$052A z:data:reset=0:$0000 if !z // * TRAP 0:$052B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$052C 0:data:reset=0:$452B 0:$052D 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$052E d15:data:reset=0:$7FF8 1:$052B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$052C d15:data:reset=0:$452F 0:$052F 0:000011:A1=A7:D5=D0 ld d1,$ffff // * test_dreg 0:$0530 0:data:reset=0:$FFFF 0:$0531 0:001011:A1=A7:D3=D5 tstn d1 // * test_dreg TRAP !z // * test_dreg 0:$0532 z:data:reset=0:$0000 if !z // * TRAP 0:$0533 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0534 0:data:reset=0:$4533 0:$0535 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0536 d15:data:reset=0:$7FF8 1:$0533 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0534 d15:data:reset=0:$4537 0:$0537 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * test_dreg 0:$0538 0:data:reset=0:$AA55 0:$0539 0:000011:A1=A2:D5=D8 ld d1,alu // * test_dreg 0:$053A 0:000001:A1=A2:D3=D5 equ d1 // * test_dreg TRAP !z // * test_dreg 0:$053B z:data:reset=0:$0000 if !z // * TRAP 0:$053C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$053D 0:data:reset=0:$453C 0:$053E 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$053F d15:data:reset=0:$7FF8 1:$053C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$053D d15:data:reset=0:$4540 0:$0540 0:000011:A1=A7:D8=D0 ld alu,$55aa // * test_dreg 0:$0541 0:data:reset=0:$55AA 0:$0542 0:000011:A1=A5:D5=D8 ld d1,alu // * test_dreg 0:$0543 0:000001:A1=A5:D3=D5 equ d1 // * test_dreg TRAP !z // * test_dreg 0:$0544 z:data:reset=0:$0000 if !z // * TRAP 0:$0545 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0546 0:data:reset=0:$4545 0:$0547 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0548 d15:data:reset=0:$7FF8 1:$0545 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0546 d15:data:reset=0:$4549 test_dreg d2 0:$0549 0:000011:A1=A7:D6=D0 ld d2,0 // * test_dreg 0:$054A 0:data:reset=0:$0000 0:$054B 0:000011:A1=A0:D3=D6 tst d2 // * test_dreg TRAP !z // * test_dreg 0:$054C z:data:reset=0:$0000 if !z // * TRAP 0:$054D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$054E 0:data:reset=0:$454D 0:$054F 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0550 d15:data:reset=0:$7FF8 1:$054D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$054E d15:data:reset=0:$4551 0:$0551 0:000011:A1=A7:D6=D0 ld d2,$ffff // * test_dreg 0:$0552 0:data:reset=0:$FFFF 0:$0553 0:001011:A1=A7:D3=D6 tstn d2 // * test_dreg TRAP !z // * test_dreg 0:$0554 z:data:reset=0:$0000 if !z // * TRAP 0:$0555 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0556 0:data:reset=0:$4555 0:$0557 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0558 d15:data:reset=0:$7FF8 1:$0555 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0556 d15:data:reset=0:$4559 0:$0559 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * test_dreg 0:$055A 0:data:reset=0:$AA55 0:$055B 0:000011:A1=A2:D6=D8 ld d2,alu // * test_dreg 0:$055C 0:000001:A1=A2:D3=D6 equ d2 // * test_dreg TRAP !z // * test_dreg 0:$055D z:data:reset=0:$0000 if !z // * TRAP 0:$055E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$055F 0:data:reset=0:$455E 0:$0560 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0561 d15:data:reset=0:$7FF8 1:$055E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$055F d15:data:reset=0:$4562 0:$0562 0:000011:A1=A7:D8=D0 ld alu,$55aa // * test_dreg 0:$0563 0:data:reset=0:$55AA 0:$0564 0:000011:A1=A5:D6=D8 ld d2,alu // * test_dreg 0:$0565 0:000001:A1=A5:D3=D6 equ d2 // * test_dreg TRAP !z // * test_dreg 0:$0566 z:data:reset=0:$0000 if !z // * TRAP 0:$0567 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0568 0:data:reset=0:$4567 0:$0569 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$056A d15:data:reset=0:$7FF8 1:$0567 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0568 d15:data:reset=0:$456B test_dreg d3 0:$056B 0:000011:A1=A7:D7=D0 ld d3,0 // * test_dreg 0:$056C 0:data:reset=0:$0000 0:$056D 0:000011:A1=A0:D3=D7 tst d3 // * test_dreg TRAP !z // * test_dreg 0:$056E z:data:reset=0:$0000 if !z // * TRAP 0:$056F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0570 0:data:reset=0:$456F 0:$0571 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0572 d15:data:reset=0:$7FF8 1:$056F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0570 d15:data:reset=0:$4573 0:$0573 0:000011:A1=A7:D7=D0 ld d3,$ffff // * test_dreg 0:$0574 0:data:reset=0:$FFFF 0:$0575 0:001011:A1=A7:D3=D7 tstn d3 // * test_dreg TRAP !z // * test_dreg 0:$0576 z:data:reset=0:$0000 if !z // * TRAP 0:$0577 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0578 0:data:reset=0:$4577 0:$0579 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$057A d15:data:reset=0:$7FF8 1:$0577 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0578 d15:data:reset=0:$457B 0:$057B 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * test_dreg 0:$057C 0:data:reset=0:$AA55 0:$057D 0:000011:A1=A2:D7=D8 ld d3,alu // * test_dreg 0:$057E 0:000001:A1=A2:D3=D7 equ d3 // * test_dreg TRAP !z // * test_dreg 0:$057F z:data:reset=0:$0000 if !z // * TRAP 0:$0580 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0581 0:data:reset=0:$4580 0:$0582 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0583 d15:data:reset=0:$7FF8 1:$0580 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0581 d15:data:reset=0:$4584 0:$0584 0:000011:A1=A7:D8=D0 ld alu,$55aa // * test_dreg 0:$0585 0:data:reset=0:$55AA 0:$0586 0:000011:A1=A5:D7=D8 ld d3,alu // * test_dreg 0:$0587 0:000001:A1=A5:D3=D7 equ d3 // * test_dreg TRAP !z // * test_dreg 0:$0588 z:data:reset=0:$0000 if !z // * TRAP 0:$0589 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$058A 0:data:reset=0:$4589 0:$058B 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$058C d15:data:reset=0:$7FF8 1:$0589 1:000011:A1=A7:D0=D0 then // * TRAP 1:$058A d15:data:reset=0:$458D // SL 0:$058D 0:000011:A1=A7:DD=D0 ld sl,$4001,nc 0:$058E 0:data:reset=0:$4001 0:$058F 0:000011:A1=A0:D3=DD tst sl TRAP !bit15 0:$0590 d15:data:reset=0:$0000 if !bit15 // * TRAP 0:$0591 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0592 0:data:reset=0:$4591 0:$0593 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0594 d15:data:reset=0:$7FF8 1:$0591 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0592 d15:data:reset=0:$4595 0:$0595 0:000011:A1=A7:D3=DD tst sl TRAP bit0 0:$0596 d0:data:reset=0:$0000 if bit0 // * TRAP 1:$0597 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$0598 1:data:reset=0:$C597 1:$0599 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$059A d15:data:reset=0:$7FF8 0:$0597 0:000011:A1=A0:D0=D0 then // * TRAP 0:$0598 d15:data:reset=0:$C59B 1:$059B 1:000011:A1=A7:D8=D0 ld alu,-1 1:$059C 1:data:reset=0:$FFFF 1:$059D 1:000011:A1=A7:DD=D0 ld sl,-1,nc 1:$059E 1:data:reset=0:$FFFF 1:$059F 1:000111:A1=A7:D3=DF nop,cy 1:$05A0 1:000011:A1=A7:DD=DD ld sl,sl,nc 1:$05A1 1:000011:A1=A7:D3=DD tst sl TRAP bit0 1:$05A2 d0:data:reset=0:$0000 if bit0 // * TRAP 1:$05A3 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$05A4 1:data:reset=0:$C5A3 1:$05A5 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$05A6 d15:data:reset=0:$7FF8 0:$05A3 0:000011:A1=A7:D0=D0 then // * TRAP 0:$05A4 d15:data:reset=0:$C5A7 1:$05A7 1:000011:A1=A7:D8=D0 ld alu,0 1:$05A8 1:data:reset=0:$0000 1:$05A9 1:000011:A1=A0:DD=D0 ld sl,0,nc 1:$05AA 1:data:reset=0:$0000 1:$05AB 1:000011:A1=A0:D3=D8 nop,nc 1:$05AC 1:000111:A1=A0:DD=DD ld sl,sl,cy 1:$05AD 1:000011:A1=A0:D3=DD tst sl TRAP !bit0 1:$05AE d0:data:reset=0:$0000 if !bit0 // * TRAP 0:$05AF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$05B0 0:data:reset=0:$45AF 0:$05B1 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$05B2 d15:data:reset=0:$7FF8 1:$05AF 1:000011:A1=A0:D0=D0 then // * TRAP 1:$05B0 d15:data:reset=0:$45B3 0:$05B3 0:000011:A1=A7:D8=D0 ld alu,-1 0:$05B4 0:data:reset=0:$FFFF 0:$05B5 0:000011:A1=A7:DD=D0 ld sl,0,nc 0:$05B6 0:data:reset=0:$0000 0:$05B7 0:000011:A1=A0:D3=D8 nop,nc 0:$05B8 0:000111:A1=A0:DD=DD ld sl,sl,cy 0:$05B9 0:000011:A1=A0:D3=DD tst sl TRAP !bit0 0:$05BA d0:data:reset=0:$0000 if !bit0 // * TRAP 0:$05BB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$05BC 0:data:reset=0:$45BB 0:$05BD 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$05BE d15:data:reset=0:$7FF8 1:$05BB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$05BC d15:data:reset=0:$45BF 0:$05BF 0:000011:A1=A7:D8=D0 ld alu,-1 0:$05C0 0:data:reset=0:$FFFF 0:$05C1 0:000011:A1=A7:DD=D0 ld sl,0,nc 0:$05C2 0:data:reset=0:$0000 0:$05C3 0:000111:A1=A0:D3=D8 nop,cy 0:$05C4 0:000011:A1=A0:DD=DD ld sl,sl,nc 0:$05C5 0:000011:A1=A0:D3=DD tst sl TRAP bit0 0:$05C6 d0:data:reset=0:$0000 if bit0 // * TRAP 1:$05C7 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$05C8 1:data:reset=0:$C5C7 1:$05C9 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$05CA d15:data:reset=0:$7FF8 0:$05C7 0:000011:A1=A0:D0=D0 then // * TRAP 0:$05C8 d15:data:reset=0:$C5CB 1:$05CB 1:000011:A1=A7:DD=D0 ld sl,$5591,nc 1:$05CC 1:data:reset=0:$5591 1:$05CD 1:000011:A1=A5:D8=D0 ld alu,$AB22 1:$05CE 1:data:reset=0:$AB22 1:$05CF 1:000001:A1=A3:D3=DD equ sl TRAP !z 1:$05D0 z:data:reset=0:$0000 if !z // * TRAP 0:$05D1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$05D2 0:data:reset=0:$45D1 0:$05D3 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$05D4 d15:data:reset=0:$7FF8 1:$05D1 1:000011:A1=A0:D0=D0 then // * TRAP 1:$05D2 d15:data:reset=0:$45D5 0:$05D5 0:000111:A1=A7:DD=D0 ld sl,12345,cy // $3039 0:$05D6 0:data:reset=0:$3039 0:$05D7 0:000011:A1=A0:D8=D0 ld alu,12345*2+1 // $6073 0:$05D8 0:data:reset=0:$6073 0:$05D9 0:000001:A1=A0:D3=DD equ sl TRAP !z 0:$05DA z:data:reset=0:$0000 if !z // * TRAP 0:$05DB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$05DC 0:data:reset=0:$45DB 0:$05DD 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$05DE d15:data:reset=0:$7FF8 1:$05DB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$05DC d15:data:reset=0:$45DF // SR 0:$05DF 0:000011:A1=A7:DC=D0 ld sr,$8002,nc 0:$05E0 0:data:reset=0:$8002 0:$05E1 0:000011:A1=A0:D3=DC tst sr TRAP !bit0 0:$05E2 d0:data:reset=0:$0000 if !bit0 // * TRAP 0:$05E3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$05E4 0:data:reset=0:$45E3 0:$05E5 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$05E6 d15:data:reset=0:$7FF8 1:$05E3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$05E4 d15:data:reset=0:$45E7 0:$05E7 0:000011:A1=A7:D3=DC tst sr TRAP bit15 0:$05E8 d15:data:reset=0:$0000 if bit15 // * TRAP 1:$05E9 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$05EA 1:data:reset=0:$C5E9 1:$05EB 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$05EC d15:data:reset=0:$7FF8 0:$05E9 0:000011:A1=A0:D0=D0 then // * TRAP 0:$05EA d15:data:reset=0:$C5ED 1:$05ED 1:000011:A1=A7:D8=D0 ld alu,-1 1:$05EE 1:data:reset=0:$FFFF 1:$05EF 1:000011:A1=A7:DC=D0 ld sr,-1,nc 1:$05F0 1:data:reset=0:$FFFF 1:$05F1 1:000111:A1=A7:D3=DF nop,cy 1:$05F2 1:000011:A1=A7:DC=DC ld sr,sr,nc 1:$05F3 1:000011:A1=A7:D3=DC tst sr TRAP bit15 1:$05F4 d15:data:reset=0:$0000 if bit15 // * TRAP 1:$05F5 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$05F6 1:data:reset=0:$C5F5 1:$05F7 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$05F8 d15:data:reset=0:$7FF8 0:$05F5 0:000011:A1=A7:D0=D0 then // * TRAP 0:$05F6 d15:data:reset=0:$C5F9 1:$05F9 1:000011:A6=A1:D3=D0 ld atmp,$ 1:$05FA 1:data:reset=0:$C5F9 1:$05FB 1:000011:A1=A5:D8=D0 ld alu,0 1:$05FC 1:data:reset=0:$0000 1:$05FD 1:000011:A1=A0:DC=D0 ld sr,0,nc 1:$05FE 1:data:reset=0:$0000 1:$05FF 1:000011:A1=A0:D3=D8 nop,nc 1:$0600 1:000111:A1=A0:DC=DC ld sr,sr,cy // BAD || !BAD ? 1:$0601 1:000011:A1=A0:D3=DC tst sr TRAP !bit15 1:$0602 d15:data:reset=0:$0000 if !bit15 // * TRAP 0:$0603 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0604 0:data:reset=0:$4603 0:$0605 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0606 d15:data:reset=0:$7FF8 1:$0603 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0604 d15:data:reset=0:$4607 0:$0607 0:000011:A1=A7:D8=D0 ld alu,-1 0:$0608 0:data:reset=0:$FFFF 0:$0609 0:000011:A1=A7:DC=D0 ld sr,0,nc 0:$060A 0:data:reset=0:$0000 0:$060B 0:000011:A1=A0:D3=D8 nop,nc 0:$060C 0:000111:A1=A0:DC=DC ld sr,sr,cy 0:$060D 0:000011:A1=A0:D3=DC tst sr TRAP !bit15 0:$060E d15:data:reset=0:$0000 if !bit15 // * TRAP 0:$060F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0610 0:data:reset=0:$460F 0:$0611 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0612 d15:data:reset=0:$7FF8 1:$060F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0610 d15:data:reset=0:$4613 0:$0613 0:000011:A1=A7:D8=D0 ld alu,-1 0:$0614 0:data:reset=0:$FFFF 0:$0615 0:000011:A1=A7:DC=D0 ld sr,0,nc 0:$0616 0:data:reset=0:$0000 0:$0617 0:000111:A1=A0:D3=D8 nop,cy 0:$0618 0:000011:A1=A0:DC=DC ld sr,sr,nc 0:$0619 0:000011:A1=A0:D3=DC tst sr TRAP bit15 0:$061A d15:data:reset=0:$0000 if bit15 // * TRAP 1:$061B 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$061C 1:data:reset=0:$C61B 1:$061D 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$061E d15:data:reset=0:$7FF8 0:$061B 0:000011:A1=A0:D0=D0 then // * TRAP 0:$061C d15:data:reset=0:$C61F 1:$061F 1:000011:A1=A7:DC=D0 ld sr,$89AA,nc 1:$0620 1:data:reset=0:$89AA 1:$0621 1:000011:A1=A1:D8=D0 ld alu,$44D5 1:$0622 1:data:reset=0:$44D5 1:$0623 1:000001:A1=A4:D3=DC equ sr TRAP !z 1:$0624 z:data:reset=0:$0000 if !z // * TRAP 0:$0625 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0626 0:data:reset=0:$4625 0:$0627 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0628 d15:data:reset=0:$7FF8 1:$0625 1:000011:A1=A0:D0=D0 then // * TRAP 1:$0626 d15:data:reset=0:$4629 0:$0629 0:000111:A1=A7:DC=D0 ld sr,54321,cy 0:$062A 0:data:reset=0:$D431 0:$062B 0:000011:A1=A4:D8=D0 ld alu,$8000+54321/2 0:$062C 0:data:reset=0:$EA18 0:$062D 0:000001:A1=A2:D3=DC equ sr TRAP !z 0:$062E z:data:reset=0:$0000 if !z // * TRAP 0:$062F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0630 0:data:reset=0:$462F 0:$0631 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0632 d15:data:reset=0:$7FF8 1:$062F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0630 d15:data:reset=0:$4633 // SWAP 0:$0633 0:000011:A1=A7:DA=D0 ld swap,$ff00 0:$0634 0:data:reset=0:$FF00 0:$0635 0:000011:A1=A7:D8=D0 ld alu,$00ff 0:$0636 0:data:reset=0:$00FF 0:$0637 0:000001:A1=A0:D3=DA equ swap TRAP !z 0:$0638 z:data:reset=0:$0000 if !z // * TRAP 0:$0639 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$063A 0:data:reset=0:$4639 0:$063B 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$063C d15:data:reset=0:$7FF8 1:$0639 1:000011:A1=A7:D0=D0 then // * TRAP 1:$063A d15:data:reset=0:$463D 0:$063D 0:000011:A1=A7:DA=DA ld swap,swap 0:$063E 0:000011:A1=A7:D8=D0 ld alu,$ff00 0:$063F 0:data:reset=0:$FF00 0:$0640 0:000001:A1=A7:D3=DA equ swap TRAP !z 0:$0641 z:data:reset=0:$0000 if !z // * TRAP 0:$0642 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0643 0:data:reset=0:$4642 0:$0644 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0645 d15:data:reset=0:$7FF8 1:$0642 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0643 d15:data:reset=0:$4646 0:$0646 0:000011:A1=A7:DA=D0 ld swap,$5AB4 0:$0647 0:data:reset=0:$5AB4 0:$0648 0:000011:A1=A2:D8=D0 ld alu,$B45A 0:$0649 0:data:reset=0:$B45A 0:$064A 0:000001:A1=A4:D3=DA equ swap TRAP !z 0:$064B z:data:reset=0:$0000 if !z // * TRAP 0:$064C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$064D 0:data:reset=0:$464C 0:$064E 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$064F d15:data:reset=0:$7FF8 1:$064C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$064D d15:data:reset=0:$4650 0:$0650 0:000011:A1=A7:DA=DA ld swap,swap 0:$0651 0:000011:A1=A7:D8=D0 ld alu,$5AB4 0:$0652 0:data:reset=0:$5AB4 0:$0653 0:000001:A1=A2:D3=DA equ swap TRAP !z 0:$0654 z:data:reset=0:$0000 if !z // * TRAP 0:$0655 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0656 0:data:reset=0:$4655 0:$0657 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0658 d15:data:reset=0:$7FF8 1:$0655 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0656 d15:data:reset=0:$4659 // 16TO4 // instr test_msbit(BIT) // ld msbit,~(1<>(15-BIT)) // ld alu,BIT // equ msbit // TRAP !z // end 0:$0659 0:000011:A1=A7:DE=D0 ld msbit,$7f00 0:$065A 0:data:reset=0:$7F00 0:$065B 0:000011:A1=A7:D8=D0 ld alu,15 0:$065C 0:data:reset=0:$000F 0:$065D 0:000001:A1=A0:D3=DE equ msbit TRAP !z 0:$065E z:data:reset=0:$0000 if !z // * TRAP 0:$065F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0660 0:data:reset=0:$465F 0:$0661 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0662 d15:data:reset=0:$7FF8 1:$065F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0660 d15:data:reset=0:$4663 0:$0663 0:000011:A1=A7:DE=D0 ld msbit,$ffff 0:$0664 0:data:reset=0:$FFFF 0:$0665 0:000011:A1=A7:D3=DE tst msbit TRAP !z 0:$0666 z:data:reset=0:$0000 if !z // * TRAP 0:$0667 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0668 0:data:reset=0:$4667 0:$0669 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$066A d15:data:reset=0:$7FF8 1:$0667 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0668 d15:data:reset=0:$466B test_msbit 0 0:$066B 0:000011:A1=A7:DE=D0 ld msbit,~(1<<0) // * test_msbit 0:$066C 0:data:reset=0:$FFFE 0:$066D 0:000011:A1=A7:D8=D0 ld alu,0 // * test_msbit 0:$066E 0:data:reset=0:$0000 0:$066F 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0670 z:data:reset=0:$0000 if !z // * TRAP 0:$0671 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0672 0:data:reset=0:$4671 0:$0673 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0674 d15:data:reset=0:$7FF8 1:$0671 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0672 d15:data:reset=0:$4675 0:$0675 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-0)) // * test_msbit 0:$0676 0:data:reset=0:$FFFE 0:$0677 0:000011:A1=A7:D8=D0 ld alu,0 // * test_msbit 0:$0678 0:data:reset=0:$0000 0:$0679 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$067A z:data:reset=0:$0000 if !z // * TRAP 0:$067B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$067C 0:data:reset=0:$467B 0:$067D 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$067E d15:data:reset=0:$7FF8 1:$067B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$067C d15:data:reset=0:$467F test_msbit 1 0:$067F 0:000011:A1=A7:DE=D0 ld msbit,~(1<<1) // * test_msbit 0:$0680 0:data:reset=0:$FFFD 0:$0681 0:000011:A1=A7:D8=D0 ld alu,1 // * test_msbit 0:$0682 0:data:reset=0:$0001 0:$0683 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0684 z:data:reset=0:$0000 if !z // * TRAP 0:$0685 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0686 0:data:reset=0:$4685 0:$0687 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0688 d15:data:reset=0:$7FF8 1:$0685 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0686 d15:data:reset=0:$4689 0:$0689 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-1)) // * test_msbit 0:$068A 0:data:reset=0:$FFFD 0:$068B 0:000011:A1=A7:D8=D0 ld alu,1 // * test_msbit 0:$068C 0:data:reset=0:$0001 0:$068D 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$068E z:data:reset=0:$0000 if !z // * TRAP 0:$068F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0690 0:data:reset=0:$468F 0:$0691 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0692 d15:data:reset=0:$7FF8 1:$068F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0690 d15:data:reset=0:$4693 test_msbit 2 0:$0693 0:000011:A1=A7:DE=D0 ld msbit,~(1<<2) // * test_msbit 0:$0694 0:data:reset=0:$FFFB 0:$0695 0:000011:A1=A7:D8=D0 ld alu,2 // * test_msbit 0:$0696 0:data:reset=0:$0002 0:$0697 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0698 z:data:reset=0:$0000 if !z // * TRAP 0:$0699 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$069A 0:data:reset=0:$4699 0:$069B 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$069C d15:data:reset=0:$7FF8 1:$0699 1:000011:A1=A7:D0=D0 then // * TRAP 1:$069A d15:data:reset=0:$469D 0:$069D 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-2)) // * test_msbit 0:$069E 0:data:reset=0:$FFFA 0:$069F 0:000011:A1=A7:D8=D0 ld alu,2 // * test_msbit 0:$06A0 0:data:reset=0:$0002 0:$06A1 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$06A2 z:data:reset=0:$0000 if !z // * TRAP 0:$06A3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$06A4 0:data:reset=0:$46A3 0:$06A5 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$06A6 d15:data:reset=0:$7FF8 1:$06A3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$06A4 d15:data:reset=0:$46A7 test_msbit 3 0:$06A7 0:000011:A1=A7:DE=D0 ld msbit,~(1<<3) // * test_msbit 0:$06A8 0:data:reset=0:$FFF7 0:$06A9 0:000011:A1=A7:D8=D0 ld alu,3 // * test_msbit 0:$06AA 0:data:reset=0:$0003 0:$06AB 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$06AC z:data:reset=0:$0000 if !z // * TRAP 0:$06AD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$06AE 0:data:reset=0:$46AD 0:$06AF 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$06B0 d15:data:reset=0:$7FF8 1:$06AD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$06AE d15:data:reset=0:$46B1 0:$06B1 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-3)) // * test_msbit 0:$06B2 0:data:reset=0:$FFF5 0:$06B3 0:000011:A1=A7:D8=D0 ld alu,3 // * test_msbit 0:$06B4 0:data:reset=0:$0003 0:$06B5 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$06B6 z:data:reset=0:$0000 if !z // * TRAP 0:$06B7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$06B8 0:data:reset=0:$46B7 0:$06B9 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$06BA d15:data:reset=0:$7FF8 1:$06B7 1:000011:A1=A7:D0=D0 then // * TRAP 1:$06B8 d15:data:reset=0:$46BB test_msbit 4 0:$06BB 0:000011:A1=A7:DE=D0 ld msbit,~(1<<4) // * test_msbit 0:$06BC 0:data:reset=0:$FFEF 0:$06BD 0:000011:A1=A7:D8=D0 ld alu,4 // * test_msbit 0:$06BE 0:data:reset=0:$0004 0:$06BF 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$06C0 z:data:reset=0:$0000 if !z // * TRAP 0:$06C1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$06C2 0:data:reset=0:$46C1 0:$06C3 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$06C4 d15:data:reset=0:$7FF8 1:$06C1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$06C2 d15:data:reset=0:$46C5 0:$06C5 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-4)) // * test_msbit 0:$06C6 0:data:reset=0:$FFEA 0:$06C7 0:000011:A1=A7:D8=D0 ld alu,4 // * test_msbit 0:$06C8 0:data:reset=0:$0004 0:$06C9 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$06CA z:data:reset=0:$0000 if !z // * TRAP 0:$06CB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$06CC 0:data:reset=0:$46CB 0:$06CD 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$06CE d15:data:reset=0:$7FF8 1:$06CB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$06CC d15:data:reset=0:$46CF test_msbit 5 0:$06CF 0:000011:A1=A7:DE=D0 ld msbit,~(1<<5) // * test_msbit 0:$06D0 0:data:reset=0:$FFDF 0:$06D1 0:000011:A1=A7:D8=D0 ld alu,5 // * test_msbit 0:$06D2 0:data:reset=0:$0005 0:$06D3 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$06D4 z:data:reset=0:$0000 if !z // * TRAP 0:$06D5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$06D6 0:data:reset=0:$46D5 0:$06D7 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$06D8 d15:data:reset=0:$7FF8 1:$06D5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$06D6 d15:data:reset=0:$46D9 0:$06D9 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-5)) // * test_msbit 0:$06DA 0:data:reset=0:$FFD5 0:$06DB 0:000011:A1=A7:D8=D0 ld alu,5 // * test_msbit 0:$06DC 0:data:reset=0:$0005 0:$06DD 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$06DE z:data:reset=0:$0000 if !z // * TRAP 0:$06DF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$06E0 0:data:reset=0:$46DF 0:$06E1 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$06E2 d15:data:reset=0:$7FF8 1:$06DF 1:000011:A1=A7:D0=D0 then // * TRAP 1:$06E0 d15:data:reset=0:$46E3 test_msbit 6 0:$06E3 0:000011:A1=A7:DE=D0 ld msbit,~(1<<6) // * test_msbit 0:$06E4 0:data:reset=0:$FFBF 0:$06E5 0:000011:A1=A7:D8=D0 ld alu,6 // * test_msbit 0:$06E6 0:data:reset=0:$0006 0:$06E7 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$06E8 z:data:reset=0:$0000 if !z // * TRAP 0:$06E9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$06EA 0:data:reset=0:$46E9 0:$06EB 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$06EC d15:data:reset=0:$7FF8 1:$06E9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$06EA d15:data:reset=0:$46ED 0:$06ED 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-6)) // * test_msbit 0:$06EE 0:data:reset=0:$FFAA 0:$06EF 0:000011:A1=A7:D8=D0 ld alu,6 // * test_msbit 0:$06F0 0:data:reset=0:$0006 0:$06F1 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$06F2 z:data:reset=0:$0000 if !z // * TRAP 0:$06F3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$06F4 0:data:reset=0:$46F3 0:$06F5 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$06F6 d15:data:reset=0:$7FF8 1:$06F3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$06F4 d15:data:reset=0:$46F7 test_msbit 7 0:$06F7 0:000011:A1=A7:DE=D0 ld msbit,~(1<<7) // * test_msbit 0:$06F8 0:data:reset=0:$FF7F 0:$06F9 0:000011:A1=A7:D8=D0 ld alu,7 // * test_msbit 0:$06FA 0:data:reset=0:$0007 0:$06FB 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$06FC z:data:reset=0:$0000 if !z // * TRAP 0:$06FD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$06FE 0:data:reset=0:$46FD 0:$06FF 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0700 d15:data:reset=0:$7FF8 1:$06FD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$06FE d15:data:reset=0:$4701 0:$0701 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-7)) // * test_msbit 0:$0702 0:data:reset=0:$FF55 0:$0703 0:000011:A1=A7:D8=D0 ld alu,7 // * test_msbit 0:$0704 0:data:reset=0:$0007 0:$0705 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0706 z:data:reset=0:$0000 if !z // * TRAP 0:$0707 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0708 0:data:reset=0:$4707 0:$0709 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$070A d15:data:reset=0:$7FF8 1:$0707 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0708 d15:data:reset=0:$470B test_msbit 8 0:$070B 0:000011:A1=A7:DE=D0 ld msbit,~(1<<8) // * test_msbit 0:$070C 0:data:reset=0:$FEFF 0:$070D 0:000011:A1=A6:D8=D0 ld alu,8 // * test_msbit 0:$070E 0:data:reset=0:$0008 0:$070F 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0710 z:data:reset=0:$0000 if !z // * TRAP 0:$0711 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0712 0:data:reset=0:$4711 0:$0713 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0714 d15:data:reset=0:$7FF8 1:$0711 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0712 d15:data:reset=0:$4715 0:$0715 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-8)) // * test_msbit 0:$0716 0:data:reset=0:$FEAA 0:$0717 0:000011:A1=A6:D8=D0 ld alu,8 // * test_msbit 0:$0718 0:data:reset=0:$0008 0:$0719 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$071A z:data:reset=0:$0000 if !z // * TRAP 0:$071B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$071C 0:data:reset=0:$471B 0:$071D 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$071E d15:data:reset=0:$7FF8 1:$071B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$071C d15:data:reset=0:$471F test_msbit 9 0:$071F 0:000011:A1=A7:DE=D0 ld msbit,~(1<<9) // * test_msbit 0:$0720 0:data:reset=0:$FDFF 0:$0721 0:000011:A1=A5:D8=D0 ld alu,9 // * test_msbit 0:$0722 0:data:reset=0:$0009 0:$0723 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0724 z:data:reset=0:$0000 if !z // * TRAP 0:$0725 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0726 0:data:reset=0:$4725 0:$0727 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0728 d15:data:reset=0:$7FF8 1:$0725 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0726 d15:data:reset=0:$4729 0:$0729 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-9)) // * test_msbit 0:$072A 0:data:reset=0:$FD55 0:$072B 0:000011:A1=A5:D8=D0 ld alu,9 // * test_msbit 0:$072C 0:data:reset=0:$0009 0:$072D 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$072E z:data:reset=0:$0000 if !z // * TRAP 0:$072F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0730 0:data:reset=0:$472F 0:$0731 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0732 d15:data:reset=0:$7FF8 1:$072F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0730 d15:data:reset=0:$4733 test_msbit 10 0:$0733 0:000011:A1=A7:DE=D0 ld msbit,~(1<<10) // * test_msbit 0:$0734 0:data:reset=0:$FBFF 0:$0735 0:000011:A1=A3:D8=D0 ld alu,10 // * test_msbit 0:$0736 0:data:reset=0:$000A 0:$0737 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0738 z:data:reset=0:$0000 if !z // * TRAP 0:$0739 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$073A 0:data:reset=0:$4739 0:$073B 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$073C d15:data:reset=0:$7FF8 1:$0739 1:000011:A1=A7:D0=D0 then // * TRAP 1:$073A d15:data:reset=0:$473D 0:$073D 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-10)) // * test_msbit 0:$073E 0:data:reset=0:$FAAA 0:$073F 0:000011:A1=A2:D8=D0 ld alu,10 // * test_msbit 0:$0740 0:data:reset=0:$000A 0:$0741 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0742 z:data:reset=0:$0000 if !z // * TRAP 0:$0743 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0744 0:data:reset=0:$4743 0:$0745 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0746 d15:data:reset=0:$7FF8 1:$0743 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0744 d15:data:reset=0:$4747 test_msbit 11 0:$0747 0:000011:A1=A7:DE=D0 ld msbit,~(1<<11) // * test_msbit 0:$0748 0:data:reset=0:$F7FF 0:$0749 0:000011:A1=A7:D8=D0 ld alu,11 // * test_msbit 0:$074A 0:data:reset=0:$000B 0:$074B 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$074C z:data:reset=0:$0000 if !z // * TRAP 0:$074D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$074E 0:data:reset=0:$474D 0:$074F 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0750 d15:data:reset=0:$7FF8 1:$074D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$074E d15:data:reset=0:$4751 0:$0751 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-11)) // * test_msbit 0:$0752 0:data:reset=0:$F555 0:$0753 0:000011:A1=A5:D8=D0 ld alu,11 // * test_msbit 0:$0754 0:data:reset=0:$000B 0:$0755 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0756 z:data:reset=0:$0000 if !z // * TRAP 0:$0757 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0758 0:data:reset=0:$4757 0:$0759 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$075A d15:data:reset=0:$7FF8 1:$0757 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0758 d15:data:reset=0:$475B test_msbit 12 0:$075B 0:000011:A1=A7:DE=D0 ld msbit,~(1<<12) // * test_msbit 0:$075C 0:data:reset=0:$EFFF 0:$075D 0:000011:A1=A7:D8=D0 ld alu,12 // * test_msbit 0:$075E 0:data:reset=0:$000C 0:$075F 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0760 z:data:reset=0:$0000 if !z // * TRAP 0:$0761 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0762 0:data:reset=0:$4761 0:$0763 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0764 d15:data:reset=0:$7FF8 1:$0761 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0762 d15:data:reset=0:$4765 0:$0765 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-12)) // * test_msbit 0:$0766 0:data:reset=0:$EAAA 0:$0767 0:000011:A1=A2:D8=D0 ld alu,12 // * test_msbit 0:$0768 0:data:reset=0:$000C 0:$0769 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$076A z:data:reset=0:$0000 if !z // * TRAP 0:$076B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$076C 0:data:reset=0:$476B 0:$076D 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$076E d15:data:reset=0:$7FF8 1:$076B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$076C d15:data:reset=0:$476F test_msbit 13 0:$076F 0:000011:A1=A7:DE=D0 ld msbit,~(1<<13) // * test_msbit 0:$0770 0:data:reset=0:$DFFF 0:$0771 0:000011:A1=A7:D8=D0 ld alu,13 // * test_msbit 0:$0772 0:data:reset=0:$000D 0:$0773 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0774 z:data:reset=0:$0000 if !z // * TRAP 0:$0775 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0776 0:data:reset=0:$4775 0:$0777 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0778 d15:data:reset=0:$7FF8 1:$0775 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0776 d15:data:reset=0:$4779 0:$0779 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-13)) // * test_msbit 0:$077A 0:data:reset=0:$D555 0:$077B 0:000011:A1=A5:D8=D0 ld alu,13 // * test_msbit 0:$077C 0:data:reset=0:$000D 0:$077D 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$077E z:data:reset=0:$0000 if !z // * TRAP 0:$077F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0780 0:data:reset=0:$477F 0:$0781 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0782 d15:data:reset=0:$7FF8 1:$077F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0780 d15:data:reset=0:$4783 test_msbit 14 0:$0783 0:000011:A1=A7:DE=D0 ld msbit,~(1<<14) // * test_msbit 0:$0784 0:data:reset=0:$BFFF 0:$0785 0:000011:A1=A7:D8=D0 ld alu,14 // * test_msbit 0:$0786 0:data:reset=0:$000E 0:$0787 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0788 z:data:reset=0:$0000 if !z // * TRAP 0:$0789 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$078A 0:data:reset=0:$4789 0:$078B 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$078C d15:data:reset=0:$7FF8 1:$0789 1:000011:A1=A7:D0=D0 then // * TRAP 1:$078A d15:data:reset=0:$478D 0:$078D 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-14)) // * test_msbit 0:$078E 0:data:reset=0:$AAAA 0:$078F 0:000011:A1=A2:D8=D0 ld alu,14 // * test_msbit 0:$0790 0:data:reset=0:$000E 0:$0791 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$0792 z:data:reset=0:$0000 if !z // * TRAP 0:$0793 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0794 0:data:reset=0:$4793 0:$0795 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0796 d15:data:reset=0:$7FF8 1:$0793 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0794 d15:data:reset=0:$4797 test_msbit 15 0:$0797 0:000011:A1=A7:DE=D0 ld msbit,~(1<<15) // * test_msbit 0:$0798 0:data:reset=0:$7FFF 0:$0799 0:000011:A1=A7:D8=D0 ld alu,15 // * test_msbit 0:$079A 0:data:reset=0:$000F 0:$079B 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$079C z:data:reset=0:$0000 if !z // * TRAP 0:$079D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$079E 0:data:reset=0:$479D 0:$079F 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$07A0 d15:data:reset=0:$7FF8 1:$079D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$079E d15:data:reset=0:$47A1 0:$07A1 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-15)) // * test_msbit 0:$07A2 0:data:reset=0:$5555 0:$07A3 0:000011:A1=A5:D8=D0 ld alu,15 // * test_msbit 0:$07A4 0:data:reset=0:$000F 0:$07A5 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$07A6 z:data:reset=0:$0000 if !z // * TRAP 0:$07A7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$07A8 0:data:reset=0:$47A7 0:$07A9 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$07AA d15:data:reset=0:$7FF8 1:$07A7 1:000011:A1=A7:D0=D0 then // * TRAP 1:$07A8 d15:data:reset=0:$47AB // D2A, A2D: 0:$07AB 0:000011:A1=A7:D8=D0 ld alu,0 0:$07AC 0:data:reset=0:$0000 0:$07AD 0:000011:A3=A1:D3=D8 ld a0,alu 0:$07AE 0:000001:A1=A3:D3=D3 equ a0 TRAP !z 0:$07AF z:data:reset=0:$0000 if !z // * TRAP 0:$07B0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$07B1 0:data:reset=0:$47B0 0:$07B2 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$07B3 d15:data:reset=0:$7FF8 1:$07B0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$07B1 d15:data:reset=0:$47B4 0:$07B4 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$07B5 0:data:reset=0:$FFFF 0:$07B6 0:000011:A3=A1:D3=D8 ld a0,alu 0:$07B7 0:000001:A1=A3:D3=D3 equ a0 TRAP !z 0:$07B8 z:data:reset=0:$0000 if !z // * TRAP 0:$07B9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$07BA 0:data:reset=0:$47B9 0:$07BB 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$07BC d15:data:reset=0:$7FF8 1:$07B9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$07BA d15:data:reset=0:$47BD 0:$07BD 0:000011:A1=A7:D8=D0 ld alu,$55aa 0:$07BE 0:data:reset=0:$55AA 0:$07BF 0:000011:A3=A1:D3=D8 ld a0,alu 0:$07C0 0:000001:A1=A3:D3=D3 equ a0 TRAP !z 0:$07C1 z:data:reset=0:$0000 if !z // * TRAP 0:$07C2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$07C3 0:data:reset=0:$47C2 0:$07C4 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$07C5 d15:data:reset=0:$7FF8 1:$07C2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$07C3 d15:data:reset=0:$47C6 0:$07C6 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$07C7 0:data:reset=0:$AA55 0:$07C8 0:000011:A3=A1:D3=D8 ld a0,alu 0:$07C9 0:000001:A1=A3:D3=D3 equ a0 TRAP !z 0:$07CA z:data:reset=0:$0000 if !z // * TRAP 0:$07CB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$07CC 0:data:reset=0:$47CB 0:$07CD 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$07CE d15:data:reset=0:$7FF8 1:$07CB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$07CC d15:data:reset=0:$47CF // D2AR: 0:$07CF 0:000011:A1=A7:DF=D0 ld d2ar,0 0:$07D0 0:data:reset=0:$0000 0:$07D1 0:000011:A1=A7:D3=D3 tst d2ar TRAP !z 0:$07D2 z:data:reset=0:$0000 if !z // * TRAP 0:$07D3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$07D4 0:data:reset=0:$47D3 0:$07D5 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$07D6 d15:data:reset=0:$7FF8 1:$07D3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$07D4 d15:data:reset=0:$47D7 0:$07D7 0:000011:A1=A7:DF=D0 ld d2ar,$ffff 0:$07D8 0:data:reset=0:$FFFF 0:$07D9 0:001011:A1=A7:D3=D3 tstn d2ar TRAP !z 0:$07DA z:data:reset=0:$0000 if !z // * TRAP 0:$07DB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$07DC 0:data:reset=0:$47DB 0:$07DD 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$07DE d15:data:reset=0:$7FF8 1:$07DB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$07DC d15:data:reset=0:$47DF 0:$07DF 0:000011:A1=A7:D8=D0 ld alu,$55aa 0:$07E0 0:data:reset=0:$55AA 0:$07E1 0:000011:A1=A5:DF=D8 ld d2ar,alu 0:$07E2 0:000001:A1=A7:D3=D3 equ d2ar TRAP !z 0:$07E3 z:data:reset=0:$0000 if !z // * TRAP 0:$07E4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$07E5 0:data:reset=0:$47E4 0:$07E6 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$07E7 d15:data:reset=0:$7FF8 1:$07E4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$07E5 d15:data:reset=0:$47E8 0:$07E8 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$07E9 0:data:reset=0:$AA55 0:$07EA 0:000011:A1=A2:DF=D8 ld d2ar,alu 0:$07EB 0:000001:A1=A7:D3=D3 equ d2ar TRAP !z 0:$07EC z:data:reset=0:$0000 if !z // * TRAP 0:$07ED 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$07EE 0:data:reset=0:$47ED 0:$07EF 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$07F0 d15:data:reset=0:$7FF8 1:$07ED 1:000011:A1=A7:D0=D0 then // * TRAP 1:$07EE d15:data:reset=0:$47F1 // --- file: "dregs.asm" --- #include "aregs.asm" // +++ file: "aregs.asm" +++ // instr testIncrDecrA(AR,N) // ld AR,N-1 // ld AR,AR+1 // ld alu,N // equ AR // TRAP !z // ld AR,AR-1 // ld alu,N-1 // equ AR // TRAP !z // end // instr testAreg(AR) // ld AR,0 // tst AR // TRAP !z // // ld AR,$ffff // tstn AR // TRAP !z // // ld alu,$55aa // ld AR,alu // equ AR // TRAP !z // // ld alu,$aa55 // ld AR,alu // equ AR // TRAP !z // // testIncrDecrA AR,1 // testIncrDecrA AR,2 // testIncrDecrA AR,4 // testIncrDecrA AR,8 // testIncrDecrA AR,$10 // testIncrDecrA AR,$20 // testIncrDecrA AR,$40 // testIncrDecrA AR,$80 // testIncrDecrA AR,$100 // testIncrDecrA AR,$200 // testIncrDecrA AR,$400 // testIncrDecrA AR,$800 // testIncrDecrA AR,$1000 // testIncrDecrA AR,$2000 // testIncrDecrA AR,$4000 // testIncrDecrA AR,$8000 // testIncrDecrA AR,0 // end testAreg a0 0:$07F1 0:000011:A3=A1:D3=D0 ld a0,0 // * testAreg 0:$07F2 0:data:reset=0:$0000 0:$07F3 0:000011:A1=A3:D3=D3 tst a0 // * testAreg TRAP !z // * testAreg 0:$07F4 z:data:reset=0:$0000 if !z // * TRAP 0:$07F5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$07F6 0:data:reset=0:$47F5 0:$07F7 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$07F8 d15:data:reset=0:$7FF8 1:$07F5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$07F6 d15:data:reset=0:$47F9 0:$07F9 0:000011:A3=A1:D3=D0 ld a0,$ffff // * testAreg 0:$07FA 0:data:reset=0:$FFFF 0:$07FB 0:001011:A1=A3:D3=D3 tstn a0 // * testAreg TRAP !z // * testAreg 0:$07FC z:data:reset=0:$0000 if !z // * TRAP 0:$07FD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$07FE 0:data:reset=0:$47FD 0:$07FF 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0800 d15:data:reset=0:$7FF8 1:$07FD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$07FE d15:data:reset=0:$4801 0:$0801 0:000011:A1=A7:D8=D0 ld alu,$55aa // * testAreg 0:$0802 0:data:reset=0:$55AA 0:$0803 0:000011:A3=A1:D3=D8 ld a0,alu // * testAreg 0:$0804 0:000001:A1=A3:D3=D3 equ a0 // * testAreg TRAP !z // * testAreg 0:$0805 z:data:reset=0:$0000 if !z // * TRAP 0:$0806 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0807 0:data:reset=0:$4806 0:$0808 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0809 d15:data:reset=0:$7FF8 1:$0806 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0807 d15:data:reset=0:$480A 0:$080A 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * testAreg 0:$080B 0:data:reset=0:$AA55 0:$080C 0:000011:A3=A1:D3=D8 ld a0,alu // * testAreg 0:$080D 0:000001:A1=A3:D3=D3 equ a0 // * testAreg TRAP !z // * testAreg 0:$080E z:data:reset=0:$0000 if !z // * TRAP 0:$080F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0810 0:data:reset=0:$480F 0:$0811 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0812 d15:data:reset=0:$7FF8 1:$080F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0810 d15:data:reset=0:$4813 testIncrDecrA a0,1 // * testAreg 0:$0813 0:000011:A3=A1:D3=D0 ld a0,1 -1 // * testIncrDecrA 0:$0814 0:data:reset=0:$0000 0:$0815 0:000011:A3=A3:D3=D8 ld a0,a0+1 // * testIncrDecrA 0:$0816 0:000011:A1=A3:D8=D0 ld alu,1 // * testIncrDecrA 0:$0817 0:data:reset=0:$0001 0:$0818 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0819 z:data:reset=0:$0000 if !z // * TRAP 0:$081A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$081B 0:data:reset=0:$481A 0:$081C 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$081D d15:data:reset=0:$7FF8 1:$081A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$081B d15:data:reset=0:$481E 0:$081E 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$081F 0:000011:A1=A3:D8=D0 ld alu,1 -1 // * testIncrDecrA 0:$0820 0:data:reset=0:$0000 0:$0821 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0822 z:data:reset=0:$0000 if !z // * TRAP 0:$0823 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0824 0:data:reset=0:$4823 0:$0825 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0826 d15:data:reset=0:$7FF8 1:$0823 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0824 d15:data:reset=0:$4827 testIncrDecrA a0,2 // * testAreg 0:$0827 0:000011:A3=A1:D3=D0 ld a0,2 -1 // * testIncrDecrA 0:$0828 0:data:reset=0:$0001 0:$0829 0:000011:A3=A3:D3=D8 ld a0,a0+1 // * testIncrDecrA 0:$082A 0:000011:A1=A3:D8=D0 ld alu,2 // * testIncrDecrA 0:$082B 0:data:reset=0:$0002 0:$082C 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$082D z:data:reset=0:$0000 if !z // * TRAP 0:$082E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$082F 0:data:reset=0:$482E 0:$0830 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0831 d15:data:reset=0:$7FF8 1:$082E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$082F d15:data:reset=0:$4832 0:$0832 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$0833 0:000011:A1=A3:D8=D0 ld alu,2 -1 // * testIncrDecrA 0:$0834 0:data:reset=0:$0001 0:$0835 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0836 z:data:reset=0:$0000 if !z // * TRAP 0:$0837 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0838 0:data:reset=0:$4837 0:$0839 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$083A d15:data:reset=0:$7FF8 1:$0837 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0838 d15:data:reset=0:$483B testIncrDecrA a0,4 // * testAreg 0:$083B 0:000011:A3=A1:D3=D0 ld a0,4 -1 // * testIncrDecrA 0:$083C 0:data:reset=0:$0003 0:$083D 0:000011:A3=A3:D3=D3 ld a0,a0+1 // * testIncrDecrA 0:$083E 0:000011:A1=A3:D8=D0 ld alu,4 // * testIncrDecrA 0:$083F 0:data:reset=0:$0004 0:$0840 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0841 z:data:reset=0:$0000 if !z // * TRAP 0:$0842 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0843 0:data:reset=0:$4842 0:$0844 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0845 d15:data:reset=0:$7FF8 1:$0842 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0843 d15:data:reset=0:$4846 0:$0846 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$0847 0:000011:A1=A3:D8=D0 ld alu,4 -1 // * testIncrDecrA 0:$0848 0:data:reset=0:$0003 0:$0849 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$084A z:data:reset=0:$0000 if !z // * TRAP 0:$084B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$084C 0:data:reset=0:$484B 0:$084D 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$084E d15:data:reset=0:$7FF8 1:$084B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$084C d15:data:reset=0:$484F testIncrDecrA a0,8 // * testAreg 0:$084F 0:000011:A3=A1:D3=D0 ld a0,8 -1 // * testIncrDecrA 0:$0850 0:data:reset=0:$0007 0:$0851 0:000011:A3=A3:D3=D7 ld a0,a0+1 // * testIncrDecrA 0:$0852 0:000011:A1=A3:D8=D0 ld alu,8 // * testIncrDecrA 0:$0853 0:data:reset=0:$0008 0:$0854 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0855 z:data:reset=0:$0000 if !z // * TRAP 0:$0856 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0857 0:data:reset=0:$4856 0:$0858 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0859 d15:data:reset=0:$7FF8 1:$0856 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0857 d15:data:reset=0:$485A 0:$085A 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$085B 0:000011:A1=A3:D8=D0 ld alu,8 -1 // * testIncrDecrA 0:$085C 0:data:reset=0:$0007 0:$085D 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$085E z:data:reset=0:$0000 if !z // * TRAP 0:$085F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0860 0:data:reset=0:$485F 0:$0861 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0862 d15:data:reset=0:$7FF8 1:$085F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0860 d15:data:reset=0:$4863 testIncrDecrA a0,$10 // * testAreg 0:$0863 0:000011:A3=A1:D3=D0 ld a0,$10 -1 // * testIncrDecrA 0:$0864 0:data:reset=0:$000F 0:$0865 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$0866 0:000011:A1=A3:D8=D0 ld alu,$10 // * testIncrDecrA 0:$0867 0:data:reset=0:$0010 0:$0868 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0869 z:data:reset=0:$0000 if !z // * TRAP 0:$086A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$086B 0:data:reset=0:$486A 0:$086C 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$086D d15:data:reset=0:$7FF8 1:$086A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$086B d15:data:reset=0:$486E 0:$086E 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$086F 0:000011:A1=A3:D8=D0 ld alu,$10 -1 // * testIncrDecrA 0:$0870 0:data:reset=0:$000F 0:$0871 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0872 z:data:reset=0:$0000 if !z // * TRAP 0:$0873 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0874 0:data:reset=0:$4873 0:$0875 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0876 d15:data:reset=0:$7FF8 1:$0873 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0874 d15:data:reset=0:$4877 testIncrDecrA a0,$20 // * testAreg 0:$0877 0:000011:A3=A1:D3=D0 ld a0,$20 -1 // * testIncrDecrA 0:$0878 0:data:reset=0:$001F 0:$0879 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$087A 0:000011:A1=A3:D8=D0 ld alu,$20 // * testIncrDecrA 0:$087B 0:data:reset=0:$0020 0:$087C 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$087D z:data:reset=0:$0000 if !z // * TRAP 0:$087E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$087F 0:data:reset=0:$487E 0:$0880 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0881 d15:data:reset=0:$7FF8 1:$087E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$087F d15:data:reset=0:$4882 0:$0882 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$0883 0:000011:A1=A3:D8=D0 ld alu,$20 -1 // * testIncrDecrA 0:$0884 0:data:reset=0:$001F 0:$0885 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0886 z:data:reset=0:$0000 if !z // * TRAP 0:$0887 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0888 0:data:reset=0:$4887 0:$0889 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$088A d15:data:reset=0:$7FF8 1:$0887 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0888 d15:data:reset=0:$488B testIncrDecrA a0,$40 // * testAreg 0:$088B 0:000011:A3=A1:D3=D0 ld a0,$40 -1 // * testIncrDecrA 0:$088C 0:data:reset=0:$003F 0:$088D 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$088E 0:000011:A1=A3:D8=D0 ld alu,$40 // * testIncrDecrA 0:$088F 0:data:reset=0:$0040 0:$0890 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0891 z:data:reset=0:$0000 if !z // * TRAP 0:$0892 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0893 0:data:reset=0:$4892 0:$0894 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0895 d15:data:reset=0:$7FF8 1:$0892 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0893 d15:data:reset=0:$4896 0:$0896 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$0897 0:000011:A1=A3:D8=D0 ld alu,$40 -1 // * testIncrDecrA 0:$0898 0:data:reset=0:$003F 0:$0899 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$089A z:data:reset=0:$0000 if !z // * TRAP 0:$089B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$089C 0:data:reset=0:$489B 0:$089D 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$089E d15:data:reset=0:$7FF8 1:$089B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$089C d15:data:reset=0:$489F testIncrDecrA a0,$80 // * testAreg 0:$089F 0:000011:A3=A1:D3=D0 ld a0,$80 -1 // * testIncrDecrA 0:$08A0 0:data:reset=0:$007F 0:$08A1 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$08A2 0:000011:A1=A3:D8=D0 ld alu,$80 // * testIncrDecrA 0:$08A3 0:data:reset=0:$0080 0:$08A4 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$08A5 z:data:reset=0:$0000 if !z // * TRAP 0:$08A6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$08A7 0:data:reset=0:$48A6 0:$08A8 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$08A9 d15:data:reset=0:$7FF8 1:$08A6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$08A7 d15:data:reset=0:$48AA 0:$08AA 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$08AB 0:000011:A1=A3:D8=D0 ld alu,$80 -1 // * testIncrDecrA 0:$08AC 0:data:reset=0:$007F 0:$08AD 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$08AE z:data:reset=0:$0000 if !z // * TRAP 0:$08AF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$08B0 0:data:reset=0:$48AF 0:$08B1 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$08B2 d15:data:reset=0:$7FF8 1:$08AF 1:000011:A1=A7:D0=D0 then // * TRAP 1:$08B0 d15:data:reset=0:$48B3 testIncrDecrA a0,$100 // * testAreg 0:$08B3 0:000011:A3=A1:D3=D0 ld a0,$100 -1 // * testIncrDecrA 0:$08B4 0:data:reset=0:$00FF 0:$08B5 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$08B6 0:000011:A1=A3:D8=D0 ld alu,$100 // * testIncrDecrA 0:$08B7 0:data:reset=0:$0100 0:$08B8 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$08B9 z:data:reset=0:$0000 if !z // * TRAP 0:$08BA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$08BB 0:data:reset=0:$48BA 0:$08BC 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$08BD d15:data:reset=0:$7FF8 1:$08BA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$08BB d15:data:reset=0:$48BE 0:$08BE 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$08BF 0:000011:A1=A3:D8=D0 ld alu,$100 -1 // * testIncrDecrA 0:$08C0 0:data:reset=0:$00FF 0:$08C1 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$08C2 z:data:reset=0:$0000 if !z // * TRAP 0:$08C3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$08C4 0:data:reset=0:$48C3 0:$08C5 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$08C6 d15:data:reset=0:$7FF8 1:$08C3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$08C4 d15:data:reset=0:$48C7 testIncrDecrA a0,$200 // * testAreg 0:$08C7 0:000011:A3=A1:D3=D0 ld a0,$200 -1 // * testIncrDecrA 0:$08C8 0:data:reset=0:$01FF 0:$08C9 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$08CA 0:000011:A1=A3:D8=D0 ld alu,$200 // * testIncrDecrA 0:$08CB 0:data:reset=0:$0200 0:$08CC 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$08CD z:data:reset=0:$0000 if !z // * TRAP 0:$08CE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$08CF 0:data:reset=0:$48CE 0:$08D0 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$08D1 d15:data:reset=0:$7FF8 1:$08CE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$08CF d15:data:reset=0:$48D2 0:$08D2 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$08D3 0:000011:A1=A3:D8=D0 ld alu,$200 -1 // * testIncrDecrA 0:$08D4 0:data:reset=0:$01FF 0:$08D5 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$08D6 z:data:reset=0:$0000 if !z // * TRAP 0:$08D7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$08D8 0:data:reset=0:$48D7 0:$08D9 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$08DA d15:data:reset=0:$7FF8 1:$08D7 1:000011:A1=A7:D0=D0 then // * TRAP 1:$08D8 d15:data:reset=0:$48DB testIncrDecrA a0,$400 // * testAreg 0:$08DB 0:000011:A3=A1:D3=D0 ld a0,$400 -1 // * testIncrDecrA 0:$08DC 0:data:reset=0:$03FF 0:$08DD 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$08DE 0:000011:A1=A3:D8=D0 ld alu,$400 // * testIncrDecrA 0:$08DF 0:data:reset=0:$0400 0:$08E0 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$08E1 z:data:reset=0:$0000 if !z // * TRAP 0:$08E2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$08E3 0:data:reset=0:$48E2 0:$08E4 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$08E5 d15:data:reset=0:$7FF8 1:$08E2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$08E3 d15:data:reset=0:$48E6 0:$08E6 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$08E7 0:000011:A1=A3:D8=D0 ld alu,$400 -1 // * testIncrDecrA 0:$08E8 0:data:reset=0:$03FF 0:$08E9 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$08EA z:data:reset=0:$0000 if !z // * TRAP 0:$08EB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$08EC 0:data:reset=0:$48EB 0:$08ED 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$08EE d15:data:reset=0:$7FF8 1:$08EB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$08EC d15:data:reset=0:$48EF testIncrDecrA a0,$800 // * testAreg 0:$08EF 0:000011:A3=A1:D3=D0 ld a0,$800 -1 // * testIncrDecrA 0:$08F0 0:data:reset=0:$07FF 0:$08F1 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$08F2 0:000011:A1=A3:D8=D0 ld alu,$800 // * testIncrDecrA 0:$08F3 0:data:reset=0:$0800 0:$08F4 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$08F5 z:data:reset=0:$0000 if !z // * TRAP 0:$08F6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$08F7 0:data:reset=0:$48F6 0:$08F8 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$08F9 d15:data:reset=0:$7FF8 1:$08F6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$08F7 d15:data:reset=0:$48FA 0:$08FA 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$08FB 0:000011:A1=A3:D8=D0 ld alu,$800 -1 // * testIncrDecrA 0:$08FC 0:data:reset=0:$07FF 0:$08FD 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$08FE z:data:reset=0:$0000 if !z // * TRAP 0:$08FF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0900 0:data:reset=0:$48FF 0:$0901 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$0902 d15:data:reset=0:$7FF8 1:$08FF 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0900 d15:data:reset=0:$4903 testIncrDecrA a0,$1000 // * testAreg 0:$0903 0:000011:A3=A1:D3=D0 ld a0,$1000 -1 // * testIncrDecrA 0:$0904 0:data:reset=0:$0FFF 0:$0905 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$0906 0:000011:A1=A3:D8=D0 ld alu,$1000 // * testIncrDecrA 0:$0907 0:data:reset=0:$1000 0:$0908 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0909 z:data:reset=0:$0000 if !z // * TRAP 0:$090A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$090B 0:data:reset=0:$490A 0:$090C 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$090D d15:data:reset=0:$7FF8 1:$090A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$090B d15:data:reset=0:$490E 0:$090E 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$090F 0:000011:A1=A3:D8=D0 ld alu,$1000 -1 // * testIncrDecrA 0:$0910 0:data:reset=0:$0FFF 0:$0911 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0912 z:data:reset=0:$0000 if !z // * TRAP 0:$0913 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0914 0:data:reset=0:$4913 0:$0915 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0916 d15:data:reset=0:$7FF8 1:$0913 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0914 d15:data:reset=0:$4917 testIncrDecrA a0,$2000 // * testAreg 0:$0917 0:000011:A3=A1:D3=D0 ld a0,$2000 -1 // * testIncrDecrA 0:$0918 0:data:reset=0:$1FFF 0:$0919 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$091A 0:000011:A1=A3:D8=D0 ld alu,$2000 // * testIncrDecrA 0:$091B 0:data:reset=0:$2000 0:$091C 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$091D z:data:reset=0:$0000 if !z // * TRAP 0:$091E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$091F 0:data:reset=0:$491E 0:$0920 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0921 d15:data:reset=0:$7FF8 1:$091E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$091F d15:data:reset=0:$4922 0:$0922 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$0923 0:000011:A1=A3:D8=D0 ld alu,$2000 -1 // * testIncrDecrA 0:$0924 0:data:reset=0:$1FFF 0:$0925 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0926 z:data:reset=0:$0000 if !z // * TRAP 0:$0927 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0928 0:data:reset=0:$4927 0:$0929 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$092A d15:data:reset=0:$7FF8 1:$0927 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0928 d15:data:reset=0:$492B testIncrDecrA a0,$4000 // * testAreg 0:$092B 0:000011:A3=A1:D3=D0 ld a0,$4000 -1 // * testIncrDecrA 0:$092C 0:data:reset=0:$3FFF 0:$092D 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$092E 0:000011:A1=A3:D8=D0 ld alu,$4000 // * testIncrDecrA 0:$092F 0:data:reset=0:$4000 0:$0930 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0931 z:data:reset=0:$0000 if !z // * TRAP 0:$0932 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0933 0:data:reset=0:$4932 0:$0934 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0935 d15:data:reset=0:$7FF8 1:$0932 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0933 d15:data:reset=0:$4936 0:$0936 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$0937 0:000011:A1=A3:D8=D0 ld alu,$4000 -1 // * testIncrDecrA 0:$0938 0:data:reset=0:$3FFF 0:$0939 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$093A z:data:reset=0:$0000 if !z // * TRAP 0:$093B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$093C 0:data:reset=0:$493B 0:$093D 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$093E d15:data:reset=0:$7FF8 1:$093B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$093C d15:data:reset=0:$493F testIncrDecrA a0,$8000 // * testAreg 0:$093F 0:000011:A3=A1:D3=D0 ld a0,$8000 -1 // * testIncrDecrA 0:$0940 0:data:reset=0:$7FFF 0:$0941 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$0942 0:000011:A1=A3:D8=D0 ld alu,$8000 // * testIncrDecrA 0:$0943 0:data:reset=0:$8000 0:$0944 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0945 z:data:reset=0:$0000 if !z // * TRAP 0:$0946 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0947 0:data:reset=0:$4946 0:$0948 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0949 d15:data:reset=0:$7FF8 1:$0946 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0947 d15:data:reset=0:$494A 0:$094A 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$094B 0:000011:A1=A3:D8=D0 ld alu,$8000 -1 // * testIncrDecrA 0:$094C 0:data:reset=0:$7FFF 0:$094D 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$094E z:data:reset=0:$0000 if !z // * TRAP 0:$094F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0950 0:data:reset=0:$494F 0:$0951 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0952 d15:data:reset=0:$7FF8 1:$094F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0950 d15:data:reset=0:$4953 testIncrDecrA a0,0 // * testAreg 0:$0953 0:000011:A3=A1:D3=D0 ld a0,0 -1 // * testIncrDecrA 0:$0954 0:data:reset=0:$FFFF 0:$0955 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$0956 0:000011:A1=A3:D8=D0 ld alu,0 // * testIncrDecrA 0:$0957 0:data:reset=0:$0000 0:$0958 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0959 z:data:reset=0:$0000 if !z // * TRAP 0:$095A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$095B 0:data:reset=0:$495A 0:$095C 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$095D d15:data:reset=0:$7FF8 1:$095A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$095B d15:data:reset=0:$495E 0:$095E 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$095F 0:000011:A1=A3:D8=D0 ld alu,0 -1 // * testIncrDecrA 0:$0960 0:data:reset=0:$FFFF 0:$0961 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0962 z:data:reset=0:$0000 if !z // * TRAP 0:$0963 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0964 0:data:reset=0:$4963 0:$0965 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0966 d15:data:reset=0:$7FF8 1:$0963 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0964 d15:data:reset=0:$4967 testAreg a1 0:$0967 0:000011:A4=A1:D3=D0 ld a1,0 // * testAreg 0:$0968 0:data:reset=0:$0000 0:$0969 0:000011:A1=A4:D3=D3 tst a1 // * testAreg TRAP !z // * testAreg 0:$096A z:data:reset=0:$0000 if !z // * TRAP 0:$096B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$096C 0:data:reset=0:$496B 0:$096D 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$096E d15:data:reset=0:$7FF8 1:$096B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$096C d15:data:reset=0:$496F 0:$096F 0:000011:A4=A1:D3=D0 ld a1,$ffff // * testAreg 0:$0970 0:data:reset=0:$FFFF 0:$0971 0:001011:A1=A4:D3=D3 tstn a1 // * testAreg TRAP !z // * testAreg 0:$0972 z:data:reset=0:$0000 if !z // * TRAP 0:$0973 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0974 0:data:reset=0:$4973 0:$0975 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0976 d15:data:reset=0:$7FF8 1:$0973 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0974 d15:data:reset=0:$4977 0:$0977 0:000011:A1=A7:D8=D0 ld alu,$55aa // * testAreg 0:$0978 0:data:reset=0:$55AA 0:$0979 0:000011:A4=A1:D3=D8 ld a1,alu // * testAreg 0:$097A 0:000001:A1=A4:D3=D3 equ a1 // * testAreg TRAP !z // * testAreg 0:$097B z:data:reset=0:$0000 if !z // * TRAP 0:$097C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$097D 0:data:reset=0:$497C 0:$097E 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$097F d15:data:reset=0:$7FF8 1:$097C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$097D d15:data:reset=0:$4980 0:$0980 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * testAreg 0:$0981 0:data:reset=0:$AA55 0:$0982 0:000011:A4=A1:D3=D8 ld a1,alu // * testAreg 0:$0983 0:000001:A1=A4:D3=D3 equ a1 // * testAreg TRAP !z // * testAreg 0:$0984 z:data:reset=0:$0000 if !z // * TRAP 0:$0985 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0986 0:data:reset=0:$4985 0:$0987 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0988 d15:data:reset=0:$7FF8 1:$0985 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0986 d15:data:reset=0:$4989 testIncrDecrA a1,1 // * testAreg 0:$0989 0:000011:A4=A1:D3=D0 ld a1,1 -1 // * testIncrDecrA 0:$098A 0:data:reset=0:$0000 0:$098B 0:000011:A4=A4:D3=D8 ld a1,a1+1 // * testIncrDecrA 0:$098C 0:000011:A1=A4:D8=D0 ld alu,1 // * testIncrDecrA 0:$098D 0:data:reset=0:$0001 0:$098E 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$098F z:data:reset=0:$0000 if !z // * TRAP 0:$0990 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0991 0:data:reset=0:$4990 0:$0992 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0993 d15:data:reset=0:$7FF8 1:$0990 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0991 d15:data:reset=0:$4994 0:$0994 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$0995 0:000011:A1=A4:D8=D0 ld alu,1 -1 // * testIncrDecrA 0:$0996 0:data:reset=0:$0000 0:$0997 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0998 z:data:reset=0:$0000 if !z // * TRAP 0:$0999 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$099A 0:data:reset=0:$4999 0:$099B 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$099C d15:data:reset=0:$7FF8 1:$0999 1:000011:A1=A7:D0=D0 then // * TRAP 1:$099A d15:data:reset=0:$499D testIncrDecrA a1,2 // * testAreg 0:$099D 0:000011:A4=A1:D3=D0 ld a1,2 -1 // * testIncrDecrA 0:$099E 0:data:reset=0:$0001 0:$099F 0:000011:A4=A4:D3=D8 ld a1,a1+1 // * testIncrDecrA 0:$09A0 0:000011:A1=A4:D8=D0 ld alu,2 // * testIncrDecrA 0:$09A1 0:data:reset=0:$0002 0:$09A2 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$09A3 z:data:reset=0:$0000 if !z // * TRAP 0:$09A4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$09A5 0:data:reset=0:$49A4 0:$09A6 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$09A7 d15:data:reset=0:$7FF8 1:$09A4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$09A5 d15:data:reset=0:$49A8 0:$09A8 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$09A9 0:000011:A1=A4:D8=D0 ld alu,2 -1 // * testIncrDecrA 0:$09AA 0:data:reset=0:$0001 0:$09AB 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$09AC z:data:reset=0:$0000 if !z // * TRAP 0:$09AD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$09AE 0:data:reset=0:$49AD 0:$09AF 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$09B0 d15:data:reset=0:$7FF8 1:$09AD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$09AE d15:data:reset=0:$49B1 testIncrDecrA a1,4 // * testAreg 0:$09B1 0:000011:A4=A1:D3=D0 ld a1,4 -1 // * testIncrDecrA 0:$09B2 0:data:reset=0:$0003 0:$09B3 0:000011:A4=A4:D3=D3 ld a1,a1+1 // * testIncrDecrA 0:$09B4 0:000011:A1=A4:D8=D0 ld alu,4 // * testIncrDecrA 0:$09B5 0:data:reset=0:$0004 0:$09B6 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$09B7 z:data:reset=0:$0000 if !z // * TRAP 0:$09B8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$09B9 0:data:reset=0:$49B8 0:$09BA 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$09BB d15:data:reset=0:$7FF8 1:$09B8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$09B9 d15:data:reset=0:$49BC 0:$09BC 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$09BD 0:000011:A1=A4:D8=D0 ld alu,4 -1 // * testIncrDecrA 0:$09BE 0:data:reset=0:$0003 0:$09BF 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$09C0 z:data:reset=0:$0000 if !z // * TRAP 0:$09C1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$09C2 0:data:reset=0:$49C1 0:$09C3 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$09C4 d15:data:reset=0:$7FF8 1:$09C1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$09C2 d15:data:reset=0:$49C5 testIncrDecrA a1,8 // * testAreg 0:$09C5 0:000011:A4=A1:D3=D0 ld a1,8 -1 // * testIncrDecrA 0:$09C6 0:data:reset=0:$0007 0:$09C7 0:000011:A4=A4:D3=D7 ld a1,a1+1 // * testIncrDecrA 0:$09C8 0:000011:A1=A4:D8=D0 ld alu,8 // * testIncrDecrA 0:$09C9 0:data:reset=0:$0008 0:$09CA 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$09CB z:data:reset=0:$0000 if !z // * TRAP 0:$09CC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$09CD 0:data:reset=0:$49CC 0:$09CE 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$09CF d15:data:reset=0:$7FF8 1:$09CC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$09CD d15:data:reset=0:$49D0 0:$09D0 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$09D1 0:000011:A1=A4:D8=D0 ld alu,8 -1 // * testIncrDecrA 0:$09D2 0:data:reset=0:$0007 0:$09D3 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$09D4 z:data:reset=0:$0000 if !z // * TRAP 0:$09D5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$09D6 0:data:reset=0:$49D5 0:$09D7 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$09D8 d15:data:reset=0:$7FF8 1:$09D5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$09D6 d15:data:reset=0:$49D9 testIncrDecrA a1,$10 // * testAreg 0:$09D9 0:000011:A4=A1:D3=D0 ld a1,$10 -1 // * testIncrDecrA 0:$09DA 0:data:reset=0:$000F 0:$09DB 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$09DC 0:000011:A1=A4:D8=D0 ld alu,$10 // * testIncrDecrA 0:$09DD 0:data:reset=0:$0010 0:$09DE 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$09DF z:data:reset=0:$0000 if !z // * TRAP 0:$09E0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$09E1 0:data:reset=0:$49E0 0:$09E2 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$09E3 d15:data:reset=0:$7FF8 1:$09E0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$09E1 d15:data:reset=0:$49E4 0:$09E4 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$09E5 0:000011:A1=A4:D8=D0 ld alu,$10 -1 // * testIncrDecrA 0:$09E6 0:data:reset=0:$000F 0:$09E7 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$09E8 z:data:reset=0:$0000 if !z // * TRAP 0:$09E9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$09EA 0:data:reset=0:$49E9 0:$09EB 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$09EC d15:data:reset=0:$7FF8 1:$09E9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$09EA d15:data:reset=0:$49ED testIncrDecrA a1,$20 // * testAreg 0:$09ED 0:000011:A4=A1:D3=D0 ld a1,$20 -1 // * testIncrDecrA 0:$09EE 0:data:reset=0:$001F 0:$09EF 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$09F0 0:000011:A1=A4:D8=D0 ld alu,$20 // * testIncrDecrA 0:$09F1 0:data:reset=0:$0020 0:$09F2 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$09F3 z:data:reset=0:$0000 if !z // * TRAP 0:$09F4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$09F5 0:data:reset=0:$49F4 0:$09F6 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$09F7 d15:data:reset=0:$7FF8 1:$09F4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$09F5 d15:data:reset=0:$49F8 0:$09F8 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$09F9 0:000011:A1=A4:D8=D0 ld alu,$20 -1 // * testIncrDecrA 0:$09FA 0:data:reset=0:$001F 0:$09FB 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$09FC z:data:reset=0:$0000 if !z // * TRAP 0:$09FD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$09FE 0:data:reset=0:$49FD 0:$09FF 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$0A00 d15:data:reset=0:$7FF8 1:$09FD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$09FE d15:data:reset=0:$4A01 testIncrDecrA a1,$40 // * testAreg 0:$0A01 0:000011:A4=A1:D3=D0 ld a1,$40 -1 // * testIncrDecrA 0:$0A02 0:data:reset=0:$003F 0:$0A03 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$0A04 0:000011:A1=A4:D8=D0 ld alu,$40 // * testIncrDecrA 0:$0A05 0:data:reset=0:$0040 0:$0A06 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A07 z:data:reset=0:$0000 if !z // * TRAP 0:$0A08 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A09 0:data:reset=0:$4A08 0:$0A0A 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A0B d15:data:reset=0:$7FF8 1:$0A08 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A09 d15:data:reset=0:$4A0C 0:$0A0C 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$0A0D 0:000011:A1=A4:D8=D0 ld alu,$40 -1 // * testIncrDecrA 0:$0A0E 0:data:reset=0:$003F 0:$0A0F 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A10 z:data:reset=0:$0000 if !z // * TRAP 0:$0A11 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A12 0:data:reset=0:$4A11 0:$0A13 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A14 d15:data:reset=0:$7FF8 1:$0A11 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A12 d15:data:reset=0:$4A15 testIncrDecrA a1,$80 // * testAreg 0:$0A15 0:000011:A4=A1:D3=D0 ld a1,$80 -1 // * testIncrDecrA 0:$0A16 0:data:reset=0:$007F 0:$0A17 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$0A18 0:000011:A1=A4:D8=D0 ld alu,$80 // * testIncrDecrA 0:$0A19 0:data:reset=0:$0080 0:$0A1A 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A1B z:data:reset=0:$0000 if !z // * TRAP 0:$0A1C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A1D 0:data:reset=0:$4A1C 0:$0A1E 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A1F d15:data:reset=0:$7FF8 1:$0A1C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A1D d15:data:reset=0:$4A20 0:$0A20 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$0A21 0:000011:A1=A4:D8=D0 ld alu,$80 -1 // * testIncrDecrA 0:$0A22 0:data:reset=0:$007F 0:$0A23 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A24 z:data:reset=0:$0000 if !z // * TRAP 0:$0A25 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A26 0:data:reset=0:$4A25 0:$0A27 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A28 d15:data:reset=0:$7FF8 1:$0A25 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A26 d15:data:reset=0:$4A29 testIncrDecrA a1,$100 // * testAreg 0:$0A29 0:000011:A4=A1:D3=D0 ld a1,$100 -1 // * testIncrDecrA 0:$0A2A 0:data:reset=0:$00FF 0:$0A2B 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$0A2C 0:000011:A1=A4:D8=D0 ld alu,$100 // * testIncrDecrA 0:$0A2D 0:data:reset=0:$0100 0:$0A2E 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A2F z:data:reset=0:$0000 if !z // * TRAP 0:$0A30 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A31 0:data:reset=0:$4A30 0:$0A32 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A33 d15:data:reset=0:$7FF8 1:$0A30 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A31 d15:data:reset=0:$4A34 0:$0A34 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$0A35 0:000011:A1=A4:D8=D0 ld alu,$100 -1 // * testIncrDecrA 0:$0A36 0:data:reset=0:$00FF 0:$0A37 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A38 z:data:reset=0:$0000 if !z // * TRAP 0:$0A39 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A3A 0:data:reset=0:$4A39 0:$0A3B 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A3C d15:data:reset=0:$7FF8 1:$0A39 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A3A d15:data:reset=0:$4A3D testIncrDecrA a1,$200 // * testAreg 0:$0A3D 0:000011:A4=A1:D3=D0 ld a1,$200 -1 // * testIncrDecrA 0:$0A3E 0:data:reset=0:$01FF 0:$0A3F 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$0A40 0:000011:A1=A4:D8=D0 ld alu,$200 // * testIncrDecrA 0:$0A41 0:data:reset=0:$0200 0:$0A42 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A43 z:data:reset=0:$0000 if !z // * TRAP 0:$0A44 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A45 0:data:reset=0:$4A44 0:$0A46 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A47 d15:data:reset=0:$7FF8 1:$0A44 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A45 d15:data:reset=0:$4A48 0:$0A48 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$0A49 0:000011:A1=A4:D8=D0 ld alu,$200 -1 // * testIncrDecrA 0:$0A4A 0:data:reset=0:$01FF 0:$0A4B 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A4C z:data:reset=0:$0000 if !z // * TRAP 0:$0A4D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A4E 0:data:reset=0:$4A4D 0:$0A4F 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A50 d15:data:reset=0:$7FF8 1:$0A4D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A4E d15:data:reset=0:$4A51 testIncrDecrA a1,$400 // * testAreg 0:$0A51 0:000011:A4=A1:D3=D0 ld a1,$400 -1 // * testIncrDecrA 0:$0A52 0:data:reset=0:$03FF 0:$0A53 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$0A54 0:000011:A1=A4:D8=D0 ld alu,$400 // * testIncrDecrA 0:$0A55 0:data:reset=0:$0400 0:$0A56 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A57 z:data:reset=0:$0000 if !z // * TRAP 0:$0A58 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A59 0:data:reset=0:$4A58 0:$0A5A 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A5B d15:data:reset=0:$7FF8 1:$0A58 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A59 d15:data:reset=0:$4A5C 0:$0A5C 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$0A5D 0:000011:A1=A4:D8=D0 ld alu,$400 -1 // * testIncrDecrA 0:$0A5E 0:data:reset=0:$03FF 0:$0A5F 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A60 z:data:reset=0:$0000 if !z // * TRAP 0:$0A61 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A62 0:data:reset=0:$4A61 0:$0A63 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A64 d15:data:reset=0:$7FF8 1:$0A61 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A62 d15:data:reset=0:$4A65 testIncrDecrA a1,$800 // * testAreg 0:$0A65 0:000011:A4=A1:D3=D0 ld a1,$800 -1 // * testIncrDecrA 0:$0A66 0:data:reset=0:$07FF 0:$0A67 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$0A68 0:000011:A1=A4:D8=D0 ld alu,$800 // * testIncrDecrA 0:$0A69 0:data:reset=0:$0800 0:$0A6A 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A6B z:data:reset=0:$0000 if !z // * TRAP 0:$0A6C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A6D 0:data:reset=0:$4A6C 0:$0A6E 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A6F d15:data:reset=0:$7FF8 1:$0A6C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A6D d15:data:reset=0:$4A70 0:$0A70 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$0A71 0:000011:A1=A4:D8=D0 ld alu,$800 -1 // * testIncrDecrA 0:$0A72 0:data:reset=0:$07FF 0:$0A73 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A74 z:data:reset=0:$0000 if !z // * TRAP 0:$0A75 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A76 0:data:reset=0:$4A75 0:$0A77 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A78 d15:data:reset=0:$7FF8 1:$0A75 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A76 d15:data:reset=0:$4A79 testIncrDecrA a1,$1000 // * testAreg 0:$0A79 0:000011:A4=A1:D3=D0 ld a1,$1000 -1 // * testIncrDecrA 0:$0A7A 0:data:reset=0:$0FFF 0:$0A7B 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$0A7C 0:000011:A1=A4:D8=D0 ld alu,$1000 // * testIncrDecrA 0:$0A7D 0:data:reset=0:$1000 0:$0A7E 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A7F z:data:reset=0:$0000 if !z // * TRAP 0:$0A80 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A81 0:data:reset=0:$4A80 0:$0A82 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A83 d15:data:reset=0:$7FF8 1:$0A80 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A81 d15:data:reset=0:$4A84 0:$0A84 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$0A85 0:000011:A1=A4:D8=D0 ld alu,$1000 -1 // * testIncrDecrA 0:$0A86 0:data:reset=0:$0FFF 0:$0A87 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A88 z:data:reset=0:$0000 if !z // * TRAP 0:$0A89 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A8A 0:data:reset=0:$4A89 0:$0A8B 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A8C d15:data:reset=0:$7FF8 1:$0A89 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A8A d15:data:reset=0:$4A8D testIncrDecrA a1,$2000 // * testAreg 0:$0A8D 0:000011:A4=A1:D3=D0 ld a1,$2000 -1 // * testIncrDecrA 0:$0A8E 0:data:reset=0:$1FFF 0:$0A8F 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$0A90 0:000011:A1=A4:D8=D0 ld alu,$2000 // * testIncrDecrA 0:$0A91 0:data:reset=0:$2000 0:$0A92 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A93 z:data:reset=0:$0000 if !z // * TRAP 0:$0A94 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A95 0:data:reset=0:$4A94 0:$0A96 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0A97 d15:data:reset=0:$7FF8 1:$0A94 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A95 d15:data:reset=0:$4A98 0:$0A98 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$0A99 0:000011:A1=A4:D8=D0 ld alu,$2000 -1 // * testIncrDecrA 0:$0A9A 0:data:reset=0:$1FFF 0:$0A9B 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0A9C z:data:reset=0:$0000 if !z // * TRAP 0:$0A9D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0A9E 0:data:reset=0:$4A9D 0:$0A9F 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0AA0 d15:data:reset=0:$7FF8 1:$0A9D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0A9E d15:data:reset=0:$4AA1 testIncrDecrA a1,$4000 // * testAreg 0:$0AA1 0:000011:A4=A1:D3=D0 ld a1,$4000 -1 // * testIncrDecrA 0:$0AA2 0:data:reset=0:$3FFF 0:$0AA3 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$0AA4 0:000011:A1=A4:D8=D0 ld alu,$4000 // * testIncrDecrA 0:$0AA5 0:data:reset=0:$4000 0:$0AA6 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0AA7 z:data:reset=0:$0000 if !z // * TRAP 0:$0AA8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0AA9 0:data:reset=0:$4AA8 0:$0AAA 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0AAB d15:data:reset=0:$7FF8 1:$0AA8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0AA9 d15:data:reset=0:$4AAC 0:$0AAC 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$0AAD 0:000011:A1=A4:D8=D0 ld alu,$4000 -1 // * testIncrDecrA 0:$0AAE 0:data:reset=0:$3FFF 0:$0AAF 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0AB0 z:data:reset=0:$0000 if !z // * TRAP 0:$0AB1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0AB2 0:data:reset=0:$4AB1 0:$0AB3 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0AB4 d15:data:reset=0:$7FF8 1:$0AB1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0AB2 d15:data:reset=0:$4AB5 testIncrDecrA a1,$8000 // * testAreg 0:$0AB5 0:000011:A4=A1:D3=D0 ld a1,$8000 -1 // * testIncrDecrA 0:$0AB6 0:data:reset=0:$7FFF 0:$0AB7 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$0AB8 0:000011:A1=A4:D8=D0 ld alu,$8000 // * testIncrDecrA 0:$0AB9 0:data:reset=0:$8000 0:$0ABA 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0ABB z:data:reset=0:$0000 if !z // * TRAP 0:$0ABC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0ABD 0:data:reset=0:$4ABC 0:$0ABE 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0ABF d15:data:reset=0:$7FF8 1:$0ABC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0ABD d15:data:reset=0:$4AC0 0:$0AC0 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$0AC1 0:000011:A1=A4:D8=D0 ld alu,$8000 -1 // * testIncrDecrA 0:$0AC2 0:data:reset=0:$7FFF 0:$0AC3 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0AC4 z:data:reset=0:$0000 if !z // * TRAP 0:$0AC5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0AC6 0:data:reset=0:$4AC5 0:$0AC7 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0AC8 d15:data:reset=0:$7FF8 1:$0AC5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0AC6 d15:data:reset=0:$4AC9 testIncrDecrA a1,0 // * testAreg 0:$0AC9 0:000011:A4=A1:D3=D0 ld a1,0 -1 // * testIncrDecrA 0:$0ACA 0:data:reset=0:$FFFF 0:$0ACB 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$0ACC 0:000011:A1=A4:D8=D0 ld alu,0 // * testIncrDecrA 0:$0ACD 0:data:reset=0:$0000 0:$0ACE 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0ACF z:data:reset=0:$0000 if !z // * TRAP 0:$0AD0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0AD1 0:data:reset=0:$4AD0 0:$0AD2 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0AD3 d15:data:reset=0:$7FF8 1:$0AD0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0AD1 d15:data:reset=0:$4AD4 0:$0AD4 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$0AD5 0:000011:A1=A4:D8=D0 ld alu,0 -1 // * testIncrDecrA 0:$0AD6 0:data:reset=0:$FFFF 0:$0AD7 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0AD8 z:data:reset=0:$0000 if !z // * TRAP 0:$0AD9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0ADA 0:data:reset=0:$4AD9 0:$0ADB 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0ADC d15:data:reset=0:$7FF8 1:$0AD9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0ADA d15:data:reset=0:$4ADD testAreg hp 0:$0ADD 0:000011:A5=A1:D3=D0 ld hp,0 // * testAreg 0:$0ADE 0:data:reset=0:$0000 0:$0ADF 0:000011:A1=A5:D3=D3 tst hp // * testAreg TRAP !z // * testAreg 0:$0AE0 z:data:reset=0:$0000 if !z // * TRAP 0:$0AE1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0AE2 0:data:reset=0:$4AE1 0:$0AE3 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0AE4 d15:data:reset=0:$7FF8 1:$0AE1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0AE2 d15:data:reset=0:$4AE5 0:$0AE5 0:000011:A5=A1:D3=D0 ld hp,$ffff // * testAreg 0:$0AE6 0:data:reset=0:$FFFF 0:$0AE7 0:001011:A1=A5:D3=D3 tstn hp // * testAreg TRAP !z // * testAreg 0:$0AE8 z:data:reset=0:$0000 if !z // * TRAP 0:$0AE9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0AEA 0:data:reset=0:$4AE9 0:$0AEB 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0AEC d15:data:reset=0:$7FF8 1:$0AE9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0AEA d15:data:reset=0:$4AED 0:$0AED 0:000011:A1=A7:D8=D0 ld alu,$55aa // * testAreg 0:$0AEE 0:data:reset=0:$55AA 0:$0AEF 0:000011:A5=A1:D3=D8 ld hp,alu // * testAreg 0:$0AF0 0:000001:A1=A5:D3=D3 equ hp // * testAreg TRAP !z // * testAreg 0:$0AF1 z:data:reset=0:$0000 if !z // * TRAP 0:$0AF2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0AF3 0:data:reset=0:$4AF2 0:$0AF4 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0AF5 d15:data:reset=0:$7FF8 1:$0AF2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0AF3 d15:data:reset=0:$4AF6 0:$0AF6 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * testAreg 0:$0AF7 0:data:reset=0:$AA55 0:$0AF8 0:000011:A5=A1:D3=D8 ld hp,alu // * testAreg 0:$0AF9 0:000001:A1=A5:D3=D3 equ hp // * testAreg TRAP !z // * testAreg 0:$0AFA z:data:reset=0:$0000 if !z // * TRAP 0:$0AFB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0AFC 0:data:reset=0:$4AFB 0:$0AFD 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$0AFE d15:data:reset=0:$7FF8 1:$0AFB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0AFC d15:data:reset=0:$4AFF testIncrDecrA hp,1 // * testAreg 0:$0AFF 0:000011:A5=A1:D3=D0 ld hp,1 -1 // * testIncrDecrA 0:$0B00 0:data:reset=0:$0000 0:$0B01 0:000011:A5=A5:D3=D8 ld hp,hp+1 // * testIncrDecrA 0:$0B02 0:000011:A1=A5:D8=D0 ld alu,1 // * testIncrDecrA 0:$0B03 0:data:reset=0:$0001 0:$0B04 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B05 z:data:reset=0:$0000 if !z // * TRAP 0:$0B06 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B07 0:data:reset=0:$4B06 0:$0B08 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B09 d15:data:reset=0:$7FF8 1:$0B06 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B07 d15:data:reset=0:$4B0A 0:$0B0A 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0B0B 0:000011:A1=A5:D8=D0 ld alu,1 -1 // * testIncrDecrA 0:$0B0C 0:data:reset=0:$0000 0:$0B0D 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B0E z:data:reset=0:$0000 if !z // * TRAP 0:$0B0F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B10 0:data:reset=0:$4B0F 0:$0B11 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B12 d15:data:reset=0:$7FF8 1:$0B0F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B10 d15:data:reset=0:$4B13 testIncrDecrA hp,2 // * testAreg 0:$0B13 0:000011:A5=A1:D3=D0 ld hp,2 -1 // * testIncrDecrA 0:$0B14 0:data:reset=0:$0001 0:$0B15 0:000011:A5=A5:D3=D8 ld hp,hp+1 // * testIncrDecrA 0:$0B16 0:000011:A1=A5:D8=D0 ld alu,2 // * testIncrDecrA 0:$0B17 0:data:reset=0:$0002 0:$0B18 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B19 z:data:reset=0:$0000 if !z // * TRAP 0:$0B1A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B1B 0:data:reset=0:$4B1A 0:$0B1C 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B1D d15:data:reset=0:$7FF8 1:$0B1A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B1B d15:data:reset=0:$4B1E 0:$0B1E 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0B1F 0:000011:A1=A5:D8=D0 ld alu,2 -1 // * testIncrDecrA 0:$0B20 0:data:reset=0:$0001 0:$0B21 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B22 z:data:reset=0:$0000 if !z // * TRAP 0:$0B23 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B24 0:data:reset=0:$4B23 0:$0B25 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B26 d15:data:reset=0:$7FF8 1:$0B23 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B24 d15:data:reset=0:$4B27 testIncrDecrA hp,4 // * testAreg 0:$0B27 0:000011:A5=A1:D3=D0 ld hp,4 -1 // * testIncrDecrA 0:$0B28 0:data:reset=0:$0003 0:$0B29 0:000011:A5=A5:D3=D3 ld hp,hp+1 // * testIncrDecrA 0:$0B2A 0:000011:A1=A5:D8=D0 ld alu,4 // * testIncrDecrA 0:$0B2B 0:data:reset=0:$0004 0:$0B2C 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B2D z:data:reset=0:$0000 if !z // * TRAP 0:$0B2E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B2F 0:data:reset=0:$4B2E 0:$0B30 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B31 d15:data:reset=0:$7FF8 1:$0B2E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B2F d15:data:reset=0:$4B32 0:$0B32 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0B33 0:000011:A1=A5:D8=D0 ld alu,4 -1 // * testIncrDecrA 0:$0B34 0:data:reset=0:$0003 0:$0B35 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B36 z:data:reset=0:$0000 if !z // * TRAP 0:$0B37 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B38 0:data:reset=0:$4B37 0:$0B39 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B3A d15:data:reset=0:$7FF8 1:$0B37 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B38 d15:data:reset=0:$4B3B testIncrDecrA hp,8 // * testAreg 0:$0B3B 0:000011:A5=A1:D3=D0 ld hp,8 -1 // * testIncrDecrA 0:$0B3C 0:data:reset=0:$0007 0:$0B3D 0:000011:A5=A5:D3=D7 ld hp,hp+1 // * testIncrDecrA 0:$0B3E 0:000011:A1=A5:D8=D0 ld alu,8 // * testIncrDecrA 0:$0B3F 0:data:reset=0:$0008 0:$0B40 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B41 z:data:reset=0:$0000 if !z // * TRAP 0:$0B42 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B43 0:data:reset=0:$4B42 0:$0B44 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B45 d15:data:reset=0:$7FF8 1:$0B42 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B43 d15:data:reset=0:$4B46 0:$0B46 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0B47 0:000011:A1=A5:D8=D0 ld alu,8 -1 // * testIncrDecrA 0:$0B48 0:data:reset=0:$0007 0:$0B49 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B4A z:data:reset=0:$0000 if !z // * TRAP 0:$0B4B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B4C 0:data:reset=0:$4B4B 0:$0B4D 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B4E d15:data:reset=0:$7FF8 1:$0B4B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B4C d15:data:reset=0:$4B4F testIncrDecrA hp,$10 // * testAreg 0:$0B4F 0:000011:A5=A1:D3=D0 ld hp,$10 -1 // * testIncrDecrA 0:$0B50 0:data:reset=0:$000F 0:$0B51 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0B52 0:000011:A1=A5:D8=D0 ld alu,$10 // * testIncrDecrA 0:$0B53 0:data:reset=0:$0010 0:$0B54 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B55 z:data:reset=0:$0000 if !z // * TRAP 0:$0B56 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B57 0:data:reset=0:$4B56 0:$0B58 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B59 d15:data:reset=0:$7FF8 1:$0B56 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B57 d15:data:reset=0:$4B5A 0:$0B5A 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0B5B 0:000011:A1=A5:D8=D0 ld alu,$10 -1 // * testIncrDecrA 0:$0B5C 0:data:reset=0:$000F 0:$0B5D 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B5E z:data:reset=0:$0000 if !z // * TRAP 0:$0B5F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B60 0:data:reset=0:$4B5F 0:$0B61 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B62 d15:data:reset=0:$7FF8 1:$0B5F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B60 d15:data:reset=0:$4B63 testIncrDecrA hp,$20 // * testAreg 0:$0B63 0:000011:A5=A1:D3=D0 ld hp,$20 -1 // * testIncrDecrA 0:$0B64 0:data:reset=0:$001F 0:$0B65 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0B66 0:000011:A1=A5:D8=D0 ld alu,$20 // * testIncrDecrA 0:$0B67 0:data:reset=0:$0020 0:$0B68 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B69 z:data:reset=0:$0000 if !z // * TRAP 0:$0B6A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B6B 0:data:reset=0:$4B6A 0:$0B6C 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B6D d15:data:reset=0:$7FF8 1:$0B6A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B6B d15:data:reset=0:$4B6E 0:$0B6E 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0B6F 0:000011:A1=A5:D8=D0 ld alu,$20 -1 // * testIncrDecrA 0:$0B70 0:data:reset=0:$001F 0:$0B71 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B72 z:data:reset=0:$0000 if !z // * TRAP 0:$0B73 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B74 0:data:reset=0:$4B73 0:$0B75 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B76 d15:data:reset=0:$7FF8 1:$0B73 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B74 d15:data:reset=0:$4B77 testIncrDecrA hp,$40 // * testAreg 0:$0B77 0:000011:A5=A1:D3=D0 ld hp,$40 -1 // * testIncrDecrA 0:$0B78 0:data:reset=0:$003F 0:$0B79 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0B7A 0:000011:A1=A5:D8=D0 ld alu,$40 // * testIncrDecrA 0:$0B7B 0:data:reset=0:$0040 0:$0B7C 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B7D z:data:reset=0:$0000 if !z // * TRAP 0:$0B7E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B7F 0:data:reset=0:$4B7E 0:$0B80 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B81 d15:data:reset=0:$7FF8 1:$0B7E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B7F d15:data:reset=0:$4B82 0:$0B82 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0B83 0:000011:A1=A5:D8=D0 ld alu,$40 -1 // * testIncrDecrA 0:$0B84 0:data:reset=0:$003F 0:$0B85 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B86 z:data:reset=0:$0000 if !z // * TRAP 0:$0B87 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B88 0:data:reset=0:$4B87 0:$0B89 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B8A d15:data:reset=0:$7FF8 1:$0B87 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B88 d15:data:reset=0:$4B8B testIncrDecrA hp,$80 // * testAreg 0:$0B8B 0:000011:A5=A1:D3=D0 ld hp,$80 -1 // * testIncrDecrA 0:$0B8C 0:data:reset=0:$007F 0:$0B8D 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0B8E 0:000011:A1=A5:D8=D0 ld alu,$80 // * testIncrDecrA 0:$0B8F 0:data:reset=0:$0080 0:$0B90 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B91 z:data:reset=0:$0000 if !z // * TRAP 0:$0B92 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B93 0:data:reset=0:$4B92 0:$0B94 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B95 d15:data:reset=0:$7FF8 1:$0B92 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B93 d15:data:reset=0:$4B96 0:$0B96 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0B97 0:000011:A1=A5:D8=D0 ld alu,$80 -1 // * testIncrDecrA 0:$0B98 0:data:reset=0:$007F 0:$0B99 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0B9A z:data:reset=0:$0000 if !z // * TRAP 0:$0B9B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0B9C 0:data:reset=0:$4B9B 0:$0B9D 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0B9E d15:data:reset=0:$7FF8 1:$0B9B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0B9C d15:data:reset=0:$4B9F testIncrDecrA hp,$100 // * testAreg 0:$0B9F 0:000011:A5=A1:D3=D0 ld hp,$100 -1 // * testIncrDecrA 0:$0BA0 0:data:reset=0:$00FF 0:$0BA1 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0BA2 0:000011:A1=A5:D8=D0 ld alu,$100 // * testIncrDecrA 0:$0BA3 0:data:reset=0:$0100 0:$0BA4 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0BA5 z:data:reset=0:$0000 if !z // * TRAP 0:$0BA6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0BA7 0:data:reset=0:$4BA6 0:$0BA8 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0BA9 d15:data:reset=0:$7FF8 1:$0BA6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0BA7 d15:data:reset=0:$4BAA 0:$0BAA 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0BAB 0:000011:A1=A5:D8=D0 ld alu,$100 -1 // * testIncrDecrA 0:$0BAC 0:data:reset=0:$00FF 0:$0BAD 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0BAE z:data:reset=0:$0000 if !z // * TRAP 0:$0BAF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0BB0 0:data:reset=0:$4BAF 0:$0BB1 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0BB2 d15:data:reset=0:$7FF8 1:$0BAF 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0BB0 d15:data:reset=0:$4BB3 testIncrDecrA hp,$200 // * testAreg 0:$0BB3 0:000011:A5=A1:D3=D0 ld hp,$200 -1 // * testIncrDecrA 0:$0BB4 0:data:reset=0:$01FF 0:$0BB5 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0BB6 0:000011:A1=A5:D8=D0 ld alu,$200 // * testIncrDecrA 0:$0BB7 0:data:reset=0:$0200 0:$0BB8 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0BB9 z:data:reset=0:$0000 if !z // * TRAP 0:$0BBA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0BBB 0:data:reset=0:$4BBA 0:$0BBC 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0BBD d15:data:reset=0:$7FF8 1:$0BBA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0BBB d15:data:reset=0:$4BBE 0:$0BBE 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0BBF 0:000011:A1=A5:D8=D0 ld alu,$200 -1 // * testIncrDecrA 0:$0BC0 0:data:reset=0:$01FF 0:$0BC1 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0BC2 z:data:reset=0:$0000 if !z // * TRAP 0:$0BC3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0BC4 0:data:reset=0:$4BC3 0:$0BC5 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0BC6 d15:data:reset=0:$7FF8 1:$0BC3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0BC4 d15:data:reset=0:$4BC7 testIncrDecrA hp,$400 // * testAreg 0:$0BC7 0:000011:A5=A1:D3=D0 ld hp,$400 -1 // * testIncrDecrA 0:$0BC8 0:data:reset=0:$03FF 0:$0BC9 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0BCA 0:000011:A1=A5:D8=D0 ld alu,$400 // * testIncrDecrA 0:$0BCB 0:data:reset=0:$0400 0:$0BCC 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0BCD z:data:reset=0:$0000 if !z // * TRAP 0:$0BCE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0BCF 0:data:reset=0:$4BCE 0:$0BD0 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0BD1 d15:data:reset=0:$7FF8 1:$0BCE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0BCF d15:data:reset=0:$4BD2 0:$0BD2 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0BD3 0:000011:A1=A5:D8=D0 ld alu,$400 -1 // * testIncrDecrA 0:$0BD4 0:data:reset=0:$03FF 0:$0BD5 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0BD6 z:data:reset=0:$0000 if !z // * TRAP 0:$0BD7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0BD8 0:data:reset=0:$4BD7 0:$0BD9 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0BDA d15:data:reset=0:$7FF8 1:$0BD7 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0BD8 d15:data:reset=0:$4BDB testIncrDecrA hp,$800 // * testAreg 0:$0BDB 0:000011:A5=A1:D3=D0 ld hp,$800 -1 // * testIncrDecrA 0:$0BDC 0:data:reset=0:$07FF 0:$0BDD 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0BDE 0:000011:A1=A5:D8=D0 ld alu,$800 // * testIncrDecrA 0:$0BDF 0:data:reset=0:$0800 0:$0BE0 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0BE1 z:data:reset=0:$0000 if !z // * TRAP 0:$0BE2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0BE3 0:data:reset=0:$4BE2 0:$0BE4 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0BE5 d15:data:reset=0:$7FF8 1:$0BE2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0BE3 d15:data:reset=0:$4BE6 0:$0BE6 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0BE7 0:000011:A1=A5:D8=D0 ld alu,$800 -1 // * testIncrDecrA 0:$0BE8 0:data:reset=0:$07FF 0:$0BE9 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0BEA z:data:reset=0:$0000 if !z // * TRAP 0:$0BEB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0BEC 0:data:reset=0:$4BEB 0:$0BED 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0BEE d15:data:reset=0:$7FF8 1:$0BEB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0BEC d15:data:reset=0:$4BEF testIncrDecrA hp,$1000 // * testAreg 0:$0BEF 0:000011:A5=A1:D3=D0 ld hp,$1000 -1 // * testIncrDecrA 0:$0BF0 0:data:reset=0:$0FFF 0:$0BF1 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0BF2 0:000011:A1=A5:D8=D0 ld alu,$1000 // * testIncrDecrA 0:$0BF3 0:data:reset=0:$1000 0:$0BF4 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0BF5 z:data:reset=0:$0000 if !z // * TRAP 0:$0BF6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0BF7 0:data:reset=0:$4BF6 0:$0BF8 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0BF9 d15:data:reset=0:$7FF8 1:$0BF6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0BF7 d15:data:reset=0:$4BFA 0:$0BFA 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0BFB 0:000011:A1=A5:D8=D0 ld alu,$1000 -1 // * testIncrDecrA 0:$0BFC 0:data:reset=0:$0FFF 0:$0BFD 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0BFE z:data:reset=0:$0000 if !z // * TRAP 0:$0BFF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C00 0:data:reset=0:$4BFF 0:$0C01 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$0C02 d15:data:reset=0:$7FF8 1:$0BFF 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C00 d15:data:reset=0:$4C03 testIncrDecrA hp,$2000 // * testAreg 0:$0C03 0:000011:A5=A1:D3=D0 ld hp,$2000 -1 // * testIncrDecrA 0:$0C04 0:data:reset=0:$1FFF 0:$0C05 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0C06 0:000011:A1=A5:D8=D0 ld alu,$2000 // * testIncrDecrA 0:$0C07 0:data:reset=0:$2000 0:$0C08 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0C09 z:data:reset=0:$0000 if !z // * TRAP 0:$0C0A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C0B 0:data:reset=0:$4C0A 0:$0C0C 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C0D d15:data:reset=0:$7FF8 1:$0C0A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C0B d15:data:reset=0:$4C0E 0:$0C0E 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0C0F 0:000011:A1=A5:D8=D0 ld alu,$2000 -1 // * testIncrDecrA 0:$0C10 0:data:reset=0:$1FFF 0:$0C11 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0C12 z:data:reset=0:$0000 if !z // * TRAP 0:$0C13 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C14 0:data:reset=0:$4C13 0:$0C15 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C16 d15:data:reset=0:$7FF8 1:$0C13 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C14 d15:data:reset=0:$4C17 testIncrDecrA hp,$4000 // * testAreg 0:$0C17 0:000011:A5=A1:D3=D0 ld hp,$4000 -1 // * testIncrDecrA 0:$0C18 0:data:reset=0:$3FFF 0:$0C19 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0C1A 0:000011:A1=A5:D8=D0 ld alu,$4000 // * testIncrDecrA 0:$0C1B 0:data:reset=0:$4000 0:$0C1C 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0C1D z:data:reset=0:$0000 if !z // * TRAP 0:$0C1E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C1F 0:data:reset=0:$4C1E 0:$0C20 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C21 d15:data:reset=0:$7FF8 1:$0C1E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C1F d15:data:reset=0:$4C22 0:$0C22 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0C23 0:000011:A1=A5:D8=D0 ld alu,$4000 -1 // * testIncrDecrA 0:$0C24 0:data:reset=0:$3FFF 0:$0C25 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0C26 z:data:reset=0:$0000 if !z // * TRAP 0:$0C27 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C28 0:data:reset=0:$4C27 0:$0C29 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C2A d15:data:reset=0:$7FF8 1:$0C27 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C28 d15:data:reset=0:$4C2B testIncrDecrA hp,$8000 // * testAreg 0:$0C2B 0:000011:A5=A1:D3=D0 ld hp,$8000 -1 // * testIncrDecrA 0:$0C2C 0:data:reset=0:$7FFF 0:$0C2D 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0C2E 0:000011:A1=A5:D8=D0 ld alu,$8000 // * testIncrDecrA 0:$0C2F 0:data:reset=0:$8000 0:$0C30 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0C31 z:data:reset=0:$0000 if !z // * TRAP 0:$0C32 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C33 0:data:reset=0:$4C32 0:$0C34 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C35 d15:data:reset=0:$7FF8 1:$0C32 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C33 d15:data:reset=0:$4C36 0:$0C36 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0C37 0:000011:A1=A5:D8=D0 ld alu,$8000 -1 // * testIncrDecrA 0:$0C38 0:data:reset=0:$7FFF 0:$0C39 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0C3A z:data:reset=0:$0000 if !z // * TRAP 0:$0C3B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C3C 0:data:reset=0:$4C3B 0:$0C3D 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C3E d15:data:reset=0:$7FF8 1:$0C3B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C3C d15:data:reset=0:$4C3F testIncrDecrA hp,0 // * testAreg 0:$0C3F 0:000011:A5=A1:D3=D0 ld hp,0 -1 // * testIncrDecrA 0:$0C40 0:data:reset=0:$FFFF 0:$0C41 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$0C42 0:000011:A1=A5:D8=D0 ld alu,0 // * testIncrDecrA 0:$0C43 0:data:reset=0:$0000 0:$0C44 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0C45 z:data:reset=0:$0000 if !z // * TRAP 0:$0C46 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C47 0:data:reset=0:$4C46 0:$0C48 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C49 d15:data:reset=0:$7FF8 1:$0C46 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C47 d15:data:reset=0:$4C4A 0:$0C4A 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$0C4B 0:000011:A1=A5:D8=D0 ld alu,0 -1 // * testIncrDecrA 0:$0C4C 0:data:reset=0:$FFFF 0:$0C4D 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0C4E z:data:reset=0:$0000 if !z // * TRAP 0:$0C4F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C50 0:data:reset=0:$4C4F 0:$0C51 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C52 d15:data:reset=0:$7FF8 1:$0C4F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C50 d15:data:reset=0:$4C53 testAreg atmp 0:$0C53 0:000011:A6=A1:D3=D0 ld atmp,0 // * testAreg 0:$0C54 0:data:reset=0:$0000 0:$0C55 0:000011:A1=A6:D3=D3 tst atmp // * testAreg TRAP !z // * testAreg 0:$0C56 z:data:reset=0:$0000 if !z // * TRAP 0:$0C57 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C58 0:data:reset=0:$4C57 0:$0C59 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C5A d15:data:reset=0:$7FF8 1:$0C57 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C58 d15:data:reset=0:$4C5B 0:$0C5B 0:000011:A6=A1:D3=D0 ld atmp,$ffff // * testAreg 0:$0C5C 0:data:reset=0:$FFFF 0:$0C5D 0:001011:A1=A6:D3=D3 tstn atmp // * testAreg TRAP !z // * testAreg 0:$0C5E z:data:reset=0:$0000 if !z // * TRAP 0:$0C5F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C60 0:data:reset=0:$4C5F 0:$0C61 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C62 d15:data:reset=0:$7FF8 1:$0C5F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C60 d15:data:reset=0:$4C63 0:$0C63 0:000011:A1=A7:D8=D0 ld alu,$55aa // * testAreg 0:$0C64 0:data:reset=0:$55AA 0:$0C65 0:000011:A6=A1:D3=D8 ld atmp,alu // * testAreg 0:$0C66 0:000001:A1=A6:D3=D3 equ atmp // * testAreg TRAP !z // * testAreg 0:$0C67 z:data:reset=0:$0000 if !z // * TRAP 0:$0C68 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C69 0:data:reset=0:$4C68 0:$0C6A 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C6B d15:data:reset=0:$7FF8 1:$0C68 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C69 d15:data:reset=0:$4C6C 0:$0C6C 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * testAreg 0:$0C6D 0:data:reset=0:$AA55 0:$0C6E 0:000011:A6=A1:D3=D8 ld atmp,alu // * testAreg 0:$0C6F 0:000001:A1=A6:D3=D3 equ atmp // * testAreg TRAP !z // * testAreg 0:$0C70 z:data:reset=0:$0000 if !z // * TRAP 0:$0C71 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C72 0:data:reset=0:$4C71 0:$0C73 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C74 d15:data:reset=0:$7FF8 1:$0C71 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C72 d15:data:reset=0:$4C75 testIncrDecrA atmp,1 // * testAreg 0:$0C75 0:000011:A6=A1:D3=D0 ld atmp,1 -1 // * testIncrDecrA 0:$0C76 0:data:reset=0:$0000 0:$0C77 0:000011:A6=A6:D3=D8 ld atmp,atmp+1 // * testIncrDecrA 0:$0C78 0:000011:A1=A6:D8=D0 ld alu,1 // * testIncrDecrA 0:$0C79 0:data:reset=0:$0001 0:$0C7A 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0C7B z:data:reset=0:$0000 if !z // * TRAP 0:$0C7C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C7D 0:data:reset=0:$4C7C 0:$0C7E 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C7F d15:data:reset=0:$7FF8 1:$0C7C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C7D d15:data:reset=0:$4C80 0:$0C80 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0C81 0:000011:A1=A6:D8=D0 ld alu,1 -1 // * testIncrDecrA 0:$0C82 0:data:reset=0:$0000 0:$0C83 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0C84 z:data:reset=0:$0000 if !z // * TRAP 0:$0C85 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C86 0:data:reset=0:$4C85 0:$0C87 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C88 d15:data:reset=0:$7FF8 1:$0C85 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C86 d15:data:reset=0:$4C89 testIncrDecrA atmp,2 // * testAreg 0:$0C89 0:000011:A6=A1:D3=D0 ld atmp,2 -1 // * testIncrDecrA 0:$0C8A 0:data:reset=0:$0001 0:$0C8B 0:000011:A6=A6:D3=D8 ld atmp,atmp+1 // * testIncrDecrA 0:$0C8C 0:000011:A1=A6:D8=D0 ld alu,2 // * testIncrDecrA 0:$0C8D 0:data:reset=0:$0002 0:$0C8E 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0C8F z:data:reset=0:$0000 if !z // * TRAP 0:$0C90 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C91 0:data:reset=0:$4C90 0:$0C92 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C93 d15:data:reset=0:$7FF8 1:$0C90 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C91 d15:data:reset=0:$4C94 0:$0C94 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0C95 0:000011:A1=A6:D8=D0 ld alu,2 -1 // * testIncrDecrA 0:$0C96 0:data:reset=0:$0001 0:$0C97 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0C98 z:data:reset=0:$0000 if !z // * TRAP 0:$0C99 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0C9A 0:data:reset=0:$4C99 0:$0C9B 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0C9C d15:data:reset=0:$7FF8 1:$0C99 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0C9A d15:data:reset=0:$4C9D testIncrDecrA atmp,4 // * testAreg 0:$0C9D 0:000011:A6=A1:D3=D0 ld atmp,4 -1 // * testIncrDecrA 0:$0C9E 0:data:reset=0:$0003 0:$0C9F 0:000011:A6=A6:D3=D3 ld atmp,atmp+1 // * testIncrDecrA 0:$0CA0 0:000011:A1=A6:D8=D0 ld alu,4 // * testIncrDecrA 0:$0CA1 0:data:reset=0:$0004 0:$0CA2 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0CA3 z:data:reset=0:$0000 if !z // * TRAP 0:$0CA4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0CA5 0:data:reset=0:$4CA4 0:$0CA6 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0CA7 d15:data:reset=0:$7FF8 1:$0CA4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0CA5 d15:data:reset=0:$4CA8 0:$0CA8 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0CA9 0:000011:A1=A6:D8=D0 ld alu,4 -1 // * testIncrDecrA 0:$0CAA 0:data:reset=0:$0003 0:$0CAB 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0CAC z:data:reset=0:$0000 if !z // * TRAP 0:$0CAD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0CAE 0:data:reset=0:$4CAD 0:$0CAF 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0CB0 d15:data:reset=0:$7FF8 1:$0CAD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0CAE d15:data:reset=0:$4CB1 testIncrDecrA atmp,8 // * testAreg 0:$0CB1 0:000011:A6=A1:D3=D0 ld atmp,8 -1 // * testIncrDecrA 0:$0CB2 0:data:reset=0:$0007 0:$0CB3 0:000011:A6=A6:D3=D7 ld atmp,atmp+1 // * testIncrDecrA 0:$0CB4 0:000011:A1=A6:D8=D0 ld alu,8 // * testIncrDecrA 0:$0CB5 0:data:reset=0:$0008 0:$0CB6 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0CB7 z:data:reset=0:$0000 if !z // * TRAP 0:$0CB8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0CB9 0:data:reset=0:$4CB8 0:$0CBA 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0CBB d15:data:reset=0:$7FF8 1:$0CB8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0CB9 d15:data:reset=0:$4CBC 0:$0CBC 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0CBD 0:000011:A1=A6:D8=D0 ld alu,8 -1 // * testIncrDecrA 0:$0CBE 0:data:reset=0:$0007 0:$0CBF 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0CC0 z:data:reset=0:$0000 if !z // * TRAP 0:$0CC1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0CC2 0:data:reset=0:$4CC1 0:$0CC3 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0CC4 d15:data:reset=0:$7FF8 1:$0CC1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0CC2 d15:data:reset=0:$4CC5 testIncrDecrA atmp,$10 // * testAreg 0:$0CC5 0:000011:A6=A1:D3=D0 ld atmp,$10 -1 // * testIncrDecrA 0:$0CC6 0:data:reset=0:$000F 0:$0CC7 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0CC8 0:000011:A1=A6:D8=D0 ld alu,$10 // * testIncrDecrA 0:$0CC9 0:data:reset=0:$0010 0:$0CCA 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0CCB z:data:reset=0:$0000 if !z // * TRAP 0:$0CCC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0CCD 0:data:reset=0:$4CCC 0:$0CCE 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0CCF d15:data:reset=0:$7FF8 1:$0CCC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0CCD d15:data:reset=0:$4CD0 0:$0CD0 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0CD1 0:000011:A1=A6:D8=D0 ld alu,$10 -1 // * testIncrDecrA 0:$0CD2 0:data:reset=0:$000F 0:$0CD3 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0CD4 z:data:reset=0:$0000 if !z // * TRAP 0:$0CD5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0CD6 0:data:reset=0:$4CD5 0:$0CD7 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0CD8 d15:data:reset=0:$7FF8 1:$0CD5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0CD6 d15:data:reset=0:$4CD9 testIncrDecrA atmp,$20 // * testAreg 0:$0CD9 0:000011:A6=A1:D3=D0 ld atmp,$20 -1 // * testIncrDecrA 0:$0CDA 0:data:reset=0:$001F 0:$0CDB 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0CDC 0:000011:A1=A6:D8=D0 ld alu,$20 // * testIncrDecrA 0:$0CDD 0:data:reset=0:$0020 0:$0CDE 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0CDF z:data:reset=0:$0000 if !z // * TRAP 0:$0CE0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0CE1 0:data:reset=0:$4CE0 0:$0CE2 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0CE3 d15:data:reset=0:$7FF8 1:$0CE0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0CE1 d15:data:reset=0:$4CE4 0:$0CE4 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0CE5 0:000011:A1=A6:D8=D0 ld alu,$20 -1 // * testIncrDecrA 0:$0CE6 0:data:reset=0:$001F 0:$0CE7 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0CE8 z:data:reset=0:$0000 if !z // * TRAP 0:$0CE9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0CEA 0:data:reset=0:$4CE9 0:$0CEB 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0CEC d15:data:reset=0:$7FF8 1:$0CE9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0CEA d15:data:reset=0:$4CED testIncrDecrA atmp,$40 // * testAreg 0:$0CED 0:000011:A6=A1:D3=D0 ld atmp,$40 -1 // * testIncrDecrA 0:$0CEE 0:data:reset=0:$003F 0:$0CEF 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0CF0 0:000011:A1=A6:D8=D0 ld alu,$40 // * testIncrDecrA 0:$0CF1 0:data:reset=0:$0040 0:$0CF2 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0CF3 z:data:reset=0:$0000 if !z // * TRAP 0:$0CF4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0CF5 0:data:reset=0:$4CF4 0:$0CF6 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0CF7 d15:data:reset=0:$7FF8 1:$0CF4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0CF5 d15:data:reset=0:$4CF8 0:$0CF8 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0CF9 0:000011:A1=A6:D8=D0 ld alu,$40 -1 // * testIncrDecrA 0:$0CFA 0:data:reset=0:$003F 0:$0CFB 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0CFC z:data:reset=0:$0000 if !z // * TRAP 0:$0CFD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0CFE 0:data:reset=0:$4CFD 0:$0CFF 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$0D00 d15:data:reset=0:$7FF8 1:$0CFD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0CFE d15:data:reset=0:$4D01 testIncrDecrA atmp,$80 // * testAreg 0:$0D01 0:000011:A6=A1:D3=D0 ld atmp,$80 -1 // * testIncrDecrA 0:$0D02 0:data:reset=0:$007F 0:$0D03 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0D04 0:000011:A1=A6:D8=D0 ld alu,$80 // * testIncrDecrA 0:$0D05 0:data:reset=0:$0080 0:$0D06 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D07 z:data:reset=0:$0000 if !z // * TRAP 0:$0D08 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D09 0:data:reset=0:$4D08 0:$0D0A 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D0B d15:data:reset=0:$7FF8 1:$0D08 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D09 d15:data:reset=0:$4D0C 0:$0D0C 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0D0D 0:000011:A1=A6:D8=D0 ld alu,$80 -1 // * testIncrDecrA 0:$0D0E 0:data:reset=0:$007F 0:$0D0F 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D10 z:data:reset=0:$0000 if !z // * TRAP 0:$0D11 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D12 0:data:reset=0:$4D11 0:$0D13 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D14 d15:data:reset=0:$7FF8 1:$0D11 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D12 d15:data:reset=0:$4D15 testIncrDecrA atmp,$100 // * testAreg 0:$0D15 0:000011:A6=A1:D3=D0 ld atmp,$100 -1 // * testIncrDecrA 0:$0D16 0:data:reset=0:$00FF 0:$0D17 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0D18 0:000011:A1=A6:D8=D0 ld alu,$100 // * testIncrDecrA 0:$0D19 0:data:reset=0:$0100 0:$0D1A 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D1B z:data:reset=0:$0000 if !z // * TRAP 0:$0D1C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D1D 0:data:reset=0:$4D1C 0:$0D1E 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D1F d15:data:reset=0:$7FF8 1:$0D1C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D1D d15:data:reset=0:$4D20 0:$0D20 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0D21 0:000011:A1=A6:D8=D0 ld alu,$100 -1 // * testIncrDecrA 0:$0D22 0:data:reset=0:$00FF 0:$0D23 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D24 z:data:reset=0:$0000 if !z // * TRAP 0:$0D25 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D26 0:data:reset=0:$4D25 0:$0D27 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D28 d15:data:reset=0:$7FF8 1:$0D25 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D26 d15:data:reset=0:$4D29 testIncrDecrA atmp,$200 // * testAreg 0:$0D29 0:000011:A6=A1:D3=D0 ld atmp,$200 -1 // * testIncrDecrA 0:$0D2A 0:data:reset=0:$01FF 0:$0D2B 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0D2C 0:000011:A1=A6:D8=D0 ld alu,$200 // * testIncrDecrA 0:$0D2D 0:data:reset=0:$0200 0:$0D2E 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D2F z:data:reset=0:$0000 if !z // * TRAP 0:$0D30 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D31 0:data:reset=0:$4D30 0:$0D32 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D33 d15:data:reset=0:$7FF8 1:$0D30 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D31 d15:data:reset=0:$4D34 0:$0D34 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0D35 0:000011:A1=A6:D8=D0 ld alu,$200 -1 // * testIncrDecrA 0:$0D36 0:data:reset=0:$01FF 0:$0D37 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D38 z:data:reset=0:$0000 if !z // * TRAP 0:$0D39 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D3A 0:data:reset=0:$4D39 0:$0D3B 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D3C d15:data:reset=0:$7FF8 1:$0D39 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D3A d15:data:reset=0:$4D3D testIncrDecrA atmp,$400 // * testAreg 0:$0D3D 0:000011:A6=A1:D3=D0 ld atmp,$400 -1 // * testIncrDecrA 0:$0D3E 0:data:reset=0:$03FF 0:$0D3F 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0D40 0:000011:A1=A6:D8=D0 ld alu,$400 // * testIncrDecrA 0:$0D41 0:data:reset=0:$0400 0:$0D42 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D43 z:data:reset=0:$0000 if !z // * TRAP 0:$0D44 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D45 0:data:reset=0:$4D44 0:$0D46 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D47 d15:data:reset=0:$7FF8 1:$0D44 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D45 d15:data:reset=0:$4D48 0:$0D48 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0D49 0:000011:A1=A6:D8=D0 ld alu,$400 -1 // * testIncrDecrA 0:$0D4A 0:data:reset=0:$03FF 0:$0D4B 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D4C z:data:reset=0:$0000 if !z // * TRAP 0:$0D4D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D4E 0:data:reset=0:$4D4D 0:$0D4F 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D50 d15:data:reset=0:$7FF8 1:$0D4D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D4E d15:data:reset=0:$4D51 testIncrDecrA atmp,$800 // * testAreg 0:$0D51 0:000011:A6=A1:D3=D0 ld atmp,$800 -1 // * testIncrDecrA 0:$0D52 0:data:reset=0:$07FF 0:$0D53 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0D54 0:000011:A1=A6:D8=D0 ld alu,$800 // * testIncrDecrA 0:$0D55 0:data:reset=0:$0800 0:$0D56 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D57 z:data:reset=0:$0000 if !z // * TRAP 0:$0D58 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D59 0:data:reset=0:$4D58 0:$0D5A 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D5B d15:data:reset=0:$7FF8 1:$0D58 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D59 d15:data:reset=0:$4D5C 0:$0D5C 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0D5D 0:000011:A1=A6:D8=D0 ld alu,$800 -1 // * testIncrDecrA 0:$0D5E 0:data:reset=0:$07FF 0:$0D5F 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D60 z:data:reset=0:$0000 if !z // * TRAP 0:$0D61 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D62 0:data:reset=0:$4D61 0:$0D63 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D64 d15:data:reset=0:$7FF8 1:$0D61 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D62 d15:data:reset=0:$4D65 testIncrDecrA atmp,$1000 // * testAreg 0:$0D65 0:000011:A6=A1:D3=D0 ld atmp,$1000 -1 // * testIncrDecrA 0:$0D66 0:data:reset=0:$0FFF 0:$0D67 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0D68 0:000011:A1=A6:D8=D0 ld alu,$1000 // * testIncrDecrA 0:$0D69 0:data:reset=0:$1000 0:$0D6A 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D6B z:data:reset=0:$0000 if !z // * TRAP 0:$0D6C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D6D 0:data:reset=0:$4D6C 0:$0D6E 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D6F d15:data:reset=0:$7FF8 1:$0D6C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D6D d15:data:reset=0:$4D70 0:$0D70 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0D71 0:000011:A1=A6:D8=D0 ld alu,$1000 -1 // * testIncrDecrA 0:$0D72 0:data:reset=0:$0FFF 0:$0D73 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D74 z:data:reset=0:$0000 if !z // * TRAP 0:$0D75 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D76 0:data:reset=0:$4D75 0:$0D77 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D78 d15:data:reset=0:$7FF8 1:$0D75 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D76 d15:data:reset=0:$4D79 testIncrDecrA atmp,$2000 // * testAreg 0:$0D79 0:000011:A6=A1:D3=D0 ld atmp,$2000 -1 // * testIncrDecrA 0:$0D7A 0:data:reset=0:$1FFF 0:$0D7B 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0D7C 0:000011:A1=A6:D8=D0 ld alu,$2000 // * testIncrDecrA 0:$0D7D 0:data:reset=0:$2000 0:$0D7E 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D7F z:data:reset=0:$0000 if !z // * TRAP 0:$0D80 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D81 0:data:reset=0:$4D80 0:$0D82 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D83 d15:data:reset=0:$7FF8 1:$0D80 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D81 d15:data:reset=0:$4D84 0:$0D84 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0D85 0:000011:A1=A6:D8=D0 ld alu,$2000 -1 // * testIncrDecrA 0:$0D86 0:data:reset=0:$1FFF 0:$0D87 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D88 z:data:reset=0:$0000 if !z // * TRAP 0:$0D89 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D8A 0:data:reset=0:$4D89 0:$0D8B 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D8C d15:data:reset=0:$7FF8 1:$0D89 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D8A d15:data:reset=0:$4D8D testIncrDecrA atmp,$4000 // * testAreg 0:$0D8D 0:000011:A6=A1:D3=D0 ld atmp,$4000 -1 // * testIncrDecrA 0:$0D8E 0:data:reset=0:$3FFF 0:$0D8F 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0D90 0:000011:A1=A6:D8=D0 ld alu,$4000 // * testIncrDecrA 0:$0D91 0:data:reset=0:$4000 0:$0D92 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D93 z:data:reset=0:$0000 if !z // * TRAP 0:$0D94 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D95 0:data:reset=0:$4D94 0:$0D96 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0D97 d15:data:reset=0:$7FF8 1:$0D94 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D95 d15:data:reset=0:$4D98 0:$0D98 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0D99 0:000011:A1=A6:D8=D0 ld alu,$4000 -1 // * testIncrDecrA 0:$0D9A 0:data:reset=0:$3FFF 0:$0D9B 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0D9C z:data:reset=0:$0000 if !z // * TRAP 0:$0D9D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0D9E 0:data:reset=0:$4D9D 0:$0D9F 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0DA0 d15:data:reset=0:$7FF8 1:$0D9D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0D9E d15:data:reset=0:$4DA1 testIncrDecrA atmp,$8000 // * testAreg 0:$0DA1 0:000011:A6=A1:D3=D0 ld atmp,$8000 -1 // * testIncrDecrA 0:$0DA2 0:data:reset=0:$7FFF 0:$0DA3 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0DA4 0:000011:A1=A6:D8=D0 ld alu,$8000 // * testIncrDecrA 0:$0DA5 0:data:reset=0:$8000 0:$0DA6 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0DA7 z:data:reset=0:$0000 if !z // * TRAP 0:$0DA8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0DA9 0:data:reset=0:$4DA8 0:$0DAA 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0DAB d15:data:reset=0:$7FF8 1:$0DA8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0DA9 d15:data:reset=0:$4DAC 0:$0DAC 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0DAD 0:000011:A1=A6:D8=D0 ld alu,$8000 -1 // * testIncrDecrA 0:$0DAE 0:data:reset=0:$7FFF 0:$0DAF 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0DB0 z:data:reset=0:$0000 if !z // * TRAP 0:$0DB1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0DB2 0:data:reset=0:$4DB1 0:$0DB3 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0DB4 d15:data:reset=0:$7FF8 1:$0DB1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0DB2 d15:data:reset=0:$4DB5 testIncrDecrA atmp,0 // * testAreg 0:$0DB5 0:000011:A6=A1:D3=D0 ld atmp,0 -1 // * testIncrDecrA 0:$0DB6 0:data:reset=0:$FFFF 0:$0DB7 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$0DB8 0:000011:A1=A6:D8=D0 ld alu,0 // * testIncrDecrA 0:$0DB9 0:data:reset=0:$0000 0:$0DBA 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0DBB z:data:reset=0:$0000 if !z // * TRAP 0:$0DBC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0DBD 0:data:reset=0:$4DBC 0:$0DBE 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0DBF d15:data:reset=0:$7FF8 1:$0DBC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0DBD d15:data:reset=0:$4DC0 0:$0DC0 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$0DC1 0:000011:A1=A6:D8=D0 ld alu,0 -1 // * testIncrDecrA 0:$0DC2 0:data:reset=0:$FFFF 0:$0DC3 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0DC4 z:data:reset=0:$0000 if !z // * TRAP 0:$0DC5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0DC6 0:data:reset=0:$4DC5 0:$0DC7 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0DC8 d15:data:reset=0:$7FF8 1:$0DC5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0DC6 d15:data:reset=0:$4DC9 testAreg ip 0:$0DC9 0:000011:A0=A1:D3=D0 ld ip,0 // * testAreg 0:$0DCA 0:data:reset=0:$0000 0:$0DCB 0:000011:A1=A0:D3=D3 tst ip // * testAreg TRAP !z // * testAreg 0:$0DCC z:data:reset=0:$0000 if !z // * TRAP 0:$0DCD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0DCE 0:data:reset=0:$4DCD 0:$0DCF 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0DD0 d15:data:reset=0:$7FF8 1:$0DCD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0DCE d15:data:reset=0:$4DD1 0:$0DD1 0:000011:A0=A1:D3=D0 ld ip,$ffff // * testAreg 0:$0DD2 0:data:reset=0:$FFFF 0:$0DD3 0:001011:A1=A0:D3=D3 tstn ip // * testAreg TRAP !z // * testAreg 0:$0DD4 z:data:reset=0:$0000 if !z // * TRAP 0:$0DD5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0DD6 0:data:reset=0:$4DD5 0:$0DD7 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0DD8 d15:data:reset=0:$7FF8 1:$0DD5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0DD6 d15:data:reset=0:$4DD9 0:$0DD9 0:000011:A1=A7:D8=D0 ld alu,$55aa // * testAreg 0:$0DDA 0:data:reset=0:$55AA 0:$0DDB 0:000011:A0=A1:D3=D8 ld ip,alu // * testAreg 0:$0DDC 0:000001:A1=A0:D3=D3 equ ip // * testAreg TRAP !z // * testAreg 0:$0DDD z:data:reset=0:$0000 if !z // * TRAP 0:$0DDE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0DDF 0:data:reset=0:$4DDE 0:$0DE0 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0DE1 d15:data:reset=0:$7FF8 1:$0DDE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0DDF d15:data:reset=0:$4DE2 0:$0DE2 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * testAreg 0:$0DE3 0:data:reset=0:$AA55 0:$0DE4 0:000011:A0=A1:D3=D8 ld ip,alu // * testAreg 0:$0DE5 0:000001:A1=A0:D3=D3 equ ip // * testAreg TRAP !z // * testAreg 0:$0DE6 z:data:reset=0:$0000 if !z // * TRAP 0:$0DE7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0DE8 0:data:reset=0:$4DE7 0:$0DE9 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0DEA d15:data:reset=0:$7FF8 1:$0DE7 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0DE8 d15:data:reset=0:$4DEB testIncrDecrA ip,1 // * testAreg 0:$0DEB 0:000011:A0=A1:D3=D0 ld ip,1 -1 // * testIncrDecrA 0:$0DEC 0:data:reset=0:$0000 0:$0DED 0:000011:A0=A0:D3=D8 ld ip,ip+1 // * testIncrDecrA 0:$0DEE 0:000011:A1=A0:D8=D0 ld alu,1 // * testIncrDecrA 0:$0DEF 0:data:reset=0:$0001 0:$0DF0 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0DF1 z:data:reset=0:$0000 if !z // * TRAP 0:$0DF2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0DF3 0:data:reset=0:$4DF2 0:$0DF4 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0DF5 d15:data:reset=0:$7FF8 1:$0DF2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0DF3 d15:data:reset=0:$4DF6 0:$0DF6 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0DF7 0:000011:A1=A0:D8=D0 ld alu,1 -1 // * testIncrDecrA 0:$0DF8 0:data:reset=0:$0000 0:$0DF9 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0DFA z:data:reset=0:$0000 if !z // * TRAP 0:$0DFB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0DFC 0:data:reset=0:$4DFB 0:$0DFD 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$0DFE d15:data:reset=0:$7FF8 1:$0DFB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0DFC d15:data:reset=0:$4DFF testIncrDecrA ip,2 // * testAreg 0:$0DFF 0:000011:A0=A1:D3=D0 ld ip,2 -1 // * testIncrDecrA 0:$0E00 0:data:reset=0:$0001 0:$0E01 0:000011:A0=A0:D3=D8 ld ip,ip+1 // * testIncrDecrA 0:$0E02 0:000011:A1=A0:D8=D0 ld alu,2 // * testIncrDecrA 0:$0E03 0:data:reset=0:$0002 0:$0E04 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E05 z:data:reset=0:$0000 if !z // * TRAP 0:$0E06 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E07 0:data:reset=0:$4E06 0:$0E08 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E09 d15:data:reset=0:$7FF8 1:$0E06 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E07 d15:data:reset=0:$4E0A 0:$0E0A 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0E0B 0:000011:A1=A0:D8=D0 ld alu,2 -1 // * testIncrDecrA 0:$0E0C 0:data:reset=0:$0001 0:$0E0D 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E0E z:data:reset=0:$0000 if !z // * TRAP 0:$0E0F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E10 0:data:reset=0:$4E0F 0:$0E11 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E12 d15:data:reset=0:$7FF8 1:$0E0F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E10 d15:data:reset=0:$4E13 testIncrDecrA ip,4 // * testAreg 0:$0E13 0:000011:A0=A1:D3=D0 ld ip,4 -1 // * testIncrDecrA 0:$0E14 0:data:reset=0:$0003 0:$0E15 0:000011:A0=A0:D3=D3 ld ip,ip+1 // * testIncrDecrA 0:$0E16 0:000011:A1=A0:D8=D0 ld alu,4 // * testIncrDecrA 0:$0E17 0:data:reset=0:$0004 0:$0E18 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E19 z:data:reset=0:$0000 if !z // * TRAP 0:$0E1A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E1B 0:data:reset=0:$4E1A 0:$0E1C 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E1D d15:data:reset=0:$7FF8 1:$0E1A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E1B d15:data:reset=0:$4E1E 0:$0E1E 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0E1F 0:000011:A1=A0:D8=D0 ld alu,4 -1 // * testIncrDecrA 0:$0E20 0:data:reset=0:$0003 0:$0E21 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E22 z:data:reset=0:$0000 if !z // * TRAP 0:$0E23 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E24 0:data:reset=0:$4E23 0:$0E25 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E26 d15:data:reset=0:$7FF8 1:$0E23 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E24 d15:data:reset=0:$4E27 testIncrDecrA ip,8 // * testAreg 0:$0E27 0:000011:A0=A1:D3=D0 ld ip,8 -1 // * testIncrDecrA 0:$0E28 0:data:reset=0:$0007 0:$0E29 0:000011:A0=A0:D3=D7 ld ip,ip+1 // * testIncrDecrA 0:$0E2A 0:000011:A1=A0:D8=D0 ld alu,8 // * testIncrDecrA 0:$0E2B 0:data:reset=0:$0008 0:$0E2C 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E2D z:data:reset=0:$0000 if !z // * TRAP 0:$0E2E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E2F 0:data:reset=0:$4E2E 0:$0E30 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E31 d15:data:reset=0:$7FF8 1:$0E2E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E2F d15:data:reset=0:$4E32 0:$0E32 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0E33 0:000011:A1=A0:D8=D0 ld alu,8 -1 // * testIncrDecrA 0:$0E34 0:data:reset=0:$0007 0:$0E35 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E36 z:data:reset=0:$0000 if !z // * TRAP 0:$0E37 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E38 0:data:reset=0:$4E37 0:$0E39 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E3A d15:data:reset=0:$7FF8 1:$0E37 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E38 d15:data:reset=0:$4E3B testIncrDecrA ip,$10 // * testAreg 0:$0E3B 0:000011:A0=A1:D3=D0 ld ip,$10 -1 // * testIncrDecrA 0:$0E3C 0:data:reset=0:$000F 0:$0E3D 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0E3E 0:000011:A1=A0:D8=D0 ld alu,$10 // * testIncrDecrA 0:$0E3F 0:data:reset=0:$0010 0:$0E40 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E41 z:data:reset=0:$0000 if !z // * TRAP 0:$0E42 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E43 0:data:reset=0:$4E42 0:$0E44 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E45 d15:data:reset=0:$7FF8 1:$0E42 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E43 d15:data:reset=0:$4E46 0:$0E46 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0E47 0:000011:A1=A0:D8=D0 ld alu,$10 -1 // * testIncrDecrA 0:$0E48 0:data:reset=0:$000F 0:$0E49 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E4A z:data:reset=0:$0000 if !z // * TRAP 0:$0E4B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E4C 0:data:reset=0:$4E4B 0:$0E4D 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E4E d15:data:reset=0:$7FF8 1:$0E4B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E4C d15:data:reset=0:$4E4F testIncrDecrA ip,$20 // * testAreg 0:$0E4F 0:000011:A0=A1:D3=D0 ld ip,$20 -1 // * testIncrDecrA 0:$0E50 0:data:reset=0:$001F 0:$0E51 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0E52 0:000011:A1=A0:D8=D0 ld alu,$20 // * testIncrDecrA 0:$0E53 0:data:reset=0:$0020 0:$0E54 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E55 z:data:reset=0:$0000 if !z // * TRAP 0:$0E56 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E57 0:data:reset=0:$4E56 0:$0E58 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E59 d15:data:reset=0:$7FF8 1:$0E56 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E57 d15:data:reset=0:$4E5A 0:$0E5A 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0E5B 0:000011:A1=A0:D8=D0 ld alu,$20 -1 // * testIncrDecrA 0:$0E5C 0:data:reset=0:$001F 0:$0E5D 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E5E z:data:reset=0:$0000 if !z // * TRAP 0:$0E5F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E60 0:data:reset=0:$4E5F 0:$0E61 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E62 d15:data:reset=0:$7FF8 1:$0E5F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E60 d15:data:reset=0:$4E63 testIncrDecrA ip,$40 // * testAreg 0:$0E63 0:000011:A0=A1:D3=D0 ld ip,$40 -1 // * testIncrDecrA 0:$0E64 0:data:reset=0:$003F 0:$0E65 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0E66 0:000011:A1=A0:D8=D0 ld alu,$40 // * testIncrDecrA 0:$0E67 0:data:reset=0:$0040 0:$0E68 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E69 z:data:reset=0:$0000 if !z // * TRAP 0:$0E6A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E6B 0:data:reset=0:$4E6A 0:$0E6C 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E6D d15:data:reset=0:$7FF8 1:$0E6A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E6B d15:data:reset=0:$4E6E 0:$0E6E 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0E6F 0:000011:A1=A0:D8=D0 ld alu,$40 -1 // * testIncrDecrA 0:$0E70 0:data:reset=0:$003F 0:$0E71 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E72 z:data:reset=0:$0000 if !z // * TRAP 0:$0E73 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E74 0:data:reset=0:$4E73 0:$0E75 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E76 d15:data:reset=0:$7FF8 1:$0E73 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E74 d15:data:reset=0:$4E77 testIncrDecrA ip,$80 // * testAreg 0:$0E77 0:000011:A0=A1:D3=D0 ld ip,$80 -1 // * testIncrDecrA 0:$0E78 0:data:reset=0:$007F 0:$0E79 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0E7A 0:000011:A1=A0:D8=D0 ld alu,$80 // * testIncrDecrA 0:$0E7B 0:data:reset=0:$0080 0:$0E7C 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E7D z:data:reset=0:$0000 if !z // * TRAP 0:$0E7E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E7F 0:data:reset=0:$4E7E 0:$0E80 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E81 d15:data:reset=0:$7FF8 1:$0E7E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E7F d15:data:reset=0:$4E82 0:$0E82 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0E83 0:000011:A1=A0:D8=D0 ld alu,$80 -1 // * testIncrDecrA 0:$0E84 0:data:reset=0:$007F 0:$0E85 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E86 z:data:reset=0:$0000 if !z // * TRAP 0:$0E87 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E88 0:data:reset=0:$4E87 0:$0E89 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E8A d15:data:reset=0:$7FF8 1:$0E87 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E88 d15:data:reset=0:$4E8B testIncrDecrA ip,$100 // * testAreg 0:$0E8B 0:000011:A0=A1:D3=D0 ld ip,$100 -1 // * testIncrDecrA 0:$0E8C 0:data:reset=0:$00FF 0:$0E8D 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0E8E 0:000011:A1=A0:D8=D0 ld alu,$100 // * testIncrDecrA 0:$0E8F 0:data:reset=0:$0100 0:$0E90 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E91 z:data:reset=0:$0000 if !z // * TRAP 0:$0E92 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E93 0:data:reset=0:$4E92 0:$0E94 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E95 d15:data:reset=0:$7FF8 1:$0E92 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E93 d15:data:reset=0:$4E96 0:$0E96 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0E97 0:000011:A1=A0:D8=D0 ld alu,$100 -1 // * testIncrDecrA 0:$0E98 0:data:reset=0:$00FF 0:$0E99 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0E9A z:data:reset=0:$0000 if !z // * TRAP 0:$0E9B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0E9C 0:data:reset=0:$4E9B 0:$0E9D 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0E9E d15:data:reset=0:$7FF8 1:$0E9B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0E9C d15:data:reset=0:$4E9F testIncrDecrA ip,$200 // * testAreg 0:$0E9F 0:000011:A0=A1:D3=D0 ld ip,$200 -1 // * testIncrDecrA 0:$0EA0 0:data:reset=0:$01FF 0:$0EA1 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0EA2 0:000011:A1=A0:D8=D0 ld alu,$200 // * testIncrDecrA 0:$0EA3 0:data:reset=0:$0200 0:$0EA4 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0EA5 z:data:reset=0:$0000 if !z // * TRAP 0:$0EA6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0EA7 0:data:reset=0:$4EA6 0:$0EA8 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0EA9 d15:data:reset=0:$7FF8 1:$0EA6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0EA7 d15:data:reset=0:$4EAA 0:$0EAA 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0EAB 0:000011:A1=A0:D8=D0 ld alu,$200 -1 // * testIncrDecrA 0:$0EAC 0:data:reset=0:$01FF 0:$0EAD 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0EAE z:data:reset=0:$0000 if !z // * TRAP 0:$0EAF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0EB0 0:data:reset=0:$4EAF 0:$0EB1 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0EB2 d15:data:reset=0:$7FF8 1:$0EAF 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0EB0 d15:data:reset=0:$4EB3 testIncrDecrA ip,$400 // * testAreg 0:$0EB3 0:000011:A0=A1:D3=D0 ld ip,$400 -1 // * testIncrDecrA 0:$0EB4 0:data:reset=0:$03FF 0:$0EB5 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0EB6 0:000011:A1=A0:D8=D0 ld alu,$400 // * testIncrDecrA 0:$0EB7 0:data:reset=0:$0400 0:$0EB8 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0EB9 z:data:reset=0:$0000 if !z // * TRAP 0:$0EBA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0EBB 0:data:reset=0:$4EBA 0:$0EBC 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0EBD d15:data:reset=0:$7FF8 1:$0EBA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0EBB d15:data:reset=0:$4EBE 0:$0EBE 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0EBF 0:000011:A1=A0:D8=D0 ld alu,$400 -1 // * testIncrDecrA 0:$0EC0 0:data:reset=0:$03FF 0:$0EC1 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0EC2 z:data:reset=0:$0000 if !z // * TRAP 0:$0EC3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0EC4 0:data:reset=0:$4EC3 0:$0EC5 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0EC6 d15:data:reset=0:$7FF8 1:$0EC3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0EC4 d15:data:reset=0:$4EC7 testIncrDecrA ip,$800 // * testAreg 0:$0EC7 0:000011:A0=A1:D3=D0 ld ip,$800 -1 // * testIncrDecrA 0:$0EC8 0:data:reset=0:$07FF 0:$0EC9 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0ECA 0:000011:A1=A0:D8=D0 ld alu,$800 // * testIncrDecrA 0:$0ECB 0:data:reset=0:$0800 0:$0ECC 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0ECD z:data:reset=0:$0000 if !z // * TRAP 0:$0ECE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0ECF 0:data:reset=0:$4ECE 0:$0ED0 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0ED1 d15:data:reset=0:$7FF8 1:$0ECE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0ECF d15:data:reset=0:$4ED2 0:$0ED2 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0ED3 0:000011:A1=A0:D8=D0 ld alu,$800 -1 // * testIncrDecrA 0:$0ED4 0:data:reset=0:$07FF 0:$0ED5 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0ED6 z:data:reset=0:$0000 if !z // * TRAP 0:$0ED7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0ED8 0:data:reset=0:$4ED7 0:$0ED9 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0EDA d15:data:reset=0:$7FF8 1:$0ED7 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0ED8 d15:data:reset=0:$4EDB testIncrDecrA ip,$1000 // * testAreg 0:$0EDB 0:000011:A0=A1:D3=D0 ld ip,$1000 -1 // * testIncrDecrA 0:$0EDC 0:data:reset=0:$0FFF 0:$0EDD 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0EDE 0:000011:A1=A0:D8=D0 ld alu,$1000 // * testIncrDecrA 0:$0EDF 0:data:reset=0:$1000 0:$0EE0 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0EE1 z:data:reset=0:$0000 if !z // * TRAP 0:$0EE2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0EE3 0:data:reset=0:$4EE2 0:$0EE4 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0EE5 d15:data:reset=0:$7FF8 1:$0EE2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0EE3 d15:data:reset=0:$4EE6 0:$0EE6 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0EE7 0:000011:A1=A0:D8=D0 ld alu,$1000 -1 // * testIncrDecrA 0:$0EE8 0:data:reset=0:$0FFF 0:$0EE9 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0EEA z:data:reset=0:$0000 if !z // * TRAP 0:$0EEB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0EEC 0:data:reset=0:$4EEB 0:$0EED 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0EEE d15:data:reset=0:$7FF8 1:$0EEB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0EEC d15:data:reset=0:$4EEF testIncrDecrA ip,$2000 // * testAreg 0:$0EEF 0:000011:A0=A1:D3=D0 ld ip,$2000 -1 // * testIncrDecrA 0:$0EF0 0:data:reset=0:$1FFF 0:$0EF1 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0EF2 0:000011:A1=A0:D8=D0 ld alu,$2000 // * testIncrDecrA 0:$0EF3 0:data:reset=0:$2000 0:$0EF4 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0EF5 z:data:reset=0:$0000 if !z // * TRAP 0:$0EF6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0EF7 0:data:reset=0:$4EF6 0:$0EF8 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0EF9 d15:data:reset=0:$7FF8 1:$0EF6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0EF7 d15:data:reset=0:$4EFA 0:$0EFA 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0EFB 0:000011:A1=A0:D8=D0 ld alu,$2000 -1 // * testIncrDecrA 0:$0EFC 0:data:reset=0:$1FFF 0:$0EFD 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0EFE z:data:reset=0:$0000 if !z // * TRAP 0:$0EFF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F00 0:data:reset=0:$4EFF 0:$0F01 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$0F02 d15:data:reset=0:$7FF8 1:$0EFF 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F00 d15:data:reset=0:$4F03 testIncrDecrA ip,$4000 // * testAreg 0:$0F03 0:000011:A0=A1:D3=D0 ld ip,$4000 -1 // * testIncrDecrA 0:$0F04 0:data:reset=0:$3FFF 0:$0F05 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0F06 0:000011:A1=A0:D8=D0 ld alu,$4000 // * testIncrDecrA 0:$0F07 0:data:reset=0:$4000 0:$0F08 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0F09 z:data:reset=0:$0000 if !z // * TRAP 0:$0F0A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F0B 0:data:reset=0:$4F0A 0:$0F0C 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F0D d15:data:reset=0:$7FF8 1:$0F0A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F0B d15:data:reset=0:$4F0E 0:$0F0E 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0F0F 0:000011:A1=A0:D8=D0 ld alu,$4000 -1 // * testIncrDecrA 0:$0F10 0:data:reset=0:$3FFF 0:$0F11 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0F12 z:data:reset=0:$0000 if !z // * TRAP 0:$0F13 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F14 0:data:reset=0:$4F13 0:$0F15 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F16 d15:data:reset=0:$7FF8 1:$0F13 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F14 d15:data:reset=0:$4F17 testIncrDecrA ip,$8000 // * testAreg 0:$0F17 0:000011:A0=A1:D3=D0 ld ip,$8000 -1 // * testIncrDecrA 0:$0F18 0:data:reset=0:$7FFF 0:$0F19 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0F1A 0:000011:A1=A0:D8=D0 ld alu,$8000 // * testIncrDecrA 0:$0F1B 0:data:reset=0:$8000 0:$0F1C 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0F1D z:data:reset=0:$0000 if !z // * TRAP 0:$0F1E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F1F 0:data:reset=0:$4F1E 0:$0F20 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F21 d15:data:reset=0:$7FF8 1:$0F1E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F1F d15:data:reset=0:$4F22 0:$0F22 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0F23 0:000011:A1=A0:D8=D0 ld alu,$8000 -1 // * testIncrDecrA 0:$0F24 0:data:reset=0:$7FFF 0:$0F25 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0F26 z:data:reset=0:$0000 if !z // * TRAP 0:$0F27 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F28 0:data:reset=0:$4F27 0:$0F29 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F2A d15:data:reset=0:$7FF8 1:$0F27 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F28 d15:data:reset=0:$4F2B testIncrDecrA ip,0 // * testAreg 0:$0F2B 0:000011:A0=A1:D3=D0 ld ip,0 -1 // * testIncrDecrA 0:$0F2C 0:data:reset=0:$FFFF 0:$0F2D 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$0F2E 0:000011:A1=A0:D8=D0 ld alu,0 // * testIncrDecrA 0:$0F2F 0:data:reset=0:$0000 0:$0F30 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0F31 z:data:reset=0:$0000 if !z // * TRAP 0:$0F32 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F33 0:data:reset=0:$4F32 0:$0F34 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F35 d15:data:reset=0:$7FF8 1:$0F32 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F33 d15:data:reset=0:$4F36 0:$0F36 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$0F37 0:000011:A1=A0:D8=D0 ld alu,0 -1 // * testIncrDecrA 0:$0F38 0:data:reset=0:$FFFF 0:$0F39 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0F3A z:data:reset=0:$0000 if !z // * TRAP 0:$0F3B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F3C 0:data:reset=0:$4F3B 0:$0F3D 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F3E d15:data:reset=0:$7FF8 1:$0F3B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F3C d15:data:reset=0:$4F3F testAreg sp 0:$0F3F 0:000011:A2=A1:D3=D0 ld sp,0 // * testAreg 0:$0F40 0:data:reset=0:$0000 0:$0F41 0:000011:A1=A2:D3=D3 tst sp // * testAreg TRAP !z // * testAreg 0:$0F42 z:data:reset=0:$0000 if !z // * TRAP 0:$0F43 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F44 0:data:reset=0:$4F43 0:$0F45 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F46 d15:data:reset=0:$7FF8 1:$0F43 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F44 d15:data:reset=0:$4F47 0:$0F47 0:000011:A2=A1:D3=D0 ld sp,$ffff // * testAreg 0:$0F48 0:data:reset=0:$FFFF 0:$0F49 0:001011:A1=A2:D3=D3 tstn sp // * testAreg TRAP !z // * testAreg 0:$0F4A z:data:reset=0:$0000 if !z // * TRAP 0:$0F4B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F4C 0:data:reset=0:$4F4B 0:$0F4D 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F4E d15:data:reset=0:$7FF8 1:$0F4B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F4C d15:data:reset=0:$4F4F 0:$0F4F 0:000011:A1=A7:D8=D0 ld alu,$55aa // * testAreg 0:$0F50 0:data:reset=0:$55AA 0:$0F51 0:000011:A2=A1:D3=D8 ld sp,alu // * testAreg 0:$0F52 0:000001:A1=A2:D3=D3 equ sp // * testAreg TRAP !z // * testAreg 0:$0F53 z:data:reset=0:$0000 if !z // * TRAP 0:$0F54 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F55 0:data:reset=0:$4F54 0:$0F56 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F57 d15:data:reset=0:$7FF8 1:$0F54 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F55 d15:data:reset=0:$4F58 0:$0F58 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * testAreg 0:$0F59 0:data:reset=0:$AA55 0:$0F5A 0:000011:A2=A1:D3=D8 ld sp,alu // * testAreg 0:$0F5B 0:000001:A1=A2:D3=D3 equ sp // * testAreg TRAP !z // * testAreg 0:$0F5C z:data:reset=0:$0000 if !z // * TRAP 0:$0F5D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F5E 0:data:reset=0:$4F5D 0:$0F5F 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F60 d15:data:reset=0:$7FF8 1:$0F5D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F5E d15:data:reset=0:$4F61 testIncrDecrA sp,1 // * testAreg 0:$0F61 0:000011:A2=A1:D3=D0 ld sp,1 -1 // * testIncrDecrA 0:$0F62 0:data:reset=0:$0000 0:$0F63 0:000011:A2=A2:D3=D8 ld sp,sp+1 // * testIncrDecrA 0:$0F64 0:000011:A1=A2:D8=D0 ld alu,1 // * testIncrDecrA 0:$0F65 0:data:reset=0:$0001 0:$0F66 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0F67 z:data:reset=0:$0000 if !z // * TRAP 0:$0F68 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F69 0:data:reset=0:$4F68 0:$0F6A 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F6B d15:data:reset=0:$7FF8 1:$0F68 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F69 d15:data:reset=0:$4F6C 0:$0F6C 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$0F6D 0:000011:A1=A2:D8=D0 ld alu,1 -1 // * testIncrDecrA 0:$0F6E 0:data:reset=0:$0000 0:$0F6F 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0F70 z:data:reset=0:$0000 if !z // * TRAP 0:$0F71 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F72 0:data:reset=0:$4F71 0:$0F73 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F74 d15:data:reset=0:$7FF8 1:$0F71 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F72 d15:data:reset=0:$4F75 testIncrDecrA sp,2 // * testAreg 0:$0F75 0:000011:A2=A1:D3=D0 ld sp,2 -1 // * testIncrDecrA 0:$0F76 0:data:reset=0:$0001 0:$0F77 0:000011:A2=A2:D3=D8 ld sp,sp+1 // * testIncrDecrA 0:$0F78 0:000011:A1=A2:D8=D0 ld alu,2 // * testIncrDecrA 0:$0F79 0:data:reset=0:$0002 0:$0F7A 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0F7B z:data:reset=0:$0000 if !z // * TRAP 0:$0F7C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F7D 0:data:reset=0:$4F7C 0:$0F7E 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F7F d15:data:reset=0:$7FF8 1:$0F7C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F7D d15:data:reset=0:$4F80 0:$0F80 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$0F81 0:000011:A1=A2:D8=D0 ld alu,2 -1 // * testIncrDecrA 0:$0F82 0:data:reset=0:$0001 0:$0F83 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0F84 z:data:reset=0:$0000 if !z // * TRAP 0:$0F85 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F86 0:data:reset=0:$4F85 0:$0F87 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F88 d15:data:reset=0:$7FF8 1:$0F85 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F86 d15:data:reset=0:$4F89 testIncrDecrA sp,4 // * testAreg 0:$0F89 0:000011:A2=A1:D3=D0 ld sp,4 -1 // * testIncrDecrA 0:$0F8A 0:data:reset=0:$0003 0:$0F8B 0:000011:A2=A2:D3=D3 ld sp,sp+1 // * testIncrDecrA 0:$0F8C 0:000011:A1=A2:D8=D0 ld alu,4 // * testIncrDecrA 0:$0F8D 0:data:reset=0:$0004 0:$0F8E 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0F8F z:data:reset=0:$0000 if !z // * TRAP 0:$0F90 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F91 0:data:reset=0:$4F90 0:$0F92 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F93 d15:data:reset=0:$7FF8 1:$0F90 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F91 d15:data:reset=0:$4F94 0:$0F94 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$0F95 0:000011:A1=A2:D8=D0 ld alu,4 -1 // * testIncrDecrA 0:$0F96 0:data:reset=0:$0003 0:$0F97 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0F98 z:data:reset=0:$0000 if !z // * TRAP 0:$0F99 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0F9A 0:data:reset=0:$4F99 0:$0F9B 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0F9C d15:data:reset=0:$7FF8 1:$0F99 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0F9A d15:data:reset=0:$4F9D testIncrDecrA sp,8 // * testAreg 0:$0F9D 0:000011:A2=A1:D3=D0 ld sp,8 -1 // * testIncrDecrA 0:$0F9E 0:data:reset=0:$0007 0:$0F9F 0:000011:A2=A2:D3=D7 ld sp,sp+1 // * testIncrDecrA 0:$0FA0 0:000011:A1=A2:D8=D0 ld alu,8 // * testIncrDecrA 0:$0FA1 0:data:reset=0:$0008 0:$0FA2 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0FA3 z:data:reset=0:$0000 if !z // * TRAP 0:$0FA4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0FA5 0:data:reset=0:$4FA4 0:$0FA6 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0FA7 d15:data:reset=0:$7FF8 1:$0FA4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0FA5 d15:data:reset=0:$4FA8 0:$0FA8 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$0FA9 0:000011:A1=A2:D8=D0 ld alu,8 -1 // * testIncrDecrA 0:$0FAA 0:data:reset=0:$0007 0:$0FAB 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0FAC z:data:reset=0:$0000 if !z // * TRAP 0:$0FAD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0FAE 0:data:reset=0:$4FAD 0:$0FAF 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0FB0 d15:data:reset=0:$7FF8 1:$0FAD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0FAE d15:data:reset=0:$4FB1 testIncrDecrA sp,$10 // * testAreg 0:$0FB1 0:000011:A2=A1:D3=D0 ld sp,$10 -1 // * testIncrDecrA 0:$0FB2 0:data:reset=0:$000F 0:$0FB3 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$0FB4 0:000011:A1=A2:D8=D0 ld alu,$10 // * testIncrDecrA 0:$0FB5 0:data:reset=0:$0010 0:$0FB6 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0FB7 z:data:reset=0:$0000 if !z // * TRAP 0:$0FB8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0FB9 0:data:reset=0:$4FB8 0:$0FBA 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0FBB d15:data:reset=0:$7FF8 1:$0FB8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0FB9 d15:data:reset=0:$4FBC 0:$0FBC 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$0FBD 0:000011:A1=A2:D8=D0 ld alu,$10 -1 // * testIncrDecrA 0:$0FBE 0:data:reset=0:$000F 0:$0FBF 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0FC0 z:data:reset=0:$0000 if !z // * TRAP 0:$0FC1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0FC2 0:data:reset=0:$4FC1 0:$0FC3 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0FC4 d15:data:reset=0:$7FF8 1:$0FC1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0FC2 d15:data:reset=0:$4FC5 testIncrDecrA sp,$20 // * testAreg 0:$0FC5 0:000011:A2=A1:D3=D0 ld sp,$20 -1 // * testIncrDecrA 0:$0FC6 0:data:reset=0:$001F 0:$0FC7 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$0FC8 0:000011:A1=A2:D8=D0 ld alu,$20 // * testIncrDecrA 0:$0FC9 0:data:reset=0:$0020 0:$0FCA 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0FCB z:data:reset=0:$0000 if !z // * TRAP 0:$0FCC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0FCD 0:data:reset=0:$4FCC 0:$0FCE 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0FCF d15:data:reset=0:$7FF8 1:$0FCC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0FCD d15:data:reset=0:$4FD0 0:$0FD0 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$0FD1 0:000011:A1=A2:D8=D0 ld alu,$20 -1 // * testIncrDecrA 0:$0FD2 0:data:reset=0:$001F 0:$0FD3 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0FD4 z:data:reset=0:$0000 if !z // * TRAP 0:$0FD5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0FD6 0:data:reset=0:$4FD5 0:$0FD7 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0FD8 d15:data:reset=0:$7FF8 1:$0FD5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0FD6 d15:data:reset=0:$4FD9 testIncrDecrA sp,$40 // * testAreg 0:$0FD9 0:000011:A2=A1:D3=D0 ld sp,$40 -1 // * testIncrDecrA 0:$0FDA 0:data:reset=0:$003F 0:$0FDB 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$0FDC 0:000011:A1=A2:D8=D0 ld alu,$40 // * testIncrDecrA 0:$0FDD 0:data:reset=0:$0040 0:$0FDE 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0FDF z:data:reset=0:$0000 if !z // * TRAP 0:$0FE0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0FE1 0:data:reset=0:$4FE0 0:$0FE2 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0FE3 d15:data:reset=0:$7FF8 1:$0FE0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0FE1 d15:data:reset=0:$4FE4 0:$0FE4 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$0FE5 0:000011:A1=A2:D8=D0 ld alu,$40 -1 // * testIncrDecrA 0:$0FE6 0:data:reset=0:$003F 0:$0FE7 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0FE8 z:data:reset=0:$0000 if !z // * TRAP 0:$0FE9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0FEA 0:data:reset=0:$4FE9 0:$0FEB 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0FEC d15:data:reset=0:$7FF8 1:$0FE9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0FEA d15:data:reset=0:$4FED testIncrDecrA sp,$80 // * testAreg 0:$0FED 0:000011:A2=A1:D3=D0 ld sp,$80 -1 // * testIncrDecrA 0:$0FEE 0:data:reset=0:$007F 0:$0FEF 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$0FF0 0:000011:A1=A2:D8=D0 ld alu,$80 // * testIncrDecrA 0:$0FF1 0:data:reset=0:$0080 0:$0FF2 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0FF3 z:data:reset=0:$0000 if !z // * TRAP 0:$0FF4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0FF5 0:data:reset=0:$4FF4 0:$0FF6 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$0FF7 d15:data:reset=0:$7FF8 1:$0FF4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0FF5 d15:data:reset=0:$4FF8 0:$0FF8 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$0FF9 0:000011:A1=A2:D8=D0 ld alu,$80 -1 // * testIncrDecrA 0:$0FFA 0:data:reset=0:$007F 0:$0FFB 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$0FFC z:data:reset=0:$0000 if !z // * TRAP 0:$0FFD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$0FFE 0:data:reset=0:$4FFD 0:$0FFF 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1000 d15:data:reset=0:$7FF8 1:$0FFD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$0FFE d15:data:reset=0:$5001 testIncrDecrA sp,$100 // * testAreg 0:$1001 0:000011:A2=A1:D3=D0 ld sp,$100 -1 // * testIncrDecrA 0:$1002 0:data:reset=0:$00FF 0:$1003 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$1004 0:000011:A1=A2:D8=D0 ld alu,$100 // * testIncrDecrA 0:$1005 0:data:reset=0:$0100 0:$1006 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1007 z:data:reset=0:$0000 if !z // * TRAP 0:$1008 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1009 0:data:reset=0:$5008 0:$100A 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$100B d15:data:reset=0:$7FF8 1:$1008 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1009 d15:data:reset=0:$500C 0:$100C 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$100D 0:000011:A1=A2:D8=D0 ld alu,$100 -1 // * testIncrDecrA 0:$100E 0:data:reset=0:$00FF 0:$100F 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1010 z:data:reset=0:$0000 if !z // * TRAP 0:$1011 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1012 0:data:reset=0:$5011 0:$1013 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$1014 d15:data:reset=0:$7FF8 1:$1011 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1012 d15:data:reset=0:$5015 testIncrDecrA sp,$200 // * testAreg 0:$1015 0:000011:A2=A1:D3=D0 ld sp,$200 -1 // * testIncrDecrA 0:$1016 0:data:reset=0:$01FF 0:$1017 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$1018 0:000011:A1=A2:D8=D0 ld alu,$200 // * testIncrDecrA 0:$1019 0:data:reset=0:$0200 0:$101A 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$101B z:data:reset=0:$0000 if !z // * TRAP 0:$101C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$101D 0:data:reset=0:$501C 0:$101E 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$101F d15:data:reset=0:$7FF8 1:$101C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$101D d15:data:reset=0:$5020 0:$1020 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$1021 0:000011:A1=A2:D8=D0 ld alu,$200 -1 // * testIncrDecrA 0:$1022 0:data:reset=0:$01FF 0:$1023 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1024 z:data:reset=0:$0000 if !z // * TRAP 0:$1025 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1026 0:data:reset=0:$5025 0:$1027 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$1028 d15:data:reset=0:$7FF8 1:$1025 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1026 d15:data:reset=0:$5029 testIncrDecrA sp,$400 // * testAreg 0:$1029 0:000011:A2=A1:D3=D0 ld sp,$400 -1 // * testIncrDecrA 0:$102A 0:data:reset=0:$03FF 0:$102B 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$102C 0:000011:A1=A2:D8=D0 ld alu,$400 // * testIncrDecrA 0:$102D 0:data:reset=0:$0400 0:$102E 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$102F z:data:reset=0:$0000 if !z // * TRAP 0:$1030 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1031 0:data:reset=0:$5030 0:$1032 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$1033 d15:data:reset=0:$7FF8 1:$1030 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1031 d15:data:reset=0:$5034 0:$1034 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$1035 0:000011:A1=A2:D8=D0 ld alu,$400 -1 // * testIncrDecrA 0:$1036 0:data:reset=0:$03FF 0:$1037 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1038 z:data:reset=0:$0000 if !z // * TRAP 0:$1039 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$103A 0:data:reset=0:$5039 0:$103B 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$103C d15:data:reset=0:$7FF8 1:$1039 1:000011:A1=A7:D0=D0 then // * TRAP 1:$103A d15:data:reset=0:$503D testIncrDecrA sp,$800 // * testAreg 0:$103D 0:000011:A2=A1:D3=D0 ld sp,$800 -1 // * testIncrDecrA 0:$103E 0:data:reset=0:$07FF 0:$103F 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$1040 0:000011:A1=A2:D8=D0 ld alu,$800 // * testIncrDecrA 0:$1041 0:data:reset=0:$0800 0:$1042 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1043 z:data:reset=0:$0000 if !z // * TRAP 0:$1044 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1045 0:data:reset=0:$5044 0:$1046 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$1047 d15:data:reset=0:$7FF8 1:$1044 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1045 d15:data:reset=0:$5048 0:$1048 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$1049 0:000011:A1=A2:D8=D0 ld alu,$800 -1 // * testIncrDecrA 0:$104A 0:data:reset=0:$07FF 0:$104B 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$104C z:data:reset=0:$0000 if !z // * TRAP 0:$104D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$104E 0:data:reset=0:$504D 0:$104F 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$1050 d15:data:reset=0:$7FF8 1:$104D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$104E d15:data:reset=0:$5051 testIncrDecrA sp,$1000 // * testAreg 0:$1051 0:000011:A2=A1:D3=D0 ld sp,$1000 -1 // * testIncrDecrA 0:$1052 0:data:reset=0:$0FFF 0:$1053 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$1054 0:000011:A1=A2:D8=D0 ld alu,$1000 // * testIncrDecrA 0:$1055 0:data:reset=0:$1000 0:$1056 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1057 z:data:reset=0:$0000 if !z // * TRAP 0:$1058 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1059 0:data:reset=0:$5058 0:$105A 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$105B d15:data:reset=0:$7FF8 1:$1058 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1059 d15:data:reset=0:$505C 0:$105C 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$105D 0:000011:A1=A2:D8=D0 ld alu,$1000 -1 // * testIncrDecrA 0:$105E 0:data:reset=0:$0FFF 0:$105F 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1060 z:data:reset=0:$0000 if !z // * TRAP 0:$1061 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1062 0:data:reset=0:$5061 0:$1063 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$1064 d15:data:reset=0:$7FF8 1:$1061 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1062 d15:data:reset=0:$5065 testIncrDecrA sp,$2000 // * testAreg 0:$1065 0:000011:A2=A1:D3=D0 ld sp,$2000 -1 // * testIncrDecrA 0:$1066 0:data:reset=0:$1FFF 0:$1067 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$1068 0:000011:A1=A2:D8=D0 ld alu,$2000 // * testIncrDecrA 0:$1069 0:data:reset=0:$2000 0:$106A 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$106B z:data:reset=0:$0000 if !z // * TRAP 0:$106C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$106D 0:data:reset=0:$506C 0:$106E 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$106F d15:data:reset=0:$7FF8 1:$106C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$106D d15:data:reset=0:$5070 0:$1070 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$1071 0:000011:A1=A2:D8=D0 ld alu,$2000 -1 // * testIncrDecrA 0:$1072 0:data:reset=0:$1FFF 0:$1073 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1074 z:data:reset=0:$0000 if !z // * TRAP 0:$1075 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1076 0:data:reset=0:$5075 0:$1077 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$1078 d15:data:reset=0:$7FF8 1:$1075 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1076 d15:data:reset=0:$5079 testIncrDecrA sp,$4000 // * testAreg 0:$1079 0:000011:A2=A1:D3=D0 ld sp,$4000 -1 // * testIncrDecrA 0:$107A 0:data:reset=0:$3FFF 0:$107B 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$107C 0:000011:A1=A2:D8=D0 ld alu,$4000 // * testIncrDecrA 0:$107D 0:data:reset=0:$4000 0:$107E 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$107F z:data:reset=0:$0000 if !z // * TRAP 0:$1080 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1081 0:data:reset=0:$5080 0:$1082 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$1083 d15:data:reset=0:$7FF8 1:$1080 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1081 d15:data:reset=0:$5084 0:$1084 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$1085 0:000011:A1=A2:D8=D0 ld alu,$4000 -1 // * testIncrDecrA 0:$1086 0:data:reset=0:$3FFF 0:$1087 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1088 z:data:reset=0:$0000 if !z // * TRAP 0:$1089 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$108A 0:data:reset=0:$5089 0:$108B 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$108C d15:data:reset=0:$7FF8 1:$1089 1:000011:A1=A7:D0=D0 then // * TRAP 1:$108A d15:data:reset=0:$508D testIncrDecrA sp,$8000 // * testAreg 0:$108D 0:000011:A2=A1:D3=D0 ld sp,$8000 -1 // * testIncrDecrA 0:$108E 0:data:reset=0:$7FFF 0:$108F 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$1090 0:000011:A1=A2:D8=D0 ld alu,$8000 // * testIncrDecrA 0:$1091 0:data:reset=0:$8000 0:$1092 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1093 z:data:reset=0:$0000 if !z // * TRAP 0:$1094 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1095 0:data:reset=0:$5094 0:$1096 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$1097 d15:data:reset=0:$7FF8 1:$1094 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1095 d15:data:reset=0:$5098 0:$1098 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$1099 0:000011:A1=A2:D8=D0 ld alu,$8000 -1 // * testIncrDecrA 0:$109A 0:data:reset=0:$7FFF 0:$109B 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$109C z:data:reset=0:$0000 if !z // * TRAP 0:$109D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$109E 0:data:reset=0:$509D 0:$109F 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$10A0 d15:data:reset=0:$7FF8 1:$109D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$109E d15:data:reset=0:$50A1 testIncrDecrA sp,0 // * testAreg 0:$10A1 0:000011:A2=A1:D3=D0 ld sp,0 -1 // * testIncrDecrA 0:$10A2 0:data:reset=0:$FFFF 0:$10A3 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$10A4 0:000011:A1=A2:D8=D0 ld alu,0 // * testIncrDecrA 0:$10A5 0:data:reset=0:$0000 0:$10A6 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$10A7 z:data:reset=0:$0000 if !z // * TRAP 0:$10A8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$10A9 0:data:reset=0:$50A8 0:$10AA 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$10AB d15:data:reset=0:$7FF8 1:$10A8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$10A9 d15:data:reset=0:$50AC 0:$10AC 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$10AD 0:000011:A1=A2:D8=D0 ld alu,0 -1 // * testIncrDecrA 0:$10AE 0:data:reset=0:$FFFF 0:$10AF 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$10B0 z:data:reset=0:$0000 if !z // * TRAP 0:$10B1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$10B2 0:data:reset=0:$50B1 0:$10B3 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$10B4 d15:data:reset=0:$7FF8 1:$10B1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$10B2 d15:data:reset=0:$50B5 // --- file: "aregs.asm" --- #include "ramtest.asm" // +++ file: "ramtest.asm" +++ /* Copyright (c) Günter Woigk 2009 - 2010 mailto:kio@little-bat.de This file is free software This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: ? Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. ? Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ // adapted from "?/mc/asm/ramtest.asm" /* -------------------------------------------------- Test and Clear Ram Test and clear 64k ram with $0000. "run-through" version: no ret at end ram_test should detect defective bits, defective chips, total failure of ram, defective data lines and defective address lines. failure in first loop: defective word at a0: issue with data lines? Bit always 0, always 1, shortened? */ // in: - // out: - // mod: alu,a1,a0,dtmp // Check whole ram word by word: // Store and read 16 x single bit 1 and 16 x single bit 0 0:$10B5 0:000011:A6=A1:D3=D0 ld atmp,$ // error position 0:$10B6 0:data:reset=0:$50B5 0:$10B7 0:000011:A3=A1:D3=D0 ld a0,$0000 // a0 -> ram 0:$10B8 0:data:reset=0:$0000 do 0:$10B9 0:000011:A1=A0:D8=D0 ld alu,$8000 // alu = pattern = $8000 --> $0001 0:$10BA 0:data:reset=0:$8000 0:$10BB 0:000011:A1=A0:D7=D8 ld dtmp,alu do 0:$10BC 0:001011:A1=A0:D8=D8 cpl 0:$10BD 0:000011:A1=A3:D1=D8 ld (a0),alu 0:$10BE 0:000011:A1=A3:D3=D7 tst dtmp // toggle data on bus 0:$10BF 0:000011:A1=A3:D3=D1 tst (a0) // delay 16 MHz 0:$10C0 0:000001:A1=A3:D3=D1 equ (a0) // compare 0:$10C1 z:000011:A1=A3:D7=D8 ld dtmp,alu : z 0:$10C2 0:000011:A1=A3:D0=D0 jp 0,error // defective word at a0 0:$10C3 d15:data:reset=0:$7FF8 1:$10C2 1:001011:A1=A7:D8=D8 cpl 1:$10C3 1:000011:A1=A3:D1=D8 ld (a0),alu 1:$10C4 1:000011:A1=A3:D3=D7 tst dtmp 1:$10C5 1:000011:A1=A3:D3=D1 tst (a0) // delay 16 MHz 1:$10C6 1:000001:A1=A3:D3=D1 equ (a0) // compare 1:$10C7 z:000011:A1=A3:D7=D8 ld dtmp,alu : z 0:$10C8 0:000011:A1=A7:D0=D0 jp 0,error // defective word at a0 0:$10C9 d15:data:reset=0:$7FF8 1:$10C8 1:000011:A1=A3:DC=D8 ld sr,alu,nc // note: data bit 0 on bus 1:$10C9 d0:000011:A1=A3:D8=DC ld alu,sr : bit0 // note: test for bit0 0:$10CA 0:000011:A1=A7:D0=D0 until 1 // note: conditional branch 0:$10CB d15:data:reset=0:$50BC // same byte, next bit 1:$10CA 1:000011:A3=A3:D3=DC inc a0 1:$10CB 1:000011:A1=A3:D3=D3 tst a0 1:$10CC z:data:reset=0:$0000 until z // next byte 0:$10CD 0:000011:A1=A7:D0=D0 0:$10CE d15:data:reset=0:$50B9 // now: all RAM[?] = $01 // Check for folding (defective address lines) and clear ram to $0000: // ld a0,$0000 // a0 = pointer ist schon // ld dtmp,1 // const: 1 ist schon do 1:$10CD 1:000011:A1=A3:D8=D1 ld alu,(a0) 1:$10CE 1:001100:A1=A3:D3=D7 sub dtmp // -1 1:$10CF 1:001100:A1=A3:D8=D7 1:$10D0 z:000011:A3=A3:D1=D8 ld (a0++),alu : z // $01 -> $00 1:$10D1 1:000011:A1=A3:D0=D0 while 1 1:$10D2 d15:data:reset=0:$D0CD // Abort if ram cell did not contain $0001: // either due to folded addresses due to defective address line // or because entire 64k were cleared. // a0 points behind the mirrored cell or at $0001 if entire 64k are ok: 0:$10D1 0:000001:A1=A7:D8=D8 xor alu // if stopped because 64k have been cleared: 0:$10D2 0:010011:A3=A3:D3=D8 ld (--a0),alu // clear ram[$0000] 0:$10D3 0:000011:A1=A3:D1=D8 0:$10D4 0:000011:A1=A3:D3=D3 tst a0 TRAP !z 0:$10D5 z:data:reset=0:$0000 if !z // * TRAP 0:$10D6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$10D7 0:data:reset=0:$50D6 0:$10D8 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$10D9 d15:data:reset=0:$7FF8 1:$10D6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$10D7 d15:data:reset=0:$50DA // --- file: "ramtest.asm" --- //#include "cmd_lo.asm" 0:$10DA 0:data:led_g=1:$0000 set led_grn // 1st half of test loop passed 0:$10DB 0:000011:A1=A0:D0=D0 jp again 0:$10DC d15:data:reset=0:$50DD : again #include "cmd.asm" // +++ file: "cmd.asm" +++ // ====================================== // CPU Test as in real mc rom: // ====================================== 0:$10DD 0:000011:A1=A0:D8=D0 ld alu,1 0:$10DE 0:data:reset=0:$0001 do 0:$10DF 0:000011:A1=A0:D4=D8 ld d0,alu 0:$10E0 0:000011:A3=A1:D3=D4 ld a0,d0 0:$10E1 0:000011:A1=A3:D5=D3 ld d1,a0 0:$10E2 0:000011:A4=A1:D3=D5 ld a1,d1 0:$10E3 0:000011:A1=A4:D6=D3 ld d2,a1 0:$10E4 0:000011:A6=A1:D3=D6 ld atmp,d2 0:$10E5 0:000011:A1=A6:D7=D3 ld dtmp,atmp 0:$10E6 0:000011:A5=A1:D3=D7 ld hp,dtmp 0:$10E7 0:000111:A1=A5:DD=D3 ld sl,hp,cy 0:$10E8 d15:000011:A2=A1:D3=DD ld sp,sl : bit15 if 0 0:$10E9 0:000011:A1=A2:DC=D3 ld sr,sp,nc else 1:$10E9 0:000111:A1=A2:DC=D3 ld sr,sp,cy then 0:$10EA 0:000011:A0=A1:D3=DC ld ip,sr 0:$10EB 0:000011:A1=A0:DA=D3 ld swap,ip 0:$10EC 0:000011:A1=A0:DA=DA ld swap,swap 0:$10ED 0:000011:A1=A0:DF=DA ld d2ar,swap 0:$10EE 0:000001:A1=A7:D3=D3 equ d2ar TRAP !z 0:$10EF z:data:reset=0:$0000 if !z // * TRAP 0:$10F0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$10F1 0:data:reset=0:$50F0 0:$10F2 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$10F3 d15:data:reset=0:$7FF8 1:$10F0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$10F1 d15:data:reset=0:$50F4 0:$10F4 0:000000:A1=A7:D8=D8 add alu // nodelay 0:$10F5 z:data:reset=0:$0000 until z 0:$10F6 0:000011:A1=A0:D0=D0 0:$10F7 d15:data:reset=0:$50DF // ====================================== // CMD.clk 1:$10F6 1:000011:A6=A1:D3=D0 ld atmp,$ // error pos 1:$10F7 1:data:reset=0:$D0F6 1:$10F8 0:000011:A1=A0:D3=D6 nop : 0 if 0 0:$10F9 0:000011:A1=A7:D0=D0 jp cc1 // dest plane: cond 0 hard coded 0:$10FA d15:data:reset=0:$50FD 0:$10FB 0:000011:A1=A0:D0=D0 jp error 0:$10FC d15:data:reset=0:$7FF8 0:$10FD 0:000011:A1=A7:D0=D0 cc1 jp cc2 // dest plane: cond 1 hard coded 0:$10FE d15:data:reset=0:$D101 0:$10FF 0:000011:A1=A1:D0=D0 jp error 0:$1100 d15:data:reset=0:$7FF8 else 1:$10F9 1:000011:A1=A0:D0=D0 jp error 1:$10FA d15:data:reset=0:$7FF8 1:$10FB 1:000011:A1=A7:D0=D0 jp error 1:$10FC d15:data:reset=0:$7FF8 1:$10FD 1:000011:A1=A7:D0=D0 jp error 1:$10FE d15:data:reset=0:$7FF8 1:$10FF 1:000011:A1=A7:D0=D0 jp error 1:$1100 d15:data:reset=0:$7FF8 then if 1 1:$1101 1:000011:A1=A7:D0=D0 cc2 jp cc3 // dest plane: cond 0 hard coded 1:$1102 d15:data:reset=0:$5105 1:$1103 1:000011:A1=A1:D0=D0 jp error 1:$1104 d15:data:reset=0:$7FF8 else 0:$1101 0:000011:A1=A7:D0=D0 jp error 0:$1102 d15:data:reset=0:$7FF8 0:$1103 0:000011:A1=A7:D0=D0 jp error 0:$1104 d15:data:reset=0:$7FF8 then if 0 0:$1105 0:000011:A1=A7:D4=D0 cc3 ld d0,cc4 0:$1106 0:data:reset=0:$510B 0:$1107 0:000011:A1=A1:D0=D4 jp d0 // dest plane: cond bit15 0:$1108 d15:data:reset=0:$0000 0:$1109 0:000011:A1=A0:D0=D0 jp error 0:$110A d15:data:reset=0:$7FF8 0:$110B 0:000011:A1=A7:D4=D0 cc4 ld d0,cc5 0:$110C 0:data:reset=0:$D111 0:$110D 0:000011:A1=A1:D0=D4 jp d0 // dest plane: cond bit15 0:$110E d15:data:reset=0:$0000 0:$110F 0:000011:A1=A0:D0=D0 jp error 0:$1110 d15:data:reset=0:$7FF8 else 1:$1105 1:000011:A1=A7:D0=D0 jp error 1:$1106 d15:data:reset=0:$7FF8 1:$1107 1:000011:A1=A7:D0=D0 jp error 1:$1108 d15:data:reset=0:$7FF8 1:$1109 1:000011:A1=A7:D0=D0 jp error 1:$110A d15:data:reset=0:$7FF8 1:$110B 1:000011:A1=A7:D0=D0 jp error 1:$110C d15:data:reset=0:$7FF8 1:$110D 1:000011:A1=A7:D0=D0 jp error 1:$110E d15:data:reset=0:$7FF8 1:$110F 1:000011:A1=A7:D0=D0 jp error 1:$1110 d15:data:reset=0:$7FF8 then if 1 1:$1111 1:000011:A1=A7:D4=D0 cc5 ld d0,cc6 1:$1112 1:data:reset=0:$D117 1:$1113 1:000011:A1=A1:D0=D4 jp d0 // dest plane: cond bit15 1:$1114 d15:data:reset=0:$0000 1:$1115 1:000011:A1=A0:D0=D0 jp error 1:$1116 d15:data:reset=0:$7FF8 1:$1117 1:000011:A1=A7:D4=D0 cc6 ld d0,cc7 1:$1118 1:data:reset=0:$511D 1:$1119 1:000011:A1=A1:D0=D4 jp d0 // dest plane: cond bit15 1:$111A d15:data:reset=0:$0000 1:$111B 1:000011:A1=A0:D0=D0 jp error 1:$111C d15:data:reset=0:$7FF8 else 0:$1111 0:000011:A1=A7:D0=D0 jp error 0:$1112 d15:data:reset=0:$7FF8 0:$1113 0:000011:A1=A7:D0=D0 jp error 0:$1114 d15:data:reset=0:$7FF8 0:$1115 0:000011:A1=A7:D0=D0 jp error 0:$1116 d15:data:reset=0:$7FF8 0:$1117 0:000011:A1=A7:D0=D0 jp error 0:$1118 d15:data:reset=0:$7FF8 0:$1119 0:000011:A1=A7:D0=D0 jp error 0:$111A d15:data:reset=0:$7FF8 0:$111B 0:000011:A1=A7:D0=D0 jp error 0:$111C d15:data:reset=0:$7FF8 then if 0 0:$111D 0:000011:A1=A7:D0=D0 cc7 jp cc99 0:$111E d15:data:reset=0:$D11F else 1:$111D 1:000011:A1=A7:D0=D0 jp error 1:$111E d15:data:reset=0:$7FF8 then 1:$111F 1:000011:A1=A7:D3=D8 cc99 nop // --- file: "cmd.asm" --- #include "flags.asm" // +++ file: "flags.asm" +++ /* ---- Z ------------------------------------------------ tst :z ival kommt aus dem uC-Ram => funktioniert nur in 99% aller Fälle (vor Allem Bit $0008 und auch Bit $1000) => vielleicht nach Ersetzen des HC151 durch AC151 */ // instr test_z1(VALUE) // ld d1,VALUE // tst d0 // TRAP !z // tst d1 // TRAP z // end 1:$1120 1:000011:A1=A7:D4=D0 ld d0,0 1:$1121 1:data:reset=0:$0000 test_z1 1 1:$1122 1:000011:A1=A0:D5=D0 ld d1,1 // * test_z1 1:$1123 1:data:reset=0:$0001 1:$1124 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1125 z:data:reset=0:$0000 if !z // * TRAP 0:$1126 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1127 0:data:reset=0:$5126 0:$1128 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$1129 d15:data:reset=0:$7FF8 1:$1126 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1127 d15:data:reset=0:$512A 0:$112A 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$112B z:data:reset=0:$0000 if z // * TRAP 1:$112C 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$112D 1:data:reset=0:$D12C 1:$112E 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$112F d15:data:reset=0:$7FF8 0:$112C 0:000011:A1=A0:D0=D0 then // * TRAP 0:$112D d15:data:reset=0:$D130 test_z1 2 1:$1130 1:000011:A1=A7:D5=D0 ld d1,2 // * test_z1 1:$1131 1:data:reset=0:$0002 1:$1132 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1133 z:data:reset=0:$0000 if !z // * TRAP 0:$1134 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1135 0:data:reset=0:$5134 0:$1136 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$1137 d15:data:reset=0:$7FF8 1:$1134 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1135 d15:data:reset=0:$5138 0:$1138 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1139 z:data:reset=0:$0000 if z // * TRAP 1:$113A 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$113B 1:data:reset=0:$D13A 1:$113C 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$113D d15:data:reset=0:$7FF8 0:$113A 0:000011:A1=A0:D0=D0 then // * TRAP 0:$113B d15:data:reset=0:$D13E test_z1 4 1:$113E 1:000011:A1=A7:D5=D0 ld d1,4 // * test_z1 1:$113F 1:data:reset=0:$0004 1:$1140 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1141 z:data:reset=0:$0000 if !z // * TRAP 0:$1142 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1143 0:data:reset=0:$5142 0:$1144 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$1145 d15:data:reset=0:$7FF8 1:$1142 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1143 d15:data:reset=0:$5146 0:$1146 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1147 z:data:reset=0:$0000 if z // * TRAP 1:$1148 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1149 1:data:reset=0:$D148 1:$114A 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$114B d15:data:reset=0:$7FF8 0:$1148 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1149 d15:data:reset=0:$D14C test_z1 8 1:$114C 1:000011:A1=A7:D5=D0 ld d1,8 // * test_z1 1:$114D 1:data:reset=0:$0008 1:$114E 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$114F z:data:reset=0:$0000 if !z // * TRAP 0:$1150 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1151 0:data:reset=0:$5150 0:$1152 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$1153 d15:data:reset=0:$7FF8 1:$1150 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1151 d15:data:reset=0:$5154 0:$1154 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1155 z:data:reset=0:$0000 if z // * TRAP 1:$1156 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1157 1:data:reset=0:$D156 1:$1158 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1159 d15:data:reset=0:$7FF8 0:$1156 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1157 d15:data:reset=0:$D15A test_z1 $10 1:$115A 1:000011:A1=A7:D5=D0 ld d1,$10 // * test_z1 1:$115B 1:data:reset=0:$0010 1:$115C 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$115D z:data:reset=0:$0000 if !z // * TRAP 0:$115E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$115F 0:data:reset=0:$515E 0:$1160 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$1161 d15:data:reset=0:$7FF8 1:$115E 1:000011:A1=A0:D0=D0 then // * TRAP 1:$115F d15:data:reset=0:$5162 0:$1162 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1163 z:data:reset=0:$0000 if z // * TRAP 1:$1164 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1165 1:data:reset=0:$D164 1:$1166 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1167 d15:data:reset=0:$7FF8 0:$1164 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1165 d15:data:reset=0:$D168 test_z1 $20 1:$1168 1:000011:A1=A7:D5=D0 ld d1,$20 // * test_z1 1:$1169 1:data:reset=0:$0020 1:$116A 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$116B z:data:reset=0:$0000 if !z // * TRAP 0:$116C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$116D 0:data:reset=0:$516C 0:$116E 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$116F d15:data:reset=0:$7FF8 1:$116C 1:000011:A1=A0:D0=D0 then // * TRAP 1:$116D d15:data:reset=0:$5170 0:$1170 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1171 z:data:reset=0:$0000 if z // * TRAP 1:$1172 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1173 1:data:reset=0:$D172 1:$1174 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1175 d15:data:reset=0:$7FF8 0:$1172 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1173 d15:data:reset=0:$D176 test_z1 $40 1:$1176 1:000011:A1=A7:D5=D0 ld d1,$40 // * test_z1 1:$1177 1:data:reset=0:$0040 1:$1178 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1179 z:data:reset=0:$0000 if !z // * TRAP 0:$117A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$117B 0:data:reset=0:$517A 0:$117C 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$117D d15:data:reset=0:$7FF8 1:$117A 1:000011:A1=A0:D0=D0 then // * TRAP 1:$117B d15:data:reset=0:$517E 0:$117E 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$117F z:data:reset=0:$0000 if z // * TRAP 1:$1180 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1181 1:data:reset=0:$D180 1:$1182 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1183 d15:data:reset=0:$7FF8 0:$1180 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1181 d15:data:reset=0:$D184 test_z1 $80 1:$1184 1:000011:A1=A7:D5=D0 ld d1,$80 // * test_z1 1:$1185 1:data:reset=0:$0080 1:$1186 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1187 z:data:reset=0:$0000 if !z // * TRAP 0:$1188 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1189 0:data:reset=0:$5188 0:$118A 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$118B d15:data:reset=0:$7FF8 1:$1188 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1189 d15:data:reset=0:$518C 0:$118C 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$118D z:data:reset=0:$0000 if z // * TRAP 1:$118E 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$118F 1:data:reset=0:$D18E 1:$1190 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1191 d15:data:reset=0:$7FF8 0:$118E 0:000011:A1=A0:D0=D0 then // * TRAP 0:$118F d15:data:reset=0:$D192 test_z1 $100 1:$1192 1:000011:A1=A7:D5=D0 ld d1,$100 // * test_z1 1:$1193 1:data:reset=0:$0100 1:$1194 1:000011:A1=A1:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1195 z:data:reset=0:$0000 if !z // * TRAP 0:$1196 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1197 0:data:reset=0:$5196 0:$1198 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$1199 d15:data:reset=0:$7FF8 1:$1196 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1197 d15:data:reset=0:$519A 0:$119A 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$119B z:data:reset=0:$0000 if z // * TRAP 1:$119C 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$119D 1:data:reset=0:$D19C 1:$119E 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$119F d15:data:reset=0:$7FF8 0:$119C 0:000011:A1=A0:D0=D0 then // * TRAP 0:$119D d15:data:reset=0:$D1A0 test_z1 $200 1:$11A0 1:000011:A1=A7:D5=D0 ld d1,$200 // * test_z1 1:$11A1 1:data:reset=0:$0200 1:$11A2 1:000011:A1=A2:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$11A3 z:data:reset=0:$0000 if !z // * TRAP 0:$11A4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$11A5 0:data:reset=0:$51A4 0:$11A6 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$11A7 d15:data:reset=0:$7FF8 1:$11A4 1:000011:A1=A0:D0=D0 then // * TRAP 1:$11A5 d15:data:reset=0:$51A8 0:$11A8 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$11A9 z:data:reset=0:$0000 if z // * TRAP 1:$11AA 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$11AB 1:data:reset=0:$D1AA 1:$11AC 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$11AD d15:data:reset=0:$7FF8 0:$11AA 0:000011:A1=A0:D0=D0 then // * TRAP 0:$11AB d15:data:reset=0:$D1AE test_z1 $400 1:$11AE 1:000011:A1=A7:D5=D0 ld d1,$400 // * test_z1 1:$11AF 1:data:reset=0:$0400 1:$11B0 1:000011:A1=A4:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$11B1 z:data:reset=0:$0000 if !z // * TRAP 0:$11B2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$11B3 0:data:reset=0:$51B2 0:$11B4 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$11B5 d15:data:reset=0:$7FF8 1:$11B2 1:000011:A1=A0:D0=D0 then // * TRAP 1:$11B3 d15:data:reset=0:$51B6 0:$11B6 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$11B7 z:data:reset=0:$0000 if z // * TRAP 1:$11B8 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$11B9 1:data:reset=0:$D1B8 1:$11BA 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$11BB d15:data:reset=0:$7FF8 0:$11B8 0:000011:A1=A0:D0=D0 then // * TRAP 0:$11B9 d15:data:reset=0:$D1BC test_z1 $800 1:$11BC 1:000011:A1=A7:D5=D0 ld d1,$800 // * test_z1 1:$11BD 1:data:reset=0:$0800 1:$11BE 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$11BF z:data:reset=0:$0000 if !z // * TRAP 0:$11C0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$11C1 0:data:reset=0:$51C0 0:$11C2 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$11C3 d15:data:reset=0:$7FF8 1:$11C0 1:000011:A1=A0:D0=D0 then // * TRAP 1:$11C1 d15:data:reset=0:$51C4 0:$11C4 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$11C5 z:data:reset=0:$0000 if z // * TRAP 1:$11C6 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$11C7 1:data:reset=0:$D1C6 1:$11C8 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$11C9 d15:data:reset=0:$7FF8 0:$11C6 0:000011:A1=A0:D0=D0 then // * TRAP 0:$11C7 d15:data:reset=0:$D1CA test_z1 $1000 1:$11CA 1:000011:A1=A7:D5=D0 ld d1,$1000 // * test_z1 1:$11CB 1:data:reset=0:$1000 1:$11CC 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$11CD z:data:reset=0:$0000 if !z // * TRAP 0:$11CE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$11CF 0:data:reset=0:$51CE 0:$11D0 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$11D1 d15:data:reset=0:$7FF8 1:$11CE 1:000011:A1=A0:D0=D0 then // * TRAP 1:$11CF d15:data:reset=0:$51D2 0:$11D2 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$11D3 z:data:reset=0:$0000 if z // * TRAP 1:$11D4 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$11D5 1:data:reset=0:$D1D4 1:$11D6 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$11D7 d15:data:reset=0:$7FF8 0:$11D4 0:000011:A1=A0:D0=D0 then // * TRAP 0:$11D5 d15:data:reset=0:$D1D8 test_z1 $2000 1:$11D8 1:000011:A1=A7:D5=D0 ld d1,$2000 // * test_z1 1:$11D9 1:data:reset=0:$2000 1:$11DA 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$11DB z:data:reset=0:$0000 if !z // * TRAP 0:$11DC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$11DD 0:data:reset=0:$51DC 0:$11DE 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$11DF d15:data:reset=0:$7FF8 1:$11DC 1:000011:A1=A0:D0=D0 then // * TRAP 1:$11DD d15:data:reset=0:$51E0 0:$11E0 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$11E1 z:data:reset=0:$0000 if z // * TRAP 1:$11E2 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$11E3 1:data:reset=0:$D1E2 1:$11E4 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$11E5 d15:data:reset=0:$7FF8 0:$11E2 0:000011:A1=A0:D0=D0 then // * TRAP 0:$11E3 d15:data:reset=0:$D1E6 test_z1 $4000 1:$11E6 1:000011:A1=A7:D5=D0 ld d1,$4000 // * test_z1 1:$11E7 1:data:reset=0:$4000 1:$11E8 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$11E9 z:data:reset=0:$0000 if !z // * TRAP 0:$11EA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$11EB 0:data:reset=0:$51EA 0:$11EC 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$11ED d15:data:reset=0:$7FF8 1:$11EA 1:000011:A1=A0:D0=D0 then // * TRAP 1:$11EB d15:data:reset=0:$51EE 0:$11EE 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$11EF z:data:reset=0:$0000 if z // * TRAP 1:$11F0 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$11F1 1:data:reset=0:$D1F0 1:$11F2 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$11F3 d15:data:reset=0:$7FF8 0:$11F0 0:000011:A1=A0:D0=D0 then // * TRAP 0:$11F1 d15:data:reset=0:$D1F4 test_z1 $8000 1:$11F4 1:000011:A1=A7:D5=D0 ld d1,$8000 // * test_z1 1:$11F5 1:data:reset=0:$8000 1:$11F6 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$11F7 z:data:reset=0:$0000 if !z // * TRAP 0:$11F8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$11F9 0:data:reset=0:$51F8 0:$11FA 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$11FB d15:data:reset=0:$7FF8 1:$11F8 1:000011:A1=A0:D0=D0 then // * TRAP 1:$11F9 d15:data:reset=0:$51FC 0:$11FC 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$11FD z:data:reset=0:$0000 if z // * TRAP 1:$11FE 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$11FF 1:data:reset=0:$D1FE 1:$1200 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1201 d15:data:reset=0:$7FF8 0:$11FE 0:000011:A1=A0:D0=D0 then // * TRAP 0:$11FF d15:data:reset=0:$D202 1:$1202 1:000011:A1=A7:D3=D8 nop // ---- bit0 ------------------------------------------------ 1:$1203 1:000011:A1=A7:D5=D0 ld d1,~0 1:$1204 1:data:reset=0:$FFFF 1:$1205 1:000011:A1=A7:D4=D0 ld d0,0 1:$1206 1:data:reset=0:$0000 1:$1207 1:000011:A1=A0:D3=D5 tst d1 1:$1208 1:000011:A1=A0:D3=D0 tst $0000 : bit0 1:$1209 d0:data:reset=0:$0000 TRAP 1 if 1 // * TRAP 1:$120A 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$120B 1:data:reset=0:$D20A 1:$120C 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$120D d15:data:reset=0:$7FF8 0:$120A 0:000011:A1=A7:D0=D0 then // * TRAP 0:$120B d15:data:reset=0:$D20E 1:$120E 1:000011:A1=A7:D3=D4 tst d0 1:$120F 1:000011:A1=A7:D3=D0 tst $0001 : bit0 1:$1210 d0:data:reset=0:$0001 TRAP 0 if 0 // * TRAP 0:$1211 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1212 0:data:reset=0:$5211 0:$1213 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1214 d15:data:reset=0:$7FF8 1:$1211 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1212 d15:data:reset=0:$5215 0:$1215 0:000011:A1=A7:D3=D5 tst d1 0:$1216 0:000011:A1=A7:D3=D0 tst $fffe : bit0 0:$1217 d0:data:reset=0:$FFFE TRAP 1 if 1 // * TRAP 1:$1218 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1219 1:data:reset=0:$D218 1:$121A 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$121B d15:data:reset=0:$7FF8 0:$1218 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1219 d15:data:reset=0:$D21C 1:$121C 1:000011:A1=A7:D3=D4 tst d0 1:$121D 1:000011:A1=A7:D3=D0 tst $ffff : bit0 1:$121E d0:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$121F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1220 0:data:reset=0:$521F 0:$1221 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1222 d15:data:reset=0:$7FF8 1:$121F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1220 d15:data:reset=0:$5223 // ---- bit15 ------------------------------------------------ 0:$1223 0:000011:A1=A7:D5=D0 ld d1,~0 0:$1224 0:data:reset=0:$FFFF 0:$1225 0:000011:A1=A7:D4=D0 ld d0,0 0:$1226 0:data:reset=0:$0000 0:$1227 0:000011:A1=A0:D3=D5 tst d1 0:$1228 0:000011:A1=A0:D3=D0 tst $0000 : bit15 0:$1229 d15:data:reset=0:$0000 TRAP 1 if 1 // * TRAP 1:$122A 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$122B 1:data:reset=0:$D22A 1:$122C 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$122D d15:data:reset=0:$7FF8 0:$122A 0:000011:A1=A0:D0=D0 then // * TRAP 0:$122B d15:data:reset=0:$D22E 1:$122E 1:000011:A1=A7:D3=D4 tst d0 1:$122F 1:000011:A1=A7:D3=D0 tst $8000 : bit15 1:$1230 d15:data:reset=0:$8000 TRAP 0 if 0 // * TRAP 0:$1231 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1232 0:data:reset=0:$5231 0:$1233 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1234 d15:data:reset=0:$7FF8 1:$1231 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1232 d15:data:reset=0:$5235 0:$1235 0:000011:A1=A7:D3=D5 tst d1 0:$1236 0:000011:A1=A7:D3=D0 tst $7fff : bit15 0:$1237 d15:data:reset=0:$7FFF TRAP 1 if 1 // * TRAP 1:$1238 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1239 1:data:reset=0:$D238 1:$123A 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$123B d15:data:reset=0:$7FF8 0:$1238 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1239 d15:data:reset=0:$D23C 1:$123C 1:000011:A1=A7:D3=D4 tst d0 1:$123D 1:000011:A1=A7:D3=D0 tst $ffff : bit15 1:$123E d15:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$123F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1240 0:data:reset=0:$523F 0:$1241 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1242 d15:data:reset=0:$7FF8 1:$123F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1240 d15:data:reset=0:$5243 // ---- cy ------------------------------------------------ // note: "add dreg" wird immer als doppel-opcode assembliert, wg. ripple-cy // "add ival" wird über dtmp realisiert, ist also auch ein "add dreg" // man kann deswegen nie "add $1234 : cy" schreiben, weil der cy-Test nicht auf dem ival // platziert werden kann, weil das add selbst eben ein "add dtmp" ist. 0:$1243 0:000011:A1=A7:D8=D0 ld alu,$7000 0:$1244 0:data:reset=0:$7000 0:$1245 0:000000:A1=A0:D7=D0 add $8000 // *dtmp* 0:$1246 0:data:reset=0:$8000 0:$1247 0:000000:A1=A0:D3=D7 0:$1248 0:000000:A1=A0:D8=D7 TRAP cy 0:$1249 cy:data:reset=0:$0000 if cy // * TRAP 1:$124A 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$124B 1:data:reset=0:$D24A 1:$124C 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$124D d15:data:reset=0:$7FF8 0:$124A 0:000011:A1=A0:D0=D0 then // * TRAP 0:$124B d15:data:reset=0:$D24E 1:$124E 1:000000:A1=A7:D7=D0 add $0FFF // *dtmp* 1:$124F 1:data:reset=0:$0FFF 1:$1250 1:000000:A1=A7:D3=D7 1:$1251 1:000000:A1=A7:D8=D7 TRAP cy 1:$1252 cy:data:reset=0:$0000 if cy // * TRAP 1:$1253 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1254 1:data:reset=0:$D253 1:$1255 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$1256 d15:data:reset=0:$7FF8 0:$1253 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1254 d15:data:reset=0:$D257 1:$1257 1:000000:A1=A7:D7=D0 add 1 // *dtmp* 1:$1258 1:data:reset=0:$0001 1:$1259 1:000000:A1=A0:D3=D7 1:$125A 1:000000:A1=A0:D8=D7 TRAP !cy 1:$125B cy:data:reset=0:$0000 if !cy // * TRAP 0:$125C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$125D 0:data:reset=0:$525C 0:$125E 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$125F d15:data:reset=0:$7FF8 1:$125C 1:000011:A1=A0:D0=D0 then // * TRAP 1:$125D d15:data:reset=0:$5260 0:$1260 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$1261 0:data:reset=0:$FFFF 0:$1262 0:000000:A1=A7:D7=D0 add 0 // *dtmp* 0:$1263 0:data:reset=0:$0000 0:$1264 0:000000:A1=A0:D3=D7 0:$1265 0:000000:A1=A0:D8=D7 TRAP cy 0:$1266 cy:data:reset=0:$0000 if cy // * TRAP 1:$1267 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1268 1:data:reset=0:$D267 1:$1269 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$126A d15:data:reset=0:$7FF8 0:$1267 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1268 d15:data:reset=0:$D26B 1:$126B 1:000000:A1=A7:D7=D0 add 1 // *dtmp* 1:$126C 1:data:reset=0:$0001 1:$126D 1:000000:A1=A0:D3=D7 1:$126E 1:000000:A1=A0:D8=D7 TRAP !cy 1:$126F cy:data:reset=0:$0000 if !cy // * TRAP 0:$1270 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1271 0:data:reset=0:$5270 0:$1272 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1273 d15:data:reset=0:$7FF8 1:$1270 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1271 d15:data:reset=0:$5274 0:$1274 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$1275 0:data:reset=0:$FFFF 0:$1276 0:000000:A1=A7:D8=D8 add alu // *dtmp* TRAP !cy 0:$1277 cy:data:reset=0:$0000 if !cy // * TRAP 0:$1278 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1279 0:data:reset=0:$5278 0:$127A 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$127B d15:data:reset=0:$7FF8 1:$1278 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1279 d15:data:reset=0:$527C 0:$127C 0:000100:A1=A7:D7=D0 add_c 0 // *dtmp* 0:$127D 0:data:reset=0:$0000 0:$127E 0:000100:A1=A0:D3=D7 0:$127F 0:000100:A1=A0:D8=D7 TRAP cy 0:$1280 cy:data:reset=0:$0000 if cy // * TRAP 1:$1281 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1282 1:data:reset=0:$D281 1:$1283 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$1284 d15:data:reset=0:$7FF8 0:$1281 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1282 d15:data:reset=0:$D285 1:$1285 1:000100:A1=A7:D7=D0 add_c 0 // *dtmp* 1:$1286 1:data:reset=0:$0000 1:$1287 1:000100:A1=A0:D3=D7 1:$1288 1:000100:A1=A0:D8=D7 TRAP !cy 1:$1289 cy:data:reset=0:$0000 if !cy // * TRAP 0:$128A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$128B 0:data:reset=0:$528A 0:$128C 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$128D d15:data:reset=0:$7FF8 1:$128A 1:000011:A1=A0:D0=D0 then // * TRAP 1:$128B d15:data:reset=0:$528E 0:$128E 0:000011:A1=A7:D8=D0 ld alu,$8000 0:$128F 0:data:reset=0:$8000 0:$1290 0:000000:A1=A0:D8=D8 add alu TRAP !cy 0:$1291 cy:data:reset=0:$0000 if !cy // * TRAP 0:$1292 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1293 0:data:reset=0:$5292 0:$1294 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1295 d15:data:reset=0:$7FF8 1:$1292 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1293 d15:data:reset=0:$5296 0:$1296 0:000100:A1=A7:D7=D0 add_c $ffff // *dtmp* 0:$1297 0:data:reset=0:$FFFF 0:$1298 0:000100:A1=A7:D3=D7 0:$1299 0:000100:A1=A7:D8=D7 TRAP !cy 0:$129A cy:data:reset=0:$0000 if !cy // * TRAP 0:$129B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$129C 0:data:reset=0:$529B 0:$129D 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$129E d15:data:reset=0:$7FF8 1:$129B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$129C d15:data:reset=0:$529F // ---- ovfl ------------------------------------------------ 0:$129F 0:000011:A1=A7:D8=D0 ld alu,$5000 0:$12A0 0:data:reset=0:$5000 0:$12A1 0:000000:A1=A0:D7=D0 add $1000 // $5000 -> $6000 !ovfl *dtmp* 0:$12A2 0:data:reset=0:$1000 0:$12A3 0:000000:A1=A0:D3=D7 0:$12A4 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$12A5 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$12A6 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$12A7 1:data:reset=0:$D2A6 1:$12A8 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$12A9 d15:data:reset=0:$7FF8 0:$12A6 0:000011:A1=A0:D0=D0 then // * TRAP 0:$12A7 d15:data:reset=0:$D2AA 1:$12AA 1:000000:A1=A7:D7=D0 add $3000 // $6000 -> $9000 ovfl *dtmp* 1:$12AB 1:data:reset=0:$3000 1:$12AC 1:000000:A1=A0:D3=D7 1:$12AD 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$12AE ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$12AF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$12B0 0:data:reset=0:$52AF 0:$12B1 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$12B2 d15:data:reset=0:$7FF8 1:$12AF 1:000011:A1=A0:D0=D0 then // * TRAP 1:$12B0 d15:data:reset=0:$52B3 0:$12B3 0:000000:A1=A7:D7=D0 add $3000 // $9000 -> $C000 !ovfl *dtmp* 0:$12B4 0:data:reset=0:$3000 0:$12B5 0:000000:A1=A0:D3=D7 0:$12B6 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$12B7 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$12B8 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$12B9 1:data:reset=0:$D2B8 1:$12BA 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$12BB d15:data:reset=0:$7FF8 0:$12B8 0:000011:A1=A0:D0=D0 then // * TRAP 0:$12B9 d15:data:reset=0:$D2BC 1:$12BC 1:000000:A1=A7:D7=D0 add $5000 // $C000 -> $1000 !ovfl *dtmp* 1:$12BD 1:data:reset=0:$5000 1:$12BE 1:000000:A1=A0:D3=D7 1:$12BF 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$12C0 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$12C1 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$12C2 1:data:reset=0:$D2C1 1:$12C3 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$12C4 d15:data:reset=0:$7FF8 0:$12C1 0:000011:A1=A7:D0=D0 then // * TRAP 0:$12C2 d15:data:reset=0:$D2C5 1:$12C5 1:000000:A1=A7:D7=D0 add $B000 // $1000 -> $C000 !ovfl *dtmp* 1:$12C6 1:data:reset=0:$B000 1:$12C7 1:000000:A1=A0:D3=D7 1:$12C8 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$12C9 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$12CA 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$12CB 1:data:reset=0:$D2CA 1:$12CC 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$12CD d15:data:reset=0:$7FF8 0:$12CA 0:000011:A1=A7:D0=D0 then // * TRAP 0:$12CB d15:data:reset=0:$D2CE 1:$12CE 1:000000:A1=A7:D7=D0 add $D000 // $C000 -> $9000 !ovfl *dtmp* 1:$12CF 1:data:reset=0:$D000 1:$12D0 1:000000:A1=A0:D3=D7 1:$12D1 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$12D2 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$12D3 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$12D4 1:data:reset=0:$D2D3 1:$12D5 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$12D6 d15:data:reset=0:$7FF8 0:$12D3 0:000011:A1=A7:D0=D0 then // * TRAP 0:$12D4 d15:data:reset=0:$D2D7 1:$12D7 1:000000:A1=A7:D7=D0 add $D000 // $9000 -> $6000 ovfl *dtmp* 1:$12D8 1:data:reset=0:$D000 1:$12D9 1:000000:A1=A0:D3=D7 1:$12DA 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$12DB ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$12DC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$12DD 0:data:reset=0:$52DC 0:$12DE 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$12DF d15:data:reset=0:$7FF8 1:$12DC 1:000011:A1=A0:D0=D0 then // * TRAP 1:$12DD d15:data:reset=0:$52E0 0:$12E0 0:000000:A1=A7:D7=D0 add $E000 // $6000 -> $4000 !ovfl *dtmp* 0:$12E1 0:data:reset=0:$E000 0:$12E2 0:000000:A1=A0:D3=D7 0:$12E3 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$12E4 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$12E5 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$12E6 1:data:reset=0:$D2E5 1:$12E7 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$12E8 d15:data:reset=0:$7FF8 0:$12E5 0:000011:A1=A0:D0=D0 then // * TRAP 0:$12E6 d15:data:reset=0:$D2E9 1:$12E9 1:000011:A1=A7:D8=D0 ld alu,$7000 1:$12EA 1:data:reset=0:$7000 1:$12EB 1:000000:A1=A0:D7=D0 add $1000 // $8000 ovfl *dtmp* 1:$12EC 1:data:reset=0:$1000 1:$12ED 1:000000:A1=A0:D3=D7 1:$12EE 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$12EF ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$12F0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$12F1 0:data:reset=0:$52F0 0:$12F2 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$12F3 d15:data:reset=0:$7FF8 1:$12F0 1:000011:A1=A0:D0=D0 then // * TRAP 1:$12F1 d15:data:reset=0:$52F4 0:$12F4 0:000000:A1=A7:D7=D0 add $7000 // $F000 !ovfl *dtmp* 0:$12F5 0:data:reset=0:$7000 0:$12F6 0:000000:A1=A0:D3=D7 0:$12F7 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$12F8 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$12F9 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$12FA 1:data:reset=0:$D2F9 1:$12FB 1:000011:A1=A2:D0=D0 jp error // * TRAP 1:$12FC d15:data:reset=0:$7FF8 0:$12F9 0:000011:A1=A0:D0=D0 then // * TRAP 0:$12FA d15:data:reset=0:$D2FD 1:$12FD 1:000000:A1=A7:D7=D0 add $7000 // $6000 !ovfl *dtmp* 1:$12FE 1:data:reset=0:$7000 1:$12FF 1:000000:A1=A0:D3=D7 1:$1300 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$1301 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1302 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1303 1:data:reset=0:$D302 1:$1304 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$1305 d15:data:reset=0:$7FF8 0:$1302 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1303 d15:data:reset=0:$D306 1:$1306 1:000100:A1=A7:D7=D0 add_c $1fff // $8000 ovfl *dtmp* 1:$1307 1:data:reset=0:$1FFF 1:$1308 1:000100:A1=A7:D3=D7 1:$1309 1:000100:A1=A7:D8=D7 TRAP !ovfl 1:$130A ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$130B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$130C 0:data:reset=0:$530B 0:$130D 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$130E d15:data:reset=0:$7FF8 1:$130B 1:000011:A1=A0:D0=D0 then // * TRAP 1:$130C d15:data:reset=0:$530F 0:$130F 0:000000:A1=A7:D7=D0 add -1 // $7FFF ovfl *dtmp* 0:$1310 0:data:reset=0:$FFFF 0:$1311 0:000000:A1=A7:D3=D7 0:$1312 0:000000:A1=A7:D8=D7 TRAP !ovfl 0:$1313 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$1314 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1315 0:data:reset=0:$5314 0:$1316 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1317 d15:data:reset=0:$7FF8 1:$1314 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1315 d15:data:reset=0:$5318 0:$1318 0:000100:A1=A7:D7=D0 add_c $8000 // $0000 !ovfl *dtmp* 0:$1319 0:data:reset=0:$8000 0:$131A 0:000100:A1=A0:D3=D7 0:$131B 0:000100:A1=A0:D8=D7 TRAP ovfl 0:$131C ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$131D 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$131E 1:data:reset=0:$D31D 1:$131F 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$1320 d15:data:reset=0:$7FF8 0:$131D 0:000011:A1=A0:D0=D0 then // * TRAP 0:$131E d15:data:reset=0:$D321 1:$1321 1:000011:A1=A7:D8=D0 ld alu,$7fff 1:$1322 1:data:reset=0:$7FFF 1:$1323 1:000000:A1=A7:D7=D0 add $8000 // *dtmp* 1:$1324 1:data:reset=0:$8000 1:$1325 1:000000:A1=A0:D3=D7 1:$1326 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$1327 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1328 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1329 1:data:reset=0:$D328 1:$132A 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$132B d15:data:reset=0:$7FF8 0:$1328 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1329 d15:data:reset=0:$D32C 1:$132C 1:000011:A1=A7:D8=D0 ld alu,$7fff 1:$132D 1:data:reset=0:$7FFF 1:$132E 1:000100:A1=A7:D7=D0 add_c $8000 // *dtmp* 1:$132F 1:data:reset=0:$8000 1:$1330 1:000100:A1=A0:D3=D7 1:$1331 1:000100:A1=A0:D8=D7 TRAP ovfl 1:$1332 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1333 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1334 1:data:reset=0:$D333 1:$1335 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$1336 d15:data:reset=0:$7FF8 0:$1333 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1334 d15:data:reset=0:$D337 // --- file: "flags.asm" --- 1:$1337 1:000011:A1=A7:D3=D8 nop #include "flags.asm" // +++ file: "flags.asm" +++ /* ---- Z ------------------------------------------------ tst :z ival kommt aus dem uC-Ram => funktioniert nur in 99% aller Fälle (vor Allem Bit $0008 und auch Bit $1000) => vielleicht nach Ersetzen des HC151 durch AC151 */ // instr test_z1(VALUE) // ld d1,VALUE // tst d0 // TRAP !z // tst d1 // TRAP z // end 1:$1338 1:000011:A1=A7:D4=D0 ld d0,0 1:$1339 1:data:reset=0:$0000 test_z1 1 1:$133A 1:000011:A1=A0:D5=D0 ld d1,1 // * test_z1 1:$133B 1:data:reset=0:$0001 1:$133C 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$133D z:data:reset=0:$0000 if !z // * TRAP 0:$133E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$133F 0:data:reset=0:$533E 0:$1340 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1341 d15:data:reset=0:$7FF8 1:$133E 1:000011:A1=A0:D0=D0 then // * TRAP 1:$133F d15:data:reset=0:$5342 0:$1342 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1343 z:data:reset=0:$0000 if z // * TRAP 1:$1344 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1345 1:data:reset=0:$D344 1:$1346 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$1347 d15:data:reset=0:$7FF8 0:$1344 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1345 d15:data:reset=0:$D348 test_z1 2 1:$1348 1:000011:A1=A7:D5=D0 ld d1,2 // * test_z1 1:$1349 1:data:reset=0:$0002 1:$134A 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$134B z:data:reset=0:$0000 if !z // * TRAP 0:$134C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$134D 0:data:reset=0:$534C 0:$134E 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$134F d15:data:reset=0:$7FF8 1:$134C 1:000011:A1=A0:D0=D0 then // * TRAP 1:$134D d15:data:reset=0:$5350 0:$1350 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1351 z:data:reset=0:$0000 if z // * TRAP 1:$1352 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1353 1:data:reset=0:$D352 1:$1354 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$1355 d15:data:reset=0:$7FF8 0:$1352 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1353 d15:data:reset=0:$D356 test_z1 4 1:$1356 1:000011:A1=A7:D5=D0 ld d1,4 // * test_z1 1:$1357 1:data:reset=0:$0004 1:$1358 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1359 z:data:reset=0:$0000 if !z // * TRAP 0:$135A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$135B 0:data:reset=0:$535A 0:$135C 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$135D d15:data:reset=0:$7FF8 1:$135A 1:000011:A1=A0:D0=D0 then // * TRAP 1:$135B d15:data:reset=0:$535E 0:$135E 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$135F z:data:reset=0:$0000 if z // * TRAP 1:$1360 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1361 1:data:reset=0:$D360 1:$1362 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$1363 d15:data:reset=0:$7FF8 0:$1360 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1361 d15:data:reset=0:$D364 test_z1 8 1:$1364 1:000011:A1=A7:D5=D0 ld d1,8 // * test_z1 1:$1365 1:data:reset=0:$0008 1:$1366 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1367 z:data:reset=0:$0000 if !z // * TRAP 0:$1368 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1369 0:data:reset=0:$5368 0:$136A 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$136B d15:data:reset=0:$7FF8 1:$1368 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1369 d15:data:reset=0:$536C 0:$136C 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$136D z:data:reset=0:$0000 if z // * TRAP 1:$136E 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$136F 1:data:reset=0:$D36E 1:$1370 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$1371 d15:data:reset=0:$7FF8 0:$136E 0:000011:A1=A0:D0=D0 then // * TRAP 0:$136F d15:data:reset=0:$D372 test_z1 $10 1:$1372 1:000011:A1=A7:D5=D0 ld d1,$10 // * test_z1 1:$1373 1:data:reset=0:$0010 1:$1374 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1375 z:data:reset=0:$0000 if !z // * TRAP 0:$1376 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1377 0:data:reset=0:$5376 0:$1378 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1379 d15:data:reset=0:$7FF8 1:$1376 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1377 d15:data:reset=0:$537A 0:$137A 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$137B z:data:reset=0:$0000 if z // * TRAP 1:$137C 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$137D 1:data:reset=0:$D37C 1:$137E 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$137F d15:data:reset=0:$7FF8 0:$137C 0:000011:A1=A0:D0=D0 then // * TRAP 0:$137D d15:data:reset=0:$D380 test_z1 $20 1:$1380 1:000011:A1=A7:D5=D0 ld d1,$20 // * test_z1 1:$1381 1:data:reset=0:$0020 1:$1382 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1383 z:data:reset=0:$0000 if !z // * TRAP 0:$1384 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1385 0:data:reset=0:$5384 0:$1386 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1387 d15:data:reset=0:$7FF8 1:$1384 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1385 d15:data:reset=0:$5388 0:$1388 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1389 z:data:reset=0:$0000 if z // * TRAP 1:$138A 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$138B 1:data:reset=0:$D38A 1:$138C 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$138D d15:data:reset=0:$7FF8 0:$138A 0:000011:A1=A0:D0=D0 then // * TRAP 0:$138B d15:data:reset=0:$D38E test_z1 $40 1:$138E 1:000011:A1=A7:D5=D0 ld d1,$40 // * test_z1 1:$138F 1:data:reset=0:$0040 1:$1390 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1391 z:data:reset=0:$0000 if !z // * TRAP 0:$1392 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1393 0:data:reset=0:$5392 0:$1394 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1395 d15:data:reset=0:$7FF8 1:$1392 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1393 d15:data:reset=0:$5396 0:$1396 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1397 z:data:reset=0:$0000 if z // * TRAP 1:$1398 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1399 1:data:reset=0:$D398 1:$139A 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$139B d15:data:reset=0:$7FF8 0:$1398 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1399 d15:data:reset=0:$D39C test_z1 $80 1:$139C 1:000011:A1=A7:D5=D0 ld d1,$80 // * test_z1 1:$139D 1:data:reset=0:$0080 1:$139E 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$139F z:data:reset=0:$0000 if !z // * TRAP 0:$13A0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$13A1 0:data:reset=0:$53A0 0:$13A2 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$13A3 d15:data:reset=0:$7FF8 1:$13A0 1:000011:A1=A0:D0=D0 then // * TRAP 1:$13A1 d15:data:reset=0:$53A4 0:$13A4 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$13A5 z:data:reset=0:$0000 if z // * TRAP 1:$13A6 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$13A7 1:data:reset=0:$D3A6 1:$13A8 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$13A9 d15:data:reset=0:$7FF8 0:$13A6 0:000011:A1=A0:D0=D0 then // * TRAP 0:$13A7 d15:data:reset=0:$D3AA test_z1 $100 1:$13AA 1:000011:A1=A7:D5=D0 ld d1,$100 // * test_z1 1:$13AB 1:data:reset=0:$0100 1:$13AC 1:000011:A1=A1:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$13AD z:data:reset=0:$0000 if !z // * TRAP 0:$13AE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$13AF 0:data:reset=0:$53AE 0:$13B0 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$13B1 d15:data:reset=0:$7FF8 1:$13AE 1:000011:A1=A0:D0=D0 then // * TRAP 1:$13AF d15:data:reset=0:$53B2 0:$13B2 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$13B3 z:data:reset=0:$0000 if z // * TRAP 1:$13B4 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$13B5 1:data:reset=0:$D3B4 1:$13B6 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$13B7 d15:data:reset=0:$7FF8 0:$13B4 0:000011:A1=A0:D0=D0 then // * TRAP 0:$13B5 d15:data:reset=0:$D3B8 test_z1 $200 1:$13B8 1:000011:A1=A7:D5=D0 ld d1,$200 // * test_z1 1:$13B9 1:data:reset=0:$0200 1:$13BA 1:000011:A1=A2:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$13BB z:data:reset=0:$0000 if !z // * TRAP 0:$13BC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$13BD 0:data:reset=0:$53BC 0:$13BE 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$13BF d15:data:reset=0:$7FF8 1:$13BC 1:000011:A1=A0:D0=D0 then // * TRAP 1:$13BD d15:data:reset=0:$53C0 0:$13C0 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$13C1 z:data:reset=0:$0000 if z // * TRAP 1:$13C2 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$13C3 1:data:reset=0:$D3C2 1:$13C4 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$13C5 d15:data:reset=0:$7FF8 0:$13C2 0:000011:A1=A0:D0=D0 then // * TRAP 0:$13C3 d15:data:reset=0:$D3C6 test_z1 $400 1:$13C6 1:000011:A1=A7:D5=D0 ld d1,$400 // * test_z1 1:$13C7 1:data:reset=0:$0400 1:$13C8 1:000011:A1=A4:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$13C9 z:data:reset=0:$0000 if !z // * TRAP 0:$13CA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$13CB 0:data:reset=0:$53CA 0:$13CC 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$13CD d15:data:reset=0:$7FF8 1:$13CA 1:000011:A1=A0:D0=D0 then // * TRAP 1:$13CB d15:data:reset=0:$53CE 0:$13CE 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$13CF z:data:reset=0:$0000 if z // * TRAP 1:$13D0 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$13D1 1:data:reset=0:$D3D0 1:$13D2 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$13D3 d15:data:reset=0:$7FF8 0:$13D0 0:000011:A1=A0:D0=D0 then // * TRAP 0:$13D1 d15:data:reset=0:$D3D4 test_z1 $800 1:$13D4 1:000011:A1=A7:D5=D0 ld d1,$800 // * test_z1 1:$13D5 1:data:reset=0:$0800 1:$13D6 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$13D7 z:data:reset=0:$0000 if !z // * TRAP 0:$13D8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$13D9 0:data:reset=0:$53D8 0:$13DA 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$13DB d15:data:reset=0:$7FF8 1:$13D8 1:000011:A1=A0:D0=D0 then // * TRAP 1:$13D9 d15:data:reset=0:$53DC 0:$13DC 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$13DD z:data:reset=0:$0000 if z // * TRAP 1:$13DE 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$13DF 1:data:reset=0:$D3DE 1:$13E0 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$13E1 d15:data:reset=0:$7FF8 0:$13DE 0:000011:A1=A0:D0=D0 then // * TRAP 0:$13DF d15:data:reset=0:$D3E2 test_z1 $1000 1:$13E2 1:000011:A1=A7:D5=D0 ld d1,$1000 // * test_z1 1:$13E3 1:data:reset=0:$1000 1:$13E4 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$13E5 z:data:reset=0:$0000 if !z // * TRAP 0:$13E6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$13E7 0:data:reset=0:$53E6 0:$13E8 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$13E9 d15:data:reset=0:$7FF8 1:$13E6 1:000011:A1=A0:D0=D0 then // * TRAP 1:$13E7 d15:data:reset=0:$53EA 0:$13EA 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$13EB z:data:reset=0:$0000 if z // * TRAP 1:$13EC 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$13ED 1:data:reset=0:$D3EC 1:$13EE 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$13EF d15:data:reset=0:$7FF8 0:$13EC 0:000011:A1=A0:D0=D0 then // * TRAP 0:$13ED d15:data:reset=0:$D3F0 test_z1 $2000 1:$13F0 1:000011:A1=A7:D5=D0 ld d1,$2000 // * test_z1 1:$13F1 1:data:reset=0:$2000 1:$13F2 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$13F3 z:data:reset=0:$0000 if !z // * TRAP 0:$13F4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$13F5 0:data:reset=0:$53F4 0:$13F6 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$13F7 d15:data:reset=0:$7FF8 1:$13F4 1:000011:A1=A0:D0=D0 then // * TRAP 1:$13F5 d15:data:reset=0:$53F8 0:$13F8 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$13F9 z:data:reset=0:$0000 if z // * TRAP 1:$13FA 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$13FB 1:data:reset=0:$D3FA 1:$13FC 1:000011:A1=A3:D0=D0 jp error // * TRAP 1:$13FD d15:data:reset=0:$7FF8 0:$13FA 0:000011:A1=A0:D0=D0 then // * TRAP 0:$13FB d15:data:reset=0:$D3FE test_z1 $4000 1:$13FE 1:000011:A1=A7:D5=D0 ld d1,$4000 // * test_z1 1:$13FF 1:data:reset=0:$4000 1:$1400 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1401 z:data:reset=0:$0000 if !z // * TRAP 0:$1402 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1403 0:data:reset=0:$5402 0:$1404 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1405 d15:data:reset=0:$7FF8 1:$1402 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1403 d15:data:reset=0:$5406 0:$1406 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1407 z:data:reset=0:$0000 if z // * TRAP 1:$1408 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1409 1:data:reset=0:$D408 1:$140A 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$140B d15:data:reset=0:$7FF8 0:$1408 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1409 d15:data:reset=0:$D40C test_z1 $8000 1:$140C 1:000011:A1=A7:D5=D0 ld d1,$8000 // * test_z1 1:$140D 1:data:reset=0:$8000 1:$140E 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$140F z:data:reset=0:$0000 if !z // * TRAP 0:$1410 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1411 0:data:reset=0:$5410 0:$1412 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1413 d15:data:reset=0:$7FF8 1:$1410 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1411 d15:data:reset=0:$5414 0:$1414 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1415 z:data:reset=0:$0000 if z // * TRAP 1:$1416 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1417 1:data:reset=0:$D416 1:$1418 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$1419 d15:data:reset=0:$7FF8 0:$1416 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1417 d15:data:reset=0:$D41A 1:$141A 1:000011:A1=A7:D3=D8 nop // ---- bit0 ------------------------------------------------ 1:$141B 1:000011:A1=A7:D5=D0 ld d1,~0 1:$141C 1:data:reset=0:$FFFF 1:$141D 1:000011:A1=A7:D4=D0 ld d0,0 1:$141E 1:data:reset=0:$0000 1:$141F 1:000011:A1=A0:D3=D5 tst d1 1:$1420 1:000011:A1=A0:D3=D0 tst $0000 : bit0 1:$1421 d0:data:reset=0:$0000 TRAP 1 if 1 // * TRAP 1:$1422 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1423 1:data:reset=0:$D422 1:$1424 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$1425 d15:data:reset=0:$7FF8 0:$1422 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1423 d15:data:reset=0:$D426 1:$1426 1:000011:A1=A7:D3=D4 tst d0 1:$1427 1:000011:A1=A7:D3=D0 tst $0001 : bit0 1:$1428 d0:data:reset=0:$0001 TRAP 0 if 0 // * TRAP 0:$1429 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$142A 0:data:reset=0:$5429 0:$142B 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$142C d15:data:reset=0:$7FF8 1:$1429 1:000011:A1=A0:D0=D0 then // * TRAP 1:$142A d15:data:reset=0:$542D 0:$142D 0:000011:A1=A7:D3=D5 tst d1 0:$142E 0:000011:A1=A7:D3=D0 tst $fffe : bit0 0:$142F d0:data:reset=0:$FFFE TRAP 1 if 1 // * TRAP 1:$1430 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1431 1:data:reset=0:$D430 1:$1432 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$1433 d15:data:reset=0:$7FF8 0:$1430 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1431 d15:data:reset=0:$D434 1:$1434 1:000011:A1=A7:D3=D4 tst d0 1:$1435 1:000011:A1=A7:D3=D0 tst $ffff : bit0 1:$1436 d0:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$1437 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1438 0:data:reset=0:$5437 0:$1439 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$143A d15:data:reset=0:$7FF8 1:$1437 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1438 d15:data:reset=0:$543B // ---- bit15 ------------------------------------------------ 0:$143B 0:000011:A1=A7:D5=D0 ld d1,~0 0:$143C 0:data:reset=0:$FFFF 0:$143D 0:000011:A1=A7:D4=D0 ld d0,0 0:$143E 0:data:reset=0:$0000 0:$143F 0:000011:A1=A0:D3=D5 tst d1 0:$1440 0:000011:A1=A0:D3=D0 tst $0000 : bit15 0:$1441 d15:data:reset=0:$0000 TRAP 1 if 1 // * TRAP 1:$1442 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1443 1:data:reset=0:$D442 1:$1444 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$1445 d15:data:reset=0:$7FF8 0:$1442 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1443 d15:data:reset=0:$D446 1:$1446 1:000011:A1=A7:D3=D4 tst d0 1:$1447 1:000011:A1=A7:D3=D0 tst $8000 : bit15 1:$1448 d15:data:reset=0:$8000 TRAP 0 if 0 // * TRAP 0:$1449 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$144A 0:data:reset=0:$5449 0:$144B 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$144C d15:data:reset=0:$7FF8 1:$1449 1:000011:A1=A0:D0=D0 then // * TRAP 1:$144A d15:data:reset=0:$544D 0:$144D 0:000011:A1=A7:D3=D5 tst d1 0:$144E 0:000011:A1=A7:D3=D0 tst $7fff : bit15 0:$144F d15:data:reset=0:$7FFF TRAP 1 if 1 // * TRAP 1:$1450 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1451 1:data:reset=0:$D450 1:$1452 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$1453 d15:data:reset=0:$7FF8 0:$1450 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1451 d15:data:reset=0:$D454 1:$1454 1:000011:A1=A7:D3=D4 tst d0 1:$1455 1:000011:A1=A7:D3=D0 tst $ffff : bit15 1:$1456 d15:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$1457 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1458 0:data:reset=0:$5457 0:$1459 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$145A d15:data:reset=0:$7FF8 1:$1457 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1458 d15:data:reset=0:$545B // ---- cy ------------------------------------------------ // note: "add dreg" wird immer als doppel-opcode assembliert, wg. ripple-cy // "add ival" wird über dtmp realisiert, ist also auch ein "add dreg" // man kann deswegen nie "add $1234 : cy" schreiben, weil der cy-Test nicht auf dem ival // platziert werden kann, weil das add selbst eben ein "add dtmp" ist. 0:$145B 0:000011:A1=A7:D8=D0 ld alu,$7000 0:$145C 0:data:reset=0:$7000 0:$145D 0:000000:A1=A0:D7=D0 add $8000 // *dtmp* 0:$145E 0:data:reset=0:$8000 0:$145F 0:000000:A1=A0:D3=D7 0:$1460 0:000000:A1=A0:D8=D7 TRAP cy 0:$1461 cy:data:reset=0:$0000 if cy // * TRAP 1:$1462 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1463 1:data:reset=0:$D462 1:$1464 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$1465 d15:data:reset=0:$7FF8 0:$1462 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1463 d15:data:reset=0:$D466 1:$1466 1:000000:A1=A7:D7=D0 add $0FFF // *dtmp* 1:$1467 1:data:reset=0:$0FFF 1:$1468 1:000000:A1=A7:D3=D7 1:$1469 1:000000:A1=A7:D8=D7 TRAP cy 1:$146A cy:data:reset=0:$0000 if cy // * TRAP 1:$146B 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$146C 1:data:reset=0:$D46B 1:$146D 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$146E d15:data:reset=0:$7FF8 0:$146B 0:000011:A1=A7:D0=D0 then // * TRAP 0:$146C d15:data:reset=0:$D46F 1:$146F 1:000000:A1=A7:D7=D0 add 1 // *dtmp* 1:$1470 1:data:reset=0:$0001 1:$1471 1:000000:A1=A0:D3=D7 1:$1472 1:000000:A1=A0:D8=D7 TRAP !cy 1:$1473 cy:data:reset=0:$0000 if !cy // * TRAP 0:$1474 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1475 0:data:reset=0:$5474 0:$1476 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1477 d15:data:reset=0:$7FF8 1:$1474 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1475 d15:data:reset=0:$5478 0:$1478 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$1479 0:data:reset=0:$FFFF 0:$147A 0:000000:A1=A7:D7=D0 add 0 // *dtmp* 0:$147B 0:data:reset=0:$0000 0:$147C 0:000000:A1=A0:D3=D7 0:$147D 0:000000:A1=A0:D8=D7 TRAP cy 0:$147E cy:data:reset=0:$0000 if cy // * TRAP 1:$147F 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1480 1:data:reset=0:$D47F 1:$1481 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$1482 d15:data:reset=0:$7FF8 0:$147F 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1480 d15:data:reset=0:$D483 1:$1483 1:000000:A1=A7:D7=D0 add 1 // *dtmp* 1:$1484 1:data:reset=0:$0001 1:$1485 1:000000:A1=A0:D3=D7 1:$1486 1:000000:A1=A0:D8=D7 TRAP !cy 1:$1487 cy:data:reset=0:$0000 if !cy // * TRAP 0:$1488 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1489 0:data:reset=0:$5488 0:$148A 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$148B d15:data:reset=0:$7FF8 1:$1488 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1489 d15:data:reset=0:$548C 0:$148C 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$148D 0:data:reset=0:$FFFF 0:$148E 0:000000:A1=A7:D8=D8 add alu // *dtmp* TRAP !cy 0:$148F cy:data:reset=0:$0000 if !cy // * TRAP 0:$1490 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1491 0:data:reset=0:$5490 0:$1492 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1493 d15:data:reset=0:$7FF8 1:$1490 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1491 d15:data:reset=0:$5494 0:$1494 0:000100:A1=A7:D7=D0 add_c 0 // *dtmp* 0:$1495 0:data:reset=0:$0000 0:$1496 0:000100:A1=A0:D3=D7 0:$1497 0:000100:A1=A0:D8=D7 TRAP cy 0:$1498 cy:data:reset=0:$0000 if cy // * TRAP 1:$1499 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$149A 1:data:reset=0:$D499 1:$149B 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$149C d15:data:reset=0:$7FF8 0:$1499 0:000011:A1=A0:D0=D0 then // * TRAP 0:$149A d15:data:reset=0:$D49D 1:$149D 1:000100:A1=A7:D7=D0 add_c 0 // *dtmp* 1:$149E 1:data:reset=0:$0000 1:$149F 1:000100:A1=A0:D3=D7 1:$14A0 1:000100:A1=A0:D8=D7 TRAP !cy 1:$14A1 cy:data:reset=0:$0000 if !cy // * TRAP 0:$14A2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$14A3 0:data:reset=0:$54A2 0:$14A4 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$14A5 d15:data:reset=0:$7FF8 1:$14A2 1:000011:A1=A0:D0=D0 then // * TRAP 1:$14A3 d15:data:reset=0:$54A6 0:$14A6 0:000011:A1=A7:D8=D0 ld alu,$8000 0:$14A7 0:data:reset=0:$8000 0:$14A8 0:000000:A1=A0:D8=D8 add alu TRAP !cy 0:$14A9 cy:data:reset=0:$0000 if !cy // * TRAP 0:$14AA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$14AB 0:data:reset=0:$54AA 0:$14AC 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$14AD d15:data:reset=0:$7FF8 1:$14AA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$14AB d15:data:reset=0:$54AE 0:$14AE 0:000100:A1=A7:D7=D0 add_c $ffff // *dtmp* 0:$14AF 0:data:reset=0:$FFFF 0:$14B0 0:000100:A1=A7:D3=D7 0:$14B1 0:000100:A1=A7:D8=D7 TRAP !cy 0:$14B2 cy:data:reset=0:$0000 if !cy // * TRAP 0:$14B3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$14B4 0:data:reset=0:$54B3 0:$14B5 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$14B6 d15:data:reset=0:$7FF8 1:$14B3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$14B4 d15:data:reset=0:$54B7 // ---- ovfl ------------------------------------------------ 0:$14B7 0:000011:A1=A7:D8=D0 ld alu,$5000 0:$14B8 0:data:reset=0:$5000 0:$14B9 0:000000:A1=A0:D7=D0 add $1000 // $5000 -> $6000 !ovfl *dtmp* 0:$14BA 0:data:reset=0:$1000 0:$14BB 0:000000:A1=A0:D3=D7 0:$14BC 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$14BD ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$14BE 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$14BF 1:data:reset=0:$D4BE 1:$14C0 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$14C1 d15:data:reset=0:$7FF8 0:$14BE 0:000011:A1=A0:D0=D0 then // * TRAP 0:$14BF d15:data:reset=0:$D4C2 1:$14C2 1:000000:A1=A7:D7=D0 add $3000 // $6000 -> $9000 ovfl *dtmp* 1:$14C3 1:data:reset=0:$3000 1:$14C4 1:000000:A1=A0:D3=D7 1:$14C5 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$14C6 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$14C7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$14C8 0:data:reset=0:$54C7 0:$14C9 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$14CA d15:data:reset=0:$7FF8 1:$14C7 1:000011:A1=A0:D0=D0 then // * TRAP 1:$14C8 d15:data:reset=0:$54CB 0:$14CB 0:000000:A1=A7:D7=D0 add $3000 // $9000 -> $C000 !ovfl *dtmp* 0:$14CC 0:data:reset=0:$3000 0:$14CD 0:000000:A1=A0:D3=D7 0:$14CE 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$14CF ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$14D0 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$14D1 1:data:reset=0:$D4D0 1:$14D2 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$14D3 d15:data:reset=0:$7FF8 0:$14D0 0:000011:A1=A0:D0=D0 then // * TRAP 0:$14D1 d15:data:reset=0:$D4D4 1:$14D4 1:000000:A1=A7:D7=D0 add $5000 // $C000 -> $1000 !ovfl *dtmp* 1:$14D5 1:data:reset=0:$5000 1:$14D6 1:000000:A1=A0:D3=D7 1:$14D7 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$14D8 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$14D9 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$14DA 1:data:reset=0:$D4D9 1:$14DB 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$14DC d15:data:reset=0:$7FF8 0:$14D9 0:000011:A1=A7:D0=D0 then // * TRAP 0:$14DA d15:data:reset=0:$D4DD 1:$14DD 1:000000:A1=A7:D7=D0 add $B000 // $1000 -> $C000 !ovfl *dtmp* 1:$14DE 1:data:reset=0:$B000 1:$14DF 1:000000:A1=A0:D3=D7 1:$14E0 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$14E1 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$14E2 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$14E3 1:data:reset=0:$D4E2 1:$14E4 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$14E5 d15:data:reset=0:$7FF8 0:$14E2 0:000011:A1=A7:D0=D0 then // * TRAP 0:$14E3 d15:data:reset=0:$D4E6 1:$14E6 1:000000:A1=A7:D7=D0 add $D000 // $C000 -> $9000 !ovfl *dtmp* 1:$14E7 1:data:reset=0:$D000 1:$14E8 1:000000:A1=A0:D3=D7 1:$14E9 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$14EA ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$14EB 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$14EC 1:data:reset=0:$D4EB 1:$14ED 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$14EE d15:data:reset=0:$7FF8 0:$14EB 0:000011:A1=A7:D0=D0 then // * TRAP 0:$14EC d15:data:reset=0:$D4EF 1:$14EF 1:000000:A1=A7:D7=D0 add $D000 // $9000 -> $6000 ovfl *dtmp* 1:$14F0 1:data:reset=0:$D000 1:$14F1 1:000000:A1=A0:D3=D7 1:$14F2 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$14F3 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$14F4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$14F5 0:data:reset=0:$54F4 0:$14F6 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$14F7 d15:data:reset=0:$7FF8 1:$14F4 1:000011:A1=A0:D0=D0 then // * TRAP 1:$14F5 d15:data:reset=0:$54F8 0:$14F8 0:000000:A1=A7:D7=D0 add $E000 // $6000 -> $4000 !ovfl *dtmp* 0:$14F9 0:data:reset=0:$E000 0:$14FA 0:000000:A1=A0:D3=D7 0:$14FB 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$14FC ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$14FD 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$14FE 1:data:reset=0:$D4FD 1:$14FF 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$1500 d15:data:reset=0:$7FF8 0:$14FD 0:000011:A1=A0:D0=D0 then // * TRAP 0:$14FE d15:data:reset=0:$D501 1:$1501 1:000011:A1=A7:D8=D0 ld alu,$7000 1:$1502 1:data:reset=0:$7000 1:$1503 1:000000:A1=A0:D7=D0 add $1000 // $8000 ovfl *dtmp* 1:$1504 1:data:reset=0:$1000 1:$1505 1:000000:A1=A0:D3=D7 1:$1506 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$1507 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$1508 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1509 0:data:reset=0:$5508 0:$150A 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$150B d15:data:reset=0:$7FF8 1:$1508 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1509 d15:data:reset=0:$550C 0:$150C 0:000000:A1=A7:D7=D0 add $7000 // $F000 !ovfl *dtmp* 0:$150D 0:data:reset=0:$7000 0:$150E 0:000000:A1=A0:D3=D7 0:$150F 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$1510 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1511 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1512 1:data:reset=0:$D511 1:$1513 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$1514 d15:data:reset=0:$7FF8 0:$1511 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1512 d15:data:reset=0:$D515 1:$1515 1:000000:A1=A7:D7=D0 add $7000 // $6000 !ovfl *dtmp* 1:$1516 1:data:reset=0:$7000 1:$1517 1:000000:A1=A0:D3=D7 1:$1518 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$1519 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$151A 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$151B 1:data:reset=0:$D51A 1:$151C 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$151D d15:data:reset=0:$7FF8 0:$151A 0:000011:A1=A7:D0=D0 then // * TRAP 0:$151B d15:data:reset=0:$D51E 1:$151E 1:000100:A1=A7:D7=D0 add_c $1fff // $8000 ovfl *dtmp* 1:$151F 1:data:reset=0:$1FFF 1:$1520 1:000100:A1=A7:D3=D7 1:$1521 1:000100:A1=A7:D8=D7 TRAP !ovfl 1:$1522 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$1523 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1524 0:data:reset=0:$5523 0:$1525 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1526 d15:data:reset=0:$7FF8 1:$1523 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1524 d15:data:reset=0:$5527 0:$1527 0:000000:A1=A7:D7=D0 add -1 // $7FFF ovfl *dtmp* 0:$1528 0:data:reset=0:$FFFF 0:$1529 0:000000:A1=A7:D3=D7 0:$152A 0:000000:A1=A7:D8=D7 TRAP !ovfl 0:$152B ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$152C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$152D 0:data:reset=0:$552C 0:$152E 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$152F d15:data:reset=0:$7FF8 1:$152C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$152D d15:data:reset=0:$5530 0:$1530 0:000100:A1=A7:D7=D0 add_c $8000 // $0000 !ovfl *dtmp* 0:$1531 0:data:reset=0:$8000 0:$1532 0:000100:A1=A0:D3=D7 0:$1533 0:000100:A1=A0:D8=D7 TRAP ovfl 0:$1534 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1535 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1536 1:data:reset=0:$D535 1:$1537 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$1538 d15:data:reset=0:$7FF8 0:$1535 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1536 d15:data:reset=0:$D539 1:$1539 1:000011:A1=A7:D8=D0 ld alu,$7fff 1:$153A 1:data:reset=0:$7FFF 1:$153B 1:000000:A1=A7:D7=D0 add $8000 // *dtmp* 1:$153C 1:data:reset=0:$8000 1:$153D 1:000000:A1=A0:D3=D7 1:$153E 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$153F ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1540 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1541 1:data:reset=0:$D540 1:$1542 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$1543 d15:data:reset=0:$7FF8 0:$1540 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1541 d15:data:reset=0:$D544 1:$1544 1:000011:A1=A7:D8=D0 ld alu,$7fff 1:$1545 1:data:reset=0:$7FFF 1:$1546 1:000100:A1=A7:D7=D0 add_c $8000 // *dtmp* 1:$1547 1:data:reset=0:$8000 1:$1548 1:000100:A1=A0:D3=D7 1:$1549 1:000100:A1=A0:D8=D7 TRAP ovfl 1:$154A ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$154B 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$154C 1:data:reset=0:$D54B 1:$154D 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$154E d15:data:reset=0:$7FF8 0:$154B 0:000011:A1=A7:D0=D0 then // * TRAP 0:$154C d15:data:reset=0:$D54F // --- file: "flags.asm" --- 1:$154F 1:000011:A1=A7:D3=D8 nop 1:$1550 1:000011:A1=A7:D3=D8 nop #include "flags.asm" // +++ file: "flags.asm" +++ /* ---- Z ------------------------------------------------ tst :z ival kommt aus dem uC-Ram => funktioniert nur in 99% aller Fälle (vor Allem Bit $0008 und auch Bit $1000) => vielleicht nach Ersetzen des HC151 durch AC151 */ // instr test_z1(VALUE) // ld d1,VALUE // tst d0 // TRAP !z // tst d1 // TRAP z // end 1:$1551 1:000011:A1=A7:D4=D0 ld d0,0 1:$1552 1:data:reset=0:$0000 test_z1 1 1:$1553 1:000011:A1=A0:D5=D0 ld d1,1 // * test_z1 1:$1554 1:data:reset=0:$0001 1:$1555 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1556 z:data:reset=0:$0000 if !z // * TRAP 0:$1557 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1558 0:data:reset=0:$5557 0:$1559 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$155A d15:data:reset=0:$7FF8 1:$1557 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1558 d15:data:reset=0:$555B 0:$155B 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$155C z:data:reset=0:$0000 if z // * TRAP 1:$155D 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$155E 1:data:reset=0:$D55D 1:$155F 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$1560 d15:data:reset=0:$7FF8 0:$155D 0:000011:A1=A0:D0=D0 then // * TRAP 0:$155E d15:data:reset=0:$D561 test_z1 2 1:$1561 1:000011:A1=A7:D5=D0 ld d1,2 // * test_z1 1:$1562 1:data:reset=0:$0002 1:$1563 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1564 z:data:reset=0:$0000 if !z // * TRAP 0:$1565 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1566 0:data:reset=0:$5565 0:$1567 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1568 d15:data:reset=0:$7FF8 1:$1565 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1566 d15:data:reset=0:$5569 0:$1569 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$156A z:data:reset=0:$0000 if z // * TRAP 1:$156B 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$156C 1:data:reset=0:$D56B 1:$156D 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$156E d15:data:reset=0:$7FF8 0:$156B 0:000011:A1=A0:D0=D0 then // * TRAP 0:$156C d15:data:reset=0:$D56F test_z1 4 1:$156F 1:000011:A1=A7:D5=D0 ld d1,4 // * test_z1 1:$1570 1:data:reset=0:$0004 1:$1571 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1572 z:data:reset=0:$0000 if !z // * TRAP 0:$1573 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1574 0:data:reset=0:$5573 0:$1575 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1576 d15:data:reset=0:$7FF8 1:$1573 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1574 d15:data:reset=0:$5577 0:$1577 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1578 z:data:reset=0:$0000 if z // * TRAP 1:$1579 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$157A 1:data:reset=0:$D579 1:$157B 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$157C d15:data:reset=0:$7FF8 0:$1579 0:000011:A1=A0:D0=D0 then // * TRAP 0:$157A d15:data:reset=0:$D57D test_z1 8 1:$157D 1:000011:A1=A7:D5=D0 ld d1,8 // * test_z1 1:$157E 1:data:reset=0:$0008 1:$157F 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1580 z:data:reset=0:$0000 if !z // * TRAP 0:$1581 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1582 0:data:reset=0:$5581 0:$1583 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1584 d15:data:reset=0:$7FF8 1:$1581 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1582 d15:data:reset=0:$5585 0:$1585 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1586 z:data:reset=0:$0000 if z // * TRAP 1:$1587 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1588 1:data:reset=0:$D587 1:$1589 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$158A d15:data:reset=0:$7FF8 0:$1587 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1588 d15:data:reset=0:$D58B test_z1 $10 1:$158B 1:000011:A1=A7:D5=D0 ld d1,$10 // * test_z1 1:$158C 1:data:reset=0:$0010 1:$158D 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$158E z:data:reset=0:$0000 if !z // * TRAP 0:$158F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1590 0:data:reset=0:$558F 0:$1591 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1592 d15:data:reset=0:$7FF8 1:$158F 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1590 d15:data:reset=0:$5593 0:$1593 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1594 z:data:reset=0:$0000 if z // * TRAP 1:$1595 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1596 1:data:reset=0:$D595 1:$1597 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$1598 d15:data:reset=0:$7FF8 0:$1595 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1596 d15:data:reset=0:$D599 test_z1 $20 1:$1599 1:000011:A1=A7:D5=D0 ld d1,$20 // * test_z1 1:$159A 1:data:reset=0:$0020 1:$159B 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$159C z:data:reset=0:$0000 if !z // * TRAP 0:$159D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$159E 0:data:reset=0:$559D 0:$159F 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$15A0 d15:data:reset=0:$7FF8 1:$159D 1:000011:A1=A0:D0=D0 then // * TRAP 1:$159E d15:data:reset=0:$55A1 0:$15A1 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$15A2 z:data:reset=0:$0000 if z // * TRAP 1:$15A3 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$15A4 1:data:reset=0:$D5A3 1:$15A5 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$15A6 d15:data:reset=0:$7FF8 0:$15A3 0:000011:A1=A0:D0=D0 then // * TRAP 0:$15A4 d15:data:reset=0:$D5A7 test_z1 $40 1:$15A7 1:000011:A1=A7:D5=D0 ld d1,$40 // * test_z1 1:$15A8 1:data:reset=0:$0040 1:$15A9 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$15AA z:data:reset=0:$0000 if !z // * TRAP 0:$15AB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$15AC 0:data:reset=0:$55AB 0:$15AD 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$15AE d15:data:reset=0:$7FF8 1:$15AB 1:000011:A1=A0:D0=D0 then // * TRAP 1:$15AC d15:data:reset=0:$55AF 0:$15AF 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$15B0 z:data:reset=0:$0000 if z // * TRAP 1:$15B1 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$15B2 1:data:reset=0:$D5B1 1:$15B3 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$15B4 d15:data:reset=0:$7FF8 0:$15B1 0:000011:A1=A0:D0=D0 then // * TRAP 0:$15B2 d15:data:reset=0:$D5B5 test_z1 $80 1:$15B5 1:000011:A1=A7:D5=D0 ld d1,$80 // * test_z1 1:$15B6 1:data:reset=0:$0080 1:$15B7 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$15B8 z:data:reset=0:$0000 if !z // * TRAP 0:$15B9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$15BA 0:data:reset=0:$55B9 0:$15BB 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$15BC d15:data:reset=0:$7FF8 1:$15B9 1:000011:A1=A0:D0=D0 then // * TRAP 1:$15BA d15:data:reset=0:$55BD 0:$15BD 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$15BE z:data:reset=0:$0000 if z // * TRAP 1:$15BF 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$15C0 1:data:reset=0:$D5BF 1:$15C1 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$15C2 d15:data:reset=0:$7FF8 0:$15BF 0:000011:A1=A0:D0=D0 then // * TRAP 0:$15C0 d15:data:reset=0:$D5C3 test_z1 $100 1:$15C3 1:000011:A1=A7:D5=D0 ld d1,$100 // * test_z1 1:$15C4 1:data:reset=0:$0100 1:$15C5 1:000011:A1=A1:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$15C6 z:data:reset=0:$0000 if !z // * TRAP 0:$15C7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$15C8 0:data:reset=0:$55C7 0:$15C9 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$15CA d15:data:reset=0:$7FF8 1:$15C7 1:000011:A1=A0:D0=D0 then // * TRAP 1:$15C8 d15:data:reset=0:$55CB 0:$15CB 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$15CC z:data:reset=0:$0000 if z // * TRAP 1:$15CD 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$15CE 1:data:reset=0:$D5CD 1:$15CF 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$15D0 d15:data:reset=0:$7FF8 0:$15CD 0:000011:A1=A0:D0=D0 then // * TRAP 0:$15CE d15:data:reset=0:$D5D1 test_z1 $200 1:$15D1 1:000011:A1=A7:D5=D0 ld d1,$200 // * test_z1 1:$15D2 1:data:reset=0:$0200 1:$15D3 1:000011:A1=A2:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$15D4 z:data:reset=0:$0000 if !z // * TRAP 0:$15D5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$15D6 0:data:reset=0:$55D5 0:$15D7 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$15D8 d15:data:reset=0:$7FF8 1:$15D5 1:000011:A1=A0:D0=D0 then // * TRAP 1:$15D6 d15:data:reset=0:$55D9 0:$15D9 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$15DA z:data:reset=0:$0000 if z // * TRAP 1:$15DB 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$15DC 1:data:reset=0:$D5DB 1:$15DD 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$15DE d15:data:reset=0:$7FF8 0:$15DB 0:000011:A1=A0:D0=D0 then // * TRAP 0:$15DC d15:data:reset=0:$D5DF test_z1 $400 1:$15DF 1:000011:A1=A7:D5=D0 ld d1,$400 // * test_z1 1:$15E0 1:data:reset=0:$0400 1:$15E1 1:000011:A1=A4:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$15E2 z:data:reset=0:$0000 if !z // * TRAP 0:$15E3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$15E4 0:data:reset=0:$55E3 0:$15E5 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$15E6 d15:data:reset=0:$7FF8 1:$15E3 1:000011:A1=A0:D0=D0 then // * TRAP 1:$15E4 d15:data:reset=0:$55E7 0:$15E7 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$15E8 z:data:reset=0:$0000 if z // * TRAP 1:$15E9 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$15EA 1:data:reset=0:$D5E9 1:$15EB 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$15EC d15:data:reset=0:$7FF8 0:$15E9 0:000011:A1=A0:D0=D0 then // * TRAP 0:$15EA d15:data:reset=0:$D5ED test_z1 $800 1:$15ED 1:000011:A1=A7:D5=D0 ld d1,$800 // * test_z1 1:$15EE 1:data:reset=0:$0800 1:$15EF 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$15F0 z:data:reset=0:$0000 if !z // * TRAP 0:$15F1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$15F2 0:data:reset=0:$55F1 0:$15F3 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$15F4 d15:data:reset=0:$7FF8 1:$15F1 1:000011:A1=A0:D0=D0 then // * TRAP 1:$15F2 d15:data:reset=0:$55F5 0:$15F5 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$15F6 z:data:reset=0:$0000 if z // * TRAP 1:$15F7 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$15F8 1:data:reset=0:$D5F7 1:$15F9 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$15FA d15:data:reset=0:$7FF8 0:$15F7 0:000011:A1=A0:D0=D0 then // * TRAP 0:$15F8 d15:data:reset=0:$D5FB test_z1 $1000 1:$15FB 1:000011:A1=A7:D5=D0 ld d1,$1000 // * test_z1 1:$15FC 1:data:reset=0:$1000 1:$15FD 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$15FE z:data:reset=0:$0000 if !z // * TRAP 0:$15FF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1600 0:data:reset=0:$55FF 0:$1601 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1602 d15:data:reset=0:$7FF8 1:$15FF 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1600 d15:data:reset=0:$5603 0:$1603 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1604 z:data:reset=0:$0000 if z // * TRAP 1:$1605 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1606 1:data:reset=0:$D605 1:$1607 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$1608 d15:data:reset=0:$7FF8 0:$1605 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1606 d15:data:reset=0:$D609 test_z1 $2000 1:$1609 1:000011:A1=A7:D5=D0 ld d1,$2000 // * test_z1 1:$160A 1:data:reset=0:$2000 1:$160B 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$160C z:data:reset=0:$0000 if !z // * TRAP 0:$160D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$160E 0:data:reset=0:$560D 0:$160F 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1610 d15:data:reset=0:$7FF8 1:$160D 1:000011:A1=A0:D0=D0 then // * TRAP 1:$160E d15:data:reset=0:$5611 0:$1611 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1612 z:data:reset=0:$0000 if z // * TRAP 1:$1613 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1614 1:data:reset=0:$D613 1:$1615 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$1616 d15:data:reset=0:$7FF8 0:$1613 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1614 d15:data:reset=0:$D617 test_z1 $4000 1:$1617 1:000011:A1=A7:D5=D0 ld d1,$4000 // * test_z1 1:$1618 1:data:reset=0:$4000 1:$1619 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$161A z:data:reset=0:$0000 if !z // * TRAP 0:$161B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$161C 0:data:reset=0:$561B 0:$161D 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$161E d15:data:reset=0:$7FF8 1:$161B 1:000011:A1=A0:D0=D0 then // * TRAP 1:$161C d15:data:reset=0:$561F 0:$161F 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1620 z:data:reset=0:$0000 if z // * TRAP 1:$1621 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1622 1:data:reset=0:$D621 1:$1623 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$1624 d15:data:reset=0:$7FF8 0:$1621 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1622 d15:data:reset=0:$D625 test_z1 $8000 1:$1625 1:000011:A1=A7:D5=D0 ld d1,$8000 // * test_z1 1:$1626 1:data:reset=0:$8000 1:$1627 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1628 z:data:reset=0:$0000 if !z // * TRAP 0:$1629 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$162A 0:data:reset=0:$5629 0:$162B 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$162C d15:data:reset=0:$7FF8 1:$1629 1:000011:A1=A0:D0=D0 then // * TRAP 1:$162A d15:data:reset=0:$562D 0:$162D 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$162E z:data:reset=0:$0000 if z // * TRAP 1:$162F 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1630 1:data:reset=0:$D62F 1:$1631 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$1632 d15:data:reset=0:$7FF8 0:$162F 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1630 d15:data:reset=0:$D633 1:$1633 1:000011:A1=A7:D3=D8 nop // ---- bit0 ------------------------------------------------ 1:$1634 1:000011:A1=A7:D5=D0 ld d1,~0 1:$1635 1:data:reset=0:$FFFF 1:$1636 1:000011:A1=A7:D4=D0 ld d0,0 1:$1637 1:data:reset=0:$0000 1:$1638 1:000011:A1=A0:D3=D5 tst d1 1:$1639 1:000011:A1=A0:D3=D0 tst $0000 : bit0 1:$163A d0:data:reset=0:$0000 TRAP 1 if 1 // * TRAP 1:$163B 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$163C 1:data:reset=0:$D63B 1:$163D 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$163E d15:data:reset=0:$7FF8 0:$163B 0:000011:A1=A7:D0=D0 then // * TRAP 0:$163C d15:data:reset=0:$D63F 1:$163F 1:000011:A1=A7:D3=D4 tst d0 1:$1640 1:000011:A1=A7:D3=D0 tst $0001 : bit0 1:$1641 d0:data:reset=0:$0001 TRAP 0 if 0 // * TRAP 0:$1642 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1643 0:data:reset=0:$5642 0:$1644 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1645 d15:data:reset=0:$7FF8 1:$1642 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1643 d15:data:reset=0:$5646 0:$1646 0:000011:A1=A7:D3=D5 tst d1 0:$1647 0:000011:A1=A7:D3=D0 tst $fffe : bit0 0:$1648 d0:data:reset=0:$FFFE TRAP 1 if 1 // * TRAP 1:$1649 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$164A 1:data:reset=0:$D649 1:$164B 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$164C d15:data:reset=0:$7FF8 0:$1649 0:000011:A1=A7:D0=D0 then // * TRAP 0:$164A d15:data:reset=0:$D64D 1:$164D 1:000011:A1=A7:D3=D4 tst d0 1:$164E 1:000011:A1=A7:D3=D0 tst $ffff : bit0 1:$164F d0:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$1650 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1651 0:data:reset=0:$5650 0:$1652 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1653 d15:data:reset=0:$7FF8 1:$1650 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1651 d15:data:reset=0:$5654 // ---- bit15 ------------------------------------------------ 0:$1654 0:000011:A1=A7:D5=D0 ld d1,~0 0:$1655 0:data:reset=0:$FFFF 0:$1656 0:000011:A1=A7:D4=D0 ld d0,0 0:$1657 0:data:reset=0:$0000 0:$1658 0:000011:A1=A0:D3=D5 tst d1 0:$1659 0:000011:A1=A0:D3=D0 tst $0000 : bit15 0:$165A d15:data:reset=0:$0000 TRAP 1 if 1 // * TRAP 1:$165B 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$165C 1:data:reset=0:$D65B 1:$165D 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$165E d15:data:reset=0:$7FF8 0:$165B 0:000011:A1=A0:D0=D0 then // * TRAP 0:$165C d15:data:reset=0:$D65F 1:$165F 1:000011:A1=A7:D3=D4 tst d0 1:$1660 1:000011:A1=A7:D3=D0 tst $8000 : bit15 1:$1661 d15:data:reset=0:$8000 TRAP 0 if 0 // * TRAP 0:$1662 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1663 0:data:reset=0:$5662 0:$1664 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1665 d15:data:reset=0:$7FF8 1:$1662 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1663 d15:data:reset=0:$5666 0:$1666 0:000011:A1=A7:D3=D5 tst d1 0:$1667 0:000011:A1=A7:D3=D0 tst $7fff : bit15 0:$1668 d15:data:reset=0:$7FFF TRAP 1 if 1 // * TRAP 1:$1669 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$166A 1:data:reset=0:$D669 1:$166B 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$166C d15:data:reset=0:$7FF8 0:$1669 0:000011:A1=A7:D0=D0 then // * TRAP 0:$166A d15:data:reset=0:$D66D 1:$166D 1:000011:A1=A7:D3=D4 tst d0 1:$166E 1:000011:A1=A7:D3=D0 tst $ffff : bit15 1:$166F d15:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$1670 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1671 0:data:reset=0:$5670 0:$1672 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1673 d15:data:reset=0:$7FF8 1:$1670 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1671 d15:data:reset=0:$5674 // ---- cy ------------------------------------------------ // note: "add dreg" wird immer als doppel-opcode assembliert, wg. ripple-cy // "add ival" wird über dtmp realisiert, ist also auch ein "add dreg" // man kann deswegen nie "add $1234 : cy" schreiben, weil der cy-Test nicht auf dem ival // platziert werden kann, weil das add selbst eben ein "add dtmp" ist. 0:$1674 0:000011:A1=A7:D8=D0 ld alu,$7000 0:$1675 0:data:reset=0:$7000 0:$1676 0:000000:A1=A0:D7=D0 add $8000 // *dtmp* 0:$1677 0:data:reset=0:$8000 0:$1678 0:000000:A1=A0:D3=D7 0:$1679 0:000000:A1=A0:D8=D7 TRAP cy 0:$167A cy:data:reset=0:$0000 if cy // * TRAP 1:$167B 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$167C 1:data:reset=0:$D67B 1:$167D 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$167E d15:data:reset=0:$7FF8 0:$167B 0:000011:A1=A0:D0=D0 then // * TRAP 0:$167C d15:data:reset=0:$D67F 1:$167F 1:000000:A1=A7:D7=D0 add $0FFF // *dtmp* 1:$1680 1:data:reset=0:$0FFF 1:$1681 1:000000:A1=A7:D3=D7 1:$1682 1:000000:A1=A7:D8=D7 TRAP cy 1:$1683 cy:data:reset=0:$0000 if cy // * TRAP 1:$1684 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1685 1:data:reset=0:$D684 1:$1686 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$1687 d15:data:reset=0:$7FF8 0:$1684 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1685 d15:data:reset=0:$D688 1:$1688 1:000000:A1=A7:D7=D0 add 1 // *dtmp* 1:$1689 1:data:reset=0:$0001 1:$168A 1:000000:A1=A0:D3=D7 1:$168B 1:000000:A1=A0:D8=D7 TRAP !cy 1:$168C cy:data:reset=0:$0000 if !cy // * TRAP 0:$168D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$168E 0:data:reset=0:$568D 0:$168F 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1690 d15:data:reset=0:$7FF8 1:$168D 1:000011:A1=A0:D0=D0 then // * TRAP 1:$168E d15:data:reset=0:$5691 0:$1691 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$1692 0:data:reset=0:$FFFF 0:$1693 0:000000:A1=A7:D7=D0 add 0 // *dtmp* 0:$1694 0:data:reset=0:$0000 0:$1695 0:000000:A1=A0:D3=D7 0:$1696 0:000000:A1=A0:D8=D7 TRAP cy 0:$1697 cy:data:reset=0:$0000 if cy // * TRAP 1:$1698 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1699 1:data:reset=0:$D698 1:$169A 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$169B d15:data:reset=0:$7FF8 0:$1698 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1699 d15:data:reset=0:$D69C 1:$169C 1:000000:A1=A7:D7=D0 add 1 // *dtmp* 1:$169D 1:data:reset=0:$0001 1:$169E 1:000000:A1=A0:D3=D7 1:$169F 1:000000:A1=A0:D8=D7 TRAP !cy 1:$16A0 cy:data:reset=0:$0000 if !cy // * TRAP 0:$16A1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$16A2 0:data:reset=0:$56A1 0:$16A3 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$16A4 d15:data:reset=0:$7FF8 1:$16A1 1:000011:A1=A0:D0=D0 then // * TRAP 1:$16A2 d15:data:reset=0:$56A5 0:$16A5 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$16A6 0:data:reset=0:$FFFF 0:$16A7 0:000000:A1=A7:D8=D8 add alu // *dtmp* TRAP !cy 0:$16A8 cy:data:reset=0:$0000 if !cy // * TRAP 0:$16A9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$16AA 0:data:reset=0:$56A9 0:$16AB 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$16AC d15:data:reset=0:$7FF8 1:$16A9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$16AA d15:data:reset=0:$56AD 0:$16AD 0:000100:A1=A7:D7=D0 add_c 0 // *dtmp* 0:$16AE 0:data:reset=0:$0000 0:$16AF 0:000100:A1=A0:D3=D7 0:$16B0 0:000100:A1=A0:D8=D7 TRAP cy 0:$16B1 cy:data:reset=0:$0000 if cy // * TRAP 1:$16B2 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$16B3 1:data:reset=0:$D6B2 1:$16B4 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$16B5 d15:data:reset=0:$7FF8 0:$16B2 0:000011:A1=A0:D0=D0 then // * TRAP 0:$16B3 d15:data:reset=0:$D6B6 1:$16B6 1:000100:A1=A7:D7=D0 add_c 0 // *dtmp* 1:$16B7 1:data:reset=0:$0000 1:$16B8 1:000100:A1=A0:D3=D7 1:$16B9 1:000100:A1=A0:D8=D7 TRAP !cy 1:$16BA cy:data:reset=0:$0000 if !cy // * TRAP 0:$16BB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$16BC 0:data:reset=0:$56BB 0:$16BD 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$16BE d15:data:reset=0:$7FF8 1:$16BB 1:000011:A1=A0:D0=D0 then // * TRAP 1:$16BC d15:data:reset=0:$56BF 0:$16BF 0:000011:A1=A7:D8=D0 ld alu,$8000 0:$16C0 0:data:reset=0:$8000 0:$16C1 0:000000:A1=A0:D8=D8 add alu TRAP !cy 0:$16C2 cy:data:reset=0:$0000 if !cy // * TRAP 0:$16C3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$16C4 0:data:reset=0:$56C3 0:$16C5 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$16C6 d15:data:reset=0:$7FF8 1:$16C3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$16C4 d15:data:reset=0:$56C7 0:$16C7 0:000100:A1=A7:D7=D0 add_c $ffff // *dtmp* 0:$16C8 0:data:reset=0:$FFFF 0:$16C9 0:000100:A1=A7:D3=D7 0:$16CA 0:000100:A1=A7:D8=D7 TRAP !cy 0:$16CB cy:data:reset=0:$0000 if !cy // * TRAP 0:$16CC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$16CD 0:data:reset=0:$56CC 0:$16CE 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$16CF d15:data:reset=0:$7FF8 1:$16CC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$16CD d15:data:reset=0:$56D0 // ---- ovfl ------------------------------------------------ 0:$16D0 0:000011:A1=A7:D8=D0 ld alu,$5000 0:$16D1 0:data:reset=0:$5000 0:$16D2 0:000000:A1=A0:D7=D0 add $1000 // $5000 -> $6000 !ovfl *dtmp* 0:$16D3 0:data:reset=0:$1000 0:$16D4 0:000000:A1=A0:D3=D7 0:$16D5 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$16D6 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$16D7 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$16D8 1:data:reset=0:$D6D7 1:$16D9 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$16DA d15:data:reset=0:$7FF8 0:$16D7 0:000011:A1=A0:D0=D0 then // * TRAP 0:$16D8 d15:data:reset=0:$D6DB 1:$16DB 1:000000:A1=A7:D7=D0 add $3000 // $6000 -> $9000 ovfl *dtmp* 1:$16DC 1:data:reset=0:$3000 1:$16DD 1:000000:A1=A0:D3=D7 1:$16DE 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$16DF ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$16E0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$16E1 0:data:reset=0:$56E0 0:$16E2 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$16E3 d15:data:reset=0:$7FF8 1:$16E0 1:000011:A1=A0:D0=D0 then // * TRAP 1:$16E1 d15:data:reset=0:$56E4 0:$16E4 0:000000:A1=A7:D7=D0 add $3000 // $9000 -> $C000 !ovfl *dtmp* 0:$16E5 0:data:reset=0:$3000 0:$16E6 0:000000:A1=A0:D3=D7 0:$16E7 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$16E8 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$16E9 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$16EA 1:data:reset=0:$D6E9 1:$16EB 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$16EC d15:data:reset=0:$7FF8 0:$16E9 0:000011:A1=A0:D0=D0 then // * TRAP 0:$16EA d15:data:reset=0:$D6ED 1:$16ED 1:000000:A1=A7:D7=D0 add $5000 // $C000 -> $1000 !ovfl *dtmp* 1:$16EE 1:data:reset=0:$5000 1:$16EF 1:000000:A1=A0:D3=D7 1:$16F0 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$16F1 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$16F2 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$16F3 1:data:reset=0:$D6F2 1:$16F4 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$16F5 d15:data:reset=0:$7FF8 0:$16F2 0:000011:A1=A7:D0=D0 then // * TRAP 0:$16F3 d15:data:reset=0:$D6F6 1:$16F6 1:000000:A1=A7:D7=D0 add $B000 // $1000 -> $C000 !ovfl *dtmp* 1:$16F7 1:data:reset=0:$B000 1:$16F8 1:000000:A1=A0:D3=D7 1:$16F9 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$16FA ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$16FB 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$16FC 1:data:reset=0:$D6FB 1:$16FD 1:000011:A1=A6:D0=D0 jp error // * TRAP 1:$16FE d15:data:reset=0:$7FF8 0:$16FB 0:000011:A1=A7:D0=D0 then // * TRAP 0:$16FC d15:data:reset=0:$D6FF 1:$16FF 1:000000:A1=A7:D7=D0 add $D000 // $C000 -> $9000 !ovfl *dtmp* 1:$1700 1:data:reset=0:$D000 1:$1701 1:000000:A1=A0:D3=D7 1:$1702 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$1703 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1704 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1705 1:data:reset=0:$D704 1:$1706 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$1707 d15:data:reset=0:$7FF8 0:$1704 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1705 d15:data:reset=0:$D708 1:$1708 1:000000:A1=A7:D7=D0 add $D000 // $9000 -> $6000 ovfl *dtmp* 1:$1709 1:data:reset=0:$D000 1:$170A 1:000000:A1=A0:D3=D7 1:$170B 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$170C ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$170D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$170E 0:data:reset=0:$570D 0:$170F 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1710 d15:data:reset=0:$7FF8 1:$170D 1:000011:A1=A0:D0=D0 then // * TRAP 1:$170E d15:data:reset=0:$5711 0:$1711 0:000000:A1=A7:D7=D0 add $E000 // $6000 -> $4000 !ovfl *dtmp* 0:$1712 0:data:reset=0:$E000 0:$1713 0:000000:A1=A0:D3=D7 0:$1714 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$1715 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1716 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1717 1:data:reset=0:$D716 1:$1718 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$1719 d15:data:reset=0:$7FF8 0:$1716 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1717 d15:data:reset=0:$D71A 1:$171A 1:000011:A1=A7:D8=D0 ld alu,$7000 1:$171B 1:data:reset=0:$7000 1:$171C 1:000000:A1=A0:D7=D0 add $1000 // $8000 ovfl *dtmp* 1:$171D 1:data:reset=0:$1000 1:$171E 1:000000:A1=A0:D3=D7 1:$171F 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$1720 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$1721 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1722 0:data:reset=0:$5721 0:$1723 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1724 d15:data:reset=0:$7FF8 1:$1721 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1722 d15:data:reset=0:$5725 0:$1725 0:000000:A1=A7:D7=D0 add $7000 // $F000 !ovfl *dtmp* 0:$1726 0:data:reset=0:$7000 0:$1727 0:000000:A1=A0:D3=D7 0:$1728 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$1729 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$172A 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$172B 1:data:reset=0:$D72A 1:$172C 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$172D d15:data:reset=0:$7FF8 0:$172A 0:000011:A1=A0:D0=D0 then // * TRAP 0:$172B d15:data:reset=0:$D72E 1:$172E 1:000000:A1=A7:D7=D0 add $7000 // $6000 !ovfl *dtmp* 1:$172F 1:data:reset=0:$7000 1:$1730 1:000000:A1=A0:D3=D7 1:$1731 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$1732 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1733 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1734 1:data:reset=0:$D733 1:$1735 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$1736 d15:data:reset=0:$7FF8 0:$1733 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1734 d15:data:reset=0:$D737 1:$1737 1:000100:A1=A7:D7=D0 add_c $1fff // $8000 ovfl *dtmp* 1:$1738 1:data:reset=0:$1FFF 1:$1739 1:000100:A1=A7:D3=D7 1:$173A 1:000100:A1=A7:D8=D7 TRAP !ovfl 1:$173B ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$173C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$173D 0:data:reset=0:$573C 0:$173E 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$173F d15:data:reset=0:$7FF8 1:$173C 1:000011:A1=A0:D0=D0 then // * TRAP 1:$173D d15:data:reset=0:$5740 0:$1740 0:000000:A1=A7:D7=D0 add -1 // $7FFF ovfl *dtmp* 0:$1741 0:data:reset=0:$FFFF 0:$1742 0:000000:A1=A7:D3=D7 0:$1743 0:000000:A1=A7:D8=D7 TRAP !ovfl 0:$1744 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$1745 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1746 0:data:reset=0:$5745 0:$1747 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1748 d15:data:reset=0:$7FF8 1:$1745 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1746 d15:data:reset=0:$5749 0:$1749 0:000100:A1=A7:D7=D0 add_c $8000 // $0000 !ovfl *dtmp* 0:$174A 0:data:reset=0:$8000 0:$174B 0:000100:A1=A0:D3=D7 0:$174C 0:000100:A1=A0:D8=D7 TRAP ovfl 0:$174D ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$174E 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$174F 1:data:reset=0:$D74E 1:$1750 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$1751 d15:data:reset=0:$7FF8 0:$174E 0:000011:A1=A0:D0=D0 then // * TRAP 0:$174F d15:data:reset=0:$D752 1:$1752 1:000011:A1=A7:D8=D0 ld alu,$7fff 1:$1753 1:data:reset=0:$7FFF 1:$1754 1:000000:A1=A7:D7=D0 add $8000 // *dtmp* 1:$1755 1:data:reset=0:$8000 1:$1756 1:000000:A1=A0:D3=D7 1:$1757 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$1758 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1759 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$175A 1:data:reset=0:$D759 1:$175B 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$175C d15:data:reset=0:$7FF8 0:$1759 0:000011:A1=A7:D0=D0 then // * TRAP 0:$175A d15:data:reset=0:$D75D 1:$175D 1:000011:A1=A7:D8=D0 ld alu,$7fff 1:$175E 1:data:reset=0:$7FFF 1:$175F 1:000100:A1=A7:D7=D0 add_c $8000 // *dtmp* 1:$1760 1:data:reset=0:$8000 1:$1761 1:000100:A1=A0:D3=D7 1:$1762 1:000100:A1=A0:D8=D7 TRAP ovfl 1:$1763 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1764 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1765 1:data:reset=0:$D764 1:$1766 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$1767 d15:data:reset=0:$7FF8 0:$1764 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1765 d15:data:reset=0:$D768 // --- file: "flags.asm" --- 1:$1768 1:000011:A1=A7:D3=D8 nop 1:$1769 1:000011:A1=A7:D3=D8 nop 1:$176A 1:000011:A1=A7:D3=D8 nop #include "flags.asm" // +++ file: "flags.asm" +++ /* ---- Z ------------------------------------------------ tst :z ival kommt aus dem uC-Ram => funktioniert nur in 99% aller Fälle (vor Allem Bit $0008 und auch Bit $1000) => vielleicht nach Ersetzen des HC151 durch AC151 */ // instr test_z1(VALUE) // ld d1,VALUE // tst d0 // TRAP !z // tst d1 // TRAP z // end 1:$176B 1:000011:A1=A7:D4=D0 ld d0,0 1:$176C 1:data:reset=0:$0000 test_z1 1 1:$176D 1:000011:A1=A0:D5=D0 ld d1,1 // * test_z1 1:$176E 1:data:reset=0:$0001 1:$176F 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1770 z:data:reset=0:$0000 if !z // * TRAP 0:$1771 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1772 0:data:reset=0:$5771 0:$1773 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1774 d15:data:reset=0:$7FF8 1:$1771 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1772 d15:data:reset=0:$5775 0:$1775 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1776 z:data:reset=0:$0000 if z // * TRAP 1:$1777 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1778 1:data:reset=0:$D777 1:$1779 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$177A d15:data:reset=0:$7FF8 0:$1777 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1778 d15:data:reset=0:$D77B test_z1 2 1:$177B 1:000011:A1=A7:D5=D0 ld d1,2 // * test_z1 1:$177C 1:data:reset=0:$0002 1:$177D 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$177E z:data:reset=0:$0000 if !z // * TRAP 0:$177F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1780 0:data:reset=0:$577F 0:$1781 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1782 d15:data:reset=0:$7FF8 1:$177F 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1780 d15:data:reset=0:$5783 0:$1783 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1784 z:data:reset=0:$0000 if z // * TRAP 1:$1785 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1786 1:data:reset=0:$D785 1:$1787 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$1788 d15:data:reset=0:$7FF8 0:$1785 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1786 d15:data:reset=0:$D789 test_z1 4 1:$1789 1:000011:A1=A7:D5=D0 ld d1,4 // * test_z1 1:$178A 1:data:reset=0:$0004 1:$178B 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$178C z:data:reset=0:$0000 if !z // * TRAP 0:$178D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$178E 0:data:reset=0:$578D 0:$178F 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1790 d15:data:reset=0:$7FF8 1:$178D 1:000011:A1=A0:D0=D0 then // * TRAP 1:$178E d15:data:reset=0:$5791 0:$1791 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1792 z:data:reset=0:$0000 if z // * TRAP 1:$1793 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1794 1:data:reset=0:$D793 1:$1795 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$1796 d15:data:reset=0:$7FF8 0:$1793 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1794 d15:data:reset=0:$D797 test_z1 8 1:$1797 1:000011:A1=A7:D5=D0 ld d1,8 // * test_z1 1:$1798 1:data:reset=0:$0008 1:$1799 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$179A z:data:reset=0:$0000 if !z // * TRAP 0:$179B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$179C 0:data:reset=0:$579B 0:$179D 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$179E d15:data:reset=0:$7FF8 1:$179B 1:000011:A1=A0:D0=D0 then // * TRAP 1:$179C d15:data:reset=0:$579F 0:$179F 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$17A0 z:data:reset=0:$0000 if z // * TRAP 1:$17A1 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$17A2 1:data:reset=0:$D7A1 1:$17A3 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$17A4 d15:data:reset=0:$7FF8 0:$17A1 0:000011:A1=A0:D0=D0 then // * TRAP 0:$17A2 d15:data:reset=0:$D7A5 test_z1 $10 1:$17A5 1:000011:A1=A7:D5=D0 ld d1,$10 // * test_z1 1:$17A6 1:data:reset=0:$0010 1:$17A7 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$17A8 z:data:reset=0:$0000 if !z // * TRAP 0:$17A9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$17AA 0:data:reset=0:$57A9 0:$17AB 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$17AC d15:data:reset=0:$7FF8 1:$17A9 1:000011:A1=A0:D0=D0 then // * TRAP 1:$17AA d15:data:reset=0:$57AD 0:$17AD 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$17AE z:data:reset=0:$0000 if z // * TRAP 1:$17AF 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$17B0 1:data:reset=0:$D7AF 1:$17B1 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$17B2 d15:data:reset=0:$7FF8 0:$17AF 0:000011:A1=A0:D0=D0 then // * TRAP 0:$17B0 d15:data:reset=0:$D7B3 test_z1 $20 1:$17B3 1:000011:A1=A7:D5=D0 ld d1,$20 // * test_z1 1:$17B4 1:data:reset=0:$0020 1:$17B5 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$17B6 z:data:reset=0:$0000 if !z // * TRAP 0:$17B7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$17B8 0:data:reset=0:$57B7 0:$17B9 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$17BA d15:data:reset=0:$7FF8 1:$17B7 1:000011:A1=A0:D0=D0 then // * TRAP 1:$17B8 d15:data:reset=0:$57BB 0:$17BB 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$17BC z:data:reset=0:$0000 if z // * TRAP 1:$17BD 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$17BE 1:data:reset=0:$D7BD 1:$17BF 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$17C0 d15:data:reset=0:$7FF8 0:$17BD 0:000011:A1=A0:D0=D0 then // * TRAP 0:$17BE d15:data:reset=0:$D7C1 test_z1 $40 1:$17C1 1:000011:A1=A7:D5=D0 ld d1,$40 // * test_z1 1:$17C2 1:data:reset=0:$0040 1:$17C3 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$17C4 z:data:reset=0:$0000 if !z // * TRAP 0:$17C5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$17C6 0:data:reset=0:$57C5 0:$17C7 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$17C8 d15:data:reset=0:$7FF8 1:$17C5 1:000011:A1=A0:D0=D0 then // * TRAP 1:$17C6 d15:data:reset=0:$57C9 0:$17C9 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$17CA z:data:reset=0:$0000 if z // * TRAP 1:$17CB 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$17CC 1:data:reset=0:$D7CB 1:$17CD 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$17CE d15:data:reset=0:$7FF8 0:$17CB 0:000011:A1=A0:D0=D0 then // * TRAP 0:$17CC d15:data:reset=0:$D7CF test_z1 $80 1:$17CF 1:000011:A1=A7:D5=D0 ld d1,$80 // * test_z1 1:$17D0 1:data:reset=0:$0080 1:$17D1 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$17D2 z:data:reset=0:$0000 if !z // * TRAP 0:$17D3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$17D4 0:data:reset=0:$57D3 0:$17D5 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$17D6 d15:data:reset=0:$7FF8 1:$17D3 1:000011:A1=A0:D0=D0 then // * TRAP 1:$17D4 d15:data:reset=0:$57D7 0:$17D7 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$17D8 z:data:reset=0:$0000 if z // * TRAP 1:$17D9 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$17DA 1:data:reset=0:$D7D9 1:$17DB 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$17DC d15:data:reset=0:$7FF8 0:$17D9 0:000011:A1=A0:D0=D0 then // * TRAP 0:$17DA d15:data:reset=0:$D7DD test_z1 $100 1:$17DD 1:000011:A1=A7:D5=D0 ld d1,$100 // * test_z1 1:$17DE 1:data:reset=0:$0100 1:$17DF 1:000011:A1=A1:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$17E0 z:data:reset=0:$0000 if !z // * TRAP 0:$17E1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$17E2 0:data:reset=0:$57E1 0:$17E3 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$17E4 d15:data:reset=0:$7FF8 1:$17E1 1:000011:A1=A0:D0=D0 then // * TRAP 1:$17E2 d15:data:reset=0:$57E5 0:$17E5 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$17E6 z:data:reset=0:$0000 if z // * TRAP 1:$17E7 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$17E8 1:data:reset=0:$D7E7 1:$17E9 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$17EA d15:data:reset=0:$7FF8 0:$17E7 0:000011:A1=A0:D0=D0 then // * TRAP 0:$17E8 d15:data:reset=0:$D7EB test_z1 $200 1:$17EB 1:000011:A1=A7:D5=D0 ld d1,$200 // * test_z1 1:$17EC 1:data:reset=0:$0200 1:$17ED 1:000011:A1=A2:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$17EE z:data:reset=0:$0000 if !z // * TRAP 0:$17EF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$17F0 0:data:reset=0:$57EF 0:$17F1 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$17F2 d15:data:reset=0:$7FF8 1:$17EF 1:000011:A1=A0:D0=D0 then // * TRAP 1:$17F0 d15:data:reset=0:$57F3 0:$17F3 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$17F4 z:data:reset=0:$0000 if z // * TRAP 1:$17F5 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$17F6 1:data:reset=0:$D7F5 1:$17F7 1:000011:A1=A7:D0=D0 jp error // * TRAP 1:$17F8 d15:data:reset=0:$7FF8 0:$17F5 0:000011:A1=A0:D0=D0 then // * TRAP 0:$17F6 d15:data:reset=0:$D7F9 test_z1 $400 1:$17F9 1:000011:A1=A7:D5=D0 ld d1,$400 // * test_z1 1:$17FA 1:data:reset=0:$0400 1:$17FB 1:000011:A1=A4:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$17FC z:data:reset=0:$0000 if !z // * TRAP 0:$17FD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$17FE 0:data:reset=0:$57FD 0:$17FF 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1800 d15:data:reset=0:$7FF8 1:$17FD 1:000011:A1=A0:D0=D0 then // * TRAP 1:$17FE d15:data:reset=0:$5801 0:$1801 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1802 z:data:reset=0:$0000 if z // * TRAP 1:$1803 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1804 1:data:reset=0:$D803 1:$1805 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$1806 d15:data:reset=0:$7FF8 0:$1803 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1804 d15:data:reset=0:$D807 test_z1 $800 1:$1807 1:000011:A1=A7:D5=D0 ld d1,$800 // * test_z1 1:$1808 1:data:reset=0:$0800 1:$1809 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$180A z:data:reset=0:$0000 if !z // * TRAP 0:$180B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$180C 0:data:reset=0:$580B 0:$180D 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$180E d15:data:reset=0:$7FF8 1:$180B 1:000011:A1=A0:D0=D0 then // * TRAP 1:$180C d15:data:reset=0:$580F 0:$180F 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1810 z:data:reset=0:$0000 if z // * TRAP 1:$1811 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1812 1:data:reset=0:$D811 1:$1813 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$1814 d15:data:reset=0:$7FF8 0:$1811 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1812 d15:data:reset=0:$D815 test_z1 $1000 1:$1815 1:000011:A1=A7:D5=D0 ld d1,$1000 // * test_z1 1:$1816 1:data:reset=0:$1000 1:$1817 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1818 z:data:reset=0:$0000 if !z // * TRAP 0:$1819 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$181A 0:data:reset=0:$5819 0:$181B 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$181C d15:data:reset=0:$7FF8 1:$1819 1:000011:A1=A0:D0=D0 then // * TRAP 1:$181A d15:data:reset=0:$581D 0:$181D 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$181E z:data:reset=0:$0000 if z // * TRAP 1:$181F 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1820 1:data:reset=0:$D81F 1:$1821 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$1822 d15:data:reset=0:$7FF8 0:$181F 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1820 d15:data:reset=0:$D823 test_z1 $2000 1:$1823 1:000011:A1=A7:D5=D0 ld d1,$2000 // * test_z1 1:$1824 1:data:reset=0:$2000 1:$1825 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1826 z:data:reset=0:$0000 if !z // * TRAP 0:$1827 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1828 0:data:reset=0:$5827 0:$1829 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$182A d15:data:reset=0:$7FF8 1:$1827 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1828 d15:data:reset=0:$582B 0:$182B 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$182C z:data:reset=0:$0000 if z // * TRAP 1:$182D 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$182E 1:data:reset=0:$D82D 1:$182F 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$1830 d15:data:reset=0:$7FF8 0:$182D 0:000011:A1=A0:D0=D0 then // * TRAP 0:$182E d15:data:reset=0:$D831 test_z1 $4000 1:$1831 1:000011:A1=A7:D5=D0 ld d1,$4000 // * test_z1 1:$1832 1:data:reset=0:$4000 1:$1833 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1834 z:data:reset=0:$0000 if !z // * TRAP 0:$1835 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1836 0:data:reset=0:$5835 0:$1837 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$1838 d15:data:reset=0:$7FF8 1:$1835 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1836 d15:data:reset=0:$5839 0:$1839 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$183A z:data:reset=0:$0000 if z // * TRAP 1:$183B 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$183C 1:data:reset=0:$D83B 1:$183D 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$183E d15:data:reset=0:$7FF8 0:$183B 0:000011:A1=A0:D0=D0 then // * TRAP 0:$183C d15:data:reset=0:$D83F test_z1 $8000 1:$183F 1:000011:A1=A7:D5=D0 ld d1,$8000 // * test_z1 1:$1840 1:data:reset=0:$8000 1:$1841 1:000011:A1=A0:D3=D4 tst d0 // * test_z1 TRAP !z // * test_z1 1:$1842 z:data:reset=0:$0000 if !z // * TRAP 0:$1843 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1844 0:data:reset=0:$5843 0:$1845 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$1846 d15:data:reset=0:$7FF8 1:$1843 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1844 d15:data:reset=0:$5847 0:$1847 0:000011:A1=A7:D3=D5 tst d1 // * test_z1 TRAP z // * test_z1 0:$1848 z:data:reset=0:$0000 if z // * TRAP 1:$1849 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$184A 1:data:reset=0:$D849 1:$184B 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$184C d15:data:reset=0:$7FF8 0:$1849 0:000011:A1=A0:D0=D0 then // * TRAP 0:$184A d15:data:reset=0:$D84D 1:$184D 1:000011:A1=A7:D3=D8 nop // ---- bit0 ------------------------------------------------ 1:$184E 1:000011:A1=A7:D5=D0 ld d1,~0 1:$184F 1:data:reset=0:$FFFF 1:$1850 1:000011:A1=A7:D4=D0 ld d0,0 1:$1851 1:data:reset=0:$0000 1:$1852 1:000011:A1=A0:D3=D5 tst d1 1:$1853 1:000011:A1=A0:D3=D0 tst $0000 : bit0 1:$1854 d0:data:reset=0:$0000 TRAP 1 if 1 // * TRAP 1:$1855 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1856 1:data:reset=0:$D855 1:$1857 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$1858 d15:data:reset=0:$7FF8 0:$1855 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1856 d15:data:reset=0:$D859 1:$1859 1:000011:A1=A7:D3=D4 tst d0 1:$185A 1:000011:A1=A7:D3=D0 tst $0001 : bit0 1:$185B d0:data:reset=0:$0001 TRAP 0 if 0 // * TRAP 0:$185C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$185D 0:data:reset=0:$585C 0:$185E 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$185F d15:data:reset=0:$7FF8 1:$185C 1:000011:A1=A0:D0=D0 then // * TRAP 1:$185D d15:data:reset=0:$5860 0:$1860 0:000011:A1=A7:D3=D5 tst d1 0:$1861 0:000011:A1=A7:D3=D0 tst $fffe : bit0 0:$1862 d0:data:reset=0:$FFFE TRAP 1 if 1 // * TRAP 1:$1863 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1864 1:data:reset=0:$D863 1:$1865 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$1866 d15:data:reset=0:$7FF8 0:$1863 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1864 d15:data:reset=0:$D867 1:$1867 1:000011:A1=A7:D3=D4 tst d0 1:$1868 1:000011:A1=A7:D3=D0 tst $ffff : bit0 1:$1869 d0:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$186A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$186B 0:data:reset=0:$586A 0:$186C 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$186D d15:data:reset=0:$7FF8 1:$186A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$186B d15:data:reset=0:$586E // ---- bit15 ------------------------------------------------ 0:$186E 0:000011:A1=A7:D5=D0 ld d1,~0 0:$186F 0:data:reset=0:$FFFF 0:$1870 0:000011:A1=A7:D4=D0 ld d0,0 0:$1871 0:data:reset=0:$0000 0:$1872 0:000011:A1=A0:D3=D5 tst d1 0:$1873 0:000011:A1=A0:D3=D0 tst $0000 : bit15 0:$1874 d15:data:reset=0:$0000 TRAP 1 if 1 // * TRAP 1:$1875 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1876 1:data:reset=0:$D875 1:$1877 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$1878 d15:data:reset=0:$7FF8 0:$1875 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1876 d15:data:reset=0:$D879 1:$1879 1:000011:A1=A7:D3=D4 tst d0 1:$187A 1:000011:A1=A7:D3=D0 tst $8000 : bit15 1:$187B d15:data:reset=0:$8000 TRAP 0 if 0 // * TRAP 0:$187C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$187D 0:data:reset=0:$587C 0:$187E 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$187F d15:data:reset=0:$7FF8 1:$187C 1:000011:A1=A0:D0=D0 then // * TRAP 1:$187D d15:data:reset=0:$5880 0:$1880 0:000011:A1=A7:D3=D5 tst d1 0:$1881 0:000011:A1=A7:D3=D0 tst $7fff : bit15 0:$1882 d15:data:reset=0:$7FFF TRAP 1 if 1 // * TRAP 1:$1883 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1884 1:data:reset=0:$D883 1:$1885 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$1886 d15:data:reset=0:$7FF8 0:$1883 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1884 d15:data:reset=0:$D887 1:$1887 1:000011:A1=A7:D3=D4 tst d0 1:$1888 1:000011:A1=A7:D3=D0 tst $ffff : bit15 1:$1889 d15:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$188A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$188B 0:data:reset=0:$588A 0:$188C 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$188D d15:data:reset=0:$7FF8 1:$188A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$188B d15:data:reset=0:$588E // ---- cy ------------------------------------------------ // note: "add dreg" wird immer als doppel-opcode assembliert, wg. ripple-cy // "add ival" wird über dtmp realisiert, ist also auch ein "add dreg" // man kann deswegen nie "add $1234 : cy" schreiben, weil der cy-Test nicht auf dem ival // platziert werden kann, weil das add selbst eben ein "add dtmp" ist. 0:$188E 0:000011:A1=A7:D8=D0 ld alu,$7000 0:$188F 0:data:reset=0:$7000 0:$1890 0:000000:A1=A0:D7=D0 add $8000 // *dtmp* 0:$1891 0:data:reset=0:$8000 0:$1892 0:000000:A1=A0:D3=D7 0:$1893 0:000000:A1=A0:D8=D7 TRAP cy 0:$1894 cy:data:reset=0:$0000 if cy // * TRAP 1:$1895 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1896 1:data:reset=0:$D895 1:$1897 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$1898 d15:data:reset=0:$7FF8 0:$1895 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1896 d15:data:reset=0:$D899 1:$1899 1:000000:A1=A7:D7=D0 add $0FFF // *dtmp* 1:$189A 1:data:reset=0:$0FFF 1:$189B 1:000000:A1=A7:D3=D7 1:$189C 1:000000:A1=A7:D8=D7 TRAP cy 1:$189D cy:data:reset=0:$0000 if cy // * TRAP 1:$189E 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$189F 1:data:reset=0:$D89E 1:$18A0 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$18A1 d15:data:reset=0:$7FF8 0:$189E 0:000011:A1=A7:D0=D0 then // * TRAP 0:$189F d15:data:reset=0:$D8A2 1:$18A2 1:000000:A1=A7:D7=D0 add 1 // *dtmp* 1:$18A3 1:data:reset=0:$0001 1:$18A4 1:000000:A1=A0:D3=D7 1:$18A5 1:000000:A1=A0:D8=D7 TRAP !cy 1:$18A6 cy:data:reset=0:$0000 if !cy // * TRAP 0:$18A7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$18A8 0:data:reset=0:$58A7 0:$18A9 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$18AA d15:data:reset=0:$7FF8 1:$18A7 1:000011:A1=A0:D0=D0 then // * TRAP 1:$18A8 d15:data:reset=0:$58AB 0:$18AB 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$18AC 0:data:reset=0:$FFFF 0:$18AD 0:000000:A1=A7:D7=D0 add 0 // *dtmp* 0:$18AE 0:data:reset=0:$0000 0:$18AF 0:000000:A1=A0:D3=D7 0:$18B0 0:000000:A1=A0:D8=D7 TRAP cy 0:$18B1 cy:data:reset=0:$0000 if cy // * TRAP 1:$18B2 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$18B3 1:data:reset=0:$D8B2 1:$18B4 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$18B5 d15:data:reset=0:$7FF8 0:$18B2 0:000011:A1=A0:D0=D0 then // * TRAP 0:$18B3 d15:data:reset=0:$D8B6 1:$18B6 1:000000:A1=A7:D7=D0 add 1 // *dtmp* 1:$18B7 1:data:reset=0:$0001 1:$18B8 1:000000:A1=A0:D3=D7 1:$18B9 1:000000:A1=A0:D8=D7 TRAP !cy 1:$18BA cy:data:reset=0:$0000 if !cy // * TRAP 0:$18BB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$18BC 0:data:reset=0:$58BB 0:$18BD 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$18BE d15:data:reset=0:$7FF8 1:$18BB 1:000011:A1=A0:D0=D0 then // * TRAP 1:$18BC d15:data:reset=0:$58BF 0:$18BF 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$18C0 0:data:reset=0:$FFFF 0:$18C1 0:000000:A1=A7:D8=D8 add alu // *dtmp* TRAP !cy 0:$18C2 cy:data:reset=0:$0000 if !cy // * TRAP 0:$18C3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$18C4 0:data:reset=0:$58C3 0:$18C5 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$18C6 d15:data:reset=0:$7FF8 1:$18C3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$18C4 d15:data:reset=0:$58C7 0:$18C7 0:000100:A1=A7:D7=D0 add_c 0 // *dtmp* 0:$18C8 0:data:reset=0:$0000 0:$18C9 0:000100:A1=A0:D3=D7 0:$18CA 0:000100:A1=A0:D8=D7 TRAP cy 0:$18CB cy:data:reset=0:$0000 if cy // * TRAP 1:$18CC 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$18CD 1:data:reset=0:$D8CC 1:$18CE 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$18CF d15:data:reset=0:$7FF8 0:$18CC 0:000011:A1=A0:D0=D0 then // * TRAP 0:$18CD d15:data:reset=0:$D8D0 1:$18D0 1:000100:A1=A7:D7=D0 add_c 0 // *dtmp* 1:$18D1 1:data:reset=0:$0000 1:$18D2 1:000100:A1=A0:D3=D7 1:$18D3 1:000100:A1=A0:D8=D7 TRAP !cy 1:$18D4 cy:data:reset=0:$0000 if !cy // * TRAP 0:$18D5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$18D6 0:data:reset=0:$58D5 0:$18D7 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$18D8 d15:data:reset=0:$7FF8 1:$18D5 1:000011:A1=A0:D0=D0 then // * TRAP 1:$18D6 d15:data:reset=0:$58D9 0:$18D9 0:000011:A1=A7:D8=D0 ld alu,$8000 0:$18DA 0:data:reset=0:$8000 0:$18DB 0:000000:A1=A0:D8=D8 add alu TRAP !cy 0:$18DC cy:data:reset=0:$0000 if !cy // * TRAP 0:$18DD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$18DE 0:data:reset=0:$58DD 0:$18DF 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$18E0 d15:data:reset=0:$7FF8 1:$18DD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$18DE d15:data:reset=0:$58E1 0:$18E1 0:000100:A1=A7:D7=D0 add_c $ffff // *dtmp* 0:$18E2 0:data:reset=0:$FFFF 0:$18E3 0:000100:A1=A7:D3=D7 0:$18E4 0:000100:A1=A7:D8=D7 TRAP !cy 0:$18E5 cy:data:reset=0:$0000 if !cy // * TRAP 0:$18E6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$18E7 0:data:reset=0:$58E6 0:$18E8 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$18E9 d15:data:reset=0:$7FF8 1:$18E6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$18E7 d15:data:reset=0:$58EA // ---- ovfl ------------------------------------------------ 0:$18EA 0:000011:A1=A7:D8=D0 ld alu,$5000 0:$18EB 0:data:reset=0:$5000 0:$18EC 0:000000:A1=A0:D7=D0 add $1000 // $5000 -> $6000 !ovfl *dtmp* 0:$18ED 0:data:reset=0:$1000 0:$18EE 0:000000:A1=A0:D3=D7 0:$18EF 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$18F0 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$18F1 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$18F2 1:data:reset=0:$D8F1 1:$18F3 1:000011:A1=A0:D0=D0 jp error // * TRAP 1:$18F4 d15:data:reset=0:$7FF8 0:$18F1 0:000011:A1=A0:D0=D0 then // * TRAP 0:$18F2 d15:data:reset=0:$D8F5 1:$18F5 1:000000:A1=A7:D7=D0 add $3000 // $6000 -> $9000 ovfl *dtmp* 1:$18F6 1:data:reset=0:$3000 1:$18F7 1:000000:A1=A0:D3=D7 1:$18F8 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$18F9 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$18FA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$18FB 0:data:reset=0:$58FA 0:$18FC 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$18FD d15:data:reset=0:$7FF8 1:$18FA 1:000011:A1=A0:D0=D0 then // * TRAP 1:$18FB d15:data:reset=0:$58FE 0:$18FE 0:000000:A1=A7:D7=D0 add $3000 // $9000 -> $C000 !ovfl *dtmp* 0:$18FF 0:data:reset=0:$3000 0:$1900 0:000000:A1=A0:D3=D7 0:$1901 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$1902 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1903 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1904 1:data:reset=0:$D903 1:$1905 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1906 d15:data:reset=0:$7FF8 0:$1903 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1904 d15:data:reset=0:$D907 1:$1907 1:000000:A1=A7:D7=D0 add $5000 // $C000 -> $1000 !ovfl *dtmp* 1:$1908 1:data:reset=0:$5000 1:$1909 1:000000:A1=A0:D3=D7 1:$190A 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$190B ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$190C 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$190D 1:data:reset=0:$D90C 1:$190E 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$190F d15:data:reset=0:$7FF8 0:$190C 0:000011:A1=A7:D0=D0 then // * TRAP 0:$190D d15:data:reset=0:$D910 1:$1910 1:000000:A1=A7:D7=D0 add $B000 // $1000 -> $C000 !ovfl *dtmp* 1:$1911 1:data:reset=0:$B000 1:$1912 1:000000:A1=A0:D3=D7 1:$1913 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$1914 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1915 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1916 1:data:reset=0:$D915 1:$1917 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1918 d15:data:reset=0:$7FF8 0:$1915 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1916 d15:data:reset=0:$D919 1:$1919 1:000000:A1=A7:D7=D0 add $D000 // $C000 -> $9000 !ovfl *dtmp* 1:$191A 1:data:reset=0:$D000 1:$191B 1:000000:A1=A0:D3=D7 1:$191C 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$191D ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$191E 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$191F 1:data:reset=0:$D91E 1:$1920 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1921 d15:data:reset=0:$7FF8 0:$191E 0:000011:A1=A7:D0=D0 then // * TRAP 0:$191F d15:data:reset=0:$D922 1:$1922 1:000000:A1=A7:D7=D0 add $D000 // $9000 -> $6000 ovfl *dtmp* 1:$1923 1:data:reset=0:$D000 1:$1924 1:000000:A1=A0:D3=D7 1:$1925 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$1926 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$1927 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1928 0:data:reset=0:$5927 0:$1929 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$192A d15:data:reset=0:$7FF8 1:$1927 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1928 d15:data:reset=0:$592B 0:$192B 0:000000:A1=A7:D7=D0 add $E000 // $6000 -> $4000 !ovfl *dtmp* 0:$192C 0:data:reset=0:$E000 0:$192D 0:000000:A1=A0:D3=D7 0:$192E 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$192F ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1930 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1931 1:data:reset=0:$D930 1:$1932 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1933 d15:data:reset=0:$7FF8 0:$1930 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1931 d15:data:reset=0:$D934 1:$1934 1:000011:A1=A7:D8=D0 ld alu,$7000 1:$1935 1:data:reset=0:$7000 1:$1936 1:000000:A1=A0:D7=D0 add $1000 // $8000 ovfl *dtmp* 1:$1937 1:data:reset=0:$1000 1:$1938 1:000000:A1=A0:D3=D7 1:$1939 1:000000:A1=A0:D8=D7 TRAP !ovfl 1:$193A ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$193B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$193C 0:data:reset=0:$593B 0:$193D 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$193E d15:data:reset=0:$7FF8 1:$193B 1:000011:A1=A0:D0=D0 then // * TRAP 1:$193C d15:data:reset=0:$593F 0:$193F 0:000000:A1=A7:D7=D0 add $7000 // $F000 !ovfl *dtmp* 0:$1940 0:data:reset=0:$7000 0:$1941 0:000000:A1=A0:D3=D7 0:$1942 0:000000:A1=A0:D8=D7 TRAP ovfl 0:$1943 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1944 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1945 1:data:reset=0:$D944 1:$1946 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1947 d15:data:reset=0:$7FF8 0:$1944 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1945 d15:data:reset=0:$D948 1:$1948 1:000000:A1=A7:D7=D0 add $7000 // $6000 !ovfl *dtmp* 1:$1949 1:data:reset=0:$7000 1:$194A 1:000000:A1=A0:D3=D7 1:$194B 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$194C ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$194D 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$194E 1:data:reset=0:$D94D 1:$194F 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1950 d15:data:reset=0:$7FF8 0:$194D 0:000011:A1=A7:D0=D0 then // * TRAP 0:$194E d15:data:reset=0:$D951 1:$1951 1:000100:A1=A7:D7=D0 add_c $1fff // $8000 ovfl *dtmp* 1:$1952 1:data:reset=0:$1FFF 1:$1953 1:000100:A1=A7:D3=D7 1:$1954 1:000100:A1=A7:D8=D7 TRAP !ovfl 1:$1955 ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$1956 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1957 0:data:reset=0:$5956 0:$1958 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$1959 d15:data:reset=0:$7FF8 1:$1956 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1957 d15:data:reset=0:$595A 0:$195A 0:000000:A1=A7:D7=D0 add -1 // $7FFF ovfl *dtmp* 0:$195B 0:data:reset=0:$FFFF 0:$195C 0:000000:A1=A7:D3=D7 0:$195D 0:000000:A1=A7:D8=D7 TRAP !ovfl 0:$195E ovf:data:reset=0:$0000 if !ovfl // * TRAP 0:$195F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1960 0:data:reset=0:$595F 0:$1961 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$1962 d15:data:reset=0:$7FF8 1:$195F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1960 d15:data:reset=0:$5963 0:$1963 0:000100:A1=A7:D7=D0 add_c $8000 // $0000 !ovfl *dtmp* 0:$1964 0:data:reset=0:$8000 0:$1965 0:000100:A1=A0:D3=D7 0:$1966 0:000100:A1=A0:D8=D7 TRAP ovfl 0:$1967 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1968 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1969 1:data:reset=0:$D968 1:$196A 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$196B d15:data:reset=0:$7FF8 0:$1968 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1969 d15:data:reset=0:$D96C 1:$196C 1:000011:A1=A7:D8=D0 ld alu,$7fff 1:$196D 1:data:reset=0:$7FFF 1:$196E 1:000000:A1=A7:D7=D0 add $8000 // *dtmp* 1:$196F 1:data:reset=0:$8000 1:$1970 1:000000:A1=A0:D3=D7 1:$1971 1:000000:A1=A0:D8=D7 TRAP ovfl 1:$1972 ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$1973 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1974 1:data:reset=0:$D973 1:$1975 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1976 d15:data:reset=0:$7FF8 0:$1973 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1974 d15:data:reset=0:$D977 1:$1977 1:000011:A1=A7:D8=D0 ld alu,$7fff 1:$1978 1:data:reset=0:$7FFF 1:$1979 1:000100:A1=A7:D7=D0 add_c $8000 // *dtmp* 1:$197A 1:data:reset=0:$8000 1:$197B 1:000100:A1=A0:D3=D7 1:$197C 1:000100:A1=A0:D8=D7 TRAP ovfl 1:$197D ovf:data:reset=0:$0000 if ovfl // * TRAP 1:$197E 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$197F 1:data:reset=0:$D97E 1:$1980 1:000011:A1=A1:D0=D0 jp error // * TRAP 1:$1981 d15:data:reset=0:$7FF8 0:$197E 0:000011:A1=A7:D0=D0 then // * TRAP 0:$197F d15:data:reset=0:$D982 // --- file: "flags.asm" --- #include "alu.asm" // +++ file: "alu.asm" +++ // Test ALU // test alu register: 1:$1982 1:000011:A1=A7:D8=D0 ld alu,0 1:$1983 1:data:reset=0:$0000 1:$1984 1:000011:A1=A0:D3=D8 tst alu TRAP !z 1:$1985 z:data:reset=0:$0000 if !z // * TRAP 0:$1986 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1987 0:data:reset=0:$5986 0:$1988 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$1989 d15:data:reset=0:$7FF8 1:$1986 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1987 d15:data:reset=0:$598A 0:$198A 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$198B 0:data:reset=0:$FFFF 0:$198C 0:000001:A1=A7:D3=D0 equ $ffff : z 0:$198D z:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$198E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$198F 0:data:reset=0:$598E 0:$1990 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$1991 d15:data:reset=0:$7FF8 1:$198E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$198F d15:data:reset=0:$5992 0:$1992 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$1993 0:data:reset=0:$AA55 0:$1994 0:000001:A1=A2:D3=D0 equ $aa55 : z 0:$1995 z:data:reset=0:$AA55 TRAP 0 if 0 // * TRAP 0:$1996 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1997 0:data:reset=0:$5996 0:$1998 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$1999 d15:data:reset=0:$7FF8 1:$1996 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1997 d15:data:reset=0:$599A 0:$199A 0:000011:A1=A7:D8=D0 ld alu,$55aa 0:$199B 0:data:reset=0:$55AA 0:$199C 0:000001:A1=A5:D3=D0 equ $55aa : z 0:$199D z:data:reset=0:$55AA TRAP 0 if 0 // * TRAP 0:$199E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$199F 0:data:reset=0:$599E 0:$19A0 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$19A1 d15:data:reset=0:$7FF8 1:$199E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$199F d15:data:reset=0:$59A2 // test cpl: 0:$19A2 0:001011:A1=A7:D8=D0 nop,ival.oe,alu.clk,load_cpl // load alu,!0 0:$19A3 0:data:reset=0:$0000 dw 0 0:$19A4 0:000001:A1=A0:D3=D0 equ $ffff : z 0:$19A5 z:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$19A6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$19A7 0:data:reset=0:$59A6 0:$19A8 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$19A9 d15:data:reset=0:$7FF8 1:$19A6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$19A7 d15:data:reset=0:$59AA 0:$19AA 0:001011:A1=A7:D8=D0 nop,ival.oe,alu.clk,load_cpl // load alu,!$ffff 0:$19AB 0:data:reset=0:$FFFF dw $ffff 0:$19AC 0:000001:A1=A7:D3=D0 equ $0000 : z 0:$19AD z:data:reset=0:$0000 TRAP 0 if 0 // * TRAP 0:$19AE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$19AF 0:data:reset=0:$59AE 0:$19B0 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$19B1 d15:data:reset=0:$7FF8 1:$19AE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$19AF d15:data:reset=0:$59B2 0:$19B2 0:001011:A1=A7:D8=D0 nop,ival.oe,alu.clk,load_cpl // load alu,!xxxx 0:$19B3 0:data:reset=0:$55AA dw $55aa 0:$19B4 0:000001:A1=A5:D3=D0 equ $aa55 : z 0:$19B5 z:data:reset=0:$AA55 TRAP 0 if 0 // * TRAP 0:$19B6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$19B7 0:data:reset=0:$59B6 0:$19B8 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$19B9 d15:data:reset=0:$7FF8 1:$19B6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$19B7 d15:data:reset=0:$59BA 0:$19BA 0:001011:A1=A7:D8=D0 nop,ival.oe,alu.clk,load_cpl // load alu,!xxxx 0:$19BB 0:data:reset=0:$AA55 dw $aa55 0:$19BC 0:000001:A1=A2:D3=D0 equ $55aa : z 0:$19BD z:data:reset=0:$55AA TRAP 0 if 0 // * TRAP 0:$19BE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$19BF 0:data:reset=0:$59BE 0:$19C0 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$19C1 d15:data:reset=0:$7FF8 1:$19BE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$19BF d15:data:reset=0:$59C2 // test xor: 0:$19C2 0:000011:A1=A7:D8=D0 ld alu,$0000 // $0000 ^ $0000 0:$19C3 0:data:reset=0:$0000 0:$19C4 0:000001:A1=A0:D8=D0 xor $0000 : z 0:$19C5 z:data:reset=0:$0000 TRAP 0 if 0 // * TRAP 0:$19C6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$19C7 0:data:reset=0:$59C6 0:$19C8 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$19C9 d15:data:reset=0:$7FF8 1:$19C6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$19C7 d15:data:reset=0:$59CA 0:$19CA 0:000001:A1=A7:D3=D0 equ $0000 : z 0:$19CB z:data:reset=0:$0000 TRAP 0 if 0 // * TRAP 0:$19CC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$19CD 0:data:reset=0:$59CC 0:$19CE 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$19CF d15:data:reset=0:$7FF8 1:$19CC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$19CD d15:data:reset=0:$59D0 0:$19D0 0:000011:A1=A7:D8=D0 ld alu,$ffff // $ffff ^ $ffff 0:$19D1 0:data:reset=0:$FFFF 0:$19D2 0:000001:A1=A7:D8=D0 xor $ffff : z 0:$19D3 z:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$19D4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$19D5 0:data:reset=0:$59D4 0:$19D6 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$19D7 d15:data:reset=0:$7FF8 1:$19D4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$19D5 d15:data:reset=0:$59D8 0:$19D8 0:000001:A1=A7:D3=D0 equ $0000 : z 0:$19D9 z:data:reset=0:$0000 TRAP 0 if 0 // * TRAP 0:$19DA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$19DB 0:data:reset=0:$59DA 0:$19DC 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$19DD d15:data:reset=0:$7FF8 1:$19DA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$19DB d15:data:reset=0:$59DE 0:$19DE 0:000011:A1=A7:D8=D0 ld alu,$ffff // $ffff ^ $aa55 0:$19DF 0:data:reset=0:$FFFF 0:$19E0 0:000001:A1=A7:D8=D0 xor $aa55 0:$19E1 0:data:reset=0:$AA55 0:$19E2 0:000001:A1=A2:D3=D0 equ $55aa : z 0:$19E3 z:data:reset=0:$55AA TRAP 0 if 0 // * TRAP 0:$19E4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$19E5 0:data:reset=0:$59E4 0:$19E6 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$19E7 d15:data:reset=0:$7FF8 1:$19E4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$19E5 d15:data:reset=0:$59E8 0:$19E8 0:000011:A1=A7:D8=D0 ld alu,$55aa // $55aa ^ $ffff 0:$19E9 0:data:reset=0:$55AA 0:$19EA 0:000001:A1=A5:D8=D0 xor $ffff 0:$19EB 0:data:reset=0:$FFFF 0:$19EC 0:000001:A1=A7:D3=D0 equ $aa55 : z 0:$19ED z:data:reset=0:$AA55 TRAP 0 if 0 // * TRAP 0:$19EE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$19EF 0:data:reset=0:$59EE 0:$19F0 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$19F1 d15:data:reset=0:$7FF8 1:$19EE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$19EF d15:data:reset=0:$59F2 0:$19F2 0:000011:A1=A7:D8=D0 ld alu,$0000 // $0000 ^ $aa55 0:$19F3 0:data:reset=0:$0000 0:$19F4 0:000001:A1=A0:D8=D0 xor $aa55 0:$19F5 0:data:reset=0:$AA55 0:$19F6 0:000001:A1=A2:D3=D0 equ $aa55 : z 0:$19F7 z:data:reset=0:$AA55 TRAP 0 if 0 // * TRAP 0:$19F8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$19F9 0:data:reset=0:$59F8 0:$19FA 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$19FB d15:data:reset=0:$7FF8 1:$19F8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$19F9 d15:data:reset=0:$59FC 0:$19FC 0:000011:A1=A7:D8=D0 ld alu,$55aa // $55aa ^ $0000 0:$19FD 0:data:reset=0:$55AA 0:$19FE 0:000001:A1=A5:D8=D0 xor $0000 0:$19FF 0:data:reset=0:$0000 0:$1A00 0:000001:A1=A0:D3=D0 equ $55aa : z 0:$1A01 z:data:reset=0:$55AA TRAP 0 if 0 // * TRAP 0:$1A02 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A03 0:data:reset=0:$5A02 0:$1A04 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A05 d15:data:reset=0:$7FF8 1:$1A02 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A03 d15:data:reset=0:$5A06 // test and: 0:$1A06 0:000011:A1=A7:D8=D0 ld alu,$0000 0:$1A07 0:data:reset=0:$0000 0:$1A08 0:000010:A1=A0:D8=D0 and $0000 : z 0:$1A09 z:data:reset=0:$0000 TRAP 0 if 0 // * TRAP 0:$1A0A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A0B 0:data:reset=0:$5A0A 0:$1A0C 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A0D d15:data:reset=0:$7FF8 1:$1A0A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A0B d15:data:reset=0:$5A0E 0:$1A0E 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$1A0F 0:data:reset=0:$FFFF 0:$1A10 0:000010:A1=A7:D8=D0 and 1 0:$1A11 0:data:reset=0:$0001 0:$1A12 0:000001:A1=A0:D3=D0 equ 1 : z 0:$1A13 z:data:reset=0:$0001 TRAP 0 if 0 // * TRAP 0:$1A14 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A15 0:data:reset=0:$5A14 0:$1A16 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A17 d15:data:reset=0:$7FF8 1:$1A14 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A15 d15:data:reset=0:$5A18 0:$1A18 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$1A19 0:data:reset=0:$FFFF 0:$1A1A 0:000010:A1=A7:D8=D0 and $8000 0:$1A1B 0:data:reset=0:$8000 0:$1A1C 0:000001:A1=A0:D3=D0 equ $8000 : z 0:$1A1D z:data:reset=0:$8000 TRAP 0 if 0 // * TRAP 0:$1A1E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A1F 0:data:reset=0:$5A1E 0:$1A20 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A21 d15:data:reset=0:$7FF8 1:$1A1E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A1F d15:data:reset=0:$5A22 0:$1A22 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$1A23 0:data:reset=0:$FFFF 0:$1A24 0:000010:A1=A7:D8=D0 and $fffe 0:$1A25 0:data:reset=0:$FFFE 0:$1A26 0:000001:A1=A7:D3=D0 equ $fffe : z 0:$1A27 z:data:reset=0:$FFFE TRAP 0 if 0 // * TRAP 0:$1A28 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A29 0:data:reset=0:$5A28 0:$1A2A 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A2B d15:data:reset=0:$7FF8 1:$1A28 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A29 d15:data:reset=0:$5A2C 0:$1A2C 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$1A2D 0:data:reset=0:$FFFF 0:$1A2E 0:000010:A1=A7:D8=D0 and $7fff 0:$1A2F 0:data:reset=0:$7FFF 0:$1A30 0:000001:A1=A7:D3=D0 equ $7fff : z 0:$1A31 z:data:reset=0:$7FFF TRAP 0 if 0 // * TRAP 0:$1A32 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A33 0:data:reset=0:$5A32 0:$1A34 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A35 d15:data:reset=0:$7FF8 1:$1A32 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A33 d15:data:reset=0:$5A36 0:$1A36 0:000011:A1=A7:D8=D0 ld alu,$55aa 0:$1A37 0:data:reset=0:$55AA 0:$1A38 0:000010:A1=A5:D8=D0 and $aa55 : z 0:$1A39 z:data:reset=0:$AA55 TRAP 0 if 0 // * TRAP 0:$1A3A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A3B 0:data:reset=0:$5A3A 0:$1A3C 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A3D d15:data:reset=0:$7FF8 1:$1A3A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A3B d15:data:reset=0:$5A3E 0:$1A3E 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$1A3F 0:data:reset=0:$FFFF 0:$1A40 0:000010:A1=A7:D8=D0 and $55aa 0:$1A41 0:data:reset=0:$55AA 0:$1A42 0:000001:A1=A5:D3=D0 equ $55aa : z 0:$1A43 z:data:reset=0:$55AA TRAP 0 if 0 // * TRAP 0:$1A44 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A45 0:data:reset=0:$5A44 0:$1A46 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A47 d15:data:reset=0:$7FF8 1:$1A44 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A45 d15:data:reset=0:$5A48 0:$1A48 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$1A49 0:data:reset=0:$AA55 0:$1A4A 0:000010:A1=A2:D8=D0 and $ffff 0:$1A4B 0:data:reset=0:$FFFF 0:$1A4C 0:000001:A1=A7:D3=D0 equ $aa55 : z 0:$1A4D z:data:reset=0:$AA55 TRAP 0 if 0 // * TRAP 0:$1A4E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A4F 0:data:reset=0:$5A4E 0:$1A50 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A51 d15:data:reset=0:$7FF8 1:$1A4E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A4F d15:data:reset=0:$5A52 0:$1A52 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$1A53 0:data:reset=0:$AA55 // and ~$aaaa 0:$1A54 0:001010:A1=A2:D8=D0 nop, ival.oe,alu.clk, alu_fu=2, nc, alu_cpl=1 0:$1A55 0:data:reset=0:$AAAA dw $aaaa 0:$1A56 0:000001:A1=A2:D3=D0 equ $0055 : z 0:$1A57 z:data:reset=0:$0055 TRAP 0 if 0 // * TRAP 0:$1A58 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A59 0:data:reset=0:$5A58 0:$1A5A 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A5B d15:data:reset=0:$7FF8 1:$1A58 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A59 d15:data:reset=0:$5A5C // test or: 0:$1A5C 0:000011:A1=A7:D8=D0 ld alu,$0000 0:$1A5D 0:data:reset=0:$0000 0:$1A5E 0:000110:A1=A0:D8=D0 or $0000 : z 0:$1A5F z:data:reset=0:$0000 TRAP 0 if 0 // * TRAP 0:$1A60 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A61 0:data:reset=0:$5A60 0:$1A62 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A63 d15:data:reset=0:$7FF8 1:$1A60 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A61 d15:data:reset=0:$5A64 0:$1A64 0:000011:A1=A7:D8=D0 ld alu,$55aa 0:$1A65 0:data:reset=0:$55AA 0:$1A66 0:000110:A1=A5:D8=D0 or $aa55 0:$1A67 0:data:reset=0:$AA55 0:$1A68 0:000001:A1=A2:D3=D0 equ $ffff : z 0:$1A69 z:data:reset=0:$FFFF TRAP 0 if 0 // * TRAP 0:$1A6A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A6B 0:data:reset=0:$5A6A 0:$1A6C 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A6D d15:data:reset=0:$7FF8 1:$1A6A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A6B d15:data:reset=0:$5A6E 0:$1A6E 0:000011:A1=A7:D8=D0 ld alu,$0000 0:$1A6F 0:data:reset=0:$0000 0:$1A70 0:000110:A1=A0:D8=D0 or 1 0:$1A71 0:data:reset=0:$0001 0:$1A72 0:000001:A1=A0:D3=D0 equ 1 : z 0:$1A73 z:data:reset=0:$0001 TRAP 0 if 0 // * TRAP 0:$1A74 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A75 0:data:reset=0:$5A74 0:$1A76 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A77 d15:data:reset=0:$7FF8 1:$1A74 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A75 d15:data:reset=0:$5A78 0:$1A78 0:000011:A1=A7:D8=D0 ld alu,$0000 0:$1A79 0:data:reset=0:$0000 0:$1A7A 0:000110:A1=A0:D8=D0 or $8000 0:$1A7B 0:data:reset=0:$8000 0:$1A7C 0:000001:A1=A0:D3=D0 equ $8000 : z 0:$1A7D z:data:reset=0:$8000 TRAP 0 if 0 // * TRAP 0:$1A7E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A7F 0:data:reset=0:$5A7E 0:$1A80 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A81 d15:data:reset=0:$7FF8 1:$1A7E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A7F d15:data:reset=0:$5A82 0:$1A82 0:000011:A1=A7:D8=D0 ld alu,$0F0F 0:$1A83 0:data:reset=0:$0F0F 0:$1A84 0:000110:A1=A7:D8=D0 or $55aa 0:$1A85 0:data:reset=0:$55AA 0:$1A86 0:000001:A1=A5:D3=D0 equ $5FaF : z 0:$1A87 z:data:reset=0:$5FAF TRAP 0 if 0 // * TRAP 0:$1A88 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A89 0:data:reset=0:$5A88 0:$1A8A 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A8B d15:data:reset=0:$7FF8 1:$1A88 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A89 d15:data:reset=0:$5A8C 0:$1A8C 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$1A8D 0:data:reset=0:$AA55 0:$1A8E 0:000110:A1=A2:D8=D0 or $f0f0 0:$1A8F 0:data:reset=0:$F0F0 0:$1A90 0:000001:A1=A0:D3=D0 equ $FaF5 : z 0:$1A91 z:data:reset=0:$FAF5 TRAP 0 if 0 // * TRAP 0:$1A92 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A93 0:data:reset=0:$5A92 0:$1A94 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A95 d15:data:reset=0:$7FF8 1:$1A92 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A93 d15:data:reset=0:$5A96 0:$1A96 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$1A97 0:data:reset=0:$AA55 // or ~$aaaa 0:$1A98 0:001110:A1=A2:D8=D0 nop,ival.oe,alu.clk, alu_fu=2, cy, alu_cpl=1 0:$1A99 0:data:reset=0:$AAAA dw $aaaa 0:$1A9A 0:000001:A1=A2:D3=D0 equ $ff55 : z 0:$1A9B z:data:reset=0:$FF55 TRAP 0 if 0 // * TRAP 0:$1A9C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1A9D 0:data:reset=0:$5A9C 0:$1A9E 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1A9F d15:data:reset=0:$7FF8 1:$1A9C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1A9D d15:data:reset=0:$5AA0 // add, sub: // instr test_addn(V1,V2) // ld d1,V1 // ld d2,V2 // xor alu // // add d1 // add_c d2 // equ V1+V2+1 : z // jp 0,error // sub d2 // sub_nc d1 // TRAP !z // // add_c d1 // add d2 // equ V1+V2+1 : z // TRAP 0 // sub_nc d2 // sub d1 // TRAP !z // end test_addn 0,0 0:$1AA0 0:000011:A1=A7:D5=D0 ld d1,0 // * test_addn 0:$1AA1 0:data:reset=0:$0000 0:$1AA2 0:000011:A1=A0:D6=D0 ld d2,0 // * test_addn 0:$1AA3 0:data:reset=0:$0000 0:$1AA4 0:000001:A1=A0:D8=D8 xor alu // * test_addn 0:$1AA5 0:000000:A1=A0:D3=D5 add d1 // * test_addn 0:$1AA6 0:000000:A1=A0:D8=D5 0:$1AA7 0:000100:A1=A0:D3=D6 add_c d2 // * test_addn 0:$1AA8 0:000100:A1=A0:D8=D6 0:$1AA9 0:000001:A1=A0:D3=D0 equ 0+0+1 : z // * test_addn 0:$1AAA z:data:reset=0:$0001 0:$1AAB 0:000011:A1=A0:D0=D0 jp 0,error // * test_addn 0:$1AAC d15:data:reset=0:$7FF8 1:$1AAB 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$1AAC 1:001100:A1=A7:D8=D6 1:$1AAD 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$1AAE 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$1AAF z:data:reset=0:$0000 if !z // * TRAP 0:$1AB0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1AB1 0:data:reset=0:$5AB0 0:$1AB2 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1AB3 d15:data:reset=0:$7FF8 1:$1AB0 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1AB1 d15:data:reset=0:$5AB4 0:$1AB4 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$1AB5 0:000100:A1=A7:D8=D5 0:$1AB6 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$1AB7 0:000000:A1=A7:D8=D6 0:$1AB8 0:000001:A1=A7:D3=D0 equ 0+0+1 : z // * test_addn 0:$1AB9 z:data:reset=0:$0001 TRAP 0 // * test_addn if 0 // * TRAP 0:$1ABA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1ABB 0:data:reset=0:$5ABA 0:$1ABC 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1ABD d15:data:reset=0:$7FF8 1:$1ABA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1ABB d15:data:reset=0:$5ABE 0:$1ABE 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$1ABF 0:001000:A1=A7:D8=D6 0:$1AC0 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$1AC1 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$1AC2 z:data:reset=0:$0000 if !z // * TRAP 0:$1AC3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1AC4 0:data:reset=0:$5AC3 0:$1AC5 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1AC6 d15:data:reset=0:$7FF8 1:$1AC3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1AC4 d15:data:reset=0:$5AC7 test_addn $ffff,0 0:$1AC7 0:000011:A1=A7:D5=D0 ld d1,$ffff // * test_addn 0:$1AC8 0:data:reset=0:$FFFF 0:$1AC9 0:000011:A1=A7:D6=D0 ld d2,0 // * test_addn 0:$1ACA 0:data:reset=0:$0000 0:$1ACB 0:000001:A1=A0:D8=D8 xor alu // * test_addn 0:$1ACC 0:000000:A1=A0:D3=D5 add d1 // * test_addn 0:$1ACD 0:000000:A1=A0:D8=D5 0:$1ACE 0:000100:A1=A0:D3=D6 add_c d2 // * test_addn 0:$1ACF 0:000100:A1=A0:D8=D6 0:$1AD0 0:000001:A1=A0:D3=D0 equ $ffff+0+1 : z // * test_addn 0:$1AD1 z:data:reset=0:$0000 0:$1AD2 0:000011:A1=A0:D0=D0 jp 0,error // * test_addn 0:$1AD3 d15:data:reset=0:$7FF8 1:$1AD2 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$1AD3 1:001100:A1=A7:D8=D6 1:$1AD4 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$1AD5 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$1AD6 z:data:reset=0:$0000 if !z // * TRAP 0:$1AD7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1AD8 0:data:reset=0:$5AD7 0:$1AD9 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1ADA d15:data:reset=0:$7FF8 1:$1AD7 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1AD8 d15:data:reset=0:$5ADB 0:$1ADB 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$1ADC 0:000100:A1=A7:D8=D5 0:$1ADD 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$1ADE 0:000000:A1=A7:D8=D6 0:$1ADF 0:000001:A1=A7:D3=D0 equ $ffff+0+1 : z // * test_addn 0:$1AE0 z:data:reset=0:$0000 TRAP 0 // * test_addn if 0 // * TRAP 0:$1AE1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1AE2 0:data:reset=0:$5AE1 0:$1AE3 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1AE4 d15:data:reset=0:$7FF8 1:$1AE1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1AE2 d15:data:reset=0:$5AE5 0:$1AE5 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$1AE6 0:001000:A1=A7:D8=D6 0:$1AE7 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$1AE8 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$1AE9 z:data:reset=0:$0000 if !z // * TRAP 0:$1AEA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1AEB 0:data:reset=0:$5AEA 0:$1AEC 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1AED d15:data:reset=0:$7FF8 1:$1AEA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1AEB d15:data:reset=0:$5AEE test_addn $7fff,$7fff 0:$1AEE 0:000011:A1=A7:D5=D0 ld d1,$7fff // * test_addn 0:$1AEF 0:data:reset=0:$7FFF 0:$1AF0 0:000011:A1=A7:D6=D0 ld d2,$7fff // * test_addn 0:$1AF1 0:data:reset=0:$7FFF 0:$1AF2 0:000001:A1=A7:D8=D8 xor alu // * test_addn 0:$1AF3 0:000000:A1=A7:D3=D5 add d1 // * test_addn 0:$1AF4 0:000000:A1=A7:D8=D5 0:$1AF5 0:000100:A1=A7:D3=D6 add_c d2 // * test_addn 0:$1AF6 0:000100:A1=A7:D8=D6 0:$1AF7 0:000001:A1=A7:D3=D0 equ $7fff+$7fff+1 : z // * test_addn 0:$1AF8 z:data:reset=0:$FFFF 0:$1AF9 0:000011:A1=A7:D0=D0 jp 0,error // * test_addn 0:$1AFA d15:data:reset=0:$7FF8 1:$1AF9 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$1AFA 1:001100:A1=A7:D8=D6 1:$1AFB 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$1AFC 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$1AFD z:data:reset=0:$0000 if !z // * TRAP 0:$1AFE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1AFF 0:data:reset=0:$5AFE 0:$1B00 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$1B01 d15:data:reset=0:$7FF8 1:$1AFE 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1AFF d15:data:reset=0:$5B02 0:$1B02 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$1B03 0:000100:A1=A7:D8=D5 0:$1B04 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$1B05 0:000000:A1=A7:D8=D6 0:$1B06 0:000001:A1=A7:D3=D0 equ $7fff+$7fff+1 : z // * test_addn 0:$1B07 z:data:reset=0:$FFFF TRAP 0 // * test_addn if 0 // * TRAP 0:$1B08 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1B09 0:data:reset=0:$5B08 0:$1B0A 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1B0B d15:data:reset=0:$7FF8 1:$1B08 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1B09 d15:data:reset=0:$5B0C 0:$1B0C 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$1B0D 0:001000:A1=A7:D8=D6 0:$1B0E 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$1B0F 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$1B10 z:data:reset=0:$0000 if !z // * TRAP 0:$1B11 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1B12 0:data:reset=0:$5B11 0:$1B13 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1B14 d15:data:reset=0:$7FF8 1:$1B11 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1B12 d15:data:reset=0:$5B15 test_addn $7fff,$8000 0:$1B15 0:000011:A1=A7:D5=D0 ld d1,$7fff // * test_addn 0:$1B16 0:data:reset=0:$7FFF 0:$1B17 0:000011:A1=A7:D6=D0 ld d2,$8000 // * test_addn 0:$1B18 0:data:reset=0:$8000 0:$1B19 0:000001:A1=A0:D8=D8 xor alu // * test_addn 0:$1B1A 0:000000:A1=A0:D3=D5 add d1 // * test_addn 0:$1B1B 0:000000:A1=A0:D8=D5 0:$1B1C 0:000100:A1=A0:D3=D6 add_c d2 // * test_addn 0:$1B1D 0:000100:A1=A0:D8=D6 0:$1B1E 0:000001:A1=A0:D3=D0 equ $7fff+$8000+1 : z // * test_addn 0:$1B1F z:data:reset=0:$0000 0:$1B20 0:000011:A1=A0:D0=D0 jp 0,error // * test_addn 0:$1B21 d15:data:reset=0:$7FF8 1:$1B20 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$1B21 1:001100:A1=A7:D8=D6 1:$1B22 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$1B23 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$1B24 z:data:reset=0:$0000 if !z // * TRAP 0:$1B25 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1B26 0:data:reset=0:$5B25 0:$1B27 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1B28 d15:data:reset=0:$7FF8 1:$1B25 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1B26 d15:data:reset=0:$5B29 0:$1B29 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$1B2A 0:000100:A1=A7:D8=D5 0:$1B2B 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$1B2C 0:000000:A1=A7:D8=D6 0:$1B2D 0:000001:A1=A7:D3=D0 equ $7fff+$8000+1 : z // * test_addn 0:$1B2E z:data:reset=0:$0000 TRAP 0 // * test_addn if 0 // * TRAP 0:$1B2F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1B30 0:data:reset=0:$5B2F 0:$1B31 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1B32 d15:data:reset=0:$7FF8 1:$1B2F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1B30 d15:data:reset=0:$5B33 0:$1B33 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$1B34 0:001000:A1=A7:D8=D6 0:$1B35 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$1B36 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$1B37 z:data:reset=0:$0000 if !z // * TRAP 0:$1B38 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1B39 0:data:reset=0:$5B38 0:$1B3A 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1B3B d15:data:reset=0:$7FF8 1:$1B38 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1B39 d15:data:reset=0:$5B3C test_addn 4711,0815 0:$1B3C 0:000011:A1=A7:D5=D0 ld d1,4711 // * test_addn 0:$1B3D 0:data:reset=0:$1267 0:$1B3E 0:000011:A1=A2:D6=D0 ld d2,0815 // * test_addn 0:$1B3F 0:data:reset=0:$032F 0:$1B40 0:000001:A1=A3:D8=D8 xor alu // * test_addn 0:$1B41 0:000000:A1=A3:D3=D5 add d1 // * test_addn 0:$1B42 0:000000:A1=A3:D8=D5 0:$1B43 0:000100:A1=A3:D3=D6 add_c d2 // * test_addn 0:$1B44 0:000100:A1=A3:D8=D6 0:$1B45 0:000001:A1=A3:D3=D0 equ 4711+0815+1 : z // * test_addn 0:$1B46 z:data:reset=0:$1597 0:$1B47 0:000011:A1=A5:D0=D0 jp 0,error // * test_addn 0:$1B48 d15:data:reset=0:$7FF8 1:$1B47 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$1B48 1:001100:A1=A7:D8=D6 1:$1B49 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$1B4A 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$1B4B z:data:reset=0:$0000 if !z // * TRAP 0:$1B4C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1B4D 0:data:reset=0:$5B4C 0:$1B4E 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1B4F d15:data:reset=0:$7FF8 1:$1B4C 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1B4D d15:data:reset=0:$5B50 0:$1B50 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$1B51 0:000100:A1=A7:D8=D5 0:$1B52 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$1B53 0:000000:A1=A7:D8=D6 0:$1B54 0:000001:A1=A7:D3=D0 equ 4711+0815+1 : z // * test_addn 0:$1B55 z:data:reset=0:$1597 TRAP 0 // * test_addn if 0 // * TRAP 0:$1B56 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1B57 0:data:reset=0:$5B56 0:$1B58 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1B59 d15:data:reset=0:$7FF8 1:$1B56 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1B57 d15:data:reset=0:$5B5A 0:$1B5A 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$1B5B 0:001000:A1=A7:D8=D6 0:$1B5C 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$1B5D 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$1B5E z:data:reset=0:$0000 if !z // * TRAP 0:$1B5F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1B60 0:data:reset=0:$5B5F 0:$1B61 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1B62 d15:data:reset=0:$7FF8 1:$1B5F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1B60 d15:data:reset=0:$5B63 test_addn 60425,12082 0:$1B63 0:000011:A1=A7:D5=D0 ld d1,60425 // * test_addn 0:$1B64 0:data:reset=0:$EC09 0:$1B65 0:000011:A1=A4:D6=D0 ld d2,12082 // * test_addn 0:$1B66 0:data:reset=0:$2F32 0:$1B67 0:000001:A1=A7:D8=D8 xor alu // * test_addn 0:$1B68 0:000000:A1=A7:D3=D5 add d1 // * test_addn 0:$1B69 0:000000:A1=A7:D8=D5 0:$1B6A 0:000100:A1=A7:D3=D6 add_c d2 // * test_addn 0:$1B6B 0:000100:A1=A7:D8=D6 0:$1B6C 0:000001:A1=A7:D3=D0 equ 60425+12082+1 : z // * test_addn 0:$1B6D z:data:reset=0:$1B3C 0:$1B6E 0:000011:A1=A3:D0=D0 jp 0,error // * test_addn 0:$1B6F d15:data:reset=0:$7FF8 1:$1B6E 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$1B6F 1:001100:A1=A7:D8=D6 1:$1B70 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$1B71 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$1B72 z:data:reset=0:$0000 if !z // * TRAP 0:$1B73 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1B74 0:data:reset=0:$5B73 0:$1B75 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1B76 d15:data:reset=0:$7FF8 1:$1B73 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1B74 d15:data:reset=0:$5B77 0:$1B77 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$1B78 0:000100:A1=A7:D8=D5 0:$1B79 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$1B7A 0:000000:A1=A7:D8=D6 0:$1B7B 0:000001:A1=A7:D3=D0 equ 60425+12082+1 : z // * test_addn 0:$1B7C z:data:reset=0:$1B3C TRAP 0 // * test_addn if 0 // * TRAP 0:$1B7D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1B7E 0:data:reset=0:$5B7D 0:$1B7F 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1B80 d15:data:reset=0:$7FF8 1:$1B7D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1B7E d15:data:reset=0:$5B81 0:$1B81 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$1B82 0:001000:A1=A7:D8=D6 0:$1B83 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$1B84 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$1B85 z:data:reset=0:$0000 if !z // * TRAP 0:$1B86 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1B87 0:data:reset=0:$5B86 0:$1B88 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1B89 d15:data:reset=0:$7FF8 1:$1B86 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1B87 d15:data:reset=0:$5B8A test_addn 13409,44581 0:$1B8A 0:000011:A1=A7:D5=D0 ld d1,13409 // * test_addn 0:$1B8B 0:data:reset=0:$3461 0:$1B8C 0:000011:A1=A4:D6=D0 ld d2,44581 // * test_addn 0:$1B8D 0:data:reset=0:$AE25 0:$1B8E 0:000001:A1=A6:D8=D8 xor alu // * test_addn 0:$1B8F 0:000000:A1=A6:D3=D5 add d1 // * test_addn 0:$1B90 0:000000:A1=A6:D8=D5 0:$1B91 0:000100:A1=A6:D3=D6 add_c d2 // * test_addn 0:$1B92 0:000100:A1=A6:D8=D6 0:$1B93 0:000001:A1=A6:D3=D0 equ 13409+44581+1 : z // * test_addn 0:$1B94 z:data:reset=0:$E287 0:$1B95 0:000011:A1=A2:D0=D0 jp 0,error // * test_addn 0:$1B96 d15:data:reset=0:$7FF8 1:$1B95 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$1B96 1:001100:A1=A7:D8=D6 1:$1B97 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$1B98 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$1B99 z:data:reset=0:$0000 if !z // * TRAP 0:$1B9A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1B9B 0:data:reset=0:$5B9A 0:$1B9C 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1B9D d15:data:reset=0:$7FF8 1:$1B9A 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1B9B d15:data:reset=0:$5B9E 0:$1B9E 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$1B9F 0:000100:A1=A7:D8=D5 0:$1BA0 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$1BA1 0:000000:A1=A7:D8=D6 0:$1BA2 0:000001:A1=A7:D3=D0 equ 13409+44581+1 : z // * test_addn 0:$1BA3 z:data:reset=0:$E287 TRAP 0 // * test_addn if 0 // * TRAP 0:$1BA4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1BA5 0:data:reset=0:$5BA4 0:$1BA6 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1BA7 d15:data:reset=0:$7FF8 1:$1BA4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1BA5 d15:data:reset=0:$5BA8 0:$1BA8 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$1BA9 0:001000:A1=A7:D8=D6 0:$1BAA 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$1BAB 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$1BAC z:data:reset=0:$0000 if !z // * TRAP 0:$1BAD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1BAE 0:data:reset=0:$5BAD 0:$1BAF 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1BB0 d15:data:reset=0:$7FF8 1:$1BAD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1BAE d15:data:reset=0:$5BB1 test_addn 38932,16796 0:$1BB1 0:000011:A1=A7:D5=D0 ld d1,38932 // * test_addn 0:$1BB2 0:data:reset=0:$9814 0:$1BB3 0:000011:A1=A0:D6=D0 ld d2,16796 // * test_addn 0:$1BB4 0:data:reset=0:$419C 0:$1BB5 0:000001:A1=A1:D8=D8 xor alu // * test_addn 0:$1BB6 0:000000:A1=A1:D3=D5 add d1 // * test_addn 0:$1BB7 0:000000:A1=A1:D8=D5 0:$1BB8 0:000100:A1=A1:D3=D6 add_c d2 // * test_addn 0:$1BB9 0:000100:A1=A1:D8=D6 0:$1BBA 0:000001:A1=A1:D3=D0 equ 38932+16796+1 : z // * test_addn 0:$1BBB z:data:reset=0:$D9B1 0:$1BBC 0:000011:A1=A1:D0=D0 jp 0,error // * test_addn 0:$1BBD d15:data:reset=0:$7FF8 1:$1BBC 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$1BBD 1:001100:A1=A7:D8=D6 1:$1BBE 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$1BBF 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$1BC0 z:data:reset=0:$0000 if !z // * TRAP 0:$1BC1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1BC2 0:data:reset=0:$5BC1 0:$1BC3 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1BC4 d15:data:reset=0:$7FF8 1:$1BC1 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1BC2 d15:data:reset=0:$5BC5 0:$1BC5 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$1BC6 0:000100:A1=A7:D8=D5 0:$1BC7 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$1BC8 0:000000:A1=A7:D8=D6 0:$1BC9 0:000001:A1=A7:D3=D0 equ 38932+16796+1 : z // * test_addn 0:$1BCA z:data:reset=0:$D9B1 TRAP 0 // * test_addn if 0 // * TRAP 0:$1BCB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1BCC 0:data:reset=0:$5BCB 0:$1BCD 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1BCE d15:data:reset=0:$7FF8 1:$1BCB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1BCC d15:data:reset=0:$5BCF 0:$1BCF 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$1BD0 0:001000:A1=A7:D8=D6 0:$1BD1 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$1BD2 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$1BD3 z:data:reset=0:$0000 if !z // * TRAP 0:$1BD4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1BD5 0:data:reset=0:$5BD4 0:$1BD6 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1BD7 d15:data:reset=0:$7FF8 1:$1BD4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1BD5 d15:data:reset=0:$5BD8 test_addn 8932,796 0:$1BD8 0:000011:A1=A7:D5=D0 ld d1,8932 // * test_addn 0:$1BD9 0:data:reset=0:$22E4 0:$1BDA 0:000011:A1=A2:D6=D0 ld d2,796 // * test_addn 0:$1BDB 0:data:reset=0:$031C 0:$1BDC 0:000001:A1=A3:D8=D8 xor alu // * test_addn 0:$1BDD 0:000000:A1=A3:D3=D5 add d1 // * test_addn 0:$1BDE 0:000000:A1=A3:D8=D5 0:$1BDF 0:000100:A1=A3:D3=D6 add_c d2 // * test_addn 0:$1BE0 0:000100:A1=A3:D8=D6 0:$1BE1 0:000001:A1=A3:D3=D0 equ 8932+796+1 : z // * test_addn 0:$1BE2 z:data:reset=0:$2601 0:$1BE3 0:000011:A1=A6:D0=D0 jp 0,error // * test_addn 0:$1BE4 d15:data:reset=0:$7FF8 1:$1BE3 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$1BE4 1:001100:A1=A7:D8=D6 1:$1BE5 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$1BE6 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$1BE7 z:data:reset=0:$0000 if !z // * TRAP 0:$1BE8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1BE9 0:data:reset=0:$5BE8 0:$1BEA 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1BEB d15:data:reset=0:$7FF8 1:$1BE8 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1BE9 d15:data:reset=0:$5BEC 0:$1BEC 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$1BED 0:000100:A1=A7:D8=D5 0:$1BEE 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$1BEF 0:000000:A1=A7:D8=D6 0:$1BF0 0:000001:A1=A7:D3=D0 equ 8932+796+1 : z // * test_addn 0:$1BF1 z:data:reset=0:$2601 TRAP 0 // * test_addn if 0 // * TRAP 0:$1BF2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1BF3 0:data:reset=0:$5BF2 0:$1BF4 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1BF5 d15:data:reset=0:$7FF8 1:$1BF2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1BF3 d15:data:reset=0:$5BF6 0:$1BF6 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$1BF7 0:001000:A1=A7:D8=D6 0:$1BF8 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$1BF9 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$1BFA z:data:reset=0:$0000 if !z // * TRAP 0:$1BFB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1BFC 0:data:reset=0:$5BFB 0:$1BFD 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$1BFE d15:data:reset=0:$7FF8 1:$1BFB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1BFC d15:data:reset=0:$5BFF test_addn 32,76 0:$1BFF 0:000011:A1=A7:D5=D0 ld d1,32 // * test_addn 0:$1C00 0:data:reset=0:$0020 0:$1C01 0:000011:A1=A0:D6=D0 ld d2,76 // * test_addn 0:$1C02 0:data:reset=0:$004C 0:$1C03 0:000001:A1=A0:D8=D8 xor alu // * test_addn 0:$1C04 0:000000:A1=A0:D3=D5 add d1 // * test_addn 0:$1C05 0:000000:A1=A0:D8=D5 0:$1C06 0:000100:A1=A0:D3=D6 add_c d2 // * test_addn 0:$1C07 0:000100:A1=A0:D8=D6 0:$1C08 0:000001:A1=A0:D3=D0 equ 32+76+1 : z // * test_addn 0:$1C09 z:data:reset=0:$006D 0:$1C0A 0:000011:A1=A0:D0=D0 jp 0,error // * test_addn 0:$1C0B d15:data:reset=0:$7FF8 1:$1C0A 1:001100:A1=A7:D3=D6 sub d2 // * test_addn 1:$1C0B 1:001100:A1=A7:D8=D6 1:$1C0C 1:001000:A1=A7:D3=D5 sub_nc d1 // * test_addn 1:$1C0D 1:001000:A1=A7:D8=D5 TRAP !z // * test_addn 1:$1C0E z:data:reset=0:$0000 if !z // * TRAP 0:$1C0F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C10 0:data:reset=0:$5C0F 0:$1C11 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C12 d15:data:reset=0:$7FF8 1:$1C0F 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1C10 d15:data:reset=0:$5C13 0:$1C13 0:000100:A1=A7:D3=D5 add_c d1 // * test_addn 0:$1C14 0:000100:A1=A7:D8=D5 0:$1C15 0:000000:A1=A7:D3=D6 add d2 // * test_addn 0:$1C16 0:000000:A1=A7:D8=D6 0:$1C17 0:000001:A1=A7:D3=D0 equ 32+76+1 : z // * test_addn 0:$1C18 z:data:reset=0:$006D TRAP 0 // * test_addn if 0 // * TRAP 0:$1C19 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C1A 0:data:reset=0:$5C19 0:$1C1B 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C1C d15:data:reset=0:$7FF8 1:$1C19 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C1A d15:data:reset=0:$5C1D 0:$1C1D 0:001000:A1=A7:D3=D6 sub_nc d2 // * test_addn 0:$1C1E 0:001000:A1=A7:D8=D6 0:$1C1F 0:001100:A1=A7:D3=D5 sub d1 // * test_addn 0:$1C20 0:001100:A1=A7:D8=D5 TRAP !z // * test_addn 0:$1C21 z:data:reset=0:$0000 if !z // * TRAP 0:$1C22 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C23 0:data:reset=0:$5C22 0:$1C24 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C25 d15:data:reset=0:$7FF8 1:$1C22 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C23 d15:data:reset=0:$5C26 // --- file: "alu.asm" --- #include "dregs.asm" // +++ file: "dregs.asm" +++ // Test Data Registers: // instr test_dreg(DR) // ld DR,0 // tst DR // TRAP !z // // ld DR,$ffff // tstn DR // TRAP !z // // ld alu,$aa55 // ld DR,alu // equ DR // TRAP !z // // ld alu,$55aa // ld DR,alu // equ DR // TRAP !z // end test_dreg d0 0:$1C26 0:000011:A1=A7:D4=D0 ld d0,0 // * test_dreg 0:$1C27 0:data:reset=0:$0000 0:$1C28 0:000011:A1=A0:D3=D4 tst d0 // * test_dreg TRAP !z // * test_dreg 0:$1C29 z:data:reset=0:$0000 if !z // * TRAP 0:$1C2A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C2B 0:data:reset=0:$5C2A 0:$1C2C 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C2D d15:data:reset=0:$7FF8 1:$1C2A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C2B d15:data:reset=0:$5C2E 0:$1C2E 0:000011:A1=A7:D4=D0 ld d0,$ffff // * test_dreg 0:$1C2F 0:data:reset=0:$FFFF 0:$1C30 0:001011:A1=A7:D3=D4 tstn d0 // * test_dreg TRAP !z // * test_dreg 0:$1C31 z:data:reset=0:$0000 if !z // * TRAP 0:$1C32 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C33 0:data:reset=0:$5C32 0:$1C34 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C35 d15:data:reset=0:$7FF8 1:$1C32 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C33 d15:data:reset=0:$5C36 0:$1C36 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * test_dreg 0:$1C37 0:data:reset=0:$AA55 0:$1C38 0:000011:A1=A2:D4=D8 ld d0,alu // * test_dreg 0:$1C39 0:000001:A1=A2:D3=D4 equ d0 // * test_dreg TRAP !z // * test_dreg 0:$1C3A z:data:reset=0:$0000 if !z // * TRAP 0:$1C3B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C3C 0:data:reset=0:$5C3B 0:$1C3D 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C3E d15:data:reset=0:$7FF8 1:$1C3B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C3C d15:data:reset=0:$5C3F 0:$1C3F 0:000011:A1=A7:D8=D0 ld alu,$55aa // * test_dreg 0:$1C40 0:data:reset=0:$55AA 0:$1C41 0:000011:A1=A5:D4=D8 ld d0,alu // * test_dreg 0:$1C42 0:000001:A1=A5:D3=D4 equ d0 // * test_dreg TRAP !z // * test_dreg 0:$1C43 z:data:reset=0:$0000 if !z // * TRAP 0:$1C44 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C45 0:data:reset=0:$5C44 0:$1C46 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C47 d15:data:reset=0:$7FF8 1:$1C44 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C45 d15:data:reset=0:$5C48 test_dreg d1 0:$1C48 0:000011:A1=A7:D5=D0 ld d1,0 // * test_dreg 0:$1C49 0:data:reset=0:$0000 0:$1C4A 0:000011:A1=A0:D3=D5 tst d1 // * test_dreg TRAP !z // * test_dreg 0:$1C4B z:data:reset=0:$0000 if !z // * TRAP 0:$1C4C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C4D 0:data:reset=0:$5C4C 0:$1C4E 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C4F d15:data:reset=0:$7FF8 1:$1C4C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C4D d15:data:reset=0:$5C50 0:$1C50 0:000011:A1=A7:D5=D0 ld d1,$ffff // * test_dreg 0:$1C51 0:data:reset=0:$FFFF 0:$1C52 0:001011:A1=A7:D3=D5 tstn d1 // * test_dreg TRAP !z // * test_dreg 0:$1C53 z:data:reset=0:$0000 if !z // * TRAP 0:$1C54 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C55 0:data:reset=0:$5C54 0:$1C56 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C57 d15:data:reset=0:$7FF8 1:$1C54 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C55 d15:data:reset=0:$5C58 0:$1C58 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * test_dreg 0:$1C59 0:data:reset=0:$AA55 0:$1C5A 0:000011:A1=A2:D5=D8 ld d1,alu // * test_dreg 0:$1C5B 0:000001:A1=A2:D3=D5 equ d1 // * test_dreg TRAP !z // * test_dreg 0:$1C5C z:data:reset=0:$0000 if !z // * TRAP 0:$1C5D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C5E 0:data:reset=0:$5C5D 0:$1C5F 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C60 d15:data:reset=0:$7FF8 1:$1C5D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C5E d15:data:reset=0:$5C61 0:$1C61 0:000011:A1=A7:D8=D0 ld alu,$55aa // * test_dreg 0:$1C62 0:data:reset=0:$55AA 0:$1C63 0:000011:A1=A5:D5=D8 ld d1,alu // * test_dreg 0:$1C64 0:000001:A1=A5:D3=D5 equ d1 // * test_dreg TRAP !z // * test_dreg 0:$1C65 z:data:reset=0:$0000 if !z // * TRAP 0:$1C66 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C67 0:data:reset=0:$5C66 0:$1C68 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C69 d15:data:reset=0:$7FF8 1:$1C66 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C67 d15:data:reset=0:$5C6A test_dreg d2 0:$1C6A 0:000011:A1=A7:D6=D0 ld d2,0 // * test_dreg 0:$1C6B 0:data:reset=0:$0000 0:$1C6C 0:000011:A1=A0:D3=D6 tst d2 // * test_dreg TRAP !z // * test_dreg 0:$1C6D z:data:reset=0:$0000 if !z // * TRAP 0:$1C6E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C6F 0:data:reset=0:$5C6E 0:$1C70 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C71 d15:data:reset=0:$7FF8 1:$1C6E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C6F d15:data:reset=0:$5C72 0:$1C72 0:000011:A1=A7:D6=D0 ld d2,$ffff // * test_dreg 0:$1C73 0:data:reset=0:$FFFF 0:$1C74 0:001011:A1=A7:D3=D6 tstn d2 // * test_dreg TRAP !z // * test_dreg 0:$1C75 z:data:reset=0:$0000 if !z // * TRAP 0:$1C76 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C77 0:data:reset=0:$5C76 0:$1C78 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C79 d15:data:reset=0:$7FF8 1:$1C76 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C77 d15:data:reset=0:$5C7A 0:$1C7A 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * test_dreg 0:$1C7B 0:data:reset=0:$AA55 0:$1C7C 0:000011:A1=A2:D6=D8 ld d2,alu // * test_dreg 0:$1C7D 0:000001:A1=A2:D3=D6 equ d2 // * test_dreg TRAP !z // * test_dreg 0:$1C7E z:data:reset=0:$0000 if !z // * TRAP 0:$1C7F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C80 0:data:reset=0:$5C7F 0:$1C81 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C82 d15:data:reset=0:$7FF8 1:$1C7F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C80 d15:data:reset=0:$5C83 0:$1C83 0:000011:A1=A7:D8=D0 ld alu,$55aa // * test_dreg 0:$1C84 0:data:reset=0:$55AA 0:$1C85 0:000011:A1=A5:D6=D8 ld d2,alu // * test_dreg 0:$1C86 0:000001:A1=A5:D3=D6 equ d2 // * test_dreg TRAP !z // * test_dreg 0:$1C87 z:data:reset=0:$0000 if !z // * TRAP 0:$1C88 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C89 0:data:reset=0:$5C88 0:$1C8A 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C8B d15:data:reset=0:$7FF8 1:$1C88 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C89 d15:data:reset=0:$5C8C test_dreg d3 0:$1C8C 0:000011:A1=A7:D7=D0 ld d3,0 // * test_dreg 0:$1C8D 0:data:reset=0:$0000 0:$1C8E 0:000011:A1=A0:D3=D7 tst d3 // * test_dreg TRAP !z // * test_dreg 0:$1C8F z:data:reset=0:$0000 if !z // * TRAP 0:$1C90 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C91 0:data:reset=0:$5C90 0:$1C92 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C93 d15:data:reset=0:$7FF8 1:$1C90 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C91 d15:data:reset=0:$5C94 0:$1C94 0:000011:A1=A7:D7=D0 ld d3,$ffff // * test_dreg 0:$1C95 0:data:reset=0:$FFFF 0:$1C96 0:001011:A1=A7:D3=D7 tstn d3 // * test_dreg TRAP !z // * test_dreg 0:$1C97 z:data:reset=0:$0000 if !z // * TRAP 0:$1C98 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1C99 0:data:reset=0:$5C98 0:$1C9A 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1C9B d15:data:reset=0:$7FF8 1:$1C98 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1C99 d15:data:reset=0:$5C9C 0:$1C9C 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * test_dreg 0:$1C9D 0:data:reset=0:$AA55 0:$1C9E 0:000011:A1=A2:D7=D8 ld d3,alu // * test_dreg 0:$1C9F 0:000001:A1=A2:D3=D7 equ d3 // * test_dreg TRAP !z // * test_dreg 0:$1CA0 z:data:reset=0:$0000 if !z // * TRAP 0:$1CA1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1CA2 0:data:reset=0:$5CA1 0:$1CA3 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1CA4 d15:data:reset=0:$7FF8 1:$1CA1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1CA2 d15:data:reset=0:$5CA5 0:$1CA5 0:000011:A1=A7:D8=D0 ld alu,$55aa // * test_dreg 0:$1CA6 0:data:reset=0:$55AA 0:$1CA7 0:000011:A1=A5:D7=D8 ld d3,alu // * test_dreg 0:$1CA8 0:000001:A1=A5:D3=D7 equ d3 // * test_dreg TRAP !z // * test_dreg 0:$1CA9 z:data:reset=0:$0000 if !z // * TRAP 0:$1CAA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1CAB 0:data:reset=0:$5CAA 0:$1CAC 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1CAD d15:data:reset=0:$7FF8 1:$1CAA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1CAB d15:data:reset=0:$5CAE // SL 0:$1CAE 0:000011:A1=A7:DD=D0 ld sl,$4001,nc 0:$1CAF 0:data:reset=0:$4001 0:$1CB0 0:000011:A1=A0:D3=DD tst sl TRAP !bit15 0:$1CB1 d15:data:reset=0:$0000 if !bit15 // * TRAP 0:$1CB2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1CB3 0:data:reset=0:$5CB2 0:$1CB4 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1CB5 d15:data:reset=0:$7FF8 1:$1CB2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1CB3 d15:data:reset=0:$5CB6 0:$1CB6 0:000011:A1=A7:D3=DD tst sl TRAP bit0 0:$1CB7 d0:data:reset=0:$0000 if bit0 // * TRAP 1:$1CB8 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1CB9 1:data:reset=0:$DCB8 1:$1CBA 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$1CBB d15:data:reset=0:$7FF8 0:$1CB8 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1CB9 d15:data:reset=0:$DCBC 1:$1CBC 1:000011:A1=A7:D8=D0 ld alu,-1 1:$1CBD 1:data:reset=0:$FFFF 1:$1CBE 1:000011:A1=A7:DD=D0 ld sl,-1,nc 1:$1CBF 1:data:reset=0:$FFFF 1:$1CC0 1:000111:A1=A7:D3=DF nop,cy 1:$1CC1 1:000011:A1=A7:DD=DD ld sl,sl,nc 1:$1CC2 1:000011:A1=A7:D3=DD tst sl TRAP bit0 1:$1CC3 d0:data:reset=0:$0000 if bit0 // * TRAP 1:$1CC4 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1CC5 1:data:reset=0:$DCC4 1:$1CC6 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$1CC7 d15:data:reset=0:$7FF8 0:$1CC4 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1CC5 d15:data:reset=0:$DCC8 1:$1CC8 1:000011:A1=A7:D8=D0 ld alu,0 1:$1CC9 1:data:reset=0:$0000 1:$1CCA 1:000011:A1=A0:DD=D0 ld sl,0,nc 1:$1CCB 1:data:reset=0:$0000 1:$1CCC 1:000011:A1=A0:D3=D8 nop,nc 1:$1CCD 1:000111:A1=A0:DD=DD ld sl,sl,cy 1:$1CCE 1:000011:A1=A0:D3=DD tst sl TRAP !bit0 1:$1CCF d0:data:reset=0:$0000 if !bit0 // * TRAP 0:$1CD0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1CD1 0:data:reset=0:$5CD0 0:$1CD2 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1CD3 d15:data:reset=0:$7FF8 1:$1CD0 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1CD1 d15:data:reset=0:$5CD4 0:$1CD4 0:000011:A1=A7:D8=D0 ld alu,-1 0:$1CD5 0:data:reset=0:$FFFF 0:$1CD6 0:000011:A1=A7:DD=D0 ld sl,0,nc 0:$1CD7 0:data:reset=0:$0000 0:$1CD8 0:000011:A1=A0:D3=D8 nop,nc 0:$1CD9 0:000111:A1=A0:DD=DD ld sl,sl,cy 0:$1CDA 0:000011:A1=A0:D3=DD tst sl TRAP !bit0 0:$1CDB d0:data:reset=0:$0000 if !bit0 // * TRAP 0:$1CDC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1CDD 0:data:reset=0:$5CDC 0:$1CDE 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1CDF d15:data:reset=0:$7FF8 1:$1CDC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1CDD d15:data:reset=0:$5CE0 0:$1CE0 0:000011:A1=A7:D8=D0 ld alu,-1 0:$1CE1 0:data:reset=0:$FFFF 0:$1CE2 0:000011:A1=A7:DD=D0 ld sl,0,nc 0:$1CE3 0:data:reset=0:$0000 0:$1CE4 0:000111:A1=A0:D3=D8 nop,cy 0:$1CE5 0:000011:A1=A0:DD=DD ld sl,sl,nc 0:$1CE6 0:000011:A1=A0:D3=DD tst sl TRAP bit0 0:$1CE7 d0:data:reset=0:$0000 if bit0 // * TRAP 1:$1CE8 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1CE9 1:data:reset=0:$DCE8 1:$1CEA 1:000011:A1=A4:D0=D0 jp error // * TRAP 1:$1CEB d15:data:reset=0:$7FF8 0:$1CE8 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1CE9 d15:data:reset=0:$DCEC 1:$1CEC 1:000011:A1=A7:DD=D0 ld sl,$5591,nc 1:$1CED 1:data:reset=0:$5591 1:$1CEE 1:000011:A1=A5:D8=D0 ld alu,$AB22 1:$1CEF 1:data:reset=0:$AB22 1:$1CF0 1:000001:A1=A3:D3=DD equ sl TRAP !z 1:$1CF1 z:data:reset=0:$0000 if !z // * TRAP 0:$1CF2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1CF3 0:data:reset=0:$5CF2 0:$1CF4 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1CF5 d15:data:reset=0:$7FF8 1:$1CF2 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1CF3 d15:data:reset=0:$5CF6 0:$1CF6 0:000111:A1=A7:DD=D0 ld sl,12345,cy // $3039 0:$1CF7 0:data:reset=0:$3039 0:$1CF8 0:000011:A1=A0:D8=D0 ld alu,12345*2+1 // $6073 0:$1CF9 0:data:reset=0:$6073 0:$1CFA 0:000001:A1=A0:D3=DD equ sl TRAP !z 0:$1CFB z:data:reset=0:$0000 if !z // * TRAP 0:$1CFC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1CFD 0:data:reset=0:$5CFC 0:$1CFE 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$1CFF d15:data:reset=0:$7FF8 1:$1CFC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1CFD d15:data:reset=0:$5D00 // SR 0:$1D00 0:000011:A1=A7:DC=D0 ld sr,$8002,nc 0:$1D01 0:data:reset=0:$8002 0:$1D02 0:000011:A1=A0:D3=DC tst sr TRAP !bit0 0:$1D03 d0:data:reset=0:$0000 if !bit0 // * TRAP 0:$1D04 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D05 0:data:reset=0:$5D04 0:$1D06 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D07 d15:data:reset=0:$7FF8 1:$1D04 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1D05 d15:data:reset=0:$5D08 0:$1D08 0:000011:A1=A7:D3=DC tst sr TRAP bit15 0:$1D09 d15:data:reset=0:$0000 if bit15 // * TRAP 1:$1D0A 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1D0B 1:data:reset=0:$DD0A 1:$1D0C 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$1D0D d15:data:reset=0:$7FF8 0:$1D0A 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1D0B d15:data:reset=0:$DD0E 1:$1D0E 1:000011:A1=A7:D8=D0 ld alu,-1 1:$1D0F 1:data:reset=0:$FFFF 1:$1D10 1:000011:A1=A7:DC=D0 ld sr,-1,nc 1:$1D11 1:data:reset=0:$FFFF 1:$1D12 1:000111:A1=A7:D3=DF nop,cy 1:$1D13 1:000011:A1=A7:DC=DC ld sr,sr,nc 1:$1D14 1:000011:A1=A7:D3=DC tst sr TRAP bit15 1:$1D15 d15:data:reset=0:$0000 if bit15 // * TRAP 1:$1D16 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1D17 1:data:reset=0:$DD16 1:$1D18 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$1D19 d15:data:reset=0:$7FF8 0:$1D16 0:000011:A1=A7:D0=D0 then // * TRAP 0:$1D17 d15:data:reset=0:$DD1A 1:$1D1A 1:000011:A6=A1:D3=D0 ld atmp,$ 1:$1D1B 1:data:reset=0:$DD1A 1:$1D1C 1:000011:A1=A5:D8=D0 ld alu,0 1:$1D1D 1:data:reset=0:$0000 1:$1D1E 1:000011:A1=A0:DC=D0 ld sr,0,nc 1:$1D1F 1:data:reset=0:$0000 1:$1D20 1:000011:A1=A0:D3=D8 nop,nc 1:$1D21 1:000111:A1=A0:DC=DC ld sr,sr,cy // BAD || !BAD ? 1:$1D22 1:000011:A1=A0:D3=DC tst sr TRAP !bit15 1:$1D23 d15:data:reset=0:$0000 if !bit15 // * TRAP 0:$1D24 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D25 0:data:reset=0:$5D24 0:$1D26 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D27 d15:data:reset=0:$7FF8 1:$1D24 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1D25 d15:data:reset=0:$5D28 0:$1D28 0:000011:A1=A7:D8=D0 ld alu,-1 0:$1D29 0:data:reset=0:$FFFF 0:$1D2A 0:000011:A1=A7:DC=D0 ld sr,0,nc 0:$1D2B 0:data:reset=0:$0000 0:$1D2C 0:000011:A1=A0:D3=D8 nop,nc 0:$1D2D 0:000111:A1=A0:DC=DC ld sr,sr,cy 0:$1D2E 0:000011:A1=A0:D3=DC tst sr TRAP !bit15 0:$1D2F d15:data:reset=0:$0000 if !bit15 // * TRAP 0:$1D30 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D31 0:data:reset=0:$5D30 0:$1D32 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D33 d15:data:reset=0:$7FF8 1:$1D30 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1D31 d15:data:reset=0:$5D34 0:$1D34 0:000011:A1=A7:D8=D0 ld alu,-1 0:$1D35 0:data:reset=0:$FFFF 0:$1D36 0:000011:A1=A7:DC=D0 ld sr,0,nc 0:$1D37 0:data:reset=0:$0000 0:$1D38 0:000111:A1=A0:D3=D8 nop,cy 0:$1D39 0:000011:A1=A0:DC=DC ld sr,sr,nc 0:$1D3A 0:000011:A1=A0:D3=DC tst sr TRAP bit15 0:$1D3B d15:data:reset=0:$0000 if bit15 // * TRAP 1:$1D3C 1:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 1:$1D3D 1:data:reset=0:$DD3C 1:$1D3E 1:000011:A1=A5:D0=D0 jp error // * TRAP 1:$1D3F d15:data:reset=0:$7FF8 0:$1D3C 0:000011:A1=A0:D0=D0 then // * TRAP 0:$1D3D d15:data:reset=0:$DD40 1:$1D40 1:000011:A1=A7:DC=D0 ld sr,$89AA,nc 1:$1D41 1:data:reset=0:$89AA 1:$1D42 1:000011:A1=A1:D8=D0 ld alu,$44D5 1:$1D43 1:data:reset=0:$44D5 1:$1D44 1:000001:A1=A4:D3=DC equ sr TRAP !z 1:$1D45 z:data:reset=0:$0000 if !z // * TRAP 0:$1D46 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D47 0:data:reset=0:$5D46 0:$1D48 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D49 d15:data:reset=0:$7FF8 1:$1D46 1:000011:A1=A0:D0=D0 then // * TRAP 1:$1D47 d15:data:reset=0:$5D4A 0:$1D4A 0:000111:A1=A7:DC=D0 ld sr,54321,cy 0:$1D4B 0:data:reset=0:$D431 0:$1D4C 0:000011:A1=A4:D8=D0 ld alu,$8000+54321/2 0:$1D4D 0:data:reset=0:$EA18 0:$1D4E 0:000001:A1=A2:D3=DC equ sr TRAP !z 0:$1D4F z:data:reset=0:$0000 if !z // * TRAP 0:$1D50 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D51 0:data:reset=0:$5D50 0:$1D52 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D53 d15:data:reset=0:$7FF8 1:$1D50 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1D51 d15:data:reset=0:$5D54 // SWAP 0:$1D54 0:000011:A1=A7:DA=D0 ld swap,$ff00 0:$1D55 0:data:reset=0:$FF00 0:$1D56 0:000011:A1=A7:D8=D0 ld alu,$00ff 0:$1D57 0:data:reset=0:$00FF 0:$1D58 0:000001:A1=A0:D3=DA equ swap TRAP !z 0:$1D59 z:data:reset=0:$0000 if !z // * TRAP 0:$1D5A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D5B 0:data:reset=0:$5D5A 0:$1D5C 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D5D d15:data:reset=0:$7FF8 1:$1D5A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1D5B d15:data:reset=0:$5D5E 0:$1D5E 0:000011:A1=A7:DA=DA ld swap,swap 0:$1D5F 0:000011:A1=A7:D8=D0 ld alu,$ff00 0:$1D60 0:data:reset=0:$FF00 0:$1D61 0:000001:A1=A7:D3=DA equ swap TRAP !z 0:$1D62 z:data:reset=0:$0000 if !z // * TRAP 0:$1D63 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D64 0:data:reset=0:$5D63 0:$1D65 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D66 d15:data:reset=0:$7FF8 1:$1D63 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1D64 d15:data:reset=0:$5D67 0:$1D67 0:000011:A1=A7:DA=D0 ld swap,$5AB4 0:$1D68 0:data:reset=0:$5AB4 0:$1D69 0:000011:A1=A2:D8=D0 ld alu,$B45A 0:$1D6A 0:data:reset=0:$B45A 0:$1D6B 0:000001:A1=A4:D3=DA equ swap TRAP !z 0:$1D6C z:data:reset=0:$0000 if !z // * TRAP 0:$1D6D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D6E 0:data:reset=0:$5D6D 0:$1D6F 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D70 d15:data:reset=0:$7FF8 1:$1D6D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1D6E d15:data:reset=0:$5D71 0:$1D71 0:000011:A1=A7:DA=DA ld swap,swap 0:$1D72 0:000011:A1=A7:D8=D0 ld alu,$5AB4 0:$1D73 0:data:reset=0:$5AB4 0:$1D74 0:000001:A1=A2:D3=DA equ swap TRAP !z 0:$1D75 z:data:reset=0:$0000 if !z // * TRAP 0:$1D76 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D77 0:data:reset=0:$5D76 0:$1D78 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D79 d15:data:reset=0:$7FF8 1:$1D76 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1D77 d15:data:reset=0:$5D7A // 16TO4 // instr test_msbit(BIT) // ld msbit,~(1<>(15-BIT)) // ld alu,BIT // equ msbit // TRAP !z // end 0:$1D7A 0:000011:A1=A7:DE=D0 ld msbit,$7f00 0:$1D7B 0:data:reset=0:$7F00 0:$1D7C 0:000011:A1=A7:D8=D0 ld alu,15 0:$1D7D 0:data:reset=0:$000F 0:$1D7E 0:000001:A1=A0:D3=DE equ msbit TRAP !z 0:$1D7F z:data:reset=0:$0000 if !z // * TRAP 0:$1D80 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D81 0:data:reset=0:$5D80 0:$1D82 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D83 d15:data:reset=0:$7FF8 1:$1D80 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1D81 d15:data:reset=0:$5D84 0:$1D84 0:000011:A1=A7:DE=D0 ld msbit,$ffff 0:$1D85 0:data:reset=0:$FFFF 0:$1D86 0:000011:A1=A7:D3=DE tst msbit TRAP !z 0:$1D87 z:data:reset=0:$0000 if !z // * TRAP 0:$1D88 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D89 0:data:reset=0:$5D88 0:$1D8A 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D8B d15:data:reset=0:$7FF8 1:$1D88 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1D89 d15:data:reset=0:$5D8C test_msbit 0 0:$1D8C 0:000011:A1=A7:DE=D0 ld msbit,~(1<<0) // * test_msbit 0:$1D8D 0:data:reset=0:$FFFE 0:$1D8E 0:000011:A1=A7:D8=D0 ld alu,0 // * test_msbit 0:$1D8F 0:data:reset=0:$0000 0:$1D90 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1D91 z:data:reset=0:$0000 if !z // * TRAP 0:$1D92 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D93 0:data:reset=0:$5D92 0:$1D94 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D95 d15:data:reset=0:$7FF8 1:$1D92 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1D93 d15:data:reset=0:$5D96 0:$1D96 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-0)) // * test_msbit 0:$1D97 0:data:reset=0:$FFFE 0:$1D98 0:000011:A1=A7:D8=D0 ld alu,0 // * test_msbit 0:$1D99 0:data:reset=0:$0000 0:$1D9A 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1D9B z:data:reset=0:$0000 if !z // * TRAP 0:$1D9C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1D9D 0:data:reset=0:$5D9C 0:$1D9E 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1D9F d15:data:reset=0:$7FF8 1:$1D9C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1D9D d15:data:reset=0:$5DA0 test_msbit 1 0:$1DA0 0:000011:A1=A7:DE=D0 ld msbit,~(1<<1) // * test_msbit 0:$1DA1 0:data:reset=0:$FFFD 0:$1DA2 0:000011:A1=A7:D8=D0 ld alu,1 // * test_msbit 0:$1DA3 0:data:reset=0:$0001 0:$1DA4 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1DA5 z:data:reset=0:$0000 if !z // * TRAP 0:$1DA6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1DA7 0:data:reset=0:$5DA6 0:$1DA8 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1DA9 d15:data:reset=0:$7FF8 1:$1DA6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1DA7 d15:data:reset=0:$5DAA 0:$1DAA 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-1)) // * test_msbit 0:$1DAB 0:data:reset=0:$FFFD 0:$1DAC 0:000011:A1=A7:D8=D0 ld alu,1 // * test_msbit 0:$1DAD 0:data:reset=0:$0001 0:$1DAE 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1DAF z:data:reset=0:$0000 if !z // * TRAP 0:$1DB0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1DB1 0:data:reset=0:$5DB0 0:$1DB2 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1DB3 d15:data:reset=0:$7FF8 1:$1DB0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1DB1 d15:data:reset=0:$5DB4 test_msbit 2 0:$1DB4 0:000011:A1=A7:DE=D0 ld msbit,~(1<<2) // * test_msbit 0:$1DB5 0:data:reset=0:$FFFB 0:$1DB6 0:000011:A1=A7:D8=D0 ld alu,2 // * test_msbit 0:$1DB7 0:data:reset=0:$0002 0:$1DB8 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1DB9 z:data:reset=0:$0000 if !z // * TRAP 0:$1DBA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1DBB 0:data:reset=0:$5DBA 0:$1DBC 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1DBD d15:data:reset=0:$7FF8 1:$1DBA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1DBB d15:data:reset=0:$5DBE 0:$1DBE 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-2)) // * test_msbit 0:$1DBF 0:data:reset=0:$FFFA 0:$1DC0 0:000011:A1=A7:D8=D0 ld alu,2 // * test_msbit 0:$1DC1 0:data:reset=0:$0002 0:$1DC2 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1DC3 z:data:reset=0:$0000 if !z // * TRAP 0:$1DC4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1DC5 0:data:reset=0:$5DC4 0:$1DC6 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1DC7 d15:data:reset=0:$7FF8 1:$1DC4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1DC5 d15:data:reset=0:$5DC8 test_msbit 3 0:$1DC8 0:000011:A1=A7:DE=D0 ld msbit,~(1<<3) // * test_msbit 0:$1DC9 0:data:reset=0:$FFF7 0:$1DCA 0:000011:A1=A7:D8=D0 ld alu,3 // * test_msbit 0:$1DCB 0:data:reset=0:$0003 0:$1DCC 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1DCD z:data:reset=0:$0000 if !z // * TRAP 0:$1DCE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1DCF 0:data:reset=0:$5DCE 0:$1DD0 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1DD1 d15:data:reset=0:$7FF8 1:$1DCE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1DCF d15:data:reset=0:$5DD2 0:$1DD2 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-3)) // * test_msbit 0:$1DD3 0:data:reset=0:$FFF5 0:$1DD4 0:000011:A1=A7:D8=D0 ld alu,3 // * test_msbit 0:$1DD5 0:data:reset=0:$0003 0:$1DD6 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1DD7 z:data:reset=0:$0000 if !z // * TRAP 0:$1DD8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1DD9 0:data:reset=0:$5DD8 0:$1DDA 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1DDB d15:data:reset=0:$7FF8 1:$1DD8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1DD9 d15:data:reset=0:$5DDC test_msbit 4 0:$1DDC 0:000011:A1=A7:DE=D0 ld msbit,~(1<<4) // * test_msbit 0:$1DDD 0:data:reset=0:$FFEF 0:$1DDE 0:000011:A1=A7:D8=D0 ld alu,4 // * test_msbit 0:$1DDF 0:data:reset=0:$0004 0:$1DE0 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1DE1 z:data:reset=0:$0000 if !z // * TRAP 0:$1DE2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1DE3 0:data:reset=0:$5DE2 0:$1DE4 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1DE5 d15:data:reset=0:$7FF8 1:$1DE2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1DE3 d15:data:reset=0:$5DE6 0:$1DE6 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-4)) // * test_msbit 0:$1DE7 0:data:reset=0:$FFEA 0:$1DE8 0:000011:A1=A7:D8=D0 ld alu,4 // * test_msbit 0:$1DE9 0:data:reset=0:$0004 0:$1DEA 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1DEB z:data:reset=0:$0000 if !z // * TRAP 0:$1DEC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1DED 0:data:reset=0:$5DEC 0:$1DEE 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1DEF d15:data:reset=0:$7FF8 1:$1DEC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1DED d15:data:reset=0:$5DF0 test_msbit 5 0:$1DF0 0:000011:A1=A7:DE=D0 ld msbit,~(1<<5) // * test_msbit 0:$1DF1 0:data:reset=0:$FFDF 0:$1DF2 0:000011:A1=A7:D8=D0 ld alu,5 // * test_msbit 0:$1DF3 0:data:reset=0:$0005 0:$1DF4 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1DF5 z:data:reset=0:$0000 if !z // * TRAP 0:$1DF6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1DF7 0:data:reset=0:$5DF6 0:$1DF8 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$1DF9 d15:data:reset=0:$7FF8 1:$1DF6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1DF7 d15:data:reset=0:$5DFA 0:$1DFA 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-5)) // * test_msbit 0:$1DFB 0:data:reset=0:$FFD5 0:$1DFC 0:000011:A1=A7:D8=D0 ld alu,5 // * test_msbit 0:$1DFD 0:data:reset=0:$0005 0:$1DFE 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1DFF z:data:reset=0:$0000 if !z // * TRAP 0:$1E00 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E01 0:data:reset=0:$5E00 0:$1E02 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E03 d15:data:reset=0:$7FF8 1:$1E00 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E01 d15:data:reset=0:$5E04 test_msbit 6 0:$1E04 0:000011:A1=A7:DE=D0 ld msbit,~(1<<6) // * test_msbit 0:$1E05 0:data:reset=0:$FFBF 0:$1E06 0:000011:A1=A7:D8=D0 ld alu,6 // * test_msbit 0:$1E07 0:data:reset=0:$0006 0:$1E08 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E09 z:data:reset=0:$0000 if !z // * TRAP 0:$1E0A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E0B 0:data:reset=0:$5E0A 0:$1E0C 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E0D d15:data:reset=0:$7FF8 1:$1E0A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E0B d15:data:reset=0:$5E0E 0:$1E0E 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-6)) // * test_msbit 0:$1E0F 0:data:reset=0:$FFAA 0:$1E10 0:000011:A1=A7:D8=D0 ld alu,6 // * test_msbit 0:$1E11 0:data:reset=0:$0006 0:$1E12 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E13 z:data:reset=0:$0000 if !z // * TRAP 0:$1E14 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E15 0:data:reset=0:$5E14 0:$1E16 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E17 d15:data:reset=0:$7FF8 1:$1E14 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E15 d15:data:reset=0:$5E18 test_msbit 7 0:$1E18 0:000011:A1=A7:DE=D0 ld msbit,~(1<<7) // * test_msbit 0:$1E19 0:data:reset=0:$FF7F 0:$1E1A 0:000011:A1=A7:D8=D0 ld alu,7 // * test_msbit 0:$1E1B 0:data:reset=0:$0007 0:$1E1C 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E1D z:data:reset=0:$0000 if !z // * TRAP 0:$1E1E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E1F 0:data:reset=0:$5E1E 0:$1E20 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E21 d15:data:reset=0:$7FF8 1:$1E1E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E1F d15:data:reset=0:$5E22 0:$1E22 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-7)) // * test_msbit 0:$1E23 0:data:reset=0:$FF55 0:$1E24 0:000011:A1=A7:D8=D0 ld alu,7 // * test_msbit 0:$1E25 0:data:reset=0:$0007 0:$1E26 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E27 z:data:reset=0:$0000 if !z // * TRAP 0:$1E28 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E29 0:data:reset=0:$5E28 0:$1E2A 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E2B d15:data:reset=0:$7FF8 1:$1E28 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E29 d15:data:reset=0:$5E2C test_msbit 8 0:$1E2C 0:000011:A1=A7:DE=D0 ld msbit,~(1<<8) // * test_msbit 0:$1E2D 0:data:reset=0:$FEFF 0:$1E2E 0:000011:A1=A6:D8=D0 ld alu,8 // * test_msbit 0:$1E2F 0:data:reset=0:$0008 0:$1E30 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E31 z:data:reset=0:$0000 if !z // * TRAP 0:$1E32 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E33 0:data:reset=0:$5E32 0:$1E34 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E35 d15:data:reset=0:$7FF8 1:$1E32 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E33 d15:data:reset=0:$5E36 0:$1E36 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-8)) // * test_msbit 0:$1E37 0:data:reset=0:$FEAA 0:$1E38 0:000011:A1=A6:D8=D0 ld alu,8 // * test_msbit 0:$1E39 0:data:reset=0:$0008 0:$1E3A 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E3B z:data:reset=0:$0000 if !z // * TRAP 0:$1E3C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E3D 0:data:reset=0:$5E3C 0:$1E3E 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E3F d15:data:reset=0:$7FF8 1:$1E3C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E3D d15:data:reset=0:$5E40 test_msbit 9 0:$1E40 0:000011:A1=A7:DE=D0 ld msbit,~(1<<9) // * test_msbit 0:$1E41 0:data:reset=0:$FDFF 0:$1E42 0:000011:A1=A5:D8=D0 ld alu,9 // * test_msbit 0:$1E43 0:data:reset=0:$0009 0:$1E44 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E45 z:data:reset=0:$0000 if !z // * TRAP 0:$1E46 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E47 0:data:reset=0:$5E46 0:$1E48 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E49 d15:data:reset=0:$7FF8 1:$1E46 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E47 d15:data:reset=0:$5E4A 0:$1E4A 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-9)) // * test_msbit 0:$1E4B 0:data:reset=0:$FD55 0:$1E4C 0:000011:A1=A5:D8=D0 ld alu,9 // * test_msbit 0:$1E4D 0:data:reset=0:$0009 0:$1E4E 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E4F z:data:reset=0:$0000 if !z // * TRAP 0:$1E50 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E51 0:data:reset=0:$5E50 0:$1E52 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E53 d15:data:reset=0:$7FF8 1:$1E50 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E51 d15:data:reset=0:$5E54 test_msbit 10 0:$1E54 0:000011:A1=A7:DE=D0 ld msbit,~(1<<10) // * test_msbit 0:$1E55 0:data:reset=0:$FBFF 0:$1E56 0:000011:A1=A3:D8=D0 ld alu,10 // * test_msbit 0:$1E57 0:data:reset=0:$000A 0:$1E58 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E59 z:data:reset=0:$0000 if !z // * TRAP 0:$1E5A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E5B 0:data:reset=0:$5E5A 0:$1E5C 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E5D d15:data:reset=0:$7FF8 1:$1E5A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E5B d15:data:reset=0:$5E5E 0:$1E5E 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-10)) // * test_msbit 0:$1E5F 0:data:reset=0:$FAAA 0:$1E60 0:000011:A1=A2:D8=D0 ld alu,10 // * test_msbit 0:$1E61 0:data:reset=0:$000A 0:$1E62 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E63 z:data:reset=0:$0000 if !z // * TRAP 0:$1E64 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E65 0:data:reset=0:$5E64 0:$1E66 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E67 d15:data:reset=0:$7FF8 1:$1E64 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E65 d15:data:reset=0:$5E68 test_msbit 11 0:$1E68 0:000011:A1=A7:DE=D0 ld msbit,~(1<<11) // * test_msbit 0:$1E69 0:data:reset=0:$F7FF 0:$1E6A 0:000011:A1=A7:D8=D0 ld alu,11 // * test_msbit 0:$1E6B 0:data:reset=0:$000B 0:$1E6C 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E6D z:data:reset=0:$0000 if !z // * TRAP 0:$1E6E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E6F 0:data:reset=0:$5E6E 0:$1E70 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E71 d15:data:reset=0:$7FF8 1:$1E6E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E6F d15:data:reset=0:$5E72 0:$1E72 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-11)) // * test_msbit 0:$1E73 0:data:reset=0:$F555 0:$1E74 0:000011:A1=A5:D8=D0 ld alu,11 // * test_msbit 0:$1E75 0:data:reset=0:$000B 0:$1E76 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E77 z:data:reset=0:$0000 if !z // * TRAP 0:$1E78 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E79 0:data:reset=0:$5E78 0:$1E7A 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E7B d15:data:reset=0:$7FF8 1:$1E78 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E79 d15:data:reset=0:$5E7C test_msbit 12 0:$1E7C 0:000011:A1=A7:DE=D0 ld msbit,~(1<<12) // * test_msbit 0:$1E7D 0:data:reset=0:$EFFF 0:$1E7E 0:000011:A1=A7:D8=D0 ld alu,12 // * test_msbit 0:$1E7F 0:data:reset=0:$000C 0:$1E80 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E81 z:data:reset=0:$0000 if !z // * TRAP 0:$1E82 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E83 0:data:reset=0:$5E82 0:$1E84 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E85 d15:data:reset=0:$7FF8 1:$1E82 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E83 d15:data:reset=0:$5E86 0:$1E86 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-12)) // * test_msbit 0:$1E87 0:data:reset=0:$EAAA 0:$1E88 0:000011:A1=A2:D8=D0 ld alu,12 // * test_msbit 0:$1E89 0:data:reset=0:$000C 0:$1E8A 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E8B z:data:reset=0:$0000 if !z // * TRAP 0:$1E8C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E8D 0:data:reset=0:$5E8C 0:$1E8E 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E8F d15:data:reset=0:$7FF8 1:$1E8C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E8D d15:data:reset=0:$5E90 test_msbit 13 0:$1E90 0:000011:A1=A7:DE=D0 ld msbit,~(1<<13) // * test_msbit 0:$1E91 0:data:reset=0:$DFFF 0:$1E92 0:000011:A1=A7:D8=D0 ld alu,13 // * test_msbit 0:$1E93 0:data:reset=0:$000D 0:$1E94 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E95 z:data:reset=0:$0000 if !z // * TRAP 0:$1E96 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1E97 0:data:reset=0:$5E96 0:$1E98 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1E99 d15:data:reset=0:$7FF8 1:$1E96 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1E97 d15:data:reset=0:$5E9A 0:$1E9A 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-13)) // * test_msbit 0:$1E9B 0:data:reset=0:$D555 0:$1E9C 0:000011:A1=A5:D8=D0 ld alu,13 // * test_msbit 0:$1E9D 0:data:reset=0:$000D 0:$1E9E 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1E9F z:data:reset=0:$0000 if !z // * TRAP 0:$1EA0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1EA1 0:data:reset=0:$5EA0 0:$1EA2 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1EA3 d15:data:reset=0:$7FF8 1:$1EA0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1EA1 d15:data:reset=0:$5EA4 test_msbit 14 0:$1EA4 0:000011:A1=A7:DE=D0 ld msbit,~(1<<14) // * test_msbit 0:$1EA5 0:data:reset=0:$BFFF 0:$1EA6 0:000011:A1=A7:D8=D0 ld alu,14 // * test_msbit 0:$1EA7 0:data:reset=0:$000E 0:$1EA8 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1EA9 z:data:reset=0:$0000 if !z // * TRAP 0:$1EAA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1EAB 0:data:reset=0:$5EAA 0:$1EAC 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1EAD d15:data:reset=0:$7FF8 1:$1EAA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1EAB d15:data:reset=0:$5EAE 0:$1EAE 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-14)) // * test_msbit 0:$1EAF 0:data:reset=0:$AAAA 0:$1EB0 0:000011:A1=A2:D8=D0 ld alu,14 // * test_msbit 0:$1EB1 0:data:reset=0:$000E 0:$1EB2 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1EB3 z:data:reset=0:$0000 if !z // * TRAP 0:$1EB4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1EB5 0:data:reset=0:$5EB4 0:$1EB6 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1EB7 d15:data:reset=0:$7FF8 1:$1EB4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1EB5 d15:data:reset=0:$5EB8 test_msbit 15 0:$1EB8 0:000011:A1=A7:DE=D0 ld msbit,~(1<<15) // * test_msbit 0:$1EB9 0:data:reset=0:$7FFF 0:$1EBA 0:000011:A1=A7:D8=D0 ld alu,15 // * test_msbit 0:$1EBB 0:data:reset=0:$000F 0:$1EBC 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1EBD z:data:reset=0:$0000 if !z // * TRAP 0:$1EBE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1EBF 0:data:reset=0:$5EBE 0:$1EC0 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1EC1 d15:data:reset=0:$7FF8 1:$1EBE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1EBF d15:data:reset=0:$5EC2 0:$1EC2 0:000011:A1=A7:DE=D0 ld msbit,~($aaaa>>(15-15)) // * test_msbit 0:$1EC3 0:data:reset=0:$5555 0:$1EC4 0:000011:A1=A5:D8=D0 ld alu,15 // * test_msbit 0:$1EC5 0:data:reset=0:$000F 0:$1EC6 0:000001:A1=A0:D3=DE equ msbit // * test_msbit TRAP !z // * test_msbit 0:$1EC7 z:data:reset=0:$0000 if !z // * TRAP 0:$1EC8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1EC9 0:data:reset=0:$5EC8 0:$1ECA 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1ECB d15:data:reset=0:$7FF8 1:$1EC8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1EC9 d15:data:reset=0:$5ECC // D2A, A2D: 0:$1ECC 0:000011:A1=A7:D8=D0 ld alu,0 0:$1ECD 0:data:reset=0:$0000 0:$1ECE 0:000011:A3=A1:D3=D8 ld a0,alu 0:$1ECF 0:000001:A1=A3:D3=D3 equ a0 TRAP !z 0:$1ED0 z:data:reset=0:$0000 if !z // * TRAP 0:$1ED1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1ED2 0:data:reset=0:$5ED1 0:$1ED3 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1ED4 d15:data:reset=0:$7FF8 1:$1ED1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1ED2 d15:data:reset=0:$5ED5 0:$1ED5 0:000011:A1=A7:D8=D0 ld alu,$ffff 0:$1ED6 0:data:reset=0:$FFFF 0:$1ED7 0:000011:A3=A1:D3=D8 ld a0,alu 0:$1ED8 0:000001:A1=A3:D3=D3 equ a0 TRAP !z 0:$1ED9 z:data:reset=0:$0000 if !z // * TRAP 0:$1EDA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1EDB 0:data:reset=0:$5EDA 0:$1EDC 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1EDD d15:data:reset=0:$7FF8 1:$1EDA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1EDB d15:data:reset=0:$5EDE 0:$1EDE 0:000011:A1=A7:D8=D0 ld alu,$55aa 0:$1EDF 0:data:reset=0:$55AA 0:$1EE0 0:000011:A3=A1:D3=D8 ld a0,alu 0:$1EE1 0:000001:A1=A3:D3=D3 equ a0 TRAP !z 0:$1EE2 z:data:reset=0:$0000 if !z // * TRAP 0:$1EE3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1EE4 0:data:reset=0:$5EE3 0:$1EE5 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1EE6 d15:data:reset=0:$7FF8 1:$1EE3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1EE4 d15:data:reset=0:$5EE7 0:$1EE7 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$1EE8 0:data:reset=0:$AA55 0:$1EE9 0:000011:A3=A1:D3=D8 ld a0,alu 0:$1EEA 0:000001:A1=A3:D3=D3 equ a0 TRAP !z 0:$1EEB z:data:reset=0:$0000 if !z // * TRAP 0:$1EEC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1EED 0:data:reset=0:$5EEC 0:$1EEE 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1EEF d15:data:reset=0:$7FF8 1:$1EEC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1EED d15:data:reset=0:$5EF0 // D2AR: 0:$1EF0 0:000011:A1=A7:DF=D0 ld d2ar,0 0:$1EF1 0:data:reset=0:$0000 0:$1EF2 0:000011:A1=A7:D3=D3 tst d2ar TRAP !z 0:$1EF3 z:data:reset=0:$0000 if !z // * TRAP 0:$1EF4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1EF5 0:data:reset=0:$5EF4 0:$1EF6 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1EF7 d15:data:reset=0:$7FF8 1:$1EF4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1EF5 d15:data:reset=0:$5EF8 0:$1EF8 0:000011:A1=A7:DF=D0 ld d2ar,$ffff 0:$1EF9 0:data:reset=0:$FFFF 0:$1EFA 0:001011:A1=A7:D3=D3 tstn d2ar TRAP !z 0:$1EFB z:data:reset=0:$0000 if !z // * TRAP 0:$1EFC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1EFD 0:data:reset=0:$5EFC 0:$1EFE 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$1EFF d15:data:reset=0:$7FF8 1:$1EFC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1EFD d15:data:reset=0:$5F00 0:$1F00 0:000011:A1=A7:D8=D0 ld alu,$55aa 0:$1F01 0:data:reset=0:$55AA 0:$1F02 0:000011:A1=A5:DF=D8 ld d2ar,alu 0:$1F03 0:000001:A1=A7:D3=D3 equ d2ar TRAP !z 0:$1F04 z:data:reset=0:$0000 if !z // * TRAP 0:$1F05 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F06 0:data:reset=0:$5F05 0:$1F07 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F08 d15:data:reset=0:$7FF8 1:$1F05 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F06 d15:data:reset=0:$5F09 0:$1F09 0:000011:A1=A7:D8=D0 ld alu,$aa55 0:$1F0A 0:data:reset=0:$AA55 0:$1F0B 0:000011:A1=A2:DF=D8 ld d2ar,alu 0:$1F0C 0:000001:A1=A7:D3=D3 equ d2ar TRAP !z 0:$1F0D z:data:reset=0:$0000 if !z // * TRAP 0:$1F0E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F0F 0:data:reset=0:$5F0E 0:$1F10 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F11 d15:data:reset=0:$7FF8 1:$1F0E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F0F d15:data:reset=0:$5F12 // --- file: "dregs.asm" --- #include "aregs.asm" // +++ file: "aregs.asm" +++ // instr testIncrDecrA(AR,N) // ld AR,N-1 // ld AR,AR+1 // ld alu,N // equ AR // TRAP !z // ld AR,AR-1 // ld alu,N-1 // equ AR // TRAP !z // end // instr testAreg(AR) // ld AR,0 // tst AR // TRAP !z // // ld AR,$ffff // tstn AR // TRAP !z // // ld alu,$55aa // ld AR,alu // equ AR // TRAP !z // // ld alu,$aa55 // ld AR,alu // equ AR // TRAP !z // // testIncrDecrA AR,1 // testIncrDecrA AR,2 // testIncrDecrA AR,4 // testIncrDecrA AR,8 // testIncrDecrA AR,$10 // testIncrDecrA AR,$20 // testIncrDecrA AR,$40 // testIncrDecrA AR,$80 // testIncrDecrA AR,$100 // testIncrDecrA AR,$200 // testIncrDecrA AR,$400 // testIncrDecrA AR,$800 // testIncrDecrA AR,$1000 // testIncrDecrA AR,$2000 // testIncrDecrA AR,$4000 // testIncrDecrA AR,$8000 // testIncrDecrA AR,0 // end testAreg a0 0:$1F12 0:000011:A3=A1:D3=D0 ld a0,0 // * testAreg 0:$1F13 0:data:reset=0:$0000 0:$1F14 0:000011:A1=A3:D3=D3 tst a0 // * testAreg TRAP !z // * testAreg 0:$1F15 z:data:reset=0:$0000 if !z // * TRAP 0:$1F16 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F17 0:data:reset=0:$5F16 0:$1F18 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F19 d15:data:reset=0:$7FF8 1:$1F16 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F17 d15:data:reset=0:$5F1A 0:$1F1A 0:000011:A3=A1:D3=D0 ld a0,$ffff // * testAreg 0:$1F1B 0:data:reset=0:$FFFF 0:$1F1C 0:001011:A1=A3:D3=D3 tstn a0 // * testAreg TRAP !z // * testAreg 0:$1F1D z:data:reset=0:$0000 if !z // * TRAP 0:$1F1E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F1F 0:data:reset=0:$5F1E 0:$1F20 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F21 d15:data:reset=0:$7FF8 1:$1F1E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F1F d15:data:reset=0:$5F22 0:$1F22 0:000011:A1=A7:D8=D0 ld alu,$55aa // * testAreg 0:$1F23 0:data:reset=0:$55AA 0:$1F24 0:000011:A3=A1:D3=D8 ld a0,alu // * testAreg 0:$1F25 0:000001:A1=A3:D3=D3 equ a0 // * testAreg TRAP !z // * testAreg 0:$1F26 z:data:reset=0:$0000 if !z // * TRAP 0:$1F27 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F28 0:data:reset=0:$5F27 0:$1F29 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F2A d15:data:reset=0:$7FF8 1:$1F27 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F28 d15:data:reset=0:$5F2B 0:$1F2B 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * testAreg 0:$1F2C 0:data:reset=0:$AA55 0:$1F2D 0:000011:A3=A1:D3=D8 ld a0,alu // * testAreg 0:$1F2E 0:000001:A1=A3:D3=D3 equ a0 // * testAreg TRAP !z // * testAreg 0:$1F2F z:data:reset=0:$0000 if !z // * TRAP 0:$1F30 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F31 0:data:reset=0:$5F30 0:$1F32 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F33 d15:data:reset=0:$7FF8 1:$1F30 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F31 d15:data:reset=0:$5F34 testIncrDecrA a0,1 // * testAreg 0:$1F34 0:000011:A3=A1:D3=D0 ld a0,1 -1 // * testIncrDecrA 0:$1F35 0:data:reset=0:$0000 0:$1F36 0:000011:A3=A3:D3=D8 ld a0,a0+1 // * testIncrDecrA 0:$1F37 0:000011:A1=A3:D8=D0 ld alu,1 // * testIncrDecrA 0:$1F38 0:data:reset=0:$0001 0:$1F39 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1F3A z:data:reset=0:$0000 if !z // * TRAP 0:$1F3B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F3C 0:data:reset=0:$5F3B 0:$1F3D 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F3E d15:data:reset=0:$7FF8 1:$1F3B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F3C d15:data:reset=0:$5F3F 0:$1F3F 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$1F40 0:000011:A1=A3:D8=D0 ld alu,1 -1 // * testIncrDecrA 0:$1F41 0:data:reset=0:$0000 0:$1F42 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1F43 z:data:reset=0:$0000 if !z // * TRAP 0:$1F44 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F45 0:data:reset=0:$5F44 0:$1F46 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F47 d15:data:reset=0:$7FF8 1:$1F44 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F45 d15:data:reset=0:$5F48 testIncrDecrA a0,2 // * testAreg 0:$1F48 0:000011:A3=A1:D3=D0 ld a0,2 -1 // * testIncrDecrA 0:$1F49 0:data:reset=0:$0001 0:$1F4A 0:000011:A3=A3:D3=D8 ld a0,a0+1 // * testIncrDecrA 0:$1F4B 0:000011:A1=A3:D8=D0 ld alu,2 // * testIncrDecrA 0:$1F4C 0:data:reset=0:$0002 0:$1F4D 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1F4E z:data:reset=0:$0000 if !z // * TRAP 0:$1F4F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F50 0:data:reset=0:$5F4F 0:$1F51 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F52 d15:data:reset=0:$7FF8 1:$1F4F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F50 d15:data:reset=0:$5F53 0:$1F53 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$1F54 0:000011:A1=A3:D8=D0 ld alu,2 -1 // * testIncrDecrA 0:$1F55 0:data:reset=0:$0001 0:$1F56 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1F57 z:data:reset=0:$0000 if !z // * TRAP 0:$1F58 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F59 0:data:reset=0:$5F58 0:$1F5A 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F5B d15:data:reset=0:$7FF8 1:$1F58 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F59 d15:data:reset=0:$5F5C testIncrDecrA a0,4 // * testAreg 0:$1F5C 0:000011:A3=A1:D3=D0 ld a0,4 -1 // * testIncrDecrA 0:$1F5D 0:data:reset=0:$0003 0:$1F5E 0:000011:A3=A3:D3=D3 ld a0,a0+1 // * testIncrDecrA 0:$1F5F 0:000011:A1=A3:D8=D0 ld alu,4 // * testIncrDecrA 0:$1F60 0:data:reset=0:$0004 0:$1F61 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1F62 z:data:reset=0:$0000 if !z // * TRAP 0:$1F63 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F64 0:data:reset=0:$5F63 0:$1F65 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F66 d15:data:reset=0:$7FF8 1:$1F63 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F64 d15:data:reset=0:$5F67 0:$1F67 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$1F68 0:000011:A1=A3:D8=D0 ld alu,4 -1 // * testIncrDecrA 0:$1F69 0:data:reset=0:$0003 0:$1F6A 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1F6B z:data:reset=0:$0000 if !z // * TRAP 0:$1F6C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F6D 0:data:reset=0:$5F6C 0:$1F6E 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F6F d15:data:reset=0:$7FF8 1:$1F6C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F6D d15:data:reset=0:$5F70 testIncrDecrA a0,8 // * testAreg 0:$1F70 0:000011:A3=A1:D3=D0 ld a0,8 -1 // * testIncrDecrA 0:$1F71 0:data:reset=0:$0007 0:$1F72 0:000011:A3=A3:D3=D7 ld a0,a0+1 // * testIncrDecrA 0:$1F73 0:000011:A1=A3:D8=D0 ld alu,8 // * testIncrDecrA 0:$1F74 0:data:reset=0:$0008 0:$1F75 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1F76 z:data:reset=0:$0000 if !z // * TRAP 0:$1F77 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F78 0:data:reset=0:$5F77 0:$1F79 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F7A d15:data:reset=0:$7FF8 1:$1F77 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F78 d15:data:reset=0:$5F7B 0:$1F7B 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$1F7C 0:000011:A1=A3:D8=D0 ld alu,8 -1 // * testIncrDecrA 0:$1F7D 0:data:reset=0:$0007 0:$1F7E 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1F7F z:data:reset=0:$0000 if !z // * TRAP 0:$1F80 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F81 0:data:reset=0:$5F80 0:$1F82 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F83 d15:data:reset=0:$7FF8 1:$1F80 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F81 d15:data:reset=0:$5F84 testIncrDecrA a0,$10 // * testAreg 0:$1F84 0:000011:A3=A1:D3=D0 ld a0,$10 -1 // * testIncrDecrA 0:$1F85 0:data:reset=0:$000F 0:$1F86 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$1F87 0:000011:A1=A3:D8=D0 ld alu,$10 // * testIncrDecrA 0:$1F88 0:data:reset=0:$0010 0:$1F89 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1F8A z:data:reset=0:$0000 if !z // * TRAP 0:$1F8B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F8C 0:data:reset=0:$5F8B 0:$1F8D 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F8E d15:data:reset=0:$7FF8 1:$1F8B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F8C d15:data:reset=0:$5F8F 0:$1F8F 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$1F90 0:000011:A1=A3:D8=D0 ld alu,$10 -1 // * testIncrDecrA 0:$1F91 0:data:reset=0:$000F 0:$1F92 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1F93 z:data:reset=0:$0000 if !z // * TRAP 0:$1F94 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1F95 0:data:reset=0:$5F94 0:$1F96 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1F97 d15:data:reset=0:$7FF8 1:$1F94 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1F95 d15:data:reset=0:$5F98 testIncrDecrA a0,$20 // * testAreg 0:$1F98 0:000011:A3=A1:D3=D0 ld a0,$20 -1 // * testIncrDecrA 0:$1F99 0:data:reset=0:$001F 0:$1F9A 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$1F9B 0:000011:A1=A3:D8=D0 ld alu,$20 // * testIncrDecrA 0:$1F9C 0:data:reset=0:$0020 0:$1F9D 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1F9E z:data:reset=0:$0000 if !z // * TRAP 0:$1F9F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1FA0 0:data:reset=0:$5F9F 0:$1FA1 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1FA2 d15:data:reset=0:$7FF8 1:$1F9F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1FA0 d15:data:reset=0:$5FA3 0:$1FA3 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$1FA4 0:000011:A1=A3:D8=D0 ld alu,$20 -1 // * testIncrDecrA 0:$1FA5 0:data:reset=0:$001F 0:$1FA6 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1FA7 z:data:reset=0:$0000 if !z // * TRAP 0:$1FA8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1FA9 0:data:reset=0:$5FA8 0:$1FAA 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1FAB d15:data:reset=0:$7FF8 1:$1FA8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1FA9 d15:data:reset=0:$5FAC testIncrDecrA a0,$40 // * testAreg 0:$1FAC 0:000011:A3=A1:D3=D0 ld a0,$40 -1 // * testIncrDecrA 0:$1FAD 0:data:reset=0:$003F 0:$1FAE 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$1FAF 0:000011:A1=A3:D8=D0 ld alu,$40 // * testIncrDecrA 0:$1FB0 0:data:reset=0:$0040 0:$1FB1 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1FB2 z:data:reset=0:$0000 if !z // * TRAP 0:$1FB3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1FB4 0:data:reset=0:$5FB3 0:$1FB5 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1FB6 d15:data:reset=0:$7FF8 1:$1FB3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1FB4 d15:data:reset=0:$5FB7 0:$1FB7 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$1FB8 0:000011:A1=A3:D8=D0 ld alu,$40 -1 // * testIncrDecrA 0:$1FB9 0:data:reset=0:$003F 0:$1FBA 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1FBB z:data:reset=0:$0000 if !z // * TRAP 0:$1FBC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1FBD 0:data:reset=0:$5FBC 0:$1FBE 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1FBF d15:data:reset=0:$7FF8 1:$1FBC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1FBD d15:data:reset=0:$5FC0 testIncrDecrA a0,$80 // * testAreg 0:$1FC0 0:000011:A3=A1:D3=D0 ld a0,$80 -1 // * testIncrDecrA 0:$1FC1 0:data:reset=0:$007F 0:$1FC2 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$1FC3 0:000011:A1=A3:D8=D0 ld alu,$80 // * testIncrDecrA 0:$1FC4 0:data:reset=0:$0080 0:$1FC5 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1FC6 z:data:reset=0:$0000 if !z // * TRAP 0:$1FC7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1FC8 0:data:reset=0:$5FC7 0:$1FC9 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1FCA d15:data:reset=0:$7FF8 1:$1FC7 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1FC8 d15:data:reset=0:$5FCB 0:$1FCB 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$1FCC 0:000011:A1=A3:D8=D0 ld alu,$80 -1 // * testIncrDecrA 0:$1FCD 0:data:reset=0:$007F 0:$1FCE 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1FCF z:data:reset=0:$0000 if !z // * TRAP 0:$1FD0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1FD1 0:data:reset=0:$5FD0 0:$1FD2 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1FD3 d15:data:reset=0:$7FF8 1:$1FD0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1FD1 d15:data:reset=0:$5FD4 testIncrDecrA a0,$100 // * testAreg 0:$1FD4 0:000011:A3=A1:D3=D0 ld a0,$100 -1 // * testIncrDecrA 0:$1FD5 0:data:reset=0:$00FF 0:$1FD6 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$1FD7 0:000011:A1=A3:D8=D0 ld alu,$100 // * testIncrDecrA 0:$1FD8 0:data:reset=0:$0100 0:$1FD9 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1FDA z:data:reset=0:$0000 if !z // * TRAP 0:$1FDB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1FDC 0:data:reset=0:$5FDB 0:$1FDD 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1FDE d15:data:reset=0:$7FF8 1:$1FDB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1FDC d15:data:reset=0:$5FDF 0:$1FDF 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$1FE0 0:000011:A1=A3:D8=D0 ld alu,$100 -1 // * testIncrDecrA 0:$1FE1 0:data:reset=0:$00FF 0:$1FE2 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1FE3 z:data:reset=0:$0000 if !z // * TRAP 0:$1FE4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1FE5 0:data:reset=0:$5FE4 0:$1FE6 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1FE7 d15:data:reset=0:$7FF8 1:$1FE4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1FE5 d15:data:reset=0:$5FE8 testIncrDecrA a0,$200 // * testAreg 0:$1FE8 0:000011:A3=A1:D3=D0 ld a0,$200 -1 // * testIncrDecrA 0:$1FE9 0:data:reset=0:$01FF 0:$1FEA 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$1FEB 0:000011:A1=A3:D8=D0 ld alu,$200 // * testIncrDecrA 0:$1FEC 0:data:reset=0:$0200 0:$1FED 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1FEE z:data:reset=0:$0000 if !z // * TRAP 0:$1FEF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1FF0 0:data:reset=0:$5FEF 0:$1FF1 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1FF2 d15:data:reset=0:$7FF8 1:$1FEF 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1FF0 d15:data:reset=0:$5FF3 0:$1FF3 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$1FF4 0:000011:A1=A3:D8=D0 ld alu,$200 -1 // * testIncrDecrA 0:$1FF5 0:data:reset=0:$01FF 0:$1FF6 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$1FF7 z:data:reset=0:$0000 if !z // * TRAP 0:$1FF8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$1FF9 0:data:reset=0:$5FF8 0:$1FFA 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$1FFB d15:data:reset=0:$7FF8 1:$1FF8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$1FF9 d15:data:reset=0:$5FFC testIncrDecrA a0,$400 // * testAreg 0:$1FFC 0:000011:A3=A1:D3=D0 ld a0,$400 -1 // * testIncrDecrA 0:$1FFD 0:data:reset=0:$03FF 0:$1FFE 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$1FFF 0:000011:A1=A3:D8=D0 ld alu,$400 // * testIncrDecrA 0:$2000 0:data:reset=0:$0400 0:$2001 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2002 z:data:reset=0:$0000 if !z // * TRAP 0:$2003 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2004 0:data:reset=0:$6003 0:$2005 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$2006 d15:data:reset=0:$7FF8 1:$2003 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2004 d15:data:reset=0:$6007 0:$2007 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$2008 0:000011:A1=A3:D8=D0 ld alu,$400 -1 // * testIncrDecrA 0:$2009 0:data:reset=0:$03FF 0:$200A 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$200B z:data:reset=0:$0000 if !z // * TRAP 0:$200C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$200D 0:data:reset=0:$600C 0:$200E 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$200F d15:data:reset=0:$7FF8 1:$200C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$200D d15:data:reset=0:$6010 testIncrDecrA a0,$800 // * testAreg 0:$2010 0:000011:A3=A1:D3=D0 ld a0,$800 -1 // * testIncrDecrA 0:$2011 0:data:reset=0:$07FF 0:$2012 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$2013 0:000011:A1=A3:D8=D0 ld alu,$800 // * testIncrDecrA 0:$2014 0:data:reset=0:$0800 0:$2015 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2016 z:data:reset=0:$0000 if !z // * TRAP 0:$2017 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2018 0:data:reset=0:$6017 0:$2019 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$201A d15:data:reset=0:$7FF8 1:$2017 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2018 d15:data:reset=0:$601B 0:$201B 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$201C 0:000011:A1=A3:D8=D0 ld alu,$800 -1 // * testIncrDecrA 0:$201D 0:data:reset=0:$07FF 0:$201E 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$201F z:data:reset=0:$0000 if !z // * TRAP 0:$2020 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2021 0:data:reset=0:$6020 0:$2022 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$2023 d15:data:reset=0:$7FF8 1:$2020 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2021 d15:data:reset=0:$6024 testIncrDecrA a0,$1000 // * testAreg 0:$2024 0:000011:A3=A1:D3=D0 ld a0,$1000 -1 // * testIncrDecrA 0:$2025 0:data:reset=0:$0FFF 0:$2026 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$2027 0:000011:A1=A3:D8=D0 ld alu,$1000 // * testIncrDecrA 0:$2028 0:data:reset=0:$1000 0:$2029 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$202A z:data:reset=0:$0000 if !z // * TRAP 0:$202B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$202C 0:data:reset=0:$602B 0:$202D 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$202E d15:data:reset=0:$7FF8 1:$202B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$202C d15:data:reset=0:$602F 0:$202F 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$2030 0:000011:A1=A3:D8=D0 ld alu,$1000 -1 // * testIncrDecrA 0:$2031 0:data:reset=0:$0FFF 0:$2032 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2033 z:data:reset=0:$0000 if !z // * TRAP 0:$2034 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2035 0:data:reset=0:$6034 0:$2036 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$2037 d15:data:reset=0:$7FF8 1:$2034 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2035 d15:data:reset=0:$6038 testIncrDecrA a0,$2000 // * testAreg 0:$2038 0:000011:A3=A1:D3=D0 ld a0,$2000 -1 // * testIncrDecrA 0:$2039 0:data:reset=0:$1FFF 0:$203A 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$203B 0:000011:A1=A3:D8=D0 ld alu,$2000 // * testIncrDecrA 0:$203C 0:data:reset=0:$2000 0:$203D 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$203E z:data:reset=0:$0000 if !z // * TRAP 0:$203F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2040 0:data:reset=0:$603F 0:$2041 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$2042 d15:data:reset=0:$7FF8 1:$203F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2040 d15:data:reset=0:$6043 0:$2043 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$2044 0:000011:A1=A3:D8=D0 ld alu,$2000 -1 // * testIncrDecrA 0:$2045 0:data:reset=0:$1FFF 0:$2046 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2047 z:data:reset=0:$0000 if !z // * TRAP 0:$2048 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2049 0:data:reset=0:$6048 0:$204A 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$204B d15:data:reset=0:$7FF8 1:$2048 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2049 d15:data:reset=0:$604C testIncrDecrA a0,$4000 // * testAreg 0:$204C 0:000011:A3=A1:D3=D0 ld a0,$4000 -1 // * testIncrDecrA 0:$204D 0:data:reset=0:$3FFF 0:$204E 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$204F 0:000011:A1=A3:D8=D0 ld alu,$4000 // * testIncrDecrA 0:$2050 0:data:reset=0:$4000 0:$2051 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2052 z:data:reset=0:$0000 if !z // * TRAP 0:$2053 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2054 0:data:reset=0:$6053 0:$2055 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$2056 d15:data:reset=0:$7FF8 1:$2053 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2054 d15:data:reset=0:$6057 0:$2057 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$2058 0:000011:A1=A3:D8=D0 ld alu,$4000 -1 // * testIncrDecrA 0:$2059 0:data:reset=0:$3FFF 0:$205A 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$205B z:data:reset=0:$0000 if !z // * TRAP 0:$205C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$205D 0:data:reset=0:$605C 0:$205E 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$205F d15:data:reset=0:$7FF8 1:$205C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$205D d15:data:reset=0:$6060 testIncrDecrA a0,$8000 // * testAreg 0:$2060 0:000011:A3=A1:D3=D0 ld a0,$8000 -1 // * testIncrDecrA 0:$2061 0:data:reset=0:$7FFF 0:$2062 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$2063 0:000011:A1=A3:D8=D0 ld alu,$8000 // * testIncrDecrA 0:$2064 0:data:reset=0:$8000 0:$2065 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2066 z:data:reset=0:$0000 if !z // * TRAP 0:$2067 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2068 0:data:reset=0:$6067 0:$2069 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$206A d15:data:reset=0:$7FF8 1:$2067 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2068 d15:data:reset=0:$606B 0:$206B 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$206C 0:000011:A1=A3:D8=D0 ld alu,$8000 -1 // * testIncrDecrA 0:$206D 0:data:reset=0:$7FFF 0:$206E 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$206F z:data:reset=0:$0000 if !z // * TRAP 0:$2070 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2071 0:data:reset=0:$6070 0:$2072 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$2073 d15:data:reset=0:$7FF8 1:$2070 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2071 d15:data:reset=0:$6074 testIncrDecrA a0,0 // * testAreg 0:$2074 0:000011:A3=A1:D3=D0 ld a0,0 -1 // * testIncrDecrA 0:$2075 0:data:reset=0:$FFFF 0:$2076 0:000011:A3=A3:D3=DF ld a0,a0+1 // * testIncrDecrA 0:$2077 0:000011:A1=A3:D8=D0 ld alu,0 // * testIncrDecrA 0:$2078 0:data:reset=0:$0000 0:$2079 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$207A z:data:reset=0:$0000 if !z // * TRAP 0:$207B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$207C 0:data:reset=0:$607B 0:$207D 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$207E d15:data:reset=0:$7FF8 1:$207B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$207C d15:data:reset=0:$607F 0:$207F 0:010011:A3=A3:D3=D8 ld a0,a0-1 // * testIncrDecrA 0:$2080 0:000011:A1=A3:D8=D0 ld alu,0 -1 // * testIncrDecrA 0:$2081 0:data:reset=0:$FFFF 0:$2082 0:000001:A1=A3:D3=D3 equ a0 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2083 z:data:reset=0:$0000 if !z // * TRAP 0:$2084 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2085 0:data:reset=0:$6084 0:$2086 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$2087 d15:data:reset=0:$7FF8 1:$2084 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2085 d15:data:reset=0:$6088 testAreg a1 0:$2088 0:000011:A4=A1:D3=D0 ld a1,0 // * testAreg 0:$2089 0:data:reset=0:$0000 0:$208A 0:000011:A1=A4:D3=D3 tst a1 // * testAreg TRAP !z // * testAreg 0:$208B z:data:reset=0:$0000 if !z // * TRAP 0:$208C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$208D 0:data:reset=0:$608C 0:$208E 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$208F d15:data:reset=0:$7FF8 1:$208C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$208D d15:data:reset=0:$6090 0:$2090 0:000011:A4=A1:D3=D0 ld a1,$ffff // * testAreg 0:$2091 0:data:reset=0:$FFFF 0:$2092 0:001011:A1=A4:D3=D3 tstn a1 // * testAreg TRAP !z // * testAreg 0:$2093 z:data:reset=0:$0000 if !z // * TRAP 0:$2094 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2095 0:data:reset=0:$6094 0:$2096 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$2097 d15:data:reset=0:$7FF8 1:$2094 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2095 d15:data:reset=0:$6098 0:$2098 0:000011:A1=A7:D8=D0 ld alu,$55aa // * testAreg 0:$2099 0:data:reset=0:$55AA 0:$209A 0:000011:A4=A1:D3=D8 ld a1,alu // * testAreg 0:$209B 0:000001:A1=A4:D3=D3 equ a1 // * testAreg TRAP !z // * testAreg 0:$209C z:data:reset=0:$0000 if !z // * TRAP 0:$209D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$209E 0:data:reset=0:$609D 0:$209F 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$20A0 d15:data:reset=0:$7FF8 1:$209D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$209E d15:data:reset=0:$60A1 0:$20A1 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * testAreg 0:$20A2 0:data:reset=0:$AA55 0:$20A3 0:000011:A4=A1:D3=D8 ld a1,alu // * testAreg 0:$20A4 0:000001:A1=A4:D3=D3 equ a1 // * testAreg TRAP !z // * testAreg 0:$20A5 z:data:reset=0:$0000 if !z // * TRAP 0:$20A6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$20A7 0:data:reset=0:$60A6 0:$20A8 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$20A9 d15:data:reset=0:$7FF8 1:$20A6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$20A7 d15:data:reset=0:$60AA testIncrDecrA a1,1 // * testAreg 0:$20AA 0:000011:A4=A1:D3=D0 ld a1,1 -1 // * testIncrDecrA 0:$20AB 0:data:reset=0:$0000 0:$20AC 0:000011:A4=A4:D3=D8 ld a1,a1+1 // * testIncrDecrA 0:$20AD 0:000011:A1=A4:D8=D0 ld alu,1 // * testIncrDecrA 0:$20AE 0:data:reset=0:$0001 0:$20AF 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$20B0 z:data:reset=0:$0000 if !z // * TRAP 0:$20B1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$20B2 0:data:reset=0:$60B1 0:$20B3 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$20B4 d15:data:reset=0:$7FF8 1:$20B1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$20B2 d15:data:reset=0:$60B5 0:$20B5 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$20B6 0:000011:A1=A4:D8=D0 ld alu,1 -1 // * testIncrDecrA 0:$20B7 0:data:reset=0:$0000 0:$20B8 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$20B9 z:data:reset=0:$0000 if !z // * TRAP 0:$20BA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$20BB 0:data:reset=0:$60BA 0:$20BC 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$20BD d15:data:reset=0:$7FF8 1:$20BA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$20BB d15:data:reset=0:$60BE testIncrDecrA a1,2 // * testAreg 0:$20BE 0:000011:A4=A1:D3=D0 ld a1,2 -1 // * testIncrDecrA 0:$20BF 0:data:reset=0:$0001 0:$20C0 0:000011:A4=A4:D3=D8 ld a1,a1+1 // * testIncrDecrA 0:$20C1 0:000011:A1=A4:D8=D0 ld alu,2 // * testIncrDecrA 0:$20C2 0:data:reset=0:$0002 0:$20C3 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$20C4 z:data:reset=0:$0000 if !z // * TRAP 0:$20C5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$20C6 0:data:reset=0:$60C5 0:$20C7 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$20C8 d15:data:reset=0:$7FF8 1:$20C5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$20C6 d15:data:reset=0:$60C9 0:$20C9 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$20CA 0:000011:A1=A4:D8=D0 ld alu,2 -1 // * testIncrDecrA 0:$20CB 0:data:reset=0:$0001 0:$20CC 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$20CD z:data:reset=0:$0000 if !z // * TRAP 0:$20CE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$20CF 0:data:reset=0:$60CE 0:$20D0 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$20D1 d15:data:reset=0:$7FF8 1:$20CE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$20CF d15:data:reset=0:$60D2 testIncrDecrA a1,4 // * testAreg 0:$20D2 0:000011:A4=A1:D3=D0 ld a1,4 -1 // * testIncrDecrA 0:$20D3 0:data:reset=0:$0003 0:$20D4 0:000011:A4=A4:D3=D3 ld a1,a1+1 // * testIncrDecrA 0:$20D5 0:000011:A1=A4:D8=D0 ld alu,4 // * testIncrDecrA 0:$20D6 0:data:reset=0:$0004 0:$20D7 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$20D8 z:data:reset=0:$0000 if !z // * TRAP 0:$20D9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$20DA 0:data:reset=0:$60D9 0:$20DB 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$20DC d15:data:reset=0:$7FF8 1:$20D9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$20DA d15:data:reset=0:$60DD 0:$20DD 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$20DE 0:000011:A1=A4:D8=D0 ld alu,4 -1 // * testIncrDecrA 0:$20DF 0:data:reset=0:$0003 0:$20E0 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$20E1 z:data:reset=0:$0000 if !z // * TRAP 0:$20E2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$20E3 0:data:reset=0:$60E2 0:$20E4 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$20E5 d15:data:reset=0:$7FF8 1:$20E2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$20E3 d15:data:reset=0:$60E6 testIncrDecrA a1,8 // * testAreg 0:$20E6 0:000011:A4=A1:D3=D0 ld a1,8 -1 // * testIncrDecrA 0:$20E7 0:data:reset=0:$0007 0:$20E8 0:000011:A4=A4:D3=D7 ld a1,a1+1 // * testIncrDecrA 0:$20E9 0:000011:A1=A4:D8=D0 ld alu,8 // * testIncrDecrA 0:$20EA 0:data:reset=0:$0008 0:$20EB 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$20EC z:data:reset=0:$0000 if !z // * TRAP 0:$20ED 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$20EE 0:data:reset=0:$60ED 0:$20EF 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$20F0 d15:data:reset=0:$7FF8 1:$20ED 1:000011:A1=A7:D0=D0 then // * TRAP 1:$20EE d15:data:reset=0:$60F1 0:$20F1 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$20F2 0:000011:A1=A4:D8=D0 ld alu,8 -1 // * testIncrDecrA 0:$20F3 0:data:reset=0:$0007 0:$20F4 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$20F5 z:data:reset=0:$0000 if !z // * TRAP 0:$20F6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$20F7 0:data:reset=0:$60F6 0:$20F8 0:000011:A1=A0:D0=D0 jp error // * TRAP 0:$20F9 d15:data:reset=0:$7FF8 1:$20F6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$20F7 d15:data:reset=0:$60FA testIncrDecrA a1,$10 // * testAreg 0:$20FA 0:000011:A4=A1:D3=D0 ld a1,$10 -1 // * testIncrDecrA 0:$20FB 0:data:reset=0:$000F 0:$20FC 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$20FD 0:000011:A1=A4:D8=D0 ld alu,$10 // * testIncrDecrA 0:$20FE 0:data:reset=0:$0010 0:$20FF 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2100 z:data:reset=0:$0000 if !z // * TRAP 0:$2101 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2102 0:data:reset=0:$6101 0:$2103 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$2104 d15:data:reset=0:$7FF8 1:$2101 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2102 d15:data:reset=0:$6105 0:$2105 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$2106 0:000011:A1=A4:D8=D0 ld alu,$10 -1 // * testIncrDecrA 0:$2107 0:data:reset=0:$000F 0:$2108 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2109 z:data:reset=0:$0000 if !z // * TRAP 0:$210A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$210B 0:data:reset=0:$610A 0:$210C 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$210D d15:data:reset=0:$7FF8 1:$210A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$210B d15:data:reset=0:$610E testIncrDecrA a1,$20 // * testAreg 0:$210E 0:000011:A4=A1:D3=D0 ld a1,$20 -1 // * testIncrDecrA 0:$210F 0:data:reset=0:$001F 0:$2110 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$2111 0:000011:A1=A4:D8=D0 ld alu,$20 // * testIncrDecrA 0:$2112 0:data:reset=0:$0020 0:$2113 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2114 z:data:reset=0:$0000 if !z // * TRAP 0:$2115 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2116 0:data:reset=0:$6115 0:$2117 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$2118 d15:data:reset=0:$7FF8 1:$2115 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2116 d15:data:reset=0:$6119 0:$2119 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$211A 0:000011:A1=A4:D8=D0 ld alu,$20 -1 // * testIncrDecrA 0:$211B 0:data:reset=0:$001F 0:$211C 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$211D z:data:reset=0:$0000 if !z // * TRAP 0:$211E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$211F 0:data:reset=0:$611E 0:$2120 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$2121 d15:data:reset=0:$7FF8 1:$211E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$211F d15:data:reset=0:$6122 testIncrDecrA a1,$40 // * testAreg 0:$2122 0:000011:A4=A1:D3=D0 ld a1,$40 -1 // * testIncrDecrA 0:$2123 0:data:reset=0:$003F 0:$2124 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$2125 0:000011:A1=A4:D8=D0 ld alu,$40 // * testIncrDecrA 0:$2126 0:data:reset=0:$0040 0:$2127 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2128 z:data:reset=0:$0000 if !z // * TRAP 0:$2129 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$212A 0:data:reset=0:$6129 0:$212B 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$212C d15:data:reset=0:$7FF8 1:$2129 1:000011:A1=A7:D0=D0 then // * TRAP 1:$212A d15:data:reset=0:$612D 0:$212D 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$212E 0:000011:A1=A4:D8=D0 ld alu,$40 -1 // * testIncrDecrA 0:$212F 0:data:reset=0:$003F 0:$2130 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2131 z:data:reset=0:$0000 if !z // * TRAP 0:$2132 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2133 0:data:reset=0:$6132 0:$2134 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$2135 d15:data:reset=0:$7FF8 1:$2132 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2133 d15:data:reset=0:$6136 testIncrDecrA a1,$80 // * testAreg 0:$2136 0:000011:A4=A1:D3=D0 ld a1,$80 -1 // * testIncrDecrA 0:$2137 0:data:reset=0:$007F 0:$2138 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$2139 0:000011:A1=A4:D8=D0 ld alu,$80 // * testIncrDecrA 0:$213A 0:data:reset=0:$0080 0:$213B 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$213C z:data:reset=0:$0000 if !z // * TRAP 0:$213D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$213E 0:data:reset=0:$613D 0:$213F 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$2140 d15:data:reset=0:$7FF8 1:$213D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$213E d15:data:reset=0:$6141 0:$2141 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$2142 0:000011:A1=A4:D8=D0 ld alu,$80 -1 // * testIncrDecrA 0:$2143 0:data:reset=0:$007F 0:$2144 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2145 z:data:reset=0:$0000 if !z // * TRAP 0:$2146 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2147 0:data:reset=0:$6146 0:$2148 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$2149 d15:data:reset=0:$7FF8 1:$2146 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2147 d15:data:reset=0:$614A testIncrDecrA a1,$100 // * testAreg 0:$214A 0:000011:A4=A1:D3=D0 ld a1,$100 -1 // * testIncrDecrA 0:$214B 0:data:reset=0:$00FF 0:$214C 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$214D 0:000011:A1=A4:D8=D0 ld alu,$100 // * testIncrDecrA 0:$214E 0:data:reset=0:$0100 0:$214F 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2150 z:data:reset=0:$0000 if !z // * TRAP 0:$2151 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2152 0:data:reset=0:$6151 0:$2153 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$2154 d15:data:reset=0:$7FF8 1:$2151 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2152 d15:data:reset=0:$6155 0:$2155 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$2156 0:000011:A1=A4:D8=D0 ld alu,$100 -1 // * testIncrDecrA 0:$2157 0:data:reset=0:$00FF 0:$2158 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2159 z:data:reset=0:$0000 if !z // * TRAP 0:$215A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$215B 0:data:reset=0:$615A 0:$215C 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$215D d15:data:reset=0:$7FF8 1:$215A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$215B d15:data:reset=0:$615E testIncrDecrA a1,$200 // * testAreg 0:$215E 0:000011:A4=A1:D3=D0 ld a1,$200 -1 // * testIncrDecrA 0:$215F 0:data:reset=0:$01FF 0:$2160 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$2161 0:000011:A1=A4:D8=D0 ld alu,$200 // * testIncrDecrA 0:$2162 0:data:reset=0:$0200 0:$2163 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2164 z:data:reset=0:$0000 if !z // * TRAP 0:$2165 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2166 0:data:reset=0:$6165 0:$2167 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$2168 d15:data:reset=0:$7FF8 1:$2165 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2166 d15:data:reset=0:$6169 0:$2169 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$216A 0:000011:A1=A4:D8=D0 ld alu,$200 -1 // * testIncrDecrA 0:$216B 0:data:reset=0:$01FF 0:$216C 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$216D z:data:reset=0:$0000 if !z // * TRAP 0:$216E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$216F 0:data:reset=0:$616E 0:$2170 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$2171 d15:data:reset=0:$7FF8 1:$216E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$216F d15:data:reset=0:$6172 testIncrDecrA a1,$400 // * testAreg 0:$2172 0:000011:A4=A1:D3=D0 ld a1,$400 -1 // * testIncrDecrA 0:$2173 0:data:reset=0:$03FF 0:$2174 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$2175 0:000011:A1=A4:D8=D0 ld alu,$400 // * testIncrDecrA 0:$2176 0:data:reset=0:$0400 0:$2177 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2178 z:data:reset=0:$0000 if !z // * TRAP 0:$2179 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$217A 0:data:reset=0:$6179 0:$217B 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$217C d15:data:reset=0:$7FF8 1:$2179 1:000011:A1=A7:D0=D0 then // * TRAP 1:$217A d15:data:reset=0:$617D 0:$217D 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$217E 0:000011:A1=A4:D8=D0 ld alu,$400 -1 // * testIncrDecrA 0:$217F 0:data:reset=0:$03FF 0:$2180 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2181 z:data:reset=0:$0000 if !z // * TRAP 0:$2182 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2183 0:data:reset=0:$6182 0:$2184 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$2185 d15:data:reset=0:$7FF8 1:$2182 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2183 d15:data:reset=0:$6186 testIncrDecrA a1,$800 // * testAreg 0:$2186 0:000011:A4=A1:D3=D0 ld a1,$800 -1 // * testIncrDecrA 0:$2187 0:data:reset=0:$07FF 0:$2188 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$2189 0:000011:A1=A4:D8=D0 ld alu,$800 // * testIncrDecrA 0:$218A 0:data:reset=0:$0800 0:$218B 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$218C z:data:reset=0:$0000 if !z // * TRAP 0:$218D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$218E 0:data:reset=0:$618D 0:$218F 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$2190 d15:data:reset=0:$7FF8 1:$218D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$218E d15:data:reset=0:$6191 0:$2191 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$2192 0:000011:A1=A4:D8=D0 ld alu,$800 -1 // * testIncrDecrA 0:$2193 0:data:reset=0:$07FF 0:$2194 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2195 z:data:reset=0:$0000 if !z // * TRAP 0:$2196 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2197 0:data:reset=0:$6196 0:$2198 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$2199 d15:data:reset=0:$7FF8 1:$2196 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2197 d15:data:reset=0:$619A testIncrDecrA a1,$1000 // * testAreg 0:$219A 0:000011:A4=A1:D3=D0 ld a1,$1000 -1 // * testIncrDecrA 0:$219B 0:data:reset=0:$0FFF 0:$219C 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$219D 0:000011:A1=A4:D8=D0 ld alu,$1000 // * testIncrDecrA 0:$219E 0:data:reset=0:$1000 0:$219F 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$21A0 z:data:reset=0:$0000 if !z // * TRAP 0:$21A1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$21A2 0:data:reset=0:$61A1 0:$21A3 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$21A4 d15:data:reset=0:$7FF8 1:$21A1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$21A2 d15:data:reset=0:$61A5 0:$21A5 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$21A6 0:000011:A1=A4:D8=D0 ld alu,$1000 -1 // * testIncrDecrA 0:$21A7 0:data:reset=0:$0FFF 0:$21A8 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$21A9 z:data:reset=0:$0000 if !z // * TRAP 0:$21AA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$21AB 0:data:reset=0:$61AA 0:$21AC 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$21AD d15:data:reset=0:$7FF8 1:$21AA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$21AB d15:data:reset=0:$61AE testIncrDecrA a1,$2000 // * testAreg 0:$21AE 0:000011:A4=A1:D3=D0 ld a1,$2000 -1 // * testIncrDecrA 0:$21AF 0:data:reset=0:$1FFF 0:$21B0 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$21B1 0:000011:A1=A4:D8=D0 ld alu,$2000 // * testIncrDecrA 0:$21B2 0:data:reset=0:$2000 0:$21B3 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$21B4 z:data:reset=0:$0000 if !z // * TRAP 0:$21B5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$21B6 0:data:reset=0:$61B5 0:$21B7 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$21B8 d15:data:reset=0:$7FF8 1:$21B5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$21B6 d15:data:reset=0:$61B9 0:$21B9 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$21BA 0:000011:A1=A4:D8=D0 ld alu,$2000 -1 // * testIncrDecrA 0:$21BB 0:data:reset=0:$1FFF 0:$21BC 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$21BD z:data:reset=0:$0000 if !z // * TRAP 0:$21BE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$21BF 0:data:reset=0:$61BE 0:$21C0 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$21C1 d15:data:reset=0:$7FF8 1:$21BE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$21BF d15:data:reset=0:$61C2 testIncrDecrA a1,$4000 // * testAreg 0:$21C2 0:000011:A4=A1:D3=D0 ld a1,$4000 -1 // * testIncrDecrA 0:$21C3 0:data:reset=0:$3FFF 0:$21C4 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$21C5 0:000011:A1=A4:D8=D0 ld alu,$4000 // * testIncrDecrA 0:$21C6 0:data:reset=0:$4000 0:$21C7 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$21C8 z:data:reset=0:$0000 if !z // * TRAP 0:$21C9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$21CA 0:data:reset=0:$61C9 0:$21CB 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$21CC d15:data:reset=0:$7FF8 1:$21C9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$21CA d15:data:reset=0:$61CD 0:$21CD 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$21CE 0:000011:A1=A4:D8=D0 ld alu,$4000 -1 // * testIncrDecrA 0:$21CF 0:data:reset=0:$3FFF 0:$21D0 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$21D1 z:data:reset=0:$0000 if !z // * TRAP 0:$21D2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$21D3 0:data:reset=0:$61D2 0:$21D4 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$21D5 d15:data:reset=0:$7FF8 1:$21D2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$21D3 d15:data:reset=0:$61D6 testIncrDecrA a1,$8000 // * testAreg 0:$21D6 0:000011:A4=A1:D3=D0 ld a1,$8000 -1 // * testIncrDecrA 0:$21D7 0:data:reset=0:$7FFF 0:$21D8 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$21D9 0:000011:A1=A4:D8=D0 ld alu,$8000 // * testIncrDecrA 0:$21DA 0:data:reset=0:$8000 0:$21DB 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$21DC z:data:reset=0:$0000 if !z // * TRAP 0:$21DD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$21DE 0:data:reset=0:$61DD 0:$21DF 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$21E0 d15:data:reset=0:$7FF8 1:$21DD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$21DE d15:data:reset=0:$61E1 0:$21E1 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$21E2 0:000011:A1=A4:D8=D0 ld alu,$8000 -1 // * testIncrDecrA 0:$21E3 0:data:reset=0:$7FFF 0:$21E4 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$21E5 z:data:reset=0:$0000 if !z // * TRAP 0:$21E6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$21E7 0:data:reset=0:$61E6 0:$21E8 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$21E9 d15:data:reset=0:$7FF8 1:$21E6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$21E7 d15:data:reset=0:$61EA testIncrDecrA a1,0 // * testAreg 0:$21EA 0:000011:A4=A1:D3=D0 ld a1,0 -1 // * testIncrDecrA 0:$21EB 0:data:reset=0:$FFFF 0:$21EC 0:000011:A4=A4:D3=DF ld a1,a1+1 // * testIncrDecrA 0:$21ED 0:000011:A1=A4:D8=D0 ld alu,0 // * testIncrDecrA 0:$21EE 0:data:reset=0:$0000 0:$21EF 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$21F0 z:data:reset=0:$0000 if !z // * TRAP 0:$21F1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$21F2 0:data:reset=0:$61F1 0:$21F3 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$21F4 d15:data:reset=0:$7FF8 1:$21F1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$21F2 d15:data:reset=0:$61F5 0:$21F5 0:010011:A4=A4:D3=D8 ld a1,a1-1 // * testIncrDecrA 0:$21F6 0:000011:A1=A4:D8=D0 ld alu,0 -1 // * testIncrDecrA 0:$21F7 0:data:reset=0:$FFFF 0:$21F8 0:000001:A1=A4:D3=D3 equ a1 // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$21F9 z:data:reset=0:$0000 if !z // * TRAP 0:$21FA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$21FB 0:data:reset=0:$61FA 0:$21FC 0:000011:A1=A1:D0=D0 jp error // * TRAP 0:$21FD d15:data:reset=0:$7FF8 1:$21FA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$21FB d15:data:reset=0:$61FE testAreg hp 0:$21FE 0:000011:A5=A1:D3=D0 ld hp,0 // * testAreg 0:$21FF 0:data:reset=0:$0000 0:$2200 0:000011:A1=A5:D3=D3 tst hp // * testAreg TRAP !z // * testAreg 0:$2201 z:data:reset=0:$0000 if !z // * TRAP 0:$2202 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2203 0:data:reset=0:$6202 0:$2204 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$2205 d15:data:reset=0:$7FF8 1:$2202 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2203 d15:data:reset=0:$6206 0:$2206 0:000011:A5=A1:D3=D0 ld hp,$ffff // * testAreg 0:$2207 0:data:reset=0:$FFFF 0:$2208 0:001011:A1=A5:D3=D3 tstn hp // * testAreg TRAP !z // * testAreg 0:$2209 z:data:reset=0:$0000 if !z // * TRAP 0:$220A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$220B 0:data:reset=0:$620A 0:$220C 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$220D d15:data:reset=0:$7FF8 1:$220A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$220B d15:data:reset=0:$620E 0:$220E 0:000011:A1=A7:D8=D0 ld alu,$55aa // * testAreg 0:$220F 0:data:reset=0:$55AA 0:$2210 0:000011:A5=A1:D3=D8 ld hp,alu // * testAreg 0:$2211 0:000001:A1=A5:D3=D3 equ hp // * testAreg TRAP !z // * testAreg 0:$2212 z:data:reset=0:$0000 if !z // * TRAP 0:$2213 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2214 0:data:reset=0:$6213 0:$2215 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$2216 d15:data:reset=0:$7FF8 1:$2213 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2214 d15:data:reset=0:$6217 0:$2217 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * testAreg 0:$2218 0:data:reset=0:$AA55 0:$2219 0:000011:A5=A1:D3=D8 ld hp,alu // * testAreg 0:$221A 0:000001:A1=A5:D3=D3 equ hp // * testAreg TRAP !z // * testAreg 0:$221B z:data:reset=0:$0000 if !z // * TRAP 0:$221C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$221D 0:data:reset=0:$621C 0:$221E 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$221F d15:data:reset=0:$7FF8 1:$221C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$221D d15:data:reset=0:$6220 testIncrDecrA hp,1 // * testAreg 0:$2220 0:000011:A5=A1:D3=D0 ld hp,1 -1 // * testIncrDecrA 0:$2221 0:data:reset=0:$0000 0:$2222 0:000011:A5=A5:D3=D8 ld hp,hp+1 // * testIncrDecrA 0:$2223 0:000011:A1=A5:D8=D0 ld alu,1 // * testIncrDecrA 0:$2224 0:data:reset=0:$0001 0:$2225 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2226 z:data:reset=0:$0000 if !z // * TRAP 0:$2227 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2228 0:data:reset=0:$6227 0:$2229 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$222A d15:data:reset=0:$7FF8 1:$2227 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2228 d15:data:reset=0:$622B 0:$222B 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$222C 0:000011:A1=A5:D8=D0 ld alu,1 -1 // * testIncrDecrA 0:$222D 0:data:reset=0:$0000 0:$222E 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$222F z:data:reset=0:$0000 if !z // * TRAP 0:$2230 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2231 0:data:reset=0:$6230 0:$2232 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$2233 d15:data:reset=0:$7FF8 1:$2230 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2231 d15:data:reset=0:$6234 testIncrDecrA hp,2 // * testAreg 0:$2234 0:000011:A5=A1:D3=D0 ld hp,2 -1 // * testIncrDecrA 0:$2235 0:data:reset=0:$0001 0:$2236 0:000011:A5=A5:D3=D8 ld hp,hp+1 // * testIncrDecrA 0:$2237 0:000011:A1=A5:D8=D0 ld alu,2 // * testIncrDecrA 0:$2238 0:data:reset=0:$0002 0:$2239 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$223A z:data:reset=0:$0000 if !z // * TRAP 0:$223B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$223C 0:data:reset=0:$623B 0:$223D 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$223E d15:data:reset=0:$7FF8 1:$223B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$223C d15:data:reset=0:$623F 0:$223F 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$2240 0:000011:A1=A5:D8=D0 ld alu,2 -1 // * testIncrDecrA 0:$2241 0:data:reset=0:$0001 0:$2242 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2243 z:data:reset=0:$0000 if !z // * TRAP 0:$2244 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2245 0:data:reset=0:$6244 0:$2246 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$2247 d15:data:reset=0:$7FF8 1:$2244 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2245 d15:data:reset=0:$6248 testIncrDecrA hp,4 // * testAreg 0:$2248 0:000011:A5=A1:D3=D0 ld hp,4 -1 // * testIncrDecrA 0:$2249 0:data:reset=0:$0003 0:$224A 0:000011:A5=A5:D3=D3 ld hp,hp+1 // * testIncrDecrA 0:$224B 0:000011:A1=A5:D8=D0 ld alu,4 // * testIncrDecrA 0:$224C 0:data:reset=0:$0004 0:$224D 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$224E z:data:reset=0:$0000 if !z // * TRAP 0:$224F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2250 0:data:reset=0:$624F 0:$2251 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$2252 d15:data:reset=0:$7FF8 1:$224F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2250 d15:data:reset=0:$6253 0:$2253 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$2254 0:000011:A1=A5:D8=D0 ld alu,4 -1 // * testIncrDecrA 0:$2255 0:data:reset=0:$0003 0:$2256 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2257 z:data:reset=0:$0000 if !z // * TRAP 0:$2258 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2259 0:data:reset=0:$6258 0:$225A 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$225B d15:data:reset=0:$7FF8 1:$2258 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2259 d15:data:reset=0:$625C testIncrDecrA hp,8 // * testAreg 0:$225C 0:000011:A5=A1:D3=D0 ld hp,8 -1 // * testIncrDecrA 0:$225D 0:data:reset=0:$0007 0:$225E 0:000011:A5=A5:D3=D7 ld hp,hp+1 // * testIncrDecrA 0:$225F 0:000011:A1=A5:D8=D0 ld alu,8 // * testIncrDecrA 0:$2260 0:data:reset=0:$0008 0:$2261 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2262 z:data:reset=0:$0000 if !z // * TRAP 0:$2263 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2264 0:data:reset=0:$6263 0:$2265 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$2266 d15:data:reset=0:$7FF8 1:$2263 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2264 d15:data:reset=0:$6267 0:$2267 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$2268 0:000011:A1=A5:D8=D0 ld alu,8 -1 // * testIncrDecrA 0:$2269 0:data:reset=0:$0007 0:$226A 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$226B z:data:reset=0:$0000 if !z // * TRAP 0:$226C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$226D 0:data:reset=0:$626C 0:$226E 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$226F d15:data:reset=0:$7FF8 1:$226C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$226D d15:data:reset=0:$6270 testIncrDecrA hp,$10 // * testAreg 0:$2270 0:000011:A5=A1:D3=D0 ld hp,$10 -1 // * testIncrDecrA 0:$2271 0:data:reset=0:$000F 0:$2272 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$2273 0:000011:A1=A5:D8=D0 ld alu,$10 // * testIncrDecrA 0:$2274 0:data:reset=0:$0010 0:$2275 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2276 z:data:reset=0:$0000 if !z // * TRAP 0:$2277 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2278 0:data:reset=0:$6277 0:$2279 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$227A d15:data:reset=0:$7FF8 1:$2277 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2278 d15:data:reset=0:$627B 0:$227B 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$227C 0:000011:A1=A5:D8=D0 ld alu,$10 -1 // * testIncrDecrA 0:$227D 0:data:reset=0:$000F 0:$227E 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$227F z:data:reset=0:$0000 if !z // * TRAP 0:$2280 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2281 0:data:reset=0:$6280 0:$2282 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$2283 d15:data:reset=0:$7FF8 1:$2280 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2281 d15:data:reset=0:$6284 testIncrDecrA hp,$20 // * testAreg 0:$2284 0:000011:A5=A1:D3=D0 ld hp,$20 -1 // * testIncrDecrA 0:$2285 0:data:reset=0:$001F 0:$2286 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$2287 0:000011:A1=A5:D8=D0 ld alu,$20 // * testIncrDecrA 0:$2288 0:data:reset=0:$0020 0:$2289 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$228A z:data:reset=0:$0000 if !z // * TRAP 0:$228B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$228C 0:data:reset=0:$628B 0:$228D 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$228E d15:data:reset=0:$7FF8 1:$228B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$228C d15:data:reset=0:$628F 0:$228F 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$2290 0:000011:A1=A5:D8=D0 ld alu,$20 -1 // * testIncrDecrA 0:$2291 0:data:reset=0:$001F 0:$2292 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2293 z:data:reset=0:$0000 if !z // * TRAP 0:$2294 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2295 0:data:reset=0:$6294 0:$2296 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$2297 d15:data:reset=0:$7FF8 1:$2294 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2295 d15:data:reset=0:$6298 testIncrDecrA hp,$40 // * testAreg 0:$2298 0:000011:A5=A1:D3=D0 ld hp,$40 -1 // * testIncrDecrA 0:$2299 0:data:reset=0:$003F 0:$229A 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$229B 0:000011:A1=A5:D8=D0 ld alu,$40 // * testIncrDecrA 0:$229C 0:data:reset=0:$0040 0:$229D 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$229E z:data:reset=0:$0000 if !z // * TRAP 0:$229F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$22A0 0:data:reset=0:$629F 0:$22A1 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$22A2 d15:data:reset=0:$7FF8 1:$229F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$22A0 d15:data:reset=0:$62A3 0:$22A3 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$22A4 0:000011:A1=A5:D8=D0 ld alu,$40 -1 // * testIncrDecrA 0:$22A5 0:data:reset=0:$003F 0:$22A6 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$22A7 z:data:reset=0:$0000 if !z // * TRAP 0:$22A8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$22A9 0:data:reset=0:$62A8 0:$22AA 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$22AB d15:data:reset=0:$7FF8 1:$22A8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$22A9 d15:data:reset=0:$62AC testIncrDecrA hp,$80 // * testAreg 0:$22AC 0:000011:A5=A1:D3=D0 ld hp,$80 -1 // * testIncrDecrA 0:$22AD 0:data:reset=0:$007F 0:$22AE 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$22AF 0:000011:A1=A5:D8=D0 ld alu,$80 // * testIncrDecrA 0:$22B0 0:data:reset=0:$0080 0:$22B1 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$22B2 z:data:reset=0:$0000 if !z // * TRAP 0:$22B3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$22B4 0:data:reset=0:$62B3 0:$22B5 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$22B6 d15:data:reset=0:$7FF8 1:$22B3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$22B4 d15:data:reset=0:$62B7 0:$22B7 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$22B8 0:000011:A1=A5:D8=D0 ld alu,$80 -1 // * testIncrDecrA 0:$22B9 0:data:reset=0:$007F 0:$22BA 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$22BB z:data:reset=0:$0000 if !z // * TRAP 0:$22BC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$22BD 0:data:reset=0:$62BC 0:$22BE 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$22BF d15:data:reset=0:$7FF8 1:$22BC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$22BD d15:data:reset=0:$62C0 testIncrDecrA hp,$100 // * testAreg 0:$22C0 0:000011:A5=A1:D3=D0 ld hp,$100 -1 // * testIncrDecrA 0:$22C1 0:data:reset=0:$00FF 0:$22C2 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$22C3 0:000011:A1=A5:D8=D0 ld alu,$100 // * testIncrDecrA 0:$22C4 0:data:reset=0:$0100 0:$22C5 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$22C6 z:data:reset=0:$0000 if !z // * TRAP 0:$22C7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$22C8 0:data:reset=0:$62C7 0:$22C9 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$22CA d15:data:reset=0:$7FF8 1:$22C7 1:000011:A1=A7:D0=D0 then // * TRAP 1:$22C8 d15:data:reset=0:$62CB 0:$22CB 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$22CC 0:000011:A1=A5:D8=D0 ld alu,$100 -1 // * testIncrDecrA 0:$22CD 0:data:reset=0:$00FF 0:$22CE 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$22CF z:data:reset=0:$0000 if !z // * TRAP 0:$22D0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$22D1 0:data:reset=0:$62D0 0:$22D2 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$22D3 d15:data:reset=0:$7FF8 1:$22D0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$22D1 d15:data:reset=0:$62D4 testIncrDecrA hp,$200 // * testAreg 0:$22D4 0:000011:A5=A1:D3=D0 ld hp,$200 -1 // * testIncrDecrA 0:$22D5 0:data:reset=0:$01FF 0:$22D6 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$22D7 0:000011:A1=A5:D8=D0 ld alu,$200 // * testIncrDecrA 0:$22D8 0:data:reset=0:$0200 0:$22D9 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$22DA z:data:reset=0:$0000 if !z // * TRAP 0:$22DB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$22DC 0:data:reset=0:$62DB 0:$22DD 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$22DE d15:data:reset=0:$7FF8 1:$22DB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$22DC d15:data:reset=0:$62DF 0:$22DF 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$22E0 0:000011:A1=A5:D8=D0 ld alu,$200 -1 // * testIncrDecrA 0:$22E1 0:data:reset=0:$01FF 0:$22E2 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$22E3 z:data:reset=0:$0000 if !z // * TRAP 0:$22E4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$22E5 0:data:reset=0:$62E4 0:$22E6 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$22E7 d15:data:reset=0:$7FF8 1:$22E4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$22E5 d15:data:reset=0:$62E8 testIncrDecrA hp,$400 // * testAreg 0:$22E8 0:000011:A5=A1:D3=D0 ld hp,$400 -1 // * testIncrDecrA 0:$22E9 0:data:reset=0:$03FF 0:$22EA 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$22EB 0:000011:A1=A5:D8=D0 ld alu,$400 // * testIncrDecrA 0:$22EC 0:data:reset=0:$0400 0:$22ED 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$22EE z:data:reset=0:$0000 if !z // * TRAP 0:$22EF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$22F0 0:data:reset=0:$62EF 0:$22F1 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$22F2 d15:data:reset=0:$7FF8 1:$22EF 1:000011:A1=A7:D0=D0 then // * TRAP 1:$22F0 d15:data:reset=0:$62F3 0:$22F3 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$22F4 0:000011:A1=A5:D8=D0 ld alu,$400 -1 // * testIncrDecrA 0:$22F5 0:data:reset=0:$03FF 0:$22F6 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$22F7 z:data:reset=0:$0000 if !z // * TRAP 0:$22F8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$22F9 0:data:reset=0:$62F8 0:$22FA 0:000011:A1=A2:D0=D0 jp error // * TRAP 0:$22FB d15:data:reset=0:$7FF8 1:$22F8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$22F9 d15:data:reset=0:$62FC testIncrDecrA hp,$800 // * testAreg 0:$22FC 0:000011:A5=A1:D3=D0 ld hp,$800 -1 // * testIncrDecrA 0:$22FD 0:data:reset=0:$07FF 0:$22FE 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$22FF 0:000011:A1=A5:D8=D0 ld alu,$800 // * testIncrDecrA 0:$2300 0:data:reset=0:$0800 0:$2301 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2302 z:data:reset=0:$0000 if !z // * TRAP 0:$2303 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2304 0:data:reset=0:$6303 0:$2305 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$2306 d15:data:reset=0:$7FF8 1:$2303 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2304 d15:data:reset=0:$6307 0:$2307 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$2308 0:000011:A1=A5:D8=D0 ld alu,$800 -1 // * testIncrDecrA 0:$2309 0:data:reset=0:$07FF 0:$230A 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$230B z:data:reset=0:$0000 if !z // * TRAP 0:$230C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$230D 0:data:reset=0:$630C 0:$230E 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$230F d15:data:reset=0:$7FF8 1:$230C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$230D d15:data:reset=0:$6310 testIncrDecrA hp,$1000 // * testAreg 0:$2310 0:000011:A5=A1:D3=D0 ld hp,$1000 -1 // * testIncrDecrA 0:$2311 0:data:reset=0:$0FFF 0:$2312 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$2313 0:000011:A1=A5:D8=D0 ld alu,$1000 // * testIncrDecrA 0:$2314 0:data:reset=0:$1000 0:$2315 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2316 z:data:reset=0:$0000 if !z // * TRAP 0:$2317 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2318 0:data:reset=0:$6317 0:$2319 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$231A d15:data:reset=0:$7FF8 1:$2317 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2318 d15:data:reset=0:$631B 0:$231B 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$231C 0:000011:A1=A5:D8=D0 ld alu,$1000 -1 // * testIncrDecrA 0:$231D 0:data:reset=0:$0FFF 0:$231E 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$231F z:data:reset=0:$0000 if !z // * TRAP 0:$2320 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2321 0:data:reset=0:$6320 0:$2322 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$2323 d15:data:reset=0:$7FF8 1:$2320 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2321 d15:data:reset=0:$6324 testIncrDecrA hp,$2000 // * testAreg 0:$2324 0:000011:A5=A1:D3=D0 ld hp,$2000 -1 // * testIncrDecrA 0:$2325 0:data:reset=0:$1FFF 0:$2326 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$2327 0:000011:A1=A5:D8=D0 ld alu,$2000 // * testIncrDecrA 0:$2328 0:data:reset=0:$2000 0:$2329 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$232A z:data:reset=0:$0000 if !z // * TRAP 0:$232B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$232C 0:data:reset=0:$632B 0:$232D 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$232E d15:data:reset=0:$7FF8 1:$232B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$232C d15:data:reset=0:$632F 0:$232F 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$2330 0:000011:A1=A5:D8=D0 ld alu,$2000 -1 // * testIncrDecrA 0:$2331 0:data:reset=0:$1FFF 0:$2332 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2333 z:data:reset=0:$0000 if !z // * TRAP 0:$2334 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2335 0:data:reset=0:$6334 0:$2336 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$2337 d15:data:reset=0:$7FF8 1:$2334 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2335 d15:data:reset=0:$6338 testIncrDecrA hp,$4000 // * testAreg 0:$2338 0:000011:A5=A1:D3=D0 ld hp,$4000 -1 // * testIncrDecrA 0:$2339 0:data:reset=0:$3FFF 0:$233A 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$233B 0:000011:A1=A5:D8=D0 ld alu,$4000 // * testIncrDecrA 0:$233C 0:data:reset=0:$4000 0:$233D 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$233E z:data:reset=0:$0000 if !z // * TRAP 0:$233F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2340 0:data:reset=0:$633F 0:$2341 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$2342 d15:data:reset=0:$7FF8 1:$233F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2340 d15:data:reset=0:$6343 0:$2343 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$2344 0:000011:A1=A5:D8=D0 ld alu,$4000 -1 // * testIncrDecrA 0:$2345 0:data:reset=0:$3FFF 0:$2346 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2347 z:data:reset=0:$0000 if !z // * TRAP 0:$2348 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2349 0:data:reset=0:$6348 0:$234A 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$234B d15:data:reset=0:$7FF8 1:$2348 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2349 d15:data:reset=0:$634C testIncrDecrA hp,$8000 // * testAreg 0:$234C 0:000011:A5=A1:D3=D0 ld hp,$8000 -1 // * testIncrDecrA 0:$234D 0:data:reset=0:$7FFF 0:$234E 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$234F 0:000011:A1=A5:D8=D0 ld alu,$8000 // * testIncrDecrA 0:$2350 0:data:reset=0:$8000 0:$2351 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2352 z:data:reset=0:$0000 if !z // * TRAP 0:$2353 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2354 0:data:reset=0:$6353 0:$2355 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$2356 d15:data:reset=0:$7FF8 1:$2353 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2354 d15:data:reset=0:$6357 0:$2357 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$2358 0:000011:A1=A5:D8=D0 ld alu,$8000 -1 // * testIncrDecrA 0:$2359 0:data:reset=0:$7FFF 0:$235A 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$235B z:data:reset=0:$0000 if !z // * TRAP 0:$235C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$235D 0:data:reset=0:$635C 0:$235E 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$235F d15:data:reset=0:$7FF8 1:$235C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$235D d15:data:reset=0:$6360 testIncrDecrA hp,0 // * testAreg 0:$2360 0:000011:A5=A1:D3=D0 ld hp,0 -1 // * testIncrDecrA 0:$2361 0:data:reset=0:$FFFF 0:$2362 0:000011:A5=A5:D3=DF ld hp,hp+1 // * testIncrDecrA 0:$2363 0:000011:A1=A5:D8=D0 ld alu,0 // * testIncrDecrA 0:$2364 0:data:reset=0:$0000 0:$2365 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2366 z:data:reset=0:$0000 if !z // * TRAP 0:$2367 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2368 0:data:reset=0:$6367 0:$2369 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$236A d15:data:reset=0:$7FF8 1:$2367 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2368 d15:data:reset=0:$636B 0:$236B 0:010011:A5=A5:D3=D8 ld hp,hp-1 // * testIncrDecrA 0:$236C 0:000011:A1=A5:D8=D0 ld alu,0 -1 // * testIncrDecrA 0:$236D 0:data:reset=0:$FFFF 0:$236E 0:000001:A1=A5:D3=D3 equ hp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$236F z:data:reset=0:$0000 if !z // * TRAP 0:$2370 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2371 0:data:reset=0:$6370 0:$2372 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$2373 d15:data:reset=0:$7FF8 1:$2370 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2371 d15:data:reset=0:$6374 testAreg atmp 0:$2374 0:000011:A6=A1:D3=D0 ld atmp,0 // * testAreg 0:$2375 0:data:reset=0:$0000 0:$2376 0:000011:A1=A6:D3=D3 tst atmp // * testAreg TRAP !z // * testAreg 0:$2377 z:data:reset=0:$0000 if !z // * TRAP 0:$2378 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2379 0:data:reset=0:$6378 0:$237A 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$237B d15:data:reset=0:$7FF8 1:$2378 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2379 d15:data:reset=0:$637C 0:$237C 0:000011:A6=A1:D3=D0 ld atmp,$ffff // * testAreg 0:$237D 0:data:reset=0:$FFFF 0:$237E 0:001011:A1=A6:D3=D3 tstn atmp // * testAreg TRAP !z // * testAreg 0:$237F z:data:reset=0:$0000 if !z // * TRAP 0:$2380 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2381 0:data:reset=0:$6380 0:$2382 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$2383 d15:data:reset=0:$7FF8 1:$2380 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2381 d15:data:reset=0:$6384 0:$2384 0:000011:A1=A7:D8=D0 ld alu,$55aa // * testAreg 0:$2385 0:data:reset=0:$55AA 0:$2386 0:000011:A6=A1:D3=D8 ld atmp,alu // * testAreg 0:$2387 0:000001:A1=A6:D3=D3 equ atmp // * testAreg TRAP !z // * testAreg 0:$2388 z:data:reset=0:$0000 if !z // * TRAP 0:$2389 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$238A 0:data:reset=0:$6389 0:$238B 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$238C d15:data:reset=0:$7FF8 1:$2389 1:000011:A1=A7:D0=D0 then // * TRAP 1:$238A d15:data:reset=0:$638D 0:$238D 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * testAreg 0:$238E 0:data:reset=0:$AA55 0:$238F 0:000011:A6=A1:D3=D8 ld atmp,alu // * testAreg 0:$2390 0:000001:A1=A6:D3=D3 equ atmp // * testAreg TRAP !z // * testAreg 0:$2391 z:data:reset=0:$0000 if !z // * TRAP 0:$2392 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2393 0:data:reset=0:$6392 0:$2394 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$2395 d15:data:reset=0:$7FF8 1:$2392 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2393 d15:data:reset=0:$6396 testIncrDecrA atmp,1 // * testAreg 0:$2396 0:000011:A6=A1:D3=D0 ld atmp,1 -1 // * testIncrDecrA 0:$2397 0:data:reset=0:$0000 0:$2398 0:000011:A6=A6:D3=D8 ld atmp,atmp+1 // * testIncrDecrA 0:$2399 0:000011:A1=A6:D8=D0 ld alu,1 // * testIncrDecrA 0:$239A 0:data:reset=0:$0001 0:$239B 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$239C z:data:reset=0:$0000 if !z // * TRAP 0:$239D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$239E 0:data:reset=0:$639D 0:$239F 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$23A0 d15:data:reset=0:$7FF8 1:$239D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$239E d15:data:reset=0:$63A1 0:$23A1 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$23A2 0:000011:A1=A6:D8=D0 ld alu,1 -1 // * testIncrDecrA 0:$23A3 0:data:reset=0:$0000 0:$23A4 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$23A5 z:data:reset=0:$0000 if !z // * TRAP 0:$23A6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$23A7 0:data:reset=0:$63A6 0:$23A8 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$23A9 d15:data:reset=0:$7FF8 1:$23A6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$23A7 d15:data:reset=0:$63AA testIncrDecrA atmp,2 // * testAreg 0:$23AA 0:000011:A6=A1:D3=D0 ld atmp,2 -1 // * testIncrDecrA 0:$23AB 0:data:reset=0:$0001 0:$23AC 0:000011:A6=A6:D3=D8 ld atmp,atmp+1 // * testIncrDecrA 0:$23AD 0:000011:A1=A6:D8=D0 ld alu,2 // * testIncrDecrA 0:$23AE 0:data:reset=0:$0002 0:$23AF 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$23B0 z:data:reset=0:$0000 if !z // * TRAP 0:$23B1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$23B2 0:data:reset=0:$63B1 0:$23B3 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$23B4 d15:data:reset=0:$7FF8 1:$23B1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$23B2 d15:data:reset=0:$63B5 0:$23B5 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$23B6 0:000011:A1=A6:D8=D0 ld alu,2 -1 // * testIncrDecrA 0:$23B7 0:data:reset=0:$0001 0:$23B8 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$23B9 z:data:reset=0:$0000 if !z // * TRAP 0:$23BA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$23BB 0:data:reset=0:$63BA 0:$23BC 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$23BD d15:data:reset=0:$7FF8 1:$23BA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$23BB d15:data:reset=0:$63BE testIncrDecrA atmp,4 // * testAreg 0:$23BE 0:000011:A6=A1:D3=D0 ld atmp,4 -1 // * testIncrDecrA 0:$23BF 0:data:reset=0:$0003 0:$23C0 0:000011:A6=A6:D3=D3 ld atmp,atmp+1 // * testIncrDecrA 0:$23C1 0:000011:A1=A6:D8=D0 ld alu,4 // * testIncrDecrA 0:$23C2 0:data:reset=0:$0004 0:$23C3 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$23C4 z:data:reset=0:$0000 if !z // * TRAP 0:$23C5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$23C6 0:data:reset=0:$63C5 0:$23C7 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$23C8 d15:data:reset=0:$7FF8 1:$23C5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$23C6 d15:data:reset=0:$63C9 0:$23C9 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$23CA 0:000011:A1=A6:D8=D0 ld alu,4 -1 // * testIncrDecrA 0:$23CB 0:data:reset=0:$0003 0:$23CC 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$23CD z:data:reset=0:$0000 if !z // * TRAP 0:$23CE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$23CF 0:data:reset=0:$63CE 0:$23D0 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$23D1 d15:data:reset=0:$7FF8 1:$23CE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$23CF d15:data:reset=0:$63D2 testIncrDecrA atmp,8 // * testAreg 0:$23D2 0:000011:A6=A1:D3=D0 ld atmp,8 -1 // * testIncrDecrA 0:$23D3 0:data:reset=0:$0007 0:$23D4 0:000011:A6=A6:D3=D7 ld atmp,atmp+1 // * testIncrDecrA 0:$23D5 0:000011:A1=A6:D8=D0 ld alu,8 // * testIncrDecrA 0:$23D6 0:data:reset=0:$0008 0:$23D7 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$23D8 z:data:reset=0:$0000 if !z // * TRAP 0:$23D9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$23DA 0:data:reset=0:$63D9 0:$23DB 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$23DC d15:data:reset=0:$7FF8 1:$23D9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$23DA d15:data:reset=0:$63DD 0:$23DD 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$23DE 0:000011:A1=A6:D8=D0 ld alu,8 -1 // * testIncrDecrA 0:$23DF 0:data:reset=0:$0007 0:$23E0 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$23E1 z:data:reset=0:$0000 if !z // * TRAP 0:$23E2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$23E3 0:data:reset=0:$63E2 0:$23E4 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$23E5 d15:data:reset=0:$7FF8 1:$23E2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$23E3 d15:data:reset=0:$63E6 testIncrDecrA atmp,$10 // * testAreg 0:$23E6 0:000011:A6=A1:D3=D0 ld atmp,$10 -1 // * testIncrDecrA 0:$23E7 0:data:reset=0:$000F 0:$23E8 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$23E9 0:000011:A1=A6:D8=D0 ld alu,$10 // * testIncrDecrA 0:$23EA 0:data:reset=0:$0010 0:$23EB 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$23EC z:data:reset=0:$0000 if !z // * TRAP 0:$23ED 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$23EE 0:data:reset=0:$63ED 0:$23EF 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$23F0 d15:data:reset=0:$7FF8 1:$23ED 1:000011:A1=A7:D0=D0 then // * TRAP 1:$23EE d15:data:reset=0:$63F1 0:$23F1 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$23F2 0:000011:A1=A6:D8=D0 ld alu,$10 -1 // * testIncrDecrA 0:$23F3 0:data:reset=0:$000F 0:$23F4 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$23F5 z:data:reset=0:$0000 if !z // * TRAP 0:$23F6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$23F7 0:data:reset=0:$63F6 0:$23F8 0:000011:A1=A3:D0=D0 jp error // * TRAP 0:$23F9 d15:data:reset=0:$7FF8 1:$23F6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$23F7 d15:data:reset=0:$63FA testIncrDecrA atmp,$20 // * testAreg 0:$23FA 0:000011:A6=A1:D3=D0 ld atmp,$20 -1 // * testIncrDecrA 0:$23FB 0:data:reset=0:$001F 0:$23FC 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$23FD 0:000011:A1=A6:D8=D0 ld alu,$20 // * testIncrDecrA 0:$23FE 0:data:reset=0:$0020 0:$23FF 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2400 z:data:reset=0:$0000 if !z // * TRAP 0:$2401 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2402 0:data:reset=0:$6401 0:$2403 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2404 d15:data:reset=0:$7FF8 1:$2401 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2402 d15:data:reset=0:$6405 0:$2405 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$2406 0:000011:A1=A6:D8=D0 ld alu,$20 -1 // * testIncrDecrA 0:$2407 0:data:reset=0:$001F 0:$2408 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2409 z:data:reset=0:$0000 if !z // * TRAP 0:$240A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$240B 0:data:reset=0:$640A 0:$240C 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$240D d15:data:reset=0:$7FF8 1:$240A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$240B d15:data:reset=0:$640E testIncrDecrA atmp,$40 // * testAreg 0:$240E 0:000011:A6=A1:D3=D0 ld atmp,$40 -1 // * testIncrDecrA 0:$240F 0:data:reset=0:$003F 0:$2410 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$2411 0:000011:A1=A6:D8=D0 ld alu,$40 // * testIncrDecrA 0:$2412 0:data:reset=0:$0040 0:$2413 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2414 z:data:reset=0:$0000 if !z // * TRAP 0:$2415 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2416 0:data:reset=0:$6415 0:$2417 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2418 d15:data:reset=0:$7FF8 1:$2415 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2416 d15:data:reset=0:$6419 0:$2419 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$241A 0:000011:A1=A6:D8=D0 ld alu,$40 -1 // * testIncrDecrA 0:$241B 0:data:reset=0:$003F 0:$241C 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$241D z:data:reset=0:$0000 if !z // * TRAP 0:$241E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$241F 0:data:reset=0:$641E 0:$2420 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2421 d15:data:reset=0:$7FF8 1:$241E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$241F d15:data:reset=0:$6422 testIncrDecrA atmp,$80 // * testAreg 0:$2422 0:000011:A6=A1:D3=D0 ld atmp,$80 -1 // * testIncrDecrA 0:$2423 0:data:reset=0:$007F 0:$2424 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$2425 0:000011:A1=A6:D8=D0 ld alu,$80 // * testIncrDecrA 0:$2426 0:data:reset=0:$0080 0:$2427 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2428 z:data:reset=0:$0000 if !z // * TRAP 0:$2429 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$242A 0:data:reset=0:$6429 0:$242B 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$242C d15:data:reset=0:$7FF8 1:$2429 1:000011:A1=A7:D0=D0 then // * TRAP 1:$242A d15:data:reset=0:$642D 0:$242D 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$242E 0:000011:A1=A6:D8=D0 ld alu,$80 -1 // * testIncrDecrA 0:$242F 0:data:reset=0:$007F 0:$2430 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2431 z:data:reset=0:$0000 if !z // * TRAP 0:$2432 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2433 0:data:reset=0:$6432 0:$2434 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2435 d15:data:reset=0:$7FF8 1:$2432 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2433 d15:data:reset=0:$6436 testIncrDecrA atmp,$100 // * testAreg 0:$2436 0:000011:A6=A1:D3=D0 ld atmp,$100 -1 // * testIncrDecrA 0:$2437 0:data:reset=0:$00FF 0:$2438 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$2439 0:000011:A1=A6:D8=D0 ld alu,$100 // * testIncrDecrA 0:$243A 0:data:reset=0:$0100 0:$243B 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$243C z:data:reset=0:$0000 if !z // * TRAP 0:$243D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$243E 0:data:reset=0:$643D 0:$243F 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2440 d15:data:reset=0:$7FF8 1:$243D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$243E d15:data:reset=0:$6441 0:$2441 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$2442 0:000011:A1=A6:D8=D0 ld alu,$100 -1 // * testIncrDecrA 0:$2443 0:data:reset=0:$00FF 0:$2444 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2445 z:data:reset=0:$0000 if !z // * TRAP 0:$2446 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2447 0:data:reset=0:$6446 0:$2448 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2449 d15:data:reset=0:$7FF8 1:$2446 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2447 d15:data:reset=0:$644A testIncrDecrA atmp,$200 // * testAreg 0:$244A 0:000011:A6=A1:D3=D0 ld atmp,$200 -1 // * testIncrDecrA 0:$244B 0:data:reset=0:$01FF 0:$244C 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$244D 0:000011:A1=A6:D8=D0 ld alu,$200 // * testIncrDecrA 0:$244E 0:data:reset=0:$0200 0:$244F 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2450 z:data:reset=0:$0000 if !z // * TRAP 0:$2451 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2452 0:data:reset=0:$6451 0:$2453 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2454 d15:data:reset=0:$7FF8 1:$2451 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2452 d15:data:reset=0:$6455 0:$2455 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$2456 0:000011:A1=A6:D8=D0 ld alu,$200 -1 // * testIncrDecrA 0:$2457 0:data:reset=0:$01FF 0:$2458 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2459 z:data:reset=0:$0000 if !z // * TRAP 0:$245A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$245B 0:data:reset=0:$645A 0:$245C 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$245D d15:data:reset=0:$7FF8 1:$245A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$245B d15:data:reset=0:$645E testIncrDecrA atmp,$400 // * testAreg 0:$245E 0:000011:A6=A1:D3=D0 ld atmp,$400 -1 // * testIncrDecrA 0:$245F 0:data:reset=0:$03FF 0:$2460 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$2461 0:000011:A1=A6:D8=D0 ld alu,$400 // * testIncrDecrA 0:$2462 0:data:reset=0:$0400 0:$2463 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2464 z:data:reset=0:$0000 if !z // * TRAP 0:$2465 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2466 0:data:reset=0:$6465 0:$2467 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2468 d15:data:reset=0:$7FF8 1:$2465 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2466 d15:data:reset=0:$6469 0:$2469 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$246A 0:000011:A1=A6:D8=D0 ld alu,$400 -1 // * testIncrDecrA 0:$246B 0:data:reset=0:$03FF 0:$246C 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$246D z:data:reset=0:$0000 if !z // * TRAP 0:$246E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$246F 0:data:reset=0:$646E 0:$2470 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2471 d15:data:reset=0:$7FF8 1:$246E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$246F d15:data:reset=0:$6472 testIncrDecrA atmp,$800 // * testAreg 0:$2472 0:000011:A6=A1:D3=D0 ld atmp,$800 -1 // * testIncrDecrA 0:$2473 0:data:reset=0:$07FF 0:$2474 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$2475 0:000011:A1=A6:D8=D0 ld alu,$800 // * testIncrDecrA 0:$2476 0:data:reset=0:$0800 0:$2477 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2478 z:data:reset=0:$0000 if !z // * TRAP 0:$2479 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$247A 0:data:reset=0:$6479 0:$247B 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$247C d15:data:reset=0:$7FF8 1:$2479 1:000011:A1=A7:D0=D0 then // * TRAP 1:$247A d15:data:reset=0:$647D 0:$247D 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$247E 0:000011:A1=A6:D8=D0 ld alu,$800 -1 // * testIncrDecrA 0:$247F 0:data:reset=0:$07FF 0:$2480 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2481 z:data:reset=0:$0000 if !z // * TRAP 0:$2482 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2483 0:data:reset=0:$6482 0:$2484 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2485 d15:data:reset=0:$7FF8 1:$2482 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2483 d15:data:reset=0:$6486 testIncrDecrA atmp,$1000 // * testAreg 0:$2486 0:000011:A6=A1:D3=D0 ld atmp,$1000 -1 // * testIncrDecrA 0:$2487 0:data:reset=0:$0FFF 0:$2488 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$2489 0:000011:A1=A6:D8=D0 ld alu,$1000 // * testIncrDecrA 0:$248A 0:data:reset=0:$1000 0:$248B 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$248C z:data:reset=0:$0000 if !z // * TRAP 0:$248D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$248E 0:data:reset=0:$648D 0:$248F 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2490 d15:data:reset=0:$7FF8 1:$248D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$248E d15:data:reset=0:$6491 0:$2491 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$2492 0:000011:A1=A6:D8=D0 ld alu,$1000 -1 // * testIncrDecrA 0:$2493 0:data:reset=0:$0FFF 0:$2494 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2495 z:data:reset=0:$0000 if !z // * TRAP 0:$2496 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2497 0:data:reset=0:$6496 0:$2498 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2499 d15:data:reset=0:$7FF8 1:$2496 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2497 d15:data:reset=0:$649A testIncrDecrA atmp,$2000 // * testAreg 0:$249A 0:000011:A6=A1:D3=D0 ld atmp,$2000 -1 // * testIncrDecrA 0:$249B 0:data:reset=0:$1FFF 0:$249C 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$249D 0:000011:A1=A6:D8=D0 ld alu,$2000 // * testIncrDecrA 0:$249E 0:data:reset=0:$2000 0:$249F 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$24A0 z:data:reset=0:$0000 if !z // * TRAP 0:$24A1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$24A2 0:data:reset=0:$64A1 0:$24A3 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$24A4 d15:data:reset=0:$7FF8 1:$24A1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$24A2 d15:data:reset=0:$64A5 0:$24A5 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$24A6 0:000011:A1=A6:D8=D0 ld alu,$2000 -1 // * testIncrDecrA 0:$24A7 0:data:reset=0:$1FFF 0:$24A8 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$24A9 z:data:reset=0:$0000 if !z // * TRAP 0:$24AA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$24AB 0:data:reset=0:$64AA 0:$24AC 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$24AD d15:data:reset=0:$7FF8 1:$24AA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$24AB d15:data:reset=0:$64AE testIncrDecrA atmp,$4000 // * testAreg 0:$24AE 0:000011:A6=A1:D3=D0 ld atmp,$4000 -1 // * testIncrDecrA 0:$24AF 0:data:reset=0:$3FFF 0:$24B0 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$24B1 0:000011:A1=A6:D8=D0 ld alu,$4000 // * testIncrDecrA 0:$24B2 0:data:reset=0:$4000 0:$24B3 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$24B4 z:data:reset=0:$0000 if !z // * TRAP 0:$24B5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$24B6 0:data:reset=0:$64B5 0:$24B7 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$24B8 d15:data:reset=0:$7FF8 1:$24B5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$24B6 d15:data:reset=0:$64B9 0:$24B9 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$24BA 0:000011:A1=A6:D8=D0 ld alu,$4000 -1 // * testIncrDecrA 0:$24BB 0:data:reset=0:$3FFF 0:$24BC 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$24BD z:data:reset=0:$0000 if !z // * TRAP 0:$24BE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$24BF 0:data:reset=0:$64BE 0:$24C0 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$24C1 d15:data:reset=0:$7FF8 1:$24BE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$24BF d15:data:reset=0:$64C2 testIncrDecrA atmp,$8000 // * testAreg 0:$24C2 0:000011:A6=A1:D3=D0 ld atmp,$8000 -1 // * testIncrDecrA 0:$24C3 0:data:reset=0:$7FFF 0:$24C4 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$24C5 0:000011:A1=A6:D8=D0 ld alu,$8000 // * testIncrDecrA 0:$24C6 0:data:reset=0:$8000 0:$24C7 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$24C8 z:data:reset=0:$0000 if !z // * TRAP 0:$24C9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$24CA 0:data:reset=0:$64C9 0:$24CB 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$24CC d15:data:reset=0:$7FF8 1:$24C9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$24CA d15:data:reset=0:$64CD 0:$24CD 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$24CE 0:000011:A1=A6:D8=D0 ld alu,$8000 -1 // * testIncrDecrA 0:$24CF 0:data:reset=0:$7FFF 0:$24D0 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$24D1 z:data:reset=0:$0000 if !z // * TRAP 0:$24D2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$24D3 0:data:reset=0:$64D2 0:$24D4 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$24D5 d15:data:reset=0:$7FF8 1:$24D2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$24D3 d15:data:reset=0:$64D6 testIncrDecrA atmp,0 // * testAreg 0:$24D6 0:000011:A6=A1:D3=D0 ld atmp,0 -1 // * testIncrDecrA 0:$24D7 0:data:reset=0:$FFFF 0:$24D8 0:000011:A6=A6:D3=DF ld atmp,atmp+1 // * testIncrDecrA 0:$24D9 0:000011:A1=A6:D8=D0 ld alu,0 // * testIncrDecrA 0:$24DA 0:data:reset=0:$0000 0:$24DB 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$24DC z:data:reset=0:$0000 if !z // * TRAP 0:$24DD 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$24DE 0:data:reset=0:$64DD 0:$24DF 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$24E0 d15:data:reset=0:$7FF8 1:$24DD 1:000011:A1=A7:D0=D0 then // * TRAP 1:$24DE d15:data:reset=0:$64E1 0:$24E1 0:010011:A6=A6:D3=D8 ld atmp,atmp-1 // * testIncrDecrA 0:$24E2 0:000011:A1=A6:D8=D0 ld alu,0 -1 // * testIncrDecrA 0:$24E3 0:data:reset=0:$FFFF 0:$24E4 0:000001:A1=A6:D3=D3 equ atmp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$24E5 z:data:reset=0:$0000 if !z // * TRAP 0:$24E6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$24E7 0:data:reset=0:$64E6 0:$24E8 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$24E9 d15:data:reset=0:$7FF8 1:$24E6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$24E7 d15:data:reset=0:$64EA testAreg ip 0:$24EA 0:000011:A0=A1:D3=D0 ld ip,0 // * testAreg 0:$24EB 0:data:reset=0:$0000 0:$24EC 0:000011:A1=A0:D3=D3 tst ip // * testAreg TRAP !z // * testAreg 0:$24ED z:data:reset=0:$0000 if !z // * TRAP 0:$24EE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$24EF 0:data:reset=0:$64EE 0:$24F0 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$24F1 d15:data:reset=0:$7FF8 1:$24EE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$24EF d15:data:reset=0:$64F2 0:$24F2 0:000011:A0=A1:D3=D0 ld ip,$ffff // * testAreg 0:$24F3 0:data:reset=0:$FFFF 0:$24F4 0:001011:A1=A0:D3=D3 tstn ip // * testAreg TRAP !z // * testAreg 0:$24F5 z:data:reset=0:$0000 if !z // * TRAP 0:$24F6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$24F7 0:data:reset=0:$64F6 0:$24F8 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$24F9 d15:data:reset=0:$7FF8 1:$24F6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$24F7 d15:data:reset=0:$64FA 0:$24FA 0:000011:A1=A7:D8=D0 ld alu,$55aa // * testAreg 0:$24FB 0:data:reset=0:$55AA 0:$24FC 0:000011:A0=A1:D3=D8 ld ip,alu // * testAreg 0:$24FD 0:000001:A1=A0:D3=D3 equ ip // * testAreg TRAP !z // * testAreg 0:$24FE z:data:reset=0:$0000 if !z // * TRAP 0:$24FF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2500 0:data:reset=0:$64FF 0:$2501 0:000011:A1=A4:D0=D0 jp error // * TRAP 0:$2502 d15:data:reset=0:$7FF8 1:$24FF 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2500 d15:data:reset=0:$6503 0:$2503 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * testAreg 0:$2504 0:data:reset=0:$AA55 0:$2505 0:000011:A0=A1:D3=D8 ld ip,alu // * testAreg 0:$2506 0:000001:A1=A0:D3=D3 equ ip // * testAreg TRAP !z // * testAreg 0:$2507 z:data:reset=0:$0000 if !z // * TRAP 0:$2508 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2509 0:data:reset=0:$6508 0:$250A 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$250B d15:data:reset=0:$7FF8 1:$2508 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2509 d15:data:reset=0:$650C testIncrDecrA ip,1 // * testAreg 0:$250C 0:000011:A0=A1:D3=D0 ld ip,1 -1 // * testIncrDecrA 0:$250D 0:data:reset=0:$0000 0:$250E 0:000011:A0=A0:D3=D8 ld ip,ip+1 // * testIncrDecrA 0:$250F 0:000011:A1=A0:D8=D0 ld alu,1 // * testIncrDecrA 0:$2510 0:data:reset=0:$0001 0:$2511 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2512 z:data:reset=0:$0000 if !z // * TRAP 0:$2513 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2514 0:data:reset=0:$6513 0:$2515 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$2516 d15:data:reset=0:$7FF8 1:$2513 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2514 d15:data:reset=0:$6517 0:$2517 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$2518 0:000011:A1=A0:D8=D0 ld alu,1 -1 // * testIncrDecrA 0:$2519 0:data:reset=0:$0000 0:$251A 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$251B z:data:reset=0:$0000 if !z // * TRAP 0:$251C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$251D 0:data:reset=0:$651C 0:$251E 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$251F d15:data:reset=0:$7FF8 1:$251C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$251D d15:data:reset=0:$6520 testIncrDecrA ip,2 // * testAreg 0:$2520 0:000011:A0=A1:D3=D0 ld ip,2 -1 // * testIncrDecrA 0:$2521 0:data:reset=0:$0001 0:$2522 0:000011:A0=A0:D3=D8 ld ip,ip+1 // * testIncrDecrA 0:$2523 0:000011:A1=A0:D8=D0 ld alu,2 // * testIncrDecrA 0:$2524 0:data:reset=0:$0002 0:$2525 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2526 z:data:reset=0:$0000 if !z // * TRAP 0:$2527 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2528 0:data:reset=0:$6527 0:$2529 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$252A d15:data:reset=0:$7FF8 1:$2527 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2528 d15:data:reset=0:$652B 0:$252B 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$252C 0:000011:A1=A0:D8=D0 ld alu,2 -1 // * testIncrDecrA 0:$252D 0:data:reset=0:$0001 0:$252E 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$252F z:data:reset=0:$0000 if !z // * TRAP 0:$2530 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2531 0:data:reset=0:$6530 0:$2532 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$2533 d15:data:reset=0:$7FF8 1:$2530 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2531 d15:data:reset=0:$6534 testIncrDecrA ip,4 // * testAreg 0:$2534 0:000011:A0=A1:D3=D0 ld ip,4 -1 // * testIncrDecrA 0:$2535 0:data:reset=0:$0003 0:$2536 0:000011:A0=A0:D3=D3 ld ip,ip+1 // * testIncrDecrA 0:$2537 0:000011:A1=A0:D8=D0 ld alu,4 // * testIncrDecrA 0:$2538 0:data:reset=0:$0004 0:$2539 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$253A z:data:reset=0:$0000 if !z // * TRAP 0:$253B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$253C 0:data:reset=0:$653B 0:$253D 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$253E d15:data:reset=0:$7FF8 1:$253B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$253C d15:data:reset=0:$653F 0:$253F 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$2540 0:000011:A1=A0:D8=D0 ld alu,4 -1 // * testIncrDecrA 0:$2541 0:data:reset=0:$0003 0:$2542 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2543 z:data:reset=0:$0000 if !z // * TRAP 0:$2544 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2545 0:data:reset=0:$6544 0:$2546 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$2547 d15:data:reset=0:$7FF8 1:$2544 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2545 d15:data:reset=0:$6548 testIncrDecrA ip,8 // * testAreg 0:$2548 0:000011:A0=A1:D3=D0 ld ip,8 -1 // * testIncrDecrA 0:$2549 0:data:reset=0:$0007 0:$254A 0:000011:A0=A0:D3=D7 ld ip,ip+1 // * testIncrDecrA 0:$254B 0:000011:A1=A0:D8=D0 ld alu,8 // * testIncrDecrA 0:$254C 0:data:reset=0:$0008 0:$254D 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$254E z:data:reset=0:$0000 if !z // * TRAP 0:$254F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2550 0:data:reset=0:$654F 0:$2551 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$2552 d15:data:reset=0:$7FF8 1:$254F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2550 d15:data:reset=0:$6553 0:$2553 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$2554 0:000011:A1=A0:D8=D0 ld alu,8 -1 // * testIncrDecrA 0:$2555 0:data:reset=0:$0007 0:$2556 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2557 z:data:reset=0:$0000 if !z // * TRAP 0:$2558 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2559 0:data:reset=0:$6558 0:$255A 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$255B d15:data:reset=0:$7FF8 1:$2558 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2559 d15:data:reset=0:$655C testIncrDecrA ip,$10 // * testAreg 0:$255C 0:000011:A0=A1:D3=D0 ld ip,$10 -1 // * testIncrDecrA 0:$255D 0:data:reset=0:$000F 0:$255E 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$255F 0:000011:A1=A0:D8=D0 ld alu,$10 // * testIncrDecrA 0:$2560 0:data:reset=0:$0010 0:$2561 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2562 z:data:reset=0:$0000 if !z // * TRAP 0:$2563 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2564 0:data:reset=0:$6563 0:$2565 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$2566 d15:data:reset=0:$7FF8 1:$2563 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2564 d15:data:reset=0:$6567 0:$2567 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$2568 0:000011:A1=A0:D8=D0 ld alu,$10 -1 // * testIncrDecrA 0:$2569 0:data:reset=0:$000F 0:$256A 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$256B z:data:reset=0:$0000 if !z // * TRAP 0:$256C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$256D 0:data:reset=0:$656C 0:$256E 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$256F d15:data:reset=0:$7FF8 1:$256C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$256D d15:data:reset=0:$6570 testIncrDecrA ip,$20 // * testAreg 0:$2570 0:000011:A0=A1:D3=D0 ld ip,$20 -1 // * testIncrDecrA 0:$2571 0:data:reset=0:$001F 0:$2572 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$2573 0:000011:A1=A0:D8=D0 ld alu,$20 // * testIncrDecrA 0:$2574 0:data:reset=0:$0020 0:$2575 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2576 z:data:reset=0:$0000 if !z // * TRAP 0:$2577 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2578 0:data:reset=0:$6577 0:$2579 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$257A d15:data:reset=0:$7FF8 1:$2577 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2578 d15:data:reset=0:$657B 0:$257B 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$257C 0:000011:A1=A0:D8=D0 ld alu,$20 -1 // * testIncrDecrA 0:$257D 0:data:reset=0:$001F 0:$257E 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$257F z:data:reset=0:$0000 if !z // * TRAP 0:$2580 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2581 0:data:reset=0:$6580 0:$2582 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$2583 d15:data:reset=0:$7FF8 1:$2580 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2581 d15:data:reset=0:$6584 testIncrDecrA ip,$40 // * testAreg 0:$2584 0:000011:A0=A1:D3=D0 ld ip,$40 -1 // * testIncrDecrA 0:$2585 0:data:reset=0:$003F 0:$2586 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$2587 0:000011:A1=A0:D8=D0 ld alu,$40 // * testIncrDecrA 0:$2588 0:data:reset=0:$0040 0:$2589 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$258A z:data:reset=0:$0000 if !z // * TRAP 0:$258B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$258C 0:data:reset=0:$658B 0:$258D 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$258E d15:data:reset=0:$7FF8 1:$258B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$258C d15:data:reset=0:$658F 0:$258F 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$2590 0:000011:A1=A0:D8=D0 ld alu,$40 -1 // * testIncrDecrA 0:$2591 0:data:reset=0:$003F 0:$2592 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2593 z:data:reset=0:$0000 if !z // * TRAP 0:$2594 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2595 0:data:reset=0:$6594 0:$2596 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$2597 d15:data:reset=0:$7FF8 1:$2594 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2595 d15:data:reset=0:$6598 testIncrDecrA ip,$80 // * testAreg 0:$2598 0:000011:A0=A1:D3=D0 ld ip,$80 -1 // * testIncrDecrA 0:$2599 0:data:reset=0:$007F 0:$259A 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$259B 0:000011:A1=A0:D8=D0 ld alu,$80 // * testIncrDecrA 0:$259C 0:data:reset=0:$0080 0:$259D 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$259E z:data:reset=0:$0000 if !z // * TRAP 0:$259F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$25A0 0:data:reset=0:$659F 0:$25A1 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$25A2 d15:data:reset=0:$7FF8 1:$259F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$25A0 d15:data:reset=0:$65A3 0:$25A3 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$25A4 0:000011:A1=A0:D8=D0 ld alu,$80 -1 // * testIncrDecrA 0:$25A5 0:data:reset=0:$007F 0:$25A6 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$25A7 z:data:reset=0:$0000 if !z // * TRAP 0:$25A8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$25A9 0:data:reset=0:$65A8 0:$25AA 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$25AB d15:data:reset=0:$7FF8 1:$25A8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$25A9 d15:data:reset=0:$65AC testIncrDecrA ip,$100 // * testAreg 0:$25AC 0:000011:A0=A1:D3=D0 ld ip,$100 -1 // * testIncrDecrA 0:$25AD 0:data:reset=0:$00FF 0:$25AE 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$25AF 0:000011:A1=A0:D8=D0 ld alu,$100 // * testIncrDecrA 0:$25B0 0:data:reset=0:$0100 0:$25B1 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$25B2 z:data:reset=0:$0000 if !z // * TRAP 0:$25B3 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$25B4 0:data:reset=0:$65B3 0:$25B5 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$25B6 d15:data:reset=0:$7FF8 1:$25B3 1:000011:A1=A7:D0=D0 then // * TRAP 1:$25B4 d15:data:reset=0:$65B7 0:$25B7 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$25B8 0:000011:A1=A0:D8=D0 ld alu,$100 -1 // * testIncrDecrA 0:$25B9 0:data:reset=0:$00FF 0:$25BA 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$25BB z:data:reset=0:$0000 if !z // * TRAP 0:$25BC 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$25BD 0:data:reset=0:$65BC 0:$25BE 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$25BF d15:data:reset=0:$7FF8 1:$25BC 1:000011:A1=A7:D0=D0 then // * TRAP 1:$25BD d15:data:reset=0:$65C0 testIncrDecrA ip,$200 // * testAreg 0:$25C0 0:000011:A0=A1:D3=D0 ld ip,$200 -1 // * testIncrDecrA 0:$25C1 0:data:reset=0:$01FF 0:$25C2 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$25C3 0:000011:A1=A0:D8=D0 ld alu,$200 // * testIncrDecrA 0:$25C4 0:data:reset=0:$0200 0:$25C5 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$25C6 z:data:reset=0:$0000 if !z // * TRAP 0:$25C7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$25C8 0:data:reset=0:$65C7 0:$25C9 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$25CA d15:data:reset=0:$7FF8 1:$25C7 1:000011:A1=A7:D0=D0 then // * TRAP 1:$25C8 d15:data:reset=0:$65CB 0:$25CB 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$25CC 0:000011:A1=A0:D8=D0 ld alu,$200 -1 // * testIncrDecrA 0:$25CD 0:data:reset=0:$01FF 0:$25CE 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$25CF z:data:reset=0:$0000 if !z // * TRAP 0:$25D0 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$25D1 0:data:reset=0:$65D0 0:$25D2 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$25D3 d15:data:reset=0:$7FF8 1:$25D0 1:000011:A1=A7:D0=D0 then // * TRAP 1:$25D1 d15:data:reset=0:$65D4 testIncrDecrA ip,$400 // * testAreg 0:$25D4 0:000011:A0=A1:D3=D0 ld ip,$400 -1 // * testIncrDecrA 0:$25D5 0:data:reset=0:$03FF 0:$25D6 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$25D7 0:000011:A1=A0:D8=D0 ld alu,$400 // * testIncrDecrA 0:$25D8 0:data:reset=0:$0400 0:$25D9 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$25DA z:data:reset=0:$0000 if !z // * TRAP 0:$25DB 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$25DC 0:data:reset=0:$65DB 0:$25DD 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$25DE d15:data:reset=0:$7FF8 1:$25DB 1:000011:A1=A7:D0=D0 then // * TRAP 1:$25DC d15:data:reset=0:$65DF 0:$25DF 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$25E0 0:000011:A1=A0:D8=D0 ld alu,$400 -1 // * testIncrDecrA 0:$25E1 0:data:reset=0:$03FF 0:$25E2 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$25E3 z:data:reset=0:$0000 if !z // * TRAP 0:$25E4 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$25E5 0:data:reset=0:$65E4 0:$25E6 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$25E7 d15:data:reset=0:$7FF8 1:$25E4 1:000011:A1=A7:D0=D0 then // * TRAP 1:$25E5 d15:data:reset=0:$65E8 testIncrDecrA ip,$800 // * testAreg 0:$25E8 0:000011:A0=A1:D3=D0 ld ip,$800 -1 // * testIncrDecrA 0:$25E9 0:data:reset=0:$07FF 0:$25EA 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$25EB 0:000011:A1=A0:D8=D0 ld alu,$800 // * testIncrDecrA 0:$25EC 0:data:reset=0:$0800 0:$25ED 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$25EE z:data:reset=0:$0000 if !z // * TRAP 0:$25EF 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$25F0 0:data:reset=0:$65EF 0:$25F1 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$25F2 d15:data:reset=0:$7FF8 1:$25EF 1:000011:A1=A7:D0=D0 then // * TRAP 1:$25F0 d15:data:reset=0:$65F3 0:$25F3 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$25F4 0:000011:A1=A0:D8=D0 ld alu,$800 -1 // * testIncrDecrA 0:$25F5 0:data:reset=0:$07FF 0:$25F6 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$25F7 z:data:reset=0:$0000 if !z // * TRAP 0:$25F8 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$25F9 0:data:reset=0:$65F8 0:$25FA 0:000011:A1=A5:D0=D0 jp error // * TRAP 0:$25FB d15:data:reset=0:$7FF8 1:$25F8 1:000011:A1=A7:D0=D0 then // * TRAP 1:$25F9 d15:data:reset=0:$65FC testIncrDecrA ip,$1000 // * testAreg 0:$25FC 0:000011:A0=A1:D3=D0 ld ip,$1000 -1 // * testIncrDecrA 0:$25FD 0:data:reset=0:$0FFF 0:$25FE 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$25FF 0:000011:A1=A0:D8=D0 ld alu,$1000 // * testIncrDecrA 0:$2600 0:data:reset=0:$1000 0:$2601 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2602 z:data:reset=0:$0000 if !z // * TRAP 0:$2603 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2604 0:data:reset=0:$6603 0:$2605 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$2606 d15:data:reset=0:$7FF8 1:$2603 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2604 d15:data:reset=0:$6607 0:$2607 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$2608 0:000011:A1=A0:D8=D0 ld alu,$1000 -1 // * testIncrDecrA 0:$2609 0:data:reset=0:$0FFF 0:$260A 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$260B z:data:reset=0:$0000 if !z // * TRAP 0:$260C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$260D 0:data:reset=0:$660C 0:$260E 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$260F d15:data:reset=0:$7FF8 1:$260C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$260D d15:data:reset=0:$6610 testIncrDecrA ip,$2000 // * testAreg 0:$2610 0:000011:A0=A1:D3=D0 ld ip,$2000 -1 // * testIncrDecrA 0:$2611 0:data:reset=0:$1FFF 0:$2612 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$2613 0:000011:A1=A0:D8=D0 ld alu,$2000 // * testIncrDecrA 0:$2614 0:data:reset=0:$2000 0:$2615 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2616 z:data:reset=0:$0000 if !z // * TRAP 0:$2617 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2618 0:data:reset=0:$6617 0:$2619 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$261A d15:data:reset=0:$7FF8 1:$2617 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2618 d15:data:reset=0:$661B 0:$261B 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$261C 0:000011:A1=A0:D8=D0 ld alu,$2000 -1 // * testIncrDecrA 0:$261D 0:data:reset=0:$1FFF 0:$261E 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$261F z:data:reset=0:$0000 if !z // * TRAP 0:$2620 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2621 0:data:reset=0:$6620 0:$2622 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$2623 d15:data:reset=0:$7FF8 1:$2620 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2621 d15:data:reset=0:$6624 testIncrDecrA ip,$4000 // * testAreg 0:$2624 0:000011:A0=A1:D3=D0 ld ip,$4000 -1 // * testIncrDecrA 0:$2625 0:data:reset=0:$3FFF 0:$2626 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$2627 0:000011:A1=A0:D8=D0 ld alu,$4000 // * testIncrDecrA 0:$2628 0:data:reset=0:$4000 0:$2629 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$262A z:data:reset=0:$0000 if !z // * TRAP 0:$262B 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$262C 0:data:reset=0:$662B 0:$262D 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$262E d15:data:reset=0:$7FF8 1:$262B 1:000011:A1=A7:D0=D0 then // * TRAP 1:$262C d15:data:reset=0:$662F 0:$262F 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$2630 0:000011:A1=A0:D8=D0 ld alu,$4000 -1 // * testIncrDecrA 0:$2631 0:data:reset=0:$3FFF 0:$2632 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2633 z:data:reset=0:$0000 if !z // * TRAP 0:$2634 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2635 0:data:reset=0:$6634 0:$2636 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$2637 d15:data:reset=0:$7FF8 1:$2634 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2635 d15:data:reset=0:$6638 testIncrDecrA ip,$8000 // * testAreg 0:$2638 0:000011:A0=A1:D3=D0 ld ip,$8000 -1 // * testIncrDecrA 0:$2639 0:data:reset=0:$7FFF 0:$263A 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$263B 0:000011:A1=A0:D8=D0 ld alu,$8000 // * testIncrDecrA 0:$263C 0:data:reset=0:$8000 0:$263D 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$263E z:data:reset=0:$0000 if !z // * TRAP 0:$263F 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2640 0:data:reset=0:$663F 0:$2641 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$2642 d15:data:reset=0:$7FF8 1:$263F 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2640 d15:data:reset=0:$6643 0:$2643 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$2644 0:000011:A1=A0:D8=D0 ld alu,$8000 -1 // * testIncrDecrA 0:$2645 0:data:reset=0:$7FFF 0:$2646 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2647 z:data:reset=0:$0000 if !z // * TRAP 0:$2648 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2649 0:data:reset=0:$6648 0:$264A 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$264B d15:data:reset=0:$7FF8 1:$2648 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2649 d15:data:reset=0:$664C testIncrDecrA ip,0 // * testAreg 0:$264C 0:000011:A0=A1:D3=D0 ld ip,0 -1 // * testIncrDecrA 0:$264D 0:data:reset=0:$FFFF 0:$264E 0:000011:A0=A0:D3=DF ld ip,ip+1 // * testIncrDecrA 0:$264F 0:000011:A1=A0:D8=D0 ld alu,0 // * testIncrDecrA 0:$2650 0:data:reset=0:$0000 0:$2651 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2652 z:data:reset=0:$0000 if !z // * TRAP 0:$2653 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2654 0:data:reset=0:$6653 0:$2655 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$2656 d15:data:reset=0:$7FF8 1:$2653 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2654 d15:data:reset=0:$6657 0:$2657 0:010011:A0=A0:D3=D8 ld ip,ip-1 // * testIncrDecrA 0:$2658 0:000011:A1=A0:D8=D0 ld alu,0 -1 // * testIncrDecrA 0:$2659 0:data:reset=0:$FFFF 0:$265A 0:000001:A1=A0:D3=D3 equ ip // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$265B z:data:reset=0:$0000 if !z // * TRAP 0:$265C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$265D 0:data:reset=0:$665C 0:$265E 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$265F d15:data:reset=0:$7FF8 1:$265C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$265D d15:data:reset=0:$6660 testAreg sp 0:$2660 0:000011:A2=A1:D3=D0 ld sp,0 // * testAreg 0:$2661 0:data:reset=0:$0000 0:$2662 0:000011:A1=A2:D3=D3 tst sp // * testAreg TRAP !z // * testAreg 0:$2663 z:data:reset=0:$0000 if !z // * TRAP 0:$2664 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2665 0:data:reset=0:$6664 0:$2666 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$2667 d15:data:reset=0:$7FF8 1:$2664 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2665 d15:data:reset=0:$6668 0:$2668 0:000011:A2=A1:D3=D0 ld sp,$ffff // * testAreg 0:$2669 0:data:reset=0:$FFFF 0:$266A 0:001011:A1=A2:D3=D3 tstn sp // * testAreg TRAP !z // * testAreg 0:$266B z:data:reset=0:$0000 if !z // * TRAP 0:$266C 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$266D 0:data:reset=0:$666C 0:$266E 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$266F d15:data:reset=0:$7FF8 1:$266C 1:000011:A1=A7:D0=D0 then // * TRAP 1:$266D d15:data:reset=0:$6670 0:$2670 0:000011:A1=A7:D8=D0 ld alu,$55aa // * testAreg 0:$2671 0:data:reset=0:$55AA 0:$2672 0:000011:A2=A1:D3=D8 ld sp,alu // * testAreg 0:$2673 0:000001:A1=A2:D3=D3 equ sp // * testAreg TRAP !z // * testAreg 0:$2674 z:data:reset=0:$0000 if !z // * TRAP 0:$2675 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2676 0:data:reset=0:$6675 0:$2677 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$2678 d15:data:reset=0:$7FF8 1:$2675 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2676 d15:data:reset=0:$6679 0:$2679 0:000011:A1=A7:D8=D0 ld alu,$aa55 // * testAreg 0:$267A 0:data:reset=0:$AA55 0:$267B 0:000011:A2=A1:D3=D8 ld sp,alu // * testAreg 0:$267C 0:000001:A1=A2:D3=D3 equ sp // * testAreg TRAP !z // * testAreg 0:$267D z:data:reset=0:$0000 if !z // * TRAP 0:$267E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$267F 0:data:reset=0:$667E 0:$2680 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$2681 d15:data:reset=0:$7FF8 1:$267E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$267F d15:data:reset=0:$6682 testIncrDecrA sp,1 // * testAreg 0:$2682 0:000011:A2=A1:D3=D0 ld sp,1 -1 // * testIncrDecrA 0:$2683 0:data:reset=0:$0000 0:$2684 0:000011:A2=A2:D3=D8 ld sp,sp+1 // * testIncrDecrA 0:$2685 0:000011:A1=A2:D8=D0 ld alu,1 // * testIncrDecrA 0:$2686 0:data:reset=0:$0001 0:$2687 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2688 z:data:reset=0:$0000 if !z // * TRAP 0:$2689 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$268A 0:data:reset=0:$6689 0:$268B 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$268C d15:data:reset=0:$7FF8 1:$2689 1:000011:A1=A7:D0=D0 then // * TRAP 1:$268A d15:data:reset=0:$668D 0:$268D 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$268E 0:000011:A1=A2:D8=D0 ld alu,1 -1 // * testIncrDecrA 0:$268F 0:data:reset=0:$0000 0:$2690 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2691 z:data:reset=0:$0000 if !z // * TRAP 0:$2692 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2693 0:data:reset=0:$6692 0:$2694 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$2695 d15:data:reset=0:$7FF8 1:$2692 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2693 d15:data:reset=0:$6696 testIncrDecrA sp,2 // * testAreg 0:$2696 0:000011:A2=A1:D3=D0 ld sp,2 -1 // * testIncrDecrA 0:$2697 0:data:reset=0:$0001 0:$2698 0:000011:A2=A2:D3=D8 ld sp,sp+1 // * testIncrDecrA 0:$2699 0:000011:A1=A2:D8=D0 ld alu,2 // * testIncrDecrA 0:$269A 0:data:reset=0:$0002 0:$269B 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$269C z:data:reset=0:$0000 if !z // * TRAP 0:$269D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$269E 0:data:reset=0:$669D 0:$269F 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$26A0 d15:data:reset=0:$7FF8 1:$269D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$269E d15:data:reset=0:$66A1 0:$26A1 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$26A2 0:000011:A1=A2:D8=D0 ld alu,2 -1 // * testIncrDecrA 0:$26A3 0:data:reset=0:$0001 0:$26A4 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$26A5 z:data:reset=0:$0000 if !z // * TRAP 0:$26A6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$26A7 0:data:reset=0:$66A6 0:$26A8 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$26A9 d15:data:reset=0:$7FF8 1:$26A6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$26A7 d15:data:reset=0:$66AA testIncrDecrA sp,4 // * testAreg 0:$26AA 0:000011:A2=A1:D3=D0 ld sp,4 -1 // * testIncrDecrA 0:$26AB 0:data:reset=0:$0003 0:$26AC 0:000011:A2=A2:D3=D3 ld sp,sp+1 // * testIncrDecrA 0:$26AD 0:000011:A1=A2:D8=D0 ld alu,4 // * testIncrDecrA 0:$26AE 0:data:reset=0:$0004 0:$26AF 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$26B0 z:data:reset=0:$0000 if !z // * TRAP 0:$26B1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$26B2 0:data:reset=0:$66B1 0:$26B3 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$26B4 d15:data:reset=0:$7FF8 1:$26B1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$26B2 d15:data:reset=0:$66B5 0:$26B5 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$26B6 0:000011:A1=A2:D8=D0 ld alu,4 -1 // * testIncrDecrA 0:$26B7 0:data:reset=0:$0003 0:$26B8 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$26B9 z:data:reset=0:$0000 if !z // * TRAP 0:$26BA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$26BB 0:data:reset=0:$66BA 0:$26BC 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$26BD d15:data:reset=0:$7FF8 1:$26BA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$26BB d15:data:reset=0:$66BE testIncrDecrA sp,8 // * testAreg 0:$26BE 0:000011:A2=A1:D3=D0 ld sp,8 -1 // * testIncrDecrA 0:$26BF 0:data:reset=0:$0007 0:$26C0 0:000011:A2=A2:D3=D7 ld sp,sp+1 // * testIncrDecrA 0:$26C1 0:000011:A1=A2:D8=D0 ld alu,8 // * testIncrDecrA 0:$26C2 0:data:reset=0:$0008 0:$26C3 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$26C4 z:data:reset=0:$0000 if !z // * TRAP 0:$26C5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$26C6 0:data:reset=0:$66C5 0:$26C7 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$26C8 d15:data:reset=0:$7FF8 1:$26C5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$26C6 d15:data:reset=0:$66C9 0:$26C9 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$26CA 0:000011:A1=A2:D8=D0 ld alu,8 -1 // * testIncrDecrA 0:$26CB 0:data:reset=0:$0007 0:$26CC 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$26CD z:data:reset=0:$0000 if !z // * TRAP 0:$26CE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$26CF 0:data:reset=0:$66CE 0:$26D0 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$26D1 d15:data:reset=0:$7FF8 1:$26CE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$26CF d15:data:reset=0:$66D2 testIncrDecrA sp,$10 // * testAreg 0:$26D2 0:000011:A2=A1:D3=D0 ld sp,$10 -1 // * testIncrDecrA 0:$26D3 0:data:reset=0:$000F 0:$26D4 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$26D5 0:000011:A1=A2:D8=D0 ld alu,$10 // * testIncrDecrA 0:$26D6 0:data:reset=0:$0010 0:$26D7 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$26D8 z:data:reset=0:$0000 if !z // * TRAP 0:$26D9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$26DA 0:data:reset=0:$66D9 0:$26DB 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$26DC d15:data:reset=0:$7FF8 1:$26D9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$26DA d15:data:reset=0:$66DD 0:$26DD 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$26DE 0:000011:A1=A2:D8=D0 ld alu,$10 -1 // * testIncrDecrA 0:$26DF 0:data:reset=0:$000F 0:$26E0 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$26E1 z:data:reset=0:$0000 if !z // * TRAP 0:$26E2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$26E3 0:data:reset=0:$66E2 0:$26E4 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$26E5 d15:data:reset=0:$7FF8 1:$26E2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$26E3 d15:data:reset=0:$66E6 testIncrDecrA sp,$20 // * testAreg 0:$26E6 0:000011:A2=A1:D3=D0 ld sp,$20 -1 // * testIncrDecrA 0:$26E7 0:data:reset=0:$001F 0:$26E8 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$26E9 0:000011:A1=A2:D8=D0 ld alu,$20 // * testIncrDecrA 0:$26EA 0:data:reset=0:$0020 0:$26EB 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$26EC z:data:reset=0:$0000 if !z // * TRAP 0:$26ED 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$26EE 0:data:reset=0:$66ED 0:$26EF 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$26F0 d15:data:reset=0:$7FF8 1:$26ED 1:000011:A1=A7:D0=D0 then // * TRAP 1:$26EE d15:data:reset=0:$66F1 0:$26F1 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$26F2 0:000011:A1=A2:D8=D0 ld alu,$20 -1 // * testIncrDecrA 0:$26F3 0:data:reset=0:$001F 0:$26F4 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$26F5 z:data:reset=0:$0000 if !z // * TRAP 0:$26F6 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$26F7 0:data:reset=0:$66F6 0:$26F8 0:000011:A1=A6:D0=D0 jp error // * TRAP 0:$26F9 d15:data:reset=0:$7FF8 1:$26F6 1:000011:A1=A7:D0=D0 then // * TRAP 1:$26F7 d15:data:reset=0:$66FA testIncrDecrA sp,$40 // * testAreg 0:$26FA 0:000011:A2=A1:D3=D0 ld sp,$40 -1 // * testIncrDecrA 0:$26FB 0:data:reset=0:$003F 0:$26FC 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$26FD 0:000011:A1=A2:D8=D0 ld alu,$40 // * testIncrDecrA 0:$26FE 0:data:reset=0:$0040 0:$26FF 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2700 z:data:reset=0:$0000 if !z // * TRAP 0:$2701 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2702 0:data:reset=0:$6701 0:$2703 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$2704 d15:data:reset=0:$7FF8 1:$2701 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2702 d15:data:reset=0:$6705 0:$2705 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$2706 0:000011:A1=A2:D8=D0 ld alu,$40 -1 // * testIncrDecrA 0:$2707 0:data:reset=0:$003F 0:$2708 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2709 z:data:reset=0:$0000 if !z // * TRAP 0:$270A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$270B 0:data:reset=0:$670A 0:$270C 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$270D d15:data:reset=0:$7FF8 1:$270A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$270B d15:data:reset=0:$670E testIncrDecrA sp,$80 // * testAreg 0:$270E 0:000011:A2=A1:D3=D0 ld sp,$80 -1 // * testIncrDecrA 0:$270F 0:data:reset=0:$007F 0:$2710 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$2711 0:000011:A1=A2:D8=D0 ld alu,$80 // * testIncrDecrA 0:$2712 0:data:reset=0:$0080 0:$2713 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2714 z:data:reset=0:$0000 if !z // * TRAP 0:$2715 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2716 0:data:reset=0:$6715 0:$2717 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$2718 d15:data:reset=0:$7FF8 1:$2715 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2716 d15:data:reset=0:$6719 0:$2719 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$271A 0:000011:A1=A2:D8=D0 ld alu,$80 -1 // * testIncrDecrA 0:$271B 0:data:reset=0:$007F 0:$271C 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$271D z:data:reset=0:$0000 if !z // * TRAP 0:$271E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$271F 0:data:reset=0:$671E 0:$2720 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$2721 d15:data:reset=0:$7FF8 1:$271E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$271F d15:data:reset=0:$6722 testIncrDecrA sp,$100 // * testAreg 0:$2722 0:000011:A2=A1:D3=D0 ld sp,$100 -1 // * testIncrDecrA 0:$2723 0:data:reset=0:$00FF 0:$2724 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$2725 0:000011:A1=A2:D8=D0 ld alu,$100 // * testIncrDecrA 0:$2726 0:data:reset=0:$0100 0:$2727 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2728 z:data:reset=0:$0000 if !z // * TRAP 0:$2729 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$272A 0:data:reset=0:$6729 0:$272B 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$272C d15:data:reset=0:$7FF8 1:$2729 1:000011:A1=A7:D0=D0 then // * TRAP 1:$272A d15:data:reset=0:$672D 0:$272D 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$272E 0:000011:A1=A2:D8=D0 ld alu,$100 -1 // * testIncrDecrA 0:$272F 0:data:reset=0:$00FF 0:$2730 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2731 z:data:reset=0:$0000 if !z // * TRAP 0:$2732 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2733 0:data:reset=0:$6732 0:$2734 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$2735 d15:data:reset=0:$7FF8 1:$2732 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2733 d15:data:reset=0:$6736 testIncrDecrA sp,$200 // * testAreg 0:$2736 0:000011:A2=A1:D3=D0 ld sp,$200 -1 // * testIncrDecrA 0:$2737 0:data:reset=0:$01FF 0:$2738 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$2739 0:000011:A1=A2:D8=D0 ld alu,$200 // * testIncrDecrA 0:$273A 0:data:reset=0:$0200 0:$273B 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$273C z:data:reset=0:$0000 if !z // * TRAP 0:$273D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$273E 0:data:reset=0:$673D 0:$273F 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$2740 d15:data:reset=0:$7FF8 1:$273D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$273E d15:data:reset=0:$6741 0:$2741 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$2742 0:000011:A1=A2:D8=D0 ld alu,$200 -1 // * testIncrDecrA 0:$2743 0:data:reset=0:$01FF 0:$2744 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2745 z:data:reset=0:$0000 if !z // * TRAP 0:$2746 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2747 0:data:reset=0:$6746 0:$2748 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$2749 d15:data:reset=0:$7FF8 1:$2746 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2747 d15:data:reset=0:$674A testIncrDecrA sp,$400 // * testAreg 0:$274A 0:000011:A2=A1:D3=D0 ld sp,$400 -1 // * testIncrDecrA 0:$274B 0:data:reset=0:$03FF 0:$274C 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$274D 0:000011:A1=A2:D8=D0 ld alu,$400 // * testIncrDecrA 0:$274E 0:data:reset=0:$0400 0:$274F 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2750 z:data:reset=0:$0000 if !z // * TRAP 0:$2751 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2752 0:data:reset=0:$6751 0:$2753 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$2754 d15:data:reset=0:$7FF8 1:$2751 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2752 d15:data:reset=0:$6755 0:$2755 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$2756 0:000011:A1=A2:D8=D0 ld alu,$400 -1 // * testIncrDecrA 0:$2757 0:data:reset=0:$03FF 0:$2758 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2759 z:data:reset=0:$0000 if !z // * TRAP 0:$275A 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$275B 0:data:reset=0:$675A 0:$275C 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$275D d15:data:reset=0:$7FF8 1:$275A 1:000011:A1=A7:D0=D0 then // * TRAP 1:$275B d15:data:reset=0:$675E testIncrDecrA sp,$800 // * testAreg 0:$275E 0:000011:A2=A1:D3=D0 ld sp,$800 -1 // * testIncrDecrA 0:$275F 0:data:reset=0:$07FF 0:$2760 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$2761 0:000011:A1=A2:D8=D0 ld alu,$800 // * testIncrDecrA 0:$2762 0:data:reset=0:$0800 0:$2763 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2764 z:data:reset=0:$0000 if !z // * TRAP 0:$2765 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2766 0:data:reset=0:$6765 0:$2767 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$2768 d15:data:reset=0:$7FF8 1:$2765 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2766 d15:data:reset=0:$6769 0:$2769 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$276A 0:000011:A1=A2:D8=D0 ld alu,$800 -1 // * testIncrDecrA 0:$276B 0:data:reset=0:$07FF 0:$276C 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$276D z:data:reset=0:$0000 if !z // * TRAP 0:$276E 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$276F 0:data:reset=0:$676E 0:$2770 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$2771 d15:data:reset=0:$7FF8 1:$276E 1:000011:A1=A7:D0=D0 then // * TRAP 1:$276F d15:data:reset=0:$6772 testIncrDecrA sp,$1000 // * testAreg 0:$2772 0:000011:A2=A1:D3=D0 ld sp,$1000 -1 // * testIncrDecrA 0:$2773 0:data:reset=0:$0FFF 0:$2774 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$2775 0:000011:A1=A2:D8=D0 ld alu,$1000 // * testIncrDecrA 0:$2776 0:data:reset=0:$1000 0:$2777 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2778 z:data:reset=0:$0000 if !z // * TRAP 0:$2779 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$277A 0:data:reset=0:$6779 0:$277B 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$277C d15:data:reset=0:$7FF8 1:$2779 1:000011:A1=A7:D0=D0 then // * TRAP 1:$277A d15:data:reset=0:$677D 0:$277D 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$277E 0:000011:A1=A2:D8=D0 ld alu,$1000 -1 // * testIncrDecrA 0:$277F 0:data:reset=0:$0FFF 0:$2780 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2781 z:data:reset=0:$0000 if !z // * TRAP 0:$2782 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2783 0:data:reset=0:$6782 0:$2784 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$2785 d15:data:reset=0:$7FF8 1:$2782 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2783 d15:data:reset=0:$6786 testIncrDecrA sp,$2000 // * testAreg 0:$2786 0:000011:A2=A1:D3=D0 ld sp,$2000 -1 // * testIncrDecrA 0:$2787 0:data:reset=0:$1FFF 0:$2788 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$2789 0:000011:A1=A2:D8=D0 ld alu,$2000 // * testIncrDecrA 0:$278A 0:data:reset=0:$2000 0:$278B 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$278C z:data:reset=0:$0000 if !z // * TRAP 0:$278D 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$278E 0:data:reset=0:$678D 0:$278F 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$2790 d15:data:reset=0:$7FF8 1:$278D 1:000011:A1=A7:D0=D0 then // * TRAP 1:$278E d15:data:reset=0:$6791 0:$2791 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$2792 0:000011:A1=A2:D8=D0 ld alu,$2000 -1 // * testIncrDecrA 0:$2793 0:data:reset=0:$1FFF 0:$2794 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$2795 z:data:reset=0:$0000 if !z // * TRAP 0:$2796 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$2797 0:data:reset=0:$6796 0:$2798 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$2799 d15:data:reset=0:$7FF8 1:$2796 1:000011:A1=A7:D0=D0 then // * TRAP 1:$2797 d15:data:reset=0:$679A testIncrDecrA sp,$4000 // * testAreg 0:$279A 0:000011:A2=A1:D3=D0 ld sp,$4000 -1 // * testIncrDecrA 0:$279B 0:data:reset=0:$3FFF 0:$279C 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$279D 0:000011:A1=A2:D8=D0 ld alu,$4000 // * testIncrDecrA 0:$279E 0:data:reset=0:$4000 0:$279F 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$27A0 z:data:reset=0:$0000 if !z // * TRAP 0:$27A1 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$27A2 0:data:reset=0:$67A1 0:$27A3 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$27A4 d15:data:reset=0:$7FF8 1:$27A1 1:000011:A1=A7:D0=D0 then // * TRAP 1:$27A2 d15:data:reset=0:$67A5 0:$27A5 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$27A6 0:000011:A1=A2:D8=D0 ld alu,$4000 -1 // * testIncrDecrA 0:$27A7 0:data:reset=0:$3FFF 0:$27A8 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$27A9 z:data:reset=0:$0000 if !z // * TRAP 0:$27AA 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$27AB 0:data:reset=0:$67AA 0:$27AC 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$27AD d15:data:reset=0:$7FF8 1:$27AA 1:000011:A1=A7:D0=D0 then // * TRAP 1:$27AB d15:data:reset=0:$67AE testIncrDecrA sp,$8000 // * testAreg 0:$27AE 0:000011:A2=A1:D3=D0 ld sp,$8000 -1 // * testIncrDecrA 0:$27AF 0:data:reset=0:$7FFF 0:$27B0 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$27B1 0:000011:A1=A2:D8=D0 ld alu,$8000 // * testIncrDecrA 0:$27B2 0:data:reset=0:$8000 0:$27B3 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$27B4 z:data:reset=0:$0000 if !z // * TRAP 0:$27B5 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$27B6 0:data:reset=0:$67B5 0:$27B7 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$27B8 d15:data:reset=0:$7FF8 1:$27B5 1:000011:A1=A7:D0=D0 then // * TRAP 1:$27B6 d15:data:reset=0:$67B9 0:$27B9 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$27BA 0:000011:A1=A2:D8=D0 ld alu,$8000 -1 // * testIncrDecrA 0:$27BB 0:data:reset=0:$7FFF 0:$27BC 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$27BD z:data:reset=0:$0000 if !z // * TRAP 0:$27BE 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$27BF 0:data:reset=0:$67BE 0:$27C0 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$27C1 d15:data:reset=0:$7FF8 1:$27BE 1:000011:A1=A7:D0=D0 then // * TRAP 1:$27BF d15:data:reset=0:$67C2 testIncrDecrA sp,0 // * testAreg 0:$27C2 0:000011:A2=A1:D3=D0 ld sp,0 -1 // * testIncrDecrA 0:$27C3 0:data:reset=0:$FFFF 0:$27C4 0:000011:A2=A2:D3=DF ld sp,sp+1 // * testIncrDecrA 0:$27C5 0:000011:A1=A2:D8=D0 ld alu,0 // * testIncrDecrA 0:$27C6 0:data:reset=0:$0000 0:$27C7 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$27C8 z:data:reset=0:$0000 if !z // * TRAP 0:$27C9 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$27CA 0:data:reset=0:$67C9 0:$27CB 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$27CC d15:data:reset=0:$7FF8 1:$27C9 1:000011:A1=A7:D0=D0 then // * TRAP 1:$27CA d15:data:reset=0:$67CD 0:$27CD 0:010011:A2=A2:D3=D8 ld sp,sp-1 // * testIncrDecrA 0:$27CE 0:000011:A1=A2:D8=D0 ld alu,0 -1 // * testIncrDecrA 0:$27CF 0:data:reset=0:$FFFF 0:$27D0 0:000001:A1=A2:D3=D3 equ sp // * testIncrDecrA TRAP !z // * testIncrDecrA 0:$27D1 z:data:reset=0:$0000 if !z // * TRAP 0:$27D2 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$27D3 0:data:reset=0:$67D2 0:$27D4 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$27D5 d15:data:reset=0:$7FF8 1:$27D2 1:000011:A1=A7:D0=D0 then // * TRAP 1:$27D3 d15:data:reset=0:$67D6 // --- file: "aregs.asm" --- #include "ramtest.asm" // +++ file: "ramtest.asm" +++ /* Copyright (c) Günter Woigk 2009 - 2010 mailto:kio@little-bat.de This file is free software This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: ? Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. ? Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ // adapted from "?/mc/asm/ramtest.asm" /* -------------------------------------------------- Test and Clear Ram Test and clear 64k ram with $0000. "run-through" version: no ret at end ram_test should detect defective bits, defective chips, total failure of ram, defective data lines and defective address lines. failure in first loop: defective word at a0: issue with data lines? Bit always 0, always 1, shortened? */ // in: - // out: - // mod: alu,a1,a0,dtmp // Check whole ram word by word: // Store and read 16 x single bit 1 and 16 x single bit 0 0:$27D6 0:000011:A6=A1:D3=D0 ld atmp,$ // error position 0:$27D7 0:data:reset=0:$67D6 0:$27D8 0:000011:A3=A1:D3=D0 ld a0,$0000 // a0 -> ram 0:$27D9 0:data:reset=0:$0000 do 0:$27DA 0:000011:A1=A0:D8=D0 ld alu,$8000 // alu = pattern = $8000 --> $0001 0:$27DB 0:data:reset=0:$8000 0:$27DC 0:000011:A1=A0:D7=D8 ld dtmp,alu do 0:$27DD 0:001011:A1=A0:D8=D8 cpl 0:$27DE 0:000011:A1=A3:D1=D8 ld (a0),alu 0:$27DF 0:000011:A1=A3:D3=D7 tst dtmp // toggle data on bus 0:$27E0 0:000011:A1=A3:D3=D1 tst (a0) // delay 16 MHz 0:$27E1 0:000001:A1=A3:D3=D1 equ (a0) // compare 0:$27E2 z:000011:A1=A3:D7=D8 ld dtmp,alu : z 0:$27E3 0:000011:A1=A3:D0=D0 jp 0,error // defective word at a0 0:$27E4 d15:data:reset=0:$7FF8 1:$27E3 1:001011:A1=A7:D8=D8 cpl 1:$27E4 1:000011:A1=A3:D1=D8 ld (a0),alu 1:$27E5 1:000011:A1=A3:D3=D7 tst dtmp 1:$27E6 1:000011:A1=A3:D3=D1 tst (a0) // delay 16 MHz 1:$27E7 1:000001:A1=A3:D3=D1 equ (a0) // compare 1:$27E8 z:000011:A1=A3:D7=D8 ld dtmp,alu : z 0:$27E9 0:000011:A1=A7:D0=D0 jp 0,error // defective word at a0 0:$27EA d15:data:reset=0:$7FF8 1:$27E9 1:000011:A1=A3:DC=D8 ld sr,alu,nc // note: data bit 0 on bus 1:$27EA d0:000011:A1=A3:D8=DC ld alu,sr : bit0 // note: test for bit0 0:$27EB 0:000011:A1=A7:D0=D0 until 1 // note: conditional branch 0:$27EC d15:data:reset=0:$67DD // same byte, next bit 1:$27EB 1:000011:A3=A3:D3=DC inc a0 1:$27EC 1:000011:A1=A3:D3=D3 tst a0 1:$27ED z:data:reset=0:$0000 until z // next byte 0:$27EE 0:000011:A1=A7:D0=D0 0:$27EF d15:data:reset=0:$67DA // now: all RAM[?] = $01 // Check for folding (defective address lines) and clear ram to $0000: // ld a0,$0000 // a0 = pointer ist schon // ld dtmp,1 // const: 1 ist schon do 1:$27EE 1:000011:A1=A3:D8=D1 ld alu,(a0) 1:$27EF 1:001100:A1=A3:D3=D7 sub dtmp // -1 1:$27F0 1:001100:A1=A3:D8=D7 1:$27F1 z:000011:A3=A3:D1=D8 ld (a0++),alu : z // $01 -> $00 1:$27F2 1:000011:A1=A3:D0=D0 while 1 1:$27F3 d15:data:reset=0:$E7EE // Abort if ram cell did not contain $0001: // either due to folded addresses due to defective address line // or because entire 64k were cleared. // a0 points behind the mirrored cell or at $0001 if entire 64k are ok: 0:$27F2 0:000001:A1=A7:D8=D8 xor alu // if stopped because 64k have been cleared: 0:$27F3 0:010011:A3=A3:D3=D8 ld (--a0),alu // clear ram[$0000] 0:$27F4 0:000011:A1=A3:D1=D8 0:$27F5 0:000011:A1=A3:D3=D3 tst a0 TRAP !z 0:$27F6 z:data:reset=0:$0000 if !z // * TRAP 0:$27F7 0:000011:A6=A1:D3=D0 ld atmp,$ // * TRAP 0:$27F8 0:data:reset=0:$67F7 0:$27F9 0:000011:A1=A7:D0=D0 jp error // * TRAP 0:$27FA d15:data:reset=0:$7FF8 1:$27F7 1:000011:A1=A7:D0=D0 then // * TRAP 1:$27F8 d15:data:reset=0:$67FB // --- file: "ramtest.asm" --- //#include "cmd_lo.asm" 0:$27FB 0:data:led_g=0:$0000 clr led_grn // 2nd half of test loop passed 0:$27FC 0:000011:A1=A0:D0=D0 jp start // again? 0:$27FD d15:data:reset=0:$4007 // #include "ldir.asm" // TODO: // IO // Interrupt // --- file: "test.asm" ---