Ninja tap

Page 17/17
10 | 11 | 12 | 13 | 14 | 15 | 16 |

By Bastion Rebel

Expert (92)

Bastion Rebel's picture

12-11-2022, 08:40

and this !!

By Danjovic

Champion (321)

Danjovic's picture

13-11-2022, 13:19

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:

  1. Copy patch code (from page 1) to RAM segment E000-E1F0
  2. Copy game code (from page 1) to RAM segment c000-d400
  3. Copy game code (from page 2) to RAM segment 8000-bfff using RDSLT
  4. copy page switch code (from page 1) to RAM segment E1F0
  5. switch page 1 to the same slot that is BIOS ROM
  6. 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

.

By gdx

Enlighted (6001)

gdx's picture

13-11-2022, 14:54

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.

Danjovic wrote:

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.

By Danjovic

Champion (321)

Danjovic's picture

14-11-2022, 01:13

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.

By gdx

Enlighted (6001)

gdx's picture

14-11-2022, 09:07

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.

By Danjovic

Champion (321)

Danjovic's picture

15-11-2022, 04:20

Added a Splash Screen

and a No RAM screen

further details for the curious people (link)

By Bastion Rebel

Expert (92)

Bastion Rebel's picture

15-11-2022, 06:53

great job !!

By Swami

Expert (90)

Swami's picture

16-11-2022, 22:39

Danjovic wrote:

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.

By Danjovic

Champion (321)

Danjovic's picture

17-11-2022, 21:11

Hi @swami, I haven't received the email.

Page 17/17
10 | 11 | 12 | 13 | 14 | 15 | 16 |