mirror of
https://github.com/TomHarte/CLK.git
synced 2025-02-16 18:30:32 +00:00
Enables an assumption of partial address decoding at the ACIA and PSG.
This commit is contained in:
parent
42a9585321
commit
3ab4fb8c79
@ -292,7 +292,7 @@ class ConcreteMachine:
|
|||||||
cycle.set_value8_high(ay_.get_data_output());
|
cycle.set_value8_high(ay_.get_data_output());
|
||||||
ay_.set_control_lines(GI::AY38910::ControlLines(0));
|
ay_.set_control_lines(GI::AY38910::ControlLines(0));
|
||||||
} else {
|
} else {
|
||||||
if((address >> 1) == 0x7fc400) {
|
if(!(address&2)) {
|
||||||
ay_.set_control_lines(GI::AY38910::BC1);
|
ay_.set_control_lines(GI::AY38910::BC1);
|
||||||
} else {
|
} else {
|
||||||
ay_.set_control_lines(GI::AY38910::ControlLines(GI::AY38910::BC2 | GI::AY38910::BDIR));
|
ay_.set_control_lines(GI::AY38910::ControlLines(GI::AY38910::BC2 | GI::AY38910::BDIR));
|
||||||
@ -349,7 +349,7 @@ class ConcreteMachine:
|
|||||||
mc68000_.set_is_peripheral_address(!cycle.data_select_active());
|
mc68000_.set_is_peripheral_address(!cycle.data_select_active());
|
||||||
if(!cycle.data_select_active()) return delay;
|
if(!cycle.data_select_active()) return delay;
|
||||||
|
|
||||||
const auto acia_ = ((address >> 1) < 0x7ffe02) ? &keyboard_acia_ : &midi_acia_;
|
const auto acia_ = (address & 4) ? &midi_acia_ : &keyboard_acia_;
|
||||||
if(cycle.operation & Microcycle::Read) {
|
if(cycle.operation & Microcycle::Read) {
|
||||||
cycle.set_value8_high((*acia_)->read(int(address >> 1)));
|
cycle.set_value8_high((*acia_)->read(int(address >> 1)));
|
||||||
} else {
|
} else {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user