Use new IO Port related types and further improvements of readability #1

Merged
jaby merged 18 commits from Overlay-The-Beginning_CDDrive_EndOfIO into Overlay-The-Beginning_CDDrive 2023-03-23 19:43:52 +00:00
2 changed files with 11 additions and 3 deletions
Showing only changes of commit ce523a5358 - Show all commits

View File

@ -21,9 +21,17 @@ namespace JabyEngine {
#define __declare_io_type(name, type, ...) \
template<template<typename> typename T> \
struct name##_io_base { \
T<type>::Value value; \
T<type>::Value raw_value; \
\
name##_io_base(type value) : raw_value(value) {} \
__VA_ARGS__ \
\
void operator=(type value) { \
this->raw_value = value; \
} \
type operator*() const { \
return this->raw_value; \
} \
}
template<typename T>

View File

@ -6,13 +6,13 @@ namespace JabyEngine {
namespace Memory_IO {
__declare_io_type(COM_DELAY, uint32_t,
void setup() {
this->value = 0x1325;
this->raw_value = 0x1325;
}
);
__declare_io_type(CD_DELAY, uint32_t,
void setup() {
this->value = 0x20943;
this->raw_value = 0x20943;
}
);