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
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
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
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
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
Erin Moon
5c23199fe2
close-to-matching mDoCPd_c::convert() ( #61 )
2021-01-04 10:37:08 -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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
unknown
27cc0f5aa8
move JK* JS* TUs into JSystem folder
2020-11-29 11:53:10 -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
2761151f69
move SComponent and SStandard under SSystem, some dSv_player_config_c methods ok
2020-11-26 21:35:46 -05:00
unknown
6d5e5cb17c
organize files, update makefile, add CI checks, begin adding d_save.cpp
2020-09-05 15:03:13 -04:00