summaryrefslogtreecommitdiff
path: root/plugins/gme/Game_Music_Emu-0.5.2/gme/hes_cpu_io.h
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/gme/Game_Music_Emu-0.5.2/gme/hes_cpu_io.h')
-rw-r--r--plugins/gme/Game_Music_Emu-0.5.2/gme/hes_cpu_io.h101
1 files changed, 0 insertions, 101 deletions
diff --git a/plugins/gme/Game_Music_Emu-0.5.2/gme/hes_cpu_io.h b/plugins/gme/Game_Music_Emu-0.5.2/gme/hes_cpu_io.h
deleted file mode 100644
index b3d71dad..00000000
--- a/plugins/gme/Game_Music_Emu-0.5.2/gme/hes_cpu_io.h
+++ /dev/null
@@ -1,101 +0,0 @@
-
-#include "Hes_Emu.h"
-
-#include "blargg_source.h"
-
-int Hes_Emu::cpu_read( hes_addr_t addr )
-{
- check( addr <= 0xFFFF );
- int result = *cpu::get_code( addr );
- if ( mmr [addr >> page_shift] == 0xFF )
- result = cpu_read_( addr );
- return result;
-}
-
-void Hes_Emu::cpu_write( hes_addr_t addr, int data )
-{
- check( addr <= 0xFFFF );
- byte* out = write_pages [addr >> page_shift];
- addr &= page_size - 1;
- if ( out )
- out [addr] = data;
- else if ( mmr [addr >> page_shift] == 0xFF )
- cpu_write_( addr, data );
-}
-
-inline byte const* Hes_Emu::cpu_set_mmr( int page, int bank )
-{
- write_pages [page] = 0;
- if ( bank < 0x80 )
- return rom.at_addr( bank * (blargg_long) page_size );
-
- byte* data = 0;
- switch ( bank )
- {
- case 0xF8:
- data = cpu::ram;
- break;
-
- case 0xF9:
- case 0xFA:
- case 0xFB:
- data = &sgx [(bank - 0xF9) * page_size];
- break;
-
- default:
- if ( bank != 0xFF )
- dprintf( "Unmapped bank $%02X\n", bank );
- return rom.unmapped();
- }
-
- write_pages [page] = data;
- return data;
-}
-
-#define CPU_READ_FAST( cpu, addr, time, out ) \
- CPU_READ_FAST_( STATIC_CAST(Hes_Emu*,cpu), addr, time, out )
-
-#define CPU_READ_FAST_( cpu, addr, time, out ) \
-{\
- out = READ_PROG( addr );\
- if ( mmr [addr >> page_shift] == 0xFF )\
- {\
- FLUSH_TIME();\
- out = cpu->cpu_read_( addr );\
- CACHE_TIME();\
- }\
-}
-
-#define CPU_WRITE_FAST( cpu, addr, data, time ) \
- CPU_WRITE_FAST_( STATIC_CAST(Hes_Emu*,cpu), addr, data, time )
-
-#define CPU_WRITE_FAST_( cpu, addr, data, time ) \
-{\
- byte* out = cpu->write_pages [addr >> page_shift];\
- addr &= page_size - 1;\
- if ( out )\
- {\
- out [addr] = data;\
- }\
- else if ( mmr [addr >> page_shift] == 0xFF )\
- {\
- FLUSH_TIME();\
- cpu->cpu_write_( addr, data );\
- CACHE_TIME();\
- }\
-}
-
-#define CPU_READ( cpu, addr, time ) \
- STATIC_CAST(Hes_Emu*,cpu)->cpu_read( addr )
-
-#define CPU_WRITE( cpu, addr, data, time ) \
- STATIC_CAST(Hes_Emu*,cpu)->cpu_write( addr, data )
-
-#define CPU_WRITE_VDP( cpu, addr, data, time ) \
- STATIC_CAST(Hes_Emu*,cpu)->cpu_write_vdp( addr, data )
-
-#define CPU_SET_MMR( cpu, page, bank ) \
- STATIC_CAST(Hes_Emu*,cpu)->cpu_set_mmr( page, bank )
-
-#define CPU_DONE( cpu, time, result_out ) \
- result_out = STATIC_CAST(Hes_Emu*,cpu)->cpu_done()