亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? arm9es.h

?? 一個任天堂掌上游戲機NDS的源代碼
?? H
?? 第 1 頁 / 共 2 頁
字號:
/**************************************************************************
* DSemu - The Next Generation                                             *
* Portable ARM9ES core: Class definition [arm9es.h]                       *
* Copyright Imran Nazar, 2005; released under the BSD public licence.     *
**************************************************************************/

#ifndef __ARM9ES_H_
#define __ARM9ES_H_

#include <utility>
#include <map>
#include <stdio.h>
#include "defs.h"
#include "plgcpu.h"
#include "plgmmu32.h"
#include "plggui.h"
#include "datadefs.h"
#include "armdasm.h"
#include "armcopro.h"

// An implementation of the CPU plugin interface.
class ARM9ES : public CPUPlugin
{
    public:
        ARM9ES(std::string name,REQPTR req, UNREQPTR unreq);
        ~ARM9ES();

        PLUGININFO *getinfo();
        void reset();
        void release();
        void status(int,int);

        int exec(int);
	void clockAdd(int);
	void interrupt(int);
	
	void dbgBkptToggle(u32);
	std::map<u32, int> dbgBkptGet();

	void setPC(u32);

    private:

        //---Plugin-generic stuff
        std::string pName, pClass;
        REQPTR pRequest;
        UNREQPTR pUnrequest;
	static PLUGININFO pInfo;
        
        static std::string pluginName;

	//---Start of the stuff we'll be needing
        static MMU32Plugin *MMU;
	static GUIPlugin *GUI;
	
	static u32 *dbgbuffer;
	static int dbgwinID;
        static ARMDasm dasm;
	static u32 rdWhelper(u32);

        static FILE *dumpfile;
	
        //---Register set
        typedef struct {
            u32 r[16], cpsr, spsr[7], flags[8];
            u32 curop, curmode;
            uint64_t clkcount;

            u32 r0,r1,r2,r3,r4,r5,r6,r7,r8,r9,r10,r11,r12,r13,r14,r15;
            u32 r8fiq, r9fiq, r10fiq, r11fiq, r12fiq, r13fiq, r14fiq;
            u32 r13svc, r14svc, r13abt, r14abt, r13irq, r14irq, r13und, r14und;

            u32 tmp1, tmp2, tmp3, tmp4, tmpc;
	    uint64_t tmp64_1, tmp64_2;
        } REGS;

        static REGS reg;

        static std::map<u32, int> bkpts;

	//---Internal flag to/from CPSR helpers
        static void cpsrSplit(), cpsrUpdate();
	
        //---Coprocessors
	static ARMCopro *copro[16];
	
        //---Opcode tables
        typedef int OPCODE;
        typedef OPCODE (*opfptr)();
	typedef int (*intfptr)();

        static const opfptr OLUT[4096];
	static const opfptr TLUT[256];
	static const intfptr condLUT[16];

	//---Mode-switching
	static const char *modeStrings[7];
	static const int modeToCpsrLUT[7];
	static const int modeFromCpsrLUT[16];
	static void modeSwitch(int, int);

        //---Conditional execution helpers
	static int condEQ(), condNE(), condCS(), condCC();
	static int condMI(), condPL(), condVS(), condVC();
	static int condHI(), condLS(), condGE(), condLT();
	static int condGT(), condLE(), condAL(), condNV();
	
        //---Instructions

	// Helper functions
	static u32 nlpo2(u32);
	static int ssum16(u16);
        
	static OPCODE opUNP();   // Unpredictable op
        static OPCODE opUND();   // Undefined op
        static OPCODE opUNI();   // Unimplemented op
	static OPCODE opUNL();   // Unlinked (opcode cache filler)
	
        //---Branch (with Link)----------------------------------------------------

        static OPCODE opB(), opBL();
        static OPCODE opBX();
	
        static OPCODE opBLX(), opBLXr();

        //---DP (DataProcessing); LsL/LsR/AsR/RoR; Immediate/Register--------------

        static OPCODE opANDlli(), opANDllr();
        static OPCODE opANDlri(), opANDlrr();
        static OPCODE opANDari(), opANDarr();
        static OPCODE opANDrri(), opANDrrr();
        static OPCODE opANDimm();

        static OPCODE opEORlli(), opEORllr();
        static OPCODE opEORlri(), opEORlrr();
        static OPCODE opEORari(), opEORarr();
        static OPCODE opEORrri(), opEORrrr();
        static OPCODE opEORimm();

        static OPCODE opSUBlli(), opSUBllr();
        static OPCODE opSUBlri(), opSUBlrr();
        static OPCODE opSUBari(), opSUBarr();
        static OPCODE opSUBrri(), opSUBrrr();
        static OPCODE opSUBimm();

        static OPCODE opRSBlli(), opRSBllr();
        static OPCODE opRSBlri(), opRSBlrr();
        static OPCODE opRSBari(), opRSBarr();
        static OPCODE opRSBrri(), opRSBrrr();
        static OPCODE opRSBimm();

        static OPCODE opADDlli(), opADDllr();
        static OPCODE opADDlri(), opADDlrr();
        static OPCODE opADDari(), opADDarr();
        static OPCODE opADDrri(), opADDrrr();
        static OPCODE opADDimm();

        static OPCODE opADClli(), opADCllr();
        static OPCODE opADClri(), opADClrr();
        static OPCODE opADCari(), opADCarr();
        static OPCODE opADCrri(), opADCrrr();
        static OPCODE opADCimm();

        static OPCODE opSBClli(), opSBCllr();
        static OPCODE opSBClri(), opSBClrr();
        static OPCODE opSBCari(), opSBCarr();
        static OPCODE opSBCrri(), opSBCrrr();
        static OPCODE opSBCimm();

        static OPCODE opRSClli(), opRSCllr();
        static OPCODE opRSClri(), opRSClrr();
        static OPCODE opRSCari(), opRSCarr();
        static OPCODE opRSCrri(), opRSCrrr();
        static OPCODE opRSCimm();

        static OPCODE opORRlli(), opORRllr();
        static OPCODE opORRlri(), opORRlrr();
        static OPCODE opORRari(), opORRarr();
        static OPCODE opORRrri(), opORRrrr();
        static OPCODE opORRimm();

        static OPCODE opMOVlli(), opMOVllr();
        static OPCODE opMOVlri(), opMOVlrr();
        static OPCODE opMOVari(), opMOVarr();
        static OPCODE opMOVrri(), opMOVrrr();
        static OPCODE opMOVimm();

        static OPCODE opBIClli(), opBICllr();
        static OPCODE opBIClri(), opBIClrr();
        static OPCODE opBICari(), opBICarr();
        static OPCODE opBICrri(), opBICrrr();
        static OPCODE opBICimm();

        static OPCODE opMVNlli(), opMVNllr();
        static OPCODE opMVNlri(), opMVNlrr();
        static OPCODE opMVNari(), opMVNarr();
        static OPCODE opMVNrri(), opMVNrrr();
        static OPCODE opMVNimm();

        static OPCODE opANDSlli(), opANDSllr();
        static OPCODE opANDSlri(), opANDSlrr();
        static OPCODE opANDSari(), opANDSarr();
        static OPCODE opANDSrri(), opANDSrrr();
        static OPCODE opANDSimm();

        static OPCODE opEORSlli(), opEORSllr();
        static OPCODE opEORSlri(), opEORSlrr();
        static OPCODE opEORSari(), opEORSarr();
        static OPCODE opEORSrri(), opEORSrrr();
        static OPCODE opEORSimm();

        static OPCODE opSUBSlli(), opSUBSllr();
        static OPCODE opSUBSlri(), opSUBSlrr();
        static OPCODE opSUBSari(), opSUBSarr();
        static OPCODE opSUBSrri(), opSUBSrrr();
        static OPCODE opSUBSimm();

        static OPCODE opRSBSlli(), opRSBSllr();
        static OPCODE opRSBSlri(), opRSBSlrr();
        static OPCODE opRSBSari(), opRSBSarr();
        static OPCODE opRSBSrri(), opRSBSrrr();
        static OPCODE opRSBSimm();

        static OPCODE opADDSlli(), opADDSllr();
        static OPCODE opADDSlri(), opADDSlrr();
        static OPCODE opADDSari(), opADDSarr();
        static OPCODE opADDSrri(), opADDSrrr();
        static OPCODE opADDSimm();

        static OPCODE opADCSlli(), opADCSllr();
        static OPCODE opADCSlri(), opADCSlrr();
        static OPCODE opADCSari(), opADCSarr();
        static OPCODE opADCSrri(), opADCSrrr();
        static OPCODE opADCSimm();

        static OPCODE opSBCSlli(), opSBCSllr();
        static OPCODE opSBCSlri(), opSBCSlrr();
        static OPCODE opSBCSari(), opSBCSarr();
        static OPCODE opSBCSrri(), opSBCSrrr();
        static OPCODE opSBCSimm();

        static OPCODE opRSCSlli(), opRSCSllr();
        static OPCODE opRSCSlri(), opRSCSlrr();
        static OPCODE opRSCSari(), opRSCSarr();
        static OPCODE opRSCSrri(), opRSCSrrr();
        static OPCODE opRSCSimm();

        static OPCODE opTSTSlli(), opTSTSllr();
        static OPCODE opTSTSlri(), opTSTSlrr();
        static OPCODE opTSTSari(), opTSTSarr();
        static OPCODE opTSTSrri(), opTSTSrrr();
        static OPCODE opTSTSimm();

        static OPCODE opTEQSlli(), opTEQSllr();
        static OPCODE opTEQSlri(), opTEQSlrr();
        static OPCODE opTEQSari(), opTEQSarr();
        static OPCODE opTEQSrri(), opTEQSrrr();
        static OPCODE opTEQSimm();

        static OPCODE opCMPSlli(), opCMPSllr();
        static OPCODE opCMPSlri(), opCMPSlrr();
        static OPCODE opCMPSari(), opCMPSarr();
        static OPCODE opCMPSrri(), opCMPSrrr();
        static OPCODE opCMPSimm();

        static OPCODE opCMNSlli(), opCMNSllr();
        static OPCODE opCMNSlri(), opCMNSlrr();
        static OPCODE opCMNSari(), opCMNSarr();
        static OPCODE opCMNSrri(), opCMNSrrr();
        static OPCODE opCMNSimm();

        static OPCODE opORRSlli(), opORRSllr();
        static OPCODE opORRSlri(), opORRSlrr();
        static OPCODE opORRSari(), opORRSarr();
        static OPCODE opORRSrri(), opORRSrrr();
        static OPCODE opORRSimm();

        static OPCODE opMOVSlli(), opMOVSllr();
        static OPCODE opMOVSlri(), opMOVSlrr();
        static OPCODE opMOVSari(), opMOVSarr();
        static OPCODE opMOVSrri(), opMOVSrrr();
        static OPCODE opMOVSimm();

        static OPCODE opBICSlli(), opBICSllr();
        static OPCODE opBICSlri(), opBICSlrr();
        static OPCODE opBICSari(), opBICSarr();
        static OPCODE opBICSrri(), opBICSrrr();
        static OPCODE opBICSimm();

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品亚洲第一区在线暖暖韩国| 国产日韩精品视频一区| 不卡av免费在线观看| 美国毛片一区二区| 日韩电影免费一区| 日韩精品成人一区二区在线| 天天操天天干天天综合网| 亚洲影视资源网| 亚洲在线成人精品| 亚洲18色成人| 全国精品久久少妇| 精品一区二区国语对白| 国产一区二区三区电影在线观看 | 欧美午夜宅男影院| 在线视频国内一区二区| 91黄色免费看| 欧美一级欧美三级在线观看| 欧美日本精品一区二区三区| 欧美色大人视频| 欧美日韩综合色| 精品少妇一区二区三区视频免付费| 欧美日韩电影在线| 精品精品国产高清a毛片牛牛| 69p69国产精品| 2021国产精品久久精品| 中文字幕一区二区三区色视频| 国产精品福利av| 午夜精品福利在线| 国内一区二区视频| 91亚洲精品乱码久久久久久蜜桃| 欧美三级欧美一级| 久久亚洲捆绑美女| 一区二区三区产品免费精品久久75| 婷婷亚洲久悠悠色悠在线播放| 国内偷窥港台综合视频在线播放| 91一区二区在线| 日韩一区二区在线看| 国产精品国产三级国产aⅴ中文 | 精品中文字幕一区二区小辣椒| 成人av电影免费在线播放| 欧美日本视频在线| 国产精品美女一区二区三区| 亚洲国产综合91精品麻豆| 国产老妇另类xxxxx| 欧洲在线/亚洲| 欧美经典三级视频一区二区三区| 亚洲三级免费观看| 国产精品自拍在线| 666欧美在线视频| 国产精品麻豆视频| 琪琪久久久久日韩精品| 色综合久久88色综合天天免费| 日韩精品一区二区三区在线播放 | 91精品国产一区二区三区香蕉| 国产精品电影一区二区| 精品一区二区三区视频| 欧美日韩美少妇| 国产精品伦理一区二区| 麻豆免费精品视频| 欧美日韩精品系列| 亚洲视频一区二区在线观看| 国产成人午夜视频| 日韩精品自拍偷拍| 天堂va蜜桃一区二区三区漫画版| 一本大道久久a久久综合| 久久久www免费人成精品| 日日夜夜一区二区| 欧美日韩激情在线| 亚洲一区二区欧美| 欧美在线看片a免费观看| 亚洲日韩欧美一区二区在线| 国产成人av影院| 精品对白一区国产伦| 麻豆国产精品一区二区三区| 欧美精品1区2区3区| 国产精品动漫网站| 成人av在线资源网站| 久久久久久久久久电影| 狠狠色伊人亚洲综合成人| 欧美一区二区三区在线观看| 秋霞影院一区二区| 精品欧美黑人一区二区三区| 精品一区二区三区久久久| 久久久99精品久久| 国产成人精品免费在线| 日本一区二区久久| 国产凹凸在线观看一区二区| 国产精品久久毛片a| 色综合久久中文字幕| 亚洲色图在线视频| 欧美色涩在线第一页| 天天色综合成人网| 日韩视频一区二区三区在线播放| 免费欧美在线视频| 国产视频一区在线播放| 成人不卡免费av| 一区二区三区中文字幕电影 | 成人激情校园春色| 中文字幕欧美一| 欧美性猛交xxxx乱大交退制版| 香蕉久久一区二区不卡无毒影院 | va亚洲va日韩不卡在线观看| 亚洲精品一区二区在线观看| 成人免费av在线| 亚洲乱码一区二区三区在线观看| 欧美日韩国产一级片| 国产在线播放一区| 亚洲天天做日日做天天谢日日欢| 91.成人天堂一区| 国产在线精品一区二区三区不卡 | 综合中文字幕亚洲| 337p亚洲精品色噜噜狠狠| 国产真实乱对白精彩久久| 欧美电影免费提供在线观看| 波多野结衣在线一区| 石原莉奈在线亚洲三区| 国产精品剧情在线亚洲| 51精品视频一区二区三区| 国产成人免费视| 亚洲一区二区三区四区的| 久久美女高清视频| 欧美乱妇一区二区三区不卡视频 | 亚洲一区二区免费视频| 久久老女人爱爱| 欧美午夜电影网| 粉嫩av一区二区三区| 老司机精品视频导航| 一区二区三区日韩| 久久婷婷国产综合国色天香| 欧美人妇做爰xxxⅹ性高电影| caoporm超碰国产精品| 麻豆精品久久久| 亚洲精品成人在线| 国产日韩成人精品| 欧美sm极限捆绑bd| 欧美精品在线一区二区| 欧洲av一区二区嗯嗯嗯啊| 国产福利视频一区二区三区| 日韩一区欧美二区| 亚洲黄色小说网站| 亚洲国产高清在线| 久久综合九色欧美综合狠狠| 91麻豆精品91久久久久同性| 91黄色免费看| 久久成人久久鬼色| 免费av成人在线| 婷婷久久综合九色综合绿巨人| 中文字幕免费观看一区| 欧美一区二区三区日韩| 欧美日韩中字一区| 欧美日韩五月天| 欧美午夜影院一区| 在线免费观看日本一区| 欧美专区亚洲专区| 在线免费视频一区二区| 欧美日韩国产美女| 欧美在线播放高清精品| 成人免费电影视频| 99在线精品免费| av在线不卡电影| 91色视频在线| 色欧美片视频在线观看| aaa亚洲精品| 97久久久精品综合88久久| 成人免费黄色大片| 不卡大黄网站免费看| 91丨porny丨户外露出| 色综合久久中文综合久久牛| 色综合天天综合网天天看片| 日本高清无吗v一区| 欧美浪妇xxxx高跟鞋交| 欧美变态凌虐bdsm| 2021中文字幕一区亚洲| 国产日韩v精品一区二区| 最新日韩av在线| 亚洲成年人影院| 国产在线视频精品一区| 福利一区二区在线| 欧美亚洲国产一卡| 欧美一区二区成人| 国产日产欧美一区二区三区| 欧美激情一二三区| 亚洲国产成人91porn| 日产欧产美韩系列久久99| 欧美三级日韩三级国产三级| 9191国产精品| 久久久久久久综合日本| 日韩成人伦理电影在线观看| 日韩高清一级片| 亚洲国产婷婷综合在线精品| 亚洲成人777| 色综合久久综合网97色综合| 欧美色成人综合| 欧美日本国产一区| 97aⅴ精品视频一二三区| 成人综合日日夜夜| 亚洲高清久久久| 欧美aa在线视频| 日韩精品免费视频人成| 捆绑调教一区二区三区|