From f32961001e1da8736060c91c3977335a0794bfe5 Mon Sep 17 00:00:00 2001 From: alyosha-tas Date: Wed, 24 Nov 2021 20:26:31 -0500 Subject: [PATCH] MSXHawk: Refactor and start work on SCC --- Assets/dll/MSXHawk.dll | Bin 246272 -> 248320 bytes Assets/gamedb/gamedb_msx_msx1_rom.txt | 2 +- libHawk/MSXHawk/MSXHawk/AY_3_8910.h | 18 +- libHawk/MSXHawk/MSXHawk/Core.h | 103 ++++- libHawk/MSXHawk/MSXHawk/MSXHawk.vcxproj | 1 + libHawk/MSXHawk/MSXHawk/Memory.cpp | 184 ++++++++ libHawk/MSXHawk/MSXHawk/Memory.h | 63 +-- libHawk/MSXHawk/MSXHawk/SCC.h | 437 ++++++++++++++++++ .../Computers/MSX/MSX.cs | 32 +- 9 files changed, 772 insertions(+), 68 deletions(-) create mode 100644 libHawk/MSXHawk/MSXHawk/SCC.h diff --git a/Assets/dll/MSXHawk.dll b/Assets/dll/MSXHawk.dll index d2fbb5034137649797fb228730fe8cd2194b198d..452a419eab07adab930d3b2aaa52506bdd825312 100644 GIT binary patch literal 248320 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 EAH%4gv;Y7A literal 246272 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 f+1 + diff --git a/libHawk/MSXHawk/MSXHawk/Memory.cpp b/libHawk/MSXHawk/MSXHawk/Memory.cpp index 310d20e5f1..e1148e7770 100644 --- a/libHawk/MSXHawk/MSXHawk/Memory.cpp +++ b/libHawk/MSXHawk/MSXHawk/Memory.cpp @@ -7,6 +7,7 @@ #include "Z80A.h" #include "TMS9918A.h" #include "AY_3_8910.h" +#include "SCC.h" using namespace std; @@ -300,6 +301,72 @@ namespace MSXHawk } } } + else if (rom_mapper_1 == 2) // konami mapper with SCC + { + if (base_addr == 0) + { + if (segment < 8) + { + if (SCC_1_enabled) + { + return &unmapped[0]; + } + return &rom_1[rom1_konami_page_2 * 0x2000 + (0x400 * segment)]; + } + else + { + segment -= 8; + return &rom_1[rom1_konami_page_3 * 0x2000 + (0x400 * segment)]; + } + } + else if (base_addr == 0x4000) + { + if (segment < 8) + { + return &rom_1[(0x400 * segment)]; + } + else + { + segment -= 8; + return &rom_1[rom1_konami_page_1 * 0x2000 + (0x400 * segment)]; + } + } + else if (base_addr == 0x8000) + { + if (segment < 8) + { + if (SCC_1_enabled) + { + if (segment < 6) + { + return &unmapped[0]; + } + else + { + return &SCC_1_page[0]; + } + } + return &rom_1[rom1_konami_page_2 * 0x2000 + (0x400 * segment)]; + } + else + { + segment -= 8; + return &rom_1[rom1_konami_page_3 * 0x2000 + (0x400 * segment)]; + } + } + else + { + if (segment < 8) + { + return &rom_1[(0x400 * segment)]; + } + else + { + segment -= 8; + return &rom_1[rom1_konami_page_1 * 0x2000 + (0x400 * segment)]; + } + } + } else { return &unmapped[0]; @@ -363,9 +430,126 @@ namespace MSXHawk } } } + else if (rom_mapper_2 == 2) // konami mapper with SCC + { + if (base_addr == 0) + { + if (segment < 8) + { + if (SCC_2_enabled) + { + return &unmapped[0]; + } + return &rom_2[rom2_konami_page_2 * 0x2000 + (0x400 * segment)]; + } + else + { + segment -= 8; + return &rom_2[rom2_konami_page_3 * 0x2000 + (0x400 * segment)]; + } + } + else if (base_addr == 0x4000) + { + if (segment < 8) + { + return &rom_2[(0x400 * segment)]; + } + else + { + segment -= 8; + return &rom_2[rom2_konami_page_1 * 0x2000 + (0x400 * segment)]; + } + } + else if (base_addr == 0x8000) + { + if (segment < 8) + { + if (SCC_2_enabled) + { + if (segment < 6) + { + return &unmapped[0]; + } + else + { + return &SCC_2_page[0]; + } + } + return &rom_2[rom2_konami_page_2 * 0x2000 + (0x400 * segment)]; + } + else + { + segment -= 8; + return &rom_2[rom2_konami_page_3 * 0x2000 + (0x400 * segment)]; + } + } + else + { + if (segment < 8) + { + return &rom_2[(0x400 * segment)]; + } + else + { + segment -= 8; + return &rom_2[rom2_konami_page_1 * 0x2000 + (0x400 * segment)]; + } + } + } else { return &unmapped[0]; } } + + void MemoryManager::MemoryWrite(uint32_t addr, uint8_t value) + { + // Konami addresses without SCC + if (rom_mapper_1 == 1) + { + if (addr >= 0x6000 && addr < 0x8000 && slot_1_has_rom == 1) { rom1_konami_page_1 = (uint8_t)(value & rom_size_1); remap(); } + if (addr >= 0x8000 && addr < 0xA000 && slot_2_has_rom == 1) { rom1_konami_page_2 = (uint8_t)(value & rom_size_1); remap(); } + if (addr >= 0xA000 && addr < 0xC000 && slot_2_has_rom == 1) { rom1_konami_page_3 = (uint8_t)(value & rom_size_1); remap(); } + } + if (rom_mapper_2 == 1) + { + if (addr >= 0x6000 && addr < 0x8000 && slot_1_has_rom == 2) { rom2_konami_page_1 = (uint8_t)(value & rom_size_2); remap(); } + if (addr >= 0x8000 && addr < 0xA000 && slot_2_has_rom == 2) { rom2_konami_page_2 = (uint8_t)(value & rom_size_2); remap(); } + if (addr >= 0xA000 && addr < 0xC000 && slot_2_has_rom == 2) { rom2_konami_page_3 = (uint8_t)(value & rom_size_2); remap(); } + } + + // Konami addresses with SCC + if (rom_mapper_1 == 2) + { + if (addr >= 0x5000 && addr < 0x5800 && slot_1_has_rom == 1) { rom1_konami_page_0 = (uint8_t)(value & rom_size_1); remap(); } + if (addr >= 0x7000 && addr < 0x7800 && slot_1_has_rom == 1) { rom1_konami_page_1 = (uint8_t)(value & rom_size_1); remap(); } + if (addr >= 0x9000 && addr < 0x9800 && slot_2_has_rom == 1) + { + if ((value & 0xFF) == 0x3F) { SCC_1_enabled = true; } + else { SCC_1_enabled = false; } + rom1_konami_page_2 = (uint8_t)(value & rom_size_1); remap(); + } + if (addr >= 0x9800 && addr < 0xA000 && slot_2_has_rom == 1 && SCC_1_enabled) + { + SCC_1_pntr->WriteReg(value & 0xFF); + } + if (addr >= 0xB000 && addr < 0xB800 && slot_2_has_rom == 1) { rom1_konami_page_3 = (uint8_t)(value & rom_size_1); remap(); } + } + if (rom_mapper_2 == 2) + { + if (addr >= 0x5000 && addr < 0x5800 && slot_1_has_rom == 2) { rom2_konami_page_0 = (uint8_t)(value & rom_size_2); remap(); } + if (addr >= 0x7000 && addr < 0x7800 && slot_1_has_rom == 2) { rom2_konami_page_1 = (uint8_t)(value & rom_size_2); remap(); } + if (addr >= 0x9000 && addr < 0x9800 && slot_2_has_rom == 2) + { + if ((value & 0xFF) == 0x3F) { SCC_2_enabled = true; } + else { SCC_2_enabled = false; } + rom2_konami_page_2 = (uint8_t)(value & rom_size_2); remap(); + } + if (addr >= 0x9800 && addr < 0xA000 && slot_2_has_rom == 1 && SCC_2_enabled) + { + SCC_2_pntr->WriteReg(value & 0xFF); + } + if (addr >= 0xB000 && addr < 0xB800 && slot_2_has_rom == 2) { rom2_konami_page_3 = (uint8_t)(value & rom_size_2); remap(); } + } + } } \ No newline at end of file diff --git a/libHawk/MSXHawk/MSXHawk/Memory.h b/libHawk/MSXHawk/MSXHawk/Memory.h index 6e2a97b344..60c084767b 100644 --- a/libHawk/MSXHawk/MSXHawk/Memory.h +++ b/libHawk/MSXHawk/MSXHawk/Memory.h @@ -10,6 +10,7 @@ namespace MSXHawk class Z80A; class TMS9918A; class AY_3_8910; + class SCC; class MemoryManager { @@ -17,6 +18,8 @@ namespace MSXHawk TMS9918A* vdp_pntr = nullptr; AY_3_8910* psg_pntr = nullptr; + SCC* SCC_1_pntr = nullptr; + SCC* SCC_2_pntr = nullptr; Z80A* cpu_pntr = nullptr; uint8_t* rom_1 = nullptr; uint8_t* rom_2 = nullptr; @@ -44,6 +47,16 @@ namespace MSXHawk uint8_t ram[0x10000] = {}; uint8_t cart_ram[0x8000] = {}; uint8_t unmapped[0x400] = {}; + uint8_t SCC_1_page[0x400] = {}; + uint8_t SCC_2_page[0x400] = {}; + + // mapper support and variables + uint8_t slot_0_has_rom, slot_1_has_rom, slot_2_has_rom, slot_3_has_rom; + uint8_t rom1_konami_page_0, rom1_konami_page_1, rom1_konami_page_2, rom1_konami_page_3; + uint8_t rom2_konami_page_0, rom2_konami_page_1, rom2_konami_page_2, rom2_konami_page_3; + + bool SCC_1_enabled = false; + bool SCC_2_enabled = false; MemoryManager() { @@ -59,6 +72,8 @@ namespace MSXHawk void HardwareWrite(uint32_t addr, uint8_t value); + void MemoryWrite(uint32_t addr, uint8_t value); + void remap(); uint8_t* remap_rom1(uint32_t, uint32_t); @@ -83,20 +98,24 @@ namespace MSXHawk memcpy(rom_1, ext_rom_1, ext_rom_size_1); memcpy(rom_2, ext_rom_2, ext_rom_size_2); - rom_size_1 = ext_rom_size_1 / 0x400 - 1; rom_mapper_1 = ext_rom_mapper_1; - - rom_size_2 = ext_rom_size_2 / 0x400 - 1; rom_mapper_2 = ext_rom_mapper_2; - if (rom_mapper_1 == 1) + // page size 0x2000 for konami games + if (rom_mapper_1 == 1 || rom_mapper_1 == 2) { rom_size_1 = ext_rom_size_1 / 0x2000 - 1; } + if (rom_mapper_2 == 1 || rom_mapper_2 == 2) { rom_size_2 = ext_rom_size_2 / 0x2000 - 1; } + + + if (rom_mapper_1 == 1 || rom_mapper_1 == 2) { + rom1_konami_page_0 = 0; rom1_konami_page_1 = 1; rom1_konami_page_2 = 2; rom1_konami_page_3 = 3; } - if (rom_mapper_2 == 1) + if (rom_mapper_2 == 1 || rom_mapper_2 == 2) { + rom2_konami_page_0 = 0; rom2_konami_page_1 = 1; rom2_konami_page_2 = 2; rom2_konami_page_3 = 3; @@ -108,28 +127,6 @@ namespace MSXHawk remap(); } - // mapper support and variables - uint8_t slot_0_has_rom, slot_1_has_rom, slot_2_has_rom, slot_3_has_rom; - uint8_t rom1_konami_page_1, rom1_konami_page_2, rom1_konami_page_3; - uint8_t rom2_konami_page_1, rom2_konami_page_2, rom2_konami_page_3; - - void MemoryWrite(uint32_t addr, uint8_t value) - { - if (rom_mapper_1 == 1) - { - if (addr >= 0x6000 && addr < 0x8000 && slot_1_has_rom == 1) { rom1_konami_page_1 = (uint8_t)(value & rom_size_1); remap(); } - if (addr >= 0x8000 && addr < 0xA000 && slot_2_has_rom == 1) { rom1_konami_page_2 = (uint8_t)(value & rom_size_1); remap(); } - if (addr >= 0xA000 && addr < 0xC000 && slot_2_has_rom == 1) { rom1_konami_page_3 = (uint8_t)(value & rom_size_1); remap(); } - } - - if (rom_mapper_2 == 1) - { - if (addr >= 0x6000 && addr < 0x8000 && slot_1_has_rom == 2) { rom2_konami_page_1 = (uint8_t)(value & rom_size_2); remap(); } - if (addr >= 0x8000 && addr < 0xA000 && slot_2_has_rom == 2) { rom2_konami_page_2 = (uint8_t)(value & rom_size_2); remap(); } - if (addr >= 0xA000 && addr < 0xC000 && slot_2_has_rom == 2) { rom2_konami_page_3 = (uint8_t)(value & rom_size_2); remap(); } - } - } - #pragma region State Save / Load uint8_t* SaveState(uint8_t* saver) @@ -137,6 +134,8 @@ namespace MSXHawk *saver = (uint8_t)(PortDEEnabled ? 1 : 0); saver++; *saver = (uint8_t)(lagged ? 1 : 0); saver++; *saver = (uint8_t)(start_pressed ? 1 : 0); saver++; + *saver = (uint8_t)(SCC_1_enabled ? 1 : 0); saver++; + *saver = (uint8_t)(SCC_2_enabled ? 1 : 0); saver++; *saver = kb_rows_sel; saver++; *saver = PortA8; saver++; @@ -150,15 +149,19 @@ namespace MSXHawk *saver = slot_2_has_rom; saver++; *saver = slot_3_has_rom; saver++; + *saver = rom1_konami_page_0; saver++; *saver = rom1_konami_page_1; saver++; *saver = rom1_konami_page_2; saver++; *saver = rom1_konami_page_3; saver++; + *saver = rom2_konami_page_0; saver++; *saver = rom2_konami_page_1; saver++; *saver = rom2_konami_page_2; saver++; *saver = rom2_konami_page_3; saver++; std::memcpy(saver, &ram, 0x10000); saver += 0x10000; std::memcpy(saver, &cart_ram, 0x8000); saver += 0x8000; + std::memcpy(saver, &SCC_1_page, 0x400); saver += 0x400; + std::memcpy(saver, &SCC_2_page, 0x400); saver += 0x400; return saver; } @@ -168,6 +171,8 @@ namespace MSXHawk PortDEEnabled = *loader == 1; loader++; lagged = *loader == 1; loader++; start_pressed = *loader == 1; loader++; + SCC_1_enabled = *loader == 1; loader++; + SCC_2_enabled = *loader == 1; loader++; kb_rows_sel = *loader; loader++; PortA8 = *loader; loader++; @@ -181,15 +186,19 @@ namespace MSXHawk slot_2_has_rom = *loader; loader++; slot_3_has_rom = *loader; loader++; + rom1_konami_page_0 = *loader; loader++; rom1_konami_page_1 = *loader; loader++; rom1_konami_page_2 = *loader; loader++; rom1_konami_page_3 = *loader; loader++; + rom2_konami_page_0 = *loader; loader++; rom2_konami_page_1 = *loader; loader++; rom2_konami_page_2 = *loader; loader++; rom2_konami_page_3 = *loader; loader++; std::memcpy(&ram, loader, 0x10000); loader += 0x10000; std::memcpy(&cart_ram, loader, 0x8000); loader += 0x8000; + std::memcpy(&SCC_1_page, loader, 0x400); loader += 0x400; + std::memcpy(&SCC_2_page, loader, 0x400); loader += 0x400; remap(); diff --git a/libHawk/MSXHawk/MSXHawk/SCC.h b/libHawk/MSXHawk/MSXHawk/SCC.h new file mode 100644 index 0000000000..ffd536261f --- /dev/null +++ b/libHawk/MSXHawk/MSXHawk/SCC.h @@ -0,0 +1,437 @@ +#include +#include +#include +#include + +using namespace std; + +namespace MSXHawk +{ + class SCC + { + public: + +#pragma region SCC + + SCC() + { + Reset(); + } + + uint8_t* page_pointer = nullptr; + + bool A_on, B_on, C_on; + bool A_up, B_up, C_up; + bool A_noise, B_noise, C_noise; + bool env_vol_A, env_vol_B, env_vol_C; + + uint8_t env_shape; + uint8_t port_sel; + uint8_t vol_A, vol_B, vol_C; + uint8_t Register[16] = {}; + + uint32_t psg_clock; + uint32_t sq_per_A, sq_per_B, sq_per_C; + uint32_t clock_A, clock_B, clock_C; + + uint32_t env_per; + uint32_t env_clock; + + int32_t env_E; + int32_t E_up_down; + + uint32_t noise_clock; + uint32_t noise_per; + uint32_t noise = 0x1; + + int32_t old_sample; + int32_t current_sample; + + // non stated if only on frame boundaries + bool sound_out_A; + bool sound_out_B; + bool sound_out_C; + + uint8_t Clock_Divider; + + void Reset() + { + clock_A = clock_B = clock_C = 0x1000; + noise_clock = 0x20; + port_sel = 0; + + for (int i = 0; i < 16; i++) + { + Register[i] = 0x0; + } + sync_psg_state(); + } + + short Sample() + { + return current_sample; + } + + const uint32_t VolumeTable[16] = + { + 0x0000, 0x0055, 0x0079, 0x00AB, 0x00F1, 0x0155, 0x01E3, 0x02AA, + 0x03C5, 0x0555, 0x078B, 0x0AAB, 0x0F16, 0x1555, 0x1E2B, 0x2AAA + }; + + // returns do not occur in this iplementation, they come from the core + uint8_t ReadReg() + { + + } + + void sync_psg_state() + { + sq_per_A = (Register[0] & 0xFF) | (((Register[1] & 0xF) << 8)); + if (sq_per_A == 0) + { + sq_per_A = 0x1000; + } + + sq_per_B = (Register[2] & 0xFF) | (((Register[3] & 0xF) << 8)); + if (sq_per_B == 0) + { + sq_per_B = 0x1000; + } + + sq_per_C = (Register[4] & 0xFF) | (((Register[5] & 0xF) << 8)); + if (sq_per_C == 0) + { + sq_per_C = 0x1000; + } + + env_per = (Register[11] & 0xFF) | (((Register[12] & 0xFF) << 8)); + if (env_per == 0) + { + env_per = 0x10000; + } + + env_per *= 2; + + A_on = (Register[7] & 0x1) > 0; + B_on = (Register[7] & 0x2) > 0; + C_on = (Register[7] & 0x4) > 0; + A_noise = (Register[7] & 0x8) > 0; + B_noise = (Register[7] & 0x10) > 0; + C_noise = (Register[7] & 0x20) > 0; + + noise_per = Register[6] & 0x1F; + if (noise_per == 0) + { + noise_per = 0x20; + } + + uint8_t shape_select = Register[13] & 0xF; + + if (shape_select < 4) { env_shape = 0; } + else if (shape_select < 8) { env_shape = 1; } + else { env_shape = 2 + (shape_select - 8); } + + vol_A = Register[8] & 0xF; + env_vol_A = ((Register[8] >> 4) & 0x1) > 0; + + vol_B = Register[9] & 0xF; + env_vol_B = ((Register[9] >> 4) & 0x1) > 0; + + vol_C = Register[10] & 0xF; + env_vol_C = ((Register[10] >> 4) & 0x1) > 0; + } + + void WriteReg(uint8_t value) + { + value &= 0xFF; + + if (port_sel != 0xE) { Register[port_sel] = value; } + + + sync_psg_state(); + + if (port_sel == 13) + { + env_clock = env_per; + + if (env_shape == 0 || env_shape == 2 || env_shape == 3 || env_shape == 4 || env_shape == 5) + { + env_E = 15; + E_up_down = -1; + } + else + { + env_E = 0; + E_up_down = 1; + } + } + } + + bool generate_sound() + { + // there are 8 cpu cycles for every psg cycle + clock_A--; + clock_B--; + clock_C--; + + noise_clock--; + env_clock--; + + // clock noise + if (noise_clock == 0) + { + noise = (noise >> 1) ^ (((noise & 0x1) > 0) ? 0x10004 : 0); + noise_clock = noise_per; + } + + if (env_clock == 0) + { + env_clock = env_per; + + env_E += E_up_down; + + if (env_E == 16 || env_E == -1) + { + // we just completed a period of the envelope, determine what to do now based on the envelope shape + if (env_shape == 0 || env_shape == 1 || env_shape == 3 || env_shape == 9) + { + E_up_down = 0; + env_E = 0; + } + else if (env_shape == 5 || env_shape == 7) + { + E_up_down = 0; + env_E = 15; + } + else if (env_shape == 4 || env_shape == 8) + { + if (env_E == 16) + { + env_E = 15; + E_up_down = -1; + } + else + { + env_E = 0; + E_up_down = 1; + } + } + else if (env_shape == 2) + { + env_E = 15; + } + else + { + env_E = 0; + } + } + } + + if (clock_A == 0) + { + A_up = !A_up; + clock_A = sq_per_A; + } + + if (clock_B == 0) + { + B_up = !B_up; + clock_B = sq_per_B; + } + + if (clock_C == 0) + { + C_up = !C_up; + clock_C = sq_per_C; + } + + sound_out_A = (((noise & 0x1) > 0) | A_noise) & (A_on | A_up); + sound_out_B = (((noise & 0x1) > 0) | B_noise) & (B_on | B_up); + sound_out_C = (((noise & 0x1) > 0) | C_noise) & (C_on | C_up); + + // now calculate the volume of each channel and add them together + current_sample = 0; + + if (env_vol_A) + { + current_sample = (sound_out_A ? VolumeTable[env_E] : 0); + } + else + { + current_sample = (sound_out_A ? VolumeTable[vol_A] : 0); + } + + if (env_vol_B) + { + current_sample += (sound_out_B ? VolumeTable[env_E] : 0); + } + else + { + current_sample += (sound_out_B ? VolumeTable[vol_B] : 0); + } + + if (env_vol_C) + { + current_sample += (sound_out_C ? VolumeTable[env_E] : 0); + } + else + { + current_sample += (sound_out_C ? VolumeTable[vol_C] : 0); + } + + current_sample *= 2; + + if (current_sample != old_sample) { return true; } + + return false; + } + +#pragma endregion + +#pragma region State Save / Load + + uint8_t* SaveState(uint8_t* saver) + { + *saver = (uint8_t)(A_on ? 1 : 0); saver++; + *saver = (uint8_t)(B_on ? 1 : 0); saver++; + *saver = (uint8_t)(C_on ? 1 : 0); saver++; + *saver = (uint8_t)(A_up ? 1 : 0); saver++; + *saver = (uint8_t)(B_up ? 1 : 0); saver++; + *saver = (uint8_t)(C_up ? 1 : 0); saver++; + *saver = (uint8_t)(A_noise ? 1 : 0); saver++; + *saver = (uint8_t)(B_noise ? 1 : 0); saver++; + *saver = (uint8_t)(C_noise ? 1 : 0); saver++; + *saver = (uint8_t)(env_vol_A ? 1 : 0); saver++; + *saver = (uint8_t)(env_vol_B ? 1 : 0); saver++; + *saver = (uint8_t)(env_vol_C ? 1 : 0); saver++; + + *saver = env_shape; saver++; + *saver = port_sel; saver++; + *saver = vol_A; saver++; + *saver = vol_B; saver++; + *saver = vol_C; saver++; + + for (int i = 0; i < 16; i++) { *saver = Register[i]; saver++; } + + *saver = (uint8_t)(psg_clock & 0xFF); saver++; *saver = (uint8_t)((psg_clock >> 8) & 0xFF); saver++; + *saver = (uint8_t)((psg_clock >> 16) & 0xFF); saver++; *saver = (uint8_t)((psg_clock >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(sq_per_A & 0xFF); saver++; *saver = (uint8_t)((sq_per_A >> 8) & 0xFF); saver++; + *saver = (uint8_t)((sq_per_A >> 16) & 0xFF); saver++; *saver = (uint8_t)((sq_per_A >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(sq_per_B & 0xFF); saver++; *saver = (uint8_t)((sq_per_B >> 8) & 0xFF); saver++; + *saver = (uint8_t)((sq_per_B >> 16) & 0xFF); saver++; *saver = (uint8_t)((sq_per_B >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(sq_per_C & 0xFF); saver++; *saver = (uint8_t)((sq_per_C >> 8) & 0xFF); saver++; + *saver = (uint8_t)((sq_per_C >> 16) & 0xFF); saver++; *saver = (uint8_t)((sq_per_C >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(clock_A & 0xFF); saver++; *saver = (uint8_t)((clock_A >> 8) & 0xFF); saver++; + *saver = (uint8_t)((clock_A >> 16) & 0xFF); saver++; *saver = (uint8_t)((clock_A >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(clock_B & 0xFF); saver++; *saver = (uint8_t)((clock_B >> 8) & 0xFF); saver++; + *saver = (uint8_t)((clock_B >> 16) & 0xFF); saver++; *saver = (uint8_t)((clock_B >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(clock_C & 0xFF); saver++; *saver = (uint8_t)((clock_C >> 8) & 0xFF); saver++; + *saver = (uint8_t)((clock_C >> 16) & 0xFF); saver++; *saver = (uint8_t)((clock_C >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(env_per & 0xFF); saver++; *saver = (uint8_t)((env_per >> 8) & 0xFF); saver++; + *saver = (uint8_t)((env_per >> 16) & 0xFF); saver++; *saver = (uint8_t)((env_per >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(env_clock & 0xFF); saver++; *saver = (uint8_t)((env_clock >> 8) & 0xFF); saver++; + *saver = (uint8_t)((env_clock >> 16) & 0xFF); saver++; *saver = (uint8_t)((env_clock >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(env_E & 0xFF); saver++; *saver = (uint8_t)((env_E >> 8) & 0xFF); saver++; + *saver = (uint8_t)((env_E >> 16) & 0xFF); saver++; *saver = (uint8_t)((env_E >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(E_up_down & 0xFF); saver++; *saver = (uint8_t)((E_up_down >> 8) & 0xFF); saver++; + *saver = (uint8_t)((E_up_down >> 16) & 0xFF); saver++; *saver = (uint8_t)((E_up_down >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(noise_clock & 0xFF); saver++; *saver = (uint8_t)((noise_clock >> 8) & 0xFF); saver++; + *saver = (uint8_t)((noise_clock >> 16) & 0xFF); saver++; *saver = (uint8_t)((noise_clock >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(noise_per & 0xFF); saver++; *saver = (uint8_t)((noise_per >> 8) & 0xFF); saver++; + *saver = (uint8_t)((noise_per >> 16) & 0xFF); saver++; *saver = (uint8_t)((noise_per >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(noise & 0xFF); saver++; *saver = (uint8_t)((noise >> 8) & 0xFF); saver++; + *saver = (uint8_t)((noise >> 16) & 0xFF); saver++; *saver = (uint8_t)((noise >> 24) & 0xFF); saver++; + + *saver = (uint8_t)(old_sample & 0xFF); saver++; *saver = (uint8_t)((old_sample >> 8) & 0xFF); saver++; + *saver = (uint8_t)((old_sample >> 16) & 0xFF); saver++; *saver = (uint8_t)((old_sample >> 24) & 0xFF); saver++; + + return saver; + } + + uint8_t* LoadState(uint8_t* loader) + { + A_on = *loader == 1; loader++; + B_on = *loader == 1; loader++; + C_on = *loader == 1; loader++; + A_up = *loader == 1; loader++; + B_up = *loader == 1; loader++; + C_up = *loader == 1; loader++; + A_noise = *loader == 1; loader++; + B_noise = *loader == 1; loader++; + C_noise = *loader == 1; loader++; + env_vol_A = *loader == 1; loader++; + env_vol_B = *loader == 1; loader++; + env_vol_C = *loader == 1; loader++; + + env_shape = *loader; loader++; + port_sel = *loader; loader++; + vol_A = *loader; loader++; + vol_B = *loader; loader++; + vol_C = *loader; loader++; + + for (int i = 0; i < 16; i++) { Register[i] = *loader; loader++; } + + psg_clock = *loader; loader++; psg_clock |= (*loader << 8); loader++; + psg_clock |= (*loader << 16); loader++; psg_clock |= (*loader << 24); loader++; + + sq_per_A = *loader; loader++; sq_per_A |= (*loader << 8); loader++; + sq_per_A |= (*loader << 16); loader++; sq_per_A |= (*loader << 24); loader++; + + sq_per_B = *loader; loader++; sq_per_B |= (*loader << 8); loader++; + sq_per_B |= (*loader << 16); loader++; sq_per_B |= (*loader << 24); loader++; + + sq_per_C = *loader; loader++; sq_per_C |= (*loader << 8); loader++; + sq_per_C |= (*loader << 16); loader++; sq_per_C |= (*loader << 24); loader++; + + clock_A = *loader; loader++; clock_A |= (*loader << 8); loader++; + clock_A |= (*loader << 16); loader++; clock_A |= (*loader << 24); loader++; + + clock_B = *loader; loader++; clock_B |= (*loader << 8); loader++; + clock_B |= (*loader << 16); loader++; clock_B |= (*loader << 24); loader++; + + clock_C = *loader; loader++; clock_C |= (*loader << 8); loader++; + clock_C |= (*loader << 16); loader++; clock_C |= (*loader << 24); loader++; + + env_per = *loader; loader++; env_per |= (*loader << 8); loader++; + env_per |= (*loader << 16); loader++; env_per |= (*loader << 24); loader++; + + env_clock = *loader; loader++; env_clock |= (*loader << 8); loader++; + env_clock |= (*loader << 16); loader++; env_clock |= (*loader << 24); loader++; + + env_E = *loader; loader++; env_E |= (*loader << 8); loader++; + env_E |= (*loader << 16); loader++; env_E |= (*loader << 24); loader++; + + E_up_down = *loader; loader++; E_up_down |= (*loader << 8); loader++; + E_up_down |= (*loader << 16); loader++; E_up_down |= (*loader << 24); loader++; + + noise_clock = *loader; loader++; noise_clock |= (*loader << 8); loader++; + noise_clock |= (*loader << 16); loader++; noise_clock |= (*loader << 24); loader++; + + noise_per = *loader; loader++; noise_per |= (*loader << 8); loader++; + noise_per |= (*loader << 16); loader++; noise_per |= (*loader << 24); loader++; + + noise = *loader; loader++; noise |= (*loader << 8); loader++; + noise |= (*loader << 16); loader++; noise |= (*loader << 24); loader++; + + old_sample = *loader; loader++; old_sample |= (*loader << 8); loader++; + old_sample |= (*loader << 16); loader++; old_sample |= (*loader << 24); loader++; + + return loader; + } + +#pragma endregion + }; +} diff --git a/src/BizHawk.Emulation.Cores/Computers/MSX/MSX.cs b/src/BizHawk.Emulation.Cores/Computers/MSX/MSX.cs index 14ec692691..3f09ddea66 100644 --- a/src/BizHawk.Emulation.Cores/Computers/MSX/MSX.cs +++ b/src/BizHawk.Emulation.Cores/Computers/MSX/MSX.cs @@ -1,5 +1,6 @@ using System; using System.Text; +using BizHawk.Common; using BizHawk.Emulation.Common; namespace BizHawk.Emulation.Cores.Computers.MSX @@ -16,7 +17,13 @@ namespace BizHawk.Emulation.Cores.Computers.MSX SyncSettings = (MSXSyncSettings)syncSettings ?? new MSXSyncSettings(); RomData = new byte[rom.Length]; - + + // look up game in db before transforming ROM + var hash_md5 = MD5Checksum.ComputePrefixedHex(rom); + var gi = Database.CheckDatabase(hash_md5); + var dict = gi.GetOptions(); + string s_mapper; + for (int i = 0; i < rom.Length; i++) { RomData[i] = rom[i]; @@ -38,8 +45,25 @@ namespace BizHawk.Emulation.Cores.Computers.MSX } else { - mapper_1 = 1; - Console.WriteLine("Konami Mapper"); + // Assume default konami style mapper + if (gi == null) + { + + } + else if (!dict.TryGetValue("mapper", out s_mapper)) + { + mapper_1 = 1; + Console.WriteLine("Using Konami Mapper"); + } + else + { + if (s_mapper == "2") + { + mapper_1 = 2; + Console.WriteLine("Using Konami Mapper with SCC"); + } + } + } // if the original was not 64 or 48 k, move it (may need to do this case by case) @@ -135,7 +159,7 @@ namespace BizHawk.Emulation.Cores.Computers.MSX } private IntPtr MSX_Pntr { get; set; } = IntPtr.Zero; - private byte[] MSX_core = new byte[0x20000]; + private byte[] MSX_core = new byte[0x28000]; public static byte[] Bios = null; public static byte[] Basic;