Skip to content

Commit

Permalink
Mappers: amend mapper 25 for new Korean dumps
Browse files Browse the repository at this point in the history
  • Loading branch information
bsittler authored and ocornut committed Feb 13, 2023
1 parent a01977f commit 300f560
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 9 deletions.
10 changes: 7 additions & 3 deletions meka/compat.txt
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@
PAD/(PAD): Requires/Supports Paddle Control (ala Steering Wheel)
SP/(SP): Requires/Supports Sports Pad Controller
3D: Uses 3-D Glasses
SMS/GG: This version is a GG cartridge using the SMS compatibility mode
SMS-GG: This version is a GG cartridge using the SMS compatibility mode
SMS-MD: This version is an MD cartridge using the SMS compatibility mode
-----------------------------------------------------------------------------
128 Hap (KR) - *Ok
20 em 1 (BR) - Ok
Expand Down Expand Up @@ -301,7 +302,8 @@
Incredible Hulk, The - Ok
Indiana Jones and the Last Crusade - Ok
Indiana Jones and the Last Crusade [Proto] - Ok
Jaemiissneun Game Mo-eumjip 42 Hap [SMS-MD] - *Ok
Jaemiissneun Game Mo-eumjip 42 Hap [SMS-MD] (KR) - *Ok
Jaemiissneun Game Mo-eumjip 65 Hap [SMS-MD] (KR) - *Ok
James Bond 007: The Duel - Ok
James Bond 007: The Duel (BR) - Ok
James "Buster" Douglas Knockout Boxing - Ok
Expand Down Expand Up @@ -356,6 +358,7 @@
Maze Walker (JP) FM,3D Ok
Megumi Rescue (JP) FM,PAD Ok
Mercs - Ok
Mega Mode Super Game 138 [SMS-MD] (KR) - *Ok
Mega Mode Super Game 30 [SMS-MD] (KR) - *Ok
Mickey's Ultimate Challenge (BR) - Ok
Micro Machines - Ok
Expand Down Expand Up @@ -415,6 +418,7 @@
Phantasy Star (BR) - Ok
Phantasy Star (KR) - Ok
Phantasy Star Fukkokuban [SMS-MD] (JP) FM Ok
Pigu-Wang 7 Hap ~ Jaemiiss-neun Game Mo-eumjip [SMS-MD] (KR) - *Ok
Pit-Fighter - Ok
Pit-Fighter (BR) - Ok
Populous - Ok
Expand Down Expand Up @@ -665,7 +669,7 @@
Zillion II: The Tri Formation [Proto] FM Ok
Zool - Ok
-----------------------------------------------------------------------------
645 games tested - 641 are "Ok"
648 games tested - 644 are "Ok"
-----------------------------------------------------------------------------

-----------------------------------------------------------------------------
Expand Down
3 changes: 3 additions & 0 deletions meka/meka.nam
Original file line number Diff line number Diff line change
Expand Up @@ -381,6 +381,7 @@ SMS be9a7071 19CC267376518536 Incredible Hulk, The/COUNTRY=EU,BR/PRODUCT_NO=29
SMS 8aeb574b 17779413DD492085 Indiana Jones and the Last Crusade/COUNTRY=EU,BR,PT/NAME_BR=Indiana Jones e a Última Cruzada/PRODUCT_NO=27008-50,027079
SMS acec894d 64EA5CF36D9CD486 Indiana Jones and the Last Crusade [Proto]/FLAGS=PROTO/COUNTRY=US/COMMENT=Prototype version of the game.
SMS f60e71ec 476097D9BFBB1C53 Jaemiissneun Game Mo-eumjip 42 Hap [SMS-MD]/COUNTRY=KR/EMU_MAPPER=25
SMS 53904167 88554C664810D445 Jaemiissneun Game Mo-eumjip 65 Hap [SMS-MD]/COUNTRY=KR/EMU_MAPPER=25
SMS 8d23587f 5CEC5CB49DC68FB6 James Bond 007: The Duel/COUNTRY=EU/PRODUCT_NO=MK 27046-50
SMS 8feff688 A022B16F114CDAE7 James Bond 007: The Duel/COUNTRY=BR/PRODUCT_NO=027230
SMS 6a664405 97C27C98AF09FCDF James "Buster" Douglas Knockout Boxing/COUNTRY=US/PRODUCT_NO=7063/COMMENT=Same game as "George Foreman's KO Boxing" and "Heavyweight Champ".
Expand Down Expand Up @@ -433,6 +434,7 @@ SMS 20f40cae 5B02852A4E1B3952 Master of Darkness \/ Vampire [Proto]/FLAGS=PROT
SMS 93141463 6A32F08336B0FA11 Masters of Combat/COUNTRY=EU,AU,BR/PRODUCT_NO=7124,9028/COMMENT=Master System version of "Buster Fight" on the Game Gear.
SMS 31b8040b 8775EA954C13F531 Maze Hunter 3-D/COUNTRY=US,EU,BR/PRODUCT_NO=8003/EMU_3D/COMMENT=Export version of "Maze Walker".
SMS 871562b0 6F10F2363597F697 Maze Walker/COUNTRY=JP,KR/PRODUCT_NO=G-1345,GB-1345/EMU_3D/COMMENT=Japanese version of "Maze Hunter 3-D".
SMS 7f667485 22B314C00393348D Mega Mode Super Game 138 [SMS-MD]/COUNTRY=KR/EMU_MAPPER=25
SMS 919b4b6e A7D1D652604B1D98 Mega Mode Super Game 30 [SMS-MD]/COUNTRY=KR/PRODUCT_NO=SA-3001/EMU_MAPPER=24
SMS 29bc7fad 9AE49900AF32A95F Megumi Rescue/COUNTRY=JP/PRODUCT_NO=G-1359/EMU_INPUTS=PADDLE
SMS d7416b83 0C2287D260615D5B Mercs/COUNTRY=EU,BR/PRODUCT_NO=9007
Expand Down Expand Up @@ -499,6 +501,7 @@ SMS 00bef1d7 ABD447F2F23F56C1 Phantasy Star [v3]/COUNTRY=US,EU/PRODUCT_NO=9500
SMS 75971bef 1B751562EAF667B2 Phantasy Star/COUNTRY=BR/PRODUCT_NO=029010
SMS 747e83b5 4CB57E6A76C6CF0C Phantasy Star/COUNTRY=KR/PRODUCT_NO=GB 4014KS
SMS 07301f83 A8CCBAD5B519DA55 Phantasy Star Fukkokuban [SMS-MD]/COUNTRY=JP/PRODUCT_NO=G-4534/COMMENT=This is the Sega Megadrive version, as reissued in Japan on April 2nd, 1994. It was later included in "Phantasy Star Collection" for the Sega Saturn.
SMS c0ac6956 468A729CE9D4A6BF Pigu-Wang 7 Hap ~ Jaemiiss-neun Game Mo-eumjip [SMS-MD]/COUNTRY=KR/EMU_MAPPER=25
SMS b840a446 99682219F73E5738 Pit-Fighter/COUNTRY=EU/PRODUCT_NO=MK 29009-50
SMS aa4d4b5a B0EEC623306A5986 Pit-Fighter/COUNTRY=BR/PRODUCT_NO=028250
SMS ca082218 CC2A2FBFE47BE4D9 Pooyan/COUNTRY=KR
Expand Down
12 changes: 7 additions & 5 deletions meka/srcs/mappers.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -826,7 +826,8 @@ WRITE_FUNC (Write_Mapper_SMS_Korean_MD_FFF0)
}

// Mapper #25
// Jaemiissneun Game Mo-eumjip 42 Hap [SMS-MD]
// Jaemiissneun Game Mo-eumjip 42/65 Hap [SMS-MD]
// Pigu-Wang 7 Hap ~ Jaemiiss-neun Game Mo-eumjip [SMS-MD]
WRITE_FUNC (Write_Mapper_SMS_Korean_MD_FFF5)
{
// These bits in the address apparently are not checked when
Expand Down Expand Up @@ -859,18 +860,19 @@ WRITE_FUNC (Write_Mapper_SMS_Korean_MD_FFF5)
Map_8k_ROM(5, (Value * 4 + 3) & tsms.Pages_Mask_8k);
//return;
}
const unsigned int mapper_page_mask_16k = g_machine.mapper_regs[0] >= 0x10 ? 0x1f : 0x0f;
if ((Addr | incomplete_address_decoding) == 0xFFFE)
{
g_machine.mapper_regs[1] = Value;
Map_8k_ROM(2, (g_machine.mapper_regs[0] * 4 + (Value & 0x0F) * 2) & tsms.Pages_Mask_8k);
Map_8k_ROM(3, (g_machine.mapper_regs[0] * 4 + (Value & 0x0F) * 2 + 1) & tsms.Pages_Mask_8k);
Map_8k_ROM(2, (g_machine.mapper_regs[0] * 4 + (Value & mapper_page_mask_16k) * 2) & tsms.Pages_Mask_8k);
Map_8k_ROM(3, (g_machine.mapper_regs[0] * 4 + (Value & mapper_page_mask_16k) * 2 + 1) & tsms.Pages_Mask_8k);
//return;
}
if ((Addr | incomplete_address_decoding) == 0xFFFF)
{
g_machine.mapper_regs[2] = Value;
Map_8k_ROM(4, (g_machine.mapper_regs[0] * 4 + (Value & 0x0F) * 2) & tsms.Pages_Mask_8k);
Map_8k_ROM(5, (g_machine.mapper_regs[0] * 4 + (Value & 0x0F) * 2 + 1) & tsms.Pages_Mask_8k);
Map_8k_ROM(4, (g_machine.mapper_regs[0] * 4 + (Value & mapper_page_mask_16k) * 2) & tsms.Pages_Mask_8k);
Map_8k_ROM(5, (g_machine.mapper_regs[0] * 4 + (Value & mapper_page_mask_16k) * 2 + 1) & tsms.Pages_Mask_8k);
//return;
}

Expand Down
2 changes: 1 addition & 1 deletion meka/srcs/mappers.h
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
#define MAPPER_SMS_Korean_FFF3_FFFC (22) // Registers at 0xFFF3 and 0xFFFC (Super Game 150, Super Game 270)
#define MAPPER_SMS_Korean_0000_xor_FF (23) // Register at 0x0000 with MSX-oriented paging
#define MAPPER_SMS_Korean_MD_FFF0 (24) // Registers at 0xFFF0 and 0xFFFF (Mega Mode Super Game 30 [SMS-MD])
#define MAPPER_SMS_Korean_MD_FFF5 (25) // Registers at 0xFFF5 and 0xFFFF (Jaemiissneun Game Mo-eumjip 42 Hap [SMS-MD])
#define MAPPER_SMS_Korean_MD_FFF5 (25) // Registers at 0xFFF5 and 0xFFFF (Jaemiissneun Game Mo-eumjip 42/65 Hap [SMS-MD], Pigu Wang Hap ~ Jaemiiss-neun Game Mo-eumjip [SMS-MD])
#define MAPPER_SMS_Korean_MD_FFFA (26) // Registers at 0xFFFA and 0xFFFF (Game Jiphap 30 Hap [SMS-MD])

#define READ_FUNC(_NAME) u8 _NAME(register u16 Addr)
Expand Down

0 comments on commit 300f560

Please sign in to comment.