From 3aa34f7503bbb03e9bcd191f8af4fd5faac66d2e Mon Sep 17 00:00:00 2001 From: neonloop Date: Wed, 5 May 2021 16:20:45 +0000 Subject: Revert "Remove BIOS reserved translation area" This reverts commit fb7ca09b019248b9a0aba481ea55386f71053d73. It seems that commit broke rolling in Minish Cap when using the ARM dynarec. --- cpu.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'cpu.h') diff --git a/cpu.h b/cpu.h index 2b250ca..9868866 100644 --- a/cpu.h +++ b/cpu.h @@ -93,6 +93,7 @@ typedef enum { TRANSLATION_REGION_RAM, TRANSLATION_REGION_ROM, + TRANSLATION_REGION_BIOS } translation_region_type; extern u32 instruction_count; @@ -126,22 +127,28 @@ s32 translate_block_thumb(u32 pc, translation_region_type translation_region, #if defined(HAVE_MMAP) extern u8* rom_translation_cache; extern u8* ram_translation_cache; +extern u8* bios_translation_cache; #elif defined(_3DS) #define rom_translation_cache ((u8*)0x02000000 - ROM_TRANSLATION_CACHE_SIZE) #define ram_translation_cache (rom_translation_cache - RAM_TRANSLATION_CACHE_SIZE) +#define bios_translation_cache (ram_translation_cache - BIOS_TRANSLATION_CACHE_SIZE) extern u8* rom_translation_cache_ptr; extern u8* ram_translation_cache_ptr; +extern u8* bios_translation_cache_ptr; #elif defined(VITA) extern u8* rom_translation_cache; extern u8* ram_translation_cache; +extern u8* bios_translation_cache; extern int sceBlock; #else extern u8 rom_translation_cache[ROM_TRANSLATION_CACHE_SIZE]; extern u8 ram_translation_cache[RAM_TRANSLATION_CACHE_SIZE]; +extern u8 bios_translation_cache[BIOS_TRANSLATION_CACHE_SIZE]; #endif extern u32 stub_arena[STUB_ARENA_SIZE / 4]; extern u8 *rom_translation_ptr; extern u8 *ram_translation_ptr; +extern u8 *bios_translation_ptr; #define MAX_TRANSLATION_GATES 8 @@ -156,6 +163,7 @@ extern u32 *rom_branch_hash[ROM_BRANCH_HASH_SIZE]; void flush_translation_cache_rom(void); void flush_translation_cache_ram(void); +void flush_translation_cache_bios(void); void dump_translation_cache(void); void wipe_caches(void); -- cgit v1.2.3