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

📄 makez80.c

📁 十七种模拟器源代码 非常有用的作课程设计不可缺少的
💻 C
📖 第 1 页 / 共 5 页
字号:
{	UINT32 bOpCode;	void (*Emitter)(UINT32);};struct sOp StandardOps[] ={	{0xd3,  InOutHandler},		// V	{0xdb,  InOutHandler},		// V	{0x0a, LdByteRegpair},		// V	{0x1a, LdByteRegpair},		// V	{0x17,  RraRlaHandler},		// V	{0x1f,  RraRlaHandler},		// V	{0x05,  DecRegister},		// V	{0x0d,  DecRegister},		// V	{0x15,  DecRegister},		// V	{0x1d,  DecRegister},		// V	{0x25,  DecRegister},		// V	{0x2d,  DecRegister},		// V	{0x3d,  DecRegister},		// V	{0x04,  IncRegister},		// V	{0x0c,  IncRegister},		// V	{0x14,  IncRegister},		// V	{0x1c,  IncRegister},		// V	{0x24,  IncRegister},		// V	{0x2c,  IncRegister},		// V	{0x3c,  IncRegister},		// V	{0x32,	RegIntoMemory},	// V	{0x22,	RegIntoMemory},	// V	{0xc3,	JpHandler},			// V	{0xc2, JpHandler},			// V	{0xca, JpHandler},			// V	{0xd2, JpHandler},			// V	{0xda, JpHandler},			// V	{0xe2, JpHandler},			// V	{0xea, JpHandler},			// V	{0xf2, JpHandler},			// V	{0xfa, JpHandler},			// V	{0x06, LdRegImmediate},		// V	{0x0e, LdRegImmediate},		// V	{0x16, LdRegImmediate},		// V	{0x1e, LdRegImmediate},		// V	{0x26, LdRegImmediate},		// V	{0x2e, LdRegImmediate},		// V	{0x3e, LdRegImmediate},		// V	{0x0b,  IncDecRegpair},		// V	{0x1b,  IncDecRegpair},		// V	{0x2b,  IncDecRegpair},		// V	{0x3b,  IncDecRegpair},		// V	{0x03,  IncDecRegpair},		// V	{0x13,  IncDecRegpair},		// V	{0x23,  IncDecRegpair},		// V	{0x33,  IncDecRegpair},		// V	{0x34,	IncDecHLPtr},		// V	{0x35,	IncDecHLPtr},		// V	{0xcb,	CBHandler},	{0xdd,	DDHandler},	{0xed,	EDHandler},	{0xfd,	FDHandler},	{0x01,	LdRegPairImmediate},	// V	{0x11,	LdRegPairImmediate},	// V	{0x21,	LdRegPairImmediate},	// V	{0x31,	LdRegPairImmediate},	// V	{0xe3,	MiscHandler},	// V	{0x2a,	MiscHandler},	// V	{0xfb,	MiscHandler},	// V	{0xf9,	MiscHandler},	// V	{0xd9,	MiscHandler},	// V	{0x76,	MiscHandler},	// V	{0x3f,	MiscHandler},	// V	{0x37,	MiscHandler},	// V	{0x27,	MiscHandler},	// V	{0x07,	MiscHandler},	// V	{0x08,	MiscHandler},	// V	{0x00,	MiscHandler},	// V	{0xe9,	MiscHandler},	// V	{0xeb,	MiscHandler},	// V	{0xf3,	MiscHandler},	// V	{0x3a,	MiscHandler},	// V	{0x10,	MiscHandler},	// V	{0x2f,	MiscHandler},	// V	{0x0f,	MiscHandler},	// V	{0x02, LdRegpairPtrByte},	// V	{0x12, LdRegpairPtrByte},	// V	{0x70, LdRegpairPtrByte},	// V	{0x71, LdRegpairPtrByte},	// V	{0x72, LdRegpairPtrByte},	// V	{0x73, LdRegpairPtrByte},	// V	{0x74, LdRegpairPtrByte},	// V	{0x75, LdRegpairPtrByte},	// V	{0x77, LdRegpairPtrByte},	// V	{0x36, LdRegpairPtrByte},	// V	{0x80,  MathOperation},	// V	{0x81,  MathOperation},	// V	{0x82,  MathOperation},	// V	{0x83,  MathOperation},	// V	{0x84,  MathOperation},	// V	{0x85,  MathOperation},	// V	{0x86,  MathOperation},	// V	{0x87,  MathOperation},	// V	{0x88,  MathOperation},	// V	{0x89,  MathOperation},	// V	{0x8a,  MathOperation},	// V	{0x8b,  MathOperation},	// V	{0x8c,  MathOperation},	// V	{0x8d,  MathOperation},	// V	{0x8e,  MathOperation},	// V	{0x8f,  MathOperation},	// V	{0x90,  MathOperation},	// V	{0x91,  MathOperation},	// V	{0x92,  MathOperation},	// V	{0x93,  MathOperation},	// V	{0x94,  MathOperation},	// V	{0x95,  MathOperation},	// V	{0x96,  MathOperation},	// V	{0x97,  MathOperation},	// V	{0x98,  MathOperation},	// V	{0x99,  MathOperation},	// V	{0x9a,  MathOperation},	// V	{0x9b,  MathOperation},	// V	{0x9c,  MathOperation},	// V	{0x9d,  MathOperation},	// V	{0x9e,  MathOperation},	// V	{0x9f,  MathOperation},	// V	{0xa0,  MathOperation},	// V	{0xa1,  MathOperation},	// V	{0xa2,  MathOperation},	// V	{0xa3,  MathOperation},	// V	{0xa4,  MathOperation},	// V	{0xa5,  MathOperation},	// V	{0xa6,  MathOperation},	// V	{0xa7,  MathOperation},	// V	{0xa8,  MathOperation},	// V	{0xa9,  MathOperation},	// V	{0xaa,  MathOperation},	// V	{0xab,  MathOperation},	// V	{0xac,  MathOperation},	// V	{0xad,  MathOperation},	// V	{0xae,  MathOperation},	// V	{0xaf,  MathOperation},	// V	{0xb0,  MathOperation},	// V	{0xb1,  MathOperation},	// V	{0xb2,  MathOperation},	// V	{0xb3,  MathOperation},	// V	{0xb4,  MathOperation},	// V	{0xb5,  MathOperation},	// V	{0xb6,  MathOperation},	// V	{0xb7,  MathOperation},	// V	{0xb8,  MathOperation},	// V	{0xb9,  MathOperation},	// V	{0xba,  MathOperation},	// V	{0xbb,  MathOperation},	// V	{0xbc,  MathOperation},	// V	{0xbd,  MathOperation},	// V	{0xbe,  MathOperation},	// V	{0xbf,  MathOperation},	// V	{0x40, LdRegReg},	// V	{0x41, LdRegReg},	// V	{0x42, LdRegReg},	// V	{0x43, LdRegReg},	// V	{0x44, LdRegReg},	// V	{0x45, LdRegReg},	// V	{0x47, LdRegReg},	// V	{0x48, LdRegReg},	// V	{0x49, LdRegReg},	// V	{0x4a, LdRegReg},	// V	{0x4b, LdRegReg},	// V	{0x4c, LdRegReg},	// V	{0x4d, LdRegReg},	// V	{0x4f, LdRegReg},	// V	{0x50, LdRegReg},	// V	{0x51, LdRegReg},	// V	{0x52, LdRegReg},	// V	{0x53, LdRegReg},	// V	{0x54, LdRegReg},	// V	{0x55, LdRegReg},	// V	{0x57, LdRegReg},	// V	{0x58, LdRegReg},	// V	{0x59, LdRegReg},	// V	{0x5a, LdRegReg},	// V	{0x5b, LdRegReg},	// V	{0x5c, LdRegReg},	// V	{0x5d, LdRegReg},	// V	{0x5f, LdRegReg},	// V	{0x60, LdRegReg},	// V	{0x61, LdRegReg},	// V	{0x62, LdRegReg},	// V	{0x63, LdRegReg},	// V	{0x64, LdRegReg},	// V	{0x65, LdRegReg},	// V	{0x67, LdRegReg},	// V	{0x68, LdRegReg},	// V	{0x69, LdRegReg},	// V	{0x6a, LdRegReg},	// V	{0x6b, LdRegReg},	// V	{0x6c, LdRegReg},	// V	{0x6d, LdRegReg},	// V	{0x6f, LdRegReg},	// V	{0x78, LdRegReg},	// V	{0x79, LdRegReg},	// V	{0x7a, LdRegReg},	// V	{0x7b, LdRegReg},	// V	{0x7c, LdRegReg},	// V	{0x7d, LdRegReg},	// V	{0x7f, LdRegReg},	// V	{0xc6,  MathOperationDirect},	// V	{0xce,  MathOperationDirect},	// V	{0xd6,  MathOperationDirect},	// V	{0xde,  MathOperationDirect},	// V	{0xe6,  MathOperationDirect},	// V	{0xee,  MathOperationDirect},	// V	{0xf6,  MathOperationDirect},	// V	{0xfe,  MathOperationDirect},	// V	{0x18,  JrHandler},	// V	{0x20,  JrHandler},	// V	{0x28,  JrHandler},	// V	{0x30,  JrHandler},	// V	{0x38,  JrHandler},	{0xc4, CallHandler},	// V	{0xcc, CallHandler},	// V	{0xcd, CallHandler},	// V	{0xd4, CallHandler},	// V	{0xdc, CallHandler},	// V	{0xe4, CallHandler},	// V	{0xec, CallHandler},	// V	{0xf4, CallHandler},	// V	{0xfc, CallHandler},	// V	{0xc9,  RetHandler},	// V	{0xc0,  RetHandler},	// V	{0xc8,  RetHandler},	// V	{0xd0,  RetHandler},	// V	{0xd8,  RetHandler},	// V	{0xe0,  RetHandler},	// V	{0xe8,  RetHandler},	// V	{0xf0,  RetHandler},	// V	{0xf8,  RetHandler},	// V	{0xc7,  RestartHandler}, // V	{0xcf,  RestartHandler}, // V	{0xd7,  RestartHandler}, // V	{0xdf,  RestartHandler}, // V	{0xe7,  RestartHandler}, // V	{0xef,  RestartHandler}, // V	{0xf7,  RestartHandler}, // V	{0xff,  RestartHandler}, // V	{0x46,  ToRegFromHl},	// V	{0x4e,  ToRegFromHl},	// V	{0x56,  ToRegFromHl},	// V	{0x5e,  ToRegFromHl},	// V	{0x66,  ToRegFromHl},	// V	{0x6e,  ToRegFromHl},	// V	{0x7e,  ToRegFromHl},	{0x09,  AddRegpairOperations},	// V	{0x19,  AddRegpairOperations},	// V	{0x29,  AddRegpairOperations},	// V	{0x39,  AddRegpairOperations},	// V	{0xc5,  PushPopOperations},	// V	{0xd5,  PushPopOperations},	// V	{0xe5,  PushPopOperations},	// V	{0xf5,  PushPopOperations},	// V	{0xc1,  PushPopOperations},	// V	{0xd1,  PushPopOperations},	// V	{0xe1,  PushPopOperations},	// V	{0xf1,  PushPopOperations},	// V	// Terminator	{0xffffffff, NULL}  };struct sOp CBOps[] ={	{0x00,  RLCRRCRLRRSLASRASRLHandler},	{0x01,  RLCRRCRLRRSLASRASRLHandler},	{0x02,  RLCRRCRLRRSLASRASRLHandler},	{0x03,  RLCRRCRLRRSLASRASRLHandler},	{0x04,  RLCRRCRLRRSLASRASRLHandler},	{0x05,  RLCRRCRLRRSLASRASRLHandler},	{0x06,  RLCRRCRLRRSLASRASRLHandler},	{0x07,  RLCRRCRLRRSLASRASRLHandler},	{0x08,  RLCRRCRLRRSLASRASRLHandler},	{0x09,  RLCRRCRLRRSLASRASRLHandler},	{0x0a,  RLCRRCRLRRSLASRASRLHandler},	{0x0b,  RLCRRCRLRRSLASRASRLHandler},	{0x0c,  RLCRRCRLRRSLASRASRLHandler},	{0x0d,  RLCRRCRLRRSLASRASRLHandler},	{0x0e,  RLCRRCRLRRSLASRASRLHandler},	{0x0f,  RLCRRCRLRRSLASRASRLHandler},	{0x10,  RLCRRCRLRRSLASRASRLHandler},	{0x11,  RLCRRCRLRRSLASRASRLHandler},	{0x12,  RLCRRCRLRRSLASRASRLHandler},	{0x13,  RLCRRCRLRRSLASRASRLHandler},	{0x14,  RLCRRCRLRRSLASRASRLHandler},	{0x15,  RLCRRCRLRRSLASRASRLHandler},	{0x16,  RLCRRCRLRRSLASRASRLHandler},	{0x17,  RLCRRCRLRRSLASRASRLHandler},	{0x18,  RLCRRCRLRRSLASRASRLHandler},	{0x19,  RLCRRCRLRRSLASRASRLHandler},	{0x1a,  RLCRRCRLRRSLASRASRLHandler},	{0x1b,  RLCRRCRLRRSLASRASRLHandler},	{0x1c,  RLCRRCRLRRSLASRASRLHandler},	{0x1d,  RLCRRCRLRRSLASRASRLHandler},	{0x1e,  RLCRRCRLRRSLASRASRLHandler},	{0x1f,  RLCRRCRLRRSLASRASRLHandler},	{0x20,  RLCRRCRLRRSLASRASRLHandler},	{0x21,  RLCRRCRLRRSLASRASRLHandler},	{0x22,  RLCRRCRLRRSLASRASRLHandler},	{0x23,  RLCRRCRLRRSLASRASRLHandler},	{0x24,  RLCRRCRLRRSLASRASRLHandler},	{0x25,  RLCRRCRLRRSLASRASRLHandler},	{0x26,  RLCRRCRLRRSLASRASRLHandler},	{0x27,  RLCRRCRLRRSLASRASRLHandler},	{0x28,  RLCRRCRLRRSLASRASRLHandler},	{0x29,  RLCRRCRLRRSLASRASRLHandler},	{0x2a,  RLCRRCRLRRSLASRASRLHandler},	{0x2b,  RLCRRCRLRRSLASRASRLHandler},	{0x2c,  RLCRRCRLRRSLASRASRLHandler},	{0x2d,  RLCRRCRLRRSLASRASRLHandler},	{0x2e,  RLCRRCRLRRSLASRASRLHandler},	{0x2f,  RLCRRCRLRRSLASRASRLHandler},	{0x30,  RLCRRCRLRRSLASRASRLHandler},	{0x31,  RLCRRCRLRRSLASRASRLHandler},	{0x32,  RLCRRCRLRRSLASRASRLHandler},	{0x33,  RLCRRCRLRRSLASRASRLHandler},	{0x34,  RLCRRCRLRRSLASRASRLHandler},	{0x35,  RLCRRCRLRRSLASRASRLHandler},	{0x36,  RLCRRCRLRRSLASRASRLHandler},	{0x37,  RLCRRCRLRRSLASRASRLHandler},	{0x38,  RLCRRCRLRRSLASRASRLHandler},	{0x39,  RLCRRCRLRRSLASRASRLHandler},	{0x3a,  RLCRRCRLRRSLASRASRLHandler},	{0x3b,  RLCRRCRLRRSLASRASRLHandler},	{0x3c,  RLCRRCRLRRSLASRASRLHandler},	{0x3d,  RLCRRCRLRRSLASRASRLHandler},	{0x3e,  RLCRRCRLRRSLASRASRLHandler},	{0x3f,  RLCRRCRLRRSLASRASRLHandler},	{0x40,  BITHandler},	{0x41,  BITHandler},	{0x42,  BITHandler},	{0x43,  BITHandler},	{0x44,  BITHandler},	{0x45,  BITHandler},	{0x46,  BITHandler},	{0x47,  BITHandler},	{0x48,  BITHandler},	{0x49,  BITHandler},	{0x4a,  BITHandler},	{0x4b,  BITHandler},	{0x4c,  BITHandler},	{0x4d,  BITHandler},	{0x4e,  BITHandler},	{0x4f,  BITHandler},	{0x50,  BITHandler},	{0x51,  BITHandler},	{0x52,  BITHandler},	{0x53,  BITHandler},	{0x54,  BITHandler},	{0x55,  BITHandler},	{0x56,  BITHandler},	{0x57,  BITHandler},	{0x58,  BITHandler},	{0x59,  BITHandler},	{0x5a,  BITHandler},	{0x5b,  BITHandler},	{0x5c,  BITHandler},	{0x5d,  BITHandler},	{0x5e,  BITHandler},	{0x5f,  BITHandler},	{0x60,  BITHandler},	{0x61,  BITHandler},	{0x62,  BITHandler},	{0x63,  BITHandler},	{0x64,  BITHandler},	{0x65,  BITHandler},	{0x66,  BITHandler},	{0x67,  BITHandler},	{0x68,  BITHandler},	{0x69,  BITHandler},	{0x6a,  BITHandler},	{0x6b,  BITHandler},	{0x6c,  BITHandler},	{0x6d,  BITHandler},	{0x6e,  BITHandler},	{0x6f,  BITHandler},

⌨️ 快捷键说明

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