--- a/src/aica/armcore.c Tue Jan 17 12:53:39 2006 +0000 +++ b/src/aica/armcore.c Tue Mar 14 11:44:29 2006 +0000 @@ -1,5 +1,5 @@ /** - * $Id: armcore.c,v 1.19 2006-01-17 12:53:39 nkeynes Exp $ + * $Id: armcore.c,v 1.20 2006-01-22 22:40:05 nkeynes Exp $ * * ARM7TDMI CPU emulation core. * @@ -90,6 +90,10 @@ uint32_t arm_run_slice( uint32_t num_samples ) { int i,j,k; + + if( !armr.running ) + return num_samples; + for( i=0; i 0x00200000 ) { - dreamcast_stop(); - ERROR( "BRANCH to fishkill at %08X", pc ); + + } + + if( armr.r[15] >= 0x00200000 ) { + armr.running = FALSE; + ERROR( "ARM Halted: BRANCH to invalid address %08X at %08X", armr.r[15], pc ); return FALSE; } return TRUE;