mirror of
https://github.com/TomHarte/CLK.git
synced 2025-08-07 23:25:00 +00:00
Enables fuzzing, adds a definite no-op write.
This commit is contained in:
@@ -122,8 +122,8 @@ class ConcreteMachine:
|
|||||||
iwm_->set_drive(0, &drives35_[0]);
|
iwm_->set_drive(0, &drives35_[0]);
|
||||||
iwm_->set_drive(1, &drives35_[1]);
|
iwm_->set_drive(1, &drives35_[1]);
|
||||||
|
|
||||||
// TODO: enable once machine is otherwise sane.
|
// Randomise RAM contents.
|
||||||
// Memory::Fuzz(ram_);
|
Memory::Fuzz(ram_);
|
||||||
|
|
||||||
// Sync up initial values.
|
// Sync up initial values.
|
||||||
memory_.set_speed_register(speed_register_);
|
memory_.set_speed_register(speed_register_);
|
||||||
@@ -533,6 +533,10 @@ class ConcreteMachine:
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
// Addresses on other Apple II devices which do nothing on the GS.
|
||||||
|
case Write(0xc07e):
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
// Update motor mask bits.
|
// Update motor mask bits.
|
||||||
switch(address_suffix) {
|
switch(address_suffix) {
|
||||||
@@ -650,17 +654,12 @@ class ConcreteMachine:
|
|||||||
if(operation == CPU::WDC65816::BusOperation::ReadOpcode) {
|
if(operation == CPU::WDC65816::BusOperation::ReadOpcode) {
|
||||||
assert(address);
|
assert(address);
|
||||||
}
|
}
|
||||||
// if((address > 0x200 && address < 0x2000) || (address > 0x010200 && address < 0x012000)) {
|
// if(address == 0xe115fe || address == 0xe115ff) {
|
||||||
// printf("%06x %s %02x%s\n", address, isReadOperation(operation) ? "->" : "<-", *value,
|
// printf("%06x %s %02x%s\n", address, isReadOperation(operation) ? "->" : "<-", *value,
|
||||||
// operation == CPU::WDC65816::BusOperation::ReadOpcode ? " [*]" : "");
|
// operation == CPU::WDC65816::BusOperation::ReadOpcode ? " [*]" : "");
|
||||||
// }
|
// }
|
||||||
// log |= (address >= 0xff9b00) && (address < 0xff9b32);
|
// log |= (operation == CPU::WDC65816::BusOperation::ReadOpcode) && (address == 0xfc0d50);
|
||||||
// log |= (operation == CPU::WDC65816::BusOperation::ReadOpcode) && (address < 0x100);
|
// log &= !((operation == CPU::WDC65816::BusOperation::ReadOpcode) && ((address >= 0xfc0d5b) || (address < 0xfc0d50)));
|
||||||
// log |= total >= 77750000;
|
|
||||||
// log |= (address == 0x1f6) && (total >= 60000000);
|
|
||||||
// log |= (address == 0x48) && (*value == 0x02);
|
|
||||||
// log |= (operation == CPU::WDC65816::BusOperation::ReadOpcode) && (address >= 0x800) && (address < 0x900);
|
|
||||||
// log &= !((operation == CPU::WDC65816::BusOperation::ReadOpcode) && (address == 0x0002));
|
|
||||||
if(log) {
|
if(log) {
|
||||||
printf("%06x %s %02x", address, isReadOperation(operation) ? "->" : "<-", *value);
|
printf("%06x %s %02x", address, isReadOperation(operation) ? "->" : "<-", *value);
|
||||||
if(operation == CPU::WDC65816::BusOperation::ReadOpcode) {
|
if(operation == CPU::WDC65816::BusOperation::ReadOpcode) {
|
||||||
|
Reference in New Issue
Block a user