?? cpu1.c
字號:
#include "sysdeps.h"#include "shared.h"#include "memory.h"#include "custom.h"#include "newcpu.h"#include "cputbl.h"void op_1000(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ BYTE src = (Shptr->regs).d[srcreg];{ VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}void op_1010(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);{ VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}void op_1018(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];{ VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}}void op_1020(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);{ VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}}void op_1028(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);{ VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}void op_1030(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);{ VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}}void op_1038(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (LONG)(WORD)nextiword(); BYTE src = get_byte(srca);{ VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}void op_1039(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = nextilong(); BYTE src = get_byte(srca);{ VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}void op_103a(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca += (LONG)(WORD)nextiword();{ BYTE src = get_byte(srca);{ VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}}void op_103b(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca = get_disp_ea (srca, nextiword());{ BYTE src = get_byte(srca);{ VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}}void op_103c(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ BYTE src = nextiword();{ VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; (Shptr->regs).d[dstreg] &= ~0xff; (Shptr->regs).d[dstreg] |= (src) & 0xff;}}}}void op_1080(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ BYTE src = (Shptr->regs).d[srcreg];{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}void op_1090(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);{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}void op_1098(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];{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_10a0(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);{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_10a8(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);{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}void op_10b0(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);{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_10b8(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (LONG)(WORD)nextiword(); BYTE src = get_byte(srca);{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}void op_10b9(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = nextilong(); BYTE src = get_byte(srca);{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}void op_10ba(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca += (LONG)(WORD)nextiword();{ BYTE src = get_byte(srca);{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_10bb(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca = get_disp_ea (srca, nextiword());{ BYTE src = get_byte(srca);{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_10bc(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ BYTE src = nextiword();{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}void op_10c0(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ BYTE src = (Shptr->regs).d[srcreg];{ CPTR dsta = (Shptr->regs).a[dstreg];{ (Shptr->regs).a[dstreg] += areg_byteinc[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_10d0(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);{ CPTR dsta = (Shptr->regs).a[dstreg];{ (Shptr->regs).a[dstreg] += areg_byteinc[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_10d8(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];{ CPTR dsta = (Shptr->regs).a[dstreg];{ (Shptr->regs).a[dstreg] += areg_byteinc[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}}void op_10e0(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);{ CPTR dsta = (Shptr->regs).a[dstreg];{ (Shptr->regs).a[dstreg] += areg_byteinc[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}}void op_10e8(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);{ CPTR dsta = (Shptr->regs).a[dstreg];{ (Shptr->regs).a[dstreg] += areg_byteinc[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_10f0(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);{ CPTR dsta = (Shptr->regs).a[dstreg];{ (Shptr->regs).a[dstreg] += areg_byteinc[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}}void op_10f8(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (LONG)(WORD)nextiword(); BYTE src = get_byte(srca);{ CPTR dsta = (Shptr->regs).a[dstreg];{ (Shptr->regs).a[dstreg] += areg_byteinc[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_10f9(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = nextilong(); BYTE src = get_byte(srca);{ CPTR dsta = (Shptr->regs).a[dstreg];{ (Shptr->regs).a[dstreg] += areg_byteinc[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_10fa(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca += (LONG)(WORD)nextiword();{ BYTE src = get_byte(srca);{ CPTR dsta = (Shptr->regs).a[dstreg];{ (Shptr->regs).a[dstreg] += areg_byteinc[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}}void op_10fb(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca = get_disp_ea (srca, nextiword());{ BYTE src = get_byte(srca);{ CPTR dsta = (Shptr->regs).a[dstreg];{ (Shptr->regs).a[dstreg] += areg_byteinc[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}}void op_10fc(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ BYTE src = nextiword();{ CPTR dsta = (Shptr->regs).a[dstreg];{ (Shptr->regs).a[dstreg] += areg_byteinc[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_1100(ULONG opcode){ ULONG srcreg = (LONG)(BYTE)((opcode & 7) >> 0); ULONG dstreg = (opcode & 3584) >> 9;{{ BYTE src = (Shptr->regs).d[srcreg];{ (Shptr->regs).a[dstreg] -= areg_byteinc[dstreg];{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_1110(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[dstreg] -= areg_byteinc[dstreg];{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_1118(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];{ (Shptr->regs).a[dstreg] -= areg_byteinc[dstreg];{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}}void op_1120(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);{ (Shptr->regs).a[dstreg] -= areg_byteinc[dstreg];{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}}void op_1128(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);{ (Shptr->regs).a[dstreg] -= areg_byteinc[dstreg];{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_1130(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);{ (Shptr->regs).a[dstreg] -= areg_byteinc[dstreg];{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}}void op_1138(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = (LONG)(WORD)nextiword(); BYTE src = get_byte(srca);{ (Shptr->regs).a[dstreg] -= areg_byteinc[dstreg];{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_1139(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = nextilong(); BYTE src = get_byte(srca);{ (Shptr->regs).a[dstreg] -= areg_byteinc[dstreg];{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}void op_113a(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca += (LONG)(WORD)nextiword();{ BYTE src = get_byte(srca);{ (Shptr->regs).a[dstreg] -= areg_byteinc[dstreg];{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0; put_byte(dsta,src);}}}}}}void op_113b(ULONG opcode){ ULONG dstreg = (opcode & 3584) >> 9;{{ CPTR srca = MC68000_getpc(); srca = get_disp_ea (srca, nextiword());{ BYTE src = get_byte(srca);{ (Shptr->regs).a[dstreg] -= areg_byteinc[dstreg];{ CPTR dsta = (Shptr->regs).a[dstreg]; VFLG = CFLG = 0; ZFLG = ((BYTE)(src)) == 0; NFLG = ((BYTE)(src)) < 0;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -