// meta 3.3 qasm 5.1 ) //) 0000 org code RESET @0000 0010_0000_0000_0001 //) mov 00 #, fl @0001 0000_0100_1000_0011 //) ldd 08 g4 @0002 0001_0011_1000_0011 //) ldd 0A g3 @0003 0000_0000_1000_0000 //) call 0080 @0004 0000_0000_1011_0000 //) call 00B0 @0005 0000_0001_0010_1100 //) call 012C //) end-code //) 0010 org code RX @0008 0011_0101_0011_0011 //) --st ts, [g3] @0009 0010_1000_0101_0001 //) mov 08 #, ts @000A 1000_0000_1101_0001 //) and fl, ts @000B 0100_0100_0111_1001 //) z? bbi 08 @000C 0100_0001_1000_1111 //) nz? in 08 g1 @000D 1010_0100_0000_0001 //) or 04 #, fl @000E 1000_0000_1101_0001 //) and fl, ts @000F 0100_0011_0111_1101 //) nz? bbi 06 @0010 1000_0001_0000_1001 //) z? and 01 #, fl @0011 0010_0001_1101_0101 //) ret& mov g1, ts //) end-code //) 0024 org code TX @0012 0100_0101_0000_0011 //) out ts, 08 @0013 1010_0010_0000_0001 //) or 02 #, fl @0014 0010_1000_0101_0001 //) mov 08 #, ts @0015 1000_0000_1101_0001 //) and fl, ts @0016 0100_0011_0111_1101 //) nz? bbi 06 @0017 1010_0100_0000_1001 //) z? or 04 #, fl @0018 0010_1000_0101_0001 //) mov 08 #, ts @0019 1000_0000_1101_0001 //) and fl, ts @001A 0100_0100_0111_1001 //) z? bbi 08 @001B 1000_0011_0000_1101 //) nz? and 03 #, fl @001C 1000_0000_1101_0001 //) and fl, ts @001D 0100_0011_0111_1101 //) nz? bbi 06 @001E 1000_0001_0000_1001 //) z? and 01 #, fl @001F 0010_0101_1011_0111 //) ret& ld++ [g3], ts //) end-code //) 0040 org code _LIT @0020 0011_0101_0011_0011 //) --st ts, [g3] @0021 0010_0101_1110_0111 //) ret& ld++ [ra], ts //) end-code //) 0044 org code UMUL @0022 1110_0001_1101_0001 //) rrc g1, ts @0023 0111_0101_1101_0001 //) sbb ts @0024 0100_0011_1010_1101 //) nz? add g3, g2 @0025 1110_0010_1010_0001 //) rrc g2 @0026 1100_0001_1001_0101 //) ret& sr g1 //) end-code //) 004E org code UM* @0027 0010_0110_0100_0011 //) nest @0028 0010_0011_0100_0011 //) ++st g3, [g4] @0029 0000_0011_1011_0011 //) ld [g3], g3 @002A 0010_0000_0010_0001 //) mov 00 #, g2 @002B 0010_0101_1001_0001 //) mov ts, g1 @002C 0000_0000_0100_0100 //) call ' UMUL @002D 0000_0000_0100_0100 //) call ' UMUL @002E 0000_0000_0100_0100 //) call ' UMUL @002F 0000_0000_0100_0100 //) call ' UMUL @0030 0000_0000_0100_0100 //) call ' UMUL @0031 0000_0000_0100_0100 //) call ' UMUL @0032 0000_0000_0100_0100 //) call ' UMUL @0033 0000_0000_0100_0100 //) call ' UMUL @0034 0000_0000_0100_0100 //) call ' UMUL @0035 0000_0000_0100_0100 //) call ' UMUL @0036 0000_0000_0100_0100 //) call ' UMUL @0037 0000_0000_0100_0100 //) call ' UMUL @0038 0000_0000_0100_0100 //) call ' UMUL @0039 0000_0000_0100_0100 //) call ' UMUL @003A 0000_0000_0100_0100 //) call ' UMUL @003B 0000_0000_0100_0100 //) call ' UMUL @003C 0011_0011_1100_0011 //) ld-- [g4], g3 @003D 0010_0010_1101_0001 //) mov g2, ts @003E 0000_0001_0011_0011 //) st g1, [g3] @003F 0011_0110_1100_0111 //) exit //) end-code //) 0080 org code TEST @0040 0010_0101_0101_0001 //) mov 05 #, ts @0041 0110_0101_0011_0011 //) +stb ts, [g3] @0042 1001_0101_1101_0001 //) inv ts @0043 0110_0101_0011_0011 //) +stb ts, [g3] @0044 0011_0101_1101_0001 //) neg ts @0045 0111_0101_1011_0011 //) ldb- [g3], ts @0046 1111_0101_1101_0001 //) rlc ts @0047 0111_0101_1011_0011 //) ldb- [g3], ts @0048 1000_1110_0000_0001 //) and 0E #, fl @0049 1110_0001_0000_0001 //) rrc 01 #, fl @004A 0000_0000_0100_0000 //) call ' _LIT 8765 , 1000_0111_0110_0101 //) @004C 0000_0000_0100_0000 //) call ' _LIT DCBA , 1101_1100_1011_1010 //) @004E 0000_0000_0100_1110 //) call ' UM* @004F 0000_0011_0111_0001 //) bfi 06 @0050 0000_0000_0010_0100 //) call ' TX @0051 0000_0000_0001_0000 //) call ' RX @0052 0010_0111_1111_1011 //) z? jpi ' RESET 0000_0000_0000_0000 //) @0054 0100_0101_0111_0001 //) bbi 0A @0055 0000_0000_0010_0100 //) call ' TX //) end-code