- Update software renderer to the gpsp renderer (fast enough to render on slow hardware)
- Convert audio emulation to fixed point (since float is slower on these systems)
- Add PSP as a target for SDL
- Add PS2 as its own target, though it's still using software rendering
Thanks to @kikugrave for adding the initial psp boilerplate and inspiring me to finally finish the ps2 port!
* Align .gitignore with SA1
* Small adjustments for Makefile parity
* Document gMPRingCollectWins
* Rename gUnknown_030054F8 -> gNumSingleplayerCharacters
* Add note from pret
* Minor improvements in stage.c
* Align Task_GameStage with SA1
* Fix type of gUnknown_0300543C
* Align HandleLifeLost with SA1
* Rename sub_80299FC -> DestroyPlayerTasks
* Rename sub_801B68C -> DestroyStageTasks
* Some cleanup in title_screen.c
* Some documentation in unused_level_select.c
* Unify sa1_sa2_shared/collision.c and collision_1.c
* Remove sub_800D0A0 from stub.c
* Small pieces of documentation
* Document some globals and align characters.h with SA1
* Mostly align amy_attack_heart_effect.c with SA1
* Rename file of Ring -> Magnetic Ring
* Align save.h with SA1
* Rename Player.unk90|unk94 -> Player.spriteInfoBody|Limbs
* Add some comments
* Rename Spark Effect -> Grind Effect, document SA1's and SA2's versions a bit
* Remove and move comments to the correct procedures
* Fix regular SDL compilation
* Move animation data from Asm to C
* Layout the anim macros in a common way. Add Big Endian support to them (I think?)
* add CI for sdl objs, fix some of the build on linux
* make native macos work
---------
Co-authored-by: bitten2up <bitten2up@courvix.com>
Co-authored-by: Oliver Bell <freshollie@gmail.com>
* 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
* Remove build path from ldscript
* Fix issues with ldscript in chaogarden
* Update Makefile to handle building with other compilers
---------
Co-authored-by: Oliver Bell <freshollie@gmail.com>
* c_header_parser: Add EQUALS and some compatibility fixes.
* Add stage_info.txt files to all maps
* Filter BriBaSA_ex as long as it doesn't have a Makefile
* Add fixes for the tokenizer
* Initial commit for BriBaSA_ex
* Update stage info
* Add spawn pos being shown as player character, add 'Go to spawn pos' keyboard shortcut, add ability to display item boxes.
* Renamed stage_info.txt -> metadata.txt, because regular tilemaps will make use of them
* BriBaSA_ex: Set camera to spawn pos when loading a map. Load all map paths on init. Cleanup.
* Implement drawing of most interactables
* Fix main not compiling when Raylib wasn't compiled before
* Add keyboard button controls and some cleanup
* Rename a few IA and anim constants
* Rename a few constants
* Add error output for unknown names when converting CSV->Bin using epos
* Add TILE_DIM and TILES_PER_METATILE, and some cleanup
* Move some procedures out of epos.c
* Minor cleanup
* Minor cleanup in csv_conv.c
* More cleanup and documentation
* More cleanup
* Move shared libraries inside tools to their own directories
* Remove redundant versions of shared libraries
* Fix warnings
* Add library binaries to .gitignore
* Add BriBaSA_ex Makefile
* Fix compilation
* Load entity data from CSV files and display them
* Fix some var and const names
* Fix includes
* Re-add Makefile for csv_conv
* Generalize drawing of IA textures and bounding boxes
* Split the code into multiple modules
* Rename a few IAs
* Rename Giant Propeller -> Propeller
* More adjustments for Propeller renaming
* BriBaSA_ex: Some restructuring
* Fix warning
* Add texture.c to build.bat
* Fix build errors from renaming IAs
* More restructuring
* Move constants to header file
* Cleanup
* Open buttons through 'UiElement()'
* Uncomment redundant call to FileExists
* Fix build
* BriBaSA: Fix crash
* Streamline entity data layout
* Split ring graphics into individual frames
* Make entities clickable
* Display metadata of highlit entity
* Print entity type if an Entity has one
* Fix IA bounding boxes
* Implement saving entities when clicking on 'Save Map'
* Add EntityData* to EntityDataPointer union
* Allow entity data to be edited
* Add IS_USER_KEY_PRESSED_ macros. Use them for the spawn position
* Fix gcc warnings
* Update readme
* Fix GCC warnings
* Fix Makefile compilation for Linux
* Update epos to use CsvEntityType
* Exclude tools dir when formatting
* Format...
* fix linux build and some makefile improvements
Co-authored-by: Oliver Bell <freshollie@gmail.com>
* fix formatter, undo some debug stuff
Co-authored-by: Oliver Bell <freshollie@gmail.com>
* fix CI
Co-authored-by: Oliver Bell <freshollie@gmail.com>
* try this
Co-authored-by: Oliver Bell <freshollie@gmail.com>
* this is better
Co-authored-by: Oliver Bell <freshollie@gmail.com>
* Replace MSVC-exclusive file functions
* remove comment
Co-authored-by: Oliver Bell <freshollie@gmail.com>
---------
Co-authored-by: Oliver Bell <freshollie@gmail.com>
* Rename IA019
* Rename IA094 -> Pole
* Rename IA080 -> light_globe
* Rename some IAs, rename dir tec_base -> techno_base for consistency
* Fix include paths to techno_base
* Rename sprite -> ia105 (change once IA105 is named!)
* Rename IAs to avoid their names starting with digits
* Edit CSV format to include map-width/-height and seperated regions instead of world positions
* Add item indices
* Update example format
* First draft for CSV->Bin conversion done
* Implement binary file export in epos
* Revert changes to propeller_spring.c
* Add CSV files
* Fix data-less CSV lines leading to exit
* Add rules for map entity data. Add rule to remove <entity>.bin files
* Remove <entity>.bin files
* Added obj palette data
* Add dumped obj graphics
* build graphics as part of pipeline
* update readme
* remove animation constant macros
Co-authored-by: Oliver Bell <freshollie@gmail.com>