Commit graph

9 commits

Author SHA1 Message Date
Matt Penny 42a9189c95 CMake: get assembly working
* Assemble through `gcc` instead of `as` directly, so source files are
  preprocessed (i.e., `#include`)
* `gcc` does not pass `-I` include directories to `as`. This can
  supposedly be fixed by recompiling `gcc` with `--with-gnu-as`. Popular
  N64 toolchain binary distributions don't do this, and to lower the
  barrier to entry I don't want to force users to have to compile their
  own. Work around it by passing `-Wa,-I`.
* CMake only finds assembly dependencies when preprocessing, not when
  assembling. Use `#include` instead of `.include` to work around this.
  The `.incbin`s used by `sound_data.s` are covered by the
  sound_data_tables target dependency.
2024-10-19 16:30:58 -04:00
Matt Penny 4e9e9d32d6 ASM: simplify, document, start integrating with CMake
* Refactor entry point
* Remove unused code
* Reformat level header to be more clear, and add more comments

Looks like assembling with CMake will require some changes to the
assembler flags, and possibly some manual dependency specification.
2024-10-19 02:38:52 -04:00
Matt Penny 834e5da85a Use universal region in header 2023-12-11 16:36:22 -05:00
Matt Penny 72bc200294 Correct game name, region, and save size in header
Also updated comments around advanced homebrew ROM header
2023-12-11 15:32:13 -05:00
hackgrid 38a3451800
implement "Advanced Homebrew ROM Header" for controller config 2023-11-13 23:10:00 +01:00
James Lambert 4bd5ae80f5 Set save type to SRAM for later ev models 2023-05-03 21:22:46 -06:00
James Lambert c8a5301eaf Get -02 optimizations working
Fix some small bugs
2022-06-27 21:41:33 -06:00
James Lambert feccb13a58 Start work on sound effects 2022-05-19 19:26:54 -06:00
James Lambert 6c494d7adc Initial commit 2022-02-27 16:41:51 -07:00