diff --git a/sh2.h b/sh2.h index 299093f..6ebbdaa 100644 --- a/sh2.h +++ b/sh2.h @@ -193,3 +193,15 @@ enum tocr_bits { // enum vcrd_bits { #define VCRD__FOVV(n) (n << 8) // }; + +enum ccr_bits { + CCR__W__WAY0 = (0b00 << 6), + CCR__W__WAY1 = (0b01 << 6), + CCR__W__WAY2 = (0b10 << 6), + CCR__W__WAY3 = (0b11 << 6), + CCR__CP__CACHE_PURGE = (0b1 << 4), + CCR__TW__TWO_WAY_MODE = (0b1 << 3), + CCR__OD__DATA_REPLACEMENT_DISABLE = (0b1 << 2), + CCR__ID__INSTRUCTION_REPLACEMENT_DISABLE = (0b1 << 1), + CCR__CE__CACHE_ENABLE = (0b1 << 0), +}; diff --git a/vdp1.h b/vdp1.h index 2d72fc8..be3fef3 100644 --- a/vdp1.h +++ b/vdp1.h @@ -35,7 +35,7 @@ typedef struct vdp1_cmd { }; cmd_point point[4]; }; - u16 GDRA; + u16 GRDA; u16 _dummy; } vdp1_cmd; @@ -99,7 +99,9 @@ enum pmod_bit { #define PMOD__COLOR_MODE__COLOR_BANK_256 (0b100 << 3) #define PMOD__COLOR_MODE__RGB (0b101 << 3) -#define PMOD__COLOR_CALCULATION ( << 0) +#define PMOD__COLOR_CALCULATION__GOURAUD_SHADING (0b100 << 0) +#define PMOD__COLOR_CALCULATION__HALF_ORIGINAL_GRAPHIC (0b010 << 0) +#define PMOD__COLOR_CALCULATION__HALF_BACKGROUND (0b001 << 0) }; // see "Pixel Data in Frame Buffer" in VDP1 manual