mirror of
https://github.com/holub/mame
synced 2025-04-22 16:31:49 +03:00
progolf: Soundlatch modernization (nw)
This commit is contained in:
parent
c86970de6c
commit
5b38c7e994
@ -58,6 +58,7 @@ Twenty four 8116 rams.
|
||||
#include "video/mc6845.h"
|
||||
#include "machine/deco222.h"
|
||||
#include "machine/decocpu6.h"
|
||||
#include "machine/gen_latch.h"
|
||||
#include "screen.h"
|
||||
#include "speaker.h"
|
||||
|
||||
@ -88,15 +89,12 @@ public:
|
||||
uint8_t m_scrollx_hi;
|
||||
uint8_t m_scrollx_lo;
|
||||
uint8_t m_gfx_switch;
|
||||
uint8_t m_sound_cmd;
|
||||
|
||||
DECLARE_WRITE8_MEMBER(charram_w);
|
||||
DECLARE_WRITE8_MEMBER(char_vregs_w);
|
||||
DECLARE_WRITE8_MEMBER(scrollx_lo_w);
|
||||
DECLARE_WRITE8_MEMBER(scrollx_hi_w);
|
||||
DECLARE_WRITE8_MEMBER(flip_screen_w);
|
||||
DECLARE_WRITE8_MEMBER(audio_command_w);
|
||||
DECLARE_READ8_MEMBER(audio_command_r);
|
||||
DECLARE_READ8_MEMBER(videoram_r);
|
||||
DECLARE_WRITE8_MEMBER(videoram_w);
|
||||
|
||||
@ -112,7 +110,6 @@ public:
|
||||
|
||||
void progolf_state::machine_start()
|
||||
{
|
||||
save_item(NAME(m_sound_cmd));
|
||||
}
|
||||
|
||||
void progolf_state::video_start()
|
||||
@ -228,18 +225,6 @@ WRITE8_MEMBER(progolf_state::flip_screen_w)
|
||||
printf("$9600 with data = %02x used\n",data);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(progolf_state::audio_command_w)
|
||||
{
|
||||
m_sound_cmd = data;
|
||||
m_audiocpu->set_input_line(0, ASSERT_LINE);
|
||||
}
|
||||
|
||||
READ8_MEMBER(progolf_state::audio_command_r)
|
||||
{
|
||||
m_audiocpu->set_input_line(0, CLEAR_LINE);
|
||||
return m_sound_cmd;
|
||||
}
|
||||
|
||||
READ8_MEMBER(progolf_state::videoram_r)
|
||||
{
|
||||
uint8_t *gfx_rom = memregion("gfx1")->base();
|
||||
@ -283,7 +268,7 @@ static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, progolf_state )
|
||||
AM_RANGE(0x9800, 0x9800) AM_READ_PORT("DSW1")
|
||||
AM_RANGE(0x9800, 0x9800) AM_DEVWRITE("crtc", mc6845_device, address_w)
|
||||
AM_RANGE(0x9801, 0x9801) AM_DEVWRITE("crtc", mc6845_device, register_w)
|
||||
AM_RANGE(0x9a00, 0x9a00) AM_READ_PORT("DSW2") AM_WRITE(audio_command_w)
|
||||
AM_RANGE(0x9a00, 0x9a00) AM_READ_PORT("DSW2") AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
|
||||
// AM_RANGE(0x9e00, 0x9e00) AM_WRITENOP
|
||||
AM_RANGE(0xb000, 0xffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
@ -294,7 +279,7 @@ static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, progolf_state )
|
||||
AM_RANGE(0x5000, 0x5fff) AM_DEVWRITE("ay1", ay8910_device, address_w)
|
||||
AM_RANGE(0x6000, 0x6fff) AM_DEVREADWRITE("ay2", ay8910_device, data_r, data_w)
|
||||
AM_RANGE(0x7000, 0x7fff) AM_DEVWRITE("ay2", ay8910_device, address_w)
|
||||
AM_RANGE(0x8000, 0x8fff) AM_READ(audio_command_r) AM_WRITENOP //volume control?
|
||||
AM_RANGE(0x8000, 0x8fff) AM_DEVREADWRITE("soundlatch", generic_latch_8_device, read, acknowledge_w)
|
||||
AM_RANGE(0xf000, 0xffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -434,6 +419,10 @@ static MACHINE_CONFIG_START( progolf )
|
||||
|
||||
MCFG_QUANTUM_PERFECT_CPU("maincpu")
|
||||
|
||||
MCFG_GENERIC_LATCH_8_ADD("soundlatch")
|
||||
MCFG_GENERIC_LATCH_DATA_PENDING_CB(INPUTLINE("audiocpu", 0))
|
||||
MCFG_GENERIC_LATCH_SEPARATE_ACKNOWLEDGE(true)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_REFRESH_RATE(57)
|
||||
|
Loading…
Reference in New Issue
Block a user