#                                     #
# Magic Sword driver                  #
#                                     #
#                                     #

#                      #
# The name of the game #
#                      #
[general]

GAMENAME    " Magic Sword "
DIRECTORY   MSWORD
CPSTYPE     CPS1
DATE		1990

#                 #
# The memory map  #
#                 #
[programRegions]

0x000000  0x0FFFFF  MAINROM
0xff0000  0xfFFFFF  MAINRAM

[dataReadByteRegions]

0x000000  0x0FFFFF  MAINROM
0x800000  0x800001  INPUTPORT2
0x800010  0x800011  INPUTPORT2
0x800018  0x80001f  INPUTPORT1
0x800100  0x8001ff  VIDEOPORTS
0x90c000  0x90ffff  PALETTERAM
0x910000  0x9107ff  ROWSCROLLRAM
0x900000  0x92ffff  VIDEORAM
0xf1c006  0xf1c007  EEPROM
0xff0000  0xfFFFFF  MAINRAM
0x860000  0x8603ff  EXTRARAM  1
0x915800  0x930000  EXTRARAM  2

[dataReadWordRegions]

0x000000  0x0FFFFF  MAINROM
0x800000  0x800001  INPUTPORT2
0x800010  0x800011  INPUTPORT2
0x800018  0x80001f  INPUTPORT1
0x800100  0x8001ff  VIDEOPORTS
0x90c000  0x90ffff  PALETTERAM
0x910000  0x9107ff  ROWSCROLLRAM
0x900000  0x92ffff  VIDEORAM
0xf1c006  0xf1c007  EEPROM
0xff0000  0xfFFFFF  MAINRAM
0x860000  0x8603ff  EXTRARAM  1
0x915800  0x930000  EXTRARAM  2

[dataWriteByteRegions]

0x800100  0x8001ff  VIDEOPORTS
0x90c000  0x90ffff  PALETTERAM
0x910000  0x9107ff  ROWSCROLLRAM
0x900000  0x92ffff  VIDEORAM
0xf1c006  0xf1c007  EEPROM
0xff0000  0xfFFFFF  MAINRAM
0x860000  0x8603ff  EXTRARAM 1
0x915800  0x930000  EXTRARAM 2

[dataWriteWordRegions]

0x800100  0x8001ff  VIDEOPORTS
0x90c000  0x90ffff  PALETTERAM
0x910000  0x9107ff  ROWSCROLLRAM
0x900000  0x92ffff  VIDEORAM
0xf1c006  0xf1c007  EEPROM
0xff0000  0xfFFFFF  MAINRAM
0x860000  0x8603ff  EXTRARAM 1
0x915800  0x930000  EXTRARAM 2

#                                         #
# Protection                              #
#                                         #
[protection]

# If port(PORT) is read, returns (VALUE) #
PORT    0x6e
VALUE   0x0403

#                      #
# Graphics information #
#                      #
[graphics]

# the total size of the graphics roms #
TOTAL 0x200000

# Path                     Size    Where  #
LOAD8 ms_gfx1.rom 0x80000 0x000000
LOAD8 ms_gfx5.rom 0x80000 0x080000
LOAD8 ms_gfx3.rom 0x80000 0x100000
LOAD8 ms_gfx7.rom 0x80000 0x180000

#               Number of tiles Base addr   Decode info #
DECODECHARS     0x1000          0x0c0000    0x100000
DECODESPRITES   0x2000          0x000000    0x100000 0x080000
DECODESCROLL2   0x1800          0x040000    0x100000 0x080000
DECODESCROLL3   0x0400          0x060000    0x100000 0x080000 


#                     #
# program information #
#                     #
[program]

ROMSIZE 0x100000

# Type of load path 1                    path 2                       Size    where #
LOADROMEVENODD mse_30.rom mse_35.rom   0x20000 0x00000
LOADROMEVENODD mse_31.rom mse_36.rom   0x20000 0x40000
LOADROM16SWAP  ms_32.rom               0x80000 0x80000



#                        #
# The game configuration #
#                        #
[configuration]

LAYERCONTROL    0x62                # Layer control port                     #
SCROLL1BASECODE 0x0000              # scroll1 tile base                      #
SCROLL1CODEMASK 0x1000              # scroll1 tile mask(=number of tiles)    #
SCROLL2BASECODE 0x2000              # scroll2 tile base                      #
SCROLL2CODEMASK 0x1800              # scroll2 tile mask(=number of tiles)    #
SCROLL3BASECODE 0x0000              # scroll3 tile base                      #
SCROLL3CODEMASK 0x0400              # scroll3 tile mask(=number of tiles)    #
PRIORITYMASKS   0x64 0x66 0x68 0x6a # the ports where to read the priorities #
LAYERENABLE  0x20 0x06 0x06 0x00
FORCESCROLLPRIORITY 0xff            # Hack to fix some priority problems btw #
                                    # scroll2 and 3. The folowing values are #
                                    # valid:                                 #
                                    # 0xff: no hack                          #
                                    # 0x01: scroll3 first. Scroll2 after.    #
                                    # 0x00: scroll2 first  Scroll3 after.    #
FORCESCROLL2ON 1                    # 0=no 1=yes #

[z80]
TOTAL 0x10000
LOAD8 ms_9.ROM 0x10000 0x000000 # main rom and banks #

[samples]
TOTAL 0x40000
LOAD8 ms_18.ROM  0x20000 0x00000
LOAD8 ms_19.ROM  0x20000 0x20000


[End]
[verifyRoms]
ms_gfx1.rom	0x0d2bbe00
ms_gfx5.rom	0xc00fe7e2
ms_gfx3.rom	0x3a1a5bf4
ms_gfx7.rom	0x4ccacac5
mse_30.rom	0x03fc8dbc
mse_35.rom	0xd5bf66cd
mse_31.rom	0x30332bcf
mse_36.rom	0x8f7d6ce9
ms_32.rom	0x2475ddfc
[End]
[verifyRoms]
ms_gfx1.rom	0x0d2bbe00
ms_gfx5.rom	0xc00fe7e2
ms_gfx3.rom	0x3a1a5bf4
ms_gfx7.rom	0x4ccacac5
mse_30.rom	0x03fc8dbc
mse_35.rom	0xd5bf66cd
mse_31.rom	0x30332bcf
mse_36.rom	0x8f7d6ce9
ms_32.rom	0x2475ddfc
[End]
