Reviewing post-dsl refactors, more pseudo instructions

This commit is contained in:
ed
2026-07-08 17:14:11 -04:00
parent 5e7da32387
commit 74f390c3b1
4 changed files with 41 additions and 45 deletions
-9
View File
@@ -63,14 +63,6 @@ U4 vsync(U4 mode) __asm__("VSync");
void draw_orderingtbl(U4* buf) __asm__("DrawOTag");
/* Primitive Handling Macros
* All primitive types (PolyTag, Poly_F3, Poly_F4, Poly_G3, Poly_G4,
* Poly_FT3, Poly_FT4, Poly_GT3, Poly_GT4) and the set_poly_* setters,
* set_len / set_addr / get_len / get_addr macros, and the
* orderingtbl_add_primitive(s) helpers all live in `duffle/gp.h`
* now (per the Phase 3 gp.h overhaul). This file no longer duplicates
* those definitions. */
typedef Struct_(Tile) {
U4 tag;
RGB8 color;
@@ -78,7 +70,6 @@ typedef Struct_(Tile) {
Rect_S2 rect;
};
/*
Linear Algebra
*/
+2 -2
View File
@@ -35,7 +35,7 @@ internal MipsAtom_(rbind_cube_tri) {
load_word(R_FaceCursor, R_TapePtr, O_(Binds_CubeTri,FaceCursor)),
load_word(R_VertBase, R_TapePtr, O_(Binds_CubeTri,VertBase)),
load_word(R_OtBase, R_TapePtr, O_(Binds_CubeTri,OtBase)),
add_ui_self( R_TapePtr, S_(Binds_CubeTri)),
add_ui_self( R_TapePtr, S_(Binds_CubeTri)),
// Note(Ed): This entire thing is argument shuffle?
// TODO(Ed): Eliminate
mac_yield()
@@ -225,7 +225,7 @@ typedef Struct_(Binds_SyncPrimitiveArena) { U4 used; U4 cursor; };
internal MipsAtom_(sync_primitive_arena) {
load_word(R_AT, R_TapePtr, O_(Binds_SyncPrimitiveArena,used)),
load_word(R_T0, R_TapePtr, O_(Binds_SyncPrimitiveArena,cursor)),
add_ui_self( R_TapePtr, S_(Binds_SyncPrimitiveArena)),
add_ui_self( R_TapePtr, S_(Binds_SyncPrimitiveArena)),
/* Calculate byte offset and store directly back to RAM */
sub_u( R_T0, R_PrimCursor, R_T0), // R_T0 = R_PrimCursor - binds.cursor
store_word(R_T0, R_AT, 0), // R_AT[0] = R_T0