Search
lxdream.org :: lxdream/src/sh4/sh4trans.h :: diff
lxdream 0.9.1
released Jun 29
Download Now
filename src/sh4/sh4trans.h
changeset 740:dd11269ee48b
prev736:a02d1475ccfd
next760:12dac7679c0c
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/sh4/sh4trans.h Mon Jul 14 07:44:42 2008 +0000
1.2 +++ b/src/sh4/sh4trans.h Wed Jul 16 10:40:10 2008 +0000
1.3 @@ -42,33 +42,6 @@
1.4 #define MAX_RECOVERY_SIZE 2049
1.5
1.6 /**
1.7 - * Translation flag - exit the current block but continue (eg exception handling)
1.8 - */
1.9 -#define XLAT_EXIT_CONTINUE 1
1.10 -
1.11 -/**
1.12 - * Translation flag - exit the current block and halt immediately (eg fatal error)
1.13 - */
1.14 -#define XLAT_EXIT_HALT 2
1.15 -
1.16 -/**
1.17 - * Translation flag - exit the current block and halt immediately for a system
1.18 - * breakpoint.
1.19 - */
1.20 -#define XLAT_EXIT_BREAKPOINT 3
1.21 -
1.22 -/**
1.23 - * Translation flag - exit the current block and continue after performing a full
1.24 - * system reset (dreamcast_reset())
1.25 - */
1.26 -#define XLAT_EXIT_SYSRESET 4
1.27 -
1.28 -/**
1.29 - * Translation flag - exit the current block and continue after the next IRQ.
1.30 - */
1.31 -#define XLAT_EXIT_SLEEP 5
1.32 -
1.33 -/**
1.34 */
1.35 uint32_t sh4_xlat_run_slice( uint32_t nanosecs );
1.36
1.37 @@ -134,17 +107,17 @@
1.38 void sh4_translate_unwind_stack( gboolean is_completion, unwind_thunk_t thunk );
1.39
1.40 /**
1.41 - * From within the translator, immediately exit the current translation block with
1.42 - * the specified exit code (one of the XLAT_EXIT_* values).
1.43 + * Called when doing a break out of the translator - finalizes the system state up to
1.44 + * the end of the current instruction.
1.45 */
1.46 -void sh4_translate_exit( int exit_code );
1.47 +void sh4_translate_exit_recover( );
1.48
1.49 /**
1.50 * From within the translator, exit the current block at the end of the
1.51 - * current instruction, flush the translation cache (completely) and return
1.52 - * control to sh4_xlat_run_slice.
1.53 + * current instruction, flush the translation cache (completely)
1.54 + * @return TRUE to perform a vm-exit/continue after the flush
1.55 */
1.56 -void sh4_translate_flush_cache( void );
1.57 +gboolean sh4_translate_flush_cache( void );
1.58
1.59 /**
1.60 * Support function called from the translator when a breakpoint is hit.
.