diff --git a/apps/zasm/instr.asm b/apps/zasm/instr.asm index d5075f5..46346ea 100644 --- a/apps/zasm/instr.asm +++ b/apps/zasm/instr.asm @@ -2,7 +2,7 @@ ; Number of rows in the argspec table .equ ARGSPEC_TBL_CNT 31 ; Number of rows in the primary instructions table -.equ INSTR_TBL_CNT 151 +.equ INSTR_TBL_CNT 152 ; size in bytes of each row in the primary instructions table .equ INSTR_TBL_ROWSIZE 6 ; Instruction IDs They correspond to the index of the table in instrNames @@ -61,8 +61,9 @@ .equ I_RRCA 0x34 .equ I_SBC 0x35 .equ I_SCF 0x36 -.equ I_SUB 0x37 -.equ I_XOR 0x38 +.equ I_SRL 0x37 +.equ I_SUB 0x38 +.equ I_XOR 0x39 ; Checks whether A is 'N' or 'M' checkNOrM: @@ -969,6 +970,7 @@ instrNames: .db "RRCA" .db "SBC", 0 .db "SCF", 0 + .db "SRL", 0 .db "SUB", 0 .db "XOR", 0 @@ -1142,6 +1144,7 @@ instrTBl: .db I_SBC, 'A', 0xb, 0, 0b10011000 , 0 ; SBC A, r .db I_SBC,'h',0x3,0x44, 0xed, 0b01000010 ; SBC HL, ss .db I_SCF, 0, 0, 0, 0x37 , 0 ; SCF + .db I_SRL, 0xb, 0,0x40, 0xcb, 0b00111000 ; SRL r .db I_SUB, 'l', 0, 0, 0x96 , 0 ; SUB (HL) .db I_SUB, 0xb, 0, 0, 0b10010000 , 0 ; SUB r .db I_SUB, 'n', 0, 0, 0xd6 , 0 ; SUB n diff --git a/tools/emul/zasm/zasm.bin b/tools/emul/zasm/zasm.bin index 938b7a9..ae06e5a 100644 Binary files a/tools/emul/zasm/zasm.bin and b/tools/emul/zasm/zasm.bin differ