* remove gen_asset_list (frozen)
* move format.sh
* remove rasm2armips (decompilation helper)
* remove patch_libmalloc (IDO exclusive)
* remove unnecessary sha1's and makefile definitions
* remove libultra math script (IDO exclusive)
* remove patch_elf_32bit
* actually remove bitwidth tool
* remove the need for all the sha1 files
* extract_assets can now find a baserom named anything
* added error handling and some more graceful error handling
* formatting the error message
* more relevant error info
* add a check for a roms folder
* fix gitignore to prevent patch_elf from being re-committed
* naming clarity; change to baseroms/; feedback addressed
* skip rom verification if assets have been extracted
* changes addressed
---------
Co-authored-by: someone2639 <someone2639@gmail.com>
* Improved transitions
Code quality improvements.
Shape transitions now all scale down to 0 instead of 16 (mario and bowser).
Ease in was added which leads to far smoother transitions.
HD_TRANSITIONS define added, makes use of the tex edge render mode to deliver smooth transition textures.
lerpf was added to math utils.
* Cleaner textures, rounding only during vertex creation
* Another attempt
* cozies naming suggestion
* Improvements and suggestions
SHARP_TRANSITION_TEXTURES is now off by default (I still think the textures for it could be improved).
lerpf, to_smoothstop, smoothstart, smoothstop and smoothstep have all been added.
make_vertex has been inlined.
make_simple_vertex has been added (colourless vertex).
Transition colors (and canon colors) are now defined using primative colour instead of setting individual vertices color´s.
Transition´s now use smoothstep (ease-in-out) instead of ease out only.
Naming has been improved.
* Proper function inling and removal of GBI_FLOATS variant of make_vertex and make_simple_vertex
* More requested changes
* Accidental final new line removal fixed
* Comment about pop in fix.
* Comment fix
The issue with writing comments for stuff is when you want to change code later on.
* Added emulator detection
* Fixed missing assignments
* Disable interrupts around the count factor test
* Added more comments to emutest
* Changed PJ64 enum values so the versions work as a bitfield
* Updated README
* Fixed comments
* Updated enum values so you can safely AND and OR all emulator version flags together
* Remove redundant gIsConsole, gIsVC, and gCacheEmulated global variables
* Changed console check to be more future proof against Ares
* Use assembly file instead of casting to a function pointer
* Moved round_double_to_float back to its own compilation unit
* Moved the ParallelN64 check before the Ares check for better future-proofing
* Align pj64_get_count_factor_asm with cache lines... not that it actually matters for pj64
* Adjusted some comments
* Made emulator check thread-safe on emulators that emulate PI timings
* Added gIsConsole macro for backwards compatibility
* Added cen64 to INSTANT_INPUT_BLACKLIST
* Updated comment
* Dynamic collision fixes + actual OR_LONG
Dynamic collision will now check Mario´s vertical distance seperately, this is done to implement a check for when mario is above an object, in which case the collision distance is expanded by 2000 units to avoid shadows not appearing.
Or long works correctly now, replaces the behaviour command NOP_1.
* Micro optimzation
Avoids sqrtf by using the squared lateral distance and squaring the the collision distance for the comparison.
* Requested changes
* minor change
* Re ordering
* How
* Add SET_ECHO level script command + minor BETTER_REVERB refactoring
* Add Puppyprint debug page for trying out different BETTER_REVERB presets and configurations
Also fix a missing Puppyprint enum that was causing issues
* Modify Puppyprint BETTER_REVERB page + other minor improvements
* Swap order of RSP commands to allow reverb downsampling to sound more similar to that of without downsampling
* yeet undefined_syms; IPL3 documentation; theoretical addition of checksum skip and initial DMA length/location change
* another comment about how to set dma len
* comment is now correct in ultratypes
* do the rename
* remove insinuations that ipl3 can be modified
---------
Co-authored-by: someone2639 <someone2639@gmail.com>
* Culling improvements + earlier GRAPH_RENDER_INVISIBLE check
GRAPH_RENDER_INVISIBLE is now checked during geo_process_object before any uncessesary transformation is applied to
the object, translation is still calculated for sound even if the object is invisible.
Half fov is now computed during geo_process_perspective.
Vertical culling has been added (only when bellow the screen to prevent shadow´s being culled).
Emulators have basically infinite culling aspect ratio to prevent early culling with widescreen viewport hacks.
Default culling radius is now a define.
This was written by both me and Kaze Emanuar, he provided the suggestion to use absf and informed me of
integer division being remarkably slow (although it´s only used once during geo_process_perspective).
* Badly placed new line (major fix)
* integer
Co-authored-by: thecozies <79979276+thecozies@users.noreply.github.com>
* parenthesis
doesn´t affect order of operation, just for code quality
Co-authored-by: thecozies <79979276+thecozies@users.noreply.github.com>
* uncessary whitespace
Co-authored-by: thecozies <79979276+thecozies@users.noreply.github.com>
---------
Co-authored-by: thecozies <79979276+thecozies@users.noreply.github.com>
Now its just part of HackerSM64 entirely, and HackerSM64 will be the source of all changes (as long as said changes can reasonably apply to homebrew games)
* Disable stereoheadseteffects and stub out all known code references via define
By effect this also completely removes Headset sound options from the game config, as it serves no purpose whatsoever compared to stereo.
Because it's stubbed out everywhere rather than only the necessary locations to prevent it, this should boost audio runtime slightly for everything, not just the stuff that actively used it.
* Rename DISABLE_HEADSET_STEREO_EFFECTS to ENABLE_HEADSET_STEREO_EFFECTS
* Reorganize and reduce audio Note struct
* Add performance to define description
* Rename ENABLE_HEADSET_STEREO_EFFECTS to ENABLE_STEREO_HEADSET_EFFECTS