cpu: add more asserts for unimplemented ops

Since the bootrom is now executing successfully, these will be more
necessary for identifying when new instructions are used.
This commit is contained in:
2018-07-22 16:15:52 -07:00
parent f659af54e1
commit e1e3111976

View File

@@ -967,6 +967,7 @@ int lr35902_cycle(struct lr35902_state *cpu)
POP_16(cpu, cpu->bc);
break;
case 0xc2:
ASSERT(0);
case 0xc3: /* JP a16 */
val_16 = gb_mem_read(cpu->memory, cpu->pc++);
val_16 |= ((uint16_t) gb_mem_read(cpu->memory, cpu->pc++) << 8);
@@ -983,6 +984,7 @@ int lr35902_cycle(struct lr35902_state *cpu)
PUSH_16(cpu, cpu->bc);
break;
case 0xc6:
ASSERT(0);
case 0xc7: /* RST 00 */
RST(cpu, 0);
break;
@@ -1342,6 +1344,7 @@ int lr35902_cycle(struct lr35902_state *cpu)
CALL(cpu);
break;
case 0xce:
ASSERT(0);
case 0xcf: /* RST 08 */
RST(cpu, 0x08);
break;
@@ -1376,6 +1379,7 @@ int lr35902_cycle(struct lr35902_state *cpu)
PUSH_16(cpu, cpu->de);
break;
case 0xd6:
ASSERT(0);
case 0xd7: /* RST 0x10 */
RST(cpu, 0x10);
break;
@@ -1389,6 +1393,7 @@ int lr35902_cycle(struct lr35902_state *cpu)
cpu->int_state = LR35902_INT_ON;
break;
case 0xda:
ASSERT(0);
case 0xdb: /* UNDEF */
break;
case 0xdc: /* CALL C */
@@ -1401,6 +1406,7 @@ int lr35902_cycle(struct lr35902_state *cpu)
case 0xdd: /* UNDEF */
break;
case 0xde:
ASSERT(0);
case 0xdf: /* RST 0x18 */
RST(cpu, 0x18);
break;
@@ -1426,6 +1432,7 @@ int lr35902_cycle(struct lr35902_state *cpu)
break;
case 0xe8:
case 0xe9:
ASSERT(0);
case 0xea: /* LD (a16), A */
val_16 = gb_mem_read(cpu->memory, cpu->pc++);
val_16 |= gb_mem_read(cpu->memory, cpu->pc++) << 8;
@@ -1438,6 +1445,7 @@ int lr35902_cycle(struct lr35902_state *cpu)
case 0xed: /* UNDEF */
break;
case 0xee:
ASSERT(0);
case 0xef: /* RST 0x28 */
RST(cpu, 0x28);
break;
@@ -1455,6 +1463,7 @@ int lr35902_cycle(struct lr35902_state *cpu)
break;
case 0xf2:
case 0xf3:
ASSERT(0);
case 0xf4: /* UNDEF */
break;
case 0xf5: /* PUSH AF */
@@ -1468,6 +1477,7 @@ int lr35902_cycle(struct lr35902_state *cpu)
case 0xf9:
case 0xfa:
case 0xfb:
ASSERT(0);
case 0xfc: /* UNDEF */
break;
case 0xfd: /* UNDEF */