1
0
mirror of https://github.com/cc65/cc65.git synced 2024-11-18 15:05:14 +00:00
cc65/src/da65/opctable.c

1844 lines
20 KiB
C
Raw Normal View History

/*****************************************************************************/
/* */
/* opctable.c */
/* */
/* Disassembler opcode description table */
/* */
/* */
/* */
/* (C) 2000 Ullrich von Bassewitz */
/* Wacholderweg 14 */
/* D-70597 Stuttgart */
/* EMail: uz@musoftware.de */
/* */
/* */
/* This software is provided 'as-is', without any expressed or implied */
/* warranty. In no event will the authors be held liable for any damages */
/* arising from the use of this software. */
/* */
/* Permission is granted to anyone to use this software for any purpose, */
/* including commercial applications, and to alter it and redistribute it */
/* freely, subject to the following restrictions: */
/* */
/* 1. The origin of this software must not be misrepresented; you must not */
/* claim that you wrote the original software. If you use this software */
/* in a product, an acknowledgment in the product documentation would be */
/* appreciated but is not required. */
/* 2. Altered source versions must be plainly marked as such, and must not */
/* be misrepresented as being the original software. */
/* 3. This notice may not be removed or altered from any source */
/* distribution. */
/* */
/*****************************************************************************/
#include "handler.h"
#include "opctable.h"
/*****************************************************************************/
/* Data */
/*****************************************************************************/
const OpcDesc OpcTable[256] = {
{ /* $00 */
"brk",
2,
0,
cpuAll,
OH_Implicit
},
{ /* $01 */
"ora",
2,
lfUseLabel,
cpuAll,
OH_DirectXIndirect
},
{ /* $02 */
"cop",
2,
0,
cpu65816,
OH_Implicit
},
{ /* $03 */
"ora",
2,
0,
cpu65816,
OH_StackRelative
},
{ /* $04 */
"tsb",
2,
lfUseLabel,
cpu65816,
OH_Direct
},
{ /* $05 */
"ora",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $06 */
"asl",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $07 */
"ora",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLong
},
{ /* $08 */
"php",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $09 */
"ora",
2,
0,
cpuAll,
OH_Immidiate
},
{ /* $0a */
"asl",
1,
0,
cpuAll,
OH_Accumulator
},
{ /* $0b */
"phd",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $0c */
"tsb",
3,
lfUseLabel,
cpu65816,
OH_Absolute
},
{ /* $0d */
"ora",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $0e */
"asl",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $0f */
"ora",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLong
},
{ /* $10 */
"bpl",
2,
lfLabel,
cpuAll,
OH_Relative
},
{ /* $11 */
"ora",
2,
lfUseLabel,
cpuAll,
OH_DirectIndirectY
},
{ /* $12 */
"ora",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirect
},
{ /* $13 */
"ora",
2,
0,
cpu65816,
OH_StackRelativeIndirectY
},
{ /* $14 */
"trb",
2,
lfUseLabel,
cpu65816,
OH_Direct
},
{ /* $15 */
"ora",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $16 */
"asl",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $17 */
"ora",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLongY
},
{ /* $18 */
"clc",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $19 */
"ora",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteY
},
{ /* $1a */
"inc",
1,
0,
cpu65816,
OH_Accumulator
},
{ /* $1b */
"tcs",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $1c */
"trb",
3,
lfUseLabel,
cpu65816,
OH_Absolute
},
{ /* $1d */
"ora",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $1e */
"asl",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $1f */
"ora",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLongX
},
{ /* $20 */
"jsr",
3,
lfLabel,
cpuAll,
OH_Absolute
},
{ /* $21 */
"and",
2,
lfUseLabel,
cpuAll,
OH_DirectXIndirect
},
{ /* $22 */
"jsl",
3,
lfLabel,
cpu65816,
OH_AbsoluteLong
},
{ /* $23 */
"and",
2,
0,
cpu65816,
OH_StackRelative
},
{ /* $24 */
"bit",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $25 */
"and",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $26 */
"rol",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $27 */
"and",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLong
},
{ /* $28 */
"plp",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $29 */
"and",
2,
0,
cpuAll,
OH_Immidiate
},
{ /* $2a */
"rol",
1,
0,
cpuAll,
OH_Accumulator
},
{ /* $2b */
"pld",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $2c */
"bit",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $2d */
"and",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $2e */
"rol",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $2f */
"and",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLong
},
{ /* $30 */
"bmi",
2,
lfLabel,
cpuAll,
OH_Relative
},
{ /* $31 */
"and",
2,
lfUseLabel,
cpuAll,
OH_DirectIndirectY
},
{ /* $32 */
"and",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirect
},
{ /* $33 */
"and",
2,
0,
cpu65816,
OH_StackRelativeIndirectY
},
{ /* $34 */
"bit",
2,
lfUseLabel,
cpu65816,
OH_DirectX
},
{ /* $35 */
"and",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $36 */
"rol",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $37 */
"and",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLongY
},
{ /* $38 */
"sec",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $39 */
"and",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteY
},
{ /* $3a */
"dec",
1,
0,
cpu65816,
OH_Accumulator
},
{ /* $3b */
"tsc",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $3c */
"bit",
3,
lfUseLabel,
cpu65816,
OH_AbsoluteX
},
{ /* $3d */
"and",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $3e */
"rol",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $3f */
"and",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLongX
},
{ /* $40 */
"rti",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $41 */
"eor",
2,
lfUseLabel,
cpuAll,
OH_DirectXIndirect
},
{ /* $42 */
"wdm",
2,
0,
cpu65816,
OH_Implicit
},
{ /* $43 */
"eor",
2,
0,
cpu65816,
OH_StackRelative
},
{ /* $44 */
"mvp",
3,
0,
cpu65816,
OH_BlockMove
},
{ /* $45 */
"eor",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $46 */
"lsr",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $47 */
"eor",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLong
},
{ /* $48 */
"pha",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $49 */
"eor",
2,
0,
cpuAll,
OH_Immidiate
},
{ /* $4a */
"lsr",
1,
0,
cpuAll,
OH_Accumulator
},
{ /* $4b */
"phk",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $4c */
"jmp",
3,
lfLabel,
cpuAll,
OH_JmpAbsolute
},
{ /* $4d */
"eor",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $4e */
"lsr",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $4f */
"eor",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLong
},
{ /* $50 */
"bvc",
2,
lfLabel,
cpuAll,
OH_Relative
},
{ /* $51 */
"eor",
2,
lfUseLabel,
cpuAll,
OH_DirectIndirectY
},
{ /* $52 */
"eor",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirect
},
{ /* $53 */
"eor",
2,
0,
cpu65816,
OH_StackRelativeIndirectY
},
{ /* $54 */
"mvn",
3,
0,
cpu65816,
OH_BlockMove
},
{ /* $55 */
"eor",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $56 */
"lsr",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $57 */
"eor",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLongY
},
{ /* $58 */
"cli",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $59 */
"eor",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteY
},
{ /* $5a */
"phy",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $5b */
"tcd",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $5c */
"jml",
4,
lfLabel,
cpu65816,
OH_AbsoluteLong
},
{ /* $5d */
"eor",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $5e */
"lsr",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $5f */
"eor",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLongX
},
{ /* $60 */
"rts",
1,
0,
cpuAll,
OH_Rts
},
{ /* $61 */
"adc",
2,
lfUseLabel,
cpuAll,
OH_DirectXIndirect
},
{ /* $62 */
"per",
3,
lfLabel,
cpu65816,
OH_RelativeLong
},
{ /* $63 */
"adc",
2,
0,
cpu65816,
OH_StackRelative
},
{ /* $64 */
"stz",
2,
lfUseLabel,
cpu65816,
OH_Direct
},
{ /* $65 */
"adc",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $66 */
"ror",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $67 */
"adc",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLong
},
{ /* $68 */
"pla",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $69 */
"adc",
2,
0,
cpuAll,
OH_Immidiate
},
{ /* $6a */
"ror",
1,
0,
cpuAll,
OH_Accumulator
},
{ /* $6b */
"rtl",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $6c */
"jmp",
3,
lfLabel,
cpuAll,
OH_AbsoluteIndirect
},
{ /* $6d */
"adc",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $6e */
"ror",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $6f */
"adc",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLong
},
{ /* $70 */
"bvs",
2,
lfLabel,
cpuAll,
OH_Relative
},
{ /* $71 */
"adc",
2,
lfUseLabel,
cpuAll,
OH_DirectIndirectY
},
{ /* $72 */
"adc",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirect
},
{ /* $73 */
"adc",
2,
0,
cpu65816,
OH_StackRelativeIndirectY
},
{ /* $74 */
"stz",
2,
lfUseLabel,
cpu65816,
OH_DirectX
},
{ /* $75 */
"adc",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $76 */
"ror",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $77 */
"adc",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLongY
},
{ /* $78 */
"sei",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $79 */
"adc",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteY
},
{ /* $7a */
"ply",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $7b */
"tdc",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $7c */
"jmp",
3,
lfLabel,
cpu65816,
OH_AbsoluteXIndirect
},
{ /* $7d */
"adc",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $7e */
"ror",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $7f */
"adc",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLongX
},
{ /* $80 */
"bra",
2,
lfLabel,
cpu65816,
OH_Relative
},
{ /* $81 */
"sta",
2,
lfUseLabel,
cpuAll,
OH_DirectXIndirect
},
{ /* $82 */
"brl",
3,
lfLabel,
cpu65816,
OH_RelativeLong
},
{ /* $83 */
"sta",
2,
0,
cpu65816,
OH_StackRelative
},
{ /* $84 */
"sty",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $85 */
"sta",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $86 */
"stx",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $87 */
"sta",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLong
},
{ /* $88 */
"dey",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $89 */
"bit",
2,
0,
cpu65816,
OH_Immidiate
},
{ /* $8a */
"txa",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $8b */
"phb",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $8c */
"sty",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $8d */
"sta",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $8e */
"stx",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $8f */
"sta",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLong
},
{ /* $90 */
"bcc",
2,
lfLabel,
cpuAll,
OH_Relative
},
{ /* $91 */
"sta",
2,
lfUseLabel,
cpuAll,
OH_DirectIndirectY
},
{ /* $92 */
"sta",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirect
},
{ /* $93 */
"sta",
2,
0,
cpu65816,
OH_StackRelativeIndirectY
},
{ /* $94 */
"sty",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $95 */
"sta",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $96 */
"stx",
2,
lfUseLabel,
cpuAll,
OH_DirectY
},
{ /* $97 */
"sta",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLongY
},
{ /* $98 */
"tya",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $99 */
"sta",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteY
},
{ /* $9a */
"txs",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $9b */
"txy",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $9c */
"stz",
3,
lfUseLabel,
cpu65816,
OH_Absolute
},
{ /* $9d */
"sta",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $9e */
"stz",
3,
lfUseLabel,
cpu65816,
OH_AbsoluteX
},
{ /* $9f */
"sta",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLongX
},
{ /* $a0 */
"ldy",
2,
0,
cpuAll,
OH_Immidiate
},
{ /* $a1 */
"lda",
2,
lfUseLabel,
cpuAll,
OH_DirectXIndirect
},
{ /* $a2 */
"ldx",
2,
0,
cpuAll,
OH_Immidiate
},
{ /* $a3 */
"lda",
2,
0,
cpu65816,
OH_StackRelative
},
{ /* $a4 */
"ldy",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $a5 */
"lda",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $a6 */
"ldx",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $a7 */
"lda",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLong
},
{ /* $a8 */
"tay",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $a9 */
"lda",
2,
0,
cpuAll,
OH_Immidiate
},
{ /* $aa */
"tax",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $ab */
"plb",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $ac */
"ldy",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $ad */
"lda",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $ae */
"ldx",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $af */
"lda",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLong
},
{ /* $b0 */
"bcs",
2,
lfLabel,
cpuAll,
OH_Relative
},
{ /* $b1 */
"lda",
2,
lfUseLabel,
cpuAll,
OH_DirectIndirectY
},
{ /* $b2 */
"lda",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirect
},
{ /* $b3 */
"lda",
2,
0,
cpu65816,
OH_StackRelativeIndirectY
},
{ /* $b4 */
"ldy",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $b5 */
"lda",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $b6 */
"ldx",
2,
lfUseLabel,
cpuAll,
OH_DirectY
},
{ /* $b7 */
"lda",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLongY
},
{ /* $b8 */
"clv",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $b9 */
"lda",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteY
},
{ /* $ba */
"tsx",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $bb */
"tyx",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $bc */
"ldy",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $bd */
"lda",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $be */
"ldx",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteY
},
{ /* $bf */
"lda",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLongX
},
{ /* $c0 */
"cpy",
2,
0,
cpuAll,
OH_Immidiate
},
{ /* $c1 */
"cmp",
2,
lfUseLabel,
cpuAll,
OH_DirectXIndirect
},
{ /* $c2 */
"rep",
2,
0,
cpu65816,
OH_Immidiate
},
{ /* $c3 */
"cmp",
2,
0,
cpu65816,
OH_StackRelative
},
{ /* $c4 */
"cpy",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $c5 */
"cmp",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $c6 */
"dec",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $c7 */
"cmp",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLong
},
{ /* $c8 */
"iny",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $c9 */
"cmp",
2,
0,
cpuAll,
OH_Immidiate
},
{ /* $ca */
"dex",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $cb */
"wai",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $cc */
"cpy",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $cd */
"cmp",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $ce */
"dec",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $cf */
"cmp",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLong
},
{ /* $d0 */
"bne",
2,
lfLabel,
cpuAll,
OH_Relative
},
{ /* $d1 */
"cmp",
2,
lfUseLabel,
cpuAll,
OH_DirectXIndirect
},
{ /* $d2 */
"cmp",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirect
},
{ /* $d3 */
"cmp",
2,
0,
cpu65816,
OH_StackRelativeIndirectY
},
{ /* $d4 */
"pei",
2,
lfUseLabel,
cpu65816,
OH_Direct
},
{ /* $d5 */
"cmp",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $d6 */
"dec",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $d7 */
"cmp",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLongY
},
{ /* $d8 */
"cld",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $d9 */
"cmp",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteY
},
{ /* $da */
"phx",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $db */
"stp",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $dc */
"jml",
3,
lfLabel,
cpu65816,
OH_AbsoluteIndirect
},
{ /* $dd */
"cmp",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $de */
"dec",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $df */
"cmp",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLongX
},
{ /* $e0 */
"cpx",
2,
0,
cpuAll,
OH_Immidiate
},
{ /* $e1 */
"sbc",
2,
lfUseLabel,
cpuAll,
OH_DirectXIndirect
},
{ /* $e2 */
"sep",
2,
0,
cpu65816,
OH_Immidiate
},
{ /* $e3 */
"sbc",
2,
0,
cpu65816,
OH_StackRelative
},
{ /* $e4 */
"cpx",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $e5 */
"sbc",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $e6 */
"inc",
2,
lfUseLabel,
cpuAll,
OH_Direct
},
{ /* $e7 */
"sbc",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLong
},
{ /* $e8 */
"inx",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $e9 */
"sbc",
2,
0,
cpuAll,
OH_Immidiate
},
{ /* $ea */
"nop",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $eb */
"xba",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $ec */
"cpx",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $ed */
"sbc",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $ee */
"inc",
3,
lfUseLabel,
cpuAll,
OH_Absolute
},
{ /* $ef */
"sbc",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLong
},
{ /* $f0 */
"beq",
2,
lfLabel,
cpuAll,
OH_Relative
},
{ /* $f1 */
"sbc",
2,
lfUseLabel,
cpuAll,
OH_DirectIndirectY
},
{ /* $f2 */
"sbc",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirect
},
{ /* $f3 */
"sbc",
2,
0,
cpu65816,
OH_StackRelativeIndirectY
},
{ /* $f4 */
"pea",
3,
lfUseLabel,
cpu65816,
OH_Absolute
},
{ /* $f5 */
"sbc",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $f6 */
"inc",
2,
lfUseLabel,
cpuAll,
OH_DirectX
},
{ /* $f7 */
"sbc",
2,
lfUseLabel,
cpu65816,
OH_DirectIndirectLongY
},
{ /* $f8 */
"sed",
1,
0,
cpuAll,
OH_Implicit
},
{ /* $f9 */
"sbc",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteY
},
{ /* $fa */
"plx",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $fb */
"xce",
1,
0,
cpu65816,
OH_Implicit
},
{ /* $fc */
"jsr",
3,
lfLabel,
cpu65816,
OH_AbsoluteXIndirect
},
{ /* $fd */
"sbc",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $fe */
"inc",
3,
lfUseLabel,
cpuAll,
OH_AbsoluteX
},
{ /* $ff */
"sbc",
4,
lfUseLabel,
cpu65816,
OH_AbsoluteLongX
},
};