summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/galpani2.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/galpani2.c')
-rw-r--r--src/mame/drivers/galpani2.c44
1 files changed, 24 insertions, 20 deletions
diff --git a/src/mame/drivers/galpani2.c b/src/mame/drivers/galpani2.c
index cfc02cd65c8..7222ae6833a 100644
--- a/src/mame/drivers/galpani2.c
+++ b/src/mame/drivers/galpani2.c
@@ -337,21 +337,23 @@ static ADDRESS_MAP_START( galpani2_mem1, AS_PROGRAM, 16, galpani2_state )
AM_RANGE(0x300000, 0x301fff) AM_RAM // ?
AM_RANGE(0x302000, 0x303fff) AM_RAM AM_SHARE("spriteram") // Sprites
AM_RANGE(0x304000, 0x30401f) AM_DEVREADWRITE("kan_spr", kaneko16_sprite_device, kaneko16_sprites_regs_r, kaneko16_sprites_regs_w)
- AM_RANGE(0x308000, 0x308001) AM_WRITENOP // ? 0 at startup
- AM_RANGE(0x30c000, 0x30c001) AM_WRITENOP // ? hblank effect ?
- AM_RANGE(0x310000, 0x3101ff) AM_RAM_WRITE(galpani2_palette_0_w) AM_SHARE("palette.0") // ?
+// AM_RANGE(0x308000, 0x308001) AM_WRITENOP // ? 0 at startup
+// AM_RANGE(0x30c000, 0x30c001) AM_WRITENOP // ? hblank effect ?
+ AM_RANGE(0x310000, 0x3101ff) AM_RAM_DEVWRITE("bg8palette", palette_device, write) AM_SHARE("bg8palette") // ?
AM_RANGE(0x314000, 0x314001) AM_WRITENOP // ? flip backgrounds ?
AM_RANGE(0x318000, 0x318001) AM_READWRITE(galpani2_eeprom_r, galpani2_eeprom_w) // EEPROM
AM_RANGE(0x380000, 0x387fff) AM_RAM // Palette?
AM_RANGE(0x388000, 0x38ffff) AM_RAM_DEVWRITE("palette", palette_device, write) AM_SHARE("palette") // Palette
- AM_RANGE(0x390000, 0x3901ff) AM_WRITENOP // ? at startup of service mode
+// AM_RANGE(0x390000, 0x3901ff) AM_WRITENOP // ? at startup of service mode
- AM_RANGE(0x400000, 0x43ffff) AM_RAM_WRITE(galpani2_bg8_0_w) AM_SHARE("bg8.0") // Background 0
+ AM_RANGE(0x400000, 0x43ffff) AM_RAM AM_SHARE("bg8.0") // Background 0
AM_RANGE(0x440000, 0x440001) AM_RAM AM_SHARE("bg8_scrollx.0") // Background 0 Scroll X
AM_RANGE(0x480000, 0x480001) AM_RAM AM_SHARE("bg8_scrolly.0") // Background 0 Scroll Y
- AM_RANGE(0x4c0000, 0x4c0001) AM_WRITENOP // ? 0 at startup only
- AM_RANGE(0x500000, 0x53ffff) AM_RAM_WRITE(galpani2_bg8_1_w) AM_SHARE("bg8.1") // Background 1
+// AM_RANGE(0x4c0000, 0x4c0001) AM_WRITENOP // ? 0 at startup only
+ AM_RANGE(0x500000, 0x53ffff) AM_RAM AM_SHARE("bg8.1") // Background 1
AM_RANGE(0x540000, 0x540001) AM_RAM AM_SHARE("bg8_scrollx.1") // Background 1 Scroll X
+ AM_RANGE(0x580000, 0x580001) AM_RAM AM_SHARE("bg8_scrolly.1") // Background 1 Scroll Y
+// AM_RANGE(0x5c0000, 0x5c0001) AM_WRITENOP // ? 0 at startup only
AM_RANGE(0x540572, 0x540573) AM_READNOP // ? galpani2 at F0A4
AM_RANGE(0x54057a, 0x54057b) AM_READNOP // ? galpani2 at F148
@@ -363,9 +365,7 @@ static ADDRESS_MAP_START( galpani2_mem1, AS_PROGRAM, 16, galpani2_state )
AM_RANGE(0x5405c2, 0x5405c3) AM_READNOP // ? galpani2 at F0A4 and F148
AM_RANGE(0x5405ca, 0x5405cb) AM_READNOP // ? galpani2 at F148
- AM_RANGE(0x580000, 0x580001) AM_RAM AM_SHARE("bg8_scrolly.1") // Background 1 Scroll Y
- AM_RANGE(0x5c0000, 0x5c0001) AM_WRITENOP // ? 0 at startup only
- AM_RANGE(0x600000, 0x600001) AM_WRITENOP // Watchdog
+ AM_RANGE(0x600000, 0x600001) AM_NOP // Watchdog
AM_RANGE(0x640000, 0x640001) AM_WRITE8(galpani2_mcu_init_w, 0x00ff ) // ? 0 before resetting and at startup, Reset mcu ?
AM_RANGE(0x680000, 0x680001) AM_WRITE8(galpani2_mcu_nmi1_w, 0x00ff) // ? 0 -> 1 -> 0 (lev 5) / 0 -> $10 -> 0
AM_RANGE(0x6c0000, 0x6c0001) AM_WRITE8(galpani2_coin_lockout_w, 0xff00 ) // Coin + Card Lockout
@@ -403,13 +403,12 @@ READ16_MEMBER(galpani2_state::galpani2_bankedrom_r)
static ADDRESS_MAP_START( galpani2_mem2, AS_PROGRAM, 16, galpani2_state )
AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM
AM_RANGE(0x100000, 0x13ffff) AM_RAM AM_SHARE("ram2") // Work RAM
- AM_RANGE(0x400000, 0x4fffff) AM_RAM_WRITE(galpani2_bg15_w) AM_SHARE("bg15") // bg15
- AM_RANGE(0x500000, 0x5fffff) AM_RAM // bg15
- AM_RANGE(0x600000, 0x600001) AM_NOP // ? 0 at startup only
- AM_RANGE(0x640000, 0x640001) AM_WRITENOP // ? 0 at startup only
- AM_RANGE(0x680000, 0x680001) AM_WRITENOP // ? 0 at startup only
- AM_RANGE(0x6c0000, 0x6c0001) AM_WRITENOP // ? 0 at startup only
- AM_RANGE(0x700000, 0x700001) AM_WRITENOP // Watchdog
+ AM_RANGE(0x400000, 0x5fffff) AM_RAM AM_SHARE("bg15") // bg15
+// AM_RANGE(0x600000, 0x600001) AM_NOP // ? 0 at startup only
+// AM_RANGE(0x640000, 0x640001) AM_WRITENOP // ? 0 at startup only
+// AM_RANGE(0x680000, 0x680001) AM_WRITENOP // ? 0 at startup only
+// AM_RANGE(0x6c0000, 0x6c0001) AM_WRITENOP // ? 0 at startup only
+ AM_RANGE(0x700000, 0x700001) AM_NOP // Watchdog
// AM_RANGE(0x740000, 0x740001) AM_WRITENOP // ? Reset mcu
AM_RANGE(0x780000, 0x780001) AM_WRITE8(galpani2_mcu_nmi2_w, 0x00ff) // ? 0 -> 1 -> 0 (lev 5)
AM_RANGE(0x7c0000, 0x7c0001) AM_WRITEONLY AM_SHARE("rombank") // Rom Bank
@@ -626,12 +625,17 @@ static MACHINE_CONFIG_START( galpani2, galpani2_state )
MCFG_SCREEN_SIZE(320, 256)
MCFG_SCREEN_VISIBLE_AREA(0, 320-1, 0, 256-1-16)
MCFG_SCREEN_UPDATE_DRIVER(galpani2_state, screen_update_galpani2)
- MCFG_SCREEN_PALETTE("palette")
MCFG_GFXDECODE_ADD("gfxdecode", "palette", galpani2)
- MCFG_PALETTE_ADD("palette", 0x4000 + 0x200 + 0x8000) // sprites, bg8, bg15
+ MCFG_PALETTE_ADD("palette", 0x4000) // sprites
+ MCFG_PALETTE_FORMAT(xGGGGGRRRRRBBBBB)
+
+ MCFG_PALETTE_ADD("bg8palette", 0x200/2) // bg8
+ MCFG_PALETTE_FORMAT(xGGGGGRRRRRBBBBB)
+
+ MCFG_PALETTE_ADD("bgpalette", 32768) /* 32768 static colors for the bg */
MCFG_PALETTE_FORMAT(xGGGGGRRRRRBBBBB)
- MCFG_PALETTE_INIT_OWNER(galpani2_state, galpani2)
+ MCFG_PALETTE_INIT_OWNER(galpani2_state,galpani2)
MCFG_DEVICE_ADD_KC002_SPRITES
kaneko16_sprite_device::set_offsets(*device, 0x10000 - 0x16c0 + 0xc00, 0);