⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 arm7tdmi-olut-x86.cpp

📁 一个任天堂掌上游戏机NDS的源代码
💻 CPP
📖 第 1 页 / 共 5 页
字号:
/*************************************************************************** DSemu - The Next Generation                                             ** Portable ARM7TDMI core: Opcode lookup table [arm7tdmi-olut.cpp]         ** Copyright Imran Nazar, 2005; released under the BSD public licence.     ***************************************************************************/#ifdef ARM7TDMI_X86#include "arm7tdmi.h"//---The 4096-entry opcode table-------------------------------------------// Addressed on bits [27-20][7-4] of the opcode// No coprocessor support exists in ARM7TDMI, hence the opcodes are UNI.// Opcodes undefined in ARMv4 but replaced in ARMv5 are marked.const ARM7TDMI::opfptr ARM7TDMI::XOLUT[4096]={    /*0x00*/    xopANDlli      ,    xopANDllr      ,    xopANDlri      ,    xopANDlrr      ,    xopANDari      ,    xopANDarr      ,    xopANDrri      ,    xopANDrrr      ,    xopANDlli      ,    xopMUL         ,    xopANDlri      ,    xopSTRHptrm    ,    xopANDari      ,    xopUND,     // Defined in ARM5    xopANDrri      ,    xopUND,     // Defined in ARM5    /*0x01*/    xopANDSlli     ,    xopANDSllr     ,    xopANDSlri     ,    xopANDSlrr     ,    xopANDSari     ,    xopANDSarr     ,    xopANDSrri     ,    xopANDSrrr     ,    xopANDSlli     ,    xopMULS        ,    xopANDSlri     ,    xopLDRHptrm    ,    xopANDSari     ,    xopLDRSBptrm   ,    xopANDSrri     ,    xopLDRSHptrm   ,    /*0x02*/    xopEORlli      ,    xopEORllr      ,    xopEORlri      ,    xopEORlrr      ,    xopEORari      ,    xopEORarr      ,    xopEORrri      ,    xopEORrrr      ,    xopEORlli      ,    xopMLA         ,    xopEORlri      ,    xopSTRHptrm    ,    xopEORari      ,    xopUND,     // Defined in ARM5    xopEORrri      ,    xopUND,     // Defined in ARM5    /*0x03*/    xopEORSlli     ,    xopEORSllr     ,    xopEORSlri     ,    xopEORSlrr     ,    xopEORSari     ,    xopEORSarr     ,    xopEORSrri     ,    xopEORSrrr     ,    xopEORSlli     ,    xopMLAS        ,    xopEORSlri     ,    xopLDRHptrm    ,    xopEORSari     ,    xopLDRSBptrm   ,    xopEORSrri     ,    xopLDRSHptrm   ,    /*0x04*/    xopSUBlli      ,    xopSUBllr      ,    xopSUBlri      ,    xopSUBlrr      ,    xopSUBari      ,    xopSUBarr      ,    xopSUBrri      ,    xopSUBrrr      ,    xopSUBlli      ,    xopUNP         ,  // Unallocated    xopSUBlri      ,    xopSTRHptim    ,    xopSUBari      ,    xopUND,     // Defined in ARM5    xopSUBrri      ,    xopUND,     // Defined in ARM5    /*0x05*/    xopSUBSlli     ,    xopSUBSllr     ,    xopSUBSlri     ,    xopSUBSlrr     ,    xopSUBSari     ,    xopSUBSarr     ,    xopSUBSrri     ,    xopSUBSrrr     ,    xopSUBSlli     ,    xopUNL         ,  // Unallocated [reindexed]    xopSUBSlri     ,    xopLDRHptim    ,    xopSUBSari     ,    xopLDRSBptim   ,    xopSUBSrri     ,    xopLDRSHptim   ,    /*0x06*/    xopRSBlli      ,    xopRSBllr      ,    xopRSBlri      ,    xopRSBlrr      ,    xopRSBari      ,    xopRSBarr      ,    xopRSBrri      ,    xopRSBrrr      ,    xopRSBlli      ,    xopUNP         ,  // Unallocated    xopRSBlri      ,    xopSTRHptim    ,    xopRSBari      ,    xopUND,     // Defined in ARM5    xopRSBrri      ,    xopUND,     // Defined in ARM5    /*0x07*/    xopRSBSlli     ,    xopRSBSllr     ,    xopRSBSlri     ,    xopRSBSlrr     ,    xopRSBSari     ,    xopRSBSarr     ,    xopRSBSrri     ,    xopRSBSrrr     ,    xopRSBSlli     ,    xopUNP         ,  // Unallocated    xopRSBSlri     ,    xopLDRHptim    ,    xopRSBSari     ,    xopLDRSBptim   ,    xopRSBSrri     ,    xopLDRSHptim   ,    /*0x08*/    xopADDlli      ,    xopADDllr      ,    xopADDlri      ,    xopADDlrr      ,    xopADDari      ,    xopADDarr      ,    xopADDrri      ,    xopADDrrr      ,    xopADDlli      ,    xopUMULL       ,    xopADDlri      ,    xopSTRHptrp    ,    xopADDari      ,    xopUND,     // Defined in ARM5    xopADDrri      ,    xopUND,     // Defined in ARM5    /*0x09*/    xopADDSlli     ,    xopADDSllr     ,    xopADDSlri     ,    xopADDSlrr     ,    xopADDSari     ,    xopADDSarr     ,    xopADDSrri     ,    xopADDSrrr     ,    xopADDSlli     ,    xopUMULLS      ,    xopADDSlri     ,    xopLDRHptrp    ,    xopADDSari     ,    xopLDRSBptrp   ,    xopADDSrri     ,    xopLDRSHptrp   ,    /*0x0A*/    xopADClli      ,    xopADCllr      ,    xopADClri      ,    xopADClrr      ,    xopADCari      ,    xopADCarr      ,    xopADCrri      ,    xopADCrrr      ,    xopADClli      ,    xopUMLAL       ,    xopADClri      ,    xopSTRHptrp    ,    xopADCari      ,    xopUND,     // Defined in ARM5    xopADCrri      ,    xopUND,     // Defined in ARM5    /*0x0B*/    xopADCSlli     ,    xopADCSllr     ,    xopADCSlri     ,    xopADCSlrr     ,    xopADCSari     ,    xopADCSarr     ,    xopADCSrri     ,    xopADCSrrr     ,    xopADCSlli     ,    xopUMLALS      ,    xopADCSlri     ,    xopLDRHptrp    ,    xopADCSari     ,    xopLDRSBptrp   ,    xopADCSrri     ,    xopLDRSHptrp   ,    /*0x0C*/    xopSBClli      ,    xopSBCllr      ,    xopSBClri      ,    xopSBClrr      ,    xopSBCari      ,    xopSBCarr      ,    xopSBCrri      ,    xopSBCrrr      ,    xopSBClli      ,    xopSMULL       ,    xopSBClri      ,    xopSTRHptip    ,    xopSBCari      ,    xopUND,     // Defined in ARM5    xopSBCrri      ,    xopUND,     // Defined in ARM5    /*0x0D*/    xopSBCSlli     ,    xopSBCSllr     ,    xopSBCSlri     ,    xopSBCSlrr     ,    xopSBCSari     ,    xopSBCSarr     ,    xopSBCSrri     ,    xopSBCSrrr     ,    xopSBCSlli     ,    xopSMULLS      ,    xopSBCSlri     ,    xopLDRHptip    ,    xopSBCSari     ,    xopLDRSBptip   ,    xopSBCSrri     ,    xopLDRSHptip   ,    /*0x0E*/    xopRSClli      ,    xopRSCllr      ,    xopRSClri      ,    xopRSClrr      ,    xopRSCari      ,    xopRSCarr      ,    xopRSCrri      ,    xopRSCrrr      ,    xopRSClli      ,    xopSMLAL       ,    xopRSClri      ,    xopSTRHptip    ,    xopRSCari      ,    xopUND,     // Defined in ARM5    xopRSCrri      ,    xopUND,     // Defined in ARM5    /*0x0F*/    xopRSCSlli     ,    xopRSCSllr     ,    xopRSCSlri     ,    xopRSCSlrr     ,    xopRSCSari     ,    xopRSCSarr     ,    xopRSCSrri     ,    xopRSCSrrr     ,    xopRSCSlli     ,    xopSMLALS      ,    xopRSCSlri     ,    xopLDRHptip    ,    xopRSCSari     ,    xopLDRSBptip   ,    xopRSCSrri     ,    xopLDRSHptip   ,    /*0x10*/    xopMRSrc       ,    xopUNP         ,  // Unallocated    xopUNP         ,  // Unallocated    xopUNP         ,  // Unallocated    xopUNP         ,  // Unallocated    xopUND         ,  // Defined in ARM5    xopUNP         ,  // Unallocated    xopUNP         ,  // Unallocated    xopUND         ,  // Defined in ARM5    xopSWP         ,    xopUND         ,  // Defined in ARM5    xopSTRHofrm    ,    xopUND         ,  // Defined in ARM5    xopUND         ,  // Defined in ARM5    xopUND         ,  // Defined in ARM5    xopUND         ,  // Defined in ARM5    /*0x11*/    xopTSTSlli     ,    xopTSTSllr     ,    xopTSTSlri     ,    xopTSTSlrr     ,    xopTSTSari     ,    xopTSTSarr     ,    xopTSTSrri     ,    xopTSTSrrr     ,    xopTSTSlli     ,    xopUNP         ,  // Unallocated    xopTSTSlri     ,    xopLDRHofrm    ,    xopTSTSari     ,    xopLDRSBofrm   ,    xopTSTSrri     ,    xopLDRSHofrm   ,    /*0x12*/    xopMSRrc       ,    xopBX          ,    xopUNP         ,  // Unallocated    xopUND         ,  // Defined in ARM5T    xopUNP         ,  // Unallocated    xopUNP         ,  // Defined in ARM5E!    xopUNP         ,  // Unallocated    xopUND        ,   // Defined in ARM5    xopUNP         ,  // Defined in ARM5E!    xopUNP         ,  // Unallocated    xopUNP         ,  // Defined in ARM5E!    xopSTRHprrm    ,    xopUNP         ,  // Defined in ARM5E!    xopUND,     // Defined in ARM5    xopUNP         ,  // Defined in ARM5E!    xopUND,     // Defined in ARM5    /*0x13*/    xopTEQSlli     ,    xopTEQSllr     ,    xopTEQSlri     ,    xopTEQSlrr     ,    xopTEQSari     ,    xopTEQSarr     ,    xopTEQSrri     ,    xopTEQSrrr     ,    xopTEQSlli     ,    xopUNP         ,  // Unallocated    xopTEQSlri     ,    xopLDRHprrm    ,    xopTEQSari     ,    xopLDRSBprrm   ,    xopTEQSrri     ,    xopLDRSHprrm   ,    /*0x14*/    xopMRSrs       ,    xopUNP         ,  // Unallocated    xopUNP         ,  // Unallocated    xopUNP         ,  // Unallocated    xopUNP         ,  // Unallocated    xopUNP         ,  // Defined in ARM5E!    xopUNP         ,  // Unallocated    xopUNP         ,  // Unallocated    xopUNP         ,  // Defined in ARM5E!    xopSWPB        ,    xopUNP         ,  // Defined in ARM5E!    xopSTRHofim    ,    xopUNP         ,  // Defined in ARM5E!    xopUND,     // Defined in ARM5    xopUNP         ,  // Defined in ARM5E!    xopUND,     // Defined in ARM5    /*0x15*/    xopCMPSlli     ,    xopCMPSllr     ,    xopCMPSlri     ,    xopCMPSlrr     ,    xopCMPSari     ,    xopCMPSarr     ,    xopCMPSrri     ,    xopCMPSrrr     ,    xopCMPSlli     ,    xopUNP         ,  // Unallocated    xopCMPSlri     ,    xopLDRHofim    ,    xopCMPSari     ,    xopLDRSBofim   ,    xopCMPSrri     ,    xopLDRSHofim   ,    /*0x16*/    xopMSRrs       ,    xopUND         ,  // Defined in ARM5    xopUNP         ,  // Unallocated    xopUNP         ,  // Unallocated    xopUNP         ,  // Unallocated    xopUNP         ,  // Defined in ARM5E!    xopUNP         ,  // Unallocated    xopUNP         ,  // Unallocated    xopUND,     // Defined in ARM5    xopUNP         ,  // Unallocated    xopUND,     // Defined in ARM5    xopSTRHprim    ,    xopUND,     // Defined in ARM5    xopUND,     // Defined in ARM5    xopUND,     // Defined in ARM5    xopUND,     // Defined in ARM5    /*0x17*/    xopCMNSlli     ,    xopCMNSllr     ,    xopCMNSlri     ,    xopCMNSlrr     ,    xopCMNSari     ,    xopCMNSarr     ,    xopCMNSrri     ,    xopCMNSrrr     ,    xopCMNSlli     ,    xopUNP         ,  // Unallocated    xopCMNSlri     ,    xopLDRHprim    ,    xopCMNSari     ,    xopLDRSBprim   ,    xopCMNSrri     ,    xopLDRSHprim   ,    /*0x18*/    xopORRlli      ,    xopORRllr      ,    xopORRlri      ,    xopORRlrr      ,    xopORRari      ,    xopORRarr      ,    xopORRrri      ,    xopORRrrr      ,    xopORRlli      ,    xopUNP         ,  // Unallocated    xopORRlri      ,    xopSTRHofrp    ,    xopORRari      ,    xopUND,     // Defined in ARM5    xopORRrri      ,    xopUND,     // Defined in ARM5    /*0x19*/    xopORRSlli     ,    xopORRSllr     ,    xopORRSlri     ,    xopORRSlrr     ,    xopORRSari     ,    xopORRSarr     ,    xopORRSrri     ,    xopORRSrrr     ,    xopORRSlli     ,    xopUNP         ,  // Unallocated    xopORRSlri     ,    xopLDRHofrp    ,    xopORRSari     ,    xopLDRSBofrp   ,    xopORRSrri     ,    xopLDRSHofrp   ,    /*0x1A*/    xopMOVlli      ,    xopMOVllr      ,    xopMOVlri      ,    xopMOVlrr      ,    xopMOVari      ,    xopMOVarr      ,    xopMOVrri      ,    xopMOVrrr      ,    xopMOVlli      ,    xopUNP         ,  // Unallocated    xopMOVlri      ,    xopSTRHprrp    ,    xopMOVari      ,    xopUND,     // Defined in ARM5    xopMOVrri      ,    xopUND,     // Defined in ARM5    /*0x1B*/    xopMOVSlli     ,    xopMOVSllr     ,    xopMOVSlri     ,    xopMOVSlrr     ,    xopMOVSari     ,    xopMOVSarr     ,    xopMOVSrri     ,    xopMOVSrrr     ,    xopMOVSlli     ,    xopUNP         ,  // Unallocated    xopMOVSlri     ,    xopLDRHprrp    ,    xopMOVSari     ,    xopLDRSBprrp   ,    xopMOVSrri     ,    xopLDRSHprrp   ,    /*0x1C*/    xopBIClli      ,    xopBICllr      ,    xopBIClri      ,    xopBIClrr      ,    xopBICari      ,    xopBICarr      ,    xopBICrri      ,    xopBICrrr      ,    xopBIClli      ,    xopUNP         ,  // Unallocated    xopBIClri      ,    xopSTRHofip    ,    xopBICari      ,    xopUND,     // Defined in ARM5    xopBICrri      ,    xopUND,     // Defined in ARM5    /*0x1D*/    xopBICSlli     ,    xopBICSllr     ,    xopBICSlri     ,    xopBICSlrr     ,    xopBICSari     ,    xopBICSarr     ,    xopBICSrri     ,    xopBICSrrr     ,    xopBICSlli     ,    xopUNP         ,  // Unallocated    xopBICSlri     ,    xopLDRHofip    ,    xopBICSari     ,    xopLDRSBofip   ,    xopBICSrri     ,    xopLDRSHofip   ,    /*0x1E*/    xopMVNlli      ,    xopMVNllr      ,    xopMVNlri      ,    xopMVNlrr      ,    xopMVNari      ,    xopMVNarr      ,    xopMVNrri      ,    xopMVNrrr      ,    xopMVNlli      ,    xopUNP         ,  // Unallocated    xopMVNlri      ,    xopSTRHprip    ,    xopMVNari      ,    xopUND,     // Defined in ARM5    xopMVNrri      ,    xopUND,     // Defined in ARM5    /*0x1F*/    xopMVNSlli     ,    xopMVNSllr     ,    xopMVNSlri     ,    xopMVNSlrr     ,    xopMVNSari     ,    xopMVNSarr     ,    xopMVNSrri     ,    xopMVNSrrr     ,    xopMVNSlli     ,    xopUNP         ,  // Unallocated    xopMVNSlri     ,    xopLDRHprip    ,    xopMVNSari     ,    xopLDRSBprip   ,    xopMVNSrri     ,    xopLDRSHprip   ,    /*0x20*/    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    xopANDimm      ,    /*0x21*/    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    xopANDSimm     ,    /*0x22*/    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    xopEORimm      ,    /*0x23*/    xopEORSimm     ,    xopEORSimm     ,    xopEORSimm     ,    xopEORSimm     ,    xopEORSimm     ,    xopEORSimm     ,    xopEORSimm     ,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -