/* SPDX-License-Identifier: Unlicense */ #pragma once #include "bus.hpp" #include class VDP { public: VDP(const uint32_t base_address_a = VDP_START): base_address(base_address_a) {} uint32_t Read(uint32_t offset, enum bitness); void Write(uint32_t offset, enum bitness, uint32_t value); const uint32_t base_address; private: void writeControl(uint16_t value); static constexpr size_t kRegistersCount = 0x18; uint8_t _reg[kRegistersCount]{}; };