trs80, trs80m3, vtech1: sound-related improvements
This commit is contained in:
parent
e6ea5f23ae
commit
a8c17dc44f
@ -447,7 +447,7 @@ between them.
|
|||||||
<year>1981</year>
|
<year>1981</year>
|
||||||
<publisher>Misosys</publisher>
|
<publisher>Misosys</publisher>
|
||||||
<info name="usage" value="Skill 0 is easiest" />
|
<info name="usage" value="Skill 0 is easiest" />
|
||||||
<sharedfeat name="compatibility" value="1,3,H,MN" /><!-- [3]: some sounds missing -->
|
<sharedfeat name="compatibility" value="1,3,H,MN" />
|
||||||
<part name="quik" interface="trs80_quik">
|
<part name="quik" interface="trs80_quik">
|
||||||
<dataarea name="quik" size="0x3256">
|
<dataarea name="quik" size="0x3256">
|
||||||
<rom name="frogger1.cmd" size="0x3256" crc="64f592b7" sha1="41ec2e8bf8e0ea37d4620026183092c38d6f8f76"/>
|
<rom name="frogger1.cmd" size="0x3256" crc="64f592b7" sha1="41ec2e8bf8e0ea37d4620026183092c38d6f8f76"/>
|
||||||
@ -460,7 +460,7 @@ between them.
|
|||||||
<year>1981</year>
|
<year>1981</year>
|
||||||
<publisher>Misosys</publisher>
|
<publisher>Misosys</publisher>
|
||||||
<info name="usage" value="Skill 0 is easiest" />
|
<info name="usage" value="Skill 0 is easiest" />
|
||||||
<sharedfeat name="compatibility" value="1,3,H,MN" /><!-- [3]: some sounds missing -->
|
<sharedfeat name="compatibility" value="1,3,H,MN" />
|
||||||
<part name="quik" interface="trs80_quik">
|
<part name="quik" interface="trs80_quik">
|
||||||
<dataarea name="quik" size="0x3000">
|
<dataarea name="quik" size="0x3000">
|
||||||
<rom name="frogger2.cmd" size="0x3000" crc="eec61bf9" sha1="2e1df95218ca421099e5ca5ac0fdb1e1199372f6"/>
|
<rom name="frogger2.cmd" size="0x3000" crc="eec61bf9" sha1="2e1df95218ca421099e5ca5ac0fdb1e1199372f6"/>
|
||||||
@ -473,7 +473,7 @@ between them.
|
|||||||
<year>1981</year>
|
<year>1981</year>
|
||||||
<publisher>Misosys</publisher>
|
<publisher>Misosys</publisher>
|
||||||
<info name="usage" value="Skill 0 is easiest" />
|
<info name="usage" value="Skill 0 is easiest" />
|
||||||
<sharedfeat name="compatibility" value="1,3,H,MN" /><!-- [3]: some sounds missing -->
|
<sharedfeat name="compatibility" value="1,3,H,MN" />
|
||||||
<part name="quik" interface="trs80_quik">
|
<part name="quik" interface="trs80_quik">
|
||||||
<dataarea name="quik" size="0x33f4">
|
<dataarea name="quik" size="0x33f4">
|
||||||
<rom name="frogger3.cmd" size="0x33f4" crc="3e6d36a7" sha1="693fcf5798b1b5f9db7de2cc1ae558fefaace1a6"/>
|
<rom name="frogger3.cmd" size="0x33f4" crc="3e6d36a7" sha1="693fcf5798b1b5f9db7de2cc1ae558fefaace1a6"/>
|
||||||
@ -486,7 +486,7 @@ between them.
|
|||||||
<year>1981</year>
|
<year>1981</year>
|
||||||
<publisher>Misosys</publisher>
|
<publisher>Misosys</publisher>
|
||||||
<info name="usage" value="Skill 0 is easiest" />
|
<info name="usage" value="Skill 0 is easiest" />
|
||||||
<sharedfeat name="compatibility" value="1,3,H,MN" /><!-- [3]: some sounds missing -->
|
<sharedfeat name="compatibility" value="1,3,H,MN" />
|
||||||
<part name="quik" interface="trs80_quik">
|
<part name="quik" interface="trs80_quik">
|
||||||
<dataarea name="quik" size="0x3000">
|
<dataarea name="quik" size="0x3000">
|
||||||
<rom name="frogger4.cmd" size="0x3000" crc="24c63f58" sha1="94397d54bd9a6aad7f59db2f0f854fa2dc3e1973"/>
|
<rom name="frogger4.cmd" size="0x3000" crc="24c63f58" sha1="94397d54bd9a6aad7f59db2f0f854fa2dc3e1973"/>
|
||||||
@ -499,7 +499,7 @@ between them.
|
|||||||
<year>1981</year>
|
<year>1981</year>
|
||||||
<publisher>Misosys</publisher>
|
<publisher>Misosys</publisher>
|
||||||
<info name="usage" value="Skill 0 is easiest" />
|
<info name="usage" value="Skill 0 is easiest" />
|
||||||
<sharedfeat name="compatibility" value="1,3,H,MN" /><!-- [3]: some sounds missing -->
|
<sharedfeat name="compatibility" value="1,3,H,MN" />
|
||||||
<part name="quik" interface="trs80_quik">
|
<part name="quik" interface="trs80_quik">
|
||||||
<dataarea name="quik" size="0x3000">
|
<dataarea name="quik" size="0x3000">
|
||||||
<rom name="frogger5.cmd" size="0x3000" crc="03573bc4" sha1="496b922b1932dbb5bed6870a0e6428897f2afff4"/>
|
<rom name="frogger5.cmd" size="0x3000" crc="03573bc4" sha1="496b922b1932dbb5bed6870a0e6428897f2afff4"/>
|
||||||
@ -512,7 +512,7 @@ between them.
|
|||||||
<year>1981</year>
|
<year>1981</year>
|
||||||
<publisher>Misosys</publisher>
|
<publisher>Misosys</publisher>
|
||||||
<info name="usage" value="Skill 0 is easiest" />
|
<info name="usage" value="Skill 0 is easiest" />
|
||||||
<sharedfeat name="compatibility" value="1,3,H,MN" /><!-- [3]: some sounds missing -->
|
<sharedfeat name="compatibility" value="1,3,H,MN" />
|
||||||
<part name="quik" interface="trs80_quik">
|
<part name="quik" interface="trs80_quik">
|
||||||
<dataarea name="quik" size="0x3000">
|
<dataarea name="quik" size="0x3000">
|
||||||
<rom name="frogger6.cmd" size="0x3000" crc="4ab1a2c5" sha1="f533224621a75a850f7e7bd158655ef7cd74c6f6"/>
|
<rom name="frogger6.cmd" size="0x3000" crc="4ab1a2c5" sha1="f533224621a75a850f7e7bd158655ef7cd74c6f6"/>
|
||||||
@ -525,7 +525,7 @@ between them.
|
|||||||
<year>1981</year>
|
<year>1981</year>
|
||||||
<publisher>Misosys</publisher>
|
<publisher>Misosys</publisher>
|
||||||
<info name="usage" value="Skill 0 is easiest" />
|
<info name="usage" value="Skill 0 is easiest" />
|
||||||
<sharedfeat name="compatibility" value="1,3,H,MN" /><!-- [3]: some sounds missing -->
|
<sharedfeat name="compatibility" value="1,3,H,MN" />
|
||||||
<part name="quik" interface="trs80_quik">
|
<part name="quik" interface="trs80_quik">
|
||||||
<dataarea name="quik" size="0x35e1">
|
<dataarea name="quik" size="0x35e1">
|
||||||
<rom name="frogger7.cmd" size="0x35e1" crc="2c0aa48d" sha1="cf7e3c9c8d4d7966a8dbc43c53a87efdd7174c8f"/>
|
<rom name="frogger7.cmd" size="0x35e1" crc="2c0aa48d" sha1="cf7e3c9c8d4d7966a8dbc43c53a87efdd7174c8f"/>
|
||||||
@ -538,7 +538,7 @@ between them.
|
|||||||
<year>1981</year>
|
<year>1981</year>
|
||||||
<publisher>Misosys</publisher>
|
<publisher>Misosys</publisher>
|
||||||
<info name="usage" value="Skill 0 is easiest" />
|
<info name="usage" value="Skill 0 is easiest" />
|
||||||
<sharedfeat name="compatibility" value="1,3,H,MN" /><!-- [3]: some sounds missing -->
|
<sharedfeat name="compatibility" value="1,3,H,MN" />
|
||||||
<part name="quik" interface="trs80_quik">
|
<part name="quik" interface="trs80_quik">
|
||||||
<dataarea name="quik" size="0x3000">
|
<dataarea name="quik" size="0x3000">
|
||||||
<rom name="frogger8.cmd" size="0x3000" crc="550b42af" sha1="4056b075238e45742712f47f6da88f764ff2615a"/>
|
<rom name="frogger8.cmd" size="0x3000" crc="550b42af" sha1="4056b075238e45742712f47f6da88f764ff2615a"/>
|
||||||
|
@ -95,8 +95,6 @@ private:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
static const double speaker_levels[] = {-1.0, 0.0, 1.0, 0.0};
|
|
||||||
|
|
||||||
void h01x_state::h01x(machine_config &config)
|
void h01x_state::h01x(machine_config &config)
|
||||||
{
|
{
|
||||||
// basic machine hardware
|
// basic machine hardware
|
||||||
@ -123,7 +121,7 @@ void h01x_state::h01x(machine_config &config)
|
|||||||
|
|
||||||
// sound hardware
|
// sound hardware
|
||||||
SPEAKER(config, "mono").front_center();
|
SPEAKER(config, "mono").front_center();
|
||||||
SPEAKER_SOUND(config, m_speaker).set_levels(4, speaker_levels);
|
SPEAKER_SOUND(config, m_speaker);
|
||||||
m_speaker->add_route(ALL_OUTPUTS, "mono", 0.50);
|
m_speaker->add_route(ALL_OUTPUTS, "mono", 0.50);
|
||||||
|
|
||||||
/* devices */
|
/* devices */
|
||||||
|
@ -450,7 +450,7 @@ INPUT_PORTS_END
|
|||||||
MACHINE DRIVERS
|
MACHINE DRIVERS
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
static const double speaker_levels[] = {-1.0, 0.0, 1.0, 0.0};
|
static const double speaker_levels[] = { 0.0, 1.0, -1.0, 0.0 };
|
||||||
|
|
||||||
void vtech1_base_state::vtech1(machine_config &config)
|
void vtech1_base_state::vtech1(machine_config &config)
|
||||||
{
|
{
|
||||||
|
@ -175,12 +175,12 @@ void trs80_state::port_ff_w(u8 data)
|
|||||||
|
|
||||||
m_cpl = BIT(data, 3);
|
m_cpl = BIT(data, 3);
|
||||||
|
|
||||||
static const double speaker_levels[4] = { 0.0, -1.0, 0.0, 1.0 };
|
|
||||||
m_speaker->set_levels(4, speaker_levels);
|
|
||||||
|
|
||||||
/* Speaker for System-80 MK II - only sounds if relay is off */
|
/* Speaker for System-80 MK II - only sounds if relay is off */
|
||||||
if (!(BIT(data, 2)))
|
if (!(BIT(data, 2)))
|
||||||
|
{
|
||||||
|
m_speaker->set_levels(4, levels);
|
||||||
m_speaker->level_w(data & 3);
|
m_speaker->level_w(data & 3);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*************************************
|
/*************************************
|
||||||
|
@ -411,13 +411,25 @@ void trs80m3_state::port_ff_w(uint8_t data)
|
|||||||
/* Cassette port
|
/* Cassette port
|
||||||
d1, d0 Cassette output */
|
d1, d0 Cassette output */
|
||||||
|
|
||||||
if (!BIT(m_model4, 2)) // Model 4P has no cassette hardware
|
static const double levels[4] = { 0.0, 1.0, -1.0, 0.0 };
|
||||||
|
|
||||||
|
// Model 4P has no cassette hardware, and only one bit for sound
|
||||||
|
if (BIT(m_model4, 2))
|
||||||
|
{
|
||||||
|
if (!(BIT(m_port_ec, 1)))
|
||||||
|
m_speaker->level_w(BIT(data, 0));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
// Others have the same old unofficial sound via the cassette port
|
||||||
{
|
{
|
||||||
static const double levels[4] = { 0.0, 1.0, -1.0, 0.0 };
|
|
||||||
m_cassette->output(levels[data & 3]);
|
m_cassette->output(levels[data & 3]);
|
||||||
m_cassette_data &= ~0x80;
|
m_cassette_data &= ~0x80;
|
||||||
|
if (!(BIT(m_port_ec, 1)))
|
||||||
|
{
|
||||||
|
m_speaker->set_levels(4, levels);
|
||||||
|
m_speaker->level_w(data & 3);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
m_speaker->level_w(!(BIT(data, 0)));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user