diff options
Diffstat (limited to 'vdp.hpp')
-rw-r--r-- | vdp.hpp | 23 |
1 files changed, 23 insertions, 0 deletions
@@ -0,0 +1,23 @@ +/* SPDX-License-Identifier: Unlicense + */ + +#pragma once + +#include "bus.hpp" + +#include <cstdio> + +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]{}; +}; |