mirror of
https://github.com/holub/mame
synced 2025-04-25 09:50:04 +03:00
apple2: TransWarp needs to stay at 1 MHz if software told it to (nw)
This commit is contained in:
parent
f6ee4fb096
commit
8d393c5e7f
@ -187,15 +187,22 @@ void a2bus_transwarp_device::device_reset()
|
||||
|
||||
void a2bus_transwarp_device::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
|
||||
{
|
||||
if (!(m_dsw2->read() & 0x80))
|
||||
if (m_bIn1MHzMode)
|
||||
{
|
||||
if (m_dsw1->read() & 0x80)
|
||||
m_ourcpu->set_unscaled_clock(1021800);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!(m_dsw2->read() & 0x80))
|
||||
{
|
||||
m_ourcpu->set_unscaled_clock(A2BUS_7M_CLOCK / 4);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_ourcpu->set_unscaled_clock(A2BUS_7M_CLOCK / 2);
|
||||
if (m_dsw1->read() & 0x80)
|
||||
{
|
||||
m_ourcpu->set_unscaled_clock(A2BUS_7M_CLOCK / 4);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_ourcpu->set_unscaled_clock(A2BUS_7M_CLOCK / 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
m_timer->adjust(attotime::never);
|
||||
@ -250,10 +257,12 @@ WRITE8_MEMBER( a2bus_transwarp_device::dma_w )
|
||||
{
|
||||
m_ourcpu->set_unscaled_clock(A2BUS_7M_CLOCK / 2);
|
||||
}
|
||||
m_bIn1MHzMode = false;
|
||||
}
|
||||
else if (data == 1)
|
||||
{
|
||||
m_ourcpu->set_unscaled_clock(1021800);
|
||||
m_bIn1MHzMode = true;
|
||||
}
|
||||
else if (data == 3)
|
||||
{
|
||||
|
@ -42,6 +42,7 @@ protected:
|
||||
private:
|
||||
bool m_bEnabled;
|
||||
bool m_bReadA2ROM;
|
||||
bool m_bIn1MHzMode;
|
||||
emu_timer *m_timer;
|
||||
|
||||
required_device<cpu_device> m_ourcpu;
|
||||
|
Loading…
Reference in New Issue
Block a user