📄 sa1ops.s
字号:
OpFEM1: AbsoluteIndexedX8 INC Inc8 ABSXOpFEM0: AbsoluteIndexedX8 INC2 Inc16 ABSX/* LDA */OpA9M1: Immediate8 LDA Lda8 IMMOpA9M0: Immediate16 LDA Lda16 IMMOpA5M1: Direct8 LDA call_S9XSA1GetByte Lda8 DIROpA5M0: Direct8 LDA2 call_S9XSA1GetWord Lda16 DIROpB5M1: DirectIndexedX8 LDA call_S9XSA1GetByte Lda8 DIXOpB5M0: DirectIndexedX8 LDA2 call_S9XSA1GetWord Lda16 DIXOpB2M1: DirectIndirect8 LDA call_S9XSA1GetByte Lda8 DIOpB2M0: DirectIndirect8 LDA2 call_S9XSA1GetWord Lda16 DIOpA1M1: DirectIndexedIndirect8 LDA call_S9XSA1GetByte Lda8 DIIOpA1M0: DirectIndexedIndirect8 LDA2 call_S9XSA1GetWord Lda16 DIIOpB1M1: DirectIndirectIndexed8 LDA call_S9XSA1GetByte Lda8 DIIYOpB1M0: DirectIndirectIndexed8 LDA2 call_S9XSA1GetWord Lda16 DIIYOpA7M1: DirectIndirectLong8 LDA call_S9XSA1GetByte Lda8 DILOpA7M0: DirectIndirectLong8 LDA2 call_S9XSA1GetWord Lda16 DILOpB7M1: DirectIndirectIndexedLong8 LDA call_S9XSA1GetByte Lda8 DIILOpB7M0: DirectIndirectIndexedLong8 LDA2 call_S9XSA1GetWord Lda16 DIILOpADM1: Absolute8 LDA call_S9XSA1GetByte Lda8 ABSOpADM0: Absolute8 LDA2 call_S9XSA1GetWord Lda16 ABSOpBDM1: AbsoluteIndexedX8 LDA call_S9XSA1GetByte Lda8 ABSXOpBDM0: AbsoluteIndexedX8 LDA2 call_S9XSA1GetWord Lda16 ABSXOpB9M1: AbsoluteIndexedY8 LDA call_S9XSA1GetByte Lda8 ABSYOpB9M0: AbsoluteIndexedY8 LDA2 call_S9XSA1GetWord Lda16 ABSYOpAFM1: AbsoluteLong8 LDA call_S9XSA1GetByte Lda8 ABSLOpAFM0: AbsoluteLong8 LDA2 call_S9XSA1GetWord Lda16 ABSLOpBFM1: AbsoluteLongIndexedX8 LDA call_S9XSA1GetByte Lda8 ALXOpBFM0: AbsoluteLongIndexedX8 LDA2 call_S9XSA1GetWord Lda16 ALXOpA3M1: StackRelative8 LDA call_S9XSA1GetByte Lda8 SRELOpA3M0: StackRelative8 LDA2 call_S9XSA1GetWord Lda16 SRELOpB3M1: StackRelativeIndirectIndexed8 LDA call_S9XSA1GetByte Lda8 SRIIOpB3M0: StackRelativeIndirectIndexed8 LDA2 call_S9XSA1GetWord Lda16 SRII/* LDX */OpA2X1: Immediate8 LDX Ldx8 IMMOpA2X0: Immediate16 LDX Ldx16 IMMOpA6X1: Direct8 LDX call_S9XSA1GetByte Ldx8 DIROpA6X0: Direct8 LDX2 call_S9XSA1GetWord Ldx16 DIROpB6X1: DirectIndexedY8 LDX call_S9XSA1GetByte Ldx8 DIYOpB6X0: DirectIndexedY8 LDX2 call_S9XSA1GetWord Ldx16 DIYOpAEX1: Absolute8 LDX call_S9XSA1GetByte Ldx8 ABSOpAEX0: Absolute8 LDX2 call_S9XSA1GetWord Ldx16 ABSOpBEX1: AbsoluteIndexedY8 LDX call_S9XSA1GetByte Ldx8 ABSYOpBEX0: AbsoluteIndexedY8 LDX2 call_S9XSA1GetWord Ldx16 ABSY/* LDY */OpA0X1: Immediate8 LDY Ldy8 IMMOpA0X0: Immediate16 LDY Ldy16 IMMOpA4X1: Direct8 LDY call_S9XSA1GetByte Ldy8 DIROpA4X0: Direct8 LDY2 call_S9XSA1GetWord Ldy16 DIROpB4X1: DirectIndexedX8 LDY call_S9XSA1GetByte Ldy8 DIXOpB4X0: DirectIndexedX8 LDY2 call_S9XSA1GetWord Ldy16 DIXOpACX1: Absolute8 LDY call_S9XSA1GetByte Ldy8 ABSOpACX0: Absolute8 LDY2 call_S9XSA1GetWord Ldy16 ABSOpBCX1: AbsoluteIndexedX8 LDY call_S9XSA1GetByte Ldy8 ABSXOpBCX0: AbsoluteIndexedX8 LDY2 call_S9XSA1GetWord Ldy16 ABSX/* LSR */Op4AM1: extu.b A,r1 sub r1,A mov #Carry,r0 shlr r1 bt/s .Lsr8Carry or r0,FLAGS add #-Carry,FLAGS.Lsr8Carry: or r1,A SetZNjmp r1Op4AM0: extu.w A,A shlr A mov #Carry,r0 bt/s .Lsr16Carry or r0,FLAGS add #-Carry,FLAGS.Lsr16Carry: Set16ZNjmp AOp46M1: Direct8 LSR Lsr8 DIROp46M0: Direct8 LSR2 Lsr16 DIROp56M1: DirectIndexedX8 LSR Lsr8 DIXOp56M0: DirectIndexedX8 LSR2 Lsr16 DIXOp4EM1: Absolute8 LSR Lsr8 ABSOp4EM0: Absolute8 LSR2 Lsr16 ABSOp5EM1: AbsoluteIndexedX8 LSR Lsr8 ABSXOp5EM0: AbsoluteIndexedX8 LSR2 Lsr16 ABSX/* ORA */Op09M1: Immediate8 ORA Ora8 IMMOp09M0: Immediate16 ORA Ora16 IMMOp05M1: Direct8 ORA call_S9XSA1GetByte Ora8 DIROp05M0: Direct8 ORA2 call_S9XSA1GetWord Ora16 DIROp15M1: DirectIndexedX8 ORA call_S9XSA1GetByte Ora8 DIXOp15M0: DirectIndexedX8 ORA2 call_S9XSA1GetWord Ora16 DIXOp12M1: DirectIndirect8 ORA call_S9XSA1GetByte Ora8 DIOp12M0: DirectIndirect8 ORA2 call_S9XSA1GetWord Ora16 DIOp01M1: DirectIndexedIndirect8 ORA call_S9XSA1GetByte Ora8 DIIOp01M0: DirectIndexedIndirect8 ORA2 call_S9XSA1GetWord Ora16 DIIOp11M1: DirectIndirectIndexed8 ORA call_S9XSA1GetByte Ora8 DIIYOp11M0: DirectIndirectIndexed8 ORA2 call_S9XSA1GetWord Ora16 DIIYOp07M1: DirectIndirectLong8 ORA call_S9XSA1GetByte Ora8 DILOp07M0: DirectIndirectLong8 ORA2 call_S9XSA1GetWord Ora16 DILOp17M1: DirectIndirectIndexedLong8 ORA call_S9XSA1GetByte Ora8 DIILOp17M0: DirectIndirectIndexedLong8 ORA2 call_S9XSA1GetWord Ora16 DIILOp0DM1: Absolute8 ORA call_S9XSA1GetByte Ora8 ABSOp0DM0: Absolute8 ORA2 call_S9XSA1GetWord Ora16 ABSOp1DM1: AbsoluteIndexedX8 ORA call_S9XSA1GetByte Ora8 ABSXOp1DM0: AbsoluteIndexedX8 ORA2 call_S9XSA1GetWord Ora16 ABSXOp19M1: AbsoluteIndexedY8 ORA call_S9XSA1GetByte Ora8 ABSYOp19M0: AbsoluteIndexedY8 ORA2 call_S9XSA1GetWord Ora16 ABSYOp0FM1: AbsoluteLong8 ORA call_S9XSA1GetByte Ora8 ABSLOp0FM0: AbsoluteLong8 ORA2 call_S9XSA1GetWord Ora16 ABSLOp1FM1: AbsoluteLongIndexedX8 ORA call_S9XSA1GetByte Ora8 ALXOp1FM0: AbsoluteLongIndexedX8 ORA2 call_S9XSA1GetWord Ora16 ALXOp03M1: StackRelative8 ORA call_S9XSA1GetByte Ora8 SRELOp03M0: StackRelative8 ORA2 call_S9XSA1GetWord Ora16 SRELOp13M1: StackRelativeIndirectIndexed8 ORA call_S9XSA1GetByte Ora8 SRIIOp13M0: StackRelativeIndirectIndexed8 ORA2 call_S9XSA1GetWord Ora16 SRII/* ROL */Op2AM1: GetCarry extu.b A,r0 mov #1,r2 sub r0,A or r2,FLAGS rotcl r0 shll8 r2 tst r2,r0 extu.b r0,r0 bf/s .Rol8Carry or r0,A add #-Carry,FLAGS.Rol8Carry: SetZNjmp r0Op2AM0: GetCarry mov #1,r2 rotcl A or r2,FLAGS shll16 r2 tst r2,A bf/s .Rol16Carry extu.w A,A add #-Carry,FLAGS.Rol16Carry: Set16ZNjmp AOp26M1: Direct8 ROL Rol8 DIROp26M0: Direct8 ROL2 Rol16 DIROp36M1: DirectIndexedX8 ROL Rol8 DIXOp36M0: DirectIndexedX8 ROL2 Rol16 DIXOp2EM1: Absolute8 ROL Rol8 ABSOp2EM0: Absolute8 ROL2 Rol16 ABSOp3EM1: AbsoluteIndexedX8 ROL Rol8 ABSXOp3EM0: AbsoluteIndexedX8 ROL2 Rol16 ABSX/* ROR */Op6AM1: mov #1,r1 and FLAGS,r1 extu.b A,r0 shll8 r1 sub r0,A or r1,r0 shlr r0 mov #Carry,r1 bt/s .Ror8Carry or r1,FLAGS add #-Carry,FLAGS.Ror8Carry: or r0,A SetZNjmp r0Op6AM0: mov #1,r1 and FLAGS,r1 extu.w A,A shll16 r1 or r1,A shlr A mov #Carry,r1 bt/s .Ror16Carry or r1,FLAGS add #-Carry,FLAGS.Ror16Carry: Set16ZNjmp A Op66M1: Direct8 ROR Ror8 DIROp66M0: Direct8 ROR2 Ror16 DIROp76M1: DirectIndexedX8 ROR Ror8 DIXOp76M0: DirectIndexedX8 ROR2 Ror16 DIXOp6EM1: Absolute8 ROR Ror8 ABSOp6EM0: Absolute8 ROR2 Ror16 ABSOp7EM1: AbsoluteIndexedX8 ROR Ror8 ABSXOp7EM0: AbsoluteIndexedX8 ROR2 Ror16 ABSX/* SBC */OpE9M1: Immediate8 SBC Sbc8 IMMOpE9M0: Immediate16 SBC Sbc16 IMMOpE5M1: Direct8 SBC call_S9XSA1GetByte Sbc8 DIROpE5M0: Direct8 SBC2 call_S9XSA1GetWord Sbc16 DIROpF5M1: DirectIndexedX8 SBC call_S9XSA1GetByte Sbc8 DIXOpF5M0: DirectIndexedX8 SBC2 call_S9XSA1GetWord Sbc16 DIXOpF2M1: DirectIndirect8 SBC call_S9XSA1GetByte Sbc8 DIOpF2M0: DirectIndirect8 SBC2 call_S9XSA1GetWord Sbc16 DIOpE1M1: DirectIndexedIndirect8 SBC call_S9XSA1GetByte Sbc8 DIIOpE1M0: DirectIndexedIndirect8 SBC2 call_S9XSA1GetWord Sbc16 DIIOpF1M1: DirectIndirectIndexed8 SBC call_S9XSA1GetByte Sbc8 DIIYOpF1M0: DirectIndirectIndexed8 SBC2 call_S9XSA1GetWord Sbc16 DIIYOpE7M1: DirectIndirectLong8 SBC call_S9XSA1GetByte Sbc8 DILOpE7M0: DirectIndirectLong8 SBC2 call_S9XSA1GetWord Sbc16 DILOpF7M1: DirectIndirectIndexedLong8 SBC call_S9XSA1GetByte Sbc8 DIILOpF7M0: DirectIndirectIndexedLong8 SBC2 call_S9XSA1GetWord Sbc16 DIILOpEDM1: Absolute8 SBC call_S9XSA1GetByte Sbc8 ABSOpEDM0: Absolute8 SBC2 call_S9XSA1GetWord Sbc16 ABSOpFDM1: AbsoluteIndexedX8 SBC call_S9XSA1GetByte Sbc8 ABSXOpFDM0: AbsoluteIndexedX8 SBC2 call_S9XSA1GetWord Sbc16 ABSXOpF9M1: AbsoluteIndexedY8 SBC call_S9XSA1GetByte Sbc8 ABSYOpF9M0: AbsoluteIndexedY8 SBC2 call_S9XSA1GetWord Sbc16 ABSYOpEFM1: AbsoluteLong8 SBC call_S9XSA1GetByte Sbc8 ABSLOpEFM0: AbsoluteLong8 SBC2 call_S9XSA1GetWord Sbc16 ABSLOpFFM1: AbsoluteLongIndexedX8 SBC call_S9XSA1GetByte Sbc8 ALXOpFFM0: AbsoluteLongIndexedX8 SBC2 call_S9XSA1GetWord Sbc16 ALXOpE3M1: StackRelative8 SBC call_S9XSA1GetByte Sbc8 SRELOpE3M0: StackRelative8 SBC2 call_S9XSA1GetWord Sbc16 SRELOpF3M1: StackRelativeIndirectIndexed8 SBC call_S9XSA1GetByte Sbc8 SRIIOpF3M0: StackRelativeIndirectIndexed8 SBC2 call_S9XSA1GetWord Sbc16 SRII/* STA */Op85M1: Direct8 STA Sta8 DIROp85M0: Direct8 STA2 Sta16 DIROp95M1: DirectIndexedX8 STA Sta8 DIXOp95M0: DirectIndexedX8 STA2 Sta16 DIXOp92M1: DirectIndirect8 STA Sta8 DIOp92M0: DirectIndirect8 STA2 Sta16 DIOp81M1: DirectIndexedIndirect8 STA Sta8 DIIOp81M0: DirectIndexedIndirect8 STA2 Sta16 DIIOp91M1: DirectIndirectIndexed8 STA Sta8 DIIYOp91M0: DirectIndirectIndexed8 STA2 Sta16 DIIYOp87M1: DirectIndirectLong8 STA Sta8 DILOp87M0: DirectIndirectLong8 STA2 Sta16 DILOp97M1: DirectIndirectIndexedLong8 STA Sta8 DIILOp97M0: DirectIndirectIndexedLong8 STA2 Sta16 DIILOp8DM1: Absolute8 STA Sta8 ABSOp8DM0: Absolute8 STA Sta16 ABSOp9DM1: AbsoluteIndexedX8 STA Sta8 ABSXOp9DM0: AbsoluteIndexedX8 STA2 Sta16 ABSXOp99M1: AbsoluteIndexedY8 STA Sta8 ABSYOp99M0: AbsoluteIndexedY8 STA2 Sta16 ABSYOp8FM1: AbsoluteLong8 STA Sta8 ABSLOp8FM0: AbsoluteLong8 STA2 Sta16 ABSLOp9FM1: AbsoluteLongIndexedX8 STA Sta8 ALXOp9FM0: AbsoluteLongIndexedX8 STA2 Sta16 ALXOp83M1: StackRelative8 STA Sta8 SRELOp83M0: StackRelative8 STA2 Sta16 SRELOp93M1: StackRelativeIndirectIndexed8 STA Sta8 SRIIOp93M0: StackRelativeIndirectIndexed8 STA2 Sta16 SRII/* STX */Op86X1: Direct8 STX Stx8 DIROp86X0: Direct8 STX2 Stx16 DIROp96X1: DirectIndexedY8 STX Stx8 DIYOp96X0: DirectIndexedY8 STX2 Stx16 DIYOp8EX1: Absolute8 STX Stx8 ABSOp8EX0: Absolute8 STX2 Stx16 ABS/* STY */Op84X1: Direct8 STY Sty8 DIROp84X0: Direct8 STY2 Sty16 DIROp94X1: DirectIndexedX8 STY Sty8 DIXOp94X0: DirectIndexedX8 STY2 Sty16 DIXOp8CX1: Absolute8 STY Sty8 ABSOp8CX0: Absolute8 STY2 Sty16 ABS/* STZ */Op64M1: Direct8 STZ Stz8 DIROp64M0: Direct8 STZ2 Stz16 DIROp74M1: DirectIndexedX8 STZ Stz8 DIXOp74M0: DirectIndexedX8 STZ2 Stz16 DIXOp9CM1: Absolute8 STZ Stz8 ABSOp9CM0: Absolute8 STZ2 Stz16 ABSOp9EM1: AbsoluteIndexedX8 STZ Stz8 ABSXOp9EM0: AbsoluteIndexedX8 STZ2 Stz16 ABSX/* TRB */Op14M1: Direct8 TRB Trb8 DIROp14M0: Direct8 TRB2 Trb16 DIROp1CM1: Absolute8 TRB Trb8 ABSOp1CM0: Absolute8 TRB2 Trb16 ABS/* TSB */Op04M1: Direct8 TSB Tsb8 DIROp04M0: Direct8 TSB2 Tsb16 DIROp0CM1: Absolute8 TSB Tsb8 ABSOp0CM0: Absolute8 TSB2 Tsb16 ABS/* BCC */Op90: Relative GetNotCarry bf .BCC_EXIT: extu.w r4,PC mov.l SA1PCBase,r3 jmp @r13 add r3,PC.BCC_EXIT: jmp @r13 nop/* BCS */OpB0: Relative GetNotCarry bt .BCS_EXIT: extu.w r4,PC mov.l SA1PCBase,r3 jmp @r13 add r3,PC.BCS_EXIT: jmp @r13 nop/* BEQ */OpF0: Relative extu.w r7,r3 tst r3,r3 bf .BEQ_EXIT extu.w r4,PC mov.l SA1PCBase,r3 jmp @r13 add r3,PC.BEQ_EXIT: jmp @r13 nop/* BMI */Op30: Relative cmp/pz r7 bt .BMI_EXIT extu.w r4,PC mov.l SA1PCBase,r3 jmp @r13 add r3,PC.BMI_EXIT: jmp @r13 nop/* BNE */OpD0: Relative extu.w r7,r3 tst r3,r3 bt .BNE_EXIT extu.w r4,PC mov.l SA1PCBase,r3 jmp @r13 add r3,PC.BNE_EXIT: jmp @r13 nop/* BPL */Op10: Relative cmp/pz r7 bf .BPL_EXIT extu.w r4,PC mov.l SA1PCBase,r3 jmp @r13 add r3,PC.BPL_EXIT: jmp @r13 nop/* BRA */Op80: Relative extu.w r4,PC mov.l SA1PCBase,r3 jmp @r13 add r3,PC/* BVC */Op50: Relative mov #Overflow,r1 tst r1,FLAGS bf .BVC_EXIT: extu.w r4,PC mov.l SA1PCBase,r3 jmp @r13 add r3,PC.BVC_EXIT: jmp @r13 nop/* BVS */Op70: Relative mov #Overflow,r1 tst r1,FLAGS bt .BVS_EXIT: extu.w r4,PC mov.l SA1PCBase,r3 jmp @r13 add r3,PC.BVS_EXIT: jmp @r13 nop/* BRL */Op82: RelativeLong BRL extu.w r4,r4 mov.l SA1ShiftedPB,r2 mov.l S9xSetPCBase,r3 or r2,r4 Xlink/* CLC */Op18: mov #~Carry,r0 jmp @r13 and r0,FLAGS/* CLD */OpD8: mov #~Decimal,r0 jmp @r13 and r0,FLAGS/* CLI */Op58:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -