Commit Graph
100 Commits
Author SHA1 Message Date
ed 407c7d352a cube_tri 2026-07-09 10:48:55 -04:00
ed 8541713d0c metaprogram improvements 2026-07-09 01:17:35 -04:00
ed 602a0b46d8 Still learning/de-obfuscating 2026-07-08 21:17:16 -04:00
ed 74f390c3b1 Reviewing post-dsl refactors, more pseudo instructions 2026-07-08 17:14:11 -04:00
ed 5e7da32387 Adjustments to gp docs 2026-07-08 13:38:25 -04:00
ed 5375478044 gp.h improvements 2026-07-08 10:21:31 -04:00
ed 10c8dcdc07 improving dsl: gte. 2026-07-08 00:37:27 -04:00
ed d0b1bae896 improving dsl. 2026-07-08 00:30:02 -04:00
ed 0b147a8b0c need to change symbols.. 2026-07-07 23:28:20 -04:00
ed 101b07fe71 fixes, de-obufscation... still confused about formating color... 2026-07-07 22:12:06 -04:00
ed a01e724211 add another todo.. 2026-07-07 12:11:13 -04:00
ed 7a1def6c46 WIP: still adjusting, deofuscating with annotation...
Problably will redesign the atom annotation DSL its too much curft rn, should be alot simpiler...
2026-07-07 10:38:16 -04:00
ed 6eee0249ff learning... 2026-07-07 01:22:09 -04:00
ed 93bab89f76 somehwat of a success... but bloated. 2026-07-07 00:39:25 -04:00
ed b17a653d20 oops 2026-07-06 22:12:49 -04:00
ed 26a63ed908 decruft lua warnings. 2026-07-06 20:05:57 -04:00
ed c293e35cb4 lua metaprogram adjustments 2026-07-06 19:13:53 -04:00
ed b29fc7dc02 oops 2026-07-06 18:15:34 -04:00
ed ffcd43c1ea adjustments, studying 2026-07-06 13:08:16 -04:00
ed 352a8c9c25 Made the atom offset/label metaprogram! Still need to support more than one branch per-atom. 2026-07-06 10:10:02 -04:00
ed c3a7e22743 need to finally make a metaprogram for offset math... 2026-07-06 08:28:40 -04:00
ed 54968d20e0 refining 2026-07-05 22:59:27 -04:00
ed 13a0b9dca4 forcing myself to move forward, need to address missing annotations for "name bindings" on allocated registers. 2026-07-05 21:26:26 -04:00
ed b1982ba862 wip 2026-06-16 00:30:21 -04:00
ed 288f92ff5b prep 2026-06-15 22:40:28 -04:00
ed 68fd4ca791 now we're cookin 2026-06-15 01:59:18 -04:00
ed e7d0b7a4b3 re-nabled culling, remove some magic numbers, do the mvt in c fo rnow 2026-06-14 20:47:10 -04:00
ed 47806e3d21 got a working floor! (bouncy though) 2026-06-14 20:35:33 -04:00
ed c4e25daa9b triangle spotted (not yellow!) 2026-06-14 19:53:00 -04:00
ed 2e4912b1e2 tape diag yield works but not color, gte diags. Floor tri asm atom crashes. 2026-06-14 19:19:14 -04:00
ed 1b77d8bae3 WIP: trying to see if I can get this tape execution working 2026-06-14 18:38:38 -04:00
ed 2c3d0c4af7 orgnaizing, improving asm annotation 2026-06-14 17:27:52 -04:00
ed 0040f6326e just do regular varadic subst, adjusting annotation convention 2026-06-14 14:55:09 -04:00
ed 30e2a84ebf reducing cruft (still ideating) 2026-06-14 13:15:25 -04:00
ed 66facd79dd minor 2026-06-14 09:08:52 -04:00
ed 4603a3bb9a add some fictional stuff for notes 2026-06-14 08:49:05 -04:00
ed 35c9278ebb big oops 2026-06-12 23:07:31 -04:00
ed 915b14ef31 gte_nclip docs 2026-06-04 19:40:21 -04:00
ed 8d03366d92 cool 2026-06-04 19:08:23 -04:00
ed 1b1c926318 last stuff for the night (need to clean up later) 2026-06-02 02:10:04 -04:00
ed 0573644494 slight adjsutments 2026-06-02 01:34:54 -04:00
ed bcb9d9a77c hell yes. 2026-06-02 01:34:39 -04:00
ed 912fdcde30 https://www.ibiblio.org/gferg/ldp/GCC-Inline-Assembly-HOWTO.html 2026-06-01 23:27:40 -04:00
ed 28bb20d6fe compiles.. 2026-06-01 22:58:29 -04:00
ed d776d71574 mabye one day 2026-06-01 22:01:22 -04:00
ed 690d184acf PITA 2026-06-01 21:50:50 -04:00
ed 5cc30bacc6 not good at this 2026-06-01 20:55:50 -04:00
ed d89a29c941 WIP: Still learning 2026-06-01 20:29:58 -04:00
ed e178743ffb WIP: still learning 2026-06-01 20:29:48 -04:00
ed 27667a4232 experimenting 2026-06-01 17:19:04 -04:00
ed 11cc936d2d more prep 2026-06-01 16:14:05 -04:00
ed 679c022625 progress on mips/GTE/asm setup 2026-06-01 11:12:16 -04:00
ed b81221cbf5 I don't like c asm 2026-06-01 09:25:21 -04:00
ed fe4bd6d86d WIP: preparing to setup metaprogramming codegen for PS1 processors. 2026-06-01 02:57:56 -04:00
ed 8b5fb7a5a1 prepping to setup gte.h with similar setup to gp.h, maybe with more lessons from color forth learnings.. 2026-05-31 23:26:43 -04:00
ed d2d47ac8a4 add additional psx docs 2026-05-31 20:48:07 -04:00
ed 1848a6b48e Setting up hello_gte (should have done this earlier) 2026-05-31 20:47:55 -04:00
ed 66981351ee 7/7 Fixed-Point math 2026-05-31 20:23:14 -04:00
ed e409fe0b2d 2/7 Fixed-Point math 2026-05-24 21:06:05 -04:00
ed d1919137a3 Finish chapter: The GTE Coprocessor. 2026-03-28 12:51:29 -04:00
edandGitHub b846c697c6 LICENSE
Added a public domain license for the software.
2025-11-01 12:05:14 -04:00
ed ee192c41a6 minor correction to asm 2025-10-12 11:27:39 -04:00
ed a3afa95325 propogating stuff done in c to the asm defs 2025-10-11 08:53:34 -04:00
ed 1b99a913fe add cube pic 2025-10-11 03:05:24 -04:00
ed 7c607e82ab finished GTE Coprrocessor normal clip vod 2025-10-11 03:03:40 -04:00
ed afc0e1a818 missing adjustments 2025-10-11 00:22:56 -04:00
ed 274e0f31f5 Update convention yet again
Doing stuff inspired by Timothy Lottes's fixing c vod
2025-10-11 00:18:44 -04:00
ed 2f797bf9e2 setup hello_gpu.h/c to not directly depend on header defs from psyq 2025-09-15 10:12:37 -04:00
ed fd61fc56db minor changes 2025-09-15 01:51:46 -04:00
ed f35e60877c Sorting Primitives into the OT
Started to add some ergonomic definitions into duffle.
2025-09-15 01:36:25 -04:00
ed e04bcb91b4 got gp_screen_init working on the assembler side!
Will not be doing most of the course in assembly for now.
Assemblers are missing a bunch of ergonomics not related to to instruction abstraction. Mostly related to offset and data typw width calulations and how to ergonomically utilize those symbols within the assembly syntax. The GNU gas macros are terrible and struct member resolution must be done manually.
There is no utilities for doing stack allocations with alignment in mind either, no way to get info on the system's calling convention for foreign symbols (not even as a diagnostic, etc).

C is a terrible for inline assembly, and gas doesn't support grabbing C struct info from header files (even though they are part of the same toolchain collection).
There is no utilities for doing stack allocations with alignment in mind either, no way to get info on the system's calling convention for foreign symbols (not even as a diagnostic, etc).

Low-level dev really is in a catch 22 of bad tooling.
2025-09-13 21:49:10 -04:00
ed ebc6895c61 wip: attempting to do gp_display_frame and gp_screen_init in asm 2025-08-07 10:54:05 -04:00
ed 046800b9d8 definition prep (still exploring..) 2025-08-07 01:53:15 -04:00
ed 8b252c4e68 get asm symbolic source debugging working with gnu assembler and gdb psyq builds 2025-08-06 14:18:11 -04:00
ed b9494d219f determining the level of granularity I have with asm symbolic debugging. 2025-08-06 08:44:20 -04:00
ed c052253b0e setup graphics_hello_psyq 2025-08-05 23:34:34 -04:00
ed 47ce58159d got hello psyq doing its job. removing pxdev_sample as no longer needed. 2025-08-05 23:04:07 -04:00
ed 479a65ba36 build script seems to work not to prep the debug script... 2025-08-05 22:41:03 -04:00
ed 32c7adad6a more progress 2025-08-05 22:16:55 -04:00
ed 713ad6a57a more progress on psyq program build script 2025-08-05 21:54:09 -04:00
ed 5da7c2e3b0 Updating dependencies docs and prepping for more advanced script usage of toolchain for Psy-Q 2025-08-05 21:22:49 -04:00
ed cc487a0e42 spinning cube build.ps1 working
Just need to generalize it now and test assembly usage.
2025-08-05 10:21:11 -04:00
ed 453953fb4d wip: working towards my own build script for psyqo utilizing programs 2025-08-05 02:25:33 -04:00
ed 8f71a7bf9c Setup debug for spinning cube 2025-08-05 00:06:58 -04:00
ed d64eaf8e2f graphics_system -> graphics_hello 2025-08-04 23:58:09 -04:00
ed fb6f1a8e53 commit the surface file for now... 2025-08-04 23:34:23 -04:00
ed 1a5ff2d9cf don't know what I'm going todo with this spinning cube example... 2025-08-04 23:31:03 -04:00
ed aa29c41638 prepping C-toolchain 2025-08-04 23:10:17 -04:00
ed 92f549dbf5 delay slot filling 2025-08-04 21:56:44 -04:00
ed 48b8a68d9e hello_logo (slightly messed up)
For some reason the resolution on duckstation is 640x464.
Does not run in pcsx-redux, known issue based on the discussions
2025-08-04 21:45:50 -04:00
ed 2eb0c788ce bitshift divison 2025-08-04 19:45:22 -04:00
ed 7ac7371ac7 hello_images 2025-08-04 01:08:01 -04:00
ed 3d0d02b86e stack parameters gp routine! 2025-08-03 23:27:02 -04:00
ed 6e7809848b hello gp routines 2025-08-03 22:01:36 -04:00
ed 0a47b03dfa fix fillmem, pics! 2025-08-03 20:53:33 -04:00
ed df13bf7fb8 gouraund tris, the gp commands are a thing of beauty 2025-08-03 20:48:58 -04:00
ed 661b539045 hello tris! 2025-08-03 19:29:37 -04:00
ed 35bedb9cdd got a flat shaded triangle! 2025-08-03 18:57:09 -04:00
ed f72f913b49 Clear the screen with Golden Poppy! 2025-08-03 18:08:50 -04:00
ed f8b35bb675 hellogpu wip pre-clear screen exercise 2025-08-03 15:32:53 -04:00