mirror of
https://github.com/Ed94/pikuma_ps1.git
synced 2026-08-09 00:58:16 +00:00
Need to rewrite the ps1 lua metaprogram sometime soonish. Getting too bloated... need to consolidate code paths. In this push codebase structure is starting to get a bit more realized. Decided todo now to match Pikuma's linking module files vods beginning to reorganize its codebase as well. Atoms & atom components are not in their on *.atom.c files. (Not calling it tape.c as I don't really bake tapes like that outside of the unity c file so far...) The lua metaprogram has had additional features added to it yet again to avoid hardcoding module handling and supporting multiple atom files per-module. Either after the camera or cd-rom section I'll be most likely pausing to fully refactor the metaprogram. Possibly as a full re-write to get the loc minimal.
30 lines
1.0 KiB
C
30 lines
1.0 KiB
C
#ifdef INTELLISENSE_DIRECTIVES
|
|
# include "gen/macs.h"
|
|
# include "gen/offsets.h"
|
|
# include "math.h"
|
|
# include "lottes_tape.h"
|
|
#endif
|
|
|
|
ATOM_FILE_DEBUGGER_LINE_MARKER(math_atom_c);
|
|
|
|
#pragma region MACs (Mips Atom Component)
|
|
|
|
FI_ Slice_MipsCode ac_load_v2s2(U4 rs_x, U4 rs_y, U4 r_base, U4 offset) atom_dbg_skip MipsAtomComp_Proc_(ac_load_v2s2, {
|
|
load_half( rs_x, r_base, O_(V3_S2,x)),
|
|
load_half( rs_y, r_base, O_(V3_S2,y)),
|
|
})
|
|
|
|
FI_ Slice_MipsCode ac_store_v2s2(U4 rt_x, U4 rt_y, U4 base, U4 offset) atom_dbg_skip MipsAtomComp_Proc_(ac_store_v2s2, {
|
|
store_half(rt_x, base, offset + O_(V2_S2,x)),
|
|
store_half(rt_y, base, offset + O_(V2_S2,y)),
|
|
})
|
|
|
|
FI_ Slice_MipsCode ac_store_rects2(U4 rt_x, U4 rt_y, U4 rt_width, U4 rt_height, U4 base, U4 offset) atom_dbg_skip MipsAtomComp_Proc_(ac_store_rects2, {
|
|
store_half(rt_x, base, offset + O_(Rect_S2,x)),
|
|
store_half(rt_y, base, offset + O_(Rect_S2,y)),
|
|
store_half(rt_width, base, offset + O_(Rect_S2,width)),
|
|
store_half(rt_height, base, offset + O_(Rect_S2,height)),
|
|
})
|
|
|
|
#pragma endregion MACs (Mips Atom Component)
|