summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Wilbert Pol <wilbert@jdg.info>2010-10-28 20:45:35 +0000
committer Wilbert Pol <wilbert@jdg.info>2010-10-28 20:45:35 +0000
commitca8ed2cc36f0dab62dd285957ae8e9c950e7fe61 (patch)
treeae0e3a4d01ec3c9907d18f58ac9d6f05de46e56c
parentfd5c78edffe7b05deb347f96e9059f844264acd6 (diff)
i286.c: Moved call of i80286_urinit to CPU_INIT. Fixed display of PC in the debugger. [Wilbert Pol]
-rw-r--r--src/emu/cpu/i86/i286.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/src/emu/cpu/i86/i286.c b/src/emu/cpu/i86/i286.c
index 149644a3c12..56071e4ea70 100644
--- a/src/emu/cpu/i86/i286.c
+++ b/src/emu/cpu/i86/i286.c
@@ -148,14 +148,6 @@ static void i80286_set_a20_line(i80286_state *cpustate, int state)
static CPU_RESET( i80286 )
{
i80286_state *cpustate = get_safe_token(device);
- static int urinit=1;
-
- /* in my docu not all registers are initialized! */
- if (urinit) {
- i80286_urinit();
- urinit=0;
-
- }
cpustate->sregs[CS] = 0xf000;
cpustate->base[CS] = 0xff0000;
@@ -302,6 +294,8 @@ static CPU_INIT( i80286 )
cpustate->amask = 0x00ffff;
cpustate->fetch_xor = BYTE_XOR_LE(0);
+
+ i80286_urinit();
}
@@ -484,7 +478,7 @@ CPU_GET_INFO( i80286 )
cpustate->flags & 0x0001 ? 'C' : '.');
break;
- case CPUINFO_STR_REGISTER + I80286_PC: sprintf(info->s, "PC:%04X", cpustate->pc); break;
+ case CPUINFO_STR_REGISTER + I80286_PC: sprintf(info->s, "PC:%06X", cpustate->pc); break;
case CPUINFO_STR_REGISTER + I80286_IP: sprintf(info->s, "IP: %04X", cpustate->pc - cpustate->base[CS]); break;
case CPUINFO_STR_REGISTER + I80286_SP: sprintf(info->s, "SP: %04X", cpustate->regs.w[SP]); break;
case CPUINFO_STR_REGISTER + I80286_FLAGS: sprintf(info->s, "F:%04X", cpustate->flags); break;