Pheenoh
46d4ed094a
split f_ap_game, fapGm_Execute ok, more changes to m_Do_main
2021-02-13 15:23:18 -05:00
lepelog
4bd5ca735f
f_op_actor_mng split & started decomp ( #112 )
...
* fop-actor-mng
* rodata
* more actor mng progress
* actor mng progress
* format
* cleanup
* fix Mtx function signatures
* PR suggestion
Co-authored-by: Pheenoh <pheenoh@gmail.com >
2021-02-12 19:47:46 -05:00
Pheenoh
34693ded85
debugDisplay and Debug_console attemp
2021-02-07 17:20:16 -05:00
jdflyer
2f41a74030
d_kyeff, d_kyeff2, m_Do_printf, and m_Do_graphic ( #109 )
...
* Split d_kyeff
* Partially matched d_kyeff
* split d_kyeff2
* Match d_kyeff2
* split m_Do_printf
* m_Do_printf partially matched
* hotfix and clang-format
* split m_Do_graphic
* rename symbols in m_Do_graphic
* Match a few functions in m_Do_graphic
* Fix Merge Errors
* Delete sh.exe.stackdump
* Update OSReportInit
2021-01-31 20:03:38 -05:00
Pheenoh
875f264f30
clang-format
2021-01-31 15:45:36 -05:00
Pheenoh
8d15cbebd8
Merge branch 'functions'
2021-01-31 15:39:31 -05:00
Pheenoh
8e3d116bb1
remove functions.h
2021-01-31 15:33:34 -05:00
Julgodis
25d728a920
formatting
2021-01-29 22:52:35 +01:00
Julgodis
4d2d73d15c
replace symbols with string literals and python script
2021-01-29 22:52:35 +01:00
Julgodis
813f736d00
JKRSolidHeap::dump now matching using floats
2021-01-27 15:43:21 +01:00
Julgodis
d6a112de31
formatting
2021-01-27 05:58:12 +01:00
Julgodis
c25ce1bab2
compiling strings? WTF
2021-01-27 05:57:41 +01:00
LC
61b7a10181
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
11bf642871
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
847023cd1b
binary OK ( #99 )
...
Co-authored-by: Pheenoh <pheenoh@gmail.com >
2021-01-26 17:42:28 -05:00
lepelog
1e8f64cb5e
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
b1c2cd6408
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
6a57d6176a
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
LC
1ef592dd6e
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
4a0aaca15e
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
jdflyer
56352bd0c2
clang-format
2021-01-21 22:06:54 -07:00
jdflyer
2ba44f831b
Merge remote-tracking branch 'upstream/master' into m_Do_audio2
2021-01-21 21:58:53 -07:00
jdflyer
806630e336
m_Do_audio
2021-01-21 21:47:28 -07:00
Erin Moon
972960b6eb
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
f0699b05a8
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
c48c35f4db
fvb, functionvalue, vector ( #77 )
...
Co-authored-by: Pheenoh <pheenoh@gmail.com >
2021-01-18 14:27:25 -05:00
Jonathan Wase
04354aadb9
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
Erin Moon
e71b327988
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
11e2bab926
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
a787699d14
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
4fa0ecdd97
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
0eec99db4d
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
9ff0143cd7
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
6a81911ba6
TObject and JStudio internals ( #57 )
...
* TObject
* fix
Co-authored-by: Pheenoh <pheenoh@gmail.com >
2021-01-05 12:47:26 -05:00
Jonathan Wase
42a5e45a98
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
Jonathan Wase
594d2c384d
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
Erin Moon
bc9677e928
close-to-matching mDoCPd_c::convert() ( #61 )
2021-01-04 10:37:08 -05:00
Jonathan Wase
252d874e14
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
Jonathan Wase
fa9b428351
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
9d766bf0e3
clang-format
2021-01-03 21:11:43 -05:00
Pheenoh
1f6f337212
swap in memcpy for func_80003540, correct some minor issues in dvd.h and JKRDVDFile.h
2021-01-03 21:08:33 -05:00
Jonathan Wase
088b7baecd
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
Jonathan Wase
112e86f0e8
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
Erin Moon
66626304fa
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
9832be3a63
JKRAramBlock OK ( #52 )
...
Co-authored-by: Julgodis <>
2021-01-02 10:32:34 -05:00
Jonathan Wase
79262fb991
JKRAssertHeap OK ( #47 )
...
* JKRAssertHeap OK
* removed JKRAssertHeap asm files.
Co-authored-by: Julgodis <>
2021-01-02 02:14:43 -05:00
jdflyer
cb436a727b
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
bf652784d1
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
8e1eeaddce
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
Pheenoh
bf0bb4b851
move asm in TUs to files, add diff.py
2020-12-26 13:03:37 -05:00