lh5801: Internalize clock divider (nw)

pc1500: Use documented XTAL value (nw)
This commit is contained in:
AJR 2019-12-28 07:37:02 -05:00
parent 6be384820b
commit 47a5afd66c
3 changed files with 5 additions and 2 deletions

View File

@ -75,6 +75,8 @@ protected:
virtual void device_reset() override;
// device_execute_interface overrides
virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 2 - 1) / 2; }
virtual uint64_t execute_cycles_to_clocks(uint64_t cycles) const noexcept override { return (cycles * 2); }
virtual uint32_t execute_min_cycles() const noexcept override { return 2; }
virtual uint32_t execute_max_cycles() const noexcept override { return 19; }
virtual uint32_t execute_input_lines() const noexcept override { return 2; }

View File

@ -80,6 +80,7 @@ const double XTAL::known_xtals[] = {
2'097'152, /* 2.097152_MHz_XTAL Icatel 1995 - Brazilian public payphone */
2'457'600, /* 2.4576_MHz_XTAL Atari ST MFP */
2'500'000, /* 2.5_MHz_XTAL Janken Man units */
2'600'000, /* 2.6_MHz_XTAL Sharp PC-1500 */
2'950'000, /* 2.95_MHz_XTAL Playmatic MPU-C, MPU-III & Sound-3 */
3'000'000, /* 3_MHz_XTAL Probably only used to drive 68705 or similar MCUs on 80's Taito PCBs */
3'072'000, /* 3.072_MHz_XTAL INS 8520 input clock rate */

View File

@ -274,7 +274,7 @@ void pc1500_state::pc1500_palette(palette_device &palette) const
void pc1500_state::pc1500(machine_config &config)
{
LH5801(config, m_maincpu, 1300000); // 1.3 MHz
LH5801(config, m_maincpu, 2.6_MHz_XTAL); // 1.3 MHz internally
m_maincpu->set_addrmap(AS_PROGRAM, &pc1500_state::pc1500_mem);
m_maincpu->set_addrmap(AS_IO, &pc1500_state::pc1500_mem_io);
m_maincpu->in_func().set(FUNC(pc1500_state::pc1500_kb_r));
@ -297,7 +297,7 @@ void pc1500_state::pc1500(machine_config &config)
ioports.portc_w().set(FUNC(pc1500_state::port_c_w));
ioports.out_int().set_inputline("maincpu", LH5801_LINE_MI);
UPD1990A(config, m_rtc);
UPD1990A(config, m_rtc, 32.768_kHz_XTAL);
}