code region dump added for Musashi

git-svn-id: file:///home/notaz/opt/svn/PicoDrive@439 be3aeb3a-fb24-0410-a615-afba39da0efa
This commit is contained in:
notaz 2008-05-05 20:08:08 +00:00
parent 0bccafebb6
commit 6cab49fd07
3 changed files with 31 additions and 1 deletions

View file

@ -193,3 +193,30 @@ PICO_INTERNAL void SekSetRealTAS(int use_real)
#endif #endif
} }
#if defined(EMU_M68K) && M68K_INSTRUCTION_HOOK == OPT_SPECIFY_HANDLER
static unsigned char op_flags[0x400000/2] = { 0, };
static int atexit_set = 0;
static void make_idc(void)
{
FILE *f = fopen("idc.idc", "w");
int i;
if (!f) return;
fprintf(f, "#include <idc.idc>\nstatic main() {\n");
for (i = 0; i < 0x400000/2; i++)
if (op_flags[i] != 0)
fprintf(f, " MakeCode(0x%06x);\n", i*2);
fprintf(f, "}\n");
fclose(f);
}
void instruction_hook(void)
{
if (!atexit_set) {
atexit(make_idc);
atexit_set = 1;
}
if (REG_PC < 0x400000)
op_flags[REG_PC/2] = 1;
}
#endif

View file

@ -1,3 +1,5 @@
all : m68kops.c
m68kops.c : m68kmake m68kops.c : m68kmake
./$< ./$<

View file

@ -155,7 +155,8 @@
* instruction. * instruction.
*/ */
#define M68K_INSTRUCTION_HOOK OPT_OFF #define M68K_INSTRUCTION_HOOK OPT_OFF
#define M68K_INSTRUCTION_CALLBACK() your_instruction_hook_function() //#define M68K_INSTRUCTION_HOOK OPT_SPECIFY_HANDLER
#define M68K_INSTRUCTION_CALLBACK() instruction_hook()
/* If ON, the CPU will emulate the 4-byte prefetch queue of a real 68000 */ /* If ON, the CPU will emulate the 4-byte prefetch queue of a real 68000 */