and this !!
I have just created a ROM version of Muhonmourn3. It was necessary to move the game to RAM because the game uses contiguous areas to store data (and some areas beyond 0xd400 too).
Additionally, it was required another routine to switch back page 1 from the Game ROM slot to the same slot of the BIOS, otherwise the game ran erratically (slowed down and missing time counter and player counters).
The ROM->RAM loader may be quite naive. If someone more experienced with slots switching can take a look I will appreciate the help. Essentially it does the following steps:
- Copy patch code (from page 1) to RAM segment E000-E1F0
- Copy game code (from page 1) to RAM segment c000-d400
- Copy game code (from page 2) to RAM segment 8000-bfff using RDSLT
- copy page switch code (from page 1) to RAM segment E1F0
- switch page 1 to the same slot that is BIOS ROM
- jump to game start at RAM 0x915f
The patch was modified to change the text on the screen accordingly with the Ninja Tap presence:
The whole repository can be found at my github page, and here's the link for downloading the ROM image.
There's still some room for improvements like:
- A loading screen (the game takes seconds to shadow the page 2 to RAM
- Detect if the machine has enough RAM to load the game
.
It would be nice to define a key to quit the game because I accidentally pressed some buttons or moved the controller and the game started without me being able to play. This must have distorted the self-detection of the controllers.
Detect if the machine has enough RAM to load the game
I tried on Casio PV-7/16 and National emulated by OpenMSX. I get no message.
The controller detection is performed on the fly during the game. You may probable have selected CPU to control all players.
The loading screen and RAM size detection are still WIP.
I understood what I did. The joystick was down without me realizing so all players were CPU. In this case, you have to wait until the end of the game or turn the computer off and on again to be able to play.
It would be convenient if we could stop the game by pressing a button when all players are the CPU.
Added a Splash Screen
and a No RAM screen
further details for the curious people (link)
great job !!
I am trying to figure out the schematics of the Ninja Tap by analyzing the assembly code.
Sent you an email, no pressure to answer.
Hi @swami, I haven't received the email.
I found two games that would be great to play with the Ninja Tap.
Rock'n Roller and Sideview Attackers.