Commit Graph

100 Commits

Author SHA1 Message Date
KiritoDv 7875424607 Audio is now compiling but crashing yay 2024-11-29 11:00:09 -06:00
Garrett Cox 6b71793b4f Fix clang compiler issues 2024-11-21 20:20:37 -06:00
MegaMech 75344d87eb [modding] Implement jumbtron fb effect (#125)
* Update Engine.cpp

* minor fix and update LUS (#119)

* minor fix and update LUS

* update torch

* Update torch

* Implement jumbotron framebuffer effect

* Update skybox_and_splitscreen.c

---------

Co-authored-by: coco875 <59367621+coco875@users.noreply.github.com>
Co-authored-by: Adam Bird <archez39@me.com>
2024-11-15 03:02:20 -07:00
MegaMech 475f167bb2 [modding] Big Update PR (#118)
* Implement kart vehicle

* Fix menu CC

* Actors

* variable framerate

* Implement Actors vector

* Fix water & scrolling textures

* Finish ACoin

* Refactor finishline

* Refactor mtx to vector

* Fix refactored screen code bugs

* Fix playlist bug

* Switching courses working now

* Fix podium ceremony

* Mostly Fix Demo and Credits

* Credits Load Actors and Textures

* Fix credits

* Formatting

* Update lus and torch

* Fix water features

* Fix crabs

* Combine function

* Fix wheels

* Add Moon Jump Cheat

* Wheel Change

* Fix smoke due to wheel change

* Fix screens for wheels

* Fix transparency

* Fix staff ghost

* Fix lakitu transition widescreen

* Rename and export credits text

* Fixes

---------

Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
2024-11-14 23:32:55 -07:00
MegaMech af81bad1f3 [modding] Add Actors (#113)
* fix

* Add Actors

* Refactor

* Update Game.cpp
2024-10-15 18:54:38 -06:00
coco875 58d56fcba8 Fix linux compilation (#110)
* fix wamr windows normally

* fix linux issue

* load all wasm in mods folder

* minor fix
2024-10-07 16:54:13 -06:00
coco875 9cf1f9e1d7 [Modding] start add wasm integration (#84)
* start add wasm integration

* some test

* some improvement

* try more language

* expend try with python

* update

* half working python

* improve and extend test

* get py2wasm work but not so well

* convert to use in cpp

* start prepare multimodule

* improve a little by using cpp (but still not great)

* Update wasm.cpp

* try ocaml

* add a working example of python with a not complete function

* remove type to be even more curse

* start add a proper mod loader

* allow mod to communicate between

* example of hook

---------

Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>
2024-10-05 15:49:07 -06:00
MegaMech 75297759ee [modding] Course Mod Support (#104)
* Course Manager

* Course

* Test

* Render

* That escalated quickly

* update

* properties

* Properties

* test

* Fix compile

* Add World

* skycolours

* Skybox Colours done

* Cleanup

* test

* Game runs again

* update

* Game run again

* Cup Works

* continue

* Add Courses

* clouds

* changes

* fixes

* update

* Fix compile

* update

* A few changes

* More Updates

* More refactors

* Fixes

* Fix ai behaviour

* Changes

* Fix courses

* test course test not working

* CUSTOM

* TestCourse works kinda

* fixes

* test course works

* cleanup

---------

Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
2024-10-05 15:31:31 -06:00
coco875 da87c9d5e8 clang format add header (#83)
* clang format add header

* Update course_offsets.c

* clang format

* Update ImguiUI.h

* Update actors.c
2024-09-11 09:19:20 -06:00
MegaMech 47e95c0e18 [enhancement] Freecam (#56)
* Create noclip.c

* Create noclip.h

* Update camera.c

* Update render_courses.c

* Update ImguiUI.cpp

* Freecam Done

* Add smoothing to window

* Update freecam

* focus  player

* fix

* Update freecam.c

* Update freecam.h

* Update render_courses.c

* Update FreecamWindow.cpp

* Update Engine.cpp

* Move vars

---------

Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
2024-09-10 16:19:19 -06:00
coco875 a1f0d32d66 Update decomp clang (#67)
* Update menus.c (#634)

* Update common_data.yml (#635)

* Renames for screenId and other changes (#636)

* screenId renames

* Rename surface map to collision mesh (#637)

* Rename some stack vars (#638)

* Fix syntax error (#639)

* Rename some stack vars

* Update collision.c

* Collision Documentation (#640)

* Collision related renames

* update doxygen (#649)

* change bool (#644)

Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>

* Update (#642)

* Delete trig_tables_bss.c (#650)

* fix typo audio (#656)

* fix typo src actor (#657)

Co-authored-by: MegaMech <MegaMech@users.noreply.github.com>

* fix typo include (#658)

* fix course (#659)

* fix typo debug (#660)

* fix typo data (#661)

* replace number with const (#665)

* fix typo buffers (#655)

* fix typo buffers

* tweak ld file

* rename to sMemoryPool

* add a warning

---------

* fix typo src (#654)

* fix typo src

* fix non matcing

* Update code_80091750.c

---------

* fix typo racing (#653)

* fix typo racing

* get it match

* replace G_LINE3D to G_QUAD

---------

* fix typo src (#652)

* fix ending typo (#651)

* Action more info when it doesn't match and fix first diff (#662)

* Update linux-compile.yml

* fix first-diff

* Update first-diff.py

---------

* document texture of kart (#663)

* document texture of kart

* change screenPlayerId to screenId

* some documentation around object

* Revert "some documentation around object"

This reverts commit cbb39078e036bf2a417bed67359e910213acab28.

* more rename

---------

* Make evaluate_collision_players_palm_tree better (#667)

This matches just the same as before,	but using those two casts instead of
shifts seems more likely to be accurate to the original source code

Signed-off-by: Gabriel Ravier <gabravier@gmail.com>

* add fedora instruciton (#666)

* start documenting animation (#668)

* start documenting animation

* Update course_data.c

* change comment

* update libultra asm (#648)

* update libultra asm

* fix gcc __osThreadTail

---------

* Document Vehicles (#641)

* start doc collision

* fix merge

* finish rename fonction related to vehicle

* document around waypoint of vehicle

* make some modification

* make some change and rename one

* copy_ to oldPos

* doc smoke ferry and train

* some rename

* fix some renaming

* precise index

* rename a funciton

* simplify waypoint_vehicles

* change some name

* change some name

* rename move_to_point_direction

* fix some conflict

* Update code_80005FD0.c

* Update code_80005FD0.h

---------

* Label a save info loop (#645)

* save info

* more gcc progress

* fix a value and do a rename (#669)

* update clang and add action (#664)

* update clang and add action

* try clang on course folder only

* forget two file

* Update course_displaylists.inc.c

* forget few other file

* Update course_vertices.inc.c

* format all code while get it match

* second pass

* format other dir

* disable clang format on bad ido code

* fix some tabulation

* revert format on tool dir

* Update clang-format.yml

* ignore gbi.h

* add some read me instruction

* fix error

* format and fixing error

* Update README.md

---------

* Update linkonly_generator.py (#670)

* format more file

* update

* fix compilation issue

* remove course_metadata folder

* re add course metadata folder

* fix banshee bordwalk crash

* fix windows eurk

* Update CMakeLists.txt

---------
2024-08-27 17:47:39 -06:00
coco875 e135178097 Update from decomp (#34)
* Update menus.c (#634)

* Update common_data.yml (#635)

* Renames for screenId and other changes (#636)

* screenId renames

* Rename surface map to collision mesh (#637)

* Rename some stack vars (#638)

* Fix syntax error (#639)

* Rename some stack vars

* Update collision.c

* Collision Documentation (#640)

* Collision related renames

* update doxygen (#649)

* change bool (#644)

* Update (#642)

* Delete trig_tables_bss.c (#650)

* fix typo audio (#656)

* fix typo src actor (#657)

* fix typo include (#658)

* fix course (#659)

* fix typo debug (#660)


* fix typo data (#661)

* Update common_structs.h

* replace number with const (#665)

* fix typo buffers (#655)

* fix typo buffers

* tweak ld file

* rename to sMemoryPool

* add a warning

---------

* fix typo src (#654)

* fix typo src

* fix non matcing

* Update code_80091750.c

---------

* fix typo racing (#653)

* fix typo racing

* get it match

* replace G_LINE3D to G_QUAD

---------

* fix typo src (#652)

* fix ending typo (#651)

* Action more info when it doesn't match and fix first diff (#662)

* Update linux-compile.yml

* fix first-diff

* Update first-diff.py

---------

* document texture of kart (#663)

* document texture of kart

* change screenPlayerId to screenId

* some documentation around object

* Revert "some documentation around object"

This reverts commit cbb39078e036bf2a417bed67359e910213acab28.

* more rename

---------

* Make evaluate_collision_players_palm_tree better (#667)

This matches just the same as before,	but using those two casts instead of
shifts seems more likely to be accurate to the original source code

Signed-off-by: Gabriel Ravier <gabravier@gmail.com>

* add fedora instruciton (#666)

* start documenting animation (#668)

* start documenting animation

* Update course_data.c

* change comment

* fix error of compilation

* fix error of compilation

* Update animation.c
2024-08-22 18:20:13 -06:00
MegaMech 2a8362dd10 Add royal raceway course (#29)
* Add files via upload

* Update memory.c

* Update render_courses.c

* Update code_80281780.c

* Update path_spawn_metadata.c

* Update render.inc.c

* Update all_course_packed.h

* Update all_course_model.h

* Update all_course_data.h

* Delete courses/royal_raceway/course_data.c

* Delete courses/royal_raceway/course_data.h

* Delete courses/royal_raceway/course_vertices.inc.c

* Delete courses/royal_raceway/course_displaylists.c

* Delete courses/royal_raceway/course_displaylists.h

* Update memory.c

* Update royal_raceway_displaylists.yml

* Update values

* update

* Course works now

* fixes

* wip framebuffer

* Fix trees

* Fix player select borders

* Remove commented code

---------

Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
2024-07-31 21:57:02 -06:00
MegaMech 532ad5a4c0 Renames & seg 3 & 5 texture fixes (#19)
* Remove tools/torch

* Auto compile torch and extract

* Re-implement soh's implementation of lus implementation of an array

* Fix static actors in mr

* Update

* Updated torch

* Updated lus

* uncomment

* Fix collision

* Renames

* More renaming

* Collision Renames

* Update collision.c

* Collision Documentation (#640)

* Collision related renames

* Update

* update lus

* Bug fixes

* remove tabs

* fixes

* fixes

* Fix kart textures

* Networking

* net

* Add networking

* Update

* Cleanup

* Fix balloon rendering

* Fix lakitu and red shell

* fixes

* Implement new random system

---------

Co-authored-by: MegaMech <7255464+MegaMech@users.noreply.github.com>
2024-07-26 11:29:35 -06:00
MegaMech 0d629e466a Take7 (#17) 2024-06-13 13:35:29 -06:00
MegaMech 78a7d156c9 Changes for OTR (#15)
* Bunch of fixes
2024-05-22 19:19:16 -06:00
MegaMech 66441f5461 Fix texture loading in the menus (#11)
* Changes

* Fixes

* More fixes
2024-05-04 18:04:55 -06:00
KiritoDv 1fbf28a78d Fixed more errors, we are rendering the logo, Yay 2024-05-03 18:20:20 -06:00
MegaMech c78629d5b9 Update main.c 2024-05-03 15:33:22 -06:00
MegaMech 1548512084 First Compile (#7)
* Update torch

* A lot of fixes

* First compile
2024-05-03 12:17:36 -06:00
MegaMech e061493571 fixes 2024-05-02 17:41:24 -06:00
MegaMech e5c9616a64 More fixes 2024-05-02 17:21:29 -06:00
MegaMech e3774dc377 Fixes 2024-05-02 12:21:35 -06:00
KiritoDv a2c3feb67a WIP Compilation 2024-05-01 10:09:49 -06:00
MegaMech 7a10ba89f6 Header cleanup and some renames (#616)
* Place macros for addr conversions

* dl renames

* fixes

* changes ok

* Delete types.h

* move enums
2024-04-20 19:10:53 -06:00
MegaMech d9c1ebb626 Initial gcc Support (#568)
* Added GCC
2024-04-15 10:53:58 -06:00
MegaMech c4d596d297 trig tables shiftable (#596) 2024-04-05 21:42:14 -06:00
coco875 12f332614e move actors code in actors folder and rename thing related to actor (#584)
* Move actors into their folders

* Renamings and documentation
2024-04-03 12:44:44 -06:00
coco875 f99e242d97 Document render/update objects (#565)
* Document objects related code.
  * Including render/update objects code
* Various renamings
2024-03-04 09:02:45 -07:00
MegaMech 19410f2825 Code Segments Shiftable (#566)
his PR cleans up segment related code in main.c.
Also cleans up the linker a bit.

    Add memory pool to linker as .bss to validate that it exists properly.

    Move framebuffers, gfx, and audio buffers out of racing segment and make its own segment.

    Rename framebuffers.c to buffers.c as it contains more than just framebuffers.

    Import asserts from sm64 to validate that code segments are not overlapping

    Rename segNoload to segmentNoload

    Rename 802BA370 segment to trigTables

    Rename gMenuSelectionFromEndingSequence to gGotoMenu

    Rename gMenuSelectionFromQuit to gGotoMode

    Rename SEG_ENDING_SEQUENCES to SEG_ENDING

    Rename data_821D10 to ceremonyData

    Rename data_825800 to startupLogo
2024-02-05 17:08:29 -07:00
MegaMech c2d7f1077c Match (#562) 2024-02-05 17:07:30 -07:00
coco875 639fec1458 place surface type const and unassemble flag in vtx and document effects (#553)
* place surface type const and unassemble flag in vtx
2024-01-20 21:22:35 -07:00
coco875 03843d77fe some const placement and one rename (#529)
* some const placement and one rename
2024-01-06 07:46:59 -07:00
coco875 98474c5b94 fix todo, bug not appears and change theme (#525)
* fix todo, bug not appears and change theme

* fix warning
2023-12-31 19:56:14 -07:00
coco875 670a930f31 Rename code_8001F980 to render_player and code_800B45E0 to save (#507)
* Update and rename code_8001F980.c to render_player.c

* Rename code_8001F980.h to render_player.h

* rename import file to render_player

* Update and rename code_80004740.c to save.c

* Rename code_80004740.h to save.h
2023-12-24 15:52:09 -07:00
Tyler McGavran cbe41239d7 More audio stuff (#488)
* Match create_next_audio_frame_task

Required some variable renaming and other changes

* Match synthesis_execute

I'm not entirly sure about the way we have stuff ifdef'd in
 PR/abi.h. I feel like we're doing something slightly wrong there


* Match synthesis_do_one_audio_update

There's something super fucked with the way our ifdef's work in
 abi.h. It is going to demand a lot more attention sometime in the
 future.

* Rename a couple functions

Also had to hack up the ABI file a bit. I'm convinced that we
 don't need nor want to have the EU/Shindou/US split thing the
 SM64 code does. There's probably just the 1 ABI version being
 used and we need to figure out what it looks like

Signed-off-by: Taggerung <tyler.taggerung@email.com>
2023-11-07 20:38:25 -07:00
MegaMech 76dc587a34 EU 1.0 OK (#265)
* EU 1.0 ok

* EU 1.1 ok

Co-authored-by: AloXado320 <david.albujar.s.30@gmail.com>
2023-10-19 23:37:21 -06:00
MegaMech 7f14bf80df Rename wayPoint to waypoint (#448)
* Rename wayPoint to waypoint

* other
2023-10-09 20:46:56 -06:00
MegaMech 2b74bbbcef Doc setup_game_memory, label syms, add osSyncPrintf support, match funcs (#444)
* Doc setup_game_memory and label syms

* match func_800132F4

* match func label defines

* fix some fake ptrs

* match more code

* Matches

* Add osSyncPrintf support and matches

* Add func equiv to draw_square and add comment to is_debug
2023-10-06 00:19:09 -06:00
coco875 f4fc23bada Header & General Cleanup (#431)
* Header cleanup
2023-09-20 11:59:55 -06:00
coco875 378144b35b some renaming (#419)
* Renames
2023-09-19 12:23:12 -06:00
MegaMech 91fc8ea473 Some train decomp and move seg2 files to ending (#423)
* Some train decomp

* Move seg2 to ending/

* move racing code files into racing folder

* Fix progress

* Rename segments
2023-09-17 16:57:18 -06:00
AloXado320 3f221d6f25 Label mtx variables in GfxPool (#424) 2023-09-17 16:39:25 -06:00
MegaMech f20221fab6 Fix comment white-space (#415)
* Update main.c
2023-09-11 15:08:40 -06:00
MegaMech a5b7f975d2 Update main.c (#414) 2023-09-11 15:06:59 -06:00
MegaMech 70207db13b Various cleanup (#410) 2023-09-09 18:01:01 -06:00
AloXado320 c350eddc6b F3DEX old commands changes (#408)
* F3DEX old commands changes
    * Changed commands using gspQuadrangle to gspTri2
    * Replaced mk_quad with gspQuadrangle.
2023-09-09 01:06:35 -06:00
MegaMech 208fecdd28 Match bss for code_800029B0 and clean headers (#406)
* Match bss for code_800029B0 and clean headers

* Fix dvdl and a warning
2023-09-08 13:39:13 -06:00
MegaMech 19a056591a Match func in player_controller.c (#394)
* Match func

* Rename to player_controller.c
2023-08-31 21:55:01 -06:00
MegaMech 05d3636835 Label memory allocation with proper size (#388)
* Renamed D_8015F734 to FreeMemoryResetAnchor
2023-08-28 12:14:19 -06:00