taito/flstory.cpp, taito/nycaptor.cpp: Corrected sound CPU interrupt frequency. (#13408)

Interrupt is generated by dividing down the output of the 8 MHz crystal oscillator.
This commit is contained in:
JOTEGO 2025-02-26 13:38:52 +01:00 committed by GitHub
parent ce02290703
commit 098be490ce
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 7 additions and 5 deletions

View File

@ -1140,10 +1140,11 @@ void flstory_state::common(machine_config &config)
Z80(config, m_maincpu, XTAL(10'733'000)/2); // verified on PCB
m_maincpu->set_vblank_int("screen", FUNC(flstory_state::irq0_line_hold));
Z80(config, m_audiocpu, XTAL(8'000'000)/2); // verified on PCB
Z80(config, m_audiocpu, 8_MHz_XTAL/2); // verified on PCB
m_audiocpu->set_addrmap(AS_PROGRAM, &flstory_state::sound_map);
// IRQ generated by ???, NMI generated by the main CPU
m_audiocpu->set_periodic_int(FUNC(flstory_state::irq0_line_hold), attotime::from_hz(2*60));
// IRQ generated with discrete-logic counter
const attotime audio_irq_period = attotime::from_ticks(0x10000, 8_MHz_XTAL);
m_audiocpu->set_periodic_int(FUNC(flstory_state::irq0_line_hold), audio_irq_period);
// 100 CPU slices per frame - a high value to ensure proper synchronization of the CPUs
config.set_maximum_quantum(attotime::from_hz(6000));

View File

@ -742,9 +742,10 @@ void nycaptor_state::nycaptor(machine_config &config)
m_subcpu->set_addrmap(AS_PROGRAM, &nycaptor_state::nycaptor_slave_map);
m_subcpu->set_vblank_int("screen", FUNC(nycaptor_state::irq0_line_hold)); /* IRQ generated by ??? */
Z80(config, m_audiocpu, 8000000/2);
Z80(config, m_audiocpu, 8_MHz_XTAL/2);
m_audiocpu->set_addrmap(AS_PROGRAM, &nycaptor_state::sound_map);
m_audiocpu->set_periodic_int(FUNC(nycaptor_state::irq0_line_hold), attotime::from_hz(2*60)); /* IRQ generated by ??? */
const attotime audio_irq_period = attotime::from_ticks(0x10000, 8_MHz_XTAL);
m_audiocpu->set_periodic_int(FUNC(nycaptor_state::irq0_line_hold), audio_irq_period); /* IRQ generated with discrete logic */
TAITO68705_MCU(config, m_bmcu, 2000000);