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

📄 arm-dp-x86.cpp

📁 一个任天堂掌上游戏机NDS的源代码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
OPC xopRSBSrri() { addrDPrn; addrDPrri; opRSB; flagDPnz; flagDPcRSB; flagDPvRSB; cpsrDP; return 2; }OPC xopRSBSrrr() { addrDPrn; addrDPrrr; opRSB; flagDPnz; flagDPcRSB; flagDPvRSB; cpsrDP; return 2; }OPC xopRSBSimm() { addrDPrn; addrDPimm; opRSB; flagDPnz; flagDPcRSB; flagDPvRSB; cpsrDP; return 1; }OPC xopADDSlli() { addrDPrn; addrDPlli; opADD; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADDSllr() { addrDPrn; addrDPllr; opADD; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADDSlri() { addrDPrn; addrDPlri; opADD; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADDSlrr() { addrDPrn; addrDPlrr; opADD; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADDSari() { addrDPrn; addrDPari; opADD; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADDSarr() { addrDPrn; addrDParr; opADD; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADDSrri() { addrDPrn; addrDPrri; opADD; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADDSrrr() { addrDPrn; addrDPrrr; opADD; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADDSimm() { addrDPrn; addrDPimm; opADD; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 1; }OPC xopADCSlli() { addrDPrn; addrDPlli; opADC; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADCSllr() { addrDPrn; addrDPllr; opADC; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADCSlri() { addrDPrn; addrDPlri; opADC; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADCSlrr() { addrDPrn; addrDPlrr; opADC; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADCSari() { addrDPrn; addrDPari; opADC; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADCSarr() { addrDPrn; addrDParr; opADC; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADCSrri() { addrDPrn; addrDPrri; opADC; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADCSrrr() { addrDPrn; addrDPrrr; opADC; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 2; }OPC xopADCSimm() { addrDPrn; addrDPimm; opADC; flagDPnz; flagDPcADD; flagDPvADD; cpsrDP; return 1; }OPC xopSBCSlli() { addrDPrn; addrDPlli; opSBC; flagDPnz; flagDPcSUB; flagDPvSUB; cpsrDP; return 2; }OPC xopSBCSllr() { addrDPrn; addrDPllr; opSBC; flagDPnz; flagDPcSUB; flagDPvSUB; cpsrDP; return 2; }OPC xopSBCSlri() { addrDPrn; addrDPlri; opSBC; flagDPnz; flagDPcSUB; flagDPvSUB; cpsrDP; return 2; }OPC xopSBCSlrr() { addrDPrn; addrDPlrr; opSBC; flagDPnz; flagDPcSUB; flagDPvSUB; cpsrDP; return 2; }OPC xopSBCSari() { addrDPrn; addrDPari; opSBC; flagDPnz; flagDPcSUB; flagDPvSUB; cpsrDP; return 2; }OPC xopSBCSarr() { addrDPrn; addrDParr; opSBC; flagDPnz; flagDPcSUB; flagDPvSUB; cpsrDP; return 2; }OPC xopSBCSrri() { addrDPrn; addrDPrri; opSBC; flagDPnz; flagDPcSUB; flagDPvSUB; cpsrDP; return 2; }OPC xopSBCSrrr() { addrDPrn; addrDPrrr; opSBC; flagDPnz; flagDPcSUB; flagDPvSUB; cpsrDP; return 2; }OPC xopSBCSimm() { addrDPrn; addrDPimm; opSBC; flagDPnz; flagDPcSUB; flagDPvSUB; cpsrDP; return 1; }OPC xopRSCSlli() { addrDPrn; addrDPlli; opRSC; flagDPnz; flagDPcRSB; flagDPvRSB; cpsrDP; return 2; }OPC xopRSCSllr() { addrDPrn; addrDPllr; opRSC; flagDPnz; flagDPcRSB; flagDPvRSB; cpsrDP; return 2; }OPC xopRSCSlri() { addrDPrn; addrDPlri; opRSC; flagDPnz; flagDPcRSB; flagDPvRSB; cpsrDP; return 2; }OPC xopRSCSlrr() { addrDPrn; addrDPlrr; opRSC; flagDPnz; flagDPcRSB; flagDPvRSB; cpsrDP; return 2; }OPC xopRSCSari() { addrDPrn; addrDPari; opRSC; flagDPnz; flagDPcRSB; flagDPvRSB; cpsrDP; return 2; }OPC xopRSCSarr() { addrDPrn; addrDParr; opRSC; flagDPnz; flagDPcRSB; flagDPvRSB; cpsrDP; return 2; }OPC xopRSCSrri() { addrDPrn; addrDPrri; opRSC; flagDPnz; flagDPcRSB; flagDPvRSB; cpsrDP; return 2; }OPC xopRSCSrrr() { addrDPrn; addrDPrrr; opRSC; flagDPnz; flagDPcRSB; flagDPvRSB; cpsrDP; return 2; }OPC xopRSCSimm() { addrDPrn; addrDPimm; opRSC; flagDPnz; flagDPcRSB; flagDPvRSB; cpsrDP; return 1; }OPC xopTSTSlli() { addrDPrn; addrDPlli; opTST; flagDPnzTST; cpsrDP; return 2; }OPC xopTSTSllr() { addrDPrn; addrDPllr; opTST; flagDPnzTST; cpsrDP; return 2; }OPC xopTSTSlri() { addrDPrn; addrDPlri; opTST; flagDPnzTST; cpsrDP; return 2; }OPC xopTSTSlrr() { addrDPrn; addrDPlrr; opTST; flagDPnzTST; cpsrDP; return 2; }OPC xopTSTSari() { addrDPrn; addrDPari; opTST; flagDPnzTST; cpsrDP; return 2; }OPC xopTSTSarr() { addrDPrn; addrDParr; opTST; flagDPnzTST; cpsrDP; return 2; }OPC xopTSTSrri() { addrDPrn; addrDPrri; opTST; flagDPnzTST; cpsrDP; return 2; }OPC xopTSTSrrr() { addrDPrn; addrDPrrr; opTST; flagDPnzTST; cpsrDP; return 2; }OPC xopTSTSimm() { addrDPrn; addrDPimm; opTST; flagDPnzTST; cpsrDP; return 1; }OPC xopTEQSlli() { addrDPrn; addrDPlli; opTEQ; flagDPnzTST; cpsrDP; return 2; }OPC xopTEQSllr() { addrDPrn; addrDPllr; opTEQ; flagDPnzTST; cpsrDP; return 2; }OPC xopTEQSlri() { addrDPrn; addrDPlri; opTEQ; flagDPnzTST; cpsrDP; return 2; }OPC xopTEQSlrr() { addrDPrn; addrDPlrr; opTEQ; flagDPnzTST; cpsrDP; return 2; }OPC xopTEQSari() { addrDPrn; addrDPari; opTEQ; flagDPnzTST; cpsrDP; return 2; }OPC xopTEQSarr() { addrDPrn; addrDParr; opTEQ; flagDPnzTST; cpsrDP; return 2; }OPC xopTEQSrri() { addrDPrn; addrDPrri; opTEQ; flagDPnzTST; cpsrDP; return 2; }OPC xopTEQSrrr() { addrDPrn; addrDPrrr; opTEQ; flagDPnzTST; cpsrDP; return 2; }OPC xopTEQSimm() { addrDPrn; addrDPimm; opTEQ; flagDPnzTST; cpsrDP; return 1; }OPC xopCMPSlli() { addrDPrn; addrDPlli; opCMP; flagDPnzTST; flagDPcCMP; flagDPvCMP; cpsrDP; return 2; }OPC xopCMPSllr() { addrDPrn; addrDPllr; opCMP; flagDPnzTST; flagDPcCMP; flagDPvCMP; cpsrDP; return 2; }OPC xopCMPSlri() { addrDPrn; addrDPlri; opCMP; flagDPnzTST; flagDPcCMP; flagDPvCMP; cpsrDP; return 2; }OPC xopCMPSlrr() { addrDPrn; addrDPlrr; opCMP; flagDPnzTST; flagDPcCMP; flagDPvCMP; cpsrDP; return 2; }OPC xopCMPSari() { addrDPrn; addrDPari; opCMP; flagDPnzTST; flagDPcCMP; flagDPvCMP; cpsrDP; return 2; }OPC xopCMPSarr() { addrDPrn; addrDParr; opCMP; flagDPnzTST; flagDPcCMP; flagDPvCMP; cpsrDP; return 2; }OPC xopCMPSrri() { addrDPrn; addrDPrri; opCMP; flagDPnzTST; flagDPcCMP; flagDPvCMP; cpsrDP; return 2; }OPC xopCMPSrrr() { addrDPrn; addrDPrrr; opCMP; flagDPnzTST; flagDPcCMP; flagDPvCMP; cpsrDP; return 2; }OPC xopCMPSimm() { addrDPrn; addrDPimm; opCMP; flagDPnzTST; flagDPcCMP; flagDPvCMP; cpsrDP; return 1; }OPC xopCMNSlli() { addrDPrn; addrDPlli; opCMN; flagDPnzTST; flagDPcCMN; flagDPvCMN; cpsrDP; return 2; }OPC xopCMNSllr() { addrDPrn; addrDPllr; opCMN; flagDPnzTST; flagDPcCMN; flagDPvCMN; cpsrDP; return 2; }OPC xopCMNSlri() { addrDPrn; addrDPlri; opCMN; flagDPnzTST; flagDPcCMN; flagDPvCMN; cpsrDP; return 2; }OPC xopCMNSlrr() { addrDPrn; addrDPlrr; opCMN; flagDPnzTST; flagDPcCMN; flagDPvCMN; cpsrDP; return 2; }OPC xopCMNSari() { addrDPrn; addrDPari; opCMN; flagDPnzTST; flagDPcCMN; flagDPvCMN; cpsrDP; return 2; }OPC xopCMNSarr() { addrDPrn; addrDParr; opCMN; flagDPnzTST; flagDPcCMN; flagDPvCMN; cpsrDP; return 2; }OPC xopCMNSrri() { addrDPrn; addrDPrri; opCMN; flagDPnzTST; flagDPcCMN; flagDPvCMN; cpsrDP; return 2; }OPC xopCMNSrrr() { addrDPrn; addrDPrrr; opCMN; flagDPnzTST; flagDPcCMN; flagDPvCMN; cpsrDP; return 2; }OPC xopCMNSimm() { addrDPrn; addrDPimm; opCMN; flagDPnzTST; flagDPcCMN; flagDPvCMN; cpsrDP; return 1; }OPC xopORRSlli() { addrDPrn; addrDPlli; opORR; flagDPnz; cpsrDP; return 2; }OPC xopORRSllr() { addrDPrn; addrDPllr; opORR; flagDPnz; cpsrDP; return 2; }OPC xopORRSlri() { addrDPrn; addrDPlri; opORR; flagDPnz; cpsrDP; return 2; }OPC xopORRSlrr() { addrDPrn; addrDPlrr; opORR; flagDPnz; cpsrDP; return 2; }OPC xopORRSari() { addrDPrn; addrDPari; opORR; flagDPnz; cpsrDP; return 2; }OPC xopORRSarr() { addrDPrn; addrDParr; opORR; flagDPnz; cpsrDP; return 2; }OPC xopORRSrri() { addrDPrn; addrDPrri; opORR; flagDPnz; cpsrDP; return 2; }OPC xopORRSrrr() { addrDPrn; addrDPrrr; opORR; flagDPnz; cpsrDP; return 2; }OPC xopORRSimm() { addrDPrn; addrDPimm; opORR; flagDPnz; cpsrDP; return 1; }OPC xopMOVSlli() { addrDPrn; addrDPlli; opMOV; flagDPnz; cpsrDP; return 2; }OPC xopMOVSllr() { addrDPrn; addrDPllr; opMOV; flagDPnz; cpsrDP; return 2; }OPC xopMOVSlri() { addrDPrn; addrDPlri; opMOV; flagDPnz; cpsrDP; return 2; }OPC xopMOVSlrr() { addrDPrn; addrDPlrr; opMOV; flagDPnz; cpsrDP; return 2; }OPC xopMOVSari() { addrDPrn; addrDPari; opMOV; flagDPnz; cpsrDP; return 2; }OPC xopMOVSarr() { addrDPrn; addrDParr; opMOV; flagDPnz; cpsrDP; return 2; }OPC xopMOVSrri() { addrDPrn; addrDPrri; opMOV; flagDPnz; cpsrDP; return 2; }OPC xopMOVSrrr() { addrDPrn; addrDPrrr; opMOV; flagDPnz; cpsrDP; return 2; }OPC xopMOVSimm() { addrDPrn; addrDPimm; opMOV; flagDPnz; cpsrDP; return 1; }OPC xopBICSlli() { addrDPrn; addrDPlli; opBIC; flagDPnz; cpsrDP; return 2; }OPC xopBICSllr() { addrDPrn; addrDPllr; opBIC; flagDPnz; cpsrDP; return 2; }OPC xopBICSlri() { addrDPrn; addrDPlri; opBIC; flagDPnz; cpsrDP; return 2; }OPC xopBICSlrr() { addrDPrn; addrDPlrr; opBIC; flagDPnz; cpsrDP; return 2; }OPC xopBICSari() { addrDPrn; addrDPari; opBIC; flagDPnz; cpsrDP; return 2; }OPC xopBICSarr() { addrDPrn; addrDParr; opBIC; flagDPnz; cpsrDP; return 2; }OPC xopBICSrri() { addrDPrn; addrDPrri; opBIC; flagDPnz; cpsrDP; return 2; }OPC xopBICSrrr() { addrDPrn; addrDPrrr; opBIC; flagDPnz; cpsrDP; return 2; }OPC xopBICSimm() { addrDPrn; addrDPimm; opBIC; flagDPnz; cpsrDP; return 1; }OPC xopMVNSlli() { addrDPrn; addrDPlli; opMVN; flagDPnz; cpsrDP; return 2; }OPC xopMVNSllr() { addrDPrn; addrDPllr; opMVN; flagDPnz; cpsrDP; return 2; }OPC xopMVNSlri() { addrDPrn; addrDPlri; opMVN; flagDPnz; cpsrDP; return 2; }OPC xopMVNSlrr() { addrDPrn; addrDPlrr; opMVN; flagDPnz; cpsrDP; return 2; }OPC xopMVNSari() { addrDPrn; addrDPari; opMVN; flagDPnz; cpsrDP; return 2; }OPC xopMVNSarr() { addrDPrn; addrDParr; opMVN; flagDPnz; cpsrDP; return 2; }OPC xopMVNSrri() { addrDPrn; addrDPrri; opMVN; flagDPnz; cpsrDP; return 2; }OPC xopMVNSrrr() { addrDPrn; addrDPrrr; opMVN; flagDPnz; cpsrDP; return 2; }OPC xopMVNSimm() { addrDPrn; addrDPimm; opMVN; flagDPnz; cpsrDP; return 1; }// Also in this file are various opcodes dealing with data, which aren't// strictly within the manual's DP remit, but are common among the cores.//---Multiply--------------------------------------------------------------// ACK: Mark Andrews, "Atari Roots" [1984] (Long mul algorithm extended)// ACK: Commodore Hacking, issue 8 (Signed long mul negation policy)// NOTE: The Rd and Rs fields are swapped in the instruction definition;//       the destination register for multiplies is Rs!OPC xopMUL(){    return 1;}OPC xopMLA(){    return 1;}OPC xopMULS(){    return 1;}OPC xopMLAS(){    return 1;}OPC xopUMULL(){    return 1;}OPC xopUMLAL(){    return 1;}OPC xopSMULL(){    return 1; }OPC xopSMLAL(){    return 1;}OPC xopUMULLS(){    return 1;}OPC xopUMLALS(){    return 1;}OPC xopSMULLS(){    return 1;}OPC xopSMLALS(){    return 1; }//---Move between register and cpsr----------------------------------------OPC xopMRSrc(){    return 1;}OPC xopMRSrs(){    return 1;}OPC xopMSRrc(){    return 1;}OPC xopMSRrs(){    return 1;}OPC xopMSRic(){    return 1;}OPC xopMSRis(){    return 1;}//---Swap between registers and memory-------------------------------------OPC xopSWP(){    return 1;}OPC xopSWPB(){    return 1;}#endif/*** EOF: arm-dp.cpp *****************************************************/

⌨️ 快捷键说明

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