ref: e30fc1fbdf2eaac19eac54e9e656c0db7fc5a108
parent: 37a5b4e9c3f58a4c87a88415036cf46f8e90d0a2
author: aiju <devnull@localhost>
date: Sat Jun 14 16:18:57 EDT 2014
games/md: small fixes
--- a/sys/src/games/md/cpu.c
+++ b/sys/src/games/md/cpu.c
@@ -509,7 +509,7 @@
int n, m, d;
static int cnt;
- if(0 && pc == 0x1300){
+ if(0 && pc == 0x23000000){
trace++;
print("%x\n", curpc);
}
@@ -894,7 +894,7 @@
case 0x4e75: pc = pop32(); tim += 16; break; /* RTS */
case 0x4e76: if((rS & FLAGV) != 0) trap(7, curpc); tim += 4; break; /* TRAPV */
case 0x4e77: /* RTR */
- rS = rS & 0xff00 | fetch16() & 0xff;
+ rS = rS & 0xff00 | pop16() & 0xff;
pc = pop32();
tim += 20;
break;
--- a/sys/src/games/md/vdp.c
+++ b/sys/src/games/md/vdp.c
@@ -326,7 +326,7 @@
if(vdpy == 0 || vdpy >= 225)
hctr = reg[HORCTR];
else
- if(--hctr == 0){
+ if(hctr-- == 0){
if((reg[MODE1] & IE1) != 0)
irq |= INTHOR;
hctr = reg[HORCTR];
--
⑨