#                                            #
# Alien vs. Predator (US 940520) 	     #
#                                            #

[general]

GAMENAME    " Alien vs. Predator (USA 940520) "
DIRECTORY   AVSP
CPSTYPE     CPS2
DATE		1994

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

0x000000  0x1FFFFF  MAINROM
0xff0000  0xfFFFFF  MAINRAM

[dataReadByteRegions]

0x000000  0x1FFFFF  MAINROM
0x400000  0x40000b  OBJECTOUTPUT
0x618000  0x619fff  QSOUND1 
0x660000  0x663fff  EXTRARAM 6
0x664000  0x664001  EXTRARAM 7
0x708000  0x709fff  CPS2SPRITERAM # cps2 sprite ram #
0x70a000  0x70bfff  CPS2SPRITERAM # cps2 sprite ram #
0x70c000  0x70dfff  CPS2SPRITERAM # cps2 sprite ram #
0x70e000  0x70ffff  CPS2SPRITERAM # cps2 sprite ram #
0x800100  0x8001ff  VIDEOPORTS
0x804000  0x804001  INPUTPORT1
0x804010  0x804011  INPUTPORT2
0x804020  0x804021  EEPROM
0x804030  0x804031  MASTERVOLUME
0x804100  0x8041ff  VIDEOPORTS 
0x90c000  0x90dfff  PALETTERAM
0x90e000  0x90e7ff  ROWSCROLLRAM
0x900000  0x92ffff  VIDEORAM
0xff0000  0xfFFFFF  MAINRAM

[dataReadWordRegions]

0x000000  0x1FFFFF  MAINROM
0x400000  0x40000b  OBJECTOUTPUT
0x618000  0x619fff  QSOUND1
0x660000  0x663fff  EXTRARAM 6
0x664000  0x664001  EXTRARAM 7
0x708000  0x709fff  CPS2SPRITERAM # cps2 sprite ram #
0x70a000  0x70bfff  CPS2SPRITERAM # cps2 sprite ram #
0x70c000  0x70dfff  CPS2SPRITERAM # cps2 sprite ram #
0x70e000  0x70ffff  CPS2SPRITERAM # cps2 sprite ram #
0x800100  0x8001ff  VIDEOPORTS
0x804000  0x804001  INPUTPORT1
0x804010  0x804011  INPUTPORT2
0x804020  0x804021  EEPROM
0x804030  0x804031  MASTERVOLUME
0x804100  0x8041ff  VIDEOPORTS 
0x90c000  0x90dfff  PALETTERAM
0x90e000  0x90e7ff  ROWSCROLLRAM
0x900000  0x92ffff  VIDEORAM
0xff0000  0xfFFFFF  MAINRAM


[dataWriteByteRegions]

0x400000  0x40000b  OBJECTOUTPUT
0x618000  0x619fff  QSOUND1
0x660000  0x663fff  EXTRARAM 6
0x664000  0x664001  EXTRARAM 7
0x708000  0x709fff  CPS2SPRITERAM # cps2 sprite ram #
0x70a000  0x70bfff  CPS2SPRITERAM # cps2 sprite ram #
0x70c000  0x70dfff  CPS2SPRITERAM # cps2 sprite ram #
0x70e000  0x70ffff  CPS2SPRITERAM # cps2 sprite ram #
0x800100  0x8001ff  VIDEOPORTS
0x804040  0x804041  EEPROM
0x8040a0  0x8040a1  EXTRARAM 1 # Unknown (reset once on startup) #
0x8040e0  0x8040e1  EXTRARAM 4 # toggle bit 1 #
0x804100  0x8041ff  VIDEOPORTS
0x90c000  0x90dfff  PALETTERAM
0x90e000  0x90e7ff  ROWSCROLLRAM
0x900000  0x92ffff  VIDEORAM
0xff0000  0xfFFFFF  MAINRAM

[dataWriteWordRegions]

0x400000  0x40000b  OBJECTOUTPUT
0x618000  0x619fff  QSOUND1
0x660000  0x663fff  EXTRARAM 6
0x664000  0x664001  EXTRARAM 7
0x708000  0x709fff  CPS2SPRITERAM # cps2 sprite ram #
0x70a000  0x70bfff  CPS2SPRITERAM # cps2 sprite ram #
0x70c000  0x70dfff  CPS2SPRITERAM # cps2 sprite ram #
0x70e000  0x70ffff  CPS2SPRITERAM # cps2 sprite ram #
0x800100  0x8001ff  VIDEOPORTS
0x804040  0x804041  EEPROM
0x8040a0  0x8040a1  EXTRARAM 1 # Unknown (reset once on startup) #
0x8040e0  0x8040e1  EXTRARAM 4 # toggle bit 1 #
0x804100  0x8041ff  VIDEOPORTS 
0x90c000  0x90dfff  PALETTERAM
0x90e000  0x90e7ff  ROWSCROLLRAM
0x900000  0x92ffff  VIDEORAM
0xff0000  0xfFFFFF  MAINRAM

#            #
# Protection #
#            #
[protection]

# If port(PORT) is read, returns (VALUE) #
PORT    0xff
VALUE   0xffff

#                      #
# Graphics information #
#                      #
[graphics]

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

# Path                     Size     Where    #
LOAD8X avp.13 		   0x200000 0x000000
LOAD8X avp.15 		   0x200000 0x000002 
LOAD8X avp.17              0x200000 0x000004 
LOAD8X avp.19              0x200000 0x000006 
LOAD8X avp.14 		   0x200000 0x800000
LOAD8X avp.16 		   0x200000 0x800002 
LOAD8X avp.18              0x200000 0x800004 
LOAD8X avp.20              0x200000 0x800006 


#               Number of tiles Base addr   Decode info #
DECODECHARS     0x5000          0x800000    0x000000
DECODESPRITES   0x14000         0x000000    0x000000 0x000000
DECODESCROLL2   0x4000          0x800000    0x000000 0x000000
DECODESCROLL3   0x1000          0xa00000    0x800000 0x400000 


#                     #
# program information #
#                     #
[program]

ROMSIZE 0x200000

# Type of load 	path 1  	path 2            Size    Location #
LOADROM16SWAPXOR  avpu.03d	avpux.03d       	0x80000 0x000000
LOADROM16SWAPXOR  avpu.04d	avpux.04d       	0x80000 0x080000
LOADROM16SWAP  	avp.05d         			0x80000 0x100000
LOADROM16SWAP  	avp.06          			0x80000 0x180000



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

LAYERCONTROL    0x66                # Layer control port                     #
SCROLL1BASECODE 0x0000              # scroll1 tile base                      #
SCROLL1CODEMASK 0x5000              # scroll1 tile mask(=number of tiles)    #
SCROLL2BASECODE 0x0000              # scroll2 tile base                      #
SCROLL2CODEMASK 0x4000              # scroll2 tile mask(=number of tiles)    #
SCROLL3BASECODE 0x0000              # scroll3 tile base                      #
SCROLL3CODEMASK 0x1000              # scroll3 tile mask(=number of tiles)    #
PRIORITYMASKS   0x68 0x6a 0x6c 0x6e # the ports where to read the priorities #
LAYERENABLE 0x02 0x04 0x08 0x30
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]
avp.01

[samples]
avp.11 0x200000
avp.12 0x200000

[End]
 
[verifyRoms]
avp.13	0x8f8b5ae4
avp.15	0xb00280df
avp.17	0x94403195
avp.19	0xe1981245
avp.14	0xebba093e
avp.16	0xfb228297
avp.18	0xd92b6fc0
avp.20	0xf90baa21
avpu.03d	0x42757950
avpux.03d	0xd5b01046
avpu.04d	0x5abcdee6
avpux.04d	0x94bd7603
avp.05d	0xfbfb5d7a
avp.06	0x190b817f
[End]
