/** * @file GPIO.hpp * @brief Logical types for the YMF262 pin-control interface (used by GPIO policies). */ #ifndef GPIO_HPP #define GPIO_HPP /** @brief Logical activation state of a control line (CS, WR, IC...). */ enum class State{ ACTIVE, ///< Line asserted (the policy maps this to the correct electrical level) INACTIVE ///< Line deasserted }; /** @brief Selects what the data bus carries (drives the A0 line). */ enum class Port{ DATA, ///< Bus carries a data value ADDRESS ///< Bus carries a register address }; /** @brief Selects the register bank / array (drives the A1 line). */ enum class Bank{ BANK_0, ///< First register array BANK_1, ///< Second register array (OPL3 extended registers) }; #endif