aboutsummaryrefslogtreecommitdiff
path: root/src/ppu/internals.h
diff options
context:
space:
mode:
authorlonkaars <loek@pipeframe.xyz>2023-02-24 19:11:59 +0100
committerlonkaars <loek@pipeframe.xyz>2023-02-24 19:11:59 +0100
commitf5c8ae2f2d2074d483490e857db5aef8388f06c9 (patch)
treea76e1985433216a31e112d3f4daccdf19097c06d /src/ppu/internals.h
parent5f5c6a410cafaa917ca3ff0a2a95bb1f2db4b980 (diff)
c interface semi-done
Diffstat (limited to 'src/ppu/internals.h')
-rw-r--r--src/ppu/internals.h19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/ppu/internals.h b/src/ppu/internals.h
index ddb2196..7b60255 100644
--- a/src/ppu/internals.h
+++ b/src/ppu/internals.h
@@ -2,7 +2,7 @@
#include <stdbool.h>
-#include "types.h"
+#include "ppu/types.h"
typedef struct {
hh_ppu_addr_t offset;
@@ -10,13 +10,16 @@ typedef struct {
hh_ppu_data_t* data;
} hh_s_ppu_vram_data;
+/** @brief check if `addr` is a valid PPU address */
bool hh_ppu_vram_valid_address(hh_ppu_addr_t addr);
-void hh_ppu_vram_write(hh_ppu_addr_t addr, hh_ppu_data_t data);
-void hh_ppu_vram_memcpy(void* a, hh_s_ppu_vram_data b);
+/** @brief direct write vram word (platform-specific implementation) */
+void hh_ppu_vram_dwrite(hh_ppu_addr_t addr, hh_ppu_data_t data);
+/** @brief write data block into vram */
+void hh_ppu_vram_write(hh_s_ppu_vram_data data);
-hh_s_ppu_vram_data* hh_ppu_2nat_bam(hh_s_ppu_loc_bam_entry);
-hh_s_ppu_vram_data* hh_ppu_2nat_fam(hh_s_ppu_loc_fam_entry);
-hh_s_ppu_vram_data* hh_ppu_2nat_aux(hh_s_ppu_loc_aux);
-hh_s_ppu_vram_data* hh_ppu_2nat_sprite(hh_ppu_loc_sprite_data_t);
-hh_s_ppu_vram_data* hh_ppu_2nat_pal(hh_ppu_loc_palette_data_t);
+hh_s_ppu_vram_data hh_ppu_2nat_bam(hh_s_ppu_loc_bam_entry);
+hh_s_ppu_vram_data hh_ppu_2nat_fam(hh_s_ppu_loc_fam_entry);
+hh_s_ppu_vram_data hh_ppu_2nat_aux(hh_s_ppu_loc_aux);
+hh_s_ppu_vram_data hh_ppu_2nat_sprite(hh_ppu_loc_sprite_data_t);
+hh_s_ppu_vram_data hh_ppu_2nat_color(hh_ppu_rgb_color_t);