fidel*: fix recently added EAS/EAG speech at boot, small cleanup (nw)

This commit is contained in:
hap 2016-10-04 07:39:12 +02:00
parent e03e09856f
commit f9a904dfa1
3 changed files with 172 additions and 170 deletions

View File

@ -7,7 +7,6 @@
TODO:
- add EAG external module support, there should be a bankswitch bit somewhere
- EAG says part of the intro line at boot, it should be quiet if voice option is disabled
- Why does fexcelp give error beeps at start? As if chessboard buttons are
pressed (button logic is not inverted). It works fine after pressing clear.
@ -385,7 +384,7 @@ public:
TIMER_DEVICE_CALLBACK_MEMBER(irq_on) { m_maincpu->set_input_line(M6502_IRQ_LINE, ASSERT_LINE); }
TIMER_DEVICE_CALLBACK_MEMBER(irq_off) { m_maincpu->set_input_line(M6502_IRQ_LINE, CLEAR_LINE); }
// CSC
// CSC, SU9, RSC
void csc_prepare_display();
DECLARE_READ8_MEMBER(csc_speech_r);
DECLARE_WRITE8_MEMBER(csc_pia0_pa_w);
@ -400,7 +399,8 @@ public:
DECLARE_READ_LINE_MEMBER(csc_pia1_ca1_r);
DECLARE_READ_LINE_MEMBER(csc_pia1_cb1_r);
// EAS
// EAS, EAG
void eas_prepare_display();
DECLARE_WRITE8_MEMBER(eas_segment_w);
DECLARE_WRITE8_MEMBER(eas_led_w);
DECLARE_READ8_MEMBER(eas_input_r);
@ -437,7 +437,7 @@ public:
// Devices, I/O
/******************************************************************************
CSC
CSC, SU9, RSC
******************************************************************************/
// misc handlers
@ -450,8 +450,8 @@ void fidel6502_state::csc_prepare_display()
// 7442 9: speaker out
m_speaker->level_w(m_inp_mux >> 9 & 1);
// 7seg leds+H(not on all models) + 8*8(+1) chessboard leds
set_display_segmask(0x1ef, 0x7f);
// 7seg leds+H (not on all models), 8*8(+1) chessboard leds
set_display_segmask(0xf, 0x7f);
display_matrix(16, 9, m_led_data << 8 | m_7seg_data, m_inp_mux);
}
@ -559,24 +559,31 @@ WRITE_LINE_MEMBER(fidel6502_state::csc_pia1_ca2_w)
/******************************************************************************
EAS
EAS, EAG
******************************************************************************/
// TTL/generic
void fidel6502_state::eas_prepare_display()
{
// 4/8 7seg leds+H, 8*8(+1) chessboard leds
set_display_segmask(0x1ef, 0x7f);
display_matrix(16, 9, m_led_data << 8 | m_7seg_data, m_led_select);
}
WRITE8_MEMBER(fidel6502_state::eas_segment_w)
{
// a0-a2,d7: digit segment
m_7seg_data = (data & 0x80) >> offset;
m_7seg_data = BITSWAP8(m_7seg_data,7,6,4,5,0,2,1,3);
csc_prepare_display();
eas_prepare_display();
}
WRITE8_MEMBER(fidel6502_state::eas_led_w)
{
// a0-a2,d0: led data
m_led_data = (data & 1) << offset;
csc_prepare_display();
eas_prepare_display();
}
READ8_MEMBER(fidel6502_state::eas_input_r)
@ -590,6 +597,10 @@ READ8_MEMBER(fidel6502_state::eas_input_r)
WRITE8_MEMBER(fidel6502_state::eas_ppi_porta_w)
{
// pull output low during reset
if (machine().phase() == MACHINE_PHASE_RESET)
data = 0;
// d0-d5: TSI C0-C5
// d6: TSI START line
m_speech->data_w(space, 0, data & 0x3f);
@ -600,9 +611,18 @@ WRITE8_MEMBER(fidel6502_state::eas_ppi_porta_w)
WRITE8_MEMBER(fidel6502_state::eas_ppi_portc_w)
{
// d0-d3: input/led mux
m_led_select = data & 0xf;
csc_prepare_display();
// pull output low during reset
if (machine().phase() == MACHINE_PHASE_RESET)
data = 0;
// d0-d3: 7442 a0-a3
// 7442 0-8: led select, input mux
m_led_select = 1 << (data & 0xf) & 0x3ff;
m_inp_mux = m_led_select & 0x1ff;
eas_prepare_display();
// 7442 9: speaker out
m_speaker->level_w(m_led_select >> 9 & 1);
// d4: speech ROM A12
m_speech->force_update(); // update stream to now
@ -851,17 +871,7 @@ DRIVER_INIT_MEMBER(fidel6502_state, chesster)
Address Maps
******************************************************************************/
// RSC
static ADDRESS_MAP_START( rsc_map, AS_PROGRAM, 8, fidel6502_state )
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x2000, 0x2003) AM_DEVREADWRITE("pia", pia6821_device, read, write)
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
// CSC
// CSC, SU9, RSC
static ADDRESS_MAP_START( csc_map, AS_PROGRAM, 8, fidel6502_state )
ADDRESS_MAP_UNMAP_HIGH
@ -873,8 +883,25 @@ static ADDRESS_MAP_START( csc_map, AS_PROGRAM, 8, fidel6502_state )
AM_RANGE(0xa000, 0xffff) AM_ROM
ADDRESS_MAP_END
static ADDRESS_MAP_START( su9_map, AS_PROGRAM, 8, fidel6502_state )
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1003) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x1800, 0x1803) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
AM_RANGE(0x2000, 0x3fff) AM_ROM
AM_RANGE(0xa000, 0xa7ff) AM_ROM
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
// EAS
static ADDRESS_MAP_START( rsc_map, AS_PROGRAM, 8, fidel6502_state )
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x2000, 0x2003) AM_DEVREADWRITE("pia", pia6821_device, read, write)
AM_RANGE(0xf000, 0xffff) AM_ROM
ADDRESS_MAP_END
// EAS, EAG
static ADDRESS_MAP_START( eas_map, AS_PROGRAM, 8, fidel6502_state )
ADDRESS_MAP_UNMAP_HIGH
@ -888,9 +915,6 @@ static ADDRESS_MAP_START( eas_map, AS_PROGRAM, 8, fidel6502_state )
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
// EAG
static ADDRESS_MAP_START( eag_map, AS_PROGRAM, 8, fidel6502_state )
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram")
@ -903,19 +927,6 @@ static ADDRESS_MAP_START( eag_map, AS_PROGRAM, 8, fidel6502_state )
ADDRESS_MAP_END
// SU9
static ADDRESS_MAP_START( su9_map, AS_PROGRAM, 8, fidel6502_state )
ADDRESS_MAP_UNMAP_HIGH
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x1000, 0x1003) AM_DEVREADWRITE("pia0", pia6821_device, read, write)
AM_RANGE(0x1800, 0x1803) AM_DEVREADWRITE("pia1", pia6821_device, read, write)
AM_RANGE(0x2000, 0x3fff) AM_ROM
AM_RANGE(0xa000, 0xa7ff) AM_ROM
AM_RANGE(0xc000, 0xffff) AM_ROM
ADDRESS_MAP_END
// SC9
static ADDRESS_MAP_START( sc9_map, AS_PROGRAM, 8, fidel6502_state )
@ -934,7 +945,7 @@ static ADDRESS_MAP_START( sc9b_map, AS_PROGRAM, 8, fidel6502_state )
ADDRESS_MAP_END
// SC12/6086
// SC12
static ADDRESS_MAP_START( sc12_map, AS_PROGRAM, 8, fidel6502_state )
ADDRESS_MAP_UNMAP_HIGH
@ -1895,6 +1906,52 @@ ROM_START( cscfr )
ROM_END
ROM_START( super9cc )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD("cb9.bin", 0x2000, 0x2000, CRC(421147e8) SHA1(ccf62f6f218e8992baf30973fe41b35e14a1cc1a) )
ROM_LOAD("101-1024b03", 0xa000, 0x0800, CRC(e8c97455) SHA1(ed2958fc5474253ee8c2eaf27fc64226e12f80ea) )
ROM_LOAD("101-1024b02", 0xc000, 0x2000, CRC(95004699) SHA1(ea79f43da73267344545df8ad61730f613876c2e) )
ROM_LOAD("101-1024c01", 0xe000, 0x2000, CRC(03904e86) SHA1(bfa0dd9d8541e3ec359a247a3eba543501f727bc) )
ROM_REGION( 0x2000, "speech", 0 )
ROM_LOAD("vcc-english.bin", 0x0000, 0x1000, BAD_DUMP CRC(f35784f9) SHA1(348e54a7fa1e8091f89ac656b4da22f28ca2e44d) ) // taken from csc, assume correct
ROM_RELOAD( 0x1000, 0x1000)
ROM_END
ROM_START( super9ccsp )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD("cb9.bin", 0x2000, 0x2000, CRC(421147e8) SHA1(ccf62f6f218e8992baf30973fe41b35e14a1cc1a) )
ROM_LOAD("101-1024b03", 0xa000, 0x0800, CRC(e8c97455) SHA1(ed2958fc5474253ee8c2eaf27fc64226e12f80ea) )
ROM_LOAD("101-1024b02", 0xc000, 0x2000, CRC(95004699) SHA1(ea79f43da73267344545df8ad61730f613876c2e) )
ROM_LOAD("101-1024c01", 0xe000, 0x2000, CRC(03904e86) SHA1(bfa0dd9d8541e3ec359a247a3eba543501f727bc) )
ROM_REGION( 0x2000, "speech", 0 )
ROM_LOAD("vcc-spanish.bin", 0x0000, 0x2000, BAD_DUMP CRC(8766e128) SHA1(78c7413bf240159720b131ab70bfbdf4e86eb1e9) ) // taken from vcc/fexcelv, assume correct
ROM_END
ROM_START( super9ccg )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD("cb9.bin", 0x2000, 0x2000, CRC(421147e8) SHA1(ccf62f6f218e8992baf30973fe41b35e14a1cc1a) )
ROM_LOAD("101-1024b03", 0xa000, 0x0800, CRC(e8c97455) SHA1(ed2958fc5474253ee8c2eaf27fc64226e12f80ea) )
ROM_LOAD("101-1024b02", 0xc000, 0x2000, CRC(95004699) SHA1(ea79f43da73267344545df8ad61730f613876c2e) )
ROM_LOAD("101-1024c01", 0xe000, 0x2000, CRC(03904e86) SHA1(bfa0dd9d8541e3ec359a247a3eba543501f727bc) )
ROM_REGION( 0x2000, "speech", 0 )
ROM_LOAD("vcc-german.bin", 0x0000, 0x2000, BAD_DUMP CRC(6c85e310) SHA1(20d1d6543c1e6a1f04184a2df2a468f33faec3ff) ) // taken from fexcelv, assume correct
ROM_END
ROM_START( super9ccfr )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD("cb9.bin", 0x2000, 0x2000, CRC(421147e8) SHA1(ccf62f6f218e8992baf30973fe41b35e14a1cc1a) )
ROM_LOAD("101-1024b03", 0xa000, 0x0800, CRC(e8c97455) SHA1(ed2958fc5474253ee8c2eaf27fc64226e12f80ea) )
ROM_LOAD("101-1024b02", 0xc000, 0x2000, CRC(95004699) SHA1(ea79f43da73267344545df8ad61730f613876c2e) )
ROM_LOAD("101-1024c01", 0xe000, 0x2000, CRC(03904e86) SHA1(bfa0dd9d8541e3ec359a247a3eba543501f727bc) )
ROM_REGION( 0x2000, "speech", 0 )
ROM_LOAD("vcc-french.bin", 0x0000, 0x2000, BAD_DUMP CRC(fe8c5c18) SHA1(2b64279ab3747ee81c86963c13e78321c6cfa3a3) ) // taken from fexcelv, assume correct
ROM_END
ROM_START( feasbu )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD("eli_bu.6", 0x8000, 0x0800, CRC(93dcc23b) SHA1(2eb8c5a85e566948bc256d6b1804694e6b0ffa6f) ) // ST M27C64A, unknown label
@ -2072,52 +2129,6 @@ ROM_START( feag2100fr )
ROM_END
ROM_START( super9cc )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD("cb9.bin", 0x2000, 0x2000, CRC(421147e8) SHA1(ccf62f6f218e8992baf30973fe41b35e14a1cc1a) )
ROM_LOAD("101-1024b03", 0xa000, 0x0800, CRC(e8c97455) SHA1(ed2958fc5474253ee8c2eaf27fc64226e12f80ea) )
ROM_LOAD("101-1024b02", 0xc000, 0x2000, CRC(95004699) SHA1(ea79f43da73267344545df8ad61730f613876c2e) )
ROM_LOAD("101-1024c01", 0xe000, 0x2000, CRC(03904e86) SHA1(bfa0dd9d8541e3ec359a247a3eba543501f727bc) )
ROM_REGION( 0x2000, "speech", 0 )
ROM_LOAD("vcc-english.bin", 0x0000, 0x1000, BAD_DUMP CRC(f35784f9) SHA1(348e54a7fa1e8091f89ac656b4da22f28ca2e44d) ) // taken from csc, assume correct
ROM_RELOAD( 0x1000, 0x1000)
ROM_END
ROM_START( super9ccsp )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD("cb9.bin", 0x2000, 0x2000, CRC(421147e8) SHA1(ccf62f6f218e8992baf30973fe41b35e14a1cc1a) )
ROM_LOAD("101-1024b03", 0xa000, 0x0800, CRC(e8c97455) SHA1(ed2958fc5474253ee8c2eaf27fc64226e12f80ea) )
ROM_LOAD("101-1024b02", 0xc000, 0x2000, CRC(95004699) SHA1(ea79f43da73267344545df8ad61730f613876c2e) )
ROM_LOAD("101-1024c01", 0xe000, 0x2000, CRC(03904e86) SHA1(bfa0dd9d8541e3ec359a247a3eba543501f727bc) )
ROM_REGION( 0x2000, "speech", 0 )
ROM_LOAD("vcc-spanish.bin", 0x0000, 0x2000, BAD_DUMP CRC(8766e128) SHA1(78c7413bf240159720b131ab70bfbdf4e86eb1e9) ) // taken from vcc/fexcelv, assume correct
ROM_END
ROM_START( super9ccg )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD("cb9.bin", 0x2000, 0x2000, CRC(421147e8) SHA1(ccf62f6f218e8992baf30973fe41b35e14a1cc1a) )
ROM_LOAD("101-1024b03", 0xa000, 0x0800, CRC(e8c97455) SHA1(ed2958fc5474253ee8c2eaf27fc64226e12f80ea) )
ROM_LOAD("101-1024b02", 0xc000, 0x2000, CRC(95004699) SHA1(ea79f43da73267344545df8ad61730f613876c2e) )
ROM_LOAD("101-1024c01", 0xe000, 0x2000, CRC(03904e86) SHA1(bfa0dd9d8541e3ec359a247a3eba543501f727bc) )
ROM_REGION( 0x2000, "speech", 0 )
ROM_LOAD("vcc-german.bin", 0x0000, 0x2000, BAD_DUMP CRC(6c85e310) SHA1(20d1d6543c1e6a1f04184a2df2a468f33faec3ff) ) // taken from fexcelv, assume correct
ROM_END
ROM_START( super9ccfr )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD("cb9.bin", 0x2000, 0x2000, CRC(421147e8) SHA1(ccf62f6f218e8992baf30973fe41b35e14a1cc1a) )
ROM_LOAD("101-1024b03", 0xa000, 0x0800, CRC(e8c97455) SHA1(ed2958fc5474253ee8c2eaf27fc64226e12f80ea) )
ROM_LOAD("101-1024b02", 0xc000, 0x2000, CRC(95004699) SHA1(ea79f43da73267344545df8ad61730f613876c2e) )
ROM_LOAD("101-1024c01", 0xe000, 0x2000, CRC(03904e86) SHA1(bfa0dd9d8541e3ec359a247a3eba543501f727bc) )
ROM_REGION( 0x2000, "speech", 0 )
ROM_LOAD("vcc-french.bin", 0x0000, 0x2000, BAD_DUMP CRC(fe8c5c18) SHA1(2b64279ab3747ee81c86963c13e78321c6cfa3a3) ) // taken from fexcelv, assume correct
ROM_END
ROM_START( fscc9 )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD("b30", 0xc000, 0x2000, CRC(b845c458) SHA1(d3fda65dbd9fae44fa4b93f8207839d8fa0c367a) ) // HN48364P
@ -2192,6 +2203,11 @@ CONS( 1981, cscsp, csc, 0, csc, cscg, driver_device, 0,
CONS( 1981, cscg, csc, 0, csc, cscg, driver_device, 0, "Fidelity Electronics", "Champion Sensory Chess Challenger (German)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1981, cscfr, csc, 0, csc, cscg, driver_device, 0, "Fidelity Electronics", "Champion Sensory Chess Challenger (French)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1983, super9cc, 0, 0, su9, su9, driver_device, 0, "Fidelity Electronics", "Super 9 Sensory Chess Challenger (English)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1983, super9ccsp, super9cc, 0, su9, su9g, driver_device, 0, "Fidelity Electronics", "Super 9 Sensory Chess Challenger (Spanish)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1983, super9ccg, super9cc, 0, su9, su9g, driver_device, 0, "Fidelity Electronics", "Super 9 Sensory Chess Challenger (German)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1983, super9ccfr, super9cc, 0, su9, su9g, driver_device, 0, "Fidelity Electronics", "Super 9 Sensory Chess Challenger (French)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1983, feasbu, 0, 0, eas, eas, driver_device, 0, "Fidelity Electronics", "Elite A/S Challenger (Budapest program, English)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1983, feasbusp, feasbu, 0, eas, easg, driver_device, 0, "Fidelity Electronics", "Elite A/S Challenger (Budapest program, Spanish)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1983, feasbug, feasbu, 0, eas, easg, driver_device, 0, "Fidelity Electronics", "Elite A/S Challenger (Budapest program, German)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
@ -2206,11 +2222,6 @@ CONS( 1986, feag2100sp, feag2100, 0, eag, eagg, driver_device, 0,
CONS( 1986, feag2100g, feag2100, 0, eag, eagg, driver_device, 0, "Fidelity Electronics", "Elite Avant Garde 2100 (German)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1986, feag2100fr, feag2100, 0, eag, eagg, driver_device, 0, "Fidelity Electronics", "Elite Avant Garde 2100 (French)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1983, super9cc, 0, 0, su9, su9, driver_device, 0, "Fidelity Electronics", "Super 9 Sensory Chess Challenger (English)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1983, super9ccsp, super9cc, 0, su9, su9g, driver_device, 0, "Fidelity Electronics", "Super 9 Sensory Chess Challenger (Spanish)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1983, super9ccg, super9cc, 0, su9, su9g, driver_device, 0, "Fidelity Electronics", "Super 9 Sensory Chess Challenger (German)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1983, super9ccfr, super9cc, 0, su9, su9g, driver_device, 0, "Fidelity Electronics", "Super 9 Sensory Chess Challenger (French)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1982, fscc9, 0, 0, sc9, sc12, driver_device, 0, "Fidelity Electronics", "Sensory Chess Challenger 9 (set 1)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1982, fscc9b, fscc9, 0, sc9b, sc12, driver_device, 0, "Fidelity Electronics", "Sensory Chess Challenger 9 (set 2)", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )
CONS( 1984, fscc12, 0, 0, sc12, sc12, driver_device, 0, "Fidelity Electronics", "Sensory Chess Challenger 12-B", MACHINE_SUPPORTS_SAVE | MACHINE_CLICKABLE_ARTWORK )

View File

@ -551,7 +551,7 @@ public:
DECLARE_READ8_MEMBER(vsc_pio_portb_r);
DECLARE_WRITE8_MEMBER(vsc_pio_portb_w);
// VBRC/7014
// VBRC
void vbrc_prepare_display();
DECLARE_WRITE8_MEMBER(vbrc_speech_w);
DECLARE_WRITE8_MEMBER(vbrc_mcu_p1_w);
@ -882,17 +882,9 @@ READ8_MEMBER(fidelz80_state::bcc_input_r)
void fidelz80_state::vsc_prepare_display()
{
// 4 7seg leds + H
for (int i = 0; i < 4; i++)
m_display_state[i] = (m_led_select >> i & 1) ? m_7seg_data : 0;
// 8*8 chessboard leds
for (int i = 0; i < 8; i++)
m_display_state[i+4] = (m_led_select >> i & 1) ? m_led_data : 0;
set_display_size(8, 12);
// 4 7seg leds+H, 8*8 chessboard leds
set_display_segmask(0xf, 0x7f);
display_update();
display_matrix(16, 8, m_led_data << 8 | m_7seg_data, m_led_select);
}
@ -963,7 +955,7 @@ WRITE8_MEMBER(fidelz80_state::vsc_pio_portb_w)
/******************************************************************************
VBRC/7014
VBRC
******************************************************************************/
// misc handlers
@ -1092,7 +1084,7 @@ static ADDRESS_MAP_START( vsc_io, AS_IO, 8, fidelz80_state )
ADDRESS_MAP_END
// VBRC/7014
// VBRC
WRITE8_MEMBER(fidelz80_state::vbrc_speech_w)
{

View File

@ -252,77 +252,77 @@
<!-- chessboard leds -->
<bezel name="4.7" element="led"><bounds x="3.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.7" element="led"><bounds x="13.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.7" element="led"><bounds x="23.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.7" element="led"><bounds x="33.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="8.7" element="led"><bounds x="43.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="9.7" element="led"><bounds x="53.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="10.7" element="led"><bounds x="63.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="11.7" element="led"><bounds x="73.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="0.15" element="led"><bounds x="3.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="1.15" element="led"><bounds x="13.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="2.15" element="led"><bounds x="23.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="3.15" element="led"><bounds x="33.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.15" element="led"><bounds x="43.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.15" element="led"><bounds x="53.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.15" element="led"><bounds x="63.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.15" element="led"><bounds x="73.2" y="11.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.6" element="led"><bounds x="3.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.6" element="led"><bounds x="13.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.6" element="led"><bounds x="23.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.6" element="led"><bounds x="33.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="8.6" element="led"><bounds x="43.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="9.6" element="led"><bounds x="53.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="10.6" element="led"><bounds x="63.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="11.6" element="led"><bounds x="73.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="0.14" element="led"><bounds x="3.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="1.14" element="led"><bounds x="13.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="2.14" element="led"><bounds x="23.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="3.14" element="led"><bounds x="33.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.14" element="led"><bounds x="43.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.14" element="led"><bounds x="53.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.14" element="led"><bounds x="63.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.14" element="led"><bounds x="73.2" y="21.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.5" element="led"><bounds x="3.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.5" element="led"><bounds x="13.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.5" element="led"><bounds x="23.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.5" element="led"><bounds x="33.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="8.5" element="led"><bounds x="43.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="9.5" element="led"><bounds x="53.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="10.5" element="led"><bounds x="63.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="11.5" element="led"><bounds x="73.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="0.13" element="led"><bounds x="3.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="1.13" element="led"><bounds x="13.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="2.13" element="led"><bounds x="23.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="3.13" element="led"><bounds x="33.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.13" element="led"><bounds x="43.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.13" element="led"><bounds x="53.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.13" element="led"><bounds x="63.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.13" element="led"><bounds x="73.2" y="31.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.4" element="led"><bounds x="3.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.4" element="led"><bounds x="13.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.4" element="led"><bounds x="23.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.4" element="led"><bounds x="33.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="8.4" element="led"><bounds x="43.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="9.4" element="led"><bounds x="53.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="10.4" element="led"><bounds x="63.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="11.4" element="led"><bounds x="73.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="0.12" element="led"><bounds x="3.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="1.12" element="led"><bounds x="13.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="2.12" element="led"><bounds x="23.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="3.12" element="led"><bounds x="33.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.12" element="led"><bounds x="43.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.12" element="led"><bounds x="53.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.12" element="led"><bounds x="63.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.12" element="led"><bounds x="73.2" y="41.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.3" element="led"><bounds x="3.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.3" element="led"><bounds x="13.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.3" element="led"><bounds x="23.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.3" element="led"><bounds x="33.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="8.3" element="led"><bounds x="43.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="9.3" element="led"><bounds x="53.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="10.3" element="led"><bounds x="63.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="11.3" element="led"><bounds x="73.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="0.11" element="led"><bounds x="3.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="1.11" element="led"><bounds x="13.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="2.11" element="led"><bounds x="23.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="3.11" element="led"><bounds x="33.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.11" element="led"><bounds x="43.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.11" element="led"><bounds x="53.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.11" element="led"><bounds x="63.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.11" element="led"><bounds x="73.2" y="51.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.2" element="led"><bounds x="3.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.2" element="led"><bounds x="13.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.2" element="led"><bounds x="23.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.2" element="led"><bounds x="33.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="8.2" element="led"><bounds x="43.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="9.2" element="led"><bounds x="53.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="10.2" element="led"><bounds x="63.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="11.2" element="led"><bounds x="73.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="0.10" element="led"><bounds x="3.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="1.10" element="led"><bounds x="13.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="2.10" element="led"><bounds x="23.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="3.10" element="led"><bounds x="33.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.10" element="led"><bounds x="43.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.10" element="led"><bounds x="53.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.10" element="led"><bounds x="63.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.10" element="led"><bounds x="73.2" y="61.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.1" element="led"><bounds x="3.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.1" element="led"><bounds x="13.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.1" element="led"><bounds x="23.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.1" element="led"><bounds x="33.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="8.1" element="led"><bounds x="43.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="9.1" element="led"><bounds x="53.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="10.1" element="led"><bounds x="63.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="11.1" element="led"><bounds x="73.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="0.9" element="led"><bounds x="3.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="1.9" element="led"><bounds x="13.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="2.9" element="led"><bounds x="23.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="3.9" element="led"><bounds x="33.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.9" element="led"><bounds x="43.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.9" element="led"><bounds x="53.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.9" element="led"><bounds x="63.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.9" element="led"><bounds x="73.2" y="71.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.0" element="led"><bounds x="3.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.0" element="led"><bounds x="13.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.0" element="led"><bounds x="23.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.0" element="led"><bounds x="33.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="8.0" element="led"><bounds x="43.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="9.0" element="led"><bounds x="53.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="10.0" element="led"><bounds x="63.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="11.0" element="led"><bounds x="73.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="0.8" element="led"><bounds x="3.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="1.8" element="led"><bounds x="13.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="2.8" element="led"><bounds x="23.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="3.8" element="led"><bounds x="33.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="4.8" element="led"><bounds x="43.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="5.8" element="led"><bounds x="53.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="6.8" element="led"><bounds x="63.2" y="81.3" width="1.5" height="1.5" /></bezel>
<bezel name="7.8" element="led"><bounds x="73.2" y="81.3" width="1.5" height="1.5" /></bezel>
<!-- chessboard sensors -->
@ -486,6 +486,5 @@
<bezel element="text_lv"><bounds x="85.45" y="-8.95" width="4.9" height="2.9" /></bezel>
<bezel element="hlp" inputtag="IN.9" inputmask="0x08"><bounds x="85.4" y="-9" width="5" height="3" /><color alpha="0.25" /></bezel>
</view>
</mamelayout>