summaryrefslogtreecommitdiffstats
path: root/src/mame/drivers/galaxia.cpp
diff options
context:
space:
mode:
authorGravatarGravatar Vas Crabb <vas@vastheman.com>2015-12-10 16:23:34 +1100
committerGravatarGravatar Vas Crabb <vas@vastheman.com>2015-12-11 23:34:37 +1100
commitac245e3ff741bdb91bfc8c826c723f19a182d88b (patch) (github)
tree038483e365a907b57304986583044fc88e3c9d33 /src/mame/drivers/galaxia.cpp
parent18966159a0ad63083bcdb28869bdbf10d140e6d5 (diff)
downloadmame-ac245e3ff741bdb91bfc8c826c723f19a182d88b.tar.bz2
mame-ac245e3ff741bdb91bfc8c826c723f19a182d88b.zip
Re-write S2636 from scratch as needed for subhuntr:
* Needs raw screen parameters and calls from scanline timer to work properly * Collision and completion bits generated correctly including duplicates * Supports background and score display * Generates audio tone from line frequency * Probably hurts performance when rendering per frame
Diffstat (limited to 'src/mame/drivers/galaxia.cpp')
-rw-r--r--src/mame/drivers/galaxia.cpp12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/mame/drivers/galaxia.cpp b/src/mame/drivers/galaxia.cpp
index 1e52fa6f881..23723f1ffce 100644
--- a/src/mame/drivers/galaxia.cpp
+++ b/src/mame/drivers/galaxia.cpp
@@ -130,9 +130,9 @@ READ8_MEMBER(galaxia_state::galaxia_collision_clear)
static ADDRESS_MAP_START( galaxia_mem_map, AS_PROGRAM, 8, galaxia_state )
AM_RANGE(0x0000, 0x13ff) AM_ROM
AM_RANGE(0x1400, 0x14ff) AM_MIRROR(0x6000) AM_RAM AM_SHARE("bullet_ram")
- AM_RANGE(0x1500, 0x15ff) AM_MIRROR(0x6000) AM_DEVREADWRITE("s2636_0", s2636_device, work_ram_r, work_ram_w)
- AM_RANGE(0x1600, 0x16ff) AM_MIRROR(0x6000) AM_DEVREADWRITE("s2636_1", s2636_device, work_ram_r, work_ram_w)
- AM_RANGE(0x1700, 0x17ff) AM_MIRROR(0x6000) AM_DEVREADWRITE("s2636_2", s2636_device, work_ram_r, work_ram_w)
+ AM_RANGE(0x1500, 0x15ff) AM_MIRROR(0x6000) AM_DEVREADWRITE("s2636_0", s2636_device, read, write)
+ AM_RANGE(0x1600, 0x16ff) AM_MIRROR(0x6000) AM_DEVREADWRITE("s2636_1", s2636_device, read, write)
+ AM_RANGE(0x1700, 0x17ff) AM_MIRROR(0x6000) AM_DEVREADWRITE("s2636_2", s2636_device, read, write)
AM_RANGE(0x1800, 0x1bff) AM_MIRROR(0x6000) AM_READ(cvs_video_or_color_ram_r) AM_WRITE(galaxia_video_w) AM_SHARE("video_ram")
AM_RANGE(0x1c00, 0x1fff) AM_MIRROR(0x6000) AM_RAM
AM_RANGE(0x2000, 0x33ff) AM_ROM
@@ -142,7 +142,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( astrowar_mem_map, AS_PROGRAM, 8, galaxia_state )
AM_RANGE(0x0000, 0x13ff) AM_ROM
AM_RANGE(0x1400, 0x14ff) AM_MIRROR(0x6000) AM_RAM
- AM_RANGE(0x1500, 0x15ff) AM_MIRROR(0x6000) AM_DEVREADWRITE("s2636_0", s2636_device, work_ram_r, work_ram_w)
+ AM_RANGE(0x1500, 0x15ff) AM_MIRROR(0x6000) AM_DEVREADWRITE("s2636_0", s2636_device, read, write)
AM_RANGE(0x1800, 0x1bff) AM_MIRROR(0x6000) AM_READ(cvs_video_or_color_ram_r) AM_WRITE(galaxia_video_w) AM_SHARE("video_ram")
AM_RANGE(0x1c00, 0x1cff) AM_MIRROR(0x6000) AM_RAM AM_SHARE("bullet_ram")
AM_RANGE(0x2000, 0x33ff) AM_ROM
@@ -307,17 +307,14 @@ static MACHINE_CONFIG_START( galaxia, galaxia_state )
MCFG_VIDEO_START_OVERRIDE(galaxia_state,galaxia)
MCFG_DEVICE_ADD("s2636_0", S2636, 0)
- MCFG_S2636_WORKRAM_SIZE(0x100)
MCFG_S2636_OFFSETS(3, -26)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_DEVICE_ADD("s2636_1", S2636, 0)
- MCFG_S2636_WORKRAM_SIZE(0x100)
MCFG_S2636_OFFSETS(3, -26)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MCFG_DEVICE_ADD("s2636_2", S2636, 0)
- MCFG_S2636_WORKRAM_SIZE(0x100)
MCFG_S2636_OFFSETS(3, -26)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
@@ -352,7 +349,6 @@ static MACHINE_CONFIG_START( astrowar, galaxia_state )
MCFG_VIDEO_START_OVERRIDE(galaxia_state,astrowar)
MCFG_DEVICE_ADD("s2636_0", S2636, 0)
- MCFG_S2636_WORKRAM_SIZE(0x100)
MCFG_S2636_OFFSETS(3, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)