xref: /aosp_15_r20/external/capstone/arch/M680X/hcs08.inc (revision 9a0e4156d50a75a99ec4f1653a0e9602a5d45c18)
1*9a0e4156SSadaf Ebrahimi
2*9a0e4156SSadaf Ebrahimi// Additional instructions only supported on HCS08
3*9a0e4156SSadaf Ebrahimistatic const inst_pageX g_hcs08_inst_overlay_table[] = {
4*9a0e4156SSadaf Ebrahimi	{ 0x32, M680X_INS_LDHX, ext_hid, inh_hid },
5*9a0e4156SSadaf Ebrahimi	{ 0x3e, M680X_INS_CPHX, ext_hid, inh_hid },
6*9a0e4156SSadaf Ebrahimi	{ 0x82, M680X_INS_BGND, inh_hid, inh_hid },
7*9a0e4156SSadaf Ebrahimi	{ 0x96, M680X_INS_STHX, ext_hid, inh_hid },
8*9a0e4156SSadaf Ebrahimi};
9*9a0e4156SSadaf Ebrahimi
10*9a0e4156SSadaf Ebrahimi// HCS08 PAGE2 instructions (prefix 0x9E)
11*9a0e4156SSadaf Ebrahimistatic const inst_pageX g_hcs08_inst_page2_table[] = {
12*9a0e4156SSadaf Ebrahimi	{ 0x60, M680X_INS_NEG, idxS_hid, inh_hid },
13*9a0e4156SSadaf Ebrahimi	{ 0x61, M680X_INS_CBEQ, idxS_hid,rel8_hid },
14*9a0e4156SSadaf Ebrahimi	{ 0x63, M680X_INS_COM, idxS_hid, inh_hid },
15*9a0e4156SSadaf Ebrahimi	{ 0x64, M680X_INS_LSR, idxS_hid, inh_hid },
16*9a0e4156SSadaf Ebrahimi	{ 0x66, M680X_INS_ROR, idxS_hid, inh_hid },
17*9a0e4156SSadaf Ebrahimi	{ 0x67, M680X_INS_ASR, idxS_hid, inh_hid },
18*9a0e4156SSadaf Ebrahimi	{ 0x68, M680X_INS_LSL, idxS_hid, inh_hid },
19*9a0e4156SSadaf Ebrahimi	{ 0x69, M680X_INS_ROL, idxS_hid, inh_hid },
20*9a0e4156SSadaf Ebrahimi	{ 0x6a, M680X_INS_DEC, idxS_hid, inh_hid },
21*9a0e4156SSadaf Ebrahimi	{ 0x6b, M680X_INS_DBNZ, idxS_hid,rel8_hid },
22*9a0e4156SSadaf Ebrahimi	{ 0x6c, M680X_INS_INC, idxS_hid, inh_hid },
23*9a0e4156SSadaf Ebrahimi	{ 0x6d, M680X_INS_TST, idxS_hid, inh_hid },
24*9a0e4156SSadaf Ebrahimi	{ 0x6f, M680X_INS_CLR, idxS_hid, inh_hid },
25*9a0e4156SSadaf Ebrahimi	{ 0xae, M680X_INS_LDHX, idxX0_hid, inh_hid },
26*9a0e4156SSadaf Ebrahimi	{ 0xbe, M680X_INS_LDHX, idxX16_hid, inh_hid },
27*9a0e4156SSadaf Ebrahimi	{ 0xce, M680X_INS_LDHX, idxX_hid, inh_hid },
28*9a0e4156SSadaf Ebrahimi	{ 0xd0, M680X_INS_SUB, idxS16_hid, inh_hid },
29*9a0e4156SSadaf Ebrahimi	{ 0xd1, M680X_INS_CMP, idxS16_hid, inh_hid },
30*9a0e4156SSadaf Ebrahimi	{ 0xd2, M680X_INS_SBC, idxS16_hid, inh_hid },
31*9a0e4156SSadaf Ebrahimi	{ 0xd3, M680X_INS_CPX, idxS16_hid, inh_hid },
32*9a0e4156SSadaf Ebrahimi	{ 0xd4, M680X_INS_AND, idxS16_hid, inh_hid },
33*9a0e4156SSadaf Ebrahimi	{ 0xd5, M680X_INS_BIT, idxS16_hid, inh_hid },
34*9a0e4156SSadaf Ebrahimi	{ 0xd6, M680X_INS_LDA, idxS16_hid, inh_hid },
35*9a0e4156SSadaf Ebrahimi	{ 0xd7, M680X_INS_STA, idxS16_hid, inh_hid },
36*9a0e4156SSadaf Ebrahimi	{ 0xd8, M680X_INS_EOR, idxS16_hid, inh_hid },
37*9a0e4156SSadaf Ebrahimi	{ 0xd9, M680X_INS_ADC, idxS16_hid, inh_hid },
38*9a0e4156SSadaf Ebrahimi	{ 0xda, M680X_INS_ORA, idxS16_hid, inh_hid },
39*9a0e4156SSadaf Ebrahimi	{ 0xdb, M680X_INS_ADD, idxS16_hid, inh_hid },
40*9a0e4156SSadaf Ebrahimi	{ 0xde, M680X_INS_LDX, idxS16_hid, inh_hid },
41*9a0e4156SSadaf Ebrahimi	{ 0xdf, M680X_INS_STX, idxS16_hid, inh_hid },
42*9a0e4156SSadaf Ebrahimi	{ 0xe0, M680X_INS_SUB, idxS_hid, inh_hid },
43*9a0e4156SSadaf Ebrahimi	{ 0xe1, M680X_INS_CMP, idxS_hid, inh_hid },
44*9a0e4156SSadaf Ebrahimi	{ 0xe2, M680X_INS_SBC, idxS_hid, inh_hid },
45*9a0e4156SSadaf Ebrahimi	{ 0xe3, M680X_INS_CPX, idxS_hid, inh_hid },
46*9a0e4156SSadaf Ebrahimi	{ 0xe4, M680X_INS_AND, idxS_hid, inh_hid },
47*9a0e4156SSadaf Ebrahimi	{ 0xe5, M680X_INS_BIT, idxS_hid, inh_hid },
48*9a0e4156SSadaf Ebrahimi	{ 0xe6, M680X_INS_LDA, idxS_hid, inh_hid },
49*9a0e4156SSadaf Ebrahimi	{ 0xe7, M680X_INS_STA, idxS_hid, inh_hid },
50*9a0e4156SSadaf Ebrahimi	{ 0xe8, M680X_INS_EOR, idxS_hid, inh_hid },
51*9a0e4156SSadaf Ebrahimi	{ 0xe9, M680X_INS_ADC, idxS_hid, inh_hid },
52*9a0e4156SSadaf Ebrahimi	{ 0xea, M680X_INS_ORA, idxS_hid, inh_hid },
53*9a0e4156SSadaf Ebrahimi	{ 0xeb, M680X_INS_ADD, idxS_hid, inh_hid },
54*9a0e4156SSadaf Ebrahimi	{ 0xee, M680X_INS_LDX, idxS_hid, inh_hid },
55*9a0e4156SSadaf Ebrahimi	{ 0xef, M680X_INS_STX, idxS_hid, inh_hid },
56*9a0e4156SSadaf Ebrahimi	{ 0xf3, M680X_INS_CPHX, idxS_hid, inh_hid },
57*9a0e4156SSadaf Ebrahimi	{ 0xfe, M680X_INS_LDHX, idxS_hid, inh_hid },
58*9a0e4156SSadaf Ebrahimi	{ 0xff, M680X_INS_STHX, idxS_hid, inh_hid },
59*9a0e4156SSadaf Ebrahimi};
60*9a0e4156SSadaf Ebrahimi
61