Commit Graph

700 Commits

Author SHA1 Message Date
Tharo
7334ffa373 Improve the state of handwritten assembly files (#865)
* Format all handwritten asm and document some

* Use c preprocessor for constants

* Fix

* Fix PI_STATUS_ERROR, some label improvements

* Avoid hi/lo for constants

* Some more comments

* Properly mark functions as functions and their sizes

* Fix merge

* Improvements

* Review suggestions, rework procedure start/end macros to be more like libreultra

* Move IPL3 symbol definitions into ipl3.s

* Fix undefined_syms, add include and language guards to asm.h and fix the comment in gbi.h

* Consistent hex capitalization, add some MIPS builtin defines to CC_CHECK to behave properly

* Add -no-pad-sections assembler option and clean up alignment in gu files and bzero

* Further suggestions and improvements

* Matrix conversion function clarifications

* Fix passing AVOID_UB to gcc

* Suggestions

* Suggestions, global interrupt mask improvements

* Further suggestions, interrupt mask comments

* Comments fixes, rdb.h

* Switch from # comments to // comments, remove unnecesary .set gp=64 directives

* Further review suggestions

* Missed one
2022-05-01 01:03:22 +02:00
fig02
4390dd74b6 boss_ganon (Ganondorf) OK (#1037)
* data migrated and OK

* some functions ported

* everything ported and updated

* merge message

* plenty of functions matched

* remove unwanted file

* 5 more, progress on update

* update matched

* fix proto

* fix

* func_808E06FC

* asm

* 2 left

* 1 more

* last function inital decomp

* Dbg MQ OK

* docs progress

* revert limb stuff

* some more docs

* docs progress

* more docs

* done with docs for now i think

* revert unwanted change

* some symbols

* anime2

* format

* small changes

* some more changes

* merge master and fix matrices

* reviews 1 and 2

* remove continue

* review 3 and 4

* un-name bodyPartsPos for now
2021-12-02 17:31:39 -05:00
Tharo
f1d183d6fe libultra files and directories restructure (#1038)
* Restructure files, begin header restructure

* Format

* us2dex

* Fix parallel spelling

Co-authored-by: JoshDuMan <40190173+JoshDuMan@users.noreply.github.com>

* Use OS_K0_TO_PHYSICAL in place of VIRTUAL_TO_PHYSICAL in osAiSetNextBuffer

* Uppercase hex, exception vector address defines

* Interrupt flags 1

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

* Interrupt flags 2

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

Co-authored-by: JoshDuMan <40190173+JoshDuMan@users.noreply.github.com>
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2021-11-30 19:08:57 -05:00
Tharo
04a9d51e90 Rework handling of dmadata (#1036)
* Generate dmadata

* Remove tab indentations in mkdmadata.c and mkldscript.c

* Fix

* Review suggestions

* Hopefully fix

* Fix index

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

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2021-12-01 00:29:09 +01:00
Tharo
982e7be1f7 Preliminary fixes for boot/libultra (#1032)
* Preliminary fixes

* Missed a NULL
2021-11-28 07:50:35 -05:00
Roman971
8d4828a3be Add pad_text to mkldscript and update progress.py (#1024)
* Add pad_text to mkldscript and update progress.py

Implements `pad_text` from MM and uses it instead of asm nops for the padding in ucode_disas.
Also updates `progress.py` to account for the change (RIP 1000000 code size), and to have a green badge for 100%.

* Remove 1.00mb comment in progress.py

Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>

Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>
2021-11-24 03:31:44 +09:00
Tharo
a497f33bda z_message_PAL, message_data_static and surrounding doc (#996)
* Initial progress on z_message_PAL, very messy

* Fix merge

* Some more progress

* Fix merge

* More z_message_PAL

* Small progress

* More small progress

* message_data_static files OK

* Prepare z_message_tables

* Matched another function, small updates

* Attempt to use asm-processor static-symbols branch

* Refactor text id declarations

* Begin large text codes parser function

* Fix merge

* Refactor done

* Build OK, add color and highscore names

* Remove encoded text headers and automatically encode during build

* Fix kanfont

* Various cleanups

* DISP macros

* Another match aside data

* Further progress

* Small improvements

* Deduplicate magic values for text control codes, small improvements

* Tiny progress

* Minor cleanups

* Clean up z_message_PAL comment

* Progress on large functions

* Further progress on large functions

* Changes to mkldscript to link .data in the .rodata section

* data OK

* Few improvements

* Use gDPLoadTextureBlock macros where appropriate

* rm z_message_tables, progress on large functions

* 2 more matches

* Improvements

* Small progress

* More progress on big function

* progress

* match func_80107980

* match Message_Update

* match func_8010BED8

* done

* Progress on remaining large functions

* Small progress on largest function

* Another match, extract text and move to assets, improve text build system

* Small nonmatchings improvements

* docs wip

* Largest function maybe equivalent

* Fix merge

* Document do_action values, largest function is almost instruction-matching

* Rename NAVI do_action to NONE, as that appears to be how that value is used in practice

* Fix merge

* one match

* Last function is instruction-matching

* Fix

* Improvements thanks to engineer124

* Stack matched thanks to petrie911, now just a/v/low t regalloc issues, some cleanup

* More variables labeled, use text state enum everywhere

* More labels and names

* Fix

* Actor_IsTalking -> Actor_TalkRequested

* Match func_8010C39C and remove unused asm

* More docs

* Mostly ocarina related docs

* All msgModes named

* Fix assetclean

* Cleanup

* Extraction fixes and headers

* Suggestions

* Review suggestions

* Change text extraction again, only extract if the headers do not already exist

* Fix

* Use ast for charmap, fix assetclean for real this time

* Review suggestions

* BGM ids and ran formatter

* Review comments

* rename include_readonly to include_data_with_rodata

* Remove leading 0s in number directives

* Review suggestions for message_data_static

* textbox pos enum comments, rename several enum names from Message to TextBox

Co-authored-by: Thar0 <maximilianc64@gmail.com>
Co-authored-by: Zelllll <56516451+Zelllll@users.noreply.github.com>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: Roman971 <romanlasnier@hotmail.com>
2021-11-22 20:20:30 -05:00
fig02
a3b4dcf388 File Select (z_file_choose) OK (#1012)
* matching split

* migrate progress

* split done and rodata migrated

* all data migrated to c

* start init

* progress

* progress

* progress

* progress

* progress

* progress

* copy done

* progress

* erase and settings done

* progress

* progress

* progress

* start keyboard

* progress

* progress

* progress

* progress

* Minor progress

* fix z_magic_dark issue

* func_80806F34 decomp'd

* verified equivalence

* one fix

* format

* merge petries work

* reorganizing

* lots of reorganizing and wraning fixing

* rename file

* remove language enum

* unwanted changes

* some symbol replacement, organization, and some names

* all symbols replaced, some organization

* some more cleanup

* continue docs

* Match the remaining functions in file_choose

* merge master

* select mode documented, all functions in file_choose.c named

* nameset functions named, some other cleaning

* some more general cleanup

* stub comments for cm, name a few things

* fix data and sizeof

* copy/erase functions and modes named

* rename assets, format

* change some struct members

* fixes

* review1

* fix maching error

* extract VTX data

* re add werror to ZAPD

* review 2

* fix

* remove file boundary padding

* remove zeroes

* review3

* change skybox stuff

* changes to  vs  etc

Co-authored-by: KrimtonZ <krimtonz@gmail.com>
Co-authored-by: Thar0 <17233964+Thar0@users.noreply.github.com>
Co-authored-by: mzxrules <mzxrules@gmail.com>
Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
Co-authored-by: Roman971 <romanlasnier@hotmail.com>
Co-authored-by: Louis <louist103@gmail.com>
2021-11-15 22:33:44 +01:00
Synray
768f0c2c88 ucode_disas.c OK (#1022)
* ucode_disas.c OK

* Clang format

* Remove comments
2021-11-15 01:02:33 +01:00
EllipticEllipsis
823a3c0754 EnZf OK and partially documented (#988)
* Match Destroy

* Matched Init

* 3 more matched

* 15 functions matched, data imported

* 16 matched

* 17 matched

* 18 matched

* formatting

* 19 matched

* Fix unk_404

* Draw matched, 20 in total

* 21 matched

* 22 matched

* 23 matched

* 24 matched

* 25 matched

* 26 matched

* 27 matched

* 28 matched

* 29 matched

* 30 matched

* 31 matched

* 33 matched

* 34 matched

* 35 matched

* 36 matched

* 17 left

* 16 left

* 15 left

* 14 left

* 13 left

* 12 left

* 11 left

* 10 left

* spec

* bss

* 9 left

* 8 left

* 7 left

* 6 left

* 5 left

* 4 left

* 1 up to regalloc, 3 left

* 2 left (+ 1 regalloc)

* More naming

* 1 + regalloc left

* Some naming

* matches but for 2 words of stack in func_80B45748

* Delete some padding in header

* Merge remote-tracking branch 'upstream/master' into Zf

* func_8003426C rename

* more failed matching attempts

* Update to new function names

* OK at last

* Actually OK this time, removed pragmas, spec

* Begin documentation

* Few more names

* Some more naming, added description to z_en_geldb.c

* Confirm platform categories

* (Badly) named floor check functions

* Make fighter actors playSpeed animation frame checks consistent (up to names)

* Action enum, lot of work on the skeleton stuff in the object

* Lot of function and animation naming

* More naming, last of the hardcoded symbols

* Some name cleanup

* Remove asm

* Format

* Bit more cleanup

* Dragorn review I

* undefined syms

* Correct limb names

* Non-control flow review suggestions

* Easy review stuff

* Some more review
2021-11-05 23:47:04 -04:00
Roman971
bf0f26db9b Match the remaining functions in Boss_Ganon2 (#1015)
* Match the remaining functions in Boss_Ganon2

* Add empty lines after declarations
2021-10-28 15:17:42 -04:00
Synray
188690c602 Match vr_box functions (#1014) 2021-10-27 23:12:16 +02:00
Roman971
ceb571423d Match BgMizuMovebg_Init (#1003)
* Match BgMizuMovebg_Init

* Re-add missing break
2021-10-19 15:37:02 -04:00
Roman971
5c95f70d59 Match the remaining functions in db_camera.c (#991) 2021-10-01 22:48:40 -04:00
Synray
52f93d135f Decompile Object Kankyo (#960)
* Decompile Object Kankyo

* Remove asm, format

* Start documenting object kankyo

* Document object kankyo

* Remove reloc

* Review changes

and formatted again :(

* WIP

* Review changes
2021-09-26 15:35:01 +02:00
EllipticEllipsis
16471bb68d EnWf OK and documented (#967)
* a ton of progress, 14 functions remain

* cleanup

* a few more functions done, 11 remain

* finally all updated

* another function matched

* another action finished

* damage table

* death action done

* started very large action func

* more progress on long action funcs

* large action func matched

* 5 functions remain

* another large action finished

* start another action, doesn't match yet

* a few new functions, neither match

* done working on this for now

* Correct one nonmatching, fix compiler warnings

* Two functions left

* one left

* remove remaining gotos

* OK

* Delete outdated comment

* namefixer

* Flag macros

* audio, dmgeff, some colour

* Import symbols from object, reloc, name a few things

* Rest of object done

* Named a few more things, add action enum

* Name body parts and another couple of actions

* Last few names

* Delete asm

* Format

* undefined_syms, mods where possible

* Correct parent to EnEncount1

* Review

* Last newline

* louis and Dragorn's reviews

* Format

* More review

* Put back to isInvisible and or, as in EnGeldB

* Remove if (0)s in func_8009728C and change pointer arithmetic cast

* More review

* Unname headRot, make "fallthrough" case clearer, other review

* Format

* Even more review

* Rephrase

Co-authored-by: Zelllll <56516451+Zelllll@users.noreply.github.com>
2021-09-24 18:35:42 -04:00
petrie911
8e318d257e Decomp BgHidanSekizou (#970)
* mostly matching

* OK!

* relocs

* I fix

* fix some floats

* fixes

* array counts

Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
2021-09-24 18:26:19 -04:00
Roman971
f8015f4cd5 Match the last function in z_kankyo.c (#984) 2021-09-21 16:19:04 -04:00
Synray
3b7ed8d943 Match Environment_Update and EnMThunder_Draw (#982)
* Match Environment_Update

* Match EnMThunder_Draw

* Format

* Capitalize hex
2021-09-21 18:29:43 +02:00
Roman971
a9604e267f Match Skybox_Setup and 2 functions in z_kankyo.c (#980) 2021-09-20 19:33:44 -04:00
Synray
1fcb163451 Match remaining z_room functions (#978)
* Match func_80095D04

* Match func_80096FE8

Most of the work was done by the co-authors, putting in this PR for convenience.

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: louist103 <35883445+louist103@users.noreply.github.com>
Co-authored-by: petrie911 <69443847+petrie911@users.noreply.github.com>

* Format

* Remove asm

* Caps

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

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Co-authored-by: louist103 <35883445+louist103@users.noreply.github.com>
Co-authored-by: petrie911 <69443847+petrie911@users.noreply.github.com>
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2021-09-20 15:37:47 -04:00
engineer124
9318ba1804 Match func_800E5000 (#977) 2021-09-20 15:24:24 -04:00
Synray
1c0503cd3b Match func_80B42F74 in Yabusame Mark (#976) 2021-09-20 14:38:25 -04:00
engineer124
bf53f2c95e Match EnTorch2_Update (#975)
* score = 965

* score = 305

* Clean-Up

* More clean-up

* Down to `sp30` <--> `sp34` swap, and extra `.data + 0x18` at the top?

* clean-up

* EnTorch2 OK, but does not reloc properly

* final cleanup

* Remove comments about non-matching

* Fix reloc non-matching

* Delete reloc

* Better solution

* PR Suggestions
2021-09-20 14:15:21 -04:00
Synray
ac8dd91626 Match remaining function in Bg_Jya_Cobra (#969)
* Match remaining function in Bg_Jya_Cobra

* Format
2021-09-20 14:12:05 -04:00