Commit Graph

5 Commits

Author SHA1 Message Date
sonicspiral
a82d662627
Decomp func_8013A854 from code_d0a70_len_4fe0 and add UnkStructFromfunc8013A854 (#78)
* inisital docs of asm logic and mips_to_c output

* add temp unknown struct for this func
* remove comments from asm, will keep them local only.

* moved UnkSructFromfunc8013A854 to common_sructs.h
* added it's pointer to undefined_syms
* fixed struct pointer and size
* this is a new struct, no others that are `0x7C` in size

* pulled upstream. testing more code.

* fix func_8013A854 to represent latest upstream

* remove unknown struct from common structs to this func

* this is a void func

* unknown struct should be an array with size based on mipstoc outpute a0 < 0x5A

* correct number of lines of asm output from diff, but all code does not match

* fix data types in UnkStructFromfunc8013A854

* temp_v0's logical shift needs to go after UnkStructFromfunc8013A854

* remove unneeded variables

* remove unneeded variables and adding inline sll multiple calc

* add UnkStructFromfunc8013A854 back to common structs

* add UnkStructFromfunc8013A854 back to common structs

* pull latest n64 splat

* analyzing func_8013AA9C to construct UnkStructFromfunc8013A854

* may need unions to represent sub structs in this unk

* roll back struct changes and focus on regalloc

* not an array of pointers looks like there's an array of 90 structs, each struct of size 0x7C

* got OK, now need to cleanup code

* Merge branch 'master' of https://github.com/ethteck/papermario into code_d0a70_len_4fe0-func_8013A854

# Conflicts:
#	tools/n64splat

* fix comment

* remove func_8013AA9C comment used during debug

* add placeholders unks in UnkStructFromfunc8013A854 based on func_8013AA9C

* add first 6 unks in D_80156954

* update todo, add some padding

* adding padding

* adjusting padding

* finished first implementation of padding for UnkStructFromfunc8013A854

* run ./coverage.py --delete-matched

* git checkout -f master && git pull for tools/star-rod

* several changes to UnkStruct8013A854:
* change name from UnkStructFromfunc8013A854 to UnkStruct8013A854
* only include known member data
* add list typedef since this is any arracy of structs

* fix UNKSTRUCT8013A854_SIZE const

* fix スプラトゥーン n64splat

* implement UnkStruct8013A854List to track which array we are pointing to in this unknown struct

* resolve PR feedback. todo resolve splat, review alex optimization:
* move unkstruct extern, struct, and size to code_d0a70_len_4fe0.c
* format void func_8013A854 variable spacing
* add unknown symbol D_80156954;0x80156954 to tools/symbol_addrs.txt

* try fix スプラトn64 with git checkout master && git pull

* fix lint

* move var declaration to inside if and format code

* remove todo comment

Co-authored-by: sonicspiral <>
Co-authored-by: sonicspiral <mru@plusultra.localdomain>
2020-10-19 00:15:04 -04:00
Ethan Roseman
51c076bd8e symbols! 2020-09-27 21:13:56 -04:00
Ethan Roseman
e5de7baa7f a few changes 2020-09-23 23:16:13 -04:00
Ethan Roseman
e37c5b8194 removing .inc 2020-08-12 22:37:16 -04:00
Ethan Roseman
0782fa07a3 Refactoring stuff 2020-08-12 21:56:23 -04:00