mirror of
https://github.com/TomHarte/CLK.git
synced 2024-07-22 15:28:56 +00:00
Add drive activity lights.
This commit is contained in:
parent
92a07398cd
commit
20bad38d42
@ -1126,6 +1126,12 @@ uint8_t Chipset::DiskController::get_rdy_trk0_wpro_chng() {
|
|||||||
return 0xff & ~active_high;
|
return 0xff & ~active_high;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Chipset::DiskController::set_activity_observer(Activity::Observer *observer) {
|
||||||
|
for_all_drives([observer] (Storage::Disk::Drive &drive, size_t index) {
|
||||||
|
drive.set_activity_observer(observer, "Drive " + std::to_string(index+1), true);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
bool Chipset::DiskController::insert(const std::shared_ptr<Storage::Disk::Disk> &disk, size_t drive) {
|
bool Chipset::DiskController::insert(const std::shared_ptr<Storage::Disk::Disk> &disk, size_t drive) {
|
||||||
if(drive >= 4) return false;
|
if(drive >= 4) return false;
|
||||||
get_drive(drive).set_disk(disk);
|
get_drive(drive).set_disk(disk);
|
||||||
|
@ -104,6 +104,7 @@ class Chipset: private ClockingHint::Observer {
|
|||||||
// Activity observation.
|
// Activity observation.
|
||||||
void set_activity_observer(Activity::Observer *observer) {
|
void set_activity_observer(Activity::Observer *observer) {
|
||||||
cia_a_handler_.set_activity_observer(observer);
|
cia_a_handler_.set_activity_observer(observer);
|
||||||
|
disk_controller_.set_activity_observer(observer);
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
@ -235,6 +236,7 @@ class Chipset: private ClockingHint::Observer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool insert(const std::shared_ptr<Storage::Disk::Disk> &disk, size_t drive);
|
bool insert(const std::shared_ptr<Storage::Disk::Disk> &disk, size_t drive);
|
||||||
|
void set_activity_observer(Activity::Observer *);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void process_input_bit(int value) final;
|
void process_input_bit(int value) final;
|
||||||
|
Loading…
Reference in New Issue
Block a user