12 Commits
Author SHA1 Message Date
Oliver Bell d8710f54bb libagbsyscall: fix portable builds 2026-04-07 23:48:08 +01:00
Oliver Bell 763812acc3 use libagbsyscall for all builds (#249) 2026-03-25 10:52:35 +00:00
JaceCear 57376092f0 Various RAM map documentation and alignment with SA3 (#175)
* Various documentation and alignment with SA3

* Extract input_recorder.c .data section from core.c, as in SA3

* Align multi_sio.c with SA3

* Document parameters of DisplaySprites

* Document centerOffsetX/Y in DisplaySprites

* Only display copyright note

* Split GAME_ and ENGINE_ macros

* Use ENGINE macros in core.c

* Rename game<->engine interface procedures

* Remove searching in /src for header files in genctx.py

* Fix global.h<->config.h dependency in genctx.py

* Only enable Task logging in debug versions

* Fix uses of DEBUG, remove TEST_GFX_POINTERS because current gfx copy implementation already makes it redundant

* Use 64bit as default target in Win SDL

* Align some files with sa1 and sa3

* Align sprite.c and other files closer with sa1 and sa3

* Various documentation

* Some dodumentation and cleanup from SA1 core.c integration

* Rename sa1_leftovers/ -> sa1_sa2_shared/

* Put gEwramHeap into ewram_data section
2024-12-28 21:12:56 +01:00
JaceCear 8fdd433a2b Some matching improvements, documentation and make fixes (#151)
* Some cleanup for sub_802DF18, but still non-matching

* Almost match sub_802E278, down to one add instr

* Some grind variable documentation

* Fix some of the logic in sub_801EE64

* Some general documentation

* Document Bouncy Bar tasks and fix compilation

* Some documentation in rotating handle

* Fix standalone compile/link

* Add standalone build CI

* Fix copy-paste of Q_24_8

* Align whitespace

* Potential random crash fix

* Add some DMA doc to standalone

* Remove old nonmatch ASM and add SDL comment

* Cleanup and #ifdef fix in player.c
2024-07-28 23:25:50 +02:00
JaceCear 6395af6038 Change Clang Format's Line Width (ColumnLimit) to 140 (#150)
* Change Clang Format's Line Width (ColumnLimit) to 140

* Fix flash line breaks
2024-07-12 21:44:43 +02:00
JaceCear 564b3b876c More matches, Sprite.unk10 -> .frameFlags, Sprite.unk1A -> .oamFlags (#148)
* Match sub_802966C, fixing some control issues

* Some additions to Task_CreateStageUnknownTask

* Make CreateCharacterSelectionScreen scratch more recent

* Cleanup

* boss_run.s data -> boss_run.c

* Merge boss_run and boss_8

* Rename BOSS_8_ARM_ -> ARM_, since it's a local macro, anyway

* Remove boss_run from ldscript

* Remove data stubs

* Inline StageInit_SetMusic as was probably the case originally

* Some documentation

* Minor documentation

* Sprite.unk10 -> .frameFlags

* Sprite.unk1A -> .oamFlags

* Formatter...

* Set all Sprite.oamFlags values using SPRITE_OAM_ORDER macro

* Minor documentation

* Get logic of sub_8004860 to match the game closer, but ASM percentage is worse.

* Fix big parts of sub_8004860's logic, still not matching very well

* Rename sub_8004860 -> TransformSprite

* Minor cleanup

* Add potential fix for tile copying

* Reorder DMA offsets

* Add SDL fullscreen (Alt+Return)

* Formatter

* SPRITE_MAYBE_SWITCH_ANIM -> SPRITE_INIT_ANIM_IF_CHANGED

* Add graphics queue macros

* Reorder for compiler flags

* Add GFX Queue macros and logging

* Reformulate task logging

* Reorder compiler flags

* Minor boss8 cleanup

* Use new DMA layout

* Replace Div and Mod calls with macros

* Minor cleanup

* Add EXTENDED_OAM (WIP)

* Camera.unk38|.unk3C -> .dx|.dy

* Split logging output

* Fix syntax error
2024-07-03 01:07:19 +01:00
Oliver Bell 900c31029a create sdl_win32 build, add platform builds to CI (#144)
* fixes for 64bit build
* create sdl_win32 target
2024-05-24 03:10:04 +01:00
Oliver Bell 834c40eb6f fix build on macos 2024-05-20 23:39:16 +01:00
JaceCear 111285656e More cleanup and RL/LZ impl (#142)
* Only omit linemarkers when preprocessing ldscript

* Implement CpuSet and CpuFastSet

* CC1 errors if output map file does not exist, so create it before export

* Reorder memory addresses

* Use gbagfx's RL/LZ decompression functions and add/align data regions in common.c

* Add if to config.mk so DEBUG is enabled when passing CREATE_PDB=1 to make

* Split CpuSet and DMA macros into separate files

* Add name tag and logging to Tasks

* Add logging flag to task.h

* Use system malloc and free for now

* Include gbagfx (de)compression functions directly in src

* Add global string macro
2024-05-20 13:03:07 +02:00
JaceCear 1e5ed903e6 Non-vanilla cleanup and fixes (#141)
* Convert Pipe data pointers to C
* Move Special Stage data to C
* Add C_DECL macro
* Use `#if` instead of `#ifdef` for some macros
* Add more stubs
* Rename RGB( ) macro to RGB16( ) to avoid naming conflicts
2024-05-17 02:15:23 +02:00
JaceCear 878cd1c504 Credits for this project (#140)
* Add defsym NON_MATCHING to ASFLAGS

* Use FLAGS_ macros instead of numbers

* Move debug_text_printer.h

* Add DCCredits

* Some formatting, some minor fixes

* Introduce ENABLE_DECOMP_CREDITS symbol

* More adjustments to the credits. Edit the Q_MUL macro

* Slight position adjustment for Sonic

* Minor fixes. Add note for weird Mod() compiler error

* Minor spelling mistake
2024-05-12 20:21:43 +02:00
Oliver BellandJaceCear 5314361c7d first pass to extract libagbsyscall to a package (#139)
Co-authored-by: JaceCear <11230293+JaceCear@users.noreply.github.com>
2024-05-10 10:14:48 +01:00