www.pudn.com > potemkin_sourceforPSP.rar > ARMDis.h
#pragma once
extern u32 disPC;
namespace ARMDis
{
void Dis_Unknown(u32 op, char *out);
void Dis_Unimpl(u32 op, char *out);
void Dis_AND(u32 op, char *out);
void Dis_EOR(u32 op, char *out);
void Dis_SUB(u32 op, char *out);
void Dis_RSB(u32 op, char *out);
void Dis_ADD(u32 op, char *out);
void Dis_ADC(u32 op, char *out);
void Dis_SBC(u32 op, char *out);
void Dis_RSC(u32 op, char *out);
void Dis_TST(u32 op, char *out);
void Dis_TEQ(u32 op, char *out);
void Dis_CMP(u32 op, char *out);
void Dis_CMN(u32 op, char *out);
void Dis_ORR(u32 op, char *out);
void Dis_MOV(u32 op, char *out);
void Dis_BIC(u32 op, char *out);
void Dis_MVN(u32 op, char *out);
void Dis_CLZ(u32 op, char *out);
void Dis_MRS(u32 op, char *out);
void Dis_MSRimm(u32 op, char *out);
void Dis_MSRreg(u32 op, char *out);
void Dis_MRC(u32 op, char *out);
void Dis_MCR(u32 op, char *out);
void Dis_STC(u32 op, char *out);
void Dis_LDC(u32 op, char *out);
void Dis_SWP(u32 op, char *out);
void Dis_SWPB(u32 op, char *out);
void Dis_LDR(u32 op, char *out);
void Dis_LDRB(u32 op, char *out);
void Dis_STR(u32 op, char *out);
void Dis_STRB(u32 op, char *out);
void Dis_LDRH(u32 op, char *out);
void Dis_STRH(u32 op, char *out);
void Dis_LDRSH(u32 op, char *out);
//void Dis_STRSH(u32 op, char *out);
void Dis_LDRSB(u32 op, char *out);
//void Dis_STRSB(u32 op, char *out);
void Dis_STM(u32 op, char *out);
void Dis_LDM(u32 op, char *out);
//Multiply
void Dis_MUL(u32 op, char *out);
void Dis_MLA(u32 op, char *out);
void Dis_UMULL(u32 op, char *out);
void Dis_UMLAL(u32 op, char *out);
void Dis_SMULL(u32 op, char *out);
void Dis_SMLAL(u32 op, char *out);
//Software i
void Dis_SWI(u32 op, char *out);
//Branch and
void Dis_B(u32 op, char *out);
void Dis_BL(u32 op, char *out);
void Dis_BLXr(u32 op, char *out);
void Dis_BXr(u32 op, char *out);
//////////////////////////////////////////////////////////////////////////
//THUMB
//////////////////////////////////////////////////////////////////////////
void Dis_T_Unimpl(u16 op, char *out);
void Dis_T_Unknown(u16 op, char *out);
//Data process
void Dis_T_AND(u16 op, char *out);
void Dis_T_EOR(u16 op, char *out);
void Dis_T_LSL(u16 op, char *out);
void Dis_T_LSR(u16 op, char *out);
void Dis_T_ASR(u16 op, char *out);
void Dis_T_ADC(u16 op, char *out);
void Dis_T_ROR(u16 op, char *out);
void Dis_T_SBC(u16 op, char *out);
void Dis_T_TST(u16 op, char *out);
void Dis_T_NEG(u16 op, char *out);
void Dis_T_CMP(u16 op, char *out);
void Dis_T_CMN(u16 op, char *out);
void Dis_T_ORR(u16 op, char *out);
void Dis_T_MUL(u16 op, char *out);
void Dis_T_BIC(u16 op, char *out);
void Dis_T_MVN(u16 op, char *out);
void Dis_T_ADDhi(u16 op, char *out);
void Dis_T_CMPhi(u16 op, char *out);
void Dis_T_MOVhi(u16 op, char *out);
void Dis_T_ADD(u16 op, char *out);
void Dis_T_SUB(u16 op, char *out);
void Dis_T_ADDimm(u16 op, char *out);
void Dis_T_SUBimm(u16 op, char *out);
void Dis_T_LSLimm(u16 op, char *out);
void Dis_T_LSRimm(u16 op, char *out);
void Dis_T_ASRimm(u16 op, char *out);
void Dis_T_CMPimm(u16 op, char *out);
void Dis_T_ADDlim(u16 op, char *out);
void Dis_T_SUBlim(u16 op, char *out);
void Dis_T_MOVimm(u16 op, char *out);
void Dis_T_ADDpc(u16 op, char *out);
void Dis_T_ADDsp(u16 op, char *out);
void Dis_T_STMIA(u16 op, char *out);
void Dis_T_LDMIA(u16 op, char *out);
void Dis_T_ADDspi(u16 op, char *out);
void Dis_T_SUBspi(u16 op, char *out);
//stack
void Dis_T_POP(u16 op, char *out);
void Dis_T_PUSH(u16 op, char *out);
//branch
void Dis_T_Bcond(u16 op, char *out);
void Dis_T_B(u16 op, char *out);
void Dis_T_BX(u16 op, char *out);
void Dis_T_BLX(u16 op, char *out);
void Dis_T_BLbig(u16 op, char *out);
void Dis_T_BLend(u16 op, char *out);
//loadstore
void Dis_T_LDRimm(u16 op, char *out);
void Dis_T_LDR(u16 op, char *out);
void Dis_T_LDRB(u16 op, char *out);
void Dis_T_LDRH(u16 op, char *out);
void Dis_T_LDRisp(u16 op, char *out);
void Dis_T_STRrof(u16 op, char *out);
void Dis_T_STRHro(u16 op, char *out);
void Dis_T_STRBro(u16 op, char *out);
void Dis_T_LDRSB(u16 op, char *out);
void Dis_T_LDRrof(u16 op, char *out);
void Dis_T_LDRHro(u16 op, char *out);
void Dis_T_LDRBro(u16 op, char *out);
void Dis_T_LDRSH(u16 op, char *out);
void Dis_T_STR(u16 op, char *out);
void Dis_T_STRB(u16 op, char *out);
void Dis_T_STRH(u16 op, char *out);
void Dis_T_STRisp(u16 op, char *out);
//Software int
void Dis_T_SWI(u16 op, char *out);
}