mirror of
https://github.com/TomHarte/CLK.git
synced 2024-12-27 16:31:31 +00:00
Corrected basic error. Arbitration now seems to succeed.
This is seemingly followed by a pattern of signalling BUSY+SEL followed by just SEL with the various other potential device IDs in turn. To which nothing ever responds as currently implemented.
This commit is contained in:
parent
f668e4a54c
commit
9047932b81
@ -66,7 +66,7 @@ void NCR5380::write(int address, uint8_t value) {
|
||||
if(mode_ & 1) {
|
||||
if(state_ == ExecutionState::None) {
|
||||
set_execution_state(ExecutionState::WatchingBusy);
|
||||
arbitration_in_progress_ = false;
|
||||
arbitration_in_progress_ = true;
|
||||
lost_arbitration_ = false;
|
||||
}
|
||||
} else {
|
||||
@ -118,7 +118,7 @@ uint8_t NCR5380::read(int address) {
|
||||
return uint8_t(bus_.get_state());
|
||||
|
||||
case 1:
|
||||
LOG("[SCSI 1] Initiator command register get");
|
||||
LOG("[SCSI 1] Initiator command register get: " << (arbitration_in_progress_ ? 'p' : '-') << (lost_arbitration_ ? 'l' : '-'));
|
||||
return
|
||||
// Bits repeated as they were set.
|
||||
(initiator_command_ & ~0x60) |
|
||||
|
Loading…
Reference in New Issue
Block a user