saitek_osa: use boost interleave instead of perfect quantum

This commit is contained in:
hap 2021-05-17 17:09:27 +02:00
parent 8d9b2b3b57
commit c5ae39b414
3 changed files with 18 additions and 5 deletions

View File

@ -113,6 +113,7 @@ on Joerg Woerner's datamath.org: http://www.datamath.org/IC_List.htm
@M34038 TMS1100 1982, Parker Brothers Lost Treasure
M34047 TMS1100 1982, MicroVision cartridge: Super Blockbuster
@M34078A TMS1100 1983, Milton Bradley Electronic Arcade Mania
*M34137 TMS1100? 1985, Technasonic Weight Talker
@MP4486A TMS1000C 1983, Vulcan XL 25
*MP6061 TMS0970 1979, Texas Instruments Electronic Digital Thermostat (from patent, the one in MAME didn't have a label)
@MP6100A TMS0980 1979, Ideal Electronic Detective
@ -129,7 +130,7 @@ on Joerg Woerner's datamath.org: http://www.datamath.org/IC_List.htm
@MP7551 TMS1670 1980, Entex Color Football 4 (6009)
@MPF553 TMS1670 1980, Gakken/Entex Jackpot: Gin Rummy & Black Jack (6008) (note: assume F to be a misprint)
MP7573 TMS1670 1981, Entex Select-A-Game cartridge: Football 4 -> sag.cpp
*M30026 TMS2370 1983, Yaesu FT-757 Display Unit part
*M30026 TMS2370 1983, Yaesu FT-757 Display Unit part
*M95041 TMS2670 1983, Tsukuda Game Pachinko
inconsistent:

View File

@ -102,6 +102,7 @@ private:
u8 unk_r();
void unk_w(u8 data);
void exp_stb_w(int state);
void exp_rts_w(int state);
u8 p2_r();
void p2_w(u8 data);
@ -170,6 +171,12 @@ void leo_state::exp_stb_w(int state)
m_maincpu->set_input_line(M6801_IS_LINE, state ? CLEAR_LINE : ASSERT_LINE);
}
void leo_state::exp_rts_w(int state)
{
// ?
machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(100));
}
// MCU ports
@ -318,8 +325,6 @@ void leo_state::leo(machine_config &config)
m_maincpu->in_p6_cb().set(FUNC(leo_state::p6_r));
m_maincpu->out_p6_cb().set(FUNC(leo_state::p6_w));
config.set_perfect_quantum(m_maincpu);
SENSORBOARD(config, m_board).set_type(sensorboard_device::MAGNETS);
m_board->init_cb().set(m_board, FUNC(sensorboard_device::preset_chess));
m_board->set_delay(attotime::from_msec(150));
@ -335,6 +340,7 @@ void leo_state::leo(machine_config &config)
// expansion module
SAITEKOSA_EXPANSION(config, m_expansion, saitekosa_expansion_modules);
m_expansion->stb_handler().set(FUNC(leo_state::exp_stb_w));
m_expansion->rts_handler().set(FUNC(leo_state::exp_rts_w));
}
void leo_state::leoa(machine_config &config)

View File

@ -93,6 +93,7 @@ private:
void control_w(u8 data);
u8 control_r();
void exp_stb_w(int state);
void exp_rts_w(int state);
u8 p2_r();
void p2_w(u8 data);
@ -185,6 +186,12 @@ void ren_state::exp_stb_w(int state)
m_maincpu->set_input_line(M6801_IS_LINE, state ? CLEAR_LINE : ASSERT_LINE);
}
void ren_state::exp_rts_w(int state)
{
// ?
machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(100));
}
// MCU ports
@ -329,8 +336,6 @@ void ren_state::ren(machine_config &config)
m_maincpu->in_p6_cb().set(FUNC(ren_state::p6_r));
m_maincpu->out_p6_cb().set(FUNC(ren_state::p6_w));
config.set_perfect_quantum(m_maincpu);
SENSORBOARD(config, m_board).set_type(sensorboard_device::MAGNETS);
m_board->init_cb().set(m_board, FUNC(sensorboard_device::preset_chess));
m_board->set_delay(attotime::from_msec(150));
@ -356,6 +361,7 @@ void ren_state::ren(machine_config &config)
// expansion module
SAITEKOSA_EXPANSION(config, m_expansion, saitekosa_expansion_modules);
m_expansion->stb_handler().set(FUNC(ren_state::exp_stb_w));
m_expansion->rts_handler().set(FUNC(ren_state::exp_rts_w));
}