Konami RC-code Locations 
Saturday, October 15, 2016, 13:46

Introduction


A long time ago someone asked me if I knew how Konami embedded the RC-codes their games. At the time I noticed 2 methods which are also used by many of the combination detection code. The Konami Game Master also uses one of these methods to detect cartridges that were released after the Konami Game Master. Many of the smaller games are detected using a different mehod.

Konami was a big fan of the BCD (Binary Coded Decimal) notation. In this notation the letters A-F are never used. This choice was made to speed up the displaying of regularly updated values, such as scores.

This article explains the methods as seen from the different ROM sizes.

16K ROM modules


The last 2 bytes of the ROM (addresses 7FFEh and 7FFFh) contain the RC-code in BCD, followed by 170 (0AAh). Testing this from other Konami titles, usually the last 6 bytes (7FFAh) are tested to increase the improbability of false positives.

The Konami Game Master detects these cartridges by adding the values of the 128 bytes starting from 5000h, which will be matched with a table directing to the actual Game Master data.

32K ROM modules


The last 2 bytes of the ROM (addresses 0BFFEh and 0BFFFh) contain the RC-code in BCD, followed by 170 (0AAh), just like in the 16K ROM modules. Some Konami titles use this method to test the last 6 bytes (0BFFAh) to increase the improbability of false positives. Other Konami titles use the second method.

The second method is split up into 2 formats for the Konami Game Master.

With the absolute format. From address 4010h the format is as follows:

- The ASCII value of the letter "A" (41h)
- The ASCII value of the letter "B" (42h)
- The value 7 (07h)
- The last 2 digits of the RC-code in BCD

Following this are 17 bytes of the Game Master data. These include addresses for the number of lives, stage number, the high score and the players scores. The exact explanation of this table goes beyond the scope of this article.

With the relative format. From address 4010h the format is as follows:

- The ASCII value of the letter "C" (43h)
- The ASCII value of the letter "D" (44h)
- The value 7 (07h)
- The last 2 digits of the RC-code in BCD

Following is a byte for option flags followed by addresses and maximum value you can input for that option. The exact explanation of this table goes beyond the scope of this article.

MegaROM modules


There are 3 games known which use the 32K ROM module method with the relative format: Nemesis or Gradius, Penguin Adventure and Ganbare Goemon. Also, some Konami titles had extra zeroes in that sequence (for coders: DW in stead of DB): Vampire Killer and Pennant Race. Finally some titles use the relative format with the letters "E" and "F" in stead of "C" and "D": Shalom and Pennant Race 2. All other titles only use the relative format as described in the 32K ROM modules section.

The Konami Game Master 2 has its own detection. Check on address 4010h for "Y" (59h) and "Z" (5Ah). This allows Konami titles to use the built-in SRAM disk.

add comment (4798 views)   |  permalink
MIA: Multi IPS Archive 
Sunday, February 28, 2016, 22:21

Introducing a new file format


Software and games often come in multiple files. With current file copying methods the order may differ from the original. Creating for example a translation on file based games doesn't really allow a way for one simple patch when file copies are done. Of course it's possible to separately patch each file that needs to be patched for the translation.

There must be a way to do this in a cleaner way. With the Multi IPS Archive (MIA for short) it's possible to patch a set of files belonging to the same software or game from one single file. The filename of the target file is stored in the archive so the application tool knows on which file to apply the patch data following it. The tool to apply a MIA file onto a set of patches on MSX is MIAPPLY.

To create a Multi IPS Archive, for now, tniASM 1.0 is required. The other files and examples are included for creation of MIA files. A command line tool for modern platforms will be released later.

With the introduction of the Multi IPS Archive and its application tool MIAPPLY for MSX, some MIA files are available:
  • Psycho World English translation
  • Psycho World status area tweaks
  • Parallel Dream crash fix
  • Knightmare Gold R3 fixes
  • Starship Rendezvous uncensored
  • Starship Rendezvous trainer
  • Starship Rendezvous title fix

The tools are available on MSX Banzai! and BiFi's Home Page. The tools and MIA files are available on MSX IPS Patch Archive.
add comment (4725 views)   |  permalink   |  related link
PSQTOOLS updated 
Sunday, April 12, 2015, 12:37
Today I released an update for PSQTOOLS, the toolset for the PlaySoniq module.

Changes:
  • fixed: PSQLOAD, fixes a minor bug to ensure the correct data is written to the PlaySoniq module
  • fixed: SMSLOAD, allow simplified keyboard pad overlay
  • new: PSG2SCC, enable or disable the PlaySoniq SCC to join the MSX PSG. Optionally waves can be written to the SCC
  • BLAFCONV converts SCC Blaffer and SCC Blaffer NT wavekits to use with PSG2SCC

add comment (9081 views)   |  permalink   |  related link
PSQTOOLS updated 
Sunday, March 1, 2015, 18:22
Today I released an update for PSQTOOLS, the toolset for the PlaySoniq module.

Changes:
  • new (since 19 January 2015): PSQSAVE and PSQLOAD, save and load PlaySoniq module settings
  • new: SMSLOAD, load and run Sega Master System (with optional Sega Master System savegame data), SG-1000 and SC-3000 ROM images. Optionally the SC-1000 and SC-3000 ROM images can be adapted to display on the MSX VDP
  • new: SMSSAVE, save Sega Master System savegame data

add comment (3771 views)   |  permalink   |  related link
MSX IPS Patch Archive updated 
Tuesday, February 3, 2015, 12:07
Today I did some work on the archive. The following changes were done:
  • updated Metal Gear 2 Solid Snake English translation patches to version 1.4
  • fixed very old patch error in the Hai No Majutsushi DA converter patches
  • location-tweaked the difficulty fix patch for the Aleste 2 Demodisk
  • fixed old patch error in the Woomb Golvellius MSX2 and Xak 1 translations
  • fixed old patch error in Aleste 2 difficulty fix
  • added Aleste 2 intro demo fix to difficulty fix patch
  • added Metal Gear 2 Solid Snake slot fix patch, the game will work from any slot without limitations

add comment (5464 views)   |  permalink   |  related link

<<First <Back | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | Next> Last>>