1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-06-30 22:29:56 +00:00
CLK/Components/8272/Status.hpp
2023-11-25 18:10:49 -05:00

46 lines
708 B
C++

//
// Status.hpp
// Clock Signal
//
// Created by Thomas Harte on 25/11/2023.
// Copyright © 2023 Thomas Harte. All rights reserved.
//
#ifndef Status_hpp
#define Status_hpp
namespace Intel::i8272 {
class Status {
public:
uint8_t main() const {
return main_status_;
}
void reset() {
main_status_ = DataReady;
status_[0] = status_[1] = status_[2] = 0;
}
private:
uint8_t main_status_;
uint8_t status_[3];
enum MainStatus: uint8_t {
FDD0Seeking = 0x01,
FDD1Seeking = 0x02,
FDD2Seeking = 0x04,
FDD3Seeking = 0x08,
ReadOrWriteOngoing = 0x10,
InNonDMAExecution = 0x20,
DataIsToProcessor = 0x40,
DataReady = 0x80,
};
};
}
#endif /* Status_hpp */