DalSoRi R2.0 toolset released 
Sunday, December 31, 2017, 17:41
Today I released the start of a toolset for the DalSoRi R2.0 OPL4 extension.

Changes:
  • new: DSR2SET, configure every setting in the DalSoRi R2.0
  • new: DSR2SROM, load a customised Sample ROM in SRAM

The toolset is released as TNI product.
add comment (823 views)   |  permalink   |  related link
Multi IPS Archive tools version 1.1 released 
Friday, July 21, 2017, 11:09
A new version of the Multi IPS Archive tools have been released. Version 1.1 comes with an addition to the MIA format as well:
  • added a disk switch feature
  • added a rename feature

The disk switch feature will allow applying patches on multi-disk file based software. MIAPPLY will display which disk to insert and wait for a key press. The rename feature should preferably only be used to change filenames that are part of a translation and which are not hardcoded in the software.

Also the MIA format specification has been given an update in the existing part. More information regarding this is available in the package to create MIA files.

The tools are available on MSX Banzai!, BiFi's Home Page and MSX IPS Patch Archive.
add comment (5060 views)   |  permalink   |  related link
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 (5021 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 (4895 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 (9285 views)   |  permalink   |  related link

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