mirror of
https://github.com/holub/mame
synced 2025-06-07 21:33:45 +03:00
sindbadm: add note about version with different sound hw
This commit is contained in:
parent
f5ac6aaa54
commit
481002e640
@ -75,6 +75,10 @@
|
||||
* Unknown boardset (background doesn't match consolidated)
|
||||
* System 1 Sound (Z80, 2xSN76496)
|
||||
|
||||
From the way this PCB recording sounds (notably the hole open/close sound
|
||||
effect), there's also a Sindbad Mystery with different sound hardware,
|
||||
possibly Sega USB: https://x.com/ZAVIGA84/status/1905972208390062179
|
||||
|
||||
****************************************************************************
|
||||
|
||||
See also segag80v.cpp for the Sega G-80 Vector games.
|
||||
@ -124,7 +128,6 @@
|
||||
|
||||
#define CPU_CLOCK 8_MHz_XTAL /* not used when video board is connected */
|
||||
#define VIDEO_CLOCK 15.46848_MHz_XTAL
|
||||
#define SINDBADM_SOUND_CLOCK 8_MHz_XTAL
|
||||
|
||||
#define PIXEL_CLOCK (VIDEO_CLOCK/3)
|
||||
|
||||
@ -312,13 +315,10 @@ void segag80r_state::sindbadm_misc_w(uint8_t data)
|
||||
|
||||
|
||||
/* the data lines are flipped */
|
||||
void segag80r_state::sindbadm_sn1_SN76496_w(uint8_t data)
|
||||
template <int N>
|
||||
void segag80r_state::sindbadm_sn_w(uint8_t data)
|
||||
{
|
||||
m_sn1->write(bitswap<8>(data, 0,1,2,3,4,5,6,7));
|
||||
}
|
||||
void segag80r_state::sindbadm_sn2_SN76496_w(uint8_t data)
|
||||
{
|
||||
m_sn2->write(bitswap<8>(data, 0,1,2,3,4,5,6,7));
|
||||
m_sn[N]->write(bitswap<8>(data, 0,1,2,3,4,5,6,7));
|
||||
}
|
||||
|
||||
|
||||
@ -395,8 +395,8 @@ void segag80r_state::sindbadm_sound_map(address_map &map)
|
||||
{
|
||||
map(0x0000, 0x1fff).rom();
|
||||
map(0x8000, 0x87ff).mirror(0x1800).ram();
|
||||
map(0xa000, 0xa003).mirror(0x1ffc).w(FUNC(segag80r_state::sindbadm_sn1_SN76496_w));
|
||||
map(0xc000, 0xc003).mirror(0x1ffc).w(FUNC(segag80r_state::sindbadm_sn2_SN76496_w));
|
||||
map(0xa000, 0xa003).mirror(0x1ffc).w(FUNC(segag80r_state::sindbadm_sn_w<0>));
|
||||
map(0xc000, 0xc003).mirror(0x1ffc).w(FUNC(segag80r_state::sindbadm_sn_w<1>));
|
||||
map(0xe000, 0xe000).mirror(0x1fff).r("ppi8255", FUNC(i8255_device::acka_r));
|
||||
}
|
||||
|
||||
@ -973,14 +973,13 @@ void segag80r_state::sindbadm(machine_config &config)
|
||||
SPEAKER(config, "speaker").front_center();
|
||||
|
||||
/* sound boards */
|
||||
Z80(config, m_audiocpu, SINDBADM_SOUND_CLOCK/2);
|
||||
Z80(config, m_audiocpu, 8_MHz_XTAL/2);
|
||||
m_audiocpu->set_addrmap(AS_PROGRAM, &segag80r_state::sindbadm_sound_map);
|
||||
m_audiocpu->set_periodic_int(FUNC(segag80r_state::irq0_line_hold), attotime::from_hz(4*60));
|
||||
|
||||
/* sound hardware */
|
||||
SN76496(config, m_sn1, SINDBADM_SOUND_CLOCK/2).add_route(ALL_OUTPUTS, "speaker", 1.0); /* matches PCB videos, correct? */
|
||||
|
||||
SN76496(config, m_sn2, SINDBADM_SOUND_CLOCK/4).add_route(ALL_OUTPUTS, "speaker", 1.0); /* matches PCB videos, correct? */
|
||||
SN76496(config, m_sn[0], 8_MHz_XTAL/2).add_route(ALL_OUTPUTS, "speaker", 1.0); // matches PCB videos, correct?
|
||||
SN76496(config, m_sn[1], 8_MHz_XTAL/4).add_route(ALL_OUTPUTS, "speaker", 1.0); // "
|
||||
}
|
||||
|
||||
|
||||
|
@ -34,8 +34,7 @@ public:
|
||||
driver_device(mconfig, type, tag),
|
||||
m_mainram(*this, "mainram"),
|
||||
m_videoram(*this, "videoram"),
|
||||
m_sn1(*this, "sn1"),
|
||||
m_sn2(*this, "sn2"),
|
||||
m_sn(*this, "sn%u", 1U),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_audiocpu(*this, "audiocpu"),
|
||||
m_soundbrd(*this, "soundbrd"),
|
||||
@ -85,8 +84,7 @@ private:
|
||||
required_shared_ptr<uint8_t> m_mainram;
|
||||
required_shared_ptr<uint8_t> m_videoram;
|
||||
|
||||
optional_device<sn76496_device> m_sn1;
|
||||
optional_device<sn76496_device> m_sn2;
|
||||
optional_device_array<sn76496_device, 2> m_sn;
|
||||
required_device<cpu_device> m_maincpu;
|
||||
optional_device<cpu_device> m_audiocpu;
|
||||
optional_device<monsterb_sound_device> m_soundbrd;
|
||||
@ -152,8 +150,7 @@ private:
|
||||
|
||||
void usb_ram_w(offs_t offset, uint8_t data);
|
||||
void sindbadm_misc_w(uint8_t data);
|
||||
void sindbadm_sn1_SN76496_w(uint8_t data);
|
||||
void sindbadm_sn2_SN76496_w(uint8_t data);
|
||||
template <int N> void sindbadm_sn_w(uint8_t data);
|
||||
|
||||
TILE_GET_INFO_MEMBER(spaceod_get_tile_info);
|
||||
TILEMAP_MAPPER_MEMBER(spaceod_scan_rows);
|
||||
@ -191,8 +188,7 @@ private:
|
||||
};
|
||||
|
||||
|
||||
/*----------- defined in audio/segag80r.c -----------*/
|
||||
|
||||
/*----------- defined in segag80r_a.cpp -----------*/
|
||||
|
||||
class sega005_sound_device : public device_t,
|
||||
public device_sound_interface
|
||||
@ -217,7 +213,8 @@ private:
|
||||
|
||||
DECLARE_DEVICE_TYPE(SEGA005, sega005_sound_device)
|
||||
|
||||
/*----------- defined in video/segag80r.c -----------*/
|
||||
|
||||
/*----------- defined in segag80r_v.cpp -----------*/
|
||||
|
||||
#define G80_BACKGROUND_NONE 0
|
||||
#define G80_BACKGROUND_SPACEOD 1
|
||||
|
Loading…
Reference in New Issue
Block a user