Hi people,
I made a sample .msx file, including all the ideas
presented until now. Please download it at:
http://www.lsi.usp.br/~ricardo/penguin.msx
I downloaded the file using Netscape Navigator 4.73
and Internet Explorer 5.00, in the Windows 95 environment.
Netscape tried to open the file as an ASCII text, and Explorer
recognized an unknown extension and asked me if I wanted to
save it to file (cripes, at least once Explorer made the service
better than Netscape). It seems we will need Maarten suggestion
about using .msx.zip extensions.
I will paste here the msxgame.ini from inside the
penguin.msx file, it already has the generic mapper description.
Ricardo Bittencourt
-- start of msxgame.ini
-- Games are numbered in order of submission
-- to the mantainer of .msx database
-- so "1" means Penguin Adventure and "0" means original media
GameID=1.0
-- name is following Maarten syntax
-- japanese name uses Shift-JIS
Name[us]="Penguin Adventure"
Name[jp]="²å¤Ahx`["
Manufacturer[us]="Konami"
Manufacturer[jp]="Ri~"
-- by not specifying [lang] in a field,
-- we assume the default is [us]
Year="1986"
Machine="MSX"
-- this next field could use a string also,
-- for instance we could adopt
-- Gametype="Cartridge"
Gametype=0
Screenshot=penguin.png
ROM=penguin.rom
-- This is the generic mapper algorithm
-- this code snippet would be available in
-- the .msx file format home page
-- .msx authors would just copy+paste this code
-- inside theirs msxgame.ini
-- select a banksize with 8kb
Banksize=8
-- this means we have the following banks
-- 0 = 0000-1FFF
-- 1 = 2000-3FFF
-- 2 = 4000-5FFF
-- 3 = 6000-7FFF
-- 4 = 8000-9FFF
-- 5 = A000-BFFF
-- 6 = C000-DFFF
-- 7 = E000-FFFF
-- Let's now select the mapper registers
-- the following sentence means
-- "there is a register at address 6000,
-- and this register select the bank number 3"
Register[6000]=3
-- same goes to other registers
Register[8000]=4
Register[A000]=5
-- if we wanted to define multiple registers,
-- like in fmsx mapper 3 (konami with scc)
-- we could make Register[5000-57FF]=2
-- Now we need to initialize the start banks
-- the following sentence means
-- "bank number 2 get initialized with the
-- first 8kb of rom image"
Initial[2]=0
Initial[3]=1
Initial[4]=2
Initial[5]=3
-- the game Gall Force has unusual initializing,
-- it would use something like:
-- Initial[2]=0
-- Initial[3]=1
-- Initial[4]=0
-- Initial[5]=1
-- Comments, cheats, tips, manual scans and so on
-- are available in some .msx database over the web
-- The emulator could use the GameID to search for it
-- so they will not be included here in the msxgame.ini
-- the author of the msxgame.ini can sign his work
Author="Ricardo Bittencourt"
-- end of msxgame.ini
--
For info, see http://www.stack.nl/~wynke/MSX/listinfo.html