Search
lxdream.org :: lxdream/src/dreamcast.c :: diff
lxdream 0.9.1
released Jun 29
Download Now
filename src/dreamcast.c
changeset 740:dd11269ee48b
prev736:a02d1475ccfd
next742:e730ba4938f6
author nkeynes
date Wed Jul 16 10:40:10 2008 +0000 (12 years ago)
permissions -rw-r--r--
last change Rationalize the two SH4 run slice impls into sh4.c, and tidy up the vm exits.
Fixes broken soft-reset with emulator core
Fixes broken build without translator
file annotate diff log raw
1.1 --- a/src/dreamcast.c Mon Jul 14 07:44:42 2008 +0000
1.2 +++ b/src/dreamcast.c Wed Jul 16 10:40:10 2008 +0000
1.3 @@ -20,6 +20,7 @@
1.4 #include <errno.h>
1.5 #include <glib.h>
1.6 #include "lxdream.h"
1.7 +#include "dream.h"
1.8 #include "mem.h"
1.9 #include "dreamcast.h"
1.10 #include "asic.h"
1.11 @@ -29,7 +30,7 @@
1.12 #include "gdrom/ide.h"
1.13 #include "maple/maple.h"
1.14 #include "sh4/sh4.h"
1.15 -#include "sh4/sh4trans.h"
1.16 +#include "sh4/sh4core.h"
1.17
1.18 /**
1.19 * Current state of the DC virtual machine
1.20 @@ -145,9 +146,6 @@
1.21 void dreamcast_reset( void )
1.22 {
1.23 int i;
1.24 - if( sh4_xlat_is_running() ) {
1.25 - sh4_translate_exit( XLAT_EXIT_SYSRESET );
1.26 - }
1.27 for( i=0; i<num_modules; i++ ) {
1.28 if( modules[i]->reset != NULL )
1.29 modules[i]->reset();
1.30 @@ -211,9 +209,7 @@
1.31
1.32 void dreamcast_stop( void )
1.33 {
1.34 - if( sh4_xlat_is_running() ) {
1.35 - sh4_translate_exit( XLAT_EXIT_HALT );
1.36 - }
1.37 + sh4_core_exit(CORE_EXIT_HALT); // returns only if not inside SH4 core
1.38 if( dreamcast_state == STATE_RUNNING )
1.39 dreamcast_state = STATE_STOPPING;
1.40 }
.