Removed a no longer needed hack. (nw)

This commit is contained in:
Wilbert Pol 2013-05-22 20:43:28 +00:00
parent 404e0abb30
commit f9abcd9e2b
3 changed files with 7 additions and 55 deletions

View File

@ -9047,15 +9047,8 @@ static void CALT(upd7810_state *cpustate)
PAIR w; PAIR w;
w.d = 0; w.d = 0;
switch (cpustate->config.type) {
case TYPE_7810_GAMEMASTER:
logerror ("!!!!!!!%.4x calt %.2x game master table position not known\n",PPC, OP);
break;
default:
w.w.l = 0x80 + 2 * (OP & 0x1f); w.w.l = 0x80 + 2 * (OP & 0x1f);
}
if (cpustate->config.type!=TYPE_7810_GAMEMASTER) {
SP--; SP--;
WM( SPD, PCH ); WM( SPD, PCH );
SP--; SP--;
@ -9063,7 +9056,6 @@ static void CALT(upd7810_state *cpustate)
PCL=RM(w.w.l); PCL=RM(w.w.l);
PCH=RM(w.w.l+1); PCH=RM(w.w.l+1);
}
} }
/* a0: 1010 0000 */ /* a0: 1010 0000 */

View File

@ -886,28 +886,14 @@ static void upd7810_take_irq(upd7810_state *cpustate)
/* check the interrupts in priority sequence */ /* check the interrupts in priority sequence */
if ((IRR & INTFT0) && 0 == (MKL & 0x02)) if ((IRR & INTFT0) && 0 == (MKL & 0x02))
{ {
switch (cpustate->config.type)
{
case TYPE_7810_GAMEMASTER:
vector = 0xff2a;
break;
default:
vector = 0x0008; vector = 0x0008;
}
if (!((IRR & INTFT1) && 0 == (MKL & 0x04))) if (!((IRR & INTFT1) && 0 == (MKL & 0x04)))
IRR&=~INTFT0; IRR&=~INTFT0;
} }
else else
if ((IRR & INTFT1) && 0 == (MKL & 0x04)) if ((IRR & INTFT1) && 0 == (MKL & 0x04))
{ {
switch (cpustate->config.type)
{
case TYPE_7810_GAMEMASTER:
vector = 0xff2a;
break;
default:
vector = 0x0008; vector = 0x0008;
}
IRR&=~INTFT1; IRR&=~INTFT1;
} }
else else
@ -928,28 +914,14 @@ static void upd7810_take_irq(upd7810_state *cpustate)
else else
if ((IRR & INTFE0) && 0 == (MKL & 0x20)) if ((IRR & INTFE0) && 0 == (MKL & 0x20))
{ {
switch (cpustate->config.type)
{
case TYPE_7810_GAMEMASTER:
vector = 0xff2d;
break;
default:
vector = 0x0018; vector = 0x0018;
}
if (!((IRR & INTFE1) && 0 == (MKL & 0x40))) if (!((IRR & INTFE1) && 0 == (MKL & 0x40)))
IRR&=~INTFE0; IRR&=~INTFE0;
} }
else else
if ((IRR & INTFE1) && 0 == (MKL & 0x40)) if ((IRR & INTFE1) && 0 == (MKL & 0x40))
{ {
switch (cpustate->config.type)
{
case TYPE_7810_GAMEMASTER:
vector = 0xff2d;
break;
default:
vector = 0x0018; vector = 0x0018;
}
IRR&=~INTFE1; IRR&=~INTFE1;
} }
else else
@ -1801,19 +1773,8 @@ static CPU_RESET( upd7810 )
TMM = 0xff; TMM = 0xff;
MA = 0xff; MA = 0xff;
MB = 0xff; MB = 0xff;
switch (cpustate->config.type)
{
case TYPE_7810_GAMEMASTER:
// needed for lcd screen/ram selection; might be internal in cpu and therefor not needed; 0x10 written in some games
MC = 0xff&~0x7;
WP( cpustate, UPD7810_PORTC, 1 ); //hyper space
PCD=0x8000;
break;
default:
MC = 0xff; MC = 0xff;
}
MF = 0xff; MF = 0xff;
// gamemaster falling block "and"s to enable interrupts
MKL = 0xff; MKL = 0xff;
MKH = 0xff; //? MKH = 0xff; //?
cpustate->handle_timers = upd7810_timers; cpustate->handle_timers = upd7810_timers;

View File

@ -17,7 +17,6 @@ enum UPD7810_TYPE
TYPE_78C05, TYPE_78C05,
TYPE_78C06, TYPE_78C06,
TYPE_7810, TYPE_7810,
TYPE_7810_GAMEMASTER, // a few modifications until internal rom dumped
TYPE_7807 TYPE_7807
// TYPE_78C10, // stop instruction added // TYPE_78C10, // stop instruction added
// TYPE_78IV, // TYPE_78IV,