aboutsummaryrefslogtreecommitdiff
path: root/render.h
diff options
context:
space:
mode:
authorquou <quou@disroot.org>2024-09-23 21:11:29 +1000
committerquou <quou@disroot.org>2024-09-23 21:11:29 +1000
commit259237fae792e8f19d9b7920b2354f75bc1789e2 (patch)
treeaf079430f30f7df1b76efc4f96f520b0b6eee0af /render.h
initial commit, basic platform and rendering code.
Diffstat (limited to 'render.h')
-rw-r--r--render.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/render.h b/render.h
new file mode 100644
index 0000000..01391c5
--- /dev/null
+++ b/render.h
@@ -0,0 +1,29 @@
+#ifndef render_h
+#define render_h
+
+struct Rect;
+
+typedef struct Bitmap {
+ short w, h;
+} Bitmap;
+
+typedef struct {
+ unsigned* t;
+ int w, h;
+ int clip[4];
+} Renderer;
+
+void ren_begin(Renderer* r, unsigned* t, int w, int h);
+void ren_end(Renderer* r);
+void ren_clear(Renderer* r);
+void ren_char(Renderer* r, int x, int y, char ch);
+void ren_text(Renderer* r, int x, int y, const char* t);
+void ren_map(
+ Renderer* r,
+ int x,
+ int y,
+ const struct Rect* re,
+ const Bitmap* bm
+);
+
+#endif