* d_resource / some d_stage
* setup dDlst_list_c / d_select_icon OK
* JUTXfb / some JUTVideo + various
* some J2D classes / JUTVideo/Fader attempts
* bunch of m_Do cleanup + matches / f_ap_game OK
* mDoLib_clipper::setup OK
* most of d_meter_HIO OK
* pane_class / kantera_icon_meter
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.
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>
* 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>
* 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.
* 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>
* 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