mirror of
https://github.com/holub/mame
synced 2025-04-19 15:11:37 +03:00
upd7801, upd7807, upd7810, upd78c11: Divide internal clock by 2 or 3
This commit is contained in:
parent
c641fe72db
commit
30094c0abc
@ -131,6 +131,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 + 3 - 1) / 3; }
|
||||
virtual uint64_t execute_cycles_to_clocks(uint64_t cycles) const noexcept override { return (cycles * 3); }
|
||||
virtual uint32_t execute_min_cycles() const noexcept override { return 1; }
|
||||
virtual uint32_t execute_max_cycles() const noexcept override { return 40; }
|
||||
virtual uint32_t execute_input_lines() const noexcept override { return 2; }
|
||||
@ -1374,6 +1376,8 @@ public:
|
||||
|
||||
protected:
|
||||
virtual void device_reset() override;
|
||||
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 void execute_set_input(int inputnum, int state) override;
|
||||
virtual std::unique_ptr<util::disasm_interface> create_disassembler() override;
|
||||
virtual void handle_timers(int cycles) override;
|
||||
|
@ -196,7 +196,7 @@ void korg_ds8_state::palette_init_ds8(palette_device &palette)
|
||||
|
||||
void korg_ds8_state::ds8(machine_config &config)
|
||||
{
|
||||
UPD7810(config, m_maincpu, 12_MHz_XTAL / 3); // µPD78C10CW (FIXME: internalize divider)
|
||||
UPD7810(config, m_maincpu, 12_MHz_XTAL); // µPD78C10CW
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &korg_ds8_state::mem_map);
|
||||
m_maincpu->pa_in_cb().set(FUNC(korg_ds8_state::kbd_sw_r));
|
||||
m_maincpu->pb_out_cb().set(FUNC(korg_ds8_state::scan_w));
|
||||
|
@ -336,7 +336,7 @@ GFXDECODE_END
|
||||
|
||||
void nibble_state::nibble(machine_config &config)
|
||||
{
|
||||
UPD7811(config, m_maincpu, MASTER_CLOCK / 3); // type guessed; clock not verified
|
||||
UPD7811(config, m_maincpu, MASTER_CLOCK); // type guessed; clock not verified
|
||||
m_maincpu->set_addrmap(AS_PROGRAM, &nibble_state::nibble_map);
|
||||
//m_maincpu->set_vblank_int("screen", FUNC(nibble_state::nibble_interrupt));
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user