- Planificant els mapejadors de memòria
- Afegits supermarioland, gargoylesquest i pokemonred per a provar diferents mapejadors
This commit is contained in:
43
mem.cpp
43
mem.cpp
@@ -3,20 +3,37 @@
|
||||
|
||||
namespace mem
|
||||
{
|
||||
uint8_t(*readMem)(uint16_t);
|
||||
void (*writeMem)(uint16_t, uint8_t);
|
||||
|
||||
char *title = nullptr;
|
||||
uint8_t *memory = nullptr;
|
||||
/*uint8_t *memory = nullptr;
|
||||
uint8_t *mapper_type = nullptr;
|
||||
uint8_t *rom_size = nullptr;
|
||||
uint8_t *ram_size = nullptr;
|
||||
uint8_t *ram_size = nullptr;*/
|
||||
|
||||
uint8_t r(uint16_t address)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
void w(uint16_t address, uint8_t value)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void init(const uint8_t* rom, const int size)
|
||||
{
|
||||
if (memory) free(memory);
|
||||
memory = (uint8_t*)malloc(size);
|
||||
title = (char*)&memory[0x134];
|
||||
mapper_type = &memory[0x147];
|
||||
rom_size = &memory[0x148];
|
||||
ram_size = &memory[0x149];
|
||||
//if (memory) free(memory);
|
||||
//memory = (uint8_t*)malloc(size);
|
||||
title = (char*)&rom[0x134];
|
||||
uint8_t mapper_type = rom[0x147];
|
||||
uint32_t rom_size = 32768 * (1 << rom[0x148]);
|
||||
int sizes[] = { 0, 0, 8, 32, 128, 64};
|
||||
uint32_t ram_size = sizes[rom[0x149]] * 1024;
|
||||
|
||||
readMem = r;
|
||||
writeMem = w;
|
||||
}
|
||||
|
||||
void reset()
|
||||
@@ -24,14 +41,4 @@ namespace mem
|
||||
|
||||
}
|
||||
|
||||
uint8_t readMem(uint16_t address)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void writeMem(uint16_t address, uint8_t value)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user