Commit Graph

462 Commits

Author SHA1 Message Date
Pheenoh 3d7626f838
split m_Do_lib 2021-01-31 16:09:07 -05:00
Pheenoh 02466048b1
split m_Do_ext 2021-01-31 16:04:23 -05:00
Pheenoh 82a0f8f8ab
clang-format 2021-01-31 15:45:36 -05:00
Pheenoh fb0493b171
Merge branch 'functions' 2021-01-31 15:39:31 -05:00
Pheenoh ccf862fbb2
Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-31 15:35:58 -05:00
Pheenoh 90578d539a
remove functions.h 2021-01-31 15:33:34 -05:00
Julgodis cf4bf3fc53 replace symbols with string literals and python script 2021-01-29 22:52:35 +01:00
LC c37cd04585
c_m3d: Make use of forward declarations (#104)
Some inline helper function of the included files in the header make use
of functions defined within it. This can cause a circular dependency
cycle if said helper functions are ever defined within the classes.

To break this potential cycle, we can use forward declarations.

This also has the benefit of reducing preprocessing overhead a little
bit.
2021-01-26 21:29:28 -05:00
lepelog 1e105b87f1
some c_m3d (#97)
* decompiled some bgs_chk funcs

* c_m3d_g

* c_math progress

* remove duplicate SComponent headers

* move some variables and decompile a function

* some inlined from debug

* cM3d_2PlaneLinePosNearPos

* fix fabsf and decompile cM3d_CrawVec

* format

* cleanup

* more cleanup

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-26 17:48:47 -05:00
notyourav b8d0da505d
binary OK (#99)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-26 17:42:28 -05:00
lepelog ce0d0c3521
decompile s_basic, cleanup mangled names in f_pc (#101)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-26 17:11:50 -05:00
LC 3ee8a929a9
c_phase: Make cPhs_Next completely matching (#102)
* c_phase: Make cPhs_Do a little more matching

Still doesn't fully match, but now the branch offsets and everything
else line up.

The load of pUserData still doesn't properly match though.

* c_phase: Make cPhs_Next completely match

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-26 17:08:35 -05:00
LC c11228ea86
J2DPane: Add names for several unlabeled variables (#103)
Should make working on other classes adjacent to J2DPane a little more
descriptive in the decompilation process.
2021-01-26 17:04:10 -05:00
Pheenoh f893c39194
split m_Do_DVDError 2021-01-25 15:13:46 -05:00
LC ec9b03241d
Z2AudioLib: Migrate declarations out of functions.h to respective files (#96)
Removes the strong dependency on a single header file and moves
declarations to their respective header file.

This allows for making dependencies explicit in cpp files and other
headers, and also makes it much easier to track where everything related
to a particular component is.

This change also creates a few header files that previously didn't
exist, making it much nicer for people implementing things, as they
won't need to create the header file, it'll just be there ready to go.

Ideally functions.h wouldn't even be a thing, as this header adds a lot
of preprocessing overhead due to its size, and will continue to grow
significantly larger over the lifespan of the project, which can also
impact the performance of editors that do dependency lookups and
context-aware syntax highlighting.
2021-01-25 12:57:46 -05:00
notyourav 6e7708652e
J2DPane.cpp (#91)
* split J2DPane.cpp

* J2DPane first pass

* consolidate headers and typedef mtx

* remove duplicate J2DScreen.h

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-25 09:57:35 -05:00
notyourav d26898feee
Merge branch 'master' into polypass2 2021-01-24 21:30:58 -08:00
Lioncash 8738700bc1 dBgS: Add declaration for cBgS_PolyPassChk's destructor 2021-01-22 23:43:10 -05:00
Lioncash 54cccdeb12 dBgS: Add release-elided functions to interface 2021-01-22 21:58:45 -05:00
Lioncash b5c8715cb9 dBgS: Decomp dBgS_PolyPassChk constructor and destructor
Fairly basic empty destructor, and a constructor that uses an initializer
list.
2021-01-22 21:58:45 -05:00
Lioncash 628596ffe6 dBgS: Decomp dBgS_PolyPassChk::ChkNoHorse
The only querying function within the poly pass interface.
2021-01-22 21:58:42 -05:00
Lioncash 4bcd3d4ca1 dBgs: Implement all dBgS_PolyPassChk Set and Clr functions 2021-01-22 21:57:43 -05:00
Lioncash 8d2599d1b7 dBgS: Initial dBgS_PolyPassChk class skeleton 2021-01-22 08:15:33 -05:00
Lioncash 9f4104aca8 dBgS: Initial splitting of dBgS_PolyPassChk code 2021-01-22 08:15:30 -05:00
jdflyer db79db103b Various Fixes 2021-01-21 22:20:43 -07:00
jdflyer b5bbe8d00d clang-format 2021-01-21 22:06:54 -07:00
jdflyer 37543ca29f Fix Merge and set maxerrors to 5 2021-01-21 21:59:24 -07:00
jdflyer 64bb8562fa Merge remote-tracking branch 'upstream/master' into m_Do_audio2 2021-01-21 21:58:53 -07:00
jdflyer ff7ac962f1 m_Do_audio 2021-01-21 21:47:28 -07:00
Erin Moon a072e71c33
Z2AudioLib misc decomp (#75)
* Z2SoundHandles: decomp portions

* start decomping: Z2SpeechMgr2, Z2SoundHandles

* Z2SoundHandles::stopAllSounds(): ok

* Z2SoundHandles::getHandleUserData(): ok

* Z2SoundInfo: header

* Z2SoundObjBase::framework(): ok

* Z2SoundObjBase::Z2SoundObjBase(), Z2SoundObjBase::init(): ok

* Z2SoundObjBase::~Z2SoundObjBase(): ok

* Z2SoundObjBase::stopOK(): ok

* Z2SoundObjBase::stopOK, incomplete Z2SoundObjBase::dispose()

* clang-format

* Z2SoundObjBase::dispose(): ok

* JAISound::operator->(): null assert

* JAIAudience: stub

* Z2SoundObject::{init, deleteObject, isAlive}: ok

* Z2SeMgr: elaborate struct (and decl JAISoundHandles to support this)

* start subclassing Z2SoundObjBase; nonmatching Z2SoundObjSimple::init()

* Z2SeMGr::{incrCrowdSize, decrCrowdSize}: ok

* Z2MultiSeMgr::resetMultiSePos(): ok

* Z2WolfHowlMgr.h: decls

* Z2SoundStarter: move to decls and fix postprocess.py symbol pass

* Z2AudioArcLoader: decls

* Z2SoundObjMgr: ok some fns
- deleteEnemyAll()
- isTwilightBattle()
- setGhostEnemyState()

additionally elaborates parts of the Z2Creature hierarchy

* delete unused .s files and add tool to find them (only runs on linux)

* run clang-format

* postprocess.py: comment out debugging

* add python step to ok-check workflow

* address review comments

* address review comments

Co-authored-by: notyourav <65437533+notyourav@users.noreply.github.com>

Co-authored-by: Pheenoh <pheenoh@gmail.com>
Co-authored-by: notyourav <65437533+notyourav@users.noreply.github.com>
2021-01-21 23:16:51 -05:00
LC afb426c60c
c_lib: Decomp a few functions (#89)
* c_lib: Decomp cLib_memSet and cLib_memCpy

Gets rid of some low-hanging fruit.

* c_lib: Decomp cLib_distanceAngleS

Another super trivial function to make match.

* c_lib: Decomp cLib_targetAngleY overload set

Fairly trivial in terms of matching.

* c_lib: Sate clang-format

I didn't touch this code, but the clang-format pass wants this done, and
so it is.
2021-01-21 20:29:22 -05:00
notyourav 358469df03
fvb, functionvalue, vector (#77)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-18 14:27:25 -05:00
Erin Moon c70d485d35
normalize header guards to {tu_name}_H_ (#87)
i previously had a bad habit of using double underscores in include
guard macro names, which are implementation-reserved per
the C++98 standard (see 17.4.3.1.2 Global names).

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-18 14:02:51 -05:00
TakaRikka 7b97550cee
d_com_inf_game / d_save improvements (#82)
* some dcominfg funcs

* add dcom inlines to d_save

* format

* format
2021-01-11 11:32:56 -05:00
TakaRikka 8cf6641bd4
fully split / more work on d_com_inf_game (#81)
* split d_com_inf_game

* fix func name

* start some dcomifg funcs

* fix

* clang-format

* change dComIfGs_setWarpItemData back to inline asm for now

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-10 09:00:45 -05:00
Pheenoh 2d1d72e1c9
convert dStage_roomControl_c::init method 2021-01-10 03:04:59 -05:00
Pheenoh fb341652cc
dStage_SetErrorRoom OK 2021-01-10 02:33:36 -05:00
Pheenoh adf65faa28
dStage_startStage_c::set OK 2021-01-10 02:25:21 -05:00
Pheenoh 1eb2cc39a8
clang-format 2021-01-10 01:27:16 -05:00
Pheenoh b51b5abd14
Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-10 01:24:52 -05:00
Pheenoh 3c0fe08bdc
dStage_roomDt_c methods decomp'd 2021-01-09 23:04:11 -05:00
Jonathan Wase 82d5e0f796
JKRAram and JKRAramStream (#80)
* before __register_global_object

* JKRThread::sThreadList, JKRHeap::sSystemHeap, etc.

* cleanup and started on JKRDvdArchive

* before changing JKRCompression

* more JKRDvdArchive, abs, and memset

* fixed JKRArchive::setExpandSize split

* JKRArchive::sCurrentDirID, JKRDvdFile::sDvdList, and matching JKRDvdFile constructors

* problems

* merge fixes and formatting

* updated clang version in clang-format-all to version 10

* Added OSPhysicalToCached and struct for global memory

* remove useless __attribute__

* changed from defines and macros to const variable and function

* changed FLAG_HAS to FLAG_ON

* JKRAram, linking problems

* fix JKRAram

* remove nonmatching stuff

* renamed static data

* more static class members

* JKRAramStream OK

* formatting

Co-authored-by: Julgodis <>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-09 20:15:52 -05:00
TakaRikka 8bd3d07e23
more daalink / d_item improvements (#79)
* some daalink funcs

* more d_item inlines / setShieldChange

* more daalink stuff

getlife, getrstatus, setitemlifecount, getrupee, setitemrupeecount

* format

* format
2021-01-09 19:59:35 -05:00
Pheenoh 872cd076aa
convert dStage_roomDt_c methods 2021-01-09 19:20:36 -05:00
Pheenoh 9349690253
convert dStage_stageDt_c methods 2021-01-09 17:00:47 -05:00
Pheenoh f1ff8a45ee
split d_stage 2021-01-08 13:01:37 -05:00
Pheenoh 92e9a5ce63
dStage_roomDt_c initial class mapping 2021-01-08 03:46:59 -05:00
Pheenoh cff2beec9c
dStage_stageDt_c initial mapping 2021-01-08 03:05:50 -05:00
Pheenoh 52a53ba135
clang-format 2021-01-07 22:58:47 -05:00
Pheenoh c1d05bc46c
main01 attempt, fix dcomifg_play_c members 2021-01-07 22:56:08 -05:00
Pheenoh 74fac079fa
Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-06 21:03:19 -05:00
Erin Moon 6f3f8cc38e
Z2AudioLib: split (#64)
* Z2AudioLib: split

- Z2SpeechMgr2
- Z2Audience
- Z2EnvSeMgr
- Z2SoundMgr
- Z2AudioMgr
- Z2Creature
- Z2SoundStarter
- Z2WolfHowlMgr
- Z2SoundObject
- Z2SoundObjMgr
- Z2SoundInfo
- Z2AudioArcLoader
- Z2AudioLib
- Z2SoundHandles
- Z2LinkMgr: finish splitting
- Z2SceneMgr: finish splitting
- Z2SeqMgr: finish splitting

* merge fix

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 21:00:42 -05:00
lepelog 6d946e8330
match some Z2Calc functions (#72)
* Z2Calc OK

* inline definitions in random.h and format

* set -enum int compiler flag and fix enum hacks

* note for get_ufloat_1 inline

* PR suggestions and UB note

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 20:39:56 -05:00
notyourav b8ecef0ddb
Refactor JUTFont symbols (#71)
* fix JUTFont args

* fix

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 20:36:27 -05:00
Jonathan Wase 88fca194f8
JKRSolidHeap (#69)
* JKRSolidHeap progress

* JKRSolidHeap, added const to virtual functions, and JKRHeap::TState

* fixed braces

* fix function overload

* clang-format

Co-authored-by: Julgodis <>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 20:33:03 -05:00
lepelog 0cf65151b3
Split SComponent (#45)
* split c_math

* split c_angle

* split c_API_controller_pad

* split c_API_graphic

* split c_bg_s_chk

* c_bg_s_gnd_chk split

* more c_bg split

* split c_cc_d

* delete asm

* split c_cc_s

* split c_lib

* split c_m2d and c_m3d_g_aab

* split c_m3d_g_cir

* split c_m3d_g_cps

* split rest of c_m3d_g

* split c_m3d

* split c_malloc

* split c_request

* split c_sxyz

* split and partly decompile c_xyz

* format

* c_angle.h

* begin c_angle decomp

* c_angle

* progress adding stub classes for SComponent

* more c_m3d

* remove some asm and format

* more m3d headers

* more c_angle decomp

* c_lib headers

* add public to classes

* fix csXyz member names

* c_sxyz partly OK

* move Zero csXyz to c_sxyz header

* c_API_graphic

* delete some unused asm

* move math extern data, decompile some functions

* delete unused asm

* fix duplicated c_angle.h

* fix an inlined function name, add more inlined functions for c_angle.h (currently unused)

* format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 20:04:53 -05:00
Jonathan Wase 792509e0a1
JKRFileCache matched 22/24 (#73)
* progress

* strlen, strcat, and strcchr

* more functions from JKRFileCache

* JKRFileCache 22/24 matched

Co-authored-by: Julgodis <>
2021-01-06 19:47:07 -05:00
notyourav 105c006948
TObject and JStudio internals (#57)
* TObject

* fix

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-05 12:47:26 -05:00
lepelog 689d83dd23
Move and type PSVEC and PSMTX funcs and follow includes in functions.h (#68)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-05 12:32:20 -05:00
TakaRikka e9607ae760
add a lot of dComIfGs inlines (#65)
* item_func inlines

* some getcheck func inlines

* remove asm

* format

* format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-05 11:48:08 -05:00
Jonathan Wase d89fb99506
JKRMemArchive (#66)
* JKRArchivePri OK

* JKRArchivePub OK

* formatting

* removed unused asm files and tried to fixed setExpandSize and getExpandSize

* JKRMemArchive and created JKRCompression

Co-authored-by: Julgodis <>
2021-01-05 11:34:58 -05:00
Pheenoh a1d3f599f7
Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-04 22:10:07 -05:00
Jonathan Wase b9ef1d7f4a
JKRArchive (#63)
* JKRArchivePri OK

* JKRArchivePub OK

* formatting

* removed unused asm files and tried to fixed setExpandSize and getExpandSize

Co-authored-by: Julgodis <>
2021-01-04 18:20:45 -05:00
Pheenoh efb2a3896f
Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-04 10:43:15 -05:00
TakaRikka 7215cc6a51
some daAlink_c funcs (#62)
* checkMagicArmorHeavy / checkBootsOrArmorHeavy / setSpecialGravity ok

* onFroollCrashFlg / setMidnaTalkStatus ok

* add setZStatus inline

* format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-04 10:43:09 -05:00
Pheenoh 90eb3341bc
Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-04 10:37:18 -05:00
Erin Moon 5c23199fe2
close-to-matching mDoCPd_c::convert() (#61) 2021-01-04 10:37:08 -05:00
Pheenoh 2a6fc42571
begin decomping main01 2021-01-04 00:16:06 -05:00
Jonathan Wase 0be0a7ea94
JKRFileLoader, JKRFileFinder, and JKRThread (#60)
* JKRFileLoader OK

* JKRFileFinder progress

* JKRFileFinder OK

* JKRFileCache fix virtual function signatures

* added OSThread and OSContext types

* JKRThread fixed nonmatching functions

Co-authored-by: Julgodis <>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-03 22:48:07 -05:00
Pheenoh 922a0df5ea
debug OK 2021-01-03 22:41:17 -05:00
Jonathan Wase 5217a4189e
JKernel cleanup and DVD types (#59)
* JKRDecomp OK

* JKRFile and JKRDvdFile cleanup

* more DVD stuff and cleanup JKRDvdFile more

* formatting

* JKRHeap cleanup

* formatting

* JKRDisposer cleanup

* JKRAramBlock and JKRAramHeap cleanup

* fix merge error

* fixed comments

* forgot to save file...

* fix DVDCBcallback

Co-authored-by: Julgodis <>
2021-01-03 21:26:25 -05:00
Pheenoh 409257b111
clang-format 2021-01-03 21:11:43 -05:00
Pheenoh 6f22d27503
swap in memcpy for func_80003540, correct some minor issues in dvd.h and JKRDVDFile.h 2021-01-03 21:08:33 -05:00
Pheenoh d8fdc85090
countUsed OK 2021-01-03 16:58:49 -05:00
Pheenoh f12c5050f3
HeapCheck::heapDisplay OK 2021-01-03 16:34:11 -05:00
Jonathan Wase 423fdadc32
JKRDecomp OK (#58)
* JKRDecomp OK

* clang-format tool

* JKRThread cleanup and fixed suggestions

Co-authored-by: Julgodis <>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-03 16:19:54 -05:00
Pheenoh 4e085c9c84
make gameinfo members private 2021-01-03 16:13:28 -05:00
Jonathan Wase 4309c3db5b
JKRAramHeap and JKRAramPiece (#53)
* renamed func_XXX to _savegpr_XX

* renamed func_XXX to _restgpr_XX

* renamed func_XXX to _savefpr_XX

* renamed func_XXX to _restfpr_XX

* cleanup functions.h and moved intrisics to mwcc.h

* formatting

* cleanup functions.h

* Added include/ar/ARQ.h

* renamed func_XXX to _savegpr_25

* removed JKRAramPiece asm files

* JKRAramHeap OK, JKRAramPiece OK

* formatting

* more formatting

* Added const and removed explicit this->

* fixed merge problems

* changed mMessages[1] to mMessage

* foramatting

Co-authored-by: Julgodis <>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-03 05:29:50 -05:00
TakaRikka ab8dee5c14
dSv_player_item_c setWarashibeItem (#56)
* dsv_player_item_c::setWarashibeItem

* add slot name

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-03 05:15:52 -05:00
Pheenoh a846de469c
dSv_player_item_c::checkInsectBottle OK 2021-01-03 05:03:42 -05:00
Pheenoh d7ece32bbb
dSv_info_c::revSwitch OK 2021-01-03 04:22:09 -05:00
Pheenoh 777bf2d3eb
dSv_info_c::isSwitch OK 2021-01-03 03:51:44 -05:00
Pheenoh 47c40cce41
dSv_info_c::isItem OK 2021-01-03 03:35:54 -05:00
Pheenoh 5abaebc40d
dSv_info_c::isActor OK 2021-01-03 03:22:30 -05:00
Erin Moon 5c4ac052c3
decomp some small files, do some cleanup (#42)
* remove leftover asm: JSUList.s

* d_save_init: decomp

* JMath/random: decomp

* J3DUDL: fixup label

* JAUClusterSound: decomp

* c_API_controller_pad: decomp, elaborate globals/types

* clang-format

* don't add guards to functions.h

* semantic merge of m_cpadInfo stuff

* fix undef symbols

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-03 01:04:15 -05:00
Jonathan Wase d2e9db3748
Fixed _savegpr etc. (#54)
* renamed func_XXX to _savegpr_XX

* renamed func_XXX to _restgpr_XX

* renamed func_XXX to _savefpr_XX

* renamed func_XXX to _restfpr_XX

* cleanup functions.h and moved intrisics to mwcc.h

* formatting

* cleanup functions.h

* fix bad-formatting from master

Co-authored-by: Julgodis <>
2021-01-02 23:15:12 -05:00
Pheenoh 609891bc25
adjust gameinfo sizing, rename inline register funcs 2021-01-02 19:09:04 -05:00
Pheenoh e375712d23
Merge branch 'master' of https://github.com/zeldaret/tp 2021-01-02 17:49:20 -05:00
Pheenoh 458be4d8cb
more d_save funcs OK, initial map out of dcomifg_play_c and it's classes 2021-01-02 17:47:43 -05:00
Erin Moon ad62061cfc
Split d_meter, d_meter2 (#49)
* d_meter2*: split

- d_meter2
- d_meter2_info
- d_meter2_draw

* d_meter_*: split

- d_meter_button
- d_meter_haihai
- d_meter_hakusha
- d_meter_HIO
- d_meter_map
- d_meter_string

* d_kantera_icon_meter: split

* clang-format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 10:47:18 -05:00
Erin Moon 30a10e0352
m_Do_Reset: reset, callback not statics (ty @notyourav) (#50)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 10:39:15 -05:00
Erin Moon 8821a84a70
d_camera: split (#51)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 10:37:11 -05:00
Jonathan Wase 54cef5c777
JKRAramBlock OK (#52)
Co-authored-by: Julgodis <>
2021-01-02 10:32:34 -05:00
Jonathan Wase c5b3cbaa08
JKRAssertHeap OK (#47)
* JKRAssertHeap OK

* removed JKRAssertHeap asm files.

Co-authored-by: Julgodis <>
2021-01-02 02:14:43 -05:00
jdflyer e42d44e6cb
M_do_controller_pad split and partially matched (#36)
* m_Do_controller_pad split

* Attempt to match and match mDoCPd_c::recalibrate

* Fix Merge Errors

* clang-format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 02:02:19 -05:00
Erin Moon 69faf591d4
d_kankyo, d_kankyo_*: autosplit (#44)
- d_kankyo
- d_kankyo_rain
- d_kankyo_wether
- d_kankyo_rain

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 01:54:59 -05:00
TakaRikka 915991f431
most daMidna_c (#43)
* most daMidna_c done

* setLinkState ok

* format

* remove asm

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-02 01:46:34 -05:00
lepelog 0555115de8
A few f_pc files (#26)
* f_pc_base, one non matching

* some of f_pc_manager

* f_pc_node OK

* f_pc_pause partly

* started node_req

* more progress

* most of node req

* delete unused asm

* node req header and param names

* param renaming

* header for manager

* review comment struct names

* fpcM_Management OK

* int -> s32

* merge master

* most of f_pc_create_iter

* f_pc_stdcreate_req OK

* f_pc_fstcreate OK

* f_pc_leaf OK

* f_pc_draw OK

* f_pc_deletor partly

* fix parameter type in f_pc_pause

* review

* review, use cPh enum and fix process_profile_definition struct

* convert f_pc files to C

* matched more functions

* fix global.h

* fix variable types

* format

* mpre Phs enum

* fix merge errors

* fix gamepad stopPatternedRumble

* format

* delete leftover files from merge

* move asm to correct folder

* revert f_pc from C to CPP

* remove C hacks and format

* format

* OK
2020-12-31 15:12:29 -05:00
Erin Moon 992cf48c7f
Split and decompile parts of JUTGamePad (#33)
* JUTGamePad.o: elaborate classes, split

* JUTGamePad::CButton: decompile functions:
- clear()
- clear(JUTGamePad*)
- setRepeat()

* elaborate PAD* types in new header

* decompile getNumBit()

* elaborate JUTGamePad fields

* move retyped externs from variables.h to JUTGamePad.h

* elaborate JUTGamePadLongPress

* JUTGamePad: decompile functions

- initList()
- init()
- clear()
- assign()
- checkResetCallback()
- checkResetSwitch()
- clearForReset()
- recalibrate()

JUTGamePad: decompile

* JUTGamePad::CStick::clear(): decompile

* JUTGamePad::CRumble: decompile functions

- startMotor()
- stopMotor()
- triggerPatternedRumble()
- startPatternedRumble()
- stopPatternedRumbleAtThePeriod()
- setEnabled()

* JUTGamePadLongPress::checkCallback(): decompile

* nonmatching: JUTGamePad::CRumble::update() and JUTGamePad::getGamePad

* JSUList<T>: allow access to JSUPtrList functions

* functions.h: clear out some func decls that are no longer used

* add notes in JUTGamePad.cpp

* clang-format + add back extern funcs

* fix some more extern labels

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-29 20:22:18 -05:00
Erin Moon 2dddd746a6
split d_attention (#40)
* d_attention.cpp: split

* clang-format + add back in dropped labels

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-29 18:19:10 -05:00
Erin Moon cba64289a4
JUTXfb: decompile (#38)
* m_Do_Reset: split and (some) decomp

decompiles:
- my_OSCancelAlarmAll()
- destroyVideo()

* mDoRst::reset(): decompile, plus some supporting code

* split DVD* functions to dvd.h

* mDoRst::resetCallBack(): decompile

* JUTXfb: split

* JUTXfb: decompile (except for almost-matching ctor)

Elaborates JUTVideo and some related stuff.
Decompiles the following functions:
- JUTXfb::initiate()
- JUTXfb::createManager()
- JUTXfb::common_init()
- JUTXfb::destroyManager()
- JUTXfb::~JUTXfb()
- JUTXfb::JUTXfb(): *almost* matching up to regalloc

* clang-format and extern label modifications

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-29 18:01:48 -05:00
jdflyer 6a16bef70e
d_lib split and partially matched (#30)
* d_lib split and partially matched

* clang-format

* modify some extern labels

* clang-format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-29 17:39:36 -05:00
Erin Moon 8630c588e9
d_a_alink.cpp: split (#41) 2020-12-29 17:08:25 -05:00
Pheenoh 9e442d11ca
move asm in TUs to files, add diff.py 2020-12-26 13:03:37 -05:00
Pheenoh 4c504d078d
run clang-format 2020-12-26 11:31:49 -05:00
unknown 64a6a97b7b
add missing class and clang-format 2020-12-25 21:16:13 -05:00
unknown e066711553
add missing class in d_save and clang-format 2020-12-25 21:11:16 -05:00
TakaRikka e8315cdb81
begin splitting d_a_alink (#34)
* begin splitting d_a_alink

* fix

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-25 21:03:10 -05:00
Erin Moon 58fc83c4f8
m_Do_Reset: OK (#35)
* m_Do_Reset: split and (some) decomp

decompiles:
- my_OSCancelAlarmAll()
- destroyVideo()

* mDoRst::reset(): decompile, plus some supporting code

* split DVD* functions to dvd.h

* mDoRst::resetCallBack(): decompile
2020-12-25 20:59:52 -05:00
TakaRikka 22bda03652
more d_item / d_a_horse_static done (#32)
* more d_item funcs done / add dSv_info_c to gameinfo

* checkWait ok / remove asm
2020-12-14 14:07:29 -05:00
jdflyer e4ad32409b
d_bomb OK (#28)
* Start Z2SceneMgr

* Various Fixes After Merge

* d_bomb OK

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-13 15:49:40 -05:00
TakaRikka c65c2dbb8f
Z2StatusMgr (#24)
* split Z2SeMgr / begin split of Z2SeqMgr

* Z2StatusMgr ok

most of Z2StatusMgr done, rest split

* name some class members

* name some Z2SceneMgr vars

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-13 15:43:16 -05:00
Jasper St. Pierre 4e622b873f
f_pc_pause / f_pc_priority (#23)
* f_pc_pause

* f_pc_priority
2020-12-13 15:38:17 -05:00
unknown c0ba553a85
convert more class members to new naming convention 2020-12-08 01:37:35 -05:00
unknown 5684d3b149
use dolphin types, begin changing class member naming convention 2020-12-08 00:46:44 -05:00
Erin Moon b8bd1bbab1
OS.h: more type elaboration (#21)
* move OS function decls to their own header, os.h

* os.h: OSReport (+related), OSMutex, OSThread; fixup uses

* os.h: OS{Mutex,Thread}{Link,Queue}, OSCond

* os.h: OSxx typedefs, OSMessageQueue

* os.h: fix time function decls

* os.h: retype misc sched fns, create u32 OSSoundMode enum (and fixup use)

* os.h: more retyping

* merge os.h into os/OS.h

@Julgodis did this in parallel to me and added some functions beyond
what was in functions.h, so I merged our versions together

* os.h: retype the rest of the (currently decl'd) thread functions

* d_save: move OS import

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-07 15:05:20 -05:00
Jasper St. Pierre 81e70882bf
f_pc_layer: Fix struct (#22)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-07 14:51:49 -05:00
unknown cbd06e5668
add d_meter2_info methods, addBottleNum OK, getBombNum OK, isLetterReadFlag OK 2020-12-06 20:46:16 -05:00
Jonathan Wase 86f892c3d3
JKernel (#20)
* JKRDvdArchive.s split

* JKRMemArchive.s split

* JKRAramArchive.s split

* JKRCompArchive.s split

* JKRDecomp.s split

* JKRDvdRipper.s split

* JKRAramBlock.s split

* JKRAramHeap.s split

* JKRAramPiece.s split

* JKRAramStream.s split

* removed unused .s files

* JKRDvdAramRipper.s split

* JKRAram.s split

* cleanup and making vtables easier to debug

* fixed merge errors

* fixed JKRFileLoader::fetchVolumeName

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-06 15:02:25 -05:00
unknown 819f178657
add dmeter2 header, isMagicFlag OK, setItem OK 2020-12-06 14:38:26 -05:00
Jonathan Wase 59a3d00209
OS.h and JKRDvdFile (#19)
* OS header

* JKRFile and JKRDvdFile
2020-12-06 00:40:34 -05:00
lepelog 89385fe8fd
f_pc_layer (#16)
* f_op_actor_tag OK

* f_pc_layer_tag OK

* f_pc_layer_iter

* forgot a return

* identation and extern var name comments

* fix struct member name

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-05 23:58:12 -05:00
TakaRikka 2fbecbc1da
d_item (#18)
* item_funcs ok

* item_getcheck_func ok

* remove unnecessary asm file

* execItemGet / checkItemGet ok, add enums for readability

* fix return types
2020-12-05 23:30:55 -05:00
Jonathan Wase fb1217e3f9
Types and functions for JKRThread, JKRFile, JKRDvdFile, JKRFileCache... (#17)
* Added JSUListIterator and decompiled JKRHeap::dispose_subroutine

* JKRDisposer!

* only 4 functions not OK in JKRHeap

* JKRThread asm functions

* more JKRThread

* JKRThreadSwitch

* JKRThread::JKRThread

* More JKRTHread functions and vtable

* fixed bad merge

* update JKRThread and JKRThreadSwitch to use new virtual inheritance

* save before asmsplit.py script

* JKRFile

* JKRDvdFile

* JKRFileCache

* JKRFileFinder

* JKRFileLoader

* JKRAssertHeap

* JKRExpHeap

* JKRSolidHeap

* fixed type and functions definitions

* JKRArchive (Pub)

* missed file

* JKRArchive

* forgot obj_files.mk

* fixed merge error and class members

* class members

* removed unused asm files

* added names to global variables

* class members for JKRHeap, JKRExpHeap, JKRSolidHeap, and JKRFileCache.
2020-12-05 12:45:10 -05:00
unknown 3dc3739ebd
initial class structure for dComIfG_inf_c 2020-12-04 00:04:41 -05:00
unknown 7ec9d6ec28
Merge branch 'master' of https://github.com/zeldaret/tp 2020-12-03 21:04:06 -05:00
unknown 1c7bf89fff
begin adding d_com_inf_game, add include guards to headers 2020-12-03 21:03:25 -05:00
Jonathan Wase 4adfed901e
JSUList.h templates and JKRHeap matches (#13)
* JSULink, JSUList, JSUTree and more matching in JKRHeap

* Added JSUListIterator and decompiled JKRHeap::dispose_subroutine

* more templates and JKRHeap functions

* JKRDisposer!

* only 4 functions not OK in JKRHeap

* fixed: *this->getObject()

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-03 21:02:41 -05:00
notyourav 294858f751
JSystem Font classes, SComponent cBgW (#14)
* c_bg_w.cpp OK

* JUTFont and JUTResFont partially implemented

Co-authored-by: notyouraveragehooman <65437533+notyouraveragehooman@users.noreply.github.com>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-03 20:58:53 -05:00
TakaRikka e27ed1c55d
add gameinfo class / rename unk vars in d_save (#15) 2020-12-03 20:56:56 -05:00
TakaRikka 8703f1315e
d_a_horse_static (#12)
* d_a_item_static ok

* d_a_horse_static ok

* typo

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-02 22:38:32 -05:00
jdflyer 539608859b
Start Z2SceneMgr and Various Fixes (#11)
* Start Z2SceneMgr

* Various Fixes After Merge

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-02 20:35:32 -05:00
TakaRikka 6e9b833ef7
d_a_item_static ok (#10)
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-02 20:33:22 -05:00
notyourav 31817ac993
canonize d_save.h (#9)
Co-authored-by: notyouraveragehooman <65437533+notyouraveragehooman@users.noreply.github.com>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-12-02 19:03:31 -05:00
TakaRikka 84c6fa1a58
Z2CreatureLink / Z2Calc (#8)
* begin Z2LinkMgr

Z2CreatureLink::setLinkGroupInfo, Z2CreatureLink::setLinkHp ok

* split Z2CreatureLink

* split Z2Calc

* fix label data type / clean up

* fix getRandom_0_1 instruction

* fix

* clean up
2020-12-01 22:34:15 -05:00
Jonathan Wase ac6b191dc1
Improved handling of virtual inheritance. (#7)
* new system for handling vtables

* commented out non-matching JKRDisposer::~JKDisposer()

* removed artificial vtables and matched simple virtual-call functions

* better text on nonmatching functions

* reverted asmdiff.sh

* attempt 2

* Spelling

* banner and .gitignore for vtable artifacts

* move virtual function to the correct class

* remove unnecessary casts
2020-12-01 15:18:01 -05:00
Jasper St. Pierre 937da3c59b
SComponent c_list / c_node (#5)
* SComponent c_list / c_node

* SComponent: c_tree

* SComponent: start c_phase

* SComponent: c_tag

* SComponent: c_counter

* f_pc_line / f_pc_line_tag

the beginnings of the framework process system

* f_pc_method_tag

* SComponent: c_node_iter / c_list_iter / c_tag_iter / c_tree_iter

* f_pc_draw_priority

* f_pc_method_iter

* f_pc_profile

Also add (untested) base header classes for f_pc_base

* f_pc_searcher

* f_pc_create_tag

* f_pc_creator

* f_pc_layer skeleton

* f_pc_method

* f_pc_line_iter

* f_pc_leaf somewhat

* f_pc_delete_tag

* f_pc_create_req

* Fix a few non-matchings

* c_phase: slight additional notes

* c_node: more matching

* fix build

* c_node: One more matching

* f_pc_line_iter: Matching

* f_pc_create_req: a bit more

* f_pc_load, f_pc_deletor partial

* f_pc_executor partial

* f: minor cleanups

* f_pc_executor

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2020-11-30 17:26:55 -05:00
Jonathan Wase 51b0260c80
JKRHeap functions (#6)
* becomeSystemHeap OK! becomeCurrentHeap OK!

* initArena OK!

* static-alloc OK! static-free OK! static-resize OK!

* operator new OK! operator delete OK!

* removed asm/d/file/sel/d_file_sel_info.o from obj_files.mk

* fixed vtable names
2020-11-30 17:24:05 -05:00
unknown 635472d71f
migrate all d_file_sel_info asm functions to inline 2020-11-29 23:26:19 -05:00
unknown 44b14ec128
migrate remaining d_save and m_Do_main asm to inline, add intial class mapping for dFile_select_c 2020-11-29 20:16:52 -05:00
unknown 58afa9ed78
add more sorting to inline'd asm for JSystem, move m_Do_main over to using newly defined JKRHeap and JKRExpHeap headers 2020-11-29 12:57:11 -05:00
unknown 92cfb378f3
Add better sorting for inline'd asm 2020-11-29 12:21:01 -05:00
Jonathan Wase 635fbc34ec
Adds JSUList, JKRDisposer, and JKRHeap. (#4)
* Added JSUList, JKRDisposer, and JKRHeap.

JSUList: Decompiled JSUPtrLink and JSUPtrList with their respected
functions. The templated class JSUList is left.

JKRDisposer: Constructor matched but the destructor is close but
not yet a match.

JKRHeap: No functions matches yet. JKRHeap.cpp now includes
"operator delete" which makes it possible to forward compile
destructors.

* moved files from src/ to libs/
2020-11-29 11:47:00 -05:00
unknown 68a46e15cb
begin d_save_HIO, some m_Do_main functions ok 2020-11-28 23:34:06 -05:00
unknown f861af3f37
a few dSv_info_c methods ok 2020-11-28 19:18:27 -05:00
unknown 9982bcab28
dSv_zoneActor_c ok dSv_zone_c ok dSv_restart_c ok dSv_turnRestart_c ok dSv_info_c::init ok some dSv_save_c ok 2020-11-27 23:34:39 -05:00
unknown 963c0ad2a6
dSv_zoneBit_c methods ok except 1 2020-11-27 21:32:52 -05:00
unknown d0e76b81b9
dSv_danBit_c ok + fixed many nonmatchings 2020-11-27 20:49:52 -05:00
unknown c1f0b47a93
dSv_memory_c::init ok, dSv_memory2_c::init ok, some dSv_event_c::offEventBit ok 2020-11-26 23:55:28 -05:00
unknown b0ffcd3878
some dSv_memBit_c methods ok 2020-11-26 22:02:39 -05:00
unknown 2761151f69
move SComponent and SStandard under SSystem, some dSv_player_config_c methods ok 2020-11-26 21:35:46 -05:00
unknown 363fd35933
dSv_player_config_c::init ok 2020-11-26 20:14:44 -05:00
unknown 2fceccbd08
dSv_light_drop_c ok 2020-11-23 21:26:10 -05:00
unknown d92f32f541
dSv_player_collect_c ok 2020-11-23 19:57:23 -05:00
unknown 8b358fdf8d
dSv_player_item_max_c::init ok dSv_player_item_max_c::setBombNum ok 2020-11-23 00:31:50 -05:00
unknown e956a55a26
dSv_player_item_record_c and dSv_player_get_item_c funcs ok 2020-11-22 20:17:49 -05:00
unknown 5111810104
multiple d_save functions ok 2020-11-22 18:21:23 -05:00
unknown 02c62c1132
migrate d_save.cpp inline asm to external files, migrate extern vars and funcs to their own headers 2020-11-22 15:27:16 -05:00
unknown c31b914681
update d_save, begin splitting asm 2020-11-22 14:28:16 -05:00
unknown 6359c5f82b
Migrate many functions from d_save.s 2020-09-13 02:51:05 -04:00
unknown 6d5e5cb17c organize files, update makefile, add CI checks, begin adding d_save.cpp 2020-09-05 15:03:13 -04:00
unknown c5e2415773 ok 2020-08-29 17:54:55 -04:00