?? cpu8.c
字號(hào):
#include "sysdeps.h"#include "shared.h"#include "memory.h"#include "custom.h"#include "newcpu.h"#include "cputbl.h"void op_8000(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ BYTE src = (Shptr->regs).d[srcreg];{ BYTE dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}void op_8010(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (Shptr->regs).a[srcreg]; BYTE src = get_byte(srca);{ BYTE dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}void op_8018(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (Shptr->regs).a[srcreg]; BYTE src = get_byte(srca);{ (Shptr->regs).a[srcreg] += areg_byteinc[srcreg];{ BYTE dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}}void op_8020(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ (Shptr->regs).a[srcreg] -= areg_byteinc[srcreg];{ CPTR srca = (Shptr->regs).a[srcreg]; BYTE src = get_byte(srca);{ BYTE dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}}void op_8028(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (Shptr->regs).a[srcreg] + (LONG)(WORD)nextiword(); BYTE src = get_byte(srca);{ BYTE dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}void op_8030(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (Shptr->regs).a[srcreg]; srca = get_disp_ea (srca, nextiword());{ BYTE src = get_byte(srca);{ BYTE dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}}void op_8038(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (LONG)(WORD)nextiword(); BYTE src = get_byte(srca);{ BYTE dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}void op_8039(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = nextilong(); BYTE src = get_byte(srca);{ BYTE dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}void op_803a(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca += (LONG)(WORD)nextiword();{ BYTE src = get_byte(srca);{ BYTE dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}}void op_803b(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca = get_disp_ea (srca, nextiword());{ BYTE src = get_byte(srca);{ BYTE dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}}void op_803c(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ BYTE src = nextiword();{ BYTE dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}void op_8040(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ WORD src = (Shptr->regs).d[srcreg];{ WORD dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((WORD)(src)) == 0; NFLG = ((WORD)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xffff; (Shptr->regs).d[dstreg] |= (src) & 0xffff;}}}}void op_8050(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (Shptr->regs).a[srcreg]; WORD src = get_word(srca);{ WORD dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((WORD)(src)) == 0; NFLG = ((WORD)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xffff; (Shptr->regs).d[dstreg] |= (src) & 0xffff;}}}}void op_8058(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (Shptr->regs).a[srcreg]; WORD src = get_word(srca);{ (Shptr->regs).a[srcreg] += 2;{ WORD dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((WORD)(src)) == 0; NFLG = ((WORD)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xffff; (Shptr->regs).d[dstreg] |= (src) & 0xffff;}}}}}void op_8060(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ (Shptr->regs).a[srcreg] -= 2;{ CPTR srca = (Shptr->regs).a[srcreg]; WORD src = get_word(srca);{ WORD dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((WORD)(src)) == 0; NFLG = ((WORD)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xffff; (Shptr->regs).d[dstreg] |= (src) & 0xffff;}}}}}void op_8068(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (Shptr->regs).a[srcreg] + (LONG)(WORD)nextiword(); WORD src = get_word(srca);{ WORD dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((WORD)(src)) == 0; NFLG = ((WORD)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xffff; (Shptr->regs).d[dstreg] |= (src) & 0xffff;}}}}void op_8070(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (Shptr->regs).a[srcreg]; srca = get_disp_ea (srca, nextiword());{ WORD src = get_word(srca);{ WORD dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((WORD)(src)) == 0; NFLG = ((WORD)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xffff; (Shptr->regs).d[dstreg] |= (src) & 0xffff;}}}}}void op_8078(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (LONG)(WORD)nextiword(); WORD src = get_word(srca);{ WORD dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((WORD)(src)) == 0; NFLG = ((WORD)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xffff; (Shptr->regs).d[dstreg] |= (src) & 0xffff;}}}}void op_8079(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = nextilong(); WORD src = get_word(srca);{ WORD dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((WORD)(src)) == 0; NFLG = ((WORD)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xffff; (Shptr->regs).d[dstreg] |= (src) & 0xffff;}}}}void op_807a(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca += (LONG)(WORD)nextiword();{ WORD src = get_word(srca);{ WORD dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((WORD)(src)) == 0; NFLG = ((WORD)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xffff; (Shptr->regs).d[dstreg] |= (src) & 0xffff;}}}}}void op_807b(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca = get_disp_ea (srca, nextiword());{ WORD src = get_word(srca);{ WORD dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((WORD)(src)) == 0; NFLG = ((WORD)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xffff; (Shptr->regs).d[dstreg] |= (src) & 0xffff;}}}}}void op_807c(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ WORD src = nextiword();{ WORD dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((WORD)(src)) == 0; NFLG = ((WORD)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xffff; (Shptr->regs).d[dstreg] |= (src) & 0xffff;}}}}void op_8080(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ LONG src = (Shptr->regs).d[srcreg];{ LONG dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((LONG)(src)) == 0; NFLG = ((LONG)(src)) < 0; (Shptr->regs).d[dstreg] = (src);}}}}void op_8090(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (Shptr->regs).a[srcreg]; LONG src = get_long(srca);{ LONG dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((LONG)(src)) == 0; NFLG = ((LONG)(src)) < 0; (Shptr->regs).d[dstreg] = (src);}}}}void op_8098(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (Shptr->regs).a[srcreg]; LONG src = get_long(srca);{ (Shptr->regs).a[srcreg] += 4;{ LONG dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((LONG)(src)) == 0; NFLG = ((LONG)(src)) < 0; (Shptr->regs).d[dstreg] = (src);}}}}}void op_80a0(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ (Shptr->regs).a[srcreg] -= 4;{ CPTR srca = (Shptr->regs).a[srcreg]; LONG src = get_long(srca);{ LONG dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((LONG)(src)) == 0; NFLG = ((LONG)(src)) < 0; (Shptr->regs).d[dstreg] = (src);}}}}}void op_80a8(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (Shptr->regs).a[srcreg] + (LONG)(WORD)nextiword(); LONG src = get_long(srca);{ LONG dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((LONG)(src)) == 0; NFLG = ((LONG)(src)) < 0; (Shptr->regs).d[dstreg] = (src);}}}}void op_80b0(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (Shptr->regs).a[srcreg]; srca = get_disp_ea (srca, nextiword());{ LONG src = get_long(srca);{ LONG dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((LONG)(src)) == 0; NFLG = ((LONG)(src)) < 0; (Shptr->regs).d[dstreg] = (src);}}}}}void op_80b8(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (LONG)(WORD)nextiword(); LONG src = get_long(srca);{ LONG dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((LONG)(src)) == 0; NFLG = ((LONG)(src)) < 0; (Shptr->regs).d[dstreg] = (src);}}}}void op_80b9(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = nextilong(); LONG src = get_long(srca);{ LONG dst = (Shptr->regs).d[dstreg]; src |= dst; VFLG = CFLG = 0; ZFLG = ((LONG)(src)) == 0; NFLG = ((LONG)(src)) < 0; (Shptr->regs).d[dstreg] = (src);}}}}void op_80ba(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca += (LONG)(WORD)nextiword();{ LONG src = get_long(srca);{ LONG dst = (Shptr->regs).d[dstreg];
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -