Page 1 of 1

Unlicensed Gameboy Game Support

Posted: Wed Aug 18, 2021 12:31 pm
by Moondandy
Hey guys, Birdybro did a great bit of work to test (possibly) all the unlicensed GB/GBC roms kicking about to see if they work on the MiSTer core. I have put the results in a sheet here:

https://docs.google.com/spreadsheets/d/ ... =496340638

Currently there are 79 roms that don't work and 69 that do.

As you can imagine a lot of them are probably not terribly interesting, hacks and Asian multicarts, however there are some of interest in there including the Datel games which you can read about more here:
https://www.reddit.com/r/Gameboy/commen ... urce=share

Those games seem to fail to load due to them having to not have the Gameboy splash screen at the start (due to being unlicensed) which is causing issues in the core.

What would be interesting would be to confirm that these roms load on original hardware and to figure out if these games can be split down into different "mappers" or even just publishers. Hopefuly Birdie can post on what emulator he tested these on for some more info.

If anyone would like edit access to the sheet and fancies testing them on original hardware with a flash card (I am still trying to find my old GBA flashcard from 15 years ago) then just give me a shout.

It would be great if the core would eventually be able to load all unlicensed games that run on original hardware (without hacking roms), but we probably need to do some more digging before putting any tickets in.

Re: Unlicensed Gameboy Game Support

Posted: Wed Aug 18, 2021 1:01 pm
by pcfreak324
You can get these games to play by fixing the header. More details can be found over at Krikzz' forum.

Re: Unlicensed Gameboy Game Support

Posted: Fri Aug 20, 2021 1:58 pm
by Moondandy
Thanks for the info. Here is the post:
I have found that you can get all the Rocket Games non-multicart games to work on the EverDrive GB with a few modifications to the header. Multi-cart games offer nothing of importance over single cartridge ROMs. These are the no-intro names of the games that will work with this method :

ATV Racing (Europe) (Unl).gbc
Full Time Soccer (Europe) (Unl).gbc
Hang Time Basketball (Europe) (Unl).gbc
Karate Joe (Europe) (Unl).gbc
Painter (Europe) (Unl).gbc
Pocket Smash Out (Europe) (Unl).gbc
Race Time (Europe) (Unl).gbc
Space Invasion (Europe) (Unl).gbc

Use the program called Game Boy ROM Analyzer / Header Editor / Checksum Fixer. Open a ROM, change the Cartridge Type 01h ROM+MBC1, the ROM Size to the file size of the ROM and the RAM Size to 00h - None. Then click on Write ROM in the Edit Menu, followed by Fix Header Checksum and finally Restore Nintendo Logo.

After that you will be able to enjoy these games. However, one difference from the original cartridges will remain. Original cartridges will display "ROCKET" but these fixed ROMs will display "Nintendo" with the lower right part of the o missing. This is necessary for the GBC BIOS to boot games, the original hardware had some special circuitry to bypass the logo check.
It would be better if the core was able to implement the circuitry of these carts so they would play natively, like on original hardware, rather than hacking a Nintendo screen into the roms to make them work.

Re: Unlicensed Gameboy Game Support

Posted: Sat Aug 28, 2021 5:33 pm
by paulbnl
Here's a wip build of the Gameboy core with basic Rocket & Sachen mapper support. Sachen games are difficult to detect. Hopefully the way I am using now won't have any false positives. Use the original Gameboy Color bios for best compatibility.
Gameboy_rocket.zip
(1.28 MiB) Downloaded 492 times

Re: Unlicensed Gameboy Game Support

Posted: Sat Aug 28, 2021 8:15 pm
by Moondandy
Wow, thanks Paul that's great! Will try this out over the next couple of days and see how the games fair.

Re: Unlicensed Gameboy Game Support

Posted: Mon Aug 30, 2021 3:50 pm
by Moondandy
I had a quick check through some of the roms, seems Sachen games loading but with the Rocket/Datel I only got one to progress past the GB splash screen - but they the splash screen does seem to load properly now on them all.

Re: Unlicensed Gameboy Game Support

Posted: Wed Sep 01, 2021 10:59 am
by paulbnl
There might be different ROM files for some games. I had 4 games working: ATV Racing, Karate Joe, Painter & Space Invasion.

Full Time Soccer & Race Time have 0x99 instead of 0x97 set as cartridge type in the header.

Pocket Smash Out & Hang Time Basketball don't have the partial Nintendo logo hidden at the end of the first bank which the other games do have so I had to change how the logo is handled.

This build of the core should have all single Rocket games working:
Gameboy_rocket2.zip
(1.29 MiB) Downloaded 422 times

Re: Unlicensed Gameboy Game Support

Posted: Thu Sep 02, 2021 7:07 pm
by Moondandy
Thanks for updating, will give a test later!

Re: Unlicensed Gameboy Game Support

Posted: Sat Feb 05, 2022 6:04 pm
by KremlingKuthroat19
After testing some Game Boy games, I've discovered these games either won't boot or have corrupted graphics:

Won't Boot:
-Captain Knick-Knack
-Story of Lasama (La Sa Ma Chuan Qi)

Corrupted Graphics:
-Exodus: Journey to the Promised Land
-Joshua & The Battle of Jericho
-NIV Bible & the 20 Lost Levels of Joshua
-Spiritual Warfare

All my other Game Boy games work flawlessly. This could related to missing mappers, but it's interesting that all the Wisdom Tree games have corrupted graphics.

Anyone experiencing issues with these games in particular?

Re: Unlicensed Gameboy Game Support

Posted: Mon Feb 07, 2022 5:00 pm
by Moondandy
Yeah, these are the unlicensed GB games (not GBC) that didn't work in the core when I retested not long back:

8-in-1 (Sachen) [C].gb No 20211121 Sachen-Commin Freezes selecting game from menu
Beast Fighter (Asia) (Unl) .gb No 20211121 Sachen Freezes after spash screen
Beast Fighter (Asia) (Unl).gb No 20211121 Sachen Freezes after spash screen
Captain Knick-Knack (Sachen) [!].gb No 20211121 Freezes after spash screen
Densha de Go! (Unl) [!].gb No 20211121 Loads to menu but can't progress
Exodus - Journey to the Promised Land (USA) (Unl).gb No 20211121 Badly corrupted
GameShark (USA) (Unl).gb No 20211121 Corruption after splash
Joshua & the Battle of Jericho (USA) (Unl).gb No 20211121 Corruption after splash
King James Bible (USA) (Unl).gb No 20211121 Freezes after selecting to read section of the Bible
la sa ma chuan qi - story of lasama (unlicensed) [raw dump] [trimmed].gb No 20211121 Freezes on splash
La Sa Ma Chuan Qi - Story of Lasama (Unlicensed) [Raw Dump].gb No 20211121 Freezes on splash
Mani 4-in-1 (Unl) [!].gb No 20211121 Can load to menu but selecting games does not load them
NIV Bible & the 20 Lost Levels of Joshua (USA) (Unl).gb No 20211121 Corruption after splash
Pocket GT 2005 (Unl).gb No 20211121 Freezes after splash
Pokemon Red-Blue 2-in-1 (Unl) .gb No 20211121 Freezes selecting game from menu
SMARTCOM (Europe) (Unl).gb No 20211121 Freezes after splash
Sonic 3D Blast 5 (Unl).gb No 20211121 No image after splash
Spiritual Warfare (USA) (Unl).gb No 20211121 Freezes after splash

Re: Unlicensed Gameboy Game Support

Posted: Mon Feb 07, 2022 5:58 pm
by KremlingKuthroat19
Thanks @Moondandy!

Glad that you've reported these games as not working. Are these games not supported because those mappers aren't supported or are those just the handful of games that don't work because of bugs in the core?

Re: Unlicensed Gameboy Game Support

Posted: Mon Feb 07, 2022 9:07 pm
by Moondandy
That I can't fully say, I think someone with an Everdrive would need to check them on original hardware and unfortunately I don't have a GB flash card. It is very possible some are bad dumps. I did some testing with Bidry awhile back, results on this sheet here, and failed ones were also tested against SameBoy.

https://docs.google.com/spreadsheets/d/ ... 1426712182

If you want edit access to do some testing yourself then just let me know. I went through and tested the unlicensed games on a number of cores to see what worked and what did not, assuming a lot of these may have never been checked. Some fixed made their way into cores (like this one) so that was good,

Re: Unlicensed Gameboy Game Support

Posted: Tue Feb 08, 2022 5:02 am
by paulbnl
I am working on adding a setting for unknown mappers with a few different mapper choices including ones for Mani 4in1 and Wisdom Tree games. For example Captain Knick-Knack works with MBC1.

These unlicensed games ususally don't set the header correctly and it is difficult to detect them.

Games like La Sa Ma Chuan Qi - Story of Lasama (Unlicensed) [Raw Dump] use an unknown mapper but there is a fixed dump available that should work.

Re: Unlicensed Gameboy Game Support

Posted: Wed Feb 09, 2022 7:31 pm
by KremlingKuthroat19
Thanks for responding @paulbnl! It’s great that you’re looking into a solution for this. Many thanks!

Is it possible to make auto-detection work for these unlicensed games or is it too difficult w/out toggling a setting in the OSD? If it’s too difficult, is it possible to make unique file extensions so the core can auto-recognize the mapper like how the old Atari 2600 core handled it before it was retired?

Re: Unlicensed Gameboy Game Support

Posted: Thu Feb 10, 2022 4:26 pm
by paulbnl
I think using file extensions is the way to go. I have looked into the list of unlicensed games that Moondandy posted and only Mani 4-in-1 DMG 601 and the Wisdom Tree games need special treatment because detection is difficult. Some just need to run in GBC mode and others work by defaulting to MBC1 when the ROM is set to No mapper and size is larger than 32KB.

8-in-1 (Sachen) [C].gb - Is GBC rom. Unknown Sachen mapper
Beast Fighter (Asia) (Unl) [ b].gb - Bad dump?
Beast Fighter (Asia) (Unl).gb - Seems to work fine. CRC: 0BC7A3C6
Captain Knick-Knack (Sachen) [!].gb - No mapper set. Works with MBC1
Densha de Go! (Unl) [!].gb - Is a pirated GBC game. Works in GBC mode.
Exodus - Journey to the Promised Land (USA) (Unl).gb - Works with Wisdom Tree mapper
GameShark (USA) (Unl).gb - Cheat device
Joshua & the Battle of Jericho (USA) (Unl).gb - Works with Wisdom Tree mapper
King James Bible (USA) (Unl).gb - Wisdom Tree mapper. Has issues
la sa ma chuan qi - story of lasama (unlicensed) [raw dump] [trimmed].gb - Works with Fixed dump
La Sa Ma Chuan Qi - Story of Lasama (Unlicensed) [Raw Dump].gb - Works with Fixed dump
Mani 4-in-1 (Unl) [!].gb - Header is set to MBC3 but requires 32K bank mapper
NIV Bible & the 20 Lost Levels of Joshua (USA) (Unl).gb - Wisdom Tree mapper. Has issues
Pocket GT 2005 (Unl).gb - Is a pirated GBC game. Works in GBC mode.
Pokemon Red-Blue 2-in-1 (Unl) [ S].gb - Unknown mapper
SMARTCOM (Europe) (Unl).gb - PDA cart. Furrtek released a patched rom for emulators
Sonic 3D Blast 5 (Unl).gb - Unknown mapper set to EA. Works with MBC1
Spiritual Warfare (USA) (Unl).gb - Works with Wisdom Tree mapper

Re: Unlicensed Gameboy Game Support

Posted: Thu May 05, 2022 11:36 pm
by Moondandy
This was mentioned on the discord today, someone has dumped some Taiwanese games from the early 2000s that had never been dumped before and figured out the mapper:

https://twitter.com/taizou_hori/status/ ... VWxXUUOqeA

https://hhug.me/?post=113

Re: Unlicensed Gameboy Game Support

Posted: Fri May 06, 2022 12:00 am
by ubersaurus
These three are pretty cool! They're three fighting games from Vast Fame, a Taiwanese developer. Queen Fighter 2000, Super Fighters 2001 Alpha, and Soul Falchion. These are sort of built on the bones of the Nettou series of fighting games for Game Boy with some cues taken from SNK's Neo Geo Pocket fighting game output The guy who dumped them basically reverse engineered the mapper for a Game Boy emulator he's put together - he says he's planning on doing a writeup at some point as the only documentation is the emulator source code at the moment.

His post also indicates that there are other Vast Fame games from this era that, seemingly, run on the same mapper, so it's probably worthwhile to try and support it for both the regular GB core and the GB2P variant.

Re: Unlicensed Gameboy Game Support

Posted: Mon May 16, 2022 7:30 pm
by Moondandy
Thought it good to post this here, something that came up on the Discord the other week. The unreleased Workboy peripheral that was found awhile back (and the corresponding software was in the gigaleak) has had support added to the Sameboy emulator.

https://sameboy.github.io/posts/release-0.14

For anyone wondering what this is, here is a video explaining here. It was an add on with a keyboard that turned your Gameboy into a PDA.

2020-12-28-image-18-j_1100.jpg
2020-12-28-image-18-j_1100.jpg (46.73 KiB) Viewed 20082 times

https://www.youtube.com/watch?v=SZcrPM-jDqY

A ridiculously obscure peripheral, and not the most exciting software, but if it was possible to add support to Sameboy it would be really cool to have support on MiSTer one day, especially since many people have a keyboard set up to their MiSTer.

Re: Unlicensed Gameboy Game Support

Posted: Mon May 16, 2022 7:49 pm
by FPGA64
And as was discussed on Discord the keyboard has part of the program it runs, so a sinple keyboard would not work

Re: Unlicensed Gameboy Game Support

Posted: Mon May 16, 2022 8:17 pm
by Moondandy
No, but presumably if people got it working in Sameboy this part has also been dumped and is available to be implemented. Unless I am missing something?

Re: Unlicensed Gameboy Game Support

Posted: Wed Jun 01, 2022 12:55 pm
by mathieulh
Wouldn't it be much easier to just patch out the Nintendo logo check from the Game Boy BIOS?

Re: Unlicensed Gameboy Game Support

Posted: Tue Aug 09, 2022 3:12 pm
by Moondandy
Just seen the new update, does anyone have any more info on this:

-Wisdom Tree & Mani 161 mappers

?

Re: Unlicensed Gameboy Game Support

Posted: Sat Aug 13, 2022 8:48 am
by paulbnl
What kind of info do you want about that?

Those mappers need to be manually selected for them to work.

Re: Unlicensed Gameboy Game Support

Posted: Mon Aug 22, 2022 4:10 pm
by KremlingKuthroat19
paulbnl wrote: Sat Aug 13, 2022 8:48 am What kind of info do you want about that?

Those mappers need to be manually selected for them to work.
Thanks for the updated mappers @paulbnl! They work brilliantly. Is it possible to make them autoload per game? Would you have to change the extension name or could it be done automatically via the core if implemented?