Target

From MSX Game Library

Revision as of 13:38, 4 March 2022 by Aoineko (talk | contribs) (Setup)

Basic program

MSX-DOS program

Plain ROM program

Mapped ROM program

Setup

You can create program using one of this supported ROM mappers:

  • ASCII-8: 8KB segments for a total to 64KB to 2MB,
  • ASCII-16: 16KB segments for a total to 64KB to 4MB,
  • Konami: 8KB segments for a total to 64KB to 2MB,
  • Konami SCC: 8KB segments for a total to 64KB to 2MB.

In your build.bat, chose as target on of the following type: ROM_ASCII8, ROM_ASCII16, ROM_KONAMI, ROM_KONAMI_SCC. You can specify the ROM size (in KB) in the ROMSize variable. Default value is 128 (KB). Any multiple value of the mapper's segments size is valid, but I recommend using powers of 2 values (64, 128, 256, etc.) to help emulators to autodetect the right mapper.

Some Build Tool configuration examples:

  REM -- 128KB ASCII-8 mapped-ROM
  set target=ROM_ASCII8

  REM -- 4MB ASCII-16 mapped-ROM
  set target=ROM_ASCII16
  set ROMSize=4096

  REM -- 512KB Konami SCC mapped-ROM
  set target=ROM_KONAMI_SCC
  set ROMSize=512

See s_vgm sample for a concrete use case.

Data

The first 32KB of the mapped-ROM is build like a 32KB plain ROM. This represents the first 4 segments for an 8KB mapper and the first 2 for a 16KB mapper.

The following segments are added to the ROM by the Build Tool by searching for files with a particular nomenclature: <project name>_s<segment number>_b<bank where the segment will be placed>