From a61e3491f7c46b698514af50464cf71ba76bd3a3 Mon Sep 17 00:00:00 2001 From: Pheenoh Date: Fri, 12 Apr 2024 00:10:30 -0600 Subject: [PATCH] d_a_e_fz work, doxygen revamp (#2127) * initial freezard actor struct + setActionMode OK * daE_FZ_Draw * setReflectAngle * mBoundSoundset * daE_FZ_Execute & execute * demoDelete * daE_FZ_Delete & _delete * CreateHeap * useHeapInit * cc_set * mtx_set * action WIP * way_gake_check * executeRollMove * executeMove * draw WIP * executeDamage * checkpoint * create * checkpoint * daE_FZ_c::executeWait * checkpoint * daE_FZ_c::damage_check almost done * rm asm * rm headers * setup_profile WIP + doxygen update * fix merge issues * docs fix? * fix2 * doxygen updates * setup g_profile_E_FZ, profile setup script WIP * update github actions * update progress.md --- .github/workflows/doxygen.yml | 11 +- Doxyfile | 867 ++++-- Progress.md | 20 +- .../d_a_e_fz/CreateHeap__8daE_FZ_cFv.s | 37 - .../d_a_e_fz/d_a_e_fz/_delete__8daE_FZ_cFv.s | 32 - .../e/d_a_e_fz/d_a_e_fz/create__8daE_FZ_cFv.s | 8 +- .../d_a_e_fz/daE_FZ_Create__FP8daE_FZ_c.s | 9 - .../d_a_e_fz/daE_FZ_Delete__FP8daE_FZ_c.s | 9 - .../d_a_e_fz/daE_FZ_Draw__FP8daE_FZ_c.s | 9 - .../d_a_e_fz/daE_FZ_Execute__FP8daE_FZ_c.s | 9 - .../d_a_e_fz/demoDelete__8daE_FZ_cFv.s | 29 - .../d_a_e_fz/mBoundSoundset__8daE_FZ_cFv.s | 28 - .../d_a_e_fz/d_a_e_fz/mtx_set__8daE_FZ_cFv.s | 34 - .../d_a_e_fz/setActionMode__8daE_FZ_cFii.s | 4 - .../d_a_e_fz/setReflectAngle__8daE_FZ_cFv.s | 43 - .../d_a_e_fz/useHeapInit__FP10fopAc_ac_c.s | 9 - .../doxygen-awesome-darkmode-toggle.js | 157 + .../doxygen-awesome-fragment-copy-button.js | 85 + .../doxygen-awesome-interactive-toc.js | 81 + .../doxygen-awesome-paragraph-link.js | 51 + ...n-awesome-sidebar-only-darkmode-toggle.css | 40 + .../doxygen-awesome-sidebar-only.css | 116 + .../doxygen-awesome-tabs.js | 90 + .../doxygen-awesome.css | 2675 +++++++++++++++++ .../doxygen-custom/custom-alternative.css | 54 + .../doxygen-custom/custom.css | 57 + .../doxygen-custom/header.html | 99 + .../toggle-alternative-theme.js | 12 + .../img/theme-variants-base.drawio.svg | 117 + .../theme-variants-sidebar-only.drawio.svg | 102 + docs/doxygen-awesome-css-2.3.2/overrides.css | 17 + docs/mainpage.h | 193 ++ docs/midna.png | Bin 0 -> 131921 bytes include/JSystem/J2DGraph/J2DAnimation.h | 61 +- include/JSystem/J2DGraph/J2DAnmLoader.h | 16 + include/JSystem/J2DGraph/J2DGrafContext.h | 5 +- include/JSystem/J2DGraph/J2DManage.h | 12 + include/JSystem/J2DGraph/J2DMatBlock.h | 77 +- include/JSystem/J2DGraph/J2DMaterial.h | 4 + include/JSystem/J2DGraph/J2DMaterialFactory.h | 17 +- include/JSystem/J2DGraph/J2DOrthoGraph.h | 4 + include/JSystem/J2DGraph/J2DPane.h | 8 + include/JSystem/J2DGraph/J2DPicture.h | 13 +- include/JSystem/J2DGraph/J2DPictureEx.h | 5 +- include/JSystem/J2DGraph/J2DPrint.h | 5 +- include/JSystem/J2DGraph/J2DScreen.h | 16 + include/JSystem/J2DGraph/J2DTevs.h | 81 +- include/JSystem/J2DGraph/J2DTextBox.h | 12 + include/JSystem/J2DGraph/J2DTextBoxEx.h | 5 +- include/JSystem/J2DGraph/J2DWindow.h | 4 + include/JSystem/J2DGraph/J2DWindowEx.h | 5 +- .../JSystem/J3DGraphAnimator/J3DAnimation.h | 181 +- include/JSystem/J3DGraphAnimator/J3DCluster.h | 16 + include/JSystem/J3DGraphAnimator/J3DJoint.h | 36 + .../JSystem/J3DGraphAnimator/J3DJointTree.h | 13 +- .../JSystem/J3DGraphAnimator/J3DMaterialAnm.h | 24 + .../J3DGraphAnimator/J3DMaterialAttach.h | 4 + include/JSystem/J3DGraphAnimator/J3DModel.h | 14 +- .../JSystem/J3DGraphAnimator/J3DModelData.h | 4 + .../JSystem/J3DGraphAnimator/J3DMtxBuffer.h | 5 +- .../JSystem/J3DGraphAnimator/J3DShapeTable.h | 5 +- .../JSystem/J3DGraphAnimator/J3DSkinDeform.h | 13 +- include/JSystem/J3DGraphBase/J3DDrawBuffer.h | 5 +- include/JSystem/J3DGraphBase/J3DGD.h | 1 - include/JSystem/J3DGraphBase/J3DMatBlock.h | 173 +- include/JSystem/J3DGraphBase/J3DMaterial.h | 273 +- include/JSystem/J3DGraphBase/J3DPacket.h | 21 +- include/JSystem/J3DGraphBase/J3DShape.h | 327 +- include/JSystem/J3DGraphBase/J3DShapeDraw.h | 4 + include/JSystem/J3DGraphBase/J3DShapeMtx.h | 32 + include/JSystem/J3DGraphBase/J3DStruct.h | 29 +- include/JSystem/J3DGraphBase/J3DSys.h | 9 +- include/JSystem/J3DGraphBase/J3DTevs.h | 36 + include/JSystem/J3DGraphBase/J3DTexture.h | 199 +- include/JSystem/J3DGraphBase/J3DTransform.h | 4 + include/JSystem/J3DGraphBase/J3DVertex.h | 13 +- include/JSystem/J3DGraphLoader/J3DAnmLoader.h | 5 +- .../JSystem/J3DGraphLoader/J3DClusterLoader.h | 17 +- .../JSystem/J3DGraphLoader/J3DJointFactory.h | 9 +- .../J3DGraphLoader/J3DMaterialFactory.h | 21 +- .../J3DGraphLoader/J3DMaterialFactory_v21.h | 221 +- .../JSystem/J3DGraphLoader/J3DModelLoader.h | 561 ++-- .../JSystem/J3DGraphLoader/J3DShapeFactory.h | 17 +- include/JSystem/J3DU/J3DUClipper.h | 5 +- include/JSystem/J3DU/J3DUD.h | 1 - include/JSystem/JAudio2/JAIAudible.h | 4 + include/JSystem/JAudio2/JAIAudience.h | 4 + include/JSystem/JAudio2/JAISe.h | 5 +- include/JSystem/JAudio2/JAISeMgr.h | 22 +- include/JSystem/JAudio2/JAISeq.h | 5 +- include/JSystem/JAudio2/JAISeqDataMgr.h | 17 +- include/JSystem/JAudio2/JAISeqMgr.h | 5 +- include/JSystem/JAudio2/JAISound.h | 34 + include/JSystem/JAudio2/JAISoundChild.h | 4 + include/JSystem/JAudio2/JAISoundHandles.h | 8 + include/JSystem/JAudio2/JAISoundInfo.h | 4 + include/JSystem/JAudio2/JAISoundParams.h | 16 + include/JSystem/JAudio2/JAISoundStarter.h | 4 + include/JSystem/JAudio2/JAIStream.h | 5 +- include/JSystem/JAudio2/JAIStreamDataMgr.h | 8 + include/JSystem/JAudio2/JAIStreamMgr.h | 6 +- include/JSystem/JAudio2/JASAramStream.h | 5 +- include/JSystem/JAudio2/JASAudioReseter.h | 4 + include/JSystem/JAudio2/JASAudioThread.h | 4 + include/JSystem/JAudio2/JASBank.h | 4 + include/JSystem/JAudio2/JASBankList.h | 4 + include/JSystem/JAudio2/JASBankTable.h | 8 + include/JSystem/JAudio2/JASBasicInst.h | 13 + include/JSystem/JAudio2/JASBasicWaveBank.h | 13 +- include/JSystem/JAudio2/JASCalc.h | 4 + include/JSystem/JAudio2/JASCallback.h | 4 + include/JSystem/JAudio2/JASChannel.h | 8 + include/JSystem/JAudio2/JASCmdStack.h | 9 +- include/JSystem/JAudio2/JASCriticalSection.h | 4 + include/JSystem/JAudio2/JASDSPChannel.h | 4 + include/JSystem/JAudio2/JASDrumSet.h | 4 + include/JSystem/JAudio2/JASDvdThread.h | 4 + include/JSystem/JAudio2/JASGadget.h | 12 + include/JSystem/JAudio2/JASHeapCtrl.h | 28 + include/JSystem/JAudio2/JASLfo.h | 4 + include/JSystem/JAudio2/JASMutex.h | 4 + include/JSystem/JAudio2/JASOscillator.h | 5 +- include/JSystem/JAudio2/JASProbe.h | 4 + include/JSystem/JAudio2/JASRegisterParam.h | 4 + include/JSystem/JAudio2/JASReport.h | 1 - include/JSystem/JAudio2/JASSeqCtrl.h | 4 + include/JSystem/JAudio2/JASSeqParser.h | 4 + include/JSystem/JAudio2/JASSeqReader.h | 4 + include/JSystem/JAudio2/JASSoundParams.h | 4 + include/JSystem/JAudio2/JASTaskThread.h | 4 + include/JSystem/JAudio2/JASTrack.h | 7 +- include/JSystem/JAudio2/JASTrackPort.h | 4 + include/JSystem/JAudio2/JASVoiceBank.h | 4 + include/JSystem/JAudio2/JASWSParser.h | 5 +- include/JSystem/JAudio2/JASWaveArcLoader.h | 14 +- include/JSystem/JAudio2/JASWaveInfo.h | 6 +- include/JSystem/JAudio2/JAUAudibleParam.h | 6 +- .../JSystem/JAudio2/JAUAudioArcInterpreter.h | 4 + include/JSystem/JAudio2/JAUAudioArcLoader.h | 4 + include/JSystem/JAudio2/JAUAudioMgr.h | 1 - include/JSystem/JAudio2/JAUBankTable.h | 19 +- include/JSystem/JAudio2/JAUClusterSound.h | 1 - include/JSystem/JAudio2/JAUInitializer.h | 8 + include/JSystem/JAudio2/JAUSectionHeap.h | 10 +- include/JSystem/JAudio2/JAUSeqCollection.h | 12 + include/JSystem/JAudio2/JAUSeqDataBlockMgr.h | 13 +- include/JSystem/JAudio2/JAUSoundAnimator.h | 13 +- include/JSystem/JAudio2/JAUSoundInfo.h | 5 +- include/JSystem/JAudio2/JAUSoundTable.h | 42 + include/JSystem/JAudio2/JAUStreamAramMgr.h | 11 +- include/JSystem/JAudio2/JAUStreamFileTable.h | 8 + include/JSystem/JFramework/JFWDisplay.h | 9 +- include/JSystem/JFramework/JFWSystem.h | 4 + include/JSystem/JGadget/std-vector.h | 1 - include/JSystem/JKernel/JKRAram.h | 5 + include/JSystem/JKernel/JKRAramArchive.h | 5 +- include/JSystem/JKernel/JKRAramBlock.h | 5 + include/JSystem/JKernel/JKRAramHeap.h | 4 + include/JSystem/JKernel/JKRAramPiece.h | 9 + include/JSystem/JKernel/JKRAramStream.h | 8 + include/JSystem/JKernel/JKRArchive.h | 12 + include/JSystem/JKernel/JKRAssertHeap.h | 4 + include/JSystem/JKernel/JKRCompArchive.h | 4 + include/JSystem/JKernel/JKRDecomp.h | 9 + include/JSystem/JKernel/JKRDisposer.h | 5 + include/JSystem/JKernel/JKRDvdAramRipper.h | 10 +- include/JSystem/JKernel/JKRDvdArchive.h | 5 + include/JSystem/JKernel/JKRDvdFile.h | 5 + include/JSystem/JKernel/JKRDvdRipper.h | 9 + include/JSystem/JKernel/JKRExpHeap.h | 4 + include/JSystem/JKernel/JKRFile.h | 4 + include/JSystem/JKernel/JKRFileCache.h | 5 + include/JSystem/JKernel/JKRFileFinder.h | 9 + include/JSystem/JKernel/JKRFileLoader.h | 6 +- include/JSystem/JKernel/JKRHeap.h | 4 + include/JSystem/JKernel/JKRMemArchive.h | 4 + include/JSystem/JKernel/JKRSolidHeap.h | 4 + include/JSystem/JKernel/JKRThread.h | 14 +- include/JSystem/JMath/JMATrigonometric.h | 16 + include/JSystem/JMath/random.h | 5 + include/JSystem/JMessage/control.h | 10 +- include/JSystem/JMessage/data.h | 5 + include/JSystem/JMessage/locale.h | 5 + include/JSystem/JMessage/processor.h | 16 + include/JSystem/JMessage/resource.h | 17 + include/JSystem/JParticle/JPABaseShape.h | 13 +- include/JSystem/JParticle/JPAChildShape.h | 8 + include/JSystem/JParticle/JPADrawInfo.h | 4 + include/JSystem/JParticle/JPADynamicsBlock.h | 8 + include/JSystem/JParticle/JPAEmitter.h | 23 +- include/JSystem/JParticle/JPAEmitterManager.h | 4 + include/JSystem/JParticle/JPAExTexShape.h | 8 + include/JSystem/JParticle/JPAExtraShape.h | 8 + include/JSystem/JParticle/JPAKeyBlock.h | 4 + include/JSystem/JParticle/JPAList.h | 9 +- include/JSystem/JParticle/JPAParticle.h | 9 +- include/JSystem/JParticle/JPARandom.h | 5 +- include/JSystem/JParticle/JPAResource.h | 4 + include/JSystem/JParticle/JPAResourceLoader.h | 1 - .../JSystem/JParticle/JPAResourceManager.h | 5 +- include/JSystem/JParticle/JPATexture.h | 9 +- include/JSystem/JStage/JSGActor.h | 5 + include/JSystem/JStage/JSGAmbientLight.h | 5 + include/JSystem/JStage/JSGCamera.h | 13 + include/JSystem/JStage/JSGFog.h | 6 +- include/JSystem/JStage/JSGLight.h | 5 +- include/JSystem/JStage/JSGObject.h | 5 + include/JSystem/JStage/JSGSystem.h | 4 + include/JSystem/JStudio/JStudio/ctb-data.h | 1 - .../JSystem/JStudio/JStudio/functionvalue.h | 1 - .../JSystem/JStudio/JStudio/jstudio-control.h | 1 - .../JSystem/JStudio/JStudio/jstudio-object.h | 1 - include/JSystem/JSupport/JSUFileStream.h | 4 + include/JSystem/JSupport/JSUInputStream.h | 8 + include/JSystem/JSupport/JSUIosBase.h | 4 + include/JSystem/JSupport/JSUList.h | 29 + include/JSystem/JSupport/JSUMemoryStream.h | 4 + .../JSystem/JSupport/JSURandomInputStream.h | 4 + include/JSystem/JSupport/JSupport.h | 8 + include/JSystem/JUtility/JUTAssert.h | 1 - include/JSystem/JUtility/JUTCacheFont.h | 5 +- include/JSystem/JUtility/JUTConsole.h | 9 +- include/JSystem/JUtility/JUTDbPrint.h | 8 + include/JSystem/JUtility/JUTDirectFile.h | 4 + include/JSystem/JUtility/JUTDirectPrint.h | 4 + include/JSystem/JUtility/JUTException.h | 13 +- include/JSystem/JUtility/JUTFader.h | 4 + include/JSystem/JUtility/JUTFont.h | 8 + include/JSystem/JUtility/JUTGamePad.h | 13 +- include/JSystem/JUtility/JUTGraphFifo.h | 4 + include/JSystem/JUtility/JUTNameTab.h | 8 + include/JSystem/JUtility/JUTPalette.h | 9 +- include/JSystem/JUtility/JUTProcBar.h | 4 + include/JSystem/JUtility/JUTResFont.h | 9 +- include/JSystem/JUtility/JUTResource.h | 4 + include/JSystem/JUtility/JUTTexture.h | 19 +- include/JSystem/JUtility/JUTVideo.h | 5 +- include/JSystem/JUtility/JUTXfb.h | 4 + include/JSystem/JUtility/TColor.h | 5 + include/SSystem/SComponent/c_bg_s_lin_chk.h | 1 - include/SSystem/SComponent/c_bg_s_shdw_draw.h | 1 - include/SSystem/SComponent/c_cc_d.h | 2 + include/SSystem/SComponent/c_cc_s.h | 1 - include/SSystem/SComponent/c_m2d.h | 1 - include/SSystem/SComponent/c_m3d.h | 1 - include/SSystem/SComponent/c_m3d_g_aab.h | 1 - include/SSystem/SComponent/c_m3d_g_cps.h | 1 - include/SSystem/SComponent/c_m3d_g_tri.h | 1 - .../MetroTRK/Portable/msghndlr.h | 1 - .../MetroTRK/Portable/mutex_TRK.h | 1 - .../MetroTRK/Portable/nubevent.h | 1 - .../MetroTRK/Portable/nubinit.h | 1 - .../MetroTRK/Portable/serpoll.h | 1 - .../MetroTRK/Portable/support.h | 1 - .../TRK_MINNOW_DOLPHIN/Os/dolphin/DDH_Stubs.h | 1 - .../Os/dolphin/GDEV_Stubs.h | 1 - .../TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h | 1 - include/Z2AudioLib/Z2Audience.h | 1 - include/Z2AudioLib/Z2AudioMgr.h | 1 - include/Z2AudioLib/Z2EnvSeMgr.h | 1 - include/Z2AudioLib/Z2SeMgr.h | 1 - include/Z2AudioLib/Z2SoundHandles.h | 1 - include/Z2AudioLib/Z2SoundInfo.h | 1 - include/Z2AudioLib/Z2SoundMgr.h | 1 - include/Z2AudioLib/Z2SoundObject.h | 1 - include/Z2AudioLib/Z2SoundStarter.h | 1 - include/Z2AudioLib/Z2SpeechMgr2.h | 1 - include/d/a/d_a_alink.h | 6 - include/d/a/d_a_item_static.h | 1 - include/d/a/d_a_itembase.h | 1 - include/d/a/d_a_npc.h | 1 - include/d/a/d_a_npc_cd.h | 1 - include/d/a/d_a_npc_cd2.h | 1 - include/d/a/d_a_obj_item.h | 1 - include/d/bg/d_bg_plc.h | 1 - include/d/bg/d_bg_s.h | 1 - include/d/bg/d_bg_s_acch.h | 1 - include/d/bg/d_bg_s_cap_poly.h | 2 - include/d/bg/d_bg_s_poly_pass_chk.h | 1 - include/d/bg/d_bg_s_roof_chk.h | 1 - include/d/bg/d_bg_s_sph_chk.h | 1 - include/d/bg/d_bg_s_spl_grp_chk.h | 1 - include/d/bg/d_bg_w.h | 1 - include/d/cc/d_cc_mass_s.h | 1 - include/d/cc/d_cc_s.h | 1 - include/d/com/d_com_inf_game.h | 1 - include/d/d_bomb.h | 1 - include/d/d_camera.h | 1 - include/d/d_demo.h | 2 - include/d/d_drawlist.h | 1 - include/d/d_ev_camera.h | 1 - include/d/d_jnt_col.h | 1 - include/d/d_k_wmark.h | 1 - include/d/d_name.h | 1 - include/d/d_npc_lib.h | 1 - include/d/d_stage.h | 1 - include/d/d_timer.h | 1 - include/d/event/d_event.h | 1 - include/d/file/d_file_sel_warning.h | 1 - include/d/file/d_file_select.h | 2 - include/d/kankyo/d_kankyo.h | 2 - include/d/map/d_map.h | 1 - include/d/map/d_map_path.h | 1 - include/d/menu/d_menu_dmap.h | 2 - include/d/menu/d_menu_fishing.h | 1 - include/d/menu/d_menu_insect.h | 1 - include/d/menu/d_menu_ring.h | 1 - include/d/meter/d_meter2_draw.h | 1 - include/d/meter/d_meter_HIO.h | 1 - include/d/msg/d_msg_scrn_howl.h | 1 - include/d/ovlp/d_ovlp_fade.h | 1 - include/d/particle/d_particle_copoly.h | 2 - include/d/shop/d_shop_camera.h | 1 - include/dolphin/amcstubs/AmcExi2Stubs.h | 1 - include/dolphin/db.h | 1 - include/dolphin/gd/GDGeometry.h | 1 - include/dolphin/gf/GFLight.h | 1 - include/dolphin/gx.h | 1 - include/dolphin/gx/GXFifo.h | 1 - include/dolphin/gx/GXFrameBuf.h | 1 - include/dolphin/gx/GXInit.h | 1 - include/dolphin/gx/GXLight.h | 1 - include/dolphin/gx/GXPerf.h | 1 - include/dolphin/gx/GXPixel.h | 1 - include/dolphin/gx/GXTev.h | 1 - include/dolphin/gx/GXTexture.h | 1 - include/dolphin/mtx.h | 1 - include/dolphin/os/OSLink.h | 1 - include/dolphin/os/OSResetSW.h | 1 - include/f_op/f_op_actor.h | 8 +- include/f_op/f_op_actor_mng.h | 49 +- include/f_op/f_op_camera_mng.h | 1 - include/f_op/f_op_kankyo_mng.h | 1 - include/f_op/f_op_overlap_mng.h | 1 - include/f_op/f_op_scene.h | 1 - include/f_pc/f_pc_searcher.h | 1 - include/m_Do/m_Do_ext.h | 1 - include/m_Do/m_Do_graphic.h | 1 - include/m_Do/m_Do_machine_exception.h | 1 - include/m_Do/m_Do_mtx.h | 1 - include/m_Do/m_Do_printf.h | 1 - include/rel/d/a/b/d_a_b_bh/d_a_b_bh.h | 2 - include/rel/d/a/b/d_a_b_bq/d_a_b_bq.h | 2 - include/rel/d/a/b/d_a_b_dr/d_a_b_dr.h | 9 +- include/rel/d/a/b/d_a_b_ds/d_a_b_ds.h | 11 +- include/rel/d/a/b/d_a_b_gg/d_a_b_gg.h | 2 - include/rel/d/a/b/d_a_b_gm/d_a_b_gm.h | 2 - include/rel/d/a/b/d_a_b_gnd/d_a_b_gnd.h | 10 +- include/rel/d/a/b/d_a_b_go/d_a_b_go.h | 9 +- include/rel/d/a/b/d_a_b_gos/d_a_b_gos.h | 8 +- include/rel/d/a/b/d_a_b_ob/d_a_b_ob.h | 7 + include/rel/d/a/b/d_a_b_oh/d_a_b_oh.h | 7 + include/rel/d/a/b/d_a_b_oh2/d_a_b_oh2.h | 7 + include/rel/d/a/b/d_a_b_zant/d_a_b_zant.h | 8 +- .../d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.h | 8 +- include/rel/d/a/d_a_andsw/d_a_andsw.h | 1 - include/rel/d/a/d_a_arrow/d_a_arrow.h | 2 - include/rel/d/a/d_a_bd/d_a_bd.h | 1 - include/rel/d/a/d_a_boomerang/d_a_boomerang.h | 10 +- include/rel/d/a/d_a_canoe/d_a_canoe.h | 1 - include/rel/d/a/d_a_cow/d_a_cow.h | 1 - include/rel/d/a/d_a_crod/d_a_crod.h | 7 + include/rel/d/a/d_a_cstaF/d_a_cstaF.h | 1 - include/rel/d/a/d_a_cstatue/d_a_cstatue.h | 3 - include/rel/d/a/d_a_do/d_a_do.h | 3 - include/rel/d/a/d_a_dshutter/d_a_dshutter.h | 1 - include/rel/d/a/d_a_ep/d_a_ep.h | 1 - .../d/a/d_a_formation_mng/d_a_formation_mng.h | 4 - include/rel/d/a/d_a_guard_mng/d_a_guard_mng.h | 1 - include/rel/d/a/d_a_hitobj/d_a_hitobj.h | 1 - include/rel/d/a/d_a_horse/d_a_horse.h | 1 - include/rel/d/a/d_a_hozelda/d_a_hozelda.h | 1 - .../rel/d/a/d_a_izumi_gate/d_a_izumi_gate.h | 1 - include/rel/d/a/d_a_kago/d_a_kago.h | 1 - include/rel/d/a/d_a_mg_fshop/d_a_mg_fshop.h | 1 - include/rel/d/a/d_a_mg_rod/d_a_mg_rod.h | 7 +- include/rel/d/a/d_a_midna/d_a_midna.h | 3 - include/rel/d/a/d_a_myna/d_a_myna.h | 2 - include/rel/d/a/d_a_nbomb/d_a_nbomb.h | 1 - include/rel/d/a/d_a_ni/d_a_ni.h | 1 - include/rel/d/a/d_a_spinner/d_a_spinner.h | 8 +- .../d/a/d_a_startAndGoal/d_a_startAndGoal.h | 1 - include/rel/d/a/d_a_swTime/d_a_swTime.h | 1 - include/rel/d/a/d_a_swhit0/d_a_swhit0.h | 1 - include/rel/d/a/d_a_tbox/d_a_tbox.h | 1 - include/rel/d/a/d_a_vrbox2/d_a_vrbox2.h | 1 - include/rel/d/a/d_a_ykgr/d_a_ykgr.h | 5 - .../d/a/door/d_a_door_boss/d_a_door_boss.h | 5 + .../d_a_door_dbdoor00/d_a_door_dbdoor00.h | 1 - .../d/a/door/d_a_door_push/d_a_door_push.h | 1 - include/rel/d/a/e/d_a_e_ai/d_a_e_ai.h | 2 - include/rel/d/a/e/d_a_e_arrow/d_a_e_arrow.h | 6 +- include/rel/d/a/e/d_a_e_ba/d_a_e_ba.h | 2 - include/rel/d/a/e/d_a_e_bee/d_a_e_bee.h | 6 +- include/rel/d/a/e/d_a_e_bi/d_a_e_bi.h | 2 - .../rel/d/a/e/d_a_e_bi_leaf/d_a_e_bi_leaf.h | 5 + include/rel/d/a/e/d_a_e_bs/d_a_e_bs.h | 2 - include/rel/d/a/e/d_a_e_bu/d_a_e_bu.h | 2 - include/rel/d/a/e/d_a_e_cr/d_a_e_cr.h | 2 - include/rel/d/a/e/d_a_e_cr_egg/d_a_e_cr_egg.h | 2 - include/rel/d/a/e/d_a_e_db/d_a_e_db.h | 2 - .../rel/d/a/e/d_a_e_db_leaf/d_a_e_db_leaf.h | 6 +- include/rel/d/a/e/d_a_e_dd/d_a_e_dd.h | 2 - include/rel/d/a/e/d_a_e_df/d_a_e_df.h | 2 - include/rel/d/a/e/d_a_e_dn/d_a_e_dn.h | 2 - include/rel/d/a/e/d_a_e_fk/d_a_e_fk.h | 2 - include/rel/d/a/e/d_a_e_fm/d_a_e_fm.h | 2 - include/rel/d/a/e/d_a_e_fs/d_a_e_fs.h | 2 - include/rel/d/a/e/d_a_e_fz/d_a_e_fz.h | 177 +- include/rel/d/a/e/d_a_e_gb/d_a_e_gb.h | 2 - include/rel/d/a/e/d_a_e_ge/d_a_e_ge.h | 5 + include/rel/d/a/e/d_a_e_gob/d_a_e_gob.h | 2 - include/rel/d/a/e/d_a_e_hb/d_a_e_hb.h | 2 - .../rel/d/a/e/d_a_e_hb_leaf/d_a_e_hb_leaf.h | 5 + include/rel/d/a/e/d_a_e_hz/d_a_e_hz.h | 2 - include/rel/d/a/e/d_a_e_hzelda/d_a_e_hzelda.h | 2 - include/rel/d/a/e/d_a_e_is/d_a_e_is.h | 2 - include/rel/d/a/e/d_a_e_kg/d_a_e_kg.h | 2 - include/rel/d/a/e/d_a_e_kr/d_a_e_kr.h | 2 - include/rel/d/a/e/d_a_e_mb/d_a_e_mb.h | 2 - include/rel/d/a/e/d_a_e_md/d_a_e_md.h | 2 - include/rel/d/a/e/d_a_e_mf/d_a_e_mf.h | 2 - include/rel/d/a/e/d_a_e_mk/d_a_e_mk.h | 2 - include/rel/d/a/e/d_a_e_mk_bo/d_a_e_mk_bo.h | 2 - include/rel/d/a/e/d_a_e_mm/d_a_e_mm.h | 2 - include/rel/d/a/e/d_a_e_mm_mt/d_a_e_mm_mt.h | 2 - include/rel/d/a/e/d_a_e_ms/d_a_e_ms.h | 2 - include/rel/d/a/e/d_a_e_nest/d_a_e_nest.h | 8 +- include/rel/d/a/e/d_a_e_nz/d_a_e_nz.h | 2 - include/rel/d/a/e/d_a_e_oct_bg/d_a_e_oct_bg.h | 5 + include/rel/d/a/e/d_a_e_ph/d_a_e_ph.h | 6 +- include/rel/d/a/e/d_a_e_pm/d_a_e_pm.h | 7 +- include/rel/d/a/e/d_a_e_po/d_a_e_po.h | 2 - include/rel/d/a/e/d_a_e_rb/d_a_e_rb.h | 2 - include/rel/d/a/e/d_a_e_rd/d_a_e_rd.h | 2 - include/rel/d/a/e/d_a_e_rdb/d_a_e_rdb.h | 2 - include/rel/d/a/e/d_a_e_rdy/d_a_e_rdy.h | 2 - include/rel/d/a/e/d_a_e_s1/d_a_e_s1.h | 2 - include/rel/d/a/e/d_a_e_sb/d_a_e_sb.h | 2 - include/rel/d/a/e/d_a_e_sf/d_a_e_sf.h | 2 - include/rel/d/a/e/d_a_e_sg/d_a_e_sg.h | 2 - include/rel/d/a/e/d_a_e_sh/d_a_e_sh.h | 2 - include/rel/d/a/e/d_a_e_sm/d_a_e_sm.h | 2 - include/rel/d/a/e/d_a_e_sm2/d_a_e_sm2.h | 7 +- include/rel/d/a/e/d_a_e_st/d_a_e_st.h | 2 - .../rel/d/a/e/d_a_e_st_line/d_a_e_st_line.h | 6 +- include/rel/d/a/e/d_a_e_th/d_a_e_th.h | 2 - .../rel/d/a/e/d_a_e_th_ball/d_a_e_th_ball.h | 2 - include/rel/d/a/e/d_a_e_tk/d_a_e_tk.h | 2 - include/rel/d/a/e/d_a_e_tk2/d_a_e_tk2.h | 2 - .../rel/d/a/e/d_a_e_tk_ball/d_a_e_tk_ball.h | 2 - include/rel/d/a/e/d_a_e_wb/d_a_e_wb.h | 6 +- include/rel/d/a/e/d_a_e_yc/d_a_e_yc.h | 7 +- include/rel/d/a/e/d_a_e_yd/d_a_e_yd.h | 2 - .../rel/d/a/e/d_a_e_yd_leaf/d_a_e_yd_leaf.h | 5 + include/rel/d/a/e/d_a_e_yg/d_a_e_yg.h | 2 - include/rel/d/a/e/d_a_e_yh/d_a_e_yh.h | 2 - include/rel/d/a/e/d_a_e_yk/d_a_e_yk.h | 13 +- include/rel/d/a/e/d_a_e_ym/d_a_e_ym.h | 5 + include/rel/d/a/e/d_a_e_ym_tag/d_a_e_ym_tag.h | 5 + include/rel/d/a/e/d_a_e_yr/d_a_e_yr.h | 2 - .../rel/d/a/kytag/d_a_kytag00/d_a_kytag00.h | 5 + .../rel/d/a/kytag/d_a_kytag03/d_a_kytag03.h | 1 - .../rel/d/a/kytag/d_a_kytag04/d_a_kytag04.h | 1 - include/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.h | 5 + .../d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.h | 1 - include/rel/d/a/npc/d_a_npc_du/d_a_npc_du.h | 1 - .../d/a/npc/d_a_npc_fguard/d_a_npc_fguard.h | 1 - .../rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.h | 1 - include/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.h | 1 - include/rel/d/a/npc/d_a_npc_the/d_a_npc_the.h | 1 - include/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h | 1 - .../rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.h | 1 - .../a/npc/d_a_npc_wrestler/d_a_npc_wrestler.h | 1 - .../a/obj/d_a_obj_Y_taihou/d_a_obj_Y_taihou.h | 1 - include/rel/d/a/obj/d_a_obj_ari/d_a_obj_ari.h | 1 - .../a/obj/d_a_obj_automata/d_a_obj_automata.h | 1 - .../d/a/obj/d_a_obj_balloon/d_a_obj_balloon.h | 1 - .../rel/d/a/obj/d_a_obj_bbox/d_a_obj_bbox.h | 56 +- include/rel/d/a/obj/d_a_obj_bed/d_a_obj_bed.h | 2 - .../rel/d/a/obj/d_a_obj_bemos/d_a_obj_bemos.h | 1 - .../d/a/obj/d_a_obj_bhashi/d_a_obj_bhashi.h | 1 - .../d/a/obj/d_a_obj_bk_leaf/d_a_obj_bk_leaf.h | 2 - .../d/a/obj/d_a_obj_bkdoor/d_a_obj_bkdoor.h | 1 - .../a/obj/d_a_obj_bosswarp/d_a_obj_bosswarp.h | 1 - .../d/a/obj/d_a_obj_boumato/d_a_obj_boumato.h | 1 - .../a/obj/d_a_obj_brakeeff/d_a_obj_brakeeff.h | 1 - include/rel/d/a/obj/d_a_obj_brg/d_a_obj_brg.h | 1 - .../d/a/obj/d_a_obj_burnbox/d_a_obj_burnbox.h | 1 - .../rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.h | 38 +- .../d/a/obj/d_a_obj_catdoor/d_a_obj_catdoor.h | 2 - .../d/a/obj/d_a_obj_cblock/d_a_obj_cblock.h | 1 - .../d/a/obj/d_a_obj_cboard/d_a_obj_cboard.h | 1 - .../d_a_obj_chandelier/d_a_obj_chandelier.h | 1 - .../rel/d/a/obj/d_a_obj_chest/d_a_obj_chest.h | 1 - .../d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.h | 1 - .../rel/d/a/obj/d_a_obj_crope/d_a_obj_crope.h | 1 - .../d_a_obj_crvlh_down/d_a_obj_crvlh_down.h | 1 - .../rel/d/a/obj/d_a_obj_cwall/d_a_obj_cwall.h | 1 - include/rel/d/a/obj/d_a_obj_dan/d_a_obj_dan.h | 1 - .../d/a/obj/d_a_obj_digsnow/d_a_obj_digsnow.h | 1 - .../d_a_obj_dmelevator/d_a_obj_dmelevator.h | 1 - .../rel/d/a/obj/d_a_obj_drop/d_a_obj_drop.h | 1 - include/rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.h | 1 - .../d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.h | 1 - include/rel/d/a/obj/d_a_obj_fan/d_a_obj_fan.h | 2 - .../a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h | 2 - .../obj/d_a_obj_fireWood2/d_a_obj_fireWood2.h | 1 - .../d_a_obj_firepillar/d_a_obj_firepillar.h | 1 - .../d_a_obj_firepillar2/d_a_obj_firepillar2.h | 1 - .../rel/d/a/obj/d_a_obj_flag2/d_a_obj_flag2.h | 1 - .../rel/d/a/obj/d_a_obj_food/d_a_obj_food.h | 1 - .../d/a/obj/d_a_obj_gadget/d_a_obj_gadget.h | 1 - .../obj/d_a_obj_ganonwall/d_a_obj_ganonwall.h | 1 - .../d/a/obj/d_a_obj_geyser/d_a_obj_geyser.h | 1 - include/rel/d/a/obj/d_a_obj_gm/d_a_obj_gm.h | 1 - .../a/obj/d_a_obj_gomikabe/d_a_obj_gomikabe.h | 1 - .../d/a/obj/d_a_obj_graWall/d_a_obj_graWall.h | 1 - .../d_a_obj_grave_stone/d_a_obj_grave_stone.h | 2 - include/rel/d/a/obj/d_a_obj_hb/d_a_obj_hb.h | 1 - .../d/a/obj/d_a_obj_heavySw/d_a_obj_heavySw.h | 2 - .../d/a/obj/d_a_obj_hhashi/d_a_obj_hhashi.h | 1 - .../a/obj/d_a_obj_iceblock/d_a_obj_iceblock.h | 1 - .../d/a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.h | 1 - .../d/a/obj/d_a_obj_inobone/d_a_obj_inobone.h | 1 - .../d/a/obj/d_a_obj_itamato/d_a_obj_itamato.h | 1 - include/rel/d/a/obj/d_a_obj_ito/d_a_obj_ito.h | 1 - .../rel/d/a/obj/d_a_obj_kago/d_a_obj_kago.h | 1 - .../d/a/obj/d_a_obj_kaisou/d_a_obj_kaisou.h | 1 - .../a/obj/d_a_obj_kamakiri/d_a_obj_kamakiri.h | 1 - .../d/a/obj/d_a_obj_kantera/d_a_obj_kantera.h | 2 - .../d_a_obj_katatsumuri/d_a_obj_katatsumuri.h | 1 - .../a/obj/d_a_obj_kazeneko/d_a_obj_kazeneko.h | 1 - .../d/a/obj/d_a_obj_kbacket/d_a_obj_kbacket.h | 1 - .../rel/d/a/obj/d_a_obj_kbox/d_a_obj_kbox.h | 1 - .../rel/d/a/obj/d_a_obj_kjgjs/d_a_obj_kjgjs.h | 1 - .../d/a/obj/d_a_obj_kkanban/d_a_obj_kkanban.h | 1 - .../d/a/obj/d_a_obj_klift00/d_a_obj_klift00.h | 1 - .../a/obj/d_a_obj_knBullet/d_a_obj_knBullet.h | 1 - .../a/obj/d_a_obj_kuwagata/d_a_obj_kuwagata.h | 1 - .../a/obj/d_a_obj_kwheel00/d_a_obj_kwheel00.h | 1 - .../d/a/obj/d_a_obj_laundry/d_a_obj_laundry.h | 1 - .../d_a_obj_laundry_rope.h | 1 - .../d_a_obj_life_container.h | 1 - .../obj/d_a_obj_lv2Candle/d_a_obj_lv2Candle.h | 2 - .../obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle.h | 1 - .../d_a_obj_lv4CandleDemoTag.h | 1 - .../d/a/obj/d_a_obj_lv4Gate/d_a_obj_lv4Gate.h | 100 +- .../d_a_obj_lv4chandelier.h | 1 - .../d/a/obj/d_a_obj_lv4gear/d_a_obj_lv4gear.h | 1 - .../d_a_obj_lv5ychndlr/d_a_obj_lv5ychndlr.h | 1 - .../d_a_obj_lv5yiblltray.h | 1 - .../a/obj/d_a_obj_lv6bemos/d_a_obj_lv6bemos.h | 1 - .../obj/d_a_obj_lv6bemos2/d_a_obj_lv6bemos2.h | 1 - .../a/obj/d_a_obj_lv6egate/d_a_obj_lv6egate.h | 1 - .../obj/d_a_obj_lv7bridge/d_a_obj_lv7bridge.h | 1 - .../d_a_obj_magLiftRot/d_a_obj_magLiftRot.h | 1 - .../rel/d/a/obj/d_a_obj_maki/d_a_obj_maki.h | 1 - .../d_a_obj_master_sword.h | 1 - .../rel/d/a/obj/d_a_obj_mgate/d_a_obj_mgate.h | 1 - .../rel/d/a/obj/d_a_obj_mhole/d_a_obj_mhole.h | 1 - include/rel/d/a/obj/d_a_obj_mie/d_a_obj_mie.h | 1 - .../d/a/obj/d_a_obj_movebox/d_a_obj_movebox.h | 2 - .../obj/d_a_obj_nameplate/d_a_obj_nameplate.h | 1 - .../rel/d/a/obj/d_a_obj_ndoor/d_a_obj_ndoor.h | 1 - .../a/obj/d_a_obj_octhashi/d_a_obj_octhashi.h | 1 - .../d/a/obj/d_a_obj_oiltubo/d_a_obj_oiltubo.h | 1 - .../rel/d/a/obj/d_a_obj_onsen/d_a_obj_onsen.h | 1 - .../obj/d_a_obj_onsenFire/d_a_obj_onsenFire.h | 1 - .../d/a/obj/d_a_obj_pdtile/d_a_obj_pdtile.h | 1 - .../d/a/obj/d_a_obj_pillar/d_a_obj_pillar.h | 1 - .../rel/d/a/obj/d_a_obj_pleaf/d_a_obj_pleaf.h | 2 - .../rel/d/a/obj/d_a_obj_prop/d_a_obj_prop.h | 1 - .../d/a/obj/d_a_obj_pumpkin/d_a_obj_pumpkin.h | 1 - .../d/a/obj/d_a_obj_rcircle/d_a_obj_rcircle.h | 1 - .../obj/d_a_obj_riverrock/d_a_obj_riverrock.h | 1 - .../rel/d/a/obj/d_a_obj_rock/d_a_obj_rock.h | 1 - .../d_a_obj_rope_bridge/d_a_obj_rope_bridge.h | 1 - include/rel/d/a/obj/d_a_obj_rw/d_a_obj_rw.h | 1 - .../d/a/obj/d_a_obj_sekizoa/d_a_obj_sekizoa.h | 1 - .../d/a/obj/d_a_obj_shield/d_a_obj_shield.h | 1 - .../a/obj/d_a_obj_smallkey/d_a_obj_smallkey.h | 1 - .../rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.h | 1 - .../obj/d_a_obj_smw_stone/d_a_obj_smw_stone.h | 1 - .../obj/d_a_obj_snow_soup/d_a_obj_snow_soup.h | 1 - include/rel/d/a/obj/d_a_obj_so/d_a_obj_so.h | 1 - .../d/a/obj/d_a_obj_ss_item/d_a_obj_ss_item.h | 1 - .../rel/d/a/obj/d_a_obj_stone/d_a_obj_stone.h | 1 - .../obj/d_a_obj_stoneMark/d_a_obj_stoneMark.h | 52 +- .../a/obj/d_a_obj_stopper2/d_a_obj_stopper2.h | 1 - include/rel/d/a/obj/d_a_obj_sw/d_a_obj_sw.h | 1 - .../d/a/obj/d_a_obj_swBallA/d_a_obj_swBallA.h | 1 - .../d/a/obj/d_a_obj_swBallB/d_a_obj_swBallB.h | 1 - .../d/a/obj/d_a_obj_swLight/d_a_obj_swLight.h | 1 - .../d/a/obj/d_a_obj_swchain/d_a_obj_swchain.h | 1 - .../obj/d_a_obj_swspinner/d_a_obj_swspinner.h | 1 - .../d/a/obj/d_a_obj_tatigi/d_a_obj_tatigi.h | 1 - include/rel/d/a/obj/d_a_obj_ten/d_a_obj_ten.h | 1 - .../d/a/obj/d_a_obj_thashi/d_a_obj_thashi.h | 1 - .../d/a/obj/d_a_obj_thdoor/d_a_obj_thdoor.h | 1 - .../rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.h | 1 - .../d_a_obj_toaru_maki/d_a_obj_toaru_maki.h | 1 - .../rel/d/a/obj/d_a_obj_tombo/d_a_obj_tombo.h | 1 - .../d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h | 1 - .../a/obj/d_a_obj_tornado2/d_a_obj_tornado2.h | 1 - include/rel/d/a/obj/d_a_obj_tp/d_a_obj_tp.h | 1 - .../rel/d/a/obj/d_a_obj_udoor/d_a_obj_udoor.h | 1 - .../d/a/obj/d_a_obj_vground/d_a_obj_vground.h | 1 - .../d/a/obj/d_a_obj_volcbom/d_a_obj_volcbom.h | 1 - .../obj/d_a_obj_waterfall/d_a_obj_waterfall.h | 1 - .../d_a_obj_well_cover/d_a_obj_well_cover.h | 1 - .../rel/d/a/obj/d_a_obj_wflag/d_a_obj_wflag.h | 1 - .../d_a_obj_wind_stone/d_a_obj_wind_stone.h | 2 - .../d/a/obj/d_a_obj_window/d_a_obj_window.h | 1 - .../d_a_obj_wood_pendulum.h | 1 - .../d_a_obj_wood_statue/d_a_obj_wood_statue.h | 1 - .../d/a/obj/d_a_obj_yousei/d_a_obj_yousei.h | 1 - .../d/a/obj/d_a_obj_zcloth/d_a_obj_zcloth.h | 34 +- .../rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.h | 2 - .../a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara.h | 1 - .../d_a_obj_zrTuraraRock.h | 1 - .../d_a_obj_mirror_6pole.h | 1 - .../d_a_obj_mirror_sand/d_a_obj_mirror_sand.h | 1 - .../d_a_obj_mirror_screw.h | 2 - .../d/a/tag/d_a_tag_CstaSw/d_a_tag_CstaSw.h | 1 - .../d/a/tag/d_a_tag_Lv6Gate/d_a_tag_Lv6Gate.h | 1 - .../d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate.h | 1 - .../d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.h | 2 - .../rel/d/a/tag/d_a_tag_ajnot/d_a_tag_ajnot.h | 1 - .../rel/d/a/tag/d_a_tag_arena/d_a_tag_arena.h | 1 - .../d_a_tag_assistance/d_a_tag_assistance.h | 2 - .../d_a_tag_attack_item/d_a_tag_attack_item.h | 1 - .../tag/d_a_tag_attention/d_a_tag_attention.h | 1 - .../d_a_tag_bottle_item/d_a_tag_bottle_item.h | 1 - .../d_a_tag_chgrestart/d_a_tag_chgrestart.h | 1 - .../a/tag/d_a_tag_chkpoint/d_a_tag_chkpoint.h | 1 - include/rel/d/a/tag/d_a_tag_csw/d_a_tag_csw.h | 1 - include/rel/d/a/tag/d_a_tag_evt/d_a_tag_evt.h | 1 - include/rel/d/a/tag/d_a_tag_gra/d_a_tag_gra.h | 2 - .../rel/d/a/tag/d_a_tag_howl/d_a_tag_howl.h | 1 - .../tag/d_a_tag_kago_fall/d_a_tag_kago_fall.h | 1 - .../rel/d/a/tag/d_a_tag_kmsg/d_a_tag_kmsg.h | 1 - .../d/a/tag/d_a_tag_lantern/d_a_tag_lantern.h | 1 - .../tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.h | 1 - .../rel/d/a/tag/d_a_tag_mstop/d_a_tag_mstop.h | 5 + .../rel/d/a/tag/d_a_tag_myna2/d_a_tag_myna2.h | 1 - .../d_a_tag_myna_light/d_a_tag_myna_light.h | 1 - .../rel/d/a/tag/d_a_tag_pachi/d_a_tag_pachi.h | 1 - .../rel/d/a/tag/d_a_tag_push/d_a_tag_push.h | 1 - include/rel/d/a/tag/d_a_tag_qs/d_a_tag_qs.h | 1 - .../a/tag/d_a_tag_ret_room/d_a_tag_ret_room.h | 1 - .../d_a_tag_river_back/d_a_tag_river_back.h | 1 - .../a/tag/d_a_tag_rmbit_sw/d_a_tag_rmbit_sw.h | 1 - .../a/tag/d_a_tag_schedule/d_a_tag_schedule.h | 1 - .../tag/d_a_tag_shop_item/d_a_tag_shop_item.h | 1 - .../d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.h | 1 - .../d/a/tag/d_a_tag_spring/d_a_tag_spring.h | 1 - .../a/tag/d_a_tag_ss_drink/d_a_tag_ss_drink.h | 1 - .../d/a/tag/d_a_tag_stream/d_a_tag_stream.h | 1 - .../tag/d_a_tag_theB_hint/d_a_tag_theB_hint.h | 2 - .../J2DGraph/J2DAnmLoader_nonmatching.cpp | 2 - libs/JSystem/J2DGraph/J2DMaterial.cpp | 1 - libs/JSystem/J2DGraph/J2DMaterialFactory.cpp | 2 - libs/JSystem/J2DGraph/J2DPane.cpp | 1 - libs/JSystem/J2DGraph/J2DPicture.cpp | 3 - libs/JSystem/J2DGraph/J2DPictureEx.cpp | 2 - libs/JSystem/J2DGraph/J2DPrint.cpp | 1 - libs/JSystem/J2DGraph/J2DScreen.cpp | 2 - libs/JSystem/J2DGraph/J2DTevs.cpp | 1 - libs/JSystem/J2DGraph/J2DTextBox.cpp | 1 - libs/JSystem/J2DGraph/J2DWindowEx.cpp | 1 - .../JSystem/J3DGraphAnimator/J3DAnimation.cpp | 1 - libs/JSystem/J3DGraphAnimator/J3DCluster.cpp | 3 - .../J3DGraphAnimator/J3DMaterialAnm.cpp | 1 - .../J3DGraphAnimator/J3DMaterialAttach.cpp | 1 - libs/JSystem/J3DGraphAnimator/J3DModel.cpp | 1 - .../JSystem/J3DGraphAnimator/J3DMtxBuffer.cpp | 1 - .../J3DGraphAnimator/J3DShapeTable.cpp | 1 - libs/JSystem/J3DGraphBase/J3DGD.cpp | 1480 ++++----- libs/JSystem/J3DGraphBase/J3DMatBlock.cpp | 1 - libs/JSystem/J3DGraphBase/J3DMaterial.cpp | 2650 ++++++++-------- libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp | 1 - libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp | 1 - libs/JSystem/J3DGraphBase/J3DStruct.cpp | 148 +- libs/JSystem/J3DGraphBase/J3DSys.cpp | 804 ++--- libs/JSystem/J3DGraphBase/J3DTevs.cpp | 1131 ++++--- libs/JSystem/J3DGraphBase/J3DTexture.cpp | 1 - libs/JSystem/J3DGraphBase/J3DTransform.cpp | 1 - libs/JSystem/J3DGraphBase/J3DVertex.cpp | 1 - libs/JSystem/J3DGraphLoader/J3DAnmLoader.cpp | 1 - .../J3DGraphLoader/J3DClusterLoader.cpp | 4 - .../J3DGraphLoader/J3DJointFactory.cpp | 1 - .../J3DGraphLoader/J3DMaterialFactory.cpp | 1 - .../J3DGraphLoader/J3DMaterialFactory_v21.cpp | 823 +++-- .../JSystem/J3DGraphLoader/J3DModelLoader.cpp | 2 - .../J3DGraphLoader/J3DShapeFactory.cpp | 1 - libs/JSystem/J3DU/J3DUClipper.cpp | 1 - libs/JSystem/JAudio2/JAIAudible.cpp | 1 - libs/JSystem/JAudio2/JAIAudience.cpp | 1 - libs/JSystem/JAudio2/JAISe.cpp | 1 - libs/JSystem/JAudio2/JAISeq.cpp | 2 - libs/JSystem/JAudio2/JAISeqDataMgr.cpp | 1 - libs/JSystem/JAudio2/JAISeqMgr.cpp | 1 - libs/JSystem/JAudio2/JAISound.cpp | 1 - libs/JSystem/JAudio2/JAISoundChild.cpp | 1 - libs/JSystem/JAudio2/JAISoundParams.cpp | 1 - libs/JSystem/JAudio2/JAISoundStarter.cpp | 1 - libs/JSystem/JAudio2/JAIStream.cpp | 2 - libs/JSystem/JAudio2/JAIStreamDataMgr.cpp | 1 - libs/JSystem/JAudio2/JASAiCtrl.cpp | 3 - libs/JSystem/JAudio2/JASAramStream.cpp | 3 - libs/JSystem/JAudio2/JASAudioReseter.cpp | 1 - libs/JSystem/JAudio2/JASAudioThread.cpp | 2 - libs/JSystem/JAudio2/JASBank.cpp | 3 - libs/JSystem/JAudio2/JASBasicWaveBank.cpp | 1 - libs/JSystem/JAudio2/JASChannel.cpp | 1 - libs/JSystem/JAudio2/JASDSPInterface.cpp | 1 - libs/JSystem/JAudio2/JASDvdThread.cpp | 1 - libs/JSystem/JAudio2/JASHeapCtrl.cpp | 2 - libs/JSystem/JAudio2/JASSeqParser.cpp | 2 - libs/JSystem/JAudio2/JASTaskThread.cpp | 2 - libs/JSystem/JAudio2/JASTrack.cpp | 3 - libs/JSystem/JAudio2/JASWSParser.cpp | 3 - libs/JSystem/JAudio2/JASWaveArcLoader.cpp | 1 - libs/JSystem/JAudio2/JAUAudioArcLoader.cpp | 1 - libs/JSystem/JAudio2/JAUBankTable.cpp | 1 - libs/JSystem/JAudio2/JAUInitializer.cpp | 9 - libs/JSystem/JAudio2/JAUSectionHeap.cpp | 5 - libs/JSystem/JAudio2/JAUSeqDataBlockMgr.cpp | 1 - libs/JSystem/JAudio2/JAUSoundTable.cpp | 1 - libs/JSystem/JAudio2/JAUStreamFileTable.cpp | 1 - libs/JSystem/JAudio2/dsptask.cpp | 1 - libs/JSystem/JFramework/JFWDisplay.cpp | 1 - libs/JSystem/JFramework/JFWSystem.cpp | 1 - libs/JSystem/JGadget/binary.cpp | 1 - libs/JSystem/JGadget/linklist.cpp | 1 - libs/JSystem/JGadget/std-vector.cpp | 1 - libs/JSystem/JKernel/JKRAram.cpp | 1 - libs/JSystem/JKernel/JKRAramArchive.cpp | 2 - libs/JSystem/JKernel/JKRAramStream.cpp | 1 - libs/JSystem/JKernel/JKRCompArchive.cpp | 1 - libs/JSystem/JKernel/JKRDvdArchive.cpp | 1 - libs/JSystem/JKernel/JKRDvdRipper.cpp | 1 - libs/JSystem/JKernel/JKRHeap.cpp | 1 - libs/JSystem/JKernel/JKRMemArchive.cpp | 1 - libs/JSystem/JKernel/JKRSolidHeap.cpp | 1 - libs/JSystem/JMath/JMath.cpp | 1 - libs/JSystem/JMessage/locale.cpp | 1 - libs/JSystem/JMessage/processor.cpp | 1 - libs/JSystem/JMessage/resource.cpp | 1 - libs/JSystem/JParticle/JPAChildShape.cpp | 1 - libs/JSystem/JParticle/JPADynamicsBlock.cpp | 1 - libs/JSystem/JParticle/JPAEmitter.cpp | 1 - libs/JSystem/JParticle/JPAEmitterManager.cpp | 1 - libs/JSystem/JParticle/JPAExTexShape.cpp | 1 - libs/JSystem/JParticle/JPAExtraShape.cpp | 1 - libs/JSystem/JParticle/JPAParticle.cpp | 1 - libs/JSystem/JParticle/JPAResource.cpp | 1 - libs/JSystem/JParticle/JPAResourceManager.cpp | 1 - libs/JSystem/JParticle/JPATexture.cpp | 1 - libs/JSystem/JStudio/JStudio/ctb.cpp | 1 - .../JSystem/JStudio/JStudio/functionvalue.cpp | 1 - libs/JSystem/JStudio/JStudio/fvb.cpp | 1 - .../JStudio/JStudio/jstudio-control.cpp | 2 - libs/JSystem/JStudio/JStudio/jstudio-math.cpp | 2 - libs/JSystem/JStudio/JStudio/object-id.cpp | 1 - .../JStudio/JStudio/stb-data-parse.cpp | 1 - libs/JSystem/JStudio/JStudio/stb.cpp | 1 - .../JSystem/JStudio/JStudio_JStage/object.cpp | 1 - libs/JSystem/JUtility/JUTAssert.cpp | 1 - libs/JSystem/JUtility/JUTConsole.cpp | 1 - libs/JSystem/JUtility/JUTDirectPrint.cpp | 1 - libs/JSystem/JUtility/JUTException.cpp | 2 - .../MSL/MSL_C++/MSL_Common/Include/bitset.h | 1 - .../MSL/MSL_C/MSL_Common/Include/alloc.h | 1 - .../MSL/MSL_C/MSL_Common/Include/ansi_fp.h | 1 - .../MSL/MSL_C/MSL_Common/Include/cmath.h | 1 - .../MSL/MSL_C/MSL_Common/Include/scanf.h | 1 - .../MSL/MSL_C/MSL_Common/Include/stdlib.h | 1 - .../MSL/MSL_C/MSL_Common/Include/string.h | 1 - .../MSL/MSL_C/MSL_Common/Src/FILE_POS.c | 1 - .../MSL/MSL_C/MSL_Common/Src/alloc.c | 1 - .../MSL/MSL_C/MSL_Common/Src/ansi_files.c | 1 - .../MSL/MSL_C/MSL_Common/Src/char_io.c | 2 - .../MSL/MSL_C/MSL_Common/Src/direct_io.c | 2 - .../MSL/MSL_C/MSL_Common/Src/extras.c | 1 - .../MSL/MSL_C/MSL_Common/Src/file_io.c | 1 - .../MSL/MSL_C/MSL_Common/Src/printf.c | 2 - .../MSL/MSL_C/MSL_Common/Src/signal.c | 1 - libs/SSystem/SComponent/c_angle.cpp | 1 - libs/SSystem/SComponent/c_lib.cpp | 1 - libs/SSystem/SComponent/c_m3d.cpp | 4 - libs/SSystem/SComponent/c_malloc.cpp | 1 - libs/SSystem/SComponent/c_math.cpp | 1 - libs/SSystem/SComponent/c_tag_iter.cpp | 1 - libs/SSystem/SComponent/c_xyz.cpp | 1 - libs/SSystem/SStandard/s_basic.cpp | 1 - .../MetroTRK/Export/mslsupp.c | 1 - .../MetroTRK/Portable/dispatch.c | 2 - .../MetroTRK/Portable/main_TRK.c | 1 - .../MetroTRK/Portable/mainloop.c | 3 - .../MetroTRK/Portable/msgbuf.c | 1 - .../MetroTRK/Portable/msghndlr.c | 1 - .../MetroTRK/Portable/notify.c | 2 - .../MetroTRK/Portable/nubevent.c | 1 - .../MetroTRK/Portable/nubinit.c | 1 - .../MetroTRK/Portable/serpoll.c | 1 - .../MetroTRK/Portable/support.c | 1 - .../Os/dolphin/dolphin_trk.c | 1 - libs/TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.c | 1 - .../TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.c | 1 - libs/Z2AudioLib/Z2Audience.cpp | 4 - libs/Z2AudioLib/Z2AudioArcLoader.cpp | 3 - libs/Z2AudioLib/Z2AudioMgr.cpp | 6 - libs/Z2AudioLib/Z2Creature.cpp | 4 - libs/Z2AudioLib/Z2EnvSeMgr.cpp | 6 - libs/Z2AudioLib/Z2LinkMgr.cpp | 1 - libs/Z2AudioLib/Z2SceneMgr.cpp | 1 - libs/Z2AudioLib/Z2SeMgr.cpp | 5 - libs/Z2AudioLib/Z2SeqMgr.cpp | 2 - libs/Z2AudioLib/Z2SoundHandles.cpp | 2 - libs/Z2AudioLib/Z2SoundInfo.cpp | 5 - libs/Z2AudioLib/Z2SoundMgr.cpp | 4 - libs/Z2AudioLib/Z2SoundObject.cpp | 1 - libs/Z2AudioLib/Z2SoundStarter.cpp | 1 - libs/Z2AudioLib/Z2SpeechMgr2.cpp | 3 - libs/Z2AudioLib/Z2WolfHowlMgr.cpp | 1 - libs/dolphin/ar/ar.c | 1 - libs/dolphin/card/CARDBios.c | 1 - libs/dolphin/card/CARDCheck.c | 1 - libs/dolphin/card/CARDCreate.c | 1 - libs/dolphin/card/CARDDir.c | 1 - libs/dolphin/card/CARDFormat.c | 1 - libs/dolphin/card/CARDMount.c | 1 - libs/dolphin/card/CARDNet.c | 1 - libs/dolphin/card/CARDOpen.c | 1 - libs/dolphin/card/CARDRdwr.c | 1 - libs/dolphin/card/CARDRead.c | 1 - libs/dolphin/card/CARDStat.c | 1 - libs/dolphin/card/CARDUnlock.c | 1 - libs/dolphin/card/CARDWrite.c | 1 - libs/dolphin/db/db.c | 1 - libs/dolphin/dvd/dvdfs.c | 1 - libs/dolphin/dvd/dvdlow.c | 1 - libs/dolphin/dvd/dvdqueue.c | 1 - libs/dolphin/exi/EXIBios.c | 1 - libs/dolphin/gx/GXAttr.c | 1 - libs/dolphin/gx/GXFrameBuf.c | 1 - libs/dolphin/gx/GXInit.c | 1 - libs/dolphin/gx/GXMisc.c | 2 - libs/dolphin/gx/GXTexture.c | 1 - libs/dolphin/os/OS.c | 2 - libs/dolphin/os/OSAlarm.c | 1 - libs/dolphin/os/OSAudioSystem.c | 1 - libs/dolphin/os/OSCache.c | 1 - libs/dolphin/os/OSExec.c | 2 - libs/dolphin/os/OSInterrupt.c | 1 - libs/dolphin/os/OSMemory.c | 1 - libs/dolphin/os/OSMessage.c | 1 - libs/dolphin/os/OSReboot.c | 1 - libs/dolphin/os/OSReset.c | 1 - libs/dolphin/os/OSThread.c | 1 - libs/dolphin/os/OSTime.c | 1 - libs/dolphin/pad/Pad.c | 1 - libs/dolphin/si/SIBios.c | 1 - libs/dolphin/vi/vi.c | 1 - rel/d/a/b/d_a_b_bq/d_a_b_bq.cpp | 3 - rel/d/a/b/d_a_b_bq/d_a_b_bq_NONMATCHING.cpp | 8 - rel/d/a/b/d_a_b_ds/d_a_b_ds.cpp | 6 - rel/d/a/b/d_a_b_ds/d_a_b_ds_NONMATCHING.cpp | 7 - rel/d/a/b/d_a_b_go/d_a_b_go.cpp | 1 - rel/d/a/b/d_a_b_gos/d_a_b_gos.cpp | 1 - rel/d/a/b/d_a_b_ob/d_a_b_ob.cpp | 1 - rel/d/a/b/d_a_b_oh/d_a_b_oh.cpp | 3 - rel/d/a/b/d_a_b_oh/d_a_b_oh_NONMATCHING.cpp | 5 - rel/d/a/b/d_a_b_oh2/d_a_b_oh2.cpp | 2 - rel/d/a/d_a_alldie/d_a_alldie.cpp | 2 - rel/d/a/d_a_andsw/d_a_andsw.cpp | 1 - rel/d/a/d_a_andsw2/d_a_andsw2.cpp | 2 - rel/d/a/d_a_bg/d_a_bg.cpp | 2 - rel/d/a/d_a_bg_obj/d_a_bg_obj.cpp | 2 - rel/d/a/d_a_boomerang/d_a_boomerang.cpp | 3 - rel/d/a/d_a_crod/d_a_crod.cpp | 2 - rel/d/a/d_a_cstatue/d_a_cstatue.cpp | 1 - rel/d/a/d_a_disappear/d_a_disappear.cpp | 1 - rel/d/a/d_a_dmidna/d_a_dmidna.cpp | 2 - rel/d/a/d_a_do/d_a_do.cpp | 1 - rel/d/a/d_a_dshutter/d_a_dshutter.cpp | 2 - rel/d/a/d_a_econt/d_a_econt.cpp | 2 - .../a/d_a_formation_mng/d_a_formation_mng.cpp | 2 - rel/d/a/d_a_grass/d_a_grass.cpp | 3 - rel/d/a/d_a_guard_mng/d_a_guard_mng.cpp | 1 - rel/d/a/d_a_hitobj/d_a_hitobj.cpp | 2 - rel/d/a/d_a_horse/d_a_horse.cpp | 1 - rel/d/a/d_a_izumi_gate/d_a_izumi_gate.cpp | 1 - rel/d/a/d_a_mg_fshop/d_a_mg_fshop.cpp | 6 - rel/d/a/d_a_mg_rod/d_a_mg_rod.cpp | 1 - rel/d/a/d_a_mirror/d_a_mirror.cpp | 1322 ++++---- rel/d/a/d_a_movie_player/d_a_movie_player.cpp | 1 - rel/d/a/d_a_myna/d_a_myna.cpp | 5 - rel/d/a/d_a_ni/d_a_ni_NONMATCHING.cpp | 6 - rel/d/a/d_a_scene_exit/d_a_scene_exit.cpp | 1 - rel/d/a/d_a_scene_exit2/d_a_scene_exit2.cpp | 1 - rel/d/a/d_a_set_bgobj/d_a_set_bgobj.cpp | 2 - rel/d/a/d_a_skip_2D/d_a_skip_2D.cpp | 3 - rel/d/a/d_a_spinner/d_a_spinner.cpp | 2 - rel/d/a/d_a_startAndGoal/d_a_startAndGoal.cpp | 1 - rel/d/a/d_a_suspend/d_a_suspend.cpp | 1 - rel/d/a/d_a_swTime/d_a_swTime.cpp | 1 - rel/d/a/d_a_swc00/d_a_swc00.cpp | 1 - rel/d/a/d_a_talk/d_a_talk.cpp | 2 - rel/d/a/d_a_tbox/d_a_tbox_NONMATCHING.cpp | 7 - rel/d/a/d_a_tbox2/d_a_tbox2.cpp | 2 - rel/d/a/d_a_tboxSw/d_a_tboxSw.cpp | 1 - rel/d/a/d_a_title/d_a_title_nonmatching.cpp | 4 - rel/d/a/d_a_vrbox/d_a_vrbox.cpp | 2 - rel/d/a/d_a_vrbox2/d_a_vrbox2.cpp | 3 - rel/d/a/d_a_warp_bug/d_a_warp_bug.cpp | 3 - rel/d/a/d_a_ykgr/d_a_ykgr.cpp | 5 - rel/d/a/door/d_a_door_boss/d_a_door_boss.cpp | 4 +- .../d_a_door_dbdoor00/d_a_door_dbdoor00.cpp | 2 - rel/d/a/door/d_a_door_push/d_a_door_push.cpp | 4 - rel/d/a/e/d_a_e_bee/d_a_e_bee.cpp | 5 - rel/d/a/e/d_a_e_db_leaf/d_a_e_db_leaf.cpp | 1 - rel/d/a/e/d_a_e_fz/d_a_e_fz.cpp | 1575 +++++++--- rel/d/a/e/d_a_e_nest/d_a_e_nest.cpp | 3 - rel/d/a/e/d_a_e_ph/d_a_e_ph.cpp | 1 - rel/d/a/e/d_a_e_pm/d_a_e_pm.cpp | 1 - rel/d/a/e/d_a_e_sm2/d_a_e_sm2.cpp | 1 - rel/d/a/e/d_a_e_yc/d_a_e_yc.cpp | 1 - rel/d/a/e/d_a_e_yk/d_a_e_yk.cpp | 3 +- rel/d/a/e/d_a_e_ym/d_a_e_ym.cpp | 2 - rel/d/a/e/d_a_e_ym_tag/d_a_e_ym_tag.cpp | 2 - rel/d/a/kytag/d_a_kytag00/d_a_kytag00.cpp | 2 - rel/d/a/kytag/d_a_kytag02/d_a_kytag02.cpp | 2 - rel/d/a/kytag/d_a_kytag05/d_a_kytag05.cpp | 2 - rel/d/a/kytag/d_a_kytag06/d_a_kytag06.cpp | 1 - rel/d/a/kytag/d_a_kytag07/d_a_kytag07.cpp | 2 - rel/d/a/kytag/d_a_kytag08/d_a_kytag08.cpp | 1 - rel/d/a/kytag/d_a_kytag09/d_a_kytag09.cpp | 1 - rel/d/a/kytag/d_a_kytag10/d_a_kytag10.cpp | 2 - rel/d/a/kytag/d_a_kytag11/d_a_kytag11.cpp | 2 - rel/d/a/kytag/d_a_kytag14/d_a_kytag14.cpp | 2 - rel/d/a/kytag/d_a_kytag15/d_a_kytag15.cpp | 1 - rel/d/a/kytag/d_a_kytag16/d_a_kytag16.cpp | 1 - rel/d/a/kytag/d_a_kytag17/d_a_kytag17.cpp | 1 - rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.cpp | 3 - rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.cpp | 2 - rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.cpp | 6 - rel/d/a/npc/d_a_npc_the/d_a_npc_the.cpp | 3 - rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.cpp | 1 - rel/d/a/npc/d_a_npc_tr/d_a_npc_tr.cpp | 1 - .../a/obj/d_a_obj_barDesk/d_a_obj_barDesk.cpp | 3 - rel/d/a/obj/d_a_obj_bbox/d_a_obj_bbox.cpp | 331 +- rel/d/a/obj/d_a_obj_bed/d_a_obj_bed.cpp | 4 - .../a/obj/d_a_obj_bk_leaf/d_a_obj_bk_leaf.cpp | 2 - rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf.cpp | 1 - .../obj/d_a_obj_bosswarp/d_a_obj_bosswarp.cpp | 4 - rel/d/a/obj/d_a_obj_bsGate/d_a_obj_bsGate.cpp | 2 - rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.cpp | 3 - .../a/obj/d_a_obj_catdoor/d_a_obj_catdoor.cpp | 1 - rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.cpp | 1 - rel/d/a/obj/d_a_obj_cdoor/d_a_obj_cdoor.cpp | 2 - .../d_a_obj_chandelier/d_a_obj_chandelier.cpp | 1 - rel/d/a/obj/d_a_obj_cho/d_a_obj_cho.cpp | 3 - .../a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.cpp | 1 - rel/d/a/obj/d_a_obj_crope/d_a_obj_crope.cpp | 1 - .../a/obj/d_a_obj_crystal/d_a_obj_crystal.cpp | 1 - .../a/obj/d_a_obj_digholl/d_a_obj_digholl.cpp | 2 - .../obj/d_a_obj_digplace/d_a_obj_digplace.cpp | 1 - .../d_a_obj_dmelevator/d_a_obj_dmelevator.cpp | 3 - rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.cpp | 1 - .../d_a_obj_enemy_create.cpp | 2 - .../a/obj/d_a_obj_fallobj/d_a_obj_fallobj.cpp | 2 - .../obj/d_a_obj_fireWood/d_a_obj_fireWood.cpp | 2 - .../d_a_obj_fireWood2/d_a_obj_fireWood2.cpp | 3 - rel/d/a/obj/d_a_obj_fmobj/d_a_obj_fmobj.cpp | 2 - .../d_a_obj_ganonwall/d_a_obj_ganonwall.cpp | 2 - .../a/obj/d_a_obj_graWall/d_a_obj_graWall.cpp | 1 - .../d_a_obj_grave_stone.cpp | 3 - .../d_a_obj_hbombkoya/d_a_obj_hbombkoya.cpp | 2 - .../a/obj/d_a_obj_heavySw/d_a_obj_heavySw.cpp | 1 - .../obj/d_a_obj_hsTarget/d_a_obj_hsTarget.cpp | 1 - rel/d/a/obj/d_a_obj_ice_l/d_a_obj_ice_l.cpp | 3 - .../a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.cpp | 1 - rel/d/a/obj/d_a_obj_kabuto/d_a_obj_kabuto.cpp | 3 - .../a/obj/d_a_obj_kantera/d_a_obj_kantera.cpp | 5 - rel/d/a/obj/d_a_obj_kgate/d_a_obj_kgate.cpp | 3 - rel/d/a/obj/d_a_obj_ki/d_a_obj_ki.cpp | 2 - rel/d/a/obj/d_a_obj_kjgjs/d_a_obj_kjgjs.cpp | 1 - .../a/obj/d_a_obj_kkanban/d_a_obj_kkanban.cpp | 2 - rel/d/a/obj/d_a_obj_lbox/d_a_obj_lbox.cpp | 3 - .../d_a_obj_lv1Candle00.cpp | 2 - .../d_a_obj_lv1Candle01.cpp | 2 - .../d_a_obj_lv2Candle/d_a_obj_lv2Candle.cpp | 2 - .../d_a_obj_lv3saka00/d_a_obj_lv3saka00.cpp | 1 - .../d_a_obj_lv3waterEff.cpp | 1 - .../d_a_obj_lv4CandleDemoTag.cpp | 1 - .../a/obj/d_a_obj_lv4Gate/d_a_obj_lv4Gate.cpp | 477 ++- .../d_a_obj_lv4HsTarget.cpp | 1 - .../d_a_obj_lv4PoGate/d_a_obj_lv4PoGate.cpp | 1 - .../obj/d_a_obj_lv4floor/d_a_obj_lv4floor.cpp | 1 - .../a/obj/d_a_obj_lv4gear/d_a_obj_lv4gear.cpp | 2 - .../d_a_obj_magLiftRot/d_a_obj_magLiftRot.cpp | 4 - .../d_a_obj_master_sword.cpp | 2 - rel/d/a/obj/d_a_obj_mgate/d_a_obj_mgate.cpp | 1 - .../a/obj/d_a_obj_movebox/d_a_obj_movebox.cpp | 3 - rel/d/a/obj/d_a_obj_myogan/d_a_obj_myogan.cpp | 2 - rel/d/a/obj/d_a_obj_onsen/d_a_obj_onsen.cpp | 1 - .../d_a_obj_onsenFire/d_a_obj_onsenFire.cpp | 1 - rel/d/a/obj/d_a_obj_pleaf/d_a_obj_pleaf.cpp | 2 - rel/d/a/obj/d_a_obj_prop/d_a_obj_prop.cpp | 1 - .../a/obj/d_a_obj_rcircle/d_a_obj_rcircle.cpp | 1 - rel/d/a/obj/d_a_obj_rgate/d_a_obj_rgate.cpp | 3 - rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.cpp | 1 - .../d_a_obj_snowEffTag/d_a_obj_snowEffTag.cpp | 1 - .../d_a_obj_snow_soup/d_a_obj_snow_soup.cpp | 3 - .../a/obj/d_a_obj_ss_item/d_a_obj_ss_item.cpp | 3 - rel/d/a/obj/d_a_obj_stone/d_a_obj_stone.cpp | 2 - .../d_a_obj_stoneMark/d_a_obj_stoneMark.cpp | 2 - .../obj/d_a_obj_stopper2/d_a_obj_stopper2.cpp | 2 - rel/d/a/obj/d_a_obj_suisya/d_a_obj_suisya.cpp | 1 - .../a/obj/d_a_obj_swBallA/d_a_obj_swBallA.cpp | 3 - .../a/obj/d_a_obj_swBallB/d_a_obj_swBallB.cpp | 2 - .../d_a_obj_swpropeller.cpp | 1 - .../d_a_obj_swspinner/d_a_obj_swspinner.cpp | 2 - rel/d/a/obj/d_a_obj_tgake/d_a_obj_tgake.cpp | 1 - rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.cpp | 2 - .../d_a_obj_toaru_maki/d_a_obj_toaru_maki.cpp | 2 - .../a/obj/d_a_obj_tornado/d_a_obj_tornado.cpp | 2 - rel/d/a/obj/d_a_obj_usaku/d_a_obj_usaku.cpp | 1 - .../a/obj/d_a_obj_vground/d_a_obj_vground.cpp | 1 - .../obj/d_a_obj_volcball/d_a_obj_volcball.cpp | 2 - rel/d/a/obj/d_a_obj_wchain/d_a_obj_wchain.cpp | 5 - rel/d/a/obj/d_a_obj_web0/d_a_obj_web0.cpp | 2 - rel/d/a/obj/d_a_obj_web1/d_a_obj_web1.cpp | 2 - .../d_a_obj_well_cover/d_a_obj_well_cover.cpp | 2 - rel/d/a/obj/d_a_obj_wflag/d_a_obj_wflag.cpp | 1 - .../d_a_obj_wind_stone/d_a_obj_wind_stone.cpp | 3 - rel/d/a/obj/d_a_obj_window/d_a_obj_window.cpp | 1 - .../d_a_obj_wood_pendulum.cpp | 2 - rel/d/a/obj/d_a_obj_wsword/d_a_obj_wsword.cpp | 296 +- rel/d/a/obj/d_a_obj_ystone/d_a_obj_ystone.cpp | 2 - rel/d/a/obj/d_a_obj_zcloth/d_a_obj_zcloth.cpp | 226 +- rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.cpp | 2 - .../obj/d_a_obj_zrTurara/d_a_obj_zrTurara.cpp | 1306 ++++---- .../d_a_obj_zrTuraraRock.cpp | 473 ++- .../d_a_obj_zra_freeze/d_a_obj_zra_freeze.cpp | 2 - .../obj/d_a_obj_zra_rock/d_a_obj_zra_rock.cpp | 2 - .../d_a_obj_mirror_6pole.cpp | 2 - .../d_a_obj_mirror_chain.cpp | 2 - .../d_a_obj_mirror_sand.cpp | 2 - .../d_a_obj_mirror_screw.cpp | 3 - .../d_a_obj_mirror_table.cpp | 2 - rel/d/a/tag/d_a_tag_CstaSw/d_a_tag_CstaSw.cpp | 1 - .../a/tag/d_a_tag_Lv6Gate/d_a_tag_Lv6Gate.cpp | 3 - .../a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate.cpp | 1 - rel/d/a/tag/d_a_tag_TWgate/d_a_tag_TWgate.cpp | 1 - rel/d/a/tag/d_a_tag_ajnot/d_a_tag_ajnot.cpp | 1 - rel/d/a/tag/d_a_tag_arena/d_a_tag_arena.cpp | 1 - .../d_a_tag_assistance/d_a_tag_assistance.cpp | 1 - .../d_a_tag_attack_item.cpp | 2 - .../d_a_tag_attention/d_a_tag_attention.cpp | 1 - .../d_a_tag_bottle_item.cpp | 1 - .../d_a_tag_chgrestart/d_a_tag_chgrestart.cpp | 1 - .../tag/d_a_tag_chkpoint/d_a_tag_chkpoint.cpp | 1 - rel/d/a/tag/d_a_tag_escape/d_a_tag_escape.cpp | 1 - rel/d/a/tag/d_a_tag_evt/d_a_tag_evt.cpp | 2 - .../a/tag/d_a_tag_evtarea/d_a_tag_evtarea.cpp | 1 - rel/d/a/tag/d_a_tag_evtmsg/d_a_tag_evtmsg.cpp | 2 - rel/d/a/tag/d_a_tag_gra/d_a_tag_gra.cpp | 1 - rel/d/a/tag/d_a_tag_gstart/d_a_tag_gstart.cpp | 2 - rel/d/a/tag/d_a_tag_guard/d_a_tag_guard.cpp | 2 - rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit.cpp | 2 - rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.cpp | 2 - rel/d/a/tag/d_a_tag_howl/d_a_tag_howl.cpp | 1 - rel/d/a/tag/d_a_tag_hstop/d_a_tag_hstop.cpp | 2 - .../d_a_tag_instruction.cpp | 1 - .../a/tag/d_a_tag_lantern/d_a_tag_lantern.cpp | 1 - .../d_a_tag_lightball/d_a_tag_lightball.cpp | 1 - .../tag/d_a_tag_lv2prchk/d_a_tag_lv2prchk.cpp | 1 - .../a/tag/d_a_tag_lv5soup/d_a_tag_lv5soup.cpp | 1 - .../d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.cpp | 1 - rel/d/a/tag/d_a_tag_magne/d_a_tag_magne.cpp | 1 - rel/d/a/tag/d_a_tag_mhint/d_a_tag_mhint.cpp | 4 - rel/d/a/tag/d_a_tag_mist/d_a_tag_mist.cpp | 1 - rel/d/a/tag/d_a_tag_mmsg/d_a_tag_mmsg.cpp | 2 - rel/d/a/tag/d_a_tag_mstop/d_a_tag_mstop.cpp | 2 - rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait.cpp | 2 - rel/d/a/tag/d_a_tag_myna2/d_a_tag_myna2.cpp | 1 - .../d_a_tag_myna_light/d_a_tag_myna_light.cpp | 2 - rel/d/a/tag/d_a_tag_pachi/d_a_tag_pachi.cpp | 1 - rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire.cpp | 1 - rel/d/a/tag/d_a_tag_push/d_a_tag_push.cpp | 1 - .../tag/d_a_tag_ret_room/d_a_tag_ret_room.cpp | 1 - .../d_a_tag_river_back/d_a_tag_river_back.cpp | 1 - .../tag/d_a_tag_rmbit_sw/d_a_tag_rmbit_sw.cpp | 1 - .../tag/d_a_tag_schedule/d_a_tag_schedule.cpp | 1 - .../a/tag/d_a_tag_setBall/d_a_tag_setBall.cpp | 1 - .../d_a_tag_setrestart/d_a_tag_setrestart.cpp | 1 - .../d_a_tag_shop_camera.cpp | 1 - .../d_a_tag_shop_item/d_a_tag_shop_item.cpp | 1 - .../a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.cpp | 1 - .../a/tag/d_a_tag_spinner/d_a_tag_spinner.cpp | 1 - rel/d/a/tag/d_a_tag_spring/d_a_tag_spring.cpp | 1 - .../tag/d_a_tag_ss_drink/d_a_tag_ss_drink.cpp | 4 - rel/d/a/tag/d_a_tag_stream/d_a_tag_stream.cpp | 1 - rel/d/a/tag/d_a_tag_telop/d_a_tag_telop.cpp | 2 - .../d_a_tag_wara_howl/d_a_tag_wara_howl.cpp | 1 - .../a/tag/d_a_tag_watchge/d_a_tag_watchge.cpp | 1 - .../d_a_tag_waterfall/d_a_tag_waterfall.cpp | 2 - rel/d/a/tag/d_a_tag_wljump/d_a_tag_wljump.cpp | 2 - rel/executor.cpp | 1 - src/DynamicLink.cpp | 2 - src/c/c_damagereaction.cpp | 1 - src/c/c_dylink.cpp | 2 - src/d/a/d_a_alink.cpp | 9 - src/d/a/d_a_item_static.cpp | 1 - src/d/a/d_a_itembase.cpp | 1 - src/d/a/d_a_no_chg_room.cpp | 4 - src/d/a/d_a_npc.cpp | 4 - src/d/a/d_a_npc_cd.cpp | 1 - src/d/a/d_a_npc_cd2.cpp | 1 - src/d/a/d_a_obj.cpp | 1 - src/d/a/d_a_obj_item.cpp | 1 - src/d/a/d_a_player.cpp | 1 - src/d/bg/d_bg_plc.cpp | 1 - src/d/bg/d_bg_s.cpp | 1 - src/d/bg/d_bg_s_acch.cpp | 1 - src/d/bg/d_bg_s_movebg_actor.cpp | 1 - src/d/bg/d_bg_w.cpp | 1 - src/d/bg/d_bg_w_kcol.cpp | 1 - src/d/cc/d_cc_d_nonmatching.cpp | 1 - src/d/cc/d_cc_s.cpp | 1 - src/d/cc/d_cc_uty.cpp | 1 - src/d/com/d_com_inf_game.cpp | 4 - src/d/d_att_dist.cpp | 1 - src/d/d_attention.cpp | 3 - src/d/d_bomb.cpp | 1 - src/d/d_bright_check.cpp | 2 - src/d/d_camera.cpp | 2 - src/d/d_demo.cpp | 3 - src/d/d_drawlist.cpp | 4 - src/d/d_envse.cpp | 1 - src/d/d_error_msg.cpp | 1 - src/d/d_ev_camera.cpp | 4 - src/d/d_eye_hl.cpp | 2 - src/d/d_gameover.cpp | 2 - src/d/d_insect.cpp | 2 - src/d/d_jnt_col.cpp | 1 - src/d/d_k_wmark.cpp | 2 - src/d/d_k_wpillar.cpp | 4 - src/d/d_kantera_icon_meter.cpp | 1 - src/d/d_ky_thunder.cpp | 3 - src/d/d_kyeff.cpp | 1 - src/d/d_kyeff2.cpp | 1 - src/d/d_lib.cpp | 2 - src/d/d_model.cpp | 1 - src/d/d_name.cpp | 3 - src/d/d_npc_lib.cpp | 1 - src/d/d_resorce.cpp | 6 - src/d/d_scope.cpp | 1 - src/d/d_select_cursor.cpp | 1 - src/d/d_simple_model.cpp | 1 - src/d/d_stage.cpp | 2 - src/d/d_timer.cpp | 2 - src/d/event/d_event.cpp | 3 - src/d/event/d_event_data.cpp | 2 - src/d/event/d_event_lib.cpp | 1 - src/d/event/d_event_manager.cpp | 2 - src/d/file/d_file_sel_warning.cpp | 1 - src/d/file/d_file_sel_warning_NONMATCHING.cpp | 4 - src/d/file/d_file_select.cpp | 7 - src/d/kankyo/d_kankyo.cpp | 5 - src/d/kankyo/d_kankyo_data.cpp | 1 - src/d/kankyo/d_kankyo_rain.cpp | 3 - src/d/kankyo/d_kankyo_wether.cpp | 2 - src/d/map/d_map_path_dmap.cpp | 1 - src/d/menu/d_menu_collect.cpp | 9 - src/d/menu/d_menu_dmap.cpp | 13 - src/d/menu/d_menu_fishing.cpp | 1 - src/d/menu/d_menu_fmap.cpp | 1 - src/d/menu/d_menu_item_explain.cpp | 5 - src/d/menu/d_menu_letter.cpp | 5 - src/d/menu/d_menu_map_common.cpp | 1 - src/d/menu/d_menu_option.cpp | 6 - src/d/menu/d_menu_ring.cpp | 3 - src/d/menu/d_menu_window.cpp | 2 - src/d/meter/d_meter2.cpp | 1 - src/d/meter/d_meter2_info.cpp | 2 - src/d/meter/d_meter_HIO.cpp | 1 - src/d/meter/d_meter_button.cpp | 2 - src/d/meter/d_meter_haihai.cpp | 2 - src/d/meter/d_meter_string.cpp | 1 - src/d/msg/d_msg_class.cpp | 2 - src/d/msg/d_msg_flow.cpp | 2 - src/d/msg/d_msg_object.cpp | 1 - src/d/msg/d_msg_out_font.cpp | 1 - src/d/msg/d_msg_scrn_howl.cpp | 7 - src/d/msg/d_msg_scrn_kanban.cpp | 4 - src/d/msg/d_msg_string.cpp | 1 - src/d/msg/d_msg_string_base.cpp | 2 - src/d/msg/d_msg_unit.cpp | 1 - src/d/ovlp/d_ovlp_fade.cpp | 2 - src/d/ovlp/d_ovlp_fade2.cpp | 2 - src/d/ovlp/d_ovlp_fade3.cpp | 2 - src/d/pane/d_pane_class_ex.cpp | 1 - src/d/particle/d_particle.cpp | 2 - src/d/particle/d_particle_copoly.cpp | 2 - src/d/s/d_s_logo.cpp | 2 - src/d/s/d_s_menu.cpp | 1 - src/d/s/d_s_name.cpp | 2 - src/d/s/d_s_play.cpp | 4 - src/d/s/d_s_room.cpp | 2 - src/d/s/d_s_title.cpp | 1 - src/d/save/d_save.cpp | 2 - src/d/shop/d_shop_camera.cpp | 1 - src/d/shop/d_shop_item_ctrl.cpp | 1 - src/d/shop/d_shop_system.cpp | 2 - src/f_op/f_op_actor.cpp | 1 - src/f_op/f_op_camera.cpp | 1 - src/f_op/f_op_kankyo.cpp | 1 - src/f_op/f_op_kankyo_mng.cpp | 1 - src/f_op/f_op_msg_mng.cpp | 2 - src/f_op/f_op_overlap_req.cpp | 1 - src/f_op/f_op_scene_mng.cpp | 1 - src/f_pc/f_pc_create_req.cpp | 1 - src/f_pc/f_pc_manager.cpp | 3 - src/f_pc/f_pc_node_req.cpp | 1 - src/init.c | 1 - src/m_Do/m_Do_DVDError.cpp | 4 - src/m_Do/m_Do_MemCard.cpp | 3 - src/m_Do/m_Do_Reset.cpp | 2 - src/m_Do/m_Do_audio.cpp | 1 - src/m_Do/m_Do_dvd_thread.cpp | 3 - src/m_Do/m_Do_ext.cpp | 3 - src/m_Do/m_Do_graphic.cpp | 3 - src/m_Do/m_Do_lib.cpp | 263 +- src/m_Do/m_Do_machine.cpp | 7 - src/m_Do/m_Do_machine_exception.cpp | 1 - src/m_Do/m_Do_main.cpp | 3 - src/m_Do/m_Do_mtx.cpp | 1 - src/m_Do/m_Do_printf.cpp | 2 - tools/setup_profile.py | 1007 +++++++ tools/setup_shape_data.py | 94 +- 1245 files changed, 16183 insertions(+), 9396 deletions(-) delete mode 100644 asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/CreateHeap__8daE_FZ_cFv.s delete mode 100644 asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/_delete__8daE_FZ_cFv.s delete mode 100644 asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Create__FP8daE_FZ_c.s delete mode 100644 asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Delete__FP8daE_FZ_c.s delete mode 100644 asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Draw__FP8daE_FZ_c.s delete mode 100644 asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Execute__FP8daE_FZ_c.s delete mode 100644 asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/demoDelete__8daE_FZ_cFv.s delete mode 100644 asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/mBoundSoundset__8daE_FZ_cFv.s delete mode 100644 asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/mtx_set__8daE_FZ_cFv.s delete mode 100644 asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/setActionMode__8daE_FZ_cFii.s delete mode 100644 asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/setReflectAngle__8daE_FZ_cFv.s delete mode 100644 asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/useHeapInit__FP10fopAc_ac_c.s create mode 100644 docs/doxygen-awesome-css-2.3.2/doxygen-awesome-darkmode-toggle.js create mode 100644 docs/doxygen-awesome-css-2.3.2/doxygen-awesome-fragment-copy-button.js create mode 100644 docs/doxygen-awesome-css-2.3.2/doxygen-awesome-interactive-toc.js create mode 100644 docs/doxygen-awesome-css-2.3.2/doxygen-awesome-paragraph-link.js create mode 100644 docs/doxygen-awesome-css-2.3.2/doxygen-awesome-sidebar-only-darkmode-toggle.css create mode 100644 docs/doxygen-awesome-css-2.3.2/doxygen-awesome-sidebar-only.css create mode 100644 docs/doxygen-awesome-css-2.3.2/doxygen-awesome-tabs.js create mode 100644 docs/doxygen-awesome-css-2.3.2/doxygen-awesome.css create mode 100644 docs/doxygen-awesome-css-2.3.2/doxygen-custom/custom-alternative.css create mode 100644 docs/doxygen-awesome-css-2.3.2/doxygen-custom/custom.css create mode 100644 docs/doxygen-awesome-css-2.3.2/doxygen-custom/header.html create mode 100644 docs/doxygen-awesome-css-2.3.2/doxygen-custom/toggle-alternative-theme.js create mode 100644 docs/doxygen-awesome-css-2.3.2/img/theme-variants-base.drawio.svg create mode 100644 docs/doxygen-awesome-css-2.3.2/img/theme-variants-sidebar-only.drawio.svg create mode 100644 docs/doxygen-awesome-css-2.3.2/overrides.css create mode 100644 docs/mainpage.h create mode 100644 docs/midna.png create mode 100644 tools/setup_profile.py diff --git a/.github/workflows/doxygen.yml b/.github/workflows/doxygen.yml index 9eaa69ef66..862d0a6b41 100644 --- a/.github/workflows/doxygen.yml +++ b/.github/workflows/doxygen.yml @@ -1,22 +1,19 @@ -name: run Doxygen to generate docs - +name: Generate Doxygen Static Site on: push: branches: - main - jobs: build: runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: generate docs uses: mattnotmitt/doxygen-action@v1 with: doxyfile-path: 'Doxyfile' - name: deploy docs to github pages - uses: peaceiris/actions-gh-pages@v3 + uses: peaceiris/actions-gh-pages@v4 with: github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./docs/doxygen + publish_dir: ./docs/doxygen/html diff --git a/Doxyfile b/Doxyfile index 761408c9a8..5c96c6b56f 100644 --- a/Doxyfile +++ b/Doxyfile @@ -1,4 +1,4 @@ -# Doxyfile 1.8.20 +# Doxyfile 1.10.0 # This file describes the settings to be used by the documentation system # doxygen (www.doxygen.org) for a project. @@ -12,6 +12,16 @@ # For lists, items can also be appended using: # TAG += value [value, ...] # Values that contain spaces should be placed between quotes (\" \"). +# +# Note: +# +# Use doxygen to compare the used configuration file with the template +# configuration file: +# doxygen -x [configFile] +# Use doxygen to compare the used configuration file with the template +# configuration file without replacing the environment variables or CMake type +# replacement variables: +# doxygen -x_noenv [configFile] #--------------------------------------------------------------------------- # Project related configuration options @@ -51,7 +61,13 @@ PROJECT_BRIEF = "Decompilation of The Legend of Zelda: Twilight Princes # pixels and the maximum width should not exceed 200 pixels. Doxygen will copy # the logo to the output directory. -PROJECT_LOGO = +PROJECT_LOGO = docs/midna.png + +# With the PROJECT_ICON tag one can specify an icon that is included in the tabs +# when the HTML document is shown. Doxygen will copy the logo to the output +# directory. + +PROJECT_ICON = # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path # into which the generated documentation will be written. If a relative path is @@ -60,16 +76,28 @@ PROJECT_LOGO = OUTPUT_DIRECTORY = docs/doxygen/ -# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub- -# directories (in 2 levels) under the output directory of each output format and -# will distribute the generated files over these directories. Enabling this +# If the CREATE_SUBDIRS tag is set to YES then doxygen will create up to 4096 +# sub-directories (in 2 levels) under the output directory of each output format +# and will distribute the generated files over these directories. Enabling this # option can be useful when feeding doxygen a huge amount of source files, where # putting all generated files in the same directory would otherwise causes -# performance problems for the file system. +# performance problems for the file system. Adapt CREATE_SUBDIRS_LEVEL to +# control the number of sub-directories. # The default value is: NO. CREATE_SUBDIRS = NO +# Controls the number of sub-directories that will be created when +# CREATE_SUBDIRS tag is set to YES. Level 0 represents 16 directories, and every +# level increment doubles the number of directories, resulting in 4096 +# directories at level 8 which is the default and also the maximum value. The +# sub-directories are organized in 2 levels, the first level always has a fixed +# number of 16 directories. +# Minimum value: 0, maximum value: 8, default value: 8. +# This tag requires that the tag CREATE_SUBDIRS is set to YES. + +CREATE_SUBDIRS_LEVEL = 8 + # If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII # characters to appear in the names of generated files. If set to NO, non-ASCII # characters will be escaped, for example _xE3_x81_x84 will be used for Unicode @@ -81,26 +109,18 @@ ALLOW_UNICODE_NAMES = NO # The OUTPUT_LANGUAGE tag is used to specify the language in which all # documentation generated by doxygen is written. Doxygen will use this # information to generate all constant output in the proper language. -# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, -# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), -# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, -# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), -# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, -# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, -# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, -# Ukrainian and Vietnamese. +# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Bulgarian, +# Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, English +# (United States), Esperanto, Farsi (Persian), Finnish, French, German, Greek, +# Hindi, Hungarian, Indonesian, Italian, Japanese, Japanese-en (Japanese with +# English messages), Korean, Korean-en (Korean with English messages), Latvian, +# Lithuanian, Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, +# Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, +# Swedish, Turkish, Ukrainian and Vietnamese. # The default value is: English. OUTPUT_LANGUAGE = English -# The OUTPUT_TEXT_DIRECTION tag is used to specify the direction in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all generated output in the proper direction. -# Possible values are: None, LTR, RTL and Context. -# The default value is: None. - -OUTPUT_TEXT_DIRECTION = None - # If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member # descriptions after the members that are listed in the file and class # documentation (similar to Javadoc). Set to NO to disable this. @@ -258,18 +278,21 @@ TAB_SIZE = 4 # the documentation. An alias has the form: # name=value # For example adding -# "sideeffect=@par Side Effects:\n" +# "sideeffect=@par Side Effects:^^" # will allow you to put the command \sideeffect (or @sideeffect) in the # documentation, which will result in a user-defined paragraph with heading -# "Side Effects:". You can put \n's in the value part of an alias to insert -# newlines (in the resulting output). You can put ^^ in the value part of an -# alias to insert a newline as if a physical newline was in the original file. -# When you need a literal { or } or , in the value part of an alias you have to -# escape them by means of a backslash (\), this can lead to conflicts with the -# commands \{ and \} for these it is advised to use the version @{ and @} or use -# a double escape (\\{ and \\}) +# "Side Effects:". Note that you cannot put \n's in the value part of an alias +# to insert newlines (in the resulting output). You can put ^^ in the value part +# of an alias to insert a newline as if a physical newline was in the original +# file. When you need a literal { or } or , in the value part of an alias you +# have to escape them by means of a backslash (\), this can lead to conflicts +# with the commands \{ and \} for these it is advised to use the version @{ and +# @} or use a double escape (\\{ and \\}) -ALIASES = "meme=\xrefitem memes \"Meme\" \"Meme List\"" +ALIASES = + +# Commenting out for now +# ALIASES = "meme=\xrefitem memes \"Meme\" \"Meme List\"" # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources # only. Doxygen will then generate output that is more tailored for C. For @@ -312,8 +335,8 @@ OPTIMIZE_OUTPUT_SLICE = NO # extension. Doxygen has a built-in mapping, but you can override or extend it # using this tag. The format is ext=language, where ext is a file extension, and # language is one of the parsers supported by doxygen: IDL, Java, JavaScript, -# Csharp (C#), C, C++, D, PHP, md (Markdown), Objective-C, Python, Slice, VHDL, -# Fortran (fixed format Fortran: FortranFixed, free formatted Fortran: +# Csharp (C#), C, C++, Lex, D, PHP, md (Markdown), Objective-C, Python, Slice, +# VHDL, Fortran (fixed format Fortran: FortranFixed, free formatted Fortran: # FortranFree, unknown formatted Fortran: Fortran. In the later case the parser # tries to guess whether the code is fixed or free formatted code, this is the # default for Fortran type files). For instance to make doxygen treat .inc files @@ -323,7 +346,10 @@ OPTIMIZE_OUTPUT_SLICE = NO # Note: For files without extension you can use no_extension as a placeholder. # # Note that for custom extensions you also need to set FILE_PATTERNS otherwise -# the files are not read by doxygen. +# the files are not read by doxygen. When specifying no_extension you should add +# * to the FILE_PATTERNS. +# +# Note see also the list of default file extension mappings. EXTENSION_MAPPING = @@ -346,6 +372,17 @@ MARKDOWN_SUPPORT = YES TOC_INCLUDE_HEADINGS = 5 +# The MARKDOWN_ID_STYLE tag can be used to specify the algorithm used to +# generate identifiers for the Markdown headings. Note: Every identifier is +# unique. +# Possible values are: DOXYGEN use a fixed 'autotoc_md' string followed by a +# sequence number starting at 0 and GITHUB use the lower case version of title +# with any whitespace replaced by '-' and punctuation characters removed. +# The default value is: DOXYGEN. +# This tag requires that the tag MARKDOWN_SUPPORT is set to YES. + +MARKDOWN_ID_STYLE = DOXYGEN + # When enabled doxygen tries to link words that correspond to documented # classes, or namespaces to their corresponding documentation. Such a link can # be prevented in individual cases by putting a % sign in front of the word or @@ -457,19 +494,27 @@ TYPEDEF_HIDES_STRUCT = NO LOOKUP_CACHE_SIZE = 0 -# The NUM_PROC_THREADS specifies the number threads doxygen is allowed to use +# The NUM_PROC_THREADS specifies the number of threads doxygen is allowed to use # during processing. When set to 0 doxygen will based this on the number of # cores available in the system. You can set it explicitly to a value larger # than 0 to get more control over the balance between CPU load and processing # speed. At this moment only the input processing can be done using multiple # threads. Since this is still an experimental feature the default is set to 1, -# which efficively disables parallel processing. Please report any issues you +# which effectively disables parallel processing. Please report any issues you # encounter. Generating dot graphs in parallel is controlled by the # DOT_NUM_THREADS setting. # Minimum value: 0, maximum value: 32, default value: 1. NUM_PROC_THREADS = 0 +# If the TIMESTAMP tag is set different from NO then each generated page will +# contain the date or date and time when the page was generated. Setting this to +# NO can help when comparing the output of multiple runs. +# Possible values are: YES, NO, DATETIME and DATE. +# The default value is: NO. + +TIMESTAMP = NO + #--------------------------------------------------------------------------- # Build related configuration options #--------------------------------------------------------------------------- @@ -533,6 +578,13 @@ EXTRACT_LOCAL_METHODS = NO EXTRACT_ANON_NSPACES = NO +# If this flag is set to YES, the name of an unnamed parameter in a declaration +# will be determined by the corresponding definition. By default unnamed +# parameters remain unnamed in the output. +# The default value is: YES. + +RESOLVE_UNNAMED_PARAMS = YES + # If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all # undocumented members inside documented classes or files. If set to NO these # members will be included in the various overviews, but no documentation @@ -544,7 +596,8 @@ HIDE_UNDOC_MEMBERS = NO # If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all # undocumented classes that are normally visible in the class hierarchy. If set # to NO, these classes will be included in the various overviews. This option -# has no effect if EXTRACT_ALL is enabled. +# will also hide undocumented C++ concepts if enabled. This option has no effect +# if EXTRACT_ALL is enabled. # The default value is: NO. HIDE_UNDOC_CLASSES = NO @@ -570,12 +623,20 @@ HIDE_IN_BODY_DOCS = NO INTERNAL_DOCS = NO -# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file -# names in lower-case letters. If set to YES, upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows -# (including Cygwin) and Mac users are advised to set this option to NO. -# The default value is: system dependent. +# With the correct setting of option CASE_SENSE_NAMES doxygen will better be +# able to match the capabilities of the underlying filesystem. In case the +# filesystem is case sensitive (i.e. it supports files in the same directory +# whose names only differ in casing), the option must be set to YES to properly +# deal with such files in case they appear in the input. For filesystems that +# are not case sensitive the option should be set to NO to properly deal with +# output files written for symbols that only differ in casing, such as for two +# classes, one named CLASS and the other named Class, and to also support +# references to files without having to specify the exact matching casing. On +# Windows (including Cygwin) and MacOS, users should typically set this option +# to NO, whereas on Linux or other Unix flavors it should typically be set to +# YES. +# Possible values are: SYSTEM, NO and YES. +# The default value is: SYSTEM. CASE_SENSE_NAMES = YES @@ -593,6 +654,12 @@ HIDE_SCOPE_NAMES = NO HIDE_COMPOUND_REFERENCE= NO +# If the SHOW_HEADERFILE tag is set to YES then the documentation for a class +# will show which file needs to be included to use the class. +# The default value is: YES. + +SHOW_HEADERFILE = YES + # If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of # the files that are included by a file in the documentation of that file. # The default value is: YES. @@ -650,7 +717,7 @@ SORT_MEMBERS_CTORS_1ST = NO # appear in their defined order. # The default value is: NO. -SORT_GROUP_NAMES = NO +SORT_GROUP_NAMES = YES # If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by # fully-qualified names, including namespaces. If set to NO, the class list will @@ -660,7 +727,7 @@ SORT_GROUP_NAMES = NO # list. # The default value is: NO. -SORT_BY_SCOPE_NAME = NO +SORT_BY_SCOPE_NAME = YES # If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper # type resolution of all parameters of a function it will reject a match between @@ -676,7 +743,7 @@ STRICT_PROTO_MATCHING = NO # list. This list is created by putting \todo commands in the documentation. # The default value is: YES. -GENERATE_TODOLIST = YES +GENERATE_TODOLIST = NO # The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test # list. This list is created by putting \test commands in the documentation. @@ -688,7 +755,7 @@ GENERATE_TESTLIST = YES # list. This list is created by putting \bug commands in the documentation. # The default value is: YES. -GENERATE_BUGLIST = YES +GENERATE_BUGLIST = NO # The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO) # the deprecated list. This list is created by putting \deprecated commands in @@ -750,13 +817,14 @@ FILE_VERSION_FILTER = # output files in an output format independent way. To create the layout file # that represents doxygen's defaults, run doxygen with the -l option. You can # optionally specify a file name after the option, if omitted DoxygenLayout.xml -# will be used as the name of the layout file. +# will be used as the name of the layout file. See also section "Changing the +# layout of pages" for information. # # Note that if you run doxygen from a directory containing a file called # DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE # tag is left empty. -LAYOUT_FILE = +LAYOUT_FILE = # The CITE_BIB_FILES tag can be used to specify one or more bib files containing # the reference definitions. This must be a list of .bib files. The .bib @@ -796,24 +864,50 @@ WARNINGS = YES WARN_IF_UNDOCUMENTED = YES # If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some parameters -# in a documented function, or documenting parameters that don't exist or using -# markup commands wrongly. +# potential errors in the documentation, such as documenting some parameters in +# a documented function twice, or documenting parameters that don't exist or +# using markup commands wrongly. # The default value is: YES. WARN_IF_DOC_ERROR = YES +# If WARN_IF_INCOMPLETE_DOC is set to YES, doxygen will warn about incomplete +# function parameter documentation. If set to NO, doxygen will accept that some +# parameters have no documentation without warning. +# The default value is: YES. + +WARN_IF_INCOMPLETE_DOC = YES + # This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that # are documented, but have no documentation for their parameters or return -# value. If set to NO, doxygen will only warn about wrong or incomplete -# parameter documentation, but not about the absence of documentation. If -# EXTRACT_ALL is set to YES then this flag will automatically be disabled. +# value. If set to NO, doxygen will only warn about wrong parameter +# documentation, but not about the absence of documentation. If EXTRACT_ALL is +# set to YES then this flag will automatically be disabled. See also +# WARN_IF_INCOMPLETE_DOC # The default value is: NO. WARN_NO_PARAMDOC = NO +# If WARN_IF_UNDOC_ENUM_VAL option is set to YES, doxygen will warn about +# undocumented enumeration values. If set to NO, doxygen will accept +# undocumented enumeration values. If EXTRACT_ALL is set to YES then this flag +# will automatically be disabled. +# The default value is: NO. + +WARN_IF_UNDOC_ENUM_VAL = NO + # If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when -# a warning is encountered. +# a warning is encountered. If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS +# then doxygen will continue running as if WARN_AS_ERROR tag is set to NO, but +# at the end of the doxygen process doxygen will return with a non-zero status. +# If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS_PRINT then doxygen behaves +# like FAIL_ON_WARNINGS but in case no WARN_LOGFILE is defined doxygen will not +# write the warning messages in between other messages but write them at the end +# of a run, in case a WARN_LOGFILE is defined the warning messages will be +# besides being in the defined file also be shown at the end of a run, unless +# the WARN_LOGFILE is defined as - i.e. standard output (stdout) in that case +# the behavior will remain as with the setting FAIL_ON_WARNINGS. +# Possible values are: NO, YES, FAIL_ON_WARNINGS and FAIL_ON_WARNINGS_PRINT. # The default value is: NO. WARN_AS_ERROR = NO @@ -824,13 +918,27 @@ WARN_AS_ERROR = NO # and the warning text. Optionally the format may contain $version, which will # be replaced by the version of the file (if it could be obtained via # FILE_VERSION_FILTER) +# See also: WARN_LINE_FORMAT # The default value is: $file:$line: $text. WARN_FORMAT = "$file:$line: $text" +# In the $text part of the WARN_FORMAT command it is possible that a reference +# to a more specific place is given. To make it easier to jump to this place +# (outside of doxygen) the user can define a custom "cut" / "paste" string. +# Example: +# WARN_LINE_FORMAT = "'vi $file +$line'" +# See also: WARN_FORMAT +# The default value is: at line $line of file $file. + +WARN_LINE_FORMAT = "at line $line of file $file" + # The WARN_LOGFILE tag can be used to specify a file to which warning and error # messages should be written. If left blank the output is written to standard -# error (stderr). +# error (stderr). In case the file specified cannot be opened for writing the +# warning and error messages are written to standard error. When as file - is +# specified the warning and error messages are written to standard output +# (stdout). WARN_LOGFILE = @@ -844,17 +952,33 @@ WARN_LOGFILE = # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING # Note: If this tag is empty the current directory is searched. -INPUT = README.md docs/ src/ libs/ include/ +INPUT = docs/mainpage.h \ + src/ \ + libs/ \ + include/ \ + rel/ \ + README.md # This tag can be used to specify the character encoding of the source files # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses # libiconv (or the iconv built into libc) for the transcoding. See the libiconv -# documentation (see: https://www.gnu.org/software/libiconv/) for the list of -# possible encodings. +# documentation (see: +# https://www.gnu.org/software/libiconv/) for the list of possible encodings. +# See also: INPUT_FILE_ENCODING # The default value is: UTF-8. INPUT_ENCODING = UTF-8 +# This tag can be used to specify the character encoding of the source files +# that doxygen parses The INPUT_FILE_ENCODING tag can be used to specify +# character encoding on a per file pattern basis. Doxygen will compare the file +# name with each pattern and apply the encoding instead of the default +# INPUT_ENCODING) if there is a match. The character encodings are a list of the +# form: pattern=encoding (like *.php=ISO-8859-1). See cfg_input_encoding +# "INPUT_ENCODING" for further information on supported encodings. + +INPUT_FILE_ENCODING = + # If the value of the INPUT tag contains directories, you can use the # FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and # *.h) to filter out the source-files in the directories. @@ -863,13 +987,15 @@ INPUT_ENCODING = UTF-8 # need to set EXTENSION_MAPPING for the extension otherwise the files are not # read by doxygen. # -# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp, -# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, -# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, -# *.m, *.markdown, *.md, *.mm, *.dox (to be provided as doxygen C comment), -# *.doc (to be provided as doxygen C comment), *.txt (to be provided as doxygen -# C comment), *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, *.f18, *.f, *.for, *.vhd, -# *.vhdl, *.ucf, *.qsf and *.ice. +# Note the list of default checked file patterns might differ from the list of +# default file extension mappings. +# +# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cxxm, +# *.cpp, *.cppm, *.ccm, *.c++, *.c++m, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, +# *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp, *.h++, *.ixx, *.l, *.cs, *.d, +# *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown, *.md, *.mm, *.dox (to +# be provided as doxygen C comment), *.py, *.pyw, *.f90, *.f95, *.f03, *.f08, +# *.f18, *.f, *.for, *.vhd, *.vhdl, *.ucf, *.qsf and *.ice. FILE_PATTERNS = *.c \ *.cc \ @@ -954,10 +1080,7 @@ EXCLUDE_PATTERNS = # (namespaces, classes, functions, etc.) that should be excluded from the # output. The symbol name can be a fully qualified name, a word, or if the # wildcard * is used, a substring. Examples: ANamespace, AClass, -# AClass::ANamespace, ANamespace::*Test -# -# Note that the wildcards are matched against the file with absolute path, so to -# exclude all test directories use the pattern */test/* +# ANamespace::AClass, ANamespace::*Test EXCLUDE_SYMBOLS = @@ -1002,6 +1125,11 @@ IMAGE_PATH = # code is scanned, but not when the output code is generated. If lines are added # or removed, the anchors will not be placed correctly. # +# Note that doxygen will use the data processed and written to standard output +# for further processing, therefore nothing else, like debug statements or used +# commands (so in case of a Windows batch file always use @echo OFF), should be +# written to standard output. +# # Note that for custom extensions or not directly supported extensions you also # need to set EXTENSION_MAPPING for the extension otherwise the files are not # properly processed by doxygen. @@ -1043,6 +1171,15 @@ FILTER_SOURCE_PATTERNS = USE_MDFILE_AS_MAINPAGE = README.md +# The Fortran standard specifies that for fixed formatted Fortran code all +# characters from position 72 are to be considered as comment. A common +# extension is to allow longer lines before the automatic comment starts. The +# setting FORTRAN_COMMENT_AFTER will also make it possible that longer lines can +# be processed before the automatic comment starts. +# Minimum value: 7, maximum value: 10000, default value: 72. + +FORTRAN_COMMENT_AFTER = 72 + #--------------------------------------------------------------------------- # Configuration options related to source browsing #--------------------------------------------------------------------------- @@ -1057,7 +1194,8 @@ USE_MDFILE_AS_MAINPAGE = README.md SOURCE_BROWSER = NO # Setting the INLINE_SOURCES tag to YES will include the body of functions, -# classes and enums directly into the documentation. +# multi-line macros, enums or list initialized variables directly into the +# documentation. # The default value is: NO. INLINE_SOURCES = NO @@ -1129,6 +1267,46 @@ USE_HTAGS = NO VERBATIM_HEADERS = YES +# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the +# clang parser (see: +# http://clang.llvm.org/) for more accurate parsing at the cost of reduced +# performance. This can be particularly helpful with template rich C++ code for +# which doxygen's built-in parser lacks the necessary type information. +# Note: The availability of this option depends on whether or not doxygen was +# generated with the -Duse_libclang=ON option for CMake. +# The default value is: NO. + +CLANG_ASSISTED_PARSING = NO + +# If the CLANG_ASSISTED_PARSING tag is set to YES and the CLANG_ADD_INC_PATHS +# tag is set to YES then doxygen will add the directory of each input to the +# include path. +# The default value is: YES. +# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES. + +CLANG_ADD_INC_PATHS = YES + +# If clang assisted parsing is enabled you can provide the compiler with command +# line options that you would normally use when invoking the compiler. Note that +# the include paths will already be set by doxygen for the files and directories +# specified with INPUT and INCLUDE_PATH. +# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES. + +CLANG_OPTIONS = + +# If clang assisted parsing is enabled you can provide the clang parser with the +# path to the directory containing a file called compile_commands.json. This +# file is the compilation database (see: +# http://clang.llvm.org/docs/HowToSetupToolingForLLVM.html) containing the +# options used when the source files were built. This is equivalent to +# specifying the -p option to a clang tool, such as clang-check. These options +# will then be passed to the parser. Any options specified with CLANG_OPTIONS +# will be added as well. +# Note: The availability of this option depends on whether or not doxygen was +# generated with the -Duse_libclang=ON option for CMake. + +CLANG_DATABASE_PATH = + #--------------------------------------------------------------------------- # Configuration options related to the alphabetical class index #--------------------------------------------------------------------------- @@ -1140,17 +1318,11 @@ VERBATIM_HEADERS = YES ALPHABETICAL_INDEX = YES -# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in -# which the alphabetical index list will be split. -# Minimum value: 1, maximum value: 20, default value: 5. -# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - -COLS_IN_ALPHA_INDEX = 5 - -# In case all classes in a project start with a common prefix, all classes will -# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag -# can be used to specify a prefix (or a list of prefixes) that should be ignored -# while generating the index headers. +# The IGNORE_PREFIX tag can be used to specify a prefix (or a list of prefixes) +# that should be ignored while generating the index headers. The IGNORE_PREFIX +# tag works for classes, function and member names. The entity will be placed in +# the alphabetical list under the first letter of the entity name that remains +# after removing the prefix. # This tag requires that the tag ALPHABETICAL_INDEX is set to YES. IGNORE_PREFIX = @@ -1197,7 +1369,7 @@ HTML_FILE_EXTENSION = .html # of the possible markers and block names see the documentation. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_HEADER = +HTML_HEADER = docs/doxygen-awesome-css-2.3.2/doxygen-custom/header.html # The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each # generated HTML page. If the tag is left blank doxygen will generate a standard @@ -1229,10 +1401,18 @@ HTML_STYLESHEET = # Doxygen will copy the style sheet files to the output directory. # Note: The order of the extra style sheet files is of importance (e.g. the last # style sheet in the list overrules the setting of the previous ones in the -# list). For an example see the documentation. +# list). +# Note: Since the styling of scrollbars can currently not be overruled in +# Webkit/Chromium, the styling will be left out of the default doxygen.css if +# one or more extra stylesheets have been specified. So if scrollbar +# customization is desired it has to be added explicitly. For an example see the +# documentation. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_EXTRA_STYLESHEET = +HTML_EXTRA_STYLESHEET = docs/doxygen-awesome-css-2.3.2/doxygen-awesome.css \ + docs/doxygen-awesome-css-2.3.2/doxygen-awesome-sidebar-only.css \ + docs/doxygen-awesome-css-2.3.2/doxygen-awesome-sidebar-only-darkmode-toggle.css \ + docs/doxygen-awesome-css-2.3.2/overrides.css # The HTML_EXTRA_FILES tag can be used to specify one or more extra images or # other source files which should be copied to the HTML output directory. Note @@ -1242,11 +1422,25 @@ HTML_EXTRA_STYLESHEET = # files will be copied as-is; there are no commands or markers available. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_EXTRA_FILES = +HTML_EXTRA_FILES = docs/doxygen-awesome-css-2.3.2/doxygen-awesome-darkmode-toggle.js \ + docs/doxygen-awesome-css-2.3.2/doxygen-awesome-interactive-toc.js + +# The HTML_COLORSTYLE tag can be used to specify if the generated HTML output +# should be rendered with a dark or light theme. +# Possible values are: LIGHT always generate light mode output, DARK always +# generate dark mode output, AUTO_LIGHT automatically set the mode according to +# the user preference, use light mode if no preference is set (the default), +# AUTO_DARK automatically set the mode according to the user preference, use +# dark mode if no preference is set and TOGGLE allow to user to switch between +# light and dark mode via a button. +# The default value is: AUTO_LIGHT. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COLORSTYLE = AUTO_LIGHT # The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen # will adjust the colors in the style sheet and background images according to -# this color. Hue is specified as an angle on a colorwheel, see +# this color. Hue is specified as an angle on a color-wheel, see # https://en.wikipedia.org/wiki/Hue for more information. For instance the value # 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300 # purple, and 360 is red again. @@ -1256,7 +1450,7 @@ HTML_EXTRA_FILES = HTML_COLORSTYLE_HUE = 220 # The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors -# in the HTML output. For a value of 0 the output will use grayscales only. A +# in the HTML output. For a value of 0 the output will use gray-scales only. A # value of 255 will produce the most vivid colors. # Minimum value: 0, maximum value: 255, default value: 100. # This tag requires that the tag GENERATE_HTML is set to YES. @@ -1274,15 +1468,6 @@ HTML_COLORSTYLE_SAT = 100 HTML_COLORSTYLE_GAMMA = 80 -# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML -# page will contain the date and time when the page was generated. Setting this -# to YES can help to show when doxygen was last run and thus if the -# documentation is up to date. -# The default value is: NO. -# This tag requires that the tag GENERATE_HTML is set to YES. - -HTML_TIMESTAMP = NO - # If the HTML_DYNAMIC_MENUS tag is set to YES then the generated HTML # documentation will contain a main index with vertical navigation menus that # are dynamically created via JavaScript. If disabled, the navigation index will @@ -1302,6 +1487,33 @@ HTML_DYNAMIC_MENUS = YES HTML_DYNAMIC_SECTIONS = YES +# If the HTML_CODE_FOLDING tag is set to YES then classes and functions can be +# dynamically folded and expanded in the generated HTML source code. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_CODE_FOLDING = YES + +# If the HTML_COPY_CLIPBOARD tag is set to YES then doxygen will show an icon in +# the top right corner of code and text fragments that allows the user to copy +# its content to the clipboard. Note this only works if supported by the browser +# and the web page is served via a secure context (see: +# https://www.w3.org/TR/secure-contexts/), i.e. using the https: or file: +# protocol. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_COPY_CLIPBOARD = YES + +# Doxygen stores a couple of settings persistently in the browser (via e.g. +# cookies). By default these settings apply to all HTML pages generated by +# doxygen across all projects. The HTML_PROJECT_COOKIE tag can be used to store +# the settings under a project specific key, such that the user preferences will +# be stored separately. +# This tag requires that the tag GENERATE_HTML is set to YES. + +HTML_PROJECT_COOKIE = + # With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries # shown in the various tree structured indices initially; the user can expand # and collapse entries dynamically later on. Doxygen will expand the tree to @@ -1317,10 +1529,11 @@ HTML_INDEX_NUM_ENTRIES = 100 # If the GENERATE_DOCSET tag is set to YES, additional index files will be # generated that can be used as input for Apple's Xcode 3 integrated development -# environment (see: https://developer.apple.com/xcode/), introduced with OSX -# 10.5 (Leopard). To create a documentation set, doxygen will generate a -# Makefile in the HTML output directory. Running make will produce the docset in -# that directory and running make install will install the docset in +# environment (see: +# https://developer.apple.com/xcode/), introduced with OSX 10.5 (Leopard). To +# create a documentation set, doxygen will generate a Makefile in the HTML +# output directory. Running make will produce the docset in that directory and +# running make install will install the docset in # ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at # startup. See https://developer.apple.com/library/archive/featuredarticles/Doxy # genXcode/_index.html for more information. @@ -1337,6 +1550,13 @@ GENERATE_DOCSET = NO DOCSET_FEEDNAME = "Doxygen generated docs" +# This tag determines the URL of the docset feed. A documentation feed provides +# an umbrella under which multiple documentation sets from a single provider +# (such as a company or product suite) can be grouped. +# This tag requires that the tag GENERATE_DOCSET is set to YES. + +DOCSET_FEEDURL = + # This tag specifies a string that should uniquely identify the documentation # set bundle. This should be a reverse domain-name style string, e.g. # com.mycompany.MyDocSet. Doxygen will append .docset to the name. @@ -1362,8 +1582,12 @@ DOCSET_PUBLISHER_NAME = Publisher # If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three # additional HTML index files: index.hhp, index.hhc, and index.hhk. The # index.hhp is a project file that can be read by Microsoft's HTML Help Workshop -# (see: https://www.microsoft.com/en-us/download/details.aspx?id=21138) on -# Windows. +# on Windows. In the beginning of 2021 Microsoft took the original page, with +# a.o. the download links, offline the HTML help workshop was already many years +# in maintenance mode). You can download the HTML help workshop from the web +# archives at Installation executable (see: +# http://web.archive.org/web/20160201063255/http://download.microsoft.com/downlo +# ad/0/A/9/0A939EF6-E31C-430F-A3DF-DFAE7960D564/htmlhelp.exe). # # The HTML Help Workshop contains a compiler that can convert all HTML output # generated by doxygen into a single compiled HTML file (.chm). Compiled HTML @@ -1420,6 +1644,16 @@ BINARY_TOC = NO TOC_EXPAND = NO +# The SITEMAP_URL tag is used to specify the full URL of the place where the +# generated documentation will be placed on the server by the user during the +# deployment of the documentation. The generated sitemap is called sitemap.xml +# and placed on the directory specified by HTML_OUTPUT. In case no SITEMAP_URL +# is specified no sitemap is generated. For information about the sitemap +# protocol see https://www.sitemaps.org +# This tag requires that the tag GENERATE_HTML is set to YES. + +SITEMAP_URL = + # If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and # QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that # can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help @@ -1438,7 +1672,8 @@ QCH_FILE = # The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help # Project output. For more information please see Qt Help Project / Namespace -# (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace). +# (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#namespace). # The default value is: org.doxygen.Project. # This tag requires that the tag GENERATE_QHP is set to YES. @@ -1446,8 +1681,8 @@ QHP_NAMESPACE = org.doxygen.Project # The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt # Help Project output. For more information please see Qt Help Project / Virtual -# Folders (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual- -# folders). +# Folders (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#virtual-folders). # The default value is: doc. # This tag requires that the tag GENERATE_QHP is set to YES. @@ -1455,16 +1690,16 @@ QHP_VIRTUAL_FOLDER = doc # If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom # filter to add. For more information please see Qt Help Project / Custom -# Filters (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom- -# filters). +# Filters (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters). # This tag requires that the tag GENERATE_QHP is set to YES. QHP_CUST_FILTER_NAME = # The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the # custom filter to add. For more information please see Qt Help Project / Custom -# Filters (see: https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom- -# filters). +# Filters (see: +# https://doc.qt.io/archives/qt-4.8/qthelpproject.html#custom-filters). # This tag requires that the tag GENERATE_QHP is set to YES. QHP_CUST_FILTER_ATTRS = @@ -1476,9 +1711,9 @@ QHP_CUST_FILTER_ATTRS = QHP_SECT_FILTER_ATTRS = -# The QHG_LOCATION tag can be used to specify the location of Qt's -# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the -# generated .qhp file. +# The QHG_LOCATION tag can be used to specify the location (absolute path +# including file name) of Qt's qhelpgenerator. If non-empty doxygen will try to +# run qhelpgenerator on the generated .qhp file. # This tag requires that the tag GENERATE_QHP is set to YES. QHG_LOCATION = @@ -1521,15 +1756,27 @@ DISABLE_INDEX = NO # to work a browser that supports JavaScript, DHTML, CSS and frames is required # (i.e. any modern browser). Windows users are probably better off using the # HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can -# further fine-tune the look of the index. As an example, the default style -# sheet generated by doxygen has an example that shows how to put an image at -# the root of the tree instead of the PROJECT_NAME. Since the tree basically has -# the same information as the tab index, you could consider setting -# DISABLE_INDEX to YES when enabling this option. +# further fine tune the look of the index (see "Fine-tuning the output"). As an +# example, the default style sheet generated by doxygen has an example that +# shows how to put an image at the root of the tree instead of the PROJECT_NAME. +# Since the tree basically has the same information as the tab index, you could +# consider setting DISABLE_INDEX to YES when enabling this option. # The default value is: NO. # This tag requires that the tag GENERATE_HTML is set to YES. -GENERATE_TREEVIEW = NO +GENERATE_TREEVIEW = YES + +# When both GENERATE_TREEVIEW and DISABLE_INDEX are set to YES, then the +# FULL_SIDEBAR option determines if the side bar is limited to only the treeview +# area (value NO) or if it should extend to the full height of the window (value +# YES). Setting this to YES gives a layout similar to +# https://docs.readthedocs.io with more room for contents, but less room for the +# project logo, title, and description. If either GENERATE_TREEVIEW or +# DISABLE_INDEX is set to NO, this option has no effect. +# The default value is: NO. +# This tag requires that the tag GENERATE_HTML is set to YES. + +FULL_SIDEBAR = NO # The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that # doxygen will group on one line in the generated HTML documentation. @@ -1555,6 +1802,13 @@ TREEVIEW_WIDTH = 250 EXT_LINKS_IN_WINDOW = NO +# If the OBFUSCATE_EMAILS tag is set to YES, doxygen will obfuscate email +# addresses. +# The default value is: YES. +# This tag requires that the tag GENERATE_HTML is set to YES. + +OBFUSCATE_EMAILS = YES + # If the HTML_FORMULA_FORMAT option is set to svg, doxygen will use the pdf2svg # tool (see https://github.com/dawbarton/pdf2svg) or inkscape (see # https://inkscape.org) to generate formulas as SVG images instead of PNGs for @@ -1575,17 +1829,6 @@ HTML_FORMULA_FORMAT = svg FORMULA_FONTSIZE = 10 -# Use the FORMULA_TRANSPARENT tag to determine whether or not the images -# generated for formulas are transparent PNGs. Transparent PNGs are not -# supported properly for IE 6.0, but are supported on all modern browsers. -# -# Note that when changing this option you need to delete any form_*.png files in -# the HTML output directory before the changes have effect. -# The default value is: YES. -# This tag requires that the tag GENERATE_HTML is set to YES. - -FORMULA_TRANSPARENT = YES - # The FORMULA_MACROFILE can contain LaTeX \newcommand and \renewcommand commands # to create new LaTeX commands to be used in formulas as building blocks. See # the section "Including formulas" for details. @@ -1603,11 +1846,29 @@ FORMULA_MACROFILE = USE_MATHJAX = YES +# With MATHJAX_VERSION it is possible to specify the MathJax version to be used. +# Note that the different versions of MathJax have different requirements with +# regards to the different settings, so it is possible that also other MathJax +# settings have to be changed when switching between the different MathJax +# versions. +# Possible values are: MathJax_2 and MathJax_3. +# The default value is: MathJax_2. +# This tag requires that the tag USE_MATHJAX is set to YES. + +MATHJAX_VERSION = MathJax_2 + # When MathJax is enabled you can set the default output format to be used for -# the MathJax output. See the MathJax site (see: -# http://docs.mathjax.org/en/latest/output.html) for more details. +# the MathJax output. For more details about the output format see MathJax +# version 2 (see: +# http://docs.mathjax.org/en/v2.7-latest/output.html) and MathJax version 3 +# (see: +# http://docs.mathjax.org/en/latest/web/components/output.html). # Possible values are: HTML-CSS (which is slower, but has the best -# compatibility), NativeMML (i.e. MathML) and SVG. +# compatibility. This is the name for Mathjax version 2, for MathJax version 3 +# this will be translated into chtml), NativeMML (i.e. MathML. Only supported +# for NathJax 2. For MathJax version 3 chtml will be used instead.), chtml (This +# is the name for Mathjax version 3, for MathJax version 2 this will be +# translated into HTML-CSS) and SVG. # The default value is: HTML-CSS. # This tag requires that the tag USE_MATHJAX is set to YES. @@ -1620,22 +1881,29 @@ MATHJAX_FORMAT = HTML-CSS # MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax # Content Delivery Network so you can quickly see the result without installing # MathJax. However, it is strongly recommended to install a local copy of -# MathJax from https://www.mathjax.org before deployment. -# The default value is: https://cdn.jsdelivr.net/npm/mathjax@2. +# MathJax from https://www.mathjax.org before deployment. The default value is: +# - in case of MathJax version 2: https://cdn.jsdelivr.net/npm/mathjax@2 +# - in case of MathJax version 3: https://cdn.jsdelivr.net/npm/mathjax@3 # This tag requires that the tag USE_MATHJAX is set to YES. MATHJAX_RELPATH = https://cdn.jsdelivr.net/npm/mathjax@2 # The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax # extension names that should be enabled during MathJax rendering. For example +# for MathJax version 2 (see +# https://docs.mathjax.org/en/v2.7-latest/tex.html#tex-and-latex-extensions): # MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols +# For example for MathJax version 3 (see +# http://docs.mathjax.org/en/latest/input/tex/extensions/index.html): +# MATHJAX_EXTENSIONS = ams # This tag requires that the tag USE_MATHJAX is set to YES. MATHJAX_EXTENSIONS = # The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces # of code that will be used on startup of the MathJax code. See the MathJax site -# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an +# (see: +# http://docs.mathjax.org/en/v2.7-latest/output.html) for more details. For an # example see the documentation. # This tag requires that the tag USE_MATHJAX is set to YES. @@ -1682,7 +1950,8 @@ SERVER_BASED_SEARCH = NO # # Doxygen ships with an example indexer (doxyindexer) and search engine # (doxysearch.cgi) which are based on the open source search engine library -# Xapian (see: https://xapian.org/). +# Xapian (see: +# https://xapian.org/). # # See the section "External Indexing and Searching" for details. # The default value is: NO. @@ -1695,8 +1964,9 @@ EXTERNAL_SEARCH = NO # # Doxygen ships with an example indexer (doxyindexer) and search engine # (doxysearch.cgi) which are based on the open source search engine library -# Xapian (see: https://xapian.org/). See the section "External Indexing and -# Searching" for details. +# Xapian (see: +# https://xapian.org/). See the section "External Indexing and Searching" for +# details. # This tag requires that the tag SEARCHENGINE is set to YES. SEARCHENGINE_URL = @@ -1805,29 +2075,31 @@ PAPER_TYPE = a4 EXTRA_PACKAGES = -# The LATEX_HEADER tag can be used to specify a personal LaTeX header for the -# generated LaTeX document. The header should contain everything until the first -# chapter. If it is left blank doxygen will generate a standard header. See -# section "Doxygen usage" for information on how to let doxygen write the -# default header to a separate file. +# The LATEX_HEADER tag can be used to specify a user-defined LaTeX header for +# the generated LaTeX document. The header should contain everything until the +# first chapter. If it is left blank doxygen will generate a standard header. It +# is highly recommended to start with a default header using +# doxygen -w latex new_header.tex new_footer.tex new_stylesheet.sty +# and then modify the file new_header.tex. See also section "Doxygen usage" for +# information on how to generate the default header that doxygen normally uses. # -# Note: Only use a user-defined header if you know what you are doing! The -# following commands have a special meaning inside the header: $title, -# $datetime, $date, $doxygenversion, $projectname, $projectnumber, -# $projectbrief, $projectlogo. Doxygen will replace $title with the empty -# string, for the replacement values of the other commands the user is referred -# to HTML_HEADER. +# Note: Only use a user-defined header if you know what you are doing! +# Note: The header is subject to change so you typically have to regenerate the +# default header when upgrading to a newer version of doxygen. The following +# commands have a special meaning inside the header (and footer): For a +# description of the possible markers and block names see the documentation. # This tag requires that the tag GENERATE_LATEX is set to YES. LATEX_HEADER = -# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the -# generated LaTeX document. The footer should contain everything after the last -# chapter. If it is left blank doxygen will generate a standard footer. See +# The LATEX_FOOTER tag can be used to specify a user-defined LaTeX footer for +# the generated LaTeX document. The footer should contain everything after the +# last chapter. If it is left blank doxygen will generate a standard footer. See # LATEX_HEADER for more information on how to generate a default footer and what -# special commands can be used inside the footer. -# -# Note: Only use a user-defined footer if you know what you are doing! +# special commands can be used inside the footer. See also section "Doxygen +# usage" for information on how to generate the default footer that doxygen +# normally uses. Note: Only use a user-defined footer if you know what you are +# doing! # This tag requires that the tag GENERATE_LATEX is set to YES. LATEX_FOOTER = @@ -1870,10 +2142,16 @@ PDF_HYPERLINKS = YES USE_PDFLATEX = YES -# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode -# command to the generated LaTeX files. This will instruct LaTeX to keep running -# if errors occur, instead of asking the user for help. This option is also used -# when generating formulas in HTML. +# The LATEX_BATCHMODE tag signals the behavior of LaTeX in case of an error. +# Possible values are: NO same as ERROR_STOP, YES same as BATCH, BATCH In batch +# mode nothing is printed on the terminal, errors are scrolled as if is +# hit at every error; missing files that TeX tries to input or request from +# keyboard input (\read on a not open input stream) cause the job to abort, +# NON_STOP In nonstop mode the diagnostic message will appear on the terminal, +# but there is no possibility of user interaction just like in batch mode, +# SCROLL In scroll mode, TeX will stop only for missing files to input or if +# keyboard input is necessary and ERROR_STOP In errorstop mode, TeX will stop at +# each error, asking for user intervention. # The default value is: NO. # This tag requires that the tag GENERATE_LATEX is set to YES. @@ -1886,16 +2164,6 @@ LATEX_BATCHMODE = NO LATEX_HIDE_INDICES = NO -# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source -# code with syntax highlighting in the LaTeX output. -# -# Note that which sources are shown also depends on other settings such as -# SOURCE_BROWSER. -# The default value is: NO. -# This tag requires that the tag GENERATE_LATEX is set to YES. - -LATEX_SOURCE_CODE = NO - # The LATEX_BIB_STYLE tag can be used to specify the style to use for the # bibliography, e.g. plainnat, or ieeetr. See # https://en.wikipedia.org/wiki/BibTeX and \cite for more info. @@ -1904,14 +2172,6 @@ LATEX_SOURCE_CODE = NO LATEX_BIB_STYLE = plain -# If the LATEX_TIMESTAMP tag is set to YES then the footer of each generated -# page will contain the date and time when the page was generated. Setting this -# to NO can help when comparing the output of multiple runs. -# The default value is: NO. -# This tag requires that the tag GENERATE_LATEX is set to YES. - -LATEX_TIMESTAMP = NO - # The LATEX_EMOJI_DIRECTORY tag is used to specify the (relative or absolute) # path from which the emoji images will be read. If a relative path is entered, # it will be relative to the LATEX_OUTPUT directory. If left blank the @@ -1976,16 +2236,6 @@ RTF_STYLESHEET_FILE = RTF_EXTENSIONS_FILE = -# If the RTF_SOURCE_CODE tag is set to YES then doxygen will include source code -# with syntax highlighting in the RTF output. -# -# Note that which sources are shown also depends on other settings such as -# SOURCE_BROWSER. -# The default value is: NO. -# This tag requires that the tag GENERATE_RTF is set to YES. - -RTF_SOURCE_CODE = NO - #--------------------------------------------------------------------------- # Configuration options related to the man page output #--------------------------------------------------------------------------- @@ -2082,27 +2332,44 @@ GENERATE_DOCBOOK = NO DOCBOOK_OUTPUT = docbook -# If the DOCBOOK_PROGRAMLISTING tag is set to YES, doxygen will include the -# program listings (including syntax highlighting and cross-referencing -# information) to the DOCBOOK output. Note that enabling this will significantly -# increase the size of the DOCBOOK output. -# The default value is: NO. -# This tag requires that the tag GENERATE_DOCBOOK is set to YES. - -DOCBOOK_PROGRAMLISTING = NO - #--------------------------------------------------------------------------- # Configuration options for the AutoGen Definitions output #--------------------------------------------------------------------------- # If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an -# AutoGen Definitions (see http://autogen.sourceforge.net/) file that captures +# AutoGen Definitions (see https://autogen.sourceforge.net/) file that captures # the structure of the code including all documentation. Note that this feature # is still experimental and incomplete at the moment. # The default value is: NO. GENERATE_AUTOGEN_DEF = NO +#--------------------------------------------------------------------------- +# Configuration options related to Sqlite3 output +#--------------------------------------------------------------------------- + +# If the GENERATE_SQLITE3 tag is set to YES doxygen will generate a Sqlite3 +# database with symbols found by doxygen stored in tables. +# The default value is: NO. + +GENERATE_SQLITE3 = NO + +# The SQLITE3_OUTPUT tag is used to specify where the Sqlite3 database will be +# put. If a relative path is entered the value of OUTPUT_DIRECTORY will be put +# in front of it. +# The default directory is: sqlite3. +# This tag requires that the tag GENERATE_SQLITE3 is set to YES. + +SQLITE3_OUTPUT = sqlite3 + +# The SQLITE3_RECREATE_DB tag is set to YES, the existing doxygen_sqlite3.db +# database file will be recreated with each doxygen run. If set to NO, doxygen +# will warn if a database file is already found and not modify it. +# The default value is: YES. +# This tag requires that the tag GENERATE_SQLITE3 is set to YES. + +SQLITE3_RECREATE_DB = YES + #--------------------------------------------------------------------------- # Configuration options related to the Perl module output #--------------------------------------------------------------------------- @@ -2149,7 +2416,7 @@ PERLMOD_MAKEVAR_PREFIX = # C-preprocessor directives found in the sources and include files. # The default value is: YES. -ENABLE_PREPROCESSING = YES +ENABLE_PREPROCESSING = NO # If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names # in the source code. If set to NO, only conditional compilation will be @@ -2177,7 +2444,8 @@ SEARCH_INCLUDES = YES # The INCLUDE_PATH tag can be used to specify one or more directories that # contain include files that are not input files but should be processed by the -# preprocessor. +# preprocessor. Note that the INCLUDE_PATH is not recursive, so the setting of +# RECURSIVE has no effect here. # This tag requires that the tag SEARCH_INCLUDES is set to YES. INCLUDE_PATH = include/ @@ -2198,7 +2466,6 @@ INCLUDE_FILE_PATTERNS = # recursively expanded use the := operator instead of the = operator. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES. -# TODO: add NONMATCHING here? PREDEFINED = # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this @@ -2245,15 +2512,15 @@ TAGFILES = GENERATE_TAGFILE = -# If the ALLEXTERNALS tag is set to YES, all external class will be listed in -# the class index. If set to NO, only the inherited external classes will be -# listed. +# If the ALLEXTERNALS tag is set to YES, all external classes and namespaces +# will be listed in the class and namespace index. If set to NO, only the +# inherited external classes will be listed. # The default value is: NO. ALLEXTERNALS = NO # If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed -# in the modules index. If set to NO, only the current project's groups will be +# in the topic index. If set to NO, only the current project's groups will be # listed. # The default value is: YES. @@ -2267,25 +2534,9 @@ EXTERNAL_GROUPS = YES EXTERNAL_PAGES = YES #--------------------------------------------------------------------------- -# Configuration options related to the dot tool +# Configuration options related to diagram generator tools #--------------------------------------------------------------------------- -# If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram -# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to -# NO turns the diagrams off. Note that this option also works with HAVE_DOT -# disabled, but it is recommended to install and use dot, since it yields more -# powerful graphs. -# The default value is: YES. - -CLASS_DIAGRAMS = YES - -# You can include diagrams made with dia in doxygen documentation. Doxygen will -# then run dia to produce the diagram and insert it in the documentation. The -# DIA_PATH tag allows you to specify the directory where the dia binary resides. -# If left empty dia is assumed to be found in the default search path. - -DIA_PATH = - # If set to YES the inheritance and collaboration graphs will hide inheritance # and usage relations if the target is undocumented or is not a class. # The default value is: YES. @@ -2294,7 +2545,7 @@ HIDE_UNDOC_RELATIONS = YES # If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is # available from the path. This tool is part of Graphviz (see: -# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent +# https://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent # Bell Labs. The other options in this section have no effect if this option is # set to NO # The default value is: NO. @@ -2311,49 +2562,77 @@ HAVE_DOT = YES DOT_NUM_THREADS = 0 -# When you want a differently looking font in the dot files that doxygen -# generates you can specify the font name using DOT_FONTNAME. You need to make -# sure dot is able to find the font, which can be done by putting it in a -# standard location or by setting the DOTFONTPATH environment variable or by -# setting DOT_FONTPATH to the directory containing the font. -# The default value is: Helvetica. +# DOT_COMMON_ATTR is common attributes for nodes, edges and labels of +# subgraphs. When you want a differently looking font in the dot files that +# doxygen generates you can specify fontname, fontcolor and fontsize attributes. +# For details please see Node, +# Edge and Graph Attributes specification You need to make sure dot is able +# to find the font, which can be done by putting it in a standard location or by +# setting the DOTFONTPATH environment variable or by setting DOT_FONTPATH to the +# directory containing the font. Default graphviz fontsize is 14. +# The default value is: fontname=Helvetica,fontsize=10. # This tag requires that the tag HAVE_DOT is set to YES. -DOT_FONTNAME = Helvetica +DOT_COMMON_ATTR = "fontname=Helvetica,fontsize=10" -# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of -# dot graphs. -# Minimum value: 4, maximum value: 24, default value: 10. +# DOT_EDGE_ATTR is concatenated with DOT_COMMON_ATTR. For elegant style you can +# add 'arrowhead=open, arrowtail=open, arrowsize=0.5'. Complete documentation about +# arrows shapes. +# The default value is: labelfontname=Helvetica,labelfontsize=10. # This tag requires that the tag HAVE_DOT is set to YES. -DOT_FONTSIZE = 10 +DOT_EDGE_ATTR = "labelfontname=Helvetica,labelfontsize=10" -# By default doxygen will tell dot to use the default font as specified with -# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set -# the path where dot can find it using this tag. +# DOT_NODE_ATTR is concatenated with DOT_COMMON_ATTR. For view without boxes +# around nodes set 'shape=plain' or 'shape=plaintext' Shapes specification +# The default value is: shape=box,height=0.2,width=0.4. +# This tag requires that the tag HAVE_DOT is set to YES. + +DOT_NODE_ATTR = "shape=box,height=0.2,width=0.4" + +# You can set the path where dot can find font specified with fontname in +# DOT_COMMON_ATTR and others dot attributes. # This tag requires that the tag HAVE_DOT is set to YES. DOT_FONTPATH = -# If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for -# each documented class showing the direct and indirect inheritance relations. -# Setting this tag to YES will force the CLASS_DIAGRAMS tag to NO. +# If the CLASS_GRAPH tag is set to YES or GRAPH or BUILTIN then doxygen will +# generate a graph for each documented class showing the direct and indirect +# inheritance relations. In case the CLASS_GRAPH tag is set to YES or GRAPH and +# HAVE_DOT is enabled as well, then dot will be used to draw the graph. In case +# the CLASS_GRAPH tag is set to YES and HAVE_DOT is disabled or if the +# CLASS_GRAPH tag is set to BUILTIN, then the built-in generator will be used. +# If the CLASS_GRAPH tag is set to TEXT the direct and indirect inheritance +# relations will be shown as texts / links. Explicit enabling an inheritance +# graph or choosing a different representation for an inheritance graph of a +# specific class, can be accomplished by means of the command \inheritancegraph. +# Disabling an inheritance graph can be accomplished by means of the command +# \hideinheritancegraph. +# Possible values are: NO, YES, TEXT, GRAPH and BUILTIN. # The default value is: YES. -# This tag requires that the tag HAVE_DOT is set to YES. CLASS_GRAPH = YES # If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a # graph for each documented class showing the direct and indirect implementation # dependencies (inheritance, containment, and class references variables) of the -# class with other documented classes. +# class with other documented classes. Explicit enabling a collaboration graph, +# when COLLABORATION_GRAPH is set to NO, can be accomplished by means of the +# command \collaborationgraph. Disabling a collaboration graph can be +# accomplished by means of the command \hidecollaborationgraph. # The default value is: YES. # This tag requires that the tag HAVE_DOT is set to YES. COLLABORATION_GRAPH = YES # If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for -# groups, showing the direct groups dependencies. +# groups, showing the direct groups dependencies. Explicit enabling a group +# dependency graph, when GROUP_GRAPHS is set to NO, can be accomplished by means +# of the command \groupgraph. Disabling a directory graph can be accomplished by +# means of the command \hidegroupgraph. See also the chapter Grouping in the +# manual. # The default value is: YES. # This tag requires that the tag HAVE_DOT is set to YES. @@ -2376,10 +2655,32 @@ UML_LOOK = NO # but if the number exceeds 15, the total amount of fields shown is limited to # 10. # Minimum value: 0, maximum value: 100, default value: 10. -# This tag requires that the tag HAVE_DOT is set to YES. +# This tag requires that the tag UML_LOOK is set to YES. UML_LIMIT_NUM_FIELDS = 10 +# If the DOT_UML_DETAILS tag is set to NO, doxygen will show attributes and +# methods without types and arguments in the UML graphs. If the DOT_UML_DETAILS +# tag is set to YES, doxygen will add type and arguments for attributes and +# methods in the UML graphs. If the DOT_UML_DETAILS tag is set to NONE, doxygen +# will not generate fields with class member information in the UML graphs. The +# class diagrams will look similar to the default class diagrams but using UML +# notation for the relationships. +# Possible values are: NO, YES and NONE. +# The default value is: NO. +# This tag requires that the tag UML_LOOK is set to YES. + +DOT_UML_DETAILS = NO + +# The DOT_WRAP_THRESHOLD tag can be used to set the maximum number of characters +# to display on a single line. If the actual line length exceeds this threshold +# significantly it will be wrapped across multiple lines. Some heuristics are +# applied to avoid ugly line breaks. +# Minimum value: 0, maximum value: 1000, default value: 17. +# This tag requires that the tag HAVE_DOT is set to YES. + +DOT_WRAP_THRESHOLD = 17 + # If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and # collaboration graphs will show the relations between templates and their # instances. @@ -2391,7 +2692,9 @@ TEMPLATE_RELATIONS = NO # If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to # YES then doxygen will generate a graph for each documented file showing the # direct and indirect include dependencies of the file with other documented -# files. +# files. Explicit enabling an include graph, when INCLUDE_GRAPH is is set to NO, +# can be accomplished by means of the command \includegraph. Disabling an +# include graph can be accomplished by means of the command \hideincludegraph. # The default value is: YES. # This tag requires that the tag HAVE_DOT is set to YES. @@ -2400,7 +2703,10 @@ INCLUDE_GRAPH = YES # If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are # set to YES then doxygen will generate a graph for each documented file showing # the direct and indirect include dependencies of the file with other documented -# files. +# files. Explicit enabling an included by graph, when INCLUDED_BY_GRAPH is set +# to NO, can be accomplished by means of the command \includedbygraph. Disabling +# an included by graph can be accomplished by means of the command +# \hideincludedbygraph. # The default value is: YES. # This tag requires that the tag HAVE_DOT is set to YES. @@ -2440,16 +2746,26 @@ GRAPHICAL_HIERARCHY = YES # If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the # dependencies a directory has on other directories in a graphical way. The # dependency relations are determined by the #include relations between the -# files in the directories. +# files in the directories. Explicit enabling a directory graph, when +# DIRECTORY_GRAPH is set to NO, can be accomplished by means of the command +# \directorygraph. Disabling a directory graph can be accomplished by means of +# the command \hidedirectorygraph. # The default value is: YES. # This tag requires that the tag HAVE_DOT is set to YES. DIRECTORY_GRAPH = YES +# The DIR_GRAPH_MAX_DEPTH tag can be used to limit the maximum number of levels +# of child directories generated in directory dependency graphs by dot. +# Minimum value: 1, maximum value: 25, default value: 1. +# This tag requires that the tag DIRECTORY_GRAPH is set to YES. + +DIR_GRAPH_MAX_DEPTH = 1 + # The DOT_IMAGE_FORMAT tag can be used to set the image format of the images # generated by dot. For an explanation of the image formats see the section # output formats in the documentation of the dot tool (Graphviz (see: -# http://www.graphviz.org/)). +# https://www.graphviz.org/)). # Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order # to make the SVG files visible in IE 9+ (other browsers do not have this # requirement). @@ -2486,11 +2802,12 @@ DOT_PATH = DOTFILE_DIRS = -# The MSCFILE_DIRS tag can be used to specify one or more directories that -# contain msc files that are included in the documentation (see the \mscfile -# command). +# You can include diagrams made with dia in doxygen documentation. Doxygen will +# then run dia to produce the diagram and insert it in the documentation. The +# DIA_PATH tag allows you to specify the directory where the dia binary resides. +# If left empty dia is assumed to be found in the default search path. -MSCFILE_DIRS = +DIA_PATH = # The DIAFILE_DIRS tag can be used to specify one or more directories that # contain dia files that are included in the documentation (see the \diafile @@ -2499,10 +2816,10 @@ MSCFILE_DIRS = DIAFILE_DIRS = # When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the -# path where java can find the plantuml.jar file. If left blank, it is assumed -# PlantUML is not used or called during a preprocessing step. Doxygen will -# generate a warning when it encounters a \startuml command in this case and -# will not generate output for the diagram. +# path where java can find the plantuml.jar file or to the filename of jar file +# to be used. If left blank, it is assumed PlantUML is not used or called during +# a preprocessing step. Doxygen will generate a warning when it encounters a +# \startuml command in this case and will not generate output for the diagram. PLANTUML_JAR_PATH = @@ -2540,18 +2857,6 @@ DOT_GRAPH_MAX_NODES = 50 MAX_DOT_GRAPH_DEPTH = 0 -# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent -# background. This is disabled by default, because dot on Windows does not seem -# to support this out of the box. -# -# Warning: Depending on the platform used, enabling this option may lead to -# badly anti-aliased labels on the edges of a graph (i.e. they become hard to -# read). -# The default value is: NO. -# This tag requires that the tag HAVE_DOT is set to YES. - -DOT_TRANSPARENT = NO - # Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output # files in one run (i.e. multiple -o and -T options on the command line). This # makes dot run faster, but since only newer versions of dot (>1.8.10) support @@ -2564,14 +2869,34 @@ DOT_MULTI_TARGETS = NO # If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page # explaining the meaning of the various boxes and arrows in the dot generated # graphs. +# Note: This tag requires that UML_LOOK isn't set, i.e. the doxygen internal +# graphical representation for inheritance and collaboration diagrams is used. # The default value is: YES. # This tag requires that the tag HAVE_DOT is set to YES. GENERATE_LEGEND = YES -# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot +# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate # files that are used to generate the various graphs. +# +# Note: This setting is not only used for dot files but also for msc temporary +# files. # The default value is: YES. -# This tag requires that the tag HAVE_DOT is set to YES. DOT_CLEANUP = YES + +# You can define message sequence charts within doxygen comments using the \msc +# command. If the MSCGEN_TOOL tag is left empty (the default), then doxygen will +# use a built-in version of mscgen tool to produce the charts. Alternatively, +# the MSCGEN_TOOL tag can also specify the name an external tool. For instance, +# specifying prog as the value, doxygen will call the tool as prog -T +# -o . The external tool should support +# output file formats "png", "eps", "svg", and "ismap". + +MSCGEN_TOOL = + +# The MSCFILE_DIRS tag can be used to specify one or more directories that +# contain msc files that are included in the documentation (see the \mscfile +# command). + +MSCFILE_DIRS = diff --git a/Progress.md b/Progress.md index 2a5a941167..8601145359 100644 --- a/Progress.md +++ b/Progress.md @@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes) .init | 97.972973% | 9280 | 9472 .extab | 100.000000% | 96 | 96 .extabindex | 100.000000% | 96 | 96 -.text | 48.455851% | 1742736 | 3596544 +.text | 48.756584% | 1753552 | 3596544 .ctors | 100.000000% | 448 | 448 .dtors | 100.000000% | 32 | 32 .rodata | 100.000000% | 193856 | 193856 .data | 100.000000% | 197632 | 197632 .sdata | 100.000000% | 1408 | 1408 .sdata2 | 100.000000% | 20832 | 20832 -Total | 53.888305% | 2166672 | 4020672 +Total | 54.157315% | 2177488 | 4020672 ## Total Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- -main.dol | 53.888305% | 2166672 | 4020672 -RELs | 37.290880% | 4288572 | 11500324 -Total | 41.590398% | 6455244 | 15520996 +main.dol | 54.157315% | 2177488 | 4020672 +RELs | 37.556090% | 4319072 | 11500324 +Total | 41.856592% | 6496560 | 15520996 ## RELs @@ -74,8 +74,8 @@ d_a_demo_item | 33.863165% | 3920 | 11576 d_a_disappear | 100.000000% | 2404 | 2404 d_a_dmidna | 100.000000% | 1888 | 1888 d_a_do | 37.666220% | 14616 | 38804 -d_a_door_boss | 66.342756% | 6008 | 9056 -d_a_door_bossL1 | 39.355114% | 7372 | 18732 +d_a_door_boss | 100.000000% | 9056 | 9056 +d_a_door_bossL1 | 100.000000% | 18732 | 18732 d_a_door_bossL5 | 39.221790% | 4032 | 10280 d_a_door_dbdoor00 | 100.000000% | 7620 | 7620 d_a_door_knob00 | 37.500000% | 4608 | 12288 @@ -107,7 +107,7 @@ d_a_e_fb | 31.127328% | 4948 | 15896 d_a_e_fk | 32.965394% | 4420 | 13408 d_a_e_fm | 24.588144% | 15164 | 61672 d_a_e_fs | 31.823996% | 4976 | 15636 -d_a_e_fz | 30.508860% | 5372 | 17608 +d_a_e_fz | 35.756474% | 6296 | 17608 d_a_e_ga | 43.014395% | 2032 | 4724 d_a_e_gb | 26.939571% | 8292 | 30780 d_a_e_ge | 24.669967% | 7176 | 29088 @@ -136,7 +136,7 @@ d_a_e_ms | 28.208138% | 5768 | 20448 d_a_e_nest | 100.000000% | 19932 | 19932 d_a_e_nz | 32.041969% | 4764 | 14868 d_a_e_oc | 22.586920% | 11148 | 49356 -d_a_e_oct_bg | 30.217151% | 6568 | 21736 +d_a_e_oct_bg | 100.000000% | 21736 | 21736 d_a_e_ot | 32.497589% | 5392 | 16592 d_a_e_ph | 100.000000% | 23872 | 23872 d_a_e_pm | 21.505129% | 11236 | 52248 @@ -785,4 +785,4 @@ d_a_vrbox2 | 44.907111% | 2804 | 6244 d_a_warp_bug | 100.000000% | 2024 | 2024 d_a_ykgr | 44.400631% | 2252 | 5072 f_pc_profile_lst | 100.000000% | 28156 | 28156 -Total | 37.290880% | 4288572 | 11500324 +Total | 37.556090% | 4319072 | 11500324 diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/CreateHeap__8daE_FZ_cFv.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/CreateHeap__8daE_FZ_cFv.s deleted file mode 100644 index f6136b8c40..0000000000 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/CreateHeap__8daE_FZ_cFv.s +++ /dev/null @@ -1,37 +0,0 @@ -lbl_806C0C28: -/* 806C0C28 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 806C0C2C 7C 08 02 A6 */ mflr r0 -/* 806C0C30 90 01 00 14 */ stw r0, 0x14(r1) -/* 806C0C34 93 E1 00 0C */ stw r31, 0xc(r1) -/* 806C0C38 7C 7F 1B 78 */ mr r31, r3 -/* 806C0C3C 3C 60 80 6C */ lis r3, d_a_e_fz__stringBase0@ha /* 0x806C19F4@ha */ -/* 806C0C40 38 63 19 F4 */ addi r3, r3, d_a_e_fz__stringBase0@l /* 0x806C19F4@l */ -/* 806C0C44 38 80 00 03 */ li r4, 3 -/* 806C0C48 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 806C0C4C 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 806C0C50 3C A5 00 02 */ addis r5, r5, 2 -/* 806C0C54 38 C0 00 80 */ li r6, 0x80 -/* 806C0C58 38 A5 C2 F8 */ addi r5, r5, -15624 -/* 806C0C5C 4B 97 B6 91 */ bl getRes__14dRes_control_cFPCclP11dRes_info_ci -/* 806C0C60 38 80 00 00 */ li r4, 0 -/* 806C0C64 3C A0 11 02 */ lis r5, 0x1102 /* 0x11020203@ha */ -/* 806C0C68 38 A5 02 03 */ addi r5, r5, 0x0203 /* 0x11020203@l */ -/* 806C0C6C 4B 95 3F E9 */ bl mDoExt_J3DModel__create__FP12J3DModelDataUlUl -/* 806C0C70 90 7F 05 B4 */ stw r3, 0x5b4(r31) -/* 806C0C74 80 9F 05 B4 */ lwz r4, 0x5b4(r31) -/* 806C0C78 28 04 00 00 */ cmplwi r4, 0 -/* 806C0C7C 40 82 00 0C */ bne lbl_806C0C88 -/* 806C0C80 38 60 00 00 */ li r3, 0 -/* 806C0C84 48 00 00 18 */ b lbl_806C0C9C -lbl_806C0C88: -/* 806C0C88 38 7F 05 B8 */ addi r3, r31, 0x5b8 -/* 806C0C8C 38 A0 00 01 */ li r5, 1 -/* 806C0C90 4B 94 D8 AD */ bl create__21mDoExt_invisibleModelFP8J3DModelUc -/* 806C0C94 30 03 FF FF */ addic r0, r3, -1 -/* 806C0C98 7C 60 19 10 */ subfe r3, r0, r3 -lbl_806C0C9C: -/* 806C0C9C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 806C0CA0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 806C0CA4 7C 08 03 A6 */ mtlr r0 -/* 806C0CA8 38 21 00 10 */ addi r1, r1, 0x10 -/* 806C0CAC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/_delete__8daE_FZ_cFv.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/_delete__8daE_FZ_cFv.s deleted file mode 100644 index 8c67eaa2a6..0000000000 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/_delete__8daE_FZ_cFv.s +++ /dev/null @@ -1,32 +0,0 @@ -lbl_806C0B94: -/* 806C0B94 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 806C0B98 7C 08 02 A6 */ mflr r0 -/* 806C0B9C 90 01 00 14 */ stw r0, 0x14(r1) -/* 806C0BA0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 806C0BA4 7C 7F 1B 78 */ mr r31, r3 -/* 806C0BA8 38 7F 05 AC */ addi r3, r31, 0x5ac -/* 806C0BAC 3C 80 80 6C */ lis r4, d_a_e_fz__stringBase0@ha /* 0x806C19F4@ha */ -/* 806C0BB0 38 84 19 F4 */ addi r4, r4, d_a_e_fz__stringBase0@l /* 0x806C19F4@l */ -/* 806C0BB4 4B 96 C4 55 */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc -/* 806C0BB8 88 1F 0C 21 */ lbz r0, 0xc21(r31) -/* 806C0BBC 28 00 00 00 */ cmplwi r0, 0 -/* 806C0BC0 41 82 00 10 */ beq lbl_806C0BD0 -/* 806C0BC4 38 00 00 00 */ li r0, 0 -/* 806C0BC8 3C 60 80 6C */ lis r3, data_806C1BA0@ha /* 0x806C1BA0@ha */ -/* 806C0BCC 98 03 1B A0 */ stb r0, data_806C1BA0@l(r3) /* 0x806C1BA0@l */ -lbl_806C0BD0: -/* 806C0BD0 80 1F 00 F0 */ lwz r0, 0xf0(r31) -/* 806C0BD4 28 00 00 00 */ cmplwi r0, 0 -/* 806C0BD8 41 82 00 18 */ beq lbl_806C0BF0 -/* 806C0BDC 38 7F 05 C0 */ addi r3, r31, 0x5c0 -/* 806C0BE0 81 9F 05 C0 */ lwz r12, 0x5c0(r31) -/* 806C0BE4 81 8C 00 08 */ lwz r12, 8(r12) -/* 806C0BE8 7D 89 03 A6 */ mtctr r12 -/* 806C0BEC 4E 80 04 21 */ bctrl -lbl_806C0BF0: -/* 806C0BF0 38 60 00 01 */ li r3, 1 -/* 806C0BF4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 806C0BF8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 806C0BFC 7C 08 03 A6 */ mtlr r0 -/* 806C0C00 38 21 00 10 */ addi r1, r1, 0x10 -/* 806C0C04 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/create__8daE_FZ_cFv.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/create__8daE_FZ_cFv.s index 34a6f0ee44..4808acdd06 100644 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/create__8daE_FZ_cFv.s +++ b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/create__8daE_FZ_cFv.s @@ -226,14 +226,14 @@ lbl_806C1020: /* 806C102C 38 84 0F 38 */ addi r4, r4, 0xf38 /* 806C1030 4B 9B 5A 7D */ bl CrrPos__9dBgS_AcchFR4dBgS /* 806C1034 38 7D 09 80 */ addi r3, r29, 0x980 -/* 806C1038 3C 80 80 6C */ lis r4, data_806C1A38@ha /* 0x806C1A38@ha */ -/* 806C103C 38 84 1A 38 */ addi r4, r4, data_806C1A38@l /* 0x806C1A38@l */ +/* 806C1038 3C 80 80 6C */ lis r4, cc_fz_src@ha /* 0x806C1A38@ha */ +/* 806C103C 38 84 1A 38 */ addi r4, r4, cc_fz_src@l /* 0x806C1A38@l */ /* 806C1040 4B 9C 39 F5 */ bl Set__8dCcD_SphFRC11dCcD_SrcSph /* 806C1044 38 1D 09 44 */ addi r0, r29, 0x944 /* 806C1048 90 1D 09 C4 */ stw r0, 0x9c4(r29) /* 806C104C 38 7D 0A B8 */ addi r3, r29, 0xab8 -/* 806C1050 3C 80 80 6C */ lis r4, data_806C1A78@ha /* 0x806C1A78@ha */ -/* 806C1054 38 84 1A 78 */ addi r4, r4, data_806C1A78@l /* 0x806C1A78@l */ +/* 806C1050 3C 80 80 6C */ lis r4, cc_fz_at_src@ha /* 0x806C1A78@ha */ +/* 806C1054 38 84 1A 78 */ addi r4, r4, cc_fz_at_src@l /* 0x806C1A78@l */ /* 806C1058 4B 9C 39 DD */ bl Set__8dCcD_SphFRC11dCcD_SrcSph /* 806C105C 38 1D 09 44 */ addi r0, r29, 0x944 /* 806C1060 90 1D 0A FC */ stw r0, 0xafc(r29) diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Create__FP8daE_FZ_c.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Create__FP8daE_FZ_c.s deleted file mode 100644 index b0eeac56a1..0000000000 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Create__FP8daE_FZ_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_806C13D8: -/* 806C13D8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 806C13DC 7C 08 02 A6 */ mflr r0 -/* 806C13E0 90 01 00 14 */ stw r0, 0x14(r1) -/* 806C13E4 4B FF F8 ED */ bl create__8daE_FZ_cFv -/* 806C13E8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 806C13EC 7C 08 03 A6 */ mtlr r0 -/* 806C13F0 38 21 00 10 */ addi r1, r1, 0x10 -/* 806C13F4 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Delete__FP8daE_FZ_c.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Delete__FP8daE_FZ_c.s deleted file mode 100644 index 1bc15b1ee6..0000000000 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Delete__FP8daE_FZ_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_806C0C08: -/* 806C0C08 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 806C0C0C 7C 08 02 A6 */ mflr r0 -/* 806C0C10 90 01 00 14 */ stw r0, 0x14(r1) -/* 806C0C14 4B FF FF 81 */ bl _delete__8daE_FZ_cFv -/* 806C0C18 80 01 00 14 */ lwz r0, 0x14(r1) -/* 806C0C1C 7C 08 03 A6 */ mtlr r0 -/* 806C0C20 38 21 00 10 */ addi r1, r1, 0x10 -/* 806C0C24 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Draw__FP8daE_FZ_c.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Draw__FP8daE_FZ_c.s deleted file mode 100644 index a16cb98b1b..0000000000 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Draw__FP8daE_FZ_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_806BEAD8: -/* 806BEAD8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 806BEADC 7C 08 02 A6 */ mflr r0 -/* 806BEAE0 90 01 00 14 */ stw r0, 0x14(r1) -/* 806BEAE4 4B FF FE F1 */ bl draw__8daE_FZ_cFv -/* 806BEAE8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 806BEAEC 7C 08 03 A6 */ mtlr r0 -/* 806BEAF0 38 21 00 10 */ addi r1, r1, 0x10 -/* 806BEAF4 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Execute__FP8daE_FZ_c.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Execute__FP8daE_FZ_c.s deleted file mode 100644 index 24ecee8a1d..0000000000 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Execute__FP8daE_FZ_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_806C0B00: -/* 806C0B00 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 806C0B04 7C 08 02 A6 */ mflr r0 -/* 806C0B08 90 01 00 14 */ stw r0, 0x14(r1) -/* 806C0B0C 4B FF FD B9 */ bl execute__8daE_FZ_cFv -/* 806C0B10 80 01 00 14 */ lwz r0, 0x14(r1) -/* 806C0B14 7C 08 03 A6 */ mtlr r0 -/* 806C0B18 38 21 00 10 */ addi r1, r1, 0x10 -/* 806C0B1C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/demoDelete__8daE_FZ_cFv.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/demoDelete__8daE_FZ_cFv.s deleted file mode 100644 index b69f16ea21..0000000000 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/demoDelete__8daE_FZ_cFv.s +++ /dev/null @@ -1,29 +0,0 @@ -lbl_806C0B20: -/* 806C0B20 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 806C0B24 7C 08 02 A6 */ mflr r0 -/* 806C0B28 90 01 00 24 */ stw r0, 0x24(r1) -/* 806C0B2C 39 61 00 20 */ addi r11, r1, 0x20 -/* 806C0B30 4B CA 16 A9 */ bl _savegpr_28 -/* 806C0B34 7C 7C 1B 78 */ mr r28, r3 -/* 806C0B38 3B A0 00 00 */ li r29, 0 -/* 806C0B3C 3B E0 00 00 */ li r31, 0 -/* 806C0B40 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 806C0B44 3B C3 61 C0 */ addi r30, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -lbl_806C0B48: -/* 806C0B48 80 7E 5D 3C */ lwz r3, 0x5d3c(r30) -/* 806C0B4C 38 63 02 10 */ addi r3, r3, 0x210 -/* 806C0B50 38 1F 07 1C */ addi r0, r31, 0x71c -/* 806C0B54 7C 9C 00 2E */ lwzx r4, r28, r0 -/* 806C0B58 4B 98 AD 5D */ bl forceOnEventMove__Q213dPa_control_c7level_cFUl -/* 806C0B5C 3B BD 00 01 */ addi r29, r29, 1 -/* 806C0B60 2C 1D 00 03 */ cmpwi r29, 3 -/* 806C0B64 3B FF 00 04 */ addi r31, r31, 4 -/* 806C0B68 41 80 FF E0 */ blt lbl_806C0B48 -/* 806C0B6C 7F 83 E3 78 */ mr r3, r28 -/* 806C0B70 4B 95 91 0D */ bl fopAcM_delete__FP10fopAc_ac_c -/* 806C0B74 39 61 00 20 */ addi r11, r1, 0x20 -/* 806C0B78 4B CA 16 AD */ bl _restgpr_28 -/* 806C0B7C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 806C0B80 7C 08 03 A6 */ mtlr r0 -/* 806C0B84 38 21 00 20 */ addi r1, r1, 0x20 -/* 806C0B88 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/mBoundSoundset__8daE_FZ_cFv.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/mBoundSoundset__8daE_FZ_cFv.s deleted file mode 100644 index cef15e4172..0000000000 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/mBoundSoundset__8daE_FZ_cFv.s +++ /dev/null @@ -1,28 +0,0 @@ -lbl_806BEBA0: -/* 806BEBA0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 806BEBA4 7C 08 02 A6 */ mflr r0 -/* 806BEBA8 90 01 00 24 */ stw r0, 0x24(r1) -/* 806BEBAC 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 806BEBB0 7C 7F 1B 78 */ mr r31, r3 -/* 806BEBB4 C0 23 05 2C */ lfs f1, 0x52c(r3) -/* 806BEBB8 4B CA 34 F5 */ bl __cvt_fp2unsigned -/* 806BEBBC 7C 65 1B 78 */ mr r5, r3 -/* 806BEBC0 28 05 00 01 */ cmplwi r5, 1 -/* 806BEBC4 40 80 00 08 */ bge lbl_806BEBCC -/* 806BEBC8 38 A0 00 01 */ li r5, 1 -lbl_806BEBCC: -/* 806BEBCC 3C 60 00 07 */ lis r3, 0x0007 /* 0x00070320@ha */ -/* 806BEBD0 38 03 03 20 */ addi r0, r3, 0x0320 /* 0x00070320@l */ -/* 806BEBD4 90 01 00 08 */ stw r0, 8(r1) -/* 806BEBD8 38 7F 05 C0 */ addi r3, r31, 0x5c0 -/* 806BEBDC 38 81 00 08 */ addi r4, r1, 8 -/* 806BEBE0 38 C0 FF FF */ li r6, -1 -/* 806BEBE4 81 9F 05 C0 */ lwz r12, 0x5c0(r31) -/* 806BEBE8 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 806BEBEC 7D 89 03 A6 */ mtctr r12 -/* 806BEBF0 4E 80 04 21 */ bctrl -/* 806BEBF4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 806BEBF8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 806BEBFC 7C 08 03 A6 */ mtlr r0 -/* 806BEC00 38 21 00 20 */ addi r1, r1, 0x20 -/* 806BEC04 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/mtx_set__8daE_FZ_cFv.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/mtx_set__8daE_FZ_cFv.s deleted file mode 100644 index c21d05f705..0000000000 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/mtx_set__8daE_FZ_cFv.s +++ /dev/null @@ -1,34 +0,0 @@ -lbl_806C06DC: -/* 806C06DC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 806C06E0 7C 08 02 A6 */ mflr r0 -/* 806C06E4 90 01 00 14 */ stw r0, 0x14(r1) -/* 806C06E8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 806C06EC 7C 7F 1B 78 */ mr r31, r3 -/* 806C06F0 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 806C06F4 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 806C06F8 C0 3F 04 D0 */ lfs f1, 0x4d0(r31) -/* 806C06FC C0 5F 04 D4 */ lfs f2, 0x4d4(r31) -/* 806C0700 C0 7F 04 D8 */ lfs f3, 0x4d8(r31) -/* 806C0704 4B C8 61 E5 */ bl PSMTXTrans -/* 806C0708 38 7F 04 E4 */ addi r3, r31, 0x4e4 -/* 806C070C 4B 94 C8 39 */ bl ZXYrotM__14mDoMtx_stack_cFRC5csXyz -/* 806C0710 3C 60 80 6C */ lis r3, l_HIO@ha /* 0x806C1BB0@ha */ -/* 806C0714 38 63 1B B0 */ addi r3, r3, l_HIO@l /* 0x806C1BB0@l */ -/* 806C0718 C0 23 00 0C */ lfs f1, 0xc(r3) -/* 806C071C FC 40 08 90 */ fmr f2, f1 -/* 806C0720 FC 60 08 90 */ fmr f3, f1 -/* 806C0724 4B 94 C7 15 */ bl scaleM__14mDoMtx_stack_cFfff -/* 806C0728 C0 3F 07 00 */ lfs f1, 0x700(r31) -/* 806C072C FC 40 08 90 */ fmr f2, f1 -/* 806C0730 FC 60 08 90 */ fmr f3, f1 -/* 806C0734 4B 94 C7 05 */ bl scaleM__14mDoMtx_stack_cFfff -/* 806C0738 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 806C073C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 806C0740 80 9F 05 B4 */ lwz r4, 0x5b4(r31) -/* 806C0744 38 84 00 24 */ addi r4, r4, 0x24 -/* 806C0748 4B C8 5D 69 */ bl PSMTXCopy -/* 806C074C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 806C0750 80 01 00 14 */ lwz r0, 0x14(r1) -/* 806C0754 7C 08 03 A6 */ mtlr r0 -/* 806C0758 38 21 00 10 */ addi r1, r1, 0x10 -/* 806C075C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/setActionMode__8daE_FZ_cFii.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/setActionMode__8daE_FZ_cFii.s deleted file mode 100644 index 2e673c1d53..0000000000 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/setActionMode__8daE_FZ_cFii.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_806BEAF8: -/* 806BEAF8 90 83 06 F4 */ stw r4, 0x6f4(r3) -/* 806BEAFC 90 A3 06 F8 */ stw r5, 0x6f8(r3) -/* 806BEB00 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/setReflectAngle__8daE_FZ_cFv.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/setReflectAngle__8daE_FZ_cFv.s deleted file mode 100644 index 04310aa63a..0000000000 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/setReflectAngle__8daE_FZ_cFv.s +++ /dev/null @@ -1,43 +0,0 @@ -lbl_806BEB04: -/* 806BEB04 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 806BEB08 7C 08 02 A6 */ mflr r0 -/* 806BEB0C 90 01 00 14 */ stw r0, 0x14(r1) -/* 806BEB10 93 E1 00 0C */ stw r31, 0xc(r1) -/* 806BEB14 93 C1 00 08 */ stw r30, 8(r1) -/* 806BEB18 7C 7E 1B 78 */ mr r30, r3 -/* 806BEB1C A8 63 07 08 */ lha r3, 0x708(r3) -/* 806BEB20 A8 1E 04 DE */ lha r0, 0x4de(r30) -/* 806BEB24 7C 03 00 50 */ subf r0, r3, r0 -/* 806BEB28 7C 1F 07 34 */ extsh r31, r0 -/* 806BEB2C 7F E3 FB 78 */ mr r3, r31 -/* 806BEB30 4B CA 65 A1 */ bl abs -/* 806BEB34 2C 03 48 00 */ cmpwi r3, 0x4800 -/* 806BEB38 40 81 00 24 */ ble lbl_806BEB5C -/* 806BEB3C A8 7E 04 DE */ lha r3, 0x4de(r30) -/* 806BEB40 3C 63 00 01 */ addis r3, r3, 1 -/* 806BEB44 38 63 80 00 */ addi r3, r3, -32768 -/* 806BEB48 A8 1E 07 08 */ lha r0, 0x708(r30) -/* 806BEB4C 54 00 08 3C */ slwi r0, r0, 1 -/* 806BEB50 7C 03 00 50 */ subf r0, r3, r0 -/* 806BEB54 B0 1E 04 DE */ sth r0, 0x4de(r30) -/* 806BEB58 48 00 00 30 */ b lbl_806BEB88 -lbl_806BEB5C: -/* 806BEB5C 2C 1F 38 00 */ cmpwi r31, 0x3800 -/* 806BEB60 40 81 00 14 */ ble lbl_806BEB74 -/* 806BEB64 A8 7E 07 08 */ lha r3, 0x708(r30) -/* 806BEB68 38 03 38 00 */ addi r0, r3, 0x3800 -/* 806BEB6C B0 1E 04 DE */ sth r0, 0x4de(r30) -/* 806BEB70 48 00 00 18 */ b lbl_806BEB88 -lbl_806BEB74: -/* 806BEB74 2C 1F C8 00 */ cmpwi r31, -14336 -/* 806BEB78 40 80 00 10 */ bge lbl_806BEB88 -/* 806BEB7C A8 7E 07 08 */ lha r3, 0x708(r30) -/* 806BEB80 38 03 C8 00 */ addi r0, r3, -14336 -/* 806BEB84 B0 1E 04 DE */ sth r0, 0x4de(r30) -lbl_806BEB88: -/* 806BEB88 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 806BEB8C 83 C1 00 08 */ lwz r30, 8(r1) -/* 806BEB90 80 01 00 14 */ lwz r0, 0x14(r1) -/* 806BEB94 7C 08 03 A6 */ mtlr r0 -/* 806BEB98 38 21 00 10 */ addi r1, r1, 0x10 -/* 806BEB9C 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/useHeapInit__FP10fopAc_ac_c.s b/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/useHeapInit__FP10fopAc_ac_c.s deleted file mode 100644 index 201a52465c..0000000000 --- a/asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/useHeapInit__FP10fopAc_ac_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_806C0CB0: -/* 806C0CB0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 806C0CB4 7C 08 02 A6 */ mflr r0 -/* 806C0CB8 90 01 00 14 */ stw r0, 0x14(r1) -/* 806C0CBC 4B FF FF 6D */ bl CreateHeap__8daE_FZ_cFv -/* 806C0CC0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 806C0CC4 7C 08 03 A6 */ mtlr r0 -/* 806C0CC8 38 21 00 10 */ addi r1, r1, 0x10 -/* 806C0CCC 4E 80 00 20 */ blr diff --git a/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-darkmode-toggle.js b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-darkmode-toggle.js new file mode 100644 index 0000000000..40fe2d38e0 --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-darkmode-toggle.js @@ -0,0 +1,157 @@ +/** + +Doxygen Awesome +https://github.com/jothepro/doxygen-awesome-css + +MIT License + +Copyright (c) 2021 - 2023 jothepro + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +*/ + +class DoxygenAwesomeDarkModeToggle extends HTMLElement { + // SVG icons from https://fonts.google.com/icons + // Licensed under the Apache 2.0 license: + // https://www.apache.org/licenses/LICENSE-2.0.html + static lightModeIcon = `` + static darkModeIcon = `` + static title = "Toggle Light/Dark Mode" + + static prefersLightModeInDarkModeKey = "prefers-light-mode-in-dark-mode" + static prefersDarkModeInLightModeKey = "prefers-dark-mode-in-light-mode" + + static _staticConstructor = function() { + DoxygenAwesomeDarkModeToggle.enableDarkMode(DoxygenAwesomeDarkModeToggle.userPreference) + // Update the color scheme when the browsers preference changes + // without user interaction on the website. + window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', event => { + DoxygenAwesomeDarkModeToggle.onSystemPreferenceChanged() + }) + // Update the color scheme when the tab is made visible again. + // It is possible that the appearance was changed in another tab + // while this tab was in the background. + document.addEventListener("visibilitychange", visibilityState => { + if (document.visibilityState === 'visible') { + DoxygenAwesomeDarkModeToggle.onSystemPreferenceChanged() + } + }); + }() + + static init() { + $(function() { + $(document).ready(function() { + const toggleButton = document.createElement('doxygen-awesome-dark-mode-toggle') + toggleButton.title = DoxygenAwesomeDarkModeToggle.title + toggleButton.updateIcon() + + window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', event => { + toggleButton.updateIcon() + }) + document.addEventListener("visibilitychange", visibilityState => { + if (document.visibilityState === 'visible') { + toggleButton.updateIcon() + } + }); + + $(document).ready(function(){ + document.getElementById("MSearchBox").parentNode.appendChild(toggleButton) + }) + $(window).resize(function(){ + document.getElementById("MSearchBox").parentNode.appendChild(toggleButton) + }) + }) + }) + } + + constructor() { + super(); + this.onclick=this.toggleDarkMode + } + + /** + * @returns `true` for dark-mode, `false` for light-mode system preference + */ + static get systemPreference() { + return window.matchMedia('(prefers-color-scheme: dark)').matches + } + + /** + * @returns `true` for dark-mode, `false` for light-mode user preference + */ + static get userPreference() { + return (!DoxygenAwesomeDarkModeToggle.systemPreference && localStorage.getItem(DoxygenAwesomeDarkModeToggle.prefersDarkModeInLightModeKey)) || + (DoxygenAwesomeDarkModeToggle.systemPreference && !localStorage.getItem(DoxygenAwesomeDarkModeToggle.prefersLightModeInDarkModeKey)) + } + + static set userPreference(userPreference) { + DoxygenAwesomeDarkModeToggle.darkModeEnabled = userPreference + if(!userPreference) { + if(DoxygenAwesomeDarkModeToggle.systemPreference) { + localStorage.setItem(DoxygenAwesomeDarkModeToggle.prefersLightModeInDarkModeKey, true) + } else { + localStorage.removeItem(DoxygenAwesomeDarkModeToggle.prefersDarkModeInLightModeKey) + } + } else { + if(!DoxygenAwesomeDarkModeToggle.systemPreference) { + localStorage.setItem(DoxygenAwesomeDarkModeToggle.prefersDarkModeInLightModeKey, true) + } else { + localStorage.removeItem(DoxygenAwesomeDarkModeToggle.prefersLightModeInDarkModeKey) + } + } + DoxygenAwesomeDarkModeToggle.onUserPreferenceChanged() + } + + static enableDarkMode(enable) { + if(enable) { + DoxygenAwesomeDarkModeToggle.darkModeEnabled = true + document.documentElement.classList.add("dark-mode") + document.documentElement.classList.remove("light-mode") + } else { + DoxygenAwesomeDarkModeToggle.darkModeEnabled = false + document.documentElement.classList.remove("dark-mode") + document.documentElement.classList.add("light-mode") + } + } + + static onSystemPreferenceChanged() { + DoxygenAwesomeDarkModeToggle.darkModeEnabled = DoxygenAwesomeDarkModeToggle.userPreference + DoxygenAwesomeDarkModeToggle.enableDarkMode(DoxygenAwesomeDarkModeToggle.darkModeEnabled) + } + + static onUserPreferenceChanged() { + DoxygenAwesomeDarkModeToggle.enableDarkMode(DoxygenAwesomeDarkModeToggle.darkModeEnabled) + } + + toggleDarkMode() { + DoxygenAwesomeDarkModeToggle.userPreference = !DoxygenAwesomeDarkModeToggle.userPreference + this.updateIcon() + } + + updateIcon() { + if(DoxygenAwesomeDarkModeToggle.darkModeEnabled) { + this.innerHTML = DoxygenAwesomeDarkModeToggle.darkModeIcon + } else { + this.innerHTML = DoxygenAwesomeDarkModeToggle.lightModeIcon + } + } +} + +customElements.define("doxygen-awesome-dark-mode-toggle", DoxygenAwesomeDarkModeToggle); diff --git a/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-fragment-copy-button.js b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-fragment-copy-button.js new file mode 100644 index 0000000000..86c16fd93a --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-fragment-copy-button.js @@ -0,0 +1,85 @@ +/** + +Doxygen Awesome +https://github.com/jothepro/doxygen-awesome-css + +MIT License + +Copyright (c) 2022 - 2023 jothepro + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +*/ + +class DoxygenAwesomeFragmentCopyButton extends HTMLElement { + constructor() { + super(); + this.onclick=this.copyContent + } + static title = "Copy to clipboard" + static copyIcon = `` + static successIcon = `` + static successDuration = 980 + static init() { + $(function() { + $(document).ready(function() { + if(navigator.clipboard) { + const fragments = document.getElementsByClassName("fragment") + for(const fragment of fragments) { + const fragmentWrapper = document.createElement("div") + fragmentWrapper.className = "doxygen-awesome-fragment-wrapper" + const fragmentCopyButton = document.createElement("doxygen-awesome-fragment-copy-button") + fragmentCopyButton.innerHTML = DoxygenAwesomeFragmentCopyButton.copyIcon + fragmentCopyButton.title = DoxygenAwesomeFragmentCopyButton.title + + fragment.parentNode.replaceChild(fragmentWrapper, fragment) + fragmentWrapper.appendChild(fragment) + fragmentWrapper.appendChild(fragmentCopyButton) + + } + } + }) + }) + } + + + copyContent() { + const content = this.previousSibling.cloneNode(true) + // filter out line number from file listings + content.querySelectorAll(".lineno, .ttc").forEach((node) => { + node.remove() + }) + let textContent = content.textContent + // remove trailing newlines that appear in file listings + let numberOfTrailingNewlines = 0 + while(textContent.charAt(textContent.length - (numberOfTrailingNewlines + 1)) == '\n') { + numberOfTrailingNewlines++; + } + textContent = textContent.substring(0, textContent.length - numberOfTrailingNewlines) + navigator.clipboard.writeText(textContent); + this.classList.add("success") + this.innerHTML = DoxygenAwesomeFragmentCopyButton.successIcon + window.setTimeout(() => { + this.classList.remove("success") + this.innerHTML = DoxygenAwesomeFragmentCopyButton.copyIcon + }, DoxygenAwesomeFragmentCopyButton.successDuration); + } +} + +customElements.define("doxygen-awesome-fragment-copy-button", DoxygenAwesomeFragmentCopyButton) diff --git a/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-interactive-toc.js b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-interactive-toc.js new file mode 100644 index 0000000000..20a9669d7d --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-interactive-toc.js @@ -0,0 +1,81 @@ +/** + +Doxygen Awesome +https://github.com/jothepro/doxygen-awesome-css + +MIT License + +Copyright (c) 2022 - 2023 jothepro + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +*/ + +class DoxygenAwesomeInteractiveToc { + static topOffset = 38 + static hideMobileMenu = true + static headers = [] + + static init() { + window.addEventListener("load", () => { + let toc = document.querySelector(".contents > .toc") + if(toc) { + toc.classList.add("interactive") + if(!DoxygenAwesomeInteractiveToc.hideMobileMenu) { + toc.classList.add("open") + } + document.querySelector(".contents > .toc > h3")?.addEventListener("click", () => { + if(toc.classList.contains("open")) { + toc.classList.remove("open") + } else { + toc.classList.add("open") + } + }) + + document.querySelectorAll(".contents > .toc > ul a").forEach((node) => { + let id = node.getAttribute("href").substring(1) + DoxygenAwesomeInteractiveToc.headers.push({ + node: node, + headerNode: document.getElementById(id) + }) + + document.getElementById("doc-content")?.addEventListener("scroll", () => { + DoxygenAwesomeInteractiveToc.update() + }) + }) + DoxygenAwesomeInteractiveToc.update() + } + }) + } + + static update() { + let active = DoxygenAwesomeInteractiveToc.headers[0]?.node + DoxygenAwesomeInteractiveToc.headers.forEach((header) => { + let position = header.headerNode.getBoundingClientRect().top + header.node.classList.remove("active") + header.node.classList.remove("aboveActive") + if(position < DoxygenAwesomeInteractiveToc.topOffset) { + active = header.node + active?.classList.add("aboveActive") + } + }) + active?.classList.add("active") + active?.classList.remove("aboveActive") + } +} \ No newline at end of file diff --git a/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-paragraph-link.js b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-paragraph-link.js new file mode 100644 index 0000000000..e53d132cea --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-paragraph-link.js @@ -0,0 +1,51 @@ +/** + +Doxygen Awesome +https://github.com/jothepro/doxygen-awesome-css + +MIT License + +Copyright (c) 2022 - 2023 jothepro + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +*/ + +class DoxygenAwesomeParagraphLink { + // Icon from https://fonts.google.com/icons + // Licensed under the Apache 2.0 license: + // https://www.apache.org/licenses/LICENSE-2.0.html + static icon = `` + static title = "Permanent Link" + static init() { + $(function() { + $(document).ready(function() { + document.querySelectorAll(".contents a.anchor[id], .contents .groupheader > a[id]").forEach((node) => { + let anchorlink = document.createElement("a") + anchorlink.setAttribute("href", `#${node.getAttribute("id")}`) + anchorlink.setAttribute("title", DoxygenAwesomeParagraphLink.title) + anchorlink.classList.add("anchorlink") + node.classList.add("anchor") + anchorlink.innerHTML = DoxygenAwesomeParagraphLink.icon + node.parentElement.appendChild(anchorlink) + }) + }) + }) + } +} diff --git a/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-sidebar-only-darkmode-toggle.css b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-sidebar-only-darkmode-toggle.css new file mode 100644 index 0000000000..d207446e0b --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-sidebar-only-darkmode-toggle.css @@ -0,0 +1,40 @@ + +/** + +Doxygen Awesome +https://github.com/jothepro/doxygen-awesome-css + +MIT License + +Copyright (c) 2021 - 2023 jothepro + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +*/ + +@media screen and (min-width: 768px) { + + #MSearchBox { + width: calc(var(--side-nav-fixed-width) - calc(2 * var(--spacing-medium)) - var(--searchbar-height) - 1px); + } + + #MSearchField { + width: calc(var(--side-nav-fixed-width) - calc(2 * var(--spacing-medium)) - 66px - var(--searchbar-height)); + } +} diff --git a/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-sidebar-only.css b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-sidebar-only.css new file mode 100644 index 0000000000..853f6d6926 --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-sidebar-only.css @@ -0,0 +1,116 @@ +/** + +Doxygen Awesome +https://github.com/jothepro/doxygen-awesome-css + +MIT License + +Copyright (c) 2021 - 2023 jothepro + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + */ + +html { + /* side nav width. MUST be = `TREEVIEW_WIDTH`. + * Make sure it is wide enough to contain the page title (logo + title + version) + */ + --side-nav-fixed-width: 335px; + --menu-display: none; + + --top-height: 120px; + --toc-sticky-top: -25px; + --toc-max-height: calc(100vh - 2 * var(--spacing-medium) - 25px); +} + +#projectname { + white-space: nowrap; +} + + +@media screen and (min-width: 768px) { + html { + --searchbar-background: var(--page-background-color); + } + + #side-nav { + min-width: var(--side-nav-fixed-width); + max-width: var(--side-nav-fixed-width); + top: var(--top-height); + overflow: visible; + } + + #nav-tree, #side-nav { + height: calc(100vh - var(--top-height)) !important; + } + + #nav-tree { + padding: 0; + } + + #top { + display: block; + border-bottom: none; + height: var(--top-height); + margin-bottom: calc(0px - var(--top-height)); + max-width: var(--side-nav-fixed-width); + overflow: hidden; + background: var(--side-nav-background); + } + #main-nav { + float: left; + padding-right: 0; + } + + .ui-resizable-handle { + cursor: default; + width: 1px !important; + background: var(--separator-color); + box-shadow: 0 calc(-2 * var(--top-height)) 0 0 var(--separator-color); + } + + #nav-path { + position: fixed; + right: 0; + left: var(--side-nav-fixed-width); + bottom: 0; + width: auto; + } + + #doc-content { + height: calc(100vh - 31px) !important; + padding-bottom: calc(3 * var(--spacing-large)); + padding-top: calc(var(--top-height) - 80px); + box-sizing: border-box; + margin-left: var(--side-nav-fixed-width) !important; + } + + #MSearchBox { + width: calc(var(--side-nav-fixed-width) - calc(2 * var(--spacing-medium))); + } + + #MSearchField { + width: calc(var(--side-nav-fixed-width) - calc(2 * var(--spacing-medium)) - 65px); + } + + #MSearchResultsWindow { + left: var(--spacing-medium) !important; + right: auto; + } +} diff --git a/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-tabs.js b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-tabs.js new file mode 100644 index 0000000000..06dfd3d66f --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome-tabs.js @@ -0,0 +1,90 @@ +/** + +Doxygen Awesome +https://github.com/jothepro/doxygen-awesome-css + +MIT License + +Copyright (c) 2023 jothepro + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +*/ + +class DoxygenAwesomeTabs { + + static init() { + window.addEventListener("load", () => { + document.querySelectorAll(".tabbed:not(:empty)").forEach((tabbed, tabbedIndex) => { + let tabLinkList = [] + tabbed.querySelectorAll(":scope > ul > li").forEach((tab, tabIndex) => { + tab.id = "tab_" + tabbedIndex + "_" + tabIndex + let header = tab.querySelector(".tab-title") + let tabLink = document.createElement("button") + tabLink.classList.add("tab-button") + tabLink.appendChild(header) + header.title = header.textContent + tabLink.addEventListener("click", () => { + tabbed.querySelectorAll(":scope > ul > li").forEach((tab) => { + tab.classList.remove("selected") + }) + tabLinkList.forEach((tabLink) => { + tabLink.classList.remove("active") + }) + tab.classList.add("selected") + tabLink.classList.add("active") + }) + tabLinkList.push(tabLink) + if(tabIndex == 0) { + tab.classList.add("selected") + tabLink.classList.add("active") + } + }) + let tabsOverview = document.createElement("div") + tabsOverview.classList.add("tabs-overview") + let tabsOverviewContainer = document.createElement("div") + tabsOverviewContainer.classList.add("tabs-overview-container") + tabLinkList.forEach((tabLink) => { + tabsOverview.appendChild(tabLink) + }) + tabsOverviewContainer.appendChild(tabsOverview) + tabbed.before(tabsOverviewContainer) + + function resize() { + let maxTabHeight = 0 + tabbed.querySelectorAll(":scope > ul > li").forEach((tab, tabIndex) => { + let visibility = tab.style.display + tab.style.display = "block" + maxTabHeight = Math.max(tab.offsetHeight, maxTabHeight) + tab.style.display = visibility + }) + tabbed.style.height = `${maxTabHeight + 10}px` + } + + resize() + new ResizeObserver(resize).observe(tabbed) + }) + }) + + } + + static resize(tabbed) { + + } +} \ No newline at end of file diff --git a/docs/doxygen-awesome-css-2.3.2/doxygen-awesome.css b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome.css new file mode 100644 index 0000000000..a44945b366 --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/doxygen-awesome.css @@ -0,0 +1,2675 @@ +/** + +Doxygen Awesome +https://github.com/jothepro/doxygen-awesome-css + +MIT License + +Copyright (c) 2021 - 2023 jothepro + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +*/ + +html { + /* primary theme color. This will affect the entire websites color scheme: links, arrows, labels, ... */ + --primary-color: #1779c4; + --primary-dark-color: #335c80; + --primary-light-color: #70b1e9; + + /* page base colors */ + --page-background-color: #ffffff; + --page-foreground-color: #2f4153; + --page-secondary-foreground-color: #6f7e8e; + + /* color for all separators on the website: hr, borders, ... */ + --separator-color: #dedede; + + /* border radius for all rounded components. Will affect many components, like dropdowns, memitems, codeblocks, ... */ + --border-radius-large: 8px; + --border-radius-small: 4px; + --border-radius-medium: 6px; + + /* default spacings. Most components reference these values for spacing, to provide uniform spacing on the page. */ + --spacing-small: 5px; + --spacing-medium: 10px; + --spacing-large: 16px; + + /* default box shadow used for raising an element above the normal content. Used in dropdowns, search result, ... */ + --box-shadow: 0 2px 8px 0 rgba(0,0,0,.075); + + --odd-color: rgba(0,0,0,.028); + + /* font-families. will affect all text on the website + * font-family: the normal font for text, headlines, menus + * font-family-monospace: used for preformatted text in memtitle, code, fragments + */ + --font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif; + --font-family-monospace: ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace; + + /* font sizes */ + --page-font-size: 15.6px; + --navigation-font-size: 14.4px; + --toc-font-size: 13.4px; + --code-font-size: 14px; /* affects code, fragment */ + --title-font-size: 22px; + + /* content text properties. These only affect the page content, not the navigation or any other ui elements */ + --content-line-height: 27px; + /* The content is centered and constraint in it's width. To make the content fill the whole page, set the variable to auto.*/ + --content-maxwidth: 1050px; + --table-line-height: 24px; + --toc-sticky-top: var(--spacing-medium); + --toc-width: 200px; + --toc-max-height: calc(100vh - 2 * var(--spacing-medium) - 85px); + + /* colors for various content boxes: @warning, @note, @deprecated @bug */ + --warning-color: #faf3d8; + --warning-color-dark: #f3a600; + --warning-color-darker: #5f4204; + --note-color: #e4f3ff; + --note-color-dark: #1879C4; + --note-color-darker: #274a5c; + --todo-color: #e4dafd; + --todo-color-dark: #5b2bdd; + --todo-color-darker: #2a0d72; + --deprecated-color: #ecf0f3; + --deprecated-color-dark: #5b6269; + --deprecated-color-darker: #43454a; + --bug-color: #f8d1cc; + --bug-color-dark: #b61825; + --bug-color-darker: #75070f; + --invariant-color: #d8f1e3; + --invariant-color-dark: #44b86f; + --invariant-color-darker: #265532; + + /* blockquote colors */ + --blockquote-background: #f8f9fa; + --blockquote-foreground: #636568; + + /* table colors */ + --tablehead-background: #f1f1f1; + --tablehead-foreground: var(--page-foreground-color); + + /* menu-display: block | none + * Visibility of the top navigation on screens >= 768px. On smaller screen the menu is always visible. + * `GENERATE_TREEVIEW` MUST be enabled! + */ + --menu-display: block; + + --menu-focus-foreground: var(--page-background-color); + --menu-focus-background: var(--primary-color); + --menu-selected-background: rgba(0,0,0,.05); + + + --header-background: var(--page-background-color); + --header-foreground: var(--page-foreground-color); + + /* searchbar colors */ + --searchbar-background: var(--side-nav-background); + --searchbar-foreground: var(--page-foreground-color); + + /* searchbar size + * (`searchbar-width` is only applied on screens >= 768px. + * on smaller screens the searchbar will always fill the entire screen width) */ + --searchbar-height: 33px; + --searchbar-width: 210px; + --searchbar-border-radius: var(--searchbar-height); + + /* code block colors */ + --code-background: #f5f5f5; + --code-foreground: var(--page-foreground-color); + + /* fragment colors */ + --fragment-background: #F8F9FA; + --fragment-foreground: #37474F; + --fragment-keyword: #bb6bb2; + --fragment-keywordtype: #8258b3; + --fragment-keywordflow: #d67c3b; + --fragment-token: #438a59; + --fragment-comment: #969696; + --fragment-link: #5383d6; + --fragment-preprocessor: #46aaa5; + --fragment-linenumber-color: #797979; + --fragment-linenumber-background: #f4f4f5; + --fragment-linenumber-border: #e3e5e7; + --fragment-lineheight: 20px; + + /* sidebar navigation (treeview) colors */ + --side-nav-background: #fbfbfb; + --side-nav-foreground: var(--page-foreground-color); + --side-nav-arrow-opacity: 0; + --side-nav-arrow-hover-opacity: 0.9; + + --toc-background: var(--side-nav-background); + --toc-foreground: var(--side-nav-foreground); + + /* height of an item in any tree / collapsible table */ + --tree-item-height: 30px; + + --memname-font-size: var(--code-font-size); + --memtitle-font-size: 18px; + + --webkit-scrollbar-size: 7px; + --webkit-scrollbar-padding: 4px; + --webkit-scrollbar-color: var(--separator-color); + + --animation-duration: .12s +} + +@media screen and (max-width: 767px) { + html { + --page-font-size: 16px; + --navigation-font-size: 16px; + --toc-font-size: 15px; + --code-font-size: 15px; /* affects code, fragment */ + --title-font-size: 22px; + } +} + +@media (prefers-color-scheme: dark) { + html:not(.light-mode) { + color-scheme: dark; + + --primary-color: #1982d2; + --primary-dark-color: #86a9c4; + --primary-light-color: #4779ac; + + --box-shadow: 0 2px 8px 0 rgba(0,0,0,.35); + + --odd-color: rgba(100,100,100,.06); + + --menu-selected-background: rgba(0,0,0,.4); + + --page-background-color: #1C1D1F; + --page-foreground-color: #d2dbde; + --page-secondary-foreground-color: #859399; + --separator-color: #38393b; + --side-nav-background: #252628; + + --code-background: #2a2c2f; + + --tablehead-background: #2a2c2f; + + --blockquote-background: #222325; + --blockquote-foreground: #7e8c92; + + --warning-color: #3b2e04; + --warning-color-dark: #f1b602; + --warning-color-darker: #ceb670; + --note-color: #163750; + --note-color-dark: #1982D2; + --note-color-darker: #dcf0fa; + --todo-color: #2a2536; + --todo-color-dark: #7661b3; + --todo-color-darker: #ae9ed6; + --deprecated-color: #2e323b; + --deprecated-color-dark: #738396; + --deprecated-color-darker: #abb0bd; + --bug-color: #2e1917; + --bug-color-dark: #ad2617; + --bug-color-darker: #f5b1aa; + --invariant-color: #303a35; + --invariant-color-dark: #76ce96; + --invariant-color-darker: #cceed5; + + --fragment-background: #282c34; + --fragment-foreground: #dbe4eb; + --fragment-keyword: #cc99cd; + --fragment-keywordtype: #ab99cd; + --fragment-keywordflow: #e08000; + --fragment-token: #7ec699; + --fragment-comment: #999999; + --fragment-link: #98c0e3; + --fragment-preprocessor: #65cabe; + --fragment-linenumber-color: #cccccc; + --fragment-linenumber-background: #35393c; + --fragment-linenumber-border: #1f1f1f; + } +} + +/* dark mode variables are defined twice, to support both the dark-mode without and with doxygen-awesome-darkmode-toggle.js */ +html.dark-mode { + color-scheme: dark; + + --primary-color: #1982d2; + --primary-dark-color: #86a9c4; + --primary-light-color: #4779ac; + + --box-shadow: 0 2px 8px 0 rgba(0,0,0,.30); + + --odd-color: rgba(100,100,100,.06); + + --menu-selected-background: rgba(0,0,0,.4); + + --page-background-color: #1C1D1F; + --page-foreground-color: #d2dbde; + --page-secondary-foreground-color: #859399; + --separator-color: #38393b; + --side-nav-background: #252628; + + --code-background: #2a2c2f; + + --tablehead-background: #2a2c2f; + + --blockquote-background: #222325; + --blockquote-foreground: #7e8c92; + + --warning-color: #3b2e04; + --warning-color-dark: #f1b602; + --warning-color-darker: #ceb670; + --note-color: #163750; + --note-color-dark: #1982D2; + --note-color-darker: #dcf0fa; + --todo-color: #2a2536; + --todo-color-dark: #7661b3; + --todo-color-darker: #ae9ed6; + --deprecated-color: #2e323b; + --deprecated-color-dark: #738396; + --deprecated-color-darker: #abb0bd; + --bug-color: #2e1917; + --bug-color-dark: #ad2617; + --bug-color-darker: #f5b1aa; + --invariant-color: #303a35; + --invariant-color-dark: #76ce96; + --invariant-color-darker: #cceed5; + + --fragment-background: #282c34; + --fragment-foreground: #dbe4eb; + --fragment-keyword: #cc99cd; + --fragment-keywordtype: #ab99cd; + --fragment-keywordflow: #e08000; + --fragment-token: #7ec699; + --fragment-comment: #999999; + --fragment-link: #98c0e3; + --fragment-preprocessor: #65cabe; + --fragment-linenumber-color: #cccccc; + --fragment-linenumber-background: #35393c; + --fragment-linenumber-border: #1f1f1f; +} + +body { + color: var(--page-foreground-color); + background-color: var(--page-background-color); + font-size: var(--page-font-size); +} + +body, table, div, p, dl, #nav-tree .label, .title, +.sm-dox a, .sm-dox a:hover, .sm-dox a:focus, #projectname, +.SelectItem, #MSearchField, .navpath li.navelem a, +.navpath li.navelem a:hover, p.reference, p.definition, div.toc li, div.toc h3 { + font-family: var(--font-family); +} + +h1, h2, h3, h4, h5 { + margin-top: 1em; + font-weight: 600; + line-height: initial; +} + +p, div, table, dl, p.reference, p.definition { + font-size: var(--page-font-size); +} + +p.reference, p.definition { + color: var(--page-secondary-foreground-color); +} + +a:link, a:visited, a:hover, a:focus, a:active { + color: var(--primary-color) !important; + font-weight: 500; + background: none; +} + +a.anchor { + scroll-margin-top: var(--spacing-large); + display: block; +} + +/* + Title and top navigation + */ + +#top { + background: var(--header-background); + border-bottom: 1px solid var(--separator-color); +} + +@media screen and (min-width: 768px) { + #top { + display: flex; + flex-wrap: wrap; + justify-content: space-between; + align-items: center; + } +} + +#main-nav { + flex-grow: 5; + padding: var(--spacing-small) var(--spacing-medium); +} + +#titlearea { + width: auto; + padding: var(--spacing-medium) var(--spacing-large); + background: none; + color: var(--header-foreground); + border-bottom: none; +} + +@media screen and (max-width: 767px) { + #titlearea { + padding-bottom: var(--spacing-small); + } +} + +#titlearea table tbody tr { + height: auto !important; +} + +#projectname { + font-size: var(--title-font-size); + font-weight: 600; +} + +#projectnumber { + font-family: inherit; + font-size: 60%; +} + +#projectbrief { + font-family: inherit; + font-size: 80%; +} + +#projectlogo { + vertical-align: middle; +} + +#projectlogo img { + max-height: calc(var(--title-font-size) * 2); + margin-right: var(--spacing-small); +} + +.sm-dox, .tabs, .tabs2, .tabs3 { + background: none; + padding: 0; +} + +.tabs, .tabs2, .tabs3 { + border-bottom: 1px solid var(--separator-color); + margin-bottom: -1px; +} + +.main-menu-btn-icon, .main-menu-btn-icon:before, .main-menu-btn-icon:after { + background: var(--page-secondary-foreground-color); +} + +@media screen and (max-width: 767px) { + .sm-dox a span.sub-arrow { + background: var(--code-background); + } + + #main-menu a.has-submenu span.sub-arrow { + color: var(--page-secondary-foreground-color); + border-radius: var(--border-radius-medium); + } + + #main-menu a.has-submenu:hover span.sub-arrow { + color: var(--page-foreground-color); + } +} + +@media screen and (min-width: 768px) { + .sm-dox li, .tablist li { + display: var(--menu-display); + } + + .sm-dox a span.sub-arrow { + border-color: var(--header-foreground) transparent transparent transparent; + } + + .sm-dox a:hover span.sub-arrow { + border-color: var(--menu-focus-foreground) transparent transparent transparent; + } + + .sm-dox ul a span.sub-arrow { + border-color: transparent transparent transparent var(--page-foreground-color); + } + + .sm-dox ul a:hover span.sub-arrow { + border-color: transparent transparent transparent var(--menu-focus-foreground); + } +} + +.sm-dox ul { + background: var(--page-background-color); + box-shadow: var(--box-shadow); + border: 1px solid var(--separator-color); + border-radius: var(--border-radius-medium) !important; + padding: var(--spacing-small); + animation: ease-out 150ms slideInMenu; +} + +@keyframes slideInMenu { + from { + opacity: 0; + transform: translate(0px, -2px); + } + + to { + opacity: 1; + transform: translate(0px, 0px); + } +} + +.sm-dox ul a { + color: var(--page-foreground-color) !important; + background: var(--page-background-color); + font-size: var(--navigation-font-size); +} + +.sm-dox>li>ul:after { + border-bottom-color: var(--page-background-color) !important; +} + +.sm-dox>li>ul:before { + border-bottom-color: var(--separator-color) !important; +} + +.sm-dox ul a:hover, .sm-dox ul a:active, .sm-dox ul a:focus { + font-size: var(--navigation-font-size) !important; + color: var(--menu-focus-foreground) !important; + text-shadow: none; + background-color: var(--menu-focus-background); + border-radius: var(--border-radius-small) !important; +} + +.sm-dox a, .sm-dox a:focus, .tablist li, .tablist li a, .tablist li.current a { + text-shadow: none; + background: transparent; + background-image: none !important; + color: var(--header-foreground) !important; + font-weight: normal; + font-size: var(--navigation-font-size); + border-radius: var(--border-radius-small) !important; +} + +.sm-dox a:focus { + outline: auto; +} + +.sm-dox a:hover, .sm-dox a:active, .tablist li a:hover { + text-shadow: none; + font-weight: normal; + background: var(--menu-focus-background); + color: var(--menu-focus-foreground) !important; + border-radius: var(--border-radius-small) !important; + font-size: var(--navigation-font-size); +} + +.tablist li.current { + border-radius: var(--border-radius-small); + background: var(--menu-selected-background); +} + +.tablist li { + margin: var(--spacing-small) 0 var(--spacing-small) var(--spacing-small); +} + +.tablist a { + padding: 0 var(--spacing-large); +} + + +/* + Search box + */ + +#MSearchBox { + height: var(--searchbar-height); + background: var(--searchbar-background); + border-radius: var(--searchbar-border-radius); + border: 1px solid var(--separator-color); + overflow: hidden; + width: var(--searchbar-width); + position: relative; + box-shadow: none; + display: block; + margin-top: 0; +} + +/* until Doxygen 1.9.4 */ +.left img#MSearchSelect { + left: 0; + user-select: none; + padding-left: 8px; +} + +/* Doxygen 1.9.5 */ +.left span#MSearchSelect { + left: 0; + user-select: none; + margin-left: 8px; + padding: 0; +} + +.left #MSearchSelect[src$=".png"] { + padding-left: 0 +} + +.SelectionMark { + user-select: none; +} + +.tabs .left #MSearchSelect { + padding-left: 0; +} + +.tabs #MSearchBox { + position: absolute; + right: var(--spacing-medium); +} + +@media screen and (max-width: 767px) { + .tabs #MSearchBox { + position: relative; + right: 0; + margin-left: var(--spacing-medium); + margin-top: 0; + } +} + +#MSearchSelectWindow, #MSearchResultsWindow { + z-index: 9999; +} + +#MSearchBox.MSearchBoxActive { + border-color: var(--primary-color); + box-shadow: inset 0 0 0 1px var(--primary-color); +} + +#main-menu > li:last-child { + margin-right: 0; +} + +@media screen and (max-width: 767px) { + #main-menu > li:last-child { + height: 50px; + } +} + +#MSearchField { + font-size: var(--navigation-font-size); + height: calc(var(--searchbar-height) - 2px); + background: transparent; + width: calc(var(--searchbar-width) - 64px); +} + +.MSearchBoxActive #MSearchField { + color: var(--searchbar-foreground); +} + +#MSearchSelect { + top: calc(calc(var(--searchbar-height) / 2) - 11px); +} + +#MSearchBox span.left, #MSearchBox span.right { + background: none; + background-image: none; +} + +#MSearchBox span.right { + padding-top: calc(calc(var(--searchbar-height) / 2) - 12px); + position: absolute; + right: var(--spacing-small); +} + +.tabs #MSearchBox span.right { + top: calc(calc(var(--searchbar-height) / 2) - 12px); +} + +@keyframes slideInSearchResults { + from { + opacity: 0; + transform: translate(0, 15px); + } + + to { + opacity: 1; + transform: translate(0, 20px); + } +} + +#MSearchResultsWindow { + left: auto !important; + right: var(--spacing-medium); + border-radius: var(--border-radius-large); + border: 1px solid var(--separator-color); + transform: translate(0, 20px); + box-shadow: var(--box-shadow); + animation: ease-out 280ms slideInSearchResults; + background: var(--page-background-color); +} + +iframe#MSearchResults { + margin: 4px; +} + +iframe { + color-scheme: normal; +} + +@media (prefers-color-scheme: dark) { + html:not(.light-mode) iframe#MSearchResults { + filter: invert() hue-rotate(180deg); + } +} + +html.dark-mode iframe#MSearchResults { + filter: invert() hue-rotate(180deg); +} + +#MSearchResults .SRPage { + background-color: transparent; +} + +#MSearchResults .SRPage .SREntry { + font-size: 10pt; + padding: var(--spacing-small) var(--spacing-medium); +} + +#MSearchSelectWindow { + border: 1px solid var(--separator-color); + border-radius: var(--border-radius-medium); + box-shadow: var(--box-shadow); + background: var(--page-background-color); + padding-top: var(--spacing-small); + padding-bottom: var(--spacing-small); +} + +#MSearchSelectWindow a.SelectItem { + font-size: var(--navigation-font-size); + line-height: var(--content-line-height); + margin: 0 var(--spacing-small); + border-radius: var(--border-radius-small); + color: var(--page-foreground-color) !important; + font-weight: normal; +} + +#MSearchSelectWindow a.SelectItem:hover { + background: var(--menu-focus-background); + color: var(--menu-focus-foreground) !important; +} + +@media screen and (max-width: 767px) { + #MSearchBox { + margin-top: var(--spacing-medium); + margin-bottom: var(--spacing-medium); + width: calc(100vw - 30px); + } + + #main-menu > li:last-child { + float: none !important; + } + + #MSearchField { + width: calc(100vw - 110px); + } + + @keyframes slideInSearchResultsMobile { + from { + opacity: 0; + transform: translate(0, 15px); + } + + to { + opacity: 1; + transform: translate(0, 20px); + } + } + + #MSearchResultsWindow { + left: var(--spacing-medium) !important; + right: var(--spacing-medium); + overflow: auto; + transform: translate(0, 20px); + animation: ease-out 280ms slideInSearchResultsMobile; + width: auto !important; + } + + /* + * Overwrites for fixing the searchbox on mobile in doxygen 1.9.2 + */ + label.main-menu-btn ~ #searchBoxPos1 { + top: 3px !important; + right: 6px !important; + left: 45px; + display: flex; + } + + label.main-menu-btn ~ #searchBoxPos1 > #MSearchBox { + margin-top: 0; + margin-bottom: 0; + flex-grow: 2; + float: left; + } +} + +/* + Tree view + */ + +#side-nav { + padding: 0 !important; + background: var(--side-nav-background); + min-width: 8px; + max-width: 50vw; +} + +@media screen and (max-width: 767px) { + #side-nav { + display: none; + } + + #doc-content { + margin-left: 0 !important; + } +} + +#nav-tree { + background: transparent; + margin-right: 1px; +} + +#nav-tree .label { + font-size: var(--navigation-font-size); +} + +#nav-tree .item { + height: var(--tree-item-height); + line-height: var(--tree-item-height); +} + +#nav-tree .item > a:focus { + outline: none; +} + +#nav-sync { + bottom: 12px; + right: 12px; + top: auto !important; + user-select: none; +} + +#nav-tree .selected { + text-shadow: none; + background-image: none; + background-color: transparent; + position: relative; +} + +#nav-tree .selected::after { + content: ""; + position: absolute; + top: 1px; + bottom: 1px; + left: 0; + width: 4px; + border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0; + background: var(--primary-color); +} + + +#nav-tree a { + color: var(--side-nav-foreground) !important; + font-weight: normal; +} + +#nav-tree a:focus { + outline-style: auto; +} + +#nav-tree .arrow { + opacity: var(--side-nav-arrow-opacity); + background: none; +} + +.arrow { + color: inherit; + cursor: pointer; + font-size: 45%; + vertical-align: middle; + margin-right: 2px; + font-family: serif; + height: auto; + text-align: right; +} + +#nav-tree div.item:hover .arrow, #nav-tree a:focus .arrow { + opacity: var(--side-nav-arrow-hover-opacity); +} + +#nav-tree .selected a { + color: var(--primary-color) !important; + font-weight: bolder; + font-weight: 600; +} + +.ui-resizable-e { + width: 4px; + background: transparent; + box-shadow: inset -1px 0 0 0 var(--separator-color); +} + +/* + Contents + */ + +div.header { + border-bottom: 1px solid var(--separator-color); + background-color: var(--page-background-color); + background-image: none; +} + +@media screen and (min-width: 1000px) { + #doc-content > div > div.contents, + .PageDoc > div.contents { + display: flex; + flex-direction: row-reverse; + flex-wrap: nowrap; + align-items: flex-start; + } + + div.contents .textblock { + min-width: 200px; + flex-grow: 1; + } +} + +div.contents, div.header .title, div.header .summary { + max-width: var(--content-maxwidth); +} + +div.contents, div.header .title { + line-height: initial; + margin: calc(var(--spacing-medium) + .2em) auto var(--spacing-medium) auto; +} + +div.header .summary { + margin: var(--spacing-medium) auto 0 auto; +} + +div.headertitle { + padding: 0; +} + +div.header .title { + font-weight: 600; + font-size: 225%; + padding: var(--spacing-medium) var(--spacing-large); + word-break: break-word; +} + +div.header .summary { + width: auto; + display: block; + float: none; + padding: 0 var(--spacing-large); +} + +td.memSeparator { + border-color: var(--separator-color); +} + +span.mlabel { + background: var(--primary-color); + border: none; + padding: 4px 9px; + border-radius: 12px; + margin-right: var(--spacing-medium); +} + +span.mlabel:last-of-type { + margin-right: 2px; +} + +div.contents { + padding: 0 var(--spacing-large); +} + +div.contents p, div.contents li { + line-height: var(--content-line-height); +} + +div.contents div.dyncontent { + margin: var(--spacing-medium) 0; +} + +@media (prefers-color-scheme: dark) { + html:not(.light-mode) div.contents div.dyncontent img, + html:not(.light-mode) div.contents center img, + html:not(.light-mode) div.contents > table img, + html:not(.light-mode) div.contents div.dyncontent iframe, + html:not(.light-mode) div.contents center iframe, + html:not(.light-mode) div.contents table iframe, + html:not(.light-mode) div.contents .dotgraph iframe { + filter: brightness(89%) hue-rotate(180deg) invert(); + } +} + +html.dark-mode div.contents div.dyncontent img, +html.dark-mode div.contents center img, +html.dark-mode div.contents > table img, +html.dark-mode div.contents div.dyncontent iframe, +html.dark-mode div.contents center iframe, +html.dark-mode div.contents table iframe, +html.dark-mode div.contents .dotgraph iframe + { + filter: brightness(89%) hue-rotate(180deg) invert(); +} + +h2.groupheader { + border-bottom: 0px; + color: var(--page-foreground-color); + box-shadow: + 100px 0 var(--page-background-color), + -100px 0 var(--page-background-color), + 100px 0.75px var(--separator-color), + -100px 0.75px var(--separator-color), + 500px 0 var(--page-background-color), + -500px 0 var(--page-background-color), + 500px 0.75px var(--separator-color), + -500px 0.75px var(--separator-color), + 900px 0 var(--page-background-color), + -900px 0 var(--page-background-color), + 900px 0.75px var(--separator-color), + -900px 0.75px var(--separator-color), + 1400px 0 var(--page-background-color), + -1400px 0 var(--page-background-color), + 1400px 0.75px var(--separator-color), + -1400px 0.75px var(--separator-color), + 1900px 0 var(--page-background-color), + -1900px 0 var(--page-background-color), + 1900px 0.75px var(--separator-color), + -1900px 0.75px var(--separator-color); +} + +blockquote { + margin: 0 var(--spacing-medium) 0 var(--spacing-medium); + padding: var(--spacing-small) var(--spacing-large); + background: var(--blockquote-background); + color: var(--blockquote-foreground); + border-left: 0; + overflow: visible; + border-radius: var(--border-radius-medium); + overflow: visible; + position: relative; +} + +blockquote::before, blockquote::after { + font-weight: bold; + font-family: serif; + font-size: 360%; + opacity: .15; + position: absolute; +} + +blockquote::before { + content: "“"; + left: -10px; + top: 4px; +} + +blockquote::after { + content: "”"; + right: -8px; + bottom: -25px; +} + +blockquote p { + margin: var(--spacing-small) 0 var(--spacing-medium) 0; +} +.paramname { + font-weight: 600; + color: var(--primary-dark-color); +} + +.paramname > code { + border: 0; +} + +table.params .paramname { + font-weight: 600; + font-family: var(--font-family-monospace); + font-size: var(--code-font-size); + padding-right: var(--spacing-small); + line-height: var(--table-line-height); +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px var(--primary-light-color); +} + +.alphachar a { + color: var(--page-foreground-color); +} + +.dotgraph { + max-width: 100%; + overflow-x: scroll; +} + +.dotgraph .caption { + position: sticky; + left: 0; +} + +/* Wrap Graphviz graphs with the `interactive_dotgraph` class if `INTERACTIVE_SVG = YES` */ +.interactive_dotgraph .dotgraph iframe { + max-width: 100%; +} + +/* + Table of Contents + */ + +div.contents .toc { + max-height: var(--toc-max-height); + min-width: var(--toc-width); + border: 0; + border-left: 1px solid var(--separator-color); + border-radius: 0; + background-color: transparent; + box-shadow: none; + position: sticky; + top: var(--toc-sticky-top); + padding: 0 var(--spacing-large); + margin: var(--spacing-small) 0 var(--spacing-large) var(--spacing-large); +} + +div.toc h3 { + color: var(--toc-foreground); + font-size: var(--navigation-font-size); + margin: var(--spacing-large) 0 var(--spacing-medium) 0; +} + +div.toc li { + padding: 0; + background: none; + line-height: var(--toc-font-size); + margin: var(--toc-font-size) 0 0 0; +} + +div.toc li::before { + display: none; +} + +div.toc ul { + margin-top: 0 +} + +div.toc li a { + font-size: var(--toc-font-size); + color: var(--page-foreground-color) !important; + text-decoration: none; +} + +div.toc li a:hover, div.toc li a.active { + color: var(--primary-color) !important; +} + +div.toc li a.aboveActive { + color: var(--page-secondary-foreground-color) !important; +} + + +@media screen and (max-width: 999px) { + div.contents .toc { + max-height: 45vh; + float: none; + width: auto; + margin: 0 0 var(--spacing-medium) 0; + position: relative; + top: 0; + position: relative; + border: 1px solid var(--separator-color); + border-radius: var(--border-radius-medium); + background-color: var(--toc-background); + box-shadow: var(--box-shadow); + } + + div.contents .toc.interactive { + max-height: calc(var(--navigation-font-size) + 2 * var(--spacing-large)); + overflow: hidden; + } + + div.contents .toc > h3 { + -webkit-tap-highlight-color: transparent; + cursor: pointer; + position: sticky; + top: 0; + background-color: var(--toc-background); + margin: 0; + padding: var(--spacing-large) 0; + display: block; + } + + div.contents .toc.interactive > h3::before { + content: ""; + width: 0; + height: 0; + border-left: 4px solid transparent; + border-right: 4px solid transparent; + border-top: 5px solid var(--primary-color); + display: inline-block; + margin-right: var(--spacing-small); + margin-bottom: calc(var(--navigation-font-size) / 4); + transform: rotate(-90deg); + transition: transform var(--animation-duration) ease-out; + } + + div.contents .toc.interactive.open > h3::before { + transform: rotate(0deg); + } + + div.contents .toc.interactive.open { + max-height: 45vh; + overflow: auto; + transition: max-height 0.2s ease-in-out; + } + + div.contents .toc a, div.contents .toc a.active { + color: var(--primary-color) !important; + } + + div.contents .toc a:hover { + text-decoration: underline; + } +} + +/* + Code & Fragments + */ + +code, div.fragment, pre.fragment { + border-radius: var(--border-radius-small); + border: 1px solid var(--separator-color); + overflow: hidden; +} + +code { + display: inline; + background: var(--code-background); + color: var(--code-foreground); + padding: 2px 6px; +} + +div.fragment, pre.fragment { + margin: var(--spacing-medium) 0; + padding: calc(var(--spacing-large) - (var(--spacing-large) / 6)) var(--spacing-large); + background: var(--fragment-background); + color: var(--fragment-foreground); + overflow-x: auto; +} + +@media screen and (max-width: 767px) { + div.fragment, pre.fragment { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + border-right: 0; + } + + .contents > div.fragment, + .textblock > div.fragment, + .textblock > pre.fragment, + .textblock > .tabbed > ul > li > div.fragment, + .textblock > .tabbed > ul > li > pre.fragment, + .contents > .doxygen-awesome-fragment-wrapper > div.fragment, + .textblock > .doxygen-awesome-fragment-wrapper > div.fragment, + .textblock > .doxygen-awesome-fragment-wrapper > pre.fragment, + .textblock > .tabbed > ul > li > .doxygen-awesome-fragment-wrapper > div.fragment, + .textblock > .tabbed > ul > li > .doxygen-awesome-fragment-wrapper > pre.fragment { + margin: var(--spacing-medium) calc(0px - var(--spacing-large)); + border-radius: 0; + border-left: 0; + } + + .textblock li > .fragment, + .textblock li > .doxygen-awesome-fragment-wrapper > .fragment { + margin: var(--spacing-medium) calc(0px - var(--spacing-large)); + } + + .memdoc li > .fragment, + .memdoc li > .doxygen-awesome-fragment-wrapper > .fragment { + margin: var(--spacing-medium) calc(0px - var(--spacing-medium)); + } + + .textblock ul, .memdoc ul { + overflow: initial; + } + + .memdoc > div.fragment, + .memdoc > pre.fragment, + dl dd > div.fragment, + dl dd pre.fragment, + .memdoc > .doxygen-awesome-fragment-wrapper > div.fragment, + .memdoc > .doxygen-awesome-fragment-wrapper > pre.fragment, + dl dd > .doxygen-awesome-fragment-wrapper > div.fragment, + dl dd .doxygen-awesome-fragment-wrapper > pre.fragment { + margin: var(--spacing-medium) calc(0px - var(--spacing-medium)); + border-radius: 0; + border-left: 0; + } +} + +code, code a, pre.fragment, div.fragment, div.fragment .line, div.fragment span, div.fragment .line a, div.fragment .line span { + font-family: var(--font-family-monospace); + font-size: var(--code-font-size) !important; +} + +div.line:after { + margin-right: var(--spacing-medium); +} + +div.fragment .line, pre.fragment { + white-space: pre; + word-wrap: initial; + line-height: var(--fragment-lineheight); +} + +div.fragment span.keyword { + color: var(--fragment-keyword); +} + +div.fragment span.keywordtype { + color: var(--fragment-keywordtype); +} + +div.fragment span.keywordflow { + color: var(--fragment-keywordflow); +} + +div.fragment span.stringliteral { + color: var(--fragment-token) +} + +div.fragment span.comment { + color: var(--fragment-comment); +} + +div.fragment a.code { + color: var(--fragment-link) !important; +} + +div.fragment span.preprocessor { + color: var(--fragment-preprocessor); +} + +div.fragment span.lineno { + display: inline-block; + width: 27px; + border-right: none; + background: var(--fragment-linenumber-background); + color: var(--fragment-linenumber-color); +} + +div.fragment span.lineno a { + background: none; + color: var(--fragment-link) !important; +} + +div.fragment > .line:first-child .lineno { + box-shadow: -999999px 0px 0 999999px var(--fragment-linenumber-background), -999998px 0px 0 999999px var(--fragment-linenumber-border); + background-color: var(--fragment-linenumber-background) !important; +} + +div.line { + border-radius: var(--border-radius-small); +} + +div.line.glow { + background-color: var(--primary-light-color); + box-shadow: none; +} + +/* + dl warning, attention, note, deprecated, bug, ... + */ + +dl.bug dt a, dl.deprecated dt a, dl.todo dt a { + font-weight: bold !important; +} + +dl.warning, dl.attention, dl.note, dl.deprecated, dl.bug, dl.invariant, dl.pre, dl.post, dl.todo, dl.remark { + padding: var(--spacing-medium); + margin: var(--spacing-medium) 0; + color: var(--page-background-color); + overflow: hidden; + margin-left: 0; + border-radius: var(--border-radius-small); +} + +dl.section dd { + margin-bottom: 2px; +} + +dl.warning, dl.attention { + background: var(--warning-color); + border-left: 8px solid var(--warning-color-dark); + color: var(--warning-color-darker); +} + +dl.warning dt, dl.attention dt { + color: var(--warning-color-dark); +} + +dl.note, dl.remark { + background: var(--note-color); + border-left: 8px solid var(--note-color-dark); + color: var(--note-color-darker); +} + +dl.note dt, dl.remark dt { + color: var(--note-color-dark); +} + +dl.todo { + background: var(--todo-color); + border-left: 8px solid var(--todo-color-dark); + color: var(--todo-color-darker); +} + +dl.todo dt a { + color: var(--todo-color-dark) !important; +} + +dl.bug dt a { + color: var(--todo-color-dark) !important; +} + +dl.bug { + background: var(--bug-color); + border-left: 8px solid var(--bug-color-dark); + color: var(--bug-color-darker); +} + +dl.bug dt a { + color: var(--bug-color-dark) !important; +} + +dl.deprecated { + background: var(--deprecated-color); + border-left: 8px solid var(--deprecated-color-dark); + color: var(--deprecated-color-darker); +} + +dl.deprecated dt a { + color: var(--deprecated-color-dark) !important; +} + +dl.section dd, dl.bug dd, dl.deprecated dd, dl.todo dd { + margin-inline-start: 0px; +} + +dl.invariant, dl.pre, dl.post { + background: var(--invariant-color); + border-left: 8px solid var(--invariant-color-dark); + color: var(--invariant-color-darker); +} + +dl.invariant dt, dl.pre dt, dl.post dt { + color: var(--invariant-color-dark); +} + +/* + memitem + */ + +div.memdoc, div.memproto, h2.memtitle { + box-shadow: none; + background-image: none; + border: none; +} + +div.memdoc { + padding: 0 var(--spacing-medium); + background: var(--page-background-color); +} + +h2.memtitle, div.memitem { + border: 1px solid var(--separator-color); + box-shadow: var(--box-shadow); +} + +h2.memtitle { + box-shadow: 0px var(--spacing-medium) 0 -1px var(--fragment-background), var(--box-shadow); +} + +div.memitem { + transition: none; +} + +div.memproto, h2.memtitle { + background: var(--fragment-background); +} + +h2.memtitle { + font-weight: 500; + font-size: var(--memtitle-font-size); + font-family: var(--font-family-monospace); + border-bottom: none; + border-top-left-radius: var(--border-radius-medium); + border-top-right-radius: var(--border-radius-medium); + word-break: break-all; + position: relative; +} + +h2.memtitle:after { + content: ""; + display: block; + background: var(--fragment-background); + height: var(--spacing-medium); + bottom: calc(0px - var(--spacing-medium)); + left: 0; + right: -14px; + position: absolute; + border-top-right-radius: var(--border-radius-medium); +} + +h2.memtitle > span.permalink { + font-size: inherit; +} + +h2.memtitle > span.permalink > a { + text-decoration: none; + padding-left: 3px; + margin-right: -4px; + user-select: none; + display: inline-block; + margin-top: -6px; +} + +h2.memtitle > span.permalink > a:hover { + color: var(--primary-dark-color) !important; +} + +a:target + h2.memtitle, a:target + h2.memtitle + div.memitem { + border-color: var(--primary-light-color); +} + +div.memitem { + border-top-right-radius: var(--border-radius-medium); + border-bottom-right-radius: var(--border-radius-medium); + border-bottom-left-radius: var(--border-radius-medium); + overflow: hidden; + display: block !important; +} + +div.memdoc { + border-radius: 0; +} + +div.memproto { + border-radius: 0 var(--border-radius-small) 0 0; + overflow: auto; + border-bottom: 1px solid var(--separator-color); + padding: var(--spacing-medium); + margin-bottom: -1px; +} + +div.memtitle { + border-top-right-radius: var(--border-radius-medium); + border-top-left-radius: var(--border-radius-medium); +} + +div.memproto table.memname { + font-family: var(--font-family-monospace); + color: var(--page-foreground-color); + font-size: var(--memname-font-size); + text-shadow: none; +} + +div.memproto div.memtemplate { + font-family: var(--font-family-monospace); + color: var(--primary-dark-color); + font-size: var(--memname-font-size); + margin-left: 2px; + text-shadow: none; +} + +table.mlabels, table.mlabels > tbody { + display: block; +} + +td.mlabels-left { + width: auto; +} + +td.mlabels-right { + margin-top: 3px; + position: sticky; + left: 0; +} + +table.mlabels > tbody > tr:first-child { + display: flex; + justify-content: space-between; + flex-wrap: wrap; +} + +.memname, .memitem span.mlabels { + margin: 0 +} + +/* + reflist + */ + +dl.reflist { + box-shadow: var(--box-shadow); + border-radius: var(--border-radius-medium); + border: 1px solid var(--separator-color); + overflow: hidden; + padding: 0; +} + + +dl.reflist dt, dl.reflist dd { + box-shadow: none; + text-shadow: none; + background-image: none; + border: none; + padding: 12px; +} + + +dl.reflist dt { + font-weight: 500; + border-radius: 0; + background: var(--code-background); + border-bottom: 1px solid var(--separator-color); + color: var(--page-foreground-color) +} + + +dl.reflist dd { + background: none; +} + +/* + Table + */ + +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname), +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody { + display: inline-block; + max-width: 100%; +} + +.contents > table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname):not(.classindex) { + margin-left: calc(0px - var(--spacing-large)); + margin-right: calc(0px - var(--spacing-large)); + max-width: calc(100% + 2 * var(--spacing-large)); +} + +table.fieldtable, +table.markdownTable tbody, +table.doxtable tbody { + border: none; + margin: var(--spacing-medium) 0; + box-shadow: 0 0 0 1px var(--separator-color); + border-radius: var(--border-radius-small); +} + +table.markdownTable, table.doxtable, table.fieldtable { + padding: 1px; +} + +table.doxtable caption { + display: block; +} + +table.fieldtable { + border-collapse: collapse; + width: 100%; +} + +th.markdownTableHeadLeft, +th.markdownTableHeadRight, +th.markdownTableHeadCenter, +th.markdownTableHeadNone, +table.doxtable th { + background: var(--tablehead-background); + color: var(--tablehead-foreground); + font-weight: 600; + font-size: var(--page-font-size); +} + +th.markdownTableHeadLeft:first-child, +th.markdownTableHeadRight:first-child, +th.markdownTableHeadCenter:first-child, +th.markdownTableHeadNone:first-child, +table.doxtable tr th:first-child { + border-top-left-radius: var(--border-radius-small); +} + +th.markdownTableHeadLeft:last-child, +th.markdownTableHeadRight:last-child, +th.markdownTableHeadCenter:last-child, +th.markdownTableHeadNone:last-child, +table.doxtable tr th:last-child { + border-top-right-radius: var(--border-radius-small); +} + +table.markdownTable td, +table.markdownTable th, +table.fieldtable td, +table.fieldtable th, +table.doxtable td, +table.doxtable th { + border: 1px solid var(--separator-color); + padding: var(--spacing-small) var(--spacing-medium); +} + +table.markdownTable td:last-child, +table.markdownTable th:last-child, +table.fieldtable td:last-child, +table.fieldtable th:last-child, +table.doxtable td:last-child, +table.doxtable th:last-child { + border-right: none; +} + +table.markdownTable td:first-child, +table.markdownTable th:first-child, +table.fieldtable td:first-child, +table.fieldtable th:first-child, +table.doxtable td:first-child, +table.doxtable th:first-child { + border-left: none; +} + +table.markdownTable tr:first-child td, +table.markdownTable tr:first-child th, +table.fieldtable tr:first-child td, +table.fieldtable tr:first-child th, +table.doxtable tr:first-child td, +table.doxtable tr:first-child th { + border-top: none; +} + +table.markdownTable tr:last-child td, +table.markdownTable tr:last-child th, +table.fieldtable tr:last-child td, +table.fieldtable tr:last-child th, +table.doxtable tr:last-child td, +table.doxtable tr:last-child th { + border-bottom: none; +} + +table.markdownTable tr, table.doxtable tr { + border-bottom: 1px solid var(--separator-color); +} + +table.markdownTable tr:last-child, table.doxtable tr:last-child { + border-bottom: none; +} + +.full_width_table table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) { + display: block; +} + +.full_width_table table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody { + display: table; + width: 100%; +} + +table.fieldtable th { + font-size: var(--page-font-size); + font-weight: 600; + background-image: none; + background-color: var(--tablehead-background); + color: var(--tablehead-foreground); +} + +table.fieldtable td.fieldtype, .fieldtable td.fieldname, .fieldtable td.fielddoc, .fieldtable th { + border-bottom: 1px solid var(--separator-color); + border-right: 1px solid var(--separator-color); +} + +table.fieldtable tr:last-child td:first-child { + border-bottom-left-radius: var(--border-radius-small); +} + +table.fieldtable tr:last-child td:last-child { + border-bottom-right-radius: var(--border-radius-small); +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: var(--primary-light-color); + box-shadow: none; +} + +table.memberdecls { + display: block; + -webkit-tap-highlight-color: transparent; +} + +table.memberdecls tr[class^='memitem'] { + font-family: var(--font-family-monospace); + font-size: var(--code-font-size); +} + +table.memberdecls tr[class^='memitem'] .memTemplParams { + font-family: var(--font-family-monospace); + font-size: var(--code-font-size); + color: var(--primary-dark-color); + white-space: normal; +} + +table.memberdecls .memItemLeft, +table.memberdecls .memItemRight, +table.memberdecls .memTemplItemLeft, +table.memberdecls .memTemplItemRight, +table.memberdecls .memTemplParams { + transition: none; + padding-top: var(--spacing-small); + padding-bottom: var(--spacing-small); + border-top: 1px solid var(--separator-color); + border-bottom: 1px solid var(--separator-color); + background-color: var(--fragment-background); +} + +table.memberdecls .memTemplItemLeft, +table.memberdecls .memTemplItemRight { + padding-top: 2px; +} + +table.memberdecls .memTemplParams { + border-bottom: 0; + border-left: 1px solid var(--separator-color); + border-right: 1px solid var(--separator-color); + border-radius: var(--border-radius-small) var(--border-radius-small) 0 0; + padding-bottom: var(--spacing-small); +} + +table.memberdecls .memTemplItemLeft { + border-radius: 0 0 0 var(--border-radius-small); + border-left: 1px solid var(--separator-color); + border-top: 0; +} + +table.memberdecls .memTemplItemRight { + border-radius: 0 0 var(--border-radius-small) 0; + border-right: 1px solid var(--separator-color); + padding-left: 0; + border-top: 0; +} + +table.memberdecls .memItemLeft { + border-radius: var(--border-radius-small) 0 0 var(--border-radius-small); + border-left: 1px solid var(--separator-color); + padding-left: var(--spacing-medium); + padding-right: 0; +} + +table.memberdecls .memItemRight { + border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0; + border-right: 1px solid var(--separator-color); + padding-right: var(--spacing-medium); + padding-left: 0; + +} + +table.memberdecls .mdescLeft, table.memberdecls .mdescRight { + background: none; + color: var(--page-foreground-color); + padding: var(--spacing-small) 0; +} + +table.memberdecls .memItemLeft, +table.memberdecls .memTemplItemLeft { + padding-right: var(--spacing-medium); +} + +table.memberdecls .memSeparator { + background: var(--page-background-color); + height: var(--spacing-large); + border: 0; + transition: none; +} + +table.memberdecls .groupheader { + margin-bottom: var(--spacing-large); +} + +table.memberdecls .inherit_header td { + padding: 0 0 var(--spacing-medium) 0; + text-indent: -12px; + color: var(--page-secondary-foreground-color); +} + +table.memberdecls img[src="closed.png"], +table.memberdecls img[src="open.png"], +div.dynheader img[src="open.png"], +div.dynheader img[src="closed.png"] { + width: 0; + height: 0; + border-left: 4px solid transparent; + border-right: 4px solid transparent; + border-top: 5px solid var(--primary-color); + margin-top: 8px; + display: block; + float: left; + margin-left: -10px; + transition: transform var(--animation-duration) ease-out; +} + +table.memberdecls img { + margin-right: 10px; +} + +table.memberdecls img[src="closed.png"], +div.dynheader img[src="closed.png"] { + transform: rotate(-90deg); + +} + +.compoundTemplParams { + font-family: var(--font-family-monospace); + color: var(--primary-dark-color); + font-size: var(--code-font-size); +} + +@media screen and (max-width: 767px) { + + table.memberdecls .memItemLeft, + table.memberdecls .memItemRight, + table.memberdecls .mdescLeft, + table.memberdecls .mdescRight, + table.memberdecls .memTemplItemLeft, + table.memberdecls .memTemplItemRight, + table.memberdecls .memTemplParams { + display: block; + text-align: left; + padding-left: var(--spacing-large); + margin: 0 calc(0px - var(--spacing-large)) 0 calc(0px - var(--spacing-large)); + border-right: none; + border-left: none; + border-radius: 0; + white-space: normal; + } + + table.memberdecls .memItemLeft, + table.memberdecls .mdescLeft, + table.memberdecls .memTemplItemLeft { + border-bottom: 0; + padding-bottom: 0; + } + + table.memberdecls .memTemplItemLeft { + padding-top: 0; + } + + table.memberdecls .mdescLeft { + margin-bottom: calc(0px - var(--page-font-size)); + } + + table.memberdecls .memItemRight, + table.memberdecls .mdescRight, + table.memberdecls .memTemplItemRight { + border-top: 0; + padding-top: 0; + padding-right: var(--spacing-large); + overflow-x: auto; + } + + table.memberdecls tr[class^='memitem']:not(.inherit) { + display: block; + width: calc(100vw - 2 * var(--spacing-large)); + } + + table.memberdecls .mdescRight { + color: var(--page-foreground-color); + } + + table.memberdecls tr.inherit { + visibility: hidden; + } + + table.memberdecls tr[style="display: table-row;"] { + display: block !important; + visibility: visible; + width: calc(100vw - 2 * var(--spacing-large)); + animation: fade .5s; + } + + @keyframes fade { + 0% { + opacity: 0; + max-height: 0; + } + + 100% { + opacity: 1; + max-height: 200px; + } + } +} + + +/* + Horizontal Rule + */ + +hr { + margin-top: var(--spacing-large); + margin-bottom: var(--spacing-large); + height: 1px; + background-color: var(--separator-color); + border: 0; +} + +.contents hr { + box-shadow: 100px 0 0 var(--separator-color), + -100px 0 0 var(--separator-color), + 500px 0 0 var(--separator-color), + -500px 0 0 var(--separator-color), + 1500px 0 0 var(--separator-color), + -1500px 0 0 var(--separator-color), + 2000px 0 0 var(--separator-color), + -2000px 0 0 var(--separator-color); +} + +.contents img, .contents .center, .contents center, .contents div.image object { + max-width: 100%; + overflow: auto; +} + +@media screen and (max-width: 767px) { + .contents .dyncontent > .center, .contents > center { + margin-left: calc(0px - var(--spacing-large)); + margin-right: calc(0px - var(--spacing-large)); + max-width: calc(100% + 2 * var(--spacing-large)); + } +} + +/* + Directories + */ +div.directory { + border-top: 1px solid var(--separator-color); + border-bottom: 1px solid var(--separator-color); + width: auto; +} + +table.directory { + font-family: var(--font-family); + font-size: var(--page-font-size); + font-weight: normal; + width: 100%; +} + +table.directory td.entry, table.directory td.desc { + padding: calc(var(--spacing-small) / 2) var(--spacing-small); + line-height: var(--table-line-height); +} + +table.directory tr.even td:last-child { + border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0; +} + +table.directory tr.even td:first-child { + border-radius: var(--border-radius-small) 0 0 var(--border-radius-small); +} + +table.directory tr.even:last-child td:last-child { + border-radius: 0 var(--border-radius-small) 0 0; +} + +table.directory tr.even:last-child td:first-child { + border-radius: var(--border-radius-small) 0 0 0; +} + +table.directory td.desc { + min-width: 250px; +} + +table.directory tr.even { + background-color: var(--odd-color); +} + +table.directory tr.odd { + background-color: transparent; +} + +.icona { + width: auto; + height: auto; + margin: 0 var(--spacing-small); +} + +.icon { + background: var(--primary-color); + border-radius: var(--border-radius-small); + font-size: var(--page-font-size); + padding: calc(var(--page-font-size) / 5); + line-height: var(--page-font-size); + transform: scale(0.8); + height: auto; + width: var(--page-font-size); + user-select: none; +} + +.iconfopen, .icondoc, .iconfclosed { + background-position: center; + margin-bottom: 0; + height: var(--table-line-height); +} + +.icondoc { + filter: saturate(0.2); +} + +@media screen and (max-width: 767px) { + div.directory { + margin-left: calc(0px - var(--spacing-large)); + margin-right: calc(0px - var(--spacing-large)); + } +} + +@media (prefers-color-scheme: dark) { + html:not(.light-mode) .iconfopen, html:not(.light-mode) .iconfclosed { + filter: hue-rotate(180deg) invert(); + } +} + +html.dark-mode .iconfopen, html.dark-mode .iconfclosed { + filter: hue-rotate(180deg) invert(); +} + +/* + Class list + */ + +.classindex dl.odd { + background: var(--odd-color); + border-radius: var(--border-radius-small); +} + +.classindex dl.even { + background-color: transparent; +} + +/* + Class Index Doxygen 1.8 +*/ + +table.classindex { + margin-left: 0; + margin-right: 0; + width: 100%; +} + +table.classindex table div.ah { + background-image: none; + background-color: initial; + border-color: var(--separator-color); + color: var(--page-foreground-color); + box-shadow: var(--box-shadow); + border-radius: var(--border-radius-large); + padding: var(--spacing-small); +} + +div.qindex { + background-color: var(--odd-color); + border-radius: var(--border-radius-small); + border: 1px solid var(--separator-color); + padding: var(--spacing-small) 0; +} + +/* + Footer and nav-path + */ + +#nav-path { + width: 100%; +} + +#nav-path ul { + background-image: none; + background: var(--page-background-color); + border: none; + border-top: 1px solid var(--separator-color); + border-bottom: 1px solid var(--separator-color); + border-bottom: 0; + box-shadow: 0 0.75px 0 var(--separator-color); + font-size: var(--navigation-font-size); +} + +img.footer { + width: 60px; +} + +.navpath li.footer { + color: var(--page-secondary-foreground-color); +} + +address.footer { + color: var(--page-secondary-foreground-color); + margin-bottom: var(--spacing-large); +} + +#nav-path li.navelem { + background-image: none; + display: flex; + align-items: center; +} + +.navpath li.navelem a { + text-shadow: none; + display: inline-block; + color: var(--primary-color) !important; +} + +.navpath li.navelem b { + color: var(--primary-dark-color); + font-weight: 500; +} + +li.navelem { + padding: 0; + margin-left: -8px; +} + +li.navelem:first-child { + margin-left: var(--spacing-large); +} + +li.navelem:first-child:before { + display: none; +} + +#nav-path li.navelem:after { + content: ''; + border: 5px solid var(--page-background-color); + border-bottom-color: transparent; + border-right-color: transparent; + border-top-color: transparent; + transform: translateY(-1px) scaleY(4.2); + z-index: 10; + margin-left: 6px; +} + +#nav-path li.navelem:before { + content: ''; + border: 5px solid var(--separator-color); + border-bottom-color: transparent; + border-right-color: transparent; + border-top-color: transparent; + transform: translateY(-1px) scaleY(3.2); + margin-right: var(--spacing-small); +} + +.navpath li.navelem a:hover { + color: var(--primary-color); +} + +/* + Scrollbars for Webkit +*/ + +#nav-tree::-webkit-scrollbar, +div.fragment::-webkit-scrollbar, +pre.fragment::-webkit-scrollbar, +div.memproto::-webkit-scrollbar, +.contents center::-webkit-scrollbar, +.contents .center::-webkit-scrollbar, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody::-webkit-scrollbar, +div.contents .toc::-webkit-scrollbar, +.contents .dotgraph::-webkit-scrollbar, +.contents .tabs-overview-container::-webkit-scrollbar { + background: transparent; + width: calc(var(--webkit-scrollbar-size) + var(--webkit-scrollbar-padding) + var(--webkit-scrollbar-padding)); + height: calc(var(--webkit-scrollbar-size) + var(--webkit-scrollbar-padding) + var(--webkit-scrollbar-padding)); +} + +#nav-tree::-webkit-scrollbar-thumb, +div.fragment::-webkit-scrollbar-thumb, +pre.fragment::-webkit-scrollbar-thumb, +div.memproto::-webkit-scrollbar-thumb, +.contents center::-webkit-scrollbar-thumb, +.contents .center::-webkit-scrollbar-thumb, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody::-webkit-scrollbar-thumb, +div.contents .toc::-webkit-scrollbar-thumb, +.contents .dotgraph::-webkit-scrollbar-thumb, +.contents .tabs-overview-container::-webkit-scrollbar-thumb { + background-color: transparent; + border: var(--webkit-scrollbar-padding) solid transparent; + border-radius: calc(var(--webkit-scrollbar-padding) + var(--webkit-scrollbar-padding)); + background-clip: padding-box; +} + +#nav-tree:hover::-webkit-scrollbar-thumb, +div.fragment:hover::-webkit-scrollbar-thumb, +pre.fragment:hover::-webkit-scrollbar-thumb, +div.memproto:hover::-webkit-scrollbar-thumb, +.contents center:hover::-webkit-scrollbar-thumb, +.contents .center:hover::-webkit-scrollbar-thumb, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody:hover::-webkit-scrollbar-thumb, +div.contents .toc:hover::-webkit-scrollbar-thumb, +.contents .dotgraph:hover::-webkit-scrollbar-thumb, +.contents .tabs-overview-container:hover::-webkit-scrollbar-thumb { + background-color: var(--webkit-scrollbar-color); +} + +#nav-tree::-webkit-scrollbar-track, +div.fragment::-webkit-scrollbar-track, +pre.fragment::-webkit-scrollbar-track, +div.memproto::-webkit-scrollbar-track, +.contents center::-webkit-scrollbar-track, +.contents .center::-webkit-scrollbar-track, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody::-webkit-scrollbar-track, +div.contents .toc::-webkit-scrollbar-track, +.contents .dotgraph::-webkit-scrollbar-track, +.contents .tabs-overview-container::-webkit-scrollbar-track { + background: transparent; +} + +#nav-tree::-webkit-scrollbar-corner { + background-color: var(--side-nav-background); +} + +#nav-tree, +div.fragment, +pre.fragment, +div.memproto, +.contents center, +.contents .center, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody, +div.contents .toc { + overflow-x: auto; + overflow-x: overlay; +} + +#nav-tree { + overflow-x: auto; + overflow-y: auto; + overflow-y: overlay; +} + +/* + Scrollbars for Firefox +*/ + +#nav-tree, +div.fragment, +pre.fragment, +div.memproto, +.contents center, +.contents .center, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody, +div.contents .toc, +.contents .dotgraph, +.contents .tabs-overview-container { + scrollbar-width: thin; +} + +/* + Optional Dark mode toggle button +*/ + +doxygen-awesome-dark-mode-toggle { + display: inline-block; + margin: 0 0 0 var(--spacing-small); + padding: 0; + width: var(--searchbar-height); + height: var(--searchbar-height); + background: none; + border: none; + border-radius: var(--searchbar-height); + vertical-align: middle; + text-align: center; + line-height: var(--searchbar-height); + font-size: 22px; + display: flex; + align-items: center; + justify-content: center; + user-select: none; + cursor: pointer; +} + +doxygen-awesome-dark-mode-toggle > svg { + transition: transform var(--animation-duration) ease-in-out; +} + +doxygen-awesome-dark-mode-toggle:active > svg { + transform: scale(.5); +} + +doxygen-awesome-dark-mode-toggle:hover { + background-color: rgba(0,0,0,.03); +} + +html.dark-mode doxygen-awesome-dark-mode-toggle:hover { + background-color: rgba(0,0,0,.18); +} + +/* + Optional fragment copy button +*/ +.doxygen-awesome-fragment-wrapper { + position: relative; +} + +doxygen-awesome-fragment-copy-button { + opacity: 0; + background: var(--fragment-background); + width: 28px; + height: 28px; + position: absolute; + right: calc(var(--spacing-large) - (var(--spacing-large) / 2.5)); + top: calc(var(--spacing-large) - (var(--spacing-large) / 2.5)); + border: 1px solid var(--fragment-foreground); + cursor: pointer; + border-radius: var(--border-radius-small); + display: flex; + justify-content: center; + align-items: center; +} + +.doxygen-awesome-fragment-wrapper:hover doxygen-awesome-fragment-copy-button, doxygen-awesome-fragment-copy-button.success { + opacity: .28; +} + +doxygen-awesome-fragment-copy-button:hover, doxygen-awesome-fragment-copy-button.success { + opacity: 1 !important; +} + +doxygen-awesome-fragment-copy-button:active:not([class~=success]) svg { + transform: scale(.91); +} + +doxygen-awesome-fragment-copy-button svg { + fill: var(--fragment-foreground); + width: 18px; + height: 18px; +} + +doxygen-awesome-fragment-copy-button.success svg { + fill: rgb(14, 168, 14); +} + +doxygen-awesome-fragment-copy-button.success { + border-color: rgb(14, 168, 14); +} + +@media screen and (max-width: 767px) { + .textblock > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button, + .textblock li > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button, + .memdoc li > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button, + .memdoc > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button, + dl dd > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button { + right: 0; + } +} + +/* + Optional paragraph link button +*/ + +a.anchorlink { + font-size: 90%; + margin-left: var(--spacing-small); + color: var(--page-foreground-color) !important; + text-decoration: none; + opacity: .15; + display: none; + transition: opacity var(--animation-duration) ease-in-out, color var(--animation-duration) ease-in-out; +} + +a.anchorlink svg { + fill: var(--page-foreground-color); +} + +h3 a.anchorlink svg, h4 a.anchorlink svg { + margin-bottom: -3px; + margin-top: -4px; +} + +a.anchorlink:hover { + opacity: .45; +} + +h2:hover a.anchorlink, h1:hover a.anchorlink, h3:hover a.anchorlink, h4:hover a.anchorlink { + display: inline-block; +} + +/* + Optional tab feature +*/ + +.tabbed > ul { + padding-inline-start: 0px; + margin: 0; + padding: var(--spacing-small) 0; +} + +.tabbed > ul > li { + display: none; +} + +.tabbed > ul > li.selected { + display: block; +} + +.tabs-overview-container { + overflow-x: auto; + display: block; + overflow-y: visible; +} + +.tabs-overview { + border-bottom: 1px solid var(--separator-color); + display: flex; + flex-direction: row; +} + +@media screen and (max-width: 767px) { + .tabs-overview-container { + margin: 0 calc(0px - var(--spacing-large)); + } + .tabs-overview { + padding: 0 var(--spacing-large) + } +} + +.tabs-overview button.tab-button { + color: var(--page-foreground-color); + margin: 0; + border: none; + background: transparent; + padding: calc(var(--spacing-large) / 2) 0; + display: inline-block; + font-size: var(--page-font-size); + cursor: pointer; + box-shadow: 0 1px 0 0 var(--separator-color); + position: relative; + + -webkit-tap-highlight-color: transparent; +} + +.tabs-overview button.tab-button .tab-title::before { + display: block; + content: attr(title); + font-weight: 600; + height: 0; + overflow: hidden; + visibility: hidden; +} + +.tabs-overview button.tab-button .tab-title { + float: left; + white-space: nowrap; + font-weight: normal; + padding: calc(var(--spacing-large) / 2) var(--spacing-large); + border-radius: var(--border-radius-medium); + transition: background-color var(--animation-duration) ease-in-out, font-weight var(--animation-duration) ease-in-out; +} + +.tabs-overview button.tab-button:not(:last-child) .tab-title { + box-shadow: 8px 0 0 -7px var(--separator-color); +} + +.tabs-overview button.tab-button:hover .tab-title { + background: var(--separator-color); + box-shadow: none; +} + +.tabs-overview button.tab-button.active .tab-title { + font-weight: 600; +} + +.tabs-overview button.tab-button::after { + content: ''; + display: block; + position: absolute; + left: 0; + bottom: 0; + right: 0; + height: 0; + width: 0%; + margin: 0 auto; + border-radius: var(--border-radius-small) var(--border-radius-small) 0 0; + background-color: var(--primary-color); + transition: width var(--animation-duration) ease-in-out, height var(--animation-duration) ease-in-out; +} + +.tabs-overview button.tab-button.active::after { + width: 100%; + box-sizing: border-box; + height: 3px; +} + + +/* + Navigation Buttons +*/ + +.section_buttons:not(:empty) { + margin-top: calc(var(--spacing-large) * 3); +} + +.section_buttons table.markdownTable { + display: block; + width: 100%; +} + +.section_buttons table.markdownTable tbody { + display: table !important; + width: 100%; + box-shadow: none; + border-spacing: 10px; +} + +.section_buttons table.markdownTable td { + padding: 0; +} + +.section_buttons table.markdownTable th { + display: none; +} + +.section_buttons table.markdownTable tr.markdownTableHead { + border: none; +} + +.section_buttons tr th, .section_buttons tr td { + background: none; + border: none; + padding: var(--spacing-large) 0 var(--spacing-small); +} + +.section_buttons a { + display: inline-block; + border: 1px solid var(--separator-color); + border-radius: var(--border-radius-medium); + color: var(--page-secondary-foreground-color) !important; + text-decoration: none; + transition: color var(--animation-duration) ease-in-out, background-color var(--animation-duration) ease-in-out; +} + +.section_buttons a:hover { + color: var(--page-foreground-color) !important; + background-color: var(--odd-color); +} + +.section_buttons tr td.markdownTableBodyLeft a { + padding: var(--spacing-medium) var(--spacing-large) var(--spacing-medium) calc(var(--spacing-large) / 2); +} + +.section_buttons tr td.markdownTableBodyRight a { + padding: var(--spacing-medium) calc(var(--spacing-large) / 2) var(--spacing-medium) var(--spacing-large); +} + +.section_buttons tr td.markdownTableBodyLeft a::before, +.section_buttons tr td.markdownTableBodyRight a::after { + color: var(--page-secondary-foreground-color) !important; + display: inline-block; + transition: color .08s ease-in-out, transform .09s ease-in-out; +} + +.section_buttons tr td.markdownTableBodyLeft a::before { + content: '〈'; + padding-right: var(--spacing-large); +} + + +.section_buttons tr td.markdownTableBodyRight a::after { + content: '〉'; + padding-left: var(--spacing-large); +} + + +.section_buttons tr td.markdownTableBodyLeft a:hover::before { + color: var(--page-foreground-color) !important; + transform: translateX(-3px); +} + +.section_buttons tr td.markdownTableBodyRight a:hover::after { + color: var(--page-foreground-color) !important; + transform: translateX(3px); +} + +@media screen and (max-width: 450px) { + .section_buttons a { + width: 100%; + box-sizing: border-box; + } + + .section_buttons tr td:nth-of-type(1).markdownTableBodyLeft a { + border-radius: var(--border-radius-medium) 0 0 var(--border-radius-medium); + border-right: none; + } + + .section_buttons tr td:nth-of-type(2).markdownTableBodyRight a { + border-radius: 0 var(--border-radius-medium) var(--border-radius-medium) 0; + } +} diff --git a/docs/doxygen-awesome-css-2.3.2/doxygen-custom/custom-alternative.css b/docs/doxygen-awesome-css-2.3.2/doxygen-custom/custom-alternative.css new file mode 100644 index 0000000000..e66c1aee54 --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/doxygen-custom/custom-alternative.css @@ -0,0 +1,54 @@ +html.alternative { + /* primary theme color. This will affect the entire websites color scheme: links, arrows, labels, ... */ + --primary-color: #AF7FE4; + --primary-dark-color: #9270E4; + --primary-light-color: #7aabd6; + --primary-lighter-color: #cae1f1; + --primary-lightest-color: #e9f1f8; + + /* page base colors */ + --page-background-color: white; + --page-foreground-color: #2c3e50; + --page-secondary-foreground-color: #67727e; + + + --border-radius-large: 22px; + --border-radius-small: 9px; + --border-radius-medium: 14px; + --spacing-small: 8px; + --spacing-medium: 14px; + --spacing-large: 19px; + + --top-height: 125px; + + --side-nav-background: #324067; + --side-nav-foreground: #F1FDFF; + --header-foreground: var(--side-nav-foreground); + --searchbar-background: var(--side-nav-foreground); + --searchbar-border-radius: var(--border-radius-medium); + --header-background: var(--side-nav-background); + --header-foreground: var(--side-nav-foreground); + + --toc-background: rgb(243, 240, 252); + --toc-foreground: var(--page-foreground-color); +} + +html.alternative.dark-mode { + color-scheme: dark; + + --primary-color: #AF7FE4; + --primary-dark-color: #9270E4; + --primary-light-color: #4779ac; + --primary-lighter-color: #191e21; + --primary-lightest-color: #191a1c; + + --page-background-color: #1C1D1F; + --page-foreground-color: #d2dbde; + --page-secondary-foreground-color: #859399; + --separator-color: #3a3246; + --side-nav-background: #171D32; + --side-nav-foreground: #F1FDFF; + --toc-background: #20142C; + --searchbar-background: var(--page-background-color); + +} \ No newline at end of file diff --git a/docs/doxygen-awesome-css-2.3.2/doxygen-custom/custom.css b/docs/doxygen-awesome-css-2.3.2/doxygen-custom/custom.css new file mode 100644 index 0000000000..ad6f35a524 --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/doxygen-custom/custom.css @@ -0,0 +1,57 @@ +.github-corner svg { + fill: var(--primary-light-color); + color: var(--page-background-color); + width: 72px; + height: 72px; +} + +@media screen and (max-width: 767px) { + .github-corner svg { + width: 50px; + height: 50px; + } + #projectnumber { + margin-right: 22px; + } +} + +.alter-theme-button { + display: inline-block; + cursor: pointer; + background: var(--primary-color); + color: var(--page-background-color) !important; + border-radius: var(--border-radius-medium); + padding: var(--spacing-small) var(--spacing-medium); + text-decoration: none; +} + +.alter-theme-button:hover { + background: var(--primary-dark-color); +} + +html.dark-mode .darkmode_inverted_image img, /* < doxygen 1.9.3 */ +html.dark-mode .darkmode_inverted_image object[type="image/svg+xml"] /* doxygen 1.9.3 */ { + filter: brightness(89%) hue-rotate(180deg) invert(); +} + +.bordered_image { + border-radius: var(--border-radius-small); + border: 1px solid var(--separator-color); + display: inline-block; + overflow: hidden; +} + +html.dark-mode .bordered_image img, /* < doxygen 1.9.3 */ +html.dark-mode .bordered_image object[type="image/svg+xml"] /* doxygen 1.9.3 */ { + border-radius: var(--border-radius-small); +} + +.title_screenshot { + filter: drop-shadow(0px 3px 10px rgba(0,0,0,0.22)); + max-width: 500px; + margin: var(--spacing-large) 0; +} + +.title_screenshot .caption { + display: none; +} diff --git a/docs/doxygen-awesome-css-2.3.2/doxygen-custom/header.html b/docs/doxygen-awesome-css-2.3.2/doxygen-custom/header.html new file mode 100644 index 0000000000..ab2f31ba5b --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/doxygen-custom/header.html @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + +$projectname: $title +$title + + + + + + + + + + + +$treeview +$search +$mathjax + +$extrastylesheet + + + + + + + + + + + + + +
+ + +
+ + + + + + + + + + + + + + + + + + + + + +
+
$projectname +  $projectnumber +
+
$projectbrief
+
+
$projectbrief
+
$searchbox
+
+ + diff --git a/docs/doxygen-awesome-css-2.3.2/doxygen-custom/toggle-alternative-theme.js b/docs/doxygen-awesome-css-2.3.2/doxygen-custom/toggle-alternative-theme.js new file mode 100644 index 0000000000..72c3731724 --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/doxygen-custom/toggle-alternative-theme.js @@ -0,0 +1,12 @@ + +let original_theme_active = true; + +function toggle_alternative_theme() { + if(original_theme_active) { + document.documentElement.classList.add("alternative") + original_theme_active = false; + } else { + document.documentElement.classList.remove("alternative") + original_theme_active = true; + } +} \ No newline at end of file diff --git a/docs/doxygen-awesome-css-2.3.2/img/theme-variants-base.drawio.svg b/docs/doxygen-awesome-css-2.3.2/img/theme-variants-base.drawio.svg new file mode 100644 index 0000000000..505978608e --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/img/theme-variants-base.drawio.svg @@ -0,0 +1,117 @@ + + + + + + + + +
+
+
+ Content +
+
+
+
+ + Content + +
+
+ + + + +
+
+
+ Titlebar (Navigation + Search) +
+
+
+
+ + Titlebar (Navigation + Search) + +
+
+ + + + +
+
+
+ Sidebar (Navigation) +
+
+
+
+ + Sidebar (Navigation) + +
+
+ + + + +
+
+
+ Footer (Breadcrumps) +
+
+
+
+ + Footer (Breadcrumps) + +
+
+ + + + +
+
+
+ Search +
+
+
+
+ + Search + +
+
+ + + +
+
+
+ + Title + +
+
+
+
+ + Tit... + +
+
+
+ + + + + Text is not SVG - cannot display + + + +
\ No newline at end of file diff --git a/docs/doxygen-awesome-css-2.3.2/img/theme-variants-sidebar-only.drawio.svg b/docs/doxygen-awesome-css-2.3.2/img/theme-variants-sidebar-only.drawio.svg new file mode 100644 index 0000000000..07b041915d --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/img/theme-variants-sidebar-only.drawio.svg @@ -0,0 +1,102 @@ + + + + + + + + +
+
+
+ Content +
+
+
+
+ + Content + +
+
+ + + + +
+
+
+ Sidebar +
+ (Title + Navigation) +
+
+
+
+ + Sidebar... + +
+
+ + + + +
+
+
+ Footer (Breadcrumps) +
+
+
+
+ + Footer (Breadcrumps) + +
+
+ + + + +
+
+
+ Search +
+
+
+
+ + Search + +
+
+ + + +
+
+
+ + Title + +
+
+
+
+ + Tit... + +
+
+
+ + + + + Text is not SVG - cannot display + + + +
\ No newline at end of file diff --git a/docs/doxygen-awesome-css-2.3.2/overrides.css b/docs/doxygen-awesome-css-2.3.2/overrides.css new file mode 100644 index 0000000000..acdc58d3cd --- /dev/null +++ b/docs/doxygen-awesome-css-2.3.2/overrides.css @@ -0,0 +1,17 @@ +html { + --top-nav-height: 140px +} + +@media screen and (min-width: 768px) { + #top { + height: var(--top-nav-height); + } + + #nav-tree, #side-nav { + height: calc(100vh - var(--top-nav-height)) !important; + } + + #side-nav { + top: var(--top-nav-height); + } +} \ No newline at end of file diff --git a/docs/mainpage.h b/docs/mainpage.h new file mode 100644 index 0000000000..f25e50ffb1 --- /dev/null +++ b/docs/mainpage.h @@ -0,0 +1,193 @@ +/*! +@mainpage About +@tableofcontents + +@section intro Introduction +This site contains documentation for the Twilight Princess code base. It is a work in progress and will be updated as more code is decompiled and documented. + +@section code Code + @subsection actors Actors + - @ref actors-doors "Doors" + - @ref actors-enemies "Enemies" + - @ref actors-items "Items" + - @ref actors-objects "Objects" + - @ref actors-npcs "NPCs" + - @ref actors-tags "Tags" + + @subsection dolphin Dolphin + + @subsection dolzel Dolzel + + @subsection framework Framework + + @subsection jsystem JSystem + - @ref jsystem-j2d "J2D" + - @ref jsystem-j3d "J3D" + - @ref jsystem-jaudio "JAudio" + - @ref jsystem-jframework "JFramework" + - @ref jsystem-jgadget "JGadget" + - @ref jsystem-jkernel "JKernel" + - @ref jsystem-jmath "JMath" + - @ref jsystem-jmessage "JMessage" + - @ref jsystem-jparticle "JParticle" + - @ref jsystem-jstage "JStage" + - @ref jsystem-jstudio "JStudio" + - @ref jsystem-jsupport "JSupport" + - @ref jsystem-jutility "JUtility" + + @subsection m_do m_Do + + @subsection misc Misc + + @subsection msl_c MSL_C + + @subsection runtime Runtime.PPCEABI.H + + @subsection ssystem SSystem + + @subsection trk TRK_MINNOW_DOLPHIN + + @subsection z2audiolib Z2AudioLib + +@section more-info More Information +For more information, visit [the decomp website](https://zsrtp.link). + +*/ + + + +//////////////////////////////////////////////////////////////////////////////// +// Group Definitions - Add new groups here for now +//////////////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////////////// +// Actors +//////////////////////////////////////////////////////////////////////////////// + +/** + * @defgroup actors Actors + * @brief All actor classes. + */ + +/** + * @ingroup actors + * @defgroup actors-doors Doors + * @brief Doors are entities that block the player's path until certain conditions are met. + */ + +/** + * @ingroup actors + * @defgroup actors-enemies Enemies + * @brief Enemies are hostile entities that attack the player. + */ + +/** + * @ingroup actors + * @defgroup actors-items Items + * @brief Items are collectable objects that appear in the item wheel or pause menu. + */ + +/** + * @ingroup actors + * @defgroup actors-objects Objects + * @brief Objects are interactable entities the player can interact with. + */ + +/** + * @ingroup actors + * @defgroup actors-npcs NPCs + * @brief NPCs are non-playable characters that interact with the player. + */ + +/** + * @ingroup actors + * @defgroup actors-tags Tags + * @brief Tags are various different types of triggers (NPC prompts, loading zones, Midna pop ups, environment changes, etc.). + */ + +//////////////////////////////////////////////////////////////////////////////// +// JSystem +//////////////////////////////////////////////////////////////////////////////// + +/** + * @defgroup jsystem JSystem + * @brief All JSystem classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-j2d J2D + * @brief All J2D classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-j3d J3D + * @brief All J3D classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-jaudio JAudio + * @brief All JAudio classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-jframework JFramework + * @brief All JFramework classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-jgadget JGadget + * @brief All JGadget classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-jkernel JKernel + * @brief All JKernel classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-jmath JMath + * @brief All JMath classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-jmessage JMessage + * @brief All JMessage classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-jparticle JParticle + * @brief All JParticle classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-jstage JStage + * @brief All JStage classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-jstudio JStudio + * @brief All JStudio classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-jsupport JSupport + * @brief All JSupport classes. + */ + +/** + * @ingroup jsystem + * @defgroup jsystem-jutility JUtility + * @brief All JUtility classes. + */ \ No newline at end of file diff --git a/docs/midna.png b/docs/midna.png new file mode 100644 index 0000000000000000000000000000000000000000..273f00b97601efe26fad1846e9e530879417ac51 GIT binary patch literal 131921 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 22) & 0x03); } }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DTexCoordInfo { /* 0x0 */ u8 mTexGenType; /* 0x1 */ u8 mTexGenSrc; @@ -213,6 +260,10 @@ struct J2DTexCoordInfo { extern J2DTexCoordInfo const j2dDefaultTexCoordInfo[8]; +/** + * @ingroup jsystem-j2d + * + */ class J2DTexCoord { public: /* 802EB260 */ inline J2DTexCoord() { @@ -231,6 +282,10 @@ private: /* 0x0 */ J2DTexCoordInfo mTexCoordInfo; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DTevOrderInfo { /* 0x0 */ u8 mTexCoord; /* 0x1 */ u8 mTexMap; @@ -247,6 +302,10 @@ struct J2DTevOrderInfo { extern const J2DTevOrderInfo j2dDefaultTevOrderInfoNull; +/** + * @ingroup jsystem-j2d + * + */ class J2DTevOrder { public: /* 802F1B70 */ J2DTevOrder() { @@ -265,6 +324,10 @@ public: /* 0x0 */ J2DTevOrderInfo mTevOrderInfo; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DTevStageInfo { /* 0x00 */ u8 field_0x0; /* 0x01 */ u8 mColorA; @@ -288,6 +351,10 @@ struct J2DTevStageInfo { /* 0x13 */ u8 field_0x13; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DTevSwapModeInfo { /* 0x0 */ u8 mRasSel; /* 0x1 */ u8 mTexSel; @@ -297,6 +364,10 @@ struct J2DTevSwapModeInfo { extern const J2DTevSwapModeInfo j2dDefaultTevSwapMode; +/** + * @ingroup jsystem-j2d + * + */ class J2DTevStage { public: /* 802F4110 */ J2DTevStage(J2DTevStageInfo const&); @@ -426,6 +497,10 @@ private: /* 0x7 */ u8 field_0x7; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DTevSwapModeTableInfo { /* 0x0 */ u8 field_0x0; /* 0x1 */ u8 field_0x1; @@ -439,6 +514,10 @@ inline u8 J2DCalcTevSwapTable(u8 param_0, u8 param_1, u8 param_2, u8 param_3) { extern const J2DTevSwapModeTableInfo j2dDefaultTevSwapModeTable; +/** + * @ingroup jsystem-j2d + * + */ class J2DTevSwapModeTable { public: /* 802F1934 */ J2DTevSwapModeTable(); diff --git a/include/JSystem/J2DGraph/J2DTextBox.h b/include/JSystem/J2DGraph/J2DTextBox.h index 979c9039c1..2a64b83493 100644 --- a/include/JSystem/J2DGraph/J2DTextBox.h +++ b/include/JSystem/J2DGraph/J2DTextBox.h @@ -19,11 +19,19 @@ enum J2DTextBoxHBinding { /* 0x2 */ HBIND_LEFT }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DTbxBlockHeader { /* 0x00 */ u32 mTag; /* 0x04 */ s32 mSize; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DTextBoxInfo { /* 0x00 */ u16 field_0x0; /* 0x02 */ u16 field_0x2; @@ -42,6 +50,10 @@ struct J2DTextBoxInfo { /* 0x1E */ u16 field_0x1e; }; // Size: 0x20 +/** + * @ingroup jsystem-j2d + * + */ class J2DTextBox : public J2DPane { public: struct TFontSize { diff --git a/include/JSystem/J2DGraph/J2DTextBoxEx.h b/include/JSystem/J2DGraph/J2DTextBoxEx.h index 301d11063a..ff663f093b 100644 --- a/include/JSystem/J2DGraph/J2DTextBoxEx.h +++ b/include/JSystem/J2DGraph/J2DTextBoxEx.h @@ -2,10 +2,13 @@ #define J2DTEXTBOXEX_H #include "JSystem/J2DGraph/J2DTextBox.h" -#include "dolphin/types.h" class J2DMaterial; +/** + * @ingroup jsystem-j2d + * + */ class J2DTextBoxEx : public J2DTextBox { public: enum stage_enum { diff --git a/include/JSystem/J2DGraph/J2DWindow.h b/include/JSystem/J2DGraph/J2DWindow.h index 3eaeecc92f..20ab4c1c7d 100644 --- a/include/JSystem/J2DGraph/J2DWindow.h +++ b/include/JSystem/J2DGraph/J2DWindow.h @@ -7,6 +7,10 @@ class JSURandomInputStream; class JUTTexture; +/** + * @ingroup jsystem-j2d + * + */ class J2DWindow : public J2DPane { public: struct TMaterial { diff --git a/include/JSystem/J2DGraph/J2DWindowEx.h b/include/JSystem/J2DGraph/J2DWindowEx.h index a845306581..1c9415ccfd 100644 --- a/include/JSystem/J2DGraph/J2DWindowEx.h +++ b/include/JSystem/J2DGraph/J2DWindowEx.h @@ -2,8 +2,11 @@ #define J2DWINDOWEX_H #include "JSystem/J2DGraph/J2DWindow.h" -#include "dolphin/types.h" +/** + * @ingroup jsystem-j2d + * + */ class J2DWindowEx : public J2DWindow { public: enum stage_enum { diff --git a/include/JSystem/J3DGraphAnimator/J3DAnimation.h b/include/JSystem/J3DGraphAnimator/J3DAnimation.h index 98627e90f1..4cfa7cfab3 100644 --- a/include/JSystem/J3DGraphAnimator/J3DAnimation.h +++ b/include/JSystem/J3DGraphAnimator/J3DAnimation.h @@ -3,7 +3,6 @@ #include "JSystem/J3DGraphAnimator/J3DModelData.h" #include "JSystem/JUtility/JUTNameTab.h" -#include "global.h" struct JUTDataBlockHeader { /* 0x0 */ u32 mType; @@ -28,12 +27,20 @@ struct JUTDataFileHeader { // actual struct name unknown typedef struct _GXColor GXColor; typedef struct _GXColorS10 GXColorS10; +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmKeyTableBase { /* 0x00 */ u16 mMaxFrame; /* 0x02 */ u16 mOffset; /* 0x04 */ u16 mType; }; // Size = 0x6 +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmColorKeyTable { J3DAnmKeyTableBase mRInfo; J3DAnmKeyTableBase mGInfo; @@ -41,11 +48,19 @@ struct J3DAnmColorKeyTable { J3DAnmKeyTableBase mAInfo; }; // Size = 0x18 +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmVtxColorIndexData { /* 0x00 */ u16 mNum; /* 0x04 */ void* mpData; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmColorFullTable { /* 0x00 */ u16 mRMaxFrame; /* 0x02 */ u16 mROffset; @@ -57,17 +72,29 @@ struct J3DAnmColorFullTable { /* 0x0E */ u16 mAOffset; }; // Size = 0x10 +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmVisibilityFullTable { u16 _0; u16 _2; }; // Size = 0x4 +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmTransformKeyTable { J3DAnmKeyTableBase mScaleInfo; J3DAnmKeyTableBase mRotationInfo; J3DAnmKeyTableBase mTranslateInfo; }; // Size = 0x12 +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmTransformFullTable { /* 0x00 */ u16 mScaleMaxFrame; /* 0x02 */ u16 mScaleOffset; @@ -77,6 +104,10 @@ struct J3DAnmTransformFullTable { /* 0x0A */ u16 mTranslateOffset; }; // Size = 0xC +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmTexPatternFullTable { /* 0x00 */ u16 mMaxFrame; /* 0x02 */ u16 mOffset; @@ -84,6 +115,10 @@ struct J3DAnmTexPatternFullTable { /* 0x06 */ u16 _6; }; // Size = 0x8 +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmCRegKeyTable { /* 0x00 */ J3DAnmKeyTableBase mRTable; /* 0x06 */ J3DAnmKeyTableBase mGTable; @@ -93,6 +128,10 @@ struct J3DAnmCRegKeyTable { u8 padding[3]; }; // Size = 0x1C +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmKRegKeyTable { /* 0x00 */ J3DAnmKeyTableBase mRTable; /* 0x06 */ J3DAnmKeyTableBase mGTable; @@ -102,11 +141,19 @@ struct J3DAnmKRegKeyTable { u8 padding[3]; }; // Size = 0x1C +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmDataBlockHeader { // actual name unknown /* 0x0 */ u32 mType; /* 0x4 */ u32 mNextOffset; }; // Size = 0x8 +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmDataHeader { // actual name unknown /* 0x00 */ u32 mMagic; /* 0x04 */ u32 mType; @@ -116,6 +163,10 @@ struct J3DAnmDataHeader { // actual name unknown /* 0x20 */ J3DAnmDataBlockHeader mFirst; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmVtxColorFullData { /* 0x00 */ J3DAnmDataBlockHeader mHeader; /* 0x08 */ u8 field_0x8; @@ -134,6 +185,10 @@ struct J3DAnmVtxColorFullData { STATIC_ASSERT(sizeof(J3DAnmVtxColorFullData) == 0x40); +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmVisibilityFullData { /* 0x00 */ J3DAnmDataBlockHeader mHeader; /* 0x08 */ u8 field_0x8; @@ -147,6 +202,10 @@ struct J3DAnmVisibilityFullData { STATIC_ASSERT(sizeof(J3DAnmVisibilityFullData) == 0x18); +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmTransformFullData { /* 0x00 */ J3DAnmDataBlockHeader mHeader; /* 0x08 */ u8 field_0x8; @@ -162,6 +221,10 @@ struct J3DAnmTransformFullData { STATIC_ASSERT(sizeof(J3DAnmTransformFullData) == 0x24); +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmColorKeyData { /* 0x00 */ J3DAnmDataBlockHeader mHeader; /* 0x08 */ u8 field_0x8; @@ -183,6 +246,10 @@ struct J3DAnmColorKeyData { STATIC_ASSERT(sizeof(J3DAnmColorKeyData) == 0x34); +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmTextureSRTKeyData { /* 0x00 */ J3DAnmDataBlockHeader mHeader; /* 0x08 */ u8 field_0x8; @@ -217,6 +284,10 @@ struct J3DAnmTextureSRTKeyData { STATIC_ASSERT(sizeof(J3DAnmTextureSRTKeyData) == 0x60); +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmVtxColorKeyData { /* 0x00 */ J3DAnmDataBlockHeader mHeader; /* 0x08 */ u8 field_0x8; @@ -235,6 +306,10 @@ struct J3DAnmVtxColorKeyData { STATIC_ASSERT(sizeof(J3DAnmVtxColorKeyData) == 0x40); +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmTexPatternFullData { /* 0x00 */ J3DAnmDataBlockHeader mHeader; /* 0x08 */ u8 field_0x8; @@ -250,6 +325,10 @@ struct J3DAnmTexPatternFullData { STATIC_ASSERT(sizeof(J3DAnmTexPatternFullData) == 0x20); +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmTevRegKeyData { /* 0x00 */ J3DAnmDataBlockHeader mHeader; /* 0x08 */ u8 field_0x8; @@ -283,6 +362,10 @@ struct J3DAnmTevRegKeyData { STATIC_ASSERT(sizeof(J3DAnmTevRegKeyData) == 0x58); +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmColorFullData { /* PlaceHolder Structure */ /* 0x00 */ J3DAnmDataBlockHeader mHeader; /* 0x08 */ u8 field_0x8; @@ -301,10 +384,18 @@ struct J3DAnmColorFullData { /* PlaceHolder Structure */ STATIC_ASSERT(sizeof(J3DAnmColorFullData) == 0x34); +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmClusterKeyTable { /* 0x00 */ J3DAnmKeyTableBase mWeightTable; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmTransformKeyData { /* 0x00 */ JUTDataBlockHeader mHeader; /* 0x08 */ u8 field_0x8; @@ -318,6 +409,10 @@ struct J3DAnmTransformKeyData { /* 0x20 */ s32 field_0x20; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmClusterKeyData { /* 0x00 */ JUTDataBlockHeader mHeader; /* 0x08 */ u8 field_0x8; @@ -327,6 +422,10 @@ struct J3DAnmClusterKeyData { /* 0x14 */ s32 mWeightOffset; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmClusterFullData { /* 0x00 */ JUTDataBlockHeader mHeader; /* 0x08 */ u8 field_0x8; @@ -336,11 +435,19 @@ struct J3DAnmClusterFullData { /* 0x14 */ s32 mWeightOffset; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmClusterFullTable { u16 mMaxFrame; u16 mOffset; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmBase { public: J3DAnmBase() { @@ -371,6 +478,10 @@ public: /* 0x8 */ f32 mFrame; }; // Size: 0xC +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmTransform : public J3DAnmBase { public: /* 80328E40 */ J3DAnmTransform(s16, f32*, s16*, f32*); @@ -388,6 +499,10 @@ public: /* 0x1E */ s16 field_0x1e; }; // Size: 0x20 +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmTransformKey : public J3DAnmTransform { public: J3DAnmTransformKey() : J3DAnmTransform(0, NULL, NULL, NULL) { @@ -405,6 +520,10 @@ public: /* 0x24 */ J3DAnmTransformKeyTable* mAnmTable; }; // Size: 0x28 +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmTransformFull : public J3DAnmTransform { public: J3DAnmTransformFull() : J3DAnmTransform(0, NULL, NULL, NULL) { mAnmTable = NULL; } @@ -416,6 +535,10 @@ public: /* 0x20 */ J3DAnmTransformFullTable* mAnmTable; }; // Size: 0x24 +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmTransformFullWithLerp : public J3DAnmTransformFull { public: /* 8032C228 */ virtual ~J3DAnmTransformFullWithLerp(); @@ -427,6 +550,10 @@ struct J3DTextureSRTInfo; class J3DModelData; class J3DMaterialTable; +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmTextureSRTKey : public J3DAnmBase { public: /* 80329E5C */ J3DAnmTextureSRTKey(); @@ -477,6 +604,10 @@ public: /* 0x78 */ u32 mTexMtxCalcType; }; // Size: 0x7C +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmTexPattern : public J3DAnmBase { public: /* 8032AED8 */ J3DAnmTexPattern(); @@ -500,6 +631,10 @@ public: /* 0x1C */ JUTNameTab mUpdateMaterialName; }; // Size: 0x2C +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmTevRegKey : public J3DAnmBase { public: /* 8032AE18 */ J3DAnmTevRegKey(); @@ -549,6 +684,10 @@ public: /* 0x6C */ s16* mAnmKRegDataA; }; // Size: 0x70 +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmColor : public J3DAnmBase { public: /* 8032A828 */ J3DAnmColor(); @@ -571,6 +710,10 @@ public: /* 0x1C */ JUTNameTab mUpdateMaterialName; }; // Size: 0x2C +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmColorKey : public J3DAnmColor { public: /* 8032AB00 */ J3DAnmColorKey(); @@ -586,6 +729,10 @@ public: /* 0x3C */ J3DAnmColorKeyTable* field_0x3c; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmColorFull : public J3DAnmColor { public: /* 8032AB00 */ J3DAnmColorFull(); @@ -601,6 +748,10 @@ public: /* 0x3C */ J3DAnmColorFullTable* mAnmTable; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmVtxColor : public J3DAnmBase { public: J3DAnmVtxColor(); @@ -613,6 +764,10 @@ public: /* 0x10 */ J3DAnmVtxColorIndexData* mAnmVtxColorIndexData[2]; }; // Size: 0x18 +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmVtxColorKey : public J3DAnmVtxColor { public: /* 8032A4E0 */ J3DAnmVtxColorKey(); @@ -628,6 +783,10 @@ public: /* 0x30 */ s16* mColorA; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmVtxColorFull : public J3DAnmVtxColor { public: /* 8032A30C */ J3DAnmVtxColorFull(); @@ -643,6 +802,10 @@ public: /* 0x30 */ u8* mColorA; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmCluster : public J3DAnmBase { public: J3DAnmCluster(s16 param_1, f32* param_2) : J3DAnmBase(param_1) { mWeight = param_2; } @@ -654,6 +817,10 @@ public: /* 0x0C */ f32* mWeight; }; // Size: 0x10 +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmClusterFull : public J3DAnmCluster { public: J3DAnmClusterFull() : J3DAnmCluster(0, 0) { mAnmTable = NULL; } @@ -665,6 +832,10 @@ public: /* 0x10 */ J3DAnmClusterFullTable* mAnmTable; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmClusterKey : public J3DAnmCluster { public: J3DAnmClusterKey() : J3DAnmCluster(0, NULL) { mAnmTable = NULL; } @@ -676,6 +847,10 @@ public: /* 0x10 */ J3DAnmClusterKeyTable* mAnmTable; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DAnmVisibilityFull : public J3DAnmBase { public: J3DAnmVisibilityFull() : J3DAnmBase(0) { @@ -694,6 +869,10 @@ public: /* 0x14 */ u8* mVisibility; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DFrameCtrl { public: enum Attribute_e { diff --git a/include/JSystem/J3DGraphAnimator/J3DCluster.h b/include/JSystem/J3DGraphAnimator/J3DCluster.h index 221fd98d99..ea9fbe2b7b 100644 --- a/include/JSystem/J3DGraphAnimator/J3DCluster.h +++ b/include/JSystem/J3DGraphAnimator/J3DCluster.h @@ -11,6 +11,10 @@ class J3DModel; class J3DAnmCluster; class JUTNameTab; +/** + * @ingroup jsystem-j3d + * + */ class J3DCluster { public: void operator=(const J3DCluster& other) { @@ -44,6 +48,10 @@ public: /* 0x20 */ J3DDeformer* mDeformer; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DClusterKey { public: void operator=(const J3DClusterKey& other) { @@ -59,6 +67,10 @@ public: /* 0x08 */ void* field_0x8; }; // Size: 0x0C +/** + * @ingroup jsystem-j3d + * + */ class J3DDeformData { public: /* 8032E1F8 */ J3DDeformData(); @@ -88,6 +100,10 @@ public: /* 0x24 */ JUTNameTab* mClusterKeyName; }; // Size: 0x28 +/** + * @ingroup jsystem-j3d + * + */ class J3DClusterVertex { public: void operator=(const J3DClusterVertex& other) { diff --git a/include/JSystem/J3DGraphAnimator/J3DJoint.h b/include/JSystem/J3DGraphAnimator/J3DJoint.h index 093cc448e0..fa69713582 100644 --- a/include/JSystem/J3DGraphAnimator/J3DJoint.h +++ b/include/JSystem/J3DGraphAnimator/J3DJoint.h @@ -8,6 +8,10 @@ class J3DJoint; class J3DMaterial; class J3DMtxBuffer; +/** + * @ingroup jsystem-j3d + * + */ class J3DMtxCalc { public: /* 80325D1C */ static void setMtxBuffer(J3DMtxBuffer*); @@ -30,11 +34,19 @@ public: static J3DJoint* mJoint; }; // Size: 0x4 +/** + * @ingroup jsystem-j3d + * + */ class J3DMtxCalcNoAnmBase : public J3DMtxCalc { public: /* 8000FA8C */ virtual ~J3DMtxCalcNoAnmBase(); }; +/** + * @ingroup jsystem-j3d + * + */ template class J3DMtxCalcNoAnm : public J3DMtxCalcNoAnmBase { public: @@ -47,6 +59,10 @@ public: class J3DJoint; typedef int (*J3DJointCallBack)(J3DJoint*, int); +/** + * @ingroup jsystem-j3d + * + */ class J3DJoint { public: /* 8032F13C */ void appendChild(J3DJoint*); @@ -93,22 +109,42 @@ private: /* 0x58 */ J3DMaterial* mMesh; }; // Size: 0x5C +/** + * @ingroup jsystem-j3d + * + */ struct J3DMtxCalcJ3DSysInitMaya { /* 8032ECAC */ static void init(const Vec&, const Mtx& param_1); }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DMtxCalcJ3DSysInitBasic { /* 8032EC28 */ static void init(const Vec&, const Mtx& param_1); }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DMtxCalcCalcTransformSoftimage { /* 8032EE50 */ static void calcTransform(J3DTransformInfo const&); }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DMtxCalcCalcTransformMaya { /* 8032EFBC */ static void calcTransform(J3DTransformInfo const&); }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DMtxCalcCalcTransformBasic { /* 8032ED30 */ static void calcTransform(J3DTransformInfo const&); }; diff --git a/include/JSystem/J3DGraphAnimator/J3DJointTree.h b/include/JSystem/J3DGraphAnimator/J3DJointTree.h index 542d513006..e0b809eb25 100644 --- a/include/JSystem/J3DGraphAnimator/J3DJointTree.h +++ b/include/JSystem/J3DGraphAnimator/J3DJointTree.h @@ -2,10 +2,13 @@ #define J3DJOINTTREE_H #include "JSystem/J3DGraphAnimator/J3DJoint.h" -#include "dolphin/types.h" class JUTNameTab; +/** + * @ingroup jsystem-j3d + * + */ struct J3DModelHierarchy { /* 0x0 */ u16 mType; /* 0x2 */ u16 mValue; @@ -13,6 +16,10 @@ struct J3DModelHierarchy { class J3DMaterialTable; +/** + * @ingroup jsystem-j3d + * + */ struct J3DDrawMtxData { /* 803115E0 */ J3DDrawMtxData(); /* 803115F4 */ ~J3DDrawMtxData(); @@ -25,6 +32,10 @@ struct J3DDrawMtxData { class J3DShapeTable; +/** + * @ingroup jsystem-j3d + * + */ class J3DJointTree { public: /* 80325A18 */ J3DJointTree(); diff --git a/include/JSystem/J3DGraphAnimator/J3DMaterialAnm.h b/include/JSystem/J3DGraphAnimator/J3DMaterialAnm.h index 340a6c8169..59375ef26d 100644 --- a/include/JSystem/J3DGraphAnimator/J3DMaterialAnm.h +++ b/include/JSystem/J3DGraphAnimator/J3DMaterialAnm.h @@ -6,6 +6,10 @@ typedef struct _GXColor GXColor; typedef struct _GXColorS10 GXColorS10; +/** + * @ingroup jsystem-j3d + * + */ class J3DMatColorAnm { public: /* 8003B2B8 */ ~J3DMatColorAnm() {}; @@ -32,6 +36,10 @@ private: /* 0x4 */ J3DAnmColor* mAnmColor; }; // Size: 0x8 +/** + * @ingroup jsystem-j3d + * + */ class J3DTexNoAnm { public: /* 8003B1F8 */ ~J3DTexNoAnm() {}; @@ -59,6 +67,10 @@ private: /* 0x8 */ J3DAnmTexPattern* mAnmTexPattern; }; // Size: 0xC +/** + * @ingroup jsystem-j3d + * + */ class J3DTexMtxAnm { public: /* 8003B264 */ ~J3DTexMtxAnm() {}; @@ -87,6 +99,10 @@ private: /* 0x4 */ J3DAnmTextureSRTKey* mAnmTransform; }; // Size: 0x8 +/** + * @ingroup jsystem-j3d + * + */ class J3DTevKColorAnm { public: /* 8003B150 */ ~J3DTevKColorAnm() {} @@ -113,6 +129,10 @@ private: /* 0x4 */ J3DAnmTevRegKey* mAnmTevReg; }; // Size: 0x8 +/** + * @ingroup jsystem-j3d + * + */ class J3DTevColorAnm { public: /* 8003B1A4 */ ~J3DTevColorAnm() {} @@ -139,6 +159,10 @@ private: /* 0x4 */ J3DAnmTevRegKey* mAnmTevReg; }; // Size: 0x8 +/** + * @ingroup jsystem-j3d + * + */ class J3DMaterialAnm { public: J3DMaterialAnm() { initialize(); } diff --git a/include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h b/include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h index 4086f29ce5..f0f21a8b2b 100644 --- a/include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h +++ b/include/JSystem/J3DGraphAnimator/J3DMaterialAttach.h @@ -11,6 +11,10 @@ class J3DAnmTextureSRTKey; class J3DAnmTevRegKey; class JUTNameTab; +/** + * @ingroup jsystem-j3d + * + */ class J3DMaterialTable { public: /* 8032F5A8 */ void clear(); diff --git a/include/JSystem/J3DGraphAnimator/J3DModel.h b/include/JSystem/J3DGraphAnimator/J3DModel.h index 4fa4973b2a..4d878d8a41 100644 --- a/include/JSystem/J3DGraphAnimator/J3DModel.h +++ b/include/JSystem/J3DGraphAnimator/J3DModel.h @@ -3,8 +3,6 @@ #include "JSystem/J3DGraphAnimator/J3DSkinDeform.h" #include "JSystem/J3DGraphBase/J3DPacket.h" -#include "JSystem/J3DGraphBase/J3DVertex.h" -#include "dolphin/mtx.h" #include "dolphin/types.h" enum J3DMdlFlag { @@ -18,10 +16,18 @@ enum J3DMdlFlag { /* 0x80000 */ J3DMdlFlag_Unk80000 = 0x80000, }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DUnkCalc1 { virtual void calc(J3DModel* model); }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DUnkCalc2 { virtual void unk(); virtual void calc(J3DModelData* mpModelData); @@ -29,6 +35,10 @@ struct J3DUnkCalc2 { typedef void (*J3DCalcCallBack)(J3DModel*, u32 timing); +/** + * @ingroup jsystem-j3d + * + */ class J3DModel { public: J3DModel() { diff --git a/include/JSystem/J3DGraphAnimator/J3DModelData.h b/include/JSystem/J3DGraphAnimator/J3DModelData.h index c63a79fae8..17557f4495 100644 --- a/include/JSystem/J3DGraphAnimator/J3DModelData.h +++ b/include/JSystem/J3DGraphAnimator/J3DModelData.h @@ -10,6 +10,10 @@ typedef struct _GXColor GXColor; class JUTNameTab; +/** + * @ingroup jsystem-j3d + * + */ class J3DModelData { public: /* 80325D88 */ void clear(); diff --git a/include/JSystem/J3DGraphAnimator/J3DMtxBuffer.h b/include/JSystem/J3DGraphAnimator/J3DMtxBuffer.h index fd03736f3c..28ad960ed3 100644 --- a/include/JSystem/J3DGraphAnimator/J3DMtxBuffer.h +++ b/include/JSystem/J3DGraphAnimator/J3DMtxBuffer.h @@ -2,10 +2,13 @@ #define J3DMTXBUFFER_H #include "JSystem/J3DGraphAnimator/J3DModelData.h" -#include "dolphin/types.h" class J3DModelData; +/** + * @ingroup jsystem-j3d + * + */ class J3DMtxBuffer { public: J3DMtxBuffer() { initialize(); } diff --git a/include/JSystem/J3DGraphAnimator/J3DShapeTable.h b/include/JSystem/J3DGraphAnimator/J3DShapeTable.h index f31cff671c..8ae9ff94a9 100644 --- a/include/JSystem/J3DGraphAnimator/J3DShapeTable.h +++ b/include/JSystem/J3DGraphAnimator/J3DShapeTable.h @@ -2,10 +2,13 @@ #define J3DSHAPETABLE_H #include "JSystem/J3DGraphBase/J3DShape.h" -#include "dolphin/types.h" class JUTNameTab; +/** + * @ingroup jsystem-j3d + * + */ class J3DShapeTable { public: J3DShapeTable() { diff --git a/include/JSystem/J3DGraphAnimator/J3DSkinDeform.h b/include/JSystem/J3DGraphAnimator/J3DSkinDeform.h index 6adf2c350e..1b6ea8631f 100644 --- a/include/JSystem/J3DGraphAnimator/J3DSkinDeform.h +++ b/include/JSystem/J3DGraphAnimator/J3DSkinDeform.h @@ -3,7 +3,6 @@ #include "JSystem/J3DGraphAnimator/J3DCluster.h" #include "JSystem/J3DGraphAnimator/J3DMtxBuffer.h" -#include "JSystem/J3DGraphBase/J3DTransform.h" #include "dolphin/types.h" class J3DModel; @@ -11,6 +10,10 @@ class J3DAnmCluster; class J3DClusterVertex; class JUTNameTab; +/** + * @ingroup jsystem-j3d + * + */ struct J3DSkinNList { /* 8032C6E4 */ J3DSkinNList(); /* 8032C85C */ void calcSkin_VtxPosF32(f32 (*)[4], void*, void*); @@ -24,6 +27,10 @@ struct J3DSkinNList { /* 0x12 */ u16 field_0x12; }; // Size: 0x14 +/** + * @ingroup jsystem-j3d + * + */ class J3DSkinDeform { public: /* 8032C96C */ J3DSkinDeform(); @@ -68,6 +75,10 @@ private: /* 0x24 */ J3DSkinNList* mSkinNList; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DDeformer { public: /* 8032E39C */ J3DDeformer(J3DDeformData*); diff --git a/include/JSystem/J3DGraphBase/J3DDrawBuffer.h b/include/JSystem/J3DGraphBase/J3DDrawBuffer.h index 714de468dd..e58be9e6a9 100644 --- a/include/JSystem/J3DGraphBase/J3DDrawBuffer.h +++ b/include/JSystem/J3DGraphBase/J3DDrawBuffer.h @@ -2,7 +2,6 @@ #define J3DDRAWBUFFER_H #include "JSystem/J3DGraphBase/J3DSys.h" -#include "dolphin/types.h" // matches debug inline f32 J3DCalcZValue(register MtxP m, register Vec v) { @@ -37,6 +36,10 @@ class J3DShapePacket; typedef int (J3DDrawBuffer::*sortFunc)(J3DMatPacket*); typedef void (J3DDrawBuffer::*drawFunc)() const; +/** + * @ingroup jsystem-j3d + * + */ class J3DDrawBuffer { public: enum EDrawType { diff --git a/include/JSystem/J3DGraphBase/J3DGD.h b/include/JSystem/J3DGraphBase/J3DGD.h index 1a10836999..53e63508c4 100644 --- a/include/JSystem/J3DGraphBase/J3DGD.h +++ b/include/JSystem/J3DGraphBase/J3DGD.h @@ -2,7 +2,6 @@ #define J3DGD_H #include "dolphin/gd/GDBase.h" -#include "dolphin/gx.h" inline void J3DGDWrite_u8(u8 param) { __GDWrite(param); diff --git a/include/JSystem/J3DGraphBase/J3DMatBlock.h b/include/JSystem/J3DGraphBase/J3DMatBlock.h index d488d0b703..9634fb3b09 100644 --- a/include/JSystem/J3DGraphBase/J3DMatBlock.h +++ b/include/JSystem/J3DGraphBase/J3DMatBlock.h @@ -1,23 +1,34 @@ #ifndef J3DMATBLOCK_H #define J3DMATBLOCK_H -#include "JSystem/J3DGraphBase/J3DStruct.h" #include "JSystem/J3DGraphBase/J3DTevs.h" #include "JSystem/J3DGraphBase/J3DTexture.h" #include "dolphin/types.h" +/** + * @ingroup jsystem-j3d + * + */ struct J3DGXColorS10 : public GXColorS10 { /* 8000E460 */ J3DGXColorS10() {} J3DGXColorS10(J3DGXColorS10 const& other) { __memcpy(this, &other, sizeof(J3DGXColorS10)); } J3DGXColorS10(GXColorS10 const& color) : GXColorS10(color) {} }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DGXColor : public GXColor { /* 8000E538 */ J3DGXColor() {} J3DGXColor(J3DGXColor const& other) { __memcpy(this, &other, sizeof(J3DGXColor)); } J3DGXColor(GXColor const& color) : GXColor(color) {} }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DNBTScale : public J3DNBTScaleInfo { J3DNBTScale() {} J3DNBTScale(J3DNBTScaleInfo const& info) { @@ -29,6 +40,10 @@ struct J3DNBTScale : public J3DNBTScaleInfo { extern const J3DNBTScaleInfo j3dDefaultNBTScaleInfo; +/** + * @ingroup jsystem-j3d + * + */ class J3DTexGenBlock { public: /* 80317354 */ virtual void reset(J3DTexGenBlock*); @@ -72,6 +87,10 @@ struct J3DTexGenBlockNull : public J3DTexGenBlock { /* 80332AD0 */ virtual ~J3DTexGenBlockNull(); // {} }; +/** + * @ingroup jsystem-j3d + * + */ class J3DTexGenBlockPatched : public J3DTexGenBlock { public: J3DTexGenBlockPatched() { @@ -108,6 +127,10 @@ public: /* 0x58 */ u32 mTexMtxOffset; }; // Size: 0x5C +/** + * @ingroup jsystem-j3d + * + */ class J3DTexGenBlockBasic : public J3DTexGenBlockPatched { public: J3DTexGenBlockBasic() : mNBTScale(j3dDefaultNBTScaleInfo) { @@ -128,6 +151,10 @@ public: /* 0x5C */ J3DNBTScale mNBTScale; }; // Size: 0x6C +/** + * @ingroup jsystem-j3d + * + */ class J3DTexGenBlock4 : public J3DTexGenBlockPatched { public: J3DTexGenBlock4() : mNBTScale(j3dDefaultNBTScaleInfo) { @@ -148,6 +175,10 @@ public: /* 0x5C */ J3DNBTScale mNBTScale; }; // Size: 0x6C +/** + * @ingroup jsystem-j3d + * + */ class J3DTevBlock { public: /* 80317350 */ virtual void reset(J3DTevBlock*); @@ -210,6 +241,10 @@ protected: /* 0x4 */ u32 mTexNoOffset; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DTevBlockNull : public J3DTevBlock { public: J3DTevBlockNull() { initialize(); } @@ -221,6 +256,10 @@ public: /* 80332A44 */ virtual ~J3DTevBlockNull(); // {} }; +/** + * @ingroup jsystem-j3d + * + */ class J3DTevBlockPatched : public J3DTevBlock { public: J3DTevBlockPatched() { @@ -283,6 +322,10 @@ public: /* 0xD4 */ u32 mTevRegOffset; }; // Size: 0xD8 +/** + * @ingroup jsystem-j3d + * + */ class J3DTevBlock4 : public J3DTevBlock { public: J3DTevBlock4() { @@ -355,6 +398,10 @@ public: /* 0x90 */ u32 mTevRegOffset; }; // Size: 0x94 +/** + * @ingroup jsystem-j3d + * + */ class J3DTevBlock2 : public J3DTevBlock { public: J3DTevBlock2() { @@ -427,6 +474,10 @@ public: /* 0x68 */ u32 mTevRegOffset; }; // Size: 0x6C +/** + * @ingroup jsystem-j3d + * + */ class J3DTevBlock16 : public J3DTevBlock { public: J3DTevBlock16() { @@ -499,6 +550,10 @@ public: /* 0x170 */ u32 mTevRegOffset; }; // Size: 0x174 +/** + * @ingroup jsystem-j3d + * + */ class J3DTevBlock1 : public J3DTevBlock { public: J3DTevBlock1() { @@ -551,6 +606,10 @@ inline u16 calcZModeID(u8 param_0, u8 param_1, u8 param_2) { return param_1 * 2 + param_0 * 0x10 + param_2; } +/** + * @ingroup jsystem-j3d + * + */ struct J3DZModeInfo { /* 0x0 */ u8 field_0x0; /* 0x1 */ u8 field_0x1; @@ -558,6 +617,10 @@ struct J3DZModeInfo { /* 0x3 */ u8 pad; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DZMode { J3DZMode() : mZModeID(j3dDefaultZModeID) {} J3DZMode(J3DZModeInfo const& info) : mZModeID(calcZModeID(info.field_0x0, info.field_0x1, info.field_0x2)) {} @@ -569,6 +632,10 @@ struct J3DZMode { /* 0x0 */ u16 mZModeID; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DBlendInfo { void operator=(J3DBlendInfo const& other) { *(int*)&mType = *(int*)&other.mType; @@ -581,6 +648,10 @@ struct J3DBlendInfo { extern const J3DBlendInfo j3dDefaultBlendInfo; +/** + * @ingroup jsystem-j3d + * + */ struct J3DBlend : public J3DBlendInfo { J3DBlend() : J3DBlendInfo(j3dDefaultBlendInfo) {} J3DBlend(J3DBlendInfo const& info) : J3DBlendInfo(info) {} @@ -588,12 +659,20 @@ struct J3DBlend : public J3DBlendInfo { extern const J3DFogInfo j3dDefaultFogInfo; +/** + * @ingroup jsystem-j3d + * + */ struct J3DFog : public J3DFogInfo { J3DFog() { *(J3DFogInfo*)this = j3dDefaultFogInfo; } J3DFogInfo* getFogInfo() { return this; } void setFogInfo(J3DFogInfo info) { *(J3DFogInfo*)this = info; } }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DAlphaCompInfo { /* 0x0 */ u8 field_0x0; /* 0x1 */ u8 field_0x1; @@ -616,6 +695,10 @@ inline u32 calcAlphaCmpID(u32 param_1, u32 param_2, u32 param_3) { // return param_1 * 0x20 + param_2 * 8 + param_3; // } +/** + * @ingroup jsystem-j3d + * + */ struct J3DAlphaComp { J3DAlphaComp() : mID(j3dDefaultAlphaCmpID), mRef0(0), mRef1(0) {} J3DAlphaComp(u16 id) : mID(id), mRef0(0), mRef1(0) {} @@ -641,6 +724,10 @@ struct J3DAlphaComp { /* 0x03 */ u8 mRef1; }; // Size: 0x4 +/** + * @ingroup jsystem-j3d + * + */ class J3DPEBlock { public: /* 80317348 */ virtual void reset(J3DPEBlock*); @@ -674,12 +761,20 @@ public: virtual ~J3DPEBlock() {} }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DPEBlockNull : public J3DPEBlock { /* 803329A0 */ virtual void load(); // {} /* 803329A4 */ virtual u32 getType(); // { return 'PENL'; } /* 803329B0 */ virtual ~J3DPEBlockNull(); // {} }; +/** + * @ingroup jsystem-j3d + * + */ class J3DPEBlockXlu : public J3DPEBlock { public: /* 8031E98C */ virtual void load(); @@ -688,6 +783,10 @@ public: /* 80323264 */ virtual ~J3DPEBlockXlu(); }; +/** + * @ingroup jsystem-j3d + * + */ class J3DPEBlockTexEdge : public J3DPEBlock { public: /* 8031E6C8 */ virtual void load(); @@ -696,6 +795,10 @@ public: /* 803232CC */ virtual ~J3DPEBlockTexEdge(); }; +/** + * @ingroup jsystem-j3d + * + */ class J3DPEBlockOpa : public J3DPEBlock { public: /* 8031E408 */ virtual void load(); @@ -704,6 +807,10 @@ public: /* 80323334 */ virtual ~J3DPEBlockOpa(); }; +/** + * @ingroup jsystem-j3d + * + */ class J3DPEBlockFull : public J3DPEBlock { public: J3DPEBlockFull() { @@ -750,6 +857,10 @@ public: /* 0x3C */ u32 mFogOffset; }; // Size: 0x40 +/** + * @ingroup jsystem-j3d + * + */ class J3DPEBlockFogOff : public J3DPEBlock { public: J3DPEBlockFogOff() { @@ -787,6 +898,10 @@ public: /* 0x0F */ u8 mDither; }; // Size: 0x10 +/** + * @ingroup jsystem-j3d + * + */ struct J3DIndTexCoordScaleInfo { /* 0x0 */ u8 mScaleS; /* 0x1 */ u8 mScaleT; @@ -796,6 +911,10 @@ struct J3DIndTexCoordScaleInfo { extern const J3DIndTexCoordScaleInfo j3dDefaultIndTexCoordScaleInfo; +/** + * @ingroup jsystem-j3d + * + */ struct J3DIndTexCoordScale : public J3DIndTexCoordScaleInfo { /* 8000E0E4 */ J3DIndTexCoordScale() : J3DIndTexCoordScaleInfo(j3dDefaultIndTexCoordScaleInfo) {} J3DIndTexCoordScale(J3DIndTexCoordScaleInfo const& info) : J3DIndTexCoordScaleInfo(info) {} @@ -804,12 +923,20 @@ struct J3DIndTexCoordScale : public J3DIndTexCoordScaleInfo { extern J3DIndTexMtxInfo const j3dDefaultIndTexMtxInfo; +/** + * @ingroup jsystem-j3d + * + */ struct J3DIndTexMtx : public J3DIndTexMtxInfo { /* 8000E0F0 */ J3DIndTexMtx() { *(J3DIndTexMtxInfo*)this = j3dDefaultIndTexMtxInfo; } J3DIndTexMtx(J3DIndTexMtxInfo const& info) { *(J3DIndTexMtxInfo*)this = info; } /* 8000E064 */ ~J3DIndTexMtx() {} }; // Size: 0x1C +/** + * @ingroup jsystem-j3d + * + */ struct J3DIndTexOrderInfo { /* 0x0 */ u8 mMap; /* 0x1 */ u8 mCoord; @@ -819,11 +946,19 @@ struct J3DIndTexOrderInfo { extern const J3DIndTexOrderInfo j3dDefaultIndTexOrderNull; +/** + * @ingroup jsystem-j3d + * + */ struct J3DIndTexOrder : public J3DIndTexOrderInfo { /* 8000E128 */ J3DIndTexOrder() : J3DIndTexOrderInfo(j3dDefaultIndTexOrderNull) {} J3DIndTexOrder(J3DIndTexOrderInfo const& info) : J3DIndTexOrderInfo(info) {} }; // Size: 0x04 +/** + * @ingroup jsystem-j3d + * + */ class J3DIndBlock { public: /* 8031734C */ virtual void reset(J3DIndBlock*); @@ -845,6 +980,10 @@ public: /* 8031726C */ virtual ~J3DIndBlock(); }; +/** + * @ingroup jsystem-j3d + * + */ class J3DIndBlockNull : public J3DIndBlock { public: /* 803173A0 */ virtual void reset(J3DIndBlock*); @@ -854,6 +993,10 @@ public: /* 803173B0 */ virtual ~J3DIndBlockNull(); }; +/** + * @ingroup jsystem-j3d + * + */ class J3DIndBlockFull : public J3DIndBlock { public: J3DIndBlockFull() { @@ -885,6 +1028,10 @@ public: /* 0x6C */ J3DIndTexCoordScale mIndTexCoordScale[4]; }; // Size: 0x7C +/** + * @ingroup jsystem-j3d + * + */ struct J3DColorChanInfo { /* 0x0 */ u8 field_0x0; /* 0x1 */ u8 field_0x1; @@ -901,6 +1048,10 @@ extern const J3DColorChanInfo j3dDefaultColorChanInfo; } */ +/** + * @ingroup jsystem-j3d + * + */ struct J3DColorChan { /* 8000E47C */ J3DColorChan() { setColorChanInfo(j3dDefaultColorChanInfo); @@ -940,6 +1091,10 @@ struct J3DColorChan { /* 0x0 */ u16 mColorChanID; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DColorBlock { public: /* 80317324 */ virtual void load(); @@ -978,11 +1133,19 @@ public: /* 80317138 */ virtual ~J3DColorBlock() {} }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DColorBlockNull : public J3DColorBlock { /* 80332B2C */ virtual u32 getType(); // { return 'CLNL'; } /* 80332B38 */ virtual ~J3DColorBlockNull(); // {} }; +/** + * @ingroup jsystem-j3d + * + */ class J3DColorBlockLightOn : public J3DColorBlock { public: J3DColorBlockLightOn() { @@ -1035,6 +1198,10 @@ public: /* 0x48 */ u32 mColorChanOffset; }; // Size: 0x4C +/** + * @ingroup jsystem-j3d + * + */ class J3DColorBlockLightOff : public J3DColorBlock { public: J3DColorBlockLightOff() { @@ -1078,6 +1245,10 @@ public: /* 0x1C */ u32 mColorChanOffset; }; // Size: 0x20 +/** + * @ingroup jsystem-j3d + * + */ class J3DColorBlockAmbientOn : public J3DColorBlockLightOff { public: J3DColorBlockAmbientOn() { diff --git a/include/JSystem/J3DGraphBase/J3DMaterial.h b/include/JSystem/J3DGraphBase/J3DMaterial.h index fd9fce606a..79545e01e8 100644 --- a/include/JSystem/J3DGraphBase/J3DMaterial.h +++ b/include/JSystem/J3DGraphBase/J3DMaterial.h @@ -1,131 +1,142 @@ -#ifndef J3DMATERIAL_H -#define J3DMATERIAL_H - -#include "JSystem/J3DGraphBase/J3DMatBlock.h" -#include "JSystem/J3DGraphBase/J3DPacket.h" -#include "JSystem/J3DGraphBase/J3DShape.h" -#include "JSystem/J3DGraphBase/J3DTexture.h" -#include "dolphin/types.h" - -class J3DJoint; -class J3DMaterialAnm; - -class J3DMaterial { -public: - /* 803157A0 */ static J3DColorBlock* createColorBlock(u32); - /* 803159A0 */ static J3DTexGenBlock* createTexGenBlock(u32); - /* 80315B04 */ static J3DTevBlock* createTevBlock(int); - /* 80315E78 */ static J3DIndBlock* createIndBlock(int); - /* 80315F60 */ static J3DPEBlock* createPEBlock(u32, u32); - /* 80316100 */ static u32 calcSizeColorBlock(u32); - /* 80316150 */ static u32 calcSizeTexGenBlock(u32); - /* 8031617C */ static u32 calcSizeTevBlock(int); - /* 803161C4 */ static u32 calcSizeIndBlock(int); - /* 803161D8 */ static u32 calcSizePEBlock(u32, u32); - /* 80316240 */ void initialize(); - /* 80316290 */ u32 countDLSize(); - /* 80316344 */ void makeDisplayList_private(J3DDisplayListObj*); - /* 80316AB0 */ void setCurrentMtx(); - /* 80316AC8 */ void calcCurrentMtx(); - /* 80316D68 */ void copy(J3DMaterial*); - /* 80316E90 */ s32 newSharedDisplayList(u32); - /* 80316F24 */ s32 newSingleSharedDisplayList(u32); - - /* 803169DC */ virtual void calc(f32 const (*)[4]); - /* 80316A54 */ virtual void calcDiffTexMtx(f32 const (*)[4]); - /* 80316620 */ virtual void makeDisplayList(); - /* 80316668 */ virtual void makeSharedDisplayList(); - /* 8031668C */ virtual void load(); - /* 803166DC */ virtual void loadSharedDL(); - /* 80316740 */ virtual void patch(); - /* 803167D8 */ virtual void diff(u32); - /* 80316E14 */ virtual void reset(); - /* 80316E70 */ virtual void change(); - - J3DMaterial() { initialize(); } - ~J3DMaterial() {} - J3DMaterial* getNext() const { return mNext; } - J3DShape* getShape() const { return mShape; } - J3DTevBlock* getTevBlock() const { return mTevBlock; } - J3DColorBlock* getColorBlock() const { return mColorBlock; } - J3DTexGenBlock* getTexGenBlock() const { return mTexGenBlock; } - J3DDisplayListObj* getSharedDisplayListObj() const { return mSharedDLObj; } - J3DIndBlock* getIndBlock() const { return mIndBlock; } - J3DShape* getShape() { return mShape; } - J3DJoint* getJoint() { return mJoint; } - J3DMaterialAnm* getMaterialAnm() const { - if ((u32)mMaterialAnm < 0xC0000000) { - return mMaterialAnm; - } else { - return NULL; - } - } - J3DNBTScale* getNBTScale() const { return mTexGenBlock->getNBTScale(); } - u16 getTexNo(u32 idx) const { return mTevBlock->getTexNo(idx); } - GXColor* getTevKColor(u32 param_0) { return mTevBlock->getTevKColor(param_0); } - GXColorS10* getTevColor(u32 param_0) { return mTevBlock->getTevColor(param_0); } - J3DFog* getFog() { return mPEBlock->getFog(); } - J3DTexMtx* getTexMtx(u32 idx) { return mTexGenBlock->getTexMtx(idx); } - u16 getIndex() { return mIndex; } - bool isDrawModeOpaTexEdge() { return (mMaterialMode & 3) == 0; } - J3DPEBlock* getPEBlock() { return mPEBlock; } - void onInvalid() { mInvalid = 1; } - u32 getTexGenNum() const { return mTexGenBlock->getTexGenNum(); } - u8 getTevStageNum() const { return mTevBlock->getTevStageNum(); } - J3DTexCoord* getTexCoord(u32 idx) { return mTexGenBlock->getTexCoord(idx); } - - void setTevColor(u32 i, const J3DGXColorS10* i_color) { mTevBlock->setTevColor(i, i_color); } - void setTevKColor(u32 i, const J3DGXColor* i_color) { mTevBlock->setTevKColor(i, i_color); } - void setMaterialAnm(J3DMaterialAnm* i_anm) { mMaterialAnm = i_anm; } - void setCullMode(u8 i_mode) { mColorBlock->setCullMode(i_mode); } - void setTexMtx(u32 idx, J3DTexMtx* mtx) { mTexGenBlock->setTexMtx(idx, mtx); } - -public: - /* 0x04 */ J3DMaterial* mNext; - /* 0x08 */ J3DShape* mShape; - /* 0x0C */ J3DJoint* mJoint; - /* 0x10 */ u32 mMaterialMode; - /* 0x14 */ u16 mIndex; - /* 0x18 */ u32 mInvalid; - /* 0x1C */ u32 field_0x1c; - /* 0x20 */ u32 mDiffFlag; - /* 0x24 */ J3DColorBlock* mColorBlock; - /* 0x28 */ J3DTexGenBlock* mTexGenBlock; - /* 0x2C */ J3DTevBlock* mTevBlock; - /* 0x30 */ J3DIndBlock* mIndBlock; - /* 0x34 */ J3DPEBlock* mPEBlock; - /* 0x38 */ J3DMaterial* mpOrigMaterial; - /* 0x3C */ J3DMaterialAnm* mMaterialAnm; - /* 0x40 */ J3DCurrentMtx mCurrentMtx; - /* 0x48 */ J3DDisplayListObj* mSharedDLObj; -}; - -class J3DPatchedMaterial : public J3DMaterial { -public: - /* 80316FB8 */ void initialize(); - - /* 80316FD8 */ virtual void makeDisplayList(); - /* 80316FDC */ virtual void makeSharedDisplayList(); - /* 80316FE0 */ virtual void load(); - /* 80316FFC */ virtual void loadSharedDL(); - /* 8031703C */ virtual void reset(); - /* 80317040 */ virtual void change(); -}; - -class J3DLockedMaterial : public J3DMaterial { -public: - J3DLockedMaterial() { initialize(); } - /* 80317044 */ void initialize(); - - /* 803170D0 */ virtual void calc(f32 const (*)[4]); - /* 80317064 */ virtual void makeDisplayList(); - /* 80317068 */ virtual void makeSharedDisplayList(); - /* 8031706C */ virtual void load(); - /* 80317088 */ virtual void loadSharedDL(); - /* 803170C8 */ virtual void patch(); - /* 803170CC */ virtual void diff(u32); - /* 803170D4 */ virtual void reset(); - /* 803170D8 */ virtual void change(); -}; - -#endif /* J3DMATERIAL_H */ +#ifndef J3DMATERIAL_H +#define J3DMATERIAL_H + +#include "JSystem/J3DGraphBase/J3DMatBlock.h" +#include "JSystem/J3DGraphBase/J3DPacket.h" +#include "JSystem/J3DGraphBase/J3DShape.h" +#include "dolphin/types.h" + +class J3DJoint; +class J3DMaterialAnm; + +/** + * @ingroup jsystem-j3d + * + */ +class J3DMaterial { +public: + /* 803157A0 */ static J3DColorBlock* createColorBlock(u32); + /* 803159A0 */ static J3DTexGenBlock* createTexGenBlock(u32); + /* 80315B04 */ static J3DTevBlock* createTevBlock(int); + /* 80315E78 */ static J3DIndBlock* createIndBlock(int); + /* 80315F60 */ static J3DPEBlock* createPEBlock(u32, u32); + /* 80316100 */ static u32 calcSizeColorBlock(u32); + /* 80316150 */ static u32 calcSizeTexGenBlock(u32); + /* 8031617C */ static u32 calcSizeTevBlock(int); + /* 803161C4 */ static u32 calcSizeIndBlock(int); + /* 803161D8 */ static u32 calcSizePEBlock(u32, u32); + /* 80316240 */ void initialize(); + /* 80316290 */ u32 countDLSize(); + /* 80316344 */ void makeDisplayList_private(J3DDisplayListObj*); + /* 80316AB0 */ void setCurrentMtx(); + /* 80316AC8 */ void calcCurrentMtx(); + /* 80316D68 */ void copy(J3DMaterial*); + /* 80316E90 */ s32 newSharedDisplayList(u32); + /* 80316F24 */ s32 newSingleSharedDisplayList(u32); + + /* 803169DC */ virtual void calc(f32 const (*)[4]); + /* 80316A54 */ virtual void calcDiffTexMtx(f32 const (*)[4]); + /* 80316620 */ virtual void makeDisplayList(); + /* 80316668 */ virtual void makeSharedDisplayList(); + /* 8031668C */ virtual void load(); + /* 803166DC */ virtual void loadSharedDL(); + /* 80316740 */ virtual void patch(); + /* 803167D8 */ virtual void diff(u32); + /* 80316E14 */ virtual void reset(); + /* 80316E70 */ virtual void change(); + + J3DMaterial() { initialize(); } + ~J3DMaterial() {} + J3DMaterial* getNext() const { return mNext; } + J3DShape* getShape() const { return mShape; } + J3DTevBlock* getTevBlock() const { return mTevBlock; } + J3DColorBlock* getColorBlock() const { return mColorBlock; } + J3DTexGenBlock* getTexGenBlock() const { return mTexGenBlock; } + J3DDisplayListObj* getSharedDisplayListObj() const { return mSharedDLObj; } + J3DIndBlock* getIndBlock() const { return mIndBlock; } + J3DShape* getShape() { return mShape; } + J3DJoint* getJoint() { return mJoint; } + J3DMaterialAnm* getMaterialAnm() const { + if ((u32)mMaterialAnm < 0xC0000000) { + return mMaterialAnm; + } else { + return NULL; + } + } + J3DNBTScale* getNBTScale() const { return mTexGenBlock->getNBTScale(); } + u16 getTexNo(u32 idx) const { return mTevBlock->getTexNo(idx); } + GXColor* getTevKColor(u32 param_0) { return mTevBlock->getTevKColor(param_0); } + GXColorS10* getTevColor(u32 param_0) { return mTevBlock->getTevColor(param_0); } + J3DFog* getFog() { return mPEBlock->getFog(); } + J3DTexMtx* getTexMtx(u32 idx) { return mTexGenBlock->getTexMtx(idx); } + u16 getIndex() { return mIndex; } + bool isDrawModeOpaTexEdge() { return (mMaterialMode & 3) == 0; } + J3DPEBlock* getPEBlock() { return mPEBlock; } + void onInvalid() { mInvalid = 1; } + u32 getTexGenNum() const { return mTexGenBlock->getTexGenNum(); } + u8 getTevStageNum() const { return mTevBlock->getTevStageNum(); } + J3DTexCoord* getTexCoord(u32 idx) { return mTexGenBlock->getTexCoord(idx); } + + void setTevColor(u32 i, const J3DGXColorS10* i_color) { mTevBlock->setTevColor(i, i_color); } + void setTevKColor(u32 i, const J3DGXColor* i_color) { mTevBlock->setTevKColor(i, i_color); } + void setMaterialAnm(J3DMaterialAnm* i_anm) { mMaterialAnm = i_anm; } + void setCullMode(u8 i_mode) { mColorBlock->setCullMode(i_mode); } + void setTexMtx(u32 idx, J3DTexMtx* mtx) { mTexGenBlock->setTexMtx(idx, mtx); } + +public: + /* 0x04 */ J3DMaterial* mNext; + /* 0x08 */ J3DShape* mShape; + /* 0x0C */ J3DJoint* mJoint; + /* 0x10 */ u32 mMaterialMode; + /* 0x14 */ u16 mIndex; + /* 0x18 */ u32 mInvalid; + /* 0x1C */ u32 field_0x1c; + /* 0x20 */ u32 mDiffFlag; + /* 0x24 */ J3DColorBlock* mColorBlock; + /* 0x28 */ J3DTexGenBlock* mTexGenBlock; + /* 0x2C */ J3DTevBlock* mTevBlock; + /* 0x30 */ J3DIndBlock* mIndBlock; + /* 0x34 */ J3DPEBlock* mPEBlock; + /* 0x38 */ J3DMaterial* mpOrigMaterial; + /* 0x3C */ J3DMaterialAnm* mMaterialAnm; + /* 0x40 */ J3DCurrentMtx mCurrentMtx; + /* 0x48 */ J3DDisplayListObj* mSharedDLObj; +}; + +/** + * @ingroup jsystem-j3d + * + */ +class J3DPatchedMaterial : public J3DMaterial { +public: + /* 80316FB8 */ void initialize(); + + /* 80316FD8 */ virtual void makeDisplayList(); + /* 80316FDC */ virtual void makeSharedDisplayList(); + /* 80316FE0 */ virtual void load(); + /* 80316FFC */ virtual void loadSharedDL(); + /* 8031703C */ virtual void reset(); + /* 80317040 */ virtual void change(); +}; + +/** + * @ingroup jsystem-j3d + * + */ +class J3DLockedMaterial : public J3DMaterial { +public: + J3DLockedMaterial() { initialize(); } + /* 80317044 */ void initialize(); + + /* 803170D0 */ virtual void calc(f32 const (*)[4]); + /* 80317064 */ virtual void makeDisplayList(); + /* 80317068 */ virtual void makeSharedDisplayList(); + /* 8031706C */ virtual void load(); + /* 80317088 */ virtual void loadSharedDL(); + /* 803170C8 */ virtual void patch(); + /* 803170CC */ virtual void diff(u32); + /* 803170D4 */ virtual void reset(); + /* 803170D8 */ virtual void change(); +}; + +#endif /* J3DMATERIAL_H */ diff --git a/include/JSystem/J3DGraphBase/J3DPacket.h b/include/JSystem/J3DGraphBase/J3DPacket.h index e43349aeb8..ce01c85b1e 100644 --- a/include/JSystem/J3DGraphBase/J3DPacket.h +++ b/include/JSystem/J3DGraphBase/J3DPacket.h @@ -3,7 +3,6 @@ #include "JSystem/J3DGraphBase/J3DSys.h" #include "dolphin/gd/GDBase.h" -#include "dolphin/types.h" class J3DMatPacket; @@ -59,6 +58,10 @@ inline int calcDifferedBufferSize_TevStageDirectSize(int param_1) { return param_1 * 5; } +/** + * @ingroup jsystem-j3d + * + */ class J3DDisplayListObj { public: J3DDisplayListObj() { @@ -90,6 +93,10 @@ public: /* 0xC */ u32 mCapacity; }; // Size: 0x10 +/** + * @ingroup jsystem-j3d + * + */ class J3DPacket { public: J3DPacket() { @@ -121,6 +128,10 @@ public: /* 0x0C */ void* mpUserData; }; // Size: 0x10 +/** + * @ingroup jsystem-j3d + * + */ class J3DDrawPacket : public J3DPacket { public: J3DDrawPacket(); @@ -156,6 +167,10 @@ public: /* 0x24 */ J3DTexMtxObj* mpTexMtxObj; }; // Size: 0x28 +/** + * @ingroup jsystem-j3d + * + */ class J3DShapePacket : public J3DDrawPacket { public: J3DShapePacket(); @@ -184,6 +199,10 @@ public: /* 0x38 */ J3DModel* mpModel; }; // Size: 0x3C +/** + * @ingroup jsystem-j3d + * + */ class J3DMatPacket : public J3DDrawPacket { public: J3DMatPacket(); diff --git a/include/JSystem/J3DGraphBase/J3DShape.h b/include/JSystem/J3DGraphBase/J3DShape.h index e045b31edc..7e7b96aaef 100644 --- a/include/JSystem/J3DGraphBase/J3DShape.h +++ b/include/JSystem/J3DGraphBase/J3DShape.h @@ -1,158 +1,169 @@ -#ifndef J3DSHAPE_H -#define J3DSHAPE_H - -#include "JSystem/J3DGraphBase/J3DShapeDraw.h" -#include "JSystem/J3DGraphBase/J3DShapeMtx.h" -#include "dolphin/gx.h" -#include "dolphin/types.h" - -class J3DCurrentMtxInfo { -public: - u32 mMtxIdxRegA; - u32 mMtxIdxRegB; -}; - -static inline void J3DFifoWriteCPCmd(u8 cmd, u32 param) { - GXWGFifo.u8 = GX_CMD_LOAD_CP_REG; - GXWGFifo.u8 = cmd; - GXWGFifo.u32 = param; -} - -static inline void J3DFifoWriteXFCmd(u16 cmd, u16 len) { - GXWGFifo.u8 = GX_CMD_LOAD_XF_REG; - GXWGFifo.u16 = (len - 1); - GXWGFifo.u16 = cmd; -} - -class J3DCurrentMtx : public J3DCurrentMtxInfo { -public: - J3DCurrentMtx() { - mMtxIdxRegA = 0x3cf3cf00; - mMtxIdxRegB = 0x00f3cf3c; - } - - J3DCurrentMtx& operator=(J3DCurrentMtxInfo const& info) { - mMtxIdxRegA = info.mMtxIdxRegA; - mMtxIdxRegB = info.mMtxIdxRegB; - return *this; - } - - u32 getMtxIdxRegA() const { return mMtxIdxRegA; } - u32 getMtxIdxRegB() const { return mMtxIdxRegB; } - - inline void load() const { - J3DFifoWriteCPCmd(0x30, getMtxIdxRegA()); // CP_MATINDEX_A - J3DFifoWriteCPCmd(0x40, getMtxIdxRegB()); // CP_MATINDEX_B - J3DFifoWriteXFCmd(0x1018, 2); - GXWGFifo.u32 = getMtxIdxRegA(); - GXWGFifo.u32 = getMtxIdxRegB(); - } - - void setCurrentTexMtx(u8 param_1, u8 param_2, u8 param_3, u8 param_4, - u8 param_5, u8 param_6, u8 param_7, u8 param_8) { - mMtxIdxRegA = ((param_1 & 0xff) << 6) | (param_2 << 0xc)| (param_3 << 0x12) | (param_4 << 0x18); - mMtxIdxRegB = (param_5) | param_6 << 6 | param_7 << 0xc | param_8 << 0x12; - } -}; - -class J3DMaterial; -class J3DVertexData; -class J3DDrawMtxData; - -enum J3DShpFlag { - J3DShpFlag_Visible = 0x0001, - J3DShpFlag_SkinPosCpu = 0x0004, - J3DShpFlag_SkinNrmCpu = 0x0008, - J3DShpFlag_Hidden = 0x0010, - J3DShpFlag_EnableLod = 0x0100, - J3DShpFlag_NoMtx = 0x0200, -}; - -class J3DShape { -public: - J3DShape() { - initialize(); - } - - enum { - kVcdVatDLSize = 0xC0, - }; - - /* 80314B48 */ void initialize(); - /* 80314BB8 */ void addTexMtxIndexInDL(_GXAttr, u32); - /* 80314CBC */ void addTexMtxIndexInVcd(_GXAttr); - /* 80314DA8 */ void calcNBTScale(Vec const&, f32 (*)[3][3], f32 (*)[3][3]); - /* 80314E28 */ u32 countBumpMtxNum() const; - /* 80314EEC */ void loadVtxArray() const; - /* 80314F5C */ bool isSameVcdVatCmd(J3DShape*); - /* 80314F98 */ void makeVtxArrayCmd(); - /* 80315260 */ void makeVcdVatCmd(); - /* 80315300 */ void loadPreDrawSetting() const; - /* 80315398 */ void setArrayAndBindPipeline() const; - - /* 803155E0 */ virtual void draw() const; - /* 8031544C */ virtual void drawFast() const; - /* 80315628 */ virtual void simpleDraw() const; - /* 803156AC */ virtual void simpleDrawCache() const; - - void onFlag(u32 flag) { mFlags |= flag; } - void offFlag(u32 flag) { mFlags &= ~flag; } - bool checkFlag(u32 flag) const { return !!(mFlags & flag); } - void setDrawMtxDataPointer(J3DDrawMtxData* pMtxData) { mDrawMtxData = pMtxData; } - void setVertexDataPointer(J3DVertexData* pVtxData) { mVertexData = pVtxData; } - void* getVcdVatCmd() const { return mVcdVatCmd; } - void setVcdVatCmd(void* pVatCmd) { mVcdVatCmd = (u8*)pVatCmd; } - void show() { offFlag(J3DShpFlag_Visible); } - void hide() { onFlag(J3DShpFlag_Visible); } - void setCurrentViewNoPtr(u32* pViewNoPtr) { mCurrentViewNo = pViewNoPtr; } - void setCurrentMtx(J3DCurrentMtx& mtx) { mCurrentMtx = mtx; } - void setScaleFlagArray(u8* pScaleFlagArray) { mScaleFlagArray = pScaleFlagArray; } - void setDrawMtx(Mtx** pDrawMtx) { mDrawMtx = pDrawMtx; } - void setNrmMtx(Mtx33** pNrmMtx) { mNrmMtx = pNrmMtx; } - void setTexMtxLoadType(u32 type) { mFlags = (mFlags & 0xFFFF0FFF) | type; } - bool getNBTFlag() const { return mHasNBT; } - u32 getBumpMtxOffset() const { return mBumpMtxOffset; } - GXVtxDescList* getVtxDesc() const { return mVtxDesc; } - - J3DMaterial* getMaterial() const { return mMaterial; } - u32 getIndex() const { return mIndex; } - u32 getPipeline() const { return (mFlags >> 2) & 0x07; } - u32 getTexMtxLoadType() const { return mFlags & 0xF000; } - u32 getMtxGroupNum() const { return mMtxGroupNum; } - J3DShapeDraw* getShapeDraw(u32 idx) const { return mShapeDraw[idx]; } - J3DShapeMtx* getShapeMtx(u32 idx) const { return mShapeMtx[idx]; } - Vec* getMin() { return &mMin; } - Vec* getMax() { return &mMax; } - - static void resetVcdVatCache() { sOldVcdVatCmd = NULL; } - - static void* sOldVcdVatCmd; - -private: - friend struct J3DShapeFactory; - friend class J3DJointTree; - - /* 0x04 */ J3DMaterial* mMaterial; - /* 0x08 */ u16 mIndex; - /* 0x0A */ u16 mMtxGroupNum; - /* 0x0C */ u32 mFlags; - /* 0x10 */ f32 mRadius; - /* 0x14 */ Vec mMin; - /* 0x20 */ Vec mMax; - /* 0x2C */ u8* mVcdVatCmd; - /* 0x30 */ GXVtxDescList* mVtxDesc; - /* 0x34 */ bool mHasNBT; - /* 0x38 */ J3DShapeMtx** mShapeMtx; - /* 0x3C */ J3DShapeDraw** mShapeDraw; - /* 0x40 */ J3DCurrentMtx mCurrentMtx; - /* 0x48 */ bool mHasPNMTXIdx; - /* 0x4C */ J3DVertexData* mVertexData; - /* 0x50 */ J3DDrawMtxData* mDrawMtxData; - /* 0x54 */ u8* mScaleFlagArray; - /* 0x58 */ Mtx** mDrawMtx; - /* 0x5C */ Mtx33** mNrmMtx; - /* 0x60 */ u32* mCurrentViewNo; - /* 0x64 */ u32 mBumpMtxOffset; -}; - -#endif /* J3DSHAPE_H */ +#ifndef J3DSHAPE_H +#define J3DSHAPE_H + +#include "JSystem/J3DGraphBase/J3DShapeDraw.h" +#include "JSystem/J3DGraphBase/J3DShapeMtx.h" +#include "dolphin/gx.h" + +/** + * @ingroup jsystem-j3d + * + */ +class J3DCurrentMtxInfo { +public: + u32 mMtxIdxRegA; + u32 mMtxIdxRegB; +}; + +static inline void J3DFifoWriteCPCmd(u8 cmd, u32 param) { + GXWGFifo.u8 = GX_CMD_LOAD_CP_REG; + GXWGFifo.u8 = cmd; + GXWGFifo.u32 = param; +} + +static inline void J3DFifoWriteXFCmd(u16 cmd, u16 len) { + GXWGFifo.u8 = GX_CMD_LOAD_XF_REG; + GXWGFifo.u16 = (len - 1); + GXWGFifo.u16 = cmd; +} + +/** + * @ingroup jsystem-j3d + * + */ +class J3DCurrentMtx : public J3DCurrentMtxInfo { +public: + J3DCurrentMtx() { + mMtxIdxRegA = 0x3cf3cf00; + mMtxIdxRegB = 0x00f3cf3c; + } + + J3DCurrentMtx& operator=(J3DCurrentMtxInfo const& info) { + mMtxIdxRegA = info.mMtxIdxRegA; + mMtxIdxRegB = info.mMtxIdxRegB; + return *this; + } + + u32 getMtxIdxRegA() const { return mMtxIdxRegA; } + u32 getMtxIdxRegB() const { return mMtxIdxRegB; } + + inline void load() const { + J3DFifoWriteCPCmd(0x30, getMtxIdxRegA()); // CP_MATINDEX_A + J3DFifoWriteCPCmd(0x40, getMtxIdxRegB()); // CP_MATINDEX_B + J3DFifoWriteXFCmd(0x1018, 2); + GXWGFifo.u32 = getMtxIdxRegA(); + GXWGFifo.u32 = getMtxIdxRegB(); + } + + void setCurrentTexMtx(u8 param_1, u8 param_2, u8 param_3, u8 param_4, + u8 param_5, u8 param_6, u8 param_7, u8 param_8) { + mMtxIdxRegA = ((param_1 & 0xff) << 6) | (param_2 << 0xc)| (param_3 << 0x12) | (param_4 << 0x18); + mMtxIdxRegB = (param_5) | param_6 << 6 | param_7 << 0xc | param_8 << 0x12; + } +}; + +class J3DMaterial; +class J3DVertexData; +class J3DDrawMtxData; + +enum J3DShpFlag { + J3DShpFlag_Visible = 0x0001, + J3DShpFlag_SkinPosCpu = 0x0004, + J3DShpFlag_SkinNrmCpu = 0x0008, + J3DShpFlag_Hidden = 0x0010, + J3DShpFlag_EnableLod = 0x0100, + J3DShpFlag_NoMtx = 0x0200, +}; + +/** + * @ingroup jsystem-j3d + * + */ +class J3DShape { +public: + J3DShape() { + initialize(); + } + + enum { + kVcdVatDLSize = 0xC0, + }; + + /* 80314B48 */ void initialize(); + /* 80314BB8 */ void addTexMtxIndexInDL(_GXAttr, u32); + /* 80314CBC */ void addTexMtxIndexInVcd(_GXAttr); + /* 80314DA8 */ void calcNBTScale(Vec const&, f32 (*)[3][3], f32 (*)[3][3]); + /* 80314E28 */ u32 countBumpMtxNum() const; + /* 80314EEC */ void loadVtxArray() const; + /* 80314F5C */ bool isSameVcdVatCmd(J3DShape*); + /* 80314F98 */ void makeVtxArrayCmd(); + /* 80315260 */ void makeVcdVatCmd(); + /* 80315300 */ void loadPreDrawSetting() const; + /* 80315398 */ void setArrayAndBindPipeline() const; + + /* 803155E0 */ virtual void draw() const; + /* 8031544C */ virtual void drawFast() const; + /* 80315628 */ virtual void simpleDraw() const; + /* 803156AC */ virtual void simpleDrawCache() const; + + void onFlag(u32 flag) { mFlags |= flag; } + void offFlag(u32 flag) { mFlags &= ~flag; } + bool checkFlag(u32 flag) const { return !!(mFlags & flag); } + void setDrawMtxDataPointer(J3DDrawMtxData* pMtxData) { mDrawMtxData = pMtxData; } + void setVertexDataPointer(J3DVertexData* pVtxData) { mVertexData = pVtxData; } + void* getVcdVatCmd() const { return mVcdVatCmd; } + void setVcdVatCmd(void* pVatCmd) { mVcdVatCmd = (u8*)pVatCmd; } + void show() { offFlag(J3DShpFlag_Visible); } + void hide() { onFlag(J3DShpFlag_Visible); } + void setCurrentViewNoPtr(u32* pViewNoPtr) { mCurrentViewNo = pViewNoPtr; } + void setCurrentMtx(J3DCurrentMtx& mtx) { mCurrentMtx = mtx; } + void setScaleFlagArray(u8* pScaleFlagArray) { mScaleFlagArray = pScaleFlagArray; } + void setDrawMtx(Mtx** pDrawMtx) { mDrawMtx = pDrawMtx; } + void setNrmMtx(Mtx33** pNrmMtx) { mNrmMtx = pNrmMtx; } + void setTexMtxLoadType(u32 type) { mFlags = (mFlags & 0xFFFF0FFF) | type; } + bool getNBTFlag() const { return mHasNBT; } + u32 getBumpMtxOffset() const { return mBumpMtxOffset; } + GXVtxDescList* getVtxDesc() const { return mVtxDesc; } + + J3DMaterial* getMaterial() const { return mMaterial; } + u32 getIndex() const { return mIndex; } + u32 getPipeline() const { return (mFlags >> 2) & 0x07; } + u32 getTexMtxLoadType() const { return mFlags & 0xF000; } + u32 getMtxGroupNum() const { return mMtxGroupNum; } + J3DShapeDraw* getShapeDraw(u32 idx) const { return mShapeDraw[idx]; } + J3DShapeMtx* getShapeMtx(u32 idx) const { return mShapeMtx[idx]; } + Vec* getMin() { return &mMin; } + Vec* getMax() { return &mMax; } + + static void resetVcdVatCache() { sOldVcdVatCmd = NULL; } + + static void* sOldVcdVatCmd; + +private: + friend struct J3DShapeFactory; + friend class J3DJointTree; + + /* 0x04 */ J3DMaterial* mMaterial; + /* 0x08 */ u16 mIndex; + /* 0x0A */ u16 mMtxGroupNum; + /* 0x0C */ u32 mFlags; + /* 0x10 */ f32 mRadius; + /* 0x14 */ Vec mMin; + /* 0x20 */ Vec mMax; + /* 0x2C */ u8* mVcdVatCmd; + /* 0x30 */ GXVtxDescList* mVtxDesc; + /* 0x34 */ bool mHasNBT; + /* 0x38 */ J3DShapeMtx** mShapeMtx; + /* 0x3C */ J3DShapeDraw** mShapeDraw; + /* 0x40 */ J3DCurrentMtx mCurrentMtx; + /* 0x48 */ bool mHasPNMTXIdx; + /* 0x4C */ J3DVertexData* mVertexData; + /* 0x50 */ J3DDrawMtxData* mDrawMtxData; + /* 0x54 */ u8* mScaleFlagArray; + /* 0x58 */ Mtx** mDrawMtx; + /* 0x5C */ Mtx33** mNrmMtx; + /* 0x60 */ u32* mCurrentViewNo; + /* 0x64 */ u32 mBumpMtxOffset; +}; + +#endif /* J3DSHAPE_H */ diff --git a/include/JSystem/J3DGraphBase/J3DShapeDraw.h b/include/JSystem/J3DGraphBase/J3DShapeDraw.h index 2293fd6337..8863f868d8 100644 --- a/include/JSystem/J3DGraphBase/J3DShapeDraw.h +++ b/include/JSystem/J3DGraphBase/J3DShapeDraw.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-j3d + * + */ class J3DShapeDraw { public: /* 80314924 */ u32 countVertex(u32); diff --git a/include/JSystem/J3DGraphBase/J3DShapeMtx.h b/include/JSystem/J3DGraphBase/J3DShapeMtx.h index 222d35a0a1..590b95a3ff 100644 --- a/include/JSystem/J3DGraphBase/J3DShapeMtx.h +++ b/include/JSystem/J3DGraphBase/J3DShapeMtx.h @@ -6,6 +6,10 @@ class J3DTexMtx; class J3DTexGenBlock; +/** + * @ingroup jsystem-j3d + * + */ class J3DTexMtxObj { public: Mtx& getMtx(u16 idx) { return mpTexMtx[idx]; } @@ -17,6 +21,10 @@ public: /* 0x08 */ u16 mTexMtxNum; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DDifferedTexMtx { public: /* 8031322C */ static void loadExecute(f32 const (*)[4]); @@ -33,6 +41,10 @@ public: class J3DShapeMtx; typedef void (J3DShapeMtx::*J3DShapeMtx_LoadFunc)(int, u16) const; +/** + * @ingroup jsystem-j3d + * + */ class J3DShapeMtx { public: J3DShapeMtx(u16 useMtxIndex) @@ -71,6 +83,10 @@ protected: class J3DShapeMtxConcatView; typedef void (J3DShapeMtxConcatView::*J3DShapeMtxConcatView_LoadFunc)(int, u16) const; +/** + * @ingroup jsystem-j3d + * + */ class J3DShapeMtxConcatView : public J3DShapeMtx { public: J3DShapeMtxConcatView(u16 useMtxIndex) @@ -94,6 +110,10 @@ public: static MtxP sMtxPtrTbl[2]; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DShapeMtxYBBoardConcatView : public J3DShapeMtxConcatView { public: J3DShapeMtxYBBoardConcatView(u16 useMtxIndex) @@ -105,6 +125,10 @@ public: /* 803143E4 */ virtual void load() const; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DShapeMtxBBoardConcatView : public J3DShapeMtxConcatView { public: J3DShapeMtxBBoardConcatView(u16 useMtxIndex) @@ -116,6 +140,10 @@ public: /* 803142D4 */ virtual void load() const; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DShapeMtxMulti : public J3DShapeMtx { public: J3DShapeMtxMulti(u16 useMtxIndex, u16 useMtxNum, u16* useMtxIndexTable) @@ -136,6 +164,10 @@ private: /* 0xC */ u16* mUseMtxIndexTable; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DShapeMtxMultiConcatView : public J3DShapeMtxConcatView { public: J3DShapeMtxMultiConcatView(u16 useMtxIndex, u16 useMtxNum, u16* useMtxIndexTable) diff --git a/include/JSystem/J3DGraphBase/J3DStruct.h b/include/JSystem/J3DGraphBase/J3DStruct.h index 13e097cf3e..c019217e5d 100644 --- a/include/JSystem/J3DGraphBase/J3DStruct.h +++ b/include/JSystem/J3DGraphBase/J3DStruct.h @@ -3,9 +3,12 @@ #include "dolphin/gx/GXStruct.h" #include "dolphin/mtx.h" -#include "dolphin/mtx/mtx44.h" #include "dolphin/mtx/vec.h" +/** + * @ingroup jsystem-j3d + * + */ class J3DLightInfo { public: /* 803256C4 */ J3DLightInfo& operator=(J3DLightInfo const&); @@ -19,6 +22,10 @@ public: extern "C" extern J3DLightInfo const j3dDefaultLightInfo; +/** + * @ingroup jsystem-j3d + * + */ class J3DLightObj { public: /* 80018C0C */ J3DLightObj() { mInfo = j3dDefaultLightInfo; } @@ -34,6 +41,10 @@ public: /* 0x34 */ GXLightObj mLightObj; }; // Size = 0x74 +/** + * @ingroup jsystem-j3d + * + */ struct J3DTextureSRTInfo { /* 0x00 */ f32 mScaleX; /* 0x04 */ f32 mScaleY; @@ -60,6 +71,10 @@ struct J3DTextureSRTInfo { } }; // Size: 0x14 +/** + * @ingroup jsystem-j3d + * + */ struct J3DTexMtxInfo { /* 80325718 */ J3DTexMtxInfo& operator=(J3DTexMtxInfo const&); /* 80325794 */ void setEffectMtx(Mtx); @@ -73,12 +88,20 @@ struct J3DTexMtxInfo { /* 0x24 */ Mtx44 mEffectMtx; }; // Size: 0x64 +/** + * @ingroup jsystem-j3d + * + */ struct J3DIndTexMtxInfo { J3DIndTexMtxInfo& operator=(J3DIndTexMtxInfo const&); /* 0x00 */ Mtx23 field_0x0; /* 0x18 */ u8 field_0x18; }; // Size: 0x1C +/** + * @ingroup jsystem-j3d + * + */ struct J3DFogInfo { /* 80325800 */ J3DFogInfo& operator=(J3DFogInfo const&); @@ -93,6 +116,10 @@ struct J3DFogInfo { /* 0x18 */ GXFogAdjTable field_0x18; }; // Size: 0x2C +/** + * @ingroup jsystem-j3d + * + */ struct J3DNBTScaleInfo { /* 8032587C */ J3DNBTScaleInfo& operator=(J3DNBTScaleInfo const&); diff --git a/include/JSystem/J3DGraphBase/J3DSys.h b/include/JSystem/J3DGraphBase/J3DSys.h index 774f303fc1..2a2f667109 100644 --- a/include/JSystem/J3DGraphBase/J3DSys.h +++ b/include/JSystem/J3DGraphBase/J3DSys.h @@ -2,7 +2,6 @@ #define J3DSYS_H #include "dolphin/gx.h" -#include "dolphin/types.h" // Perhaps move to a new J3DEnum.h? enum J3DError { @@ -23,6 +22,10 @@ class J3DShape; class J3DDrawBuffer; class J3DTexture; +/** + * @ingroup jsystem-j3d + * + */ struct J3DTexCoordScaleInfo { /* 0x0 */ u16 field_0x00; /* 0x2 */ u16 field_0x02; @@ -36,6 +39,10 @@ enum J3DSysFlag { J3DSysFlag_PostTexMtx = 0x40000000, }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DSys { /* 0x000 */ Mtx mViewMtx; /* 0x030 */ J3DMtxCalc* mCurrentMtxCalc; diff --git a/include/JSystem/J3DGraphBase/J3DTevs.h b/include/JSystem/J3DGraphBase/J3DTevs.h index 6453019814..a7b668bd2c 100644 --- a/include/JSystem/J3DGraphBase/J3DTevs.h +++ b/include/JSystem/J3DGraphBase/J3DTevs.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-j3d + * + */ struct J3DTevStageInfo { /* 0x0 */ u8 field_0x0; /* 0x1 */ u8 mTevColorOp; @@ -28,6 +32,10 @@ struct J3DTevStageInfo { extern J3DTevStageInfo const j3dDefaultTevStageInfo; +/** + * @ingroup jsystem-j3d + * + */ struct J3DTevSwapModeTableInfo { /* 0x0 */ u8 field_0x0; /* 0x1 */ u8 field_0x1; @@ -37,6 +45,10 @@ struct J3DTevSwapModeTableInfo { extern const J3DTevSwapModeTableInfo j3dDefaultTevSwapModeTable; +/** + * @ingroup jsystem-j3d + * + */ struct J3DTevSwapModeInfo { /* 0x0 */ u8 mRasSel; /* 0x1 */ u8 mTexSel; @@ -46,6 +58,10 @@ struct J3DTevSwapModeInfo { extern J3DTevSwapModeInfo const j3dDefaultTevSwapMode; +/** + * @ingroup jsystem-j3d + * + */ struct J3DTevStage { /* 8000E230 */ J3DTevStage(); void setTevColorOp(u8 param_1, u8 param_2, u8 param_3, u8 param_4, u8 param_5) { @@ -120,6 +136,10 @@ struct J3DTevStage { /* 0x7 */ u8 mTevSwapModeInfo; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DIndTevStageInfo { /* 0x0 */ u8 mIndStage; /* 0x1 */ u8 mIndFormat; @@ -135,6 +155,10 @@ struct J3DIndTevStageInfo { extern J3DIndTevStageInfo const j3dDefaultIndTevStageInfo; +/** + * @ingroup jsystem-j3d + * + */ struct J3DIndTevStage { /* 8000E14C */ J3DIndTevStage() : mInfo(0) { setIndTevStageInfo(j3dDefaultIndTevStageInfo); } J3DIndTevStage(J3DIndTevStageInfo const& info) : mInfo(0) { setIndTevStageInfo(info); } @@ -162,6 +186,10 @@ struct J3DIndTevStage { /* 0x0 */ u32 mInfo; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DTevOrderInfo { void operator=(const J3DTevOrderInfo& other) { *(u32*) this = *(u32*)&other; @@ -175,6 +203,10 @@ struct J3DTevOrderInfo { extern const J3DTevOrderInfo j3dDefaultTevOrderInfoNull; +/** + * @ingroup jsystem-j3d + * + */ struct J3DTevOrder : public J3DTevOrderInfo { /* 8000E140 */ J3DTevOrder() : J3DTevOrderInfo(j3dDefaultTevOrderInfoNull) {} J3DTevOrder(const J3DTevOrderInfo& info) : J3DTevOrderInfo(info) {} @@ -182,6 +214,10 @@ struct J3DTevOrder : public J3DTevOrderInfo { u8 getTexMap() { return mTexMap; } }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DTevSwapModeTable { /* 8000E134 */ J3DTevSwapModeTable(); J3DTevSwapModeTable(J3DTevSwapModeTableInfo const& info) { diff --git a/include/JSystem/J3DGraphBase/J3DTexture.h b/include/JSystem/J3DGraphBase/J3DTexture.h index 6deb7e563f..479d674ed8 100644 --- a/include/JSystem/J3DGraphBase/J3DTexture.h +++ b/include/JSystem/J3DGraphBase/J3DTexture.h @@ -1,92 +1,107 @@ -#ifndef J3DTEXTURE_H -#define J3DTEXTURE_H - -#include "JSystem/J3DGraphBase/J3DStruct.h" -#include "JSystem/JUtility/JUTTexture.h" -#include "dolphin/mtx.h" -#include "dolphin/types.h" - -class J3DTexture { -private: - /* 0x0 */ u16 mNum; - /* 0x2 */ u16 field_0x2; - /* 0x4 */ ResTIMG* mpRes; - -public: - J3DTexture(u16 num, ResTIMG* res) : mNum(num), field_0x2(0), mpRes(res) {} - /* 8031204C */ void loadGX(u16, _GXTexMapID) const; - /* 803121A4 */ void entryNum(u16); - /* 8031221C */ void addResTIMG(u16, ResTIMG const*); - /* 803366A4 */ virtual ~J3DTexture() {} - - u16 getNum() const { return mNum; } - ResTIMG* getResTIMG(u16 entry) const { return &mpRes[entry]; } - void setResTIMG(u16 entry, const ResTIMG& timg) { - mpRes[entry] = timg; - mpRes[entry].imageOffset = ((mpRes[entry].imageOffset + (u32)&timg - (u32)(mpRes + entry))); - mpRes[entry].paletteOffset = ((mpRes[entry].paletteOffset + (u32)&timg - (u32)(mpRes + entry))); - } -}; - -extern J3DTexMtxInfo const j3dDefaultTexMtxInfo; - -class J3DTexMtx { -public: - J3DTexMtx() { - mTexMtxInfo = j3dDefaultTexMtxInfo; - } - J3DTexMtx(const J3DTexMtxInfo& info) { - mTexMtxInfo = info; - } - /* 803238C4 */ void load(u32) const; - /* 80323900 */ void calc(const Mtx); - /* 80323920 */ void calcTexMtx(const Mtx); - /* 80323C0C */ void calcPostTexMtx(const Mtx); - /* 80324358 */ void loadTexMtx(u32) const; - /* 803243BC */ void loadPostTexMtx(u32) const; - - J3DTexMtxInfo& getTexMtxInfo() { return mTexMtxInfo; } - Mtx& getMtx() { return mMtx; } - void setEffectMtx(Mtx effectMtx) { mTexMtxInfo.setEffectMtx(effectMtx); } - -private: - /* 0x00 */ J3DTexMtxInfo mTexMtxInfo; - /* 0x64 */ Mtx mMtx; -}; // Size: 0x94 - -struct J3DTexCoordInfo { - /* 0x0 */ u8 mTexGenType; - /* 0x1 */ u8 mTexGenSrc; - /* 0x2 */ u8 mTexGenMtx; - /* 0x3 */ u8 pad; -}; - -extern J3DTexCoordInfo const j3dDefaultTexCoordInfo[8]; - -struct J3DTexCoord : public J3DTexCoordInfo { - /* 8000E464 */ J3DTexCoord() { - setTexCoordInfo(j3dDefaultTexCoordInfo[0]); - resetTexMtxReg(); - } - J3DTexCoord(J3DTexCoordInfo const& info) { - setTexCoordInfo(info); - resetTexMtxReg(); - } - void setTexCoordInfo(J3DTexCoordInfo const& info) { - __memcpy(this, &info, sizeof(J3DTexCoordInfo)); - } - - u8 getTexGenType() { return mTexGenType; } - u8 getTexGenSrc() { return mTexGenSrc; } - u8 getTexGenMtx() { return mTexGenMtx & 0xff; } - u16 getTexMtxReg() { return mTexMtxReg & 0xff; } - void setTexGenMtx(u8 param_1) { mTexGenMtx = param_1; } - - void resetTexMtxReg() { - mTexMtxReg = mTexGenMtx; - } - - /* 0x4 */ u16 mTexMtxReg; -}; // Size: 0x6 - -#endif /* J3DTEXTURE_H */ +#ifndef J3DTEXTURE_H +#define J3DTEXTURE_H + +#include "JSystem/J3DGraphBase/J3DStruct.h" +#include "JSystem/JUtility/JUTTexture.h" +#include "dolphin/types.h" + +/** + * @ingroup jsystem-j3d + * + */ +class J3DTexture { +private: + /* 0x0 */ u16 mNum; + /* 0x2 */ u16 field_0x2; + /* 0x4 */ ResTIMG* mpRes; + +public: + J3DTexture(u16 num, ResTIMG* res) : mNum(num), field_0x2(0), mpRes(res) {} + /* 8031204C */ void loadGX(u16, _GXTexMapID) const; + /* 803121A4 */ void entryNum(u16); + /* 8031221C */ void addResTIMG(u16, ResTIMG const*); + /* 803366A4 */ virtual ~J3DTexture() {} + + u16 getNum() const { return mNum; } + ResTIMG* getResTIMG(u16 entry) const { return &mpRes[entry]; } + void setResTIMG(u16 entry, const ResTIMG& timg) { + mpRes[entry] = timg; + mpRes[entry].imageOffset = ((mpRes[entry].imageOffset + (u32)&timg - (u32)(mpRes + entry))); + mpRes[entry].paletteOffset = ((mpRes[entry].paletteOffset + (u32)&timg - (u32)(mpRes + entry))); + } +}; + +extern J3DTexMtxInfo const j3dDefaultTexMtxInfo; + +/** + * @ingroup jsystem-j3d + * + */ +class J3DTexMtx { +public: + J3DTexMtx() { + mTexMtxInfo = j3dDefaultTexMtxInfo; + } + J3DTexMtx(const J3DTexMtxInfo& info) { + mTexMtxInfo = info; + } + /* 803238C4 */ void load(u32) const; + /* 80323900 */ void calc(const Mtx); + /* 80323920 */ void calcTexMtx(const Mtx); + /* 80323C0C */ void calcPostTexMtx(const Mtx); + /* 80324358 */ void loadTexMtx(u32) const; + /* 803243BC */ void loadPostTexMtx(u32) const; + + J3DTexMtxInfo& getTexMtxInfo() { return mTexMtxInfo; } + Mtx& getMtx() { return mMtx; } + void setEffectMtx(Mtx effectMtx) { mTexMtxInfo.setEffectMtx(effectMtx); } + +private: + /* 0x00 */ J3DTexMtxInfo mTexMtxInfo; + /* 0x64 */ Mtx mMtx; +}; // Size: 0x94 + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DTexCoordInfo { + /* 0x0 */ u8 mTexGenType; + /* 0x1 */ u8 mTexGenSrc; + /* 0x2 */ u8 mTexGenMtx; + /* 0x3 */ u8 pad; +}; + +extern J3DTexCoordInfo const j3dDefaultTexCoordInfo[8]; + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DTexCoord : public J3DTexCoordInfo { + /* 8000E464 */ J3DTexCoord() { + setTexCoordInfo(j3dDefaultTexCoordInfo[0]); + resetTexMtxReg(); + } + J3DTexCoord(J3DTexCoordInfo const& info) { + setTexCoordInfo(info); + resetTexMtxReg(); + } + void setTexCoordInfo(J3DTexCoordInfo const& info) { + __memcpy(this, &info, sizeof(J3DTexCoordInfo)); + } + + u8 getTexGenType() { return mTexGenType; } + u8 getTexGenSrc() { return mTexGenSrc; } + u8 getTexGenMtx() { return mTexGenMtx & 0xff; } + u16 getTexMtxReg() { return mTexMtxReg & 0xff; } + void setTexGenMtx(u8 param_1) { mTexGenMtx = param_1; } + + void resetTexMtxReg() { + mTexMtxReg = mTexGenMtx; + } + + /* 0x4 */ u16 mTexMtxReg; +}; // Size: 0x6 + +#endif /* J3DTEXTURE_H */ diff --git a/include/JSystem/J3DGraphBase/J3DTransform.h b/include/JSystem/J3DGraphBase/J3DTransform.h index 5ffe0a73d9..0a327c4c48 100644 --- a/include/JSystem/J3DGraphBase/J3DTransform.h +++ b/include/JSystem/J3DGraphBase/J3DTransform.h @@ -6,6 +6,10 @@ struct J3DTextureSRTInfo; +/** + * @ingroup jsystem-j3d + * + */ struct J3DTransformInfo { /* 0x00 */ JGeometry::TVec3 mScale; /* 0x0C */ JGeometry::TVec3 mRotation; diff --git a/include/JSystem/J3DGraphBase/J3DVertex.h b/include/JSystem/J3DGraphBase/J3DVertex.h index 4e5129a3bf..f100736965 100644 --- a/include/JSystem/J3DGraphBase/J3DVertex.h +++ b/include/JSystem/J3DGraphBase/J3DVertex.h @@ -3,13 +3,16 @@ #include "dolphin/gx/GXAttr.h" #include "dolphin/mtx/vec.h" -#include "dolphin/types.h" typedef struct _GXColor GXColor; class J3DModel; class J3DAnmVtxColor; class J3DVertexBuffer; +/** + * @ingroup jsystem-j3d + * + */ struct J3DVtxColorCalc { /* 8032E180 */ void calc(J3DModel*); virtual void calc(J3DVertexBuffer*); @@ -19,6 +22,10 @@ struct J3DVtxColorCalc { /* 0x8 */ J3DAnmVtxColor* mpVtxColor; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DVertexData { public: J3DVertexData(); @@ -61,6 +68,10 @@ private: /* 0x58 */ GXCompType mVtxNrmType; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DVertexBuffer { public: J3DVertexBuffer() { init(); } diff --git a/include/JSystem/J3DGraphLoader/J3DAnmLoader.h b/include/JSystem/J3DGraphLoader/J3DAnmLoader.h index 15df300e0f..789f52bfa0 100644 --- a/include/JSystem/J3DGraphLoader/J3DAnmLoader.h +++ b/include/JSystem/J3DGraphLoader/J3DAnmLoader.h @@ -1,7 +1,6 @@ #ifndef J3DANMLOADER_H #define J3DANMLOADER_H -#include "dolphin/types.h" enum J3DAnmLoaderDataBaseFlag { J3DLOADER_UNK_FLAG0, @@ -10,6 +9,10 @@ enum J3DAnmLoaderDataBaseFlag { class J3DAnmBase; +/** + * @ingroup jsystem-j3d + * + */ struct J3DAnmLoaderDataBase { /* 80337B40 */ static J3DAnmBase* load(void const*, J3DAnmLoaderDataBaseFlag); /* 80338134 */ static void setResource(J3DAnmBase*, void const*); diff --git a/include/JSystem/J3DGraphLoader/J3DClusterLoader.h b/include/JSystem/J3DGraphLoader/J3DClusterLoader.h index fa8acfb998..45c3bf13e2 100644 --- a/include/JSystem/J3DGraphLoader/J3DClusterLoader.h +++ b/include/JSystem/J3DGraphLoader/J3DClusterLoader.h @@ -1,13 +1,20 @@ #ifndef J3DCLUSTERLOADER_H #define J3DCLUSTERLOADER_H -#include "dolphin/types.h" #include "JSystem/J3DGraphAnimator/J3DAnimation.h" +/** + * @ingroup jsystem-j3d + * + */ struct J3DClusterLoaderDataBase { /* 80334130 */ static void* load(void const*); }; +/** + * @ingroup jsystem-j3d + * + */ class J3DClusterBlock : public JUTDataBlockHeader { public: /* 0x08 */ u16 mClusterNum; @@ -24,6 +31,10 @@ public: /* 0x2C */ void* mClusterKeyName; }; +/** + * @ingroup jsystem-j3d + * + */ class J3DClusterLoader { public: virtual void* load(const void*) = 0; @@ -32,6 +43,10 @@ public: class J3DDeformData; +/** + * @ingroup jsystem-j3d + * + */ class J3DClusterLoader_v15 : public J3DClusterLoader { public: /* 803341CC */ J3DClusterLoader_v15(); diff --git a/include/JSystem/J3DGraphLoader/J3DJointFactory.h b/include/JSystem/J3DGraphLoader/J3DJointFactory.h index 5b6325d100..4ca8c129a8 100644 --- a/include/JSystem/J3DGraphLoader/J3DJointFactory.h +++ b/include/JSystem/J3DGraphLoader/J3DJointFactory.h @@ -2,11 +2,14 @@ #define J3DJOINTFACTORY_H #include "JSystem/J3DGraphBase/J3DTransform.h" -#include "dolphin/types.h" class J3DJoint; struct J3DJointBlock; +/** + * @ingroup jsystem-j3d + * + */ struct J3DJointInitData { /* 0x00 */ u16 mKind; /* 0x02 */ bool mScaleCompensate; @@ -16,6 +19,10 @@ struct J3DJointInitData { /* 0x2C */ Vec mMax; }; // Size: 0x30 +/** + * @ingroup jsystem-j3d + * + */ struct J3DJointFactory { /* 80337178 */ J3DJointFactory(J3DJointBlock const&); /* 803371D0 */ J3DJoint* create(int); diff --git a/include/JSystem/J3DGraphLoader/J3DMaterialFactory.h b/include/JSystem/J3DGraphLoader/J3DMaterialFactory.h index f1786865ee..251d900aae 100644 --- a/include/JSystem/J3DGraphLoader/J3DMaterialFactory.h +++ b/include/JSystem/J3DGraphLoader/J3DMaterialFactory.h @@ -3,11 +3,14 @@ #include "JSystem/J3DGraphBase/J3DMatBlock.h" #include "JSystem/J3DGraphLoader/J3DModelLoader.h" -#include "dolphin/gx/GXEnum.h" #include "dolphin/gx/GXStruct.h" class J3DMaterial; +/** + * @ingroup jsystem-j3d + * + */ struct J3DMaterialInitData { /* 0x000 */ u8 mMaterialMode; /* 0x001 */ u8 mCullModeIdx; @@ -41,6 +44,10 @@ struct J3DMaterialInitData { /* 0x14A */ u16 mNBTScaleIdx; }; // size 0x14C +/** + * @ingroup jsystem-j3d + * + */ struct J3DIndInitData { /* 0x000 */ bool mEnabled; /* 0x001 */ u8 mIndTexStageNum; @@ -53,6 +60,10 @@ struct J3DIndInitData { /* 0x078 */ J3DIndTevStageInfo mIndTevStageInfo[0x10]; }; // size 0x138 +/** + * @ingroup jsystem-j3d + * + */ struct J3DPatchingInfo { /* 0x0 */ u16 mMatColorOffset; /* 0x2 */ u16 mColorChanOffset; @@ -63,6 +74,10 @@ struct J3DPatchingInfo { /* 0xC */ u8 field_0xc[4]; }; // size 0x10 +/** + * @ingroup jsystem-j3d + * + */ struct J3DDisplayListInit { /* 0x0 */ u32 mOffset; /* 0x4 */ u32 field_0x4; @@ -71,6 +86,10 @@ struct J3DDisplayListInit { struct J3DTexCoord2Info; struct J3DCurrentMtxInfo; +/** + * @ingroup jsystem-j3d + * + */ class J3DMaterialFactory { public: enum MaterialType { diff --git a/include/JSystem/J3DGraphLoader/J3DMaterialFactory_v21.h b/include/JSystem/J3DGraphLoader/J3DMaterialFactory_v21.h index b44d012084..d6ee20b2d5 100644 --- a/include/JSystem/J3DGraphLoader/J3DMaterialFactory_v21.h +++ b/include/JSystem/J3DGraphLoader/J3DMaterialFactory_v21.h @@ -1,107 +1,114 @@ -#ifndef J3DMATERIALFACTORY_V21_H -#define J3DMATERIALFACTORY_V21_H - -#include "JSystem/J3DGraphBase/J3DMatBlock.h" -#include "JSystem/J3DGraphLoader/J3DModelLoader.h" -#include "dolphin/gx/GXEnum.h" -#include "dolphin/gx/GXStruct.h" - -class J3DMaterial; -struct J3DTexCoord2Info; -struct J3DCurrentMtxInfo; - -struct J3DMaterialInitData_v21 { - /* 0x000 */ u8 mMaterialMode; - /* 0x001 */ u8 mCullModeIdx; - /* 0x002 */ u8 mColorChanNumIdx; - /* 0x003 */ u8 mTexGenNumIdx; - /* 0x004 */ u8 mTevStageNumIdx; - /* 0x005 */ u8 mZCompLocIdx; - /* 0x006 */ u8 mZModeIdx; - /* 0x007 */ u8 mDitherIdx; - /* 0x008 */ u16 mMatColorIdx[2]; - /* 0x00C */ u16 mColorChanIdx[4]; - /* 0x014 */ u16 mTexCoordIdx[8]; - /* 0x024 */ u8 field_0x038[0x10]; - /* 0x034 */ u16 mTexMtxIdx[8]; - /* 0x044 */ u8 field_0x058[0x2c]; - /* 0x070 */ u16 mTexNoIdx[8]; - /* 0x080 */ u16 mTevKColorIdx[4]; - /* 0x088 */ u8 mTevKColorSel[0x10]; - /* 0x098 */ u8 mTevKAlphaSel[0x10]; - /* 0x0A8 */ u16 mTevOrderIdx[0x10]; - /* 0x0C8 */ u16 mTevColorIdx[4]; - /* 0x0D0 */ u16 mTevStageIdx[0x10]; - /* 0x0F0 */ u16 mTevSwapModeIdx[0x10]; - /* 0x110 */ u16 mTevSwapModeTableIdx[4]; - /* 0x118 */ u8 field_0x12c[0x18]; - /* 0x130 */ u16 mFogIdx; - /* 0x132 */ u16 mAlphaCompIdx; - /* 0x134 */ u16 mBlendIdx; - /* 0x136 */ u16 mNBTScaleIdx; -}; // size 0x138 - -class J3DMaterialFactory_v21 { -public: - /* 80332DA4 */ J3DMaterialFactory_v21(J3DMaterialBlock_v21 const&); - /* 80332F84 */ u16 countUniqueMaterials(); - /* 80332FA8 */ u32 countTexGens(int) const; - /* 80332FE0 */ u32 countStages(int) const; - /* 80333068 */ J3DMaterial* create(J3DMaterial*, int, u32) const; - /* 803337D8 */ J3DGXColor newMatColor(int, int) const; - /* 80333834 */ u8 newColorChanNum(int) const; - /* 8033386C */ J3DColorChan newColorChan(int, int) const; - /* 80333A10 */ u32 newTexGenNum(int) const; - /* 80333A48 */ J3DTexCoord newTexCoord(int, int) const; - /* 80333AA8 */ J3DTexMtx* newTexMtx(int, int) const; - /* 80333B30 */ u8 newCullMode(int) const; - /* 80333B70 */ u16 newTexNo(int, int) const; - /* 80333BB8 */ J3DTevOrder newTevOrder(int, int) const; - /* 80333C04 */ J3DGXColorS10 newTevColor(int, int) const; - /* 80333C74 */ J3DGXColor newTevKColor(int, int) const; - /* 80333CD0 */ u8 newTevStageNum(int) const; - /* 80333D08 */ J3DTevStage newTevStage(int, int) const; - /* 80333D68 */ J3DTevSwapModeTable newTevSwapModeTable(int, int) const; - /* 80333E04 */ J3DFog newFog(int) const; - /* 80333EE0 */ J3DAlphaComp newAlphaComp(int) const; - /* 80333F60 */ J3DBlend newBlend(int) const; - /* 80333FA4 */ J3DZMode newZMode(int) const; - /* 80334004 */ u8 newZCompLoc(int) const; - /* 8033403C */ u8 newDither(int) const; - /* 80334074 */ J3DNBTScale newNBTScale(int) const; - - u16 getMaterialID(u16 idx) { return mpMaterialID[idx]; } - - /* 0x00 */ u16 mMaterialNum; - /* 0x04 */ J3DMaterialInitData_v21* mpMaterialInitData; - /* 0x08 */ u16* mpMaterialID; - /* 0x0C */ GXColor* mpMatColor; - /* 0x10 */ u8* mpColorChanNum; - /* 0x14 */ J3DColorChanInfo* mpColorChanInfo; - /* 0x18 */ u8* mpTexGenNum; - /* 0x1C */ J3DTexCoordInfo* mpTexCoordInfo; - /* 0x20 */ J3DTexCoord2Info* mpTexCoord2Info; - /* 0x24 */ J3DTexMtxInfo* mpTexMtxInfo; - /* 0x28 */ J3DTexMtxInfo* field_0x28; - /* 0x2C */ u16* mpTexNo; - /* 0x30 */ GXCullMode* mpCullMode; - /* 0x34 */ J3DTevOrderInfo* mpTevOrderInfo; - /* 0x38 */ GXColorS10* mpTevColor; - /* 0x3C */ GXColor* mpTevKColor; - /* 0x40 */ u8* mpTevStageNum; - /* 0x44 */ J3DTevStageInfo* mpTevStageInfo; - /* 0x48 */ J3DTevSwapModeInfo* mpTevSwapModeInfo; - /* 0x4C */ J3DTevSwapModeTableInfo* mpTevSwapModeTableInfo; - /* 0x50 */ J3DFogInfo* mpFogInfo; - /* 0x54 */ J3DAlphaCompInfo* mpAlphaCompInfo; - /* 0x58 */ J3DBlendInfo* mpBlendInfo; - /* 0x5C */ J3DZModeInfo* mpZModeInfo; - /* 0x60 */ u8* mpZCompLoc; - /* 0x64 */ u8* mpDither; - /* 0x68 */ J3DNBTScaleInfo* mpNBTScaleInfo; - /* 0x6C */ u16 field_0x6c; - /* 0x6E */ u8 field_0x6e; - /* 0x6F */ u8 field_0x6f; -}; - -#endif /* J3DMATERIALFACTORY_V21_H */ +#ifndef J3DMATERIALFACTORY_V21_H +#define J3DMATERIALFACTORY_V21_H + +#include "JSystem/J3DGraphBase/J3DMatBlock.h" +#include "JSystem/J3DGraphLoader/J3DModelLoader.h" +#include "dolphin/gx/GXStruct.h" + +class J3DMaterial; +struct J3DTexCoord2Info; +struct J3DCurrentMtxInfo; + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DMaterialInitData_v21 { + /* 0x000 */ u8 mMaterialMode; + /* 0x001 */ u8 mCullModeIdx; + /* 0x002 */ u8 mColorChanNumIdx; + /* 0x003 */ u8 mTexGenNumIdx; + /* 0x004 */ u8 mTevStageNumIdx; + /* 0x005 */ u8 mZCompLocIdx; + /* 0x006 */ u8 mZModeIdx; + /* 0x007 */ u8 mDitherIdx; + /* 0x008 */ u16 mMatColorIdx[2]; + /* 0x00C */ u16 mColorChanIdx[4]; + /* 0x014 */ u16 mTexCoordIdx[8]; + /* 0x024 */ u8 field_0x038[0x10]; + /* 0x034 */ u16 mTexMtxIdx[8]; + /* 0x044 */ u8 field_0x058[0x2c]; + /* 0x070 */ u16 mTexNoIdx[8]; + /* 0x080 */ u16 mTevKColorIdx[4]; + /* 0x088 */ u8 mTevKColorSel[0x10]; + /* 0x098 */ u8 mTevKAlphaSel[0x10]; + /* 0x0A8 */ u16 mTevOrderIdx[0x10]; + /* 0x0C8 */ u16 mTevColorIdx[4]; + /* 0x0D0 */ u16 mTevStageIdx[0x10]; + /* 0x0F0 */ u16 mTevSwapModeIdx[0x10]; + /* 0x110 */ u16 mTevSwapModeTableIdx[4]; + /* 0x118 */ u8 field_0x12c[0x18]; + /* 0x130 */ u16 mFogIdx; + /* 0x132 */ u16 mAlphaCompIdx; + /* 0x134 */ u16 mBlendIdx; + /* 0x136 */ u16 mNBTScaleIdx; +}; // size 0x138 + +/** + * @ingroup jsystem-j3d + * + */ +class J3DMaterialFactory_v21 { +public: + /* 80332DA4 */ J3DMaterialFactory_v21(J3DMaterialBlock_v21 const&); + /* 80332F84 */ u16 countUniqueMaterials(); + /* 80332FA8 */ u32 countTexGens(int) const; + /* 80332FE0 */ u32 countStages(int) const; + /* 80333068 */ J3DMaterial* create(J3DMaterial*, int, u32) const; + /* 803337D8 */ J3DGXColor newMatColor(int, int) const; + /* 80333834 */ u8 newColorChanNum(int) const; + /* 8033386C */ J3DColorChan newColorChan(int, int) const; + /* 80333A10 */ u32 newTexGenNum(int) const; + /* 80333A48 */ J3DTexCoord newTexCoord(int, int) const; + /* 80333AA8 */ J3DTexMtx* newTexMtx(int, int) const; + /* 80333B30 */ u8 newCullMode(int) const; + /* 80333B70 */ u16 newTexNo(int, int) const; + /* 80333BB8 */ J3DTevOrder newTevOrder(int, int) const; + /* 80333C04 */ J3DGXColorS10 newTevColor(int, int) const; + /* 80333C74 */ J3DGXColor newTevKColor(int, int) const; + /* 80333CD0 */ u8 newTevStageNum(int) const; + /* 80333D08 */ J3DTevStage newTevStage(int, int) const; + /* 80333D68 */ J3DTevSwapModeTable newTevSwapModeTable(int, int) const; + /* 80333E04 */ J3DFog newFog(int) const; + /* 80333EE0 */ J3DAlphaComp newAlphaComp(int) const; + /* 80333F60 */ J3DBlend newBlend(int) const; + /* 80333FA4 */ J3DZMode newZMode(int) const; + /* 80334004 */ u8 newZCompLoc(int) const; + /* 8033403C */ u8 newDither(int) const; + /* 80334074 */ J3DNBTScale newNBTScale(int) const; + + u16 getMaterialID(u16 idx) { return mpMaterialID[idx]; } + + /* 0x00 */ u16 mMaterialNum; + /* 0x04 */ J3DMaterialInitData_v21* mpMaterialInitData; + /* 0x08 */ u16* mpMaterialID; + /* 0x0C */ GXColor* mpMatColor; + /* 0x10 */ u8* mpColorChanNum; + /* 0x14 */ J3DColorChanInfo* mpColorChanInfo; + /* 0x18 */ u8* mpTexGenNum; + /* 0x1C */ J3DTexCoordInfo* mpTexCoordInfo; + /* 0x20 */ J3DTexCoord2Info* mpTexCoord2Info; + /* 0x24 */ J3DTexMtxInfo* mpTexMtxInfo; + /* 0x28 */ J3DTexMtxInfo* field_0x28; + /* 0x2C */ u16* mpTexNo; + /* 0x30 */ GXCullMode* mpCullMode; + /* 0x34 */ J3DTevOrderInfo* mpTevOrderInfo; + /* 0x38 */ GXColorS10* mpTevColor; + /* 0x3C */ GXColor* mpTevKColor; + /* 0x40 */ u8* mpTevStageNum; + /* 0x44 */ J3DTevStageInfo* mpTevStageInfo; + /* 0x48 */ J3DTevSwapModeInfo* mpTevSwapModeInfo; + /* 0x4C */ J3DTevSwapModeTableInfo* mpTevSwapModeTableInfo; + /* 0x50 */ J3DFogInfo* mpFogInfo; + /* 0x54 */ J3DAlphaCompInfo* mpAlphaCompInfo; + /* 0x58 */ J3DBlendInfo* mpBlendInfo; + /* 0x5C */ J3DZModeInfo* mpZModeInfo; + /* 0x60 */ u8* mpZCompLoc; + /* 0x64 */ u8* mpDither; + /* 0x68 */ J3DNBTScaleInfo* mpNBTScaleInfo; + /* 0x6C */ u16 field_0x6c; + /* 0x6E */ u8 field_0x6e; + /* 0x6F */ u8 field_0x6f; +}; + +#endif /* J3DMATERIALFACTORY_V21_H */ diff --git a/include/JSystem/J3DGraphLoader/J3DModelLoader.h b/include/JSystem/J3DGraphLoader/J3DModelLoader.h index 2770e348ba..21ec5cd163 100644 --- a/include/JSystem/J3DGraphLoader/J3DModelLoader.h +++ b/include/JSystem/J3DGraphLoader/J3DModelLoader.h @@ -1,249 +1,312 @@ -#ifndef J3DMODELLOADER_H -#define J3DMODELLOADER_H - -#include "dolphin/types.h" -#include "dolphin/mtx.h" - -class J3DModelData; -class J3DMaterialTable; -class J3DModelHierarchy; - -struct J3DModelBlock { - /* 0x00 */ u32 mBlockType; - /* 0x04 */ u32 mBlockSize; -}; - -struct J3DModelFileData { - /* 0x00 */ u32 mMagic1; - /* 0x04 */ u32 mMagic2; - /* 0x08 */ u8 field_0x08[4]; - /* 0x0C */ u32 mBlockNum; - /* 0x10 */ u8 field_0x10[0x10]; - /* 0x20 */ J3DModelBlock mBlocks[1]; -}; - -struct J3DModelInfoBlock : public J3DModelBlock { - /* 0x08 */ u16 mFlags; - /* 0x0C */ u32 mPacketNum; - /* 0x10 */ u32 mVtxNum; - /* 0x14 */ void* mpHierarchy; -}; // size 0x18 - -struct J3DVertexBlock : public J3DModelBlock { - /* 0x08 */ void* mpVtxAttrFmtList; - /* 0x0C */ void* mpVtxPosArray; - /* 0x10 */ void* mpVtxNrmArray; - /* 0x14 */ void* mpVtxNBTArray; - /* 0x18 */ void* mpVtxColorArray[2]; - /* 0x20 */ void* mpVtxTexCoordArray[8]; -}; // size 0x40 - -struct J3DEnvelopeBlock : public J3DModelBlock { - /* 0x08 */ u16 mWEvlpMtxNum; - /* 0x0C */ void* mpWEvlpMixMtxNum; - /* 0x10 */ void* mpWEvlpMixIndex; - /* 0x14 */ void* mpWEvlpMixWeight; - /* 0x18 */ void* mpInvJointMtx; -}; // size 0x1C - -struct J3DDrawBlock : public J3DModelBlock { - /* 0x08 */ u16 mMtxNum; - /* 0x0C */ void* mpDrawMtxFlag; - /* 0x10 */ void* mpDrawMtxIndex; -}; // size 0x14 - -struct J3DJointBlock : public J3DModelBlock { - /* 0x08 */ u16 mJointNum; - /* 0x0C */ void* mpJointInitData; - /* 0x10 */ void* mpIndexTable; - /* 0x14 */ void* mpNameTable; -}; // size 0x18 - -struct J3DMaterialBlock : public J3DModelBlock { - /* 0x08 */ u16 mMaterialNum; - /* 0x0C */ void* mpMaterialInitData; - /* 0x10 */ void* mpMaterialID; - /* 0x14 */ void* mpNameTable; - /* 0x18 */ void* mpIndInitData; - /* 0x1C */ void* mpCullMode; - /* 0x20 */ void* mpMatColor; - /* 0x24 */ void* mpColorChanNum; - /* 0x28 */ void* mpColorChanInfo; - /* 0x2C */ void* mpAmbColor; - /* 0x30 */ void* mpLightInfo; - /* 0x34 */ void* mpTexGenNum; - /* 0x38 */ void* mpTexCoordInfo; - /* 0x3C */ void* mpTexCoord2Info; - /* 0x40 */ void* mpTexMtxInfo; - /* 0x44 */ void* field_0x44; - /* 0x48 */ void* mpTexNo; - /* 0x4C */ void* mpTevOrderInfo; - /* 0x50 */ void* mpTevColor; - /* 0x54 */ void* mpTevKColor; - /* 0x58 */ void* mpTevStageNum; - /* 0x5C */ void* mpTevStageInfo; - /* 0x60 */ void* mpTevSwapModeInfo; - /* 0x64 */ void* mpTevSwapModeTableInfo; - /* 0x68 */ void* mpFogInfo; - /* 0x6C */ void* mpAlphaCompInfo; - /* 0x70 */ void* mpBlendInfo; - /* 0x74 */ void* mpZModeInfo; - /* 0x78 */ void* mpZCompLoc; - /* 0x7C */ void* mpDither; - /* 0x80 */ void* mpNBTScaleInfo; -}; - -struct J3DMaterialBlock_v21 : public J3DModelBlock { - /* 0x08 */ u16 mMaterialNum; - /* 0x0C */ void* mpMaterialInitData; - /* 0x10 */ void* mpMaterialID; - /* 0x14 */ void* mpNameTable; - /* 0x18 */ void* mpCullMode; - /* 0x1C */ void* mpMatColor; - /* 0x20 */ void* mpColorChanNum; - /* 0x24 */ void* mpColorChanInfo; - /* 0x28 */ void* mpTexGenNum; - /* 0x2C */ void* mpTexCoordInfo; - /* 0x30 */ void* mpTexCoord2Info; - /* 0x34 */ void* mpTexMtxInfo; - /* 0x38 */ void* field_0x38; - /* 0x3C */ void* mpTexNo; - /* 0x40 */ void* mpTevOrderInfo; - /* 0x44 */ void* mpTevColor; - /* 0x48 */ void* mpTevKColor; - /* 0x4C */ void* mpTevStageNum; - /* 0x50 */ void* mpTevStageInfo; - /* 0x54 */ void* mpTevSwapModeInfo; - /* 0x58 */ void* mpTevSwapModeTableInfo; - /* 0x5C */ void* mpFogInfo; - /* 0x60 */ void* mpAlphaCompInfo; - /* 0x64 */ void* mpBlendInfo; - /* 0x68 */ void* mpZModeInfo; - /* 0x6C */ void* mpZCompLoc; - /* 0x70 */ void* mpDither; - /* 0x74 */ void* mpNBTScaleInfo; -}; - -struct J3DMaterialDLBlock : public J3DModelBlock { - /* 0x08 */ u16 mMaterialNum; - /* 0x0C */ void* mpDisplayListInit; - /* 0x10 */ void* mpPatchingInfo; - /* 0x14 */ void* mpCurrentMtxInfo; - /* 0x18 */ void* mpMaterialMode; - /* 0x1C */ void* field_0x1c; - /* 0x20 */ void* mpNameTable; -}; - -struct J3DShapeBlock : public J3DModelBlock { - /* 0x08 */ u16 mShapeNum; - /* 0x0C */ void* mpShapeInitData; - /* 0x10 */ void* mpIndexTable; - /* 0x14 */ void* mpNameTable; - /* 0x18 */ void* mpVtxDescList; - /* 0x1C */ void* mpMtxTable; - /* 0x20 */ void* mpDisplayListData; - /* 0x24 */ void* mpMtxInitData; - /* 0x28 */ void* mpDrawInitData; -}; // size 0x2C - -struct J3DTextureBlock : public J3DModelBlock { - /* 0x08 */ u16 mTextureNum; - /* 0x0C */ void* mpTextureRes; - /* 0x10 */ void* mpNameTable; -}; - -class J3DModelLoader { -public: - /* 8033468C */ J3DModelLoader(); - /* 80335048 */ void readInformation(J3DModelInfoBlock const*, u32); - /* 803351D0 */ void readVertex(J3DVertexBlock const*); - /* 803353F0 */ void readEnvelop(J3DEnvelopeBlock const*); - /* 80335480 */ void readDraw(J3DDrawBlock const*); - /* 80335530 */ void readJoint(J3DJointBlock const*); - /* 80335AF4 */ void readShape(J3DShapeBlock const*, u32); - /* 80335C18 */ void readTexture(J3DTextureBlock const*); - /* 80335F5C */ void readTextureTable(J3DTextureBlock const*); - /* 80336028 */ void readPatchedMaterial(J3DMaterialBlock const*, u32); - /* 80336168 */ void readMaterialDL(J3DMaterialDLBlock const*, u32); - /* 8033631C */ void modifyMaterial(u32); - - /* 80336CD8 */ u32 calcSizeInformation(J3DModelInfoBlock const*, u32); - /* 80336D64 */ u32 calcSizeJoint(J3DJointBlock const*); - /* 80336D90 */ u32 calcSizeEnvelope(J3DEnvelopeBlock const*); - /* 80336DA0 */ u32 calcSizeDraw(J3DDrawBlock const*); - /* 80336EA0 */ u32 calcSizeShape(J3DShapeBlock const*, u32); - /* 80336F44 */ u32 calcSizeTexture(J3DTextureBlock const*); - /* 80336FF0 */ u32 calcSizeTextureTable(J3DTextureBlock const*); - /* 80337010 */ u32 calcSizePatchedMaterial(J3DMaterialBlock const*, u32); - /* 803370A0 */ u32 calcSizeMaterialDL(J3DMaterialDLBlock const*, u32); - - // virtuals - /* 803347E0 */ J3DModelData* load(void const*, u32); - /* 80334ABC */ J3DMaterialTable* loadMaterialTable(void const*); - /* 80334C20 */ J3DModelData* loadBinaryDisplayList(void const*, u32); - /* 803367D4 */ u32 calcLoadSize(void const*, u32); - /* 803369A0 */ u32 calcLoadMaterialTableSize(void const*); - /* 80336A98 */ u32 calcLoadBinaryDisplayListSize(void const*, u32); - /* 80336794 */ u16 countMaterialNum(void const*); - /* 80334EE0 */ void setupBBoardInfo(); - /* 80336450 */ ~J3DModelLoader(); - /* 8033649C */ void readMaterial(J3DMaterialBlock const*, u32); - /* 80336498 */ void readMaterial_v21(J3DMaterialBlock_v21 const*, u32); - /* 803364A4 */ void readMaterialTable(J3DMaterialBlock const*, u32); - /* 803364A0 */ void readMaterialTable_v21(J3DMaterialBlock_v21 const*, u32); - /* 803364A8 */ u32 calcSizeMaterial(J3DMaterialBlock const*, u32); - /* 803364B0 */ u32 calcSizeMaterialTable(J3DMaterialBlock const*, u32); - - /* 0x00 */ void* _vtable; - /* 0x04 */ J3DModelData* mpModelData; - /* 0x08 */ J3DMaterialTable* mpMaterialTable; - /* 0x0C */ J3DShapeBlock const* mpShapeBlock; - /* 0x10 */ J3DMaterialBlock const* mpMaterialBlock; - /* 0x14 */ J3DModelHierarchy* mpModelHierarchy; - /* 0x18 */ u8 field_0x18; - /* 0x19 */ u8 field_0x19; - /* 0x1A */ u16 mEnvelopeSize; -}; - -class J3DModelLoader_v21 { // : public J3DModelLoader { -public: - /* 803363F4 */ ~J3DModelLoader_v21() {} - /* 80335890 */ void readMaterial_v21(J3DMaterialBlock_v21 const*, u32); - /* 80335E20 */ void readMaterialTable_v21(J3DMaterialBlock_v21 const*, u32); - - /* 0x00 */ void* _vtable; - /* 0x04 */ J3DModelData* mpModelData; - /* 0x08 */ J3DMaterialTable* mpMaterialTable; - /* 0x0C */ J3DShapeBlock const* mpShapeBlock; - /* 0x10 */ J3DMaterialBlock const* mpMaterialBlock; - /* 0x14 */ J3DModelHierarchy* mpModelHierarchy; - /* 0x18 */ u8 field_0x18; - /* 0x19 */ u8 field_0x19; - /* 0x1A */ u16 mEnvelopeSize; -}; - -class J3DModelLoader_v26 { // : public J3DModelLoader { -public: - /* 80336398 */ ~J3DModelLoader_v26() {} - /* 80335614 */ void readMaterial(J3DMaterialBlock const*, u32); - /* 80335CE4 */ void readMaterialTable(J3DMaterialBlock const*, u32); - /* 80336DB4 */ u32 calcSizeMaterial(J3DMaterialBlock const*, u32); - /* 80336F60 */ u32 calcSizeMaterialTable(J3DMaterialBlock const*, u32); - - /* 0x00 */ void* _vtable; - /* 0x04 */ J3DModelData* mpModelData; - /* 0x08 */ J3DMaterialTable* mpMaterialTable; - /* 0x0C */ J3DShapeBlock const* mpShapeBlock; - /* 0x10 */ J3DMaterialBlock const* mpMaterialBlock; - /* 0x14 */ J3DModelHierarchy* mpModelHierarchy; - /* 0x18 */ u8 field_0x18; - /* 0x19 */ u8 field_0x19; - /* 0x1A */ u16 mEnvelopeSize; -}; - -class J3DModelLoaderDataBase { -public: - /* 803346BC */ static J3DModelData* load(void const* i_data, u32 i_flags); -}; - -#endif /* J3DMODELLOADER_H */ +#ifndef J3DMODELLOADER_H +#define J3DMODELLOADER_H + +#include "dolphin/mtx.h" + +class J3DModelData; +class J3DMaterialTable; +class J3DModelHierarchy; + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DModelBlock { + /* 0x00 */ u32 mBlockType; + /* 0x04 */ u32 mBlockSize; +}; + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DModelFileData { + /* 0x00 */ u32 mMagic1; + /* 0x04 */ u32 mMagic2; + /* 0x08 */ u8 field_0x08[4]; + /* 0x0C */ u32 mBlockNum; + /* 0x10 */ u8 field_0x10[0x10]; + /* 0x20 */ J3DModelBlock mBlocks[1]; +}; + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DModelInfoBlock : public J3DModelBlock { + /* 0x08 */ u16 mFlags; + /* 0x0C */ u32 mPacketNum; + /* 0x10 */ u32 mVtxNum; + /* 0x14 */ void* mpHierarchy; +}; // size 0x18 + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DVertexBlock : public J3DModelBlock { + /* 0x08 */ void* mpVtxAttrFmtList; + /* 0x0C */ void* mpVtxPosArray; + /* 0x10 */ void* mpVtxNrmArray; + /* 0x14 */ void* mpVtxNBTArray; + /* 0x18 */ void* mpVtxColorArray[2]; + /* 0x20 */ void* mpVtxTexCoordArray[8]; +}; // size 0x40 + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DEnvelopeBlock : public J3DModelBlock { + /* 0x08 */ u16 mWEvlpMtxNum; + /* 0x0C */ void* mpWEvlpMixMtxNum; + /* 0x10 */ void* mpWEvlpMixIndex; + /* 0x14 */ void* mpWEvlpMixWeight; + /* 0x18 */ void* mpInvJointMtx; +}; // size 0x1C + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DDrawBlock : public J3DModelBlock { + /* 0x08 */ u16 mMtxNum; + /* 0x0C */ void* mpDrawMtxFlag; + /* 0x10 */ void* mpDrawMtxIndex; +}; // size 0x14 + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DJointBlock : public J3DModelBlock { + /* 0x08 */ u16 mJointNum; + /* 0x0C */ void* mpJointInitData; + /* 0x10 */ void* mpIndexTable; + /* 0x14 */ void* mpNameTable; +}; // size 0x18 + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DMaterialBlock : public J3DModelBlock { + /* 0x08 */ u16 mMaterialNum; + /* 0x0C */ void* mpMaterialInitData; + /* 0x10 */ void* mpMaterialID; + /* 0x14 */ void* mpNameTable; + /* 0x18 */ void* mpIndInitData; + /* 0x1C */ void* mpCullMode; + /* 0x20 */ void* mpMatColor; + /* 0x24 */ void* mpColorChanNum; + /* 0x28 */ void* mpColorChanInfo; + /* 0x2C */ void* mpAmbColor; + /* 0x30 */ void* mpLightInfo; + /* 0x34 */ void* mpTexGenNum; + /* 0x38 */ void* mpTexCoordInfo; + /* 0x3C */ void* mpTexCoord2Info; + /* 0x40 */ void* mpTexMtxInfo; + /* 0x44 */ void* field_0x44; + /* 0x48 */ void* mpTexNo; + /* 0x4C */ void* mpTevOrderInfo; + /* 0x50 */ void* mpTevColor; + /* 0x54 */ void* mpTevKColor; + /* 0x58 */ void* mpTevStageNum; + /* 0x5C */ void* mpTevStageInfo; + /* 0x60 */ void* mpTevSwapModeInfo; + /* 0x64 */ void* mpTevSwapModeTableInfo; + /* 0x68 */ void* mpFogInfo; + /* 0x6C */ void* mpAlphaCompInfo; + /* 0x70 */ void* mpBlendInfo; + /* 0x74 */ void* mpZModeInfo; + /* 0x78 */ void* mpZCompLoc; + /* 0x7C */ void* mpDither; + /* 0x80 */ void* mpNBTScaleInfo; +}; + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DMaterialBlock_v21 : public J3DModelBlock { + /* 0x08 */ u16 mMaterialNum; + /* 0x0C */ void* mpMaterialInitData; + /* 0x10 */ void* mpMaterialID; + /* 0x14 */ void* mpNameTable; + /* 0x18 */ void* mpCullMode; + /* 0x1C */ void* mpMatColor; + /* 0x20 */ void* mpColorChanNum; + /* 0x24 */ void* mpColorChanInfo; + /* 0x28 */ void* mpTexGenNum; + /* 0x2C */ void* mpTexCoordInfo; + /* 0x30 */ void* mpTexCoord2Info; + /* 0x34 */ void* mpTexMtxInfo; + /* 0x38 */ void* field_0x38; + /* 0x3C */ void* mpTexNo; + /* 0x40 */ void* mpTevOrderInfo; + /* 0x44 */ void* mpTevColor; + /* 0x48 */ void* mpTevKColor; + /* 0x4C */ void* mpTevStageNum; + /* 0x50 */ void* mpTevStageInfo; + /* 0x54 */ void* mpTevSwapModeInfo; + /* 0x58 */ void* mpTevSwapModeTableInfo; + /* 0x5C */ void* mpFogInfo; + /* 0x60 */ void* mpAlphaCompInfo; + /* 0x64 */ void* mpBlendInfo; + /* 0x68 */ void* mpZModeInfo; + /* 0x6C */ void* mpZCompLoc; + /* 0x70 */ void* mpDither; + /* 0x74 */ void* mpNBTScaleInfo; +}; + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DMaterialDLBlock : public J3DModelBlock { + /* 0x08 */ u16 mMaterialNum; + /* 0x0C */ void* mpDisplayListInit; + /* 0x10 */ void* mpPatchingInfo; + /* 0x14 */ void* mpCurrentMtxInfo; + /* 0x18 */ void* mpMaterialMode; + /* 0x1C */ void* field_0x1c; + /* 0x20 */ void* mpNameTable; +}; + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DShapeBlock : public J3DModelBlock { + /* 0x08 */ u16 mShapeNum; + /* 0x0C */ void* mpShapeInitData; + /* 0x10 */ void* mpIndexTable; + /* 0x14 */ void* mpNameTable; + /* 0x18 */ void* mpVtxDescList; + /* 0x1C */ void* mpMtxTable; + /* 0x20 */ void* mpDisplayListData; + /* 0x24 */ void* mpMtxInitData; + /* 0x28 */ void* mpDrawInitData; +}; // size 0x2C + +/** + * @ingroup jsystem-j3d + * + */ +struct J3DTextureBlock : public J3DModelBlock { + /* 0x08 */ u16 mTextureNum; + /* 0x0C */ void* mpTextureRes; + /* 0x10 */ void* mpNameTable; +}; + +/** + * @ingroup jsystem-j3d + * + */ +class J3DModelLoader { +public: + /* 8033468C */ J3DModelLoader(); + /* 80335048 */ void readInformation(J3DModelInfoBlock const*, u32); + /* 803351D0 */ void readVertex(J3DVertexBlock const*); + /* 803353F0 */ void readEnvelop(J3DEnvelopeBlock const*); + /* 80335480 */ void readDraw(J3DDrawBlock const*); + /* 80335530 */ void readJoint(J3DJointBlock const*); + /* 80335AF4 */ void readShape(J3DShapeBlock const*, u32); + /* 80335C18 */ void readTexture(J3DTextureBlock const*); + /* 80335F5C */ void readTextureTable(J3DTextureBlock const*); + /* 80336028 */ void readPatchedMaterial(J3DMaterialBlock const*, u32); + /* 80336168 */ void readMaterialDL(J3DMaterialDLBlock const*, u32); + /* 8033631C */ void modifyMaterial(u32); + + /* 80336CD8 */ u32 calcSizeInformation(J3DModelInfoBlock const*, u32); + /* 80336D64 */ u32 calcSizeJoint(J3DJointBlock const*); + /* 80336D90 */ u32 calcSizeEnvelope(J3DEnvelopeBlock const*); + /* 80336DA0 */ u32 calcSizeDraw(J3DDrawBlock const*); + /* 80336EA0 */ u32 calcSizeShape(J3DShapeBlock const*, u32); + /* 80336F44 */ u32 calcSizeTexture(J3DTextureBlock const*); + /* 80336FF0 */ u32 calcSizeTextureTable(J3DTextureBlock const*); + /* 80337010 */ u32 calcSizePatchedMaterial(J3DMaterialBlock const*, u32); + /* 803370A0 */ u32 calcSizeMaterialDL(J3DMaterialDLBlock const*, u32); + + // virtuals + /* 803347E0 */ J3DModelData* load(void const*, u32); + /* 80334ABC */ J3DMaterialTable* loadMaterialTable(void const*); + /* 80334C20 */ J3DModelData* loadBinaryDisplayList(void const*, u32); + /* 803367D4 */ u32 calcLoadSize(void const*, u32); + /* 803369A0 */ u32 calcLoadMaterialTableSize(void const*); + /* 80336A98 */ u32 calcLoadBinaryDisplayListSize(void const*, u32); + /* 80336794 */ u16 countMaterialNum(void const*); + /* 80334EE0 */ void setupBBoardInfo(); + /* 80336450 */ ~J3DModelLoader(); + /* 8033649C */ void readMaterial(J3DMaterialBlock const*, u32); + /* 80336498 */ void readMaterial_v21(J3DMaterialBlock_v21 const*, u32); + /* 803364A4 */ void readMaterialTable(J3DMaterialBlock const*, u32); + /* 803364A0 */ void readMaterialTable_v21(J3DMaterialBlock_v21 const*, u32); + /* 803364A8 */ u32 calcSizeMaterial(J3DMaterialBlock const*, u32); + /* 803364B0 */ u32 calcSizeMaterialTable(J3DMaterialBlock const*, u32); + + /* 0x00 */ void* _vtable; + /* 0x04 */ J3DModelData* mpModelData; + /* 0x08 */ J3DMaterialTable* mpMaterialTable; + /* 0x0C */ J3DShapeBlock const* mpShapeBlock; + /* 0x10 */ J3DMaterialBlock const* mpMaterialBlock; + /* 0x14 */ J3DModelHierarchy* mpModelHierarchy; + /* 0x18 */ u8 field_0x18; + /* 0x19 */ u8 field_0x19; + /* 0x1A */ u16 mEnvelopeSize; +}; + +/** + * @ingroup jsystem-j3d + * + */ +class J3DModelLoader_v21 { // : public J3DModelLoader { +public: + /* 803363F4 */ ~J3DModelLoader_v21() {} + /* 80335890 */ void readMaterial_v21(J3DMaterialBlock_v21 const*, u32); + /* 80335E20 */ void readMaterialTable_v21(J3DMaterialBlock_v21 const*, u32); + + /* 0x00 */ void* _vtable; + /* 0x04 */ J3DModelData* mpModelData; + /* 0x08 */ J3DMaterialTable* mpMaterialTable; + /* 0x0C */ J3DShapeBlock const* mpShapeBlock; + /* 0x10 */ J3DMaterialBlock const* mpMaterialBlock; + /* 0x14 */ J3DModelHierarchy* mpModelHierarchy; + /* 0x18 */ u8 field_0x18; + /* 0x19 */ u8 field_0x19; + /* 0x1A */ u16 mEnvelopeSize; +}; + +/** + * @ingroup jsystem-j3d + * + */ +class J3DModelLoader_v26 { // : public J3DModelLoader { +public: + /* 80336398 */ ~J3DModelLoader_v26() {} + /* 80335614 */ void readMaterial(J3DMaterialBlock const*, u32); + /* 80335CE4 */ void readMaterialTable(J3DMaterialBlock const*, u32); + /* 80336DB4 */ u32 calcSizeMaterial(J3DMaterialBlock const*, u32); + /* 80336F60 */ u32 calcSizeMaterialTable(J3DMaterialBlock const*, u32); + + /* 0x00 */ void* _vtable; + /* 0x04 */ J3DModelData* mpModelData; + /* 0x08 */ J3DMaterialTable* mpMaterialTable; + /* 0x0C */ J3DShapeBlock const* mpShapeBlock; + /* 0x10 */ J3DMaterialBlock const* mpMaterialBlock; + /* 0x14 */ J3DModelHierarchy* mpModelHierarchy; + /* 0x18 */ u8 field_0x18; + /* 0x19 */ u8 field_0x19; + /* 0x1A */ u16 mEnvelopeSize; +}; + +/** + * @ingroup jsystem-j3d + * + */ +class J3DModelLoaderDataBase { +public: + /* 803346BC */ static J3DModelData* load(void const* i_data, u32 i_flags); +}; + +#endif /* J3DMODELLOADER_H */ diff --git a/include/JSystem/J3DGraphLoader/J3DShapeFactory.h b/include/JSystem/J3DGraphLoader/J3DShapeFactory.h index 16afb48488..47ab5f6991 100644 --- a/include/JSystem/J3DGraphLoader/J3DShapeFactory.h +++ b/include/JSystem/J3DGraphLoader/J3DShapeFactory.h @@ -3,13 +3,16 @@ #include "JSystem/J3DGraphLoader/J3DModelLoader.h" #include "dolphin/gx/GXAttr.h" -#include "dolphin/mtx/vec.h" class J3DShape; class J3DShapeMtx; class J3DShapeDraw; struct ResNTAB; +/** + * @ingroup jsystem-j3d + * + */ struct J3DShapeInitData { /* 0x00 */ u8 mShapeMtxType; /* 0x02 */ u16 mMtxGroupNum; @@ -21,17 +24,29 @@ struct J3DShapeInitData { /* 0x1C */ Vec mMax; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DShapeMtxInitData { /* 0x00 */ u16 mUseMtxIndex; /* 0x02 */ u16 mUseMtxCount; /* 0x04 */ u32 mFirstUseMtxIndex; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DShapeDrawInitData { /* 0x00 */ u32 mDisplayListSize; /* 0x04 */ u32 mDisplayListIndex; }; +/** + * @ingroup jsystem-j3d + * + */ struct J3DShapeFactory { /* 80337350 */ J3DShapeFactory(J3DShapeBlock const&); /* 80337400 */ J3DShape* create(int, u32, GXVtxDescList*); diff --git a/include/JSystem/J3DU/J3DUClipper.h b/include/JSystem/J3DU/J3DUClipper.h index 119490e472..0a6386b29e 100644 --- a/include/JSystem/J3DU/J3DUClipper.h +++ b/include/JSystem/J3DU/J3DUClipper.h @@ -2,8 +2,11 @@ #define J3DUCLIPPER_H #include "dolphin/mtx.h" -#include "dolphin/types.h" +/** + * @ingroup jsystem-j3d + * + */ class J3DUClipper { public: J3DUClipper() { init(); } diff --git a/include/JSystem/J3DU/J3DUD.h b/include/JSystem/J3DU/J3DUD.h index a15172221a..f2ea239e25 100644 --- a/include/JSystem/J3DU/J3DUD.h +++ b/include/JSystem/J3DU/J3DUD.h @@ -1,7 +1,6 @@ #ifndef J3DUD_H #define J3DUD_H -#include "math.h" #include "dolphin/types.h" namespace J3DUD { diff --git a/include/JSystem/JAudio2/JAIAudible.h b/include/JSystem/JAudio2/JAIAudible.h index 47e6a59a1d..f8db9d3a50 100644 --- a/include/JSystem/JAudio2/JAIAudible.h +++ b/include/JSystem/JAudio2/JAIAudible.h @@ -5,6 +5,10 @@ struct JASSoundParams; +/** + * @ingroup jsystem-jaudio + * + */ class JAIAudible { public: virtual ~JAIAudible(); diff --git a/include/JSystem/JAudio2/JAIAudience.h b/include/JSystem/JAudio2/JAIAudience.h index 294784d5e3..1b565a069e 100644 --- a/include/JSystem/JAudio2/JAIAudience.h +++ b/include/JSystem/JAudio2/JAIAudience.h @@ -7,6 +7,10 @@ class JAIAudible; class JAISoundID; struct JASSoundParams; +/** + * @ingroup jsystem-jaudio + * + */ struct JAIAudience { virtual ~JAIAudience(); virtual JAIAudible* newAudible(JGeometry::TVec3 const&, JAISoundID, diff --git a/include/JSystem/JAudio2/JAISe.h b/include/JSystem/JAudio2/JAISe.h index 07624b2a06..6bc0b4478a 100644 --- a/include/JSystem/JAudio2/JAISe.h +++ b/include/JSystem/JAudio2/JAISe.h @@ -3,10 +3,13 @@ #include "JSystem/JAudio2/JAISeqDataMgr.h" #include "JSystem/JAudio2/JASTrack.h" -#include "JSystem/JSupport/JSUList.h" class JAISeMgr; +/** + * @ingroup jsystem-jaudio + * + */ class JAISe : public JSULink, public JAISound { public: class TInner { diff --git a/include/JSystem/JAudio2/JAISeMgr.h b/include/JSystem/JAudio2/JAISeMgr.h index f335f37b10..03e1d89527 100644 --- a/include/JSystem/JAudio2/JAISeMgr.h +++ b/include/JSystem/JAudio2/JAISeMgr.h @@ -2,28 +2,42 @@ #define JAISEMGR_H #include "JSystem/JAudio2/JAISe.h" -#include "JSystem/JAudio2/JASHeapCtrl.h" -#include "JSystem/JSupport/JSUList.h" #include "global.h" struct JAIAudience; struct JASSoundParams; +/** + * @ingroup jsystem-jaudio + * + */ struct JASNonCopyable { /* 0x0 */ int field_0x0; }; // Size: 0x4 +/** + * @ingroup jsystem-jaudio + * + */ struct JAISeCategoryArrangementItem { u8 mMaxActiveSe; u8 mMaxInactiveSe; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JAISeCategoryArrangement { JAISeCategoryArrangementItem mItems[16]; }; class JAISeMgr; +/** + * @ingroup jsystem-jaudio + * + */ class JAISeCategoryMgr : public JAISeqDataUser { public: /* 8029F9C4 */ void JAISeMgr_calc_(); @@ -59,6 +73,10 @@ public: /* 0x68 */ int mMaxActiveSe; }; // Size: 0x6C +/** + * @ingroup jsystem-jaudio + * + */ class JAISeMgr : public JASGlobalInstance, public JAISeqDataUser, public JAISoundActivity { diff --git a/include/JSystem/JAudio2/JAISeq.h b/include/JSystem/JAudio2/JAISeq.h index ca0a351fe9..469212b890 100644 --- a/include/JSystem/JAudio2/JAISeq.h +++ b/include/JSystem/JAudio2/JAISeq.h @@ -2,13 +2,16 @@ #define JAISEQ_H #include "JSystem/JAudio2/JAISeqDataMgr.h" -#include "JSystem/JAudio2/JASHeapCtrl.h" #include "JSystem/JAudio2/JASTrack.h" #include "JSystem/JSupport/JSUList.h" class JAISeqMgr; class JAISoundChild; +/** + * @ingroup jsystem-jaudio + * + */ class JAISeq : public JASPoolAllocObject, public JAISound, public JSULink { public: class TInner { diff --git a/include/JSystem/JAudio2/JAISeqDataMgr.h b/include/JSystem/JAudio2/JAISeqDataMgr.h index 0943933228..bc6e1de468 100644 --- a/include/JSystem/JAudio2/JAISeqDataMgr.h +++ b/include/JSystem/JAudio2/JAISeqDataMgr.h @@ -3,6 +3,10 @@ #include "JSystem/JAudio2/JAISound.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JAISeqData { JAISeqData(void* param_0, u32 param_1) { field_0x0 = param_0; @@ -18,6 +22,10 @@ struct JAISeqData { /* 0x04 */ u32 field_0x4; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JAISeqDataRegion { bool intersects(JAISeqData& seqData) const { if ((u32)addr + size < (u32)seqData.field_0x0) { @@ -33,13 +41,20 @@ struct JAISeqDataRegion { /* 0x04 */ u32 size; }; - +/** + * @ingroup jsystem-jaudio + * + */ struct JAISeqDataUser { virtual ~JAISeqDataUser(); virtual bool isUsingSeqData(JAISeqDataRegion const&) = 0; virtual int releaseSeqData(JAISeqDataRegion const&) = 0; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JAISeqDataMgr { enum SeqDataReturnValue{ SeqDataReturnValue_0 = 0, SeqDataReturnValue_1 = 1, SeqDataReturnValue_2 = 2}; virtual ~JAISeqDataMgr(); diff --git a/include/JSystem/JAudio2/JAISeqMgr.h b/include/JSystem/JAudio2/JAISeqMgr.h index 05018ba03a..81642eeef1 100644 --- a/include/JSystem/JAudio2/JAISeqMgr.h +++ b/include/JSystem/JAudio2/JAISeqMgr.h @@ -4,11 +4,14 @@ #include "JSystem/JAudio2/JAISeqDataMgr.h" #include "JSystem/JAudio2/JASGadget.h" #include "JSystem/JSupport/JSUList.h" -#include "JSystem/JUtility/JUTAssert.h" struct JAIAudience; class JAISeq; +/** + * @ingroup jsystem-jaudio + * + */ class JAISeqMgr : public JASGlobalInstance, public JAISeqDataUser { public: enum ReleaseSeqResult { diff --git a/include/JSystem/JAudio2/JAISound.h b/include/JSystem/JAudio2/JAISound.h index fd35e583de..c37f800515 100644 --- a/include/JSystem/JAudio2/JAISound.h +++ b/include/JSystem/JAudio2/JAISound.h @@ -5,6 +5,10 @@ #include "JSystem/JAudio2/JAIAudible.h" #include "global.h" +/** + * @ingroup jsystem-jaudio + * + */ class JAISoundID { public: operator u32() const { return this->mId.mFullId; } @@ -36,6 +40,10 @@ public: class JASTrack; +/** + * @ingroup jsystem-jaudio + * + */ struct JAISoundStatus_ { /* 802A2220 */ s32 lockWhenPrepared(); /* 802A2244 */ s32 unlockIfLocked(); @@ -99,6 +107,10 @@ struct JAISoundStatus_ { /* 0x4 */ u32 user_data; }; // Size: 0x8 +/** + * @ingroup jsystem-jaudio + * + */ struct JAISoundFader { void forceIn() { mIntensity = 1.0f; @@ -135,6 +147,11 @@ struct JAISoundFader { /* 0x00 */ f32 mIntensity; /* 0x04 */ JAISoundParamsTransition::TTransition mTransition; }; // Size: 0x10 + +/** + * @ingroup jsystem-jaudio + * + */ template struct JAISoundStrategyMgr__unknown { virtual void virtual2(); @@ -142,6 +159,10 @@ struct JAISoundStrategyMgr__unknown { virtual void virtual4(A0*, const JASSoundParams&); }; +/** + * @ingroup jsystem-jaudio + * + */ template struct JAISoundStrategyMgr { virtual void virtual2(); @@ -155,6 +176,10 @@ struct JAISoundStrategyMgr__template1 {}; /* JAISoundStrategyMgr */ struct JAISoundStrategyMgr__template2 {}; +/** + * @ingroup jsystem-jaudio + * + */ class JAISoundActivity { public: void init() { field_0x0.value = 0; } @@ -174,6 +199,10 @@ public: } field_0x0; }; +/** + * @ingroup jsystem-jaudio + * + */ class JAITempoMgr { public: /* 0x00 */ f32 mTempo; @@ -197,6 +226,11 @@ class JAISeq; class JAISoundChild; class JAIStream; class JAITempoMgr; + +/** + * @ingroup jsystem-jaudio + * + */ class JAISound { public: /* 802A21A0 */ void releaseHandle(); diff --git a/include/JSystem/JAudio2/JAISoundChild.h b/include/JSystem/JAudio2/JAISoundChild.h index ebc250efb3..d90e850867 100644 --- a/include/JSystem/JAudio2/JAISoundChild.h +++ b/include/JSystem/JAudio2/JAISoundChild.h @@ -5,6 +5,10 @@ struct JASTrack; +/** + * @ingroup jsystem-jaudio + * + */ struct JAISoundChild { /* 802A2AB0 */ void init(); /* 802A2B28 */ void mixOut(JASTrack*); diff --git a/include/JSystem/JAudio2/JAISoundHandles.h b/include/JSystem/JAudio2/JAISoundHandles.h index 4182a560a6..f1274ceb3d 100644 --- a/include/JSystem/JAudio2/JAISoundHandles.h +++ b/include/JSystem/JAudio2/JAISoundHandles.h @@ -7,6 +7,10 @@ class JAISound; class JAISoundID; +/** + * @ingroup jsystem-jaudio + * + */ class JAISoundHandle { public: JAISoundHandle() {sound_ = NULL;}; @@ -28,6 +32,10 @@ public: JAISound* sound_; // member from assert in operator->() }; +/** + * @ingroup jsystem-jaudio + * + */ class JAISoundHandles { public: JAISoundHandles(JAISoundHandle* pHandle, int param_1) { diff --git a/include/JSystem/JAudio2/JAISoundInfo.h b/include/JSystem/JAudio2/JAISoundInfo.h index 84b10883b1..dd74c06c3c 100644 --- a/include/JSystem/JAudio2/JAISoundInfo.h +++ b/include/JSystem/JAudio2/JAISoundInfo.h @@ -4,6 +4,10 @@ #include "JSystem/JAudio2/JAISound.h" #include "JSystem/JAudio2/JASGadget.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JAISoundInfo : public JASGlobalInstance { /* 802A2D34 */ JAISoundInfo(bool); virtual int getSoundType(JAISoundID) const = 0; diff --git a/include/JSystem/JAudio2/JAISoundParams.h b/include/JSystem/JAudio2/JAISoundParams.h index 7c0da397df..66daf59276 100644 --- a/include/JSystem/JAudio2/JAISoundParams.h +++ b/include/JSystem/JAudio2/JAISoundParams.h @@ -3,6 +3,10 @@ #include "JSystem/JAudio2/JASSoundParams.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JAISoundParamsProperty { void init() { field_0x0 = 1.0f; @@ -15,6 +19,10 @@ struct JAISoundParamsProperty { /* 0x08 */ f32 field_0x8; }; // Size: 0xC +/** + * @ingroup jsystem-jaudio + * + */ struct JAISoundParamsTransition { struct TTransition { void zero() { @@ -70,6 +78,10 @@ struct JAISoundParamsTransition { /* 0x30 */ TTransition mDolby; }; // Size: 0x3C +/** + * @ingroup jsystem-jaudio + * + */ struct JAISoundParamsMove { JAISoundParamsMove() : mParams() {} @@ -90,6 +102,10 @@ struct JAISoundParamsMove { /* 0x14 */ JAISoundParamsTransition mTransition; }; // Size: 0x50 +/** + * @ingroup jsystem-jaudio + * + */ struct JAISoundParams { JAISoundParams() : mMove() {} void mixOutAll(JASSoundParams const&, JASSoundParams*, f32); diff --git a/include/JSystem/JAudio2/JAISoundStarter.h b/include/JSystem/JAudio2/JAISoundStarter.h index 726812f065..fda197b260 100644 --- a/include/JSystem/JAudio2/JAISoundStarter.h +++ b/include/JSystem/JAudio2/JAISoundStarter.h @@ -4,6 +4,10 @@ #include "JSystem/JAudio2/JAISound.h" #include "JSystem/JAudio2/JASGadget.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JAISoundStarter : public JASGlobalInstance { /* 802A2F6C */ JAISoundStarter(bool); diff --git a/include/JSystem/JAudio2/JAIStream.h b/include/JSystem/JAudio2/JAIStream.h index 90b3a3e18e..4f7b37e627 100644 --- a/include/JSystem/JAudio2/JAIStream.h +++ b/include/JSystem/JAudio2/JAIStream.h @@ -3,11 +3,14 @@ #include "JSystem/JAudio2/JAISound.h" #include "JSystem/JAudio2/JASAramStream.h" -#include "JSystem/JAudio2/JASHeapCtrl.h" #include "JSystem/JSupport/JSUList.h" class JAIStreamMgr; +/** + * @ingroup jsystem-jaudio + * + */ class JAIStream : public JASPoolAllocObject, public JAISound, public JSULink { public: struct TInner { diff --git a/include/JSystem/JAudio2/JAIStreamDataMgr.h b/include/JSystem/JAudio2/JAIStreamDataMgr.h index 8616bc7be3..a0e5e2b172 100644 --- a/include/JSystem/JAudio2/JAIStreamDataMgr.h +++ b/include/JSystem/JAudio2/JAIStreamDataMgr.h @@ -3,11 +3,19 @@ #include "JSystem/JAudio2/JAISound.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JAIStreamDataMgr { virtual s32 getStreamFileEntry(JAISoundID) = 0; virtual ~JAIStreamDataMgr(); }; +/** + * @ingroup jsystem-jaudio + * + */ struct JAIStreamAramMgr { virtual void* newStreamAram(u32*) = 0; virtual void deleteStreamAram(u32) = 0; diff --git a/include/JSystem/JAudio2/JAIStreamMgr.h b/include/JSystem/JAudio2/JAIStreamMgr.h index 58dc24b494..107e59945f 100644 --- a/include/JSystem/JAudio2/JAIStreamMgr.h +++ b/include/JSystem/JAudio2/JAIStreamMgr.h @@ -1,15 +1,17 @@ #ifndef JAISTREAMMGR_H #define JAISTREAMMGR_H -#include "JSystem/JAudio2/JAISound.h" #include "JSystem/JAudio2/JASGadget.h" #include "JSystem/JAudio2/JAIStream.h" -#include "JSystem/JSupport/JSUList.h" #include "JSystem/JUtility/JUTAssert.h" class JAIStreamAramMgr; class JAIStreamDataMgr; +/** + * @ingroup jsystem-jaudio + * + */ class JAIStreamMgr : public JASGlobalInstance { public: /* 802A3B68 */ JAIStreamMgr(bool); diff --git a/include/JSystem/JAudio2/JASAramStream.h b/include/JSystem/JAudio2/JASAramStream.h index c297ea7802..5b9e0969d4 100644 --- a/include/JSystem/JAudio2/JASAramStream.h +++ b/include/JSystem/JAudio2/JASAramStream.h @@ -2,7 +2,6 @@ #define JASARAMSTREAM_H #include "JSystem/JAudio2/JASTaskThread.h" -#include "dolphin/os/OSMessage.h" #include "JSystem/JUtility/JUTAssert.h" #include "dolphin/dvd.h" @@ -14,6 +13,10 @@ namespace JASDsp { #define CHANNEL_MAX 6 +/** + * @ingroup jsystem-jaudio + * + */ class JASAramStream { public: typedef void (*StreamCallback)(u32, JASAramStream*, void*); diff --git a/include/JSystem/JAudio2/JASAudioReseter.h b/include/JSystem/JAudio2/JASAudioReseter.h index aa077e053c..2e4e66f87f 100644 --- a/include/JSystem/JAudio2/JASAudioReseter.h +++ b/include/JSystem/JAudio2/JASAudioReseter.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JASAudioReseter { /* 8029D0B4 */ JASAudioReseter(); /* 8029D0FC */ ~JASAudioReseter(); diff --git a/include/JSystem/JAudio2/JASAudioThread.h b/include/JSystem/JAudio2/JASAudioThread.h index 04dd028eb4..f244b70fe1 100644 --- a/include/JSystem/JAudio2/JASAudioThread.h +++ b/include/JSystem/JAudio2/JASAudioThread.h @@ -10,6 +10,10 @@ enum JASAudioMessage { AUDIOMSG_STOP = 2, }; +/** + * @ingroup jsystem-jaudio + * + */ struct JASAudioThread : public JKRThread, public JASGlobalInstance { /* 8029CCDC */ JASAudioThread(int, int, u32); /* 8029CD4C */ static void create(s32); diff --git a/include/JSystem/JAudio2/JASBank.h b/include/JSystem/JAudio2/JASBank.h index 90ba1ebcdc..b68f7103ec 100644 --- a/include/JSystem/JAudio2/JASBank.h +++ b/include/JSystem/JAudio2/JASBank.h @@ -11,6 +11,10 @@ namespace JASDsp { class TChannel; } +/** + * @ingroup jsystem-jaudio + * + */ class JASBank { public: JASBank() { mWaveBank = NULL; } diff --git a/include/JSystem/JAudio2/JASBankList.h b/include/JSystem/JAudio2/JASBankList.h index 7215dd67d1..0688e044e2 100644 --- a/include/JSystem/JAudio2/JASBankList.h +++ b/include/JSystem/JAudio2/JASBankList.h @@ -5,6 +5,10 @@ class JASBank; +/** + * @ingroup jsystem-jaudio + * + */ class JASBankList { public: virtual JASBank* getBank(u32 param_0) const = 0; diff --git a/include/JSystem/JAudio2/JASBankTable.h b/include/JSystem/JAudio2/JASBankTable.h index a0fce283d2..3ac16d7028 100644 --- a/include/JSystem/JAudio2/JASBankTable.h +++ b/include/JSystem/JAudio2/JASBankTable.h @@ -4,6 +4,10 @@ #include "JSystem/JAudio2/JASBankList.h" #include "JSystem/JAudio2/JASGadget.h" +/** + * @ingroup jsystem-jaudio + * + */ template class JASBankTable : public JASBankList { public: @@ -15,6 +19,10 @@ private: JASPtrArray mArray; }; +/** + * @ingroup jsystem-jaudio + * + */ class JASDefaultBankTable : public JASBankTable<256>, public JASGlobalInstance { public: JASDefaultBankTable() : JASGlobalInstance(true) {} diff --git a/include/JSystem/JAudio2/JASBasicInst.h b/include/JSystem/JAudio2/JASBasicInst.h index 977bb3de4d..cd1b0383a7 100644 --- a/include/JSystem/JAudio2/JASBasicInst.h +++ b/include/JSystem/JAudio2/JASBasicInst.h @@ -5,6 +5,11 @@ #include "JSystem/JAudio2/JASSoundParams.h" struct JKRHeap; + +/** + * @ingroup jsystem-jaudio + * + */ struct JASInstParam : public JASSoundParams { JASInstParam() { field_0x14 = NULL; @@ -23,12 +28,20 @@ struct JASInstParam : public JASSoundParams { u8 field_0x1e; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JASInst { virtual ~JASInst() {} virtual bool getParam(int, int, JASInstParam*) const = 0; virtual u32 getType() const = 0; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JASBasicInst : public JASInst { struct TKeymap { /* 80298250 */ ~TKeymap(); diff --git a/include/JSystem/JAudio2/JASBasicWaveBank.h b/include/JSystem/JAudio2/JASBasicWaveBank.h index 214119284f..68e722100a 100644 --- a/include/JSystem/JAudio2/JASBasicWaveBank.h +++ b/include/JSystem/JAudio2/JASBasicWaveBank.h @@ -3,8 +3,11 @@ #include "JSystem/JAudio2/JASWaveArcLoader.h" #include "JSystem/JAudio2/JASWaveInfo.h" -#include "dolphin/os/OSMutex.h" +/** + * @ingroup jsystem-jaudio + * + */ class JASWaveHandle { public: /* virtual */ ~JASWaveHandle() {}; @@ -14,6 +17,10 @@ public: void* vtable; }; +/** + * @ingroup jsystem-jaudio + * + */ class JASWaveBank { public: /* 80298B88 */ /* virtual */ ~JASWaveBank() {}; @@ -24,6 +31,10 @@ public: void* vtable; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JASBasicWaveBank : public JASWaveBank { struct TWaveHandle : public JASWaveHandle { /* 802985E4 */ ~TWaveHandle(); diff --git a/include/JSystem/JAudio2/JASCalc.h b/include/JSystem/JAudio2/JASCalc.h index ef2982f8c0..6f2b545c84 100644 --- a/include/JSystem/JAudio2/JASCalc.h +++ b/include/JSystem/JAudio2/JASCalc.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JASCalc { /* 8028F2E8 */ static void imixcopy(s16 const*, s16 const*, s16*, u32); /* 8028F318 */ static void bcopyfast(void const*, void*, u32); diff --git a/include/JSystem/JAudio2/JASCallback.h b/include/JSystem/JAudio2/JASCallback.h index 0b345f61f7..33bd5e7f5e 100644 --- a/include/JSystem/JAudio2/JASCallback.h +++ b/include/JSystem/JAudio2/JASCallback.h @@ -5,6 +5,10 @@ typedef long JASCallback(void*); +/** + * @ingroup jsystem-jaudio + * + */ struct JASCallbackMgr { struct TCallback { TCallback() diff --git a/include/JSystem/JAudio2/JASChannel.h b/include/JSystem/JAudio2/JASChannel.h index e9ef6d3e04..54e5201ab1 100644 --- a/include/JSystem/JAudio2/JASChannel.h +++ b/include/JSystem/JAudio2/JASChannel.h @@ -14,6 +14,10 @@ namespace JASDsp { struct TChannel; } +/** + * @ingroup jsystem-jaudio + * + */ class JASChannelParams { public: JASChannelParams() { @@ -41,6 +45,10 @@ public: /* 0x14 */ f32 mDolby; }; +/** + * @ingroup jsystem-jaudio + * + */ class JASChannel : public JASPoolAllocObject_MultiThreaded { public: typedef void (*Callback)(u32, JASChannel*, JASDsp::TChannel*, void*); diff --git a/include/JSystem/JAudio2/JASCmdStack.h b/include/JSystem/JAudio2/JASCmdStack.h index 5bf14b286d..f579e923e9 100644 --- a/include/JSystem/JAudio2/JASCmdStack.h +++ b/include/JSystem/JAudio2/JASCmdStack.h @@ -1,11 +1,14 @@ #ifndef JASCMDSTACK_H #define JASCMDSTACK_H -#include "dolphin/types.h" #include "JSystem/JSupport/JSUList.h" class JASTrack; +/** + * @ingroup jsystem-jaudio + * + */ struct JASPortArgs { JASTrack* _00; u32 _04; @@ -20,6 +23,10 @@ struct JASPortArgs { f32 _28; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JASPortCmd : JSULink { typedef void (*Command)(JASPortArgs*); diff --git a/include/JSystem/JAudio2/JASCriticalSection.h b/include/JSystem/JAudio2/JASCriticalSection.h index affd991f35..d737eb79a6 100644 --- a/include/JSystem/JAudio2/JASCriticalSection.h +++ b/include/JSystem/JAudio2/JASCriticalSection.h @@ -3,6 +3,10 @@ #include "dolphin/os/OSInterrupt.h" +/** + * @ingroup jsystem-jaudio + * + */ class JASCriticalSection { public: JASCriticalSection() { mInterruptState = OSDisableInterrupts(); }; diff --git a/include/JSystem/JAudio2/JASDSPChannel.h b/include/JSystem/JAudio2/JASDSPChannel.h index 16ab05e36c..155c25b947 100644 --- a/include/JSystem/JAudio2/JASDSPChannel.h +++ b/include/JSystem/JAudio2/JASDSPChannel.h @@ -3,6 +3,10 @@ #include "JSystem/JAudio2/JASDSPInterface.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JASDSPChannel { typedef s32 (*Callback)(u32, JASDsp::TChannel*, void*); diff --git a/include/JSystem/JAudio2/JASDrumSet.h b/include/JSystem/JAudio2/JASDrumSet.h index 6324d397b6..30e1259cf2 100644 --- a/include/JSystem/JAudio2/JASDrumSet.h +++ b/include/JSystem/JAudio2/JASDrumSet.h @@ -5,6 +5,10 @@ struct JKRHeap; +/** + * @ingroup jsystem-jaudio + * + */ struct JASDrumSet : public JASInst { struct TPerc { /* 802984C4 */ TPerc(); diff --git a/include/JSystem/JAudio2/JASDvdThread.h b/include/JSystem/JAudio2/JASDvdThread.h index 6710da05be..c76511ee58 100644 --- a/include/JSystem/JAudio2/JASDvdThread.h +++ b/include/JSystem/JAudio2/JASDvdThread.h @@ -5,6 +5,10 @@ class JASTaskThread; +/** + * @ingroup jsystem-jaudio + * + */ class JASDvd { public: /* 8028FEFC */ static JASTaskThread* getThreadPointer(); diff --git a/include/JSystem/JAudio2/JASGadget.h b/include/JSystem/JAudio2/JASGadget.h index 916ceeae89..5408daf19a 100644 --- a/include/JSystem/JAudio2/JASGadget.h +++ b/include/JSystem/JAudio2/JASGadget.h @@ -4,6 +4,10 @@ #include "JSystem/JUtility/JUTAssert.h" #include "string.h" +/** + * @ingroup jsystem-jaudio + * + */ template class JASGlobalInstance { public: @@ -29,6 +33,10 @@ public: static T* sInstance; }; +/** + * @ingroup jsystem-jaudio + * + */ template class JASPtrTable { public: @@ -59,6 +67,10 @@ private: /* 0x04 */ u32 mSize; }; +/** + * @ingroup jsystem-jaudio + * + */ template class JASPtrArray : public JASPtrTable { public: diff --git a/include/JSystem/JAudio2/JASHeapCtrl.h b/include/JSystem/JAudio2/JASHeapCtrl.h index f601cfb171..e38d630c8f 100644 --- a/include/JSystem/JAudio2/JASHeapCtrl.h +++ b/include/JSystem/JAudio2/JASHeapCtrl.h @@ -9,6 +9,10 @@ class JASDisposer; class JKRHeap; class JKRSolidHeap; +/** + * @ingroup jsystem-jaudio + * + */ class JASHeap { public: /* 80290140 */ JASHeap(JASDisposer* param_0 = NULL); @@ -33,6 +37,10 @@ public: /* 0x40 */ JASHeap* field_0x40; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JASGenericMemPool { /* 80290848 */ JASGenericMemPool(); /* 80290860 */ ~JASGenericMemPool(); @@ -77,6 +85,10 @@ namespace JASThreadingModel { }; }; +/** + * @ingroup jsystem-jaudio + * + */ template class JASMemPool : public JASGenericMemPool { public: @@ -85,6 +97,10 @@ public: void free(void* ptr, u32 n) { JASGenericMemPool::free(ptr, n); } }; +/** + * @ingroup jsystem-jaudio + * + */ template class JASMemChunkPool { struct MemoryChunk { @@ -207,6 +223,10 @@ namespace JASKernel { extern JASMemChunkPool<1024, JASThreadingModel::ObjectLevelLockable>* sCommandHeap; }; +/** + * @ingroup jsystem-jaudio + * + */ template class JASPoolAllocObject { public: @@ -233,6 +253,10 @@ private: } }; +/** + * @ingroup jsystem-jaudio + * + */ template class JASMemPool_MultiThreaded : public JASGenericMemPool { public: @@ -252,6 +276,10 @@ public: } }; +/** + * @ingroup jsystem-jaudio + * + */ template class JASPoolAllocObject_MultiThreaded { public: diff --git a/include/JSystem/JAudio2/JASLfo.h b/include/JSystem/JAudio2/JASLfo.h index 85e1835052..fc4c365be8 100644 --- a/include/JSystem/JAudio2/JASLfo.h +++ b/include/JSystem/JAudio2/JASLfo.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JASLfo { /* 8029BD14 */ JASLfo(); /* 8029BD44 */ f32 getValue() const; diff --git a/include/JSystem/JAudio2/JASMutex.h b/include/JSystem/JAudio2/JASMutex.h index c051e0ffb8..b8c21c35fa 100644 --- a/include/JSystem/JAudio2/JASMutex.h +++ b/include/JSystem/JAudio2/JASMutex.h @@ -3,6 +3,10 @@ #include "dolphin/os/OSMutex.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JASMutexLock { JASMutexLock(OSMutex* mutex) { mMutex = mutex; diff --git a/include/JSystem/JAudio2/JASOscillator.h b/include/JSystem/JAudio2/JASOscillator.h index 0da67d0790..ac7f58c3a5 100644 --- a/include/JSystem/JAudio2/JASOscillator.h +++ b/include/JSystem/JAudio2/JASOscillator.h @@ -3,7 +3,10 @@ #include "dolphin/types.h" - +/** + * @ingroup jsystem-jaudio + * + */ struct JASOscillator { struct Point { /* 0x0 */ s16 _0; diff --git a/include/JSystem/JAudio2/JASProbe.h b/include/JSystem/JAudio2/JASProbe.h index 22d1347d1a..26d43c20da 100644 --- a/include/JSystem/JAudio2/JASProbe.h +++ b/include/JSystem/JAudio2/JASProbe.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JASProbe { /* 80290EE4 */ static void start(s32, char const*); /* 80290D74 */ void start(char const*); diff --git a/include/JSystem/JAudio2/JASRegisterParam.h b/include/JSystem/JAudio2/JASRegisterParam.h index 8a5c466555..12379b4046 100644 --- a/include/JSystem/JAudio2/JASRegisterParam.h +++ b/include/JSystem/JAudio2/JASRegisterParam.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-jaudio + * + */ class JASRegisterParam { public: enum RegID { diff --git a/include/JSystem/JAudio2/JASReport.h b/include/JSystem/JAudio2/JASReport.h index 89eec89f92..1f20132ffb 100644 --- a/include/JSystem/JAudio2/JASReport.h +++ b/include/JSystem/JAudio2/JASReport.h @@ -1,7 +1,6 @@ #ifndef JASREPORT_H #define JASREPORT_H - void JASReport(const char* message, ...); #endif /* JASREPORT_H */ diff --git a/include/JSystem/JAudio2/JASSeqCtrl.h b/include/JSystem/JAudio2/JASSeqCtrl.h index 90ead911eb..f1f2dbc953 100644 --- a/include/JSystem/JAudio2/JASSeqCtrl.h +++ b/include/JSystem/JAudio2/JASSeqCtrl.h @@ -6,6 +6,10 @@ class JASTrack; class JASSeqParser; +/** + * @ingroup jsystem-jaudio + * + */ class JASSeqCtrl { public: enum IntrType { diff --git a/include/JSystem/JAudio2/JASSeqParser.h b/include/JSystem/JAudio2/JASSeqParser.h index 900ebe2261..1582997dba 100644 --- a/include/JSystem/JAudio2/JASSeqParser.h +++ b/include/JSystem/JAudio2/JASSeqParser.h @@ -5,6 +5,10 @@ class JASTrack; +/** + * @ingroup jsystem-jaudio + * + */ class JASSeqParser { public: enum BranchCondition {}; diff --git a/include/JSystem/JAudio2/JASSeqReader.h b/include/JSystem/JAudio2/JASSeqReader.h index 6745a63978..416e1e81f0 100644 --- a/include/JSystem/JAudio2/JASSeqReader.h +++ b/include/JSystem/JAudio2/JASSeqReader.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-jaudio + * + */ class JASSeqReader { public: /* 80296108 */ void init(); diff --git a/include/JSystem/JAudio2/JASSoundParams.h b/include/JSystem/JAudio2/JASSoundParams.h index b48dbaea32..d38f32baca 100644 --- a/include/JSystem/JAudio2/JASSoundParams.h +++ b/include/JSystem/JAudio2/JASSoundParams.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JASSoundParams { /* 8029E3B0 */ void clamp(); /* 8029E47C */ void combine(JASSoundParams const&, JASSoundParams const&); diff --git a/include/JSystem/JAudio2/JASTaskThread.h b/include/JSystem/JAudio2/JASTaskThread.h index 15eef47ce8..b3e338ee28 100644 --- a/include/JSystem/JAudio2/JASTaskThread.h +++ b/include/JSystem/JAudio2/JASTaskThread.h @@ -4,6 +4,10 @@ #include "JSystem/JKernel/JKRThread.h" #include "JSystem/JAudio2/JASHeapCtrl.h" +/** + * @ingroup jsystem-jaudio + * + */ class JASTaskThread : public JKRThread { private: struct JASThreadCallStack { diff --git a/include/JSystem/JAudio2/JASTrack.h b/include/JSystem/JAudio2/JASTrack.h index 1b47cc47bf..199f8a2172 100644 --- a/include/JSystem/JAudio2/JASTrack.h +++ b/include/JSystem/JAudio2/JASTrack.h @@ -3,9 +3,6 @@ #include "JSystem/JAudio2/JASBankTable.h" #include "JSystem/JAudio2/JASChannel.h" -#include "JSystem/JAudio2/JASGadget.h" -#include "JSystem/JAudio2/JASHeapCtrl.h" -#include "JSystem/JAudio2/JASOscillator.h" #include "JSystem/JAudio2/JASRegisterParam.h" #include "JSystem/JAudio2/JASSeqCtrl.h" #include "JSystem/JAudio2/JASTrackPort.h" @@ -19,6 +16,10 @@ namespace JASDsp { extern u32 FILTER_MODE_IIR; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JASTrack : public JASPoolAllocObject_MultiThreaded { enum Status { STATUS_FREE, diff --git a/include/JSystem/JAudio2/JASTrackPort.h b/include/JSystem/JAudio2/JASTrackPort.h index 6478838258..5b7dff7840 100644 --- a/include/JSystem/JAudio2/JASTrackPort.h +++ b/include/JSystem/JAudio2/JASTrackPort.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-jaudio + * + */ class JASTrackPort { public: /* 8029354C */ void init(); diff --git a/include/JSystem/JAudio2/JASVoiceBank.h b/include/JSystem/JAudio2/JASVoiceBank.h index 196ee9b148..c951d48f29 100644 --- a/include/JSystem/JAudio2/JASVoiceBank.h +++ b/include/JSystem/JAudio2/JASVoiceBank.h @@ -4,6 +4,10 @@ #include "JSystem/JAudio2/JASBank.h" #include "JSystem/JAudio2/JASOscillator.h" +/** + * @ingroup jsystem-jaudio + * + */ class JASVoiceBank : public JASBank { public: /* 80297F74 */ virtual bool getInstParam(int, int, int, JASInstParam*) const; diff --git a/include/JSystem/JAudio2/JASWSParser.h b/include/JSystem/JAudio2/JASWSParser.h index 8555857de9..ccd20c395b 100644 --- a/include/JSystem/JAudio2/JASWSParser.h +++ b/include/JSystem/JAudio2/JASWSParser.h @@ -2,13 +2,16 @@ #define JASWSPARSER_H #include "dolphin/types.h" -#include "JSystem/JSupport/JSupport.h" class JKRHeap; class JASWaveBank; class JASBasicWaveBank; class JASSimpleWaveBank; +/** + * @ingroup jsystem-jaudio + * + */ class JASWSParser { public: template diff --git a/include/JSystem/JAudio2/JASWaveArcLoader.h b/include/JSystem/JAudio2/JASWaveArcLoader.h index 26719245d5..26910d9c94 100644 --- a/include/JSystem/JAudio2/JASWaveArcLoader.h +++ b/include/JSystem/JAudio2/JASWaveArcLoader.h @@ -2,13 +2,16 @@ #define JASWAVEARCLOADER_H #include "JSystem/JAudio2/JASHeapCtrl.h" -#include "JSystem/JSupport/JSUList.h" #include "dol2asm.h" #include "dolphin/os/OSMutex.h" class JKRHeap; class JKRSolidHeap; +/** + * @ingroup jsystem-jaudio + * + */ struct JASDisposer { JASDisposer() {} /* 8029A7B8 */ virtual ~JASDisposer() {} @@ -16,6 +19,11 @@ struct JASDisposer { }; #define DIR_MAX 64 + +/** + * @ingroup jsystem-jaudio + * + */ struct JASWaveArcLoader { /* 8029A0A0 */ static JASHeap* getRootHeap(); /* 8029A0D0 */ static void setCurrentDir(char const*); @@ -25,6 +33,10 @@ struct JASWaveArcLoader { static JASHeap* sAramHeap; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JASWaveArc : JASDisposer { /* 8029A13C */ JASWaveArc(); /* 8029A258 */ bool loadSetup(u32); diff --git a/include/JSystem/JAudio2/JASWaveInfo.h b/include/JSystem/JAudio2/JASWaveInfo.h index 583e5905cd..4e6f225cb5 100644 --- a/include/JSystem/JAudio2/JASWaveInfo.h +++ b/include/JSystem/JAudio2/JASWaveInfo.h @@ -1,8 +1,10 @@ #ifndef JASWAVEINFO_H #define JASWAVEINFO_H -#include "dolphin/types.h" - +/** + * @ingroup jsystem-jaudio + * + */ struct JASWaveInfo { JASWaveInfo() { field_0x01 = 0x3c; diff --git a/include/JSystem/JAudio2/JAUAudibleParam.h b/include/JSystem/JAudio2/JAUAudibleParam.h index 7ff7e87425..83baf7c9b8 100644 --- a/include/JSystem/JAudio2/JAUAudibleParam.h +++ b/include/JSystem/JAudio2/JAUAudibleParam.h @@ -1,8 +1,10 @@ #ifndef JAUAUDIBLEPARAM_H #define JAUAUDIBLEPARAM_H -#include "dolphin/types.h" - +/** + * @ingroup jsystem-jaudio + * + */ struct JAUAudibleParam { f32 getDopplerPower() const { return (u32)((*(u8*)&field_0x0.raw >> 4) & 0xf) * (1.0f / 15.0f); diff --git a/include/JSystem/JAudio2/JAUAudioArcInterpreter.h b/include/JSystem/JAudio2/JAUAudioArcInterpreter.h index 928388b39c..86724662d0 100644 --- a/include/JSystem/JAudio2/JAUAudioArcInterpreter.h +++ b/include/JSystem/JAudio2/JAUAudioArcInterpreter.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-jaudio + * + */ class JAUAudioArcInterpreter { public: /* 802A4244 */ JAUAudioArcInterpreter(); diff --git a/include/JSystem/JAudio2/JAUAudioArcLoader.h b/include/JSystem/JAudio2/JAUAudioArcLoader.h index c81e726b32..fd5cc908ca 100644 --- a/include/JSystem/JAudio2/JAUAudioArcLoader.h +++ b/include/JSystem/JAudio2/JAUAudioArcLoader.h @@ -5,6 +5,10 @@ struct JAUSection; +/** + * @ingroup jsystem-jaudio + * + */ class JAUAudioArcLoader : public JAUAudioArcInterpreter { public: /* 802A4740 */ JAUAudioArcLoader(JAUSection*); diff --git a/include/JSystem/JAudio2/JAUAudioMgr.h b/include/JSystem/JAudio2/JAUAudioMgr.h index 37ee315a25..1a4bf5be5e 100644 --- a/include/JSystem/JAudio2/JAUAudioMgr.h +++ b/include/JSystem/JAudio2/JAUAudioMgr.h @@ -1,5 +1,4 @@ #ifndef JAUAUDIOMGR_H #define JAUAUDIOMGR_H - #endif /* JAUAUDIOMGR_H */ diff --git a/include/JSystem/JAudio2/JAUBankTable.h b/include/JSystem/JAudio2/JAUBankTable.h index 4400a2d0fb..2d9434210c 100644 --- a/include/JSystem/JAudio2/JAUBankTable.h +++ b/include/JSystem/JAudio2/JAUBankTable.h @@ -2,10 +2,14 @@ #define JAUBANKTABLE_H #include "JSystem/JAudio2/JASGadget.h" -#include "JSystem/JAudio2/JASBankList.h" #include "JSystem/JSupport/JSUList.h" class JASBank; + +/** + * @ingroup jsystem-jaudio + * + */ class JAUBankTable /* : public JASBankList */ { public: JAUBankTable(u32 param_0, JASBank** param_1, u32 param_2) : mBankPtrTable(param_1, param_2) { @@ -21,16 +25,29 @@ public: /* 0xC */ u32 field_0xc; }; +/** + * @ingroup jsystem-jaudio + * + */ class JAUBankTableLink : public JSULink, public JAUBankTable { public: JAUBankTableLink(u32 param_0, JASBank** param_1, u32 param_2) : JSULink(this), JAUBankTable(param_0, param_1, param_2) {} }; +/** + * @ingroup jsystem-jaudio + * + */ struct JAUBankTableDictionary : JSUList { /* 802A4A80 */ void appendBankTable(JSULink*); }; class JASWaveBank; + +/** + * @ingroup jsystem-jaudio + * + */ class JAUWaveBankTable : private JASPtrArray { public: JASWaveBank* getWaveBank(u32 index) { return get(index); } diff --git a/include/JSystem/JAudio2/JAUClusterSound.h b/include/JSystem/JAudio2/JAUClusterSound.h index a602c0c680..1b5bed4e4c 100644 --- a/include/JSystem/JAudio2/JAUClusterSound.h +++ b/include/JSystem/JAudio2/JAUClusterSound.h @@ -1,5 +1,4 @@ #ifndef JAUCLUSTERSOUND_H #define JAUCLUSTERSOUND_H - #endif /* JAUCLUSTERSOUND_H */ diff --git a/include/JSystem/JAudio2/JAUInitializer.h b/include/JSystem/JAudio2/JAUInitializer.h index bf00750a5b..7f5410527b 100644 --- a/include/JSystem/JAudio2/JAUInitializer.h +++ b/include/JSystem/JAudio2/JAUInitializer.h @@ -5,6 +5,10 @@ class JKRSolidHeap; +/** + * @ingroup jsystem-jaudio + * + */ class JAU_JASInitializer { public: /* 802A4AD0 */ JAU_JASInitializer(); @@ -25,6 +29,10 @@ public: /* 0x30 */ char* field_0x30; }; +/** + * @ingroup jsystem-jaudio + * + */ class JAU_JAIInitializer { public: /* 802A4D3C */ JAU_JAIInitializer(); diff --git a/include/JSystem/JAudio2/JAUSectionHeap.h b/include/JSystem/JAudio2/JAUSectionHeap.h index ad14fa5c20..aaf2c03082 100644 --- a/include/JSystem/JAudio2/JAUSectionHeap.h +++ b/include/JSystem/JAudio2/JAUSectionHeap.h @@ -1,8 +1,6 @@ #ifndef JAUSECTIONHEAP_H #define JAUSECTIONHEAP_H -#include "JSystem/JAudio2/JAISeqDataMgr.h" -#include "JSystem/JAudio2/JASGadget.h" #include "JSystem/JAudio2/JAUBankTable.h" #include "JSystem/JAudio2/JAUSeqDataBlockMgr.h" #include "JSystem/JKernel/JKRDisposer.h" @@ -21,6 +19,10 @@ class JAUSoundNameTable; class JKRArchive; class JKRSolidHeap; +/** + * @ingroup jsystem-jaudio + * + */ class JAUSection /* : public JKRDisposer, protected JSULink */ { public: struct TSectionData { @@ -75,6 +77,10 @@ public: /* 0x38 */ TSectionData data_; }; +/** + * @ingroup jsystem-jaudio + * + */ class JAUSectionHeap /* : public JAUSection, JASGlobalInstance, JAISeqDataMgr */ { public: struct TSectionHeapData { diff --git a/include/JSystem/JAudio2/JAUSeqCollection.h b/include/JSystem/JAudio2/JAUSeqCollection.h index 61afc9ad6b..080473abfb 100644 --- a/include/JSystem/JAudio2/JAUSeqCollection.h +++ b/include/JSystem/JAudio2/JAUSeqCollection.h @@ -6,6 +6,10 @@ class JAISeqData; class JAISeqDataRegion; +/** + * @ingroup jsystem-jaudio + * + */ struct JAUSeqCollectionData { s8 field_0x0; s8 field_0x1; @@ -14,6 +18,10 @@ struct JAUSeqCollectionData { u32 field_0x8; }; +/** + * @ingroup jsystem-jaudio + * + */ class JAUSeqCollection { public: /* 802A66A0 */ JAUSeqCollection(); @@ -29,6 +37,10 @@ public: /* 0x0C */ int field_0xc; }; +/** + * @ingroup jsystem-jaudio + * + */ class JAUSeqDataMgr_SeqCollection : public JAISeqDataMgr, public JAUSeqCollection { public: /* 802A677C */ JAUSeqDataMgr_SeqCollection(); diff --git a/include/JSystem/JAudio2/JAUSeqDataBlockMgr.h b/include/JSystem/JAudio2/JAUSeqDataBlockMgr.h index c3dca05ad9..9fa0f27917 100644 --- a/include/JSystem/JAudio2/JAUSeqDataBlockMgr.h +++ b/include/JSystem/JAudio2/JAUSeqDataBlockMgr.h @@ -1,7 +1,6 @@ #ifndef JAUSEQDATABLOCKMGR_H #define JAUSEQDATABLOCKMGR_H -#include "JSystem/JAudio2/JAISound.h" #include "JSystem/JAudio2/JAISeqDataMgr.h" #include "JSystem/JSupport/JSUList.h" @@ -9,6 +8,10 @@ class JAISeqData; class JAISeqDataUser; class JKRArchive; +/** + * @ingroup jsystem-jaudio + * + */ struct JAUSeqDataBlock { /* 802A68F4 */ JAUSeqDataBlock(); @@ -18,6 +21,10 @@ struct JAUSeqDataBlock { /* 0x1C */ int field_0x1c; }; +/** + * @ingroup jsystem-jaudio + * + */ class JAUSeqDataBlocks : public JSUList { public: /* 802A6928 */ u8* getSeqData(JAISoundID); @@ -27,6 +34,10 @@ public: /* 802A6A18 */ bool hasFailedBlock(JAISoundID); }; +/** + * @ingroup jsystem-jaudio + * + */ class JAUDynamicSeqDataBlocks { public: /* 802A6A58 */ JAUDynamicSeqDataBlocks(); diff --git a/include/JSystem/JAudio2/JAUSoundAnimator.h b/include/JSystem/JAudio2/JAUSoundAnimator.h index b6dc7204a6..b3c4d24515 100644 --- a/include/JSystem/JAudio2/JAUSoundAnimator.h +++ b/include/JSystem/JAudio2/JAUSoundAnimator.h @@ -2,10 +2,13 @@ #define JAUSOUNDANIMATOR_H #include "JSystem/JAudio2/JAISound.h" -#include "dolphin/types.h" class JAUSoundAnimation; +/** + * @ingroup jsystem-jaudio + * + */ class JAUSoundAnimationSound { public: bool playsOnlyForward() const { return (mFlags & 1) != 0; } @@ -73,6 +76,10 @@ public: /* 0x1B */ u8 unk_0x1b[5]; }; /* size 0x20 */ +/** + * @ingroup jsystem-jaudio + * + */ class JAUSoundAnimationControl { public: virtual ~JAUSoundAnimationControl() = 0; @@ -80,6 +87,10 @@ public: virtual u16 getNumSounds(const JAUSoundAnimation*) = 0; }; +/** + * @ingroup jsystem-jaudio + * + */ class JAUSoundAnimation { public: /* 802A6F70 */ int getStartSoundIndex(f32) const; diff --git a/include/JSystem/JAudio2/JAUSoundInfo.h b/include/JSystem/JAudio2/JAUSoundInfo.h index 9aa0e9d423..86fa88f913 100644 --- a/include/JSystem/JAudio2/JAUSoundInfo.h +++ b/include/JSystem/JAudio2/JAUSoundInfo.h @@ -1,10 +1,13 @@ #ifndef JAUSOUNDINFO_H #define JAUSOUNDINFO_H -#include "JSystem/JAudio2/JAISound.h" #include "JSystem/JAudio2/JASGadget.h" #include "JSystem/JAudio2/JAUAudibleParam.h" +/** + * @ingroup jsystem-jaudio + * + */ class JAUSoundInfo : public JASGlobalInstance { public: JAUSoundInfo(bool param_0) : JASGlobalInstance(param_0) {} diff --git a/include/JSystem/JAudio2/JAUSoundTable.h b/include/JSystem/JAudio2/JAUSoundTable.h index 67e0d72014..7b508b9756 100644 --- a/include/JSystem/JAudio2/JAUSoundTable.h +++ b/include/JSystem/JAudio2/JAUSoundTable.h @@ -4,6 +4,10 @@ #include "JSystem/JAudio2/JAISound.h" #include "JSystem/JAudio2/JASGadget.h" +/** + * @ingroup jsystem-jaudio + * + */ struct JAUSoundTableItem { u8 mPriority; u8 field_0x1; @@ -12,6 +16,10 @@ struct JAUSoundTableItem { f32 field_0x8; }; +/** + * @ingroup jsystem-jaudio + * + */ template struct JAUSoundTable_ { JAUSoundTable_() { @@ -71,11 +79,20 @@ struct JAUSoundTable_ { u32 field_0xc; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JAUSoundTableRoot { static inline u32 magicNumber() { return 0x5420; } u32 mSectionNumber; u32 mSectionOffsets[0]; }; + +/** + * @ingroup jsystem-jaudio + * + */ struct JAUSoundTableSection { int getGroupOffset(int index) const { if (index < 0) { @@ -91,6 +108,10 @@ struct JAUSoundTableSection { u32 mGroupOffsets[0]; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JAUSoundTableGroup { u8 getTypeID(int index) const { if (index < 0) { @@ -117,6 +138,10 @@ struct JAUSoundTableGroup { u8 mTypeIds[0]; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JAUSoundTable : public JASGlobalInstance { JAUSoundTable(bool param_0) : JASGlobalInstance(param_0) { } @@ -139,14 +164,31 @@ struct JAUSoundTable : public JASGlobalInstance { JAUSoundTable_ field_0x0; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JAUSoundNameTableRoot { static inline u32 magicNumber() { return 0x544e; } u32 mSectionNumber; u32 mSectionOffsets[0]; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JAUSoundNameTableSection {}; + +/** + * @ingroup jsystem-jaudio + * + */ struct JAUSoundNameTableGroup {}; +/** + * @ingroup jsystem-jaudio + * + */ struct JAUSoundNameTable : public JASGlobalInstance { JAUSoundNameTable(bool param_0) : JASGlobalInstance(param_0) { } diff --git a/include/JSystem/JAudio2/JAUStreamAramMgr.h b/include/JSystem/JAudio2/JAUStreamAramMgr.h index 4a23e2f6ff..b9bb6e58cf 100644 --- a/include/JSystem/JAudio2/JAUStreamAramMgr.h +++ b/include/JSystem/JAudio2/JAUStreamAramMgr.h @@ -1,12 +1,13 @@ #ifndef JAUSTREAMSTATICARAMMGR_H #define JAUSTREAMSTATICARAMMGR_H -#include "JSystem/JAudio2/JAIStreamDataMgr.h" -#include "JSystem/JAudio2/JASAramStream.h" -#include "JSystem/JAudio2/JASHeapCtrl.h" #include "JSystem/JUtility/JUTAssert.h" #include "bitset.h" +/** + * @ingroup jsystem-jaudio + * + */ template class JAUStreamAramMgrBase_ : public JAIStreamAramMgr { public: @@ -35,6 +36,10 @@ protected: JASHeap mHeaps[A0]; }; +/** + * @ingroup jsystem-jaudio + * + */ template class JAUStreamStaticAramMgr_ : public JAUStreamAramMgrBase_ { public: diff --git a/include/JSystem/JAudio2/JAUStreamFileTable.h b/include/JSystem/JAudio2/JAUStreamFileTable.h index 526a45b9f9..48c5ebf185 100644 --- a/include/JSystem/JAudio2/JAUStreamFileTable.h +++ b/include/JSystem/JAudio2/JAUStreamFileTable.h @@ -9,6 +9,10 @@ struct BinaryStreamFileTable { /* 0x8 */ int mFilePathOffsets[]; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JAUStreamFileTable { /* 802A7420 */ JAUStreamFileTable(); /* 802A742C */ void init(void const*); @@ -20,6 +24,10 @@ struct JAUStreamFileTable { /* 0x0 */ const BinaryStreamFileTable* mData; }; +/** + * @ingroup jsystem-jaudio + * + */ struct JAUStreamDataMgr_StreamFileTable : public JAIStreamDataMgr, JAUStreamFileTable { /* 802A74AC */ virtual s32 getStreamFileEntry(JAISoundID); /* 802A74E8 */ virtual ~JAUStreamDataMgr_StreamFileTable() {} diff --git a/include/JSystem/JFramework/JFWDisplay.h b/include/JSystem/JFramework/JFWDisplay.h index 753b043e74..17590f4269 100644 --- a/include/JSystem/JFramework/JFWDisplay.h +++ b/include/JSystem/JFramework/JFWDisplay.h @@ -6,7 +6,6 @@ #include "JSystem/JUtility/JUTFader.h" #include "JSystem/JUtility/JUTXfb.h" #include "dolphin/os/OSAlarm.h" -#include "dolphin/types.h" typedef struct _GXColor GXColor; typedef struct _GXRenderModeObj GXRenderModeObj; @@ -14,6 +13,10 @@ class JKRHeap; typedef void (*JFWDisplayUnkFunc)(void); +/** + * @ingroup jsystem-jframework + * + */ class JFWAlarm : public OSAlarm { public: JFWAlarm() : mLink(this) {} @@ -32,6 +35,10 @@ public: /* 0x2C */ JSULink mLink; }; +/** + * @ingroup jsystem-jframework + * + */ class JFWDisplay { public: enum EDrawDone { diff --git a/include/JSystem/JFramework/JFWSystem.h b/include/JSystem/JFramework/JFWSystem.h index e1b878f12a..7a3fa71c66 100644 --- a/include/JSystem/JFramework/JFWSystem.h +++ b/include/JSystem/JFramework/JFWSystem.h @@ -12,6 +12,10 @@ class JUTDbPrint; class JUTResFont; struct ResFONT; +/** + * @ingroup jsystem-jframework + * + */ struct JFWSystem { struct CSetUpParam { static s32 maxStdHeaps; diff --git a/include/JSystem/JGadget/std-vector.h b/include/JSystem/JGadget/std-vector.h index 0fb415c985..cb966d8cfa 100644 --- a/include/JSystem/JGadget/std-vector.h +++ b/include/JSystem/JGadget/std-vector.h @@ -1,5 +1,4 @@ #ifndef STD_VECTOR_H #define STD_VECTOR_H - #endif /* STD_VECTOR_H */ diff --git a/include/JSystem/JKernel/JKRAram.h b/include/JSystem/JKernel/JKRAram.h index 27368cdec0..ef935112ee 100644 --- a/include/JSystem/JKernel/JKRAram.h +++ b/include/JSystem/JKernel/JKRAram.h @@ -8,6 +8,11 @@ class JKRHeap; class JKRAMCommand; class JKRAramBlock; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRAram : public JKRThread { private: JKRAram(u32, u32, s32); diff --git a/include/JSystem/JKernel/JKRAramArchive.h b/include/JSystem/JKernel/JKRAramArchive.h index 392be1be51..8ff04ebaa7 100644 --- a/include/JSystem/JKernel/JKRAramArchive.h +++ b/include/JSystem/JKernel/JKRAramArchive.h @@ -2,11 +2,14 @@ #define JKRARAMARCHIVE_H #include "JSystem/JKernel/JKRArchive.h" -#include "dolphin/types.h" class JKRAramBlock; class JKRDvdFile; +/** + * @ingroup jsystem-jkernel + * + */ class JKRAramArchive : public JKRArchive { public: JKRAramArchive(s32, JKRArchive::EMountDirection); diff --git a/include/JSystem/JKernel/JKRAramBlock.h b/include/JSystem/JKernel/JKRAramBlock.h index 15058145b6..e3eea99167 100644 --- a/include/JSystem/JKernel/JKRAramBlock.h +++ b/include/JSystem/JKernel/JKRAramBlock.h @@ -4,6 +4,11 @@ #include "JSystem/JSupport/JSUList.h" class JKRAramHeap; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRAramBlock { public: JKRAramBlock(u32, u32, u32, u8, bool); diff --git a/include/JSystem/JKernel/JKRAramHeap.h b/include/JSystem/JKernel/JKRAramHeap.h index 6c27494b54..44f3b10d58 100644 --- a/include/JSystem/JKernel/JKRAramHeap.h +++ b/include/JSystem/JKernel/JKRAramHeap.h @@ -5,6 +5,10 @@ #include "JSystem/JKernel/JKRDisposer.h" #include "dolphin/os/OSMutex.h" +/** + * @ingroup jsystem-jkernel + * + */ class JKRAramHeap : public JKRDisposer { public: enum EAllocMode { diff --git a/include/JSystem/JKernel/JKRAramPiece.h b/include/JSystem/JKernel/JKRAramPiece.h index 8cf3213d4e..9c1d2d2fb4 100644 --- a/include/JSystem/JKernel/JKRAramPiece.h +++ b/include/JSystem/JKernel/JKRAramPiece.h @@ -8,6 +8,11 @@ class JKRAramBlock; class JKRDecompCommand; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRAMCommand { public: typedef void (*AsyncCallback)(u32); @@ -37,6 +42,10 @@ public: /* 0x94 */ void* field_0x94; }; +/** + * @ingroup jsystem-jkernel + * + */ class JKRAramPiece { public: static OSMutex mMutex; diff --git a/include/JSystem/JKernel/JKRAramStream.h b/include/JSystem/JKernel/JKRAramStream.h index 9d815b300d..a5eb0b468f 100644 --- a/include/JSystem/JKernel/JKRAramStream.h +++ b/include/JSystem/JKernel/JKRAramStream.h @@ -5,6 +5,10 @@ class JSUFileInputStream; +/** + * @ingroup jsystem-jkernel + * + */ class JKRAramStreamCommand { public: enum Type { @@ -35,6 +39,10 @@ public: /* 0x58 */ u32 field_0x58; }; +/** + * @ingroup jsystem-jkernel + * + */ class JKRAramStream : public JKRThread { private: JKRAramStream(s32); diff --git a/include/JSystem/JKernel/JKRArchive.h b/include/JSystem/JKernel/JKRArchive.h index aed8b707f9..a546c5d0b9 100644 --- a/include/JSystem/JKernel/JKRArchive.h +++ b/include/JSystem/JKernel/JKRArchive.h @@ -7,6 +7,10 @@ class JKRHeap; +/** + * @ingroup jsystem-jkernel + * + */ struct SArcHeader { /* 0x00 */ u32 signature; /* 0x04 */ u32 file_length; @@ -18,6 +22,10 @@ struct SArcHeader { /* 0x1C */ u32 field_0x1c; }; +/** + * @ingroup jsystem-jkernel + * + */ struct SArcDataInfo { /* 0x00 */ u32 num_nodes; /* 0x04 */ u32 node_offset; @@ -42,6 +50,10 @@ inline u16 read_big_endian_u16(void* ptr) { extern u32 sCurrentDirID__10JKRArchive; // JKRArchive::sCurrentDirID +/** + * @ingroup jsystem-jkernel + * + */ class JKRArchive : public JKRFileLoader { public: struct SDirEntry { diff --git a/include/JSystem/JKernel/JKRAssertHeap.h b/include/JSystem/JKernel/JKRAssertHeap.h index d0e8d876c7..13e84d0d1c 100644 --- a/include/JSystem/JKernel/JKRAssertHeap.h +++ b/include/JSystem/JKernel/JKRAssertHeap.h @@ -3,6 +3,10 @@ #include "JSystem/JKernel/JKRHeap.h" +/** + * @ingroup jsystem-jkernel + * + */ class JKRAssertHeap : public JKRHeap { protected: JKRAssertHeap(void*, u32, JKRHeap*, bool); diff --git a/include/JSystem/JKernel/JKRCompArchive.h b/include/JSystem/JKernel/JKRCompArchive.h index 11524afc0b..d5eb60448b 100644 --- a/include/JSystem/JKernel/JKRCompArchive.h +++ b/include/JSystem/JKernel/JKRCompArchive.h @@ -6,6 +6,10 @@ class JKRAramBlock; class JKRDvdFile; +/** + * @ingroup jsystem-jkernel + * + */ class JKRCompArchive : public JKRArchive { public: JKRCompArchive(s32, JKRArchive::EMountDirection); diff --git a/include/JSystem/JKernel/JKRDecomp.h b/include/JSystem/JKernel/JKRDecomp.h index 161a667e18..c397218591 100644 --- a/include/JSystem/JKernel/JKRDecomp.h +++ b/include/JSystem/JKernel/JKRDecomp.h @@ -5,6 +5,11 @@ #include "JSystem/JKernel/JKRThread.h" class JKRAMCommand; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRDecompCommand { public: typedef void (*AsyncCallback)(u32); @@ -30,6 +35,10 @@ public: #define JKRDECOMP_SYNC_BLOCKING 0 #define JKRDECOMP_SYNC_NON_BLOCKING 1 +/** + * @ingroup jsystem-jkernel + * + */ class JKRDecomp : public JKRThread { private: JKRDecomp(s32); diff --git a/include/JSystem/JKernel/JKRDisposer.h b/include/JSystem/JKernel/JKRDisposer.h index b8a844f79c..ff414d22ab 100644 --- a/include/JSystem/JKernel/JKRDisposer.h +++ b/include/JSystem/JKernel/JKRDisposer.h @@ -4,6 +4,11 @@ #include "JSystem/JSupport/JSUList.h" class JKRHeap; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRDisposer { public: JKRDisposer(); diff --git a/include/JSystem/JKernel/JKRDvdAramRipper.h b/include/JSystem/JKernel/JKRDvdAramRipper.h index 29e62f94eb..fe12c61c39 100644 --- a/include/JSystem/JKernel/JKRDvdAramRipper.h +++ b/include/JSystem/JKernel/JKRDvdAramRipper.h @@ -2,11 +2,14 @@ #define JKRDVDARAMRIPPER_H #include "JSystem/JKernel/JKRDvdRipper.h" -#include "dolphin/types.h" class JKRAramBlock; class JKRAramStreamCommand; +/** + * @ingroup jsystem-jkernel + * + */ class JKRADCommand { public: JKRADCommand(); @@ -33,6 +36,11 @@ public: }; class JKRDvdFile; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRDvdAramRipper { public: static JKRAramBlock* loadToAram(s32, u32, JKRExpandSwitch, u32, u32, u32*); diff --git a/include/JSystem/JKernel/JKRDvdArchive.h b/include/JSystem/JKernel/JKRDvdArchive.h index 83333ad96d..776998dbec 100644 --- a/include/JSystem/JKernel/JKRDvdArchive.h +++ b/include/JSystem/JKernel/JKRDvdArchive.h @@ -4,6 +4,11 @@ #include "JSystem/JKernel/JKRArchive.h" class JKRDvdFile; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRDvdArchive : public JKRArchive { public: JKRDvdArchive(s32, JKRArchive::EMountDirection); diff --git a/include/JSystem/JKernel/JKRDvdFile.h b/include/JSystem/JKernel/JKRDvdFile.h index 9281ac3267..8a4eafafbe 100644 --- a/include/JSystem/JKernel/JKRDvdFile.h +++ b/include/JSystem/JKernel/JKRDvdFile.h @@ -11,6 +11,11 @@ struct OSThread; class JKRADCommand; class JKRAramBlock; class JSUFileInputStream; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRDvdFile : public JKRFile { public: JKRDvdFile(); diff --git a/include/JSystem/JKernel/JKRDvdRipper.h b/include/JSystem/JKernel/JKRDvdRipper.h index 3e3d91b5d3..954c6fd097 100644 --- a/include/JSystem/JKernel/JKRDvdRipper.h +++ b/include/JSystem/JKernel/JKRDvdRipper.h @@ -15,6 +15,10 @@ struct SYaz0Header { u32 length; }; +/** + * @ingroup jsystem-jkernel + * + */ class JKRDMCommand { JKRDMCommand(); ~JKRDMCommand(); @@ -22,6 +26,11 @@ class JKRDMCommand { class JKRHeap; class JKRDvdFile; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRDvdRipper { public: static JSUList sDvdAsyncList; diff --git a/include/JSystem/JKernel/JKRExpHeap.h b/include/JSystem/JKernel/JKRExpHeap.h index cf90a526d0..5ef7b026f7 100644 --- a/include/JSystem/JKernel/JKRExpHeap.h +++ b/include/JSystem/JKernel/JKRExpHeap.h @@ -3,6 +3,10 @@ #include "JSystem/JKernel/JKRHeap.h" +/** + * @ingroup jsystem-jkernel + * + */ class JKRExpHeap : public JKRHeap { public: enum EAllocMode { diff --git a/include/JSystem/JKernel/JKRFile.h b/include/JSystem/JKernel/JKRFile.h index ed9d35a2c1..896ddb4976 100644 --- a/include/JSystem/JKernel/JKRFile.h +++ b/include/JSystem/JKernel/JKRFile.h @@ -3,6 +3,10 @@ #include "JSystem/JKernel/JKRDisposer.h" +/** + * @ingroup jsystem-jkernel + * + */ class JKRFile : public JKRDisposer { public: JKRFile() : mIsAvailable(false) {} diff --git a/include/JSystem/JKernel/JKRFileCache.h b/include/JSystem/JKernel/JKRFileCache.h index b4b9830bc9..9103340cd1 100644 --- a/include/JSystem/JKernel/JKRFileCache.h +++ b/include/JSystem/JKernel/JKRFileCache.h @@ -4,6 +4,11 @@ #include "JSystem/JKernel/JKRFileLoader.h" class JKRHeap; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRFileCache : public JKRFileLoader { public: class CCacheBlock { diff --git a/include/JSystem/JKernel/JKRFileFinder.h b/include/JSystem/JKernel/JKRFileFinder.h index 24a88e6d24..961b7eab48 100644 --- a/include/JSystem/JKernel/JKRFileFinder.h +++ b/include/JSystem/JKernel/JKRFileFinder.h @@ -3,6 +3,10 @@ #include "dolphin/dvd.h" +/** + * @ingroup jsystem-jkernel + * + */ class JKRFileFinder { public: JKRFileFinder() { @@ -30,6 +34,11 @@ protected: }; class JKRArchive; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRArcFinder : public JKRFileFinder { public: JKRArcFinder(JKRArchive*, s32, s32); diff --git a/include/JSystem/JKernel/JKRFileLoader.h b/include/JSystem/JKernel/JKRFileLoader.h index 9e05be16ab..a7a284b469 100644 --- a/include/JSystem/JKernel/JKRFileLoader.h +++ b/include/JSystem/JKernel/JKRFileLoader.h @@ -2,9 +2,13 @@ #define JKRFILELOADER_H #include "JSystem/JKernel/JKRDisposer.h" -#include "dolphin/types.h" class JKRFileFinder; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRFileLoader : public JKRDisposer { public: JKRFileLoader(void); diff --git a/include/JSystem/JKernel/JKRHeap.h b/include/JSystem/JKernel/JKRHeap.h index 3ea9ae2508..7764c5baf8 100644 --- a/include/JSystem/JKernel/JKRHeap.h +++ b/include/JSystem/JKernel/JKRHeap.h @@ -9,6 +9,10 @@ typedef void (*JKRErrorHandler)(void*, u32, int); extern bool data_804508B0; +/** + * @ingroup jsystem-jkernel + * + */ class JKRHeap : public JKRDisposer { public: class TState { diff --git a/include/JSystem/JKernel/JKRMemArchive.h b/include/JSystem/JKernel/JKRMemArchive.h index 24f0ec6c08..9878f73499 100644 --- a/include/JSystem/JKernel/JKRMemArchive.h +++ b/include/JSystem/JKernel/JKRMemArchive.h @@ -8,6 +8,10 @@ enum JKRMemBreakFlag { JKRMEMBREAK_FLAG_UNKNOWN1 = 1, }; +/** + * @ingroup jsystem-jkernel + * + */ class JKRMemArchive : public JKRArchive { public: JKRMemArchive(s32, JKRArchive::EMountDirection); diff --git a/include/JSystem/JKernel/JKRSolidHeap.h b/include/JSystem/JKernel/JKRSolidHeap.h index 7a72e6eb86..661148cd27 100644 --- a/include/JSystem/JKernel/JKRSolidHeap.h +++ b/include/JSystem/JKernel/JKRSolidHeap.h @@ -3,6 +3,10 @@ #include "JSystem/JKernel/JKRHeap.h" +/** + * @ingroup jsystem-jkernel + * + */ class JKRSolidHeap : public JKRHeap { public: struct Unknown { diff --git a/include/JSystem/JKernel/JKRThread.h b/include/JSystem/JKernel/JKRThread.h index 625da65447..d5d2136594 100644 --- a/include/JSystem/JKernel/JKRThread.h +++ b/include/JSystem/JKernel/JKRThread.h @@ -4,14 +4,22 @@ #include "JSystem/JKernel/JKRHeap.h" #include "dolphin/os/OSMessage.h" #include "dolphin/os/OSTime.h" -#include "dolphin/types.h" +/** + * @ingroup jsystem-jkernel + * + */ struct JKRThreadName_ { s32 id; char* name; }; class JUTConsole; + +/** + * @ingroup jsystem-jkernel + * + */ class JKRThread : JKRDisposer { public: class TLoad { @@ -130,6 +138,10 @@ public: typedef void (*JKRThreadSwitch_PreCallback)(OSThread* current, OSThread* next); typedef void (*JKRThreadSwitch_PostCallback)(OSThread* current, OSThread* next); +/** + * @ingroup jsystem-jkernel + * + */ class JKRThreadSwitch { public: JKRThreadSwitch(JKRHeap*); diff --git a/include/JSystem/JMath/JMATrigonometric.h b/include/JSystem/JMath/JMATrigonometric.h index 356b8acd60..5af842f631 100644 --- a/include/JSystem/JMath/JMATrigonometric.h +++ b/include/JSystem/JMath/JMATrigonometric.h @@ -7,11 +7,19 @@ template struct TAngleConstant_; +/** + * @ingroup jsystem-jmath + * + */ template<> struct TAngleConstant_ { static inline f32 RADIAN_DEG360() { return 6.2831855f; } }; +/** + * @ingroup jsystem-jmath + * + */ template struct TSinCosTable { std::pair table[1 << N]; @@ -48,11 +56,19 @@ struct TSinCosTable { } }; +/** + * @ingroup jsystem-jmath + * + */ struct TAtanTable { f32 table[1025]; u8 pad[0x1C]; }; +/** + * @ingroup jsystem-jmath + * + */ struct TAsinAcosTable { f32 table[1025]; u8 pad[0x1C]; diff --git a/include/JSystem/JMath/random.h b/include/JSystem/JMath/random.h index 84d3dfa64c..c6794aaaed 100644 --- a/include/JSystem/JMath/random.h +++ b/include/JSystem/JMath/random.h @@ -4,6 +4,11 @@ #include "dolphin/types.h" namespace JMath { + +/** + * @ingroup jsystem-jmath + * + */ struct TRandom_fast_ { u32 value; diff --git a/include/JSystem/JMessage/control.h b/include/JSystem/JMessage/control.h index 36fbebfc47..8bce73e824 100644 --- a/include/JSystem/JMessage/control.h +++ b/include/JSystem/JMessage/control.h @@ -2,9 +2,13 @@ #define JMESSAGE_CONTROL_H #include "JSystem/JMessage/processor.h" -#include "dolphin/types.h" namespace JMessage { + +/** + * @ingroup jsystem-jmessage + * + */ struct TControl { /* 802A7548 */ TControl(); /* 802A758C */ virtual ~TControl(); @@ -66,6 +70,10 @@ struct TControl { }; }; // namespace JMessage +/** + * @ingroup jsystem-jmessage + * + */ struct jmessage_tControl : public JMessage::TControl { /* 802299EC */ jmessage_tControl(); diff --git a/include/JSystem/JMessage/data.h b/include/JSystem/JMessage/data.h index ab1532b8ef..f14489c98e 100644 --- a/include/JSystem/JMessage/data.h +++ b/include/JSystem/JMessage/data.h @@ -4,6 +4,11 @@ #include "JSystem/JGadget/binary.h" namespace JMessage { + +/** + * @ingroup jsystem-jmessage + * + */ struct data { struct TParse_THeader : public JGadget::binary::TParseData_aligned<4> { TParse_THeader(const void* data) : TParseData_aligned(data) {} diff --git a/include/JSystem/JMessage/locale.h b/include/JSystem/JMessage/locale.h index 2a2cd07d8a..19a1227890 100644 --- a/include/JSystem/JMessage/locale.h +++ b/include/JSystem/JMessage/locale.h @@ -3,6 +3,11 @@ namespace JMessage { + +/** + * @ingroup jsystem-jmessage + * + */ struct locale { typedef int (*parseCharacter_function)(const char**); diff --git a/include/JSystem/JMessage/processor.h b/include/JSystem/JMessage/processor.h index 6cd21e08bc..b636820ba7 100644 --- a/include/JSystem/JMessage/processor.h +++ b/include/JSystem/JMessage/processor.h @@ -7,6 +7,10 @@ namespace JMessage { struct TResource; struct TResourceContainer; +/** + * @ingroup jsystem-jmessage + * + */ struct TReference { TReference() { pcResource_ = NULL; } @@ -30,6 +34,10 @@ struct TReference { /* 0x4 */ TResourceContainer* pcResource_; }; +/** + * @ingroup jsystem-jmessage + * + */ struct TProcessor { TProcessor(const TReference* reference) : pReference_(reference), pResourceCache_(NULL), pszCurrent_(NULL) {} @@ -221,6 +229,10 @@ struct TProcessor { struct TControl; +/** + * @ingroup jsystem-jmessage + * + */ struct TSequenceProcessor : public TProcessor { typedef const void* (*branchPfn)(const TSequenceProcessor*, u32); typedef const void* (*jumpPfn)(const TSequenceProcessor*); @@ -301,6 +313,10 @@ struct TSequenceProcessor : public TProcessor { /* 0x40 */ TProcess_ oProcess2_; }; +/** + * @ingroup jsystem-jmessage + * + */ struct TRenderingProcessor : public TProcessor { /* 802A8A84 */ TRenderingProcessor(JMessage::TReference const*); /* 802A8B20 */ int process(char const*); diff --git a/include/JSystem/JMessage/resource.h b/include/JSystem/JMessage/resource.h index 66c1e0d002..8ccf715e61 100644 --- a/include/JSystem/JMessage/resource.h +++ b/include/JSystem/JMessage/resource.h @@ -7,6 +7,11 @@ #include "JSystem/JStudio/JStudio/fvb-data.h" namespace JMessage { + +/** + * @ingroup jsystem-jmessage + * + */ struct TResource { TResource() : field_0x8(NULL), field_0xc(NULL), field_0x10(NULL), field_0x14(0), field_0x18(NULL) {} @@ -54,6 +59,10 @@ struct TResource { /* 0x18 */ data::TParse_TBlock_messageID field_0x18; }; +/** + * @ingroup jsystem-jmessage + * + */ struct TResource_color { TResource_color() : field_0x0(NULL), field_0x4(NULL) {} void reset() { @@ -65,6 +74,10 @@ struct TResource_color { /* 0x4 */ data::TParse_TBlock_color field_0x4; }; // Size: 0x8 +/** + * @ingroup jsystem-jmessage + * + */ struct TResourceContainer { struct TCResource : public JGadget::TLinkList_factory { /* 802A8EC0 */ TCResource(); @@ -106,6 +119,10 @@ struct TResourceContainer { /* 0x18 */ TResource_color resColor_; }; +/** + * @ingroup jsystem-jmessage + * + */ struct TParse : public JGadget::binary::TParse_header_block { /* 802A9130 */ TParse(JMessage::TResourceContainer*); diff --git a/include/JSystem/JParticle/JPABaseShape.h b/include/JSystem/JParticle/JPABaseShape.h index 99b81f417e..9f716cc287 100644 --- a/include/JSystem/JParticle/JPABaseShape.h +++ b/include/JSystem/JParticle/JPABaseShape.h @@ -1,12 +1,15 @@ #ifndef JPABASESHAPE_H #define JPABASESHAPE_H -#include "dolphin/gx/GXEnum.h" #include "dolphin/gx/GXStruct.h" class JPAEmitterWorkData; class JKRHeap; +/** + * @ingroup jsystem-jparticle + * + */ struct JPABaseShapeData { // Common header. /* 0x00 */ u8 mMagic[4]; @@ -36,6 +39,10 @@ struct JPABaseShapeData { /* 0x30 */ u8 mTexAnmRndmMask; }; +/** + * @ingroup jsystem-jparticle + * + */ struct JPABaseShape { public: /* 8027A6DC */ JPABaseShape(u8 const*, JKRHeap*); @@ -125,6 +132,10 @@ public: /* 0x10 */ GXColor* mpEnvClrAnmTbl; }; +/** + * @ingroup jsystem-jparticle + * + */ struct JPAClrAnmKeyData { /* 0x0 */ s16 index; /* 0x2 */ GXColor color; diff --git a/include/JSystem/JParticle/JPAChildShape.h b/include/JSystem/JParticle/JPAChildShape.h index 445ceb5cd1..65a71ac453 100644 --- a/include/JSystem/JParticle/JPAChildShape.h +++ b/include/JSystem/JParticle/JPAChildShape.h @@ -3,6 +3,10 @@ #include "dolphin/gx/GXStruct.h" +/** + * @ingroup jsystem-jparticle + * + */ struct JPAChildShapeData { // Common header. /* 0x00 */ u8 mMagic[4]; @@ -29,6 +33,10 @@ struct JPAChildShapeData { /* 0x46 */ s16 mRotSpeed; }; +/** + * @ingroup jsystem-jparticle + * + */ class JPAChildShape { public: /* 8027B038 */ JPAChildShape(u8 const*); diff --git a/include/JSystem/JParticle/JPADrawInfo.h b/include/JSystem/JParticle/JPADrawInfo.h index f241d73a27..8eb2d54afe 100644 --- a/include/JSystem/JParticle/JPADrawInfo.h +++ b/include/JSystem/JParticle/JPADrawInfo.h @@ -3,6 +3,10 @@ #include "dolphin/mtx.h" +/** + * @ingroup jsystem-jparticle + * + */ class JPADrawInfo { public: JPADrawInfo(Mtx param_0, f32 fovY, f32 aspect) { diff --git a/include/JSystem/JParticle/JPADynamicsBlock.h b/include/JSystem/JParticle/JPADynamicsBlock.h index c3fc89fb31..5ef85f5a94 100644 --- a/include/JSystem/JParticle/JPADynamicsBlock.h +++ b/include/JSystem/JParticle/JPADynamicsBlock.h @@ -7,6 +7,10 @@ class JPAEmitterWorkData; +/** + * @ingroup jsystem-jparticle + * + */ struct JPADynamicsBlockData { // Common header. /* 0x00 */ u8 mMagic[4]; @@ -50,6 +54,10 @@ enum { JPADynFlag_FollowEmtrChld = 0x10, }; +/** + * @ingroup jsystem-jparticle + * + */ class JPADynamicsBlock { public: /* 8027BB18 */ JPADynamicsBlock(u8 const*); diff --git a/include/JSystem/JParticle/JPAEmitter.h b/include/JSystem/JParticle/JPAEmitter.h index 46a062490e..dacd87acef 100644 --- a/include/JSystem/JParticle/JPAEmitter.h +++ b/include/JSystem/JParticle/JPAEmitter.h @@ -1,7 +1,6 @@ #ifndef JPAEMITTER_H #define JPAEMITTER_H -#include "dolphin/gx/GXEnum.h" #include "dolphin/gx/GXStruct.h" #include "JSystem/JParticle/JPAResource.h" #include "JSystem/JParticle/JPAList.h" @@ -15,6 +14,10 @@ class JPABaseEmitter; class JPAEmitterManager; class JPAParticleCallBack; +/** + * @ingroup jsystem-jparticle + * + */ struct JPAEmitterWorkData { /* 0x00 */ JPABaseEmitter* mpEmtr; /* 0x04 */ JPAResource* mpRes; @@ -58,6 +61,10 @@ struct JPAEmitterWorkData { /* 0x216 */ u8 mDrawCount; }; +/** + * @ingroup jsystem-jparticle + * + */ class JPAEmitterCallBack { public: /* 80050368 */ virtual void execute(JPABaseEmitter*); @@ -78,6 +85,10 @@ enum { JPAEmtrStts_Immortal = 0x40, }; +/** + * @ingroup jsystem-jparticle + * + */ class JPABaseEmitter { public: /* 8027E5EC */ ~JPABaseEmitter(); @@ -105,6 +116,13 @@ public: void setDirectionalSpeed(f32 i_speed) { mDirSpeed = i_speed; } void setEmitterCallBackPtr(JPAEmitterCallBack* ptr) { mpEmtrCallBack = ptr; } void setGlobalRTMatrix(const Mtx m) { JPASetRMtxTVecfromMtx(m, mGlobalRot, &mGlobalTrs); } + void setGlobalSRTMatrix(const Mtx m) { + JPASetRMtxSTVecfromMtx(m, mGlobalRot, &mGlobalScl, &mGlobalTrs); + + // set is actually used here in debug + mGlobalPScl.x = mGlobalScl.x; + mGlobalPScl.y = mGlobalScl.y; + } void setGlobalTranslation(f32 x, f32 y, f32 z) { mGlobalTrs.set(x, y, z); } void setGlobalTranslation(const JGeometry::TVec3& trs) { mGlobalTrs.set(trs); } void getLocalTranslation(JGeometry::TVec3& vec) { vec.set(mLocalTrs); } @@ -119,6 +137,9 @@ public: void setVolumeSize(u16 size) { mVolumeSize = size; } void setLifeTime(s16 lifetime) { mLifeTime = lifetime; } + void setGlobalParticleHeightScale(f32 height) { + mGlobalPScl.y = height; + } void setGlobalParticleScale(const JGeometry::TVec3& scale) { mGlobalPScl.set(scale.x, scale.y); } diff --git a/include/JSystem/JParticle/JPAEmitterManager.h b/include/JSystem/JParticle/JPAEmitterManager.h index c4b5a065f4..37ba924b7e 100644 --- a/include/JSystem/JParticle/JPAEmitterManager.h +++ b/include/JSystem/JParticle/JPAEmitterManager.h @@ -15,6 +15,10 @@ class JPABaseParticle; class JKRHeap; struct JPAEmitterWorkData; +/** + * @ingroup jsystem-jparticle + * + */ class JPAEmitterManager { public: /* 8027DCA0 */ JPAEmitterManager(u32, u32, JKRHeap*, u8, u8); diff --git a/include/JSystem/JParticle/JPAExTexShape.h b/include/JSystem/JParticle/JPAExTexShape.h index 28b3a43276..0ec6471d1e 100644 --- a/include/JSystem/JParticle/JPAExTexShape.h +++ b/include/JSystem/JParticle/JPAExTexShape.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-jparticle + * + */ struct JPAExTexShapeData { // Common header. /* 0x00 */ u8 mMagic[4]; @@ -15,6 +19,10 @@ struct JPAExTexShapeData { /* 0x26 */ s8 mSecTexIdx; }; +/** + * @ingroup jsystem-jparticle + * + */ class JPAExTexShape { public: /* 8027B13C */ JPAExTexShape(u8 const*); diff --git a/include/JSystem/JParticle/JPAExtraShape.h b/include/JSystem/JParticle/JPAExtraShape.h index 0df0e57436..5a231348d9 100644 --- a/include/JSystem/JParticle/JPAExtraShape.h +++ b/include/JSystem/JParticle/JPAExtraShape.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-jparticle + * + */ struct JPAExtraShapeData { // Common header. /* 0x00 */ u8 mMagic[4]; @@ -33,6 +37,10 @@ struct JPAExtraShapeData { /* 0x5C */ f32 mRotateDirection; }; +/** + * @ingroup jsystem-jparticle + * + */ class JPAExtraShape { public: /* 8027AD88 */ JPAExtraShape(u8 const*); diff --git a/include/JSystem/JParticle/JPAKeyBlock.h b/include/JSystem/JParticle/JPAKeyBlock.h index 2f29e74acf..3c457a110e 100644 --- a/include/JSystem/JParticle/JPAKeyBlock.h +++ b/include/JSystem/JParticle/JPAKeyBlock.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** + * @ingroup jsystem-jparticle + * + */ struct JPAKeyBlock { /* 8027D730 */ JPAKeyBlock(u8 const*); /* 8027D740 */ void calc(f32); diff --git a/include/JSystem/JParticle/JPAList.h b/include/JSystem/JParticle/JPAList.h index 816cda16c2..2a1fe7ece5 100644 --- a/include/JSystem/JParticle/JPAList.h +++ b/include/JSystem/JParticle/JPAList.h @@ -1,7 +1,10 @@ #ifndef JPALIST_H #define JPALIST_H - +/** + * @ingroup jsystem-jparticle + * + */ template struct JPANode { JPANode() { @@ -17,6 +20,10 @@ struct JPANode { T mData; }; +/** + * @ingroup jsystem-jparticle + * + */ template struct JPAList { JPANode* mpFirst; diff --git a/include/JSystem/JParticle/JPAParticle.h b/include/JSystem/JParticle/JPAParticle.h index b36eb04fc1..ebedcc6549 100644 --- a/include/JSystem/JParticle/JPAParticle.h +++ b/include/JSystem/JParticle/JPAParticle.h @@ -2,7 +2,6 @@ #define JPAPARTICLE_H #include "dolphin/gx/GXStruct.h" -#include "dolphin/types.h" #include "JSystem/JGeometry.h" @@ -17,6 +16,10 @@ class JPAParticleCallBack; class JPAResourceManager; struct JPAEmitterWorkData; +/** + * @ingroup jsystem-jparticle + * + */ class JPABaseParticle { public: /* 8027EFEC */ void init_p(JPAEmitterWorkData*); @@ -70,6 +73,10 @@ public: /* 0x96 */ u8 mPrmColorAlphaAnm; }; +/** + * @ingroup jsystem-jparticle + * + */ class JPAParticleCallBack { public: JPAParticleCallBack() {} diff --git a/include/JSystem/JParticle/JPARandom.h b/include/JSystem/JParticle/JPARandom.h index a88799ca74..b76c46d7b5 100644 --- a/include/JSystem/JParticle/JPARandom.h +++ b/include/JSystem/JParticle/JPARandom.h @@ -1,7 +1,10 @@ #ifndef JPARANDOM_H #define JPARANDOM_H - +/** + * @ingroup jsystem-jparticle + * + */ struct JPARandom { public: JPARandom() { mSeed = 0; } diff --git a/include/JSystem/JParticle/JPAResource.h b/include/JSystem/JParticle/JPAResource.h index 5b3e891bc3..a041daf302 100644 --- a/include/JSystem/JParticle/JPAResource.h +++ b/include/JSystem/JParticle/JPAResource.h @@ -16,6 +16,10 @@ class JPADynamicsBlock; class JPAFieldBlock; class JPAKeyBlock; +/** + * @ingroup jsystem-jparticle + * + */ class JPAResource { public: /* 80274010 */ JPAResource(); diff --git a/include/JSystem/JParticle/JPAResourceLoader.h b/include/JSystem/JParticle/JPAResourceLoader.h index 5f6c443819..47be34de18 100644 --- a/include/JSystem/JParticle/JPAResourceLoader.h +++ b/include/JSystem/JParticle/JPAResourceLoader.h @@ -1,5 +1,4 @@ #ifndef JPARESOURCELOADER_H #define JPARESOURCELOADER_H - #endif /* JPARESOURCELOADER_H */ diff --git a/include/JSystem/JParticle/JPAResourceManager.h b/include/JSystem/JParticle/JPAResourceManager.h index b204c732ba..2820c81091 100644 --- a/include/JSystem/JParticle/JPAResourceManager.h +++ b/include/JSystem/JParticle/JPAResourceManager.h @@ -2,12 +2,15 @@ #define JPARESOURCEMANAGER_H #include "JSystem/JParticle/JPATexture.h" -#include "dolphin/types.h" class JKRHeap; class JPAResource; struct ResTIMG; +/** + * @ingroup jsystem-jparticle + * + */ class JPAResourceManager { public: /* 80273E10 */ JPAResourceManager(void const*, JKRHeap*); diff --git a/include/JSystem/JParticle/JPATexture.h b/include/JSystem/JParticle/JPATexture.h index dcb2c2ebaa..19b3bed715 100644 --- a/include/JSystem/JParticle/JPATexture.h +++ b/include/JSystem/JParticle/JPATexture.h @@ -2,8 +2,11 @@ #define JPATEXTURE_H #include "JSystem/JUtility/JUTTexture.h" -#include "dolphin/types.h" +/** + * @ingroup jsystem-jparticle + * + */ struct JPATextureData { // Probably magic / size / flags up top here, but they're unused. /* 0x00 */ char field_0x00[0x0C]; @@ -11,6 +14,10 @@ struct JPATextureData { /* 0x20 */ ResTIMG mResTIMG; }; +/** + * @ingroup jsystem-jparticle + * + */ class JPATexture { public: JPATexture(u8 const*); diff --git a/include/JSystem/JStage/JSGActor.h b/include/JSystem/JStage/JSGActor.h index 47ea0b2ba7..4deeae1c66 100644 --- a/include/JSystem/JStage/JSGActor.h +++ b/include/JSystem/JStage/JSGActor.h @@ -4,6 +4,11 @@ #include "JSystem/JStage/JSGObject.h" namespace JStage { + + /** + * @ingroup jsystem-jstage + * + */ struct TActor : public TObject { /* 80280A48 */ virtual ~TActor() = 0; /* 80280AA8 */ virtual s32 JSGFGetType() const; diff --git a/include/JSystem/JStage/JSGAmbientLight.h b/include/JSystem/JStage/JSGAmbientLight.h index 144d5af9c2..1a764b5de3 100644 --- a/include/JSystem/JStage/JSGAmbientLight.h +++ b/include/JSystem/JStage/JSGAmbientLight.h @@ -5,6 +5,11 @@ #include "dolphin/gx/GXStruct.h" namespace JStage { + + /** + * @ingroup jsystem-jstage + * + */ struct TAmbientLight : public TObject { /* 80280B20 */ virtual ~TAmbientLight() = 0; /* 80280B80 */ virtual s32 JSGFGetType() const; diff --git a/include/JSystem/JStage/JSGCamera.h b/include/JSystem/JStage/JSGCamera.h index bc8d6880b5..aee5f3e969 100644 --- a/include/JSystem/JStage/JSGCamera.h +++ b/include/JSystem/JStage/JSGCamera.h @@ -4,10 +4,23 @@ #include "JSystem/JStage/JSGObject.h" namespace JStage { + + /** + * @ingroup jsystem-jstage + * + */ struct TECameraProjection {}; + /** + * @ingroup jsystem-jstage + * + */ struct TECameraView {}; + /** + * @ingroup jsystem-jstage + * + */ struct TCamera : public TObject { /* 80280BA0 */ virtual ~TCamera() = 0; /* 80280C00 */ virtual s32 JSGFGetType() const; diff --git a/include/JSystem/JStage/JSGFog.h b/include/JSystem/JStage/JSGFog.h index d5551cac1e..d2602993cb 100644 --- a/include/JSystem/JStage/JSGFog.h +++ b/include/JSystem/JStage/JSGFog.h @@ -2,10 +2,14 @@ #define JSGFOG_H #include "JSystem/JStage/JSGObject.h" -#include "dolphin/gx/GXEnum.h" #include "dolphin/gx/GXStruct.h" namespace JStage { + + /** + * @ingroup jsystem-jstage + * + */ struct TFog : public TObject { /* 80280C80 */ virtual ~TFog() = 0; /* 80280CE0 */ virtual s32 JSGFGetType() const; diff --git a/include/JSystem/JStage/JSGLight.h b/include/JSystem/JStage/JSGLight.h index df60d405f0..b358c70d66 100644 --- a/include/JSystem/JStage/JSGLight.h +++ b/include/JSystem/JStage/JSGLight.h @@ -2,12 +2,15 @@ #define JSGLIGHT_H #include "JSystem/JStage/JSGObject.h" -#include "dolphin/gx/GXEnum.h" #include "dolphin/gx/GXStruct.h" namespace JStage { enum TELight {}; + /** + * @ingroup jsystem-jstage + * + */ struct TLight : public TObject { /* 80280D28 */ virtual ~TLight() = 0; /* 80280D88 */ virtual s32 JSGFGetType() const; diff --git a/include/JSystem/JStage/JSGObject.h b/include/JSystem/JStage/JSGObject.h index 742406b8b0..d7d1f7584a 100644 --- a/include/JSystem/JStage/JSGObject.h +++ b/include/JSystem/JStage/JSGObject.h @@ -4,6 +4,11 @@ #include "dolphin/mtx.h" namespace JStage { + + /** + * @ingroup jsystem-jstage + * + */ struct TObject { /* 80280DD4 */ virtual ~TObject() = 0; virtual s32 JSGFGetType() const = 0; diff --git a/include/JSystem/JStage/JSGSystem.h b/include/JSystem/JStage/JSGSystem.h index 0dc426b56b..9728b126ef 100644 --- a/include/JSystem/JStage/JSGSystem.h +++ b/include/JSystem/JStage/JSGSystem.h @@ -14,6 +14,10 @@ namespace JStage { /* 0x6 */ TOBJ_FOG, }; + /** + * @ingroup jsystem-jstage + * + */ struct TSystem : public TObject { /* 80280E90 */ virtual ~TSystem() = 0; /* 80280EF0 */ virtual s32 JSGFGetType() const; diff --git a/include/JSystem/JStudio/JStudio/ctb-data.h b/include/JSystem/JStudio/JStudio/ctb-data.h index 8e5696408d..ecdf1767b1 100644 --- a/include/JSystem/JStudio/JStudio/ctb-data.h +++ b/include/JSystem/JStudio/JStudio/ctb-data.h @@ -1,5 +1,4 @@ #ifndef CTB_DATA_H #define CTB_DATA_H - #endif /* CTB_DATA_H */ diff --git a/include/JSystem/JStudio/JStudio/functionvalue.h b/include/JSystem/JStudio/JStudio/functionvalue.h index cc03e765d6..9dd8d9abd0 100644 --- a/include/JSystem/JStudio/JStudio/functionvalue.h +++ b/include/JSystem/JStudio/JStudio/functionvalue.h @@ -3,7 +3,6 @@ #include "JSystem/JGadget/search.h" #include "JSystem/JGadget/vector.h" -#include "dolphin/os.h" #include "global.h" namespace JStudio { diff --git a/include/JSystem/JStudio/JStudio/jstudio-control.h b/include/JSystem/JStudio/JStudio/jstudio-control.h index 16051b0dcc..0b98b548a7 100644 --- a/include/JSystem/JStudio/JStudio/jstudio-control.h +++ b/include/JSystem/JStudio/JStudio/jstudio-control.h @@ -5,7 +5,6 @@ #include "JSystem/JStudio/JStudio/stb.h" #include "JSystem/JStudio/JStudio/ctb.h" #include "dolphin/gx.h" -#include "dolphin/mtx/vec.h" namespace JStudio { struct TObject; diff --git a/include/JSystem/JStudio/JStudio/jstudio-object.h b/include/JSystem/JStudio/JStudio/jstudio-object.h index 1b8c3a88d9..c4929f48ef 100644 --- a/include/JSystem/JStudio/JStudio/jstudio-object.h +++ b/include/JSystem/JStudio/JStudio/jstudio-object.h @@ -1,7 +1,6 @@ #ifndef JSTUDIO_OBJECT_H #define JSTUDIO_OBJECT_H -#include "JSystem/JStudio/JStudio/ctb.h" #include "JSystem/JStudio/JStudio/jstudio-control.h" #include "limits.h" diff --git a/include/JSystem/JSupport/JSUFileStream.h b/include/JSystem/JSupport/JSUFileStream.h index 5fd0fbc16d..e19a516df4 100644 --- a/include/JSystem/JSupport/JSUFileStream.h +++ b/include/JSystem/JSupport/JSUFileStream.h @@ -5,6 +5,10 @@ class JKRFile; +/** +* @ingroup jsystem-jsupport +* +*/ class JSUFileInputStream : public JSURandomInputStream { public: virtual ~JSUFileInputStream() {} diff --git a/include/JSystem/JSupport/JSUInputStream.h b/include/JSystem/JSupport/JSUInputStream.h index d0aa9ce5cf..cbae2e37c3 100644 --- a/include/JSystem/JSupport/JSUInputStream.h +++ b/include/JSystem/JSupport/JSUInputStream.h @@ -9,6 +9,10 @@ enum JSUStreamSeekFrom { JSUStreamSeekFrom_END = 2, // relative to end }; +/** +* @ingroup jsystem-jsupport +* +*/ class JSUInputStream : public JSUIosBase { public: JSUInputStream() {} @@ -71,6 +75,10 @@ public: }; // Size = 0x8 // move? +/** +* @ingroup jsystem-jsupport +* +*/ template T* JSUConvertOffsetToPtr(const void*, const void*); diff --git a/include/JSystem/JSupport/JSUIosBase.h b/include/JSystem/JSupport/JSUIosBase.h index c44a81e2f0..761c1d61df 100644 --- a/include/JSystem/JSupport/JSUIosBase.h +++ b/include/JSystem/JSupport/JSUIosBase.h @@ -7,6 +7,10 @@ enum EIoState { IOS_STATE_1 = 1, }; +/** +* @ingroup jsystem-jsupport +* +*/ class JSUIosBase { public: JSUIosBase() { mState = false; } diff --git a/include/JSystem/JSupport/JSUList.h b/include/JSystem/JSupport/JSUList.h index 2c045ef089..25a9dea789 100644 --- a/include/JSystem/JSupport/JSUList.h +++ b/include/JSystem/JSupport/JSUList.h @@ -11,6 +11,11 @@ class JSUList; // class JSUPtrList; + +/** +* @ingroup jsystem-jsupport +* +*/ class JSUPtrLink { public: JSUPtrLink(void* object); @@ -31,6 +36,10 @@ public: JSUPtrLink* mNext; }; +/** +* @ingroup jsystem-jsupport +* +*/ template class JSULink : public JSUPtrLink { public: @@ -49,6 +58,10 @@ public: // List // +/** +* @ingroup jsystem-jsupport +* +*/ class JSUPtrList { public: JSUPtrList() { this->initiate(); } @@ -75,6 +88,10 @@ private: u32 mLength; }; +/** +* @ingroup jsystem-jsupport +* +*/ template class JSUList : public JSUPtrList { public: @@ -104,6 +121,10 @@ public: u32 getNumLinks() const { return this->JSUPtrList::getNumLinks(); } }; +/** +* @ingroup jsystem-jsupport +* +*/ template class JSUListIterator { public: @@ -157,6 +178,10 @@ public: // Tree // +/** +* @ingroup jsystem-jsupport +* +*/ template class JSUTree : public JSUList, public JSULink { public: @@ -186,6 +211,10 @@ public: JSUTree* getParent() const { return (JSUTree*)this->getList(); } }; +/** +* @ingroup jsystem-jsupport +* +*/ template class JSUTreeIterator { public: diff --git a/include/JSystem/JSupport/JSUMemoryStream.h b/include/JSystem/JSupport/JSUMemoryStream.h index fe1eb57b4f..0ef4703555 100644 --- a/include/JSystem/JSupport/JSUMemoryStream.h +++ b/include/JSystem/JSupport/JSUMemoryStream.h @@ -3,6 +3,10 @@ #include "JSystem/JSupport/JSURandomInputStream.h" +/** +* @ingroup jsystem-jsupport +* +*/ class JSUMemoryInputStream : public JSURandomInputStream { public: JSUMemoryInputStream(const void* res, u32 size) { setBuffer(res, size); } diff --git a/include/JSystem/JSupport/JSURandomInputStream.h b/include/JSystem/JSupport/JSURandomInputStream.h index 4541db53d8..efa4dc123b 100644 --- a/include/JSystem/JSupport/JSURandomInputStream.h +++ b/include/JSystem/JSupport/JSURandomInputStream.h @@ -3,6 +3,10 @@ #include "JSystem/JSupport/JSUInputStream.h" +/** +* @ingroup jsystem-jsupport +* +*/ class JSURandomInputStream : public JSUInputStream { public: JSURandomInputStream() {} diff --git a/include/JSystem/JSupport/JSupport.h b/include/JSystem/JSupport/JSupport.h index d93962dbda..68259f0e24 100644 --- a/include/JSystem/JSupport/JSupport.h +++ b/include/JSystem/JSupport/JSupport.h @@ -1,6 +1,10 @@ #ifndef JSUPPORT_H #define JSUPPORT_H +/** +* @ingroup jsystem-jsupport +* +*/ template T* JSUConvertOffsetToPtr(const void* ptr, u32 offset) { if (offset == 0) { @@ -10,6 +14,10 @@ T* JSUConvertOffsetToPtr(const void* ptr, u32 offset) { } } +/** +* @ingroup jsystem-jsupport +* +*/ template T* JSUConvertOffsetToPtr(const void* ptr, const void* offset) { if (offset == NULL) { diff --git a/include/JSystem/JUtility/JUTAssert.h b/include/JSystem/JUtility/JUTAssert.h index ece097add4..bf72ca2eff 100644 --- a/include/JSystem/JUtility/JUTAssert.h +++ b/include/JSystem/JUtility/JUTAssert.h @@ -1,7 +1,6 @@ #ifndef JUTASSERT_H #define JUTASSERT_H -#include "dolphin/types.h" #include "dolphin/os.h" #ifdef DEBUG diff --git a/include/JSystem/JUtility/JUTCacheFont.h b/include/JSystem/JUtility/JUTCacheFont.h index feb348382a..7685f8460f 100644 --- a/include/JSystem/JUtility/JUTCacheFont.h +++ b/include/JSystem/JUtility/JUTCacheFont.h @@ -2,10 +2,13 @@ #define JUTCACHEFONT_H #include "JSystem/JUtility/JUTResFont.h" -#include "global.h" class JKRAramBlock; +/** +* @ingroup jsystem-jutility +* +*/ class JUTCacheFont : public JUTResFont { public: struct TGlyphCacheInfo { diff --git a/include/JSystem/JUtility/JUTConsole.h b/include/JSystem/JUtility/JUTConsole.h index c2633d7088..d454a2b14d 100644 --- a/include/JSystem/JUtility/JUTConsole.h +++ b/include/JSystem/JUtility/JUTConsole.h @@ -5,8 +5,11 @@ #include "JSystem/JKernel/JKRDisposer.h" #include "JSystem/JUtility/JUTFont.h" #include "__va_arg.h" -#include "dolphin/types.h" +/** +* @ingroup jsystem-jutility +* +*/ class JUTConsole : public JKRDisposer { public: enum EConsoleType { @@ -114,6 +117,10 @@ public: /* 0x6B */ bool field_0x6b; }; // Size: 0x6C +/** +* @ingroup jsystem-jutility +* +*/ class JUTConsoleManager { public: /* 802E81CC */ JUTConsoleManager(); diff --git a/include/JSystem/JUtility/JUTDbPrint.h b/include/JSystem/JUtility/JUTDbPrint.h index d4b6830655..0620200815 100644 --- a/include/JSystem/JUtility/JUTDbPrint.h +++ b/include/JSystem/JUtility/JUTDbPrint.h @@ -6,6 +6,10 @@ class JKRHeap; // TODO: fix struct +/** +* @ingroup jsystem-jutility +* +*/ struct unk_print { /* 0x00 */ unk_print* mNext; /* 0x04 */ s16 unk_0x04; @@ -15,6 +19,10 @@ struct unk_print { /* 0x0C */ char unk_0x0C[0]; }; +/** +* @ingroup jsystem-jutility +* +*/ class JUTDbPrint { public: /* 802E0148 */ JUTDbPrint(JUTFont*, JKRHeap*); diff --git a/include/JSystem/JUtility/JUTDirectFile.h b/include/JSystem/JUtility/JUTDirectFile.h index f5f4ac2709..b2c8307ab7 100644 --- a/include/JSystem/JUtility/JUTDirectFile.h +++ b/include/JSystem/JUtility/JUTDirectFile.h @@ -5,6 +5,10 @@ #define JUTDF_BUFSIZE (0x800) +/** +* @ingroup jsystem-jutility +* +*/ struct JUTDirectFile { /* 802E8730 */ int fetch32byte(); /* 802E87F8 */ JUTDirectFile(); diff --git a/include/JSystem/JUtility/JUTDirectPrint.h b/include/JSystem/JUtility/JUTDirectPrint.h index c7362afdff..ba1b6bcd45 100644 --- a/include/JSystem/JUtility/JUTDirectPrint.h +++ b/include/JSystem/JUtility/JUTDirectPrint.h @@ -4,6 +4,10 @@ #include "JSystem/JUtility/TColor.h" #include "__va_arg.h" +/** +* @ingroup jsystem-jutility +* +*/ class JUTDirectPrint { private: /* 802E41E8 */ JUTDirectPrint(); diff --git a/include/JSystem/JUtility/JUTException.h b/include/JSystem/JUtility/JUTException.h index f9429df773..5c6519fb33 100644 --- a/include/JSystem/JUtility/JUTException.h +++ b/include/JSystem/JUtility/JUTException.h @@ -6,13 +6,16 @@ #include "__va_arg.h" #include "dolphin/gx/GXEnum.h" #include "dolphin/os/OSError.h" -#include "dolphin/types.h" #include "global.h" typedef struct _GXRenderModeObj GXRenderModeObj; typedef struct OSContext OSContext; class JUTDirectPrint; +/** +* @ingroup jsystem-jutility +* +*/ class JUTExternalFB { public: /* 802E40CC */ JUTExternalFB(_GXRenderModeObj*, GXGamma, void*, u32); @@ -35,6 +38,10 @@ STATIC_ASSERT(sizeof(JUTExternalFB) == 0x14); #define JUT_PRINT_FLOAT 8 #define JUT_PRINT_STACK 16 +/** +* @ingroup jsystem-jutility +* +*/ class JUTException : public JKRThread { public: enum EInfoPage { @@ -136,6 +143,10 @@ private: STATIC_ASSERT(sizeof(JUTException) == 0xA4); +/** +* @ingroup jsystem-jutility +* +*/ struct JUTWarn { JUTWarn& operator<<(const char*) { return *this; } JUTWarn& operator<<(long) { return *this; } diff --git a/include/JSystem/JUtility/JUTFader.h b/include/JSystem/JUtility/JUTFader.h index 3ee0a6a160..7c308269a7 100644 --- a/include/JSystem/JUtility/JUTFader.h +++ b/include/JSystem/JUtility/JUTFader.h @@ -4,6 +4,10 @@ #include "JSystem/JGeometry.h" #include "JSystem/JUtility/TColor.h" +/** +* @ingroup jsystem-jutility +* +*/ class JUTFader { public: enum EStatus { diff --git a/include/JSystem/JUtility/JUTFont.h b/include/JSystem/JUtility/JUTFont.h index 55bd5d71fa..b0a1a5c848 100644 --- a/include/JSystem/JUtility/JUTFont.h +++ b/include/JSystem/JUtility/JUTFont.h @@ -4,6 +4,10 @@ #include "JSystem/JUtility/TColor.h" #include "string.h" +/** +* @ingroup jsystem-jutility +* +*/ struct ResFONT { struct INF1 { /* 0x00 */ u32 magic; @@ -58,6 +62,10 @@ struct ResFONT { /* 0x20 */ u8 data[]; }; +/** +* @ingroup jsystem-jutility +* +*/ class JUTFont { public: JUTFont(); diff --git a/include/JSystem/JUtility/JUTGamePad.h b/include/JSystem/JUtility/JUTGamePad.h index 568731bdb1..38a731e69a 100644 --- a/include/JSystem/JUtility/JUTGamePad.h +++ b/include/JSystem/JUtility/JUTGamePad.h @@ -4,7 +4,6 @@ #include "JSystem/JKernel/JKRDisposer.h" #include "dolphin/os/OSTime.h" #include "dolphin/pad.h" -#include "dolphin/types.h" typedef void (*callbackFn)(int, void*); @@ -27,6 +26,10 @@ enum { extern bool sResetSwitchPushing__Q210JUTGamePad13C3ButtonReset; +/** +* @ingroup jsystem-jutility +* +*/ struct JUTGamePadRecordBase { virtual void unk0() {} virtual void unk1(PADStatus* pad) {} @@ -35,6 +38,10 @@ struct JUTGamePadRecordBase { /* 0x4 */ bool mActive; }; +/** +* @ingroup jsystem-jutility +* +*/ struct JUTGamePad : public JKRDisposer { public: enum EStickMode { @@ -260,6 +267,10 @@ public: static u32 sRumbleSupported; }; +/** +* @ingroup jsystem-jutility +* +*/ struct JUTGamePadLongPress { static JSUList sPatternList; void checkCallback(int port, u32 timer); diff --git a/include/JSystem/JUtility/JUTGraphFifo.h b/include/JSystem/JUtility/JUTGraphFifo.h index 831a799432..1c53ecef78 100644 --- a/include/JSystem/JUtility/JUTGraphFifo.h +++ b/include/JSystem/JUtility/JUTGraphFifo.h @@ -3,6 +3,10 @@ #include "dolphin/gx.h" +/** +* @ingroup jsystem-jutility +* +*/ class JUTGraphFifo { public: /* 802DEB58 */ JUTGraphFifo(u32); diff --git a/include/JSystem/JUtility/JUTNameTab.h b/include/JSystem/JUtility/JUTNameTab.h index d6c17bdddb..56ec079dbd 100644 --- a/include/JSystem/JUtility/JUTNameTab.h +++ b/include/JSystem/JUtility/JUTNameTab.h @@ -3,6 +3,10 @@ #include "dolphin/types.h" +/** +* @ingroup jsystem-jutility +* +*/ struct ResNTAB { u16 mEntryNum; u16 mPad0; @@ -16,6 +20,10 @@ struct ResNTAB { } }; +/** +* @ingroup jsystem-jutility +* +*/ class JUTNameTab { public: JUTNameTab(); diff --git a/include/JSystem/JUtility/JUTPalette.h b/include/JSystem/JUtility/JUTPalette.h index 4a3d297bc5..3702cbafa8 100644 --- a/include/JSystem/JUtility/JUTPalette.h +++ b/include/JSystem/JUtility/JUTPalette.h @@ -1,17 +1,24 @@ #ifndef JUTPALETTE_H #define JUTPALETTE_H -#include "dolphin/gx/GXEnum.h" #include "dolphin/gx/GXStruct.h" enum JUTTransparency { UNK0, UNK1 }; +/** +* @ingroup jsystem-jutility +* +*/ struct ResTLUT { u8 format; u8 transparency; u16 numColors; }; +/** +* @ingroup jsystem-jutility +* +*/ class JUTPalette { public: JUTPalette(_GXTlut p1, _GXTlutFmt p2, JUTTransparency p3, u16 p4, void* p5) { diff --git a/include/JSystem/JUtility/JUTProcBar.h b/include/JSystem/JUtility/JUTProcBar.h index 99d94e11e1..b38ad82b1a 100644 --- a/include/JSystem/JUtility/JUTProcBar.h +++ b/include/JSystem/JUtility/JUTProcBar.h @@ -6,6 +6,10 @@ class JKRHeap; +/** +* @ingroup jsystem-jutility +* +*/ class JUTProcBar { public: class CTime { diff --git a/include/JSystem/JUtility/JUTResFont.h b/include/JSystem/JUtility/JUTResFont.h index 097a4fa3d3..36e79aa3bc 100644 --- a/include/JSystem/JUtility/JUTResFont.h +++ b/include/JSystem/JUtility/JUTResFont.h @@ -2,18 +2,25 @@ #define JUTRESFONT_H #include "JSystem/JUtility/JUTFont.h" -#include "dolphin/gx/GXEnum.h" class JKRHeap; typedef bool (*IsLeadByte_func)(int); +/** +* @ingroup jsystem-jutility +* +*/ struct BlockHeader { const BlockHeader* getNext() const { return reinterpret_cast(reinterpret_cast(this) + size); } u32 magic; u32 size; }; +/** +* @ingroup jsystem-jutility +* +*/ class JUTResFont : public JUTFont { public: /* 802DF000 */ virtual ~JUTResFont(); diff --git a/include/JSystem/JUtility/JUTResource.h b/include/JSystem/JUtility/JUTResource.h index 8a6b3120c0..f5181cbffc 100644 --- a/include/JSystem/JUtility/JUTResource.h +++ b/include/JSystem/JUtility/JUTResource.h @@ -6,6 +6,10 @@ class JKRArchive; class JSUInputStream; +/** +* @ingroup jsystem-jutility +* +*/ class JUTResReference { private: /* 0x001 */ u8 mType; diff --git a/include/JSystem/JUtility/JUTTexture.h b/include/JSystem/JUtility/JUTTexture.h index f55f3217c1..b9a02b00b5 100644 --- a/include/JSystem/JUtility/JUTTexture.h +++ b/include/JSystem/JUtility/JUTTexture.h @@ -1,16 +1,19 @@ #ifndef JUTTEXTURE_H #define JUTTEXTURE_H -#include "dolphin/gx/GXEnum.h" #include "dolphin/gx/GXStruct.h" class JUTPalette; -/* - * Acts as the header to image data. Usually texture data immediately follows it, - * so any pointer arithmetic to go past the end of this structure is so that a - * variable sized allocated buffer can be accessed. - */ +/** +* @ingroup jsystem-jutility +* @brief Image data header. +* +* Acts as the header to image data. Usually texture data immediately follows it, +* so any pointer arithmetic to go past the end of this structure is so that a +* variable sized allocated buffer can be accessed. +* +*/ struct ResTIMG { /* 0x00 */ u8 format; /* 0x01 */ u8 alphaEnabled; @@ -36,6 +39,10 @@ struct ResTIMG { /* 0x1C */ u32 imageOffset; }; // Size: 0x20 +/** +* @ingroup jsystem-jutility +* +*/ class JUTTexture { public: JUTTexture() { diff --git a/include/JSystem/JUtility/JUTVideo.h b/include/JSystem/JUtility/JUTVideo.h index 1030b7f2b8..2c1727ab2b 100644 --- a/include/JSystem/JUtility/JUTVideo.h +++ b/include/JSystem/JUtility/JUTVideo.h @@ -4,10 +4,13 @@ #include "dolphin/gx/GXStruct.h" #include "dolphin/os/OSMessage.h" #include "dolphin/os/OSTime.h" -#include "dolphin/vi.h" typedef u8 (*Pattern)[2]; +/** +* @ingroup jsystem-jutility +* +*/ class JUTVideo { public: typedef void (*Callback)(u32); diff --git a/include/JSystem/JUtility/JUTXfb.h b/include/JSystem/JUtility/JUTXfb.h index 682529e04b..d98f16672c 100644 --- a/include/JSystem/JUtility/JUTXfb.h +++ b/include/JSystem/JUtility/JUTXfb.h @@ -6,6 +6,10 @@ typedef struct _GXRenderModeObj GXRenderModeObj; class JKRHeap; +/** +* @ingroup jsystem-jutility +* +*/ class JUTXfb { public: enum EXfbNumber { // TODO: placeholder diff --git a/include/JSystem/JUtility/TColor.h b/include/JSystem/JUtility/TColor.h index fd11ee8a7b..e8bf44d45f 100644 --- a/include/JSystem/JUtility/TColor.h +++ b/include/JSystem/JUtility/TColor.h @@ -4,6 +4,11 @@ #include "dolphin/gx/GXStruct.h" namespace JUtility { + +/** +* @ingroup jsystem-jutility +* +*/ struct TColor : public GXColor { TColor(u8 r, u8 g, u8 b, u8 a) { set(r, g, b, a); } TColor() { set(0xffffffff); } diff --git a/include/SSystem/SComponent/c_bg_s_lin_chk.h b/include/SSystem/SComponent/c_bg_s_lin_chk.h index 3566c54455..72595bc2b4 100644 --- a/include/SSystem/SComponent/c_bg_s_lin_chk.h +++ b/include/SSystem/SComponent/c_bg_s_lin_chk.h @@ -4,7 +4,6 @@ #include "SSystem/SComponent/c_bg_s_chk.h" #include "SSystem/SComponent/c_bg_s_poly_info.h" #include "SSystem/SComponent/c_m3d_g_lin.h" -#include "dolphin/types.h" class cBgS_LinChk : public cBgS_Chk, public cBgS_PolyInfo { public: diff --git a/include/SSystem/SComponent/c_bg_s_shdw_draw.h b/include/SSystem/SComponent/c_bg_s_shdw_draw.h index 806d7cf5d3..e99a933b70 100644 --- a/include/SSystem/SComponent/c_bg_s_shdw_draw.h +++ b/include/SSystem/SComponent/c_bg_s_shdw_draw.h @@ -3,7 +3,6 @@ #include "SSystem/SComponent/c_bg_s_chk.h" #include "SSystem/SComponent/c_m3d_g_aab.h" -#include "dolphin/types.h" struct cBgD_Vtx_t; class cM3dGPla; diff --git a/include/SSystem/SComponent/c_cc_d.h b/include/SSystem/SComponent/c_cc_d.h index 9d24922489..64381d1c21 100644 --- a/include/SSystem/SComponent/c_cc_d.h +++ b/include/SSystem/SComponent/c_cc_d.h @@ -26,6 +26,8 @@ class cCcD_CylAttr; class cCcD_SphAttr; enum cCcD_ObjAtType { + /* 0x00000000 */ AT_TYPE_0 = 0, + /* 0x00000001*/ AT_TYPE_1 = (1 << 0), /* 0x00000002 */ AT_TYPE_NORMAL_SWORD = (1 << 1), // wooden or ordon /* 0x00000004 */ AT_TYPE_HORSE = (1 << 2), /* 0x00000008 */ AT_TYPE_THROW_OBJ = (1 << 3), diff --git a/include/SSystem/SComponent/c_cc_s.h b/include/SSystem/SComponent/c_cc_s.h index b1b902e733..09899b8a23 100644 --- a/include/SSystem/SComponent/c_cc_s.h +++ b/include/SSystem/SComponent/c_cc_s.h @@ -2,7 +2,6 @@ #define C_CC_S_H #include "SSystem/SComponent/c_cc_d.h" -#include "global.h" enum WeightType { WeightType_0 = 0, diff --git a/include/SSystem/SComponent/c_m2d.h b/include/SSystem/SComponent/c_m2d.h index 9e90110960..f6fe537a76 100644 --- a/include/SSystem/SComponent/c_m2d.h +++ b/include/SSystem/SComponent/c_m2d.h @@ -1,7 +1,6 @@ #ifndef C_M2D_H #define C_M2D_H -#include "dolphin/types.h" struct cM2dGCir; diff --git a/include/SSystem/SComponent/c_m3d.h b/include/SSystem/SComponent/c_m3d.h index cc4076df3c..e68ed1e2a8 100644 --- a/include/SSystem/SComponent/c_m3d.h +++ b/include/SSystem/SComponent/c_m3d.h @@ -2,7 +2,6 @@ #define C_M3D_H_ #include "math.h" -#include "dolphin/types.h" #include "dolphin/mtx/vec.h" class cM3dGAab; diff --git a/include/SSystem/SComponent/c_m3d_g_aab.h b/include/SSystem/SComponent/c_m3d_g_aab.h index 2e60d72ce6..759f2b6402 100644 --- a/include/SSystem/SComponent/c_m3d_g_aab.h +++ b/include/SSystem/SComponent/c_m3d_g_aab.h @@ -1,7 +1,6 @@ #ifndef C_M3D_G_AAB_H #define C_M3D_G_AAB_H -#include "SSystem/SComponent/c_xyz.h" #include "SSystem/SComponent/c_m3d_g_lin.h" #include "SSystem/SComponent/c_m3d.h" #include "global.h" diff --git a/include/SSystem/SComponent/c_m3d_g_cps.h b/include/SSystem/SComponent/c_m3d_g_cps.h index d2f7240858..5147e02114 100644 --- a/include/SSystem/SComponent/c_m3d_g_cps.h +++ b/include/SSystem/SComponent/c_m3d_g_cps.h @@ -3,7 +3,6 @@ #include "SSystem/SComponent/c_m3d.h" #include "SSystem/SComponent/c_m3d_g_lin.h" -#include "global.h" struct cM3dGCpsS { /* 0x00 */ Vec mStart; diff --git a/include/SSystem/SComponent/c_m3d_g_tri.h b/include/SSystem/SComponent/c_m3d_g_tri.h index f940500880..72d0b11472 100644 --- a/include/SSystem/SComponent/c_m3d_g_tri.h +++ b/include/SSystem/SComponent/c_m3d_g_tri.h @@ -2,7 +2,6 @@ #define C_M3D_G_TRI_H_ #include "SSystem/SComponent/c_m3d_g_pla.h" -#include "dolphin/types.h" class cM3dGCyl; diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h index be657db099..56f8695e42 100644 --- a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h @@ -1,7 +1,6 @@ #ifndef METROTRK_PORTABLE_MSGHNDLR_H #define METROTRK_PORTABLE_MSGHNDLR_H -#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" #include "trk.h" void SetTRKConnected(BOOL); diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mutex_TRK.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mutex_TRK.h index 9139673dc8..9f112f2e64 100644 --- a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mutex_TRK.h +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mutex_TRK.h @@ -1,7 +1,6 @@ #ifndef METROTRK_PORTABLE_MUTEX_TRK_H #define METROTRK_PORTABLE_MUTEX_TRK_H -#include "dolphin/types.h" u8 TRKReleaseMutex(); u8 TRKAcquireMutex(); diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h index d14aaec394..7fa53a07b7 100644 --- a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h @@ -1,7 +1,6 @@ #ifndef METROTRK_PORTABLE_NUBEVENT_H #define METROTRK_PORTABLE_NUBEVENT_H -#include "trk.h" #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" #ifdef __cplusplus diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h index 89e87baaaa..729756b521 100644 --- a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h @@ -1,7 +1,6 @@ #ifndef METROTRK_PORTABLE_NUBINIT_H #define METROTRK_PORTABLE_NUBINIT_H -#include "dolphin/types.h" #include "trk.h" #ifdef __cplusplus diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h index a538a1905a..180cfb83f7 100644 --- a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h @@ -1,7 +1,6 @@ #ifndef METROTRK_PORTABLE_SERPOLL_H #define METROTRK_PORTABLE_SERPOLL_H -#include "dolphin/types.h" #ifdef __cplusplus extern "C" { diff --git a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h index 62c12692b8..dca001381d 100644 --- a/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h +++ b/include/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h @@ -1,7 +1,6 @@ #ifndef METROTRK_PORTABLE_SUPPORT_H #define METROTRK_PORTABLE_SUPPORT_H -#include "dolphin/types.h" #include "trk.h" #ifdef __cplusplus diff --git a/include/TRK_MINNOW_DOLPHIN/Os/dolphin/DDH_Stubs.h b/include/TRK_MINNOW_DOLPHIN/Os/dolphin/DDH_Stubs.h index 2a75211bd8..8d1a4aa772 100644 --- a/include/TRK_MINNOW_DOLPHIN/Os/dolphin/DDH_Stubs.h +++ b/include/TRK_MINNOW_DOLPHIN/Os/dolphin/DDH_Stubs.h @@ -1,7 +1,6 @@ #ifndef OS_DOLPHIN_DDH_STUBS_H #define OS_DOLPHIN_DDH_STUBS_H -#include "dolphin/os.h" #include "amcstubs/AmcExi2Stubs.h" #ifdef __cplusplus diff --git a/include/TRK_MINNOW_DOLPHIN/Os/dolphin/GDEV_Stubs.h b/include/TRK_MINNOW_DOLPHIN/Os/dolphin/GDEV_Stubs.h index 2ed57f5fd1..c0dcde4c78 100644 --- a/include/TRK_MINNOW_DOLPHIN/Os/dolphin/GDEV_Stubs.h +++ b/include/TRK_MINNOW_DOLPHIN/Os/dolphin/GDEV_Stubs.h @@ -1,7 +1,6 @@ #ifndef OS_DOLPHIN_GDEV_STUBS_H #define OS_DOLPHIN_GDEV_STUBS_H -#include "dolphin/os.h" #include "amcstubs/AmcExi2Stubs.h" #ifdef __cplusplus diff --git a/include/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h b/include/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h index a1f1b82dc6..51571963da 100644 --- a/include/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h +++ b/include/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h @@ -2,7 +2,6 @@ #define PPC_GENERIC_TARGIMPL_H #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h" -#include "trk.h" #ifdef __cplusplus extern "C" { diff --git a/include/Z2AudioLib/Z2Audience.h b/include/Z2AudioLib/Z2Audience.h index 7e00984450..f25bd80bfb 100644 --- a/include/Z2AudioLib/Z2Audience.h +++ b/include/Z2AudioLib/Z2Audience.h @@ -8,7 +8,6 @@ #include "JSystem/JAudio2/JASHeapCtrl.h" #include "JSystem/JAudio2/JAUAudibleParam.h" #include "JSystem/TPosition3.hh" -#include "dolphin/mtx.h" struct Z2Audible; diff --git a/include/Z2AudioLib/Z2AudioMgr.h b/include/Z2AudioLib/Z2AudioMgr.h index 86ae43696a..b118ef2e97 100644 --- a/include/Z2AudioLib/Z2AudioMgr.h +++ b/include/Z2AudioLib/Z2AudioMgr.h @@ -12,7 +12,6 @@ #include "Z2AudioLib/Z2SoundObjMgr.h" #include "Z2AudioLib/Z2SpeechMgr2.h" #include "Z2AudioLib/Z2StatusMgr.h" -#include "dolphin/types.h" #include "global.h" class JKRArchive; diff --git a/include/Z2AudioLib/Z2EnvSeMgr.h b/include/Z2AudioLib/Z2EnvSeMgr.h index 46efbcdfbb..8cf1a95784 100644 --- a/include/Z2AudioLib/Z2EnvSeMgr.h +++ b/include/Z2AudioLib/Z2EnvSeMgr.h @@ -3,7 +3,6 @@ #include "Z2AudioLib/Z2Calc.h" #include "Z2AudioLib/Z2SeMgr.h" -#include "global.h" enum WindType { WIND_TYPE_0, diff --git a/include/Z2AudioLib/Z2SeMgr.h b/include/Z2AudioLib/Z2SeMgr.h index fb8c218c65..7b1f93651a 100644 --- a/include/Z2AudioLib/Z2SeMgr.h +++ b/include/Z2AudioLib/Z2SeMgr.h @@ -3,7 +3,6 @@ #include "JSystem/JAudio2/JAISoundHandles.h" #include "JSystem/JAudio2/JASGadget.h" -#include "dolphin/mtx/vec.h" struct Z2MultiSeMgr { Z2MultiSeMgr(); diff --git a/include/Z2AudioLib/Z2SoundHandles.h b/include/Z2AudioLib/Z2SoundHandles.h index 773089dc27..4dbc80df69 100644 --- a/include/Z2AudioLib/Z2SoundHandles.h +++ b/include/Z2AudioLib/Z2SoundHandles.h @@ -2,7 +2,6 @@ #define Z2SOUNDHANDLES_H #include "JSystem/JAudio2/JAISoundHandles.h" -#include "JSystem/JSupport/JSUList.h" #include "JSystem/JAudio2/JASHeapCtrl.h" #include "dolphin/types.h" diff --git a/include/Z2AudioLib/Z2SoundInfo.h b/include/Z2AudioLib/Z2SoundInfo.h index 675fb0992a..2ccc73ff7f 100644 --- a/include/Z2AudioLib/Z2SoundInfo.h +++ b/include/Z2AudioLib/Z2SoundInfo.h @@ -4,7 +4,6 @@ #include "JSystem/JAudio2/JAISoundInfo.h" #include "JSystem/JAudio2/JAIStreamDataMgr.h" #include "JSystem/JAudio2/JAUSoundInfo.h" -#include "JSystem/JAudio2/JAUAudibleParam.h" class Z2SoundInfo : public JAISoundInfo, public JAUSoundInfo, public JAIStreamDataMgr, public JASGlobalInstance { public: diff --git a/include/Z2AudioLib/Z2SoundMgr.h b/include/Z2AudioLib/Z2SoundMgr.h index 76e091574e..85e2d664e8 100644 --- a/include/Z2AudioLib/Z2SoundMgr.h +++ b/include/Z2AudioLib/Z2SoundMgr.h @@ -4,7 +4,6 @@ #include "JSystem/JAudio2/JAISeMgr.h" #include "JSystem/JAudio2/JAISeqMgr.h" #include "JSystem/JAudio2/JAIStreamMgr.h" -#include "global.h" u16 seqCallback(JASTrack* param_0, u16 param_1); diff --git a/include/Z2AudioLib/Z2SoundObject.h b/include/Z2AudioLib/Z2SoundObject.h index c96b01e4cc..1e51f6c774 100644 --- a/include/Z2AudioLib/Z2SoundObject.h +++ b/include/Z2AudioLib/Z2SoundObject.h @@ -3,7 +3,6 @@ #include "Z2AudioLib/Z2SoundHandles.h" #include "JSystem/JAudio2/JAUSoundAnimator.h" -#include "dolphin/types.h" class Z2SoundStarter; diff --git a/include/Z2AudioLib/Z2SoundStarter.h b/include/Z2AudioLib/Z2SoundStarter.h index f133ebb5e6..ece10c7fd7 100644 --- a/include/Z2AudioLib/Z2SoundStarter.h +++ b/include/Z2AudioLib/Z2SoundStarter.h @@ -2,7 +2,6 @@ #define Z2SOUNDSTARTER_H #include "JSystem/JAudio2/JAISoundStarter.h" -#include "JSystem/JAudio2/JASGadget.h" struct Z2SoundStarter : public JAISoundStarter, public JASGlobalInstance { Z2SoundStarter(bool); diff --git a/include/Z2AudioLib/Z2SpeechMgr2.h b/include/Z2AudioLib/Z2SpeechMgr2.h index bbc86ba3e0..c776a468e6 100644 --- a/include/Z2AudioLib/Z2SpeechMgr2.h +++ b/include/Z2AudioLib/Z2SpeechMgr2.h @@ -4,7 +4,6 @@ #include "JSystem/JAudio2/JAISoundHandles.h" #include "JSystem/JMath/random.h" #include "Z2AudioLib/Z2SoundStarter.h" -#include "global.h" struct Z2SpeechStarter : public Z2SoundStarter { /* 802CCFB8 */ Z2SpeechStarter(); diff --git a/include/d/a/d_a_alink.h b/include/d/a/d_a_alink.h index 6c5db5633f..5914b1077d 100644 --- a/include/d/a/d_a_alink.h +++ b/include/d/a/d_a_alink.h @@ -6,16 +6,10 @@ #include "Z2AudioLib/Z2Creature.h" #include "Z2AudioLib/Z2WolfHowlMgr.h" #include "d/a/d_a_player.h" -#include "d/bg/d_bg_s_acch.h" -#include "d/bg/d_bg_s_lin_chk.h" -#include "d/bg/d_bg_w_base.h" -#include "d/cc/d_cc_d.h" -#include "d/d_attention.h" #include "d/d_eye_hl.h" #include "d/d_jnt_col.h" #include "d/meter/d_meter2_info.h" #include "d/msg/d_msg_flow.h" -#include "d/particle/d_particle.h" #include "d/particle/d_particle_copoly.h" #include "d/save/d_save.h" #include "f_op/f_op_actor_mng.h" diff --git a/include/d/a/d_a_item_static.h b/include/d/a/d_a_item_static.h index 2cf89231dd..d4d206fb2c 100644 --- a/include/d/a/d_a_item_static.h +++ b/include/d/a/d_a_item_static.h @@ -3,7 +3,6 @@ #include "SSystem/SComponent/c_lib.h" #include "d/a/d_a_itembase.h" -#include "d/cc/d_cc_d.h" #include "d/particle/d_particle.h" class daItem_c; diff --git a/include/d/a/d_a_itembase.h b/include/d/a/d_a_itembase.h index e8f1ed76f6..eb6c46c431 100644 --- a/include/d/a/d_a_itembase.h +++ b/include/d/a/d_a_itembase.h @@ -1,7 +1,6 @@ #ifndef D_A_D_A_ITEMBASE_H #define D_A_D_A_ITEMBASE_H -#include "SSystem/SComponent/c_phase.h" #include "d/bg/d_bg_s_acch.h" #include "d/cc/d_cc_d.h" #include "f_op/f_op_actor_mng.h" diff --git a/include/d/a/d_a_npc.h b/include/d/a/d_a_npc.h index 103471ccc9..63afb943ee 100644 --- a/include/d/a/d_a_npc.h +++ b/include/d/a/d_a_npc.h @@ -4,7 +4,6 @@ #include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h" #include "Z2AudioLib/Z2Creature.h" #include "d/a/d_a_player.h" -#include "d/com/d_com_inf_game.h" #include "d/d_path.h" #include "d/msg/d_msg_flow.h" #include "d/particle/d_particle_copoly.h" diff --git a/include/d/a/d_a_npc_cd.h b/include/d/a/d_a_npc_cd.h index dead035706..4a0a0a680d 100644 --- a/include/d/a/d_a_npc_cd.h +++ b/include/d/a/d_a_npc_cd.h @@ -3,7 +3,6 @@ #include "Z2AudioLib/Z2Creature.h" #include "d/com/d_com_inf_game.h" -#include "dolphin/types.h" class daNpcCd_c : public fopAc_ac_c { public: diff --git a/include/d/a/d_a_npc_cd2.h b/include/d/a/d_a_npc_cd2.h index c9282c9301..1b1ac1c503 100644 --- a/include/d/a/d_a_npc_cd2.h +++ b/include/d/a/d_a_npc_cd2.h @@ -2,7 +2,6 @@ #define A_NPC_D_A_NPC_CD2_H #include "Z2AudioLib/Z2Creature.h" -#include "d/com/d_com_inf_game.h" #include "d/d_npc_lib.h" #include "dolphin/types.h" diff --git a/include/d/a/d_a_obj_item.h b/include/d/a/d_a_obj_item.h index 26c732b92e..7911d8a7de 100644 --- a/include/d/a/d_a_obj_item.h +++ b/include/d/a/d_a_obj_item.h @@ -2,7 +2,6 @@ #define A_OBJ_D_A_OBJ_ITEM_H #include "d/a/d_a_item_static.h" -#include "f_op/f_op_actor_mng.h" namespace daItem_prm { static inline u8 getItemNo(daItem_c* item) { diff --git a/include/d/bg/d_bg_plc.h b/include/d/bg/d_bg_plc.h index 8159f236b3..d6d557915f 100644 --- a/include/d/bg/d_bg_plc.h +++ b/include/d/bg/d_bg_plc.h @@ -1,7 +1,6 @@ #ifndef D_BG_D_BG_PLC_H #define D_BG_D_BG_PLC_H -#include "dolphin/types.h" #include "d/bg/d_bg_pc.h" enum { diff --git a/include/d/bg/d_bg_s.h b/include/d/bg/d_bg_s.h index f96cbe6451..25dbfcd69d 100644 --- a/include/d/bg/d_bg_s.h +++ b/include/d/bg/d_bg_s.h @@ -2,7 +2,6 @@ #define D_BG_D_BG_S_H #include "d/bg/d_bg_w_base.h" -#include "dolphin/types.h" #include "global.h" class dBgW; diff --git a/include/d/bg/d_bg_s_acch.h b/include/d/bg/d_bg_s_acch.h index b9e40ee62c..d2949e467b 100644 --- a/include/d/bg/d_bg_s_acch.h +++ b/include/d/bg/d_bg_s_acch.h @@ -8,7 +8,6 @@ #include "d/bg/d_bg_s_gnd_chk.h" #include "d/bg/d_bg_s_roof_chk.h" #include "d/bg/d_bg_s_wtr_chk.h" -#include "dolphin/types.h" class fopAc_ac_c; diff --git a/include/d/bg/d_bg_s_cap_poly.h b/include/d/bg/d_bg_s_cap_poly.h index 2789e5cf2b..a41a140079 100644 --- a/include/d/bg/d_bg_s_cap_poly.h +++ b/include/d/bg/d_bg_s_cap_poly.h @@ -1,8 +1,6 @@ #ifndef D_BG_D_BG_S_CAPT_POLY_H #define D_BG_D_BG_S_CAPT_POLY_H -#include "SSystem/SComponent/c_bg_s_chk.h" -#include "SSystem/SComponent/c_m3d_g_aab.h" #include "d/bg/d_bg_s_chk.h" struct dBgS_CaptPoly; diff --git a/include/d/bg/d_bg_s_poly_pass_chk.h b/include/d/bg/d_bg_s_poly_pass_chk.h index 4dc1a559ca..0e9ac6cd54 100644 --- a/include/d/bg/d_bg_s_poly_pass_chk.h +++ b/include/d/bg/d_bg_s_poly_pass_chk.h @@ -1,7 +1,6 @@ #ifndef D_BG_D_BG_S_POLY_PASS_CHK_H #define D_BG_D_BG_S_POLY_PASS_CHK_H -#include "dolphin/types.h" class cBgS_PolyPassChk { public: diff --git a/include/d/bg/d_bg_s_roof_chk.h b/include/d/bg/d_bg_s_roof_chk.h index 6a854d64f6..be4a58c213 100644 --- a/include/d/bg/d_bg_s_roof_chk.h +++ b/include/d/bg/d_bg_s_roof_chk.h @@ -4,7 +4,6 @@ #include "SSystem/SComponent/c_bg_s_poly_info.h" #include "SSystem/SComponent/c_xyz.h" #include "d/bg/d_bg_s_chk.h" -#include "dolphin/types.h" class dBgS_RoofChk : public cBgS_PolyInfo, public cBgS_Chk, public dBgS_Chk { public: diff --git a/include/d/bg/d_bg_s_sph_chk.h b/include/d/bg/d_bg_s_sph_chk.h index 609182a925..ddc15b03f7 100644 --- a/include/d/bg/d_bg_s_sph_chk.h +++ b/include/d/bg/d_bg_s_sph_chk.h @@ -4,7 +4,6 @@ #include "SSystem/SComponent/c_bg_s_poly_info.h" #include "SSystem/SComponent/c_m3d_g_sph.h" #include "d/bg/d_bg_s_chk.h" -#include "dolphin/types.h" struct cBgD_Vtx_t; diff --git a/include/d/bg/d_bg_s_spl_grp_chk.h b/include/d/bg/d_bg_s_spl_grp_chk.h index 84e87cc884..531a00ba92 100644 --- a/include/d/bg/d_bg_s_spl_grp_chk.h +++ b/include/d/bg/d_bg_s_spl_grp_chk.h @@ -4,7 +4,6 @@ #include "SSystem/SComponent/c_bg_s_poly_info.h" #include "SSystem/SComponent/c_xyz.h" #include "d/bg/d_bg_s_chk.h" -#include "dolphin/types.h" class dBgS_SplGrpChk : public cBgS_PolyInfo, public cBgS_Chk, public dBgS_Chk { public: diff --git a/include/d/bg/d_bg_w.h b/include/d/bg/d_bg_w.h index 3338404bfa..85ea2160b4 100644 --- a/include/d/bg/d_bg_w.h +++ b/include/d/bg/d_bg_w.h @@ -2,7 +2,6 @@ #define D_BG_D_BG_W_H #include "SSystem/SComponent/c_m3d_g_aab.h" -#include "SSystem/SComponent/c_xyz.h" #include "SSystem/SComponent/c_sxyz.h" #include "d/bg/d_bg_w_base.h" #include "dolphin/mtx.h" diff --git a/include/d/cc/d_cc_mass_s.h b/include/d/cc/d_cc_mass_s.h index 8cdd855acf..5d1a0667fe 100644 --- a/include/d/cc/d_cc_mass_s.h +++ b/include/d/cc/d_cc_mass_s.h @@ -2,7 +2,6 @@ #define D_CC_D_CC_MASS_S_H #include "SSystem/SComponent/c_cc_d.h" -#include "global.h" typedef void (*dCcMassS_ObjCallback)(fopAc_ac_c*, cXyz*, u32); diff --git a/include/d/cc/d_cc_s.h b/include/d/cc/d_cc_s.h index 7fbfb54a32..952981df77 100644 --- a/include/d/cc/d_cc_s.h +++ b/include/d/cc/d_cc_s.h @@ -3,7 +3,6 @@ #include "SSystem/SComponent/c_cc_s.h" #include "d/cc/d_cc_mass_s.h" -#include "global.h" class dCcD_GObjInf; class dCcD_GStts; diff --git a/include/d/com/d_com_inf_game.h b/include/d/com/d_com_inf_game.h index 2fcb15132a..e7f2cf9fd1 100644 --- a/include/d/com/d_com_inf_game.h +++ b/include/d/com/d_com_inf_game.h @@ -1,7 +1,6 @@ #ifndef D_COM_D_COM_INF_GAME_H #define D_COM_D_COM_INF_GAME_H -#include "d/bg/d_bg_s.h" #include "d/cc/d_cc_s.h" #include "d/d_attention.h" #include "d/d_resorce.h" diff --git a/include/d/d_bomb.h b/include/d/d_bomb.h index 5de6f4cf7c..7269e622a2 100644 --- a/include/d/d_bomb.h +++ b/include/d/d_bomb.h @@ -2,7 +2,6 @@ #define D_D_BOMB_H #include "d/bg/d_bg_s_acch.h" -#include "d/bg/d_bg_s_lin_chk.h" #include "d/cc/d_cc_d.h" #include "f_op/f_op_actor_mng.h" #include "d/d_procname.h" diff --git a/include/d/d_camera.h b/include/d/d_camera.h index d08c5c0591..5902b44cbd 100644 --- a/include/d/d_camera.h +++ b/include/d/d_camera.h @@ -6,7 +6,6 @@ #include "d/d_cam_param.h" #include "d/d_drawlist.h" #include "d/d_stage.h" -#include "dolphin/gx/GXStruct.h" #include "dolphin/types.h" class fopAc_ac_c; diff --git a/include/d/d_demo.h b/include/d/d_demo.h index bab6da8a59..cc8daad77b 100644 --- a/include/d/d_demo.h +++ b/include/d/d_demo.h @@ -6,8 +6,6 @@ #include "JSystem/JStudio/JStudio_JStage/object.h" #include "SSystem/SComponent/c_sxyz.h" #include "SSystem/SComponent/c_xyz.h" -#include "dolphin/gx/GXEnum.h" -#include "dolphin/gx/GXStruct.h" #include "Z2AudioLib/Z2SoundStarter.h" class J3DModel; diff --git a/include/d/d_drawlist.h b/include/d/d_drawlist.h index a5ac66ec64..cbc9de6d05 100644 --- a/include/d/d_drawlist.h +++ b/include/d/d_drawlist.h @@ -3,7 +3,6 @@ #include "JSystem/J2DGraph/J2DPicture.h" #include "SSystem/SComponent/c_m3d_g_pla.h" -#include "dolphin/types.h" #include "f_op/f_op_view.h" #include "m_Do/m_Do_ext.h" #include "global.h" diff --git a/include/d/d_ev_camera.h b/include/d/d_ev_camera.h index b0bf49d42e..1aa4b75a73 100644 --- a/include/d/d_ev_camera.h +++ b/include/d/d_ev_camera.h @@ -1,6 +1,5 @@ #ifndef D_D_EV_CAMERA_H #define D_D_EV_CAMERA_H -#include "dolphin/types.h" #endif /* D_D_EV_CAMERA_H */ diff --git a/include/d/d_jnt_col.h b/include/d/d_jnt_col.h index 1705cd3f96..c72b7b4c50 100644 --- a/include/d/d_jnt_col.h +++ b/include/d/d_jnt_col.h @@ -4,7 +4,6 @@ #include "JSystem/J3DGraphAnimator/J3DModel.h" #include "SSystem/SComponent/c_m3d_g_lin.h" #include "SSystem/SComponent/c_sxyz.h" -#include "dolphin/types.h" class fopAc_ac_c; diff --git a/include/d/d_k_wmark.h b/include/d/d_k_wmark.h index a9b89dcb46..54a5f4eb6e 100644 --- a/include/d/d_k_wmark.h +++ b/include/d/d_k_wmark.h @@ -3,7 +3,6 @@ #include "f_op/f_op_kankyo_mng.h" #include "d/kankyo/d_kankyo.h" -#include "d/d_procname.h" class dkWmark_c : public kankyo_class { public: diff --git a/include/d/d_name.h b/include/d/d_name.h index 137de04559..229debe31b 100644 --- a/include/d/d_name.h +++ b/include/d/d_name.h @@ -2,7 +2,6 @@ #define D_D_NAME_H #include "d/d_select_cursor.h" -#include "string.h" class CPaneMgr; class CPaneMgrAlpha; diff --git a/include/d/d_npc_lib.h b/include/d/d_npc_lib.h index c815e46dfb..378ec4ec4d 100644 --- a/include/d/d_npc_lib.h +++ b/include/d/d_npc_lib.h @@ -2,7 +2,6 @@ #define D_D_NPC_LIB_H #include "d/com/d_com_inf_game.h" -#include "dolphin/types.h" class dNpcLib_lookat_c { public: diff --git a/include/d/d_stage.h b/include/d/d_stage.h index 8da24f94ea..2ccdb8412d 100644 --- a/include/d/d_stage.h +++ b/include/d/d_stage.h @@ -5,7 +5,6 @@ #include "d/kankyo/d_kankyo.h" #include "d/kankyo/d_kankyo_data.h" #include "d/save/d_save.h" -#include "f_pc/f_pc_priority.h" #include "global.h" class JKRExpHeap; diff --git a/include/d/d_timer.h b/include/d/d_timer.h index 1365cbc59c..1c8d10e8b5 100644 --- a/include/d/d_timer.h +++ b/include/d/d_timer.h @@ -2,7 +2,6 @@ #define D_D_TIMER_H #include "d/msg/d_msg_object.h" -#include "dolphin/os/OSTime.h" #include "f_op/f_op_msg.h" class CPaneMgr; diff --git a/include/d/event/d_event.h b/include/d/event/d_event.h index 8d55dd1dce..1a03a3d541 100644 --- a/include/d/event/d_event.h +++ b/include/d/event/d_event.h @@ -2,7 +2,6 @@ #define D_EVENT_D_EVENT_H #include "d/a/d_a_itembase.h" -#include "global.h" int dEv_noFinishSkipProc(void*, int); diff --git a/include/d/file/d_file_sel_warning.h b/include/d/file/d_file_sel_warning.h index 8164ed4afd..3fca0a4f75 100644 --- a/include/d/file/d_file_sel_warning.h +++ b/include/d/file/d_file_sel_warning.h @@ -1,7 +1,6 @@ #ifndef D_FILE_D_FILE_SEL_WARNING_H #define D_FILE_D_FILE_SEL_WARNING_H -#include "d/d_drawlist.h" class JKRArchive; class CPaneMgr; diff --git a/include/d/file/d_file_select.h b/include/d/file/d_file_select.h index 165a1c97c0..39156b7016 100644 --- a/include/d/file/d_file_select.h +++ b/include/d/file/d_file_select.h @@ -4,8 +4,6 @@ #include "d/com/d_com_inf_game.h" #include "d/file/d_file_sel_warning.h" #include "d/d_name.h" -#include "d/save/d_save.h" -#include "d/msg/d_msg_string.h" #include "JSystem/J3DGraphLoader/J3DModelLoader.h" #include "JSystem/J3DGraphLoader/J3DAnmLoader.h" diff --git a/include/d/kankyo/d_kankyo.h b/include/d/kankyo/d_kankyo.h index bca1d84951..b20a9e433d 100644 --- a/include/d/kankyo/d_kankyo.h +++ b/include/d/kankyo/d_kankyo.h @@ -3,8 +3,6 @@ #include "JSystem/J3DGraphBase/J3DStruct.h" #include "d/kankyo/d_kankyo_wether.h" -#include "dolphin/types.h" -#include "global.h" #include "m_Do/m_Do_ext.h" class JPABaseEmitter; diff --git a/include/d/map/d_map.h b/include/d/map/d_map.h index 357c91f889..27c57b2f85 100644 --- a/include/d/map/d_map.h +++ b/include/d/map/d_map.h @@ -2,7 +2,6 @@ #define D_MAP_D_MAP_H #include "d/map/d_map_path_dmap.h" -#include "d/d_tresure.h" class renderingAmap_c : public renderingPlusDoorAndCursor_c { public: diff --git a/include/d/map/d_map_path.h b/include/d/map/d_map_path.h index fb8aefc50f..d131368b87 100644 --- a/include/d/map/d_map_path.h +++ b/include/d/map/d_map_path.h @@ -2,7 +2,6 @@ #define D_MAP_D_MAP_PATH_H #include "d/d_drawlist.h" -#include "global.h" class dDrawPath_c : public dDlst_base_c { public: diff --git a/include/d/menu/d_menu_dmap.h b/include/d/menu/d_menu_dmap.h index 670ac0efa9..1928882ece 100644 --- a/include/d/menu/d_menu_dmap.h +++ b/include/d/menu/d_menu_dmap.h @@ -2,9 +2,7 @@ #define D_MENU_D_MENU_DMAP_H #include "d/d_select_cursor.h" -#include "d/d_drawlist.h" #include "d/msg/d_msg_flow.h" -#include "d/menu/d_menu_map_common.h" #include "d/menu/d_menu_dmap_map.h" #include "dolphin/types.h" diff --git a/include/d/menu/d_menu_fishing.h b/include/d/menu/d_menu_fishing.h index 6aa89af26d..52dffbc214 100644 --- a/include/d/menu/d_menu_fishing.h +++ b/include/d/menu/d_menu_fishing.h @@ -2,7 +2,6 @@ #define D_MENU_D_MENU_FISHING_H #include "d/com/d_com_inf_game.h" -#include "d/d_drawlist.h" class CPaneMgr; struct CSTControl; diff --git a/include/d/menu/d_menu_insect.h b/include/d/menu/d_menu_insect.h index 540f069e34..4419db89a8 100644 --- a/include/d/menu/d_menu_insect.h +++ b/include/d/menu/d_menu_insect.h @@ -2,7 +2,6 @@ #define D_MENU_D_MENU_INSECT_H #include "d/com/d_com_inf_game.h" -#include "d/d_drawlist.h" class CPaneMgr; struct CSTControl; diff --git a/include/d/menu/d_menu_ring.h b/include/d/menu/d_menu_ring.h index 5a68eca904..3e1d6a8026 100644 --- a/include/d/menu/d_menu_ring.h +++ b/include/d/menu/d_menu_ring.h @@ -2,7 +2,6 @@ #define D_MENU_D_MENU_RING_H #include "d/com/d_com_inf_game.h" -#include "d/d_drawlist.h" class CPaneMgr; class CPaneMgrAlpha; diff --git a/include/d/meter/d_meter2_draw.h b/include/d/meter/d_meter2_draw.h index 3ebc3b749c..670fe8dcf7 100644 --- a/include/d/meter/d_meter2_draw.h +++ b/include/d/meter/d_meter2_draw.h @@ -2,7 +2,6 @@ #define D_METER_D_METER2_DRAW_H #include "d/d_drawlist.h" -#include "dolphin/types.h" class CPaneMgr; class CPaneMgrAlpha; diff --git a/include/d/meter/d_meter_HIO.h b/include/d/meter/d_meter_HIO.h index 1877088cf2..b370e1ad3f 100644 --- a/include/d/meter/d_meter_HIO.h +++ b/include/d/meter/d_meter_HIO.h @@ -4,7 +4,6 @@ #include "JSystem/JUtility/TColor.h" #include "SSystem/SComponent/c_sxyz.h" #include "SSystem/SComponent/c_xyz.h" -#include "global.h" class JKRArchive; diff --git a/include/d/msg/d_msg_scrn_howl.h b/include/d/msg/d_msg_scrn_howl.h index 9ef61a332e..ed654979b4 100644 --- a/include/d/msg/d_msg_scrn_howl.h +++ b/include/d/msg/d_msg_scrn_howl.h @@ -1,7 +1,6 @@ #ifndef MSG_SCRN_D_MSG_SCRN_HOWL_H #define MSG_SCRN_D_MSG_SCRN_HOWL_H -#include "dolphin/types.h" #include "d/msg/d_msg_scrn_base.h" struct dMsgScrnHowl_c : public dMsgScrnBase_c { diff --git a/include/d/ovlp/d_ovlp_fade.h b/include/d/ovlp/d_ovlp_fade.h index b310a5fb8b..e99aa2e319 100644 --- a/include/d/ovlp/d_ovlp_fade.h +++ b/include/d/ovlp/d_ovlp_fade.h @@ -1,6 +1,5 @@ #ifndef D_OVLP_D_OVLP_FADE_H #define D_OVLP_D_OVLP_FADE_H -#include "dolphin/types.h" #endif /* D_OVLP_D_OVLP_FADE_H */ diff --git a/include/d/particle/d_particle_copoly.h b/include/d/particle/d_particle_copoly.h index 4d2af60b3d..aad90f24b5 100644 --- a/include/d/particle/d_particle_copoly.h +++ b/include/d/particle/d_particle_copoly.h @@ -1,8 +1,6 @@ #ifndef D_PARTICLE_D_PARTICLE_COPOLY_H #define D_PARTICLE_D_PARTICLE_COPOLY_H -#include "SSystem/SComponent/c_sxyz.h" -#include "SSystem/SComponent/c_xyz.h" #include "d/com/d_com_inf_game.h" class dBgS_Acch; diff --git a/include/d/shop/d_shop_camera.h b/include/d/shop/d_shop_camera.h index b0023ac8e4..60b5ec871f 100644 --- a/include/d/shop/d_shop_camera.h +++ b/include/d/shop/d_shop_camera.h @@ -1,7 +1,6 @@ #ifndef D_SHOP_D_SHOP_CAMERA_H #define D_SHOP_D_SHOP_CAMERA_H -#include "dolphin/types.h" #include "f_op/f_op_actor.h" diff --git a/include/dolphin/amcstubs/AmcExi2Stubs.h b/include/dolphin/amcstubs/AmcExi2Stubs.h index eda84da6b0..99d61b1e7f 100644 --- a/include/dolphin/amcstubs/AmcExi2Stubs.h +++ b/include/dolphin/amcstubs/AmcExi2Stubs.h @@ -2,7 +2,6 @@ #define AMCEXI2STUBS_H #include "dolphin/os.h" -#include "dolphin/types.h" #ifdef __cplusplus extern "C" { diff --git a/include/dolphin/db.h b/include/dolphin/db.h index 0afd92a743..663f0cebab 100644 --- a/include/dolphin/db.h +++ b/include/dolphin/db.h @@ -1,7 +1,6 @@ #ifndef DB_H #define DB_H -#include "dolphin/types.h" #include "amcstubs/AmcExi2Stubs.h" #ifdef __cplusplus diff --git a/include/dolphin/gd/GDGeometry.h b/include/dolphin/gd/GDGeometry.h index 5dc439e6e9..e0c34ef727 100644 --- a/include/dolphin/gd/GDGeometry.h +++ b/include/dolphin/gd/GDGeometry.h @@ -1,7 +1,6 @@ #ifndef GDGEOMETRY_H #define GDGEOMETRY_H -#include "gx.h" #ifdef __cplusplus extern "C" { diff --git a/include/dolphin/gf/GFLight.h b/include/dolphin/gf/GFLight.h index 81a0232c1b..d027ec11be 100644 --- a/include/dolphin/gf/GFLight.h +++ b/include/dolphin/gf/GFLight.h @@ -1,7 +1,6 @@ #ifndef GFLIGHT_H #define GFLIGHT_H -#include "dolphin/gx/GXEnum.h" #include "dolphin/gx/GXStruct.h" void GFSetChanAmbColor(_GXChannelID param_0, _GXColor param_1); diff --git a/include/dolphin/gx.h b/include/dolphin/gx.h index c20c6e630f..875ce03fef 100644 --- a/include/dolphin/gx.h +++ b/include/dolphin/gx.h @@ -13,7 +13,6 @@ #include "dolphin/gx/GXPerf.h" #include "dolphin/gx/GXPixel.h" #include "dolphin/gx/GXTev.h" -#include "dolphin/gx/GXTexture.h" #include "dolphin/gx/GXTransform.h" #ifdef __cplusplus diff --git a/include/dolphin/gx/GXFifo.h b/include/dolphin/gx/GXFifo.h index 50ce1de344..942a954c1a 100644 --- a/include/dolphin/gx/GXFifo.h +++ b/include/dolphin/gx/GXFifo.h @@ -2,7 +2,6 @@ #define GXFIFO_H #include "dolphin/gx/GXStruct.h" -#include "dolphin/gx/GXEnum.h" #include "dolphin/os/OSThread.h" #ifdef __cplusplus diff --git a/include/dolphin/gx/GXFrameBuf.h b/include/dolphin/gx/GXFrameBuf.h index 10dff9c0ca..96df637f19 100644 --- a/include/dolphin/gx/GXFrameBuf.h +++ b/include/dolphin/gx/GXFrameBuf.h @@ -2,7 +2,6 @@ #define GXFRAMEBUF_H #include "dolphin/gx/GXStruct.h" -#include "dolphin/gx/GXEnum.h" #ifdef __cplusplus extern "C" { diff --git a/include/dolphin/gx/GXInit.h b/include/dolphin/gx/GXInit.h index af92a947c3..d360345c1f 100644 --- a/include/dolphin/gx/GXInit.h +++ b/include/dolphin/gx/GXInit.h @@ -2,7 +2,6 @@ #define GXINIT_H #include "dolphin/gx/GXTexture.h" -#include "dolphin/mtx.h" typedef struct _GXData { // Bypass and vertex info diff --git a/include/dolphin/gx/GXLight.h b/include/dolphin/gx/GXLight.h index 82fd78a1b0..4e04aad1d2 100644 --- a/include/dolphin/gx/GXLight.h +++ b/include/dolphin/gx/GXLight.h @@ -2,7 +2,6 @@ #define GXLIGHT_H #include "dolphin/gx/GXStruct.h" -#include "dolphin/gx/GXEnum.h" #ifdef __cplusplus extern "C" { diff --git a/include/dolphin/gx/GXPerf.h b/include/dolphin/gx/GXPerf.h index a93237d33c..3edd9ea4f8 100644 --- a/include/dolphin/gx/GXPerf.h +++ b/include/dolphin/gx/GXPerf.h @@ -1,7 +1,6 @@ #ifndef GXPERF_H #define GXPERF_H -#include "dolphin/types.h" #include "dolphin/gx/GXEnum.h" #ifdef __cplusplus diff --git a/include/dolphin/gx/GXPixel.h b/include/dolphin/gx/GXPixel.h index b9b3d3a60b..3b0571f22f 100644 --- a/include/dolphin/gx/GXPixel.h +++ b/include/dolphin/gx/GXPixel.h @@ -2,7 +2,6 @@ #define GXPIXEL_H #include "dolphin/gx/GXStruct.h" -#include "dolphin/gx/GXEnum.h" #ifdef __cplusplus extern "C" { diff --git a/include/dolphin/gx/GXTev.h b/include/dolphin/gx/GXTev.h index 20da7b3850..5d8b63d7d2 100644 --- a/include/dolphin/gx/GXTev.h +++ b/include/dolphin/gx/GXTev.h @@ -1,7 +1,6 @@ #ifndef GXTEV_H #define GXTEV_H -#include "dolphin/gx/GXEnum.h" #include "dolphin/gx/GXStruct.h" #ifdef __cplusplus diff --git a/include/dolphin/gx/GXTexture.h b/include/dolphin/gx/GXTexture.h index f1eaec7e96..709c3ed20b 100644 --- a/include/dolphin/gx/GXTexture.h +++ b/include/dolphin/gx/GXTexture.h @@ -1,7 +1,6 @@ #ifndef GXTEXTURE_H #define GXTEXTURE_H -#include "dolphin/gx/GXEnum.h" #include "dolphin/gx/GXStruct.h" #ifdef __cplusplus diff --git a/include/dolphin/mtx.h b/include/dolphin/mtx.h index fd32d818f2..feec7a71ef 100644 --- a/include/dolphin/mtx.h +++ b/include/dolphin/mtx.h @@ -3,7 +3,6 @@ #include "dolphin/mtx/mtx44.h" #include "dolphin/mtx/quat.h" -#include "dolphin/mtx/vec.h" #ifdef __cplusplus extern "C" { diff --git a/include/dolphin/os/OSLink.h b/include/dolphin/os/OSLink.h index 45c4fc84a7..55e63d5e2f 100644 --- a/include/dolphin/os/OSLink.h +++ b/include/dolphin/os/OSLink.h @@ -1,7 +1,6 @@ #ifndef OSLINK_H #define OSLINK_H -#include "dolphin/types.h" #ifdef __cplusplus extern "C" { diff --git a/include/dolphin/os/OSResetSW.h b/include/dolphin/os/OSResetSW.h index 03e0e4369b..e0205387e5 100644 --- a/include/dolphin/os/OSResetSW.h +++ b/include/dolphin/os/OSResetSW.h @@ -1,7 +1,6 @@ #ifndef OSRESETSW_H #define OSRESETSW_H -#include "dolphin/types.h" #include "dolphin/os/OSInterrupt.h" #ifdef __cplusplus diff --git a/include/f_op/f_op_actor.h b/include/f_op/f_op_actor.h index ee70f37bfb..e2d3a4255b 100644 --- a/include/f_op/f_op_actor.h +++ b/include/f_op/f_op_actor.h @@ -1,7 +1,6 @@ #ifndef F_OP_ACTOR_H_ #define F_OP_ACTOR_H_ -#include "JSystem/JKernel/JKRHeap.h" #include "d/kankyo/d_kankyo.h" #include "f_pc/f_pc_leaf.h" #include "global.h" @@ -245,6 +244,9 @@ public: bool checkDownFlg() const { return mFlags & 0x1; } bool checkCutDownHitFlg() const { return mFlags & 0x2; } bool checkDeadFlg() const { return mFlags & 0x8; } + + u32* getMidnaBindID(u8 i_idx) { return mMidnaBindID + i_idx; } + u8 getMidnaBindMode() { return mMidnaBindMode; } cXyz& getDownPos() { return mDownPos; } cXyz& getHeadLockPos() { return mHeadLockPos; } @@ -258,6 +260,8 @@ public: void offCutDownHitFlg() { mFlags &= ~0x2; } void offDownFlg() { mFlags &= ~0x17; } + void setMidnaBindMode(u8 i_bindMode) { mMidnaBindMode = i_bindMode; } + void setMidnaBindID(u8 i_idx, u32 i_bindID) { mMidnaBindID[i_idx] = i_bindID; } void setThrowModeCatch() { mThrowMode |= 2; } void setThrowModeDash() { mThrowMode |= 4; } void setThrowModeThrowRight() { mThrowMode |= 0x10; } @@ -276,7 +280,7 @@ public: /* 0x594 */ u32 mEffectID1; /* 0x598 */ u32 mEffectID2; /* 0x59C */ u32 mMidnaBindID[3]; - /* 0x5A8 */ u8 field_0x5a8; + /* 0x5A8 */ u8 mMidnaBindMode; }; // Size: 0x5AC s32 fopAc_IsActor(void* actor); diff --git a/include/f_op/f_op_actor_mng.h b/include/f_op/f_op_actor_mng.h index 74a8981cd4..e50091daf8 100644 --- a/include/f_op/f_op_actor_mng.h +++ b/include/f_op/f_op_actor_mng.h @@ -4,7 +4,6 @@ #include "f_op/f_op_actor.h" #include "f_op/f_op_actor_iter.h" #include "f_pc/f_pc_manager.h" -#include "f_pc/f_pc_searcher.h" #include "d/bg/d_bg_s.h" #include "d/bg/d_bg_s_gnd_chk.h" #include "d/bg/d_bg_s_lin_chk.h" @@ -128,6 +127,30 @@ struct DOUBLE_POS { double x, y, z; }; +enum fopAcM_STATUS { + /* 0x000001 */ fopAcM_STATUS_UNK_000001 = 1 << 0, + /* 0x000002 */ fopAcM_STATUS_UNK_000002 = 1 << 1, + /* 0x000004 */ fopAcM_STATUS_UNK_000004 = 1 << 2, + /* 0x000008 */ fopAcM_STATUS_UNK_000008 = 1 << 3, + /* 0x000010 */ fopAcM_STATUS_UNK_000010 = 1 << 4, + /* 0x000020 */ fopAcM_STATUS_UNK_000020 = 1 << 5, + /* 0x000040 */ fopAcM_STATUS_UNK_000040 = 1 << 6, + /* 0x000080 */ fopAcM_STATUS_UNK_000080 = 1 << 7, + /* 0x000100 */ fopAcM_STATUS_UNK_000100 = 1 << 8, + /* 0x000200 */ fopAcM_STATUS_UNK_000200 = 1 << 9, + /* 0x000400 */ fopAcM_STATUS_UNK_000400 = 1 << 10, + /* 0x000800 */ fopAcM_STATUS_UNK_000800 = 1 << 11, + /* 0x001000 */ fopAcM_STATUS_UNK_001000 = 1 << 12, + /* 0x002000 */ fopAcM_STATUS_CARRY_NOW = 1 << 13, + /* 0x004000 */ fopAcM_STATUS_UNK_004000 = 1 << 14, + /* 0x008000 */ fopAcM_STATUS_UNK_008000 = 1 << 15, + /* 0x010000 */ fopAcM_STATUS_UNK_010000 = 1 << 16, + /* 0x020000 */ fopAcM_STATUS_UNK_200000 = 1 << 17, + /* 0x040000 */ fopAcM_STATUS_UNK_400000 = 1 << 18, + /* 0x080000 */ fopAcM_STATUS_UNK_800000 = 1 << 19, + /* 0x100000 */ fopAcM_STATUS_HOOK_CARRY_NOW = 1 << 20, +}; + inline s32 fopAcM_GetRoomNo(const fopAc_ac_c* pActor) { return (s8)pActor->current.roomNo; } @@ -149,7 +172,7 @@ inline u32 fopAcM_checkStatus(fopAc_ac_c* pActor, u32 actor_status) { } inline u32 fopAcM_checkCarryNow(fopAc_ac_c* pActor) { - return pActor->actor_status & 0x2000; + return pActor->actor_status & fopAcM_STATUS_CARRY_NOW; } enum fopAcM_CARRY { @@ -168,7 +191,7 @@ inline u32 fopAcM_CheckCarryType(fopAc_ac_c* actor, fopAcM_CARRY type) { } inline u32 fopAcM_checkHookCarryNow(fopAc_ac_c* pActor) { - return fopAcM_checkStatus(pActor, 0x100000); + return fopAcM_checkStatus(pActor, fopAcM_STATUS_HOOK_CARRY_NOW); } inline u32 fopAcM_GetParam(const void* pActor) { @@ -195,10 +218,6 @@ inline u8 fopAcM_GetGroup(const fopAc_ac_c* p_actor) { return p_actor->group; } -inline void fopAcM_SetGroup(fopAc_ac_c* p_actor, u8 group) { - p_actor->group = group; -} - inline void fopAcM_OnStatus(fopAc_ac_c* pActor, u32 flag) { pActor->actor_status |= flag; } @@ -215,6 +234,10 @@ inline fopAc_ac_c* fopAcM_SearchByID(unsigned int id) { return (fopAc_ac_c*)fopAcIt_Judge((fopAcIt_JudgeFunc)fpcSch_JudgeByID, &id); } +inline u32 fopAcM_GetLinkId(const fopAc_ac_c* pActor) { + return pActor->parentActorID; +} + inline cXyz* fopAcM_GetPosition_p(fopAc_ac_c* pActor) { return &pActor->current.pos; } @@ -260,11 +283,11 @@ inline void fopAcM_SetRoomNo(fopAc_ac_c* actor, s8 roomNo) { } inline void fopAcM_setHookCarryNow(fopAc_ac_c* actor) { - fopAcM_OnStatus(actor, 0x100000); + fopAcM_OnStatus(actor, fopAcM_STATUS_HOOK_CARRY_NOW); } inline void fopAcM_cancelHookCarryNow(fopAc_ac_c* actor) { - fopAcM_OffStatus(actor, 0x100000); + fopAcM_OffStatus(actor, fopAcM_STATUS_HOOK_CARRY_NOW); } inline s8 fopAcM_GetHomeRoomNo(const fopAc_ac_c* pActor) { @@ -275,6 +298,10 @@ inline void fopAcM_SetGravity(fopAc_ac_c* actor, f32 gravity) { actor->gravity = gravity; } +inline void fopAcM_SetGroup(fopAc_ac_c* actor, u8 group) { + actor->group = group; +} + inline void fopAcM_SetMaxFallSpeed(fopAc_ac_c* actor, f32 speed) { actor->maxFallSpeed = speed; } @@ -398,10 +425,6 @@ inline u16 fopAcM_GetSetId(const fopAc_ac_c* p_actor) { return p_actor->setID; } -inline u32 fopAcM_GetLinkId(const fopAc_ac_c* p_actor) { - return p_actor->parentActorID; -} - inline void dComIfGs_onActor(int bitNo, int roomNo); inline void fopAcM_onActor(const fopAc_ac_c* p_actor) { diff --git a/include/f_op/f_op_camera_mng.h b/include/f_op/f_op_camera_mng.h index 524611c760..bea066a964 100644 --- a/include/f_op/f_op_camera_mng.h +++ b/include/f_op/f_op_camera_mng.h @@ -3,7 +3,6 @@ #include "SSystem/SComponent/c_phase.h" #include "d/d_camera.h" -#include "dolphin/types.h" #include "f_op/f_op_view.h" typedef struct leafdraw_method_class leafdraw_method_class; diff --git a/include/f_op/f_op_kankyo_mng.h b/include/f_op/f_op_kankyo_mng.h index 0001d715f3..947489bcbf 100644 --- a/include/f_op/f_op_kankyo_mng.h +++ b/include/f_op/f_op_kankyo_mng.h @@ -1,7 +1,6 @@ #ifndef F_F_OP_KANKYO_MNG_H_ #define F_F_OP_KANKYO_MNG_H_ -#include "SSystem/SComponent/c_xyz.h" #include "f_op/f_op_kankyo.h" #include "f_pc/f_pc_manager.h" diff --git a/include/f_op/f_op_overlap_mng.h b/include/f_op/f_op_overlap_mng.h index 43a8fc1029..ddc709c0f3 100644 --- a/include/f_op/f_op_overlap_mng.h +++ b/include/f_op/f_op_overlap_mng.h @@ -2,7 +2,6 @@ #define F_F_OP_OVERLAP_MNG_H_ #include "f_op/f_op_overlap.h" -#include "f_pc/f_pc_manager.h" struct request_base_class; diff --git a/include/f_op/f_op_scene.h b/include/f_op/f_op_scene.h index 19f00e1ca0..65d1a4f234 100644 --- a/include/f_op/f_op_scene.h +++ b/include/f_op/f_op_scene.h @@ -2,7 +2,6 @@ #define F_F_OP_SCENE_H_ #include "f_op/f_op_scene_tag.h" -#include "f_pc/f_pc_node.h" struct request_of_phase_process_class; class mDoDvdThd_command_c; diff --git a/include/f_pc/f_pc_searcher.h b/include/f_pc/f_pc_searcher.h index 4b078a7887..ade5531a40 100644 --- a/include/f_pc/f_pc_searcher.h +++ b/include/f_pc/f_pc_searcher.h @@ -3,7 +3,6 @@ #define F_PC_SEARCHER_H_ #include "f_pc/f_pc_base.h" -#include "f_pc/f_pc_layer_iter.h" void* fpcSch_JudgeForPName(void* pProc, void* pUserData); void* fpcSch_JudgeByID(void* pProc, void* pUserData); diff --git a/include/m_Do/m_Do_ext.h b/include/m_Do/m_Do_ext.h index 84c3e66c00..ebb8b26be0 100644 --- a/include/m_Do/m_Do_ext.h +++ b/include/m_Do/m_Do_ext.h @@ -4,7 +4,6 @@ #include "JSystem/J3DGraphAnimator/J3DAnimation.h" #include "JSystem/J3DGraphAnimator/J3DModel.h" #include "Z2AudioLib/Z2SoundObject.h" -#include "global.h" #include "m_Do/m_Do_audio.h" #include "m_Do/m_Do_mtx.h" diff --git a/include/m_Do/m_Do_graphic.h b/include/m_Do/m_Do_graphic.h index f90b4c266d..0ab2c6136a 100644 --- a/include/m_Do/m_Do_graphic.h +++ b/include/m_Do/m_Do_graphic.h @@ -3,7 +3,6 @@ #include "JSystem/JFramework/JFWDisplay.h" #include "dolphin/mtx.h" -#include "dolphin/types.h" class JUTFader; diff --git a/include/m_Do/m_Do_machine_exception.h b/include/m_Do/m_Do_machine_exception.h index d03af12276..5e4539d876 100644 --- a/include/m_Do/m_Do_machine_exception.h +++ b/include/m_Do/m_Do_machine_exception.h @@ -1,7 +1,6 @@ #ifndef M_DO_M_DO_MACHINE_EXCEPTION_H #define M_DO_M_DO_MACHINE_EXCEPTION_H -#include "dolphin/gx.h" class JUTConsole; diff --git a/include/m_Do/m_Do_mtx.h b/include/m_Do/m_Do_mtx.h index 29e2e4cf81..c68d3c4e06 100644 --- a/include/m_Do/m_Do_mtx.h +++ b/include/m_Do/m_Do_mtx.h @@ -4,7 +4,6 @@ #include "SSystem/SComponent/c_sxyz.h" #include "SSystem/SComponent/c_xyz.h" #include "dolphin/mtx.h" -#include "dolphin/types.h" void mDoMtx_XYZrotS(Mtx, s16, s16, s16); void mDoMtx_XYZrotM(Mtx, s16, s16, s16); diff --git a/include/m_Do/m_Do_printf.h b/include/m_Do/m_Do_printf.h index 135529fb8a..1e7ba6d93c 100644 --- a/include/m_Do/m_Do_printf.h +++ b/include/m_Do/m_Do_printf.h @@ -2,7 +2,6 @@ #define M_DO_M_DO_PRINTF_H #include "__va_arg.h" -#include "m_Do/m_Do_main.h" void my_PutString(const char*); void mDoPrintf_vprintf_Interrupt(char const*, va_list); diff --git a/include/rel/d/a/b/d_a_b_bh/d_a_b_bh.h b/include/rel/d/a/b/d_a_b_bh/d_a_b_bh.h index 26e2730797..4841f1e49e 100644 --- a/include/rel/d/a/b/d_a_b_bh/d_a_b_bh.h +++ b/include/rel/d/a/b/d_a_b_bh/d_a_b_bh.h @@ -1,6 +1,4 @@ #ifndef D_A_B_BH_H #define D_A_B_BH_H -#include "dolphin/types.h" - #endif /* D_A_B_BH_H */ diff --git a/include/rel/d/a/b/d_a_b_bq/d_a_b_bq.h b/include/rel/d/a/b/d_a_b_bq/d_a_b_bq.h index 60a44737d9..d2d44c54cc 100644 --- a/include/rel/d/a/b/d_a_b_bq/d_a_b_bq.h +++ b/include/rel/d/a/b/d_a_b_bq/d_a_b_bq.h @@ -1,6 +1,4 @@ #ifndef D_A_B_BQ_H #define D_A_B_BQ_H -#include "dolphin/types.h" - #endif /* D_A_B_BQ_H */ diff --git a/include/rel/d/a/b/d_a_b_dr/d_a_b_dr.h b/include/rel/d/a/b/d_a_b_dr/d_a_b_dr.h index 1432ff6d70..c90f541bf1 100644 --- a/include/rel/d/a/b/d_a_b_dr/d_a_b_dr.h +++ b/include/rel/d/a/b/d_a_b_dr/d_a_b_dr.h @@ -1,8 +1,13 @@ #ifndef D_A_B_DR_H #define D_A_B_DR_H -#include "f_op/f_op_actor_mng.h" - +/** + * @ingroup actors-enemies + * @brief Argorok + * + * City in the Sky dungeon boss. + * + */ class daB_DR_c : public fopEn_enemy_c { public: /* 805BAF80 */ void ctrlJoint(J3DJoint*, J3DModel*); diff --git a/include/rel/d/a/b/d_a_b_ds/d_a_b_ds.h b/include/rel/d/a/b/d_a_b_ds/d_a_b_ds.h index a58d04c431..e7066588c9 100644 --- a/include/rel/d/a/b/d_a_b_ds/d_a_b_ds.h +++ b/include/rel/d/a/b/d_a_b_ds/d_a_b_ds.h @@ -1,15 +1,18 @@ #ifndef D_A_B_DS_H #define D_A_B_DS_H -#include "SSystem/SComponent/c_phase.h" -#include "f_op/f_op_actor.h" #include "Z2AudioLib/Z2Creature.h" -#include "d/bg/d_bg_s_acch.h" -#include "d/cc/d_cc_d.h" #include "d/cc/d_cc_uty.h" #include "d/msg/d_msg_flow.h" #include "m_Do/m_Do_ext.h" +/** + * @ingroup actors-enemies + * @brief Stallord + * + * Arbiter's Grounds dungeon boss. + * + */ class daB_DS_c : public fopEn_enemy_c { public: enum Arg0 { diff --git a/include/rel/d/a/b/d_a_b_gg/d_a_b_gg.h b/include/rel/d/a/b/d_a_b_gg/d_a_b_gg.h index 42e5c090f6..d0217c8507 100644 --- a/include/rel/d/a/b/d_a_b_gg/d_a_b_gg.h +++ b/include/rel/d/a/b/d_a_b_gg/d_a_b_gg.h @@ -1,6 +1,4 @@ #ifndef D_A_B_GG_H #define D_A_B_GG_H -#include "dolphin/types.h" - #endif /* D_A_B_GG_H */ diff --git a/include/rel/d/a/b/d_a_b_gm/d_a_b_gm.h b/include/rel/d/a/b/d_a_b_gm/d_a_b_gm.h index 2fca1198a9..08edd37b13 100644 --- a/include/rel/d/a/b/d_a_b_gm/d_a_b_gm.h +++ b/include/rel/d/a/b/d_a_b_gm/d_a_b_gm.h @@ -1,6 +1,4 @@ #ifndef D_A_B_GM_H #define D_A_B_GM_H -#include "dolphin/types.h" - #endif /* D_A_B_GM_H */ diff --git a/include/rel/d/a/b/d_a_b_gnd/d_a_b_gnd.h b/include/rel/d/a/b/d_a_b_gnd/d_a_b_gnd.h index f22becbb72..696db6c7b7 100644 --- a/include/rel/d/a/b/d_a_b_gnd/d_a_b_gnd.h +++ b/include/rel/d/a/b/d_a_b_gnd/d_a_b_gnd.h @@ -1,9 +1,6 @@ #ifndef D_A_B_GND_H #define D_A_B_GND_H -#include "d/bg/d_bg_s_acch.h" -#include "d/cc/d_cc_d.h" -#include "d/cc/d_cc_uty.h" #include "d/msg/d_msg_flow.h" #include "f_op/f_op_actor_mng.h" @@ -14,6 +11,13 @@ struct g_himo_s { /* 0x0 */ cXyz field_0x0[16]; }; +/** + * @ingroup actors-enemies + * @brief Ganondorf + * + * Hyrule Castle dungeon boss. + * + */ class b_gnd_class : public fopEn_enemy_c { public: /* 80601960 */ b_gnd_class(); diff --git a/include/rel/d/a/b/d_a_b_go/d_a_b_go.h b/include/rel/d/a/b/d_a_b_go/d_a_b_go.h index bb524ad0b2..84e33420b5 100644 --- a/include/rel/d/a/b/d_a_b_go/d_a_b_go.h +++ b/include/rel/d/a/b/d_a_b_go/d_a_b_go.h @@ -1,13 +1,18 @@ #ifndef D_A_B_GO_H #define D_A_B_GO_H -#include "f_op/f_op_actor_mng.h" #include "Z2AudioLib/Z2Creature.h" -#include "d/cc/d_cc_d.h" #include "d/cc/d_cc_uty.h" #define GORON_CHILD_MAX 31 +/** + * @ingroup actors-enemies + * @brief Goron Golem + * + * Unused golem boss made up of several small Gorons. + * + */ class b_go_class : public fopEn_enemy_c { public: /* 80603CA0 */ b_go_class(); diff --git a/include/rel/d/a/b/d_a_b_gos/d_a_b_gos.h b/include/rel/d/a/b/d_a_b_gos/d_a_b_gos.h index c823bdca94..f7821c0282 100644 --- a/include/rel/d/a/b/d_a_b_gos/d_a_b_gos.h +++ b/include/rel/d/a/b/d_a_b_gos/d_a_b_gos.h @@ -2,10 +2,16 @@ #define D_A_B_GOS_H #include "Z2AudioLib/Z2Creature.h" -#include "d/cc/d_cc_d.h" #include "d/cc/d_cc_uty.h" #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-enemies + * @brief Goron Golem (small) + * + * Unused golem boss made up of several small Gorons. + * + */ class b_gos_class : public fopEn_enemy_c { public: /* 80605024 */ b_gos_class(); diff --git a/include/rel/d/a/b/d_a_b_ob/d_a_b_ob.h b/include/rel/d/a/b/d_a_b_ob/d_a_b_ob.h index 967fd7137c..fd3d20ae9e 100644 --- a/include/rel/d/a/b/d_a_b_ob/d_a_b_ob.h +++ b/include/rel/d/a/b/d_a_b_ob/d_a_b_ob.h @@ -32,6 +32,13 @@ struct ob_ke_s { /* 0x1E0 */ cXyz field_0x1e0; }; // Size: 0x1EC +/** + * @ingroup actors-enemies + * @brief Morpheel (body) + * + * Lakebed Temple dungeon boss. This is the body part of the boss. + * + */ class b_ob_class : public fopEn_enemy_c { public: /* 8061A0C0 */ b_ob_class(); diff --git a/include/rel/d/a/b/d_a_b_oh/d_a_b_oh.h b/include/rel/d/a/b/d_a_b_oh/d_a_b_oh.h index efb2b49387..81ae182ea7 100644 --- a/include/rel/d/a/b/d_a_b_oh/d_a_b_oh.h +++ b/include/rel/d/a/b/d_a_b_oh/d_a_b_oh.h @@ -13,6 +13,13 @@ public: /* 0xC */ f32 mLength; }; +/** + * @ingroup actors-enemies + * @brief Morpheel (head) + * + * Lakebed Temple dungeon boss. This is the head part of the boss. + * + */ class b_oh_class : public fopEn_enemy_c { public: /* 0x05AC */ request_of_phase_process_class mPhase; diff --git a/include/rel/d/a/b/d_a_b_oh2/d_a_b_oh2.h b/include/rel/d/a/b/d_a_b_oh2/d_a_b_oh2.h index c88fe408c6..45c87a04d4 100644 --- a/include/rel/d/a/b/d_a_b_oh2/d_a_b_oh2.h +++ b/include/rel/d/a/b/d_a_b_oh2/d_a_b_oh2.h @@ -3,6 +3,13 @@ #include "rel/d/a/b/d_a_b_ob/d_a_b_ob.h" +/** + * @ingroup actors-enemies + * @brief Morpheel (tentacle) + * + * Lakebed Temple dungeon boss. This is the tentacle part of the boss. + * + */ class b_oh2_class : public fopEn_enemy_c { public: /* 0x5AC */ request_of_phase_process_class mPhase; diff --git a/include/rel/d/a/b/d_a_b_zant/d_a_b_zant.h b/include/rel/d/a/b/d_a_b_zant/d_a_b_zant.h index be7c86399f..46bca9dd3f 100644 --- a/include/rel/d/a/b/d_a_b_zant/d_a_b_zant.h +++ b/include/rel/d/a/b/d_a_b_zant/d_a_b_zant.h @@ -1,7 +1,13 @@ #ifndef D_A_B_ZANT_H #define D_A_B_ZANT_H - +/** + * @ingroup actors-enemies + * @brief Zant + * + * Palace of Twilight dungeon boss. + * + */ class daB_ZANT_c : public fopAc_ac_c { public: /* 8063E19C */ void ctrlJoint(J3DJoint*, J3DModel*); diff --git a/include/rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.h b/include/rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.h index 19970cc41c..2466d50d12 100644 --- a/include/rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.h +++ b/include/rel/d/a/b/d_a_b_zant_sima/d_a_b_zant_sima.h @@ -2,9 +2,15 @@ #define D_A_B_ZANT_SIMA_H #include "d/bg/d_bg_w.h" -#include "dolphin/types.h" #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-enemies + * @brief Zant (Goron Mines Phase) + * + * Palace of Twilight dungeon boss. This is the actor used during the Goron Mines part of the fight. + * + */ class daB_ZANTS_c : public fopAc_ac_c { public: /* 806529D8 */ int draw(); diff --git a/include/rel/d/a/d_a_andsw/d_a_andsw.h b/include/rel/d/a/d_a_andsw/d_a_andsw.h index d0be384f4c..bba855da9a 100644 --- a/include/rel/d/a/d_a_andsw/d_a_andsw.h +++ b/include/rel/d/a/d_a_andsw/d_a_andsw.h @@ -1,7 +1,6 @@ #ifndef D_A_ANDSW_H #define D_A_ANDSW_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class daAndsw_c : public fopAc_ac_c { diff --git a/include/rel/d/a/d_a_arrow/d_a_arrow.h b/include/rel/d/a/d_a_arrow/d_a_arrow.h index 470092a850..80e1d34523 100644 --- a/include/rel/d/a/d_a_arrow/d_a_arrow.h +++ b/include/rel/d/a/d_a_arrow/d_a_arrow.h @@ -2,9 +2,7 @@ #define D_A_ARROW_H #include "d/a/d_a_player.h" -#include "d/d_procname.h" #include "d/cc/d_cc_d.h" -#include "d/bg/d_bg_s_lin_chk.h" #include "d/particle/d_particle.h" #include "f_op/f_op_actor_mng.h" diff --git a/include/rel/d/a/d_a_bd/d_a_bd.h b/include/rel/d/a/d_a_bd/d_a_bd.h index f0d89455d8..93fc6c4f3c 100644 --- a/include/rel/d/a/d_a_bd/d_a_bd.h +++ b/include/rel/d/a/d_a_bd/d_a_bd.h @@ -1,6 +1,5 @@ #ifndef D_A_BD_H #define D_A_BD_H -#include "dolphin/types.h" #endif /* D_A_BD_H */ diff --git a/include/rel/d/a/d_a_boomerang/d_a_boomerang.h b/include/rel/d/a/d_a_boomerang/d_a_boomerang.h index 475a62a3f5..644112e8e1 100644 --- a/include/rel/d/a/d_a_boomerang/d_a_boomerang.h +++ b/include/rel/d/a/d_a_boomerang/d_a_boomerang.h @@ -2,9 +2,6 @@ #define D_A_BOOMERANG_H #include "JSystem/J2DGraph/J2DScreen.h" -#include "d/bg/d_bg_s_acch.h" -#include "d/bg/d_bg_s_lin_chk.h" -#include "d/cc/d_cc_d.h" #include "d/particle/d_particle_copoly.h" #include "f_op/f_op_actor_mng.h" @@ -62,6 +59,13 @@ private: class daAlink_c; +/** + * @ingroup actors-items + * @brief Gale Boomerang + * + * Forest Temple dungeon item. + * + */ class daBoomerang_c : public fopAc_ac_c { public: enum daBoomerang_FLG0 { diff --git a/include/rel/d/a/d_a_canoe/d_a_canoe.h b/include/rel/d/a/d_a_canoe/d_a_canoe.h index 70ffc9d0a7..64cdab8bc6 100644 --- a/include/rel/d/a/d_a_canoe/d_a_canoe.h +++ b/include/rel/d/a/d_a_canoe/d_a_canoe.h @@ -4,7 +4,6 @@ #include "f_op/f_op_actor_mng.h" #include "d/cc/d_cc_d.h" #include "d/bg/d_bg_s_acch.h" -#include "d/bg/d_bg_s_lin_chk.h" #include "SSystem/SComponent/c_phase.h" class daCanoe_c : public fopAc_ac_c { diff --git a/include/rel/d/a/d_a_cow/d_a_cow.h b/include/rel/d/a/d_a_cow/d_a_cow.h index e46d9f0070..8b1a131cae 100644 --- a/include/rel/d/a/d_a_cow/d_a_cow.h +++ b/include/rel/d/a/d_a_cow/d_a_cow.h @@ -1,7 +1,6 @@ #ifndef D_A_COW_H #define D_A_COW_H -#include "f_op/f_op_actor_mng.h" class daCow_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/d_a_crod/d_a_crod.h b/include/rel/d/a/d_a_crod/d_a_crod.h index dce13b69cf..503433579f 100644 --- a/include/rel/d/a/d_a_crod/d_a_crod.h +++ b/include/rel/d/a/d_a_crod/d_a_crod.h @@ -5,6 +5,13 @@ #include "d/cc/d_cc_d.h" #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-items + * @brief Dominion Rod + * + * Temple of Time dungeon item. + * + */ class daCrod_c : public fopAc_ac_c { public: /* 80141A94 */ void setControllActorData(); diff --git a/include/rel/d/a/d_a_cstaF/d_a_cstaF.h b/include/rel/d/a/d_a_cstaF/d_a_cstaF.h index bbd183c09b..da870375f0 100644 --- a/include/rel/d/a/d_a_cstaF/d_a_cstaF.h +++ b/include/rel/d/a/d_a_cstaF/d_a_cstaF.h @@ -3,7 +3,6 @@ #include "Z2AudioLib/Z2Creature.h" #include "d/bg/d_bg_s_movebg_actor.h" -#include "d/com/d_com_inf_game.h" #include "d/particle/d_particle_copoly.h" class daCstaF_c : public dBgS_MoveBgActor { diff --git a/include/rel/d/a/d_a_cstatue/d_a_cstatue.h b/include/rel/d/a/d_a_cstatue/d_a_cstatue.h index 3533acc1ce..88a685f4e2 100644 --- a/include/rel/d/a/d_a_cstatue/d_a_cstatue.h +++ b/include/rel/d/a/d_a_cstatue/d_a_cstatue.h @@ -1,10 +1,7 @@ #ifndef D_A_CSTATUE_H #define D_A_CSTATUE_H -#include "SSystem/SComponent/c_phase.h" #include "Z2AudioLib/Z2Creature.h" -#include "d/bg/d_bg_s_acch.h" -#include "d/cc/d_cc_d.h" #include "d/particle/d_particle_copoly.h" #include "f_op/f_op_actor.h" diff --git a/include/rel/d/a/d_a_do/d_a_do.h b/include/rel/d/a/d_a_do/d_a_do.h index 03335419ab..761f8807a2 100644 --- a/include/rel/d/a/d_a_do/d_a_do.h +++ b/include/rel/d/a/d_a_do/d_a_do.h @@ -4,9 +4,6 @@ #include "d/a/d_a_item_static.h" #include "d/a/d_a_player.h" #include "d/msg/d_msg_flow.h" -#include "dolphin/types.h" -#include "f_op/f_op_actor.h" -#include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_ext.h" #include "m_Do/m_Do_mtx.h" diff --git a/include/rel/d/a/d_a_dshutter/d_a_dshutter.h b/include/rel/d/a/d_a_dshutter/d_a_dshutter.h index 445f69a430..dd88fcded7 100644 --- a/include/rel/d/a/d_a_dshutter/d_a_dshutter.h +++ b/include/rel/d/a/d_a_dshutter/d_a_dshutter.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daDsh_c : public dBgS_MoveBgActor { public: diff --git a/include/rel/d/a/d_a_ep/d_a_ep.h b/include/rel/d/a/d_a_ep/d_a_ep.h index 74b6369143..73697193cb 100644 --- a/include/rel/d/a/d_a_ep/d_a_ep.h +++ b/include/rel/d/a/d_a_ep/d_a_ep.h @@ -1,6 +1,5 @@ #ifndef D_A_EP_H #define D_A_EP_H -#include "dolphin/types.h" #endif /* D_A_EP_H */ diff --git a/include/rel/d/a/d_a_formation_mng/d_a_formation_mng.h b/include/rel/d/a/d_a_formation_mng/d_a_formation_mng.h index 5b09bec33e..5fc0bc4326 100644 --- a/include/rel/d/a/d_a_formation_mng/d_a_formation_mng.h +++ b/include/rel/d/a/d_a_formation_mng/d_a_formation_mng.h @@ -1,12 +1,8 @@ #ifndef D_A_FORMATION_MNG_H #define D_A_FORMATION_MNG_H -#include "dolphin/types.h" -#include "f_op/f_op_actor.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/d_path.h" -#include "d/d_stage.h" #include "d/a/d_a_player.h" #include "d/kankyo/d_kankyo.h" #include "SSystem/SComponent/c_math.h" diff --git a/include/rel/d/a/d_a_guard_mng/d_a_guard_mng.h b/include/rel/d/a/d_a_guard_mng/d_a_guard_mng.h index 86cd0fb8d2..91b31f60c4 100644 --- a/include/rel/d/a/d_a_guard_mng/d_a_guard_mng.h +++ b/include/rel/d/a/d_a_guard_mng/d_a_guard_mng.h @@ -1,7 +1,6 @@ #ifndef D_A_GUARD_MNG_H #define D_A_GUARD_MNG_H -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" #include "rel/d/a/tag/d_a_tag_guard/d_a_tag_guard.h" diff --git a/include/rel/d/a/d_a_hitobj/d_a_hitobj.h b/include/rel/d/a/d_a_hitobj/d_a_hitobj.h index 496e8e053e..2d07fd53d8 100644 --- a/include/rel/d/a/d_a_hitobj/d_a_hitobj.h +++ b/include/rel/d/a/d_a_hitobj/d_a_hitobj.h @@ -1,7 +1,6 @@ #ifndef D_A_HITOBJ_H #define D_A_HITOBJ_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class hitobj_class : public fopAc_ac_c { diff --git a/include/rel/d/a/d_a_horse/d_a_horse.h b/include/rel/d/a/d_a_horse/d_a_horse.h index b8a484dda2..669751530d 100644 --- a/include/rel/d/a/d_a_horse/d_a_horse.h +++ b/include/rel/d/a/d_a_horse/d_a_horse.h @@ -7,7 +7,6 @@ #include "d/bg/d_bg_s_lin_chk.h" #include "d/cc/d_cc_d.h" #include "d/msg/d_msg_flow.h" -#include "f_op/f_op_actor.h" class daHorseRein_c { public: diff --git a/include/rel/d/a/d_a_hozelda/d_a_hozelda.h b/include/rel/d/a/d_a_hozelda/d_a_hozelda.h index 4cb4e4feb0..1928bfaf79 100644 --- a/include/rel/d/a/d_a_hozelda/d_a_hozelda.h +++ b/include/rel/d/a/d_a_hozelda/d_a_hozelda.h @@ -1,7 +1,6 @@ #ifndef D_A_HOZELDA_H #define D_A_HOZELDA_H -#include "dolphin/types.h" #include "f_op/f_op_actor_mng.h" class daHoZelda_matAnm_c : public J3DMaterialAnm { diff --git a/include/rel/d/a/d_a_izumi_gate/d_a_izumi_gate.h b/include/rel/d/a/d_a_izumi_gate/d_a_izumi_gate.h index 2811bea1eb..eeaaa7fa0d 100644 --- a/include/rel/d/a/d_a_izumi_gate/d_a_izumi_gate.h +++ b/include/rel/d/a/d_a_izumi_gate/d_a_izumi_gate.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daIzumiGate_c : public dBgS_MoveBgActor { public: diff --git a/include/rel/d/a/d_a_kago/d_a_kago.h b/include/rel/d/a/d_a_kago/d_a_kago.h index a543ff0cbe..f9d4392d3e 100644 --- a/include/rel/d/a/d_a_kago/d_a_kago.h +++ b/include/rel/d/a/d_a_kago/d_a_kago.h @@ -1,7 +1,6 @@ #ifndef D_A_KAGO_H #define D_A_KAGO_H -#include "f_op/f_op_actor_mng.h" #include "d/d_path.h" class daKago_c : public fopAc_ac_c { diff --git a/include/rel/d/a/d_a_mg_fshop/d_a_mg_fshop.h b/include/rel/d/a/d_a_mg_fshop/d_a_mg_fshop.h index 5579ded9ca..7c83101798 100644 --- a/include/rel/d/a/d_a_mg_fshop/d_a_mg_fshop.h +++ b/include/rel/d/a/d_a_mg_fshop/d_a_mg_fshop.h @@ -1,7 +1,6 @@ #ifndef D_A_MG_FSHOP_H #define D_A_MG_FSHOP_H -#include "m_Do/m_Do_ext.h" #include "d/bg/d_bg_s_acch.h" #include "f_op/f_op_actor.h" #include "SSystem/SComponent/c_phase.h" diff --git a/include/rel/d/a/d_a_mg_rod/d_a_mg_rod.h b/include/rel/d/a/d_a_mg_rod/d_a_mg_rod.h index fdf78b8bbc..03cda76124 100644 --- a/include/rel/d/a/d_a_mg_rod/d_a_mg_rod.h +++ b/include/rel/d/a/d_a_mg_rod/d_a_mg_rod.h @@ -1,8 +1,6 @@ #ifndef D_A_MG_ROD_H #define D_A_MG_ROD_H -#include "d/msg/d_msg_flow.h" -#include "f_op/f_op_actor.h" #include "Z2AudioLib/Z2Creature.h" #include "d/bg/d_bg_s_acch.h" #include "d/cc/d_cc_d.h" @@ -20,6 +18,11 @@ struct mg_hook_s { /* 0x18 */ u8 field_0x18[0x20 - 0x18]; }; +/** + * @ingroup actors-items + * @brief Fishing Rod + * + */ class dmg_rod_class : public fopAc_ac_c { public: /* 804BAC0C */ dmg_rod_class(); diff --git a/include/rel/d/a/d_a_midna/d_a_midna.h b/include/rel/d/a/d_a_midna/d_a_midna.h index b989d83650..4a58fa9a1d 100644 --- a/include/rel/d/a/d_a_midna/d_a_midna.h +++ b/include/rel/d/a/d_a_midna/d_a_midna.h @@ -1,11 +1,8 @@ #ifndef D_A_MIDNA_H #define D_A_MIDNA_H -#include "SSystem/SComponent/c_phase.h" #include "JSystem/J3DGraphBase/J3DMatBlock.h" #include "Z2AudioLib/Z2Creature.h" -#include "f_op/f_op_actor.h" -#include "d/bg/d_bg_s_lin_chk.h" #include "d/com/d_com_inf_game.h" #include "d/a/d_a_player.h" #include "d/msg/d_msg_flow.h" diff --git a/include/rel/d/a/d_a_myna/d_a_myna.h b/include/rel/d/a/d_a_myna/d_a_myna.h index 9fd473f905..9797efec13 100644 --- a/include/rel/d/a/d_a_myna/d_a_myna.h +++ b/include/rel/d/a/d_a_myna/d_a_myna.h @@ -1,11 +1,9 @@ #ifndef D_A_MYNA_H #define D_A_MYNA_H -#include "SSystem/SComponent/c_bg_s_gnd_chk.h" #include "Z2AudioLib/Z2Creature.h" #include "d/cc/d_cc_d.h" #include "d/msg/d_msg_flow.h" -#include "dolphin/types.h" #include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_ext.h" #include "m_Do/m_Do_hostIO.h" diff --git a/include/rel/d/a/d_a_nbomb/d_a_nbomb.h b/include/rel/d/a/d_a_nbomb/d_a_nbomb.h index d54e7cc6cd..ba6ba6adf1 100644 --- a/include/rel/d/a/d_a_nbomb/d_a_nbomb.h +++ b/include/rel/d/a/d_a_nbomb/d_a_nbomb.h @@ -1,6 +1,5 @@ #ifndef D_A_NBOMB_H #define D_A_NBOMB_H -#include "dolphin/types.h" #endif /* D_A_NBOMB_H */ diff --git a/include/rel/d/a/d_a_ni/d_a_ni.h b/include/rel/d/a/d_a_ni/d_a_ni.h index 7ed39d41c7..56340601fd 100644 --- a/include/rel/d/a/d_a_ni/d_a_ni.h +++ b/include/rel/d/a/d_a_ni/d_a_ni.h @@ -1,6 +1,5 @@ #ifndef D_A_NI_H #define D_A_NI_H -#include "f_op/f_op_actor_mng.h" #endif /* D_A_NI_H */ diff --git a/include/rel/d/a/d_a_spinner/d_a_spinner.h b/include/rel/d/a/d_a_spinner/d_a_spinner.h index 133fb20971..58032c261b 100644 --- a/include/rel/d/a/d_a_spinner/d_a_spinner.h +++ b/include/rel/d/a/d_a_spinner/d_a_spinner.h @@ -1,11 +1,17 @@ #ifndef D_A_SPINNER_H #define D_A_SPINNER_H -#include "d/com/d_com_inf_game.h" #include "d/d_path.h" #include "d/particle/d_particle_copoly.h" #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-items + * @brief Spinner + * + * Arbiter's Grounds dungeon item. + * + */ class daSpinner_c : public fopAc_ac_c { public: /* 804D198C */ int createHeap(); diff --git a/include/rel/d/a/d_a_startAndGoal/d_a_startAndGoal.h b/include/rel/d/a/d_a_startAndGoal/d_a_startAndGoal.h index 5b4e1ad24e..3e8d121ee7 100644 --- a/include/rel/d/a/d_a_startAndGoal/d_a_startAndGoal.h +++ b/include/rel/d/a/d_a_startAndGoal/d_a_startAndGoal.h @@ -1,6 +1,5 @@ #ifndef D_A_STARTANDGOAL_H #define D_A_STARTANDGOAL_H -#include "dolphin/types.h" #endif /* D_A_STARTANDGOAL_H */ diff --git a/include/rel/d/a/d_a_swTime/d_a_swTime.h b/include/rel/d/a/d_a_swTime/d_a_swTime.h index ca8034c1dd..4e36b154cd 100644 --- a/include/rel/d/a/d_a_swTime/d_a_swTime.h +++ b/include/rel/d/a/d_a_swTime/d_a_swTime.h @@ -1,7 +1,6 @@ #ifndef D_A_SWTIME_H #define D_A_SWTIME_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class daSwTime_c : public fopAc_ac_c { diff --git a/include/rel/d/a/d_a_swhit0/d_a_swhit0.h b/include/rel/d/a/d_a_swhit0/d_a_swhit0.h index 0a59b5568c..1935b2df5c 100644 --- a/include/rel/d/a/d_a_swhit0/d_a_swhit0.h +++ b/include/rel/d/a/d_a_swhit0/d_a_swhit0.h @@ -1,6 +1,5 @@ #ifndef D_A_SWHIT0_H #define D_A_SWHIT0_H -#include "dolphin/types.h" #endif /* D_A_SWHIT0_H */ diff --git a/include/rel/d/a/d_a_tbox/d_a_tbox.h b/include/rel/d/a/d_a_tbox/d_a_tbox.h index 1b05a72d4b..a171f01070 100644 --- a/include/rel/d/a/d_a_tbox/d_a_tbox.h +++ b/include/rel/d/a/d_a_tbox/d_a_tbox.h @@ -1,7 +1,6 @@ #ifndef D_A_TBOX_H #define D_A_TBOX_H -#include "SSystem/SComponent/c_phase.h" #include "d/cc/d_cc_d.h" #include "d/bg/d_bg_s_acch.h" #include "d/bg/d_bg_s_movebg_actor.h" diff --git a/include/rel/d/a/d_a_vrbox2/d_a_vrbox2.h b/include/rel/d/a/d_a_vrbox2/d_a_vrbox2.h index e2583c16a3..3034e94ea4 100644 --- a/include/rel/d/a/d_a_vrbox2/d_a_vrbox2.h +++ b/include/rel/d/a/d_a_vrbox2/d_a_vrbox2.h @@ -1,6 +1,5 @@ #ifndef D_A_VRBOX2_H #define D_A_VRBOX2_H -#include "f_op/f_op_actor_mng.h" #endif /* D_A_VRBOX2_H */ diff --git a/include/rel/d/a/d_a_ykgr/d_a_ykgr.h b/include/rel/d/a/d_a_ykgr/d_a_ykgr.h index a13b62e7d2..0a1060d8e6 100644 --- a/include/rel/d/a/d_a_ykgr/d_a_ykgr.h +++ b/include/rel/d/a/d_a_ykgr/d_a_ykgr.h @@ -1,12 +1,7 @@ #ifndef D_A_YKGR_H #define D_A_YKGR_H -#include "dolphin/types.h" -#include "JSystem/JParticle/JPAParticle.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" -#include "f_op/f_op_actor.h" -#include "f_op/f_op_camera_mng.h" #include "f_op/f_op_actor_mng.h" #include "d/d_path.h" #include "d/kankyo/d_kankyo_rain.h" diff --git a/include/rel/d/a/door/d_a_door_boss/d_a_door_boss.h b/include/rel/d/a/door/d_a_door_boss/d_a_door_boss.h index d24b27fe4d..585455c3b6 100644 --- a/include/rel/d/a/door/d_a_door_boss/d_a_door_boss.h +++ b/include/rel/d/a/door/d_a_door_boss/d_a_door_boss.h @@ -6,6 +6,11 @@ #include "d/bg/d_bg_s_acch.h" #include "d/bg/d_bg_w.h" +/** + * @ingroup actors-doors + * @brief Boss Door + * + */ class daBdoor_c : public fopAc_ac_c { public: enum Action { diff --git a/include/rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.h b/include/rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.h index a79636d5db..5fd7fc7f97 100644 --- a/include/rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.h +++ b/include/rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daDbDoor00_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/door/d_a_door_push/d_a_door_push.h b/include/rel/d/a/door/d_a_door_push/d_a_door_push.h index 2a104dfeb8..e931f6912f 100644 --- a/include/rel/d/a/door/d_a_door_push/d_a_door_push.h +++ b/include/rel/d/a/door/d_a_door_push/d_a_door_push.h @@ -4,7 +4,6 @@ #include "d/a/d_a_player.h" #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daDoorPush_c : public dBgS_MoveBgActor { public: diff --git a/include/rel/d/a/e/d_a_e_ai/d_a_e_ai.h b/include/rel/d/a/e/d_a_e_ai/d_a_e_ai.h index 478c5e9144..fffae02d54 100644 --- a/include/rel/d/a/e/d_a_e_ai/d_a_e_ai.h +++ b/include/rel/d/a/e/d_a_e_ai/d_a_e_ai.h @@ -1,6 +1,4 @@ #ifndef D_A_E_AI_H #define D_A_E_AI_H -#include "dolphin/types.h" - #endif /* D_A_E_AI_H */ diff --git a/include/rel/d/a/e/d_a_e_arrow/d_a_e_arrow.h b/include/rel/d/a/e/d_a_e_arrow/d_a_e_arrow.h index 28439659dd..f5ec332e1f 100644 --- a/include/rel/d/a/e/d_a_e_arrow/d_a_e_arrow.h +++ b/include/rel/d/a/e/d_a_e_arrow/d_a_e_arrow.h @@ -1,7 +1,6 @@ #ifndef D_A_E_ARROW_H #define D_A_E_ARROW_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" enum e_arrow_action { @@ -19,6 +18,11 @@ enum e_arrow_type { ARROW_TYPE_BOMB, }; +/** +* @ingroup actors-enemies +* @brief Enemy arrow +* +*/ class e_arrow_class : public fopEn_enemy_c { public: /* 0x5AC */ request_of_phase_process_class mPhase; diff --git a/include/rel/d/a/e/d_a_e_ba/d_a_e_ba.h b/include/rel/d/a/e/d_a_e_ba/d_a_e_ba.h index a6dad28bc0..f1dcc89c7b 100644 --- a/include/rel/d/a/e/d_a_e_ba/d_a_e_ba.h +++ b/include/rel/d/a/e/d_a_e_ba/d_a_e_ba.h @@ -1,6 +1,4 @@ #ifndef D_A_E_BA_H #define D_A_E_BA_H -#include "dolphin/types.h" - #endif /* D_A_E_BA_H */ diff --git a/include/rel/d/a/e/d_a_e_bee/d_a_e_bee.h b/include/rel/d/a/e/d_a_e_bee/d_a_e_bee.h index b4e664b851..32e22d0bf5 100644 --- a/include/rel/d/a/e/d_a_e_bee/d_a_e_bee.h +++ b/include/rel/d/a/e/d_a_e_bee/d_a_e_bee.h @@ -5,7 +5,6 @@ #include "SSystem/SComponent/c_phase.h" #include "Z2AudioLib/Z2Creature.h" #include "d/cc/d_cc_d.h" -#include "dolphin/types.h" struct bee_s { enum Action { @@ -44,6 +43,11 @@ struct bee_s { STATIC_ASSERT(sizeof(bee_s) == 0x74); +/** +* @ingroup actors-enemies +* @brief Bee +* +*/ class e_bee_class : public fopAc_ac_c { public: /* 0x0568 */ request_of_phase_process_class mPhase; diff --git a/include/rel/d/a/e/d_a_e_bi/d_a_e_bi.h b/include/rel/d/a/e/d_a_e_bi/d_a_e_bi.h index 5505b69263..7db9cee1c9 100644 --- a/include/rel/d/a/e/d_a_e_bi/d_a_e_bi.h +++ b/include/rel/d/a/e/d_a_e_bi/d_a_e_bi.h @@ -1,6 +1,4 @@ #ifndef D_A_E_BI_H #define D_A_E_BI_H -#include "dolphin/types.h" - #endif /* D_A_E_BI_H */ diff --git a/include/rel/d/a/e/d_a_e_bi_leaf/d_a_e_bi_leaf.h b/include/rel/d/a/e/d_a_e_bi_leaf/d_a_e_bi_leaf.h index 4d3258b437..64c8f822cd 100644 --- a/include/rel/d/a/e/d_a_e_bi_leaf/d_a_e_bi_leaf.h +++ b/include/rel/d/a/e/d_a_e_bi_leaf/d_a_e_bi_leaf.h @@ -3,6 +3,11 @@ #include "f_op/f_op_actor_mng.h" +/** +* @ingroup actors-enemies +* @brief Bombling Leaf +* +*/ class e_bi_leaf_class : public fopEn_enemy_c { public: /* 0x5AC */ request_of_phase_process_class mPhase; diff --git a/include/rel/d/a/e/d_a_e_bs/d_a_e_bs.h b/include/rel/d/a/e/d_a_e_bs/d_a_e_bs.h index 20867fe1c7..d6acaaf209 100644 --- a/include/rel/d/a/e/d_a_e_bs/d_a_e_bs.h +++ b/include/rel/d/a/e/d_a_e_bs/d_a_e_bs.h @@ -1,6 +1,4 @@ #ifndef D_A_E_BS_H #define D_A_E_BS_H -#include "dolphin/types.h" - #endif /* D_A_E_BS_H */ diff --git a/include/rel/d/a/e/d_a_e_bu/d_a_e_bu.h b/include/rel/d/a/e/d_a_e_bu/d_a_e_bu.h index 00f05a0d8d..7d94c91991 100644 --- a/include/rel/d/a/e/d_a_e_bu/d_a_e_bu.h +++ b/include/rel/d/a/e/d_a_e_bu/d_a_e_bu.h @@ -1,6 +1,4 @@ #ifndef D_A_E_BU_H #define D_A_E_BU_H -#include "dolphin/types.h" - #endif /* D_A_E_BU_H */ diff --git a/include/rel/d/a/e/d_a_e_cr/d_a_e_cr.h b/include/rel/d/a/e/d_a_e_cr/d_a_e_cr.h index 7499a900ba..dd9597622c 100644 --- a/include/rel/d/a/e/d_a_e_cr/d_a_e_cr.h +++ b/include/rel/d/a/e/d_a_e_cr/d_a_e_cr.h @@ -1,6 +1,4 @@ #ifndef D_A_E_CR_H #define D_A_E_CR_H -#include "dolphin/types.h" - #endif /* D_A_E_CR_H */ diff --git a/include/rel/d/a/e/d_a_e_cr_egg/d_a_e_cr_egg.h b/include/rel/d/a/e/d_a_e_cr_egg/d_a_e_cr_egg.h index 91eb041414..9ba682be2d 100644 --- a/include/rel/d/a/e/d_a_e_cr_egg/d_a_e_cr_egg.h +++ b/include/rel/d/a/e/d_a_e_cr_egg/d_a_e_cr_egg.h @@ -1,6 +1,4 @@ #ifndef D_A_E_CR_EGG_H #define D_A_E_CR_EGG_H -#include "dolphin/types.h" - #endif /* D_A_E_CR_EGG_H */ diff --git a/include/rel/d/a/e/d_a_e_db/d_a_e_db.h b/include/rel/d/a/e/d_a_e_db/d_a_e_db.h index bc50d898a9..f9d969b083 100644 --- a/include/rel/d/a/e/d_a_e_db/d_a_e_db.h +++ b/include/rel/d/a/e/d_a_e_db/d_a_e_db.h @@ -1,6 +1,4 @@ #ifndef D_A_E_DB_H #define D_A_E_DB_H -#include "dolphin/types.h" - #endif /* D_A_E_DB_H */ diff --git a/include/rel/d/a/e/d_a_e_db_leaf/d_a_e_db_leaf.h b/include/rel/d/a/e/d_a_e_db_leaf/d_a_e_db_leaf.h index e499ac89e5..fa30657417 100644 --- a/include/rel/d/a/e/d_a_e_db_leaf/d_a_e_db_leaf.h +++ b/include/rel/d/a/e/d_a_e_db_leaf/d_a_e_db_leaf.h @@ -1,10 +1,14 @@ #ifndef D_A_E_DB_LEAF_H #define D_A_E_DB_LEAF_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "dolphin/types.h" +/** +* @ingroup actors-enemies +* @brief Deku Baba Leaf +* +*/ class e_db_leaf_class : public fopEn_enemy_c { public: /* 0x5AC */ request_of_phase_process_class mPhase; diff --git a/include/rel/d/a/e/d_a_e_dd/d_a_e_dd.h b/include/rel/d/a/e/d_a_e_dd/d_a_e_dd.h index 7be91af9c2..9776ea2039 100644 --- a/include/rel/d/a/e/d_a_e_dd/d_a_e_dd.h +++ b/include/rel/d/a/e/d_a_e_dd/d_a_e_dd.h @@ -1,6 +1,4 @@ #ifndef D_A_E_DD_H #define D_A_E_DD_H -#include "dolphin/types.h" - #endif /* D_A_E_DD_H */ diff --git a/include/rel/d/a/e/d_a_e_df/d_a_e_df.h b/include/rel/d/a/e/d_a_e_df/d_a_e_df.h index f585502970..67f48a5384 100644 --- a/include/rel/d/a/e/d_a_e_df/d_a_e_df.h +++ b/include/rel/d/a/e/d_a_e_df/d_a_e_df.h @@ -1,6 +1,4 @@ #ifndef D_A_E_DF_H #define D_A_E_DF_H -#include "dolphin/types.h" - #endif /* D_A_E_DF_H */ diff --git a/include/rel/d/a/e/d_a_e_dn/d_a_e_dn.h b/include/rel/d/a/e/d_a_e_dn/d_a_e_dn.h index da7563f263..800ec5b624 100644 --- a/include/rel/d/a/e/d_a_e_dn/d_a_e_dn.h +++ b/include/rel/d/a/e/d_a_e_dn/d_a_e_dn.h @@ -1,6 +1,4 @@ #ifndef D_A_E_DN_H #define D_A_E_DN_H -#include "dolphin/types.h" - #endif /* D_A_E_DN_H */ diff --git a/include/rel/d/a/e/d_a_e_fk/d_a_e_fk.h b/include/rel/d/a/e/d_a_e_fk/d_a_e_fk.h index ed235c2a99..b1cb482fdf 100644 --- a/include/rel/d/a/e/d_a_e_fk/d_a_e_fk.h +++ b/include/rel/d/a/e/d_a_e_fk/d_a_e_fk.h @@ -1,6 +1,4 @@ #ifndef D_A_E_FK_H #define D_A_E_FK_H -#include "dolphin/types.h" - #endif /* D_A_E_FK_H */ diff --git a/include/rel/d/a/e/d_a_e_fm/d_a_e_fm.h b/include/rel/d/a/e/d_a_e_fm/d_a_e_fm.h index c6f2e3aeed..e8c5a76b9f 100644 --- a/include/rel/d/a/e/d_a_e_fm/d_a_e_fm.h +++ b/include/rel/d/a/e/d_a_e_fm/d_a_e_fm.h @@ -1,6 +1,4 @@ #ifndef D_A_E_FM_H #define D_A_E_FM_H -#include "dolphin/types.h" - #endif /* D_A_E_FM_H */ diff --git a/include/rel/d/a/e/d_a_e_fs/d_a_e_fs.h b/include/rel/d/a/e/d_a_e_fs/d_a_e_fs.h index 8a4668bf02..0a713fbe5e 100644 --- a/include/rel/d/a/e/d_a_e_fs/d_a_e_fs.h +++ b/include/rel/d/a/e/d_a_e_fs/d_a_e_fs.h @@ -1,6 +1,4 @@ #ifndef D_A_E_FS_H #define D_A_E_FS_H -#include "dolphin/types.h" - #endif /* D_A_E_FS_H */ diff --git a/include/rel/d/a/e/d_a_e_fz/d_a_e_fz.h b/include/rel/d/a/e/d_a_e_fz/d_a_e_fz.h index 01065836ef..2b68f413a8 100644 --- a/include/rel/d/a/e/d_a_e_fz/d_a_e_fz.h +++ b/include/rel/d/a/e/d_a_e_fz/d_a_e_fz.h @@ -1,6 +1,181 @@ +/** +* @file d_a_e_fz.h +* This header contains information about the Mini Freezard actor. +* +*/ + #ifndef D_A_E_FZ_H #define D_A_E_FZ_H -#include "dolphin/types.h" +#include "Z2AudioLib/Z2Creature.h" +#include "d/cc/d_cc_uty.h" +#include "m_Do/m_Do_hostIO.h" + +/** + * \enum daE_FZ_Action + * \brief Mini Freezard current action. + * + */ +enum daE_FZ_Action { + ACT_WAIT, /**< Mini Freezard is waiting. */ + ACT_MOVE, /**< Mini Freezard is moving to attack. */ + ACT_ATTACK, /**< Mini Freezard is attacking. */ + ACT_DAMAGE, /**< Mini Freezard is damaged. */ + ACT_ROLLMOVE /**< Mini Freezard is spinning around Blizzeta. This action is only taken when actor is loaded in with parameter 3 (aka, during the Blizzeta fight).*/ +}; + +/** + * \brief Temporary HIO struct to get a match. Remove later. + * + */ +struct daE_FZ_HIO_c_tmp { + void* vtable; + /* 0x04 */ s8 field_0x04; + /* 0x05 */ u8 field_0x05[0x06 - 0x05]; + /* 0x06 */ s16 field_0x06; + /* 0x08 */ s16 field_0x08; + /* 0x0A */ u8 field_0x0A[0x0C - 0x0A]; + /* 0x0C */ f32 field_0x0c; + /* 0x10 */ f32 field_0x10; + /* 0x14 */ f32 field_0x14; + /* 0x18 */ f32 field_0x18; + /* 0x1C */ f32 field_0x1c; + /* 0x20 */ f32 field_0x20; + /* 0x24 */ f32 field_0x24; + /* 0x28 */ f32 field_0x28; + /* 0x2C */ f32 field_0x2c; + /* 0x30 */ f32 field_0x30; + /* 0x34 */ f32 field_0x34; +}; + +/** + * @ingroup actors-enemies + * @brief Mini Freezard + * + */ +class daE_FZ_c : public fopEn_enemy_c { +public: + /* 806BE9D4 */ s32 draw(); + /* 806BEAF8 */ void setActionMode(int, int); + /* 806BEB04 */ void setReflectAngle(); + /* 806BEBA0 */ void mBoundSoundset(); + /* 806BEC08 */ void deadnextSet(bool); + /* 806BED34 */ void damage_check(); + /* 806BF444 */ bool way_gake_check(); + /* 806BF58C */ void executeWait(); + /* 806BF8E8 */ void executeMove(); + /* 806BFA64 */ void executeAttack(); + /* 806BFB60 */ void executeDamage(); + /* 806BFF94 */ void executeRollMove(); + /* 806C0224 */ void action(); + /* 806C06DC */ void mtx_set(); + /* 806C0760 */ void cc_set(); + /* 806C08C4 */ s32 execute(); + /* 806C0B20 */ void demoDelete(); + /* 806C0B94 */ s32 _delete(); + /* 806C0C28 */ s32 CreateHeap(); + /* 806C0CD0 */ s32 create(); + +private: + /* 0x5AC */ request_of_phase_process_class mPhaseReq; /**< Phase request used when creating the actor. */ + /* 0x5B4 */ J3DModel* mpModel; /**< Pointer to the Mini Freezard's model. */ + /* 0x5B8 */ mDoExt_invisibleModel mInvisibleModel; + /* 0x5C0 */ Z2CreatureEnemy mCreature; /**< Z2CreatureEnemy class used for playing sound effects. */ + /* 0x664 */ cXyz field_0x664; + /* 0x670 */ cXyz field_0x670; + /* 0x67C */ cXyz field_0x67c[4]; + /* 0x6AC */ cXyz field_0x6ac[4]; + /* 0x6DC */ cXyz field_0x6dc; + /* 0x6E8 */ cXyz field_0x6e8; + /* 0x6F4 */ s32 mActionMode; /**< Mini Freezard current action mode. */ + /* 0x6F8 */ s32 mActionPhase; /**< Mini Freezard phase of current action mode. */ + /* 0x6FC */ f32 field_0x6fc; + /* 0x700 */ f32 mRadiusBase; /**< Base radius value used by mSph1 and mSph2. */ + /* 0x704 */ s16 field_0x704; + /* 0x706 */ s16 mAngleFromPlayer; /**< Angle the mini freezard is from the player. */ + /* 0x708 */ s16 mLastWallHitAngle; /**< Angle of the last wall the mini freezard hit. */ + /* 0x70A */ u8 field_0x70A[0x70C - 0x70A]; + /* 0x70C */ s32 field_0x70c; + /* 0x710 */ u8 field_0x710; + /* 0x711 */ u8 field_0x711; + /* 0x712 */ u8 field_0x712; + /* 0x713 */ u8 field_0x713; + /* 0x714 */ u8 field_0x714; + /* 0x715 */ u8 field_0x715; + /* 0x716 */ u8 field_0x716; + /* 0x717 */ u8 field_0x717; + /* 0x718 */ fopAc_ac_c* mpBlizzetaActor; /**< Pointer to Blizzeta's actor (if used). Used to figure out what the mini freezard's angle and positioning should be when Blizzeta is attacking with them.*/ + /* 0x71C */ u32 field_0x71c[3]; + /* 0x728 */ u8 field_0x728[4]; + /* 0x72C */ dBgS_AcchCir mAcchCir; + /* 0x76C */ dBgS_ObjAcch mObjAcch; + /* 0x944 */ dCcD_Stts mStts; + /* 0x980 */ dCcD_Sph mSph1; /**< Mini Freezard's sphere collider used for ? */ + /* 0xAB8 */ dCcD_Sph mSph2; /**< Mini Freezard's sphere collider used for attacking. */ + /* 0xBF0 */ dCcU_AtInfo mAtInfo; + /* 0xC14 */ u8 field_0xc14; + /* 0xC15 */ u8 field_0xc15; + /* 0xC16 */ u8 field_0xc16; + /* 0xC17 */ u8 field_0xc17; + /* 0xC18 */ u8 field_0xc18; + /* 0xC19 */ u8 field_0xc19; + /* 0xC1A */ u8 field_0xc1a; + /* 0xC1B */ u8 field_0xc1b; + /* 0xC1C */ u8 field_0xc1c; + /* 0xC1D */ u8 field_0xc1d; + /* 0xC1E */ u8 field_0xc1e; + /* 0xC1F */ u8 field_0xc1f; + /* 0xC20 */ u8 field_0xc20; + /* 0xC21 */ u8 field_0xc21; + /* 0xC22 */ u8 field_0xc22; + /* 0xC23 */ u8 field_0xc23; +}; +STATIC_ASSERT(sizeof(daE_FZ_c) == 0xC24); + +class daE_FZ_HIO_c : public mDoHIO_entry_c { +public: + /* 806BE94C */ daE_FZ_HIO_c(); + /* 806C1440 */ virtual ~daE_FZ_HIO_c(); + +public: + /* 0x04 */ s8 field_0x04; + /* 0x05 */ u8 field_0x05[0x06 - 0x05]; + /* 0x06 */ s16 field_0x06; + /* 0x08 */ s16 field_0x08; + /* 0x0A */ u8 field_0x0A[0x0C - 0x0A]; + /* 0x0C */ f32 field_0x0c; + /* 0x10 */ f32 field_0x10; + /* 0x14 */ f32 field_0x14; + /* 0x18 */ f32 field_0x18; + /* 0x1C */ f32 field_0x1c; + /* 0x20 */ f32 field_0x20; + /* 0x24 */ f32 field_0x24; + /* 0x28 */ f32 field_0x28; + /* 0x2C */ f32 field_0x2c; + /* 0x30 */ f32 field_0x30; + /* 0x34 */ f32 field_0x34; +}; + +/** + * \brief Blizzeta's actor class. Reference in proper header later when it has been reversed. + * + */ +class daB_YO_c : public fopEn_enemy_c { +public: + u8 getModelNo() { return mModelNo;} + s16 getFrizadRollAngle() { return mRollAngle;} + f32 getModeRarius() { return mModeRarius;} + u8 getFrizadAttack() { return mFrizadAttack;} + +private: + /* 0x5AC */ u8 field_0x5ac[0xF54 - 0x5AC]; + /* 0xF54 */ f32 mModeRarius; + /* 0xF58 */ u8 field_0xf58[0xF5C - 0xF58]; + /* 0xF5C */ s16 mRollAngle; + /* 0xF5E */ u8 field_0xf5e[0xFA8 - 0xF5E]; + /* 0xFA8 */ u8 mModelNo; + /* 0xFA9 */ u8 field_0xfa9[0xFAD - 0xFA9]; + /* 0xFAD */ u8 mFrizadAttack; +}; #endif /* D_A_E_FZ_H */ diff --git a/include/rel/d/a/e/d_a_e_gb/d_a_e_gb.h b/include/rel/d/a/e/d_a_e_gb/d_a_e_gb.h index a3c3c229a2..40ed0d557b 100644 --- a/include/rel/d/a/e/d_a_e_gb/d_a_e_gb.h +++ b/include/rel/d/a/e/d_a_e_gb/d_a_e_gb.h @@ -1,6 +1,4 @@ #ifndef D_A_E_GB_H #define D_A_E_GB_H -#include "dolphin/types.h" - #endif /* D_A_E_GB_H */ diff --git a/include/rel/d/a/e/d_a_e_ge/d_a_e_ge.h b/include/rel/d/a/e/d_a_e_ge/d_a_e_ge.h index 7783021ead..9a901cd44a 100644 --- a/include/rel/d/a/e/d_a_e_ge/d_a_e_ge.h +++ b/include/rel/d/a/e/d_a_e_ge/d_a_e_ge.h @@ -8,6 +8,11 @@ struct daE_GE_HIO_c { /* 806CCA58 */ ~daE_GE_HIO_c(); }; +/** +* @ingroup actors-enemies +* @brief Guay +* +*/ class daE_GE_c : public fopEn_enemy_c { public: u8 getGroupNo() { diff --git a/include/rel/d/a/e/d_a_e_gob/d_a_e_gob.h b/include/rel/d/a/e/d_a_e_gob/d_a_e_gob.h index b7021693ff..093bf97ede 100644 --- a/include/rel/d/a/e/d_a_e_gob/d_a_e_gob.h +++ b/include/rel/d/a/e/d_a_e_gob/d_a_e_gob.h @@ -1,6 +1,4 @@ #ifndef D_A_E_GOB_H #define D_A_E_GOB_H -#include "dolphin/types.h" - #endif /* D_A_E_GOB_H */ diff --git a/include/rel/d/a/e/d_a_e_hb/d_a_e_hb.h b/include/rel/d/a/e/d_a_e_hb/d_a_e_hb.h index 915a557997..ad2881a39b 100644 --- a/include/rel/d/a/e/d_a_e_hb/d_a_e_hb.h +++ b/include/rel/d/a/e/d_a_e_hb/d_a_e_hb.h @@ -1,6 +1,4 @@ #ifndef D_A_E_HB_H #define D_A_E_HB_H -#include "dolphin/types.h" - #endif /* D_A_E_HB_H */ diff --git a/include/rel/d/a/e/d_a_e_hb_leaf/d_a_e_hb_leaf.h b/include/rel/d/a/e/d_a_e_hb_leaf/d_a_e_hb_leaf.h index d5afb018b2..10192cbf89 100644 --- a/include/rel/d/a/e/d_a_e_hb_leaf/d_a_e_hb_leaf.h +++ b/include/rel/d/a/e/d_a_e_hb_leaf/d_a_e_hb_leaf.h @@ -3,6 +3,11 @@ #include "f_op/f_op_actor_mng.h" +/** +* @ingroup actors-enemies +* @brief Snake Baba Leaf +* +*/ class e_hb_leaf_class : public fopEn_enemy_c { public: /* 0x5AC */ request_of_phase_process_class mPhase; diff --git a/include/rel/d/a/e/d_a_e_hz/d_a_e_hz.h b/include/rel/d/a/e/d_a_e_hz/d_a_e_hz.h index 7ff17fa8fb..6f80a83a03 100644 --- a/include/rel/d/a/e/d_a_e_hz/d_a_e_hz.h +++ b/include/rel/d/a/e/d_a_e_hz/d_a_e_hz.h @@ -1,6 +1,4 @@ #ifndef D_A_E_HZ_H #define D_A_E_HZ_H -#include "dolphin/types.h" - #endif /* D_A_E_HZ_H */ diff --git a/include/rel/d/a/e/d_a_e_hzelda/d_a_e_hzelda.h b/include/rel/d/a/e/d_a_e_hzelda/d_a_e_hzelda.h index de2fc677b0..b322facb90 100644 --- a/include/rel/d/a/e/d_a_e_hzelda/d_a_e_hzelda.h +++ b/include/rel/d/a/e/d_a_e_hzelda/d_a_e_hzelda.h @@ -1,6 +1,4 @@ #ifndef D_A_E_HZELDA_H #define D_A_E_HZELDA_H -#include "dolphin/types.h" - #endif /* D_A_E_HZELDA_H */ diff --git a/include/rel/d/a/e/d_a_e_is/d_a_e_is.h b/include/rel/d/a/e/d_a_e_is/d_a_e_is.h index fe55aadc27..644085cebd 100644 --- a/include/rel/d/a/e/d_a_e_is/d_a_e_is.h +++ b/include/rel/d/a/e/d_a_e_is/d_a_e_is.h @@ -1,6 +1,4 @@ #ifndef D_A_E_IS_H #define D_A_E_IS_H -#include "dolphin/types.h" - #endif /* D_A_E_IS_H */ diff --git a/include/rel/d/a/e/d_a_e_kg/d_a_e_kg.h b/include/rel/d/a/e/d_a_e_kg/d_a_e_kg.h index c179be44b9..a58f13abd6 100644 --- a/include/rel/d/a/e/d_a_e_kg/d_a_e_kg.h +++ b/include/rel/d/a/e/d_a_e_kg/d_a_e_kg.h @@ -1,6 +1,4 @@ #ifndef D_A_E_KG_H #define D_A_E_KG_H -#include "dolphin/types.h" - #endif /* D_A_E_KG_H */ diff --git a/include/rel/d/a/e/d_a_e_kr/d_a_e_kr.h b/include/rel/d/a/e/d_a_e_kr/d_a_e_kr.h index 546d134044..ba1310cf1a 100644 --- a/include/rel/d/a/e/d_a_e_kr/d_a_e_kr.h +++ b/include/rel/d/a/e/d_a_e_kr/d_a_e_kr.h @@ -1,6 +1,4 @@ #ifndef D_A_E_KR_H #define D_A_E_KR_H -#include "dolphin/types.h" - #endif /* D_A_E_KR_H */ diff --git a/include/rel/d/a/e/d_a_e_mb/d_a_e_mb.h b/include/rel/d/a/e/d_a_e_mb/d_a_e_mb.h index 92909a0931..bfafb23127 100644 --- a/include/rel/d/a/e/d_a_e_mb/d_a_e_mb.h +++ b/include/rel/d/a/e/d_a_e_mb/d_a_e_mb.h @@ -1,6 +1,4 @@ #ifndef D_A_E_MB_H #define D_A_E_MB_H -#include "dolphin/types.h" - #endif /* D_A_E_MB_H */ diff --git a/include/rel/d/a/e/d_a_e_md/d_a_e_md.h b/include/rel/d/a/e/d_a_e_md/d_a_e_md.h index 949034d607..9183de5f19 100644 --- a/include/rel/d/a/e/d_a_e_md/d_a_e_md.h +++ b/include/rel/d/a/e/d_a_e_md/d_a_e_md.h @@ -1,6 +1,4 @@ #ifndef D_A_E_MD_H #define D_A_E_MD_H -#include "dolphin/types.h" - #endif /* D_A_E_MD_H */ diff --git a/include/rel/d/a/e/d_a_e_mf/d_a_e_mf.h b/include/rel/d/a/e/d_a_e_mf/d_a_e_mf.h index 675285a730..5b6eff96e2 100644 --- a/include/rel/d/a/e/d_a_e_mf/d_a_e_mf.h +++ b/include/rel/d/a/e/d_a_e_mf/d_a_e_mf.h @@ -1,6 +1,4 @@ #ifndef D_A_E_MF_H #define D_A_E_MF_H -#include "dolphin/types.h" - #endif /* D_A_E_MF_H */ diff --git a/include/rel/d/a/e/d_a_e_mk/d_a_e_mk.h b/include/rel/d/a/e/d_a_e_mk/d_a_e_mk.h index 0f2674b71a..4852c6f3b7 100644 --- a/include/rel/d/a/e/d_a_e_mk/d_a_e_mk.h +++ b/include/rel/d/a/e/d_a_e_mk/d_a_e_mk.h @@ -1,6 +1,4 @@ #ifndef D_A_E_MK_H #define D_A_E_MK_H -#include "dolphin/types.h" - #endif /* D_A_E_MK_H */ diff --git a/include/rel/d/a/e/d_a_e_mk_bo/d_a_e_mk_bo.h b/include/rel/d/a/e/d_a_e_mk_bo/d_a_e_mk_bo.h index 7928c90a01..efbb4d2e44 100644 --- a/include/rel/d/a/e/d_a_e_mk_bo/d_a_e_mk_bo.h +++ b/include/rel/d/a/e/d_a_e_mk_bo/d_a_e_mk_bo.h @@ -1,6 +1,4 @@ #ifndef D_A_E_MK_BO_H #define D_A_E_MK_BO_H -#include "dolphin/types.h" - #endif /* D_A_E_MK_BO_H */ diff --git a/include/rel/d/a/e/d_a_e_mm/d_a_e_mm.h b/include/rel/d/a/e/d_a_e_mm/d_a_e_mm.h index e6e85e842d..63e5969cc6 100644 --- a/include/rel/d/a/e/d_a_e_mm/d_a_e_mm.h +++ b/include/rel/d/a/e/d_a_e_mm/d_a_e_mm.h @@ -1,6 +1,4 @@ #ifndef D_A_E_MM_H #define D_A_E_MM_H -#include "dolphin/types.h" - #endif /* D_A_E_MM_H */ diff --git a/include/rel/d/a/e/d_a_e_mm_mt/d_a_e_mm_mt.h b/include/rel/d/a/e/d_a_e_mm_mt/d_a_e_mm_mt.h index 23ea53a4ab..97e6468859 100644 --- a/include/rel/d/a/e/d_a_e_mm_mt/d_a_e_mm_mt.h +++ b/include/rel/d/a/e/d_a_e_mm_mt/d_a_e_mm_mt.h @@ -1,6 +1,4 @@ #ifndef D_A_E_MM_MT_H #define D_A_E_MM_MT_H -#include "dolphin/types.h" - #endif /* D_A_E_MM_MT_H */ diff --git a/include/rel/d/a/e/d_a_e_ms/d_a_e_ms.h b/include/rel/d/a/e/d_a_e_ms/d_a_e_ms.h index 2bbdf10116..2b95af2b2f 100644 --- a/include/rel/d/a/e/d_a_e_ms/d_a_e_ms.h +++ b/include/rel/d/a/e/d_a_e_ms/d_a_e_ms.h @@ -1,6 +1,4 @@ #ifndef D_A_E_MS_H #define D_A_E_MS_H -#include "dolphin/types.h" - #endif /* D_A_E_MS_H */ diff --git a/include/rel/d/a/e/d_a_e_nest/d_a_e_nest.h b/include/rel/d/a/e/d_a_e_nest/d_a_e_nest.h index 335fb0945b..62834464e1 100644 --- a/include/rel/d/a/e/d_a_e_nest/d_a_e_nest.h +++ b/include/rel/d/a/e/d_a_e_nest/d_a_e_nest.h @@ -1,9 +1,6 @@ #ifndef D_A_E_NEST_H #define D_A_E_NEST_H -#include "f_op/f_op_actor.h" -#include "SSystem/SComponent/c_phase.h" -#include "d/cc/d_cc_d.h" #include "d/cc/d_cc_uty.h" #include "d/bg/d_bg_s_acch.h" #include "Z2AudioLib/Z2Creature.h" @@ -33,6 +30,11 @@ struct nest_hahen_s { STATIC_ASSERT(sizeof(nest_hahen_s) == 0x58); +/** +* @ingroup actors-enemies +* @brief Beehive +* +*/ class e_nest_class : public fopAc_ac_c { public: enum Type { diff --git a/include/rel/d/a/e/d_a_e_nz/d_a_e_nz.h b/include/rel/d/a/e/d_a_e_nz/d_a_e_nz.h index f753dfa154..e4e8ace7e2 100644 --- a/include/rel/d/a/e/d_a_e_nz/d_a_e_nz.h +++ b/include/rel/d/a/e/d_a_e_nz/d_a_e_nz.h @@ -1,6 +1,4 @@ #ifndef D_A_E_NZ_H #define D_A_E_NZ_H -#include "dolphin/types.h" - #endif /* D_A_E_NZ_H */ diff --git a/include/rel/d/a/e/d_a_e_oct_bg/d_a_e_oct_bg.h b/include/rel/d/a/e/d_a_e_oct_bg/d_a_e_oct_bg.h index 15c4966910..308f0528ed 100644 --- a/include/rel/d/a/e/d_a_e_oct_bg/d_a_e_oct_bg.h +++ b/include/rel/d/a/e/d_a_e_oct_bg/d_a_e_oct_bg.h @@ -9,6 +9,11 @@ #include "d/cc/d_cc_uty.h" #include "SSystem/SComponent/c_phase.h" +/** +* @ingroup actors-enemies +* @brief Morpheel Bomb Fish +* +*/ struct daE_OctBg_c : public fopEn_enemy_c { typedef void (daE_OctBg_c::*actionFunc)(); diff --git a/include/rel/d/a/e/d_a_e_ph/d_a_e_ph.h b/include/rel/d/a/e/d_a_e_ph/d_a_e_ph.h index 343a0c1fd0..d7084de8cf 100644 --- a/include/rel/d/a/e/d_a_e_ph/d_a_e_ph.h +++ b/include/rel/d/a/e/d_a_e_ph/d_a_e_ph.h @@ -4,8 +4,12 @@ #include "Z2AudioLib/Z2Creature.h" #include "d/cc/d_cc_uty.h" #include "d/d_path.h" -#include "f_op/f_op_actor_mng.h" +/** +* @ingroup actors-enemies +* @brief Peahat +* +*/ class daE_PH_c : public fopEn_enemy_c { public: /* 8073D48C */ void initCcSph(); diff --git a/include/rel/d/a/e/d_a_e_pm/d_a_e_pm.h b/include/rel/d/a/e/d_a_e_pm/d_a_e_pm.h index 67695e6d74..330b58f00d 100644 --- a/include/rel/d/a/e/d_a_e_pm/d_a_e_pm.h +++ b/include/rel/d/a/e/d_a_e_pm/d_a_e_pm.h @@ -1,8 +1,11 @@ #ifndef D_A_E_PM_H #define D_A_E_PM_H -#include "f_op/f_op_actor_mng.h" - +/** +* @ingroup actors-enemies +* @brief Skull Kid +* +*/ class daE_PM_c : public fopEn_enemy_c { public: /* 80741FB4 */ void DemoSkip(int); diff --git a/include/rel/d/a/e/d_a_e_po/d_a_e_po.h b/include/rel/d/a/e/d_a_e_po/d_a_e_po.h index 092bbf1500..68889b5d20 100644 --- a/include/rel/d/a/e/d_a_e_po/d_a_e_po.h +++ b/include/rel/d/a/e/d_a_e_po/d_a_e_po.h @@ -1,6 +1,4 @@ #ifndef D_A_E_PO_H #define D_A_E_PO_H -#include "dolphin/types.h" - #endif /* D_A_E_PO_H */ diff --git a/include/rel/d/a/e/d_a_e_rb/d_a_e_rb.h b/include/rel/d/a/e/d_a_e_rb/d_a_e_rb.h index 30e701d80d..4a5c5a45a4 100644 --- a/include/rel/d/a/e/d_a_e_rb/d_a_e_rb.h +++ b/include/rel/d/a/e/d_a_e_rb/d_a_e_rb.h @@ -1,6 +1,4 @@ #ifndef D_A_E_RB_H #define D_A_E_RB_H -#include "dolphin/types.h" - #endif /* D_A_E_RB_H */ diff --git a/include/rel/d/a/e/d_a_e_rd/d_a_e_rd.h b/include/rel/d/a/e/d_a_e_rd/d_a_e_rd.h index 9a486d89ca..6c74e78f26 100644 --- a/include/rel/d/a/e/d_a_e_rd/d_a_e_rd.h +++ b/include/rel/d/a/e/d_a_e_rd/d_a_e_rd.h @@ -1,6 +1,4 @@ #ifndef D_A_E_RD_H #define D_A_E_RD_H -#include "dolphin/types.h" - #endif /* D_A_E_RD_H */ diff --git a/include/rel/d/a/e/d_a_e_rdb/d_a_e_rdb.h b/include/rel/d/a/e/d_a_e_rdb/d_a_e_rdb.h index 899685cac5..677d0e86bc 100644 --- a/include/rel/d/a/e/d_a_e_rdb/d_a_e_rdb.h +++ b/include/rel/d/a/e/d_a_e_rdb/d_a_e_rdb.h @@ -1,6 +1,4 @@ #ifndef D_A_E_RDB_H #define D_A_E_RDB_H -#include "dolphin/types.h" - #endif /* D_A_E_RDB_H */ diff --git a/include/rel/d/a/e/d_a_e_rdy/d_a_e_rdy.h b/include/rel/d/a/e/d_a_e_rdy/d_a_e_rdy.h index b07e2de266..bda9845316 100644 --- a/include/rel/d/a/e/d_a_e_rdy/d_a_e_rdy.h +++ b/include/rel/d/a/e/d_a_e_rdy/d_a_e_rdy.h @@ -1,6 +1,4 @@ #ifndef D_A_E_RDY_H #define D_A_E_RDY_H -#include "dolphin/types.h" - #endif /* D_A_E_RDY_H */ diff --git a/include/rel/d/a/e/d_a_e_s1/d_a_e_s1.h b/include/rel/d/a/e/d_a_e_s1/d_a_e_s1.h index d71011dc2e..54c310fc8b 100644 --- a/include/rel/d/a/e/d_a_e_s1/d_a_e_s1.h +++ b/include/rel/d/a/e/d_a_e_s1/d_a_e_s1.h @@ -1,6 +1,4 @@ #ifndef D_A_E_S1_H #define D_A_E_S1_H -#include "dolphin/types.h" - #endif /* D_A_E_S1_H */ diff --git a/include/rel/d/a/e/d_a_e_sb/d_a_e_sb.h b/include/rel/d/a/e/d_a_e_sb/d_a_e_sb.h index 3ce67dc34c..1c57c20492 100644 --- a/include/rel/d/a/e/d_a_e_sb/d_a_e_sb.h +++ b/include/rel/d/a/e/d_a_e_sb/d_a_e_sb.h @@ -1,6 +1,4 @@ #ifndef D_A_E_SB_H #define D_A_E_SB_H -#include "dolphin/types.h" - #endif /* D_A_E_SB_H */ diff --git a/include/rel/d/a/e/d_a_e_sf/d_a_e_sf.h b/include/rel/d/a/e/d_a_e_sf/d_a_e_sf.h index fd1a0bb317..765653929a 100644 --- a/include/rel/d/a/e/d_a_e_sf/d_a_e_sf.h +++ b/include/rel/d/a/e/d_a_e_sf/d_a_e_sf.h @@ -1,6 +1,4 @@ #ifndef D_A_E_SF_H #define D_A_E_SF_H -#include "dolphin/types.h" - #endif /* D_A_E_SF_H */ diff --git a/include/rel/d/a/e/d_a_e_sg/d_a_e_sg.h b/include/rel/d/a/e/d_a_e_sg/d_a_e_sg.h index ec26c6047f..c25ec28e6d 100644 --- a/include/rel/d/a/e/d_a_e_sg/d_a_e_sg.h +++ b/include/rel/d/a/e/d_a_e_sg/d_a_e_sg.h @@ -1,6 +1,4 @@ #ifndef D_A_E_SG_H #define D_A_E_SG_H -#include "dolphin/types.h" - #endif /* D_A_E_SG_H */ diff --git a/include/rel/d/a/e/d_a_e_sh/d_a_e_sh.h b/include/rel/d/a/e/d_a_e_sh/d_a_e_sh.h index 94d098f9bd..94d3e5055c 100644 --- a/include/rel/d/a/e/d_a_e_sh/d_a_e_sh.h +++ b/include/rel/d/a/e/d_a_e_sh/d_a_e_sh.h @@ -1,6 +1,4 @@ #ifndef D_A_E_SH_H #define D_A_E_SH_H -#include "dolphin/types.h" - #endif /* D_A_E_SH_H */ diff --git a/include/rel/d/a/e/d_a_e_sm/d_a_e_sm.h b/include/rel/d/a/e/d_a_e_sm/d_a_e_sm.h index 03d2e2a9b9..d972f0e434 100644 --- a/include/rel/d/a/e/d_a_e_sm/d_a_e_sm.h +++ b/include/rel/d/a/e/d_a_e_sm/d_a_e_sm.h @@ -1,6 +1,4 @@ #ifndef D_A_E_SM_H #define D_A_E_SM_H -#include "dolphin/types.h" - #endif /* D_A_E_SM_H */ diff --git a/include/rel/d/a/e/d_a_e_sm2/d_a_e_sm2.h b/include/rel/d/a/e/d_a_e_sm2/d_a_e_sm2.h index ac11866953..543f9efa17 100644 --- a/include/rel/d/a/e/d_a_e_sm2/d_a_e_sm2.h +++ b/include/rel/d/a/e/d_a_e_sm2/d_a_e_sm2.h @@ -1,10 +1,13 @@ #ifndef D_A_E_SM2_H #define D_A_E_SM2_H -#include "f_op/f_op_actor_mng.h" -#include "d/bg/d_bg_s_acch.h" #include "d/cc/d_cc_d.h" +/** +* @ingroup actors-enemies +* @brief Chuchu 2 +* +*/ class e_sm2_class : public fopEn_enemy_c { public: bool checkYellow() { return field_0x5b7 == 3; } diff --git a/include/rel/d/a/e/d_a_e_st/d_a_e_st.h b/include/rel/d/a/e/d_a_e_st/d_a_e_st.h index 42a845b1d1..d72336db5e 100644 --- a/include/rel/d/a/e/d_a_e_st/d_a_e_st.h +++ b/include/rel/d/a/e/d_a_e_st/d_a_e_st.h @@ -1,6 +1,4 @@ #ifndef D_A_E_ST_H #define D_A_E_ST_H -#include "dolphin/types.h" - #endif /* D_A_E_ST_H */ diff --git a/include/rel/d/a/e/d_a_e_st_line/d_a_e_st_line.h b/include/rel/d/a/e/d_a_e_st_line/d_a_e_st_line.h index bb231f85c3..01c811d26e 100644 --- a/include/rel/d/a/e/d_a_e_st_line/d_a_e_st_line.h +++ b/include/rel/d/a/e/d_a_e_st_line/d_a_e_st_line.h @@ -2,8 +2,12 @@ #define D_A_E_ST_LINE_H #include "f_op/f_op_actor_mng.h" -#include "Z2AudioLib/Z2SoundObject.h" +/** +* @ingroup actors-enemies +* @brief Skulltula +* +*/ class e_st_line_class : public fopEn_enemy_c { public: /* 0x5AC */ request_of_phase_process_class mPhase; diff --git a/include/rel/d/a/e/d_a_e_th/d_a_e_th.h b/include/rel/d/a/e/d_a_e_th/d_a_e_th.h index 99fe5b0b1e..1458c646d4 100644 --- a/include/rel/d/a/e/d_a_e_th/d_a_e_th.h +++ b/include/rel/d/a/e/d_a_e_th/d_a_e_th.h @@ -1,6 +1,4 @@ #ifndef D_A_E_TH_H #define D_A_E_TH_H -#include "dolphin/types.h" - #endif /* D_A_E_TH_H */ diff --git a/include/rel/d/a/e/d_a_e_th_ball/d_a_e_th_ball.h b/include/rel/d/a/e/d_a_e_th_ball/d_a_e_th_ball.h index e26dc508df..157db473d0 100644 --- a/include/rel/d/a/e/d_a_e_th_ball/d_a_e_th_ball.h +++ b/include/rel/d/a/e/d_a_e_th_ball/d_a_e_th_ball.h @@ -1,6 +1,4 @@ #ifndef D_A_E_TH_BALL_H #define D_A_E_TH_BALL_H -#include "dolphin/types.h" - #endif /* D_A_E_TH_BALL_H */ diff --git a/include/rel/d/a/e/d_a_e_tk/d_a_e_tk.h b/include/rel/d/a/e/d_a_e_tk/d_a_e_tk.h index d9afc5d5a9..7bc5edd910 100644 --- a/include/rel/d/a/e/d_a_e_tk/d_a_e_tk.h +++ b/include/rel/d/a/e/d_a_e_tk/d_a_e_tk.h @@ -1,6 +1,4 @@ #ifndef D_A_E_TK_H #define D_A_E_TK_H -#include "dolphin/types.h" - #endif /* D_A_E_TK_H */ diff --git a/include/rel/d/a/e/d_a_e_tk2/d_a_e_tk2.h b/include/rel/d/a/e/d_a_e_tk2/d_a_e_tk2.h index b80b5f48ef..a10b619333 100644 --- a/include/rel/d/a/e/d_a_e_tk2/d_a_e_tk2.h +++ b/include/rel/d/a/e/d_a_e_tk2/d_a_e_tk2.h @@ -1,6 +1,4 @@ #ifndef D_A_E_TK2_H #define D_A_E_TK2_H -#include "dolphin/types.h" - #endif /* D_A_E_TK2_H */ diff --git a/include/rel/d/a/e/d_a_e_tk_ball/d_a_e_tk_ball.h b/include/rel/d/a/e/d_a_e_tk_ball/d_a_e_tk_ball.h index 827e6d229d..c00285c551 100644 --- a/include/rel/d/a/e/d_a_e_tk_ball/d_a_e_tk_ball.h +++ b/include/rel/d/a/e/d_a_e_tk_ball/d_a_e_tk_ball.h @@ -1,6 +1,4 @@ #ifndef D_A_E_TK_BALL_H #define D_A_E_TK_BALL_H -#include "dolphin/types.h" - #endif /* D_A_E_TK_BALL_H */ diff --git a/include/rel/d/a/e/d_a_e_wb/d_a_e_wb.h b/include/rel/d/a/e/d_a_e_wb/d_a_e_wb.h index 661268fede..d3ac5522fb 100644 --- a/include/rel/d/a/e/d_a_e_wb/d_a_e_wb.h +++ b/include/rel/d/a/e/d_a_e_wb/d_a_e_wb.h @@ -2,7 +2,6 @@ #define D_A_E_WB_H #include "rel/d/a/d_a_horse/d_a_horse.h" -#include "SSystem/SComponent/c_phase.h" #include "d/cc/d_cc_uty.h" enum daE_wb_ACT { @@ -12,6 +11,11 @@ enum daE_wb_ACT { /* 0x67 */ ACT_PL_RIDE_NOW = 0x67, }; +/** +* @ingroup actors-enemies +* @brief Wild Boar +* +*/ class e_wb_class : public fopEn_enemy_c { public: BOOL checkWait(); diff --git a/include/rel/d/a/e/d_a_e_yc/d_a_e_yc.h b/include/rel/d/a/e/d_a_e_yc/d_a_e_yc.h index b80250e32c..738dbc1f78 100644 --- a/include/rel/d/a/e/d_a_e_yc/d_a_e_yc.h +++ b/include/rel/d/a/e/d_a_e_yc/d_a_e_yc.h @@ -1,8 +1,11 @@ #ifndef D_A_E_YC_H #define D_A_E_YC_H -#include "f_op/f_op_actor_mng.h" - +/** +* @ingroup actors-enemies +* @brief Twilit Kargorok +* +*/ class e_yc_class : public fopEn_enemy_c { public: MtxP getLegR3Mtx() { return field_0x5B8->getModel()->getAnmMtx(28); } diff --git a/include/rel/d/a/e/d_a_e_yd/d_a_e_yd.h b/include/rel/d/a/e/d_a_e_yd/d_a_e_yd.h index d0548a877c..09aea77331 100644 --- a/include/rel/d/a/e/d_a_e_yd/d_a_e_yd.h +++ b/include/rel/d/a/e/d_a_e_yd/d_a_e_yd.h @@ -1,6 +1,4 @@ #ifndef D_A_E_YD_H #define D_A_E_YD_H -#include "dolphin/types.h" - #endif /* D_A_E_YD_H */ diff --git a/include/rel/d/a/e/d_a_e_yd_leaf/d_a_e_yd_leaf.h b/include/rel/d/a/e/d_a_e_yd_leaf/d_a_e_yd_leaf.h index f4e03857a6..609aee725d 100644 --- a/include/rel/d/a/e/d_a_e_yd_leaf/d_a_e_yd_leaf.h +++ b/include/rel/d/a/e/d_a_e_yd_leaf/d_a_e_yd_leaf.h @@ -3,6 +3,11 @@ #include "f_op/f_op_actor_mng.h" +/** +* @ingroup actors-enemies +* @brief Shadow Deku Baba Leaf +* +*/ class e_yd_leaf_class : public fopEn_enemy_c { public: /* 0x5AC */ request_of_phase_process_class mPhase; diff --git a/include/rel/d/a/e/d_a_e_yg/d_a_e_yg.h b/include/rel/d/a/e/d_a_e_yg/d_a_e_yg.h index 690be8d2e7..e66586e09c 100644 --- a/include/rel/d/a/e/d_a_e_yg/d_a_e_yg.h +++ b/include/rel/d/a/e/d_a_e_yg/d_a_e_yg.h @@ -1,6 +1,4 @@ #ifndef D_A_E_YG_H #define D_A_E_YG_H -#include "dolphin/types.h" - #endif /* D_A_E_YG_H */ diff --git a/include/rel/d/a/e/d_a_e_yh/d_a_e_yh.h b/include/rel/d/a/e/d_a_e_yh/d_a_e_yh.h index 5864a701b8..dcd66535fb 100644 --- a/include/rel/d/a/e/d_a_e_yh/d_a_e_yh.h +++ b/include/rel/d/a/e/d_a_e_yh/d_a_e_yh.h @@ -1,6 +1,4 @@ #ifndef D_A_E_YH_H #define D_A_E_YH_H -#include "dolphin/types.h" - #endif /* D_A_E_YH_H */ diff --git a/include/rel/d/a/e/d_a_e_yk/d_a_e_yk.h b/include/rel/d/a/e/d_a_e_yk/d_a_e_yk.h index 9837ac1427..933bd79f8a 100644 --- a/include/rel/d/a/e/d_a_e_yk/d_a_e_yk.h +++ b/include/rel/d/a/e/d_a_e_yk/d_a_e_yk.h @@ -2,19 +2,19 @@ * @file d_a_e_yk.h * This header contains information about the Shadow Keese actor. * +* */ #ifndef D_A_E_YK_H #define D_A_E_YK_H #include "Z2AudioLib/Z2Creature.h" -#include "f_op/f_op_actor_mng.h" #include "d/cc/d_cc_uty.h" #include "d/d_path.h" /** - * \enum daE_YK_Action - * \brief Shadow Keese current action. + * @enum daE_YK_Action + * @brief Shadow Keese current action. * */ enum daE_YK_Action { @@ -31,7 +31,7 @@ enum daE_YK_Action { }; /** - * \brief Temporary HIO struct to get a match. Remove later. + * @brief Temporary HIO struct to get a match. Remove later. * */ struct daE_YK_HIO_c_tmp { @@ -46,7 +46,7 @@ struct daE_YK_HIO_c_tmp { /** - * \brief Shadow Keese Host Input Output class + * @brief Shadow Keese Host Input Output class * */ class daE_YK_HIO_c { @@ -64,7 +64,8 @@ public: }; /** - * \brief Shadow Keese actor class + * @ingroup actors-enemies + * @brief Shadow Keese * */ class e_yk_class : public fopEn_enemy_c { diff --git a/include/rel/d/a/e/d_a_e_ym/d_a_e_ym.h b/include/rel/d/a/e/d_a_e_ym/d_a_e_ym.h index 70277fabb2..e09a02c7f9 100644 --- a/include/rel/d/a/e/d_a_e_ym/d_a_e_ym.h +++ b/include/rel/d/a/e/d_a_e_ym/d_a_e_ym.h @@ -20,6 +20,11 @@ public: /* 0x20 */ f32 mMoveRange; }; +/** +* @ingroup actors-enemies +* @brief Shadow Insect +* +*/ class daE_YM_c : public fopEn_enemy_c { public: enum daE_YM_Action { diff --git a/include/rel/d/a/e/d_a_e_ym_tag/d_a_e_ym_tag.h b/include/rel/d/a/e/d_a_e_ym_tag/d_a_e_ym_tag.h index 371a3cc51b..8c5be52c50 100644 --- a/include/rel/d/a/e/d_a_e_ym_tag/d_a_e_ym_tag.h +++ b/include/rel/d/a/e/d_a_e_ym_tag/d_a_e_ym_tag.h @@ -3,6 +3,11 @@ #include "rel/d/a/e/d_a_e_ym/d_a_e_ym.h" +/** +* @ingroup actors-tags +* @brief Shadow Insect Tag +* +*/ class daE_YM_TAG_c : public fopAc_ac_c { public: /* 80815E8C */ int execute(); diff --git a/include/rel/d/a/e/d_a_e_yr/d_a_e_yr.h b/include/rel/d/a/e/d_a_e_yr/d_a_e_yr.h index 97fe5fef6b..0423464449 100644 --- a/include/rel/d/a/e/d_a_e_yr/d_a_e_yr.h +++ b/include/rel/d/a/e/d_a_e_yr/d_a_e_yr.h @@ -1,6 +1,4 @@ #ifndef D_A_E_YR_H #define D_A_E_YR_H -#include "dolphin/types.h" - #endif /* D_A_E_YR_H */ diff --git a/include/rel/d/a/kytag/d_a_kytag00/d_a_kytag00.h b/include/rel/d/a/kytag/d_a_kytag00/d_a_kytag00.h index bb456e1470..6a1bfae31f 100644 --- a/include/rel/d/a/kytag/d_a_kytag00/d_a_kytag00.h +++ b/include/rel/d/a/kytag/d_a_kytag00/d_a_kytag00.h @@ -3,6 +3,11 @@ #include "f_op/f_op_actor_mng.h" +/** + * @ingroup actors-tags + * @brief Twilight Tag 0 + * + */ class kytag00_class : public fopAc_ac_c { public: /* 0x568 */ u8 field_0x568[0x56C - 0x568]; diff --git a/include/rel/d/a/kytag/d_a_kytag03/d_a_kytag03.h b/include/rel/d/a/kytag/d_a_kytag03/d_a_kytag03.h index b5c3b69de5..bb08e7d524 100644 --- a/include/rel/d/a/kytag/d_a_kytag03/d_a_kytag03.h +++ b/include/rel/d/a/kytag/d_a_kytag03/d_a_kytag03.h @@ -1,7 +1,6 @@ #ifndef D_A_KYTAG03_H #define D_A_KYTAG03_H -#include "d/d_path.h" #include "f_op/f_op_actor_mng.h" class kytag03_class : public fopAc_ac_c { diff --git a/include/rel/d/a/kytag/d_a_kytag04/d_a_kytag04.h b/include/rel/d/a/kytag/d_a_kytag04/d_a_kytag04.h index ce09fb7edf..622b3fb501 100644 --- a/include/rel/d/a/kytag/d_a_kytag04/d_a_kytag04.h +++ b/include/rel/d/a/kytag/d_a_kytag04/d_a_kytag04.h @@ -1,7 +1,6 @@ #ifndef D_A_KYTAG04_H #define D_A_KYTAG04_H -#include "f_op/f_op_actor_mng.h" class kytag04_class : public fopAc_ac_c { public: diff --git a/include/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.h b/include/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.h index cbc2fa4326..f850159428 100644 --- a/include/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.h +++ b/include/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.h @@ -8,6 +8,11 @@ class daNpcAsh_c; typedef bool (daNpcAsh_c::*daNpcAsh_actionFn)(void*); typedef BOOL (daNpcAsh_c::*daNpcAsh_eventFn)(int); +/** + * @ingroup actors-npcs + * @brief Ashei + * + */ class daNpcAsh_c : public daNpcF_c { private: /* 0xB48 */ Z2Creature mZ2; diff --git a/include/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.h b/include/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.h index 4b6386d59c..ccb6708548 100644 --- a/include/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.h +++ b/include/rel/d/a/npc/d_a_npc_blue_ns/d_a_npc_blue_ns.h @@ -1,6 +1,5 @@ #ifndef D_A_NPC_BLUE_NS_H #define D_A_NPC_BLUE_NS_H -#include "dolphin/types.h" #endif /* D_A_NPC_BLUE_NS_H */ diff --git a/include/rel/d/a/npc/d_a_npc_du/d_a_npc_du.h b/include/rel/d/a/npc/d_a_npc_du/d_a_npc_du.h index 59aac2fb2b..c4db5fdeaa 100644 --- a/include/rel/d/a/npc/d_a_npc_du/d_a_npc_du.h +++ b/include/rel/d/a/npc/d_a_npc_du/d_a_npc_du.h @@ -1,6 +1,5 @@ #ifndef D_A_NPC_DU_H #define D_A_NPC_DU_H -#include "dolphin/types.h" #endif /* D_A_NPC_DU_H */ diff --git a/include/rel/d/a/npc/d_a_npc_fguard/d_a_npc_fguard.h b/include/rel/d/a/npc/d_a_npc_fguard/d_a_npc_fguard.h index ce7d1f2888..26ee01d778 100644 --- a/include/rel/d/a/npc/d_a_npc_fguard/d_a_npc_fguard.h +++ b/include/rel/d/a/npc/d_a_npc_fguard/d_a_npc_fguard.h @@ -1,7 +1,6 @@ #ifndef D_A_NPC_FGUARD_H #define D_A_NPC_FGUARD_H -#include "dolphin/types.h" #include "d/a/d_a_npc_cd2.h" #include "SSystem/SComponent/c_math.h" diff --git a/include/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.h b/include/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.h index 49edda02ce..096953219a 100644 --- a/include/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.h +++ b/include/rel/d/a/npc/d_a_npc_gwolf/d_a_npc_gwolf.h @@ -1,7 +1,6 @@ #ifndef D_A_NPC_GWOLF_H #define D_A_NPC_GWOLF_H -#include "f_op/f_op_actor_mng.h" #include "d/a/d_a_npc.h" class daNpc_GWolf_c : public daNpcF_c { diff --git a/include/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.h b/include/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.h index 04a6122730..5906a28b60 100644 --- a/include/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.h +++ b/include/rel/d/a/npc/d_a_npc_ks/d_a_npc_ks.h @@ -1,6 +1,5 @@ #ifndef D_A_NPC_KS_H #define D_A_NPC_KS_H -#include "dolphin/types.h" #endif /* D_A_NPC_KS_H */ diff --git a/include/rel/d/a/npc/d_a_npc_the/d_a_npc_the.h b/include/rel/d/a/npc/d_a_npc_the/d_a_npc_the.h index 5ac9f27593..f167e1f506 100644 --- a/include/rel/d/a/npc/d_a_npc_the/d_a_npc_the.h +++ b/include/rel/d/a/npc/d_a_npc_the/d_a_npc_the.h @@ -2,7 +2,6 @@ #define D_A_NPC_THE_H #include "d/a/d_a_npc.h" -#include "f_op/f_op_actor_mng.h" // #define NONMATCHING diff --git a/include/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h b/include/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h index 7c864ae046..efe593f20a 100644 --- a/include/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h +++ b/include/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h @@ -1,7 +1,6 @@ #ifndef D_A_NPC_TK_H #define D_A_NPC_TK_H -#include "f_op/f_op_actor_mng.h" #include "d/d_path.h" struct cXyz; diff --git a/include/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.h b/include/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.h index b007232ba1..6c2427e85d 100644 --- a/include/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.h +++ b/include/rel/d/a/npc/d_a_npc_tkj2/d_a_npc_tkj2.h @@ -1,6 +1,5 @@ #ifndef D_A_NPC_TKJ2_H #define D_A_NPC_TKJ2_H -#include "dolphin/types.h" #endif /* D_A_NPC_TKJ2_H */ diff --git a/include/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.h b/include/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.h index f9ae983b0f..27d58747e1 100644 --- a/include/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.h +++ b/include/rel/d/a/npc/d_a_npc_wrestler/d_a_npc_wrestler.h @@ -1,7 +1,6 @@ #ifndef D_A_NPC_WRESTLER_H #define D_A_NPC_WRESTLER_H -#include "f_op/f_op_actor_mng.h" #include "d/a/d_a_npc.h" class daNpcWrestler_c : public daNpcF_c { diff --git a/include/rel/d/a/obj/d_a_obj_Y_taihou/d_a_obj_Y_taihou.h b/include/rel/d/a/obj/d_a_obj_Y_taihou/d_a_obj_Y_taihou.h index 102e73964d..8545ca6653 100644 --- a/include/rel/d/a/obj/d_a_obj_Y_taihou/d_a_obj_Y_taihou.h +++ b/include/rel/d/a/obj/d_a_obj_Y_taihou/d_a_obj_Y_taihou.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_Y_TAIHOU_H #define D_A_OBJ_Y_TAIHOU_H -#include "dolphin/types.h" #endif /* D_A_OBJ_Y_TAIHOU_H */ diff --git a/include/rel/d/a/obj/d_a_obj_ari/d_a_obj_ari.h b/include/rel/d/a/obj/d_a_obj_ari/d_a_obj_ari.h index 096f2a4a40..0a521eb87b 100644 --- a/include/rel/d/a/obj/d_a_obj_ari/d_a_obj_ari.h +++ b/include/rel/d/a/obj/d_a_obj_ari/d_a_obj_ari.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_ARI_H #define D_A_OBJ_ARI_H -#include "dolphin/types.h" #endif /* D_A_OBJ_ARI_H */ diff --git a/include/rel/d/a/obj/d_a_obj_automata/d_a_obj_automata.h b/include/rel/d/a/obj/d_a_obj_automata/d_a_obj_automata.h index 2b02eb11d0..86771a2945 100644 --- a/include/rel/d/a/obj/d_a_obj_automata/d_a_obj_automata.h +++ b/include/rel/d/a/obj/d_a_obj_automata/d_a_obj_automata.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_AUTOMATA_H #define D_A_OBJ_AUTOMATA_H -#include "dolphin/types.h" #endif /* D_A_OBJ_AUTOMATA_H */ diff --git a/include/rel/d/a/obj/d_a_obj_balloon/d_a_obj_balloon.h b/include/rel/d/a/obj/d_a_obj_balloon/d_a_obj_balloon.h index 65eeed5bc4..073d6c12c5 100644 --- a/include/rel/d/a/obj/d_a_obj_balloon/d_a_obj_balloon.h +++ b/include/rel/d/a/obj/d_a_obj_balloon/d_a_obj_balloon.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_BALLOON_H #define D_A_OBJ_BALLOON_H -#include "dolphin/types.h" #endif /* D_A_OBJ_BALLOON_H */ diff --git a/include/rel/d/a/obj/d_a_obj_bbox/d_a_obj_bbox.h b/include/rel/d/a/obj/d_a_obj_bbox/d_a_obj_bbox.h index 5391c54772..67a9d12b0a 100644 --- a/include/rel/d/a/obj/d_a_obj_bbox/d_a_obj_bbox.h +++ b/include/rel/d/a/obj/d_a_obj_bbox/d_a_obj_bbox.h @@ -1,28 +1,28 @@ -#ifndef D_A_OBJ_BBOX_H -#define D_A_OBJ_BBOX_H - -#include "d/bg/d_bg_s_movebg_actor.h" -#include "d/cc/d_cc_d.h" -#include "f_op/f_op_actor_mng.h" - -class daObjBBox_c : public dBgS_MoveBgActor { -public: - /* 80BACD38 */ void initBaseMtx(); - /* 80BACD74 */ void setBaseMtx(); - /* 80BACDD8 */ int Create(); - /* 80BACE50 */ int CreateHeap(); - /* 80BACEC0 */ int create1st(); - /* 80BAD0C0 */ int Execute(Mtx**); - /* 80BAD234 */ int Draw(); - /* 80BAD2D8 */ int Delete(); - - u32 getSwNo() { return fopAcM_GetParamBit(this, 0, 8); } - -private: - /* 0x5A0 */ request_of_phase_process_class mPhaseReq; - /* 0x5A8 */ J3DModel* mpModel; - /* 0x5AC */ dCcD_Stts mStts; - /* 0x5E8 */ dCcD_Cyl mCyl; -}; // Size: 0x724 - -#endif /* D_A_OBJ_BBOX_H */ +#ifndef D_A_OBJ_BBOX_H +#define D_A_OBJ_BBOX_H + +#include "d/bg/d_bg_s_movebg_actor.h" +#include "d/cc/d_cc_d.h" +#include "f_op/f_op_actor_mng.h" + +class daObjBBox_c : public dBgS_MoveBgActor { +public: + /* 80BACD38 */ void initBaseMtx(); + /* 80BACD74 */ void setBaseMtx(); + /* 80BACDD8 */ int Create(); + /* 80BACE50 */ int CreateHeap(); + /* 80BACEC0 */ int create1st(); + /* 80BAD0C0 */ int Execute(Mtx**); + /* 80BAD234 */ int Draw(); + /* 80BAD2D8 */ int Delete(); + + u32 getSwNo() { return fopAcM_GetParamBit(this, 0, 8); } + +private: + /* 0x5A0 */ request_of_phase_process_class mPhaseReq; + /* 0x5A8 */ J3DModel* mpModel; + /* 0x5AC */ dCcD_Stts mStts; + /* 0x5E8 */ dCcD_Cyl mCyl; +}; // Size: 0x724 + +#endif /* D_A_OBJ_BBOX_H */ diff --git a/include/rel/d/a/obj/d_a_obj_bed/d_a_obj_bed.h b/include/rel/d/a/obj/d_a_obj_bed/d_a_obj_bed.h index 405f392751..14a2876b7c 100644 --- a/include/rel/d/a/obj/d_a_obj_bed/d_a_obj_bed.h +++ b/include/rel/d/a/obj/d_a_obj_bed/d_a_obj_bed.h @@ -1,10 +1,8 @@ #ifndef D_A_OBJ_BED_H #define D_A_OBJ_BED_H -#include "JSystem/J3DGraphAnimator/J3DModel.h" #include "SSystem/SComponent/c_phase.h" #include "d/bg/d_bg_s_acch.h" -#include "d/bg/d_bg_s_gnd_chk.h" #include "f_op/f_op_actor.h" #include "dolphin/types.h" diff --git a/include/rel/d/a/obj/d_a_obj_bemos/d_a_obj_bemos.h b/include/rel/d/a/obj/d_a_obj_bemos/d_a_obj_bemos.h index 2124f26639..cb2fabd9e9 100644 --- a/include/rel/d/a/obj/d_a_obj_bemos/d_a_obj_bemos.h +++ b/include/rel/d/a/obj/d_a_obj_bemos/d_a_obj_bemos.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_BEMOS_H #define D_A_OBJ_BEMOS_H -#include "dolphin/types.h" #endif /* D_A_OBJ_BEMOS_H */ diff --git a/include/rel/d/a/obj/d_a_obj_bhashi/d_a_obj_bhashi.h b/include/rel/d/a/obj/d_a_obj_bhashi/d_a_obj_bhashi.h index 8148b7bc96..350bf297a3 100644 --- a/include/rel/d/a/obj/d_a_obj_bhashi/d_a_obj_bhashi.h +++ b/include/rel/d/a/obj/d_a_obj_bhashi/d_a_obj_bhashi.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_BHASHI_H #define D_A_OBJ_BHASHI_H -#include "dolphin/types.h" #endif /* D_A_OBJ_BHASHI_H */ diff --git a/include/rel/d/a/obj/d_a_obj_bk_leaf/d_a_obj_bk_leaf.h b/include/rel/d/a/obj/d_a_obj_bk_leaf/d_a_obj_bk_leaf.h index f947d65e23..bc10c61533 100644 --- a/include/rel/d/a/obj/d_a_obj_bk_leaf/d_a_obj_bk_leaf.h +++ b/include/rel/d/a/obj/d_a_obj_bk_leaf/d_a_obj_bk_leaf.h @@ -1,8 +1,6 @@ #ifndef D_A_OBJ_BK_LEAF_H #define D_A_OBJ_BK_LEAF_H -#include "SSystem/SComponent/c_phase.h" -#include "dolphin/types.h" #include "f_op/f_op_actor_mng.h" class daBkLeaf_c : public fopAc_ac_c { diff --git a/include/rel/d/a/obj/d_a_obj_bkdoor/d_a_obj_bkdoor.h b/include/rel/d/a/obj/d_a_obj_bkdoor/d_a_obj_bkdoor.h index b379531a8b..037c932643 100644 --- a/include/rel/d/a/obj/d_a_obj_bkdoor/d_a_obj_bkdoor.h +++ b/include/rel/d/a/obj/d_a_obj_bkdoor/d_a_obj_bkdoor.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "SSystem/SComponent/c_phase.h" -#include "dolphin/types.h" class J3DModel; diff --git a/include/rel/d/a/obj/d_a_obj_bosswarp/d_a_obj_bosswarp.h b/include/rel/d/a/obj/d_a_obj_bosswarp/d_a_obj_bosswarp.h index 9acb6f300a..4b5d4fe262 100644 --- a/include/rel/d/a/obj/d_a_obj_bosswarp/d_a_obj_bosswarp.h +++ b/include/rel/d/a/obj/d_a_obj_bosswarp/d_a_obj_bosswarp.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_BOSSWARP_H #define D_A_OBJ_BOSSWARP_H -#include "SSystem/SComponent/c_phase.h" #include "f_op/f_op_actor_mng.h" #include "d/msg/d_msg_flow.h" diff --git a/include/rel/d/a/obj/d_a_obj_boumato/d_a_obj_boumato.h b/include/rel/d/a/obj/d_a_obj_boumato/d_a_obj_boumato.h index b339acb60b..6911a0b973 100644 --- a/include/rel/d/a/obj/d_a_obj_boumato/d_a_obj_boumato.h +++ b/include/rel/d/a/obj/d_a_obj_boumato/d_a_obj_boumato.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_BOUMATO_H #define D_A_OBJ_BOUMATO_H -#include "dolphin/types.h" #endif /* D_A_OBJ_BOUMATO_H */ diff --git a/include/rel/d/a/obj/d_a_obj_brakeeff/d_a_obj_brakeeff.h b/include/rel/d/a/obj/d_a_obj_brakeeff/d_a_obj_brakeeff.h index cfb0f87277..f7029f2e06 100644 --- a/include/rel/d/a/obj/d_a_obj_brakeeff/d_a_obj_brakeeff.h +++ b/include/rel/d/a/obj/d_a_obj_brakeeff/d_a_obj_brakeeff.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_BRAKEEFF_H #define D_A_OBJ_BRAKEEFF_H -#include "dolphin/types.h" #endif /* D_A_OBJ_BRAKEEFF_H */ diff --git a/include/rel/d/a/obj/d_a_obj_brg/d_a_obj_brg.h b/include/rel/d/a/obj/d_a_obj_brg/d_a_obj_brg.h index 240fdcebef..6997d43c72 100644 --- a/include/rel/d/a/obj/d_a_obj_brg/d_a_obj_brg.h +++ b/include/rel/d/a/obj/d_a_obj_brg/d_a_obj_brg.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_BRG_H #define D_A_OBJ_BRG_H -#include "dolphin/types.h" #endif /* D_A_OBJ_BRG_H */ diff --git a/include/rel/d/a/obj/d_a_obj_burnbox/d_a_obj_burnbox.h b/include/rel/d/a/obj/d_a_obj_burnbox/d_a_obj_burnbox.h index fa858d76fb..1e5174ae35 100644 --- a/include/rel/d/a/obj/d_a_obj_burnbox/d_a_obj_burnbox.h +++ b/include/rel/d/a/obj/d_a_obj_burnbox/d_a_obj_burnbox.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_BURNBOX_H #define D_A_OBJ_BURNBOX_H -#include "dolphin/types.h" #endif /* D_A_OBJ_BURNBOX_H */ diff --git a/include/rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.h b/include/rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.h index 4e446a39f6..ad61c95158 100644 --- a/include/rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.h +++ b/include/rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.h @@ -1,8 +1,6 @@ #ifndef D_A_OBJ_CARRY_H #define D_A_OBJ_CARRY_H -#include "d/bg/d_bg_s_acch.h" -#include "d/cc/d_cc_d.h" #include "d/d_jnt_col.h" #include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" @@ -18,23 +16,31 @@ struct daObjCarry_Data { /* 0x0044 */ u8 field_0x0044[0x94-0x44]; }; +/** + * @ingroup actors-objects + * @brief Carryable Object + * + * This is a multi-use class for carryable objects. + * It's used by: small and large blue pot, small and large red pot, box, cannon ball, barrel, skull, deku nut, Sols, small and large Twilight pots. + * + */ class daObjCarry_c : public fopAc_ac_c { public: enum { - /* 0x0 */ TYPE_TSUBO, // Small Blue Pot - /* 0x1 */ TYPE_OOTSUBO, // Big Red Pot - /* 0x2 */ TYPE_KIBAKO, // Box - /* 0x3 */ TYPE_IRON_BALL, // Cannon Ball - /* 0x4 */ TYPE_TARU, // Barrel - /* 0x5 */ TYPE_DOKURO, // Skull - /* 0x6 */ TYPE_BOKKURI, // Deku Nut - /* 0x7 */ TYPE_TSUBO_2, // Small Red Pot - /* 0x8 */ TYPE_BALL_S, // Light Ball A - /* 0x9 */ TYPE_BALL_S_2, // Light Ball B - /* 0xA */ TYPE_AOTSUBO, // Big Blue Pot - /* 0xB */ TYPE_LV8_BALL, // Light Ball? Probably unused - /* 0xC */ TYPE_TSUBO_S, // Small pot - Twilight - /* 0xD */ TYPE_TSUBO_B, // Big pot - Twilight + /* 0x0 */ TYPE_TSUBO, /**< Small Blue Pot */ + /* 0x1 */ TYPE_OOTSUBO, /**< Big Red Pot */ + /* 0x2 */ TYPE_KIBAKO, /**< Box */ + /* 0x3 */ TYPE_IRON_BALL, /**< Cannon Ball */ + /* 0x4 */ TYPE_TARU, /**< Barrel */ + /* 0x5 */ TYPE_DOKURO, /**< Skull */ + /* 0x6 */ TYPE_BOKKURI, /**< Deku Nut */ + /* 0x7 */ TYPE_TSUBO_2, /**< Small Red Pot */ + /* 0x8 */ TYPE_BALL_S, /**< Light Ball A */ + /* 0x9 */ TYPE_BALL_S_2, /**< Light Ball B */ + /* 0xA */ TYPE_AOTSUBO, /**< Big Blue Pot */ + /* 0xB */ TYPE_LV8_BALL, /**< Light Ball? Probably unused */ + /* 0xC */ TYPE_TSUBO_S, /**< Small pot - Twilight */ + /* 0xD */ TYPE_TSUBO_B, /**< Big pot - Twilight */ }; /* 80031CF8 */ static void clrSaveFlag(); diff --git a/include/rel/d/a/obj/d_a_obj_catdoor/d_a_obj_catdoor.h b/include/rel/d/a/obj/d_a_obj_catdoor/d_a_obj_catdoor.h index 2b144aaaa2..c9c63fa43a 100644 --- a/include/rel/d/a/obj/d_a_obj_catdoor/d_a_obj_catdoor.h +++ b/include/rel/d/a/obj/d_a_obj_catdoor/d_a_obj_catdoor.h @@ -1,9 +1,7 @@ #ifndef D_A_OBJ_CATDOOR_H #define D_A_OBJ_CATDOOR_H -#include "f_op/f_op_actor.h" #include "f_op/f_op_actor_mng.h" -#include "SSystem/SComponent/c_phase.h" #include "d/bg/d_bg_w.h" struct daObjCatDoor_Door_c { diff --git a/include/rel/d/a/obj/d_a_obj_cblock/d_a_obj_cblock.h b/include/rel/d/a/obj/d_a_obj_cblock/d_a_obj_cblock.h index 81419c641e..71766d4a2f 100644 --- a/include/rel/d/a/obj/d_a_obj_cblock/d_a_obj_cblock.h +++ b/include/rel/d/a/obj/d_a_obj_cblock/d_a_obj_cblock.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_CBLOCK_H #define D_A_OBJ_CBLOCK_H -#include "dolphin/types.h" #endif /* D_A_OBJ_CBLOCK_H */ diff --git a/include/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.h b/include/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.h index 6bca7f1125..eafbdabf4c 100644 --- a/include/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.h +++ b/include/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daObjBoard_c : public dBgS_MoveBgActor { public: diff --git a/include/rel/d/a/obj/d_a_obj_chandelier/d_a_obj_chandelier.h b/include/rel/d/a/obj/d_a_obj_chandelier/d_a_obj_chandelier.h index 3c69dde826..40e20b1b61 100644 --- a/include/rel/d/a/obj/d_a_obj_chandelier/d_a_obj_chandelier.h +++ b/include/rel/d/a/obj/d_a_obj_chandelier/d_a_obj_chandelier.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "f_op/f_op_actor_mng.h" -#include "SSystem/SComponent/c_phase.h" class daObjChandelier_c; typedef void (daObjChandelier_c::*daObjChandelier_proc)(); diff --git a/include/rel/d/a/obj/d_a_obj_chest/d_a_obj_chest.h b/include/rel/d/a/obj/d_a_obj_chest/d_a_obj_chest.h index bc41bf7e67..2e89c8aac8 100644 --- a/include/rel/d/a/obj/d_a_obj_chest/d_a_obj_chest.h +++ b/include/rel/d/a/obj/d_a_obj_chest/d_a_obj_chest.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_CHEST_H #define D_A_OBJ_CHEST_H -#include "dolphin/types.h" #endif /* D_A_OBJ_CHEST_H */ diff --git a/include/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.h b/include/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.h index 74c53c4433..0e40f05329 100644 --- a/include/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.h +++ b/include/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daCowdoor_c : public dBgS_MoveBgActor { public: diff --git a/include/rel/d/a/obj/d_a_obj_crope/d_a_obj_crope.h b/include/rel/d/a/obj/d_a_obj_crope/d_a_obj_crope.h index f0a092b44f..0a076ed05e 100644 --- a/include/rel/d/a/obj/d_a_obj_crope/d_a_obj_crope.h +++ b/include/rel/d/a/obj/d_a_obj_crope/d_a_obj_crope.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_CROPE_H #define D_A_OBJ_CROPE_H -#include "d/cc/d_cc_d.h" #include "f_op/f_op_actor_mng.h" class daObjCrope_c : public fopAc_ac_c { diff --git a/include/rel/d/a/obj/d_a_obj_crvlh_down/d_a_obj_crvlh_down.h b/include/rel/d/a/obj/d_a_obj_crvlh_down/d_a_obj_crvlh_down.h index fce7dd35fc..cf1b3c1050 100644 --- a/include/rel/d/a/obj/d_a_obj_crvlh_down/d_a_obj_crvlh_down.h +++ b/include/rel/d/a/obj/d_a_obj_crvlh_down/d_a_obj_crvlh_down.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_CRVLH_DOWN_H #define D_A_OBJ_CRVLH_DOWN_H -#include "dolphin/types.h" #endif /* D_A_OBJ_CRVLH_DOWN_H */ diff --git a/include/rel/d/a/obj/d_a_obj_cwall/d_a_obj_cwall.h b/include/rel/d/a/obj/d_a_obj_cwall/d_a_obj_cwall.h index 2f792fde8f..49d71cc17d 100644 --- a/include/rel/d/a/obj/d_a_obj_cwall/d_a_obj_cwall.h +++ b/include/rel/d/a/obj/d_a_obj_cwall/d_a_obj_cwall.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_CWALL_H #define D_A_OBJ_CWALL_H -#include "dolphin/types.h" #endif /* D_A_OBJ_CWALL_H */ diff --git a/include/rel/d/a/obj/d_a_obj_dan/d_a_obj_dan.h b/include/rel/d/a/obj/d_a_obj_dan/d_a_obj_dan.h index 13ef9cefb9..38d91a8640 100644 --- a/include/rel/d/a/obj/d_a_obj_dan/d_a_obj_dan.h +++ b/include/rel/d/a/obj/d_a_obj_dan/d_a_obj_dan.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_DAN_H #define D_A_OBJ_DAN_H -#include "dolphin/types.h" #endif /* D_A_OBJ_DAN_H */ diff --git a/include/rel/d/a/obj/d_a_obj_digsnow/d_a_obj_digsnow.h b/include/rel/d/a/obj/d_a_obj_digsnow/d_a_obj_digsnow.h index d82823ad50..135e8f842b 100644 --- a/include/rel/d/a/obj/d_a_obj_digsnow/d_a_obj_digsnow.h +++ b/include/rel/d/a/obj/d_a_obj_digsnow/d_a_obj_digsnow.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_DIGSNOW_H #define D_A_OBJ_DIGSNOW_H -#include "SSystem/SComponent/c_phase.h" #include "d/bg/d_bg_s_movebg_actor.h" #include "f_op/f_op_actor_mng.h" #include "d/bg/d_bg_s_acch.h" diff --git a/include/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.h b/include/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.h index 4d925ce8e8..91eba52b0b 100644 --- a/include/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.h +++ b/include/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.h @@ -3,6 +3,5 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_DMELEVATOR_H */ diff --git a/include/rel/d/a/obj/d_a_obj_drop/d_a_obj_drop.h b/include/rel/d/a/obj/d_a_obj_drop/d_a_obj_drop.h index 27459682bb..7e1c81c04e 100644 --- a/include/rel/d/a/obj/d_a_obj_drop/d_a_obj_drop.h +++ b/include/rel/d/a/obj/d_a_obj_drop/d_a_obj_drop.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_DROP_H #define D_A_OBJ_DROP_H -#include "dolphin/types.h" #endif /* D_A_OBJ_DROP_H */ diff --git a/include/rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.h b/include/rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.h index a5c8c1e392..7de0959503 100644 --- a/include/rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.h +++ b/include/rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.h @@ -2,7 +2,6 @@ #define D_A_OBJ_EFF_H #include "f_op/f_op_actor_mng.h" -#include "d/d_procname.h" namespace daObjEff { class Act_c : public fopAc_ac_c { diff --git a/include/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.h b/include/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.h index 111da83bc7..897daf799b 100644 --- a/include/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.h +++ b/include/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.h @@ -3,6 +3,5 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_FALLOBJ_H */ diff --git a/include/rel/d/a/obj/d_a_obj_fan/d_a_obj_fan.h b/include/rel/d/a/obj/d_a_obj_fan/d_a_obj_fan.h index 6e56004672..c00a18230f 100644 --- a/include/rel/d/a/obj/d_a_obj_fan/d_a_obj_fan.h +++ b/include/rel/d/a/obj/d_a_obj_fan/d_a_obj_fan.h @@ -1,10 +1,8 @@ #ifndef D_A_OBJ_FAN_H #define D_A_OBJ_FAN_H -#include "dolphin/types.h" #include "d/bg/d_bg_s_movebg_actor.h" #include "d/cc/d_cc_d.h" -#include "SSystem/SComponent/c_phase.h" #include "f_op/f_op_actor_mng.h" struct daObjFan_c : public dBgS_MoveBgActor { diff --git a/include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h b/include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h index 6bfb6c774b..58b6bae5ae 100644 --- a/include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h +++ b/include/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h @@ -1,9 +1,7 @@ #ifndef D_A_OBJ_FIREWOOD_H #define D_A_OBJ_FIREWOOD_H -#include "d/cc/d_cc_d.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_hostIO.h" #endif /* D_A_OBJ_FIREWOOD_H */ diff --git a/include/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.h b/include/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.h index f5826358cf..2953c37672 100644 --- a/include/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.h +++ b/include/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.h @@ -2,6 +2,5 @@ #define D_A_OBJ_FIREWOOD2_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_FIREWOOD2_H */ diff --git a/include/rel/d/a/obj/d_a_obj_firepillar/d_a_obj_firepillar.h b/include/rel/d/a/obj/d_a_obj_firepillar/d_a_obj_firepillar.h index 2b6a0b79ab..9ff2adfe26 100644 --- a/include/rel/d/a/obj/d_a_obj_firepillar/d_a_obj_firepillar.h +++ b/include/rel/d/a/obj/d_a_obj_firepillar/d_a_obj_firepillar.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_FIREPILLAR_H #define D_A_OBJ_FIREPILLAR_H -#include "dolphin/types.h" #endif /* D_A_OBJ_FIREPILLAR_H */ diff --git a/include/rel/d/a/obj/d_a_obj_firepillar2/d_a_obj_firepillar2.h b/include/rel/d/a/obj/d_a_obj_firepillar2/d_a_obj_firepillar2.h index 04e3c96716..e438b92892 100644 --- a/include/rel/d/a/obj/d_a_obj_firepillar2/d_a_obj_firepillar2.h +++ b/include/rel/d/a/obj/d_a_obj_firepillar2/d_a_obj_firepillar2.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_FIREPILLAR2_H #define D_A_OBJ_FIREPILLAR2_H -#include "dolphin/types.h" #endif /* D_A_OBJ_FIREPILLAR2_H */ diff --git a/include/rel/d/a/obj/d_a_obj_flag2/d_a_obj_flag2.h b/include/rel/d/a/obj/d_a_obj_flag2/d_a_obj_flag2.h index f6af00a7dd..0464efc9f5 100644 --- a/include/rel/d/a/obj/d_a_obj_flag2/d_a_obj_flag2.h +++ b/include/rel/d/a/obj/d_a_obj_flag2/d_a_obj_flag2.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_FLAG2_H #define D_A_OBJ_FLAG2_H -#include "dolphin/types.h" #endif /* D_A_OBJ_FLAG2_H */ diff --git a/include/rel/d/a/obj/d_a_obj_food/d_a_obj_food.h b/include/rel/d/a/obj/d_a_obj_food/d_a_obj_food.h index 660b28f857..963fa5e56c 100644 --- a/include/rel/d/a/obj/d_a_obj_food/d_a_obj_food.h +++ b/include/rel/d/a/obj/d_a_obj_food/d_a_obj_food.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_FOOD_H #define D_A_OBJ_FOOD_H -#include "dolphin/types.h" #endif /* D_A_OBJ_FOOD_H */ diff --git a/include/rel/d/a/obj/d_a_obj_gadget/d_a_obj_gadget.h b/include/rel/d/a/obj/d_a_obj_gadget/d_a_obj_gadget.h index f24b3d253b..48d8d6cb4d 100644 --- a/include/rel/d/a/obj/d_a_obj_gadget/d_a_obj_gadget.h +++ b/include/rel/d/a/obj/d_a_obj_gadget/d_a_obj_gadget.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_GADGET_H #define D_A_OBJ_GADGET_H -#include "dolphin/types.h" #endif /* D_A_OBJ_GADGET_H */ diff --git a/include/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.h b/include/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.h index ce3b0a4f88..861155616b 100644 --- a/include/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.h +++ b/include/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.h @@ -2,6 +2,5 @@ #define D_A_OBJ_GANONWALL_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_GANONWALL_H */ diff --git a/include/rel/d/a/obj/d_a_obj_geyser/d_a_obj_geyser.h b/include/rel/d/a/obj/d_a_obj_geyser/d_a_obj_geyser.h index 818c35f9ba..92be3b93a3 100644 --- a/include/rel/d/a/obj/d_a_obj_geyser/d_a_obj_geyser.h +++ b/include/rel/d/a/obj/d_a_obj_geyser/d_a_obj_geyser.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_GEYSER_H #define D_A_OBJ_GEYSER_H -#include "dolphin/types.h" #endif /* D_A_OBJ_GEYSER_H */ diff --git a/include/rel/d/a/obj/d_a_obj_gm/d_a_obj_gm.h b/include/rel/d/a/obj/d_a_obj_gm/d_a_obj_gm.h index 7d406d9821..3241dddc0f 100644 --- a/include/rel/d/a/obj/d_a_obj_gm/d_a_obj_gm.h +++ b/include/rel/d/a/obj/d_a_obj_gm/d_a_obj_gm.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_GM_H #define D_A_OBJ_GM_H -#include "dolphin/types.h" #endif /* D_A_OBJ_GM_H */ diff --git a/include/rel/d/a/obj/d_a_obj_gomikabe/d_a_obj_gomikabe.h b/include/rel/d/a/obj/d_a_obj_gomikabe/d_a_obj_gomikabe.h index 5a547982ba..110f5c6dae 100644 --- a/include/rel/d/a/obj/d_a_obj_gomikabe/d_a_obj_gomikabe.h +++ b/include/rel/d/a/obj/d_a_obj_gomikabe/d_a_obj_gomikabe.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_GOMIKABE_H #define D_A_OBJ_GOMIKABE_H -#include "dolphin/types.h" #endif /* D_A_OBJ_GOMIKABE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.h b/include/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.h index e65ba81ba2..ffd623b44f 100644 --- a/include/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.h +++ b/include/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_GRAWALL_H #define D_A_OBJ_GRAWALL_H -#include "d/cc/d_cc_d.h" #include "d/com/d_com_inf_game.h" #include "f_op/f_op_actor_mng.h" diff --git a/include/rel/d/a/obj/d_a_obj_grave_stone/d_a_obj_grave_stone.h b/include/rel/d/a/obj/d_a_obj_grave_stone/d_a_obj_grave_stone.h index def07c1c30..749c444e51 100644 --- a/include/rel/d/a/obj/d_a_obj_grave_stone/d_a_obj_grave_stone.h +++ b/include/rel/d/a/obj/d_a_obj_grave_stone/d_a_obj_grave_stone.h @@ -1,8 +1,6 @@ #ifndef D_A_OBJ_GRAVE_STONE_H #define D_A_OBJ_GRAVE_STONE_H -#include "SSystem/SComponent/c_phase.h" -#include "d/bg/d_bg_s_acch.h" #include "d/bg/d_bg_s_movebg_actor.h" #include "d/cc/d_cc_d.h" #include "d/particle/d_particle_copoly.h" diff --git a/include/rel/d/a/obj/d_a_obj_hb/d_a_obj_hb.h b/include/rel/d/a/obj/d_a_obj_hb/d_a_obj_hb.h index 627df03fda..16d98c8496 100644 --- a/include/rel/d/a/obj/d_a_obj_hb/d_a_obj_hb.h +++ b/include/rel/d/a/obj/d_a_obj_hb/d_a_obj_hb.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_HB_H #define D_A_OBJ_HB_H -#include "dolphin/types.h" #endif /* D_A_OBJ_HB_H */ diff --git a/include/rel/d/a/obj/d_a_obj_heavySw/d_a_obj_heavySw.h b/include/rel/d/a/obj/d_a_obj_heavySw/d_a_obj_heavySw.h index db817f41e5..6dec3060c9 100644 --- a/include/rel/d/a/obj/d_a_obj_heavySw/d_a_obj_heavySw.h +++ b/include/rel/d/a/obj/d_a_obj_heavySw/d_a_obj_heavySw.h @@ -1,11 +1,9 @@ #ifndef D_A_OBJ_HEAVYSW_H #define D_A_OBJ_HEAVYSW_H -#include "d/bg/d_bg_s.h" #include "d/bg/d_bg_s_movebg_actor.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_hostIO.h" class daHeavySw_c : public dBgS_MoveBgActor { diff --git a/include/rel/d/a/obj/d_a_obj_hhashi/d_a_obj_hhashi.h b/include/rel/d/a/obj/d_a_obj_hhashi/d_a_obj_hhashi.h index 2f5272f1ac..501906d0cd 100644 --- a/include/rel/d/a/obj/d_a_obj_hhashi/d_a_obj_hhashi.h +++ b/include/rel/d/a/obj/d_a_obj_hhashi/d_a_obj_hhashi.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_HHASHI_H #define D_A_OBJ_HHASHI_H -#include "dolphin/types.h" #endif /* D_A_OBJ_HHASHI_H */ diff --git a/include/rel/d/a/obj/d_a_obj_iceblock/d_a_obj_iceblock.h b/include/rel/d/a/obj/d_a_obj_iceblock/d_a_obj_iceblock.h index bc1e4a7ec6..8cc1ecead7 100644 --- a/include/rel/d/a/obj/d_a_obj_iceblock/d_a_obj_iceblock.h +++ b/include/rel/d/a/obj/d_a_obj_iceblock/d_a_obj_iceblock.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_ICEBLOCK_H #define D_A_OBJ_ICEBLOCK_H -#include "dolphin/types.h" #endif /* D_A_OBJ_ICEBLOCK_H */ diff --git a/include/rel/d/a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.h b/include/rel/d/a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.h index 7b19a4c879..1243fe935d 100644 --- a/include/rel/d/a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.h +++ b/include/rel/d/a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_ICELEAF_H #define D_A_OBJ_ICELEAF_H -#include "f_op/f_op_actor_mng.h" #include "d/cc/d_cc_d.h" class daObjIceLeaf_c : public fopAc_ac_c { diff --git a/include/rel/d/a/obj/d_a_obj_inobone/d_a_obj_inobone.h b/include/rel/d/a/obj/d_a_obj_inobone/d_a_obj_inobone.h index aa22b60518..8ca4e5e4a1 100644 --- a/include/rel/d/a/obj/d_a_obj_inobone/d_a_obj_inobone.h +++ b/include/rel/d/a/obj/d_a_obj_inobone/d_a_obj_inobone.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_INOBONE_H #define D_A_OBJ_INOBONE_H -#include "dolphin/types.h" #endif /* D_A_OBJ_INOBONE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_itamato/d_a_obj_itamato.h b/include/rel/d/a/obj/d_a_obj_itamato/d_a_obj_itamato.h index 4db2df9496..abb1f2d6f2 100644 --- a/include/rel/d/a/obj/d_a_obj_itamato/d_a_obj_itamato.h +++ b/include/rel/d/a/obj/d_a_obj_itamato/d_a_obj_itamato.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_ITAMATO_H #define D_A_OBJ_ITAMATO_H -#include "dolphin/types.h" #endif /* D_A_OBJ_ITAMATO_H */ diff --git a/include/rel/d/a/obj/d_a_obj_ito/d_a_obj_ito.h b/include/rel/d/a/obj/d_a_obj_ito/d_a_obj_ito.h index b296687113..d881ad8801 100644 --- a/include/rel/d/a/obj/d_a_obj_ito/d_a_obj_ito.h +++ b/include/rel/d/a/obj/d_a_obj_ito/d_a_obj_ito.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_ITO_H #define D_A_OBJ_ITO_H -#include "dolphin/types.h" #endif /* D_A_OBJ_ITO_H */ diff --git a/include/rel/d/a/obj/d_a_obj_kago/d_a_obj_kago.h b/include/rel/d/a/obj/d_a_obj_kago/d_a_obj_kago.h index cf40ef114b..3cb12e6403 100644 --- a/include/rel/d/a/obj/d_a_obj_kago/d_a_obj_kago.h +++ b/include/rel/d/a/obj/d_a_obj_kago/d_a_obj_kago.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_KAGO_H #define D_A_OBJ_KAGO_H -#include "dolphin/types.h" #endif /* D_A_OBJ_KAGO_H */ diff --git a/include/rel/d/a/obj/d_a_obj_kaisou/d_a_obj_kaisou.h b/include/rel/d/a/obj/d_a_obj_kaisou/d_a_obj_kaisou.h index 36422552fc..aa69b1385f 100644 --- a/include/rel/d/a/obj/d_a_obj_kaisou/d_a_obj_kaisou.h +++ b/include/rel/d/a/obj/d_a_obj_kaisou/d_a_obj_kaisou.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_KAISOU_H #define D_A_OBJ_KAISOU_H -#include "dolphin/types.h" #endif /* D_A_OBJ_KAISOU_H */ diff --git a/include/rel/d/a/obj/d_a_obj_kamakiri/d_a_obj_kamakiri.h b/include/rel/d/a/obj/d_a_obj_kamakiri/d_a_obj_kamakiri.h index 661302d7d3..707efda5dd 100644 --- a/include/rel/d/a/obj/d_a_obj_kamakiri/d_a_obj_kamakiri.h +++ b/include/rel/d/a/obj/d_a_obj_kamakiri/d_a_obj_kamakiri.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_KAMAKIRI_H #define D_A_OBJ_KAMAKIRI_H -#include "dolphin/types.h" #endif /* D_A_OBJ_KAMAKIRI_H */ diff --git a/include/rel/d/a/obj/d_a_obj_kantera/d_a_obj_kantera.h b/include/rel/d/a/obj/d_a_obj_kantera/d_a_obj_kantera.h index 0b1e0c968a..881e1c7eab 100644 --- a/include/rel/d/a/obj/d_a_obj_kantera/d_a_obj_kantera.h +++ b/include/rel/d/a/obj/d_a_obj_kantera/d_a_obj_kantera.h @@ -1,6 +1,4 @@ #ifndef D_A_OBJ_KANTERA_H #define D_A_OBJ_KANTERA_H -#include "d/a/d_a_itembase.h" - #endif /* D_A_OBJ_KANTERA_H */ diff --git a/include/rel/d/a/obj/d_a_obj_katatsumuri/d_a_obj_katatsumuri.h b/include/rel/d/a/obj/d_a_obj_katatsumuri/d_a_obj_katatsumuri.h index 262032bae3..d681497302 100644 --- a/include/rel/d/a/obj/d_a_obj_katatsumuri/d_a_obj_katatsumuri.h +++ b/include/rel/d/a/obj/d_a_obj_katatsumuri/d_a_obj_katatsumuri.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_KATATSUMURI_H #define D_A_OBJ_KATATSUMURI_H -#include "dolphin/types.h" #endif /* D_A_OBJ_KATATSUMURI_H */ diff --git a/include/rel/d/a/obj/d_a_obj_kazeneko/d_a_obj_kazeneko.h b/include/rel/d/a/obj/d_a_obj_kazeneko/d_a_obj_kazeneko.h index 9253943d3b..f568a32073 100644 --- a/include/rel/d/a/obj/d_a_obj_kazeneko/d_a_obj_kazeneko.h +++ b/include/rel/d/a/obj/d_a_obj_kazeneko/d_a_obj_kazeneko.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_KAZENEKO_H #define D_A_OBJ_KAZENEKO_H -#include "dolphin/types.h" #endif /* D_A_OBJ_KAZENEKO_H */ diff --git a/include/rel/d/a/obj/d_a_obj_kbacket/d_a_obj_kbacket.h b/include/rel/d/a/obj/d_a_obj_kbacket/d_a_obj_kbacket.h index a58623d87f..50382ef4a9 100644 --- a/include/rel/d/a/obj/d_a_obj_kbacket/d_a_obj_kbacket.h +++ b/include/rel/d/a/obj/d_a_obj_kbacket/d_a_obj_kbacket.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_KBACKET_H #define D_A_OBJ_KBACKET_H -#include "dolphin/types.h" #endif /* D_A_OBJ_KBACKET_H */ diff --git a/include/rel/d/a/obj/d_a_obj_kbox/d_a_obj_kbox.h b/include/rel/d/a/obj/d_a_obj_kbox/d_a_obj_kbox.h index b3dfc5d7ad..a161f60e12 100644 --- a/include/rel/d/a/obj/d_a_obj_kbox/d_a_obj_kbox.h +++ b/include/rel/d/a/obj/d_a_obj_kbox/d_a_obj_kbox.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_KBOX_H #define D_A_OBJ_KBOX_H -#include "dolphin/types.h" #endif /* D_A_OBJ_KBOX_H */ diff --git a/include/rel/d/a/obj/d_a_obj_kjgjs/d_a_obj_kjgjs.h b/include/rel/d/a/obj/d_a_obj_kjgjs/d_a_obj_kjgjs.h index 4328f72c3e..45f9c06994 100644 --- a/include/rel/d/a/obj/d_a_obj_kjgjs/d_a_obj_kjgjs.h +++ b/include/rel/d/a/obj/d_a_obj_kjgjs/d_a_obj_kjgjs.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daObjKJgjs_c : public dBgS_MoveBgActor, public request_of_phase_process_class { public: diff --git a/include/rel/d/a/obj/d_a_obj_kkanban/d_a_obj_kkanban.h b/include/rel/d/a/obj/d_a_obj_kkanban/d_a_obj_kkanban.h index bdba35c58f..9b9246da97 100644 --- a/include/rel/d/a/obj/d_a_obj_kkanban/d_a_obj_kkanban.h +++ b/include/rel/d/a/obj/d_a_obj_kkanban/d_a_obj_kkanban.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daObjKKanban_c : public dBgS_MoveBgActor { public: diff --git a/include/rel/d/a/obj/d_a_obj_klift00/d_a_obj_klift00.h b/include/rel/d/a/obj/d_a_obj_klift00/d_a_obj_klift00.h index 604cd2f0d9..31078327a1 100644 --- a/include/rel/d/a/obj/d_a_obj_klift00/d_a_obj_klift00.h +++ b/include/rel/d/a/obj/d_a_obj_klift00/d_a_obj_klift00.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_KLIFT00_H #define D_A_OBJ_KLIFT00_H -#include "dolphin/types.h" #endif /* D_A_OBJ_KLIFT00_H */ diff --git a/include/rel/d/a/obj/d_a_obj_knBullet/d_a_obj_knBullet.h b/include/rel/d/a/obj/d_a_obj_knBullet/d_a_obj_knBullet.h index 60c578a50f..85a941e327 100644 --- a/include/rel/d/a/obj/d_a_obj_knBullet/d_a_obj_knBullet.h +++ b/include/rel/d/a/obj/d_a_obj_knBullet/d_a_obj_knBullet.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_KNBULLET_H #define D_A_OBJ_KNBULLET_H -#include "dolphin/types.h" #endif /* D_A_OBJ_KNBULLET_H */ diff --git a/include/rel/d/a/obj/d_a_obj_kuwagata/d_a_obj_kuwagata.h b/include/rel/d/a/obj/d_a_obj_kuwagata/d_a_obj_kuwagata.h index 7776d0dde2..3915451bfc 100644 --- a/include/rel/d/a/obj/d_a_obj_kuwagata/d_a_obj_kuwagata.h +++ b/include/rel/d/a/obj/d_a_obj_kuwagata/d_a_obj_kuwagata.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_KUWAGATA_H #define D_A_OBJ_KUWAGATA_H -#include "dolphin/types.h" #endif /* D_A_OBJ_KUWAGATA_H */ diff --git a/include/rel/d/a/obj/d_a_obj_kwheel00/d_a_obj_kwheel00.h b/include/rel/d/a/obj/d_a_obj_kwheel00/d_a_obj_kwheel00.h index 43598a07a2..47aa7f3dd4 100644 --- a/include/rel/d/a/obj/d_a_obj_kwheel00/d_a_obj_kwheel00.h +++ b/include/rel/d/a/obj/d_a_obj_kwheel00/d_a_obj_kwheel00.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_KWHEEL00_H #define D_A_OBJ_KWHEEL00_H -#include "dolphin/types.h" #endif /* D_A_OBJ_KWHEEL00_H */ diff --git a/include/rel/d/a/obj/d_a_obj_laundry/d_a_obj_laundry.h b/include/rel/d/a/obj/d_a_obj_laundry/d_a_obj_laundry.h index 87d1954446..91e331da6e 100644 --- a/include/rel/d/a/obj/d_a_obj_laundry/d_a_obj_laundry.h +++ b/include/rel/d/a/obj/d_a_obj_laundry/d_a_obj_laundry.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_LAUNDRY_H #define D_A_OBJ_LAUNDRY_H -#include "dolphin/types.h" #endif /* D_A_OBJ_LAUNDRY_H */ diff --git a/include/rel/d/a/obj/d_a_obj_laundry_rope/d_a_obj_laundry_rope.h b/include/rel/d/a/obj/d_a_obj_laundry_rope/d_a_obj_laundry_rope.h index ba0bda7dc0..b8c9910f05 100644 --- a/include/rel/d/a/obj/d_a_obj_laundry_rope/d_a_obj_laundry_rope.h +++ b/include/rel/d/a/obj/d_a_obj_laundry_rope/d_a_obj_laundry_rope.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_LAUNDRY_ROPE_H #define D_A_OBJ_LAUNDRY_ROPE_H -#include "dolphin/types.h" #endif /* D_A_OBJ_LAUNDRY_ROPE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_life_container/d_a_obj_life_container.h b/include/rel/d/a/obj/d_a_obj_life_container/d_a_obj_life_container.h index cbc18e7f19..41755394e8 100644 --- a/include/rel/d/a/obj/d_a_obj_life_container/d_a_obj_life_container.h +++ b/include/rel/d/a/obj/d_a_obj_life_container/d_a_obj_life_container.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_LIFE_CONTAINER_H #define D_A_OBJ_LIFE_CONTAINER_H -#include "dolphin/types.h" #endif /* D_A_OBJ_LIFE_CONTAINER_H */ diff --git a/include/rel/d/a/obj/d_a_obj_lv2Candle/d_a_obj_lv2Candle.h b/include/rel/d/a/obj/d_a_obj_lv2Candle/d_a_obj_lv2Candle.h index 1c277416e8..03f56d0c72 100644 --- a/include/rel/d/a/obj/d_a_obj_lv2Candle/d_a_obj_lv2Candle.h +++ b/include/rel/d/a/obj/d_a_obj_lv2Candle/d_a_obj_lv2Candle.h @@ -1,9 +1,7 @@ #ifndef D_A_OBJ_LV2CANDLE_H #define D_A_OBJ_LV2CANDLE_H -#include "SSystem/SComponent/c_phase.h" #include "d/cc/d_cc_d.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_hostIO.h" #include "rel/d/a/obj/d_a_obj_lv4CandleTag/d_a_obj_lv4CandleTag.h" diff --git a/include/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle.h b/include/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle.h index 541ef5017e..343c74ce14 100644 --- a/include/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle.h +++ b/include/rel/d/a/obj/d_a_obj_lv3Candle/d_a_obj_lv3Candle.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_LV3CANDLE_H #define D_A_OBJ_LV3CANDLE_H -#include "Z2AudioLib/Z2SoundObject.h" #include "d/cc/d_cc_d.h" #include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_hostIO.h" diff --git a/include/rel/d/a/obj/d_a_obj_lv4CandleDemoTag/d_a_obj_lv4CandleDemoTag.h b/include/rel/d/a/obj/d_a_obj_lv4CandleDemoTag/d_a_obj_lv4CandleDemoTag.h index 4df6913b9c..414287a632 100644 --- a/include/rel/d/a/obj/d_a_obj_lv4CandleDemoTag/d_a_obj_lv4CandleDemoTag.h +++ b/include/rel/d/a/obj/d_a_obj_lv4CandleDemoTag/d_a_obj_lv4CandleDemoTag.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_LV4CANDLEDEMOTAG_H #define D_A_OBJ_LV4CANDLEDEMOTAG_H -#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_LV4CANDLEDEMOTAG_H */ diff --git a/include/rel/d/a/obj/d_a_obj_lv4Gate/d_a_obj_lv4Gate.h b/include/rel/d/a/obj/d_a_obj_lv4Gate/d_a_obj_lv4Gate.h index 3b7534aa79..bd7e1ab36b 100644 --- a/include/rel/d/a/obj/d_a_obj_lv4Gate/d_a_obj_lv4Gate.h +++ b/include/rel/d/a/obj/d_a_obj_lv4Gate/d_a_obj_lv4Gate.h @@ -1,50 +1,50 @@ -#ifndef D_A_OBJ_LV4GATE_H -#define D_A_OBJ_LV4GATE_H - -#include "d/bg/d_bg_s_movebg_actor.h" -#include "f_op/f_op_actor_mng.h" -#include "m_Do/m_Do_hostIO.h" - -class daLv4Gate_c : public dBgS_MoveBgActor { -public: - enum Mode_e { - MODE_WAIT_e, - MODE_MOVE_e, - MODE_MOVE_END_e, - }; - - /* 80C5EBE4 */ void setBaseMtx(); - /* 80C5ECEC */ int create(); - /* 80C5EEA4 */ void moveGate(); - /* 80C5EF48 */ void init_modeWait(); - /* 80C5EF54 */ void modeWait(); - /* 80C5EFB0 */ void init_modeMove(); - /* 80C5EFBC */ void modeMove(); - /* 80C5F0C4 */ void init_modeMoveEnd(); - /* 80C5F1E4 */ void modeMoveEnd(); - - /* 80C5EC80 */ virtual int CreateHeap(); - /* 80C5EE54 */ virtual int Execute(Mtx**); - /* 80C5F1E8 */ virtual int Draw(); - /* 80C5F28C */ virtual int Delete(); - - /* 0x5A0 */ request_of_phase_process_class mPhase; - /* 0x5A8 */ J3DModel* mpModel; - /* 0x5AC */ u8 mMode; - /* 0x5AD */ u8 mGateOpened; - /* 0x5AE */ u8 mInitMove; - /* 0x5AF */ u8 mMoveType; - /* 0x5B0 */ f32 mMoveTarget; - /* 0x5B4 */ f32 mMoveValue; -}; - -class daLv4Gate_HIO_c : public mDoHIO_entry_c { -public: - /* 80C5EB6C */ daLv4Gate_HIO_c(); - /* 80C5F348 */ virtual ~daLv4Gate_HIO_c() {} - - /* 0x4 */ f32 mMoveSpeed; - /* 0x8 */ u8 mShockStrength; -}; - -#endif /* D_A_OBJ_LV4GATE_H */ +#ifndef D_A_OBJ_LV4GATE_H +#define D_A_OBJ_LV4GATE_H + +#include "d/bg/d_bg_s_movebg_actor.h" +#include "f_op/f_op_actor_mng.h" +#include "m_Do/m_Do_hostIO.h" + +class daLv4Gate_c : public dBgS_MoveBgActor { +public: + enum Mode_e { + MODE_WAIT_e, + MODE_MOVE_e, + MODE_MOVE_END_e, + }; + + /* 80C5EBE4 */ void setBaseMtx(); + /* 80C5ECEC */ int create(); + /* 80C5EEA4 */ void moveGate(); + /* 80C5EF48 */ void init_modeWait(); + /* 80C5EF54 */ void modeWait(); + /* 80C5EFB0 */ void init_modeMove(); + /* 80C5EFBC */ void modeMove(); + /* 80C5F0C4 */ void init_modeMoveEnd(); + /* 80C5F1E4 */ void modeMoveEnd(); + + /* 80C5EC80 */ virtual int CreateHeap(); + /* 80C5EE54 */ virtual int Execute(Mtx**); + /* 80C5F1E8 */ virtual int Draw(); + /* 80C5F28C */ virtual int Delete(); + + /* 0x5A0 */ request_of_phase_process_class mPhase; + /* 0x5A8 */ J3DModel* mpModel; + /* 0x5AC */ u8 mMode; + /* 0x5AD */ u8 mGateOpened; + /* 0x5AE */ u8 mInitMove; + /* 0x5AF */ u8 mMoveType; + /* 0x5B0 */ f32 mMoveTarget; + /* 0x5B4 */ f32 mMoveValue; +}; + +class daLv4Gate_HIO_c : public mDoHIO_entry_c { +public: + /* 80C5EB6C */ daLv4Gate_HIO_c(); + /* 80C5F348 */ virtual ~daLv4Gate_HIO_c() {} + + /* 0x4 */ f32 mMoveSpeed; + /* 0x8 */ u8 mShockStrength; +}; + +#endif /* D_A_OBJ_LV4GATE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_lv4chandelier/d_a_obj_lv4chandelier.h b/include/rel/d/a/obj/d_a_obj_lv4chandelier/d_a_obj_lv4chandelier.h index 5a3e38fda2..d6d0dfb533 100644 --- a/include/rel/d/a/obj/d_a_obj_lv4chandelier/d_a_obj_lv4chandelier.h +++ b/include/rel/d/a/obj/d_a_obj_lv4chandelier/d_a_obj_lv4chandelier.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_LV4CHANDELIER_H #define D_A_OBJ_LV4CHANDELIER_H -#include "dolphin/types.h" #endif /* D_A_OBJ_LV4CHANDELIER_H */ diff --git a/include/rel/d/a/obj/d_a_obj_lv4gear/d_a_obj_lv4gear.h b/include/rel/d/a/obj/d_a_obj_lv4gear/d_a_obj_lv4gear.h index 3411e49a01..b5472017da 100644 --- a/include/rel/d/a/obj/d_a_obj_lv4gear/d_a_obj_lv4gear.h +++ b/include/rel/d/a/obj/d_a_obj_lv4gear/d_a_obj_lv4gear.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_LV4GEAR_H #define D_A_OBJ_LV4GEAR_H -#include "f_op/f_op_actor_mng.h" #include "rel/d/a/obj/d_a_obj_swspinner/d_a_obj_swspinner.h" class daObjLv4Gear_c : public fopAc_ac_c { diff --git a/include/rel/d/a/obj/d_a_obj_lv5ychndlr/d_a_obj_lv5ychndlr.h b/include/rel/d/a/obj/d_a_obj_lv5ychndlr/d_a_obj_lv5ychndlr.h index ce4d2d4beb..46f373cae6 100644 --- a/include/rel/d/a/obj/d_a_obj_lv5ychndlr/d_a_obj_lv5ychndlr.h +++ b/include/rel/d/a/obj/d_a_obj_lv5ychndlr/d_a_obj_lv5ychndlr.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_LV5YCHNDLR_H #define D_A_OBJ_LV5YCHNDLR_H -#include "dolphin/types.h" #endif /* D_A_OBJ_LV5YCHNDLR_H */ diff --git a/include/rel/d/a/obj/d_a_obj_lv5yiblltray/d_a_obj_lv5yiblltray.h b/include/rel/d/a/obj/d_a_obj_lv5yiblltray/d_a_obj_lv5yiblltray.h index bca73f648a..30e0be54de 100644 --- a/include/rel/d/a/obj/d_a_obj_lv5yiblltray/d_a_obj_lv5yiblltray.h +++ b/include/rel/d/a/obj/d_a_obj_lv5yiblltray/d_a_obj_lv5yiblltray.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_LV5YIBLLTRAY_H #define D_A_OBJ_LV5YIBLLTRAY_H -#include "dolphin/types.h" #endif /* D_A_OBJ_LV5YIBLLTRAY_H */ diff --git a/include/rel/d/a/obj/d_a_obj_lv6bemos/d_a_obj_lv6bemos.h b/include/rel/d/a/obj/d_a_obj_lv6bemos/d_a_obj_lv6bemos.h index 5937c5d921..8b6b07231d 100644 --- a/include/rel/d/a/obj/d_a_obj_lv6bemos/d_a_obj_lv6bemos.h +++ b/include/rel/d/a/obj/d_a_obj_lv6bemos/d_a_obj_lv6bemos.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_LV6BEMOS_H #define D_A_OBJ_LV6BEMOS_H -#include "dolphin/types.h" #endif /* D_A_OBJ_LV6BEMOS_H */ diff --git a/include/rel/d/a/obj/d_a_obj_lv6bemos2/d_a_obj_lv6bemos2.h b/include/rel/d/a/obj/d_a_obj_lv6bemos2/d_a_obj_lv6bemos2.h index 9de6c47894..727d1b7b2a 100644 --- a/include/rel/d/a/obj/d_a_obj_lv6bemos2/d_a_obj_lv6bemos2.h +++ b/include/rel/d/a/obj/d_a_obj_lv6bemos2/d_a_obj_lv6bemos2.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_LV6BEMOS2_H #define D_A_OBJ_LV6BEMOS2_H -#include "dolphin/types.h" #endif /* D_A_OBJ_LV6BEMOS2_H */ diff --git a/include/rel/d/a/obj/d_a_obj_lv6egate/d_a_obj_lv6egate.h b/include/rel/d/a/obj/d_a_obj_lv6egate/d_a_obj_lv6egate.h index 01542d910b..52061bb7d8 100644 --- a/include/rel/d/a/obj/d_a_obj_lv6egate/d_a_obj_lv6egate.h +++ b/include/rel/d/a/obj/d_a_obj_lv6egate/d_a_obj_lv6egate.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_LV6EGATE_H #define D_A_OBJ_LV6EGATE_H -#include "dolphin/types.h" #endif /* D_A_OBJ_LV6EGATE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_lv7bridge/d_a_obj_lv7bridge.h b/include/rel/d/a/obj/d_a_obj_lv7bridge/d_a_obj_lv7bridge.h index 5892330b0a..47123b6ad3 100644 --- a/include/rel/d/a/obj/d_a_obj_lv7bridge/d_a_obj_lv7bridge.h +++ b/include/rel/d/a/obj/d_a_obj_lv7bridge/d_a_obj_lv7bridge.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_LV7BRIDGE_H #define D_A_OBJ_LV7BRIDGE_H -#include "dolphin/types.h" #endif /* D_A_OBJ_LV7BRIDGE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_magLiftRot/d_a_obj_magLiftRot.h b/include/rel/d/a/obj/d_a_obj_magLiftRot/d_a_obj_magLiftRot.h index 9ff21329f1..9b57eb4a8e 100644 --- a/include/rel/d/a/obj/d_a_obj_magLiftRot/d_a_obj_magLiftRot.h +++ b/include/rel/d/a/obj/d_a_obj_magLiftRot/d_a_obj_magLiftRot.h @@ -2,6 +2,5 @@ #define D_A_OBJ_MAGLIFTROT_H #include "d/bg/d_bg_s_movebg_actor.h" -#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_MAGLIFTROT_H */ diff --git a/include/rel/d/a/obj/d_a_obj_maki/d_a_obj_maki.h b/include/rel/d/a/obj/d_a_obj_maki/d_a_obj_maki.h index a3fa82a6e1..08bd39b54c 100644 --- a/include/rel/d/a/obj/d_a_obj_maki/d_a_obj_maki.h +++ b/include/rel/d/a/obj/d_a_obj_maki/d_a_obj_maki.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_MAKI_H #define D_A_OBJ_MAKI_H -#include "dolphin/types.h" #endif /* D_A_OBJ_MAKI_H */ diff --git a/include/rel/d/a/obj/d_a_obj_master_sword/d_a_obj_master_sword.h b/include/rel/d/a/obj/d_a_obj_master_sword/d_a_obj_master_sword.h index 0822de6541..04cb3f2a25 100644 --- a/include/rel/d/a/obj/d_a_obj_master_sword/d_a_obj_master_sword.h +++ b/include/rel/d/a/obj/d_a_obj_master_sword/d_a_obj_master_sword.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_MASTER_SWORD_H #define D_A_OBJ_MASTER_SWORD_H -#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_MASTER_SWORD_H */ diff --git a/include/rel/d/a/obj/d_a_obj_mgate/d_a_obj_mgate.h b/include/rel/d/a/obj/d_a_obj_mgate/d_a_obj_mgate.h index ea7fd6691f..7f65865c11 100644 --- a/include/rel/d/a/obj/d_a_obj_mgate/d_a_obj_mgate.h +++ b/include/rel/d/a/obj/d_a_obj_mgate/d_a_obj_mgate.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daObjMGate_c : public dBgS_MoveBgActor { public: diff --git a/include/rel/d/a/obj/d_a_obj_mhole/d_a_obj_mhole.h b/include/rel/d/a/obj/d_a_obj_mhole/d_a_obj_mhole.h index 9236ea9c19..be572abd4c 100644 --- a/include/rel/d/a/obj/d_a_obj_mhole/d_a_obj_mhole.h +++ b/include/rel/d/a/obj/d_a_obj_mhole/d_a_obj_mhole.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_MHOLE_H #define D_A_OBJ_MHOLE_H -#include "dolphin/types.h" #endif /* D_A_OBJ_MHOLE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_mie/d_a_obj_mie.h b/include/rel/d/a/obj/d_a_obj_mie/d_a_obj_mie.h index 94a0c0dd3c..ed77cfec95 100644 --- a/include/rel/d/a/obj/d_a_obj_mie/d_a_obj_mie.h +++ b/include/rel/d/a/obj/d_a_obj_mie/d_a_obj_mie.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_MIE_H #define D_A_OBJ_MIE_H -#include "dolphin/types.h" #endif /* D_A_OBJ_MIE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_movebox/d_a_obj_movebox.h b/include/rel/d/a/obj/d_a_obj_movebox/d_a_obj_movebox.h index a776d6502b..c437a167c5 100644 --- a/include/rel/d/a/obj/d_a_obj_movebox/d_a_obj_movebox.h +++ b/include/rel/d/a/obj/d_a_obj_movebox/d_a_obj_movebox.h @@ -1,8 +1,6 @@ #ifndef D_A_OBJ_MOVEBOX_H #define D_A_OBJ_MOVEBOX_H -#include "d/bg/d_bg_s_movebg_actor.h" -#include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" #include "f_op/f_op_actor_mng.h" diff --git a/include/rel/d/a/obj/d_a_obj_nameplate/d_a_obj_nameplate.h b/include/rel/d/a/obj/d_a_obj_nameplate/d_a_obj_nameplate.h index e3f183850c..7abe15fce9 100644 --- a/include/rel/d/a/obj/d_a_obj_nameplate/d_a_obj_nameplate.h +++ b/include/rel/d/a/obj/d_a_obj_nameplate/d_a_obj_nameplate.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_NAMEPLATE_H #define D_A_OBJ_NAMEPLATE_H -#include "dolphin/types.h" #endif /* D_A_OBJ_NAMEPLATE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_ndoor/d_a_obj_ndoor.h b/include/rel/d/a/obj/d_a_obj_ndoor/d_a_obj_ndoor.h index 46db323f84..039d516fe3 100644 --- a/include/rel/d/a/obj/d_a_obj_ndoor/d_a_obj_ndoor.h +++ b/include/rel/d/a/obj/d_a_obj_ndoor/d_a_obj_ndoor.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_NDOOR_H #define D_A_OBJ_NDOOR_H -#include "dolphin/types.h" #endif /* D_A_OBJ_NDOOR_H */ diff --git a/include/rel/d/a/obj/d_a_obj_octhashi/d_a_obj_octhashi.h b/include/rel/d/a/obj/d_a_obj_octhashi/d_a_obj_octhashi.h index 518f75b839..e206ec3932 100644 --- a/include/rel/d/a/obj/d_a_obj_octhashi/d_a_obj_octhashi.h +++ b/include/rel/d/a/obj/d_a_obj_octhashi/d_a_obj_octhashi.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_OCTHASHI_H #define D_A_OBJ_OCTHASHI_H -#include "dolphin/types.h" #endif /* D_A_OBJ_OCTHASHI_H */ diff --git a/include/rel/d/a/obj/d_a_obj_oiltubo/d_a_obj_oiltubo.h b/include/rel/d/a/obj/d_a_obj_oiltubo/d_a_obj_oiltubo.h index ad88723ca2..8bb04cf172 100644 --- a/include/rel/d/a/obj/d_a_obj_oiltubo/d_a_obj_oiltubo.h +++ b/include/rel/d/a/obj/d_a_obj_oiltubo/d_a_obj_oiltubo.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_OILTUBO_H #define D_A_OBJ_OILTUBO_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class daObj_Oiltubo_c : public fopAc_ac_c { diff --git a/include/rel/d/a/obj/d_a_obj_onsen/d_a_obj_onsen.h b/include/rel/d/a/obj/d_a_obj_onsen/d_a_obj_onsen.h index c0323f8c7b..22a88ac9c2 100644 --- a/include/rel/d/a/obj/d_a_obj_onsen/d_a_obj_onsen.h +++ b/include/rel/d/a/obj/d_a_obj_onsen/d_a_obj_onsen.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daObjOnsen_c : public dBgS_MoveBgActor { public: diff --git a/include/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.h b/include/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.h index 8bc4ffd432..ae5ea7363c 100644 --- a/include/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.h +++ b/include/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_ONSENFIRE_H #define D_A_OBJ_ONSENFIRE_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class daObjOnsenFire_c : public fopAc_ac_c { diff --git a/include/rel/d/a/obj/d_a_obj_pdtile/d_a_obj_pdtile.h b/include/rel/d/a/obj/d_a_obj_pdtile/d_a_obj_pdtile.h index 08a5f14c1e..7b60d72526 100644 --- a/include/rel/d/a/obj/d_a_obj_pdtile/d_a_obj_pdtile.h +++ b/include/rel/d/a/obj/d_a_obj_pdtile/d_a_obj_pdtile.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_PDTILE_H #define D_A_OBJ_PDTILE_H -#include "dolphin/types.h" #endif /* D_A_OBJ_PDTILE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_pillar/d_a_obj_pillar.h b/include/rel/d/a/obj/d_a_obj_pillar/d_a_obj_pillar.h index dc98d093dc..f9e12b49cf 100644 --- a/include/rel/d/a/obj/d_a_obj_pillar/d_a_obj_pillar.h +++ b/include/rel/d/a/obj/d_a_obj_pillar/d_a_obj_pillar.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_PILLAR_H #define D_A_OBJ_PILLAR_H -#include "dolphin/types.h" #endif /* D_A_OBJ_PILLAR_H */ diff --git a/include/rel/d/a/obj/d_a_obj_pleaf/d_a_obj_pleaf.h b/include/rel/d/a/obj/d_a_obj_pleaf/d_a_obj_pleaf.h index 4a3bc6e02e..15ef3017d4 100644 --- a/include/rel/d/a/obj/d_a_obj_pleaf/d_a_obj_pleaf.h +++ b/include/rel/d/a/obj/d_a_obj_pleaf/d_a_obj_pleaf.h @@ -1,8 +1,6 @@ #ifndef D_A_OBJ_PLEAF_H #define D_A_OBJ_PLEAF_H -#include "d/bg/d_bg_s.h" -#include "d/cc/d_cc_d.h" #include "d/com/d_com_inf_game.h" #include "f_op/f_op_actor_mng.h" diff --git a/include/rel/d/a/obj/d_a_obj_prop/d_a_obj_prop.h b/include/rel/d/a/obj/d_a_obj_prop/d_a_obj_prop.h index ad4c015912..723a4b542e 100644 --- a/include/rel/d/a/obj/d_a_obj_prop/d_a_obj_prop.h +++ b/include/rel/d/a/obj/d_a_obj_prop/d_a_obj_prop.h @@ -2,7 +2,6 @@ #define D_A_OBJ_PROP_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daObjProp_c : public fopAc_ac_c, public request_of_phase_process_class { public: diff --git a/include/rel/d/a/obj/d_a_obj_pumpkin/d_a_obj_pumpkin.h b/include/rel/d/a/obj/d_a_obj_pumpkin/d_a_obj_pumpkin.h index 3f9366d1bb..7cd7708b09 100644 --- a/include/rel/d/a/obj/d_a_obj_pumpkin/d_a_obj_pumpkin.h +++ b/include/rel/d/a/obj/d_a_obj_pumpkin/d_a_obj_pumpkin.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_PUMPKIN_H #define D_A_OBJ_PUMPKIN_H -#include "dolphin/types.h" #endif /* D_A_OBJ_PUMPKIN_H */ diff --git a/include/rel/d/a/obj/d_a_obj_rcircle/d_a_obj_rcircle.h b/include/rel/d/a/obj/d_a_obj_rcircle/d_a_obj_rcircle.h index 1f34d12e02..44f94c4532 100644 --- a/include/rel/d/a/obj/d_a_obj_rcircle/d_a_obj_rcircle.h +++ b/include/rel/d/a/obj/d_a_obj_rcircle/d_a_obj_rcircle.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_RCIRCLE_H #define D_A_OBJ_RCIRCLE_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class daObjRCircle_c : public fopAc_ac_c, public request_of_phase_process_class { diff --git a/include/rel/d/a/obj/d_a_obj_riverrock/d_a_obj_riverrock.h b/include/rel/d/a/obj/d_a_obj_riverrock/d_a_obj_riverrock.h index ef1ca8094e..69675110c9 100644 --- a/include/rel/d/a/obj/d_a_obj_riverrock/d_a_obj_riverrock.h +++ b/include/rel/d/a/obj/d_a_obj_riverrock/d_a_obj_riverrock.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_RIVERROCK_H #define D_A_OBJ_RIVERROCK_H -#include "dolphin/types.h" #endif /* D_A_OBJ_RIVERROCK_H */ diff --git a/include/rel/d/a/obj/d_a_obj_rock/d_a_obj_rock.h b/include/rel/d/a/obj/d_a_obj_rock/d_a_obj_rock.h index 9ba20dbc83..47e2909b34 100644 --- a/include/rel/d/a/obj/d_a_obj_rock/d_a_obj_rock.h +++ b/include/rel/d/a/obj/d_a_obj_rock/d_a_obj_rock.h @@ -3,7 +3,6 @@ #include "SSystem/SComponent/c_phase.h" #include "d/cc/d_cc_d.h" -#include "dolphin/types.h" #include "f_op/f_op_actor.h" class J3DModel; diff --git a/include/rel/d/a/obj/d_a_obj_rope_bridge/d_a_obj_rope_bridge.h b/include/rel/d/a/obj/d_a_obj_rope_bridge/d_a_obj_rope_bridge.h index bb840d0ed1..fbe015e46b 100644 --- a/include/rel/d/a/obj/d_a_obj_rope_bridge/d_a_obj_rope_bridge.h +++ b/include/rel/d/a/obj/d_a_obj_rope_bridge/d_a_obj_rope_bridge.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_ROPE_BRIDGE_H #define D_A_OBJ_ROPE_BRIDGE_H -#include "dolphin/types.h" #endif /* D_A_OBJ_ROPE_BRIDGE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_rw/d_a_obj_rw.h b/include/rel/d/a/obj/d_a_obj_rw/d_a_obj_rw.h index 65f73a709e..34b7c01001 100644 --- a/include/rel/d/a/obj/d_a_obj_rw/d_a_obj_rw.h +++ b/include/rel/d/a/obj/d_a_obj_rw/d_a_obj_rw.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_RW_H #define D_A_OBJ_RW_H -#include "dolphin/types.h" #endif /* D_A_OBJ_RW_H */ diff --git a/include/rel/d/a/obj/d_a_obj_sekizoa/d_a_obj_sekizoa.h b/include/rel/d/a/obj/d_a_obj_sekizoa/d_a_obj_sekizoa.h index 404070509a..616fb2271a 100644 --- a/include/rel/d/a/obj/d_a_obj_sekizoa/d_a_obj_sekizoa.h +++ b/include/rel/d/a/obj/d_a_obj_sekizoa/d_a_obj_sekizoa.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_SEKIZOA_H #define D_A_OBJ_SEKIZOA_H -#include "f_op/f_op_actor_mng.h" #include "d/a/d_a_npc.h" class daObj_Sekizoa_c : public daNpcT_c { diff --git a/include/rel/d/a/obj/d_a_obj_shield/d_a_obj_shield.h b/include/rel/d/a/obj/d_a_obj_shield/d_a_obj_shield.h index 96ba383a97..68bdcaf901 100644 --- a/include/rel/d/a/obj/d_a_obj_shield/d_a_obj_shield.h +++ b/include/rel/d/a/obj/d_a_obj_shield/d_a_obj_shield.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_SHIELD_H #define D_A_OBJ_SHIELD_H -#include "dolphin/types.h" #endif /* D_A_OBJ_SHIELD_H */ diff --git a/include/rel/d/a/obj/d_a_obj_smallkey/d_a_obj_smallkey.h b/include/rel/d/a/obj/d_a_obj_smallkey/d_a_obj_smallkey.h index 321ecd134a..4e98f3a3df 100644 --- a/include/rel/d/a/obj/d_a_obj_smallkey/d_a_obj_smallkey.h +++ b/include/rel/d/a/obj/d_a_obj_smallkey/d_a_obj_smallkey.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_SMALLKEY_H #define D_A_OBJ_SMALLKEY_H -#include "dolphin/types.h" #endif /* D_A_OBJ_SMALLKEY_H */ diff --git a/include/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.h b/include/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.h index 01dd9e784b..a7446ef6f2 100644 --- a/include/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.h +++ b/include/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_SMOKE_H #define D_A_OBJ_SMOKE_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class daObjSmoke_c : public fopAc_ac_c { diff --git a/include/rel/d/a/obj/d_a_obj_smw_stone/d_a_obj_smw_stone.h b/include/rel/d/a/obj/d_a_obj_smw_stone/d_a_obj_smw_stone.h index 34b3b22234..164426b462 100644 --- a/include/rel/d/a/obj/d_a_obj_smw_stone/d_a_obj_smw_stone.h +++ b/include/rel/d/a/obj/d_a_obj_smw_stone/d_a_obj_smw_stone.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_SMW_STONE_H #define D_A_OBJ_SMW_STONE_H -#include "f_op/f_op_actor_mng.h" class daSmWStone_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/obj/d_a_obj_snow_soup/d_a_obj_snow_soup.h b/include/rel/d/a/obj/d_a_obj_snow_soup/d_a_obj_snow_soup.h index 3bda5b4d14..c724499882 100644 --- a/include/rel/d/a/obj/d_a_obj_snow_soup/d_a_obj_snow_soup.h +++ b/include/rel/d/a/obj/d_a_obj_snow_soup/d_a_obj_snow_soup.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_SNOW_SOUP_H #define D_A_OBJ_SNOW_SOUP_H -#include "JSystem/JParticle/JPAEmitter.h" #include "SSystem/SComponent/c_phase.h" #include "f_op/f_op_actor.h" diff --git a/include/rel/d/a/obj/d_a_obj_so/d_a_obj_so.h b/include/rel/d/a/obj/d_a_obj_so/d_a_obj_so.h index 37163395af..a93ee2b9f6 100644 --- a/include/rel/d/a/obj/d_a_obj_so/d_a_obj_so.h +++ b/include/rel/d/a/obj/d_a_obj_so/d_a_obj_so.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_SO_H #define D_A_OBJ_SO_H -#include "dolphin/types.h" #endif /* D_A_OBJ_SO_H */ diff --git a/include/rel/d/a/obj/d_a_obj_ss_item/d_a_obj_ss_item.h b/include/rel/d/a/obj/d_a_obj_ss_item/d_a_obj_ss_item.h index fd7d22eb44..70672805e0 100644 --- a/include/rel/d/a/obj/d_a_obj_ss_item/d_a_obj_ss_item.h +++ b/include/rel/d/a/obj/d_a_obj_ss_item/d_a_obj_ss_item.h @@ -6,7 +6,6 @@ #include "d/bg/d_bg_s_acch.h" #include "d/cc/d_cc_d.h" #include "d/msg/d_msg_flow.h" -#include "dolphin/types.h" class daObj_SSItem_c; typedef int (daObj_SSItem_c::*ProcessFunc)(void*); diff --git a/include/rel/d/a/obj/d_a_obj_stone/d_a_obj_stone.h b/include/rel/d/a/obj/d_a_obj_stone/d_a_obj_stone.h index 62957e17bc..53ce241f86 100644 --- a/include/rel/d/a/obj/d_a_obj_stone/d_a_obj_stone.h +++ b/include/rel/d/a/obj/d_a_obj_stone/d_a_obj_stone.h @@ -2,7 +2,6 @@ #define D_A_OBJ_STONE_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" enum { OBJ_STONE_TYPE_SMALL = 0, diff --git a/include/rel/d/a/obj/d_a_obj_stoneMark/d_a_obj_stoneMark.h b/include/rel/d/a/obj/d_a_obj_stoneMark/d_a_obj_stoneMark.h index 0155686d38..76f7a508f5 100644 --- a/include/rel/d/a/obj/d_a_obj_stoneMark/d_a_obj_stoneMark.h +++ b/include/rel/d/a/obj/d_a_obj_stoneMark/d_a_obj_stoneMark.h @@ -1,26 +1,26 @@ -#ifndef D_A_OBJ_STONEMARK_H -#define D_A_OBJ_STONEMARK_H - -#include "SSystem/SComponent/c_phase.h" -#include "f_op/f_op_actor.h" -#include "d/bg/d_bg_s_acch.h" -#include "d/cc/d_cc_d.h" - -class daObjSMark_c : public fopAc_ac_c { -public: - /* 8059A018 */ void initBaseMtx(); - /* 8059A038 */ void setBaseMtx(); - /* 8059A080 */ int Create(); - /* 8059A168 */ int create(); - /* 8059A2CC */ int draw(); - /* 8059A33C */ int _delete(); - - /* 0x0568 */ request_of_phase_process_class mpPhase; - /* 0x0570 */ GXTexObj mTexObj; - /* 0x0590 */ dBgS_ObjAcch mObjAcch; - /* 0x0768 */ dBgS_AcchCir mAcchCir; - /* 0x07A8 */ dCcD_Stts mStts; - /* 0x07E4 */ Mtx cullMtx; -}; - -#endif /* D_A_OBJ_STONEMARK_H */ +#ifndef D_A_OBJ_STONEMARK_H +#define D_A_OBJ_STONEMARK_H + +#include "SSystem/SComponent/c_phase.h" +#include "f_op/f_op_actor.h" +#include "d/bg/d_bg_s_acch.h" +#include "d/cc/d_cc_d.h" + +class daObjSMark_c : public fopAc_ac_c { +public: + /* 8059A018 */ void initBaseMtx(); + /* 8059A038 */ void setBaseMtx(); + /* 8059A080 */ int Create(); + /* 8059A168 */ int create(); + /* 8059A2CC */ int draw(); + /* 8059A33C */ int _delete(); + + /* 0x0568 */ request_of_phase_process_class mpPhase; + /* 0x0570 */ GXTexObj mTexObj; + /* 0x0590 */ dBgS_ObjAcch mObjAcch; + /* 0x0768 */ dBgS_AcchCir mAcchCir; + /* 0x07A8 */ dCcD_Stts mStts; + /* 0x07E4 */ Mtx cullMtx; +}; + +#endif /* D_A_OBJ_STONEMARK_H */ diff --git a/include/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.h b/include/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.h index dfc26e63bc..aed0bc394c 100644 --- a/include/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.h +++ b/include/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.h @@ -2,6 +2,5 @@ #define D_A_OBJ_STOPPER2_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_STOPPER2_H */ diff --git a/include/rel/d/a/obj/d_a_obj_sw/d_a_obj_sw.h b/include/rel/d/a/obj/d_a_obj_sw/d_a_obj_sw.h index 3451aceffd..887c3d1ab5 100644 --- a/include/rel/d/a/obj/d_a_obj_sw/d_a_obj_sw.h +++ b/include/rel/d/a/obj/d_a_obj_sw/d_a_obj_sw.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_SW_H #define D_A_OBJ_SW_H -#include "dolphin/types.h" #endif /* D_A_OBJ_SW_H */ diff --git a/include/rel/d/a/obj/d_a_obj_swBallA/d_a_obj_swBallA.h b/include/rel/d/a/obj/d_a_obj_swBallA/d_a_obj_swBallA.h index 57dfefbdda..d0821337f6 100644 --- a/include/rel/d/a/obj/d_a_obj_swBallA/d_a_obj_swBallA.h +++ b/include/rel/d/a/obj/d_a_obj_swBallA/d_a_obj_swBallA.h @@ -2,7 +2,6 @@ #define D_A_OBJ_SWBALLA_H #include "f_op/f_op_actor_mng.h" -#include "d/event/d_event_lib.h" // dEvLib_callback_c is not generated at the correct location. class daObjSwBallA_c : public fopAc_ac_c /*, public dEvLib_callback_c*/ { diff --git a/include/rel/d/a/obj/d_a_obj_swBallB/d_a_obj_swBallB.h b/include/rel/d/a/obj/d_a_obj_swBallB/d_a_obj_swBallB.h index d277490f54..6a77dc43af 100644 --- a/include/rel/d/a/obj/d_a_obj_swBallB/d_a_obj_swBallB.h +++ b/include/rel/d/a/obj/d_a_obj_swBallB/d_a_obj_swBallB.h @@ -2,7 +2,6 @@ #define D_A_OBJ_SWBALLB_H #include "f_op/f_op_actor_mng.h" -#include "d/event/d_event_lib.h" class daObjSwBallB_c : public fopAc_ac_c { //, public dEvLib_callback_c { public: diff --git a/include/rel/d/a/obj/d_a_obj_swLight/d_a_obj_swLight.h b/include/rel/d/a/obj/d_a_obj_swLight/d_a_obj_swLight.h index 29704c6aa6..ee1c984a99 100644 --- a/include/rel/d/a/obj/d_a_obj_swLight/d_a_obj_swLight.h +++ b/include/rel/d/a/obj/d_a_obj_swLight/d_a_obj_swLight.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_SWLIGHT_H #define D_A_OBJ_SWLIGHT_H -#include "dolphin/types.h" #endif /* D_A_OBJ_SWLIGHT_H */ diff --git a/include/rel/d/a/obj/d_a_obj_swchain/d_a_obj_swchain.h b/include/rel/d/a/obj/d_a_obj_swchain/d_a_obj_swchain.h index c7aa4d1c9d..5bd3212772 100644 --- a/include/rel/d/a/obj/d_a_obj_swchain/d_a_obj_swchain.h +++ b/include/rel/d/a/obj/d_a_obj_swchain/d_a_obj_swchain.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_SWCHAIN_H #define D_A_OBJ_SWCHAIN_H -#include "dolphin/types.h" #endif /* D_A_OBJ_SWCHAIN_H */ diff --git a/include/rel/d/a/obj/d_a_obj_swspinner/d_a_obj_swspinner.h b/include/rel/d/a/obj/d_a_obj_swspinner/d_a_obj_swspinner.h index dedd9d03a9..04b5fe0da1 100644 --- a/include/rel/d/a/obj/d_a_obj_swspinner/d_a_obj_swspinner.h +++ b/include/rel/d/a/obj/d_a_obj_swspinner/d_a_obj_swspinner.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/bg/d_bg_w.h" -#include "f_op/f_op_actor_mng.h" #include "rel/d/a/d_a_spinner/d_a_spinner.h" class daObjSwSpinner_c : public dBgS_MoveBgActor { diff --git a/include/rel/d/a/obj/d_a_obj_tatigi/d_a_obj_tatigi.h b/include/rel/d/a/obj/d_a_obj_tatigi/d_a_obj_tatigi.h index 587b4d605c..90d1c8399f 100644 --- a/include/rel/d/a/obj/d_a_obj_tatigi/d_a_obj_tatigi.h +++ b/include/rel/d/a/obj/d_a_obj_tatigi/d_a_obj_tatigi.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_TATIGI_H #define D_A_OBJ_TATIGI_H -#include "dolphin/types.h" #endif /* D_A_OBJ_TATIGI_H */ diff --git a/include/rel/d/a/obj/d_a_obj_ten/d_a_obj_ten.h b/include/rel/d/a/obj/d_a_obj_ten/d_a_obj_ten.h index 3677844a56..7ca7a532b0 100644 --- a/include/rel/d/a/obj/d_a_obj_ten/d_a_obj_ten.h +++ b/include/rel/d/a/obj/d_a_obj_ten/d_a_obj_ten.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_TEN_H #define D_A_OBJ_TEN_H -#include "dolphin/types.h" #endif /* D_A_OBJ_TEN_H */ diff --git a/include/rel/d/a/obj/d_a_obj_thashi/d_a_obj_thashi.h b/include/rel/d/a/obj/d_a_obj_thashi/d_a_obj_thashi.h index a82372619a..2f6c0fc060 100644 --- a/include/rel/d/a/obj/d_a_obj_thashi/d_a_obj_thashi.h +++ b/include/rel/d/a/obj/d_a_obj_thashi/d_a_obj_thashi.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_THASHI_H #define D_A_OBJ_THASHI_H -#include "dolphin/types.h" #endif /* D_A_OBJ_THASHI_H */ diff --git a/include/rel/d/a/obj/d_a_obj_thdoor/d_a_obj_thdoor.h b/include/rel/d/a/obj/d_a_obj_thdoor/d_a_obj_thdoor.h index 2eb1f9bc3d..012a31d56a 100644 --- a/include/rel/d/a/obj/d_a_obj_thdoor/d_a_obj_thdoor.h +++ b/include/rel/d/a/obj/d_a_obj_thdoor/d_a_obj_thdoor.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_THDOOR_H #define D_A_OBJ_THDOOR_H -#include "dolphin/types.h" #endif /* D_A_OBJ_THDOOR_H */ diff --git a/include/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.h b/include/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.h index 340c97f246..81c7d7b423 100644 --- a/include/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.h +++ b/include/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.h @@ -2,7 +2,6 @@ #define D_A_OBJ_TMOON_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daObjTMoon_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.h b/include/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.h index 59ac1e675c..b6c294f213 100644 --- a/include/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.h +++ b/include/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.h @@ -2,6 +2,5 @@ #define D_A_OBJ_TOARU_MAKI_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #endif /* D_A_OBJ_TOARU_MAKI_H */ diff --git a/include/rel/d/a/obj/d_a_obj_tombo/d_a_obj_tombo.h b/include/rel/d/a/obj/d_a_obj_tombo/d_a_obj_tombo.h index a7ad2b15a5..b417ef8f3c 100644 --- a/include/rel/d/a/obj/d_a_obj_tombo/d_a_obj_tombo.h +++ b/include/rel/d/a/obj/d_a_obj_tombo/d_a_obj_tombo.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_TOMBO_H #define D_A_OBJ_TOMBO_H -#include "dolphin/types.h" #endif /* D_A_OBJ_TOMBO_H */ diff --git a/include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h b/include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h index 484564096c..5054279192 100644 --- a/include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h +++ b/include/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_TORNADO_H #define D_A_OBJ_TORNADO_H -#include "d/cc/d_cc_d.h" #include "d/com/d_com_inf_game.h" #include "f_op/f_op_actor_mng.h" diff --git a/include/rel/d/a/obj/d_a_obj_tornado2/d_a_obj_tornado2.h b/include/rel/d/a/obj/d_a_obj_tornado2/d_a_obj_tornado2.h index 5c8136998f..53067ba394 100644 --- a/include/rel/d/a/obj/d_a_obj_tornado2/d_a_obj_tornado2.h +++ b/include/rel/d/a/obj/d_a_obj_tornado2/d_a_obj_tornado2.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_TORNADO2_H #define D_A_OBJ_TORNADO2_H -#include "dolphin/types.h" #include "f_op/f_op_actor_mng.h" #include "d/cc/d_cc_d.h" diff --git a/include/rel/d/a/obj/d_a_obj_tp/d_a_obj_tp.h b/include/rel/d/a/obj/d_a_obj_tp/d_a_obj_tp.h index 3bf026be75..a63729f98e 100644 --- a/include/rel/d/a/obj/d_a_obj_tp/d_a_obj_tp.h +++ b/include/rel/d/a/obj/d_a_obj_tp/d_a_obj_tp.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_TP_H #define D_A_OBJ_TP_H -#include "dolphin/types.h" #endif /* D_A_OBJ_TP_H */ diff --git a/include/rel/d/a/obj/d_a_obj_udoor/d_a_obj_udoor.h b/include/rel/d/a/obj/d_a_obj_udoor/d_a_obj_udoor.h index 32a1da9582..5ff475c072 100644 --- a/include/rel/d/a/obj/d_a_obj_udoor/d_a_obj_udoor.h +++ b/include/rel/d/a/obj/d_a_obj_udoor/d_a_obj_udoor.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_UDOOR_H #define D_A_OBJ_UDOOR_H -#include "dolphin/types.h" #endif /* D_A_OBJ_UDOOR_H */ diff --git a/include/rel/d/a/obj/d_a_obj_vground/d_a_obj_vground.h b/include/rel/d/a/obj/d_a_obj_vground/d_a_obj_vground.h index b4c1b1e174..620fbaf476 100644 --- a/include/rel/d/a/obj/d_a_obj_vground/d_a_obj_vground.h +++ b/include/rel/d/a/obj/d_a_obj_vground/d_a_obj_vground.h @@ -2,7 +2,6 @@ #define D_A_OBJ_VGROUND_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daObjVGnd_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/obj/d_a_obj_volcbom/d_a_obj_volcbom.h b/include/rel/d/a/obj/d_a_obj_volcbom/d_a_obj_volcbom.h index 2ae022c4bb..c66639dc1a 100644 --- a/include/rel/d/a/obj/d_a_obj_volcbom/d_a_obj_volcbom.h +++ b/include/rel/d/a/obj/d_a_obj_volcbom/d_a_obj_volcbom.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_VOLCBOM_H #define D_A_OBJ_VOLCBOM_H -#include "dolphin/types.h" #endif /* D_A_OBJ_VOLCBOM_H */ diff --git a/include/rel/d/a/obj/d_a_obj_waterfall/d_a_obj_waterfall.h b/include/rel/d/a/obj/d_a_obj_waterfall/d_a_obj_waterfall.h index f7d4918557..aceb02aa1b 100644 --- a/include/rel/d/a/obj/d_a_obj_waterfall/d_a_obj_waterfall.h +++ b/include/rel/d/a/obj/d_a_obj_waterfall/d_a_obj_waterfall.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_WATERFALL_H #define D_A_OBJ_WATERFALL_H -#include "dolphin/types.h" #endif /* D_A_OBJ_WATERFALL_H */ diff --git a/include/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.h b/include/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.h index f66abe1d4b..f171efe9ee 100644 --- a/include/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.h +++ b/include/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daObjWCover_c : public dBgS_MoveBgActor { public: diff --git a/include/rel/d/a/obj/d_a_obj_wflag/d_a_obj_wflag.h b/include/rel/d/a/obj/d_a_obj_wflag/d_a_obj_wflag.h index 673f168796..302d0eaf42 100644 --- a/include/rel/d/a/obj/d_a_obj_wflag/d_a_obj_wflag.h +++ b/include/rel/d/a/obj/d_a_obj_wflag/d_a_obj_wflag.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_WFLAG_H #define D_A_OBJ_WFLAG_H -#include "dolphin/types.h" #include "f_op/f_op_actor.h" #include "SSystem/SComponent/c_phase.h" diff --git a/include/rel/d/a/obj/d_a_obj_wind_stone/d_a_obj_wind_stone.h b/include/rel/d/a/obj/d_a_obj_wind_stone/d_a_obj_wind_stone.h index 843a22e468..7c1d81d750 100644 --- a/include/rel/d/a/obj/d_a_obj_wind_stone/d_a_obj_wind_stone.h +++ b/include/rel/d/a/obj/d_a_obj_wind_stone/d_a_obj_wind_stone.h @@ -1,9 +1,7 @@ #ifndef D_A_OBJ_WIND_STONE_H #define D_A_OBJ_WIND_STONE_H -#include "d/bg/d_bg_s.h" #include "d/bg/d_bg_w.h" -#include "d/com/d_com_inf_game.h" #include "f_op/f_op_actor_mng.h" class daWindStone_c : public fopAc_ac_c, public request_of_phase_process_class { diff --git a/include/rel/d/a/obj/d_a_obj_window/d_a_obj_window.h b/include/rel/d/a/obj/d_a_obj_window/d_a_obj_window.h index 5867ebabdc..7608d00dfa 100644 --- a/include/rel/d/a/obj/d_a_obj_window/d_a_obj_window.h +++ b/include/rel/d/a/obj/d_a_obj_window/d_a_obj_window.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_WINDOW_H #define D_A_OBJ_WINDOW_H -#include "SSystem/SComponent/c_phase.h" #include "f_op/f_op_actor_mng.h" #include "d/bg/d_bg_s_movebg_actor.h" #include "d/cc/d_cc_d.h" diff --git a/include/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.h b/include/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.h index 43a4119528..d2214e5d85 100644 --- a/include/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.h +++ b/include/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_WOOD_PENDULUM_H #define D_A_OBJ_WOOD_PENDULUM_H -#include "d/cc/d_cc_d.h" #include "d/com/d_com_inf_game.h" #include "f_op/f_op_actor_mng.h" diff --git a/include/rel/d/a/obj/d_a_obj_wood_statue/d_a_obj_wood_statue.h b/include/rel/d/a/obj/d_a_obj_wood_statue/d_a_obj_wood_statue.h index 2faa427fab..ff3eee1d44 100644 --- a/include/rel/d/a/obj/d_a_obj_wood_statue/d_a_obj_wood_statue.h +++ b/include/rel/d/a/obj/d_a_obj_wood_statue/d_a_obj_wood_statue.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_WOOD_STATUE_H #define D_A_OBJ_WOOD_STATUE_H -#include "dolphin/types.h" #endif /* D_A_OBJ_WOOD_STATUE_H */ diff --git a/include/rel/d/a/obj/d_a_obj_yousei/d_a_obj_yousei.h b/include/rel/d/a/obj/d_a_obj_yousei/d_a_obj_yousei.h index b1d7fa09aa..dc8e143913 100644 --- a/include/rel/d/a/obj/d_a_obj_yousei/d_a_obj_yousei.h +++ b/include/rel/d/a/obj/d_a_obj_yousei/d_a_obj_yousei.h @@ -1,6 +1,5 @@ #ifndef D_A_OBJ_YOUSEI_H #define D_A_OBJ_YOUSEI_H -#include "dolphin/types.h" #endif /* D_A_OBJ_YOUSEI_H */ diff --git a/include/rel/d/a/obj/d_a_obj_zcloth/d_a_obj_zcloth.h b/include/rel/d/a/obj/d_a_obj_zcloth/d_a_obj_zcloth.h index 3aaea0b738..2b91b6ccdf 100644 --- a/include/rel/d/a/obj/d_a_obj_zcloth/d_a_obj_zcloth.h +++ b/include/rel/d/a/obj/d_a_obj_zcloth/d_a_obj_zcloth.h @@ -1,17 +1,17 @@ -#ifndef D_A_OBJ_ZCLOTH_H -#define D_A_OBJ_ZCLOTH_H - -#include "d/a/d_a_itembase.h" - -class daObjZCloth_c : public daItemBase_c { -public: - /* 80D3EE18 */ void initBaseMtx(); - /* 80D3EE54 */ void setBaseMtx(); - /* 80D3EEC0 */ int Create(); - /* 80D3EF0C */ int create(); - /* 80D3F1AC */ int execute(); - /* 80D3F1D0 */ int draw(); - /* 80D3F200 */ int _delete(); -}; // Size: 0x92C - -#endif /* D_A_OBJ_ZCLOTH_H */ +#ifndef D_A_OBJ_ZCLOTH_H +#define D_A_OBJ_ZCLOTH_H + +#include "d/a/d_a_itembase.h" + +class daObjZCloth_c : public daItemBase_c { +public: + /* 80D3EE18 */ void initBaseMtx(); + /* 80D3EE54 */ void setBaseMtx(); + /* 80D3EEC0 */ int Create(); + /* 80D3EF0C */ int create(); + /* 80D3F1AC */ int execute(); + /* 80D3F1D0 */ int draw(); + /* 80D3F200 */ int _delete(); +}; // Size: 0x92C + +#endif /* D_A_OBJ_ZCLOTH_H */ diff --git a/include/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.h b/include/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.h index cda892c0e7..68fef55917 100644 --- a/include/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.h +++ b/include/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.h @@ -1,9 +1,7 @@ #ifndef D_A_OBJ_ZDOOR_H #define D_A_OBJ_ZDOOR_H -#include "d/bg/d_bg_s.h" #include "d/bg/d_bg_s_movebg_actor.h" -#include "d/cc/d_cc_d.h" #include "d/com/d_com_inf_game.h" #include "f_op/f_op_actor_mng.h" diff --git a/include/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara.h b/include/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara.h index ffd1d45168..6699964bf2 100644 --- a/include/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara.h +++ b/include/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_ZRTURARA_H #define D_A_OBJ_ZRTURARA_H -#include "SSystem/SComponent/c_phase.h" #include "m_Do/m_Do_hostIO.h" #include "f_op/f_op_actor_mng.h" #include "d/cc/d_cc_d.h" diff --git a/include/rel/d/a/obj/d_a_obj_zrTuraraRock/d_a_obj_zrTuraraRock.h b/include/rel/d/a/obj/d_a_obj_zrTuraraRock/d_a_obj_zrTuraraRock.h index 782a2bf629..f4671583a3 100644 --- a/include/rel/d/a/obj/d_a_obj_zrTuraraRock/d_a_obj_zrTuraraRock.h +++ b/include/rel/d/a/obj/d_a_obj_zrTuraraRock/d_a_obj_zrTuraraRock.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_ZRTURARAROCK_H #define D_A_OBJ_ZRTURARAROCK_H -#include "SSystem/SComponent/c_phase.h" #include "m_Do/m_Do_hostIO.h" #include "f_op/f_op_actor_mng.h" #include "d/cc/d_cc_d.h" diff --git a/include/rel/d/a/obj/mirror/d_a_obj_mirror_6pole/d_a_obj_mirror_6pole.h b/include/rel/d/a/obj/mirror/d_a_obj_mirror_6pole/d_a_obj_mirror_6pole.h index 10328f63e2..bfebede574 100644 --- a/include/rel/d/a/obj/mirror/d_a_obj_mirror_6pole/d_a_obj_mirror_6pole.h +++ b/include/rel/d/a/obj/mirror/d_a_obj_mirror_6pole/d_a_obj_mirror_6pole.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_MIRROR_6POLE_H #define D_A_OBJ_MIRROR_6POLE_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class daObjMirror6Pole_c; diff --git a/include/rel/d/a/obj/mirror/d_a_obj_mirror_sand/d_a_obj_mirror_sand.h b/include/rel/d/a/obj/mirror/d_a_obj_mirror_sand/d_a_obj_mirror_sand.h index 7bed2744f6..51b11520b7 100644 --- a/include/rel/d/a/obj/mirror/d_a_obj_mirror_sand/d_a_obj_mirror_sand.h +++ b/include/rel/d/a/obj/mirror/d_a_obj_mirror_sand/d_a_obj_mirror_sand.h @@ -1,7 +1,6 @@ #ifndef D_A_OBJ_MIRROR_SAND_H #define D_A_OBJ_MIRROR_SAND_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/bg/d_bg_w.h" diff --git a/include/rel/d/a/obj/mirror/d_a_obj_mirror_screw/d_a_obj_mirror_screw.h b/include/rel/d/a/obj/mirror/d_a_obj_mirror_screw/d_a_obj_mirror_screw.h index 9041033aa2..e76c97da27 100644 --- a/include/rel/d/a/obj/mirror/d_a_obj_mirror_screw/d_a_obj_mirror_screw.h +++ b/include/rel/d/a/obj/mirror/d_a_obj_mirror_screw/d_a_obj_mirror_screw.h @@ -1,8 +1,6 @@ #ifndef D_A_OBJ_MIRROR_SCREW_H #define D_A_OBJ_MIRROR_SCREW_H -#include "f_op/f_op_actor_mng.h" -#include "d/bg/d_bg_s_movebg_actor.h" #include "rel/d/a/obj/d_a_obj_swspinner/d_a_obj_swspinner.h" #include "rel/d/a/obj/mirror/d_a_obj_mirror_6pole/d_a_obj_mirror_6pole.h" #include "rel/d/a/obj/mirror/d_a_obj_mirror_chain/d_a_obj_mirror_chain.h" diff --git a/include/rel/d/a/tag/d_a_tag_CstaSw/d_a_tag_CstaSw.h b/include/rel/d/a/tag/d_a_tag_CstaSw/d_a_tag_CstaSw.h index 05301d93a4..326e504c6b 100644 --- a/include/rel/d/a/tag/d_a_tag_CstaSw/d_a_tag_CstaSw.h +++ b/include/rel/d/a/tag/d_a_tag_CstaSw/d_a_tag_CstaSw.h @@ -2,7 +2,6 @@ #define D_A_TAG_CSTASW_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_hostIO.h" class daTagCstaSw_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_Lv6Gate/d_a_tag_Lv6Gate.h b/include/rel/d/a/tag/d_a_tag_Lv6Gate/d_a_tag_Lv6Gate.h index e9c2ae8c2d..5c40f903f5 100644 --- a/include/rel/d/a/tag/d_a_tag_Lv6Gate/d_a_tag_Lv6Gate.h +++ b/include/rel/d/a/tag/d_a_tag_Lv6Gate/d_a_tag_Lv6Gate.h @@ -3,7 +3,6 @@ #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daTagLv6Gate_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate.h b/include/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate.h index 46057741cd..829d082caa 100644 --- a/include/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate.h +++ b/include/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate.h @@ -2,7 +2,6 @@ #define D_A_TAG_LV7GATE_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daTagLv7Gate_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.h b/include/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.h index 9fd822ab89..2ed8b202cd 100644 --- a/include/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.h +++ b/include/rel/d/a/tag/d_a_tag_Lv8Gate/d_a_tag_Lv8Gate.h @@ -1,8 +1,6 @@ #ifndef D_A_TAG_LV8GATE_H #define D_A_TAG_LV8GATE_H -#include "SSystem/SComponent/c_phase.h" -#include "dolphin/types.h" #include "f_op/f_op_actor_mng.h" class J3DModel; diff --git a/include/rel/d/a/tag/d_a_tag_ajnot/d_a_tag_ajnot.h b/include/rel/d/a/tag/d_a_tag_ajnot/d_a_tag_ajnot.h index 5c8242656b..ac47a167f2 100644 --- a/include/rel/d/a/tag/d_a_tag_ajnot/d_a_tag_ajnot.h +++ b/include/rel/d/a/tag/d_a_tag_ajnot/d_a_tag_ajnot.h @@ -2,7 +2,6 @@ #define D_A_TAG_AJNOT_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daTagAJnot_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/tag/d_a_tag_arena/d_a_tag_arena.h b/include/rel/d/a/tag/d_a_tag_arena/d_a_tag_arena.h index 75dc334a12..c53e9c2f13 100644 --- a/include/rel/d/a/tag/d_a_tag_arena/d_a_tag_arena.h +++ b/include/rel/d/a/tag/d_a_tag_arena/d_a_tag_arena.h @@ -1,7 +1,6 @@ #ifndef D_A_TAG_ARENA_H #define D_A_TAG_ARENA_H -#include "JSystem/JKernel/JKRHeap.h" #include "f_op/f_op_actor_mng.h" class daTagArena_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_assistance/d_a_tag_assistance.h b/include/rel/d/a/tag/d_a_tag_assistance/d_a_tag_assistance.h index 4380e6742c..3b01b05d0d 100644 --- a/include/rel/d/a/tag/d_a_tag_assistance/d_a_tag_assistance.h +++ b/include/rel/d/a/tag/d_a_tag_assistance/d_a_tag_assistance.h @@ -1,8 +1,6 @@ #ifndef D_A_TAG_ASSISTANCE_H #define D_A_TAG_ASSISTANCE_H -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class daTagAssist_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_attack_item/d_a_tag_attack_item.h b/include/rel/d/a/tag/d_a_tag_attack_item/d_a_tag_attack_item.h index 0922505e6d..8a25948c59 100644 --- a/include/rel/d/a/tag/d_a_tag_attack_item/d_a_tag_attack_item.h +++ b/include/rel/d/a/tag/d_a_tag_attack_item/d_a_tag_attack_item.h @@ -1,6 +1,5 @@ #ifndef D_A_TAG_ATTACK_ITEM_H #define D_A_TAG_ATTACK_ITEM_H -#include "f_op/f_op_actor_mng.h" #endif /* D_A_TAG_ATTACK_ITEM_H */ diff --git a/include/rel/d/a/tag/d_a_tag_attention/d_a_tag_attention.h b/include/rel/d/a/tag/d_a_tag_attention/d_a_tag_attention.h index 3fdf4de8dc..4d01ecae4b 100644 --- a/include/rel/d/a/tag/d_a_tag_attention/d_a_tag_attention.h +++ b/include/rel/d/a/tag/d_a_tag_attention/d_a_tag_attention.h @@ -2,7 +2,6 @@ #define D_A_TAG_ATTENTION_H #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" class daAttp_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_bottle_item/d_a_tag_bottle_item.h b/include/rel/d/a/tag/d_a_tag_bottle_item/d_a_tag_bottle_item.h index b05a9975d8..91207f536c 100644 --- a/include/rel/d/a/tag/d_a_tag_bottle_item/d_a_tag_bottle_item.h +++ b/include/rel/d/a/tag/d_a_tag_bottle_item/d_a_tag_bottle_item.h @@ -1,7 +1,6 @@ #ifndef D_A_TAG_BOTTLE_ITEM_H #define D_A_TAG_BOTTLE_ITEM_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" diff --git a/include/rel/d/a/tag/d_a_tag_chgrestart/d_a_tag_chgrestart.h b/include/rel/d/a/tag/d_a_tag_chgrestart/d_a_tag_chgrestart.h index a64afb0f26..06b93ecdf9 100644 --- a/include/rel/d/a/tag/d_a_tag_chgrestart/d_a_tag_chgrestart.h +++ b/include/rel/d/a/tag/d_a_tag_chgrestart/d_a_tag_chgrestart.h @@ -2,7 +2,6 @@ #define D_A_TAG_CHGRESTART_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daTagChgRestart_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/tag/d_a_tag_chkpoint/d_a_tag_chkpoint.h b/include/rel/d/a/tag/d_a_tag_chkpoint/d_a_tag_chkpoint.h index 67a47304f5..f8aca71ef4 100644 --- a/include/rel/d/a/tag/d_a_tag_chkpoint/d_a_tag_chkpoint.h +++ b/include/rel/d/a/tag/d_a_tag_chkpoint/d_a_tag_chkpoint.h @@ -1,7 +1,6 @@ #ifndef D_A_TAG_CHKPOINT_H #define D_A_TAG_CHKPOINT_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "JSystem/JKernel/JKRHeap.h" diff --git a/include/rel/d/a/tag/d_a_tag_csw/d_a_tag_csw.h b/include/rel/d/a/tag/d_a_tag_csw/d_a_tag_csw.h index a76c311567..48b5b498b6 100644 --- a/include/rel/d/a/tag/d_a_tag_csw/d_a_tag_csw.h +++ b/include/rel/d/a/tag/d_a_tag_csw/d_a_tag_csw.h @@ -1,6 +1,5 @@ #ifndef D_A_TAG_CSW_H #define D_A_TAG_CSW_H -#include "dolphin/types.h" #endif /* D_A_TAG_CSW_H */ diff --git a/include/rel/d/a/tag/d_a_tag_evt/d_a_tag_evt.h b/include/rel/d/a/tag/d_a_tag_evt/d_a_tag_evt.h index bd4a48eb55..da8c57da15 100644 --- a/include/rel/d/a/tag/d_a_tag_evt/d_a_tag_evt.h +++ b/include/rel/d/a/tag/d_a_tag_evt/d_a_tag_evt.h @@ -3,7 +3,6 @@ #include "SSystem/SComponent/c_phase.h" #include "d/msg/d_msg_flow.h" -#include "dolphin/types.h" #include "f_op/f_op_actor.h" class daTag_Evt_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_gra/d_a_tag_gra.h b/include/rel/d/a/tag/d_a_tag_gra/d_a_tag_gra.h index 77f0094bc8..c179d317c8 100644 --- a/include/rel/d/a/tag/d_a_tag_gra/d_a_tag_gra.h +++ b/include/rel/d/a/tag/d_a_tag_gra/d_a_tag_gra.h @@ -1,8 +1,6 @@ #ifndef D_A_TAG_GRA_H #define D_A_TAG_GRA_H -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class daTagGra_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_howl/d_a_tag_howl.h b/include/rel/d/a/tag/d_a_tag_howl/d_a_tag_howl.h index c43d65da4e..7052509230 100644 --- a/include/rel/d/a/tag/d_a_tag_howl/d_a_tag_howl.h +++ b/include/rel/d/a/tag/d_a_tag_howl/d_a_tag_howl.h @@ -1,7 +1,6 @@ #ifndef D_A_TAG_HOWL_H #define D_A_TAG_HOWL_H -#include "d/d_procname.h" #include "f_op/f_op_actor.h" class daTag_Howl_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_kago_fall/d_a_tag_kago_fall.h b/include/rel/d/a/tag/d_a_tag_kago_fall/d_a_tag_kago_fall.h index 9a3056872c..1c3cab4977 100644 --- a/include/rel/d/a/tag/d_a_tag_kago_fall/d_a_tag_kago_fall.h +++ b/include/rel/d/a/tag/d_a_tag_kago_fall/d_a_tag_kago_fall.h @@ -2,7 +2,6 @@ #define D_A_TAG_KAGO_FALL_H #include "d/msg/d_msg_flow.h" -#include "dolphin/types.h" #include "f_op/f_op_actor.h" class daTagKagoFall_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_kmsg/d_a_tag_kmsg.h b/include/rel/d/a/tag/d_a_tag_kmsg/d_a_tag_kmsg.h index 3c46b5173c..5f9ec1f56f 100644 --- a/include/rel/d/a/tag/d_a_tag_kmsg/d_a_tag_kmsg.h +++ b/include/rel/d/a/tag/d_a_tag_kmsg/d_a_tag_kmsg.h @@ -1,7 +1,6 @@ #ifndef D_A_TAG_KMSG_H #define D_A_TAG_KMSG_H -#include "f_op/f_op_actor_mng.h" struct daTag_KMsg_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/tag/d_a_tag_lantern/d_a_tag_lantern.h b/include/rel/d/a/tag/d_a_tag_lantern/d_a_tag_lantern.h index 58718bd602..a42de77652 100644 --- a/include/rel/d/a/tag/d_a_tag_lantern/d_a_tag_lantern.h +++ b/include/rel/d/a/tag/d_a_tag_lantern/d_a_tag_lantern.h @@ -1,7 +1,6 @@ #ifndef D_A_TAG_LANTERN_H #define D_A_TAG_LANTERN_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/msg/d_msg_flow.h" diff --git a/include/rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.h b/include/rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.h index 4164d72d65..4a8fa45ffb 100644 --- a/include/rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.h +++ b/include/rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.h @@ -2,7 +2,6 @@ #define D_A_TAG_LV6CSTASW_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_hostIO.h" class daLv6CstaSw_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_mstop/d_a_tag_mstop.h b/include/rel/d/a/tag/d_a_tag_mstop/d_a_tag_mstop.h index 639a27ba4b..74e2428c52 100644 --- a/include/rel/d/a/tag/d_a_tag_mstop/d_a_tag_mstop.h +++ b/include/rel/d/a/tag/d_a_tag_mstop/d_a_tag_mstop.h @@ -4,6 +4,11 @@ #include "d/msg/d_msg_flow.h" #include "d/com/d_com_inf_game.h" +/** + * @ingroup actors-tags + * @brief Midna Stop Tag + * + */ class daTagMstop_c : public fopAc_ac_c { public: /* 805A6138 */ int create(); diff --git a/include/rel/d/a/tag/d_a_tag_myna2/d_a_tag_myna2.h b/include/rel/d/a/tag/d_a_tag_myna2/d_a_tag_myna2.h index 7dbb86efbf..387ddcb32e 100644 --- a/include/rel/d/a/tag/d_a_tag_myna2/d_a_tag_myna2.h +++ b/include/rel/d/a/tag/d_a_tag_myna2/d_a_tag_myna2.h @@ -1,7 +1,6 @@ #ifndef D_A_TAG_MYNA2_H #define D_A_TAG_MYNA2_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class daTagMyna2_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light.h b/include/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light.h index 6b8fb9aa8f..8d811c4721 100644 --- a/include/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light.h +++ b/include/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light.h @@ -1,7 +1,6 @@ #ifndef D_A_TAG_MYNA_LIGHT_H #define D_A_TAG_MYNA_LIGHT_H -#include "dolphin/types.h" #include "f_op/f_op_actor_mng.h" class daTag_MynaLight_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_pachi/d_a_tag_pachi.h b/include/rel/d/a/tag/d_a_tag_pachi/d_a_tag_pachi.h index 817ecaa85d..34acda8c20 100644 --- a/include/rel/d/a/tag/d_a_tag_pachi/d_a_tag_pachi.h +++ b/include/rel/d/a/tag/d_a_tag_pachi/d_a_tag_pachi.h @@ -2,7 +2,6 @@ #define D_A_TAG_PACHI_H #include "d/cc/d_cc_d.h" -#include "dolphin/types.h" #include "f_op/f_op_actor_mng.h" class daTagPati_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_push/d_a_tag_push.h b/include/rel/d/a/tag/d_a_tag_push/d_a_tag_push.h index 7c5ceb9a99..9653f0081c 100644 --- a/include/rel/d/a/tag/d_a_tag_push/d_a_tag_push.h +++ b/include/rel/d/a/tag/d_a_tag_push/d_a_tag_push.h @@ -2,7 +2,6 @@ #define D_A_TAG_PUSH_H #include "d/a/d_a_npc.h" -#include "dolphin/types.h" #include "f_op/f_op_actor_mng.h" class daTag_Push_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_qs/d_a_tag_qs.h b/include/rel/d/a/tag/d_a_tag_qs/d_a_tag_qs.h index c5eeb44c55..7a6ef1e321 100644 --- a/include/rel/d/a/tag/d_a_tag_qs/d_a_tag_qs.h +++ b/include/rel/d/a/tag/d_a_tag_qs/d_a_tag_qs.h @@ -1,6 +1,5 @@ #ifndef D_A_TAG_QS_H #define D_A_TAG_QS_H -#include "dolphin/types.h" #endif /* D_A_TAG_QS_H */ diff --git a/include/rel/d/a/tag/d_a_tag_ret_room/d_a_tag_ret_room.h b/include/rel/d/a/tag/d_a_tag_ret_room/d_a_tag_ret_room.h index 0ff7c35e83..004085b15e 100644 --- a/include/rel/d/a/tag/d_a_tag_ret_room/d_a_tag_ret_room.h +++ b/include/rel/d/a/tag/d_a_tag_ret_room/d_a_tag_ret_room.h @@ -2,7 +2,6 @@ #define D_A_TAG_RET_ROOM_H #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" class daTagRetRm_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_river_back/d_a_tag_river_back.h b/include/rel/d/a/tag/d_a_tag_river_back/d_a_tag_river_back.h index 47c397a0af..40ee2e99bf 100644 --- a/include/rel/d/a/tag/d_a_tag_river_back/d_a_tag_river_back.h +++ b/include/rel/d/a/tag/d_a_tag_river_back/d_a_tag_river_back.h @@ -3,7 +3,6 @@ #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daTagRiverBack_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/tag/d_a_tag_rmbit_sw/d_a_tag_rmbit_sw.h b/include/rel/d/a/tag/d_a_tag_rmbit_sw/d_a_tag_rmbit_sw.h index e1adbd51b2..51ad477c19 100644 --- a/include/rel/d/a/tag/d_a_tag_rmbit_sw/d_a_tag_rmbit_sw.h +++ b/include/rel/d/a/tag/d_a_tag_rmbit_sw/d_a_tag_rmbit_sw.h @@ -2,7 +2,6 @@ #define D_A_TAG_RMBIT_SW_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daTagRmbitSw_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/tag/d_a_tag_schedule/d_a_tag_schedule.h b/include/rel/d/a/tag/d_a_tag_schedule/d_a_tag_schedule.h index 5d94e835b7..3e106e912a 100644 --- a/include/rel/d/a/tag/d_a_tag_schedule/d_a_tag_schedule.h +++ b/include/rel/d/a/tag/d_a_tag_schedule/d_a_tag_schedule.h @@ -1,7 +1,6 @@ #ifndef D_A_TAG_SCHEDULE_H #define D_A_TAG_SCHEDULE_H -#include "JSystem/JKernel/JKRHeap.h" #include "f_op/f_op_actor_mng.h" class daTagSchedule_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_shop_item/d_a_tag_shop_item.h b/include/rel/d/a/tag/d_a_tag_shop_item/d_a_tag_shop_item.h index 59be67fdf4..993ab6c301 100644 --- a/include/rel/d/a/tag/d_a_tag_shop_item/d_a_tag_shop_item.h +++ b/include/rel/d/a/tag/d_a_tag_shop_item/d_a_tag_shop_item.h @@ -2,7 +2,6 @@ #define D_A_TAG_SHOP_ITEM_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daTag_ShopItem_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.h b/include/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.h index 46e8db31ac..e478d95ce0 100644 --- a/include/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.h +++ b/include/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.h @@ -1,7 +1,6 @@ #ifndef D_A_TAG_SMK_EMT_H #define D_A_TAG_SMK_EMT_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class daTagSmkEmt_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_spring/d_a_tag_spring.h b/include/rel/d/a/tag/d_a_tag_spring/d_a_tag_spring.h index 8b2973bf39..90604ff928 100644 --- a/include/rel/d/a/tag/d_a_tag_spring/d_a_tag_spring.h +++ b/include/rel/d/a/tag/d_a_tag_spring/d_a_tag_spring.h @@ -2,7 +2,6 @@ #define D_A_TAG_SPRING_H #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" class daTagSpring_c : public fopAc_ac_c { public: diff --git a/include/rel/d/a/tag/d_a_tag_ss_drink/d_a_tag_ss_drink.h b/include/rel/d/a/tag/d_a_tag_ss_drink/d_a_tag_ss_drink.h index 0c9c92906b..4110d1e7e5 100644 --- a/include/rel/d/a/tag/d_a_tag_ss_drink/d_a_tag_ss_drink.h +++ b/include/rel/d/a/tag/d_a_tag_ss_drink/d_a_tag_ss_drink.h @@ -2,7 +2,6 @@ #define D_A_TAG_SS_DRINK_H #include "d/a/d_a_obj_ss_base.h" -#include "d/com/d_com_inf_game.h" #include "d/msg/d_msg_flow.h" #include "f_op/f_op_actor_mng.h" diff --git a/include/rel/d/a/tag/d_a_tag_stream/d_a_tag_stream.h b/include/rel/d/a/tag/d_a_tag_stream/d_a_tag_stream.h index 0e419686e3..63c637efff 100644 --- a/include/rel/d/a/tag/d_a_tag_stream/d_a_tag_stream.h +++ b/include/rel/d/a/tag/d_a_tag_stream/d_a_tag_stream.h @@ -1,7 +1,6 @@ #ifndef D_A_TAG_STREAM_H #define D_A_TAG_STREAM_H -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" class daTagStream_c : public fopAc_ac_c { diff --git a/include/rel/d/a/tag/d_a_tag_theB_hint/d_a_tag_theB_hint.h b/include/rel/d/a/tag/d_a_tag_theB_hint/d_a_tag_theB_hint.h index 6fb55daf38..ed418a09dd 100644 --- a/include/rel/d/a/tag/d_a_tag_theB_hint/d_a_tag_theB_hint.h +++ b/include/rel/d/a/tag/d_a_tag_theB_hint/d_a_tag_theB_hint.h @@ -2,9 +2,7 @@ #define D_A_TAG_THEB_HINT_H // #include "rel/d/a/npc/d_a_npc_theB/d_a_npc_theB.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" // needs to be pulled from d_a_npc_theB.h eventually diff --git a/libs/JSystem/J2DGraph/J2DAnmLoader_nonmatching.cpp b/libs/JSystem/J2DGraph/J2DAnmLoader_nonmatching.cpp index 7874986fe5..d35f1a0f14 100644 --- a/libs/JSystem/J2DGraph/J2DAnmLoader_nonmatching.cpp +++ b/libs/JSystem/J2DGraph/J2DAnmLoader_nonmatching.cpp @@ -7,8 +7,6 @@ // JSUConvertOffsetToPtr needs to be emitted in J2DMaterialFactory before its used here #include "JSystem/J2DGraph/J2DAnmLoader.h" -#include "dol2asm.h" -#include "dolphin/types.h" #include "JSystem/JSupport/JSupport.h" // diff --git a/libs/JSystem/J2DGraph/J2DMaterial.cpp b/libs/JSystem/J2DGraph/J2DMaterial.cpp index d25648f748..55e8c55458 100644 --- a/libs/JSystem/J2DGraph/J2DMaterial.cpp +++ b/libs/JSystem/J2DGraph/J2DMaterial.cpp @@ -6,7 +6,6 @@ #include "JSystem/J2DGraph/J2DMaterial.h" #include "JSystem/JKernel/JKRHeap.h" #include "dol2asm.h" -#include "dolphin/types.h" // // Forward References: diff --git a/libs/JSystem/J2DGraph/J2DMaterialFactory.cpp b/libs/JSystem/J2DGraph/J2DMaterialFactory.cpp index 870ef21403..799c9ec13a 100644 --- a/libs/JSystem/J2DGraph/J2DMaterialFactory.cpp +++ b/libs/JSystem/J2DGraph/J2DMaterialFactory.cpp @@ -5,9 +5,7 @@ #include "JSystem/J2DGraph/J2DMaterialFactory.h" #include "JSystem/J2DGraph/J2DMaterial.h" -#include "JSystem/J2DGraph/J2DScreen.h" #include "JSystem/JSupport/JSupport.h" -#include "JSystem/JUtility/JUTResource.h" #include "string.h" #include "dol2asm.h" #include "dolphin/types.h" diff --git a/libs/JSystem/J2DGraph/J2DPane.cpp b/libs/JSystem/J2DGraph/J2DPane.cpp index 530942ae8c..33c6f907a7 100644 --- a/libs/JSystem/J2DGraph/J2DPane.cpp +++ b/libs/JSystem/J2DGraph/J2DPane.cpp @@ -4,7 +4,6 @@ #include "JSystem/J2DGraph/J2DScreen.h" #include "JSystem/JSupport/JSURandomInputStream.h" #include "JSystem/JUtility/JUTResource.h" -#include "dolphin/gx.h" /* 802F5BF8-802F5CB8 2F0538 00C0+00 0/0 10/10 0/0 .text __ct__7J2DPaneFv */ J2DPane::J2DPane() : mBounds(), mGlobalBounds(), mClipRect(), mPaneTree(this) { diff --git a/libs/JSystem/J2DGraph/J2DPicture.cpp b/libs/JSystem/J2DGraph/J2DPicture.cpp index 02249a0454..967ad4bc2e 100644 --- a/libs/JSystem/J2DGraph/J2DPicture.cpp +++ b/libs/JSystem/J2DGraph/J2DPicture.cpp @@ -4,11 +4,8 @@ // #include "JSystem/J2DGraph/J2DPicture.h" -#include "JSystem/J2DGraph/J2DMaterial.h" #include "JSystem/J2DGraph/J2DScreen.h" -#include "JSystem/JSupport/JSURandomInputStream.h" #include "JSystem/JUtility/JUTPalette.h" -#include "JSystem/JUtility/JUTResource.h" #include "JSystem/JUtility/JUTTexture.h" #include "dol2asm.h" #include "dolphin/gx.h" diff --git a/libs/JSystem/J2DGraph/J2DPictureEx.cpp b/libs/JSystem/J2DGraph/J2DPictureEx.cpp index 56c7b52cd8..6bd0d4bb72 100644 --- a/libs/JSystem/J2DGraph/J2DPictureEx.cpp +++ b/libs/JSystem/J2DGraph/J2DPictureEx.cpp @@ -6,8 +6,6 @@ #include "JSystem/J2DGraph/J2DPictureEx.h" #include "JSystem/J2DGraph/J2DMaterial.h" #include "JSystem/J2DGraph/J2DScreen.h" -#include "JSystem/JSupport/JSURandomInputStream.h" -#include "JSystem/JUtility/JUTTexture.h" #include "dol2asm.h" #include "dolphin/types.h" diff --git a/libs/JSystem/J2DGraph/J2DPrint.cpp b/libs/JSystem/J2DGraph/J2DPrint.cpp index d645043707..6e04421e0e 100644 --- a/libs/JSystem/J2DGraph/J2DPrint.cpp +++ b/libs/JSystem/J2DGraph/J2DPrint.cpp @@ -8,7 +8,6 @@ #include "JSystem/JUtility/JUTFont.h" #include "stdio.h" #include "stdlib.h" -#include "string.h" #include "global.h" /* ############################################################################################## */ diff --git a/libs/JSystem/J2DGraph/J2DScreen.cpp b/libs/JSystem/J2DGraph/J2DScreen.cpp index 6cf4ec5e38..1b750cad1f 100644 --- a/libs/JSystem/J2DGraph/J2DScreen.cpp +++ b/libs/JSystem/J2DGraph/J2DScreen.cpp @@ -7,8 +7,6 @@ #include "JSystem/J2DGraph/J2DPictureEx.h" #include "JSystem/J2DGraph/J2DTextBoxEx.h" #include "JSystem/J2DGraph/J2DWindowEx.h" -#include "JSystem/J2DGraph/J2DOrthoGraph.h" -#include "JSystem/J2DGraph/J2DMaterialFactory.h" #include "JSystem/JKernel/JKRArchive.h" #include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JSupport/JSUMemoryStream.h" diff --git a/libs/JSystem/J2DGraph/J2DTevs.cpp b/libs/JSystem/J2DGraph/J2DTevs.cpp index 686fbb27ed..fd809ec231 100644 --- a/libs/JSystem/J2DGraph/J2DTevs.cpp +++ b/libs/JSystem/J2DGraph/J2DTevs.cpp @@ -4,7 +4,6 @@ #include "JSystem/J2DGraph/J2DTevs.h" #include "JSystem/J2DGraph/J2DMatBlock.h" -#include "JSystem/JUtility/TColor.h" #include "math.h" #include "dolphin/gx.h" diff --git a/libs/JSystem/J2DGraph/J2DTextBox.cpp b/libs/JSystem/J2DGraph/J2DTextBox.cpp index e8f4c042c9..4a74b5d13e 100644 --- a/libs/JSystem/J2DGraph/J2DTextBox.cpp +++ b/libs/JSystem/J2DGraph/J2DTextBox.cpp @@ -8,7 +8,6 @@ #include "JSystem/JSupport/JSURandomInputStream.h" #include "JSystem/JUtility/JUTResFont.h" #include "dol2asm.h" -#include "dolphin/types.h" /* 802FF660-802FF6D8 2F9FA0 0078+00 0/0 1/1 0/0 .text __ct__10J2DTextBoxFv */ J2DTextBox::J2DTextBox() diff --git a/libs/JSystem/J2DGraph/J2DWindowEx.cpp b/libs/JSystem/J2DGraph/J2DWindowEx.cpp index a36531b5bb..b21d5131e2 100644 --- a/libs/JSystem/J2DGraph/J2DWindowEx.cpp +++ b/libs/JSystem/J2DGraph/J2DWindowEx.cpp @@ -5,7 +5,6 @@ #include "JSystem/J2DGraph/J2DWindowEx.h" #include "JSystem/JUtility/JUTTexture.h" -#include "JSystem/JSupport/JSURandomInputStream.h" #include "dol2asm.h" // diff --git a/libs/JSystem/J3DGraphAnimator/J3DAnimation.cpp b/libs/JSystem/J3DGraphAnimator/J3DAnimation.cpp index a04693760a..fd00e444d3 100644 --- a/libs/JSystem/J3DGraphAnimator/J3DAnimation.cpp +++ b/libs/JSystem/J3DGraphAnimator/J3DAnimation.cpp @@ -5,7 +5,6 @@ #include "JSystem/J3DGraphAnimator/J3DAnimation.h" #include "dol2asm.h" -#include "global.h" // // Forward References: diff --git a/libs/JSystem/J3DGraphAnimator/J3DCluster.cpp b/libs/JSystem/J3DGraphAnimator/J3DCluster.cpp index bd16ca8984..826c0dbeda 100644 --- a/libs/JSystem/J3DGraphAnimator/J3DCluster.cpp +++ b/libs/JSystem/J3DGraphAnimator/J3DCluster.cpp @@ -6,9 +6,6 @@ #include "JSystem/J3DGraphAnimator/J3DCluster.h" #include "JSystem/J3DGraphAnimator/J3DAnimation.h" #include "JSystem/J3DGraphAnimator/J3DModel.h" -#include "JSystem/J3DGraphAnimator/J3DSkinDeform.h" -#include "JSystem/JMath/JMath.h" -#include "JSystem/JUtility/JUTAssert.h" #include "dol2asm.h" #include "dolphin/os.h" diff --git a/libs/JSystem/J3DGraphAnimator/J3DMaterialAnm.cpp b/libs/JSystem/J3DGraphAnimator/J3DMaterialAnm.cpp index d224d9b06e..56fd04300c 100644 --- a/libs/JSystem/J3DGraphAnimator/J3DMaterialAnm.cpp +++ b/libs/JSystem/J3DGraphAnimator/J3DMaterialAnm.cpp @@ -1,7 +1,6 @@ #include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "dol2asm.h" -#include "global.h" // // Forward References: diff --git a/libs/JSystem/J3DGraphAnimator/J3DMaterialAttach.cpp b/libs/JSystem/J3DGraphAnimator/J3DMaterialAttach.cpp index 74ec8e5ace..d28e0ba3bd 100644 --- a/libs/JSystem/J3DGraphAnimator/J3DMaterialAttach.cpp +++ b/libs/JSystem/J3DGraphAnimator/J3DMaterialAttach.cpp @@ -7,7 +7,6 @@ #include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "JSystem/JUtility/JUTAssert.h" -#include "dol2asm.h" #include "dolphin/types.h" // diff --git a/libs/JSystem/J3DGraphAnimator/J3DModel.cpp b/libs/JSystem/J3DGraphAnimator/J3DModel.cpp index 135a29b185..cb0ed6c77a 100644 --- a/libs/JSystem/J3DGraphAnimator/J3DModel.cpp +++ b/libs/JSystem/J3DGraphAnimator/J3DModel.cpp @@ -8,7 +8,6 @@ #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "dol2asm.h" #include "dolphin/os.h" -#include "dolphin/types.h" // // Forward References: diff --git a/libs/JSystem/J3DGraphAnimator/J3DMtxBuffer.cpp b/libs/JSystem/J3DGraphAnimator/J3DMtxBuffer.cpp index 7a571c4c11..c06ce49caf 100644 --- a/libs/JSystem/J3DGraphAnimator/J3DMtxBuffer.cpp +++ b/libs/JSystem/J3DGraphAnimator/J3DMtxBuffer.cpp @@ -6,7 +6,6 @@ #include "JSystem/J3DGraphAnimator/J3DMtxBuffer.h" #include "JSystem/JKernel/JKRHeap.h" #include "dol2asm.h" -#include "dolphin/types.h" // // Forward References: diff --git a/libs/JSystem/J3DGraphAnimator/J3DShapeTable.cpp b/libs/JSystem/J3DGraphAnimator/J3DShapeTable.cpp index 62a533a703..0af7668beb 100644 --- a/libs/JSystem/J3DGraphAnimator/J3DShapeTable.cpp +++ b/libs/JSystem/J3DGraphAnimator/J3DShapeTable.cpp @@ -1,5 +1,4 @@ #include "JSystem/J3DGraphAnimator/J3DShapeTable.h" -#include "dolphin/types.h" void J3DShapeTable::hide() { u16 shapeNum = mShapeNum; diff --git a/libs/JSystem/J3DGraphBase/J3DGD.cpp b/libs/JSystem/J3DGraphBase/J3DGD.cpp index 7f65db79a5..899ecb6922 100644 --- a/libs/JSystem/J3DGraphBase/J3DGD.cpp +++ b/libs/JSystem/J3DGraphBase/J3DGD.cpp @@ -1,740 +1,740 @@ -// -// Generated By: dol2asm -// Translation Unit: J3DGD -// - -#include "JSystem/J3DGraphBase/J3DGD.h" -#include "dol2asm.h" -#include "dolphin/gd.h" -#include "dolphin/os.h" - -// -// Forward References: -// - -extern "C" void J3DGDSetGenMode__FUcUcUcUc11_GXCullMode(); -extern "C" void J3DGDSetGenMode_3Param__FUcUcUc(); -extern "C" void J3DGDSetLightAttn__F10_GXLightIDffffff(); -extern "C" void J3DGDSetLightColor__F10_GXLightID8_GXColor(); -extern "C" void J3DGDSetLightPos__F10_GXLightIDfff(); -extern "C" void J3DGDSetLightDir__F10_GXLightIDfff(); -extern "C" void J3DGDSetVtxAttrFmtv__F9_GXVtxFmtPC17_GXVtxAttrFmtListb(); -extern "C" void J3DGDSetTexCoordGen__F13_GXTexGenType12_GXTexGenSrc(); -extern "C" void J3DGDSetTexCoordScale2__F13_GXTexCoordIDUsUcUcUsUcUc(); -extern "C" void -J3DGDSetTexLookupMode__F11_GXTexMapID14_GXTexWrapMode14_GXTexWrapMode12_GXTexFilter12_GXTexFilterfffUcUc13_GXAnisotropy(); -extern "C" void J3DGDSetTexImgAttr__F11_GXTexMapIDUsUs9_GXTexFmt(); -extern "C" void J3DGDSetTexImgPtr__F11_GXTexMapIDPv(); -extern "C" void J3DGDSetTexImgPtrRaw__F11_GXTexMapIDUl(); -extern "C" void J3DGDSetTexTlut__F11_GXTexMapIDUl10_GXTlutFmt(); -extern "C" void J3DGDLoadTlut__FPvUl11_GXTlutSize(); -extern "C" void J3DGDSetIndTexMtx__F14_GXIndTexMtxIDPA3_fSc(); -extern "C" void -J3DGDSetIndTexCoordScale__F16_GXIndTexStageID14_GXIndTexScale14_GXIndTexScale14_GXIndTexScale14_GXIndTexScale(); -extern "C" void -J3DGDSetIndTexOrder__FUl13_GXTexCoordID11_GXTexMapID13_GXTexCoordID11_GXTexMapID13_GXTexCoordID11_GXTexMapID13_GXTexCoordID11_GXTexMapID(); -extern "C" void -J3DGDSetTevOrder__F13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID13_GXTexCoordID11_GXTexMapID12_GXChannelID(); -extern "C" void J3DGDSetTevKColor__F14_GXTevKColorID8_GXColor(); -extern "C" void J3DGDSetTevColorS10__F11_GXTevRegID11_GXColorS10(); -extern "C" void J3DGDSetFog__F10_GXFogTypeffff8_GXColor(); -extern "C" void J3DGDSetFogRangeAdj__FUcUsP14_GXFogAdjTable(); -extern "C" void J3DFifoLoadPosMtxImm__FPA4_fUl(); -extern "C" void J3DFifoLoadNrmMtxImm__FPA4_fUl(); -extern "C" void J3DFifoLoadNrmMtxImm3x3__FPA3_fUl(); -extern "C" void J3DFifoLoadNrmMtxToTexMtx__FPA4_fUl(); -extern "C" void J3DFifoLoadNrmMtxToTexMtx3x3__FPA3_fUl(); -extern "C" void J3DFifoLoadTexCached__F11_GXTexMapIDUl15_GXTexCacheSizeUl15_GXTexCacheSize(); - -// -// External References: -// - -extern "C" void GDOverflowed(); -extern "C" void __cvt_fp2unsigned(); -extern "C" void _savegpr_14(); -extern "C" void _savegpr_23(); -extern "C" void _savegpr_24(); -extern "C" void _savegpr_25(); -extern "C" void _savegpr_27(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_14(); -extern "C" void _restgpr_23(); -extern "C" void _restgpr_24(); -extern "C" void _restgpr_25(); -extern "C" void _restgpr_27(); -extern "C" void _restgpr_29(); - -// -// Declarations: -// - -/* 8030D098-8030D210 3079D8 0178+00 0/0 1/1 0/0 .text J3DGDSetGenMode__FUcUcUcUc11_GXCullMode */ -void J3DGDSetGenMode(u8 texGenNum, u8 colorChanNum, u8 tevStageNum, u8 indTexStageNum, - GXCullMode cullMode) { - GDOverflowCheck(0xa); - J3DGDWriteBPCmd(0xfe07fc3f); - static u8 cm2hw[4] = {0, 2, 1, 3}; - J3DGDWriteBPCmd(texGenNum | colorChanNum << 4 | (tevStageNum - 1) << 0xa | - cm2hw[cullMode] << 0xe | indTexStageNum << 0x10); -} - -/* 8030D210-8030D364 307B50 0154+00 0/0 1/1 0/0 .text J3DGDSetGenMode_3Param__FUcUcUc */ -void J3DGDSetGenMode_3Param(u8 texGenNum, u8 tevStageNum, u8 indTexStageNum) { - GDOverflowCheck(0xa); - J3DGDWriteBPCmd(0xfe073c0f); - J3DGDWriteBPCmd(texGenNum | (tevStageNum - 1) << 0xa | indTexStageNum << 0x10); -} - -/* 8030D364-8030D65C 307CA4 02F8+00 0/0 1/1 0/0 .text J3DGDSetLightAttn__F10_GXLightIDffffff */ -void J3DGDSetLightAttn(GXLightID id, f32 a0, f32 a1, f32 a2, f32 k0, f32 k1, f32 k2) { - J3DGDWriteXFCmdHdr(0x0604 + __GDLightID2Offset(id), 6); - J3DGDWrite_f32(a0); - J3DGDWrite_f32(a1); - J3DGDWrite_f32(a2); - J3DGDWrite_f32(k0); - J3DGDWrite_f32(k1); - J3DGDWrite_f32(k2); -} - -/* 8030D65C-8030D76C 307F9C 0110+00 0/0 1/1 0/0 .text J3DGDSetLightColor__F10_GXLightID8_GXColor - */ -void J3DGDSetLightColor(GXLightID id, GXColor color) { - J3DGDWriteXFCmd(0x0603 + __GDLightID2Offset(id), - (color.r << 24) | (color.g << 16) | (color.b << 8) | (color.a << 0)); -} - -/* 8030D76C-8030D938 3080AC 01CC+00 0/0 1/1 0/0 .text J3DGDSetLightPos__F10_GXLightIDfff - */ -void J3DGDSetLightPos(GXLightID id, f32 x, f32 y, f32 z) { - J3DGDWriteXFCmdHdr(0x060A + __GDLightID2Offset(id), 3); - J3DGDWrite_f32(x); - J3DGDWrite_f32(y); - J3DGDWrite_f32(z); -} - -/* 8030D938-8030DB04 308278 01CC+00 0/0 1/1 0/0 .text J3DGDSetLightDir__F10_GXLightIDfff - */ -void J3DGDSetLightDir(GXLightID id, f32 x, f32 y, f32 z) { - J3DGDWriteXFCmdHdr(0x060D + __GDLightID2Offset(id), 3); - J3DGDWrite_f32(x); - J3DGDWrite_f32(y); - J3DGDWrite_f32(z); -} - -/* 8030DB04-8030E064 308444 0560+00 1/0 1/1 0/0 .text - * J3DGDSetVtxAttrFmtv__F9_GXVtxFmtPC17_GXVtxAttrFmtListb */ -void J3DGDSetVtxAttrFmtv(GXVtxFmt fmt, GXVtxAttrFmtList const* fmtList, bool param_2) { - u32 pos_cnt = GX_POS_XYZ; - u32 pos_type = GX_F32; - u32 pos_shift = 0; - u32 nrm_cnt = GX_NRM_XYZ; - u32 nrm_type = GX_F32; - u32 local_34 = 0; - u32 clr0_cnt = GX_CLR_RGBA; - u32 clr0_type = GX_RGBA8; - u32 clr1_cnt = GX_CLR_RGBA; - u32 clr1_type = GX_RGBA8; - u32 tex0_cnt = GX_TEX_ST; - u32 tex0_type = GX_F32; - u32 tex0_shift = 0; - u32 tex1_cnt = GX_TEX_ST; - u32 tex1_type = GX_F32; - u32 tex1_shift = 0; - u32 tex2_cnt = GX_TEX_ST; - u32 tex2_type = GX_F32; - u32 tex2_shift = 0; - u32 tex3_cnt = GX_TEX_ST; - u32 tex3_type = GX_F32; - u32 tex3_shift = 0; - u32 tex4_cnt = GX_TEX_ST; - u32 tex4_type = GX_F32; - u32 tex4_shift = 0; - u32 tex5_cnt = GX_TEX_ST; - u32 tex5_type = GX_F32; - u32 tex5_shift = 0; - u32 tex6_cnt = GX_TEX_ST; - u32 tex6_type = GX_F32; - u32 tex6_shift = 0; - u32 tex7_cnt = GX_TEX_ST; - u32 tex7_type = GX_F32; - u32 tex7_shift = 0; - for (; fmtList->mAttrib != GX_VA_NULL; fmtList++) { - switch (fmtList->mAttrib) { - case GX_VA_POS: - pos_cnt = fmtList->mCompCnt; - pos_type = fmtList->mCompType; - pos_shift = fmtList->mCompShift; - break; - case GX_VA_NRM: - case GX_VA_NBT: - nrm_type = fmtList->mCompType; - if (fmtList->mCompCnt == GX_NRM_NBT3) { - nrm_cnt = GX_NRM_NBT; - local_34 = 1; - } else { - if (param_2) { - nrm_cnt = GX_NRM_NBT; - } else { - nrm_cnt = fmtList->mCompCnt; - } - local_34 = 0; - } - break; - case GX_VA_CLR0: - clr0_cnt = fmtList->mCompCnt; - clr0_type = fmtList->mCompType; - break; - case GX_VA_CLR1: - clr1_cnt = fmtList->mCompCnt; - clr1_type = fmtList->mCompType; - break; - case GX_VA_TEX0: - tex0_cnt = fmtList->mCompCnt; - tex0_type = fmtList->mCompType; - tex0_shift = fmtList->mCompShift; - break; - case GX_VA_TEX1: - tex1_cnt = fmtList->mCompCnt; - tex1_type = fmtList->mCompType; - tex1_shift = fmtList->mCompShift; - break; - case GX_VA_TEX2: - tex2_cnt = fmtList->mCompCnt; - tex2_type = fmtList->mCompType; - tex2_shift = fmtList->mCompShift; - break; - case GX_VA_TEX3: - tex3_cnt = fmtList->mCompCnt; - tex3_type = fmtList->mCompType; - tex3_shift = fmtList->mCompShift; - break; - case GX_VA_TEX4: - tex4_cnt = fmtList->mCompCnt; - tex4_type = fmtList->mCompType; - tex4_shift = fmtList->mCompShift; - break; - case GX_VA_TEX5: - tex5_cnt = fmtList->mCompCnt; - tex5_type = fmtList->mCompType; - tex5_shift = fmtList->mCompShift; - break; - case GX_VA_TEX6: - tex6_cnt = fmtList->mCompCnt; - tex6_type = fmtList->mCompType; - tex6_shift = fmtList->mCompShift; - break; - case GX_VA_TEX7: - tex7_cnt = fmtList->mCompCnt; - tex7_type = fmtList->mCompType; - tex7_shift = fmtList->mCompShift; - break; - } - } - GDOverflowCheck(0x12); - J3DGDWriteCPCmd(GX_CP_REG_VAT_GRP0 + fmt, - pos_cnt | pos_type << 1 | pos_shift << 4 | nrm_cnt << 9 | nrm_type << 0xa | - clr0_cnt << 0xd | clr0_type << 0xe | clr1_cnt << 0x11 | clr1_type << 0x12 | - tex0_cnt << 0x15 | tex0_type << 0x16 | tex0_shift << 0x19 | 0x40000000 | - local_34 << 0x1f); - J3DGDWriteCPCmd(GX_CP_REG_VAT_GRP1 + fmt, - tex1_cnt | tex1_type << 1 | tex1_shift << 4 | tex2_cnt << 9 | tex2_type << 0xa | - tex2_shift << 0xd | tex3_cnt << 0x12 | tex3_type << 0x13 | - tex3_shift << 0x16 | tex4_cnt << 0x1b | tex4_type << 0x1c | 0x80000000); - J3DGDWriteCPCmd(GX_CP_REG_VAT_GRP2 + fmt, - tex4_shift | tex5_cnt << 5 | tex5_type << 6 | tex5_shift << 9 | - tex6_cnt << 0xe | tex6_type << 0xf | tex6_shift << 0x12 | tex7_cnt << 0x17 | - tex7_type << 0x18 | tex7_shift << 0x1b); -} - -/* 8030E064-8030E234 3089A4 01D0+00 1/0 1/1 0/0 .text - * J3DGDSetTexCoordGen__F13_GXTexGenType12_GXTexGenSrc */ -void J3DGDSetTexCoordGen(GXTexGenType texGenType, GXTexGenSrc texGenSrc) { - u32 input_form = 0; - u32 proj_type = 0; - u32 src_row = 5; - u32 bump_src_tex = 5; - u32 bump_src_light = 0; - u32 texgen_type; - switch (texGenSrc) { - case GX_TG_POS: - src_row = 0; - input_form = 1; - break; - case GX_TG_NRM: - src_row = 1; - input_form = 1; - break; - case GX_TG_BINRM: - src_row = 3; - input_form = 1; - break; - case GX_TG_TANGENT: - src_row = 4; - input_form = 1; - break; - case GX_TG_COLOR0: - src_row = 2; - break; - case GX_TG_COLOR1: - src_row = 2; - break; - case GX_TG_TEX0: - src_row = 5; - break; - case GX_TG_TEX1: - src_row = 6; - break; - case GX_TG_TEX2: - src_row = 7; - break; - case GX_TG_TEX3: - src_row = 8; - break; - case GX_TG_TEX4: - src_row = 9; - break; - case GX_TG_TEX5: - src_row = 10; - break; - case GX_TG_TEX6: - src_row = 11; - break; - case GX_TG_TEX7: - src_row = 12; - break; - case GX_TG_TEXCOORD0: - bump_src_tex = 0; - break; - case GX_TG_TEXCOORD1: - bump_src_tex = 1; - break; - case GX_TG_TEXCOORD2: - bump_src_tex = 2; - break; - case GX_TG_TEXCOORD3: - bump_src_tex = 3; - break; - case GX_TG_TEXCOORD4: - bump_src_tex = 4; - break; - case GX_TG_TEXCOORD5: - bump_src_tex = 5; - break; - case GX_TG_TEXCOORD6: - bump_src_tex = 6; - break; - } - switch (texGenType) { - case GX_TG_MTX2x4: - texgen_type = 0; - break; - case GX_TG_MTX3x4: - texgen_type = 0; - proj_type = 1; - break; - case GX_TG_BUMP0: - case GX_TG_BUMP1: - case GX_TG_BUMP2: - case GX_TG_BUMP3: - case GX_TG_BUMP4: - case GX_TG_BUMP5: - case GX_TG_BUMP6: - case GX_TG_BUMP7: - texgen_type = 1; - bump_src_light = texGenType - 2; - break; - case GX_TG_SRTG: - if (texGenSrc == GX_TG_COLOR0) { - texgen_type = 2; - } else { - texgen_type = 3; - } - break; - } - J3DGDWrite_u32( - proj_type << (31 - GX_XF_TEX_PROJTYPE_END) | input_form << (31 - GX_XF_TEX_INPUTFORM_END) | - texgen_type << (31 - GX_XF_TEX_TEXGENTYPE_END) | src_row << (31 - GX_XF_TEX_SRCROW_END) | - bump_src_tex << (31 - GX_XF_TEX_BUMPSRCTEX_END) | - bump_src_light << (31 - GX_XF_TEX_BUMPSRCLIGHT_END)); -} - -/* 8030E234-8030E438 308B74 0204+00 0/0 16/16 0/0 .text - * J3DGDSetTexCoordScale2__F13_GXTexCoordIDUsUcUcUsUcUc */ -void J3DGDSetTexCoordScale2(GXTexCoordID param_0, u16 param_1, u8 param_2, u8 param_3, u16 param_4, - u8 param_5, u8 param_6) { - GDOverflowCheck(0xf); - J3DGDWriteBPCmd(0xfe03ffff); - J3DGDWriteBPCmd((param_1 - 1) | param_2 << 0x10 | param_3 << 0x11 | - (param_0 * 2 + 0x30) << 0x18); - J3DGDWriteBPCmd((param_4 - 1) | param_5 << 0x10 | param_6 << 0x11 | - (param_0 * 2 + 0x31) << 0x18); -} - -/* 8045090C-80450914 00038C 0008+00 1/1 0/0 0/0 .sdata J3DGDTexMode0Ids */ -static u8 J3DGDTexMode0Ids[8] = { - 0x80, 0x81, 0x82, 0x83, 0xA0, 0xA1, 0xA2, 0xA3, -}; - -/* 80450914-8045091C 000394 0008+00 1/1 0/0 0/0 .sdata J3DGDTexMode1Ids */ -static u8 J3DGDTexMode1Ids[8] = { - 0x84, 0x85, 0x86, 0x87, 0xA4, 0xA5, 0xA6, 0xA7, -}; - -/* 8045091C-80450924 00039C 0008+00 1/1 0/0 0/0 .sdata J3DGDTexImage0Ids */ -static u8 J3DGDTexImage0Ids[8] = { - 0x88, 0x89, 0x8A, 0x8B, 0xA8, 0xA9, 0xAA, 0xAB, -}; - -/* 80450924-8045092C 0003A4 0008+00 2/2 0/0 0/0 .sdata J3DGDTexImage3Ids */ -static u8 J3DGDTexImage3Ids[8] = { - 0x94, 0x95, 0x96, 0x97, 0xB4, 0xB5, 0xB6, 0xB7, -}; - -/* 8045092C-80450934 0003AC 0008+00 1/1 0/0 0/0 .sdata J3DGDTexTlutIds */ -static u8 J3DGDTexTlutIds[8] = { - 0x98, 0x99, 0x9A, 0x9B, 0xB8, 0xB9, 0xBA, 0xBB, -}; - -/* 80450934-8045093C 0003B4 0006+02 1/1 0/0 0/0 .sdata GX2HWFiltConv */ -static u8 GX2HWFiltConv[6] = { - 0x00, 0x04, 0x01, 0x05, 0x02, 0x06, -}; - -/* 8030E438-8030E5D4 308D78 019C+00 0/0 1/1 0/0 .text - * J3DGDSetTexLookupMode__F11_GXTexMapID14_GXTexWrapMode14_GXTexWrapMode12_GXTexFilter12_GXTexFilterfffUcUc13_GXAnisotropy - */ -void J3DGDSetTexLookupMode(GXTexMapID param_0, GXTexWrapMode param_1, GXTexWrapMode param_2, - GXTexFilter param_3, GXTexFilter param_4, f32 param_5, f32 param_6, - f32 param_7, u8 param_8, u8 param_9, GXAnisotropy param_10) { - J3DGDWriteBPCmd(param_1 | param_2 << 2 | (param_4 == GX_LINEAR) << 4 | - GX2HWFiltConv[param_3] << 5 | (param_9 == 0) << 8 | - ((int)(param_7 * 32.0f) & 0xff) << 9 | param_10 << 0x13 | param_8 << 0x15 | - J3DGDTexMode0Ids[param_0] << 0x18); - J3DGDWriteBPCmd(((int)(param_5 * 16.0f) & 0xff) | ((int)(param_6 * 16.0f) & 0xff) << 8 | - J3DGDTexMode1Ids[param_0] << 0x18); -} - -/* 8030E5D4-8030E67C 308F14 00A8+00 0/0 1/1 0/0 .text - * J3DGDSetTexImgAttr__F11_GXTexMapIDUsUs9_GXTexFmt */ -void J3DGDSetTexImgAttr(GXTexMapID param_0, u16 param_1, u16 param_2, GXTexFmt param_3) { - J3DGDWriteBPCmd((param_1 - 1) | (param_2 - 1) << 0xa | param_3 << 0x14 | - J3DGDTexImage0Ids[param_0] << 0x18); -} - -/* 8030E67C-8030E70C 308FBC 0090+00 0/0 1/1 0/0 .text J3DGDSetTexImgPtr__F11_GXTexMapIDPv - */ -void J3DGDSetTexImgPtr(GXTexMapID param_0, void* param_1) { - J3DGDWriteBPCmd(OSCachedToPhysical(param_1) >> 5 | J3DGDTexImage3Ids[param_0] << 0x18); -} - -/* 8030E70C-8030E7E0 30904C 00D4+00 0/0 1/1 0/0 .text J3DGDSetTexImgPtrRaw__F11_GXTexMapIDUl */ -void J3DGDSetTexImgPtrRaw(GXTexMapID param_0, u32 param_1) { - GDOverflowCheck(5); - J3DGDWriteBPCmd(param_1 | J3DGDTexImage3Ids[param_0] << 0x18); -} - -/* 8030E7E0-8030E878 309120 0098+00 0/0 1/1 0/0 .text - * J3DGDSetTexTlut__F11_GXTexMapIDUl10_GXTlutFmt */ -void J3DGDSetTexTlut(GXTexMapID param_0, u32 param_1, GXTlutFmt param_2) { - J3DGDWriteBPCmd((param_1 - 0x80000) >> 9 | param_2 << 0xa | J3DGDTexTlutIds[param_0] << 0x18); -} - -/* 8030E878-8030EB30 3091B8 02B8+00 0/0 1/1 0/0 .text J3DGDLoadTlut__FPvUl11_GXTlutSize - */ -void J3DGDLoadTlut(void* param_0, u32 param_1, GXTlutSize param_2) { - J3DGDWriteBPCmd(0xfeffff00); - J3DGDWriteBPCmd(0x0f000000); - J3DGDWriteBPCmd(OSCachedToPhysical(param_0) >> 5 | 0x64000000); - J3DGDWriteBPCmd((param_1 - 0x80000) >> 9 | param_2 << 0xa | 0x65000000); - J3DGDWriteBPCmd(0xfeffff00); - J3DGDWriteBPCmd(0x0f000000); -} - -/* 8030EB30-8030EE10 309470 02E0+00 0/0 2/2 0/0 .text J3DGDSetIndTexMtx__F14_GXIndTexMtxIDPA3_fSc - */ -void J3DGDSetIndTexMtx(GXIndTexMtxID id, Mtx3P mtx, s8 exp) { - s32 mtx32[6]; - u32 idx; - - switch (id) { - case GX_ITM_0: - case GX_ITM_1: - case GX_ITM_2: - idx = (u32)(id - GX_ITM_0); - break; - case GX_ITM_S0: - case GX_ITM_S1: - case GX_ITM_S2: - idx = (u32)(id - GX_ITM_S0); - break; - case GX_ITM_T0: - case GX_ITM_T1: - case GX_ITM_T2: - idx = (u32)(id - GX_ITM_T0); - break; - default: - idx = 0; - break; - } - - exp += 17; - - mtx32[0] = (s32)(mtx[0][0] * 1024.0f) & 0x7FF; - mtx32[1] = (s32)(mtx[1][0] * 1024.0f) & 0x7FF; - - mtx32[2] = (s32)(mtx[0][1] * 1024.0f) & 0x7FF; - mtx32[3] = (s32)(mtx[1][1] * 1024.0f) & 0x7FF; - - mtx32[4] = (s32)(mtx[0][2] * 1024.0f) & 0x7FF; - mtx32[5] = (s32)(mtx[1][2] * 1024.0f) & 0x7FF; - - GDOverflowCheck(15); - - J3DGDWriteBPCmd((mtx32[0] << 0) | (mtx32[1] << 11) | (((exp >> 0) & 0x03) << 22) | - (0x06 + idx * 3) << 24); - J3DGDWriteBPCmd((mtx32[2] << 0) | (mtx32[3] << 11) | (((exp >> 2) & 0x03) << 22) | - (0x07 + idx * 3) << 24); - J3DGDWriteBPCmd((mtx32[4] << 0) | (mtx32[5] << 11) | (((exp >> 4) & 0x03) << 22) | - (0x08 + idx * 3) << 24); -} - -/* 8030EE10-8030EF08 309750 00F8+00 0/0 2/2 0/0 .text - * J3DGDSetIndTexCoordScale__F16_GXIndTexStageID14_GXIndTexScale14_GXIndTexScale14_GXIndTexScale14_GXIndTexScale - */ -void J3DGDSetIndTexCoordScale(GXIndTexStageID stage, GXIndTexScale scale0, GXIndTexScale scale1, - GXIndTexScale scale2, GXIndTexScale scale3) { - GDOverflowCheck(5); - J3DGDWriteBPCmd(scale0 | scale1 << 4 | scale2 << 8 | scale3 << 0xc | - ((stage >> 1) + GX_BP_REG_RAS1_SS0) << 0x18); -} - -/* 8030EF08-8030F108 309848 0200+00 0/0 2/2 0/0 .text - * J3DGDSetIndTexOrder__FUl13_GXTexCoordID11_GXTexMapID13_GXTexCoordID11_GXTexMapID13_GXTexCoordID11_GXTexMapID13_GXTexCoordID11_GXTexMapID - */ -void J3DGDSetIndTexOrder(u32 count, GXTexCoordID coord0, GXTexMapID map0, GXTexCoordID coord1, - GXTexMapID map1, GXTexCoordID coord2, GXTexMapID map2, GXTexCoordID coord3, - GXTexMapID map3) { - GDOverflowCheck(0xa); - J3DGDWriteBPCmd(map0 & 7 | (coord0 & 7) << 3 | (map1 & 7) << 6 | (coord1 & 7) << 9 | - (map2 & 7) << 0xc | (coord2 & 7) << 0xf | (map3 & 7) << 0x12 | - (coord3 & 7) << 0x15 | GX_BP_REG_RAS1_IREF << 0x18); - u32 imask = 0; - for (u32 i = 0; i < count; i++) { - switch (i) { - case 0: - imask |= 1 << (map0 & 7); - break; - case 1: - imask |= 1 << (map1 & 7); - break; - case 2: - imask |= 1 << (map2 & 7); - break; - case 3: - imask |= 1 << (map3 & 7); - break; - } - } - J3DGDWriteBPCmd(imask | GX_BP_REG_INDIMASK << 0x18); -} - -/* 8030F108-8030F294 309A48 018C+00 0/0 9/9 0/0 .text - * J3DGDSetTevOrder__F13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID13_GXTexCoordID11_GXTexMapID12_GXChannelID - */ -void J3DGDSetTevOrder(GXTevStageID stage, GXTexCoordID coord0, GXTexMapID map0, - GXChannelID channel0, GXTexCoordID coord1, GXTexMapID map1, - GXChannelID channel1) { - coord0 = coord0 >= GX_MAXCOORD ? GX_TEXCOORD0 : coord0; - coord1 = coord1 >= GX_MAXCOORD ? GX_TEXCOORD0 : coord1; - GDOverflowCheck(5); - static u8 c2r[32] = {0, 1, 0, 1, 0, 1, 7, 5, 6, 0, 0, 0, 0, 0, 0, 7, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - J3DGDWriteBPCmd((map0 & 7) | coord0 << 3 | - (map0 != GX_TEXMAP_NULL && !(map0 & GX_TEXMAP_DISABLE)) << 6 | - c2r[channel0 & 0xf] << 7 | (map1 & 7) << 0xc | coord1 << 0xf | - (map1 != GX_TEXMAP_NULL && !(map1 & GX_TEXMAP_DISABLE)) << 0x12 | - c2r[channel1 & 0xf] << 0x13 | (stage / 2 + GX_BP_REG_RAS1_TREF0) << 0x18); -} - -/* 8030F294-8030F3FC 309BD4 0168+00 0/0 11/11 0/0 .text - * J3DGDSetTevKColor__F14_GXTevKColorID8_GXColor */ -void J3DGDSetTevKColor(GXTevKColorID id, GXColor color) { - u32 cmd0 = color.r | color.a << 0xc | 0x800000 | (id * 2 + GX_BP_REG_TEVREG0LO) << 0x18; - u32 cmd1 = color.b | color.g << 0xc | 0x800000 | (id * 2 + GX_BP_REG_TEVREG0HI) << 0x18; - GDOverflowCheck(0xa); - J3DGDWriteBPCmd(cmd0); - J3DGDWriteBPCmd(cmd1); -} - -/* 8030F3FC-8030F630 309D3C 0234+00 0/0 11/11 0/0 .text - * J3DGDSetTevColorS10__F11_GXTevRegID11_GXColorS10 */ -void J3DGDSetTevColorS10(GXTevRegID id, GXColorS10 color) { - u32 cmd0 = - (color.r & 0x7ff) | (color.a & 0x7ff) << 0xc | (id * 2 + GX_BP_REG_TEVREG0LO) << 0x18; - u32 cmd1 = - (color.b & 0x7ff) | (color.g & 0x7ff) << 0xc | (id * 2 + GX_BP_REG_TEVREG0HI) << 0x18; - GDOverflowCheck(0x14); - J3DGDWriteBPCmd(cmd0); - J3DGDWriteBPCmd(cmd1); - J3DGDWriteBPCmd(cmd1); - J3DGDWriteBPCmd(cmd1); -} - -/* 8030F630-8030F994 309F70 0364+00 0/0 3/3 0/0 .text J3DGDSetFog__F10_GXFogTypeffff8_GXColor */ -void J3DGDSetFog(GXFogType fogType, f32 param_1, f32 param_2, f32 nearZ, f32 farZ, GXColor color) { - f32 fvar1, fvar2, fvar3; - if (farZ == nearZ || param_2 == param_1) { - fvar1 = 0.0f; - fvar2 = 0.5f; - fvar3 = 0.0f; - } else { - fvar1 = (farZ * nearZ) / ((farZ - nearZ) * (param_2 - param_1)); - fvar2 = farZ / (farZ - nearZ); - fvar3 = param_1 / (param_2 - param_1); - } - u32 shift = 1; - for (; fvar2 > 1.0; fvar2 *= 0.5f) { - shift++; - } - for (; fvar2 > 0.0f && fvar2 < 0.5; fvar2 *= 2.0f) { - shift--; - } - f32 fvar4 = (fvar1 / (1 << shift)); - u32 param1 = fvar2 * 8388638.0f; - u32 param0 = *(u32*)&fvar4; - u32 param3 = *(u32*)&fvar3; - J3DGDWriteBPCmd(param0 >> 0xc | GX_BP_REG_FOGPARAM0 << 0x18); - J3DGDWriteBPCmd(param1 | GX_BP_REG_FOGPARAM1 << 0x18); - J3DGDWriteBPCmd(shift | GX_BP_REG_FOGPARAM2 << 0x18); - J3DGDWriteBPCmd(param3 >> 0xc | fogType << 0x15 | GX_BP_REG_FOGPARAM3 << 0x18); - J3DGDWriteBPCmd(color.b | color.g << 8 | color.r << 0x10 | GX_BP_REG_FOGCOLOR << 0x18); -} - -/* 8030F994-8030FAE0 30A2D4 014C+00 0/0 3/3 0/0 .text J3DGDSetFogRangeAdj__FUcUsP14_GXFogAdjTable - */ -void J3DGDSetFogRangeAdj(u8 param_0, u16 param_1, GXFogAdjTable* table) { - if (param_0 != 0) { - for (int i = 0; i < 0xa; i += 2) { - J3DGDWriteBPCmd((i / 2 + GX_BP_REG_FOGRANGEK0) << 0x18 | table->fogVals[i + 1] << 0xc | - table->fogVals[i]); - } - } - u32 cmd = GX_BP_REG_FOGRANGE << 0x18 | (param_1 + 0x156) | param_0 << 0xa; - J3DGDWriteBPCmd(cmd); -} - -/* 8030FAE0-8030FB60 30A420 0080+00 0/0 10/10 0/0 .text J3DFifoLoadPosMtxImm__FPA4_fUl */ -void J3DFifoLoadPosMtxImm(MtxP mtx, u32 addr) { - J3DFifoWriteXFCmdHdr((addr & 0x3fff) << 2, 0xc); - J3DGXCmd1f32ptr(&mtx[0][0]); - J3DGXCmd1f32ptr(&mtx[0][1]); - J3DGXCmd1f32ptr(&mtx[0][2]); - J3DGXCmd1f32ptr(&mtx[0][3]); - J3DGXCmd1f32ptr(&mtx[1][0]); - J3DGXCmd1f32ptr(&mtx[1][1]); - J3DGXCmd1f32ptr(&mtx[1][2]); - J3DGXCmd1f32ptr(&mtx[1][3]); - J3DGXCmd1f32ptr(&mtx[2][0]); - J3DGXCmd1f32ptr(&mtx[2][1]); - J3DGXCmd1f32ptr(&mtx[2][2]); - J3DGXCmd1f32ptr(&mtx[2][3]); -} - -/* 8030FB60-8030FBCC 30A4A0 006C+00 0/0 9/9 0/0 .text J3DFifoLoadNrmMtxImm__FPA4_fUl */ -void J3DFifoLoadNrmMtxImm(MtxP mtx, u32 addr) { - J3DFifoWriteXFCmdHdr(addr * 3 + 0x400, 9); - J3DGXCmd1f32ptr(&mtx[0][0]); - J3DGXCmd1f32ptr(&mtx[0][1]); - J3DGXCmd1f32ptr(&mtx[0][2]); - J3DGXCmd1f32ptr(&mtx[1][0]); - J3DGXCmd1f32ptr(&mtx[1][1]); - J3DGXCmd1f32ptr(&mtx[1][2]); - J3DGXCmd1f32ptr(&mtx[2][0]); - J3DGXCmd1f32ptr(&mtx[2][1]); - J3DGXCmd1f32ptr(&mtx[2][2]); -} - -/* 8030FBCC-8030FC38 30A50C 006C+00 0/0 3/3 0/0 .text J3DFifoLoadNrmMtxImm3x3__FPA3_fUl - */ -void J3DFifoLoadNrmMtxImm3x3(Mtx3P mtx, u32 addr) { - J3DFifoWriteXFCmdHdr(addr * 3 + 0x400, 9); - J3DGXCmd1f32ptr(&mtx[0][0]); - J3DGXCmd1f32ptr(&mtx[0][1]); - J3DGXCmd1f32ptr(&mtx[0][2]); - J3DGXCmd1f32ptr(&mtx[1][0]); - J3DGXCmd1f32ptr(&mtx[1][1]); - J3DGXCmd1f32ptr(&mtx[1][2]); - J3DGXCmd1f32ptr(&mtx[2][0]); - J3DGXCmd1f32ptr(&mtx[2][1]); - J3DGXCmd1f32ptr(&mtx[2][2]); -} - -/* 8030FC38-8030FCD0 30A578 0098+00 0/0 4/4 0/0 .text J3DFifoLoadNrmMtxToTexMtx__FPA4_fUl - */ -void J3DFifoLoadNrmMtxToTexMtx(MtxP mtx, u32 addr) { - J3DFifoWriteXFCmdHdr((addr & 0x3fff) << 2, 0xc); - J3DGXCmd1f32ptr(&mtx[0][0]); - J3DGXCmd1f32ptr(&mtx[0][1]); - J3DGXCmd1f32ptr(&mtx[0][2]); - J3DGXCmd1f32(0.0f); - J3DGXCmd1f32ptr(&mtx[1][0]); - J3DGXCmd1f32ptr(&mtx[1][1]); - J3DGXCmd1f32ptr(&mtx[1][2]); - J3DGXCmd1f32(0.0f); - J3DGXCmd1f32ptr(&mtx[2][0]); - J3DGXCmd1f32ptr(&mtx[2][1]); - J3DGXCmd1f32ptr(&mtx[2][2]); - J3DGXCmd1f32(0.0f); -} - -/* 8030FCD0-8030FD68 30A610 0098+00 0/0 2/2 0/0 .text J3DFifoLoadNrmMtxToTexMtx3x3__FPA3_fUl */ -void J3DFifoLoadNrmMtxToTexMtx3x3(Mtx3P mtx, u32 addr) { - J3DFifoWriteXFCmdHdr((addr & 0x3fff) << 2, 0xc); - J3DGXCmd1f32ptr(&mtx[0][0]); - J3DGXCmd1f32ptr(&mtx[0][1]); - J3DGXCmd1f32ptr(&mtx[0][2]); - J3DGXCmd1f32(0.0f); - J3DGXCmd1f32ptr(&mtx[1][0]); - J3DGXCmd1f32ptr(&mtx[1][1]); - J3DGXCmd1f32ptr(&mtx[1][2]); - J3DGXCmd1f32(0.0f); - J3DGXCmd1f32ptr(&mtx[2][0]); - J3DGXCmd1f32ptr(&mtx[2][1]); - J3DGXCmd1f32ptr(&mtx[2][2]); - J3DGXCmd1f32(0.0f); -} - -/* 8045093C-80450944 0003BC 0008+00 1/1 0/0 0/0 .sdata J3DTexImage1Ids */ -SECTION_SDATA static u8 J3DTexImage1Ids[8] = { - 0x8C, 0x8D, 0x8E, 0x8F, 0xAC, 0xAD, 0xAE, 0xAF, -}; - -/* 80450944-8045094C 0003C4 0008+00 1/1 0/0 0/0 .sdata J3DTexImage2Ids */ -SECTION_SDATA static u8 J3DTexImage2Ids[8] = { - 0x90, 0x91, 0x92, 0x93, 0xB0, 0xB1, 0xB2, 0xB3, -}; - -/* 8030FD68-8030FDE8 30A6A8 0080+00 0/0 1/1 0/0 .text - * J3DFifoLoadTexCached__F11_GXTexMapIDUl15_GXTexCacheSizeUl15_GXTexCacheSize */ -#ifdef NONMATCHING -void J3DFifoLoadTexCached(GXTexMapID id, u32 param_1, GXTexCacheSize param_2, u32 param_3, - GXTexCacheSize param_4) { - J3DFifoLoadBPCmd(param_1 >> 5 | (param_2 + 3) << 0xf | (param_2 + 3) << 0x12 | - J3DTexImage1Ids[id] << 0x18); - if (param_4 != GX_TEXCACHE_NONE && param_3 < 0x100000) { - J3DFifoLoadBPCmd(param_3 >> 5 | (param_4 + 3) << 0xf | (param_4 + 3) << 0x12 | - J3DTexImage2Ids[id] << 0x18); - } -} -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DFifoLoadTexCached(_GXTexMapID param_0, u32 param_1, _GXTexCacheSize param_2, - u32 param_3, _GXTexCacheSize param_4) { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DGD/J3DFifoLoadTexCached__F11_GXTexMapIDUl15_GXTexCacheSizeUl15_GXTexCacheSize.s" -} -#pragma pop -#endif +// +// Generated By: dol2asm +// Translation Unit: J3DGD +// + +#include "JSystem/J3DGraphBase/J3DGD.h" +#include "dol2asm.h" +#include "dolphin/gd.h" +#include "dolphin/os.h" + +// +// Forward References: +// + +extern "C" void J3DGDSetGenMode__FUcUcUcUc11_GXCullMode(); +extern "C" void J3DGDSetGenMode_3Param__FUcUcUc(); +extern "C" void J3DGDSetLightAttn__F10_GXLightIDffffff(); +extern "C" void J3DGDSetLightColor__F10_GXLightID8_GXColor(); +extern "C" void J3DGDSetLightPos__F10_GXLightIDfff(); +extern "C" void J3DGDSetLightDir__F10_GXLightIDfff(); +extern "C" void J3DGDSetVtxAttrFmtv__F9_GXVtxFmtPC17_GXVtxAttrFmtListb(); +extern "C" void J3DGDSetTexCoordGen__F13_GXTexGenType12_GXTexGenSrc(); +extern "C" void J3DGDSetTexCoordScale2__F13_GXTexCoordIDUsUcUcUsUcUc(); +extern "C" void +J3DGDSetTexLookupMode__F11_GXTexMapID14_GXTexWrapMode14_GXTexWrapMode12_GXTexFilter12_GXTexFilterfffUcUc13_GXAnisotropy(); +extern "C" void J3DGDSetTexImgAttr__F11_GXTexMapIDUsUs9_GXTexFmt(); +extern "C" void J3DGDSetTexImgPtr__F11_GXTexMapIDPv(); +extern "C" void J3DGDSetTexImgPtrRaw__F11_GXTexMapIDUl(); +extern "C" void J3DGDSetTexTlut__F11_GXTexMapIDUl10_GXTlutFmt(); +extern "C" void J3DGDLoadTlut__FPvUl11_GXTlutSize(); +extern "C" void J3DGDSetIndTexMtx__F14_GXIndTexMtxIDPA3_fSc(); +extern "C" void +J3DGDSetIndTexCoordScale__F16_GXIndTexStageID14_GXIndTexScale14_GXIndTexScale14_GXIndTexScale14_GXIndTexScale(); +extern "C" void +J3DGDSetIndTexOrder__FUl13_GXTexCoordID11_GXTexMapID13_GXTexCoordID11_GXTexMapID13_GXTexCoordID11_GXTexMapID13_GXTexCoordID11_GXTexMapID(); +extern "C" void +J3DGDSetTevOrder__F13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID13_GXTexCoordID11_GXTexMapID12_GXChannelID(); +extern "C" void J3DGDSetTevKColor__F14_GXTevKColorID8_GXColor(); +extern "C" void J3DGDSetTevColorS10__F11_GXTevRegID11_GXColorS10(); +extern "C" void J3DGDSetFog__F10_GXFogTypeffff8_GXColor(); +extern "C" void J3DGDSetFogRangeAdj__FUcUsP14_GXFogAdjTable(); +extern "C" void J3DFifoLoadPosMtxImm__FPA4_fUl(); +extern "C" void J3DFifoLoadNrmMtxImm__FPA4_fUl(); +extern "C" void J3DFifoLoadNrmMtxImm3x3__FPA3_fUl(); +extern "C" void J3DFifoLoadNrmMtxToTexMtx__FPA4_fUl(); +extern "C" void J3DFifoLoadNrmMtxToTexMtx3x3__FPA3_fUl(); +extern "C" void J3DFifoLoadTexCached__F11_GXTexMapIDUl15_GXTexCacheSizeUl15_GXTexCacheSize(); + +// +// External References: +// + +extern "C" void GDOverflowed(); +extern "C" void __cvt_fp2unsigned(); +extern "C" void _savegpr_14(); +extern "C" void _savegpr_23(); +extern "C" void _savegpr_24(); +extern "C" void _savegpr_25(); +extern "C" void _savegpr_27(); +extern "C" void _savegpr_29(); +extern "C" void _restgpr_14(); +extern "C" void _restgpr_23(); +extern "C" void _restgpr_24(); +extern "C" void _restgpr_25(); +extern "C" void _restgpr_27(); +extern "C" void _restgpr_29(); + +// +// Declarations: +// + +/* 8030D098-8030D210 3079D8 0178+00 0/0 1/1 0/0 .text J3DGDSetGenMode__FUcUcUcUc11_GXCullMode */ +void J3DGDSetGenMode(u8 texGenNum, u8 colorChanNum, u8 tevStageNum, u8 indTexStageNum, + GXCullMode cullMode) { + GDOverflowCheck(0xa); + J3DGDWriteBPCmd(0xfe07fc3f); + static u8 cm2hw[4] = {0, 2, 1, 3}; + J3DGDWriteBPCmd(texGenNum | colorChanNum << 4 | (tevStageNum - 1) << 0xa | + cm2hw[cullMode] << 0xe | indTexStageNum << 0x10); +} + +/* 8030D210-8030D364 307B50 0154+00 0/0 1/1 0/0 .text J3DGDSetGenMode_3Param__FUcUcUc */ +void J3DGDSetGenMode_3Param(u8 texGenNum, u8 tevStageNum, u8 indTexStageNum) { + GDOverflowCheck(0xa); + J3DGDWriteBPCmd(0xfe073c0f); + J3DGDWriteBPCmd(texGenNum | (tevStageNum - 1) << 0xa | indTexStageNum << 0x10); +} + +/* 8030D364-8030D65C 307CA4 02F8+00 0/0 1/1 0/0 .text J3DGDSetLightAttn__F10_GXLightIDffffff */ +void J3DGDSetLightAttn(GXLightID id, f32 a0, f32 a1, f32 a2, f32 k0, f32 k1, f32 k2) { + J3DGDWriteXFCmdHdr(0x0604 + __GDLightID2Offset(id), 6); + J3DGDWrite_f32(a0); + J3DGDWrite_f32(a1); + J3DGDWrite_f32(a2); + J3DGDWrite_f32(k0); + J3DGDWrite_f32(k1); + J3DGDWrite_f32(k2); +} + +/* 8030D65C-8030D76C 307F9C 0110+00 0/0 1/1 0/0 .text J3DGDSetLightColor__F10_GXLightID8_GXColor + */ +void J3DGDSetLightColor(GXLightID id, GXColor color) { + J3DGDWriteXFCmd(0x0603 + __GDLightID2Offset(id), + (color.r << 24) | (color.g << 16) | (color.b << 8) | (color.a << 0)); +} + +/* 8030D76C-8030D938 3080AC 01CC+00 0/0 1/1 0/0 .text J3DGDSetLightPos__F10_GXLightIDfff + */ +void J3DGDSetLightPos(GXLightID id, f32 x, f32 y, f32 z) { + J3DGDWriteXFCmdHdr(0x060A + __GDLightID2Offset(id), 3); + J3DGDWrite_f32(x); + J3DGDWrite_f32(y); + J3DGDWrite_f32(z); +} + +/* 8030D938-8030DB04 308278 01CC+00 0/0 1/1 0/0 .text J3DGDSetLightDir__F10_GXLightIDfff + */ +void J3DGDSetLightDir(GXLightID id, f32 x, f32 y, f32 z) { + J3DGDWriteXFCmdHdr(0x060D + __GDLightID2Offset(id), 3); + J3DGDWrite_f32(x); + J3DGDWrite_f32(y); + J3DGDWrite_f32(z); +} + +/* 8030DB04-8030E064 308444 0560+00 1/0 1/1 0/0 .text + * J3DGDSetVtxAttrFmtv__F9_GXVtxFmtPC17_GXVtxAttrFmtListb */ +void J3DGDSetVtxAttrFmtv(GXVtxFmt fmt, GXVtxAttrFmtList const* fmtList, bool param_2) { + u32 pos_cnt = GX_POS_XYZ; + u32 pos_type = GX_F32; + u32 pos_shift = 0; + u32 nrm_cnt = GX_NRM_XYZ; + u32 nrm_type = GX_F32; + u32 local_34 = 0; + u32 clr0_cnt = GX_CLR_RGBA; + u32 clr0_type = GX_RGBA8; + u32 clr1_cnt = GX_CLR_RGBA; + u32 clr1_type = GX_RGBA8; + u32 tex0_cnt = GX_TEX_ST; + u32 tex0_type = GX_F32; + u32 tex0_shift = 0; + u32 tex1_cnt = GX_TEX_ST; + u32 tex1_type = GX_F32; + u32 tex1_shift = 0; + u32 tex2_cnt = GX_TEX_ST; + u32 tex2_type = GX_F32; + u32 tex2_shift = 0; + u32 tex3_cnt = GX_TEX_ST; + u32 tex3_type = GX_F32; + u32 tex3_shift = 0; + u32 tex4_cnt = GX_TEX_ST; + u32 tex4_type = GX_F32; + u32 tex4_shift = 0; + u32 tex5_cnt = GX_TEX_ST; + u32 tex5_type = GX_F32; + u32 tex5_shift = 0; + u32 tex6_cnt = GX_TEX_ST; + u32 tex6_type = GX_F32; + u32 tex6_shift = 0; + u32 tex7_cnt = GX_TEX_ST; + u32 tex7_type = GX_F32; + u32 tex7_shift = 0; + for (; fmtList->mAttrib != GX_VA_NULL; fmtList++) { + switch (fmtList->mAttrib) { + case GX_VA_POS: + pos_cnt = fmtList->mCompCnt; + pos_type = fmtList->mCompType; + pos_shift = fmtList->mCompShift; + break; + case GX_VA_NRM: + case GX_VA_NBT: + nrm_type = fmtList->mCompType; + if (fmtList->mCompCnt == GX_NRM_NBT3) { + nrm_cnt = GX_NRM_NBT; + local_34 = 1; + } else { + if (param_2) { + nrm_cnt = GX_NRM_NBT; + } else { + nrm_cnt = fmtList->mCompCnt; + } + local_34 = 0; + } + break; + case GX_VA_CLR0: + clr0_cnt = fmtList->mCompCnt; + clr0_type = fmtList->mCompType; + break; + case GX_VA_CLR1: + clr1_cnt = fmtList->mCompCnt; + clr1_type = fmtList->mCompType; + break; + case GX_VA_TEX0: + tex0_cnt = fmtList->mCompCnt; + tex0_type = fmtList->mCompType; + tex0_shift = fmtList->mCompShift; + break; + case GX_VA_TEX1: + tex1_cnt = fmtList->mCompCnt; + tex1_type = fmtList->mCompType; + tex1_shift = fmtList->mCompShift; + break; + case GX_VA_TEX2: + tex2_cnt = fmtList->mCompCnt; + tex2_type = fmtList->mCompType; + tex2_shift = fmtList->mCompShift; + break; + case GX_VA_TEX3: + tex3_cnt = fmtList->mCompCnt; + tex3_type = fmtList->mCompType; + tex3_shift = fmtList->mCompShift; + break; + case GX_VA_TEX4: + tex4_cnt = fmtList->mCompCnt; + tex4_type = fmtList->mCompType; + tex4_shift = fmtList->mCompShift; + break; + case GX_VA_TEX5: + tex5_cnt = fmtList->mCompCnt; + tex5_type = fmtList->mCompType; + tex5_shift = fmtList->mCompShift; + break; + case GX_VA_TEX6: + tex6_cnt = fmtList->mCompCnt; + tex6_type = fmtList->mCompType; + tex6_shift = fmtList->mCompShift; + break; + case GX_VA_TEX7: + tex7_cnt = fmtList->mCompCnt; + tex7_type = fmtList->mCompType; + tex7_shift = fmtList->mCompShift; + break; + } + } + GDOverflowCheck(0x12); + J3DGDWriteCPCmd(GX_CP_REG_VAT_GRP0 + fmt, + pos_cnt | pos_type << 1 | pos_shift << 4 | nrm_cnt << 9 | nrm_type << 0xa | + clr0_cnt << 0xd | clr0_type << 0xe | clr1_cnt << 0x11 | clr1_type << 0x12 | + tex0_cnt << 0x15 | tex0_type << 0x16 | tex0_shift << 0x19 | 0x40000000 | + local_34 << 0x1f); + J3DGDWriteCPCmd(GX_CP_REG_VAT_GRP1 + fmt, + tex1_cnt | tex1_type << 1 | tex1_shift << 4 | tex2_cnt << 9 | tex2_type << 0xa | + tex2_shift << 0xd | tex3_cnt << 0x12 | tex3_type << 0x13 | + tex3_shift << 0x16 | tex4_cnt << 0x1b | tex4_type << 0x1c | 0x80000000); + J3DGDWriteCPCmd(GX_CP_REG_VAT_GRP2 + fmt, + tex4_shift | tex5_cnt << 5 | tex5_type << 6 | tex5_shift << 9 | + tex6_cnt << 0xe | tex6_type << 0xf | tex6_shift << 0x12 | tex7_cnt << 0x17 | + tex7_type << 0x18 | tex7_shift << 0x1b); +} + +/* 8030E064-8030E234 3089A4 01D0+00 1/0 1/1 0/0 .text + * J3DGDSetTexCoordGen__F13_GXTexGenType12_GXTexGenSrc */ +void J3DGDSetTexCoordGen(GXTexGenType texGenType, GXTexGenSrc texGenSrc) { + u32 input_form = 0; + u32 proj_type = 0; + u32 src_row = 5; + u32 bump_src_tex = 5; + u32 bump_src_light = 0; + u32 texgen_type; + switch (texGenSrc) { + case GX_TG_POS: + src_row = 0; + input_form = 1; + break; + case GX_TG_NRM: + src_row = 1; + input_form = 1; + break; + case GX_TG_BINRM: + src_row = 3; + input_form = 1; + break; + case GX_TG_TANGENT: + src_row = 4; + input_form = 1; + break; + case GX_TG_COLOR0: + src_row = 2; + break; + case GX_TG_COLOR1: + src_row = 2; + break; + case GX_TG_TEX0: + src_row = 5; + break; + case GX_TG_TEX1: + src_row = 6; + break; + case GX_TG_TEX2: + src_row = 7; + break; + case GX_TG_TEX3: + src_row = 8; + break; + case GX_TG_TEX4: + src_row = 9; + break; + case GX_TG_TEX5: + src_row = 10; + break; + case GX_TG_TEX6: + src_row = 11; + break; + case GX_TG_TEX7: + src_row = 12; + break; + case GX_TG_TEXCOORD0: + bump_src_tex = 0; + break; + case GX_TG_TEXCOORD1: + bump_src_tex = 1; + break; + case GX_TG_TEXCOORD2: + bump_src_tex = 2; + break; + case GX_TG_TEXCOORD3: + bump_src_tex = 3; + break; + case GX_TG_TEXCOORD4: + bump_src_tex = 4; + break; + case GX_TG_TEXCOORD5: + bump_src_tex = 5; + break; + case GX_TG_TEXCOORD6: + bump_src_tex = 6; + break; + } + switch (texGenType) { + case GX_TG_MTX2x4: + texgen_type = 0; + break; + case GX_TG_MTX3x4: + texgen_type = 0; + proj_type = 1; + break; + case GX_TG_BUMP0: + case GX_TG_BUMP1: + case GX_TG_BUMP2: + case GX_TG_BUMP3: + case GX_TG_BUMP4: + case GX_TG_BUMP5: + case GX_TG_BUMP6: + case GX_TG_BUMP7: + texgen_type = 1; + bump_src_light = texGenType - 2; + break; + case GX_TG_SRTG: + if (texGenSrc == GX_TG_COLOR0) { + texgen_type = 2; + } else { + texgen_type = 3; + } + break; + } + J3DGDWrite_u32( + proj_type << (31 - GX_XF_TEX_PROJTYPE_END) | input_form << (31 - GX_XF_TEX_INPUTFORM_END) | + texgen_type << (31 - GX_XF_TEX_TEXGENTYPE_END) | src_row << (31 - GX_XF_TEX_SRCROW_END) | + bump_src_tex << (31 - GX_XF_TEX_BUMPSRCTEX_END) | + bump_src_light << (31 - GX_XF_TEX_BUMPSRCLIGHT_END)); +} + +/* 8030E234-8030E438 308B74 0204+00 0/0 16/16 0/0 .text + * J3DGDSetTexCoordScale2__F13_GXTexCoordIDUsUcUcUsUcUc */ +void J3DGDSetTexCoordScale2(GXTexCoordID param_0, u16 param_1, u8 param_2, u8 param_3, u16 param_4, + u8 param_5, u8 param_6) { + GDOverflowCheck(0xf); + J3DGDWriteBPCmd(0xfe03ffff); + J3DGDWriteBPCmd((param_1 - 1) | param_2 << 0x10 | param_3 << 0x11 | + (param_0 * 2 + 0x30) << 0x18); + J3DGDWriteBPCmd((param_4 - 1) | param_5 << 0x10 | param_6 << 0x11 | + (param_0 * 2 + 0x31) << 0x18); +} + +/* 8045090C-80450914 00038C 0008+00 1/1 0/0 0/0 .sdata J3DGDTexMode0Ids */ +static u8 J3DGDTexMode0Ids[8] = { + 0x80, 0x81, 0x82, 0x83, 0xA0, 0xA1, 0xA2, 0xA3, +}; + +/* 80450914-8045091C 000394 0008+00 1/1 0/0 0/0 .sdata J3DGDTexMode1Ids */ +static u8 J3DGDTexMode1Ids[8] = { + 0x84, 0x85, 0x86, 0x87, 0xA4, 0xA5, 0xA6, 0xA7, +}; + +/* 8045091C-80450924 00039C 0008+00 1/1 0/0 0/0 .sdata J3DGDTexImage0Ids */ +static u8 J3DGDTexImage0Ids[8] = { + 0x88, 0x89, 0x8A, 0x8B, 0xA8, 0xA9, 0xAA, 0xAB, +}; + +/* 80450924-8045092C 0003A4 0008+00 2/2 0/0 0/0 .sdata J3DGDTexImage3Ids */ +static u8 J3DGDTexImage3Ids[8] = { + 0x94, 0x95, 0x96, 0x97, 0xB4, 0xB5, 0xB6, 0xB7, +}; + +/* 8045092C-80450934 0003AC 0008+00 1/1 0/0 0/0 .sdata J3DGDTexTlutIds */ +static u8 J3DGDTexTlutIds[8] = { + 0x98, 0x99, 0x9A, 0x9B, 0xB8, 0xB9, 0xBA, 0xBB, +}; + +/* 80450934-8045093C 0003B4 0006+02 1/1 0/0 0/0 .sdata GX2HWFiltConv */ +static u8 GX2HWFiltConv[6] = { + 0x00, 0x04, 0x01, 0x05, 0x02, 0x06, +}; + +/* 8030E438-8030E5D4 308D78 019C+00 0/0 1/1 0/0 .text + * J3DGDSetTexLookupMode__F11_GXTexMapID14_GXTexWrapMode14_GXTexWrapMode12_GXTexFilter12_GXTexFilterfffUcUc13_GXAnisotropy + */ +void J3DGDSetTexLookupMode(GXTexMapID param_0, GXTexWrapMode param_1, GXTexWrapMode param_2, + GXTexFilter param_3, GXTexFilter param_4, f32 param_5, f32 param_6, + f32 param_7, u8 param_8, u8 param_9, GXAnisotropy param_10) { + J3DGDWriteBPCmd(param_1 | param_2 << 2 | (param_4 == GX_LINEAR) << 4 | + GX2HWFiltConv[param_3] << 5 | (param_9 == 0) << 8 | + ((int)(param_7 * 32.0f) & 0xff) << 9 | param_10 << 0x13 | param_8 << 0x15 | + J3DGDTexMode0Ids[param_0] << 0x18); + J3DGDWriteBPCmd(((int)(param_5 * 16.0f) & 0xff) | ((int)(param_6 * 16.0f) & 0xff) << 8 | + J3DGDTexMode1Ids[param_0] << 0x18); +} + +/* 8030E5D4-8030E67C 308F14 00A8+00 0/0 1/1 0/0 .text + * J3DGDSetTexImgAttr__F11_GXTexMapIDUsUs9_GXTexFmt */ +void J3DGDSetTexImgAttr(GXTexMapID param_0, u16 param_1, u16 param_2, GXTexFmt param_3) { + J3DGDWriteBPCmd((param_1 - 1) | (param_2 - 1) << 0xa | param_3 << 0x14 | + J3DGDTexImage0Ids[param_0] << 0x18); +} + +/* 8030E67C-8030E70C 308FBC 0090+00 0/0 1/1 0/0 .text J3DGDSetTexImgPtr__F11_GXTexMapIDPv + */ +void J3DGDSetTexImgPtr(GXTexMapID param_0, void* param_1) { + J3DGDWriteBPCmd(OSCachedToPhysical(param_1) >> 5 | J3DGDTexImage3Ids[param_0] << 0x18); +} + +/* 8030E70C-8030E7E0 30904C 00D4+00 0/0 1/1 0/0 .text J3DGDSetTexImgPtrRaw__F11_GXTexMapIDUl */ +void J3DGDSetTexImgPtrRaw(GXTexMapID param_0, u32 param_1) { + GDOverflowCheck(5); + J3DGDWriteBPCmd(param_1 | J3DGDTexImage3Ids[param_0] << 0x18); +} + +/* 8030E7E0-8030E878 309120 0098+00 0/0 1/1 0/0 .text + * J3DGDSetTexTlut__F11_GXTexMapIDUl10_GXTlutFmt */ +void J3DGDSetTexTlut(GXTexMapID param_0, u32 param_1, GXTlutFmt param_2) { + J3DGDWriteBPCmd((param_1 - 0x80000) >> 9 | param_2 << 0xa | J3DGDTexTlutIds[param_0] << 0x18); +} + +/* 8030E878-8030EB30 3091B8 02B8+00 0/0 1/1 0/0 .text J3DGDLoadTlut__FPvUl11_GXTlutSize + */ +void J3DGDLoadTlut(void* param_0, u32 param_1, GXTlutSize param_2) { + J3DGDWriteBPCmd(0xfeffff00); + J3DGDWriteBPCmd(0x0f000000); + J3DGDWriteBPCmd(OSCachedToPhysical(param_0) >> 5 | 0x64000000); + J3DGDWriteBPCmd((param_1 - 0x80000) >> 9 | param_2 << 0xa | 0x65000000); + J3DGDWriteBPCmd(0xfeffff00); + J3DGDWriteBPCmd(0x0f000000); +} + +/* 8030EB30-8030EE10 309470 02E0+00 0/0 2/2 0/0 .text J3DGDSetIndTexMtx__F14_GXIndTexMtxIDPA3_fSc + */ +void J3DGDSetIndTexMtx(GXIndTexMtxID id, Mtx3P mtx, s8 exp) { + s32 mtx32[6]; + u32 idx; + + switch (id) { + case GX_ITM_0: + case GX_ITM_1: + case GX_ITM_2: + idx = (u32)(id - GX_ITM_0); + break; + case GX_ITM_S0: + case GX_ITM_S1: + case GX_ITM_S2: + idx = (u32)(id - GX_ITM_S0); + break; + case GX_ITM_T0: + case GX_ITM_T1: + case GX_ITM_T2: + idx = (u32)(id - GX_ITM_T0); + break; + default: + idx = 0; + break; + } + + exp += 17; + + mtx32[0] = (s32)(mtx[0][0] * 1024.0f) & 0x7FF; + mtx32[1] = (s32)(mtx[1][0] * 1024.0f) & 0x7FF; + + mtx32[2] = (s32)(mtx[0][1] * 1024.0f) & 0x7FF; + mtx32[3] = (s32)(mtx[1][1] * 1024.0f) & 0x7FF; + + mtx32[4] = (s32)(mtx[0][2] * 1024.0f) & 0x7FF; + mtx32[5] = (s32)(mtx[1][2] * 1024.0f) & 0x7FF; + + GDOverflowCheck(15); + + J3DGDWriteBPCmd((mtx32[0] << 0) | (mtx32[1] << 11) | (((exp >> 0) & 0x03) << 22) | + (0x06 + idx * 3) << 24); + J3DGDWriteBPCmd((mtx32[2] << 0) | (mtx32[3] << 11) | (((exp >> 2) & 0x03) << 22) | + (0x07 + idx * 3) << 24); + J3DGDWriteBPCmd((mtx32[4] << 0) | (mtx32[5] << 11) | (((exp >> 4) & 0x03) << 22) | + (0x08 + idx * 3) << 24); +} + +/* 8030EE10-8030EF08 309750 00F8+00 0/0 2/2 0/0 .text + * J3DGDSetIndTexCoordScale__F16_GXIndTexStageID14_GXIndTexScale14_GXIndTexScale14_GXIndTexScale14_GXIndTexScale + */ +void J3DGDSetIndTexCoordScale(GXIndTexStageID stage, GXIndTexScale scale0, GXIndTexScale scale1, + GXIndTexScale scale2, GXIndTexScale scale3) { + GDOverflowCheck(5); + J3DGDWriteBPCmd(scale0 | scale1 << 4 | scale2 << 8 | scale3 << 0xc | + ((stage >> 1) + GX_BP_REG_RAS1_SS0) << 0x18); +} + +/* 8030EF08-8030F108 309848 0200+00 0/0 2/2 0/0 .text + * J3DGDSetIndTexOrder__FUl13_GXTexCoordID11_GXTexMapID13_GXTexCoordID11_GXTexMapID13_GXTexCoordID11_GXTexMapID13_GXTexCoordID11_GXTexMapID + */ +void J3DGDSetIndTexOrder(u32 count, GXTexCoordID coord0, GXTexMapID map0, GXTexCoordID coord1, + GXTexMapID map1, GXTexCoordID coord2, GXTexMapID map2, GXTexCoordID coord3, + GXTexMapID map3) { + GDOverflowCheck(0xa); + J3DGDWriteBPCmd(map0 & 7 | (coord0 & 7) << 3 | (map1 & 7) << 6 | (coord1 & 7) << 9 | + (map2 & 7) << 0xc | (coord2 & 7) << 0xf | (map3 & 7) << 0x12 | + (coord3 & 7) << 0x15 | GX_BP_REG_RAS1_IREF << 0x18); + u32 imask = 0; + for (u32 i = 0; i < count; i++) { + switch (i) { + case 0: + imask |= 1 << (map0 & 7); + break; + case 1: + imask |= 1 << (map1 & 7); + break; + case 2: + imask |= 1 << (map2 & 7); + break; + case 3: + imask |= 1 << (map3 & 7); + break; + } + } + J3DGDWriteBPCmd(imask | GX_BP_REG_INDIMASK << 0x18); +} + +/* 8030F108-8030F294 309A48 018C+00 0/0 9/9 0/0 .text + * J3DGDSetTevOrder__F13_GXTevStageID13_GXTexCoordID11_GXTexMapID12_GXChannelID13_GXTexCoordID11_GXTexMapID12_GXChannelID + */ +void J3DGDSetTevOrder(GXTevStageID stage, GXTexCoordID coord0, GXTexMapID map0, + GXChannelID channel0, GXTexCoordID coord1, GXTexMapID map1, + GXChannelID channel1) { + coord0 = coord0 >= GX_MAXCOORD ? GX_TEXCOORD0 : coord0; + coord1 = coord1 >= GX_MAXCOORD ? GX_TEXCOORD0 : coord1; + GDOverflowCheck(5); + static u8 c2r[32] = {0, 1, 0, 1, 0, 1, 7, 5, 6, 0, 0, 0, 0, 0, 0, 7, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + J3DGDWriteBPCmd((map0 & 7) | coord0 << 3 | + (map0 != GX_TEXMAP_NULL && !(map0 & GX_TEXMAP_DISABLE)) << 6 | + c2r[channel0 & 0xf] << 7 | (map1 & 7) << 0xc | coord1 << 0xf | + (map1 != GX_TEXMAP_NULL && !(map1 & GX_TEXMAP_DISABLE)) << 0x12 | + c2r[channel1 & 0xf] << 0x13 | (stage / 2 + GX_BP_REG_RAS1_TREF0) << 0x18); +} + +/* 8030F294-8030F3FC 309BD4 0168+00 0/0 11/11 0/0 .text + * J3DGDSetTevKColor__F14_GXTevKColorID8_GXColor */ +void J3DGDSetTevKColor(GXTevKColorID id, GXColor color) { + u32 cmd0 = color.r | color.a << 0xc | 0x800000 | (id * 2 + GX_BP_REG_TEVREG0LO) << 0x18; + u32 cmd1 = color.b | color.g << 0xc | 0x800000 | (id * 2 + GX_BP_REG_TEVREG0HI) << 0x18; + GDOverflowCheck(0xa); + J3DGDWriteBPCmd(cmd0); + J3DGDWriteBPCmd(cmd1); +} + +/* 8030F3FC-8030F630 309D3C 0234+00 0/0 11/11 0/0 .text + * J3DGDSetTevColorS10__F11_GXTevRegID11_GXColorS10 */ +void J3DGDSetTevColorS10(GXTevRegID id, GXColorS10 color) { + u32 cmd0 = + (color.r & 0x7ff) | (color.a & 0x7ff) << 0xc | (id * 2 + GX_BP_REG_TEVREG0LO) << 0x18; + u32 cmd1 = + (color.b & 0x7ff) | (color.g & 0x7ff) << 0xc | (id * 2 + GX_BP_REG_TEVREG0HI) << 0x18; + GDOverflowCheck(0x14); + J3DGDWriteBPCmd(cmd0); + J3DGDWriteBPCmd(cmd1); + J3DGDWriteBPCmd(cmd1); + J3DGDWriteBPCmd(cmd1); +} + +/* 8030F630-8030F994 309F70 0364+00 0/0 3/3 0/0 .text J3DGDSetFog__F10_GXFogTypeffff8_GXColor */ +void J3DGDSetFog(GXFogType fogType, f32 param_1, f32 param_2, f32 nearZ, f32 farZ, GXColor color) { + f32 fvar1, fvar2, fvar3; + if (farZ == nearZ || param_2 == param_1) { + fvar1 = 0.0f; + fvar2 = 0.5f; + fvar3 = 0.0f; + } else { + fvar1 = (farZ * nearZ) / ((farZ - nearZ) * (param_2 - param_1)); + fvar2 = farZ / (farZ - nearZ); + fvar3 = param_1 / (param_2 - param_1); + } + u32 shift = 1; + for (; fvar2 > 1.0; fvar2 *= 0.5f) { + shift++; + } + for (; fvar2 > 0.0f && fvar2 < 0.5; fvar2 *= 2.0f) { + shift--; + } + f32 fvar4 = (fvar1 / (1 << shift)); + u32 param1 = fvar2 * 8388638.0f; + u32 param0 = *(u32*)&fvar4; + u32 param3 = *(u32*)&fvar3; + J3DGDWriteBPCmd(param0 >> 0xc | GX_BP_REG_FOGPARAM0 << 0x18); + J3DGDWriteBPCmd(param1 | GX_BP_REG_FOGPARAM1 << 0x18); + J3DGDWriteBPCmd(shift | GX_BP_REG_FOGPARAM2 << 0x18); + J3DGDWriteBPCmd(param3 >> 0xc | fogType << 0x15 | GX_BP_REG_FOGPARAM3 << 0x18); + J3DGDWriteBPCmd(color.b | color.g << 8 | color.r << 0x10 | GX_BP_REG_FOGCOLOR << 0x18); +} + +/* 8030F994-8030FAE0 30A2D4 014C+00 0/0 3/3 0/0 .text J3DGDSetFogRangeAdj__FUcUsP14_GXFogAdjTable + */ +void J3DGDSetFogRangeAdj(u8 param_0, u16 param_1, GXFogAdjTable* table) { + if (param_0 != 0) { + for (int i = 0; i < 0xa; i += 2) { + J3DGDWriteBPCmd((i / 2 + GX_BP_REG_FOGRANGEK0) << 0x18 | table->fogVals[i + 1] << 0xc | + table->fogVals[i]); + } + } + u32 cmd = GX_BP_REG_FOGRANGE << 0x18 | (param_1 + 0x156) | param_0 << 0xa; + J3DGDWriteBPCmd(cmd); +} + +/* 8030FAE0-8030FB60 30A420 0080+00 0/0 10/10 0/0 .text J3DFifoLoadPosMtxImm__FPA4_fUl */ +void J3DFifoLoadPosMtxImm(MtxP mtx, u32 addr) { + J3DFifoWriteXFCmdHdr((addr & 0x3fff) << 2, 0xc); + J3DGXCmd1f32ptr(&mtx[0][0]); + J3DGXCmd1f32ptr(&mtx[0][1]); + J3DGXCmd1f32ptr(&mtx[0][2]); + J3DGXCmd1f32ptr(&mtx[0][3]); + J3DGXCmd1f32ptr(&mtx[1][0]); + J3DGXCmd1f32ptr(&mtx[1][1]); + J3DGXCmd1f32ptr(&mtx[1][2]); + J3DGXCmd1f32ptr(&mtx[1][3]); + J3DGXCmd1f32ptr(&mtx[2][0]); + J3DGXCmd1f32ptr(&mtx[2][1]); + J3DGXCmd1f32ptr(&mtx[2][2]); + J3DGXCmd1f32ptr(&mtx[2][3]); +} + +/* 8030FB60-8030FBCC 30A4A0 006C+00 0/0 9/9 0/0 .text J3DFifoLoadNrmMtxImm__FPA4_fUl */ +void J3DFifoLoadNrmMtxImm(MtxP mtx, u32 addr) { + J3DFifoWriteXFCmdHdr(addr * 3 + 0x400, 9); + J3DGXCmd1f32ptr(&mtx[0][0]); + J3DGXCmd1f32ptr(&mtx[0][1]); + J3DGXCmd1f32ptr(&mtx[0][2]); + J3DGXCmd1f32ptr(&mtx[1][0]); + J3DGXCmd1f32ptr(&mtx[1][1]); + J3DGXCmd1f32ptr(&mtx[1][2]); + J3DGXCmd1f32ptr(&mtx[2][0]); + J3DGXCmd1f32ptr(&mtx[2][1]); + J3DGXCmd1f32ptr(&mtx[2][2]); +} + +/* 8030FBCC-8030FC38 30A50C 006C+00 0/0 3/3 0/0 .text J3DFifoLoadNrmMtxImm3x3__FPA3_fUl + */ +void J3DFifoLoadNrmMtxImm3x3(Mtx3P mtx, u32 addr) { + J3DFifoWriteXFCmdHdr(addr * 3 + 0x400, 9); + J3DGXCmd1f32ptr(&mtx[0][0]); + J3DGXCmd1f32ptr(&mtx[0][1]); + J3DGXCmd1f32ptr(&mtx[0][2]); + J3DGXCmd1f32ptr(&mtx[1][0]); + J3DGXCmd1f32ptr(&mtx[1][1]); + J3DGXCmd1f32ptr(&mtx[1][2]); + J3DGXCmd1f32ptr(&mtx[2][0]); + J3DGXCmd1f32ptr(&mtx[2][1]); + J3DGXCmd1f32ptr(&mtx[2][2]); +} + +/* 8030FC38-8030FCD0 30A578 0098+00 0/0 4/4 0/0 .text J3DFifoLoadNrmMtxToTexMtx__FPA4_fUl + */ +void J3DFifoLoadNrmMtxToTexMtx(MtxP mtx, u32 addr) { + J3DFifoWriteXFCmdHdr((addr & 0x3fff) << 2, 0xc); + J3DGXCmd1f32ptr(&mtx[0][0]); + J3DGXCmd1f32ptr(&mtx[0][1]); + J3DGXCmd1f32ptr(&mtx[0][2]); + J3DGXCmd1f32(0.0f); + J3DGXCmd1f32ptr(&mtx[1][0]); + J3DGXCmd1f32ptr(&mtx[1][1]); + J3DGXCmd1f32ptr(&mtx[1][2]); + J3DGXCmd1f32(0.0f); + J3DGXCmd1f32ptr(&mtx[2][0]); + J3DGXCmd1f32ptr(&mtx[2][1]); + J3DGXCmd1f32ptr(&mtx[2][2]); + J3DGXCmd1f32(0.0f); +} + +/* 8030FCD0-8030FD68 30A610 0098+00 0/0 2/2 0/0 .text J3DFifoLoadNrmMtxToTexMtx3x3__FPA3_fUl */ +void J3DFifoLoadNrmMtxToTexMtx3x3(Mtx3P mtx, u32 addr) { + J3DFifoWriteXFCmdHdr((addr & 0x3fff) << 2, 0xc); + J3DGXCmd1f32ptr(&mtx[0][0]); + J3DGXCmd1f32ptr(&mtx[0][1]); + J3DGXCmd1f32ptr(&mtx[0][2]); + J3DGXCmd1f32(0.0f); + J3DGXCmd1f32ptr(&mtx[1][0]); + J3DGXCmd1f32ptr(&mtx[1][1]); + J3DGXCmd1f32ptr(&mtx[1][2]); + J3DGXCmd1f32(0.0f); + J3DGXCmd1f32ptr(&mtx[2][0]); + J3DGXCmd1f32ptr(&mtx[2][1]); + J3DGXCmd1f32ptr(&mtx[2][2]); + J3DGXCmd1f32(0.0f); +} + +/* 8045093C-80450944 0003BC 0008+00 1/1 0/0 0/0 .sdata J3DTexImage1Ids */ +SECTION_SDATA static u8 J3DTexImage1Ids[8] = { + 0x8C, 0x8D, 0x8E, 0x8F, 0xAC, 0xAD, 0xAE, 0xAF, +}; + +/* 80450944-8045094C 0003C4 0008+00 1/1 0/0 0/0 .sdata J3DTexImage2Ids */ +SECTION_SDATA static u8 J3DTexImage2Ids[8] = { + 0x90, 0x91, 0x92, 0x93, 0xB0, 0xB1, 0xB2, 0xB3, +}; + +/* 8030FD68-8030FDE8 30A6A8 0080+00 0/0 1/1 0/0 .text + * J3DFifoLoadTexCached__F11_GXTexMapIDUl15_GXTexCacheSizeUl15_GXTexCacheSize */ +#ifdef NONMATCHING +void J3DFifoLoadTexCached(GXTexMapID id, u32 param_1, GXTexCacheSize param_2, u32 param_3, + GXTexCacheSize param_4) { + J3DFifoLoadBPCmd(param_1 >> 5 | (param_2 + 3) << 0xf | (param_2 + 3) << 0x12 | + J3DTexImage1Ids[id] << 0x18); + if (param_4 != GX_TEXCACHE_NONE && param_3 < 0x100000) { + J3DFifoLoadBPCmd(param_3 >> 5 | (param_4 + 3) << 0xf | (param_4 + 3) << 0x12 | + J3DTexImage2Ids[id] << 0x18); + } +} +#else +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm void J3DFifoLoadTexCached(_GXTexMapID param_0, u32 param_1, _GXTexCacheSize param_2, + u32 param_3, _GXTexCacheSize param_4) { + nofralloc +#include "asm/JSystem/J3DGraphBase/J3DGD/J3DFifoLoadTexCached__F11_GXTexMapIDUl15_GXTexCacheSizeUl15_GXTexCacheSize.s" +} +#pragma pop +#endif diff --git a/libs/JSystem/J3DGraphBase/J3DMatBlock.cpp b/libs/JSystem/J3DGraphBase/J3DMatBlock.cpp index 1754afff5e..852c27b4db 100644 --- a/libs/JSystem/J3DGraphBase/J3DMatBlock.cpp +++ b/libs/JSystem/J3DGraphBase/J3DMatBlock.cpp @@ -4,7 +4,6 @@ // #include "JSystem/J3DGraphBase/J3DMatBlock.h" -#include "dolphin/gd.h" #include "JSystem/J3DGraphBase/J3DGD.h" #include "JSystem/J3DGraphBase/J3DSys.h" #include "dol2asm.h" diff --git a/libs/JSystem/J3DGraphBase/J3DMaterial.cpp b/libs/JSystem/J3DGraphBase/J3DMaterial.cpp index ad853d22e0..258c0b6d13 100644 --- a/libs/JSystem/J3DGraphBase/J3DMaterial.cpp +++ b/libs/JSystem/J3DGraphBase/J3DMaterial.cpp @@ -1,1325 +1,1325 @@ -// -// Generated By: dol2asm -// Translation Unit: J3DMaterial -// - -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/J3DGraphBase/J3DGD.h" -#include "dol2asm.h" - -// -// Forward References: -// - -extern "C" void createColorBlock__11J3DMaterialFUl(); -extern "C" void createTexGenBlock__11J3DMaterialFUl(); -extern "C" void createTevBlock__11J3DMaterialFi(); -extern "C" void createIndBlock__11J3DMaterialFi(); -extern "C" void createPEBlock__11J3DMaterialFUlUl(); -extern "C" void calcSizeColorBlock__11J3DMaterialFUl(); -extern "C" void calcSizeTexGenBlock__11J3DMaterialFUl(); -extern "C" void calcSizeTevBlock__11J3DMaterialFi(); -extern "C" void calcSizeIndBlock__11J3DMaterialFi(); -extern "C" void calcSizePEBlock__11J3DMaterialFUlUl(); -extern "C" void initialize__11J3DMaterialFv(); -extern "C" void countDLSize__11J3DMaterialFv(); -extern "C" void makeDisplayList_private__11J3DMaterialFP17J3DDisplayListObj(); -extern "C" void makeDisplayList__11J3DMaterialFv(); -extern "C" void makeSharedDisplayList__11J3DMaterialFv(); -extern "C" void load__11J3DMaterialFv(); -extern "C" void loadSharedDL__11J3DMaterialFv(); -extern "C" void patch__11J3DMaterialFv(); -extern "C" void diff__11J3DMaterialFUl(); -extern "C" void calc__11J3DMaterialFPA4_Cf(); -extern "C" void calcDiffTexMtx__11J3DMaterialFPA4_Cf(); -extern "C" void setCurrentMtx__11J3DMaterialFv(); -extern "C" void calcCurrentMtx__11J3DMaterialFv(); -extern "C" void copy__11J3DMaterialFP11J3DMaterial(); -extern "C" void reset__11J3DMaterialFv(); -extern "C" void change__11J3DMaterialFv(); -extern "C" void newSharedDisplayList__11J3DMaterialFUl(); -extern "C" void newSingleSharedDisplayList__11J3DMaterialFUl(); -extern "C" void initialize__18J3DPatchedMaterialFv(); -extern "C" void makeDisplayList__18J3DPatchedMaterialFv(); -extern "C" void makeSharedDisplayList__18J3DPatchedMaterialFv(); -extern "C" void load__18J3DPatchedMaterialFv(); -extern "C" void loadSharedDL__18J3DPatchedMaterialFv(); -extern "C" void reset__18J3DPatchedMaterialFv(); -extern "C" void change__18J3DPatchedMaterialFv(); -extern "C" void initialize__17J3DLockedMaterialFv(); -extern "C" void makeDisplayList__17J3DLockedMaterialFv(); -extern "C" void makeSharedDisplayList__17J3DLockedMaterialFv(); -extern "C" void load__17J3DLockedMaterialFv(); -extern "C" void loadSharedDL__17J3DLockedMaterialFv(); -extern "C" void patch__17J3DLockedMaterialFv(); -extern "C" void diff__17J3DLockedMaterialFUl(); -extern "C" void calc__17J3DLockedMaterialFPA4_Cf(); -extern "C" void reset__17J3DLockedMaterialFv(); -extern "C" void change__17J3DLockedMaterialFv(); -extern "C" void __dt__21J3DColorBlockLightOffFv(); -extern "C" void __dt__13J3DColorBlockFv(); -extern "C" void __dt__21J3DTexGenBlockPatchedFv(); -extern "C" void __dt__14J3DTexGenBlockFv(); -extern "C" void __dt__11J3DTevBlockFv(); -extern "C" void __dt__11J3DIndBlockFv(); -extern "C" void __dt__10J3DPEBlockFv(); -extern "C" bool countDLSize__14J3DTexGenBlockFv(); -extern "C" bool countDLSize__13J3DColorBlockFv(); -extern "C" bool countDLSize__11J3DTevBlockFv(); -extern "C" bool countDLSize__11J3DIndBlockFv(); -extern "C" bool countDLSize__10J3DPEBlockFv(); -extern "C" void load__13J3DColorBlockFv(); -extern "C" s32 getCullMode__13J3DColorBlockCFv(); -extern "C" void load__11J3DTevBlockFv(); -extern "C" J3DNBTScale* getNBTScale__14J3DTexGenBlockFv(); -extern "C" void patch__13J3DColorBlockFv(); -extern "C" void diff__13J3DColorBlockFUl(); -extern "C" void diff__10J3DPEBlockFUl(); -extern "C" void reset__10J3DPEBlockFP10J3DPEBlock(); -extern "C" void reset__11J3DIndBlockFP11J3DIndBlock(); -extern "C" void reset__11J3DTevBlockFP11J3DTevBlock(J3DTevBlock* param_0); -extern "C" void reset__14J3DTexGenBlockFP14J3DTexGenBlock(); -extern "C" void reset__13J3DColorBlockFP13J3DColorBlock(); -extern "C" void diffFog__10J3DPEBlockFv(); -extern "C" void diffBlend__10J3DPEBlockFv(); -extern "C" void setFog__10J3DPEBlockFP6J3DFog(); -extern "C" void setFog__10J3DPEBlockF6J3DFog(); -extern "C" void setAlphaComp__10J3DPEBlockFPC12J3DAlphaComp(); -extern "C" void setBlend__10J3DPEBlockFPC8J3DBlend(); -extern "C" void setZMode__10J3DPEBlockFPC8J3DZMode(); -extern "C" void setZCompLoc__10J3DPEBlockFPCUc(); -extern "C" void setDither__10J3DPEBlockFUc(); -extern "C" void setDither__10J3DPEBlockFPCUc(); -extern "C" bool getDither__10J3DPEBlockCFv(); -extern "C" bool getFogOffset__10J3DPEBlockCFv(); -extern "C" void setFogOffset__10J3DPEBlockFUl(); -extern "C" void diff__15J3DIndBlockNullFUl(); -extern "C" void load__15J3DIndBlockNullFv(); -extern "C" void reset__15J3DIndBlockNullFP11J3DIndBlock(); -extern "C" void getType__15J3DIndBlockNullFv(); -extern "C" void __dt__15J3DIndBlockNullFv(); -extern "C" void setIndTexOrder__11J3DIndBlockFUlPC14J3DIndTexOrder(); -extern "C" void setIndTexOrder__11J3DIndBlockFUl14J3DIndTexOrder(); -extern "C" void setIndTexMtx__11J3DIndBlockFUlPC12J3DIndTexMtx(); -extern "C" void setIndTexCoordScale__11J3DIndBlockFUlPC19J3DIndTexCoordScale(); -extern "C" void setTexGenNum__14J3DTexGenBlockFPCUl(); -extern "C" void setNBTScale__14J3DTexGenBlockF11J3DNBTScale(); -extern "C" void setNBTScale__14J3DTexGenBlockFPC11J3DNBTScale(); -extern "C" bool getTexMtxOffset__14J3DTexGenBlockCFv(); -extern "C" void setTexMtxOffset__14J3DTexGenBlockFUl(); -extern "C" void patchMatColor__13J3DColorBlockFv(); -extern "C" void diffAmbColor__13J3DColorBlockFv(); -extern "C" void diffMatColor__13J3DColorBlockFv(); -extern "C" void diffColorChan__13J3DColorBlockFv(); -extern "C" void diffLightObj__13J3DColorBlockFUl(); -extern "C" void setMatColor__13J3DColorBlockFUlPC10J3DGXColor(); -extern "C" void setColorChanNum__13J3DColorBlockFPCUc(); -extern "C" void setColorChan__13J3DColorBlockFUlPC12J3DColorChan(); -extern "C" bool getLight__13J3DColorBlockFUl(); -extern "C" void setCullMode__13J3DColorBlockFUc(); -extern "C" void setCullMode__13J3DColorBlockFPCUc(); -extern "C" bool getMatColorOffset__13J3DColorBlockCFv(); -extern "C" bool getColorChanOffset__13J3DColorBlockCFv(); -extern "C" void setMatColorOffset__13J3DColorBlockFUl(); -extern "C" void setColorChanOffset__13J3DColorBlockFUl(); - -// -// External References: -// - -extern "C" void patch__10J3DPEBlockFv(); -extern "C" void patchLight__13J3DColorBlockFv(); -extern "C" bool getZCompLoc__10J3DPEBlockCFv(); -extern "C" bool getZMode__10J3DPEBlockFv(); -extern "C" bool getBlend__10J3DPEBlockFv(); -extern "C" bool getAlphaComp__10J3DPEBlockFv(); -extern "C" bool getFog__10J3DPEBlockFv(); -extern "C" bool getIndTexCoordScale__11J3DIndBlockFUl(); -extern "C" bool getIndTexMtx__11J3DIndBlockFUl(); -extern "C" bool getIndTexOrder__11J3DIndBlockFUl(); -extern "C" bool getIndTexStageNum__11J3DIndBlockCFv(); -extern "C" bool getTexMtx__14J3DTexGenBlockFUl(); -extern "C" bool getTexCoord__14J3DTexGenBlockFUl(); -extern "C" bool getTexGenNum__14J3DTexGenBlockCFv(); -extern "C" bool getAmbColor__13J3DColorBlockFUl(); -extern "C" bool getColorChan__13J3DColorBlockFUl(); -extern "C" bool getMatColor__13J3DColorBlockFUl(); -extern "C" bool getColorChanNum__13J3DColorBlockCFv(); -extern "C" void setZCompLoc__10J3DPEBlockFUc(); -extern "C" void setZMode__10J3DPEBlockF8J3DZMode(); -extern "C" void setBlend__10J3DPEBlockFRC8J3DBlend(); -extern "C" void setAlphaComp__10J3DPEBlockFRC12J3DAlphaComp(); -extern "C" void setIndTexCoordScale__11J3DIndBlockFUl19J3DIndTexCoordScale(); -extern "C" void __dt__19J3DIndTexCoordScaleFv(); -extern "C" void setIndTexMtx__11J3DIndBlockFUl12J3DIndTexMtx(); -extern "C" void __dt__12J3DIndTexMtxFv(); -extern "C" void setIndTexStageNum__11J3DIndBlockFUc(); -extern "C" void setTexCoord__14J3DTexGenBlockFUlPC11J3DTexCoord(); -extern "C" void setTexGenNum__14J3DTexGenBlockFUl(); -extern "C" void setAmbColor__13J3DColorBlockFUl10J3DGXColor(); -extern "C" void setColorChan__13J3DColorBlockFUlRC12J3DColorChan(); -extern "C" void setMatColor__13J3DColorBlockFUl10J3DGXColor(); -extern "C" void setColorChanNum__13J3DColorBlockFUc(); -extern "C" void __ct__19J3DIndTexCoordScaleFv(); -extern "C" void __ct__12J3DIndTexMtxFv(); -extern "C" void __ct__14J3DIndTexOrderFv(); -extern "C" void __ct__19J3DTevSwapModeTableFv(); -extern "C" void __ct__11J3DTevOrderFv(); -extern "C" void __ct__14J3DIndTevStageFv(); -extern "C" void __ct__11J3DTevStageFv(); -extern "C" void __ct__13J3DGXColorS10Fv(); -extern "C" void __ct__11J3DTexCoordFv(); -extern "C" void __ct__12J3DColorChanFv(); -extern "C" void __ct__10J3DGXColorFv(); -extern "C" void setTexMtx__14J3DTexGenBlockFUlP9J3DTexMtx(); -extern "C" void setLight__13J3DColorBlockFUlP11J3DLightObj(); -extern "C" void setAmbColor__13J3DColorBlockFUlPC10J3DGXColor(); -extern "C" void* __nw__FUl(); -extern "C" void __dl__FPv(); -extern "C" void J3DGDSetGenMode__FUcUcUcUc11_GXCullMode(); -extern "C" void J3DGDSetGenMode_3Param__FUcUcUc(); -extern "C" void newDisplayList__17J3DDisplayListObjFUl(); -extern "C" void newSingleDisplayList__17J3DDisplayListObjFUl(); -extern "C" void callDL__17J3DDisplayListObjCFv(); -extern "C" void beginDL__17J3DDisplayListObjFv(); -extern "C" void endDL__17J3DDisplayListObjFv(); -extern "C" void beginPatch__17J3DDisplayListObjFv(); -extern "C" void endPatch__17J3DDisplayListObjFv(); -extern "C" void beginDiff__12J3DMatPacketFv(); -extern "C" void endDiff__12J3DMatPacketFv(); -extern "C" void initialize__21J3DColorBlockLightOffFv(); -extern "C" void initialize__22J3DColorBlockAmbientOnFv(); -extern "C" void initialize__20J3DColorBlockLightOnFv(); -extern "C" void initialize__21J3DTexGenBlockPatchedFv(); -extern "C" void initialize__15J3DTexGenBlock4Fv(); -extern "C" void initialize__19J3DTexGenBlockBasicFv(); -extern "C" void initialize__12J3DTevBlock1Fv(); -extern "C" void initialize__12J3DTevBlock2Fv(); -extern "C" void initialize__12J3DTevBlock4Fv(); -extern "C" void initialize__13J3DTevBlock16Fv(); -extern "C" void initialize__15J3DIndBlockFullFv(); -extern "C" void initialize__16J3DPEBlockFogOffFv(); -extern "C" void initialize__14J3DPEBlockFullFv(); -extern "C" void loadNBTScale__FR11J3DNBTScale(); -extern "C" void __as__10J3DFogInfoFRC10J3DFogInfo(); -extern "C" void __construct_array(); -extern "C" void _savegpr_24(); -extern "C" void _savegpr_26(); -extern "C" void _savegpr_27(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_24(); -extern "C" void _restgpr_26(); -extern "C" void _restgpr_27(); -extern "C" void _restgpr_29(); -extern "C" extern void* __vt__14J3DPEBlockFull[31]; -extern "C" extern void* __vt__16J3DPEBlockFogOff[31]; -extern "C" extern void* __vt__13J3DTevBlock16[55]; -extern "C" extern void* __vt__12J3DTevBlock4[55]; -extern "C" extern void* __vt__12J3DTevBlock2[55]; -extern "C" extern void* __vt__12J3DTevBlock1[55]; -extern "C" extern void* __vt__19J3DTexGenBlockBasic[27]; -extern "C" extern void* __vt__15J3DTexGenBlock4[27]; -extern "C" extern void* __vt__21J3DTexGenBlockPatched[27]; -extern "C" extern void* __vt__20J3DColorBlockLightOn[36]; -extern "C" extern void* __vt__22J3DColorBlockAmbientOn[36]; -extern "C" extern void* __vt__13J3DPEBlockXlu[31]; -extern "C" extern void* __vt__17J3DPEBlockTexEdge[31]; -extern "C" extern void* __vt__13J3DPEBlockOpa[31]; -extern "C" extern void* __vt__15J3DIndBlockFull[19]; -extern "C" extern void* __vt__11J3DTevBlock[55]; -extern "C" extern void* __vt__21J3DColorBlockLightOff[36 + 1 /* padding */]; - -// -// Declarations: -// - -/* ############################################################################################## */ -/* 803CDC90-803CDCC0 02ADB0 0030+00 0/0 1/1 0/0 .data __vt__17J3DLockedMaterial */ -SECTION_DATA extern void* __vt__17J3DLockedMaterial[12] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)calc__17J3DLockedMaterialFPA4_Cf, - (void*)calcDiffTexMtx__11J3DMaterialFPA4_Cf, - (void*)makeDisplayList__17J3DLockedMaterialFv, - (void*)makeSharedDisplayList__17J3DLockedMaterialFv, - (void*)load__17J3DLockedMaterialFv, - (void*)loadSharedDL__17J3DLockedMaterialFv, - (void*)patch__17J3DLockedMaterialFv, - (void*)diff__17J3DLockedMaterialFUl, - (void*)reset__17J3DLockedMaterialFv, - (void*)change__17J3DLockedMaterialFv, -}; - -/* 803CDCC0-803CDCF0 02ADE0 0030+00 0/0 1/1 0/0 .data __vt__18J3DPatchedMaterial */ -SECTION_DATA extern void* __vt__18J3DPatchedMaterial[12] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)calc__11J3DMaterialFPA4_Cf, - (void*)calcDiffTexMtx__11J3DMaterialFPA4_Cf, - (void*)makeDisplayList__18J3DPatchedMaterialFv, - (void*)makeSharedDisplayList__18J3DPatchedMaterialFv, - (void*)load__18J3DPatchedMaterialFv, - (void*)loadSharedDL__18J3DPatchedMaterialFv, - (void*)patch__11J3DMaterialFv, - (void*)diff__11J3DMaterialFUl, - (void*)reset__18J3DPatchedMaterialFv, - (void*)change__18J3DPatchedMaterialFv, -}; - -/* 803CDCF0-803CDD20 02AE10 0030+00 0/0 6/6 0/0 .data __vt__11J3DMaterial */ -SECTION_DATA extern void* __vt__11J3DMaterial[12] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)calc__11J3DMaterialFPA4_Cf, - (void*)calcDiffTexMtx__11J3DMaterialFPA4_Cf, - (void*)makeDisplayList__11J3DMaterialFv, - (void*)makeSharedDisplayList__11J3DMaterialFv, - (void*)load__11J3DMaterialFv, - (void*)loadSharedDL__11J3DMaterialFv, - (void*)patch__11J3DMaterialFv, - (void*)diff__11J3DMaterialFUl, - (void*)reset__11J3DMaterialFv, - (void*)change__11J3DMaterialFv, -}; - -/* 803CDD20-803CDD9C 02AE40 007C+00 2/2 7/7 0/0 .data __vt__10J3DPEBlock */ -SECTION_DATA extern void* __vt__10J3DPEBlock[31] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)reset__10J3DPEBlockFP10J3DPEBlock, - (void*)NULL, - (void*)patch__10J3DPEBlockFv, - (void*)diff__10J3DPEBlockFUl, - (void*)diffFog__10J3DPEBlockFv, - (void*)diffBlend__10J3DPEBlockFv, - (void*)countDLSize__10J3DPEBlockFv, - (void*)NULL, - (void*)setFog__10J3DPEBlockF6J3DFog, - (void*)setFog__10J3DPEBlockFP6J3DFog, - (void*)getFog__10J3DPEBlockFv, - (void*)setAlphaComp__10J3DPEBlockFPC12J3DAlphaComp, - (void*)setAlphaComp__10J3DPEBlockFRC12J3DAlphaComp, - (void*)getAlphaComp__10J3DPEBlockFv, - (void*)setBlend__10J3DPEBlockFPC8J3DBlend, - (void*)setBlend__10J3DPEBlockFRC8J3DBlend, - (void*)getBlend__10J3DPEBlockFv, - (void*)setZMode__10J3DPEBlockFPC8J3DZMode, - (void*)setZMode__10J3DPEBlockF8J3DZMode, - (void*)getZMode__10J3DPEBlockFv, - (void*)setZCompLoc__10J3DPEBlockFPCUc, - (void*)setZCompLoc__10J3DPEBlockFUc, - (void*)getZCompLoc__10J3DPEBlockCFv, - (void*)setDither__10J3DPEBlockFPCUc, - (void*)setDither__10J3DPEBlockFUc, - (void*)getDither__10J3DPEBlockCFv, - (void*)getFogOffset__10J3DPEBlockCFv, - (void*)setFogOffset__10J3DPEBlockFUl, - (void*)__dt__10J3DPEBlockFv, -}; - -/* 803CDD9C-803CDDE8 02AEBC 004C+00 2/2 1/1 0/0 .data __vt__15J3DIndBlockNull */ -SECTION_DATA extern void* __vt__15J3DIndBlockNull[19] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)reset__15J3DIndBlockNullFP11J3DIndBlock, - (void*)diff__15J3DIndBlockNullFUl, - (void*)load__15J3DIndBlockNullFv, - (void*)countDLSize__11J3DIndBlockFv, - (void*)getType__15J3DIndBlockNullFv, - (void*)setIndTexStageNum__11J3DIndBlockFUc, - (void*)getIndTexStageNum__11J3DIndBlockCFv, - (void*)setIndTexOrder__11J3DIndBlockFUl14J3DIndTexOrder, - (void*)setIndTexOrder__11J3DIndBlockFUlPC14J3DIndTexOrder, - (void*)getIndTexOrder__11J3DIndBlockFUl, - (void*)setIndTexMtx__11J3DIndBlockFUlPC12J3DIndTexMtx, - (void*)setIndTexMtx__11J3DIndBlockFUl12J3DIndTexMtx, - (void*)getIndTexMtx__11J3DIndBlockFUl, - (void*)setIndTexCoordScale__11J3DIndBlockFUlPC19J3DIndTexCoordScale, - (void*)setIndTexCoordScale__11J3DIndBlockFUl19J3DIndTexCoordScale, - (void*)getIndTexCoordScale__11J3DIndBlockFUl, - (void*)__dt__15J3DIndBlockNullFv, -}; - -/* 803CDDE8-803CDE34 02AF08 004C+00 3/3 2/2 0/0 .data __vt__11J3DIndBlock */ -SECTION_DATA extern void* __vt__11J3DIndBlock[19] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)reset__11J3DIndBlockFP11J3DIndBlock, - (void*)NULL, - (void*)NULL, - (void*)countDLSize__11J3DIndBlockFv, - (void*)NULL, - (void*)setIndTexStageNum__11J3DIndBlockFUc, - (void*)getIndTexStageNum__11J3DIndBlockCFv, - (void*)setIndTexOrder__11J3DIndBlockFUl14J3DIndTexOrder, - (void*)setIndTexOrder__11J3DIndBlockFUlPC14J3DIndTexOrder, - (void*)getIndTexOrder__11J3DIndBlockFUl, - (void*)setIndTexMtx__11J3DIndBlockFUlPC12J3DIndTexMtx, - (void*)setIndTexMtx__11J3DIndBlockFUl12J3DIndTexMtx, - (void*)getIndTexMtx__11J3DIndBlockFUl, - (void*)setIndTexCoordScale__11J3DIndBlockFUlPC19J3DIndTexCoordScale, - (void*)setIndTexCoordScale__11J3DIndBlockFUl19J3DIndTexCoordScale, - (void*)getIndTexCoordScale__11J3DIndBlockFUl, - (void*)__dt__11J3DIndBlockFv, -}; - -/* 803CDE34-803CDEA0 02AF54 006C+00 3/3 5/5 0/0 .data __vt__14J3DTexGenBlock */ -SECTION_DATA extern void* __vt__14J3DTexGenBlock[27] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)reset__14J3DTexGenBlockFP14J3DTexGenBlock, - (void*)NULL, - (void*)NULL, - (void*)NULL, - (void*)NULL, - (void*)NULL, - (void*)NULL, - (void*)NULL, - (void*)NULL, - (void*)NULL, - (void*)countDLSize__14J3DTexGenBlockFv, - (void*)NULL, - (void*)setTexGenNum__14J3DTexGenBlockFPCUl, - (void*)setTexGenNum__14J3DTexGenBlockFUl, - (void*)getTexGenNum__14J3DTexGenBlockCFv, - (void*)setTexCoord__14J3DTexGenBlockFUlPC11J3DTexCoord, - (void*)getTexCoord__14J3DTexGenBlockFUl, - (void*)setTexMtx__14J3DTexGenBlockFUlP9J3DTexMtx, - (void*)getTexMtx__14J3DTexGenBlockFUl, - (void*)setNBTScale__14J3DTexGenBlockFPC11J3DNBTScale, - (void*)setNBTScale__14J3DTexGenBlockF11J3DNBTScale, - (void*)getNBTScale__14J3DTexGenBlockFv, - (void*)getTexMtxOffset__14J3DTexGenBlockCFv, - (void*)setTexMtxOffset__14J3DTexGenBlockFUl, - (void*)__dt__14J3DTexGenBlockFv, -}; - -/* 803CDEA0-803CDF30 02AFC0 0090+00 3/3 4/4 0/0 .data __vt__13J3DColorBlock */ -SECTION_DATA extern void* __vt__13J3DColorBlock[36] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)load__13J3DColorBlockFv, - (void*)reset__13J3DColorBlockFP13J3DColorBlock, - (void*)patch__13J3DColorBlockFv, - (void*)patchMatColor__13J3DColorBlockFv, - (void*)patchLight__13J3DColorBlockFv, - (void*)diff__13J3DColorBlockFUl, - (void*)diffAmbColor__13J3DColorBlockFv, - (void*)diffMatColor__13J3DColorBlockFv, - (void*)diffColorChan__13J3DColorBlockFv, - (void*)diffLightObj__13J3DColorBlockFUl, - (void*)countDLSize__13J3DColorBlockFv, - (void*)NULL, - (void*)setMatColor__13J3DColorBlockFUlPC10J3DGXColor, - (void*)setMatColor__13J3DColorBlockFUl10J3DGXColor, - (void*)getMatColor__13J3DColorBlockFUl, - (void*)setAmbColor__13J3DColorBlockFUlPC10J3DGXColor, - (void*)setAmbColor__13J3DColorBlockFUl10J3DGXColor, - (void*)getAmbColor__13J3DColorBlockFUl, - (void*)setColorChanNum__13J3DColorBlockFUc, - (void*)setColorChanNum__13J3DColorBlockFPCUc, - (void*)getColorChanNum__13J3DColorBlockCFv, - (void*)setColorChan__13J3DColorBlockFUlRC12J3DColorChan, - (void*)setColorChan__13J3DColorBlockFUlPC12J3DColorChan, - (void*)getColorChan__13J3DColorBlockFUl, - (void*)setLight__13J3DColorBlockFUlP11J3DLightObj, - (void*)getLight__13J3DColorBlockFUl, - (void*)setCullMode__13J3DColorBlockFPCUc, - (void*)setCullMode__13J3DColorBlockFUc, - (void*)getCullMode__13J3DColorBlockCFv, - (void*)getMatColorOffset__13J3DColorBlockCFv, - (void*)getColorChanOffset__13J3DColorBlockCFv, - (void*)setMatColorOffset__13J3DColorBlockFUl, - (void*)setColorChanOffset__13J3DColorBlockFUl, - (void*)__dt__13J3DColorBlockFv, -}; - -/* 803157A0-803159A0 3100E0 0200+00 0/0 3/3 0/0 .text createColorBlock__11J3DMaterialFUl - */ -J3DColorBlock* J3DMaterial::createColorBlock(u32 param_0) { - J3DColorBlock* rv = NULL; - switch (param_0) { - case 0: - rv = new J3DColorBlockLightOff(); - break; - case 0x40000000: - rv = new J3DColorBlockLightOn(); - break; - case 0x80000000: - rv = new J3DColorBlockAmbientOn(); - break; - } - - return rv; -} - -/* 803159A0-80315B04 3102E0 0164+00 0/0 2/2 0/0 .text createTexGenBlock__11J3DMaterialFUl - */ -J3DTexGenBlock* J3DMaterial::createTexGenBlock(u32 param_0) { - switch (param_0) { - case 0x8000000: - return new J3DTexGenBlock4(); - case 0: - default: - return new J3DTexGenBlockBasic(); - } -} - -/* 80315B04-80315E78 310444 0374+00 0/0 2/2 0/0 .text createTevBlock__11J3DMaterialFi */ -J3DTevBlock* J3DMaterial::createTevBlock(int param_0) { - J3DTevBlock* rv = NULL; - if (param_0 <= 1) { - rv = new J3DTevBlock1(); - } else if (param_0 == 2) { - rv = new J3DTevBlock2(); - } else if (param_0 <= 4) { - rv = new J3DTevBlock4(); - } else if (param_0 <= 16) { - rv = new J3DTevBlock16(); - } - return rv; -} - -/* 80315E78-80315F60 3107B8 00E8+00 0/0 3/3 0/0 .text createIndBlock__11J3DMaterialFi */ -J3DIndBlock* J3DMaterial::createIndBlock(int param_0) { - if (param_0 != 0) { - return new J3DIndBlockFull(); - } - - return new J3DIndBlockNull(); -} - -/* 80315F60-80316100 3108A0 01A0+00 0/0 3/3 0/0 .text createPEBlock__11J3DMaterialFUlUl - */ -J3DPEBlock* J3DMaterial::createPEBlock(u32 createFlag, u32 materialMode) { - J3DPEBlock* rv = NULL; - - if (createFlag == 0) { - if (materialMode & 1) { - rv = new J3DPEBlockOpa(); - return rv; - } else if (materialMode & 2) { - rv = new J3DPEBlockTexEdge(); - return rv; - } else if (materialMode & 4) { - rv = new J3DPEBlockXlu(); - return rv; - } - } - - if (createFlag == 0x10000000) { - rv = new J3DPEBlockFull(); - } else if (createFlag == 0x20000000) { - rv = new J3DPEBlockFogOff(); - } - - return rv; -} - -/* 80316100-80316150 310A40 0050+00 0/0 2/2 0/0 .text calcSizeColorBlock__11J3DMaterialFUl */ -u32 J3DMaterial::calcSizeColorBlock(u32 param_0) { - u32 rv = 0; - switch (param_0) { - case 0: - rv = sizeof(J3DColorBlockLightOff); - break; - case 0x40000000: - rv = sizeof(J3DColorBlockLightOn); - break; - case 0x80000000: - rv = sizeof(J3DColorBlockAmbientOn); - break; - } - - return rv; -} - -/* 80316150-8031617C 310A90 002C+00 0/0 1/1 0/0 .text calcSizeTexGenBlock__11J3DMaterialFUl */ -u32 J3DMaterial::calcSizeTexGenBlock(u32 param_0) { - switch (param_0) { - case 0x8000000: - return sizeof(J3DTexGenBlock4); - case 0: - default: - return sizeof(J3DTexGenBlockBasic); - } -} - -/* 8031617C-803161C4 310ABC 0048+00 0/0 1/1 0/0 .text calcSizeTevBlock__11J3DMaterialFi - */ -u32 J3DMaterial::calcSizeTevBlock(int param_0) { - u32 rv = 0; - if (param_0 <= 1) { - rv = sizeof(J3DTevBlock1); - } else if (param_0 == 2) { - rv = sizeof(J3DTevBlock2); - } else if (param_0 <= 4) { - rv = sizeof(J3DTevBlock4); - } else if (param_0 <= 16) { - rv = sizeof(J3DTevBlock16); - } - return rv; -} - -/* 803161C4-803161D8 310B04 0014+00 0/0 2/2 0/0 .text calcSizeIndBlock__11J3DMaterialFi - */ -u32 J3DMaterial::calcSizeIndBlock(int param_0) { - if (param_0 != 0) { - return sizeof(J3DIndBlockFull); - } - - return sizeof(J3DIndBlockNull); -} - -/* 803161D8-80316240 310B18 0068+00 0/0 2/2 0/0 .text calcSizePEBlock__11J3DMaterialFUlUl - */ -u32 J3DMaterial::calcSizePEBlock(u32 param_0, u32 param_1) { - u32 rv = 0; - if (param_0 == 0) { - if (param_1 & 1) { - rv = sizeof(J3DPEBlockOpa); - } else if (param_1 & 2) { - rv = sizeof(J3DPEBlockTexEdge); - } else if (param_1 & 4) { - rv = sizeof(J3DPEBlockXlu); - } - } - else if (param_0 == 0x10000000) { - rv = sizeof(J3DPEBlockFull); - } else if (param_0 == 0x20000000) { - rv = sizeof(J3DPEBlockFogOff); - } - return rv; -} - -/* 80316240-80316290 310B80 0050+00 2/2 5/5 0/0 .text initialize__11J3DMaterialFv */ -void J3DMaterial::initialize() { - mShape = NULL; - mNext = NULL; - mJoint = NULL; - mMaterialMode = 1; - mIndex = -1; - mInvalid = 0; - mDiffFlag = 0; - mColorBlock = NULL; - mTexGenBlock = NULL; - mTevBlock = NULL; - mIndBlock = NULL; - mPEBlock = NULL; - mpOrigMaterial = NULL; - mMaterialAnm = NULL; - mSharedDLObj = NULL; -} - -/* 80316290-80316344 310BD0 00B4+00 0/0 2/2 0/0 .text countDLSize__11J3DMaterialFv */ -u32 J3DMaterial::countDLSize() { - return (mColorBlock->countDLSize() + mTexGenBlock->countDLSize() + mTevBlock->countDLSize() + - mIndBlock->countDLSize() + mPEBlock->countDLSize() + 31) & ~0x1f; -} - -/* 80316344-80316620 310C84 02DC+00 2/2 0/0 0/0 .text - * makeDisplayList_private__11J3DMaterialFP17J3DDisplayListObj */ -void J3DMaterial::makeDisplayList_private(J3DDisplayListObj* param_0) { - param_0->beginDL(); - mTevBlock->load(); - mIndBlock->load(); - mPEBlock->load(); - J3DGDSetGenMode(mTexGenBlock->getTexGenNum(), mColorBlock->getColorChanNum(), mTevBlock->getTevStageNum(), mIndBlock->getIndTexStageNum(), (GXCullMode)(u8)mColorBlock->getCullMode()); - mTexGenBlock->load(); - mColorBlock->load(); - J3DGDSetNumChans(mColorBlock->getColorChanNum()); - J3DGDSetNumTexGens(mTexGenBlock->getTexGenNum()); - param_0->endDL(); -} - -/* 80316620-80316668 310F60 0048+00 1/0 0/0 0/0 .text makeDisplayList__11J3DMaterialFv */ -void J3DMaterial::makeDisplayList() { - if (!j3dSys.getMatPacket()->isLocked()) { - j3dSys.getMatPacket()->mDiffFlag = mDiffFlag; - makeDisplayList_private(j3dSys.getMatPacket()->getDisplayListObj()); - } -} - -/* 80316668-8031668C 310FA8 0024+00 1/0 0/0 0/0 .text makeSharedDisplayList__11J3DMaterialFv */ -void J3DMaterial::makeSharedDisplayList() { - makeDisplayList_private(mSharedDLObj); -} - -/* 8031668C-803166DC 310FCC 0050+00 1/0 0/0 0/0 .text load__11J3DMaterialFv */ -void J3DMaterial::load() { - j3dSys.setMaterialMode(mMaterialMode); - if (!j3dSys.checkFlag(2)) { - loadNBTScale(*mTexGenBlock->getNBTScale()); - } -} - -/* 803166DC-80316740 31101C 0064+00 1/0 0/0 0/0 .text loadSharedDL__11J3DMaterialFv */ -void J3DMaterial::loadSharedDL() { - j3dSys.setMaterialMode(mMaterialMode); - if (!j3dSys.checkFlag(2)) { - mSharedDLObj->callDL(); - loadNBTScale(*mTexGenBlock->getNBTScale()); - } -} - -/* 80316740-803167D8 311080 0098+00 2/0 0/0 0/0 .text patch__11J3DMaterialFv */ -void J3DMaterial::patch() { - j3dSys.getMatPacket()->mDiffFlag = mDiffFlag; - j3dSys.getMatPacket()->beginPatch(); - mTevBlock->patch(); - mColorBlock->patch(); - mTexGenBlock->patch(); - j3dSys.getMatPacket()->endPatch(); -} - -/* 803167D8-803169DC 311118 0204+00 2/0 0/0 0/0 .text diff__11J3DMaterialFUl */ -void J3DMaterial::diff(u32 param_0) { - if (j3dSys.getMatPacket()->isEnabled_Diff()) { - j3dSys.getMatPacket()->beginDiff(); - mTevBlock->diff(param_0); - mIndBlock->diff(param_0); - mPEBlock->diff(param_0); - if (param_0 & 0x2000000) { - J3DGDSetGenMode_3Param(mTexGenBlock->getTexGenNum(), mTevBlock->getTevStageNum(), mIndBlock->getIndTexStageNum()); - J3DGDSetNumTexGens(mTexGenBlock->getTexGenNum()); - } - mTexGenBlock->diff(param_0); - mColorBlock->diff(param_0); - j3dSys.getMatPacket()->endDiff(); - } -} - -/* 803169DC-80316A54 31131C 0078+00 2/0 0/0 0/0 .text calc__11J3DMaterialFPA4_Cf */ -// Matches but changes order of TU vtables (?!) -#ifdef NONMATCHING -void J3DMaterial::calc(f32 const (*param_0)[4]) { - if (j3dSys.checkFlag(0x40000000)) { - mTexGenBlock->calcPostTexMtx(param_0); - } else { - mTexGenBlock->calc(param_0); - } - - calcCurrentMtx(); - setCurrentMtx(); -} -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -extern "C" asm void calc__11J3DMaterialFPA4_Cf() { - // asm void J3DMaterial::calc(f32 const (*param_0)[4]) { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DMaterial/calc__11J3DMaterialFPA4_Cf.s" -} -#pragma pop -#endif - -/* 80316A54-80316AB0 311394 005C+00 3/0 0/0 0/0 .text calcDiffTexMtx__11J3DMaterialFPA4_Cf */ -void J3DMaterial::calcDiffTexMtx(f32 const (*param_0)[4]) { - if (j3dSys.checkFlag(0x40000000)) { - mTexGenBlock->calcPostTexMtxWithoutViewMtx(param_0); - } else { - mTexGenBlock->calcWithoutViewMtx(param_0); - } -} - -/* 80316AB0-80316AC8 3113F0 0018+00 1/1 1/1 0/0 .text setCurrentMtx__11J3DMaterialFv */ -void J3DMaterial::setCurrentMtx() { - mShape->setCurrentMtx(mCurrentMtx); -} - -/* 80316AC8-80316D68 311408 02A0+00 1/1 0/0 0/0 .text calcCurrentMtx__11J3DMaterialFv */ -// Issues with setCurrentTexMtx -#ifdef NONMATCHING -void J3DMaterial::calcCurrentMtx() { - if (!j3dSys.checkFlag(0x40000000)) { - mCurrentMtx.setCurrentTexMtx( - mTexGenBlock->getTexCoord(0)->getTexGenMtx(), - mTexGenBlock->getTexCoord(1)->getTexGenMtx(), - mTexGenBlock->getTexCoord(2)->getTexGenMtx(), - mTexGenBlock->getTexCoord(3)->getTexGenMtx(), - mTexGenBlock->getTexCoord(4)->getTexGenMtx(), - mTexGenBlock->getTexCoord(5)->getTexGenMtx(), - mTexGenBlock->getTexCoord(6)->getTexGenMtx(), - mTexGenBlock->getTexCoord(7)->getTexGenMtx() - ); - } else { - mCurrentMtx.setCurrentTexMtx( - mTexGenBlock->getTexCoord(0)->getTexMtxReg(), - mTexGenBlock->getTexCoord(1)->getTexMtxReg(), - mTexGenBlock->getTexCoord(2)->getTexMtxReg(), - mTexGenBlock->getTexCoord(3)->getTexMtxReg(), - mTexGenBlock->getTexCoord(4)->getTexMtxReg(), - mTexGenBlock->getTexCoord(5)->getTexMtxReg(), - mTexGenBlock->getTexCoord(6)->getTexMtxReg(), - mTexGenBlock->getTexCoord(7)->getTexMtxReg() - ); - } -} -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DMaterial::calcCurrentMtx() { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DMaterial/calcCurrentMtx__11J3DMaterialFv.s" -} -#pragma pop -#endif - -/* 80316D68-80316E14 3116A8 00AC+00 1/1 0/0 0/0 .text copy__11J3DMaterialFP11J3DMaterial - */ -void J3DMaterial::copy(J3DMaterial* param_0) { - mColorBlock->reset(param_0->mColorBlock); - mTexGenBlock->reset(param_0->mTexGenBlock); - mTevBlock->reset(param_0->mTevBlock); - mIndBlock->reset(param_0->mIndBlock); - mPEBlock->reset(param_0->mPEBlock); -} - -/* 80316E14-80316E70 311754 005C+00 1/0 0/0 0/0 .text reset__11J3DMaterialFv */ -void J3DMaterial::reset() { - if ((~mDiffFlag & 0x80000000) == 0) { - mDiffFlag &= ~0x80000000; - mMaterialMode = mpOrigMaterial->mMaterialMode; - mInvalid = mpOrigMaterial->mInvalid; - mMaterialAnm = NULL; - copy(mpOrigMaterial); - } -} - -/* 80316E70-80316E90 3117B0 0020+00 1/0 0/0 0/0 .text change__11J3DMaterialFv */ -void J3DMaterial::change() { - if ((mDiffFlag & 0xc0000000) == 0) { - mDiffFlag |= 0x80000000; - mMaterialAnm = NULL; - } -} - -/* 80316E90-80316F24 3117D0 0094+00 0/0 2/2 0/0 .text newSharedDisplayList__11J3DMaterialFUl */ -s32 J3DMaterial::newSharedDisplayList(u32 param_0) { - if (mSharedDLObj == NULL) { - mSharedDLObj = new J3DDisplayListObj(); - if (mSharedDLObj == NULL) { - return 4; - } - s32 res = mSharedDLObj->newDisplayList(param_0); - switch (res) { - case kJ3DError_Success: - break; - default: - return res; - } - } - return 0; -} - -/* 80316F24-80316FB8 311864 0094+00 0/0 2/2 0/0 .text newSingleSharedDisplayList__11J3DMaterialFUl - */ -s32 J3DMaterial::newSingleSharedDisplayList(u32 param_0) { - if (mSharedDLObj == NULL) { - mSharedDLObj = new J3DDisplayListObj(); - if (mSharedDLObj == NULL) { - return 4; - } - s32 res = mSharedDLObj->newSingleDisplayList(param_0); - switch (res) { - case kJ3DError_Success: - break; - default: - return res; - } - } - return 0; -} - -/* 80316FB8-80316FD8 3118F8 0020+00 0/0 1/1 0/0 .text initialize__18J3DPatchedMaterialFv - */ -void J3DPatchedMaterial::initialize() { - J3DMaterial::initialize(); -} - -/* 80316FD8-80316FDC 311918 0004+00 1/0 0/0 0/0 .text makeDisplayList__18J3DPatchedMaterialFv */ -extern "C" asm void makeDisplayList__18J3DPatchedMaterialFv() { -//void J3DPatchedMaterial::makeDisplayList() { - /* empty function */ -} - -/* 80316FDC-80316FE0 31191C 0004+00 1/0 0/0 0/0 .text - * makeSharedDisplayList__18J3DPatchedMaterialFv */ -void J3DPatchedMaterial::makeSharedDisplayList() { - /* empty function */ -} - -/* 80316FE0-80316FFC 311920 001C+00 1/0 0/0 0/0 .text load__18J3DPatchedMaterialFv */ -void J3DPatchedMaterial::load() { - j3dSys.setMaterialMode(mMaterialMode); - if (j3dSys.checkFlag(2)) { - return; - } -} - -/* 80316FFC-8031703C 31193C 0040+00 1/0 0/0 0/0 .text loadSharedDL__18J3DPatchedMaterialFv */ -void J3DPatchedMaterial::loadSharedDL() { - j3dSys.setMaterialMode(mMaterialMode); - if (!j3dSys.checkFlag(0x02)) - mSharedDLObj->callDL(); -} - -/* 8031703C-80317040 31197C 0004+00 1/0 0/0 0/0 .text reset__18J3DPatchedMaterialFv */ -void J3DPatchedMaterial::reset() { - /* empty function */ -} - -/* 80317040-80317044 311980 0004+00 1/0 0/0 0/0 .text change__18J3DPatchedMaterialFv */ -void J3DPatchedMaterial::change() { - /* empty function */ -} - -/* 80317044-80317064 311984 0020+00 0/0 1/1 0/0 .text initialize__17J3DLockedMaterialFv - */ -void J3DLockedMaterial::initialize() { - J3DMaterial::initialize(); -} - -/* 80317064-80317068 3119A4 0004+00 1/0 0/0 0/0 .text makeDisplayList__17J3DLockedMaterialFv */ -void J3DLockedMaterial::makeDisplayList() { - /* empty function */ -} - -/* 80317068-8031706C 3119A8 0004+00 1/0 0/0 0/0 .text makeSharedDisplayList__17J3DLockedMaterialFv - */ -void J3DLockedMaterial::makeSharedDisplayList() { - /* empty function */ -} - -/* 8031706C-80317088 3119AC 001C+00 1/0 0/0 0/0 .text load__17J3DLockedMaterialFv */ -void J3DLockedMaterial::load() { - j3dSys.setMaterialMode(mMaterialMode); - if (j3dSys.checkFlag(2)) { - return; - } -} - -/* 80317088-803170C8 3119C8 0040+00 1/0 0/0 0/0 .text loadSharedDL__17J3DLockedMaterialFv - */ -void J3DLockedMaterial::loadSharedDL() { - j3dSys.setMaterialMode(mMaterialMode); - if (!j3dSys.checkFlag(0x02)) - mSharedDLObj->callDL(); -} - -/* 803170C8-803170CC 311A08 0004+00 1/0 0/0 0/0 .text patch__17J3DLockedMaterialFv */ -void J3DLockedMaterial::patch() { - /* empty function */ -} - -/* 803170CC-803170D0 311A0C 0004+00 1/0 0/0 0/0 .text diff__17J3DLockedMaterialFUl */ -void J3DLockedMaterial::diff(u32 param_0) { - /* empty function */ -} - -/* 803170D0-803170D4 311A10 0004+00 1/0 0/0 0/0 .text calc__17J3DLockedMaterialFPA4_Cf */ -extern "C" asm void calc__17J3DLockedMaterialFPA4_Cf() { - /* empty function */ -} - -/* 803170D4-803170D8 311A14 0004+00 1/0 0/0 0/0 .text reset__17J3DLockedMaterialFv */ -void J3DLockedMaterial::reset() { - /* empty function */ -} - -/* 803170D8-803170DC 311A18 0004+00 1/0 0/0 0/0 .text change__17J3DLockedMaterialFv */ -void J3DLockedMaterial::change() { - /* empty function */ -} - -/* 803170DC-80317138 311A1C 005C+00 0/0 1/0 0/0 .text __dt__21J3DColorBlockLightOffFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DColorBlockLightOff::~J3DColorBlockLightOff() { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__21J3DColorBlockLightOffFv.s" -} -#pragma pop - -/* 80317138-80317180 311A78 0048+00 1/0 0/0 0/0 .text __dt__13J3DColorBlockFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm J3DColorBlock::~J3DColorBlock() { -extern "C" asm void __dt__13J3DColorBlockFv() { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__13J3DColorBlockFv.s" -} -#pragma pop - -/* 80317180-803171DC 311AC0 005C+00 0/0 1/0 0/0 .text __dt__21J3DTexGenBlockPatchedFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DTexGenBlockPatched::~J3DTexGenBlockPatched() { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__21J3DTexGenBlockPatchedFv.s" -} -#pragma pop - -/* 803171DC-80317224 311B1C 0048+00 1/0 0/0 0/0 .text __dt__14J3DTexGenBlockFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm J3DTexGenBlock::~J3DTexGenBlock() { -extern "C" asm void __dt__14J3DTexGenBlockFv() { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__14J3DTexGenBlockFv.s" -} -#pragma pop - -/* 80317224-8031726C 311B64 0048+00 0/0 1/0 0/0 .text __dt__11J3DTevBlockFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm J3DTevBlock::~J3DTevBlock() { -extern "C" asm void __dt__11J3DTevBlockFv() { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__11J3DTevBlockFv.s" -} -#pragma pop - -/* 8031726C-803172B4 311BAC 0048+00 1/0 0/0 0/0 .text __dt__11J3DIndBlockFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DIndBlock::~J3DIndBlock() { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__11J3DIndBlockFv.s" -} -#pragma pop - -/* 803172B4-803172FC 311BF4 0048+00 1/0 0/0 0/0 .text __dt__10J3DPEBlockFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm J3DPEBlock::~J3DPEBlock() { -extern "C" asm void __dt__10J3DPEBlockFv() { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__10J3DPEBlockFv.s" -} -#pragma pop - -/* 803172FC-80317304 311C3C 0008+00 1/0 1/0 0/0 .text countDLSize__14J3DTexGenBlockFv */ -s32 J3DTexGenBlock::countDLSize() { - return false; -} - -/* 80317304-8031730C 311C44 0008+00 1/0 1/0 0/0 .text countDLSize__13J3DColorBlockFv */ -s32 J3DColorBlock::countDLSize() { - return false; -} - -/* 8031730C-80317314 311C4C 0008+00 0/0 2/0 0/0 .text countDLSize__11J3DTevBlockFv */ -s32 J3DTevBlock::countDLSize() { - return false; -} - -/* 80317314-8031731C 311C54 0008+00 2/0 0/0 0/0 .text countDLSize__11J3DIndBlockFv */ -s32 J3DIndBlock::countDLSize() { - return false; -} - -/* 8031731C-80317324 311C5C 0008+00 1/0 1/0 0/0 .text countDLSize__10J3DPEBlockFv */ -s32 J3DPEBlock::countDLSize() { - return false; -} - -/* 80317324-80317328 311C64 0004+00 1/0 1/0 0/0 .text load__13J3DColorBlockFv */ -extern "C" void load__13J3DColorBlockFv() { - /* empty function */ -} - -/* 80317328-80317330 311C68 0008+00 1/0 1/0 0/0 .text getCullMode__13J3DColorBlockCFv */ -s32 J3DColorBlock::getCullMode() const { - return 2; -} - -/* 80317330-80317334 311C70 0004+00 0/0 2/0 0/0 .text load__11J3DTevBlockFv */ -void J3DTevBlock::load() { - /* empty function */ -} - -/* 80317334-8031733C 311C74 0008+00 1/0 2/0 0/0 .text getNBTScale__14J3DTexGenBlockFv */ -J3DNBTScale* J3DTexGenBlock::getNBTScale() { - return NULL; -} - -/* 8031733C-80317340 311C7C 0004+00 1/0 1/0 0/0 .text patch__13J3DColorBlockFv */ -void J3DColorBlock::patch() { - /* empty function */ -} - -/* 80317340-80317344 311C80 0004+00 1/0 1/0 0/0 .text diff__13J3DColorBlockFUl */ -void J3DColorBlock::diff(u32 param_0) { - /* empty function */ -} - -/* 80317344-80317348 311C84 0004+00 1/0 4/0 0/0 .text diff__10J3DPEBlockFUl */ -void J3DPEBlock::diff(u32 param_0) { - /* empty function */ -} - -/* 80317348-8031734C 311C88 0004+00 1/0 4/0 0/0 .text reset__10J3DPEBlockFP10J3DPEBlock - */ -extern "C" void reset__10J3DPEBlockFP10J3DPEBlock() { - /* empty function */ -} - -/* 8031734C-80317350 311C8C 0004+00 1/0 0/0 0/0 .text reset__11J3DIndBlockFP11J3DIndBlock - */ -extern "C" void reset__11J3DIndBlockFP11J3DIndBlock() { - /* empty function */ -} - -/* 80317350-80317354 311C90 0004+00 0/0 1/0 0/0 .text reset__11J3DTevBlockFP11J3DTevBlock - */ -extern "C" void reset__11J3DTevBlockFP11J3DTevBlock(J3DTevBlock* param_0) { - /* empty function */ -} - -/* 80317354-80317358 311C94 0004+00 1/0 1/0 0/0 .text reset__14J3DTexGenBlockFP14J3DTexGenBlock */ -extern "C" void reset__14J3DTexGenBlockFP14J3DTexGenBlock() { - /* empty function */ -} - -/* 80317358-8031735C 311C98 0004+00 1/0 1/0 0/0 .text reset__13J3DColorBlockFP13J3DColorBlock */ -void J3DColorBlock::reset(J3DColorBlock* param_0) { - /* empty function */ -} - -/* 8031735C-80317360 311C9C 0004+00 1/0 5/0 0/0 .text diffFog__10J3DPEBlockFv */ -void J3DPEBlock::diffFog() { - /* empty function */ -} - -/* 80317360-80317364 311CA0 0004+00 1/0 4/0 0/0 .text diffBlend__10J3DPEBlockFv */ -void J3DPEBlock::diffBlend() { - /* empty function */ -} - -/* 80317364-80317368 311CA4 0004+00 1/0 5/0 0/0 .text setFog__10J3DPEBlockFP6J3DFog */ -void J3DPEBlock::setFog(J3DFog* param_0) { - /* empty function */ -} - -/* 80317368-8031736C 311CA8 0004+00 1/0 5/0 0/0 .text setFog__10J3DPEBlockF6J3DFog */ -void J3DPEBlock::setFog(J3DFog param_0) { - /* empty function */ -} - -/* 8031736C-80317370 311CAC 0004+00 1/0 4/0 0/0 .text setAlphaComp__10J3DPEBlockFPC12J3DAlphaComp - */ -void J3DPEBlock::setAlphaComp(J3DAlphaComp const* param_0) { - /* empty function */ -} - -/* 80317370-80317374 311CB0 0004+00 1/0 4/0 0/0 .text setBlend__10J3DPEBlockFPC8J3DBlend - */ -void J3DPEBlock::setBlend(J3DBlend const* param_0) { - /* empty function */ -} - -/* 80317374-80317378 311CB4 0004+00 1/0 4/0 0/0 .text setZMode__10J3DPEBlockFPC8J3DZMode - */ -void J3DPEBlock::setZMode(J3DZMode const* param_0) { - /* empty function */ -} - -/* 80317378-8031737C 311CB8 0004+00 1/0 4/0 0/0 .text setZCompLoc__10J3DPEBlockFPCUc */ -void J3DPEBlock::setZCompLoc(u8 const* param_0) { - /* empty function */ -} - -/* 8031737C-80317380 311CBC 0004+00 1/0 4/0 0/0 .text setDither__10J3DPEBlockFUc */ -void J3DPEBlock::setDither(u8 param_0) { - /* empty function */ -} - -/* 80317380-80317384 311CC0 0004+00 1/0 4/0 0/0 .text setDither__10J3DPEBlockFPCUc */ -void J3DPEBlock::setDither(u8 const* param_0) { - /* empty function */ -} - -/* 80317384-8031738C 311CC4 0008+00 1/0 4/0 0/0 .text getDither__10J3DPEBlockCFv */ -bool J3DPEBlock::getDither() const { - return false; -} - -/* 8031738C-80317394 311CCC 0008+00 1/0 5/0 0/0 .text getFogOffset__10J3DPEBlockCFv */ -bool J3DPEBlock::getFogOffset() const { - return false; -} - -/* 80317394-80317398 311CD4 0004+00 1/0 5/0 0/0 .text setFogOffset__10J3DPEBlockFUl */ -void J3DPEBlock::setFogOffset(u32 param_0) { - /* empty function */ -} - -/* 80317398-8031739C 311CD8 0004+00 1/0 0/0 0/0 .text diff__15J3DIndBlockNullFUl */ -void J3DIndBlockNull::diff(u32 param_0) { - /* empty function */ -} - -/* 8031739C-803173A0 311CDC 0004+00 1/0 0/0 0/0 .text load__15J3DIndBlockNullFv */ -void J3DIndBlockNull::load() { - /* empty function */ -} - -/* 803173A0-803173A4 311CE0 0004+00 1/0 0/0 0/0 .text reset__15J3DIndBlockNullFP11J3DIndBlock */ -extern "C" asm void reset__15J3DIndBlockNullFP11J3DIndBlock() { - /* empty function */ -} - -/* 803173A4-803173B0 311CE4 000C+00 1/0 0/0 0/0 .text getType__15J3DIndBlockNullFv */ -u32 J3DIndBlockNull::getType() { - return 'IBLN'; -} - -/* 803173B0-8031740C 311CF0 005C+00 1/0 0/0 0/0 .text __dt__15J3DIndBlockNullFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DIndBlockNull::~J3DIndBlockNull() { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__15J3DIndBlockNullFv.s" -} -#pragma pop - -/* 8031740C-80317410 311D4C 0004+00 2/0 0/0 0/0 .text - * setIndTexOrder__11J3DIndBlockFUlPC14J3DIndTexOrder */ -void J3DIndBlock::setIndTexOrder(u32 param_0, J3DIndTexOrder const* param_1) { - /* empty function */ -} - -/* 80317410-80317414 311D50 0004+00 2/0 0/0 0/0 .text - * setIndTexOrder__11J3DIndBlockFUl14J3DIndTexOrder */ -void J3DIndBlock::setIndTexOrder(u32 param_0, J3DIndTexOrder param_1) { - /* empty function */ -} - -/* 80317414-80317418 311D54 0004+00 2/0 0/0 0/0 .text - * setIndTexMtx__11J3DIndBlockFUlPC12J3DIndTexMtx */ -void J3DIndBlock::setIndTexMtx(u32 param_0, J3DIndTexMtx const* param_1) { - /* empty function */ -} - -/* 80317418-8031741C 311D58 0004+00 2/0 0/0 0/0 .text - * setIndTexCoordScale__11J3DIndBlockFUlPC19J3DIndTexCoordScale */ -void J3DIndBlock::setIndTexCoordScale(u32 param_0, J3DIndTexCoordScale const* param_1) { - /* empty function */ -} - -/* 8031741C-80317420 311D5C 0004+00 1/0 1/0 0/0 .text setTexGenNum__14J3DTexGenBlockFPCUl - */ -void J3DTexGenBlock::setTexGenNum(u32 const* param_0) { - /* empty function */ -} - -/* 80317420-80317424 311D60 0004+00 1/0 2/0 0/0 .text setNBTScale__14J3DTexGenBlockF11J3DNBTScale - */ -void J3DTexGenBlock::setNBTScale(J3DNBTScale param_0) { - /* empty function */ -} - -/* 80317424-80317428 311D64 0004+00 1/0 2/0 0/0 .text - * setNBTScale__14J3DTexGenBlockFPC11J3DNBTScale */ -void J3DTexGenBlock::setNBTScale(J3DNBTScale const* param_0) { - /* empty function */ -} - -/* 80317428-80317430 311D68 0008+00 1/0 1/0 0/0 .text getTexMtxOffset__14J3DTexGenBlockCFv */ -bool J3DTexGenBlock::getTexMtxOffset() const { - return false; -} - -/* 80317430-80317434 311D70 0004+00 1/0 1/0 0/0 .text setTexMtxOffset__14J3DTexGenBlockFUl */ -void J3DTexGenBlock::setTexMtxOffset(u32 param_0) { - /* empty function */ -} - -/* 80317434-80317438 311D74 0004+00 1/0 1/0 0/0 .text patchMatColor__13J3DColorBlockFv */ -void J3DColorBlock::patchMatColor() { - /* empty function */ -} - -/* 80317438-8031743C 311D78 0004+00 1/0 3/0 0/0 .text diffAmbColor__13J3DColorBlockFv */ -void J3DColorBlock::diffAmbColor() { - /* empty function */ -} - -/* 8031743C-80317440 311D7C 0004+00 1/0 1/0 0/0 .text diffMatColor__13J3DColorBlockFv */ -void J3DColorBlock::diffMatColor() { - /* empty function */ -} - -/* 80317440-80317444 311D80 0004+00 1/0 1/0 0/0 .text diffColorChan__13J3DColorBlockFv */ -void J3DColorBlock::diffColorChan() { - /* empty function */ -} - -/* 80317444-80317448 311D84 0004+00 1/0 3/0 0/0 .text diffLightObj__13J3DColorBlockFUl */ -void J3DColorBlock::diffLightObj(u32 param_0) { - /* empty function */ -} - -/* 80317448-8031744C 311D88 0004+00 1/0 1/0 0/0 .text - * setMatColor__13J3DColorBlockFUlPC10J3DGXColor */ -void J3DColorBlock::setMatColor(u32 param_0, J3DGXColor const* param_1) { - /* empty function */ -} - -/* 8031744C-80317450 311D8C 0004+00 1/0 1/0 0/0 .text setColorChanNum__13J3DColorBlockFPCUc */ -void J3DColorBlock::setColorChanNum(u8 const* param_0) { - /* empty function */ -} - -/* 80317450-80317454 311D90 0004+00 1/0 1/0 0/0 .text - * setColorChan__13J3DColorBlockFUlPC12J3DColorChan */ -void J3DColorBlock::setColorChan(u32 param_0, J3DColorChan const* param_1) { - /* empty function */ -} - -/* 80317454-8031745C 311D94 0008+00 1/0 3/0 0/0 .text getLight__13J3DColorBlockFUl */ -bool J3DColorBlock::getLight(u32 param_0) { - return false; -} - -/* 8031745C-80317460 311D9C 0004+00 1/0 1/0 0/0 .text setCullMode__13J3DColorBlockFUc */ -void J3DColorBlock::setCullMode(u8 param_0) { - /* empty function */ -} - -/* 80317460-80317464 311DA0 0004+00 1/0 1/0 0/0 .text setCullMode__13J3DColorBlockFPCUc - */ -void J3DColorBlock::setCullMode(u8 const* param_0) { - /* empty function */ -} - -/* 80317464-8031746C 311DA4 0008+00 1/0 1/0 0/0 .text getMatColorOffset__13J3DColorBlockCFv */ -bool J3DColorBlock::getMatColorOffset() const { - return false; -} - -/* 8031746C-80317474 311DAC 0008+00 1/0 1/0 0/0 .text getColorChanOffset__13J3DColorBlockCFv */ -bool J3DColorBlock::getColorChanOffset() const { - return false; -} - -/* 80317474-80317478 311DB4 0004+00 1/0 1/0 0/0 .text setMatColorOffset__13J3DColorBlockFUl */ -void J3DColorBlock::setMatColorOffset(u32 param_0) { - /* empty function */ -} - -/* 80317478-8031747C 311DB8 0004+00 1/0 1/0 0/0 .text setColorChanOffset__13J3DColorBlockFUl */ -void J3DColorBlock::setColorChanOffset(u32 param_0) { - /* empty function */ -} +// +// Generated By: dol2asm +// Translation Unit: J3DMaterial +// + +#include "JSystem/J3DGraphBase/J3DMaterial.h" +#include "JSystem/J3DGraphBase/J3DGD.h" +#include "dol2asm.h" + +// +// Forward References: +// + +extern "C" void createColorBlock__11J3DMaterialFUl(); +extern "C" void createTexGenBlock__11J3DMaterialFUl(); +extern "C" void createTevBlock__11J3DMaterialFi(); +extern "C" void createIndBlock__11J3DMaterialFi(); +extern "C" void createPEBlock__11J3DMaterialFUlUl(); +extern "C" void calcSizeColorBlock__11J3DMaterialFUl(); +extern "C" void calcSizeTexGenBlock__11J3DMaterialFUl(); +extern "C" void calcSizeTevBlock__11J3DMaterialFi(); +extern "C" void calcSizeIndBlock__11J3DMaterialFi(); +extern "C" void calcSizePEBlock__11J3DMaterialFUlUl(); +extern "C" void initialize__11J3DMaterialFv(); +extern "C" void countDLSize__11J3DMaterialFv(); +extern "C" void makeDisplayList_private__11J3DMaterialFP17J3DDisplayListObj(); +extern "C" void makeDisplayList__11J3DMaterialFv(); +extern "C" void makeSharedDisplayList__11J3DMaterialFv(); +extern "C" void load__11J3DMaterialFv(); +extern "C" void loadSharedDL__11J3DMaterialFv(); +extern "C" void patch__11J3DMaterialFv(); +extern "C" void diff__11J3DMaterialFUl(); +extern "C" void calc__11J3DMaterialFPA4_Cf(); +extern "C" void calcDiffTexMtx__11J3DMaterialFPA4_Cf(); +extern "C" void setCurrentMtx__11J3DMaterialFv(); +extern "C" void calcCurrentMtx__11J3DMaterialFv(); +extern "C" void copy__11J3DMaterialFP11J3DMaterial(); +extern "C" void reset__11J3DMaterialFv(); +extern "C" void change__11J3DMaterialFv(); +extern "C" void newSharedDisplayList__11J3DMaterialFUl(); +extern "C" void newSingleSharedDisplayList__11J3DMaterialFUl(); +extern "C" void initialize__18J3DPatchedMaterialFv(); +extern "C" void makeDisplayList__18J3DPatchedMaterialFv(); +extern "C" void makeSharedDisplayList__18J3DPatchedMaterialFv(); +extern "C" void load__18J3DPatchedMaterialFv(); +extern "C" void loadSharedDL__18J3DPatchedMaterialFv(); +extern "C" void reset__18J3DPatchedMaterialFv(); +extern "C" void change__18J3DPatchedMaterialFv(); +extern "C" void initialize__17J3DLockedMaterialFv(); +extern "C" void makeDisplayList__17J3DLockedMaterialFv(); +extern "C" void makeSharedDisplayList__17J3DLockedMaterialFv(); +extern "C" void load__17J3DLockedMaterialFv(); +extern "C" void loadSharedDL__17J3DLockedMaterialFv(); +extern "C" void patch__17J3DLockedMaterialFv(); +extern "C" void diff__17J3DLockedMaterialFUl(); +extern "C" void calc__17J3DLockedMaterialFPA4_Cf(); +extern "C" void reset__17J3DLockedMaterialFv(); +extern "C" void change__17J3DLockedMaterialFv(); +extern "C" void __dt__21J3DColorBlockLightOffFv(); +extern "C" void __dt__13J3DColorBlockFv(); +extern "C" void __dt__21J3DTexGenBlockPatchedFv(); +extern "C" void __dt__14J3DTexGenBlockFv(); +extern "C" void __dt__11J3DTevBlockFv(); +extern "C" void __dt__11J3DIndBlockFv(); +extern "C" void __dt__10J3DPEBlockFv(); +extern "C" bool countDLSize__14J3DTexGenBlockFv(); +extern "C" bool countDLSize__13J3DColorBlockFv(); +extern "C" bool countDLSize__11J3DTevBlockFv(); +extern "C" bool countDLSize__11J3DIndBlockFv(); +extern "C" bool countDLSize__10J3DPEBlockFv(); +extern "C" void load__13J3DColorBlockFv(); +extern "C" s32 getCullMode__13J3DColorBlockCFv(); +extern "C" void load__11J3DTevBlockFv(); +extern "C" J3DNBTScale* getNBTScale__14J3DTexGenBlockFv(); +extern "C" void patch__13J3DColorBlockFv(); +extern "C" void diff__13J3DColorBlockFUl(); +extern "C" void diff__10J3DPEBlockFUl(); +extern "C" void reset__10J3DPEBlockFP10J3DPEBlock(); +extern "C" void reset__11J3DIndBlockFP11J3DIndBlock(); +extern "C" void reset__11J3DTevBlockFP11J3DTevBlock(J3DTevBlock* param_0); +extern "C" void reset__14J3DTexGenBlockFP14J3DTexGenBlock(); +extern "C" void reset__13J3DColorBlockFP13J3DColorBlock(); +extern "C" void diffFog__10J3DPEBlockFv(); +extern "C" void diffBlend__10J3DPEBlockFv(); +extern "C" void setFog__10J3DPEBlockFP6J3DFog(); +extern "C" void setFog__10J3DPEBlockF6J3DFog(); +extern "C" void setAlphaComp__10J3DPEBlockFPC12J3DAlphaComp(); +extern "C" void setBlend__10J3DPEBlockFPC8J3DBlend(); +extern "C" void setZMode__10J3DPEBlockFPC8J3DZMode(); +extern "C" void setZCompLoc__10J3DPEBlockFPCUc(); +extern "C" void setDither__10J3DPEBlockFUc(); +extern "C" void setDither__10J3DPEBlockFPCUc(); +extern "C" bool getDither__10J3DPEBlockCFv(); +extern "C" bool getFogOffset__10J3DPEBlockCFv(); +extern "C" void setFogOffset__10J3DPEBlockFUl(); +extern "C" void diff__15J3DIndBlockNullFUl(); +extern "C" void load__15J3DIndBlockNullFv(); +extern "C" void reset__15J3DIndBlockNullFP11J3DIndBlock(); +extern "C" void getType__15J3DIndBlockNullFv(); +extern "C" void __dt__15J3DIndBlockNullFv(); +extern "C" void setIndTexOrder__11J3DIndBlockFUlPC14J3DIndTexOrder(); +extern "C" void setIndTexOrder__11J3DIndBlockFUl14J3DIndTexOrder(); +extern "C" void setIndTexMtx__11J3DIndBlockFUlPC12J3DIndTexMtx(); +extern "C" void setIndTexCoordScale__11J3DIndBlockFUlPC19J3DIndTexCoordScale(); +extern "C" void setTexGenNum__14J3DTexGenBlockFPCUl(); +extern "C" void setNBTScale__14J3DTexGenBlockF11J3DNBTScale(); +extern "C" void setNBTScale__14J3DTexGenBlockFPC11J3DNBTScale(); +extern "C" bool getTexMtxOffset__14J3DTexGenBlockCFv(); +extern "C" void setTexMtxOffset__14J3DTexGenBlockFUl(); +extern "C" void patchMatColor__13J3DColorBlockFv(); +extern "C" void diffAmbColor__13J3DColorBlockFv(); +extern "C" void diffMatColor__13J3DColorBlockFv(); +extern "C" void diffColorChan__13J3DColorBlockFv(); +extern "C" void diffLightObj__13J3DColorBlockFUl(); +extern "C" void setMatColor__13J3DColorBlockFUlPC10J3DGXColor(); +extern "C" void setColorChanNum__13J3DColorBlockFPCUc(); +extern "C" void setColorChan__13J3DColorBlockFUlPC12J3DColorChan(); +extern "C" bool getLight__13J3DColorBlockFUl(); +extern "C" void setCullMode__13J3DColorBlockFUc(); +extern "C" void setCullMode__13J3DColorBlockFPCUc(); +extern "C" bool getMatColorOffset__13J3DColorBlockCFv(); +extern "C" bool getColorChanOffset__13J3DColorBlockCFv(); +extern "C" void setMatColorOffset__13J3DColorBlockFUl(); +extern "C" void setColorChanOffset__13J3DColorBlockFUl(); + +// +// External References: +// + +extern "C" void patch__10J3DPEBlockFv(); +extern "C" void patchLight__13J3DColorBlockFv(); +extern "C" bool getZCompLoc__10J3DPEBlockCFv(); +extern "C" bool getZMode__10J3DPEBlockFv(); +extern "C" bool getBlend__10J3DPEBlockFv(); +extern "C" bool getAlphaComp__10J3DPEBlockFv(); +extern "C" bool getFog__10J3DPEBlockFv(); +extern "C" bool getIndTexCoordScale__11J3DIndBlockFUl(); +extern "C" bool getIndTexMtx__11J3DIndBlockFUl(); +extern "C" bool getIndTexOrder__11J3DIndBlockFUl(); +extern "C" bool getIndTexStageNum__11J3DIndBlockCFv(); +extern "C" bool getTexMtx__14J3DTexGenBlockFUl(); +extern "C" bool getTexCoord__14J3DTexGenBlockFUl(); +extern "C" bool getTexGenNum__14J3DTexGenBlockCFv(); +extern "C" bool getAmbColor__13J3DColorBlockFUl(); +extern "C" bool getColorChan__13J3DColorBlockFUl(); +extern "C" bool getMatColor__13J3DColorBlockFUl(); +extern "C" bool getColorChanNum__13J3DColorBlockCFv(); +extern "C" void setZCompLoc__10J3DPEBlockFUc(); +extern "C" void setZMode__10J3DPEBlockF8J3DZMode(); +extern "C" void setBlend__10J3DPEBlockFRC8J3DBlend(); +extern "C" void setAlphaComp__10J3DPEBlockFRC12J3DAlphaComp(); +extern "C" void setIndTexCoordScale__11J3DIndBlockFUl19J3DIndTexCoordScale(); +extern "C" void __dt__19J3DIndTexCoordScaleFv(); +extern "C" void setIndTexMtx__11J3DIndBlockFUl12J3DIndTexMtx(); +extern "C" void __dt__12J3DIndTexMtxFv(); +extern "C" void setIndTexStageNum__11J3DIndBlockFUc(); +extern "C" void setTexCoord__14J3DTexGenBlockFUlPC11J3DTexCoord(); +extern "C" void setTexGenNum__14J3DTexGenBlockFUl(); +extern "C" void setAmbColor__13J3DColorBlockFUl10J3DGXColor(); +extern "C" void setColorChan__13J3DColorBlockFUlRC12J3DColorChan(); +extern "C" void setMatColor__13J3DColorBlockFUl10J3DGXColor(); +extern "C" void setColorChanNum__13J3DColorBlockFUc(); +extern "C" void __ct__19J3DIndTexCoordScaleFv(); +extern "C" void __ct__12J3DIndTexMtxFv(); +extern "C" void __ct__14J3DIndTexOrderFv(); +extern "C" void __ct__19J3DTevSwapModeTableFv(); +extern "C" void __ct__11J3DTevOrderFv(); +extern "C" void __ct__14J3DIndTevStageFv(); +extern "C" void __ct__11J3DTevStageFv(); +extern "C" void __ct__13J3DGXColorS10Fv(); +extern "C" void __ct__11J3DTexCoordFv(); +extern "C" void __ct__12J3DColorChanFv(); +extern "C" void __ct__10J3DGXColorFv(); +extern "C" void setTexMtx__14J3DTexGenBlockFUlP9J3DTexMtx(); +extern "C" void setLight__13J3DColorBlockFUlP11J3DLightObj(); +extern "C" void setAmbColor__13J3DColorBlockFUlPC10J3DGXColor(); +extern "C" void* __nw__FUl(); +extern "C" void __dl__FPv(); +extern "C" void J3DGDSetGenMode__FUcUcUcUc11_GXCullMode(); +extern "C" void J3DGDSetGenMode_3Param__FUcUcUc(); +extern "C" void newDisplayList__17J3DDisplayListObjFUl(); +extern "C" void newSingleDisplayList__17J3DDisplayListObjFUl(); +extern "C" void callDL__17J3DDisplayListObjCFv(); +extern "C" void beginDL__17J3DDisplayListObjFv(); +extern "C" void endDL__17J3DDisplayListObjFv(); +extern "C" void beginPatch__17J3DDisplayListObjFv(); +extern "C" void endPatch__17J3DDisplayListObjFv(); +extern "C" void beginDiff__12J3DMatPacketFv(); +extern "C" void endDiff__12J3DMatPacketFv(); +extern "C" void initialize__21J3DColorBlockLightOffFv(); +extern "C" void initialize__22J3DColorBlockAmbientOnFv(); +extern "C" void initialize__20J3DColorBlockLightOnFv(); +extern "C" void initialize__21J3DTexGenBlockPatchedFv(); +extern "C" void initialize__15J3DTexGenBlock4Fv(); +extern "C" void initialize__19J3DTexGenBlockBasicFv(); +extern "C" void initialize__12J3DTevBlock1Fv(); +extern "C" void initialize__12J3DTevBlock2Fv(); +extern "C" void initialize__12J3DTevBlock4Fv(); +extern "C" void initialize__13J3DTevBlock16Fv(); +extern "C" void initialize__15J3DIndBlockFullFv(); +extern "C" void initialize__16J3DPEBlockFogOffFv(); +extern "C" void initialize__14J3DPEBlockFullFv(); +extern "C" void loadNBTScale__FR11J3DNBTScale(); +extern "C" void __as__10J3DFogInfoFRC10J3DFogInfo(); +extern "C" void __construct_array(); +extern "C" void _savegpr_24(); +extern "C" void _savegpr_26(); +extern "C" void _savegpr_27(); +extern "C" void _savegpr_29(); +extern "C" void _restgpr_24(); +extern "C" void _restgpr_26(); +extern "C" void _restgpr_27(); +extern "C" void _restgpr_29(); +extern "C" extern void* __vt__14J3DPEBlockFull[31]; +extern "C" extern void* __vt__16J3DPEBlockFogOff[31]; +extern "C" extern void* __vt__13J3DTevBlock16[55]; +extern "C" extern void* __vt__12J3DTevBlock4[55]; +extern "C" extern void* __vt__12J3DTevBlock2[55]; +extern "C" extern void* __vt__12J3DTevBlock1[55]; +extern "C" extern void* __vt__19J3DTexGenBlockBasic[27]; +extern "C" extern void* __vt__15J3DTexGenBlock4[27]; +extern "C" extern void* __vt__21J3DTexGenBlockPatched[27]; +extern "C" extern void* __vt__20J3DColorBlockLightOn[36]; +extern "C" extern void* __vt__22J3DColorBlockAmbientOn[36]; +extern "C" extern void* __vt__13J3DPEBlockXlu[31]; +extern "C" extern void* __vt__17J3DPEBlockTexEdge[31]; +extern "C" extern void* __vt__13J3DPEBlockOpa[31]; +extern "C" extern void* __vt__15J3DIndBlockFull[19]; +extern "C" extern void* __vt__11J3DTevBlock[55]; +extern "C" extern void* __vt__21J3DColorBlockLightOff[36 + 1 /* padding */]; + +// +// Declarations: +// + +/* ############################################################################################## */ +/* 803CDC90-803CDCC0 02ADB0 0030+00 0/0 1/1 0/0 .data __vt__17J3DLockedMaterial */ +SECTION_DATA extern void* __vt__17J3DLockedMaterial[12] = { + (void*)NULL /* RTTI */, + (void*)NULL, + (void*)calc__17J3DLockedMaterialFPA4_Cf, + (void*)calcDiffTexMtx__11J3DMaterialFPA4_Cf, + (void*)makeDisplayList__17J3DLockedMaterialFv, + (void*)makeSharedDisplayList__17J3DLockedMaterialFv, + (void*)load__17J3DLockedMaterialFv, + (void*)loadSharedDL__17J3DLockedMaterialFv, + (void*)patch__17J3DLockedMaterialFv, + (void*)diff__17J3DLockedMaterialFUl, + (void*)reset__17J3DLockedMaterialFv, + (void*)change__17J3DLockedMaterialFv, +}; + +/* 803CDCC0-803CDCF0 02ADE0 0030+00 0/0 1/1 0/0 .data __vt__18J3DPatchedMaterial */ +SECTION_DATA extern void* __vt__18J3DPatchedMaterial[12] = { + (void*)NULL /* RTTI */, + (void*)NULL, + (void*)calc__11J3DMaterialFPA4_Cf, + (void*)calcDiffTexMtx__11J3DMaterialFPA4_Cf, + (void*)makeDisplayList__18J3DPatchedMaterialFv, + (void*)makeSharedDisplayList__18J3DPatchedMaterialFv, + (void*)load__18J3DPatchedMaterialFv, + (void*)loadSharedDL__18J3DPatchedMaterialFv, + (void*)patch__11J3DMaterialFv, + (void*)diff__11J3DMaterialFUl, + (void*)reset__18J3DPatchedMaterialFv, + (void*)change__18J3DPatchedMaterialFv, +}; + +/* 803CDCF0-803CDD20 02AE10 0030+00 0/0 6/6 0/0 .data __vt__11J3DMaterial */ +SECTION_DATA extern void* __vt__11J3DMaterial[12] = { + (void*)NULL /* RTTI */, + (void*)NULL, + (void*)calc__11J3DMaterialFPA4_Cf, + (void*)calcDiffTexMtx__11J3DMaterialFPA4_Cf, + (void*)makeDisplayList__11J3DMaterialFv, + (void*)makeSharedDisplayList__11J3DMaterialFv, + (void*)load__11J3DMaterialFv, + (void*)loadSharedDL__11J3DMaterialFv, + (void*)patch__11J3DMaterialFv, + (void*)diff__11J3DMaterialFUl, + (void*)reset__11J3DMaterialFv, + (void*)change__11J3DMaterialFv, +}; + +/* 803CDD20-803CDD9C 02AE40 007C+00 2/2 7/7 0/0 .data __vt__10J3DPEBlock */ +SECTION_DATA extern void* __vt__10J3DPEBlock[31] = { + (void*)NULL /* RTTI */, + (void*)NULL, + (void*)reset__10J3DPEBlockFP10J3DPEBlock, + (void*)NULL, + (void*)patch__10J3DPEBlockFv, + (void*)diff__10J3DPEBlockFUl, + (void*)diffFog__10J3DPEBlockFv, + (void*)diffBlend__10J3DPEBlockFv, + (void*)countDLSize__10J3DPEBlockFv, + (void*)NULL, + (void*)setFog__10J3DPEBlockF6J3DFog, + (void*)setFog__10J3DPEBlockFP6J3DFog, + (void*)getFog__10J3DPEBlockFv, + (void*)setAlphaComp__10J3DPEBlockFPC12J3DAlphaComp, + (void*)setAlphaComp__10J3DPEBlockFRC12J3DAlphaComp, + (void*)getAlphaComp__10J3DPEBlockFv, + (void*)setBlend__10J3DPEBlockFPC8J3DBlend, + (void*)setBlend__10J3DPEBlockFRC8J3DBlend, + (void*)getBlend__10J3DPEBlockFv, + (void*)setZMode__10J3DPEBlockFPC8J3DZMode, + (void*)setZMode__10J3DPEBlockF8J3DZMode, + (void*)getZMode__10J3DPEBlockFv, + (void*)setZCompLoc__10J3DPEBlockFPCUc, + (void*)setZCompLoc__10J3DPEBlockFUc, + (void*)getZCompLoc__10J3DPEBlockCFv, + (void*)setDither__10J3DPEBlockFPCUc, + (void*)setDither__10J3DPEBlockFUc, + (void*)getDither__10J3DPEBlockCFv, + (void*)getFogOffset__10J3DPEBlockCFv, + (void*)setFogOffset__10J3DPEBlockFUl, + (void*)__dt__10J3DPEBlockFv, +}; + +/* 803CDD9C-803CDDE8 02AEBC 004C+00 2/2 1/1 0/0 .data __vt__15J3DIndBlockNull */ +SECTION_DATA extern void* __vt__15J3DIndBlockNull[19] = { + (void*)NULL /* RTTI */, + (void*)NULL, + (void*)reset__15J3DIndBlockNullFP11J3DIndBlock, + (void*)diff__15J3DIndBlockNullFUl, + (void*)load__15J3DIndBlockNullFv, + (void*)countDLSize__11J3DIndBlockFv, + (void*)getType__15J3DIndBlockNullFv, + (void*)setIndTexStageNum__11J3DIndBlockFUc, + (void*)getIndTexStageNum__11J3DIndBlockCFv, + (void*)setIndTexOrder__11J3DIndBlockFUl14J3DIndTexOrder, + (void*)setIndTexOrder__11J3DIndBlockFUlPC14J3DIndTexOrder, + (void*)getIndTexOrder__11J3DIndBlockFUl, + (void*)setIndTexMtx__11J3DIndBlockFUlPC12J3DIndTexMtx, + (void*)setIndTexMtx__11J3DIndBlockFUl12J3DIndTexMtx, + (void*)getIndTexMtx__11J3DIndBlockFUl, + (void*)setIndTexCoordScale__11J3DIndBlockFUlPC19J3DIndTexCoordScale, + (void*)setIndTexCoordScale__11J3DIndBlockFUl19J3DIndTexCoordScale, + (void*)getIndTexCoordScale__11J3DIndBlockFUl, + (void*)__dt__15J3DIndBlockNullFv, +}; + +/* 803CDDE8-803CDE34 02AF08 004C+00 3/3 2/2 0/0 .data __vt__11J3DIndBlock */ +SECTION_DATA extern void* __vt__11J3DIndBlock[19] = { + (void*)NULL /* RTTI */, + (void*)NULL, + (void*)reset__11J3DIndBlockFP11J3DIndBlock, + (void*)NULL, + (void*)NULL, + (void*)countDLSize__11J3DIndBlockFv, + (void*)NULL, + (void*)setIndTexStageNum__11J3DIndBlockFUc, + (void*)getIndTexStageNum__11J3DIndBlockCFv, + (void*)setIndTexOrder__11J3DIndBlockFUl14J3DIndTexOrder, + (void*)setIndTexOrder__11J3DIndBlockFUlPC14J3DIndTexOrder, + (void*)getIndTexOrder__11J3DIndBlockFUl, + (void*)setIndTexMtx__11J3DIndBlockFUlPC12J3DIndTexMtx, + (void*)setIndTexMtx__11J3DIndBlockFUl12J3DIndTexMtx, + (void*)getIndTexMtx__11J3DIndBlockFUl, + (void*)setIndTexCoordScale__11J3DIndBlockFUlPC19J3DIndTexCoordScale, + (void*)setIndTexCoordScale__11J3DIndBlockFUl19J3DIndTexCoordScale, + (void*)getIndTexCoordScale__11J3DIndBlockFUl, + (void*)__dt__11J3DIndBlockFv, +}; + +/* 803CDE34-803CDEA0 02AF54 006C+00 3/3 5/5 0/0 .data __vt__14J3DTexGenBlock */ +SECTION_DATA extern void* __vt__14J3DTexGenBlock[27] = { + (void*)NULL /* RTTI */, + (void*)NULL, + (void*)reset__14J3DTexGenBlockFP14J3DTexGenBlock, + (void*)NULL, + (void*)NULL, + (void*)NULL, + (void*)NULL, + (void*)NULL, + (void*)NULL, + (void*)NULL, + (void*)NULL, + (void*)NULL, + (void*)countDLSize__14J3DTexGenBlockFv, + (void*)NULL, + (void*)setTexGenNum__14J3DTexGenBlockFPCUl, + (void*)setTexGenNum__14J3DTexGenBlockFUl, + (void*)getTexGenNum__14J3DTexGenBlockCFv, + (void*)setTexCoord__14J3DTexGenBlockFUlPC11J3DTexCoord, + (void*)getTexCoord__14J3DTexGenBlockFUl, + (void*)setTexMtx__14J3DTexGenBlockFUlP9J3DTexMtx, + (void*)getTexMtx__14J3DTexGenBlockFUl, + (void*)setNBTScale__14J3DTexGenBlockFPC11J3DNBTScale, + (void*)setNBTScale__14J3DTexGenBlockF11J3DNBTScale, + (void*)getNBTScale__14J3DTexGenBlockFv, + (void*)getTexMtxOffset__14J3DTexGenBlockCFv, + (void*)setTexMtxOffset__14J3DTexGenBlockFUl, + (void*)__dt__14J3DTexGenBlockFv, +}; + +/* 803CDEA0-803CDF30 02AFC0 0090+00 3/3 4/4 0/0 .data __vt__13J3DColorBlock */ +SECTION_DATA extern void* __vt__13J3DColorBlock[36] = { + (void*)NULL /* RTTI */, + (void*)NULL, + (void*)load__13J3DColorBlockFv, + (void*)reset__13J3DColorBlockFP13J3DColorBlock, + (void*)patch__13J3DColorBlockFv, + (void*)patchMatColor__13J3DColorBlockFv, + (void*)patchLight__13J3DColorBlockFv, + (void*)diff__13J3DColorBlockFUl, + (void*)diffAmbColor__13J3DColorBlockFv, + (void*)diffMatColor__13J3DColorBlockFv, + (void*)diffColorChan__13J3DColorBlockFv, + (void*)diffLightObj__13J3DColorBlockFUl, + (void*)countDLSize__13J3DColorBlockFv, + (void*)NULL, + (void*)setMatColor__13J3DColorBlockFUlPC10J3DGXColor, + (void*)setMatColor__13J3DColorBlockFUl10J3DGXColor, + (void*)getMatColor__13J3DColorBlockFUl, + (void*)setAmbColor__13J3DColorBlockFUlPC10J3DGXColor, + (void*)setAmbColor__13J3DColorBlockFUl10J3DGXColor, + (void*)getAmbColor__13J3DColorBlockFUl, + (void*)setColorChanNum__13J3DColorBlockFUc, + (void*)setColorChanNum__13J3DColorBlockFPCUc, + (void*)getColorChanNum__13J3DColorBlockCFv, + (void*)setColorChan__13J3DColorBlockFUlRC12J3DColorChan, + (void*)setColorChan__13J3DColorBlockFUlPC12J3DColorChan, + (void*)getColorChan__13J3DColorBlockFUl, + (void*)setLight__13J3DColorBlockFUlP11J3DLightObj, + (void*)getLight__13J3DColorBlockFUl, + (void*)setCullMode__13J3DColorBlockFPCUc, + (void*)setCullMode__13J3DColorBlockFUc, + (void*)getCullMode__13J3DColorBlockCFv, + (void*)getMatColorOffset__13J3DColorBlockCFv, + (void*)getColorChanOffset__13J3DColorBlockCFv, + (void*)setMatColorOffset__13J3DColorBlockFUl, + (void*)setColorChanOffset__13J3DColorBlockFUl, + (void*)__dt__13J3DColorBlockFv, +}; + +/* 803157A0-803159A0 3100E0 0200+00 0/0 3/3 0/0 .text createColorBlock__11J3DMaterialFUl + */ +J3DColorBlock* J3DMaterial::createColorBlock(u32 param_0) { + J3DColorBlock* rv = NULL; + switch (param_0) { + case 0: + rv = new J3DColorBlockLightOff(); + break; + case 0x40000000: + rv = new J3DColorBlockLightOn(); + break; + case 0x80000000: + rv = new J3DColorBlockAmbientOn(); + break; + } + + return rv; +} + +/* 803159A0-80315B04 3102E0 0164+00 0/0 2/2 0/0 .text createTexGenBlock__11J3DMaterialFUl + */ +J3DTexGenBlock* J3DMaterial::createTexGenBlock(u32 param_0) { + switch (param_0) { + case 0x8000000: + return new J3DTexGenBlock4(); + case 0: + default: + return new J3DTexGenBlockBasic(); + } +} + +/* 80315B04-80315E78 310444 0374+00 0/0 2/2 0/0 .text createTevBlock__11J3DMaterialFi */ +J3DTevBlock* J3DMaterial::createTevBlock(int param_0) { + J3DTevBlock* rv = NULL; + if (param_0 <= 1) { + rv = new J3DTevBlock1(); + } else if (param_0 == 2) { + rv = new J3DTevBlock2(); + } else if (param_0 <= 4) { + rv = new J3DTevBlock4(); + } else if (param_0 <= 16) { + rv = new J3DTevBlock16(); + } + return rv; +} + +/* 80315E78-80315F60 3107B8 00E8+00 0/0 3/3 0/0 .text createIndBlock__11J3DMaterialFi */ +J3DIndBlock* J3DMaterial::createIndBlock(int param_0) { + if (param_0 != 0) { + return new J3DIndBlockFull(); + } + + return new J3DIndBlockNull(); +} + +/* 80315F60-80316100 3108A0 01A0+00 0/0 3/3 0/0 .text createPEBlock__11J3DMaterialFUlUl + */ +J3DPEBlock* J3DMaterial::createPEBlock(u32 createFlag, u32 materialMode) { + J3DPEBlock* rv = NULL; + + if (createFlag == 0) { + if (materialMode & 1) { + rv = new J3DPEBlockOpa(); + return rv; + } else if (materialMode & 2) { + rv = new J3DPEBlockTexEdge(); + return rv; + } else if (materialMode & 4) { + rv = new J3DPEBlockXlu(); + return rv; + } + } + + if (createFlag == 0x10000000) { + rv = new J3DPEBlockFull(); + } else if (createFlag == 0x20000000) { + rv = new J3DPEBlockFogOff(); + } + + return rv; +} + +/* 80316100-80316150 310A40 0050+00 0/0 2/2 0/0 .text calcSizeColorBlock__11J3DMaterialFUl */ +u32 J3DMaterial::calcSizeColorBlock(u32 param_0) { + u32 rv = 0; + switch (param_0) { + case 0: + rv = sizeof(J3DColorBlockLightOff); + break; + case 0x40000000: + rv = sizeof(J3DColorBlockLightOn); + break; + case 0x80000000: + rv = sizeof(J3DColorBlockAmbientOn); + break; + } + + return rv; +} + +/* 80316150-8031617C 310A90 002C+00 0/0 1/1 0/0 .text calcSizeTexGenBlock__11J3DMaterialFUl */ +u32 J3DMaterial::calcSizeTexGenBlock(u32 param_0) { + switch (param_0) { + case 0x8000000: + return sizeof(J3DTexGenBlock4); + case 0: + default: + return sizeof(J3DTexGenBlockBasic); + } +} + +/* 8031617C-803161C4 310ABC 0048+00 0/0 1/1 0/0 .text calcSizeTevBlock__11J3DMaterialFi + */ +u32 J3DMaterial::calcSizeTevBlock(int param_0) { + u32 rv = 0; + if (param_0 <= 1) { + rv = sizeof(J3DTevBlock1); + } else if (param_0 == 2) { + rv = sizeof(J3DTevBlock2); + } else if (param_0 <= 4) { + rv = sizeof(J3DTevBlock4); + } else if (param_0 <= 16) { + rv = sizeof(J3DTevBlock16); + } + return rv; +} + +/* 803161C4-803161D8 310B04 0014+00 0/0 2/2 0/0 .text calcSizeIndBlock__11J3DMaterialFi + */ +u32 J3DMaterial::calcSizeIndBlock(int param_0) { + if (param_0 != 0) { + return sizeof(J3DIndBlockFull); + } + + return sizeof(J3DIndBlockNull); +} + +/* 803161D8-80316240 310B18 0068+00 0/0 2/2 0/0 .text calcSizePEBlock__11J3DMaterialFUlUl + */ +u32 J3DMaterial::calcSizePEBlock(u32 param_0, u32 param_1) { + u32 rv = 0; + if (param_0 == 0) { + if (param_1 & 1) { + rv = sizeof(J3DPEBlockOpa); + } else if (param_1 & 2) { + rv = sizeof(J3DPEBlockTexEdge); + } else if (param_1 & 4) { + rv = sizeof(J3DPEBlockXlu); + } + } + else if (param_0 == 0x10000000) { + rv = sizeof(J3DPEBlockFull); + } else if (param_0 == 0x20000000) { + rv = sizeof(J3DPEBlockFogOff); + } + return rv; +} + +/* 80316240-80316290 310B80 0050+00 2/2 5/5 0/0 .text initialize__11J3DMaterialFv */ +void J3DMaterial::initialize() { + mShape = NULL; + mNext = NULL; + mJoint = NULL; + mMaterialMode = 1; + mIndex = -1; + mInvalid = 0; + mDiffFlag = 0; + mColorBlock = NULL; + mTexGenBlock = NULL; + mTevBlock = NULL; + mIndBlock = NULL; + mPEBlock = NULL; + mpOrigMaterial = NULL; + mMaterialAnm = NULL; + mSharedDLObj = NULL; +} + +/* 80316290-80316344 310BD0 00B4+00 0/0 2/2 0/0 .text countDLSize__11J3DMaterialFv */ +u32 J3DMaterial::countDLSize() { + return (mColorBlock->countDLSize() + mTexGenBlock->countDLSize() + mTevBlock->countDLSize() + + mIndBlock->countDLSize() + mPEBlock->countDLSize() + 31) & ~0x1f; +} + +/* 80316344-80316620 310C84 02DC+00 2/2 0/0 0/0 .text + * makeDisplayList_private__11J3DMaterialFP17J3DDisplayListObj */ +void J3DMaterial::makeDisplayList_private(J3DDisplayListObj* param_0) { + param_0->beginDL(); + mTevBlock->load(); + mIndBlock->load(); + mPEBlock->load(); + J3DGDSetGenMode(mTexGenBlock->getTexGenNum(), mColorBlock->getColorChanNum(), mTevBlock->getTevStageNum(), mIndBlock->getIndTexStageNum(), (GXCullMode)(u8)mColorBlock->getCullMode()); + mTexGenBlock->load(); + mColorBlock->load(); + J3DGDSetNumChans(mColorBlock->getColorChanNum()); + J3DGDSetNumTexGens(mTexGenBlock->getTexGenNum()); + param_0->endDL(); +} + +/* 80316620-80316668 310F60 0048+00 1/0 0/0 0/0 .text makeDisplayList__11J3DMaterialFv */ +void J3DMaterial::makeDisplayList() { + if (!j3dSys.getMatPacket()->isLocked()) { + j3dSys.getMatPacket()->mDiffFlag = mDiffFlag; + makeDisplayList_private(j3dSys.getMatPacket()->getDisplayListObj()); + } +} + +/* 80316668-8031668C 310FA8 0024+00 1/0 0/0 0/0 .text makeSharedDisplayList__11J3DMaterialFv */ +void J3DMaterial::makeSharedDisplayList() { + makeDisplayList_private(mSharedDLObj); +} + +/* 8031668C-803166DC 310FCC 0050+00 1/0 0/0 0/0 .text load__11J3DMaterialFv */ +void J3DMaterial::load() { + j3dSys.setMaterialMode(mMaterialMode); + if (!j3dSys.checkFlag(2)) { + loadNBTScale(*mTexGenBlock->getNBTScale()); + } +} + +/* 803166DC-80316740 31101C 0064+00 1/0 0/0 0/0 .text loadSharedDL__11J3DMaterialFv */ +void J3DMaterial::loadSharedDL() { + j3dSys.setMaterialMode(mMaterialMode); + if (!j3dSys.checkFlag(2)) { + mSharedDLObj->callDL(); + loadNBTScale(*mTexGenBlock->getNBTScale()); + } +} + +/* 80316740-803167D8 311080 0098+00 2/0 0/0 0/0 .text patch__11J3DMaterialFv */ +void J3DMaterial::patch() { + j3dSys.getMatPacket()->mDiffFlag = mDiffFlag; + j3dSys.getMatPacket()->beginPatch(); + mTevBlock->patch(); + mColorBlock->patch(); + mTexGenBlock->patch(); + j3dSys.getMatPacket()->endPatch(); +} + +/* 803167D8-803169DC 311118 0204+00 2/0 0/0 0/0 .text diff__11J3DMaterialFUl */ +void J3DMaterial::diff(u32 param_0) { + if (j3dSys.getMatPacket()->isEnabled_Diff()) { + j3dSys.getMatPacket()->beginDiff(); + mTevBlock->diff(param_0); + mIndBlock->diff(param_0); + mPEBlock->diff(param_0); + if (param_0 & 0x2000000) { + J3DGDSetGenMode_3Param(mTexGenBlock->getTexGenNum(), mTevBlock->getTevStageNum(), mIndBlock->getIndTexStageNum()); + J3DGDSetNumTexGens(mTexGenBlock->getTexGenNum()); + } + mTexGenBlock->diff(param_0); + mColorBlock->diff(param_0); + j3dSys.getMatPacket()->endDiff(); + } +} + +/* 803169DC-80316A54 31131C 0078+00 2/0 0/0 0/0 .text calc__11J3DMaterialFPA4_Cf */ +// Matches but changes order of TU vtables (?!) +#ifdef NONMATCHING +void J3DMaterial::calc(f32 const (*param_0)[4]) { + if (j3dSys.checkFlag(0x40000000)) { + mTexGenBlock->calcPostTexMtx(param_0); + } else { + mTexGenBlock->calc(param_0); + } + + calcCurrentMtx(); + setCurrentMtx(); +} +#else +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +extern "C" asm void calc__11J3DMaterialFPA4_Cf() { + // asm void J3DMaterial::calc(f32 const (*param_0)[4]) { + nofralloc +#include "asm/JSystem/J3DGraphBase/J3DMaterial/calc__11J3DMaterialFPA4_Cf.s" +} +#pragma pop +#endif + +/* 80316A54-80316AB0 311394 005C+00 3/0 0/0 0/0 .text calcDiffTexMtx__11J3DMaterialFPA4_Cf */ +void J3DMaterial::calcDiffTexMtx(f32 const (*param_0)[4]) { + if (j3dSys.checkFlag(0x40000000)) { + mTexGenBlock->calcPostTexMtxWithoutViewMtx(param_0); + } else { + mTexGenBlock->calcWithoutViewMtx(param_0); + } +} + +/* 80316AB0-80316AC8 3113F0 0018+00 1/1 1/1 0/0 .text setCurrentMtx__11J3DMaterialFv */ +void J3DMaterial::setCurrentMtx() { + mShape->setCurrentMtx(mCurrentMtx); +} + +/* 80316AC8-80316D68 311408 02A0+00 1/1 0/0 0/0 .text calcCurrentMtx__11J3DMaterialFv */ +// Issues with setCurrentTexMtx +#ifdef NONMATCHING +void J3DMaterial::calcCurrentMtx() { + if (!j3dSys.checkFlag(0x40000000)) { + mCurrentMtx.setCurrentTexMtx( + mTexGenBlock->getTexCoord(0)->getTexGenMtx(), + mTexGenBlock->getTexCoord(1)->getTexGenMtx(), + mTexGenBlock->getTexCoord(2)->getTexGenMtx(), + mTexGenBlock->getTexCoord(3)->getTexGenMtx(), + mTexGenBlock->getTexCoord(4)->getTexGenMtx(), + mTexGenBlock->getTexCoord(5)->getTexGenMtx(), + mTexGenBlock->getTexCoord(6)->getTexGenMtx(), + mTexGenBlock->getTexCoord(7)->getTexGenMtx() + ); + } else { + mCurrentMtx.setCurrentTexMtx( + mTexGenBlock->getTexCoord(0)->getTexMtxReg(), + mTexGenBlock->getTexCoord(1)->getTexMtxReg(), + mTexGenBlock->getTexCoord(2)->getTexMtxReg(), + mTexGenBlock->getTexCoord(3)->getTexMtxReg(), + mTexGenBlock->getTexCoord(4)->getTexMtxReg(), + mTexGenBlock->getTexCoord(5)->getTexMtxReg(), + mTexGenBlock->getTexCoord(6)->getTexMtxReg(), + mTexGenBlock->getTexCoord(7)->getTexMtxReg() + ); + } +} +#else +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm void J3DMaterial::calcCurrentMtx() { + nofralloc +#include "asm/JSystem/J3DGraphBase/J3DMaterial/calcCurrentMtx__11J3DMaterialFv.s" +} +#pragma pop +#endif + +/* 80316D68-80316E14 3116A8 00AC+00 1/1 0/0 0/0 .text copy__11J3DMaterialFP11J3DMaterial + */ +void J3DMaterial::copy(J3DMaterial* param_0) { + mColorBlock->reset(param_0->mColorBlock); + mTexGenBlock->reset(param_0->mTexGenBlock); + mTevBlock->reset(param_0->mTevBlock); + mIndBlock->reset(param_0->mIndBlock); + mPEBlock->reset(param_0->mPEBlock); +} + +/* 80316E14-80316E70 311754 005C+00 1/0 0/0 0/0 .text reset__11J3DMaterialFv */ +void J3DMaterial::reset() { + if ((~mDiffFlag & 0x80000000) == 0) { + mDiffFlag &= ~0x80000000; + mMaterialMode = mpOrigMaterial->mMaterialMode; + mInvalid = mpOrigMaterial->mInvalid; + mMaterialAnm = NULL; + copy(mpOrigMaterial); + } +} + +/* 80316E70-80316E90 3117B0 0020+00 1/0 0/0 0/0 .text change__11J3DMaterialFv */ +void J3DMaterial::change() { + if ((mDiffFlag & 0xc0000000) == 0) { + mDiffFlag |= 0x80000000; + mMaterialAnm = NULL; + } +} + +/* 80316E90-80316F24 3117D0 0094+00 0/0 2/2 0/0 .text newSharedDisplayList__11J3DMaterialFUl */ +s32 J3DMaterial::newSharedDisplayList(u32 param_0) { + if (mSharedDLObj == NULL) { + mSharedDLObj = new J3DDisplayListObj(); + if (mSharedDLObj == NULL) { + return 4; + } + s32 res = mSharedDLObj->newDisplayList(param_0); + switch (res) { + case kJ3DError_Success: + break; + default: + return res; + } + } + return 0; +} + +/* 80316F24-80316FB8 311864 0094+00 0/0 2/2 0/0 .text newSingleSharedDisplayList__11J3DMaterialFUl + */ +s32 J3DMaterial::newSingleSharedDisplayList(u32 param_0) { + if (mSharedDLObj == NULL) { + mSharedDLObj = new J3DDisplayListObj(); + if (mSharedDLObj == NULL) { + return 4; + } + s32 res = mSharedDLObj->newSingleDisplayList(param_0); + switch (res) { + case kJ3DError_Success: + break; + default: + return res; + } + } + return 0; +} + +/* 80316FB8-80316FD8 3118F8 0020+00 0/0 1/1 0/0 .text initialize__18J3DPatchedMaterialFv + */ +void J3DPatchedMaterial::initialize() { + J3DMaterial::initialize(); +} + +/* 80316FD8-80316FDC 311918 0004+00 1/0 0/0 0/0 .text makeDisplayList__18J3DPatchedMaterialFv */ +extern "C" asm void makeDisplayList__18J3DPatchedMaterialFv() { +//void J3DPatchedMaterial::makeDisplayList() { + /* empty function */ +} + +/* 80316FDC-80316FE0 31191C 0004+00 1/0 0/0 0/0 .text + * makeSharedDisplayList__18J3DPatchedMaterialFv */ +void J3DPatchedMaterial::makeSharedDisplayList() { + /* empty function */ +} + +/* 80316FE0-80316FFC 311920 001C+00 1/0 0/0 0/0 .text load__18J3DPatchedMaterialFv */ +void J3DPatchedMaterial::load() { + j3dSys.setMaterialMode(mMaterialMode); + if (j3dSys.checkFlag(2)) { + return; + } +} + +/* 80316FFC-8031703C 31193C 0040+00 1/0 0/0 0/0 .text loadSharedDL__18J3DPatchedMaterialFv */ +void J3DPatchedMaterial::loadSharedDL() { + j3dSys.setMaterialMode(mMaterialMode); + if (!j3dSys.checkFlag(0x02)) + mSharedDLObj->callDL(); +} + +/* 8031703C-80317040 31197C 0004+00 1/0 0/0 0/0 .text reset__18J3DPatchedMaterialFv */ +void J3DPatchedMaterial::reset() { + /* empty function */ +} + +/* 80317040-80317044 311980 0004+00 1/0 0/0 0/0 .text change__18J3DPatchedMaterialFv */ +void J3DPatchedMaterial::change() { + /* empty function */ +} + +/* 80317044-80317064 311984 0020+00 0/0 1/1 0/0 .text initialize__17J3DLockedMaterialFv + */ +void J3DLockedMaterial::initialize() { + J3DMaterial::initialize(); +} + +/* 80317064-80317068 3119A4 0004+00 1/0 0/0 0/0 .text makeDisplayList__17J3DLockedMaterialFv */ +void J3DLockedMaterial::makeDisplayList() { + /* empty function */ +} + +/* 80317068-8031706C 3119A8 0004+00 1/0 0/0 0/0 .text makeSharedDisplayList__17J3DLockedMaterialFv + */ +void J3DLockedMaterial::makeSharedDisplayList() { + /* empty function */ +} + +/* 8031706C-80317088 3119AC 001C+00 1/0 0/0 0/0 .text load__17J3DLockedMaterialFv */ +void J3DLockedMaterial::load() { + j3dSys.setMaterialMode(mMaterialMode); + if (j3dSys.checkFlag(2)) { + return; + } +} + +/* 80317088-803170C8 3119C8 0040+00 1/0 0/0 0/0 .text loadSharedDL__17J3DLockedMaterialFv + */ +void J3DLockedMaterial::loadSharedDL() { + j3dSys.setMaterialMode(mMaterialMode); + if (!j3dSys.checkFlag(0x02)) + mSharedDLObj->callDL(); +} + +/* 803170C8-803170CC 311A08 0004+00 1/0 0/0 0/0 .text patch__17J3DLockedMaterialFv */ +void J3DLockedMaterial::patch() { + /* empty function */ +} + +/* 803170CC-803170D0 311A0C 0004+00 1/0 0/0 0/0 .text diff__17J3DLockedMaterialFUl */ +void J3DLockedMaterial::diff(u32 param_0) { + /* empty function */ +} + +/* 803170D0-803170D4 311A10 0004+00 1/0 0/0 0/0 .text calc__17J3DLockedMaterialFPA4_Cf */ +extern "C" asm void calc__17J3DLockedMaterialFPA4_Cf() { + /* empty function */ +} + +/* 803170D4-803170D8 311A14 0004+00 1/0 0/0 0/0 .text reset__17J3DLockedMaterialFv */ +void J3DLockedMaterial::reset() { + /* empty function */ +} + +/* 803170D8-803170DC 311A18 0004+00 1/0 0/0 0/0 .text change__17J3DLockedMaterialFv */ +void J3DLockedMaterial::change() { + /* empty function */ +} + +/* 803170DC-80317138 311A1C 005C+00 0/0 1/0 0/0 .text __dt__21J3DColorBlockLightOffFv */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm J3DColorBlockLightOff::~J3DColorBlockLightOff() { + nofralloc +#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__21J3DColorBlockLightOffFv.s" +} +#pragma pop + +/* 80317138-80317180 311A78 0048+00 1/0 0/0 0/0 .text __dt__13J3DColorBlockFv */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +// asm J3DColorBlock::~J3DColorBlock() { +extern "C" asm void __dt__13J3DColorBlockFv() { + nofralloc +#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__13J3DColorBlockFv.s" +} +#pragma pop + +/* 80317180-803171DC 311AC0 005C+00 0/0 1/0 0/0 .text __dt__21J3DTexGenBlockPatchedFv */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm J3DTexGenBlockPatched::~J3DTexGenBlockPatched() { + nofralloc +#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__21J3DTexGenBlockPatchedFv.s" +} +#pragma pop + +/* 803171DC-80317224 311B1C 0048+00 1/0 0/0 0/0 .text __dt__14J3DTexGenBlockFv */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +// asm J3DTexGenBlock::~J3DTexGenBlock() { +extern "C" asm void __dt__14J3DTexGenBlockFv() { + nofralloc +#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__14J3DTexGenBlockFv.s" +} +#pragma pop + +/* 80317224-8031726C 311B64 0048+00 0/0 1/0 0/0 .text __dt__11J3DTevBlockFv */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +// asm J3DTevBlock::~J3DTevBlock() { +extern "C" asm void __dt__11J3DTevBlockFv() { + nofralloc +#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__11J3DTevBlockFv.s" +} +#pragma pop + +/* 8031726C-803172B4 311BAC 0048+00 1/0 0/0 0/0 .text __dt__11J3DIndBlockFv */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm J3DIndBlock::~J3DIndBlock() { + nofralloc +#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__11J3DIndBlockFv.s" +} +#pragma pop + +/* 803172B4-803172FC 311BF4 0048+00 1/0 0/0 0/0 .text __dt__10J3DPEBlockFv */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +// asm J3DPEBlock::~J3DPEBlock() { +extern "C" asm void __dt__10J3DPEBlockFv() { + nofralloc +#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__10J3DPEBlockFv.s" +} +#pragma pop + +/* 803172FC-80317304 311C3C 0008+00 1/0 1/0 0/0 .text countDLSize__14J3DTexGenBlockFv */ +s32 J3DTexGenBlock::countDLSize() { + return false; +} + +/* 80317304-8031730C 311C44 0008+00 1/0 1/0 0/0 .text countDLSize__13J3DColorBlockFv */ +s32 J3DColorBlock::countDLSize() { + return false; +} + +/* 8031730C-80317314 311C4C 0008+00 0/0 2/0 0/0 .text countDLSize__11J3DTevBlockFv */ +s32 J3DTevBlock::countDLSize() { + return false; +} + +/* 80317314-8031731C 311C54 0008+00 2/0 0/0 0/0 .text countDLSize__11J3DIndBlockFv */ +s32 J3DIndBlock::countDLSize() { + return false; +} + +/* 8031731C-80317324 311C5C 0008+00 1/0 1/0 0/0 .text countDLSize__10J3DPEBlockFv */ +s32 J3DPEBlock::countDLSize() { + return false; +} + +/* 80317324-80317328 311C64 0004+00 1/0 1/0 0/0 .text load__13J3DColorBlockFv */ +extern "C" void load__13J3DColorBlockFv() { + /* empty function */ +} + +/* 80317328-80317330 311C68 0008+00 1/0 1/0 0/0 .text getCullMode__13J3DColorBlockCFv */ +s32 J3DColorBlock::getCullMode() const { + return 2; +} + +/* 80317330-80317334 311C70 0004+00 0/0 2/0 0/0 .text load__11J3DTevBlockFv */ +void J3DTevBlock::load() { + /* empty function */ +} + +/* 80317334-8031733C 311C74 0008+00 1/0 2/0 0/0 .text getNBTScale__14J3DTexGenBlockFv */ +J3DNBTScale* J3DTexGenBlock::getNBTScale() { + return NULL; +} + +/* 8031733C-80317340 311C7C 0004+00 1/0 1/0 0/0 .text patch__13J3DColorBlockFv */ +void J3DColorBlock::patch() { + /* empty function */ +} + +/* 80317340-80317344 311C80 0004+00 1/0 1/0 0/0 .text diff__13J3DColorBlockFUl */ +void J3DColorBlock::diff(u32 param_0) { + /* empty function */ +} + +/* 80317344-80317348 311C84 0004+00 1/0 4/0 0/0 .text diff__10J3DPEBlockFUl */ +void J3DPEBlock::diff(u32 param_0) { + /* empty function */ +} + +/* 80317348-8031734C 311C88 0004+00 1/0 4/0 0/0 .text reset__10J3DPEBlockFP10J3DPEBlock + */ +extern "C" void reset__10J3DPEBlockFP10J3DPEBlock() { + /* empty function */ +} + +/* 8031734C-80317350 311C8C 0004+00 1/0 0/0 0/0 .text reset__11J3DIndBlockFP11J3DIndBlock + */ +extern "C" void reset__11J3DIndBlockFP11J3DIndBlock() { + /* empty function */ +} + +/* 80317350-80317354 311C90 0004+00 0/0 1/0 0/0 .text reset__11J3DTevBlockFP11J3DTevBlock + */ +extern "C" void reset__11J3DTevBlockFP11J3DTevBlock(J3DTevBlock* param_0) { + /* empty function */ +} + +/* 80317354-80317358 311C94 0004+00 1/0 1/0 0/0 .text reset__14J3DTexGenBlockFP14J3DTexGenBlock */ +extern "C" void reset__14J3DTexGenBlockFP14J3DTexGenBlock() { + /* empty function */ +} + +/* 80317358-8031735C 311C98 0004+00 1/0 1/0 0/0 .text reset__13J3DColorBlockFP13J3DColorBlock */ +void J3DColorBlock::reset(J3DColorBlock* param_0) { + /* empty function */ +} + +/* 8031735C-80317360 311C9C 0004+00 1/0 5/0 0/0 .text diffFog__10J3DPEBlockFv */ +void J3DPEBlock::diffFog() { + /* empty function */ +} + +/* 80317360-80317364 311CA0 0004+00 1/0 4/0 0/0 .text diffBlend__10J3DPEBlockFv */ +void J3DPEBlock::diffBlend() { + /* empty function */ +} + +/* 80317364-80317368 311CA4 0004+00 1/0 5/0 0/0 .text setFog__10J3DPEBlockFP6J3DFog */ +void J3DPEBlock::setFog(J3DFog* param_0) { + /* empty function */ +} + +/* 80317368-8031736C 311CA8 0004+00 1/0 5/0 0/0 .text setFog__10J3DPEBlockF6J3DFog */ +void J3DPEBlock::setFog(J3DFog param_0) { + /* empty function */ +} + +/* 8031736C-80317370 311CAC 0004+00 1/0 4/0 0/0 .text setAlphaComp__10J3DPEBlockFPC12J3DAlphaComp + */ +void J3DPEBlock::setAlphaComp(J3DAlphaComp const* param_0) { + /* empty function */ +} + +/* 80317370-80317374 311CB0 0004+00 1/0 4/0 0/0 .text setBlend__10J3DPEBlockFPC8J3DBlend + */ +void J3DPEBlock::setBlend(J3DBlend const* param_0) { + /* empty function */ +} + +/* 80317374-80317378 311CB4 0004+00 1/0 4/0 0/0 .text setZMode__10J3DPEBlockFPC8J3DZMode + */ +void J3DPEBlock::setZMode(J3DZMode const* param_0) { + /* empty function */ +} + +/* 80317378-8031737C 311CB8 0004+00 1/0 4/0 0/0 .text setZCompLoc__10J3DPEBlockFPCUc */ +void J3DPEBlock::setZCompLoc(u8 const* param_0) { + /* empty function */ +} + +/* 8031737C-80317380 311CBC 0004+00 1/0 4/0 0/0 .text setDither__10J3DPEBlockFUc */ +void J3DPEBlock::setDither(u8 param_0) { + /* empty function */ +} + +/* 80317380-80317384 311CC0 0004+00 1/0 4/0 0/0 .text setDither__10J3DPEBlockFPCUc */ +void J3DPEBlock::setDither(u8 const* param_0) { + /* empty function */ +} + +/* 80317384-8031738C 311CC4 0008+00 1/0 4/0 0/0 .text getDither__10J3DPEBlockCFv */ +bool J3DPEBlock::getDither() const { + return false; +} + +/* 8031738C-80317394 311CCC 0008+00 1/0 5/0 0/0 .text getFogOffset__10J3DPEBlockCFv */ +bool J3DPEBlock::getFogOffset() const { + return false; +} + +/* 80317394-80317398 311CD4 0004+00 1/0 5/0 0/0 .text setFogOffset__10J3DPEBlockFUl */ +void J3DPEBlock::setFogOffset(u32 param_0) { + /* empty function */ +} + +/* 80317398-8031739C 311CD8 0004+00 1/0 0/0 0/0 .text diff__15J3DIndBlockNullFUl */ +void J3DIndBlockNull::diff(u32 param_0) { + /* empty function */ +} + +/* 8031739C-803173A0 311CDC 0004+00 1/0 0/0 0/0 .text load__15J3DIndBlockNullFv */ +void J3DIndBlockNull::load() { + /* empty function */ +} + +/* 803173A0-803173A4 311CE0 0004+00 1/0 0/0 0/0 .text reset__15J3DIndBlockNullFP11J3DIndBlock */ +extern "C" asm void reset__15J3DIndBlockNullFP11J3DIndBlock() { + /* empty function */ +} + +/* 803173A4-803173B0 311CE4 000C+00 1/0 0/0 0/0 .text getType__15J3DIndBlockNullFv */ +u32 J3DIndBlockNull::getType() { + return 'IBLN'; +} + +/* 803173B0-8031740C 311CF0 005C+00 1/0 0/0 0/0 .text __dt__15J3DIndBlockNullFv */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm J3DIndBlockNull::~J3DIndBlockNull() { + nofralloc +#include "asm/JSystem/J3DGraphBase/J3DMaterial/__dt__15J3DIndBlockNullFv.s" +} +#pragma pop + +/* 8031740C-80317410 311D4C 0004+00 2/0 0/0 0/0 .text + * setIndTexOrder__11J3DIndBlockFUlPC14J3DIndTexOrder */ +void J3DIndBlock::setIndTexOrder(u32 param_0, J3DIndTexOrder const* param_1) { + /* empty function */ +} + +/* 80317410-80317414 311D50 0004+00 2/0 0/0 0/0 .text + * setIndTexOrder__11J3DIndBlockFUl14J3DIndTexOrder */ +void J3DIndBlock::setIndTexOrder(u32 param_0, J3DIndTexOrder param_1) { + /* empty function */ +} + +/* 80317414-80317418 311D54 0004+00 2/0 0/0 0/0 .text + * setIndTexMtx__11J3DIndBlockFUlPC12J3DIndTexMtx */ +void J3DIndBlock::setIndTexMtx(u32 param_0, J3DIndTexMtx const* param_1) { + /* empty function */ +} + +/* 80317418-8031741C 311D58 0004+00 2/0 0/0 0/0 .text + * setIndTexCoordScale__11J3DIndBlockFUlPC19J3DIndTexCoordScale */ +void J3DIndBlock::setIndTexCoordScale(u32 param_0, J3DIndTexCoordScale const* param_1) { + /* empty function */ +} + +/* 8031741C-80317420 311D5C 0004+00 1/0 1/0 0/0 .text setTexGenNum__14J3DTexGenBlockFPCUl + */ +void J3DTexGenBlock::setTexGenNum(u32 const* param_0) { + /* empty function */ +} + +/* 80317420-80317424 311D60 0004+00 1/0 2/0 0/0 .text setNBTScale__14J3DTexGenBlockF11J3DNBTScale + */ +void J3DTexGenBlock::setNBTScale(J3DNBTScale param_0) { + /* empty function */ +} + +/* 80317424-80317428 311D64 0004+00 1/0 2/0 0/0 .text + * setNBTScale__14J3DTexGenBlockFPC11J3DNBTScale */ +void J3DTexGenBlock::setNBTScale(J3DNBTScale const* param_0) { + /* empty function */ +} + +/* 80317428-80317430 311D68 0008+00 1/0 1/0 0/0 .text getTexMtxOffset__14J3DTexGenBlockCFv */ +bool J3DTexGenBlock::getTexMtxOffset() const { + return false; +} + +/* 80317430-80317434 311D70 0004+00 1/0 1/0 0/0 .text setTexMtxOffset__14J3DTexGenBlockFUl */ +void J3DTexGenBlock::setTexMtxOffset(u32 param_0) { + /* empty function */ +} + +/* 80317434-80317438 311D74 0004+00 1/0 1/0 0/0 .text patchMatColor__13J3DColorBlockFv */ +void J3DColorBlock::patchMatColor() { + /* empty function */ +} + +/* 80317438-8031743C 311D78 0004+00 1/0 3/0 0/0 .text diffAmbColor__13J3DColorBlockFv */ +void J3DColorBlock::diffAmbColor() { + /* empty function */ +} + +/* 8031743C-80317440 311D7C 0004+00 1/0 1/0 0/0 .text diffMatColor__13J3DColorBlockFv */ +void J3DColorBlock::diffMatColor() { + /* empty function */ +} + +/* 80317440-80317444 311D80 0004+00 1/0 1/0 0/0 .text diffColorChan__13J3DColorBlockFv */ +void J3DColorBlock::diffColorChan() { + /* empty function */ +} + +/* 80317444-80317448 311D84 0004+00 1/0 3/0 0/0 .text diffLightObj__13J3DColorBlockFUl */ +void J3DColorBlock::diffLightObj(u32 param_0) { + /* empty function */ +} + +/* 80317448-8031744C 311D88 0004+00 1/0 1/0 0/0 .text + * setMatColor__13J3DColorBlockFUlPC10J3DGXColor */ +void J3DColorBlock::setMatColor(u32 param_0, J3DGXColor const* param_1) { + /* empty function */ +} + +/* 8031744C-80317450 311D8C 0004+00 1/0 1/0 0/0 .text setColorChanNum__13J3DColorBlockFPCUc */ +void J3DColorBlock::setColorChanNum(u8 const* param_0) { + /* empty function */ +} + +/* 80317450-80317454 311D90 0004+00 1/0 1/0 0/0 .text + * setColorChan__13J3DColorBlockFUlPC12J3DColorChan */ +void J3DColorBlock::setColorChan(u32 param_0, J3DColorChan const* param_1) { + /* empty function */ +} + +/* 80317454-8031745C 311D94 0008+00 1/0 3/0 0/0 .text getLight__13J3DColorBlockFUl */ +bool J3DColorBlock::getLight(u32 param_0) { + return false; +} + +/* 8031745C-80317460 311D9C 0004+00 1/0 1/0 0/0 .text setCullMode__13J3DColorBlockFUc */ +void J3DColorBlock::setCullMode(u8 param_0) { + /* empty function */ +} + +/* 80317460-80317464 311DA0 0004+00 1/0 1/0 0/0 .text setCullMode__13J3DColorBlockFPCUc + */ +void J3DColorBlock::setCullMode(u8 const* param_0) { + /* empty function */ +} + +/* 80317464-8031746C 311DA4 0008+00 1/0 1/0 0/0 .text getMatColorOffset__13J3DColorBlockCFv */ +bool J3DColorBlock::getMatColorOffset() const { + return false; +} + +/* 8031746C-80317474 311DAC 0008+00 1/0 1/0 0/0 .text getColorChanOffset__13J3DColorBlockCFv */ +bool J3DColorBlock::getColorChanOffset() const { + return false; +} + +/* 80317474-80317478 311DB4 0004+00 1/0 1/0 0/0 .text setMatColorOffset__13J3DColorBlockFUl */ +void J3DColorBlock::setMatColorOffset(u32 param_0) { + /* empty function */ +} + +/* 80317478-8031747C 311DB8 0004+00 1/0 1/0 0/0 .text setColorChanOffset__13J3DColorBlockFUl */ +void J3DColorBlock::setColorChanOffset(u32 param_0) { + /* empty function */ +} diff --git a/libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp b/libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp index 894f79dd85..a371507f05 100644 --- a/libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp +++ b/libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp @@ -7,7 +7,6 @@ #include "string.h" #include "dolphin/gx.h" #include "dolphin/os/OSCache.h" -#include "dolphin/types.h" #include "global.h" // diff --git a/libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp b/libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp index d5c1405b65..828a738bd7 100644 --- a/libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp +++ b/libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp @@ -6,7 +6,6 @@ #include "JSystem/J3DGraphBase/J3DShapeMtx.h" #include "JSystem/J3DGraphAnimator/J3DModel.h" #include "JSystem/J3DGraphBase/J3DGD.h" -#include "JSystem/J3DGraphBase/J3DMatBlock.h" #include "dol2asm.h" #include "dolphin/types.h" diff --git a/libs/JSystem/J3DGraphBase/J3DStruct.cpp b/libs/JSystem/J3DGraphBase/J3DStruct.cpp index b2d537934d..e1bc18315e 100644 --- a/libs/JSystem/J3DGraphBase/J3DStruct.cpp +++ b/libs/JSystem/J3DGraphBase/J3DStruct.cpp @@ -1,75 +1,75 @@ -// -// J3DStruct -// - -#include "JSystem/J3DGraphBase/J3DStruct.h" -#include "JSystem/JMath/JMath.h" - -/* 803256C4-80325718 320004 0054+00 0/0 11/11 24/24 .text __as__12J3DLightInfoFRC12J3DLightInfo */ -J3DLightInfo& J3DLightInfo::operator=(J3DLightInfo const& param_0) { - JMath::gekko_ps_copy6(&mLightPosition, ¶m_0.mLightPosition); - mColor = param_0.mColor; - JMath::gekko_ps_copy6(&mCosAtten, ¶m_0.mCosAtten); - return *this; -} - -/* 80325718-80325794 320058 007C+00 0/0 4/4 0/0 .text __as__13J3DTexMtxInfoFRC13J3DTexMtxInfo */ -J3DTexMtxInfo& J3DTexMtxInfo::operator=(J3DTexMtxInfo const& param_0) { - mProjection = param_0.mProjection; - mInfo = param_0.mInfo; - JMath::gekko_ps_copy3(&mCenter, ¶m_0.mCenter); - mSRT = param_0.mSRT; - JMath::gekko_ps_copy16(&mEffectMtx, ¶m_0.mEffectMtx); - return *this; -} - -// Helper functions to set float literal order -static f32 dummyLiteralOrder() { - return 1.0f; -} - -/* 80325794-803257DC 3200D4 0048+00 0/0 2/2 7/7 .text setEffectMtx__13J3DTexMtxInfoFPA4_f - */ -void J3DTexMtxInfo::setEffectMtx(Mtx param_0) { - JMath::gekko_ps_copy12(&mEffectMtx, param_0); - register f32 zero = 0.0f; - register f32* mtx = (f32*)mEffectMtx; - asm { - psq_st zero, 0x30(mtx), 0, 0 - }; - mEffectMtx[3][2] = 0.0f; - mEffectMtx[3][3] = 1.0f; -} - -/* 803257DC-80325800 32011C 0024+00 0/0 5/5 0/0 .text - * __as__16J3DIndTexMtxInfoFRC16J3DIndTexMtxInfo */ -J3DIndTexMtxInfo& J3DIndTexMtxInfo::operator=(J3DIndTexMtxInfo const& param_0) { - JMath::gekko_ps_copy6(field_0x0, param_0.field_0x0); - field_0x18 = param_0.field_0x18; - return *this; -} - -/* 80325800-8032587C 320140 007C+00 0/0 6/6 0/0 .text __as__10J3DFogInfoFRC10J3DFogInfo - */ -J3DFogInfo& J3DFogInfo::operator=(J3DFogInfo const& param_0) { - field_0x0 = param_0.field_0x0; - field_0x1 = param_0.field_0x1; - field_0x2 = param_0.field_0x2; - field_0x4 = param_0.field_0x4; - field_0x8 = param_0.field_0x8; - field_0xc = param_0.field_0xc; - field_0x10 = param_0.field_0x10; - field_0x14 = param_0.field_0x14; - for (int i = 0; i < 10; i++) { - field_0x18.fogVals[i] = param_0.field_0x18.fogVals[i]; - } - return *this; -} - -/* 8032587C-803258A0 3201BC 0024+00 0/0 6/6 0/0 .text __as__15J3DNBTScaleInfoFRC15J3DNBTScaleInfo - */ -J3DNBTScaleInfo& J3DNBTScaleInfo::operator=(J3DNBTScaleInfo const& param_0) { - mbHasScale = param_0.mbHasScale; - mScale = param_0.mScale; - return *this; +// +// J3DStruct +// + +#include "JSystem/J3DGraphBase/J3DStruct.h" +#include "JSystem/JMath/JMath.h" + +/* 803256C4-80325718 320004 0054+00 0/0 11/11 24/24 .text __as__12J3DLightInfoFRC12J3DLightInfo */ +J3DLightInfo& J3DLightInfo::operator=(J3DLightInfo const& param_0) { + JMath::gekko_ps_copy6(&mLightPosition, ¶m_0.mLightPosition); + mColor = param_0.mColor; + JMath::gekko_ps_copy6(&mCosAtten, ¶m_0.mCosAtten); + return *this; +} + +/* 80325718-80325794 320058 007C+00 0/0 4/4 0/0 .text __as__13J3DTexMtxInfoFRC13J3DTexMtxInfo */ +J3DTexMtxInfo& J3DTexMtxInfo::operator=(J3DTexMtxInfo const& param_0) { + mProjection = param_0.mProjection; + mInfo = param_0.mInfo; + JMath::gekko_ps_copy3(&mCenter, ¶m_0.mCenter); + mSRT = param_0.mSRT; + JMath::gekko_ps_copy16(&mEffectMtx, ¶m_0.mEffectMtx); + return *this; +} + +// Helper functions to set float literal order +static f32 dummyLiteralOrder() { + return 1.0f; +} + +/* 80325794-803257DC 3200D4 0048+00 0/0 2/2 7/7 .text setEffectMtx__13J3DTexMtxInfoFPA4_f + */ +void J3DTexMtxInfo::setEffectMtx(Mtx param_0) { + JMath::gekko_ps_copy12(&mEffectMtx, param_0); + register f32 zero = 0.0f; + register f32* mtx = (f32*)mEffectMtx; + asm { + psq_st zero, 0x30(mtx), 0, 0 + }; + mEffectMtx[3][2] = 0.0f; + mEffectMtx[3][3] = 1.0f; +} + +/* 803257DC-80325800 32011C 0024+00 0/0 5/5 0/0 .text + * __as__16J3DIndTexMtxInfoFRC16J3DIndTexMtxInfo */ +J3DIndTexMtxInfo& J3DIndTexMtxInfo::operator=(J3DIndTexMtxInfo const& param_0) { + JMath::gekko_ps_copy6(field_0x0, param_0.field_0x0); + field_0x18 = param_0.field_0x18; + return *this; +} + +/* 80325800-8032587C 320140 007C+00 0/0 6/6 0/0 .text __as__10J3DFogInfoFRC10J3DFogInfo + */ +J3DFogInfo& J3DFogInfo::operator=(J3DFogInfo const& param_0) { + field_0x0 = param_0.field_0x0; + field_0x1 = param_0.field_0x1; + field_0x2 = param_0.field_0x2; + field_0x4 = param_0.field_0x4; + field_0x8 = param_0.field_0x8; + field_0xc = param_0.field_0xc; + field_0x10 = param_0.field_0x10; + field_0x14 = param_0.field_0x14; + for (int i = 0; i < 10; i++) { + field_0x18.fogVals[i] = param_0.field_0x18.fogVals[i]; + } + return *this; +} + +/* 8032587C-803258A0 3201BC 0024+00 0/0 6/6 0/0 .text __as__15J3DNBTScaleInfoFRC15J3DNBTScaleInfo + */ +J3DNBTScaleInfo& J3DNBTScaleInfo::operator=(J3DNBTScaleInfo const& param_0) { + mbHasScale = param_0.mbHasScale; + mScale = param_0.mScale; + return *this; } \ No newline at end of file diff --git a/libs/JSystem/J3DGraphBase/J3DSys.cpp b/libs/JSystem/J3DGraphBase/J3DSys.cpp index 3e7acef507..a813a1b7bb 100644 --- a/libs/JSystem/J3DGraphBase/J3DSys.cpp +++ b/libs/JSystem/J3DGraphBase/J3DSys.cpp @@ -1,402 +1,402 @@ -// -// Generated By: dol2asm -// Translation Unit: J3DSys -// - -#include "JSystem/J3DGraphBase/J3DSys.h" - -#include "dol2asm.h" -#include "dolphin/gx/GXPixel.h" -#include "dolphin/os.h" -#include "dolphin/types.h" -#include "global.h" - -#include "JSystem/J3DGraphBase/J3DTevs.h" - -#include "JSystem/J3DGraphBase/J3DTexture.h" -#include "JSystem/J3DGraphBase/J3DGD.h" - -// -// Forward References: -// - -extern void J3DFifoLoadTexCached(GXTexMapID, u32, GXTexCacheSize, u32, GXTexCacheSize); -extern void makeTexCoordTable(); -extern void makeAlphaCmpTable(); -extern void makeZModeTable(); -extern void makeTevSwapTable(); -extern "C" void GXInvalidateVtxCache(); - -extern "C" extern const GXColor j3dDefaultColInfo; -extern "C" extern u8 data_804563C8; -extern "C" extern const GXColorS10 j3dDefaultTevColor; -extern "C" extern const GXColor j3dDefaultTevKColor; - -// -// Declarations: -// - -/* ############################################################################################## */ -/* 80434AC8-80434BE4 0617E8 011C+00 1/1 151/151 486/486 .bss j3dSys */ -J3DSys j3dSys; - -/* 80434BE4-80434C14 061904 0030+00 0/0 17/17 154/154 .bss mCurrentMtx__6J3DSys */ -Mtx J3DSys::mCurrentMtx; - -/* 80434C14-80434C20 061934 000C+00 0/0 6/6 0/0 .bss mCurrentS__6J3DSys */ -Vec J3DSys::mCurrentS; - -/* 80434C20-80434C2C 061940 000C+00 0/0 5/5 0/0 .bss mParentS__6J3DSys */ -Vec J3DSys::mParentS; - -/* 80434C2C-80434C70 06194C 0040+04 1/1 17/17 0/0 .bss sTexCoordScaleTable__6J3DSys */ -J3DTexCoordScaleInfo J3DSys::sTexCoordScaleTable[8]; - -/* 8030FDE8-8030FEC0 30A728 00D8+00 1/1 0/0 0/0 .text __ct__6J3DSysFv */ -J3DSys::J3DSys() { - makeTexCoordTable(); - makeTevSwapTable(); - makeAlphaCmpTable(); - makeZModeTable(); - - mFlags = 0; - MTXIdentity(mViewMtx); - mDrawMode = 1; - mMaterialMode = 0; - mModel = NULL; - mShape = NULL; - for (u32 i = 0; i < ARRAY_SIZE(mDrawBuffer); i++) - mDrawBuffer[i] = NULL; - mTexture = NULL; - mMatPacket = NULL; - mShapePacket = NULL; - mModelDrawMtx = NULL; - mModelNrmMtx = NULL; - mVtxPos = NULL; - mVtxNrm = NULL; - mVtxCol = NULL; - - for (u32 i = 0; i < 8; i++) { - sTexCoordScaleTable[i].field_0x00 = 1; - sTexCoordScaleTable[i].field_0x02 = 1; - sTexCoordScaleTable[i].field_0x04 = 0; - sTexCoordScaleTable[i].field_0x06 = 0; - } -} - -/* 8030FEC0-8030FEE4 30A800 0024+00 0/0 1/1 0/0 .text loadPosMtxIndx__6J3DSysCFiUs */ -void J3DSys::loadPosMtxIndx(int addr, u16 indx) const { - J3DFifoLoadIndx(GX_CMD_LOAD_INDX_A, indx, 0xB000 | ((u16)(addr * 0x0C))); -} - -/* 8030FEE4-8030FF0C 30A824 0028+00 0/0 1/1 0/0 .text loadNrmMtxIndx__6J3DSysCFiUs */ -void J3DSys::loadNrmMtxIndx(int addr, u16 indx) const { - J3DFifoLoadIndx(GX_CMD_LOAD_INDX_B, indx, 0x8000 | ((u16)((addr * 0x09) + 0x400))); -} - -/* 8030FF0C-803100BC 30A84C 01B0+00 1/1 0/0 0/0 .text setTexCacheRegion__6J3DSysF15_GXTexCacheSize - */ -void J3DSys::setTexCacheRegion(GXTexCacheSize size) { - const u32 kSize[] = { - 0x00008000, - 0x00020000, - 0x00080000, - 0x00000000, - }; - const u32 kRegionNum[] = {8, 4, 1, 0}; - - u32 regionNum = kRegionNum[size]; - mTexCacheRegionNum = regionNum; - - if (!!(mFlags & 0x80000000)) { - for (u32 i = 0; i < regionNum; i++) { - if (!!(i & 1)) { - GXInitTexCacheRegion(&mTexCacheRegion[i], GX_FALSE, i * kSize[size] + 0x80000, size, - i * kSize[size], size); - J3DFifoLoadTexCached((GXTexMapID)i, i * kSize[size] + 0x80000, size, - i * kSize[size], size); - } else { - GXInitTexCacheRegion(&mTexCacheRegion[i], GX_FALSE, i * kSize[size], size, - i * kSize[size] + 0x80000, size); - J3DFifoLoadTexCached((GXTexMapID)i, i * kSize[size], size, - i * kSize[size] + 0x80000, size); - } - } - } else { - for (u32 i = 0; i < regionNum; i++) { - GXInitTexCacheRegion(&mTexCacheRegion[i], GX_FALSE, i * kSize[size], size, - i * kSize[size] + 0x80000, size); - J3DFifoLoadTexCached((GXTexMapID)i, i * kSize[size], size, i * kSize[size] + 0x80000, - size); - } - } -} - -/* 803CD8A0-803CD8B0 02A9C0 0010+00 1/1 0/0 0/0 .data NullTexData */ -SECTION_DATA static u8 NullTexData[16] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; - -/* 803CD8B0-803CD8E0 02A9D0 0030+00 1/1 0/0 0/0 .data j3dIdentityMtx */ -SECTION_DATA static Mtx j3dIdentityMtx = { - 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, -}; - -/* 803100BC-8031073C 30A9FC 0680+00 0/0 3/3 0/0 .text drawInit__6J3DSysFv */ -void J3DSys::drawInit() { - GXInvalidateVtxCache(); - GXSetCurrentMtx(GX_PNMTX0); - GXSetCullMode(GX_CULL_BACK); - GXSetCoPlanar(GX_FALSE); - GXSetClipMode(GX_CLIP_ENABLE); - GXSetColorUpdate(GX_TRUE); - GXSetDither(GX_TRUE); - GXSetBlendMode(GX_BM_BLEND, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_NOOP); - GXSetAlphaCompare(GX_ALWAYS, 0, GX_AOP_AND, GX_ALWAYS, 0); - GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); - GXSetZCompLoc(GX_TRUE); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR1, GX_CLR_RGBA, GX_RGBA8, 0); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_CLR_RGBA, GX_RGBA4, 7); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX1, GX_CLR_RGBA, GX_RGBA4, 7); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX2, GX_CLR_RGBA, GX_RGBA4, 7); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX3, GX_CLR_RGBA, GX_RGBA4, 7); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX4, GX_CLR_RGBA, GX_RGBA4, 7); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX5, GX_CLR_RGBA, GX_RGBA4, 7); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX6, GX_CLR_RGBA, GX_RGBA4, 7); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX7, GX_CLR_RGBA, GX_RGBA4, 7); - - GXSetNumIndStages(0); - reinitTexture(); - - GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE2, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE3, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE4, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE5, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE6, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE7, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE8, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE9, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE10, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE11, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE12, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE13, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE14, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE15, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - - for (u32 i = 0; i < 10; i++) - GXLoadTexMtxImm(j3dIdentityMtx, GX_TEXMTX0 + i * 3, GX_MTX3x4); - - Mtx23 indTexMtx = { - {0.5f, 0.0f, 0.0f}, - {0.0f, 0.5f, 0.0f}, - }; - - u8 i; - for (i = 0; i < 3; i++) - GXSetIndTexMtx((GXIndTexMtxID)(GX_ITM_0 + i), (f32*)indTexMtx, 1); - - GXSetChanMatColor(GX_COLOR0A0, j3dDefaultColInfo); - GXSetChanMatColor(GX_COLOR1A1, j3dDefaultColInfo); - - GXSetNumChans(data_804563C8); - GXSetNumTexGens(1); - GXSetNumTevStages(1); - GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_CLAMP, GX_AF_NONE); - GXSetChanCtrl(GX_COLOR1A1, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_CLAMP, GX_AF_NONE); - - for (i = 0; i < GX_MAX_TEXMAP; i++) - GXSetTexCoordGen2((GXTexCoordID)i, (GXTexGenType)j3dDefaultTexCoordInfo[i].mTexGenType, - (GXTexGenSrc)j3dDefaultTexCoordInfo[i].mTexGenSrc, - j3dDefaultTexCoordInfo[i].mTexGenMtx, GX_FALSE, GX_PTIDENTITY); - - for (i = 0; i < GX_MAX_INDTEXSTAGE; i++) - GXSetIndTexCoordScale((GXIndTexStageID)i, GX_ITS_1, GX_ITS_1); - - for (i = 0; i < GX_MAX_TEVREG; i++) - GXSetTevKColor((GXTevKColorID)i, j3dDefaultTevKColor); - - for (i = 0; i < GX_MAX_TEVREG; i++) - GXSetTevColorS10((GXTevRegID)i, j3dDefaultTevColor); - - for (i = 0; i < GX_MAX_TEVSTAGE; i++) { - GXSetTevColorIn((GXTevStageID)i, GX_CC_RASC, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); - GXSetTevColorOp((GXTevStageID)i, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, - GX_TEVPREV); - GXSetTevAlphaIn((GXTevStageID)i, GX_CA_RASA, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); - GXSetTevAlphaOp((GXTevStageID)i, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, - GX_TEVPREV); - } - - for (i = 0; i < GX_MAX_TEVSTAGE; i++) - GXSetTevSwapMode((GXTevStageID)i, GX_TEV_SWAP0, GX_TEV_SWAP0); - - GXSetTevSwapModeTable(GX_TEV_SWAP0, GX_CH_RED, GX_CH_GREEN, GX_CH_BLUE, GX_CH_ALPHA); - GXSetTevSwapModeTable(GX_TEV_SWAP1, GX_CH_RED, GX_CH_RED, GX_CH_RED, GX_CH_ALPHA); - GXSetTevSwapModeTable(GX_TEV_SWAP2, GX_CH_GREEN, GX_CH_GREEN, GX_CH_GREEN, GX_CH_ALPHA); - GXSetTevSwapModeTable(GX_TEV_SWAP3, GX_CH_BLUE, GX_CH_BLUE, GX_CH_BLUE, GX_CH_ALPHA); - - for (i = 0; i < GX_MAX_TEVSTAGE; i++) - GXSetTevIndirect((GXTevStageID)i, GX_INDTEXSTAGE0, GX_ITF_8, GX_ITB_NONE, GX_ITM_OFF, - GX_ITW_OFF, GX_ITW_OFF, GX_FALSE, GX_FALSE, GX_ITBA_OFF); - - OSInitFastCast(); - setTexCacheRegion(GX_TEXCACHE_32K); -} - -/* 8031073C-8031079C 30B07C 0060+00 0/0 16/16 6/6 .text reinitGX__6J3DSysFv */ -void J3DSys::reinitGX() { - reinitGenMode(); - reinitLighting(); - reinitTransform(); - reinitTexture(); - reinitTevStages(); - reinitIndStages(); - reinitPixelProc(); - GXFlush(); -} - -/* 8031079C-803107E8 30B0DC 004C+00 1/1 0/0 0/0 .text reinitGenMode__6J3DSysFv */ -void J3DSys::reinitGenMode() { - GXSetNumChans(0); - GXSetNumTexGens(1); - GXSetNumTevStages(1); - GXSetNumIndStages(0); - GXSetCullMode(GX_CULL_BACK); - GXSetCoPlanar(GX_FALSE); -} - -/* ############################################################################################## */ -/* 80450950-80450954 0003D0 0004+00 2/2 0/0 0/0 .sdata ColorBlack */ -SECTION_SDATA static GXColor ColorBlack = {0x00, 0x00, 0x00, 0x00}; - -/* 80450954-80450958 0003D4 0004+00 2/2 0/0 0/0 .sdata ColorWhite */ -SECTION_SDATA static GXColor ColorWhite = {0xFF, 0xFF, 0xFF, 0xFF}; - -/* 803107E8-80310894 30B128 00AC+00 1/1 0/0 0/0 .text reinitLighting__6J3DSysFv */ -void J3DSys::reinitLighting() { - GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_NONE, - GX_AF_NONE); - GXSetChanCtrl(GX_COLOR1A1, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_NONE, - GX_AF_NONE); - GXSetChanAmbColor(GX_COLOR0A0, ColorBlack); - GXSetChanAmbColor(GX_COLOR1A1, ColorBlack); - GXSetChanMatColor(GX_COLOR0A0, ColorWhite); - GXSetChanMatColor(GX_COLOR1A1, ColorWhite); -} - -/* 80310894-80310998 30B1D4 0104+00 1/1 0/0 0/0 .text reinitTransform__6J3DSysFv */ -void J3DSys::reinitTransform() { - GXSetCurrentMtx(GX_PNMTX0); - GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); - GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX1, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); - GXSetTexCoordGen2(GX_TEXCOORD2, GX_TG_MTX2x4, GX_TG_TEX2, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); - GXSetTexCoordGen2(GX_TEXCOORD3, GX_TG_MTX2x4, GX_TG_TEX3, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); - GXSetTexCoordGen2(GX_TEXCOORD4, GX_TG_MTX2x4, GX_TG_TEX4, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); - GXSetTexCoordGen2(GX_TEXCOORD5, GX_TG_MTX2x4, GX_TG_TEX5, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); - GXSetTexCoordGen2(GX_TEXCOORD6, GX_TG_MTX2x4, GX_TG_TEX6, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); - GXSetTexCoordGen2(GX_TEXCOORD7, GX_TG_MTX2x4, GX_TG_TEX7, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); -} - -/* 80310998-80310A3C 30B2D8 00A4+00 2/2 0/0 0/0 .text reinitTexture__6J3DSysFv */ -void J3DSys::reinitTexture() { - GXTexObj texObj; - GXInitTexObj(&texObj, NullTexData, 4, 4, GX_TF_IA8, GX_CLAMP, GX_CLAMP, GX_FALSE); - GXLoadTexObj(&texObj, GX_TEXMAP0); - GXLoadTexObj(&texObj, GX_TEXMAP1); - GXLoadTexObj(&texObj, GX_TEXMAP2); - GXLoadTexObj(&texObj, GX_TEXMAP3); - GXLoadTexObj(&texObj, GX_TEXMAP4); - GXLoadTexObj(&texObj, GX_TEXMAP5); - GXLoadTexObj(&texObj, GX_TEXMAP6); - GXLoadTexObj(&texObj, GX_TEXMAP7); -} - -/* 80310A3C-80310D44 30B37C 0308+00 1/1 0/0 0/0 .text reinitTevStages__6J3DSysFv */ -void J3DSys::reinitTevStages() { - GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE2, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE3, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE4, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE5, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE6, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE7, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE8, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE9, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE10, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE11, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE12, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE13, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE14, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - GXSetTevOrder(GX_TEVSTAGE15, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); - - GXSetTevColor(GX_TEVREG0, ColorWhite); - GXSetTevColor(GX_TEVREG1, ColorWhite); - GXSetTevColor(GX_TEVREG2, ColorWhite); - GXSetTevKColor(GX_KCOLOR0, ColorWhite); - GXSetTevKColor(GX_KCOLOR1, ColorWhite); - GXSetTevKColor(GX_KCOLOR2, ColorWhite); - GXSetTevKColor(GX_KCOLOR3, ColorWhite); - - for (u32 i = 0; i < GX_MAX_TEVSTAGE; i++) { - GXSetTevColorIn((GXTevStageID)i, GX_CC_RASC, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); - GXSetTevColorOp((GXTevStageID)i, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, - GX_TEVPREV); - GXSetTevAlphaIn((GXTevStageID)i, GX_CA_RASA, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); - GXSetTevAlphaOp((GXTevStageID)i, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, - GX_TEVPREV); - GXSetTevKColorSel((GXTevStageID)i, GX_TEV_KCSEL_1_4); - GXSetTevKAlphaSel((GXTevStageID)i, GX_TEV_KASEL_1); - GXSetTevSwapMode((GXTevStageID)i, GX_TEV_SWAP0, GX_TEV_SWAP0); - } - - GXSetTevSwapModeTable(GX_TEV_SWAP0, GX_CH_RED, GX_CH_GREEN, GX_CH_BLUE, GX_CH_ALPHA); - GXSetTevSwapModeTable(GX_TEV_SWAP1, GX_CH_RED, GX_CH_RED, GX_CH_RED, GX_CH_ALPHA); - GXSetTevSwapModeTable(GX_TEV_SWAP2, GX_CH_GREEN, GX_CH_GREEN, GX_CH_GREEN, GX_CH_ALPHA); - GXSetTevSwapModeTable(GX_TEV_SWAP3, GX_CH_BLUE, GX_CH_BLUE, GX_CH_BLUE, GX_CH_ALPHA); - GXSetAlphaCompare(GX_ALWAYS, 0, GX_AOP_AND, GX_ALWAYS, 0); -} - -/* ############################################################################################## */ -/* 803CD8E0-803CD8F8 02AA00 0018+00 1/1 0/0 0/0 .data IndMtx */ -SECTION_DATA static Mtx23 IndMtx = {0.5f, 0.0f, 0.0f, 0.0f, 0.5f, 0.0f}; - -/* 80310D44-80310E3C 30B684 00F8+00 1/1 0/0 0/0 .text reinitIndStages__6J3DSysFv */ -void J3DSys::reinitIndStages() { - for (u32 i = 0; i < GX_MAX_TEVSTAGE; i++) { - GXSetTevDirect((GXTevStageID)i); - } - - GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD0, GX_TEXMAP0); - GXSetIndTexOrder(GX_INDTEXSTAGE1, GX_TEXCOORD1, GX_TEXMAP1); - GXSetIndTexOrder(GX_INDTEXSTAGE2, GX_TEXCOORD2, GX_TEXMAP2); - GXSetIndTexOrder(GX_INDTEXSTAGE3, GX_TEXCOORD3, GX_TEXMAP3); - GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); - GXSetIndTexCoordScale(GX_INDTEXSTAGE1, GX_ITS_1, GX_ITS_1); - GXSetIndTexCoordScale(GX_INDTEXSTAGE2, GX_ITS_1, GX_ITS_1); - GXSetIndTexCoordScale(GX_INDTEXSTAGE3, GX_ITS_1, GX_ITS_1); - GXSetIndTexMtx(GX_ITM_0, (f32*)IndMtx, 1); - GXSetIndTexMtx(GX_ITM_1, (f32*)IndMtx, 1); - GXSetIndTexMtx(GX_ITM_2, (f32*)IndMtx, 1); -} - -/* 80310E3C-80310ED0 30B77C 0094+00 1/1 0/0 0/0 .text reinitPixelProc__6J3DSysFv */ -void J3DSys::reinitPixelProc() { - GXSetBlendMode(GX_BM_NONE, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_CLEAR); - GXSetColorUpdate(GX_TRUE); - GXSetAlphaUpdate(GX_FALSE); - GXSetDither(GX_TRUE); - GXSetFog(GX_FOG_NONE, 0.0f, 1.0f, 0.1f, 1.0f, ColorBlack); - GXSetFogRangeAdj(GX_FALSE, 0, NULL); - GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); - GXSetZCompLoc(GX_TRUE); -} - -/* ############################################################################################## */ -/* 80451598-804515A0 000A98 0004+04 0/0 1/1 0/0 .sbss j3dDefaultViewNo */ -u32 j3dDefaultViewNo; +// +// Generated By: dol2asm +// Translation Unit: J3DSys +// + +#include "JSystem/J3DGraphBase/J3DSys.h" + +#include "dol2asm.h" +#include "dolphin/gx/GXPixel.h" +#include "dolphin/os.h" +#include "dolphin/types.h" +#include "global.h" + +#include "JSystem/J3DGraphBase/J3DTevs.h" + +#include "JSystem/J3DGraphBase/J3DTexture.h" +#include "JSystem/J3DGraphBase/J3DGD.h" + +// +// Forward References: +// + +extern void J3DFifoLoadTexCached(GXTexMapID, u32, GXTexCacheSize, u32, GXTexCacheSize); +extern void makeTexCoordTable(); +extern void makeAlphaCmpTable(); +extern void makeZModeTable(); +extern void makeTevSwapTable(); +extern "C" void GXInvalidateVtxCache(); + +extern "C" extern const GXColor j3dDefaultColInfo; +extern "C" extern u8 data_804563C8; +extern "C" extern const GXColorS10 j3dDefaultTevColor; +extern "C" extern const GXColor j3dDefaultTevKColor; + +// +// Declarations: +// + +/* ############################################################################################## */ +/* 80434AC8-80434BE4 0617E8 011C+00 1/1 151/151 486/486 .bss j3dSys */ +J3DSys j3dSys; + +/* 80434BE4-80434C14 061904 0030+00 0/0 17/17 154/154 .bss mCurrentMtx__6J3DSys */ +Mtx J3DSys::mCurrentMtx; + +/* 80434C14-80434C20 061934 000C+00 0/0 6/6 0/0 .bss mCurrentS__6J3DSys */ +Vec J3DSys::mCurrentS; + +/* 80434C20-80434C2C 061940 000C+00 0/0 5/5 0/0 .bss mParentS__6J3DSys */ +Vec J3DSys::mParentS; + +/* 80434C2C-80434C70 06194C 0040+04 1/1 17/17 0/0 .bss sTexCoordScaleTable__6J3DSys */ +J3DTexCoordScaleInfo J3DSys::sTexCoordScaleTable[8]; + +/* 8030FDE8-8030FEC0 30A728 00D8+00 1/1 0/0 0/0 .text __ct__6J3DSysFv */ +J3DSys::J3DSys() { + makeTexCoordTable(); + makeTevSwapTable(); + makeAlphaCmpTable(); + makeZModeTable(); + + mFlags = 0; + MTXIdentity(mViewMtx); + mDrawMode = 1; + mMaterialMode = 0; + mModel = NULL; + mShape = NULL; + for (u32 i = 0; i < ARRAY_SIZE(mDrawBuffer); i++) + mDrawBuffer[i] = NULL; + mTexture = NULL; + mMatPacket = NULL; + mShapePacket = NULL; + mModelDrawMtx = NULL; + mModelNrmMtx = NULL; + mVtxPos = NULL; + mVtxNrm = NULL; + mVtxCol = NULL; + + for (u32 i = 0; i < 8; i++) { + sTexCoordScaleTable[i].field_0x00 = 1; + sTexCoordScaleTable[i].field_0x02 = 1; + sTexCoordScaleTable[i].field_0x04 = 0; + sTexCoordScaleTable[i].field_0x06 = 0; + } +} + +/* 8030FEC0-8030FEE4 30A800 0024+00 0/0 1/1 0/0 .text loadPosMtxIndx__6J3DSysCFiUs */ +void J3DSys::loadPosMtxIndx(int addr, u16 indx) const { + J3DFifoLoadIndx(GX_CMD_LOAD_INDX_A, indx, 0xB000 | ((u16)(addr * 0x0C))); +} + +/* 8030FEE4-8030FF0C 30A824 0028+00 0/0 1/1 0/0 .text loadNrmMtxIndx__6J3DSysCFiUs */ +void J3DSys::loadNrmMtxIndx(int addr, u16 indx) const { + J3DFifoLoadIndx(GX_CMD_LOAD_INDX_B, indx, 0x8000 | ((u16)((addr * 0x09) + 0x400))); +} + +/* 8030FF0C-803100BC 30A84C 01B0+00 1/1 0/0 0/0 .text setTexCacheRegion__6J3DSysF15_GXTexCacheSize + */ +void J3DSys::setTexCacheRegion(GXTexCacheSize size) { + const u32 kSize[] = { + 0x00008000, + 0x00020000, + 0x00080000, + 0x00000000, + }; + const u32 kRegionNum[] = {8, 4, 1, 0}; + + u32 regionNum = kRegionNum[size]; + mTexCacheRegionNum = regionNum; + + if (!!(mFlags & 0x80000000)) { + for (u32 i = 0; i < regionNum; i++) { + if (!!(i & 1)) { + GXInitTexCacheRegion(&mTexCacheRegion[i], GX_FALSE, i * kSize[size] + 0x80000, size, + i * kSize[size], size); + J3DFifoLoadTexCached((GXTexMapID)i, i * kSize[size] + 0x80000, size, + i * kSize[size], size); + } else { + GXInitTexCacheRegion(&mTexCacheRegion[i], GX_FALSE, i * kSize[size], size, + i * kSize[size] + 0x80000, size); + J3DFifoLoadTexCached((GXTexMapID)i, i * kSize[size], size, + i * kSize[size] + 0x80000, size); + } + } + } else { + for (u32 i = 0; i < regionNum; i++) { + GXInitTexCacheRegion(&mTexCacheRegion[i], GX_FALSE, i * kSize[size], size, + i * kSize[size] + 0x80000, size); + J3DFifoLoadTexCached((GXTexMapID)i, i * kSize[size], size, i * kSize[size] + 0x80000, + size); + } + } +} + +/* 803CD8A0-803CD8B0 02A9C0 0010+00 1/1 0/0 0/0 .data NullTexData */ +SECTION_DATA static u8 NullTexData[16] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; + +/* 803CD8B0-803CD8E0 02A9D0 0030+00 1/1 0/0 0/0 .data j3dIdentityMtx */ +SECTION_DATA static Mtx j3dIdentityMtx = { + 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, +}; + +/* 803100BC-8031073C 30A9FC 0680+00 0/0 3/3 0/0 .text drawInit__6J3DSysFv */ +void J3DSys::drawInit() { + GXInvalidateVtxCache(); + GXSetCurrentMtx(GX_PNMTX0); + GXSetCullMode(GX_CULL_BACK); + GXSetCoPlanar(GX_FALSE); + GXSetClipMode(GX_CLIP_ENABLE); + GXSetColorUpdate(GX_TRUE); + GXSetDither(GX_TRUE); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_NOOP); + GXSetAlphaCompare(GX_ALWAYS, 0, GX_AOP_AND, GX_ALWAYS, 0); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); + GXSetZCompLoc(GX_TRUE); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_NRM, GX_NRM_XYZ, GX_F32, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR0, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_CLR1, GX_CLR_RGBA, GX_RGBA8, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_CLR_RGBA, GX_RGBA4, 7); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX1, GX_CLR_RGBA, GX_RGBA4, 7); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX2, GX_CLR_RGBA, GX_RGBA4, 7); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX3, GX_CLR_RGBA, GX_RGBA4, 7); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX4, GX_CLR_RGBA, GX_RGBA4, 7); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX5, GX_CLR_RGBA, GX_RGBA4, 7); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX6, GX_CLR_RGBA, GX_RGBA4, 7); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX7, GX_CLR_RGBA, GX_RGBA4, 7); + + GXSetNumIndStages(0); + reinitTexture(); + + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE2, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE3, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE4, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE5, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE6, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE7, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE8, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE9, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE10, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE11, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE12, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE13, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE14, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE15, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + + for (u32 i = 0; i < 10; i++) + GXLoadTexMtxImm(j3dIdentityMtx, GX_TEXMTX0 + i * 3, GX_MTX3x4); + + Mtx23 indTexMtx = { + {0.5f, 0.0f, 0.0f}, + {0.0f, 0.5f, 0.0f}, + }; + + u8 i; + for (i = 0; i < 3; i++) + GXSetIndTexMtx((GXIndTexMtxID)(GX_ITM_0 + i), (f32*)indTexMtx, 1); + + GXSetChanMatColor(GX_COLOR0A0, j3dDefaultColInfo); + GXSetChanMatColor(GX_COLOR1A1, j3dDefaultColInfo); + + GXSetNumChans(data_804563C8); + GXSetNumTexGens(1); + GXSetNumTevStages(1); + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_CLAMP, GX_AF_NONE); + GXSetChanCtrl(GX_COLOR1A1, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_CLAMP, GX_AF_NONE); + + for (i = 0; i < GX_MAX_TEXMAP; i++) + GXSetTexCoordGen2((GXTexCoordID)i, (GXTexGenType)j3dDefaultTexCoordInfo[i].mTexGenType, + (GXTexGenSrc)j3dDefaultTexCoordInfo[i].mTexGenSrc, + j3dDefaultTexCoordInfo[i].mTexGenMtx, GX_FALSE, GX_PTIDENTITY); + + for (i = 0; i < GX_MAX_INDTEXSTAGE; i++) + GXSetIndTexCoordScale((GXIndTexStageID)i, GX_ITS_1, GX_ITS_1); + + for (i = 0; i < GX_MAX_TEVREG; i++) + GXSetTevKColor((GXTevKColorID)i, j3dDefaultTevKColor); + + for (i = 0; i < GX_MAX_TEVREG; i++) + GXSetTevColorS10((GXTevRegID)i, j3dDefaultTevColor); + + for (i = 0; i < GX_MAX_TEVSTAGE; i++) { + GXSetTevColorIn((GXTevStageID)i, GX_CC_RASC, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); + GXSetTevColorOp((GXTevStageID)i, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, + GX_TEVPREV); + GXSetTevAlphaIn((GXTevStageID)i, GX_CA_RASA, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp((GXTevStageID)i, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, + GX_TEVPREV); + } + + for (i = 0; i < GX_MAX_TEVSTAGE; i++) + GXSetTevSwapMode((GXTevStageID)i, GX_TEV_SWAP0, GX_TEV_SWAP0); + + GXSetTevSwapModeTable(GX_TEV_SWAP0, GX_CH_RED, GX_CH_GREEN, GX_CH_BLUE, GX_CH_ALPHA); + GXSetTevSwapModeTable(GX_TEV_SWAP1, GX_CH_RED, GX_CH_RED, GX_CH_RED, GX_CH_ALPHA); + GXSetTevSwapModeTable(GX_TEV_SWAP2, GX_CH_GREEN, GX_CH_GREEN, GX_CH_GREEN, GX_CH_ALPHA); + GXSetTevSwapModeTable(GX_TEV_SWAP3, GX_CH_BLUE, GX_CH_BLUE, GX_CH_BLUE, GX_CH_ALPHA); + + for (i = 0; i < GX_MAX_TEVSTAGE; i++) + GXSetTevIndirect((GXTevStageID)i, GX_INDTEXSTAGE0, GX_ITF_8, GX_ITB_NONE, GX_ITM_OFF, + GX_ITW_OFF, GX_ITW_OFF, GX_FALSE, GX_FALSE, GX_ITBA_OFF); + + OSInitFastCast(); + setTexCacheRegion(GX_TEXCACHE_32K); +} + +/* 8031073C-8031079C 30B07C 0060+00 0/0 16/16 6/6 .text reinitGX__6J3DSysFv */ +void J3DSys::reinitGX() { + reinitGenMode(); + reinitLighting(); + reinitTransform(); + reinitTexture(); + reinitTevStages(); + reinitIndStages(); + reinitPixelProc(); + GXFlush(); +} + +/* 8031079C-803107E8 30B0DC 004C+00 1/1 0/0 0/0 .text reinitGenMode__6J3DSysFv */ +void J3DSys::reinitGenMode() { + GXSetNumChans(0); + GXSetNumTexGens(1); + GXSetNumTevStages(1); + GXSetNumIndStages(0); + GXSetCullMode(GX_CULL_BACK); + GXSetCoPlanar(GX_FALSE); +} + +/* ############################################################################################## */ +/* 80450950-80450954 0003D0 0004+00 2/2 0/0 0/0 .sdata ColorBlack */ +SECTION_SDATA static GXColor ColorBlack = {0x00, 0x00, 0x00, 0x00}; + +/* 80450954-80450958 0003D4 0004+00 2/2 0/0 0/0 .sdata ColorWhite */ +SECTION_SDATA static GXColor ColorWhite = {0xFF, 0xFF, 0xFF, 0xFF}; + +/* 803107E8-80310894 30B128 00AC+00 1/1 0/0 0/0 .text reinitLighting__6J3DSysFv */ +void J3DSys::reinitLighting() { + GXSetChanCtrl(GX_COLOR0A0, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_NONE, + GX_AF_NONE); + GXSetChanCtrl(GX_COLOR1A1, GX_FALSE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_NONE, + GX_AF_NONE); + GXSetChanAmbColor(GX_COLOR0A0, ColorBlack); + GXSetChanAmbColor(GX_COLOR1A1, ColorBlack); + GXSetChanMatColor(GX_COLOR0A0, ColorWhite); + GXSetChanMatColor(GX_COLOR1A1, ColorWhite); +} + +/* 80310894-80310998 30B1D4 0104+00 1/1 0/0 0/0 .text reinitTransform__6J3DSysFv */ +void J3DSys::reinitTransform() { + GXSetCurrentMtx(GX_PNMTX0); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); + GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX1, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); + GXSetTexCoordGen2(GX_TEXCOORD2, GX_TG_MTX2x4, GX_TG_TEX2, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); + GXSetTexCoordGen2(GX_TEXCOORD3, GX_TG_MTX2x4, GX_TG_TEX3, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); + GXSetTexCoordGen2(GX_TEXCOORD4, GX_TG_MTX2x4, GX_TG_TEX4, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); + GXSetTexCoordGen2(GX_TEXCOORD5, GX_TG_MTX2x4, GX_TG_TEX5, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); + GXSetTexCoordGen2(GX_TEXCOORD6, GX_TG_MTX2x4, GX_TG_TEX6, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); + GXSetTexCoordGen2(GX_TEXCOORD7, GX_TG_MTX2x4, GX_TG_TEX7, GX_IDENTITY, GX_FALSE, GX_PTIDENTITY); +} + +/* 80310998-80310A3C 30B2D8 00A4+00 2/2 0/0 0/0 .text reinitTexture__6J3DSysFv */ +void J3DSys::reinitTexture() { + GXTexObj texObj; + GXInitTexObj(&texObj, NullTexData, 4, 4, GX_TF_IA8, GX_CLAMP, GX_CLAMP, GX_FALSE); + GXLoadTexObj(&texObj, GX_TEXMAP0); + GXLoadTexObj(&texObj, GX_TEXMAP1); + GXLoadTexObj(&texObj, GX_TEXMAP2); + GXLoadTexObj(&texObj, GX_TEXMAP3); + GXLoadTexObj(&texObj, GX_TEXMAP4); + GXLoadTexObj(&texObj, GX_TEXMAP5); + GXLoadTexObj(&texObj, GX_TEXMAP6); + GXLoadTexObj(&texObj, GX_TEXMAP7); +} + +/* 80310A3C-80310D44 30B37C 0308+00 1/1 0/0 0/0 .text reinitTevStages__6J3DSysFv */ +void J3DSys::reinitTevStages() { + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE1, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE2, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE3, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE4, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE5, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE6, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE7, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE8, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE9, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE10, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE11, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE12, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE13, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE14, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + GXSetTevOrder(GX_TEVSTAGE15, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR_NULL); + + GXSetTevColor(GX_TEVREG0, ColorWhite); + GXSetTevColor(GX_TEVREG1, ColorWhite); + GXSetTevColor(GX_TEVREG2, ColorWhite); + GXSetTevKColor(GX_KCOLOR0, ColorWhite); + GXSetTevKColor(GX_KCOLOR1, ColorWhite); + GXSetTevKColor(GX_KCOLOR2, ColorWhite); + GXSetTevKColor(GX_KCOLOR3, ColorWhite); + + for (u32 i = 0; i < GX_MAX_TEVSTAGE; i++) { + GXSetTevColorIn((GXTevStageID)i, GX_CC_RASC, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO); + GXSetTevColorOp((GXTevStageID)i, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, + GX_TEVPREV); + GXSetTevAlphaIn((GXTevStageID)i, GX_CA_RASA, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp((GXTevStageID)i, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, + GX_TEVPREV); + GXSetTevKColorSel((GXTevStageID)i, GX_TEV_KCSEL_1_4); + GXSetTevKAlphaSel((GXTevStageID)i, GX_TEV_KASEL_1); + GXSetTevSwapMode((GXTevStageID)i, GX_TEV_SWAP0, GX_TEV_SWAP0); + } + + GXSetTevSwapModeTable(GX_TEV_SWAP0, GX_CH_RED, GX_CH_GREEN, GX_CH_BLUE, GX_CH_ALPHA); + GXSetTevSwapModeTable(GX_TEV_SWAP1, GX_CH_RED, GX_CH_RED, GX_CH_RED, GX_CH_ALPHA); + GXSetTevSwapModeTable(GX_TEV_SWAP2, GX_CH_GREEN, GX_CH_GREEN, GX_CH_GREEN, GX_CH_ALPHA); + GXSetTevSwapModeTable(GX_TEV_SWAP3, GX_CH_BLUE, GX_CH_BLUE, GX_CH_BLUE, GX_CH_ALPHA); + GXSetAlphaCompare(GX_ALWAYS, 0, GX_AOP_AND, GX_ALWAYS, 0); +} + +/* ############################################################################################## */ +/* 803CD8E0-803CD8F8 02AA00 0018+00 1/1 0/0 0/0 .data IndMtx */ +SECTION_DATA static Mtx23 IndMtx = {0.5f, 0.0f, 0.0f, 0.0f, 0.5f, 0.0f}; + +/* 80310D44-80310E3C 30B684 00F8+00 1/1 0/0 0/0 .text reinitIndStages__6J3DSysFv */ +void J3DSys::reinitIndStages() { + for (u32 i = 0; i < GX_MAX_TEVSTAGE; i++) { + GXSetTevDirect((GXTevStageID)i); + } + + GXSetIndTexOrder(GX_INDTEXSTAGE0, GX_TEXCOORD0, GX_TEXMAP0); + GXSetIndTexOrder(GX_INDTEXSTAGE1, GX_TEXCOORD1, GX_TEXMAP1); + GXSetIndTexOrder(GX_INDTEXSTAGE2, GX_TEXCOORD2, GX_TEXMAP2); + GXSetIndTexOrder(GX_INDTEXSTAGE3, GX_TEXCOORD3, GX_TEXMAP3); + GXSetIndTexCoordScale(GX_INDTEXSTAGE0, GX_ITS_1, GX_ITS_1); + GXSetIndTexCoordScale(GX_INDTEXSTAGE1, GX_ITS_1, GX_ITS_1); + GXSetIndTexCoordScale(GX_INDTEXSTAGE2, GX_ITS_1, GX_ITS_1); + GXSetIndTexCoordScale(GX_INDTEXSTAGE3, GX_ITS_1, GX_ITS_1); + GXSetIndTexMtx(GX_ITM_0, (f32*)IndMtx, 1); + GXSetIndTexMtx(GX_ITM_1, (f32*)IndMtx, 1); + GXSetIndTexMtx(GX_ITM_2, (f32*)IndMtx, 1); +} + +/* 80310E3C-80310ED0 30B77C 0094+00 1/1 0/0 0/0 .text reinitPixelProc__6J3DSysFv */ +void J3DSys::reinitPixelProc() { + GXSetBlendMode(GX_BM_NONE, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_CLEAR); + GXSetColorUpdate(GX_TRUE); + GXSetAlphaUpdate(GX_FALSE); + GXSetDither(GX_TRUE); + GXSetFog(GX_FOG_NONE, 0.0f, 1.0f, 0.1f, 1.0f, ColorBlack); + GXSetFogRangeAdj(GX_FALSE, 0, NULL); + GXSetZMode(GX_TRUE, GX_LEQUAL, GX_TRUE); + GXSetZCompLoc(GX_TRUE); +} + +/* ############################################################################################## */ +/* 80451598-804515A0 000A98 0004+04 0/0 1/1 0/0 .sbss j3dDefaultViewNo */ +u32 j3dDefaultViewNo; diff --git a/libs/JSystem/J3DGraphBase/J3DTevs.cpp b/libs/JSystem/J3DGraphBase/J3DTevs.cpp index 917edb672f..82327d9b80 100644 --- a/libs/JSystem/J3DGraphBase/J3DTevs.cpp +++ b/libs/JSystem/J3DGraphBase/J3DTevs.cpp @@ -1,566 +1,565 @@ -// -// J3DTevs -// - -#include "JSystem/J3DGraphBase/J3DTevs.h" -#include "JSystem/J3DGraphBase/J3DGD.h" -#include "JSystem/J3DGraphBase/J3DMatBlock.h" -#include "JSystem/J3DGraphBase/J3DSys.h" -#include "JSystem/J3DGraphBase/J3DTexture.h" -#include "JSystem/J3DGraphBase/J3DTransform.h" - -static void J3DGDLoadTexMtxImm(f32 (*)[4], u32, _GXTexMtxType); -static void J3DGDLoadPostTexMtxImm(f32 (*)[4], u32); - -/* 80323590-80323644 31DED0 00B4+00 0/0 3/3 0/0 .text load__11J3DLightObjCFUl */ -void J3DLightObj::load(u32 lightIdx) const { - GDOverflowCheck(0x48); - J3DGDSetLightPos(GXLightID(1 << lightIdx), mInfo.mLightPosition.x, mInfo.mLightPosition.y, mInfo.mLightPosition.z); - J3DGDSetLightAttn(GXLightID(1 << lightIdx), mInfo.mCosAtten.x, mInfo.mCosAtten.y, mInfo.mCosAtten.z, mInfo.mDistAtten.x, mInfo.mDistAtten.y, mInfo.mDistAtten.z); - J3DGDSetLightColor(GXLightID(1 << lightIdx), mInfo.mColor); - J3DGDSetLightDir(GXLightID(1 << lightIdx), mInfo.mLightDirection.x, mInfo.mLightDirection.y, mInfo.mLightDirection.z); -} - -/* 80323644-803238C4 31DF84 0280+00 0/0 3/3 0/0 .text loadTexCoordGens__FUlP11J3DTexCoord - */ -void loadTexCoordGens(u32 param_0, J3DTexCoord* param_1) { - GDOverflowCheck(param_0 * 8 + 10); - J3DGDWriteXFCmdHdr(0x1040, param_0); - for (int i = 0; i < param_0; i++) { - J3DGDSetTexCoordGen( - GXTexGenType(param_1[i].getTexGenType()), - GXTexGenSrc(param_1[i].getTexGenSrc()) - ); - } - J3DGDWriteXFCmdHdr(0x1050, param_0); - if (j3dSys.checkFlag(0x40000000)) { - for (int i = 0; i < param_0; i++) { - J3DGDWrite_u32(param_1[i].getTexGenMtx() == 60 ? 61 : i * 3); - } - } else { - for (int i = 0; i < param_0; i++) { - J3DGDWrite_u32(61); - } - } -} - -/* 803238C4-80323900 31E204 003C+00 0/0 6/6 0/0 .text load__9J3DTexMtxCFUl */ -void J3DTexMtx::load(u32 mtxIdx) const { - if (j3dSys.checkFlag(J3DSysFlag_PostTexMtx)) { - loadPostTexMtx(mtxIdx); - } else { - loadTexMtx(mtxIdx); - } -} - -/* 80323900-80323920 31E240 0020+00 0/0 2/2 0/0 .text calc__9J3DTexMtxFPA4_Cf */ -void J3DTexMtx::calc(f32 const (*param_0)[4]) { - calcTexMtx(param_0); -} - -/* 80323920-80323C0C 31E260 02EC+00 2/1 0/0 0/0 .text calcTexMtx__9J3DTexMtxFPA4_Cf */ -void J3DTexMtx::calcTexMtx(const Mtx param_0) { - Mtx44 mtx1; - Mtx44 mtx2; - - static Mtx qMtx = { - 0.5f, 0.0f, 0.5f, 0.0f, - 0.0f, -0.5f, 0.5f, 0.0f, - 0.0f, 0.0f, 1.0f, 0.0f, - }; - static Mtx qMtx2 = { - 0.5f, 0.0f, 0.0f, 0.5f, - 0.0f, -0.5f, 0.0f, 0.5f, - 0.0f, 0.0f, 1.0f, 0.0f, - }; - - u8 r28 = mTexMtxInfo.mInfo & 0x3f; - u32 r30 = (mTexMtxInfo.mInfo >> 7) & 1; - switch (r28) { - case 8: - case 9: - case 11: - if (r30 == 0) { - J3DGetTextureMtx(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); - } else if (r30 == 1) { - J3DGetTextureMtxMaya(mTexMtxInfo.mSRT, mtx2); - } - MTXConcat(mtx2, qMtx, mtx2); - J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mtx1); - MTXConcat(mtx1, param_0, mMtx); - break; - case 7: - if (r30 == 0) { - J3DGetTextureMtx(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx1); - } else if (r30 == 1) { - J3DGetTextureMtxMaya(mTexMtxInfo.mSRT, mtx1); - } - MTXConcat(mtx1, qMtx, mtx1); - MTXConcat(mtx1, param_0, mMtx); - break; - case 10: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); - } - MTXConcat(mtx2, qMtx2, mtx2); - J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mtx1); - MTXConcat(mtx1, param_0, mMtx); - break; - case 6: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx1); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx1); - } - MTXConcat(mtx1, qMtx2, mtx1); - MTXConcat(mtx1, param_0, mMtx); - break; - case 1: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx1); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx1); - } - MTXConcat(mtx1, param_0, mMtx); - break; - case 2: - case 3: - case 5: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); - } - J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mtx1); - MTXConcat(mtx1, param_0, mMtx); - break; - case 4: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); - } - J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mMtx); - break; - default: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mMtx); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mMtx); - } - break; - } -} - -/* 80323C0C-80323F64 31E54C 0358+00 1/0 2/2 0/0 .text calcPostTexMtx__9J3DTexMtxFPA4_Cf - */ -void J3DTexMtx::calcPostTexMtx(const Mtx param_0) { - Mtx44 mtx1; - Mtx44 mtx2; - - static Mtx qMtx = { - 0.5f, 0.0f, 0.5f, 0.0f, - 0.0f, -0.5f, 0.5f, 0.0f, - 0.0f, 0.0f, 1.0f, 0.0f, - }; - static Mtx qMtx2 = { - 0.5f, 0.0f, 0.0f, 0.5f, - 0.0f, -0.5f, 0.0f, 0.5f, - 0.0f, 0.0f, 1.0f, 0.0f, - }; - - u8 r29 = mTexMtxInfo.mInfo & 0x3f; - u32 r30 = (mTexMtxInfo.mInfo >> 7) & 1; - switch (r29) { - case 8: - case 11: - if (r30 == 0) { - J3DGetTextureMtx(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); - } else if (r30 == 1) { - J3DGetTextureMtxMaya(mTexMtxInfo.mSRT, mtx2); - } - MTXConcat(mtx2, qMtx, mtx2); - J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mtx1); - MTXConcat(mtx1, param_0, mMtx); - break; - case 9: - if (r30 == 0) { - J3DGetTextureMtx(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); - } else if (r30 == 1) { - J3DGetTextureMtxMaya(mTexMtxInfo.mSRT, mtx2); - } - MTXConcat(mtx2, qMtx, mtx2); - J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mMtx); - break; - case 7: - if (r30 == 0) { - J3DGetTextureMtx(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx1); - } else if (r30 == 1) { - J3DGetTextureMtxMaya(mTexMtxInfo.mSRT, mtx1); - } - MTXConcat(mtx1, qMtx, mMtx); - break; - case 10: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); - } - MTXConcat(mtx2, qMtx2, mtx2); - J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mtx1); - MTXConcat(mtx1, param_0, mMtx); - break; - case 6: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx1); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx1); - } - MTXConcat(mtx1, qMtx2, mMtx); - break; - case 1: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mMtx); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mMtx); - } - break; - case 2: - case 5: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); - } - J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mtx1); - MTXConcat(mtx1, param_0, mMtx); - break; - case 3: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); - } - J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mMtx); - break; - case 4: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); - } - J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mMtx); - break; - default: - if (r30 == 0) { - J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mMtx); - } else if (r30 == 1) { - J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mMtx); - } - break; - } -} - -/* 80323F64-80323F88 31E8A4 0024+00 0/0 1/1 0/0 .text isTexNoReg__FPv */ -bool isTexNoReg(void* param_0) { - u8 r31 = ((u8*)param_0)[1]; - if (r31 >= 0x80 && r31 <= 0xbb) { - return true; - } - return false; -} - -/* 80323F88-80323F94 31E8C8 000C+00 0/0 1/1 0/0 .text getTexNoReg__FPv */ -u16 getTexNoReg(void* param_0) { - return *(u32*)((u8*)param_0 + 1); -} - -/* 80323F94-8032413C 31E8D4 01A8+00 0/0 20/20 0/0 .text loadTexNo__FUlRCUs */ -void loadTexNo(u32 param_0, u16 const& param_1) { - ResTIMG* resTIMG = j3dSys.getTexture()->getResTIMG(param_1); - J3DSys::sTexCoordScaleTable[param_0].field_0x00 = resTIMG->width; - J3DSys::sTexCoordScaleTable[param_0].field_0x02 = resTIMG->height; - GDOverflowCheck(0x14); - J3DGDSetTexImgPtr(GXTexMapID(param_0), (u8*)resTIMG + resTIMG->imageOffset); - J3DGDSetTexImgAttr(GXTexMapID(param_0), resTIMG->width, resTIMG->height, GXTexFmt(resTIMG->format & 0x0f)); - J3DGDSetTexLookupMode(GXTexMapID(param_0), GXTexWrapMode(resTIMG->wrapS), GXTexWrapMode(resTIMG->wrapT), GXTexFilter(resTIMG->minFilter), GXTexFilter(resTIMG->magFilter), resTIMG->minLOD * 0.125f, resTIMG->maxLOD * 0.125f, resTIMG->LODBias * 0.01f, resTIMG->biasClamp, resTIMG->doEdgeLOD, GXAnisotropy(resTIMG->maxAnisotropy)); - if (resTIMG->indexTexture == true) { - GXTlutSize tlutSize = resTIMG->numColors > 16 ? GX_TLUT_256 : GX_TLUT_16; - GDOverflowCheck(0x14); - J3DGDLoadTlut((u8*)resTIMG + resTIMG->paletteOffset, (param_0 << 13) + 0xf0000, tlutSize); - J3DGDSetTexTlut(GXTexMapID(param_0), (param_0 << 13) + 0xf0000, GXTlutFmt(resTIMG->colorFormat)); - } -} - -/* 8032413C-80324160 31EA7C 0024+00 0/0 2/2 0/0 .text patchTexNo_PtrToIdx__FUlRCUs */ -void patchTexNo_PtrToIdx(u32 texID, u16 const& idx) { - J3DGDSetTexImgPtrRaw(GXTexMapID(texID), idx); -} - -/* 80324160-80324194 31EAA0 0034+00 0/0 2/2 0/0 .text loadNBTScale__FR11J3DNBTScale */ -void loadNBTScale(J3DNBTScale& param_0) { - if (param_0.mbHasScale == true) { - j3dSys.setNBTScale(¶m_0.mScale); - } else { - j3dSys.setNBTScale(NULL); - } -} - -/* ############################################################################################## */ -/* 803A1EC8-803A1EFC 02E528 0034+00 0/0 9/9 24/24 .rodata j3dDefaultLightInfo */ -extern const J3DLightInfo j3dDefaultLightInfo = { - 0.0f, 0.0f, 0.0f, - 0.0f, -1.0f, 0.0f, - 0xff, 0xff, 0xff, 0xff, - 1.0f, 0.0f, 0.0f, - 1.0f, 0.0f, 0.0f, -}; - -/* 803A1EFC-803A1F1C 02E55C 0020+00 0/0 5/5 0/0 .rodata j3dDefaultTexCoordInfo */ -extern J3DTexCoordInfo const j3dDefaultTexCoordInfo[8] = { - {GX_MTX2x4, GX_TG_TEX0, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX1, GX_IDENTITY, 0}, - {GX_MTX2x4, GX_TG_TEX2, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX3, GX_IDENTITY, 0}, - {GX_MTX2x4, GX_TG_TEX4, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX5, GX_IDENTITY, 0}, - {GX_MTX2x4, GX_TG_TEX6, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX7, GX_IDENTITY, 0}, -}; - -/* 803A1F1C-803A1F80 02E57C 0064+00 0/0 1/1 0/0 .rodata j3dDefaultTexMtxInfo */ -extern J3DTexMtxInfo const j3dDefaultTexMtxInfo = { - 0x01, - 0x00, - 0xFF, - 0xFF, - {0.0f, 0.0f, 0.0f}, - {1.0f, 1.0f, 0, 0.0f, 0.0f}, - {1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, - 1.0f}, -}; - -/* 803A1F80-803A1F9C 02E5E0 001C+00 0/0 2/2 0/0 .rodata j3dDefaultIndTexMtxInfo */ -extern J3DIndTexMtxInfo const j3dDefaultIndTexMtxInfo = { - 0.5f, 0.0f, 0.0f, - 0.0f, 0.5f, 0.0f, - 1 -}; - -/* 803A1F9C-803A1FB0 02E5FC 0014+00 0/0 1/1 0/0 .rodata j3dDefaultTevStageInfo */ -extern J3DTevStageInfo const j3dDefaultTevStageInfo = { - 0x04, 0x0A, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, - 0x05, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, -}; - -/* 803A1FB0-803A1FBC 02E610 000C+00 0/0 2/2 0/0 .rodata j3dDefaultIndTevStageInfo */ -extern J3DIndTevStageInfo const j3dDefaultIndTevStageInfo = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; - -/* 803A1FBC-803A1FE8 02E61C 002C+00 0/0 3/3 0/0 .rodata j3dDefaultFogInfo */ -extern J3DFogInfo const j3dDefaultFogInfo = { - 0x00, 0x00, 0x0140, 0.0f, 0.0f, 0.1f, 10000.0f, 0xFF, 0xFF, 0xFF, 0x00, - 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, -}; - -/* 803A1FE8-803A1FF8 02E648 0010+00 0/0 3/3 0/0 .rodata j3dDefaultNBTScaleInfo */ -extern J3DNBTScaleInfo const j3dDefaultNBTScaleInfo = { - 0x00, 1.0f, 1.0f, 1.0f, -}; - -/* 80434C98-80436A60 0619B8 1DC7+01 1/1 0/0 0/0 .bss j3dTexCoordTable */ -static u8 j3dTexCoordTable[7623 + 1 /* padding */]; - -/* 80324194-8032423C 31EAD4 00A8+00 0/0 1/1 0/0 .text makeTexCoordTable__Fv */ -void makeTexCoordTable() { - u8 texMtx[] = { - GX_TEXMTX0, - GX_TEXMTX1, - GX_TEXMTX2, - GX_TEXMTX3, - GX_TEXMTX4, - GX_TEXMTX5, - GX_TEXMTX6, - GX_TEXMTX7, - GX_TEXMTX8, - GX_TEXMTX9, - GX_IDENTITY, - }; - - u8* table = j3dTexCoordTable; - for (u32 i = 0; i < 11; i++) { - for (u32 j = 0; j < 21; j++) { - for (int k = 0; k < ARRAY_SIZE(texMtx); k++) { - u32 idx = j * 11 + i * 0xe7 + k; - table[idx * 3 + 0] = i; - table[idx * 3 + 1] = j; - table[idx * 3 + 2] = texMtx[k]; - } - } - } -} - -/* ############################################################################################## */ -/* 80436A60-80436E60 063780 0400+00 1/1 3/3 0/0 .bss j3dTevSwapTableTable */ -u8 j3dTevSwapTableTable[1024]; - -/* 80436E60-80437160 063B80 0300+00 1/1 2/2 0/0 .bss j3dAlphaCmpTable */ -u8 j3dAlphaCmpTable[768]; - -/* 8032423C-803242A8 31EB7C 006C+00 0/0 1/1 0/0 .text makeAlphaCmpTable__Fv */ -void makeAlphaCmpTable() { - u8* table = j3dAlphaCmpTable; - for (u32 i = 0; i < 8; i++) { - for (int j = 0; j < 4; j++) { - for (u32 k = 0; k < 8; k++) { - u32 idx = i * 32 + j * 8 + k; - table[idx * 3] = i; - table[idx * 3 + 1] = j; - table[idx * 3 + 2] = k; - } - } - } -} - -/* ############################################################################################## */ -/* 80437160-804371C0 063E80 0060+00 1/1 4/4 5/5 .bss j3dZModeTable */ -extern u8 j3dZModeTable[96]; -u8 j3dZModeTable[96]; - -/* 803242A8-80324314 31EBE8 006C+00 0/0 1/1 0/0 .text makeZModeTable__Fv */ -void makeZModeTable() { - u8* table = j3dZModeTable; - for (int i = 0; i < 2; i++) { - for (u32 j = 0; j < 8; j++) { - for (int k = 0; k < 2; k++) { - u32 idx = j * 2 + i * 16 + k; - table[idx * 3 + 0] = i; - table[idx * 3 + 1] = j; - table[idx * 3 + 2] = k; - } - } - } -} - -/* 80324314-80324358 31EC54 0044+00 0/0 1/1 0/0 .text makeTevSwapTable__Fv */ -void makeTevSwapTable() { - u8* table = j3dTevSwapTableTable; - int i = 0; - do { - table[0] = i >> 6; - table[1] = (i >> 4) & 3; - table[2] = (i >> 2) & 3; - table[3] = i & 3; - i++; - table += 4; - } while (i < 256); -} - -/* 80324358-803243BC 31EC98 0064+00 1/1 0/0 0/0 .text loadTexMtx__9J3DTexMtxCFUl */ -void J3DTexMtx::loadTexMtx(u32 param_0) const { - GDOverflowCheck(0x35); - J3DGDLoadTexMtxImm((MtxP)mMtx, param_0 * 3 + 30, (_GXTexMtxType)mTexMtxInfo.mProjection); -} - -/* 803243BC-8032441C 31ECFC 0060+00 1/1 0/0 0/0 .text loadPostTexMtx__9J3DTexMtxCFUl */ -void J3DTexMtx::loadPostTexMtx(u32 param_0) const { - GDOverflowCheck(0x35); - J3DGDLoadPostTexMtxImm((MtxP)mMtx, param_0 * 3 + 0x40); -} - -/* 8032441C-8032499C 31ED5C 0580+00 1/1 0/0 0/0 .text J3DGDLoadTexMtxImm__FPA4_fUl13_GXTexMtxType - */ -static void J3DGDLoadTexMtxImm(f32 (*param_1)[4], u32 param_2, _GXTexMtxType param_3) { - u16 addr = param_2 << 2; - u8 len = param_3 == GX_MTX2x4 ? 8 : 12; - J3DGDWriteXFCmdHdr(addr & 0xffff, len); - J3DGDWrite_f32(param_1[0][0]); - J3DGDWrite_f32(param_1[0][1]); - J3DGDWrite_f32(param_1[0][2]); - J3DGDWrite_f32(param_1[0][3]); - J3DGDWrite_f32(param_1[1][0]); - J3DGDWrite_f32(param_1[1][1]); - J3DGDWrite_f32(param_1[1][2]); - J3DGDWrite_f32(param_1[1][3]); - if (param_3 == GX_MTX3x4) { - J3DGDWrite_f32(param_1[2][0]); - J3DGDWrite_f32(param_1[2][1]); - J3DGDWrite_f32(param_1[2][2]); - J3DGDWrite_f32(param_1[2][3]); - } -} - -/* 8032499C-80324F08 31F2DC 056C+00 1/1 0/0 0/0 .text J3DGDLoadPostTexMtxImm__FPA4_fUl */ -static void J3DGDLoadPostTexMtxImm(f32 (*param_1)[4], u32 param_2) { - u16 addr = (param_2 - 0x40) * 4 + 0x500; - J3DGDWriteXFCmdHdr(addr, 12); - J3DGDWrite_f32(param_1[0][0]); - J3DGDWrite_f32(param_1[0][1]); - J3DGDWrite_f32(param_1[0][2]); - J3DGDWrite_f32(param_1[0][3]); - J3DGDWrite_f32(param_1[1][0]); - J3DGDWrite_f32(param_1[1][1]); - J3DGDWrite_f32(param_1[1][2]); - J3DGDWrite_f32(param_1[1][3]); - J3DGDWrite_f32(param_1[2][0]); - J3DGDWrite_f32(param_1[2][1]); - J3DGDWrite_f32(param_1[2][2]); - J3DGDWrite_f32(param_1[2][3]); -} - -/* ############################################################################################## */ -/* 804563C0-804563C4 0049C0 0004+00 0/0 4/4 0/0 .sdata2 j3dDefaultColInfo */ -extern const GXColor j3dDefaultColInfo = {0xFF, 0xFF, 0xFF, 0xFF}; - -/* 804563C4-804563C8 0049C4 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultAmbInfo */ -extern const u32 j3dDefaultAmbInfo = 0x32323232; - -/* 804563C8-804563CC 0049C8 0004+00 0/0 1/1 0/0 .sdata2 None */ -extern const u8 data_804563C8 = 0x01; - -/* 804563CC-804563D0 0049CC 0004+00 0/0 3/3 0/0 .sdata2 j3dDefaultTevOrderInfoNull */ -extern const J3DTevOrderInfo j3dDefaultTevOrderInfoNull = {0xFF, 0xFF, 0xFF, 0x00}; - -/* 804563D0-804563D4 0049D0 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultIndTexOrderNull */ -extern const J3DIndTexOrderInfo j3dDefaultIndTexOrderNull = {0xFF, 0xFF, 0x00, 0x00}; - -/* 804563D4-804563D8 0049D4 0004+00 0/0 5/5 0/0 .sdata2 j3dDefaultTevColor */ -extern const GXColorS10 j3dDefaultTevColor = {0xFF, 0xFF, 0xFF, 0xFF}; - -/* 804563DC-804563E0 0049DC 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultIndTexCoordScaleInfo */ -extern const J3DIndTexCoordScaleInfo j3dDefaultIndTexCoordScaleInfo = { - 0x00, - 0x00, - 0x00, - 0x00, -}; - -/* 804563E0-804563E4 0049E0 0004+00 0/0 5/5 0/0 .sdata2 j3dDefaultTevKColor */ -extern const GXColor j3dDefaultTevKColor = {0xFF, 0xFF, 0xFF, 0xFF}; - -/* 804563E4-804563E8 0049E4 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultTevSwapMode */ -extern J3DTevSwapModeInfo const j3dDefaultTevSwapMode = { - 0x00, - 0x00, - 0x00, - 0x00, -}; - -/* 804563E8-804563EC 0049E8 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultTevSwapModeTable */ -extern const J3DTevSwapModeTableInfo j3dDefaultTevSwapModeTable = {0x00, 0x01, 0x02, 0x03}; - -/* 804563EC-804563F0 0049EC 0004+00 0/0 3/3 0/0 .sdata2 j3dDefaultBlendInfo */ -extern const J3DBlendInfo j3dDefaultBlendInfo = {GX_BM_BLEND, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_NOOP}; - -/* 804563F0-804563F8 0049F0 0008+00 0/0 3/3 0/0 .sdata2 j3dDefaultColorChanInfo */ -extern const J3DColorChanInfo j3dDefaultColorChanInfo = { - 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0xFF, 0xFF, -}; - -/* 804563F8-804563FA 0049F8 0002+00 0/0 1/1 0/0 .sdata2 None */ -extern const u16 data_804563F8 = 0x1B00; - -/* 804563FA-804563FC 0049FA 0002+00 0/0 1/1 0/0 .sdata2 j3dDefaultAlphaCmpID */ -const u16 j3dDefaultAlphaCmpID = 0x00E7; - -/* 804563FC-80456400 0049FC 0002+02 0/0 3/3 0/0 .sdata2 j3dDefaultZModeID */ -const u16 j3dDefaultZModeID = 0x0017; +// +// J3DTevs +// + +#include "JSystem/J3DGraphBase/J3DTevs.h" +#include "JSystem/J3DGraphBase/J3DGD.h" +#include "JSystem/J3DGraphBase/J3DMatBlock.h" +#include "JSystem/J3DGraphBase/J3DSys.h" +#include "JSystem/J3DGraphBase/J3DTransform.h" + +static void J3DGDLoadTexMtxImm(f32 (*)[4], u32, _GXTexMtxType); +static void J3DGDLoadPostTexMtxImm(f32 (*)[4], u32); + +/* 80323590-80323644 31DED0 00B4+00 0/0 3/3 0/0 .text load__11J3DLightObjCFUl */ +void J3DLightObj::load(u32 lightIdx) const { + GDOverflowCheck(0x48); + J3DGDSetLightPos(GXLightID(1 << lightIdx), mInfo.mLightPosition.x, mInfo.mLightPosition.y, mInfo.mLightPosition.z); + J3DGDSetLightAttn(GXLightID(1 << lightIdx), mInfo.mCosAtten.x, mInfo.mCosAtten.y, mInfo.mCosAtten.z, mInfo.mDistAtten.x, mInfo.mDistAtten.y, mInfo.mDistAtten.z); + J3DGDSetLightColor(GXLightID(1 << lightIdx), mInfo.mColor); + J3DGDSetLightDir(GXLightID(1 << lightIdx), mInfo.mLightDirection.x, mInfo.mLightDirection.y, mInfo.mLightDirection.z); +} + +/* 80323644-803238C4 31DF84 0280+00 0/0 3/3 0/0 .text loadTexCoordGens__FUlP11J3DTexCoord + */ +void loadTexCoordGens(u32 param_0, J3DTexCoord* param_1) { + GDOverflowCheck(param_0 * 8 + 10); + J3DGDWriteXFCmdHdr(0x1040, param_0); + for (int i = 0; i < param_0; i++) { + J3DGDSetTexCoordGen( + GXTexGenType(param_1[i].getTexGenType()), + GXTexGenSrc(param_1[i].getTexGenSrc()) + ); + } + J3DGDWriteXFCmdHdr(0x1050, param_0); + if (j3dSys.checkFlag(0x40000000)) { + for (int i = 0; i < param_0; i++) { + J3DGDWrite_u32(param_1[i].getTexGenMtx() == 60 ? 61 : i * 3); + } + } else { + for (int i = 0; i < param_0; i++) { + J3DGDWrite_u32(61); + } + } +} + +/* 803238C4-80323900 31E204 003C+00 0/0 6/6 0/0 .text load__9J3DTexMtxCFUl */ +void J3DTexMtx::load(u32 mtxIdx) const { + if (j3dSys.checkFlag(J3DSysFlag_PostTexMtx)) { + loadPostTexMtx(mtxIdx); + } else { + loadTexMtx(mtxIdx); + } +} + +/* 80323900-80323920 31E240 0020+00 0/0 2/2 0/0 .text calc__9J3DTexMtxFPA4_Cf */ +void J3DTexMtx::calc(f32 const (*param_0)[4]) { + calcTexMtx(param_0); +} + +/* 80323920-80323C0C 31E260 02EC+00 2/1 0/0 0/0 .text calcTexMtx__9J3DTexMtxFPA4_Cf */ +void J3DTexMtx::calcTexMtx(const Mtx param_0) { + Mtx44 mtx1; + Mtx44 mtx2; + + static Mtx qMtx = { + 0.5f, 0.0f, 0.5f, 0.0f, + 0.0f, -0.5f, 0.5f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, + }; + static Mtx qMtx2 = { + 0.5f, 0.0f, 0.0f, 0.5f, + 0.0f, -0.5f, 0.0f, 0.5f, + 0.0f, 0.0f, 1.0f, 0.0f, + }; + + u8 r28 = mTexMtxInfo.mInfo & 0x3f; + u32 r30 = (mTexMtxInfo.mInfo >> 7) & 1; + switch (r28) { + case 8: + case 9: + case 11: + if (r30 == 0) { + J3DGetTextureMtx(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); + } else if (r30 == 1) { + J3DGetTextureMtxMaya(mTexMtxInfo.mSRT, mtx2); + } + MTXConcat(mtx2, qMtx, mtx2); + J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mtx1); + MTXConcat(mtx1, param_0, mMtx); + break; + case 7: + if (r30 == 0) { + J3DGetTextureMtx(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx1); + } else if (r30 == 1) { + J3DGetTextureMtxMaya(mTexMtxInfo.mSRT, mtx1); + } + MTXConcat(mtx1, qMtx, mtx1); + MTXConcat(mtx1, param_0, mMtx); + break; + case 10: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); + } + MTXConcat(mtx2, qMtx2, mtx2); + J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mtx1); + MTXConcat(mtx1, param_0, mMtx); + break; + case 6: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx1); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx1); + } + MTXConcat(mtx1, qMtx2, mtx1); + MTXConcat(mtx1, param_0, mMtx); + break; + case 1: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx1); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx1); + } + MTXConcat(mtx1, param_0, mMtx); + break; + case 2: + case 3: + case 5: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); + } + J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mtx1); + MTXConcat(mtx1, param_0, mMtx); + break; + case 4: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); + } + J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mMtx); + break; + default: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mMtx); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mMtx); + } + break; + } +} + +/* 80323C0C-80323F64 31E54C 0358+00 1/0 2/2 0/0 .text calcPostTexMtx__9J3DTexMtxFPA4_Cf + */ +void J3DTexMtx::calcPostTexMtx(const Mtx param_0) { + Mtx44 mtx1; + Mtx44 mtx2; + + static Mtx qMtx = { + 0.5f, 0.0f, 0.5f, 0.0f, + 0.0f, -0.5f, 0.5f, 0.0f, + 0.0f, 0.0f, 1.0f, 0.0f, + }; + static Mtx qMtx2 = { + 0.5f, 0.0f, 0.0f, 0.5f, + 0.0f, -0.5f, 0.0f, 0.5f, + 0.0f, 0.0f, 1.0f, 0.0f, + }; + + u8 r29 = mTexMtxInfo.mInfo & 0x3f; + u32 r30 = (mTexMtxInfo.mInfo >> 7) & 1; + switch (r29) { + case 8: + case 11: + if (r30 == 0) { + J3DGetTextureMtx(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); + } else if (r30 == 1) { + J3DGetTextureMtxMaya(mTexMtxInfo.mSRT, mtx2); + } + MTXConcat(mtx2, qMtx, mtx2); + J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mtx1); + MTXConcat(mtx1, param_0, mMtx); + break; + case 9: + if (r30 == 0) { + J3DGetTextureMtx(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); + } else if (r30 == 1) { + J3DGetTextureMtxMaya(mTexMtxInfo.mSRT, mtx2); + } + MTXConcat(mtx2, qMtx, mtx2); + J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mMtx); + break; + case 7: + if (r30 == 0) { + J3DGetTextureMtx(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx1); + } else if (r30 == 1) { + J3DGetTextureMtxMaya(mTexMtxInfo.mSRT, mtx1); + } + MTXConcat(mtx1, qMtx, mMtx); + break; + case 10: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); + } + MTXConcat(mtx2, qMtx2, mtx2); + J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mtx1); + MTXConcat(mtx1, param_0, mMtx); + break; + case 6: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx1); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx1); + } + MTXConcat(mtx1, qMtx2, mMtx); + break; + case 1: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mMtx); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mMtx); + } + break; + case 2: + case 5: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); + } + J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mtx1); + MTXConcat(mtx1, param_0, mMtx); + break; + case 3: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); + } + J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mMtx); + break; + case 4: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mtx2); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mtx2); + } + J3DMtxProjConcat(mtx2, mTexMtxInfo.mEffectMtx, mMtx); + break; + default: + if (r30 == 0) { + J3DGetTextureMtxOld(mTexMtxInfo.mSRT, mTexMtxInfo.mCenter, mMtx); + } else if (r30 == 1) { + J3DGetTextureMtxMayaOld(mTexMtxInfo.mSRT, mMtx); + } + break; + } +} + +/* 80323F64-80323F88 31E8A4 0024+00 0/0 1/1 0/0 .text isTexNoReg__FPv */ +bool isTexNoReg(void* param_0) { + u8 r31 = ((u8*)param_0)[1]; + if (r31 >= 0x80 && r31 <= 0xbb) { + return true; + } + return false; +} + +/* 80323F88-80323F94 31E8C8 000C+00 0/0 1/1 0/0 .text getTexNoReg__FPv */ +u16 getTexNoReg(void* param_0) { + return *(u32*)((u8*)param_0 + 1); +} + +/* 80323F94-8032413C 31E8D4 01A8+00 0/0 20/20 0/0 .text loadTexNo__FUlRCUs */ +void loadTexNo(u32 param_0, u16 const& param_1) { + ResTIMG* resTIMG = j3dSys.getTexture()->getResTIMG(param_1); + J3DSys::sTexCoordScaleTable[param_0].field_0x00 = resTIMG->width; + J3DSys::sTexCoordScaleTable[param_0].field_0x02 = resTIMG->height; + GDOverflowCheck(0x14); + J3DGDSetTexImgPtr(GXTexMapID(param_0), (u8*)resTIMG + resTIMG->imageOffset); + J3DGDSetTexImgAttr(GXTexMapID(param_0), resTIMG->width, resTIMG->height, GXTexFmt(resTIMG->format & 0x0f)); + J3DGDSetTexLookupMode(GXTexMapID(param_0), GXTexWrapMode(resTIMG->wrapS), GXTexWrapMode(resTIMG->wrapT), GXTexFilter(resTIMG->minFilter), GXTexFilter(resTIMG->magFilter), resTIMG->minLOD * 0.125f, resTIMG->maxLOD * 0.125f, resTIMG->LODBias * 0.01f, resTIMG->biasClamp, resTIMG->doEdgeLOD, GXAnisotropy(resTIMG->maxAnisotropy)); + if (resTIMG->indexTexture == true) { + GXTlutSize tlutSize = resTIMG->numColors > 16 ? GX_TLUT_256 : GX_TLUT_16; + GDOverflowCheck(0x14); + J3DGDLoadTlut((u8*)resTIMG + resTIMG->paletteOffset, (param_0 << 13) + 0xf0000, tlutSize); + J3DGDSetTexTlut(GXTexMapID(param_0), (param_0 << 13) + 0xf0000, GXTlutFmt(resTIMG->colorFormat)); + } +} + +/* 8032413C-80324160 31EA7C 0024+00 0/0 2/2 0/0 .text patchTexNo_PtrToIdx__FUlRCUs */ +void patchTexNo_PtrToIdx(u32 texID, u16 const& idx) { + J3DGDSetTexImgPtrRaw(GXTexMapID(texID), idx); +} + +/* 80324160-80324194 31EAA0 0034+00 0/0 2/2 0/0 .text loadNBTScale__FR11J3DNBTScale */ +void loadNBTScale(J3DNBTScale& param_0) { + if (param_0.mbHasScale == true) { + j3dSys.setNBTScale(¶m_0.mScale); + } else { + j3dSys.setNBTScale(NULL); + } +} + +/* ############################################################################################## */ +/* 803A1EC8-803A1EFC 02E528 0034+00 0/0 9/9 24/24 .rodata j3dDefaultLightInfo */ +extern const J3DLightInfo j3dDefaultLightInfo = { + 0.0f, 0.0f, 0.0f, + 0.0f, -1.0f, 0.0f, + 0xff, 0xff, 0xff, 0xff, + 1.0f, 0.0f, 0.0f, + 1.0f, 0.0f, 0.0f, +}; + +/* 803A1EFC-803A1F1C 02E55C 0020+00 0/0 5/5 0/0 .rodata j3dDefaultTexCoordInfo */ +extern J3DTexCoordInfo const j3dDefaultTexCoordInfo[8] = { + {GX_MTX2x4, GX_TG_TEX0, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX1, GX_IDENTITY, 0}, + {GX_MTX2x4, GX_TG_TEX2, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX3, GX_IDENTITY, 0}, + {GX_MTX2x4, GX_TG_TEX4, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX5, GX_IDENTITY, 0}, + {GX_MTX2x4, GX_TG_TEX6, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX7, GX_IDENTITY, 0}, +}; + +/* 803A1F1C-803A1F80 02E57C 0064+00 0/0 1/1 0/0 .rodata j3dDefaultTexMtxInfo */ +extern J3DTexMtxInfo const j3dDefaultTexMtxInfo = { + 0x01, + 0x00, + 0xFF, + 0xFF, + {0.0f, 0.0f, 0.0f}, + {1.0f, 1.0f, 0, 0.0f, 0.0f}, + {1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, + 1.0f}, +}; + +/* 803A1F80-803A1F9C 02E5E0 001C+00 0/0 2/2 0/0 .rodata j3dDefaultIndTexMtxInfo */ +extern J3DIndTexMtxInfo const j3dDefaultIndTexMtxInfo = { + 0.5f, 0.0f, 0.0f, + 0.0f, 0.5f, 0.0f, + 1 +}; + +/* 803A1F9C-803A1FB0 02E5FC 0014+00 0/0 1/1 0/0 .rodata j3dDefaultTevStageInfo */ +extern J3DTevStageInfo const j3dDefaultTevStageInfo = { + 0x04, 0x0A, 0x0F, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, + 0x05, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, +}; + +/* 803A1FB0-803A1FBC 02E610 000C+00 0/0 2/2 0/0 .rodata j3dDefaultIndTevStageInfo */ +extern J3DIndTevStageInfo const j3dDefaultIndTevStageInfo = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; + +/* 803A1FBC-803A1FE8 02E61C 002C+00 0/0 3/3 0/0 .rodata j3dDefaultFogInfo */ +extern J3DFogInfo const j3dDefaultFogInfo = { + 0x00, 0x00, 0x0140, 0.0f, 0.0f, 0.1f, 10000.0f, 0xFF, 0xFF, 0xFF, 0x00, + 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, +}; + +/* 803A1FE8-803A1FF8 02E648 0010+00 0/0 3/3 0/0 .rodata j3dDefaultNBTScaleInfo */ +extern J3DNBTScaleInfo const j3dDefaultNBTScaleInfo = { + 0x00, 1.0f, 1.0f, 1.0f, +}; + +/* 80434C98-80436A60 0619B8 1DC7+01 1/1 0/0 0/0 .bss j3dTexCoordTable */ +static u8 j3dTexCoordTable[7623 + 1 /* padding */]; + +/* 80324194-8032423C 31EAD4 00A8+00 0/0 1/1 0/0 .text makeTexCoordTable__Fv */ +void makeTexCoordTable() { + u8 texMtx[] = { + GX_TEXMTX0, + GX_TEXMTX1, + GX_TEXMTX2, + GX_TEXMTX3, + GX_TEXMTX4, + GX_TEXMTX5, + GX_TEXMTX6, + GX_TEXMTX7, + GX_TEXMTX8, + GX_TEXMTX9, + GX_IDENTITY, + }; + + u8* table = j3dTexCoordTable; + for (u32 i = 0; i < 11; i++) { + for (u32 j = 0; j < 21; j++) { + for (int k = 0; k < ARRAY_SIZE(texMtx); k++) { + u32 idx = j * 11 + i * 0xe7 + k; + table[idx * 3 + 0] = i; + table[idx * 3 + 1] = j; + table[idx * 3 + 2] = texMtx[k]; + } + } + } +} + +/* ############################################################################################## */ +/* 80436A60-80436E60 063780 0400+00 1/1 3/3 0/0 .bss j3dTevSwapTableTable */ +u8 j3dTevSwapTableTable[1024]; + +/* 80436E60-80437160 063B80 0300+00 1/1 2/2 0/0 .bss j3dAlphaCmpTable */ +u8 j3dAlphaCmpTable[768]; + +/* 8032423C-803242A8 31EB7C 006C+00 0/0 1/1 0/0 .text makeAlphaCmpTable__Fv */ +void makeAlphaCmpTable() { + u8* table = j3dAlphaCmpTable; + for (u32 i = 0; i < 8; i++) { + for (int j = 0; j < 4; j++) { + for (u32 k = 0; k < 8; k++) { + u32 idx = i * 32 + j * 8 + k; + table[idx * 3] = i; + table[idx * 3 + 1] = j; + table[idx * 3 + 2] = k; + } + } + } +} + +/* ############################################################################################## */ +/* 80437160-804371C0 063E80 0060+00 1/1 4/4 5/5 .bss j3dZModeTable */ +extern u8 j3dZModeTable[96]; +u8 j3dZModeTable[96]; + +/* 803242A8-80324314 31EBE8 006C+00 0/0 1/1 0/0 .text makeZModeTable__Fv */ +void makeZModeTable() { + u8* table = j3dZModeTable; + for (int i = 0; i < 2; i++) { + for (u32 j = 0; j < 8; j++) { + for (int k = 0; k < 2; k++) { + u32 idx = j * 2 + i * 16 + k; + table[idx * 3 + 0] = i; + table[idx * 3 + 1] = j; + table[idx * 3 + 2] = k; + } + } + } +} + +/* 80324314-80324358 31EC54 0044+00 0/0 1/1 0/0 .text makeTevSwapTable__Fv */ +void makeTevSwapTable() { + u8* table = j3dTevSwapTableTable; + int i = 0; + do { + table[0] = i >> 6; + table[1] = (i >> 4) & 3; + table[2] = (i >> 2) & 3; + table[3] = i & 3; + i++; + table += 4; + } while (i < 256); +} + +/* 80324358-803243BC 31EC98 0064+00 1/1 0/0 0/0 .text loadTexMtx__9J3DTexMtxCFUl */ +void J3DTexMtx::loadTexMtx(u32 param_0) const { + GDOverflowCheck(0x35); + J3DGDLoadTexMtxImm((MtxP)mMtx, param_0 * 3 + 30, (_GXTexMtxType)mTexMtxInfo.mProjection); +} + +/* 803243BC-8032441C 31ECFC 0060+00 1/1 0/0 0/0 .text loadPostTexMtx__9J3DTexMtxCFUl */ +void J3DTexMtx::loadPostTexMtx(u32 param_0) const { + GDOverflowCheck(0x35); + J3DGDLoadPostTexMtxImm((MtxP)mMtx, param_0 * 3 + 0x40); +} + +/* 8032441C-8032499C 31ED5C 0580+00 1/1 0/0 0/0 .text J3DGDLoadTexMtxImm__FPA4_fUl13_GXTexMtxType + */ +static void J3DGDLoadTexMtxImm(f32 (*param_1)[4], u32 param_2, _GXTexMtxType param_3) { + u16 addr = param_2 << 2; + u8 len = param_3 == GX_MTX2x4 ? 8 : 12; + J3DGDWriteXFCmdHdr(addr & 0xffff, len); + J3DGDWrite_f32(param_1[0][0]); + J3DGDWrite_f32(param_1[0][1]); + J3DGDWrite_f32(param_1[0][2]); + J3DGDWrite_f32(param_1[0][3]); + J3DGDWrite_f32(param_1[1][0]); + J3DGDWrite_f32(param_1[1][1]); + J3DGDWrite_f32(param_1[1][2]); + J3DGDWrite_f32(param_1[1][3]); + if (param_3 == GX_MTX3x4) { + J3DGDWrite_f32(param_1[2][0]); + J3DGDWrite_f32(param_1[2][1]); + J3DGDWrite_f32(param_1[2][2]); + J3DGDWrite_f32(param_1[2][3]); + } +} + +/* 8032499C-80324F08 31F2DC 056C+00 1/1 0/0 0/0 .text J3DGDLoadPostTexMtxImm__FPA4_fUl */ +static void J3DGDLoadPostTexMtxImm(f32 (*param_1)[4], u32 param_2) { + u16 addr = (param_2 - 0x40) * 4 + 0x500; + J3DGDWriteXFCmdHdr(addr, 12); + J3DGDWrite_f32(param_1[0][0]); + J3DGDWrite_f32(param_1[0][1]); + J3DGDWrite_f32(param_1[0][2]); + J3DGDWrite_f32(param_1[0][3]); + J3DGDWrite_f32(param_1[1][0]); + J3DGDWrite_f32(param_1[1][1]); + J3DGDWrite_f32(param_1[1][2]); + J3DGDWrite_f32(param_1[1][3]); + J3DGDWrite_f32(param_1[2][0]); + J3DGDWrite_f32(param_1[2][1]); + J3DGDWrite_f32(param_1[2][2]); + J3DGDWrite_f32(param_1[2][3]); +} + +/* ############################################################################################## */ +/* 804563C0-804563C4 0049C0 0004+00 0/0 4/4 0/0 .sdata2 j3dDefaultColInfo */ +extern const GXColor j3dDefaultColInfo = {0xFF, 0xFF, 0xFF, 0xFF}; + +/* 804563C4-804563C8 0049C4 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultAmbInfo */ +extern const u32 j3dDefaultAmbInfo = 0x32323232; + +/* 804563C8-804563CC 0049C8 0004+00 0/0 1/1 0/0 .sdata2 None */ +extern const u8 data_804563C8 = 0x01; + +/* 804563CC-804563D0 0049CC 0004+00 0/0 3/3 0/0 .sdata2 j3dDefaultTevOrderInfoNull */ +extern const J3DTevOrderInfo j3dDefaultTevOrderInfoNull = {0xFF, 0xFF, 0xFF, 0x00}; + +/* 804563D0-804563D4 0049D0 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultIndTexOrderNull */ +extern const J3DIndTexOrderInfo j3dDefaultIndTexOrderNull = {0xFF, 0xFF, 0x00, 0x00}; + +/* 804563D4-804563D8 0049D4 0004+00 0/0 5/5 0/0 .sdata2 j3dDefaultTevColor */ +extern const GXColorS10 j3dDefaultTevColor = {0xFF, 0xFF, 0xFF, 0xFF}; + +/* 804563DC-804563E0 0049DC 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultIndTexCoordScaleInfo */ +extern const J3DIndTexCoordScaleInfo j3dDefaultIndTexCoordScaleInfo = { + 0x00, + 0x00, + 0x00, + 0x00, +}; + +/* 804563E0-804563E4 0049E0 0004+00 0/0 5/5 0/0 .sdata2 j3dDefaultTevKColor */ +extern const GXColor j3dDefaultTevKColor = {0xFF, 0xFF, 0xFF, 0xFF}; + +/* 804563E4-804563E8 0049E4 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultTevSwapMode */ +extern J3DTevSwapModeInfo const j3dDefaultTevSwapMode = { + 0x00, + 0x00, + 0x00, + 0x00, +}; + +/* 804563E8-804563EC 0049E8 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultTevSwapModeTable */ +extern const J3DTevSwapModeTableInfo j3dDefaultTevSwapModeTable = {0x00, 0x01, 0x02, 0x03}; + +/* 804563EC-804563F0 0049EC 0004+00 0/0 3/3 0/0 .sdata2 j3dDefaultBlendInfo */ +extern const J3DBlendInfo j3dDefaultBlendInfo = {GX_BM_BLEND, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_NOOP}; + +/* 804563F0-804563F8 0049F0 0008+00 0/0 3/3 0/0 .sdata2 j3dDefaultColorChanInfo */ +extern const J3DColorChanInfo j3dDefaultColorChanInfo = { + 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0xFF, 0xFF, +}; + +/* 804563F8-804563FA 0049F8 0002+00 0/0 1/1 0/0 .sdata2 None */ +extern const u16 data_804563F8 = 0x1B00; + +/* 804563FA-804563FC 0049FA 0002+00 0/0 1/1 0/0 .sdata2 j3dDefaultAlphaCmpID */ +const u16 j3dDefaultAlphaCmpID = 0x00E7; + +/* 804563FC-80456400 0049FC 0002+02 0/0 3/3 0/0 .sdata2 j3dDefaultZModeID */ +const u16 j3dDefaultZModeID = 0x0017; diff --git a/libs/JSystem/J3DGraphBase/J3DTexture.cpp b/libs/JSystem/J3DGraphBase/J3DTexture.cpp index 67c2ca1a67..b271fe2c33 100644 --- a/libs/JSystem/J3DGraphBase/J3DTexture.cpp +++ b/libs/JSystem/J3DGraphBase/J3DTexture.cpp @@ -5,7 +5,6 @@ #include "JSystem/J3DGraphBase/J3DTexture.h" #include "dolphin/gx.h" -#include "dolphin/types.h" /* 8031204C-803121A4 30C98C 0158+00 0/0 1/1 0/0 .text loadGX__10J3DTextureCFUs11_GXTexMapID */ void J3DTexture::loadGX(u16 idx, GXTexMapID texMapID) const { diff --git a/libs/JSystem/J3DGraphBase/J3DTransform.cpp b/libs/JSystem/J3DGraphBase/J3DTransform.cpp index 2d8ddc9977..f0cdca3743 100644 --- a/libs/JSystem/J3DGraphBase/J3DTransform.cpp +++ b/libs/JSystem/J3DGraphBase/J3DTransform.cpp @@ -4,7 +4,6 @@ // #include "JSystem/J3DGraphBase/J3DTransform.h" -#include "JSystem/J3DGraphBase/J3DStruct.h" #include "JSystem/JMath/JMATrigonometric.h" #include "dol2asm.h" #include "dolphin/base/PPCArch.h" diff --git a/libs/JSystem/J3DGraphBase/J3DVertex.cpp b/libs/JSystem/J3DGraphBase/J3DVertex.cpp index 2a9921e417..aa049536f4 100644 --- a/libs/JSystem/J3DGraphBase/J3DVertex.cpp +++ b/libs/JSystem/J3DGraphBase/J3DVertex.cpp @@ -9,7 +9,6 @@ #include "JSystem/JKernel/JKRHeap.h" #include "string.h" #include "dolphin/os/OSCache.h" -#include "global.h" #include "init.h" /* 80310EF8-80310F78 30B838 0080+00 0/0 1/1 0/0 .text __ct__13J3DVertexDataFv */ diff --git a/libs/JSystem/J3DGraphLoader/J3DAnmLoader.cpp b/libs/JSystem/J3DGraphLoader/J3DAnmLoader.cpp index 84b4881157..48c78e10c8 100644 --- a/libs/JSystem/J3DGraphLoader/J3DAnmLoader.cpp +++ b/libs/JSystem/J3DGraphLoader/J3DAnmLoader.cpp @@ -5,7 +5,6 @@ #include "JSystem/J3DGraphLoader/J3DAnmLoader.h" #include "JSystem/J3DGraphAnimator/J3DAnimation.h" -#include "JSystem/JSupport/JSupport.h" #include "dol2asm.h" #include "dolphin/os.h" diff --git a/libs/JSystem/J3DGraphLoader/J3DClusterLoader.cpp b/libs/JSystem/J3DGraphLoader/J3DClusterLoader.cpp index 451097dd5d..ac58c7dc06 100644 --- a/libs/JSystem/J3DGraphLoader/J3DClusterLoader.cpp +++ b/libs/JSystem/J3DGraphLoader/J3DClusterLoader.cpp @@ -4,11 +4,7 @@ // #include "JSystem/J3DGraphLoader/J3DClusterLoader.h" -#include "JSystem/J3DGraphAnimator/J3DCluster.h" #include "JSystem/J3DGraphAnimator/J3DSkinDeform.h" -#include "JSystem/JSupport/JSupport.h" -#include "JSystem/JUtility/JUTNameTab.h" -#include "JSystem/JKernel/JKRHeap.h" #include "dol2asm.h" #include "dolphin/os.h" #include "string.h" diff --git a/libs/JSystem/J3DGraphLoader/J3DJointFactory.cpp b/libs/JSystem/J3DGraphLoader/J3DJointFactory.cpp index c8c9b091d4..4044cdf604 100644 --- a/libs/JSystem/J3DGraphLoader/J3DJointFactory.cpp +++ b/libs/JSystem/J3DGraphLoader/J3DJointFactory.cpp @@ -7,7 +7,6 @@ #include "JSystem/J3DGraphLoader/J3DModelLoader.h" #include "JSystem/J3DGraphAnimator/J3DJoint.h" #include "JSystem/JSupport/JSupport.h" -#include "dolphin/types.h" // // Types: diff --git a/libs/JSystem/J3DGraphLoader/J3DMaterialFactory.cpp b/libs/JSystem/J3DGraphLoader/J3DMaterialFactory.cpp index 42cfc489f7..d928c4ed57 100644 --- a/libs/JSystem/J3DGraphLoader/J3DMaterialFactory.cpp +++ b/libs/JSystem/J3DGraphLoader/J3DMaterialFactory.cpp @@ -5,7 +5,6 @@ #include "JSystem/J3DGraphLoader/J3DMaterialFactory.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/J3DGraphBase/J3DSys.h" #include "JSystem/JSupport/JSupport.h" #include "dol2asm.h" diff --git a/libs/JSystem/J3DGraphLoader/J3DMaterialFactory_v21.cpp b/libs/JSystem/J3DGraphLoader/J3DMaterialFactory_v21.cpp index 527ea32ce0..060d87e55d 100644 --- a/libs/JSystem/J3DGraphLoader/J3DMaterialFactory_v21.cpp +++ b/libs/JSystem/J3DGraphLoader/J3DMaterialFactory_v21.cpp @@ -1,412 +1,411 @@ -// -// Generated By: dol2asm -// Translation Unit: J3DMaterialFactory_v21 -// - -#include "JSystem/J3DGraphLoader/J3DMaterialFactory_v21.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JSupport/JSupport.h" -#include "dol2asm.h" - -// -// Forward References: -// - -extern "C" void __ct__22J3DMaterialFactory_v21FRC20J3DMaterialBlock_v21(); -extern "C" void countUniqueMaterials__22J3DMaterialFactory_v21Fv(); -extern "C" void countTexGens__22J3DMaterialFactory_v21CFi(); -extern "C" void countStages__22J3DMaterialFactory_v21CFi(); -extern "C" void create__22J3DMaterialFactory_v21CFP11J3DMaterialiUl(); -extern "C" void newMatColor__22J3DMaterialFactory_v21CFii(); -extern "C" void newColorChanNum__22J3DMaterialFactory_v21CFi(); -extern "C" void newColorChan__22J3DMaterialFactory_v21CFii(); -extern "C" void newTexGenNum__22J3DMaterialFactory_v21CFi(); -extern "C" void newTexCoord__22J3DMaterialFactory_v21CFii(); -extern "C" void newTexMtx__22J3DMaterialFactory_v21CFii(); -extern "C" void newCullMode__22J3DMaterialFactory_v21CFi(); -extern "C" void newTexNo__22J3DMaterialFactory_v21CFii(); -extern "C" void newTevOrder__22J3DMaterialFactory_v21CFii(); -extern "C" void newTevColor__22J3DMaterialFactory_v21CFii(); -extern "C" void newTevKColor__22J3DMaterialFactory_v21CFii(); -extern "C" void newTevStageNum__22J3DMaterialFactory_v21CFi(); -extern "C" void newTevStage__22J3DMaterialFactory_v21CFii(); -extern "C" void newTevSwapModeTable__22J3DMaterialFactory_v21CFii(); -extern "C" void newFog__22J3DMaterialFactory_v21CFi(); -extern "C" void newAlphaComp__22J3DMaterialFactory_v21CFi(); -extern "C" void newBlend__22J3DMaterialFactory_v21CFi(); -extern "C" void newZMode__22J3DMaterialFactory_v21CFi(); -extern "C" void newZCompLoc__22J3DMaterialFactory_v21CFi(); -extern "C" void newDither__22J3DMaterialFactory_v21CFi(); -extern "C" void newNBTScale__22J3DMaterialFactory_v21CFi(); -extern "C" void func_80334118(void* _this, void const*, void const*); - -// -// External References: -// - -extern "C" void __ct__11J3DTevStageFv(); -extern "C" void __ct__11J3DTevStageFRC15J3DTevStageInfo(); -extern "C" void* __nw__FUl(); -extern "C" GXColorS10* func_802F41E8(void const*, void const*); -extern "C" u8* func_802F4260(void const*, void const*); -extern "C" GXColor* func_802F4278(void const*, void const*); -extern "C" GXCullMode* func_802F4290(void const*, void const*); -extern "C" u16* func_802F42C0(void const*, void const*); -extern "C" void createColorBlock__11J3DMaterialFUl(); -extern "C" void createTexGenBlock__11J3DMaterialFUl(); -extern "C" void createTevBlock__11J3DMaterialFi(); -extern "C" void createIndBlock__11J3DMaterialFi(); -extern "C" void createPEBlock__11J3DMaterialFUlUl(); -extern "C" void initialize__11J3DMaterialFv(); -extern "C" void __as__13J3DTexMtxInfoFRC13J3DTexMtxInfo(); -extern "C" void __as__10J3DFogInfoFRC10J3DFogInfo(); -extern "C" void func_80332C24(void* _this, void const*, void const*); -extern "C" void func_80332C3C(void* _this, void const*, void const*); -extern "C" void func_80332C54(void* _this, void const*, void const*); -extern "C" void func_80332C6C(void* _this, void const*, void const*); -extern "C" void func_80332C84(void* _this, void const*, void const*); -extern "C" void func_80332C9C(void* _this, void const*, void const*); -extern "C" void func_80332CB4(void* _this, void const*, void const*); -extern "C" void func_80332CCC(void* _this, void const*, void const*); -extern "C" void func_80332CE4(void* _this, void const*, void const*); -extern "C" void func_80332CFC(void* _this, void const*, void const*); -extern "C" void func_80332D14(void* _this, void const*, void const*); -extern "C" void func_80332D2C(void* _this, void const*, void const*); -extern "C" void func_80332D5C(void* _this, void const*, void const*); -extern "C" void _savegpr_19(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_19(); -extern "C" void _restgpr_29(); -extern "C" extern void* __vt__11J3DMaterial[12]; - -// -// Declarations: -// - -/* 80332DA4-80332F84 32D6E4 01E0+00 0/0 2/2 0/0 .text - * __ct__22J3DMaterialFactory_v21FRC20J3DMaterialBlock_v21 */ -J3DMaterialFactory_v21::J3DMaterialFactory_v21(J3DMaterialBlock_v21 const& i_block) { - mMaterialNum = i_block.mMaterialNum; - mpMaterialInitData = JSUConvertOffsetToPtr(&i_block, i_block.mpMaterialInitData); - mpMaterialID = JSUConvertOffsetToPtr(&i_block, i_block.mpMaterialID); - mpCullMode = JSUConvertOffsetToPtr(&i_block, i_block.mpCullMode); - mpMatColor = JSUConvertOffsetToPtr(&i_block, i_block.mpMatColor); - mpColorChanNum = JSUConvertOffsetToPtr(&i_block, i_block.mpColorChanNum); - mpColorChanInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpColorChanInfo); - mpTexGenNum = JSUConvertOffsetToPtr(&i_block, i_block.mpTexGenNum); - mpTexCoordInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpTexCoordInfo); - mpTexCoord2Info = JSUConvertOffsetToPtr(&i_block, i_block.mpTexCoord2Info); - mpTexMtxInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpTexMtxInfo); - field_0x28 = JSUConvertOffsetToPtr(&i_block, i_block.field_0x38); - mpTexNo = JSUConvertOffsetToPtr(&i_block, i_block.mpTexNo); - mpTevOrderInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpTevOrderInfo); - mpTevColor = JSUConvertOffsetToPtr(&i_block, i_block.mpTevColor); - mpTevKColor = JSUConvertOffsetToPtr(&i_block, i_block.mpTevKColor); - mpTevStageNum = JSUConvertOffsetToPtr(&i_block, i_block.mpTevStageNum); - mpTevStageInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpTevStageInfo); - mpTevSwapModeInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpTevSwapModeInfo); - mpTevSwapModeTableInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpTevSwapModeTableInfo); - mpFogInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpFogInfo); - mpAlphaCompInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpAlphaCompInfo); - mpBlendInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpBlendInfo); - mpZModeInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpZModeInfo); - mpZCompLoc = JSUConvertOffsetToPtr(&i_block, i_block.mpZCompLoc); - mpDither = JSUConvertOffsetToPtr(&i_block, i_block.mpDither); - mpNBTScaleInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpNBTScaleInfo); -} - -/* 80332F84-80332FA8 32D8C4 0024+00 0/0 1/1 0/0 .text - * countUniqueMaterials__22J3DMaterialFactory_v21Fv */ -u16 J3DMaterialFactory_v21::countUniqueMaterials() { - u16 i; - for (i = 0; i < mMaterialNum; i++) { - } - return i; -} - -/* 80332FA8-80332FE0 32D8E8 0038+00 1/1 0/0 0/0 .text countTexGens__22J3DMaterialFactory_v21CFi */ -u32 J3DMaterialFactory_v21::countTexGens(int i_idx) const { - u8 tex_gen_num_index = mpMaterialInitData[mpMaterialID[i_idx]].mTexGenNumIdx; - if (tex_gen_num_index != 0xff) { - return mpTexGenNum[tex_gen_num_index]; - } - return 0; -} - -/* 80332FE0-80333068 32D920 0088+00 1/1 0/0 0/0 .text countStages__22J3DMaterialFactory_v21CFi */ -u32 J3DMaterialFactory_v21::countStages(int i_idx) const { - J3DMaterialInitData_v21* init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - u32 count1 = 0; - u32 count2 = 0; - u8 tev_stage_num_index = init_data->mTevStageNumIdx; - if (tev_stage_num_index != 0xff) { - count2 = mpTevStageNum[tev_stage_num_index]; - } - for (int i = 0; i < 8; i++) { - if (init_data->mTexNoIdx[i] != 0xffff) { - count1++; - } - } - if (count2 != count1 && count1 != 0) { - if (count2 > count1) { - return count2; - } else { - return count1; - } - } - return count2; -} - -/* 80333068-803337D8 32D9A8 0770+00 0/0 2/2 0/0 .text - * create__22J3DMaterialFactory_v21CFP11J3DMaterialiUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DMaterial* J3DMaterialFactory_v21::create(J3DMaterial* param_0, int param_1, u32 param_2) const { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/create__22J3DMaterialFactory_v21CFP11J3DMaterialiUl.s" -} -#pragma pop - -/* 803337D8-80333834 32E118 005C+00 1/1 0/0 0/0 .text newMatColor__22J3DMaterialFactory_v21CFii */ -J3DGXColor J3DMaterialFactory_v21::newMatColor(int i_idx, int i_no) const { - GXColor defaultColor = {0xff,0xff,0xff,0xff}; - J3DGXColor defaultJ3DGXColor = J3DGXColor(defaultColor); - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mMatColorIdx[i_no] != 0xffff) { - return J3DGXColor(mpMatColor[mtl_init_data->mMatColorIdx[i_no]]); - } - return J3DGXColor(defaultJ3DGXColor); -} - -/* 80333834-8033386C 32E174 0038+00 1/1 0/0 0/0 .text newColorChanNum__22J3DMaterialFactory_v21CFi - */ -u8 J3DMaterialFactory_v21::newColorChanNum(int i_idx) const { - u8 color_chan_num_index = mpMaterialInitData[mpMaterialID[i_idx]].mColorChanNumIdx; - if (color_chan_num_index != 0xff) { - return mpColorChanNum[color_chan_num_index]; - } else { - return 0; - } -} - -/* 8033386C-80333A10 32E1AC 01A4+00 1/1 0/0 0/0 .text newColorChan__22J3DMaterialFactory_v21CFii - */ -// J3DColorChan ctor -#ifdef NONMATCHING -J3DColorChan J3DMaterialFactory_v21::newColorChan(int i_idx, int i_no) const { - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mColorChanIdx[i_no] != 0xffff) { - return J3DColorChan(mpColorChanInfo[mtl_init_data->mColorChanIdx[i_no]]); - } else { - return J3DColorChan(); - } -} -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DColorChan J3DMaterialFactory_v21::newColorChan(int param_0, int param_1) const { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newColorChan__22J3DMaterialFactory_v21CFii.s" -} -#pragma pop -#endif - -/* 80333A10-80333A48 32E350 0038+00 1/1 0/0 0/0 .text newTexGenNum__22J3DMaterialFactory_v21CFi */ -u32 J3DMaterialFactory_v21::newTexGenNum(int i_idx) const { - u8 tex_gen_num_index = mpMaterialInitData[mpMaterialID[i_idx]].mTexGenNumIdx; - if (tex_gen_num_index != 0xff) { - return mpTexGenNum[tex_gen_num_index]; - } else { - return 0; - } -} - -/* 80333A48-80333AA8 32E388 0060+00 1/1 0/0 0/0 .text newTexCoord__22J3DMaterialFactory_v21CFii */ -J3DTexCoord J3DMaterialFactory_v21::newTexCoord(int i_idx, int i_no) const { - u16 tex_coord_index = mpMaterialInitData[mpMaterialID[i_idx]].mTexCoordIdx[i_no]; - if (tex_coord_index != 0xffff) { - return J3DTexCoord(mpTexCoordInfo[tex_coord_index]); - } else { - return J3DTexCoord(); - } -} - -/* 80333AA8-80333B30 32E3E8 0088+00 1/1 0/0 0/0 .text newTexMtx__22J3DMaterialFactory_v21CFii */ -J3DTexMtx* J3DMaterialFactory_v21::newTexMtx(int i_idx, int i_no) const { - J3DTexMtx* tex_mtx = NULL; - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mTexMtxIdx[i_no] != 0xffff) { - tex_mtx = new J3DTexMtx(mpTexMtxInfo[mtl_init_data->mTexMtxIdx[i_no]]); - } - return tex_mtx; -} - -/* 80333B30-80333B70 32E470 0040+00 1/1 0/0 0/0 .text newCullMode__22J3DMaterialFactory_v21CFi */ -u8 J3DMaterialFactory_v21::newCullMode(int i_idx) const { - u8 cull_mode_index = mpMaterialInitData[mpMaterialID[i_idx]].mCullModeIdx; - if (cull_mode_index != 0xff) { - return mpCullMode[cull_mode_index]; - } else { - return 0xff; - } -} - -/* 80333B70-80333BB8 32E4B0 0048+00 1/1 0/0 0/0 .text newTexNo__22J3DMaterialFactory_v21CFii */ -u16 J3DMaterialFactory_v21::newTexNo(int i_idx, int i_no) const { - u16 tex_no_index = mpMaterialInitData[mpMaterialID[i_idx]].mTexNoIdx[i_no]; - if (tex_no_index != 0xffff) { - return mpTexNo[tex_no_index]; - } else { - return 0xffff; - } -} - -/* 80333BB8-80333C04 32E4F8 004C+00 1/1 0/0 0/0 .text newTevOrder__22J3DMaterialFactory_v21CFii */ -J3DTevOrder J3DMaterialFactory_v21::newTevOrder(int i_idx, int i_no) const { - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mTevOrderIdx[i_no] != 0xffff) { - return J3DTevOrder(mpTevOrderInfo[mtl_init_data->mTevOrderIdx[i_no]]); - } else { - return J3DTevOrder(); - } -} - -/* 80333C04-80333C74 32E544 0070+00 1/1 0/0 0/0 .text newTevColor__22J3DMaterialFactory_v21CFii */ -J3DGXColorS10 J3DMaterialFactory_v21::newTevColor(int i_idx, int i_no) const { - GXColorS10 defaultTevColor = {0,0,0,0}; - J3DGXColorS10 dflt = defaultTevColor; - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mTevColorIdx[i_no] != 0xffff) { - return mpTevColor[mtl_init_data->mTevColorIdx[i_no]]; - } else { - return defaultTevColor; - } -} - -/* 80333C74-80333CD0 32E5B4 005C+00 1/1 0/0 0/0 .text newTevKColor__22J3DMaterialFactory_v21CFii - */ -J3DGXColor J3DMaterialFactory_v21::newTevKColor(int i_idx, int param_1) const { - GXColor defaultColor = {0xff,0xff,0xff,0xff}; - J3DGXColor defaultJ3DGXColor = J3DGXColor(defaultColor); - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mTevKColorIdx[param_1] != 0xffff) { - return J3DGXColor(mpTevKColor[mtl_init_data->mTevKColorIdx[param_1]]); - } - return J3DGXColor(defaultJ3DGXColor); -} - -/* 80333CD0-80333D08 32E610 0038+00 1/1 0/0 0/0 .text newTevStageNum__22J3DMaterialFactory_v21CFi - */ -u8 J3DMaterialFactory_v21::newTevStageNum(int i_idx) const { - u8 tev_stage_num_index = mpMaterialInitData[mpMaterialID[i_idx]].mTevStageNumIdx; - if (tev_stage_num_index != 0xff) { - return mpTevStageNum[tev_stage_num_index]; - } else { - return 0xff; - } -} - -/* 80333D08-80333D68 32E648 0060+00 1/1 0/0 0/0 .text newTevStage__22J3DMaterialFactory_v21CFii */ -J3DTevStage J3DMaterialFactory_v21::newTevStage(int i_idx, int i_no) const { - u16 tev_stage_index = mpMaterialInitData[mpMaterialID[i_idx]].mTevStageIdx[i_no]; - if (tev_stage_index != 0xffff) { - return J3DTevStage(mpTevStageInfo[tev_stage_index]); - } else { - return J3DTevStage(); - } -} - -/* 80333D68-80333E04 32E6A8 009C+00 1/1 0/0 0/0 .text - * newTevSwapModeTable__22J3DMaterialFactory_v21CFii */ -J3DTevSwapModeTable J3DMaterialFactory_v21::newTevSwapModeTable(int i_idx, int param_1) const { - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mTevSwapModeTableIdx[param_1] != 0xffff) { - return J3DTevSwapModeTable(mpTevSwapModeTableInfo[mtl_init_data->mTevSwapModeTableIdx[param_1]]); - } - return J3DTevSwapModeTable(j3dDefaultTevSwapModeTable); -} - -/* 80333E04-80333EE0 32E744 00DC+00 1/1 0/0 0/0 .text newFog__22J3DMaterialFactory_v21CFi - */ -J3DFog J3DMaterialFactory_v21::newFog(int i_idx) const { - J3DFog fog; - u16 fog_index = mpMaterialInitData[mpMaterialID[i_idx]].mFogIdx; - if (fog_index != 0xffff) { - fog.setFogInfo(mpFogInfo[fog_index]); - } - return fog; -} - -/* 80333EE0-80333F60 32E820 0080+00 1/1 0/0 0/0 .text newAlphaComp__22J3DMaterialFactory_v21CFi */ -// calcAlphaCmpID issue -#ifdef NONMATCHING -J3DAlphaComp J3DMaterialFactory_v21::newAlphaComp(int i_idx) const { - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mAlphaCompIdx != 0xffff) { - return J3DAlphaComp(mpAlphaCompInfo[mtl_init_data->mAlphaCompIdx]); - } - return J3DAlphaComp(0xffff); -} -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DAlphaComp J3DMaterialFactory_v21::newAlphaComp(int param_0) const { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newAlphaComp__22J3DMaterialFactory_v21CFi.s" -} -#pragma pop -#endif - -/* 80333F60-80333FA4 32E8A0 0044+00 1/1 0/0 0/0 .text newBlend__22J3DMaterialFactory_v21CFi */ -J3DBlend J3DMaterialFactory_v21::newBlend(int i_idx) const { - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mBlendIdx != 0xffff) { - return J3DBlend(mpBlendInfo[mtl_init_data->mBlendIdx]); - } else { - return J3DBlend(j3dDefaultBlendInfo); - } -} - -/* 80333FA4-80334004 32E8E4 0060+00 1/1 0/0 0/0 .text newZMode__22J3DMaterialFactory_v21CFi */ -J3DZMode J3DMaterialFactory_v21::newZMode(int i_idx) const { - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mZModeIdx != 0xff) { - return J3DZMode(mpZModeInfo[mtl_init_data->mZModeIdx]); - } else { - return J3DZMode(); - } -} - -/* 80334004-8033403C 32E944 0038+00 1/1 0/0 0/0 .text newZCompLoc__22J3DMaterialFactory_v21CFi */ -u8 J3DMaterialFactory_v21::newZCompLoc(int i_idx) const { - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mZCompLocIdx != 0xff){ - return mpZCompLoc[mtl_init_data->mZCompLocIdx]; - } else { - return 0; - } -} - -/* 8033403C-80334074 32E97C 0038+00 1/1 0/0 0/0 .text newDither__22J3DMaterialFactory_v21CFi */ -u8 J3DMaterialFactory_v21::newDither(int i_idx) const { - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mDitherIdx != 0xff){ - return mpDither[mtl_init_data->mDitherIdx]; - } else { - return 1; - } -} - -/* 80334074-80334118 32E9B4 00A4+00 1/1 0/0 0/0 .text newNBTScale__22J3DMaterialFactory_v21CFi */ -J3DNBTScale J3DMaterialFactory_v21::newNBTScale(int i_idx) const { - J3DNBTScale dflt(j3dDefaultNBTScaleInfo); - J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; - if (mtl_init_data->mNBTScaleIdx != 0xffff) { - return J3DNBTScale(mpNBTScaleInfo[mtl_init_data->mNBTScaleIdx]); - } else { - return dflt; - } -} +// +// Generated By: dol2asm +// Translation Unit: J3DMaterialFactory_v21 +// + +#include "JSystem/J3DGraphLoader/J3DMaterialFactory_v21.h" +#include "JSystem/JSupport/JSupport.h" +#include "dol2asm.h" + +// +// Forward References: +// + +extern "C" void __ct__22J3DMaterialFactory_v21FRC20J3DMaterialBlock_v21(); +extern "C" void countUniqueMaterials__22J3DMaterialFactory_v21Fv(); +extern "C" void countTexGens__22J3DMaterialFactory_v21CFi(); +extern "C" void countStages__22J3DMaterialFactory_v21CFi(); +extern "C" void create__22J3DMaterialFactory_v21CFP11J3DMaterialiUl(); +extern "C" void newMatColor__22J3DMaterialFactory_v21CFii(); +extern "C" void newColorChanNum__22J3DMaterialFactory_v21CFi(); +extern "C" void newColorChan__22J3DMaterialFactory_v21CFii(); +extern "C" void newTexGenNum__22J3DMaterialFactory_v21CFi(); +extern "C" void newTexCoord__22J3DMaterialFactory_v21CFii(); +extern "C" void newTexMtx__22J3DMaterialFactory_v21CFii(); +extern "C" void newCullMode__22J3DMaterialFactory_v21CFi(); +extern "C" void newTexNo__22J3DMaterialFactory_v21CFii(); +extern "C" void newTevOrder__22J3DMaterialFactory_v21CFii(); +extern "C" void newTevColor__22J3DMaterialFactory_v21CFii(); +extern "C" void newTevKColor__22J3DMaterialFactory_v21CFii(); +extern "C" void newTevStageNum__22J3DMaterialFactory_v21CFi(); +extern "C" void newTevStage__22J3DMaterialFactory_v21CFii(); +extern "C" void newTevSwapModeTable__22J3DMaterialFactory_v21CFii(); +extern "C" void newFog__22J3DMaterialFactory_v21CFi(); +extern "C" void newAlphaComp__22J3DMaterialFactory_v21CFi(); +extern "C" void newBlend__22J3DMaterialFactory_v21CFi(); +extern "C" void newZMode__22J3DMaterialFactory_v21CFi(); +extern "C" void newZCompLoc__22J3DMaterialFactory_v21CFi(); +extern "C" void newDither__22J3DMaterialFactory_v21CFi(); +extern "C" void newNBTScale__22J3DMaterialFactory_v21CFi(); +extern "C" void func_80334118(void* _this, void const*, void const*); + +// +// External References: +// + +extern "C" void __ct__11J3DTevStageFv(); +extern "C" void __ct__11J3DTevStageFRC15J3DTevStageInfo(); +extern "C" void* __nw__FUl(); +extern "C" GXColorS10* func_802F41E8(void const*, void const*); +extern "C" u8* func_802F4260(void const*, void const*); +extern "C" GXColor* func_802F4278(void const*, void const*); +extern "C" GXCullMode* func_802F4290(void const*, void const*); +extern "C" u16* func_802F42C0(void const*, void const*); +extern "C" void createColorBlock__11J3DMaterialFUl(); +extern "C" void createTexGenBlock__11J3DMaterialFUl(); +extern "C" void createTevBlock__11J3DMaterialFi(); +extern "C" void createIndBlock__11J3DMaterialFi(); +extern "C" void createPEBlock__11J3DMaterialFUlUl(); +extern "C" void initialize__11J3DMaterialFv(); +extern "C" void __as__13J3DTexMtxInfoFRC13J3DTexMtxInfo(); +extern "C" void __as__10J3DFogInfoFRC10J3DFogInfo(); +extern "C" void func_80332C24(void* _this, void const*, void const*); +extern "C" void func_80332C3C(void* _this, void const*, void const*); +extern "C" void func_80332C54(void* _this, void const*, void const*); +extern "C" void func_80332C6C(void* _this, void const*, void const*); +extern "C" void func_80332C84(void* _this, void const*, void const*); +extern "C" void func_80332C9C(void* _this, void const*, void const*); +extern "C" void func_80332CB4(void* _this, void const*, void const*); +extern "C" void func_80332CCC(void* _this, void const*, void const*); +extern "C" void func_80332CE4(void* _this, void const*, void const*); +extern "C" void func_80332CFC(void* _this, void const*, void const*); +extern "C" void func_80332D14(void* _this, void const*, void const*); +extern "C" void func_80332D2C(void* _this, void const*, void const*); +extern "C" void func_80332D5C(void* _this, void const*, void const*); +extern "C" void _savegpr_19(); +extern "C" void _savegpr_29(); +extern "C" void _restgpr_19(); +extern "C" void _restgpr_29(); +extern "C" extern void* __vt__11J3DMaterial[12]; + +// +// Declarations: +// + +/* 80332DA4-80332F84 32D6E4 01E0+00 0/0 2/2 0/0 .text + * __ct__22J3DMaterialFactory_v21FRC20J3DMaterialBlock_v21 */ +J3DMaterialFactory_v21::J3DMaterialFactory_v21(J3DMaterialBlock_v21 const& i_block) { + mMaterialNum = i_block.mMaterialNum; + mpMaterialInitData = JSUConvertOffsetToPtr(&i_block, i_block.mpMaterialInitData); + mpMaterialID = JSUConvertOffsetToPtr(&i_block, i_block.mpMaterialID); + mpCullMode = JSUConvertOffsetToPtr(&i_block, i_block.mpCullMode); + mpMatColor = JSUConvertOffsetToPtr(&i_block, i_block.mpMatColor); + mpColorChanNum = JSUConvertOffsetToPtr(&i_block, i_block.mpColorChanNum); + mpColorChanInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpColorChanInfo); + mpTexGenNum = JSUConvertOffsetToPtr(&i_block, i_block.mpTexGenNum); + mpTexCoordInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpTexCoordInfo); + mpTexCoord2Info = JSUConvertOffsetToPtr(&i_block, i_block.mpTexCoord2Info); + mpTexMtxInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpTexMtxInfo); + field_0x28 = JSUConvertOffsetToPtr(&i_block, i_block.field_0x38); + mpTexNo = JSUConvertOffsetToPtr(&i_block, i_block.mpTexNo); + mpTevOrderInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpTevOrderInfo); + mpTevColor = JSUConvertOffsetToPtr(&i_block, i_block.mpTevColor); + mpTevKColor = JSUConvertOffsetToPtr(&i_block, i_block.mpTevKColor); + mpTevStageNum = JSUConvertOffsetToPtr(&i_block, i_block.mpTevStageNum); + mpTevStageInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpTevStageInfo); + mpTevSwapModeInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpTevSwapModeInfo); + mpTevSwapModeTableInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpTevSwapModeTableInfo); + mpFogInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpFogInfo); + mpAlphaCompInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpAlphaCompInfo); + mpBlendInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpBlendInfo); + mpZModeInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpZModeInfo); + mpZCompLoc = JSUConvertOffsetToPtr(&i_block, i_block.mpZCompLoc); + mpDither = JSUConvertOffsetToPtr(&i_block, i_block.mpDither); + mpNBTScaleInfo = JSUConvertOffsetToPtr(&i_block, i_block.mpNBTScaleInfo); +} + +/* 80332F84-80332FA8 32D8C4 0024+00 0/0 1/1 0/0 .text + * countUniqueMaterials__22J3DMaterialFactory_v21Fv */ +u16 J3DMaterialFactory_v21::countUniqueMaterials() { + u16 i; + for (i = 0; i < mMaterialNum; i++) { + } + return i; +} + +/* 80332FA8-80332FE0 32D8E8 0038+00 1/1 0/0 0/0 .text countTexGens__22J3DMaterialFactory_v21CFi */ +u32 J3DMaterialFactory_v21::countTexGens(int i_idx) const { + u8 tex_gen_num_index = mpMaterialInitData[mpMaterialID[i_idx]].mTexGenNumIdx; + if (tex_gen_num_index != 0xff) { + return mpTexGenNum[tex_gen_num_index]; + } + return 0; +} + +/* 80332FE0-80333068 32D920 0088+00 1/1 0/0 0/0 .text countStages__22J3DMaterialFactory_v21CFi */ +u32 J3DMaterialFactory_v21::countStages(int i_idx) const { + J3DMaterialInitData_v21* init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + u32 count1 = 0; + u32 count2 = 0; + u8 tev_stage_num_index = init_data->mTevStageNumIdx; + if (tev_stage_num_index != 0xff) { + count2 = mpTevStageNum[tev_stage_num_index]; + } + for (int i = 0; i < 8; i++) { + if (init_data->mTexNoIdx[i] != 0xffff) { + count1++; + } + } + if (count2 != count1 && count1 != 0) { + if (count2 > count1) { + return count2; + } else { + return count1; + } + } + return count2; +} + +/* 80333068-803337D8 32D9A8 0770+00 0/0 2/2 0/0 .text + * create__22J3DMaterialFactory_v21CFP11J3DMaterialiUl */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm J3DMaterial* J3DMaterialFactory_v21::create(J3DMaterial* param_0, int param_1, u32 param_2) const { + nofralloc +#include "asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/create__22J3DMaterialFactory_v21CFP11J3DMaterialiUl.s" +} +#pragma pop + +/* 803337D8-80333834 32E118 005C+00 1/1 0/0 0/0 .text newMatColor__22J3DMaterialFactory_v21CFii */ +J3DGXColor J3DMaterialFactory_v21::newMatColor(int i_idx, int i_no) const { + GXColor defaultColor = {0xff,0xff,0xff,0xff}; + J3DGXColor defaultJ3DGXColor = J3DGXColor(defaultColor); + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mMatColorIdx[i_no] != 0xffff) { + return J3DGXColor(mpMatColor[mtl_init_data->mMatColorIdx[i_no]]); + } + return J3DGXColor(defaultJ3DGXColor); +} + +/* 80333834-8033386C 32E174 0038+00 1/1 0/0 0/0 .text newColorChanNum__22J3DMaterialFactory_v21CFi + */ +u8 J3DMaterialFactory_v21::newColorChanNum(int i_idx) const { + u8 color_chan_num_index = mpMaterialInitData[mpMaterialID[i_idx]].mColorChanNumIdx; + if (color_chan_num_index != 0xff) { + return mpColorChanNum[color_chan_num_index]; + } else { + return 0; + } +} + +/* 8033386C-80333A10 32E1AC 01A4+00 1/1 0/0 0/0 .text newColorChan__22J3DMaterialFactory_v21CFii + */ +// J3DColorChan ctor +#ifdef NONMATCHING +J3DColorChan J3DMaterialFactory_v21::newColorChan(int i_idx, int i_no) const { + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mColorChanIdx[i_no] != 0xffff) { + return J3DColorChan(mpColorChanInfo[mtl_init_data->mColorChanIdx[i_no]]); + } else { + return J3DColorChan(); + } +} +#else +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm J3DColorChan J3DMaterialFactory_v21::newColorChan(int param_0, int param_1) const { + nofralloc +#include "asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newColorChan__22J3DMaterialFactory_v21CFii.s" +} +#pragma pop +#endif + +/* 80333A10-80333A48 32E350 0038+00 1/1 0/0 0/0 .text newTexGenNum__22J3DMaterialFactory_v21CFi */ +u32 J3DMaterialFactory_v21::newTexGenNum(int i_idx) const { + u8 tex_gen_num_index = mpMaterialInitData[mpMaterialID[i_idx]].mTexGenNumIdx; + if (tex_gen_num_index != 0xff) { + return mpTexGenNum[tex_gen_num_index]; + } else { + return 0; + } +} + +/* 80333A48-80333AA8 32E388 0060+00 1/1 0/0 0/0 .text newTexCoord__22J3DMaterialFactory_v21CFii */ +J3DTexCoord J3DMaterialFactory_v21::newTexCoord(int i_idx, int i_no) const { + u16 tex_coord_index = mpMaterialInitData[mpMaterialID[i_idx]].mTexCoordIdx[i_no]; + if (tex_coord_index != 0xffff) { + return J3DTexCoord(mpTexCoordInfo[tex_coord_index]); + } else { + return J3DTexCoord(); + } +} + +/* 80333AA8-80333B30 32E3E8 0088+00 1/1 0/0 0/0 .text newTexMtx__22J3DMaterialFactory_v21CFii */ +J3DTexMtx* J3DMaterialFactory_v21::newTexMtx(int i_idx, int i_no) const { + J3DTexMtx* tex_mtx = NULL; + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mTexMtxIdx[i_no] != 0xffff) { + tex_mtx = new J3DTexMtx(mpTexMtxInfo[mtl_init_data->mTexMtxIdx[i_no]]); + } + return tex_mtx; +} + +/* 80333B30-80333B70 32E470 0040+00 1/1 0/0 0/0 .text newCullMode__22J3DMaterialFactory_v21CFi */ +u8 J3DMaterialFactory_v21::newCullMode(int i_idx) const { + u8 cull_mode_index = mpMaterialInitData[mpMaterialID[i_idx]].mCullModeIdx; + if (cull_mode_index != 0xff) { + return mpCullMode[cull_mode_index]; + } else { + return 0xff; + } +} + +/* 80333B70-80333BB8 32E4B0 0048+00 1/1 0/0 0/0 .text newTexNo__22J3DMaterialFactory_v21CFii */ +u16 J3DMaterialFactory_v21::newTexNo(int i_idx, int i_no) const { + u16 tex_no_index = mpMaterialInitData[mpMaterialID[i_idx]].mTexNoIdx[i_no]; + if (tex_no_index != 0xffff) { + return mpTexNo[tex_no_index]; + } else { + return 0xffff; + } +} + +/* 80333BB8-80333C04 32E4F8 004C+00 1/1 0/0 0/0 .text newTevOrder__22J3DMaterialFactory_v21CFii */ +J3DTevOrder J3DMaterialFactory_v21::newTevOrder(int i_idx, int i_no) const { + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mTevOrderIdx[i_no] != 0xffff) { + return J3DTevOrder(mpTevOrderInfo[mtl_init_data->mTevOrderIdx[i_no]]); + } else { + return J3DTevOrder(); + } +} + +/* 80333C04-80333C74 32E544 0070+00 1/1 0/0 0/0 .text newTevColor__22J3DMaterialFactory_v21CFii */ +J3DGXColorS10 J3DMaterialFactory_v21::newTevColor(int i_idx, int i_no) const { + GXColorS10 defaultTevColor = {0,0,0,0}; + J3DGXColorS10 dflt = defaultTevColor; + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mTevColorIdx[i_no] != 0xffff) { + return mpTevColor[mtl_init_data->mTevColorIdx[i_no]]; + } else { + return defaultTevColor; + } +} + +/* 80333C74-80333CD0 32E5B4 005C+00 1/1 0/0 0/0 .text newTevKColor__22J3DMaterialFactory_v21CFii + */ +J3DGXColor J3DMaterialFactory_v21::newTevKColor(int i_idx, int param_1) const { + GXColor defaultColor = {0xff,0xff,0xff,0xff}; + J3DGXColor defaultJ3DGXColor = J3DGXColor(defaultColor); + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mTevKColorIdx[param_1] != 0xffff) { + return J3DGXColor(mpTevKColor[mtl_init_data->mTevKColorIdx[param_1]]); + } + return J3DGXColor(defaultJ3DGXColor); +} + +/* 80333CD0-80333D08 32E610 0038+00 1/1 0/0 0/0 .text newTevStageNum__22J3DMaterialFactory_v21CFi + */ +u8 J3DMaterialFactory_v21::newTevStageNum(int i_idx) const { + u8 tev_stage_num_index = mpMaterialInitData[mpMaterialID[i_idx]].mTevStageNumIdx; + if (tev_stage_num_index != 0xff) { + return mpTevStageNum[tev_stage_num_index]; + } else { + return 0xff; + } +} + +/* 80333D08-80333D68 32E648 0060+00 1/1 0/0 0/0 .text newTevStage__22J3DMaterialFactory_v21CFii */ +J3DTevStage J3DMaterialFactory_v21::newTevStage(int i_idx, int i_no) const { + u16 tev_stage_index = mpMaterialInitData[mpMaterialID[i_idx]].mTevStageIdx[i_no]; + if (tev_stage_index != 0xffff) { + return J3DTevStage(mpTevStageInfo[tev_stage_index]); + } else { + return J3DTevStage(); + } +} + +/* 80333D68-80333E04 32E6A8 009C+00 1/1 0/0 0/0 .text + * newTevSwapModeTable__22J3DMaterialFactory_v21CFii */ +J3DTevSwapModeTable J3DMaterialFactory_v21::newTevSwapModeTable(int i_idx, int param_1) const { + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mTevSwapModeTableIdx[param_1] != 0xffff) { + return J3DTevSwapModeTable(mpTevSwapModeTableInfo[mtl_init_data->mTevSwapModeTableIdx[param_1]]); + } + return J3DTevSwapModeTable(j3dDefaultTevSwapModeTable); +} + +/* 80333E04-80333EE0 32E744 00DC+00 1/1 0/0 0/0 .text newFog__22J3DMaterialFactory_v21CFi + */ +J3DFog J3DMaterialFactory_v21::newFog(int i_idx) const { + J3DFog fog; + u16 fog_index = mpMaterialInitData[mpMaterialID[i_idx]].mFogIdx; + if (fog_index != 0xffff) { + fog.setFogInfo(mpFogInfo[fog_index]); + } + return fog; +} + +/* 80333EE0-80333F60 32E820 0080+00 1/1 0/0 0/0 .text newAlphaComp__22J3DMaterialFactory_v21CFi */ +// calcAlphaCmpID issue +#ifdef NONMATCHING +J3DAlphaComp J3DMaterialFactory_v21::newAlphaComp(int i_idx) const { + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mAlphaCompIdx != 0xffff) { + return J3DAlphaComp(mpAlphaCompInfo[mtl_init_data->mAlphaCompIdx]); + } + return J3DAlphaComp(0xffff); +} +#else +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm J3DAlphaComp J3DMaterialFactory_v21::newAlphaComp(int param_0) const { + nofralloc +#include "asm/JSystem/J3DGraphLoader/J3DMaterialFactory_v21/newAlphaComp__22J3DMaterialFactory_v21CFi.s" +} +#pragma pop +#endif + +/* 80333F60-80333FA4 32E8A0 0044+00 1/1 0/0 0/0 .text newBlend__22J3DMaterialFactory_v21CFi */ +J3DBlend J3DMaterialFactory_v21::newBlend(int i_idx) const { + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mBlendIdx != 0xffff) { + return J3DBlend(mpBlendInfo[mtl_init_data->mBlendIdx]); + } else { + return J3DBlend(j3dDefaultBlendInfo); + } +} + +/* 80333FA4-80334004 32E8E4 0060+00 1/1 0/0 0/0 .text newZMode__22J3DMaterialFactory_v21CFi */ +J3DZMode J3DMaterialFactory_v21::newZMode(int i_idx) const { + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mZModeIdx != 0xff) { + return J3DZMode(mpZModeInfo[mtl_init_data->mZModeIdx]); + } else { + return J3DZMode(); + } +} + +/* 80334004-8033403C 32E944 0038+00 1/1 0/0 0/0 .text newZCompLoc__22J3DMaterialFactory_v21CFi */ +u8 J3DMaterialFactory_v21::newZCompLoc(int i_idx) const { + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mZCompLocIdx != 0xff){ + return mpZCompLoc[mtl_init_data->mZCompLocIdx]; + } else { + return 0; + } +} + +/* 8033403C-80334074 32E97C 0038+00 1/1 0/0 0/0 .text newDither__22J3DMaterialFactory_v21CFi */ +u8 J3DMaterialFactory_v21::newDither(int i_idx) const { + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mDitherIdx != 0xff){ + return mpDither[mtl_init_data->mDitherIdx]; + } else { + return 1; + } +} + +/* 80334074-80334118 32E9B4 00A4+00 1/1 0/0 0/0 .text newNBTScale__22J3DMaterialFactory_v21CFi */ +J3DNBTScale J3DMaterialFactory_v21::newNBTScale(int i_idx) const { + J3DNBTScale dflt(j3dDefaultNBTScaleInfo); + J3DMaterialInitData_v21* mtl_init_data = &mpMaterialInitData[mpMaterialID[i_idx]]; + if (mtl_init_data->mNBTScaleIdx != 0xffff) { + return J3DNBTScale(mpNBTScaleInfo[mtl_init_data->mNBTScaleIdx]); + } else { + return dflt; + } +} diff --git a/libs/JSystem/J3DGraphLoader/J3DModelLoader.cpp b/libs/JSystem/J3DGraphLoader/J3DModelLoader.cpp index d852ec7b5e..df18b83891 100644 --- a/libs/JSystem/J3DGraphLoader/J3DModelLoader.cpp +++ b/libs/JSystem/J3DGraphLoader/J3DModelLoader.cpp @@ -8,9 +8,7 @@ #include "JSystem/J3DGraphLoader/J3DMaterialFactory.h" #include "JSystem/J3DGraphLoader/J3DMaterialFactory_v21.h" #include "JSystem/J3DGraphLoader/J3DShapeFactory.h" -#include "JSystem/J3DGraphAnimator/J3DJointTree.h" #include "JSystem/J3DGraphAnimator/J3DModelData.h" -#include "JSystem/J3DGraphAnimator/J3DMaterialAttach.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "JSystem/JUtility/JUTNameTab.h" #include "JSystem/JKernel/JKRHeap.h" diff --git a/libs/JSystem/J3DGraphLoader/J3DShapeFactory.cpp b/libs/JSystem/J3DGraphLoader/J3DShapeFactory.cpp index 60edda683f..a8f89a236e 100644 --- a/libs/JSystem/J3DGraphLoader/J3DShapeFactory.cpp +++ b/libs/JSystem/J3DGraphLoader/J3DShapeFactory.cpp @@ -8,7 +8,6 @@ #include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JSupport/JSupport.h" #include "dolphin/os.h" -#include "global.h" // // Forward References: diff --git a/libs/JSystem/J3DU/J3DUClipper.cpp b/libs/JSystem/J3DU/J3DUClipper.cpp index c215769d02..20cbc171bd 100644 --- a/libs/JSystem/J3DU/J3DUClipper.cpp +++ b/libs/JSystem/J3DU/J3DUClipper.cpp @@ -5,7 +5,6 @@ #include "JSystem/J3DU/J3DUClipper.h" #include "math.h" -#include "dolphin/types.h" // // Forward References: diff --git a/libs/JSystem/JAudio2/JAIAudible.cpp b/libs/JSystem/JAudio2/JAIAudible.cpp index 106c9ec73d..ac0faf8132 100644 --- a/libs/JSystem/JAudio2/JAIAudible.cpp +++ b/libs/JSystem/JAudio2/JAIAudible.cpp @@ -1,4 +1,3 @@ #include "JSystem/JAudio2/JAIAudible.h" -#include "dolphin/types.h" JAIAudible::~JAIAudible() {} diff --git a/libs/JSystem/JAudio2/JAIAudience.cpp b/libs/JSystem/JAudio2/JAIAudience.cpp index 92dec47721..8b563d0950 100644 --- a/libs/JSystem/JAudio2/JAIAudience.cpp +++ b/libs/JSystem/JAudio2/JAIAudience.cpp @@ -1,4 +1,3 @@ #include "JSystem/JAudio2/JAIAudience.h" -#include "dolphin/types.h" JAIAudience::~JAIAudience() {} diff --git a/libs/JSystem/JAudio2/JAISe.cpp b/libs/JSystem/JAudio2/JAISe.cpp index b344dee402..d35278eaa3 100644 --- a/libs/JSystem/JAudio2/JAISe.cpp +++ b/libs/JSystem/JAudio2/JAISe.cpp @@ -6,7 +6,6 @@ #include "JSystem/JAudio2/JAISe.h" #include "JSystem/JAudio2/JAIAudience.h" #include "JSystem/JAudio2/JAISeMgr.h" -#include "JSystem/JSupport/JSUList.h" #include "dolphin/types.h" // diff --git a/libs/JSystem/JAudio2/JAISeq.cpp b/libs/JSystem/JAudio2/JAISeq.cpp index d00b503c66..b1dafa6ef9 100644 --- a/libs/JSystem/JAudio2/JAISeq.cpp +++ b/libs/JSystem/JAudio2/JAISeq.cpp @@ -5,9 +5,7 @@ #include "JSystem/JAudio2/JAISeq.h" #include "JSystem/JAudio2/JAISeqMgr.h" -#include "JSystem/JAudio2/JASCriticalSection.h" #include "JSystem/JAudio2/JAISoundChild.h" -#include "JSystem/JAudio2/JAIAudience.h" #include "JSystem/JKernel/JKRHeap.h" #include "dol2asm.h" diff --git a/libs/JSystem/JAudio2/JAISeqDataMgr.cpp b/libs/JSystem/JAudio2/JAISeqDataMgr.cpp index ac7304c71d..be54b1a301 100644 --- a/libs/JSystem/JAudio2/JAISeqDataMgr.cpp +++ b/libs/JSystem/JAudio2/JAISeqDataMgr.cpp @@ -1,5 +1,4 @@ #include "JSystem/JAudio2/JAISeqDataMgr.h" -#include "dolphin/types.h" JAISeqDataUser::~JAISeqDataUser() {} diff --git a/libs/JSystem/JAudio2/JAISeqMgr.cpp b/libs/JSystem/JAudio2/JAISeqMgr.cpp index 89a1afa770..2452c36bf8 100644 --- a/libs/JSystem/JAudio2/JAISeqMgr.cpp +++ b/libs/JSystem/JAudio2/JAISeqMgr.cpp @@ -5,7 +5,6 @@ #include "JSystem/JAudio2/JAISeqMgr.h" #include "JSystem/JAudio2/JAISeq.h" -#include "JSystem/JAudio2/JASHeapCtrl.h" #include "JSystem/JAudio2/JAISoundHandles.h" #include "JSystem/JAudio2/JAISoundInfo.h" #include "dol2asm.h" diff --git a/libs/JSystem/JAudio2/JAISound.cpp b/libs/JSystem/JAudio2/JAISound.cpp index b8de2969fd..ccec52ea7b 100644 --- a/libs/JSystem/JAudio2/JAISound.cpp +++ b/libs/JSystem/JAudio2/JAISound.cpp @@ -8,7 +8,6 @@ #include "JSystem/JAudio2/JAISoundHandles.h" #include "JSystem/JAudio2/JASReport.h" #include "JSystem/JAudio2/JASTrack.h" -#include "global.h" // // Forward References: diff --git a/libs/JSystem/JAudio2/JAISoundChild.cpp b/libs/JSystem/JAudio2/JAISoundChild.cpp index f8721b0aad..81944b0d86 100644 --- a/libs/JSystem/JAudio2/JAISoundChild.cpp +++ b/libs/JSystem/JAudio2/JAISoundChild.cpp @@ -1,6 +1,5 @@ #include "JSystem/JAudio2/JAISoundChild.h" #include "JSystem/JAudio2/JASTrack.h" -#include "dolphin/types.h" void JAISoundChild::init() { mMove.init(); diff --git a/libs/JSystem/JAudio2/JAISoundParams.cpp b/libs/JSystem/JAudio2/JAISoundParams.cpp index a7d8bc8e19..dcd0d10cd5 100644 --- a/libs/JSystem/JAudio2/JAISoundParams.cpp +++ b/libs/JSystem/JAudio2/JAISoundParams.cpp @@ -1,5 +1,4 @@ #include "JSystem/JAudio2/JAISoundParams.h" -#include "dolphin/types.h" void JAISoundParamsMove::moveVolume(f32 newValue, u32 count) { if (count == 0) { diff --git a/libs/JSystem/JAudio2/JAISoundStarter.cpp b/libs/JSystem/JAudio2/JAISoundStarter.cpp index 073bac8c43..69ee1e5779 100644 --- a/libs/JSystem/JAudio2/JAISoundStarter.cpp +++ b/libs/JSystem/JAudio2/JAISoundStarter.cpp @@ -4,7 +4,6 @@ #include "JSystem/JAudio2/JAISoundStarter.h" #include "JSystem/JAudio2/JAISoundHandles.h" -#include "dolphin/types.h" /* 802A2F6C-802A2F88 29D8AC 001C+00 0/0 1/1 0/0 .text __ct__15JAISoundStarterFb */ JAISoundStarter::JAISoundStarter(bool param_0) : JASGlobalInstance(param_0) { diff --git a/libs/JSystem/JAudio2/JAIStream.cpp b/libs/JSystem/JAudio2/JAIStream.cpp index f79efde35a..3eb5135227 100644 --- a/libs/JSystem/JAudio2/JAIStream.cpp +++ b/libs/JSystem/JAudio2/JAIStream.cpp @@ -5,8 +5,6 @@ #include "JSystem/JAudio2/JAIStream.h" #include "JSystem/JAudio2/JAIStreamMgr.h" -#include "JSystem/JAudio2/JASHeapCtrl.h" -#include "JSystem/JAudio2/JAIAudience.h" #include "JSystem/JAudio2/JAISoundChild.h" #include "JSystem/JAudio2/JAIStreamDataMgr.h" #include "JSystem/JKernel/JKRHeap.h" diff --git a/libs/JSystem/JAudio2/JAIStreamDataMgr.cpp b/libs/JSystem/JAudio2/JAIStreamDataMgr.cpp index 8c04a7a66c..3534a5bc16 100644 --- a/libs/JSystem/JAudio2/JAIStreamDataMgr.cpp +++ b/libs/JSystem/JAudio2/JAIStreamDataMgr.cpp @@ -1,5 +1,4 @@ #include "JSystem/JAudio2/JAIStreamDataMgr.h" -#include "dolphin/types.h" JAIStreamDataMgr::~JAIStreamDataMgr() {} diff --git a/libs/JSystem/JAudio2/JASAiCtrl.cpp b/libs/JSystem/JAudio2/JASAiCtrl.cpp index cf125fbc95..40b16b119b 100644 --- a/libs/JSystem/JAudio2/JASAiCtrl.cpp +++ b/libs/JSystem/JAudio2/JASAiCtrl.cpp @@ -9,10 +9,7 @@ #include "JSystem/JAudio2/JASCriticalSection.h" #include "JSystem/JAudio2/JASDSPInterface.h" #include "JSystem/JAudio2/JASHeapCtrl.h" -#include "JSystem/JAudio2/JASLfo.h" #include "JSystem/JAudio2/JASProbe.h" -#include "JSystem/JAudio2/JASReport.h" -#include "JSystem/JKernel/JKRSolidHeap.h" #include "dol2asm.h" #include "dolphin/ai.h" #include "dolphin/os/OSCache.h" diff --git a/libs/JSystem/JAudio2/JASAramStream.cpp b/libs/JSystem/JAudio2/JASAramStream.cpp index 1084f2675c..2d5225f034 100644 --- a/libs/JSystem/JAudio2/JASAramStream.cpp +++ b/libs/JSystem/JAudio2/JASAramStream.cpp @@ -4,13 +4,10 @@ // #include "JSystem/JAudio2/JASAramStream.h" -#include "JSystem/JAudio2/JASAiCtrl.h" #include "JSystem/JAudio2/JASChannel.h" #include "JSystem/JAudio2/JASCriticalSection.h" -#include "JSystem/JAudio2/JASDSPInterface.h" #include "JSystem/JAudio2/JASDriverIF.h" #include "JSystem/JAudio2/JASDvdThread.h" -#include "JSystem/JKernel/JKRAram.h" #include "JSystem/JKernel/JKRSolidHeap.h" #include "dol2asm.h" diff --git a/libs/JSystem/JAudio2/JASAudioReseter.cpp b/libs/JSystem/JAudio2/JASAudioReseter.cpp index f77508f811..95fb409c50 100644 --- a/libs/JSystem/JAudio2/JASAudioReseter.cpp +++ b/libs/JSystem/JAudio2/JASAudioReseter.cpp @@ -7,7 +7,6 @@ #include "JSystem/JAudio2/JASAudioThread.h" #include "JSystem/JAudio2/JASCriticalSection.h" #include "JSystem/JAudio2/JASDriverIF.h" -#include "dol2asm.h" #include "dolphin/types.h" // diff --git a/libs/JSystem/JAudio2/JASAudioThread.cpp b/libs/JSystem/JAudio2/JASAudioThread.cpp index 109fd30273..66cfbf711e 100644 --- a/libs/JSystem/JAudio2/JASAudioThread.cpp +++ b/libs/JSystem/JAudio2/JASAudioThread.cpp @@ -4,11 +4,9 @@ // #include "JSystem/JAudio2/JASAudioThread.h" -#include "JSystem/JAudio2/JASDriverIF.h" #include "JSystem/JAudio2/JASHeapCtrl.h" #include "JSystem/JKernel/JKRSolidHeap.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "dolphin/dsp.h" // diff --git a/libs/JSystem/JAudio2/JASBank.cpp b/libs/JSystem/JAudio2/JASBank.cpp index c752cfcf9c..250c789a8e 100644 --- a/libs/JSystem/JAudio2/JASBank.cpp +++ b/libs/JSystem/JAudio2/JASBank.cpp @@ -4,9 +4,6 @@ // #include "JSystem/JAudio2/JASBank.h" -#include "JSystem/JAudio2/JASAiCtrl.h" -#include "JSystem/JAudio2/JASBasicInst.h" -#include "JSystem/JAudio2/JASBasicWaveBank.h" #include "JSystem/JAudio2/JASChannel.h" #include "dol2asm.h" diff --git a/libs/JSystem/JAudio2/JASBasicWaveBank.cpp b/libs/JSystem/JAudio2/JASBasicWaveBank.cpp index 19b4d1f4ce..3ed7767e1e 100644 --- a/libs/JSystem/JAudio2/JASBasicWaveBank.cpp +++ b/libs/JSystem/JAudio2/JASBasicWaveBank.cpp @@ -7,7 +7,6 @@ #include "JSystem/JAudio2/JASMutex.h" #include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JUtility/JUTAssert.h" -#include "dol2asm.h" // // Types: diff --git a/libs/JSystem/JAudio2/JASChannel.cpp b/libs/JSystem/JAudio2/JASChannel.cpp index 8d74d1539a..2b7c8a3d6b 100644 --- a/libs/JSystem/JAudio2/JASChannel.cpp +++ b/libs/JSystem/JAudio2/JASChannel.cpp @@ -11,7 +11,6 @@ #include "JSystem/JSupport/JSupport.h" #include "JSystem/JMath/JMATrigonometric.h" #include "JSystem/JGeometry.h" -#include "dol2asm.h" // // Forward References: diff --git a/libs/JSystem/JAudio2/JASDSPInterface.cpp b/libs/JSystem/JAudio2/JASDSPInterface.cpp index 9c601948c2..a93069b7ac 100644 --- a/libs/JSystem/JAudio2/JASDSPInterface.cpp +++ b/libs/JSystem/JAudio2/JASDSPInterface.cpp @@ -11,7 +11,6 @@ #include "JSystem/JAudio2/osdsp_task.h" #include "JSystem/JAudio2/JASCriticalSection.h" #include "JSystem/JKernel/JKRSolidHeap.h" -#include "dolphin/dsp.h" #include "dolphin/os/OSCache.h" // diff --git a/libs/JSystem/JAudio2/JASDvdThread.cpp b/libs/JSystem/JAudio2/JASDvdThread.cpp index 9ed566f29f..3da1a6e22e 100644 --- a/libs/JSystem/JAudio2/JASDvdThread.cpp +++ b/libs/JSystem/JAudio2/JASDvdThread.cpp @@ -5,7 +5,6 @@ #include "JSystem/JAudio2/JASDvdThread.h" #include "JSystem/JAudio2/JASTaskThread.h" -#include "JSystem/JAudio2/JASHeapCtrl.h" #include "JSystem/JKernel/JKRSolidHeap.h" #include "dolphin/types.h" diff --git a/libs/JSystem/JAudio2/JASHeapCtrl.cpp b/libs/JSystem/JAudio2/JASHeapCtrl.cpp index 0dca0bbc74..8163429e94 100644 --- a/libs/JSystem/JAudio2/JASHeapCtrl.cpp +++ b/libs/JSystem/JAudio2/JASHeapCtrl.cpp @@ -5,8 +5,6 @@ #include "JSystem/JAudio2/JASHeapCtrl.h" #include "JSystem/JAudio2/JASMutex.h" -#include "JSystem/JKernel/JKRExpHeap.h" -#include "JSystem/JKernel/JKRSolidHeap.h" #include "JSystem/JUtility/JUTAssert.h" #include "dol2asm.h" diff --git a/libs/JSystem/JAudio2/JASSeqParser.cpp b/libs/JSystem/JAudio2/JASSeqParser.cpp index 9cbe077c0f..aeda5e55cc 100644 --- a/libs/JSystem/JAudio2/JASSeqParser.cpp +++ b/libs/JSystem/JAudio2/JASSeqParser.cpp @@ -6,9 +6,7 @@ #include "JSystem/JAudio2/JASSeqParser.h" #include "JSystem/JAudio2/JASCalc.h" #include "JSystem/JAudio2/JASReport.h" -#include "JSystem/JAudio2/JASSeqCtrl.h" #include "JSystem/JAudio2/JASTrack.h" -#include "JSystem/JAudio2/JASTrackPort.h" #include "JSystem/JMath/random.h" #include "JSystem/JSupport/JSupport.h" #include "dol2asm.h" diff --git a/libs/JSystem/JAudio2/JASTaskThread.cpp b/libs/JSystem/JAudio2/JASTaskThread.cpp index 7d9091f6f6..7fc8f9ebea 100644 --- a/libs/JSystem/JAudio2/JASTaskThread.cpp +++ b/libs/JSystem/JAudio2/JASTaskThread.cpp @@ -7,8 +7,6 @@ #include "JSystem/JAudio2/JASCalc.h" #include "JSystem/JAudio2/JASCriticalSection.h" #include "JSystem/JKernel/JKRSolidHeap.h" -#include "dol2asm.h" -#include "dolphin/os/OSInterrupt.h" #include "dolphin/os.h" // diff --git a/libs/JSystem/JAudio2/JASTrack.cpp b/libs/JSystem/JAudio2/JASTrack.cpp index f75be65978..8e683c597d 100644 --- a/libs/JSystem/JAudio2/JASTrack.cpp +++ b/libs/JSystem/JAudio2/JASTrack.cpp @@ -4,10 +4,7 @@ // #include "JSystem/JAudio2/JASTrack.h" -#include "JSystem/JAudio2/JASAiCtrl.h" -#include "JSystem/JAudio2/JASBank.h" #include "JSystem/JAudio2/JASCriticalSection.h" -#include "JSystem/JAudio2/JASDSPInterface.h" #include "JSystem/JAudio2/JASDriverIF.h" #include "dol2asm.h" diff --git a/libs/JSystem/JAudio2/JASWSParser.cpp b/libs/JSystem/JAudio2/JASWSParser.cpp index e26d898b74..6326120c93 100644 --- a/libs/JSystem/JAudio2/JASWSParser.cpp +++ b/libs/JSystem/JAudio2/JASWSParser.cpp @@ -4,9 +4,6 @@ // #include "JSystem/JAudio2/JASWSParser.h" -#include "JSystem/JAudio2/JASWaveInfo.h" -#include "JSystem/JAudio2/JASWaveArcLoader.h" -#include "JSystem/JAudio2/JASSimpleWaveBank.h" #include "JSystem/JAudio2/JASBasicWaveBank.h" #include "JSystem/JKernel/JKRHeap.h" #include "dolphin/types.h" diff --git a/libs/JSystem/JAudio2/JASWaveArcLoader.cpp b/libs/JSystem/JAudio2/JASWaveArcLoader.cpp index 24e440b19e..8e3a97338c 100644 --- a/libs/JSystem/JAudio2/JASWaveArcLoader.cpp +++ b/libs/JSystem/JAudio2/JASWaveArcLoader.cpp @@ -9,7 +9,6 @@ #include "JSystem/JAudio2/JASMutex.h" #include "JSystem/JKernel/JKRDvdAramRipper.h" #include "string.h" -#include "dolphin/dvd.h" #include "dolphin/os.h" // diff --git a/libs/JSystem/JAudio2/JAUAudioArcLoader.cpp b/libs/JSystem/JAudio2/JAUAudioArcLoader.cpp index f2e7328560..9d5c7b9737 100644 --- a/libs/JSystem/JAudio2/JAUAudioArcLoader.cpp +++ b/libs/JSystem/JAudio2/JAUAudioArcLoader.cpp @@ -6,7 +6,6 @@ #include "JSystem/JAudio2/JAUAudioArcLoader.h" #include "JSystem/JAudio2/JAISeMgr.h" #include "JSystem/JAudio2/JAUSectionHeap.h" -#include "JSystem/JUtility/JUTAssert.h" // // Declarations: diff --git a/libs/JSystem/JAudio2/JAUBankTable.cpp b/libs/JSystem/JAudio2/JAUBankTable.cpp index 79cfb85f46..b924cb84fa 100644 --- a/libs/JSystem/JAudio2/JAUBankTable.cpp +++ b/libs/JSystem/JAudio2/JAUBankTable.cpp @@ -4,7 +4,6 @@ // #include "JSystem/JAudio2/JAUBankTable.h" -#include "dolphin/types.h" /* 802A4A80-802A4AA0 29F3C0 0020+00 0/0 1/1 0/0 .text * appendBankTable__22JAUBankTableDictionaryFP23JSULink<12JAUBankTable> */ diff --git a/libs/JSystem/JAudio2/JAUInitializer.cpp b/libs/JSystem/JAudio2/JAUInitializer.cpp index 9e27a06558..cb11d7ddae 100644 --- a/libs/JSystem/JAudio2/JAUInitializer.cpp +++ b/libs/JSystem/JAudio2/JAUInitializer.cpp @@ -4,15 +4,6 @@ // #include "JSystem/JAudio2/JAUInitializer.h" -#include "JSystem/JAudio2/JAISe.h" -#include "JSystem/JAudio2/JAISeq.h" -#include "JSystem/JAudio2/JAISoundChild.h" -#include "JSystem/JAudio2/JAIStream.h" -#include "JSystem/JAudio2/JASAramStream.h" -#include "JSystem/JAudio2/JASAudioThread.h" -#include "JSystem/JAudio2/JASDriverIF.h" -#include "JSystem/JAudio2/JASDvdThread.h" -#include "JSystem/JAudio2/JASHeapCtrl.h" #include "JSystem/JAudio2/JASTaskThread.h" #include "JSystem/JAudio2/JASTrack.h" #include "JSystem/JAudio2/JASWaveArcLoader.h" diff --git a/libs/JSystem/JAudio2/JAUSectionHeap.cpp b/libs/JSystem/JAudio2/JAUSectionHeap.cpp index 8864ecc7f2..6b6f578e38 100644 --- a/libs/JSystem/JAudio2/JAUSectionHeap.cpp +++ b/libs/JSystem/JAudio2/JAUSectionHeap.cpp @@ -4,14 +4,9 @@ // #include "JSystem/JAudio2/JAUSectionHeap.h" -#include "JSystem/JAudio2/JAIStreamDataMgr.h" -#include "JSystem/JAudio2/JASBNKParser.h" -#include "JSystem/JAudio2/JASBankTable.h" -#include "JSystem/JAudio2/JASBasicWaveBank.h" #include "JSystem/JAudio2/JASCriticalSection.h" #include "JSystem/JAudio2/JASHeapCtrl.h" #include "JSystem/JAudio2/JASResArcLoader.h" -#include "JSystem/JAudio2/JASVoiceBank.h" #include "JSystem/JAudio2/JAUSeqCollection.h" #include "JSystem/JAudio2/JAUSoundInfo.h" #include "JSystem/JAudio2/JAUSoundTable.h" diff --git a/libs/JSystem/JAudio2/JAUSeqDataBlockMgr.cpp b/libs/JSystem/JAudio2/JAUSeqDataBlockMgr.cpp index b9c939809a..47d61463d4 100644 --- a/libs/JSystem/JAudio2/JAUSeqDataBlockMgr.cpp +++ b/libs/JSystem/JAudio2/JAUSeqDataBlockMgr.cpp @@ -5,7 +5,6 @@ #include "JSystem/JAudio2/JAUSeqDataBlockMgr.h" #include "JSystem/JAudio2/JAUSoundInfo.h" #include "JSystem/JAudio2/JASResArcLoader.h" -#include "JSystem/JUtility/JUTAssert.h" #include "dolphin/types.h" /* 802A68F4-802A6928 2A1234 0034+00 0/0 2/2 0/0 .text __ct__15JAUSeqDataBlockFv */ diff --git a/libs/JSystem/JAudio2/JAUSoundTable.cpp b/libs/JSystem/JAudio2/JAUSoundTable.cpp index 2637181597..59f5b121fd 100644 --- a/libs/JSystem/JAudio2/JAUSoundTable.cpp +++ b/libs/JSystem/JAudio2/JAUSoundTable.cpp @@ -3,7 +3,6 @@ // #include "JSystem/JAudio2/JAUSoundTable.h" -#include "dolphin/types.h" /* 802A7114-802A7160 2A1A54 004C+00 0/0 1/1 0/0 .text init__13JAUSoundTableFPCv */ void JAUSoundTable::init(void const* param_0) { diff --git a/libs/JSystem/JAudio2/JAUStreamFileTable.cpp b/libs/JSystem/JAudio2/JAUStreamFileTable.cpp index c60031f4eb..19f40c580f 100644 --- a/libs/JSystem/JAudio2/JAUStreamFileTable.cpp +++ b/libs/JSystem/JAudio2/JAUStreamFileTable.cpp @@ -1,5 +1,4 @@ #include "JSystem/JAudio2/JAUStreamFileTable.h" -#include "dolphin/dvd.h" #include "dolphin/os.h" /* 802A7420-802A742C 2A1D60 000C+00 0/0 1/1 0/0 .text __ct__18JAUStreamFileTableFv */ diff --git a/libs/JSystem/JAudio2/dsptask.cpp b/libs/JSystem/JAudio2/dsptask.cpp index 9ea11c9c43..25d5c8a437 100644 --- a/libs/JSystem/JAudio2/dsptask.cpp +++ b/libs/JSystem/JAudio2/dsptask.cpp @@ -5,7 +5,6 @@ #include "JSystem/JAudio2/dsptask.h" #include "JSystem/JAudio2/osdsp.h" -#include "dolphin/dsp.h" #include "dolphin/os.h" // diff --git a/libs/JSystem/JFramework/JFWDisplay.cpp b/libs/JSystem/JFramework/JFWDisplay.cpp index 4be1ff58d0..5c9fd67327 100644 --- a/libs/JSystem/JFramework/JFWDisplay.cpp +++ b/libs/JSystem/JFramework/JFWDisplay.cpp @@ -5,7 +5,6 @@ #include "JSystem/JUtility/JUTDbPrint.h" #include "JSystem/JUtility/JUTProcBar.h" #include "dolphin/gx.h" -#include "dolphin/os.h" /* 80272040-802720F8 26C980 00B8+00 1/1 0/0 0/0 .text ctor_subroutine__10JFWDisplayFb */ void JFWDisplay::ctor_subroutine(bool enableAlpha) { diff --git a/libs/JSystem/JFramework/JFWSystem.cpp b/libs/JSystem/JFramework/JFWSystem.cpp index 30bfd60097..b2c3966569 100644 --- a/libs/JSystem/JFramework/JFWSystem.cpp +++ b/libs/JSystem/JFramework/JFWSystem.cpp @@ -7,7 +7,6 @@ #include "JSystem/JKernel/JKRExpHeap.h" #include "JSystem/JUtility/JUTConsole.h" #include "JSystem/JUtility/JUTGraphFifo.h" -#include "JSystem/JUtility/JUTVideo.h" #include "dol2asm.h" #include "dolphin/types.h" diff --git a/libs/JSystem/JGadget/binary.cpp b/libs/JSystem/JGadget/binary.cpp index 7e8acfd7bc..10f5b6b2cc 100644 --- a/libs/JSystem/JGadget/binary.cpp +++ b/libs/JSystem/JGadget/binary.cpp @@ -4,7 +4,6 @@ // #include "JSystem/JGadget/binary.h" -#include "dolphin/types.h" /* 802DC864-802DC8C8 2D71A4 0064+00 0/0 2/2 0/0 .text * parseVariableUInt_16_32_following__Q27JGadget6binaryFPCvPUlPUlPQ37JGadget6binary5TEBit */ diff --git a/libs/JSystem/JGadget/linklist.cpp b/libs/JSystem/JGadget/linklist.cpp index fefe1eeae5..39890480b6 100644 --- a/libs/JSystem/JGadget/linklist.cpp +++ b/libs/JSystem/JGadget/linklist.cpp @@ -4,7 +4,6 @@ // #include "JSystem/JGadget/linklist.h" -#include "dolphin/types.h" template class TPRIsEqual_pointer_ { diff --git a/libs/JSystem/JGadget/std-vector.cpp b/libs/JSystem/JGadget/std-vector.cpp index 9f88dfb221..14020078f7 100644 --- a/libs/JSystem/JGadget/std-vector.cpp +++ b/libs/JSystem/JGadget/std-vector.cpp @@ -6,7 +6,6 @@ #include "JSystem/JGadget/std-vector.h" #include "dolphin/types.h" #include "algorithm.h" -#include "msl_memory.h" // // Types: diff --git a/libs/JSystem/JKernel/JKRAram.cpp b/libs/JSystem/JKernel/JKRAram.cpp index 998dadfc21..f9aaebe3c9 100644 --- a/libs/JSystem/JKernel/JKRAram.cpp +++ b/libs/JSystem/JKernel/JKRAram.cpp @@ -7,7 +7,6 @@ #include "dolphin/ar.h" #include "dolphin/os/OSCache.h" #include "dolphin/os/OSInterrupt.h" -#include "global.h" #include "string.h" static u8* firstSrcData(); diff --git a/libs/JSystem/JKernel/JKRAramArchive.cpp b/libs/JSystem/JKernel/JKRAramArchive.cpp index 698fe98dad..2092d6c1b4 100644 --- a/libs/JSystem/JKernel/JKRAramArchive.cpp +++ b/libs/JSystem/JKernel/JKRAramArchive.cpp @@ -11,8 +11,6 @@ #include "JSystem/JUtility/JUTAssert.h" #include "JSystem/JUtility/JUTException.h" #include "dol2asm.h" -#include "dolphin/os/OSCache.h" -#include "global.h" #include "math.h" #include "string.h" diff --git a/libs/JSystem/JKernel/JKRAramStream.cpp b/libs/JSystem/JKernel/JKRAramStream.cpp index 55ca126646..0ea1a0c605 100644 --- a/libs/JSystem/JKernel/JKRAramStream.cpp +++ b/libs/JSystem/JKernel/JKRAramStream.cpp @@ -2,7 +2,6 @@ #include "JSystem/JKernel/JKRAramPiece.h" #include "JSystem/JSupport/JSUFileStream.h" #include "JSystem/JUtility/JUTException.h" -#include "global.h" /* ############################################################################################## */ /* 80451408-8045140C 000908 0004+00 1/1 0/0 0/0 .sbss sAramStreamObject__13JKRAramStream diff --git a/libs/JSystem/JKernel/JKRCompArchive.cpp b/libs/JSystem/JKernel/JKRCompArchive.cpp index 13f521026f..7e5970f53a 100644 --- a/libs/JSystem/JKernel/JKRCompArchive.cpp +++ b/libs/JSystem/JKernel/JKRCompArchive.cpp @@ -10,7 +10,6 @@ #include "JSystem/JUtility/JUTException.h" #include "math.h" #include "string.h" -#include "dolphin/os/OSCache.h" /* 802D87D4-802D887C 2D3114 00A8+00 0/0 1/1 0/0 .text * __ct__14JKRCompArchiveFlQ210JKRArchive15EMountDirection */ diff --git a/libs/JSystem/JKernel/JKRDvdArchive.cpp b/libs/JSystem/JKernel/JKRDvdArchive.cpp index 9dea8fad70..9dcbe32dee 100644 --- a/libs/JSystem/JKernel/JKRDvdArchive.cpp +++ b/libs/JSystem/JKernel/JKRDvdArchive.cpp @@ -6,7 +6,6 @@ #include "JSystem/JUtility/JUTException.h" #include "math.h" #include "string.h" -#include "dolphin/os.h" #include "global.h" /* 802D7BF0-802D7C98 2D2530 00A8+00 0/0 1/1 0/0 .text diff --git a/libs/JSystem/JKernel/JKRDvdRipper.cpp b/libs/JSystem/JKernel/JKRDvdRipper.cpp index 1a7d5a88ec..a0e0e97d87 100644 --- a/libs/JSystem/JKernel/JKRDvdRipper.cpp +++ b/libs/JSystem/JKernel/JKRDvdRipper.cpp @@ -7,7 +7,6 @@ #include "JSystem/JKernel/JKRDvdFile.h" #include "JSystem/JKernel/JKRDecomp.h" #include "JSystem/JUtility/JUTException.h" -#include "JSystem/JKernel/JKRArchive.h" #include "string.h" #include "dol2asm.h" #include "dolphin/os/OSCache.h" diff --git a/libs/JSystem/JKernel/JKRHeap.cpp b/libs/JSystem/JKernel/JKRHeap.cpp index a24a33e94a..cae59ffcad 100644 --- a/libs/JSystem/JKernel/JKRHeap.cpp +++ b/libs/JSystem/JKernel/JKRHeap.cpp @@ -6,7 +6,6 @@ #include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JUtility/JUTAssert.h" #include "JSystem/JUtility/JUTException.h" -#include "dolphin/os.h" /* 80451370-80451374 000870 0004+00 3/3 44/44 0/0 .sbss sSystemHeap__7JKRHeap */ JKRHeap* JKRHeap::sSystemHeap; diff --git a/libs/JSystem/JKernel/JKRMemArchive.cpp b/libs/JSystem/JKernel/JKRMemArchive.cpp index 7072f6e3fc..b5d1e5b5f8 100644 --- a/libs/JSystem/JKernel/JKRMemArchive.cpp +++ b/libs/JSystem/JKernel/JKRMemArchive.cpp @@ -4,7 +4,6 @@ #include "JSystem/JUtility/JUTAssert.h" #include "JSystem/JUtility/JUTException.h" #include "string.h" -#include "dolphin/os/OSCache.h" #include "global.h" /* 802D69B8-802D6A6C 2D12F8 00B4+00 0/0 2/2 0/0 .text diff --git a/libs/JSystem/JKernel/JKRSolidHeap.cpp b/libs/JSystem/JKernel/JKRSolidHeap.cpp index bd9eedd63a..a6f95394e4 100644 --- a/libs/JSystem/JKernel/JKRSolidHeap.cpp +++ b/libs/JSystem/JKernel/JKRSolidHeap.cpp @@ -1,7 +1,6 @@ #include "JSystem/JKernel/JKRSolidHeap.h" #include "JSystem/JUtility/JUTAssert.h" #include "JSystem/JUtility/JUTConsole.h" -#include "global.h" /* 802D0A24-802D0AD0 2CB364 00AC+00 0/0 4/4 1/1 .text create__12JKRSolidHeapFUlP7JKRHeapb */ diff --git a/libs/JSystem/JMath/JMath.cpp b/libs/JSystem/JMath/JMath.cpp index 37c31b017a..23cb3d4bdb 100644 --- a/libs/JSystem/JMath/JMath.cpp +++ b/libs/JSystem/JMath/JMath.cpp @@ -5,7 +5,6 @@ #include "JSystem/JMath/JMath.h" #include "JSystem/JMath/JMATrigonometric.h" -#include "dol2asm.h" /* 80339878-80339938 3341B8 00C0+00 0/0 11/11 2/2 .text JMAEulerToQuat__FsssP10Quaternion */ diff --git a/libs/JSystem/JMessage/locale.cpp b/libs/JSystem/JMessage/locale.cpp index d33ba72f69..af2b9532a6 100644 --- a/libs/JSystem/JMessage/locale.cpp +++ b/libs/JSystem/JMessage/locale.cpp @@ -4,7 +4,6 @@ // #include "JSystem/JMessage/locale.h" -#include "dolphin/types.h" // // Forward References: diff --git a/libs/JSystem/JMessage/processor.cpp b/libs/JSystem/JMessage/processor.cpp index 02eb2522b5..bfe280fa9c 100644 --- a/libs/JSystem/JMessage/processor.cpp +++ b/libs/JSystem/JMessage/processor.cpp @@ -5,7 +5,6 @@ #include "JSystem/JMessage/processor.h" #include "JSystem/JMessage/control.h" -#include "JSystem/JUtility/JUTAssert.h" // // Forward References: diff --git a/libs/JSystem/JMessage/resource.cpp b/libs/JSystem/JMessage/resource.cpp index 0fcd38a5f0..9229e25442 100644 --- a/libs/JSystem/JMessage/resource.cpp +++ b/libs/JSystem/JMessage/resource.cpp @@ -5,7 +5,6 @@ #include "JSystem/JMessage/resource.h" #include "string.h" -#include "string.h" #include "dol2asm.h" // diff --git a/libs/JSystem/JParticle/JPAChildShape.cpp b/libs/JSystem/JParticle/JPAChildShape.cpp index 28ef7fbb9e..edfb6bef86 100644 --- a/libs/JSystem/JParticle/JPAChildShape.cpp +++ b/libs/JSystem/JParticle/JPAChildShape.cpp @@ -8,7 +8,6 @@ #include "JSystem/JParticle/JPAEmitter.h" #include "dolphin/gx.h" #include "dolphin/os.h" -#include "dolphin/types.h" // // Types: diff --git a/libs/JSystem/JParticle/JPADynamicsBlock.cpp b/libs/JSystem/JParticle/JPADynamicsBlock.cpp index d36f5a4e10..55d9096913 100644 --- a/libs/JSystem/JParticle/JPADynamicsBlock.cpp +++ b/libs/JSystem/JParticle/JPADynamicsBlock.cpp @@ -5,7 +5,6 @@ #include "JSystem/JParticle/JPADynamicsBlock.h" #include "dol2asm.h" -#include "dolphin/types.h" // // Types: diff --git a/libs/JSystem/JParticle/JPAEmitter.cpp b/libs/JSystem/JParticle/JPAEmitter.cpp index bfd8664e7b..d3958685fa 100644 --- a/libs/JSystem/JParticle/JPAEmitter.cpp +++ b/libs/JSystem/JParticle/JPAEmitter.cpp @@ -8,7 +8,6 @@ #include "JSystem/JParticle/JPAParticle.h" #include "JSystem/JParticle/JPAResourceManager.h" #include "JSystem/JParticle/JPABaseShape.h" -#include "dolphin/mtx.h" #include "dolphin/types.h" // diff --git a/libs/JSystem/JParticle/JPAEmitterManager.cpp b/libs/JSystem/JParticle/JPAEmitterManager.cpp index b44dfcfd4b..5731c63ef3 100644 --- a/libs/JSystem/JParticle/JPAEmitterManager.cpp +++ b/libs/JSystem/JParticle/JPAEmitterManager.cpp @@ -7,7 +7,6 @@ #include "JSystem/JParticle/JPAEmitter.h" #include "JSystem/JParticle/JPAResourceManager.h" #include "dolphin/gx.h" -#include "dolphin/types.h" // // Types: diff --git a/libs/JSystem/JParticle/JPAExTexShape.cpp b/libs/JSystem/JParticle/JPAExTexShape.cpp index c44448292e..a0105eb5fe 100644 --- a/libs/JSystem/JParticle/JPAExTexShape.cpp +++ b/libs/JSystem/JParticle/JPAExTexShape.cpp @@ -7,7 +7,6 @@ #include "JSystem/JParticle/JPAResourceManager.h" #include "JSystem/JParticle/JPAEmitter.h" #include "dolphin/gx.h" -#include "dolphin/types.h" /* 8027B040-8027B13C 275980 00FC+00 0/0 1/1 0/0 .text JPALoadExTex__FP18JPAEmitterWorkData */ void JPALoadExTex(JPAEmitterWorkData* work) { diff --git a/libs/JSystem/JParticle/JPAExtraShape.cpp b/libs/JSystem/JParticle/JPAExtraShape.cpp index 0f1bcec7c9..2cb3a23247 100644 --- a/libs/JSystem/JParticle/JPAExtraShape.cpp +++ b/libs/JSystem/JParticle/JPAExtraShape.cpp @@ -7,7 +7,6 @@ #include "JSystem/JMath/JMATrigonometric.h" #include "JSystem/JParticle/JPAParticle.h" #include "JSystem/JParticle/JPAEmitter.h" -#include "dolphin/gx.h" #include "dolphin/os.h" #include "dolphin/types.h" diff --git a/libs/JSystem/JParticle/JPAParticle.cpp b/libs/JSystem/JParticle/JPAParticle.cpp index 3f109791bf..f63cd758cf 100644 --- a/libs/JSystem/JParticle/JPAParticle.cpp +++ b/libs/JSystem/JParticle/JPAParticle.cpp @@ -6,7 +6,6 @@ #include "JSystem/JParticle/JPAParticle.h" #include "JSystem/JParticle/JPAEmitter.h" #include "JSystem/JParticle/JPAEmitterManager.h" -#include "dolphin/mtx.h" #include "dol2asm.h" // diff --git a/libs/JSystem/JParticle/JPAResource.cpp b/libs/JSystem/JParticle/JPAResource.cpp index 48f190e15f..0d8035e29b 100644 --- a/libs/JSystem/JParticle/JPAResource.cpp +++ b/libs/JSystem/JParticle/JPAResource.cpp @@ -8,7 +8,6 @@ #include "JSystem/JParticle/JPAEmitter.h" #include "dol2asm.h" #include "dolphin/gx.h" -#include "dolphin/mtx.h" #include "dolphin/types.h" // diff --git a/libs/JSystem/JParticle/JPAResourceManager.cpp b/libs/JSystem/JParticle/JPAResourceManager.cpp index dd4c574681..487a20488d 100644 --- a/libs/JSystem/JParticle/JPAResourceManager.cpp +++ b/libs/JSystem/JParticle/JPAResourceManager.cpp @@ -7,7 +7,6 @@ #include "JSystem/JParticle/JPADynamicsBlock.h" #include "JSystem/JParticle/JPAResource.h" #include "string.h" -#include "dolphin/types.h" struct JPAResourceLoader { /* 8027D8A0 */ JPAResourceLoader(u8 const*, JPAResourceManager*); diff --git a/libs/JSystem/JParticle/JPATexture.cpp b/libs/JSystem/JParticle/JPATexture.cpp index 0f9ea60cbf..76ba6f43d0 100644 --- a/libs/JSystem/JParticle/JPATexture.cpp +++ b/libs/JSystem/JParticle/JPATexture.cpp @@ -4,7 +4,6 @@ // #include "JSystem/JParticle/JPATexture.h" -#include "dolphin/types.h" /* 8027D7D4-8027D83C 278114 0068+00 0/0 1/1 0/0 .text __ct__10JPATextureFPCUc */ JPATexture::JPATexture(u8 const* pData) { diff --git a/libs/JSystem/JStudio/JStudio/ctb.cpp b/libs/JSystem/JStudio/JStudio/ctb.cpp index e5c55fa1ac..29a46ec7a4 100644 --- a/libs/JSystem/JStudio/JStudio/ctb.cpp +++ b/libs/JSystem/JStudio/JStudio/ctb.cpp @@ -4,7 +4,6 @@ // #include "JSystem/JStudio/JStudio/ctb.h" -#include "algorithm.h" #include "iterator.h" #include "string.h" #include "dol2asm.h" diff --git a/libs/JSystem/JStudio/JStudio/functionvalue.cpp b/libs/JSystem/JStudio/JStudio/functionvalue.cpp index 45c2d77f66..0f40503add 100644 --- a/libs/JSystem/JStudio/JStudio/functionvalue.cpp +++ b/libs/JSystem/JStudio/JStudio/functionvalue.cpp @@ -10,7 +10,6 @@ #include "math.h" #include "stdlib.h" #include "dol2asm.h" -#include "global.h" #include "iterator.h" // diff --git a/libs/JSystem/JStudio/JStudio/fvb.cpp b/libs/JSystem/JStudio/JStudio/fvb.cpp index 8489a4ed1e..0035690a23 100644 --- a/libs/JSystem/JStudio/JStudio/fvb.cpp +++ b/libs/JSystem/JStudio/JStudio/fvb.cpp @@ -6,7 +6,6 @@ #include "JSystem/JStudio/JStudio/fvb.h" #include "JSystem/JUtility/JUTException.h" #include "dol2asm.h" -#include "global.h" // // Types: diff --git a/libs/JSystem/JStudio/JStudio/jstudio-control.cpp b/libs/JSystem/JStudio/JStudio/jstudio-control.cpp index 249e45696b..7e8a914974 100644 --- a/libs/JSystem/JStudio/JStudio/jstudio-control.cpp +++ b/libs/JSystem/JStudio/JStudio/jstudio-control.cpp @@ -6,8 +6,6 @@ #include "JSystem/JStudio/JStudio/jstudio-control.h" #include "JSystem/JStudio/JStudio/jstudio-math.h" #include "JSystem/JStudio/JStudio/jstudio-data.h" -#include "dol2asm.h" -#include "dolphin/types.h" #include "string.h" // diff --git a/libs/JSystem/JStudio/JStudio/jstudio-math.cpp b/libs/JSystem/JStudio/JStudio/jstudio-math.cpp index c5d79f45b7..ec2544e891 100644 --- a/libs/JSystem/JStudio/JStudio/jstudio-math.cpp +++ b/libs/JSystem/JStudio/JStudio/jstudio-math.cpp @@ -4,8 +4,6 @@ // #include "JSystem/JStudio/JStudio/jstudio-math.h" -#include "JSystem/TPosition3.hh" -#include "JSystem/JGeometry.h" #include "dol2asm.h" #include "math.h" diff --git a/libs/JSystem/JStudio/JStudio/object-id.cpp b/libs/JSystem/JStudio/JStudio/object-id.cpp index 936f06f676..fe7bf8b503 100644 --- a/libs/JSystem/JStudio/JStudio/object-id.cpp +++ b/libs/JSystem/JStudio/JStudio/object-id.cpp @@ -4,7 +4,6 @@ // #include "JSystem/JStudio/JStudio/object-id.h" -#include "dolphin/types.h" /* 80288988-80288A78 2832C8 00F0+00 0/0 3/3 0/0 .text * isEqual__Q37JStudio6object7TIDDataFRCQ37JStudio6object7TIDDataRCQ37JStudio6object7TIDData */ diff --git a/libs/JSystem/JStudio/JStudio/stb-data-parse.cpp b/libs/JSystem/JStudio/JStudio/stb-data-parse.cpp index 26dc041743..184affe169 100644 --- a/libs/JSystem/JStudio/JStudio/stb-data-parse.cpp +++ b/libs/JSystem/JStudio/JStudio/stb-data-parse.cpp @@ -5,7 +5,6 @@ #include "JSystem/JStudio/JStudio/stb-data-parse.h" #include "dolphin/os.h" -#include "global.h" namespace JStudio { namespace stb { diff --git a/libs/JSystem/JStudio/JStudio/stb.cpp b/libs/JSystem/JStudio/JStudio/stb.cpp index 7fa1f80963..c05884de2c 100644 --- a/libs/JSystem/JStudio/JStudio/stb.cpp +++ b/libs/JSystem/JStudio/JStudio/stb.cpp @@ -1,7 +1,6 @@ #include "JSystem/JStudio/JStudio/stb.h" #include "JSystem/JStudio/JStudio/jstudio-object.h" #include "JSystem/JUtility/JUTException.h" -#include "global.h" #include "algorithm.h" // diff --git a/libs/JSystem/JStudio/JStudio_JStage/object.cpp b/libs/JSystem/JStudio/JStudio_JStage/object.cpp index bcd779b212..4d088342f8 100644 --- a/libs/JSystem/JStudio/JStudio_JStage/object.cpp +++ b/libs/JSystem/JStudio/JStudio_JStage/object.cpp @@ -4,7 +4,6 @@ // #include "JSystem/JStudio/JStudio_JStage/object.h" -#include "dolphin/types.h" // // Forward References: diff --git a/libs/JSystem/JUtility/JUTAssert.cpp b/libs/JSystem/JUtility/JUTAssert.cpp index a721e64e09..87d3bdd67e 100644 --- a/libs/JSystem/JUtility/JUTAssert.cpp +++ b/libs/JSystem/JUtility/JUTAssert.cpp @@ -8,7 +8,6 @@ #include "JSystem/JUtility/JUTDbPrint.h" #include "JSystem/JUtility/JUTDirectPrint.h" #include "stdio.h" -#include "dolphin/vi.h" namespace JUTAssertion { diff --git a/libs/JSystem/JUtility/JUTConsole.cpp b/libs/JSystem/JUtility/JUTConsole.cpp index bb593f9606..c424dbaa69 100644 --- a/libs/JSystem/JUtility/JUTConsole.cpp +++ b/libs/JSystem/JUtility/JUTConsole.cpp @@ -10,7 +10,6 @@ #include "JSystem/JUtility/JUTDirectPrint.h" #include "JSystem/JUtility/JUTVideo.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "stdio.h" // diff --git a/libs/JSystem/JUtility/JUTDirectPrint.cpp b/libs/JSystem/JUtility/JUTDirectPrint.cpp index 0ea8f0c094..13d5a7b89e 100644 --- a/libs/JSystem/JUtility/JUTDirectPrint.cpp +++ b/libs/JSystem/JUtility/JUTDirectPrint.cpp @@ -6,7 +6,6 @@ #include "JSystem/JUtility/JUTDirectPrint.h" #include "stdio.h" #include "dolphin/os/OSCache.h" -#include "global.h" // // Forward References: diff --git a/libs/JSystem/JUtility/JUTException.cpp b/libs/JSystem/JUtility/JUTException.cpp index f7c2b7cc16..45eedf2d1e 100644 --- a/libs/JSystem/JUtility/JUTException.cpp +++ b/libs/JSystem/JUtility/JUTException.cpp @@ -6,14 +6,12 @@ #include "JSystem/JUtility/JUTException.h" #include "JSystem/JUtility/JUTConsole.h" #include "JSystem/JUtility/JUTDirectPrint.h" -#include "JSystem/JUtility/JUTDirectFile.h" #include "math.h" #include "stdio.h" #include "stdlib.h" #include "dol2asm.h" #include "dolphin/base/PPCArch.h" #include "dolphin/os.h" -#include "dolphin/vi.h" #include "global.h" // diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C++/MSL_Common/Include/bitset.h b/libs/PowerPC_EABI_Support/MSL/MSL_C++/MSL_Common/Include/bitset.h index 1bdd4f0faf..ec45c8f61e 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C++/MSL_Common/Include/bitset.h +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C++/MSL_Common/Include/bitset.h @@ -1,7 +1,6 @@ #ifndef MSL_BITSET_H_ #define MSL_BITSET_H_ -#include "algorithm.h" #include "stdio.h" #include "stdlib.h" diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/alloc.h b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/alloc.h index 085c40d484..4f8376cbfd 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/alloc.h +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/alloc.h @@ -1,7 +1,6 @@ #ifndef _MSL_COMMON_ALLOC_H #define _MSL_COMMON_ALLOC_H -#include "ansi_files.h" #ifdef __cplusplus extern "C" { diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/ansi_fp.h b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/ansi_fp.h index 82152fbc2e..1c04922944 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/ansi_fp.h +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/ansi_fp.h @@ -1,7 +1,6 @@ #ifndef _MSL_COMMON_ANSI_FP_H #define _MSL_COMMON_ANSI_FP_H -#include "float.h" #define SIGDIGLEN 36 diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/cmath.h b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/cmath.h index e673ced4db..88866003e2 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/cmath.h +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/cmath.h @@ -1,7 +1,6 @@ #ifndef STD_CMATH_H_ #define STD_CMATH_H_ -#include "math.h" namespace std { /* float fabs(float num) { diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/scanf.h b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/scanf.h index ca142dc1c8..46fd3c637a 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/scanf.h +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/scanf.h @@ -1,7 +1,6 @@ #ifndef _MSL_COMMON_SCANF_H #define _MSL_COMMON_SCANF_H -#include "stddef.h" #include "ansi_files.h" #ifdef __cplusplus diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/stdlib.h b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/stdlib.h index 2ce2e5c803..7617229c69 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/stdlib.h +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/stdlib.h @@ -3,7 +3,6 @@ #include "abort_exit.h" #include "arith.h" -#include "mbstring.h" #include "strtoul.h" #endif diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/string.h b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/string.h index 66b4c008de..4c31c2e11e 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/string.h +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Include/string.h @@ -2,7 +2,6 @@ #define _MSL_COMMON_STRING_H #include "stddef.h" -#include "extras.h" #ifdef __cplusplus // TODO: std namespace should be used for C++, but it breaks asm compatibility afaict. diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/FILE_POS.c b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/FILE_POS.c index 06c1eba037..8100ed7957 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/FILE_POS.c +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/FILE_POS.c @@ -1,5 +1,4 @@ #include "FILE_POS.h" -#include "buffer_io.h" #include "critical_regions.h" #include "errno.h" diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/alloc.c b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/alloc.c index 27eeed7cf9..affaee7c49 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/alloc.c +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/alloc.c @@ -1,6 +1,5 @@ #include "alloc.h" #include "critical_regions.h" -#include "string.h" typedef struct Block { struct Block* prev; diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/ansi_files.c b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/ansi_files.c index 94571b4ba2..056b457859 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/ansi_files.c +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/ansi_files.c @@ -1,5 +1,4 @@ #include "ansi_files.h" -#include "file_io.h" #include "critical_regions.h" /* 8044D778-8044D878 07A498 0100+00 1/0 0/0 0/0 .bss stdin_buff */ diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/char_io.c b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/char_io.c index 80c35a49f3..37baccec97 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/char_io.c +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/char_io.c @@ -1,6 +1,4 @@ #include "char_io.h" -#include "FILE_POS.h" -#include "buffer_io.h" #include "critical_regions.h" #include "misc_io.h" #include "wchar_io.h" diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/direct_io.c b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/direct_io.c index ab47acc94e..da1f3c80c3 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/direct_io.c +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/direct_io.c @@ -1,7 +1,5 @@ #include "direct_io.h" #include "critical_regions.h" -#include "misc_io.h" -#include "string.h" #include "wchar_io.h" /* 80365494-803657A0 35FDD4 030C+00 1/1 0/0 0/0 .text __fwrite */ diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/extras.c b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/extras.c index 5a24eff006..617de83804 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/extras.c +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/extras.c @@ -1,6 +1,5 @@ #include "extras.h" #include "ctype.h" -#include "file_io.h" /* 8036CA94-8036CB20 3673D4 008C+00 0/0 1/1 0/0 .text stricmp */ int stricmp(const char* str1, const char* str2) { diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/file_io.c b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/file_io.c index 75c8ec671d..4440b23bbb 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/file_io.c +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/file_io.c @@ -1,5 +1,4 @@ #include "file_io.h" -#include "buffer_io.h" #include "ctype.h" /* 803659F8-80365BB4 360338 01BC+00 0/0 1/1 0/0 .text fclose */ diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/printf.c b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/printf.c index 19d3d666d1..4447f2cac6 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/printf.c +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/printf.c @@ -2,10 +2,8 @@ #include "ansi_fp.h" #include "critical_regions.h" #include "ctype.h" -#include "string.h" #include "scanf.h" #include "stdio.h" -#include "stdlib.h" #include "string.h" #include "wchar_io.h" diff --git a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/signal.c b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/signal.c index d7b6a23dd2..b99b0dc317 100644 --- a/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/signal.c +++ b/libs/PowerPC_EABI_Support/MSL/MSL_C/MSL_Common/Src/signal.c @@ -1,5 +1,4 @@ #include "signal.h" -#include "abort_exit.h" #include "critical_regions.h" #define __std(ref) ref diff --git a/libs/SSystem/SComponent/c_angle.cpp b/libs/SSystem/SComponent/c_angle.cpp index 5a2c51cc9b..20701ac9e4 100644 --- a/libs/SSystem/SComponent/c_angle.cpp +++ b/libs/SSystem/SComponent/c_angle.cpp @@ -4,7 +4,6 @@ */ #include "SSystem/SComponent/c_angle.h" -#include "dolphin/types.h" extern f32 cM_atan2f(f32, f32); diff --git a/libs/SSystem/SComponent/c_lib.cpp b/libs/SSystem/SComponent/c_lib.cpp index 2e07cdac90..8fd6ed3ba9 100644 --- a/libs/SSystem/SComponent/c_lib.cpp +++ b/libs/SSystem/SComponent/c_lib.cpp @@ -6,7 +6,6 @@ #include "SSystem/SComponent/c_lib.h" #include "string.h" #include "SSystem/SComponent/c_math.h" -#include "dolphin/mtx.h" /* 8026F93C-8026F95C 26A27C 0020+00 0/0 3/3 0/0 .text cLib_memCpy__FPvPCvUl */ void cLib_memCpy(void* dst, const void* src, unsigned long size) { diff --git a/libs/SSystem/SComponent/c_m3d.cpp b/libs/SSystem/SComponent/c_m3d.cpp index f1851675e9..7e5d2ee34d 100644 --- a/libs/SSystem/SComponent/c_m3d.cpp +++ b/libs/SSystem/SComponent/c_m3d.cpp @@ -4,15 +4,11 @@ */ #include "SSystem/SComponent/c_m3d.h" -#include "math.h" #include "SSystem/SComponent/c_m3d_g_aab.h" #include "SSystem/SComponent/c_m3d_g_cyl.h" -#include "SSystem/SComponent/c_m3d_g_lin.h" #include "SSystem/SComponent/c_m3d_g_sph.h" #include "SSystem/SComponent/c_m3d_g_tri.h" -#include "SSystem/SComponent/c_m3d_g_cps.h" #include "SSystem/SComponent/c_math.h" -#include "SSystem/SComponent/c_sxyz.h" #include "dol2asm.h" #include "dolphin/types.h" #include "global.h" diff --git a/libs/SSystem/SComponent/c_malloc.cpp b/libs/SSystem/SComponent/c_malloc.cpp index 4e4015257b..bafdf0fab1 100644 --- a/libs/SSystem/SComponent/c_malloc.cpp +++ b/libs/SSystem/SComponent/c_malloc.cpp @@ -5,7 +5,6 @@ #include "SSystem/SComponent/c_malloc.h" #include "JSystem/JKernel/JKRHeap.h" -#include "dolphin/types.h" /* ############################################################################################## */ /* 80451150-80451158 0004+04 s=3 e=0 z=0 None .sbss Heap__3cMl */ diff --git a/libs/SSystem/SComponent/c_math.cpp b/libs/SSystem/SComponent/c_math.cpp index f280ea683f..7df05c119c 100644 --- a/libs/SSystem/SComponent/c_math.cpp +++ b/libs/SSystem/SComponent/c_math.cpp @@ -5,7 +5,6 @@ #include "SSystem/SComponent/c_math.h" #include "SSystem/SComponent/c_m3d.h" -#include "dolphin/types.h" /* 802675E4-80267640 261F24 005C+00 0/0 23/23 11/11 .text cM_rad2s__Ff */ s16 cM_rad2s(float rad) { diff --git a/libs/SSystem/SComponent/c_tag_iter.cpp b/libs/SSystem/SComponent/c_tag_iter.cpp index 2805ba4953..feaeb5ffdb 100644 --- a/libs/SSystem/SComponent/c_tag_iter.cpp +++ b/libs/SSystem/SComponent/c_tag_iter.cpp @@ -5,7 +5,6 @@ #include "SSystem/SComponent/c_tag_iter.h" #include "SSystem/SComponent/c_tag.h" -#include "dolphin/types.h" /* 80266A7C-80266AB0 0034+00 s=0 e=4 z=0 None .text * cTgIt_MethodCall__FP16create_tag_classP13method_filter */ diff --git a/libs/SSystem/SComponent/c_xyz.cpp b/libs/SSystem/SComponent/c_xyz.cpp index fe9ad6fcbb..36253e2347 100644 --- a/libs/SSystem/SComponent/c_xyz.cpp +++ b/libs/SSystem/SComponent/c_xyz.cpp @@ -4,7 +4,6 @@ */ #include "SSystem/SComponent/c_xyz.h" -#include "math.h" #include "SSystem/SComponent/c_math.h" /* 80266AE4-80266B34 0050+00 s=0 e=103 z=300 None .text __pl__4cXyzCFRC3Vec */ diff --git a/libs/SSystem/SStandard/s_basic.cpp b/libs/SSystem/SStandard/s_basic.cpp index 4505302bf3..94d72e9087 100644 --- a/libs/SSystem/SStandard/s_basic.cpp +++ b/libs/SSystem/SStandard/s_basic.cpp @@ -4,7 +4,6 @@ // #include "SSystem/SStandard/s_basic.h" -#include "dolphin/types.h" /* 80271C8C-80271CAC 0020+00 s=1 e=0 z=0 None .text sBs_FillArea_s__FPvUls */ void sBs_FillArea_s(void* pPtr, u32 pNumBytes, s16 pValue) { diff --git a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Export/mslsupp.c b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Export/mslsupp.c index 270f9454ed..79c5ef420b 100644 --- a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Export/mslsupp.c +++ b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Export/mslsupp.c @@ -1,4 +1,3 @@ -#include "trk.h" #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h" #include "TRK_MINNOW_DOLPHIN/Os/dolphin/target_options.h" #include "TRK_MINNOW_DOLPHIN/ppc/Export/targsupp.h" diff --git a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.c b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.c index 003ddcf0a2..2c056d1272 100644 --- a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.c +++ b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.c @@ -3,9 +3,7 @@ * Description: */ -#include "trk.h" #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.h" -#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h" #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" #include "TRK_MINNOW_DOLPHIN/utils/common/MWTrace.h" diff --git a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/main_TRK.c b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/main_TRK.c index eb15a0dcb1..5896173ef5 100644 --- a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/main_TRK.c +++ b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/main_TRK.c @@ -4,7 +4,6 @@ */ #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/main_TRK.h" -#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h" #include "TRK_MINNOW_DOLPHIN/utils/common/MWTrace.h" /* 8044F818-8044F820 07C538 0004+04 1/1 0/0 0/0 .bss TRK_mainError */ diff --git a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mainloop.c b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mainloop.c index 22f7950751..9ddf72305a 100644 --- a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mainloop.c +++ b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mainloop.c @@ -1,7 +1,4 @@ -#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/dispatch.h" -#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h" #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h" -#include "TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.h" #include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" #include "trk.h" diff --git a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.c b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.c index 37de9b65d0..464604e34a 100644 --- a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.c +++ b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.c @@ -1,6 +1,5 @@ #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h" -#include "trk.h" /* 8044D8C0-8044F270 07A5E0 19B0+00 4/4 0/0 0/0 .bss gTRKMsgBufs */ TRKBuffer gTRKMsgBufs[3]; diff --git a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.c b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.c index d1ce619436..731f353d9c 100644 --- a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.c +++ b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.c @@ -1,6 +1,5 @@ #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msghndlr.h" #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h" -#include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h" #include "TRK_MINNOW_DOLPHIN/utils/common/MWTrace.h" #include "trk.h" diff --git a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/notify.c b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/notify.c index fefc3f6a0a..61e4b8301d 100644 --- a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/notify.c +++ b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/notify.c @@ -1,6 +1,4 @@ #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/notify.h" -#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" -#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h" #include "trk.h" /* 8036F4B0-8036F548 369DF0 0098+00 0/0 1/1 0/0 .text TRKDoNotifyStopped */ diff --git a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.c b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.c index 02ec555c60..e5bfbc0325 100644 --- a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.c +++ b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.c @@ -1,5 +1,4 @@ #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h" -#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/mutex_TRK.h" TRKEventQueue gTRKEventQueue; diff --git a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.c b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.c index efb88ef536..37c0b9c515 100644 --- a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.c +++ b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.c @@ -6,7 +6,6 @@ #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubinit.h" #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h" #include "TRK_MINNOW_DOLPHIN/utils/common/MWTrace.h" -#include "dol2asm.h" /* 8044D8B8-8044D8C0 07A5D8 0004+04 1/1 4/4 0/0 .bss gTRKBigEndian */ BOOL gTRKBigEndian; diff --git a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.c b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.c index 7af5401ecd..99cadf89a5 100644 --- a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.c +++ b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.c @@ -1,5 +1,4 @@ #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/serpoll.h" -#include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/nubevent.h" #include "TRK_MINNOW_DOLPHIN/utils/common/MWTrace.h" #include "trk.h" diff --git a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.c b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.c index 846ade584d..daec5a9d66 100644 --- a/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.c +++ b/libs/TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.c @@ -1,7 +1,6 @@ #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/support.h" #include "TRK_MINNOW_DOLPHIN/utils/common/MWTrace.h" #include "TRK_MINNOW_DOLPHIN/MetroTRK/Portable/msgbuf.h" -#include "trk.h" /* 8036F278-8036F498 369BB8 0220+00 0/0 1/1 0/0 .text TRKSuppAccessFile */ DSError TRKSuppAccessFile(u32 file_handle, u8* data, size_t* count, DSIOResult* io_result, diff --git a/libs/TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk.c b/libs/TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk.c index 27f2be43b2..5008359ecf 100644 --- a/libs/TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk.c +++ b/libs/TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk.c @@ -3,7 +3,6 @@ #include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk_glue.h" #include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" #include "dolphin/ar.h" -#include "dolphin/os.h" #define EXCEPTIONMASK_ADDR 0x80000044 diff --git a/libs/TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.c b/libs/TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.c index 9089c9624e..fec194aa2f 100644 --- a/libs/TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.c +++ b/libs/TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.c @@ -4,7 +4,6 @@ */ #include "TRK_MINNOW_DOLPHIN/Os/dolphin/targcont.h" -#include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" /* 8037214C-80372180 36CA8C 0034+00 0/0 2/2 0/0 .text TRKTargetContinue */ DSError TRKTargetContinue(void) { diff --git a/libs/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.c b/libs/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.c index e578303d18..f77cbfe782 100644 --- a/libs/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.c +++ b/libs/TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.c @@ -1,6 +1,5 @@ #include "TRK_MINNOW_DOLPHIN/ppc/Generic/targimpl.h" #include "TRK_MINNOW_DOLPHIN/utils/common/MWTrace.h" -#include "trk.h" typedef struct memRange { u8* start; diff --git a/libs/Z2AudioLib/Z2Audience.cpp b/libs/Z2AudioLib/Z2Audience.cpp index 83e0b4bc95..1249af0bb7 100644 --- a/libs/Z2AudioLib/Z2Audience.cpp +++ b/libs/Z2AudioLib/Z2Audience.cpp @@ -4,11 +4,7 @@ // #include "Z2AudioLib/Z2Audience.h" -#include "Z2AudioLib/Z2Calc.h" -#include "Z2AudioLib/Z2SoundInfo.h" #include "JSystem/JAudio2/JAISound.h" -#include "JSystem/JAudio2/JASHeapCtrl.h" -#include "JSystem/J3DU/J3DUD.h" #include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JMath/JMATrigonometric.h" #include "dol2asm.h" diff --git a/libs/Z2AudioLib/Z2AudioArcLoader.cpp b/libs/Z2AudioLib/Z2AudioArcLoader.cpp index 0762223a1c..b08d52ba13 100644 --- a/libs/Z2AudioLib/Z2AudioArcLoader.cpp +++ b/libs/Z2AudioLib/Z2AudioArcLoader.cpp @@ -4,9 +4,6 @@ // #include "Z2AudioLib/Z2AudioArcLoader.h" -#include "Z2AudioLib/Z2FxLineMgr.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "JSystem/JKernel/JKRArchive.h" #include "JSystem/JAudio2/JAUSectionHeap.h" #include "dol2asm.h" diff --git a/libs/Z2AudioLib/Z2AudioMgr.cpp b/libs/Z2AudioLib/Z2AudioMgr.cpp index 1aeb3eec2a..07542f97ea 100644 --- a/libs/Z2AudioLib/Z2AudioMgr.cpp +++ b/libs/Z2AudioLib/Z2AudioMgr.cpp @@ -6,12 +6,6 @@ #include "Z2AudioLib/Z2AudioMgr.h" #include "JSystem/JAudio2/JASAiCtrl.h" #include "JSystem/JAudio2/JASDriverIF.h" -#include "JSystem/JAudio2/JASResArcLoader.h" -#include "JSystem/JAudio2/JASSeqParser.h" -#include "JSystem/JAudio2/JAUInitializer.h" -#include "JSystem/JAudio2/JAUSectionHeap.h" -#include "JSystem/JAudio2/JAUStreamAramMgr.h" -#include "JSystem/JKernel/JKRSolidHeap.h" #include "Z2AudioLib/Z2AudioArcLoader.h" #include "Z2AudioLib/Z2SoundHandles.h" #include "stdio.h" diff --git a/libs/Z2AudioLib/Z2Creature.cpp b/libs/Z2AudioLib/Z2Creature.cpp index 86e68e212b..19deb029c3 100644 --- a/libs/Z2AudioLib/Z2Creature.cpp +++ b/libs/Z2AudioLib/Z2Creature.cpp @@ -5,10 +5,6 @@ #include "Z2AudioLib/Z2Creature.h" #include "Z2AudioLib/Z2Param.h" -#include "Z2AudioLib/Z2SceneMgr.h" -#include "Z2AudioLib/Z2SeMgr.h" -#include "Z2AudioLib/Z2SoundObjMgr.h" -#include "Z2AudioLib/Z2StatusMgr.h" #include "Z2AudioLib/Z2Calc.h" #include "Z2AudioLib/Z2AudioMgr.h" #include "dol2asm.h" diff --git a/libs/Z2AudioLib/Z2EnvSeMgr.cpp b/libs/Z2AudioLib/Z2EnvSeMgr.cpp index 2b045cb345..99a12ce97d 100644 --- a/libs/Z2AudioLib/Z2EnvSeMgr.cpp +++ b/libs/Z2AudioLib/Z2EnvSeMgr.cpp @@ -4,12 +4,6 @@ // #include "Z2AudioLib/Z2EnvSeMgr.h" -#include "Z2AudioLib/Z2SoundStarter.h" -#include "Z2AudioLib/Z2SoundMgr.h" -#include "Z2AudioLib/Z2StatusMgr.h" -#include "Z2AudioLib/Z2Creature.h" -#include "Z2AudioLib/Z2Audience.h" -#include "Z2AudioLib/Z2SceneMgr.h" #include "Z2AudioLib/Z2Calc.h" #include "JSystem/JAudio2/JASCalc.h" #include "d/save/d_save.h" diff --git a/libs/Z2AudioLib/Z2LinkMgr.cpp b/libs/Z2AudioLib/Z2LinkMgr.cpp index 27ecf3ac69..68bb38efe9 100644 --- a/libs/Z2AudioLib/Z2LinkMgr.cpp +++ b/libs/Z2AudioLib/Z2LinkMgr.cpp @@ -7,7 +7,6 @@ #include "Z2AudioLib/Z2Creature.h" #include "d/com/d_com_inf_game.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "global.h" // diff --git a/libs/Z2AudioLib/Z2SceneMgr.cpp b/libs/Z2AudioLib/Z2SceneMgr.cpp index 4c989d77d1..8305a80de5 100644 --- a/libs/Z2AudioLib/Z2SceneMgr.cpp +++ b/libs/Z2AudioLib/Z2SceneMgr.cpp @@ -9,7 +9,6 @@ #include "Z2AudioLib/Z2SeMgr.h" #include "Z2AudioLib/Z2Param.h" #include "dol2asm.h" -#include "global.h" // // Types: diff --git a/libs/Z2AudioLib/Z2SeMgr.cpp b/libs/Z2AudioLib/Z2SeMgr.cpp index 12b28740f9..ed3ac0c1fa 100644 --- a/libs/Z2AudioLib/Z2SeMgr.cpp +++ b/libs/Z2AudioLib/Z2SeMgr.cpp @@ -5,12 +5,7 @@ #include "Z2AudioLib/Z2SeMgr.h" #include "Z2AudioLib/Z2Audience.h" -#include "Z2AudioLib/Z2Calc.h" -#include "Z2AudioLib/Z2Param.h" -#include "Z2AudioLib/Z2SceneMgr.h" -#include "Z2AudioLib/Z2SeqMgr.h" #include "Z2AudioLib/Z2SoundMgr.h" -#include "Z2AudioLib/Z2SoundStarter.h" #include "Z2AudioLib/Z2SpeechMgr2.h" #include "Z2AudioLib/Z2StatusMgr.h" #include "dol2asm.h" diff --git a/libs/Z2AudioLib/Z2SeqMgr.cpp b/libs/Z2AudioLib/Z2SeqMgr.cpp index 2c3db4c866..6026b1f7b7 100644 --- a/libs/Z2AudioLib/Z2SeqMgr.cpp +++ b/libs/Z2AudioLib/Z2SeqMgr.cpp @@ -4,14 +4,12 @@ // #include "Z2AudioLib/Z2SeqMgr.h" -#include "Z2AudioLib/Z2Calc.h" #include "Z2AudioLib/Z2Creature.h" #include "Z2AudioLib/Z2Param.h" #include "Z2AudioLib/Z2SceneMgr.h" #include "Z2AudioLib/Z2SoundMgr.h" #include "Z2AudioLib/Z2SoundObjMgr.h" #include "Z2AudioLib/Z2StatusMgr.h" -#include "JSystem/JAudio2/JAISeq.h" #include "JSystem/JAudio2/JAISoundChild.h" #include "dol2asm.h" diff --git a/libs/Z2AudioLib/Z2SoundHandles.cpp b/libs/Z2AudioLib/Z2SoundHandles.cpp index 52c4a19825..2ccf80ae7d 100644 --- a/libs/Z2AudioLib/Z2SoundHandles.cpp +++ b/libs/Z2AudioLib/Z2SoundHandles.cpp @@ -4,9 +4,7 @@ // #include "Z2AudioLib/Z2SoundHandles.h" -#include "JSystem/JAudio2/JASGadget.h" #include "JSystem/JAudio2/JAISoundInfo.h" -#include "dolphin/types.h" #include "dol2asm.h" extern "C" void func_802AB200(void* _this); diff --git a/libs/Z2AudioLib/Z2SoundInfo.cpp b/libs/Z2AudioLib/Z2SoundInfo.cpp index e55b97deb1..7e75a765f6 100644 --- a/libs/Z2AudioLib/Z2SoundInfo.cpp +++ b/libs/Z2AudioLib/Z2SoundInfo.cpp @@ -4,12 +4,7 @@ // #include "Z2AudioLib/Z2SoundInfo.h" -#include "Z2AudioLib/Z2Calc.h" #include "JSystem/JAudio2/JAISeq.h" -#include "JSystem/JAudio2/JAISe.h" -#include "JSystem/JAudio2/JAISoundChild.h" -#include "JSystem/JAudio2/JAIStream.h" -#include "JSystem/JAudio2/JAUAudibleParam.h" #include "JSystem/JAudio2/JAUSoundTable.h" #include "JSystem/JUtility/JUTAssert.h" #include "dol2asm.h" diff --git a/libs/Z2AudioLib/Z2SoundMgr.cpp b/libs/Z2AudioLib/Z2SoundMgr.cpp index 7060471381..792caedd67 100644 --- a/libs/Z2AudioLib/Z2SoundMgr.cpp +++ b/libs/Z2AudioLib/Z2SoundMgr.cpp @@ -6,10 +6,6 @@ #include "Z2AudioLib/Z2SoundMgr.h" #include "Z2AudioLib/Z2Param.h" #include "Z2AudioLib/Z2SceneMgr.h" -#include "Z2AudioLib/Z2SeMgr.h" -#include "Z2AudioLib/Z2SeqMgr.h" -#include "Z2AudioLib/Z2SoundInfo.h" -#include "Z2AudioLib/Z2SpeechMgr2.h" #include "JSystem/JAudio2/JASCalc.h" #include "JSystem/JAudio2/JASDriverIF.h" #include "JSystem/JAudio2/JAUSectionHeap.h" diff --git a/libs/Z2AudioLib/Z2SoundObject.cpp b/libs/Z2AudioLib/Z2SoundObject.cpp index 59d6fa7ecb..669cf200b9 100644 --- a/libs/Z2AudioLib/Z2SoundObject.cpp +++ b/libs/Z2AudioLib/Z2SoundObject.cpp @@ -10,7 +10,6 @@ #include "Z2AudioLib/Z2SoundMgr.h" #include "Z2AudioLib/Z2SoundStarter.h" #include "Z2AudioLib/Z2Audience.h" -#include "JSystem/JAudio2/JASGadget.h" #include "JSystem/JAudio2/JAUSoundAnimator.h" Z2SoundObjBase::Z2SoundObjBase() { diff --git a/libs/Z2AudioLib/Z2SoundStarter.cpp b/libs/Z2AudioLib/Z2SoundStarter.cpp index b05da8234a..2996aae9a9 100644 --- a/libs/Z2AudioLib/Z2SoundStarter.cpp +++ b/libs/Z2AudioLib/Z2SoundStarter.cpp @@ -5,7 +5,6 @@ #include "Z2AudioLib/Z2SoundStarter.h" #include "Z2AudioLib/Z2EnvSeMgr.h" #include "Z2AudioLib/Z2AudioMgr.h" -#include "JSystem/JUtility/JUTAssert.h" /* 802AAB94-802AABF4 2A54D4 0060+00 0/0 4/4 0/0 .text __ct__14Z2SoundStarterFb */ Z2SoundStarter::Z2SoundStarter(bool param_0) : JAISoundStarter(param_0), JASGlobalInstance(param_0) { diff --git a/libs/Z2AudioLib/Z2SpeechMgr2.cpp b/libs/Z2AudioLib/Z2SpeechMgr2.cpp index 36e9459405..4b4e03f0ab 100644 --- a/libs/Z2AudioLib/Z2SpeechMgr2.cpp +++ b/libs/Z2AudioLib/Z2SpeechMgr2.cpp @@ -4,9 +4,6 @@ // #include "Z2AudioLib/Z2SpeechMgr2.h" -#include "Z2AudioLib/Z2SeqMgr.h" -#include "Z2AudioLib/Z2EnvSeMgr.h" -#include "Z2AudioLib/Z2AudioMgr.h" #include "JSystem/J3DU/J3DUD.h" #include "dol2asm.h" diff --git a/libs/Z2AudioLib/Z2WolfHowlMgr.cpp b/libs/Z2AudioLib/Z2WolfHowlMgr.cpp index c32225200f..4a66db16d4 100644 --- a/libs/Z2AudioLib/Z2WolfHowlMgr.cpp +++ b/libs/Z2AudioLib/Z2WolfHowlMgr.cpp @@ -10,7 +10,6 @@ #include "Z2AudioLib/Z2SceneMgr.h" #include "Z2AudioLib/Z2SoundMgr.h" #include "Z2AudioLib/Z2Audience.h" -#include "dolphin/os.h" #include "d/d_demo.h" /* ############################################################################################## */ diff --git a/libs/dolphin/ar/ar.c b/libs/dolphin/ar/ar.c index b3bd3bf341..99a0df898d 100644 --- a/libs/dolphin/ar/ar.c +++ b/libs/dolphin/ar/ar.c @@ -1,5 +1,4 @@ #include "dolphin/ar.h" -#include "dolphin/base/PPCArch.h" #include "dolphin/dsp.h" #include "dolphin/os.h" #include "string.h" diff --git a/libs/dolphin/card/CARDBios.c b/libs/dolphin/card/CARDBios.c index 6106681bb9..af963de05d 100644 --- a/libs/dolphin/card/CARDBios.c +++ b/libs/dolphin/card/CARDBios.c @@ -1,5 +1,4 @@ #include "dolphin/card.h" -#include "dolphin/dsp.h" #include "dolphin/os.h" #include "dolphin/card/CARDPriv.h" diff --git a/libs/dolphin/card/CARDCheck.c b/libs/dolphin/card/CARDCheck.c index 8c1226147d..01cb7673e5 100644 --- a/libs/dolphin/card/CARDCheck.c +++ b/libs/dolphin/card/CARDCheck.c @@ -1,7 +1,6 @@ #include "dolphin/card/CARDCheck.h" #include "dolphin/card.h" #include "dolphin/card/CARDPriv.h" -#include "dolphin/dsp.h" #include "dolphin/os/OSRtc.h" static s32 VerifyID(CARDControl* card); diff --git a/libs/dolphin/card/CARDCreate.c b/libs/dolphin/card/CARDCreate.c index 19afd307ad..e836bbba97 100644 --- a/libs/dolphin/card/CARDCreate.c +++ b/libs/dolphin/card/CARDCreate.c @@ -1,7 +1,6 @@ #include "dolphin/card/CARDCreate.h" #include "dolphin/card.h" #include "dolphin/card/CARDPriv.h" -#include "dolphin/dsp.h" #include "dolphin/dvd.h" static void CreateCallbackFat(s32 chan, s32 result); diff --git a/libs/dolphin/card/CARDDir.c b/libs/dolphin/card/CARDDir.c index 0df040bb43..61a48db71f 100644 --- a/libs/dolphin/card/CARDDir.c +++ b/libs/dolphin/card/CARDDir.c @@ -1,7 +1,6 @@ #include "dolphin/card/CARDDir.h" #include "dolphin/card.h" #include "dolphin/card/CARDPriv.h" -#include "dolphin/dsp.h" static void WriteCallback(s32 chan, s32 result); static void EraseCallback(s32 chan, s32 result); diff --git a/libs/dolphin/card/CARDFormat.c b/libs/dolphin/card/CARDFormat.c index afba4c3f5f..1b14f330b9 100644 --- a/libs/dolphin/card/CARDFormat.c +++ b/libs/dolphin/card/CARDFormat.c @@ -1,7 +1,6 @@ #include "dolphin/card/CARDFormat.h" #include "dolphin/card.h" #include "dolphin/card/CARDPriv.h" -#include "dolphin/dsp.h" #include "dolphin/os/OSRtc.h" #include "dolphin/vi.h" diff --git a/libs/dolphin/card/CARDMount.c b/libs/dolphin/card/CARDMount.c index 6e1643aedc..65c09056a4 100644 --- a/libs/dolphin/card/CARDMount.c +++ b/libs/dolphin/card/CARDMount.c @@ -1,7 +1,6 @@ #include "dolphin/card/CARDMount.h" #include "dolphin/card.h" #include "dolphin/card/CARDPriv.h" -#include "dolphin/dsp.h" #include "dolphin/os/OSRtc.h" u8 GameChoice : 0x800030E3; diff --git a/libs/dolphin/card/CARDNet.c b/libs/dolphin/card/CARDNet.c index afd89cb68f..10963ee1c8 100644 --- a/libs/dolphin/card/CARDNet.c +++ b/libs/dolphin/card/CARDNet.c @@ -1,7 +1,6 @@ #include "dolphin/card/CARDNet.h" #include "dolphin/card.h" #include "dolphin/card/CARDPriv.h" -#include "dolphin/dsp.h" /* 80450A70 0002+00 data_80450A70 __CARDVendorID */ u16 __CARDVendorID = 0xFFFF; diff --git a/libs/dolphin/card/CARDOpen.c b/libs/dolphin/card/CARDOpen.c index f50687ecbc..ca0698012c 100644 --- a/libs/dolphin/card/CARDOpen.c +++ b/libs/dolphin/card/CARDOpen.c @@ -1,7 +1,6 @@ #include "dolphin/card/CARDOpen.h" #include "dolphin/card.h" #include "dolphin/card/CARDPriv.h" -#include "dolphin/dsp.h" #include "dolphin/dvd.h" /* 80357C74-80357CDC 3525B4 0068+00 1/1 1/1 0/0 .text __CARDCompareFileName */ diff --git a/libs/dolphin/card/CARDRdwr.c b/libs/dolphin/card/CARDRdwr.c index 139712961b..d9c6d5c873 100644 --- a/libs/dolphin/card/CARDRdwr.c +++ b/libs/dolphin/card/CARDRdwr.c @@ -1,7 +1,6 @@ #include "dolphin/card/CARDRdwr.h" #include "dolphin/card.h" #include "dolphin/card/CARDPriv.h" -#include "dolphin/dsp.h" static void BlockReadCallback(s32 chan, s32 result); static void BlockWriteCallback(s32 chan, s32 result); diff --git a/libs/dolphin/card/CARDRead.c b/libs/dolphin/card/CARDRead.c index 5a9eb2db2d..52ae99d159 100644 --- a/libs/dolphin/card/CARDRead.c +++ b/libs/dolphin/card/CARDRead.c @@ -1,7 +1,6 @@ #include "dolphin/card/CARDRead.h" #include "dolphin/card.h" #include "dolphin/card/CARDPriv.h" -#include "dolphin/dsp.h" static void ReadCallback(s32 chan, s32 result); diff --git a/libs/dolphin/card/CARDStat.c b/libs/dolphin/card/CARDStat.c index e32d486f6c..9c432737fa 100644 --- a/libs/dolphin/card/CARDStat.c +++ b/libs/dolphin/card/CARDStat.c @@ -1,7 +1,6 @@ #include "dolphin/card/CARDStat.h" #include "dolphin/card.h" #include "dolphin/card/CARDPriv.h" -#include "dolphin/dsp.h" static void UpdateIconOffsets(CARDDir* ent, CARDStat* stat); diff --git a/libs/dolphin/card/CARDUnlock.c b/libs/dolphin/card/CARDUnlock.c index 6fefed478b..fcf54a4067 100644 --- a/libs/dolphin/card/CARDUnlock.c +++ b/libs/dolphin/card/CARDUnlock.c @@ -1,7 +1,6 @@ #include "dolphin/card/CARDUnlock.h" #include "dolphin/card.h" #include "dolphin/card/CARDPriv.h" -#include "dolphin/dsp.h" #include "dolphin/os.h" static u32 bitrev(u32 data); diff --git a/libs/dolphin/card/CARDWrite.c b/libs/dolphin/card/CARDWrite.c index 1a49bc892c..2e7487a80c 100644 --- a/libs/dolphin/card/CARDWrite.c +++ b/libs/dolphin/card/CARDWrite.c @@ -1,7 +1,6 @@ #include "dolphin/card/CARDWrite.h" #include "dolphin/card.h" #include "dolphin/card/CARDPriv.h" -#include "dolphin/dsp.h" #include "dolphin/os/OSTime.h" static void WriteCallback(s32 chan, s32 result); diff --git a/libs/dolphin/db/db.c b/libs/dolphin/db/db.c index 823edd9664..6af5f9d5f8 100644 --- a/libs/dolphin/db/db.c +++ b/libs/dolphin/db/db.c @@ -1,5 +1,4 @@ #include "dolphin/db.h" -#include "dolphin/os.h" /* 80451708-8045170C 000C08 0004+00 2/2 0/0 0/0 .sbss __DBInterface */ static DBInterface* __DBInterface; diff --git a/libs/dolphin/dvd/dvdfs.c b/libs/dolphin/dvd/dvdfs.c index 8b151e682c..424486393e 100644 --- a/libs/dolphin/dvd/dvdfs.c +++ b/libs/dolphin/dvd/dvdfs.c @@ -1,5 +1,4 @@ #include "dolphin/dvd/dvdfs.h" -#include "ctype.h" #include "dolphin/dvd.h" #include "dolphin/os.h" diff --git a/libs/dolphin/dvd/dvdlow.c b/libs/dolphin/dvd/dvdlow.c index f2a723a0da..09f05e5554 100644 --- a/libs/dolphin/dvd/dvdlow.c +++ b/libs/dolphin/dvd/dvdlow.c @@ -3,7 +3,6 @@ #include "dolphin/os/OSAlarm.h" #include "dolphin/os/OSContext.h" #include "dolphin/os/OSReset.h" -#include "dolphin/os/OSTime.h" void __DVDInitWA(); void __DVDInterruptHandler(u32 arg0, OSContext* context); diff --git a/libs/dolphin/dvd/dvdqueue.c b/libs/dolphin/dvd/dvdqueue.c index 26e931a7c7..e58068c382 100644 --- a/libs/dolphin/dvd/dvdqueue.c +++ b/libs/dolphin/dvd/dvdqueue.c @@ -1,6 +1,5 @@ #include "dolphin/dvd/dvdqueue.h" #include "dolphin/dvd.h" -#include "dolphin/os/OSInterrupt.h" void __DVDClearWaitingQueue(); BOOL __DVDPushWaitingQueue(s32 prio, DVDCommandBlock* block); diff --git a/libs/dolphin/exi/EXIBios.c b/libs/dolphin/exi/EXIBios.c index adcaaf504a..64c43fdaf4 100644 --- a/libs/dolphin/exi/EXIBios.c +++ b/libs/dolphin/exi/EXIBios.c @@ -1,5 +1,4 @@ #include "dolphin/exi/EXIBios.h" -#include "dol2asm.h" #include "dolphin/os.h" /* 804509C0-804509C8 -00001 0004+04 1/1 0/0 0/0 .sdata __EXIVersion */ diff --git a/libs/dolphin/gx/GXAttr.c b/libs/dolphin/gx/GXAttr.c index 854a4caa93..bc81d42b52 100644 --- a/libs/dolphin/gx/GXAttr.c +++ b/libs/dolphin/gx/GXAttr.c @@ -1,6 +1,5 @@ #include "dolphin/gx/GXAttr.h" #include "dolphin/gx.h" -#include "dolphin/gx/GXInit.h" static inline void SETVCDATTR(GXAttr name, GXAttrType type) { switch (name) { diff --git a/libs/dolphin/gx/GXFrameBuf.c b/libs/dolphin/gx/GXFrameBuf.c index 5321a9214d..77dd6a876a 100644 --- a/libs/dolphin/gx/GXFrameBuf.c +++ b/libs/dolphin/gx/GXFrameBuf.c @@ -1,6 +1,5 @@ #include "dolphin/gx/GXFrameBuf.h" #include "dolphin/gx.h" -#include "dolphin/vi.h" GXRenderModeObj GXNtsc480IntDf = { VI_TVMODE_NTSC_INT, diff --git a/libs/dolphin/gx/GXInit.c b/libs/dolphin/gx/GXInit.c index dac0508656..e0deaf9612 100644 --- a/libs/dolphin/gx/GXInit.c +++ b/libs/dolphin/gx/GXInit.c @@ -1,4 +1,3 @@ -#include "dolphin/base/PPCArch.h" #include "dolphin/gx.h" #include "dolphin/os.h" #include "dolphin/vi.h" diff --git a/libs/dolphin/gx/GXMisc.c b/libs/dolphin/gx/GXMisc.c index d5d7eb4b29..8ea5637047 100644 --- a/libs/dolphin/gx/GXMisc.c +++ b/libs/dolphin/gx/GXMisc.c @@ -1,7 +1,5 @@ #include "dolphin/gx/GXMisc.h" #include "dolphin/gx.h" -#include "dolphin/gx/GXInit.h" -#include "dolphin/os/OSContext.h" #include "dolphin/os/OSInterrupt.h" #include "dolphin/os/OSReset.h" #include "dolphin/os/OSTime.h" diff --git a/libs/dolphin/gx/GXTexture.c b/libs/dolphin/gx/GXTexture.c index c23e733482..08be7734a3 100644 --- a/libs/dolphin/gx/GXTexture.c +++ b/libs/dolphin/gx/GXTexture.c @@ -1,6 +1,5 @@ #include "dolphin/gx/GXTexture.h" #include "dolphin/gx.h" -#include "string.h" #define GET_TILE_COUNT(a, b) (((a) + (1 << (b)) - 1) >> (b)) diff --git a/libs/dolphin/os/OS.c b/libs/dolphin/os/OS.c index 07753bf904..e6c99568da 100644 --- a/libs/dolphin/os/OS.c +++ b/libs/dolphin/os/OS.c @@ -6,8 +6,6 @@ #include "dolphin/base/PPCArch.h" #include "dolphin/db.h" #include "dolphin/pad.h" -#include "dolphin/exi/EXIBios.h" -#include "dolphin/si/SIBios.h" #include "dolphin/dvd/dvdfs.h" #include "TRK_MINNOW_DOLPHIN/Os/dolphin/dolphin_trk.h" diff --git a/libs/dolphin/os/OSAlarm.c b/libs/dolphin/os/OSAlarm.c index 84bc56c4a4..16e6d2cb28 100644 --- a/libs/dolphin/os/OSAlarm.c +++ b/libs/dolphin/os/OSAlarm.c @@ -1,6 +1,5 @@ #include "dolphin/os/OSAlarm.h" #include "dolphin/os.h" -#include "dolphin/os/OSReset.h" static BOOL OnReset(BOOL param_0); BOOL __DVDTestAlarm(OSAlarm* alarm); diff --git a/libs/dolphin/os/OSAudioSystem.c b/libs/dolphin/os/OSAudioSystem.c index 798ea809b4..5eaf9c39d8 100644 --- a/libs/dolphin/os/OSAudioSystem.c +++ b/libs/dolphin/os/OSAudioSystem.c @@ -1,6 +1,5 @@ #include "dolphin/os/OSAudioSystem.h" #include "dolphin/dsp.h" -#include "dolphin/os/OSTime.h" #include "string.h" /* 803CF490-803CF510 02C5B0 0080+00 1/1 0/0 0/0 .data DSPInitCode */ diff --git a/libs/dolphin/os/OSCache.c b/libs/dolphin/os/OSCache.c index 815a9b0f3a..081b8e9ff5 100644 --- a/libs/dolphin/os/OSCache.c +++ b/libs/dolphin/os/OSCache.c @@ -2,7 +2,6 @@ #include "dolphin/base/PPCArch.h" #include "dolphin/db.h" #include "dolphin/os.h" -#include "dolphin/os/OSInterrupt.h" /* 8033B56C-8033B580 335EAC 0014+00 1/1 0/0 0/0 .text DCEnable */ static asm void DCEnable(void) { diff --git a/libs/dolphin/os/OSExec.c b/libs/dolphin/os/OSExec.c index 77746d9ed7..11db107d94 100644 --- a/libs/dolphin/os/OSExec.c +++ b/libs/dolphin/os/OSExec.c @@ -5,8 +5,6 @@ #include "dolphin/os/OSExec.h" #include "dolphin/os.h" -#include "dolphin/os/OSReset.h" -#include "dolphin/dvd.h" #include "dolphin/ai.h" #include "dol2asm.h" #include "string.h" diff --git a/libs/dolphin/os/OSInterrupt.c b/libs/dolphin/os/OSInterrupt.c index bb8e433547..f07c9c3ea4 100644 --- a/libs/dolphin/os/OSInterrupt.c +++ b/libs/dolphin/os/OSInterrupt.c @@ -2,7 +2,6 @@ #include "dolphin/dsp.h" #include "dolphin/exi/EXIBios.h" #include "dolphin/os.h" -#include "string.h" vu32 __PIRegs[12] : 0xCC003000; vu16 __MEMRegs[64] : 0xCC004000; diff --git a/libs/dolphin/os/OSMemory.c b/libs/dolphin/os/OSMemory.c index 6b191e3a84..f6afe2ad0d 100644 --- a/libs/dolphin/os/OSMemory.c +++ b/libs/dolphin/os/OSMemory.c @@ -1,6 +1,5 @@ #include "dolphin/os/OSMemory.h" #include "dolphin/os.h" -#include "dolphin/os/OSReset.h" #define TRUNC(n, a) (((u32)(n)) & ~((a)-1)) #define ROUND(n, a) (((u32)(n) + (a)-1) & ~((a)-1)) diff --git a/libs/dolphin/os/OSMessage.c b/libs/dolphin/os/OSMessage.c index 95c2290acf..3b091b5ffb 100644 --- a/libs/dolphin/os/OSMessage.c +++ b/libs/dolphin/os/OSMessage.c @@ -1,5 +1,4 @@ #include "dolphin/os/OSMessage.h" -#include "dolphin/os/OSThread.h" /* 8033E994-8033E9F4 3392D4 0060+00 0/0 13/13 5/5 .text OSInitMessageQueue */ void OSInitMessageQueue(OSMessageQueue* mq, OSMessage* msgArray, s32 msgCount) { diff --git a/libs/dolphin/os/OSReboot.c b/libs/dolphin/os/OSReboot.c index e1b2d806dd..f4ce427d01 100644 --- a/libs/dolphin/os/OSReboot.c +++ b/libs/dolphin/os/OSReboot.c @@ -1,5 +1,4 @@ #include "dolphin/os/OSReboot.h" -#include "dolphin/os/OSArena.h" #include "dolphin/os/OSContext.h" #include "dolphin/os/OSExec.h" diff --git a/libs/dolphin/os/OSReset.c b/libs/dolphin/os/OSReset.c index 3c2f4bb2db..5ab7ff8b72 100644 --- a/libs/dolphin/os/OSReset.c +++ b/libs/dolphin/os/OSReset.c @@ -1,6 +1,5 @@ #include "dolphin/os/OSReset.h" #include "dolphin/os.h" -#include "string.h" vu16 __VIRegs[59] : 0xCC002000; OSThreadQueue __OSActiveThreadQueue : (OS_BASE_CACHED | 0x00DC); diff --git a/libs/dolphin/os/OSThread.c b/libs/dolphin/os/OSThread.c index 6401d8ddfb..214e670326 100644 --- a/libs/dolphin/os/OSThread.c +++ b/libs/dolphin/os/OSThread.c @@ -4,7 +4,6 @@ // #include "dolphin/os/OSThread.h" -#include "dol2asm.h" #include "dolphin/os.h" OSThread* __OSCurrentThread : OS_BASE_CACHED + 0x00E4; diff --git a/libs/dolphin/os/OSTime.c b/libs/dolphin/os/OSTime.c index f00eee18a9..ac283bafc3 100644 --- a/libs/dolphin/os/OSTime.c +++ b/libs/dolphin/os/OSTime.c @@ -1,6 +1,5 @@ #include "dolphin/os/OSTime.h" #include "dolphin/os.h" -#include "dolphin/os/OSInterrupt.h" #define OS_TIME_MONTH_MAX 12 #define OS_TIME_WEEK_DAY_MAX 7 diff --git a/libs/dolphin/pad/Pad.c b/libs/dolphin/pad/Pad.c index bf7b61eb9f..b5753d4b37 100644 --- a/libs/dolphin/pad/Pad.c +++ b/libs/dolphin/pad/Pad.c @@ -1,7 +1,6 @@ #include "dolphin/pad.h" #include "dolphin/os.h" #include "dolphin/si/SIBios.h" -#include "dolphin/si/SISamplingRate.h" u8 UnkVal : (OS_BASE_CACHED | 0x30e3); u16 __OSWirelessPadFixMode : (OS_BASE_CACHED | 0x30E0); diff --git a/libs/dolphin/si/SIBios.c b/libs/dolphin/si/SIBios.c index b1843354e8..15ec51b2f0 100644 --- a/libs/dolphin/si/SIBios.c +++ b/libs/dolphin/si/SIBios.c @@ -1,6 +1,5 @@ #include "dolphin/si/SIBios.h" #include "dolphin/os.h" -#include "dolphin/vi.h" /* 804509C8-804509D0 -00001 0004+04 1/1 0/0 0/0 .sdata __SIVersion */ static char* __SIVersion = "<< Dolphin SDK - SI\trelease build: Apr 5 2004 04:14:16 (0x2301) >>"; diff --git a/libs/dolphin/vi/vi.c b/libs/dolphin/vi/vi.c index 7c9f331134..2999acc5b6 100644 --- a/libs/dolphin/vi/vi.c +++ b/libs/dolphin/vi/vi.c @@ -5,7 +5,6 @@ #include "dolphin/vi.h" #include "dol2asm.h" -#include "dolphin/gx.h" #include "dolphin/os.h" #define CLAMP(x, l, h) (((x) > (h)) ? (h) : (((x) < (l)) ? (l) : (x))) diff --git a/rel/d/a/b/d_a_b_bq/d_a_b_bq.cpp b/rel/d/a/b/d_a_b_bq/d_a_b_bq.cpp index 1a1a969d1d..1ee05d23e3 100644 --- a/rel/d/a/b/d_a_b_bq/d_a_b_bq.cpp +++ b/rel/d/a/b/d_a_b_bq/d_a_b_bq.cpp @@ -5,10 +5,7 @@ #include "rel/d/a/b/d_a_b_bq/d_a_b_bq.h" #include "Z2AudioLib/Z2Creature.h" -#include "d/a/d_a_player.h" -#include "d/cc/d_cc_d.h" #include "d/cc/d_cc_uty.h" -#include "d/com/d_com_inf_game.h" #include "dol2asm.h" #include "cmath.h" diff --git a/rel/d/a/b/d_a_b_bq/d_a_b_bq_NONMATCHING.cpp b/rel/d/a/b/d_a_b_bq/d_a_b_bq_NONMATCHING.cpp index 5fdfcc75e0..32ff2145c5 100644 --- a/rel/d/a/b/d_a_b_bq/d_a_b_bq_NONMATCHING.cpp +++ b/rel/d/a/b/d_a_b_bq/d_a_b_bq_NONMATCHING.cpp @@ -4,14 +4,6 @@ */ #include "rel/d/a/b/d_a_b_bq/d_a_b_bq.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "SSystem/SComponent/c_math.h" -#include "Z2AudioLib/Z2Creature.h" -#include "c/c_damagereaction.h" -#include "cmath.h" -#include "d/a/d_a_player.h" -#include "d/cc/d_cc_d.h" -#include "d/cc/d_cc_uty.h" #include "d/com/d_com_inf_game.h" #include "d/s/d_s_play.h" #include "dol2asm.h" diff --git a/rel/d/a/b/d_a_b_ds/d_a_b_ds.cpp b/rel/d/a/b/d_a_b_ds/d_a_b_ds.cpp index 22a926dc0c..97a8edc2ee 100644 --- a/rel/d/a/b/d_a_b_ds/d_a_b_ds.cpp +++ b/rel/d/a/b/d_a_b_ds/d_a_b_ds.cpp @@ -4,14 +4,8 @@ */ #include "rel/d/a/b/d_a_b_ds/d_a_b_ds.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "SSystem/SComponent/c_math.h" -#include "c/c_damagereaction.h" -#include "f_op/f_op_actor_mng.h" #include "f_op/f_op_msg.h" #include "f_op/f_op_msg_mng.h" -#include "d/cc/d_cc_uty.h" #include "d/com/d_com_inf_game.h" #include "d/a/d_a_player.h" #include "d/s/d_s_play.h" diff --git a/rel/d/a/b/d_a_b_ds/d_a_b_ds_NONMATCHING.cpp b/rel/d/a/b/d_a_b_ds/d_a_b_ds_NONMATCHING.cpp index 86b1340f5a..f3ad1fd386 100644 --- a/rel/d/a/b/d_a_b_ds/d_a_b_ds_NONMATCHING.cpp +++ b/rel/d/a/b/d_a_b_ds/d_a_b_ds_NONMATCHING.cpp @@ -4,13 +4,6 @@ */ #include "rel/d/a/b/d_a_b_ds/d_a_b_ds.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "SSystem/SComponent/c_math.h" -#include "c/c_damagereaction.h" -#include "d/a/d_a_player.h" -#include "d/cc/d_cc_uty.h" -#include "d/com/d_com_inf_game.h" #include "d/s/d_s_play.h" #include "dol2asm.h" #include "f_op/f_op_actor_mng.h" diff --git a/rel/d/a/b/d_a_b_go/d_a_b_go.cpp b/rel/d/a/b/d_a_b_go/d_a_b_go.cpp index ad6b8be222..798fe8c032 100644 --- a/rel/d/a/b/d_a_b_go/d_a_b_go.cpp +++ b/rel/d/a/b/d_a_b_go/d_a_b_go.cpp @@ -5,7 +5,6 @@ #include "rel/d/a/b/d_a_b_go/d_a_b_go.h" #include "SSystem/SComponent/c_math.h" -#include "d/com/d_com_inf_game.h" #define RES_IS_MODEL 0x13 diff --git a/rel/d/a/b/d_a_b_gos/d_a_b_gos.cpp b/rel/d/a/b/d_a_b_gos/d_a_b_gos.cpp index 3e8cebbca7..6a94918952 100644 --- a/rel/d/a/b/d_a_b_gos/d_a_b_gos.cpp +++ b/rel/d/a/b/d_a_b_gos/d_a_b_gos.cpp @@ -5,7 +5,6 @@ #include "rel/d/a/b/d_a_b_gos/d_a_b_gos.h" #include "SSystem/SComponent/c_math.h" -#include "d/com/d_com_inf_game.h" #include "rel/d/a/b/d_a_b_go/d_a_b_go.h" class daB_GOS_HIO_c { diff --git a/rel/d/a/b/d_a_b_ob/d_a_b_ob.cpp b/rel/d/a/b/d_a_b_ob/d_a_b_ob.cpp index f062e996bb..ffdc7afe9e 100644 --- a/rel/d/a/b/d_a_b_ob/d_a_b_ob.cpp +++ b/rel/d/a/b/d_a_b_ob/d_a_b_ob.cpp @@ -4,7 +4,6 @@ // #include "rel/d/a/b/d_a_b_ob/d_a_b_ob.h" -#include "d/a/d_a_player.h" #include "dol2asm.h" #include "m_Do/m_Do_graphic.h" diff --git a/rel/d/a/b/d_a_b_oh/d_a_b_oh.cpp b/rel/d/a/b/d_a_b_oh/d_a_b_oh.cpp index 1c18a05c2c..72dbc11662 100644 --- a/rel/d/a/b/d_a_b_oh/d_a_b_oh.cpp +++ b/rel/d/a/b/d_a_b_oh/d_a_b_oh.cpp @@ -4,9 +4,6 @@ */ #include "rel/d/a/b/d_a_b_oh/d_a_b_oh.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" -#include "f_op/f_op_actor_mng.h" #include "SSystem/SComponent/c_math.h" #include "dol2asm.h" #include "rel/d/a/b/d_a_b_ob/d_a_b_ob.h" diff --git a/rel/d/a/b/d_a_b_oh/d_a_b_oh_NONMATCHING.cpp b/rel/d/a/b/d_a_b_oh/d_a_b_oh_NONMATCHING.cpp index c97abbe4e5..f7ad1f40bb 100644 --- a/rel/d/a/b/d_a_b_oh/d_a_b_oh_NONMATCHING.cpp +++ b/rel/d/a/b/d_a_b_oh/d_a_b_oh_NONMATCHING.cpp @@ -8,11 +8,6 @@ * things like cCcD_ShapeAttr, dCcD/cCcD_Stts, etc */ -#include "SSystem/SComponent/c_math.h" -#include "c/c_damagereaction.h" -#include "d/a/d_a_player.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "dol2asm.h" #include "f_op/f_op_actor_mng.h" #include "rel/d/a/b/d_a_b_ob/d_a_b_ob.h" diff --git a/rel/d/a/b/d_a_b_oh2/d_a_b_oh2.cpp b/rel/d/a/b/d_a_b_oh2/d_a_b_oh2.cpp index 01c00f1577..dc8fd54cf4 100644 --- a/rel/d/a/b/d_a_b_oh2/d_a_b_oh2.cpp +++ b/rel/d/a/b/d_a_b_oh2/d_a_b_oh2.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/b/d_a_b_oh2/d_a_b_oh2.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "JSystem/JMath/JMath.h" #include "SSystem/SComponent/c_math.h" #include "c/c_damagereaction.h" #include "d/d_procname.h" diff --git a/rel/d/a/d_a_alldie/d_a_alldie.cpp b/rel/d/a/d_a_alldie/d_a_alldie.cpp index 7e2bffcb5a..554a5f1472 100644 --- a/rel/d/a/d_a_alldie/d_a_alldie.cpp +++ b/rel/d/a/d_a_alldie/d_a_alldie.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/d_a_alldie/d_a_alldie.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" /* 804D5818-804D5824 000078 000C+00 2/2 0/0 0/0 .text getEventNo__10daAlldie_cFv */ diff --git a/rel/d/a/d_a_andsw/d_a_andsw.cpp b/rel/d/a/d_a_andsw/d_a_andsw.cpp index 84993e9590..4646e8ee78 100644 --- a/rel/d/a/d_a_andsw/d_a_andsw.cpp +++ b/rel/d/a/d_a_andsw/d_a_andsw.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/d_a_andsw/d_a_andsw.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80457978-804579B8 000078 0040+00 1/1 0/0 0/0 .text Create__9daAndsw_cFv */ diff --git a/rel/d/a/d_a_andsw2/d_a_andsw2.cpp b/rel/d/a/d_a_andsw2/d_a_andsw2.cpp index 2ba7b41d40..676bb9283c 100644 --- a/rel/d/a/d_a_andsw2/d_a_andsw2.cpp +++ b/rel/d/a/d_a_andsw2/d_a_andsw2.cpp @@ -4,9 +4,7 @@ // #include "rel/d/a/d_a_andsw2/d_a_andsw2.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_lib.h" #include "d/d_procname.h" // diff --git a/rel/d/a/d_a_bg/d_a_bg.cpp b/rel/d/a/d_a_bg/d_a_bg.cpp index 2b2efbff8c..d31a4c5370 100644 --- a/rel/d/a/d_a_bg/d_a_bg.cpp +++ b/rel/d/a/d_a_bg/d_a_bg.cpp @@ -9,8 +9,6 @@ #include "d/com/d_com_inf_game.h" #include "d/com/d_com_static.h" #include "dol2asm.h" -#include "f_op/f_op_actor_mng.h" -#include "m_Do/m_Do_lib.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "string.h" diff --git a/rel/d/a/d_a_bg_obj/d_a_bg_obj.cpp b/rel/d/a/d_a_bg_obj/d_a_bg_obj.cpp index fd0b1826ca..a4759df874 100644 --- a/rel/d/a/d_a_bg_obj/d_a_bg_obj.cpp +++ b/rel/d/a/d_a_bg_obj/d_a_bg_obj.cpp @@ -5,9 +5,7 @@ #include "rel/d/a/d_a_bg_obj/d_a_bg_obj.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JKernel/JKRHeap.h" #include "stdio.h" -#include "d/d_procname.h" #include "dol2asm.h" #include "dolphin/os.h" #include "rel/d/a/d_a_set_bgobj/d_a_set_bgobj.h" diff --git a/rel/d/a/d_a_boomerang/d_a_boomerang.cpp b/rel/d/a/d_a_boomerang/d_a_boomerang.cpp index 9ddf8907b6..14251a814a 100644 --- a/rel/d/a/d_a_boomerang/d_a_boomerang.cpp +++ b/rel/d/a/d_a_boomerang/d_a_boomerang.cpp @@ -6,11 +6,8 @@ #include "rel/d/a/d_a_boomerang/d_a_boomerang.h" #include "JSystem/J2DGraph/J2DAnmLoader.h" #include "d/a/d_a_alink.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/pane/d_pane_class.h" #include "dol2asm.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_lib.h" #include "rel/d/a/d_a_mirror/d_a_mirror.h" diff --git a/rel/d/a/d_a_crod/d_a_crod.cpp b/rel/d/a/d_a_crod/d_a_crod.cpp index 669d040827..8f3f0615a2 100644 --- a/rel/d/a/d_a_crod/d_a_crod.cpp +++ b/rel/d/a/d_a_crod/d_a_crod.cpp @@ -4,10 +4,8 @@ */ #include "rel/d/a/d_a_crod/d_a_crod.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_alink.h" -#include "d/d_procname.h" #include "rel/d/a/d_a_cstaF/d_a_cstaF.h" #include "rel/d/a/d_a_cstatue/d_a_cstatue.h" diff --git a/rel/d/a/d_a_cstatue/d_a_cstatue.cpp b/rel/d/a/d_a_cstatue/d_a_cstatue.cpp index 8aed23540e..38a1bf231b 100644 --- a/rel/d/a/d_a_cstatue/d_a_cstatue.cpp +++ b/rel/d/a/d_a_cstatue/d_a_cstatue.cpp @@ -5,7 +5,6 @@ #include "rel/d/a/d_a_cstatue/d_a_cstatue.h" #include "dol2asm.h" -#include "d/com/d_com_inf_game.h" // // Forward References: diff --git a/rel/d/a/d_a_disappear/d_a_disappear.cpp b/rel/d/a/d_a_disappear/d_a_disappear.cpp index fa0e41c61e..8a7f2a9c13 100644 --- a/rel/d/a/d_a_disappear/d_a_disappear.cpp +++ b/rel/d/a/d_a_disappear/d_a_disappear.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/d_a_disappear/d_a_disappear.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/d_a_dmidna/d_a_dmidna.cpp b/rel/d/a/d_a_dmidna/d_a_dmidna.cpp index b1242c2325..ca5e6a51f8 100644 --- a/rel/d/a/d_a_dmidna/d_a_dmidna.cpp +++ b/rel/d/a/d_a_dmidna/d_a_dmidna.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/d_a_dmidna/d_a_dmidna.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" /* 8045D290-8045D298 000000 0007+01 3/3 0/0 0/0 .rodata l_arcName */ diff --git a/rel/d/a/d_a_do/d_a_do.cpp b/rel/d/a/d_a_do/d_a_do.cpp index 354cab0d4c..dfd2f4c990 100644 --- a/rel/d/a/d_a_do/d_a_do.cpp +++ b/rel/d/a/d_a_do/d_a_do.cpp @@ -6,7 +6,6 @@ #include "rel/d/a/d_a_do/d_a_do.h" #include "SSystem/SComponent/c_math.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "dol2asm.h" #include "f_op/f_op_actor_mng.h" diff --git a/rel/d/a/d_a_dshutter/d_a_dshutter.cpp b/rel/d/a/d_a_dshutter/d_a_dshutter.cpp index 83f62fa10f..bf0c287085 100644 --- a/rel/d/a/d_a_dshutter/d_a_dshutter.cpp +++ b/rel/d/a/d_a_dshutter/d_a_dshutter.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/d_a_dshutter/d_a_dshutter.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" -#include "d/d_procname.h" #include "dol2asm.h" // diff --git a/rel/d/a/d_a_econt/d_a_econt.cpp b/rel/d/a/d_a_econt/d_a_econt.cpp index 91110364a3..480b2644bc 100644 --- a/rel/d/a/d_a_econt/d_a_econt.cpp +++ b/rel/d/a/d_a_econt/d_a_econt.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/d_a_econt/d_a_econt.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "d/d_timer.h" #include "d/meter/d_meter2_info.h" #include "f_pc/f_pc_executor.h" diff --git a/rel/d/a/d_a_formation_mng/d_a_formation_mng.cpp b/rel/d/a/d_a_formation_mng/d_a_formation_mng.cpp index 557a9afaa4..b700c259b6 100644 --- a/rel/d/a/d_a_formation_mng/d_a_formation_mng.cpp +++ b/rel/d/a/d_a_formation_mng/d_a_formation_mng.cpp @@ -4,8 +4,6 @@ #include "rel/d/a/d_a_formation_mng/d_a_formation_mng.h" #include "rel/d/a/npc/d_a_npc_fguard/d_a_npc_fguard.h" -#include "d/a/d_a_npc_cd2.h" -#include "d/d_path.h" #include "d/save/d_save.h" #include "f_op/f_op_actor_mng.h" diff --git a/rel/d/a/d_a_grass/d_a_grass.cpp b/rel/d/a/d_a_grass/d_a_grass.cpp index c28b764f9b..46d91a5475 100644 --- a/rel/d/a/d_a_grass/d_a_grass.cpp +++ b/rel/d/a/d_a_grass/d_a_grass.cpp @@ -4,12 +4,9 @@ // #include "rel/d/a/d_a_grass/d_a_grass.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_counter.h" #include "SSystem/SComponent/c_math.h" -#include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "dol2asm.h" #include "m_Do/m_Do_lib.h" #include "string.h" diff --git a/rel/d/a/d_a_guard_mng/d_a_guard_mng.cpp b/rel/d/a/d_a_guard_mng/d_a_guard_mng.cpp index 2b9b5cfba4..14778153a4 100644 --- a/rel/d/a/d_a_guard_mng/d_a_guard_mng.cpp +++ b/rel/d/a/d_a_guard_mng/d_a_guard_mng.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/d_a_guard_mng/d_a_guard_mng.h" -#include "d/d_procname.h" #include "f_pc/f_pc_executor.h" /* 80837B18-80837B9C 000078 0084+00 1/1 0/0 0/0 .text s_sub__FPvPv */ diff --git a/rel/d/a/d_a_hitobj/d_a_hitobj.cpp b/rel/d/a/d_a_hitobj/d_a_hitobj.cpp index 8a043797c6..eccb36fc61 100644 --- a/rel/d/a/d_a_hitobj/d_a_hitobj.cpp +++ b/rel/d/a/d_a_hitobj/d_a_hitobj.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/d_a_hitobj/d_a_hitobj.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "f_op/f_op_kankyo_mng.h" /* 8046B358-8046B360 000078 0008+00 1/0 0/0 0/0 .text daHitobj_Draw__FP12hitobj_class */ diff --git a/rel/d/a/d_a_horse/d_a_horse.cpp b/rel/d/a/d_a_horse/d_a_horse.cpp index 3eb72ed72e..2361391855 100644 --- a/rel/d/a/d_a_horse/d_a_horse.cpp +++ b/rel/d/a/d_a_horse/d_a_horse.cpp @@ -6,7 +6,6 @@ #include "rel/d/a/d_a_horse/d_a_horse.h" #include "d/d_stage.h" #include "dol2asm.h" -#include "dolphin/types.h" // // Types: diff --git a/rel/d/a/d_a_izumi_gate/d_a_izumi_gate.cpp b/rel/d/a/d_a_izumi_gate/d_a_izumi_gate.cpp index a7caf0fec7..f1254f51e7 100644 --- a/rel/d/a/d_a_izumi_gate/d_a_izumi_gate.cpp +++ b/rel/d/a/d_a_izumi_gate/d_a_izumi_gate.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/d_a_izumi_gate/d_a_izumi_gate.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80849098-808490B8 000078 0020+00 1/1 0/0 0/0 .text initBaseMtx__13daIzumiGate_cFv */ diff --git a/rel/d/a/d_a_mg_fshop/d_a_mg_fshop.cpp b/rel/d/a/d_a_mg_fshop/d_a_mg_fshop.cpp index 1951bdcb94..f9c67c9ecc 100644 --- a/rel/d/a/d_a_mg_fshop/d_a_mg_fshop.cpp +++ b/rel/d/a/d_a_mg_fshop/d_a_mg_fshop.cpp @@ -4,12 +4,6 @@ // #include "rel/d/a/d_a_mg_fshop/d_a_mg_fshop.h" -#include "SSystem/SComponent/c_lib.h" -#include "SSystem/SComponent/c_math.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "d/com/d_com_inf_game.h" -#include "d/a/d_a_player.h" -#include "d/d_procname.h" #include "d/bg/d_bg_w.h" #include "d/kankyo/d_kankyo.h" #include "f_op/f_op_actor_mng.h" diff --git a/rel/d/a/d_a_mg_rod/d_a_mg_rod.cpp b/rel/d/a/d_a_mg_rod/d_a_mg_rod.cpp index bc8176b8ec..6a7e47b2c4 100644 --- a/rel/d/a/d_a_mg_rod/d_a_mg_rod.cpp +++ b/rel/d/a/d_a_mg_rod/d_a_mg_rod.cpp @@ -6,7 +6,6 @@ // #include "rel/d/a/d_a_mg_rod/d_a_mg_rod.h" #include "dol2asm.h" #include "d/cc/d_cc_d.h" -#include "dolphin/types.h" // // Types: diff --git a/rel/d/a/d_a_mirror/d_a_mirror.cpp b/rel/d/a/d_a_mirror/d_a_mirror.cpp index a9c8d88302..bf74caa127 100644 --- a/rel/d/a/d_a_mirror/d_a_mirror.cpp +++ b/rel/d/a/d_a_mirror/d_a_mirror.cpp @@ -1,662 +1,660 @@ -/** - * d_a_mirror.cpp - * Mirror of Twilight - */ - -#include "rel/d/a/d_a_mirror/d_a_mirror.h" -#include "JSystem/J3DGraphBase/J3DDrawBuffer.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/a/d_a_player.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" -#include "dolphin/gf/GFGeometry.h" -#include "dolphin/gf/GFLight.h" -#include "m_Do/m_Do_lib.h" - -/* 80870BB8-80870BD8 000078 0020+00 1/1 0/0 0/0 .text daMirror_c_createHeap__FP10fopAc_ac_c */ -static BOOL daMirror_c_createHeap(fopAc_ac_c* i_this) { - return ((daMirror_c*)i_this)->createHeap(); -} - -/* 80872660-80872664 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ -static char* l_arcName = "Mirror"; - -/* 80872664-80872668 -00001 0004+00 2/2 0/0 0/0 .data l_arcName2 */ -static char* l_arcName2 = "MR-Table"; - -/* 80870BD8-80870C54 000098 007C+00 1/1 0/0 0/0 .text __ct__16dMirror_packet_cFv */ -dMirror_packet_c::dMirror_packet_c() { - reset(); -} - -/* 80870C94-80870CA0 000154 000C+00 2/2 0/0 0/0 .text reset__16dMirror_packet_cFv */ -void dMirror_packet_c::reset() { - mModelCount = 0; -} - -/* 80870CA0-80870D58 000160 00B8+00 1/1 0/0 0/0 .text calcMinMax__16dMirror_packet_cFv */ -void dMirror_packet_c::calcMinMax() { - mMinVal.set(FLT_MAX, FLT_MAX, FLT_MAX); - mMaxVal.set(-FLT_MAX, -FLT_MAX, -FLT_MAX); - - cXyz* quad = mQuad; - for (int i = 0; i < 4; i++, quad++) { - f32 val = quad->x; - if (val < mMinVal.x) { - mMinVal.x = val; - } - - val = quad->x; - if (val > mMaxVal.x) { - mMaxVal.x = val; - } - - val = quad->y; - if (val < mMinVal.y) { - mMinVal.y = val; - } - - val = quad->y; - if (val > mMaxVal.y) { - mMaxVal.y = val; - } - - val = quad->z; - if (val < mMinVal.z) { - mMinVal.z = val; - } - - val = quad->z; - if (val > mMaxVal.z) { - mMaxVal.z = val; - } - } -} - -/* 80870D58-80870D88 000218 0030+00 1/1 0/0 0/0 .text entryModel__16dMirror_packet_cFP8J3DModel */ -int dMirror_packet_c::entryModel(J3DModel* i_model) { - if (mModelCount >= 0x40) { - return 0; - } - - mModels[mModelCount++] = i_model; - return 1; -} - -/* 80870D88-80871268 000248 04E0+00 1/1 0/0 0/0 .text mirrorZdraw__16dMirror_packet_cFPfPfffffff - */ -void dMirror_packet_c::mirrorZdraw(f32* param_0, f32* param_1, f32 param_2, f32 param_3, - f32 param_4, f32 param_5, f32 param_6, f32 param_7) { - GXSetNumChans(1); - GXSetChanCtrl(GX_COLOR0, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_NONE, GX_AF_NONE); - GXSetNumTexGens(0); - GXSetNumTevStages(1); - GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0); - GXColor color = {0, 0, 0, 0xFF}; - GXSetTevColor(GX_TEVREG0, color); - GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_C0); - GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); - GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_A0); - GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); - GXSetZCompLoc(GX_TRUE); - GXSetBlendMode(GX_BM_BLEND, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_OR); - GXSetAlphaCompare(GX_GREATER, 0, GX_AOP_OR, GX_GREATER, 0); - GXSetFog(GX_FOG_NONE, 0.0f, 0.0f, 0.0f, 0.0f, g_clearColor); - GXSetFogRangeAdj(0, 0, NULL); - GXSetCullMode(GX_CULL_BACK); - GXSetNumIndStages(0); - GXClearVtxDesc(); - GXSetVtxDesc(GX_VA_POS, GX_DIRECT); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); - GXSetZMode(GX_ENABLE, GX_GEQUAL, GX_ENABLE); - GXLoadPosMtxImm(j3dSys.getViewMtx(), 0); - GXSetCurrentMtx(0); - - GXBegin(GX_QUADS, GX_VTXFMT0, 4); - for (int i = 0; i < 4; i++) { - GXPosition3f32(mQuad[i].x, mQuad[i].y, mQuad[i].z); - } - GXEnd(); - - if (mViewScale.y > 0.0f) { - GXSetZMode(GX_ENABLE, GX_ALWAYS, GX_ENABLE); - GXSetColorUpdate(GX_DISABLE); - GXSetAlphaUpdate(GX_DISABLE); - Mtx44 mtx; - C_MTXOrtho(mtx, param_1[1], param_1[1] + param_1[3], param_1[0], param_1[0] + param_1[2], 0, - 100.0f); - GXSetProjection(mtx, GX_ORTHOGRAPHIC); - GXLoadPosMtxImm(mDoMtx_getIdentity(), 0); - - param_3 -= 1.0f; - param_4 -= 1.0f; - param_5 += 1.0f; - param_6 += 1.0f; - - GXBegin(GX_QUADS, GX_VTXFMT0, 4); - GXPosition3f32(param_3, param_4, -100.0f); - GXPosition3f32(param_5, param_4, -100.0f); - GXPosition3f32(param_5, param_6, -100.0f); - GXPosition3f32(param_3, param_6, -100.0f); - GXEnd(); - - GXSetProjectionv(param_0); - GXSetZMode(1, GX_ALWAYS, 1); - GXLoadPosMtxImm(j3dSys.getViewMtx(), 0); - - if (GXGetTexObjWidth(&mTexObj)) { - GXLoadTexObj(&mTexObj, GX_TEXMAP0); - GXSetTexCoordGen(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 60); - GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL); - GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_TEXA); - GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, - GX_TEVPREV); - GXSetNumChans(0); - GXSetNumTexGens(1); - GXSetZCompLoc(GX_FALSE); - GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT); - GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_POS_XYZ, GX_S8, 0); - GXBegin(GX_QUADS, GX_VTXFMT0, 4); - - static s8 const l_texCoord[4][2] = { - {0x00, 0x00}, - {0x01, 0x00}, - {0x01, 0x01}, - {0x00, 0x01}, - }; - - cXyz* quad = mQuad; - const s8* texPtr = &l_texCoord[0][0]; - for (int i = 0; i < 4; quad++, texPtr += 2, i++) { - GXPosition3f32(quad->x, quad->y, quad->z); - GXTexCoord2s8(texPtr[0], texPtr[1]); - } - } else { - GXBegin(GX_QUADS, GX_VTXFMT0, 4); - cXyz* quad = mQuad; - for (int i = 0; i < 4; quad++, i++) { - GXPosition3f32(quad->x, quad->y, quad->z); - } - } - - GXEnd(); - } else { - GXSetProjectionv(param_0); - } - - GXSetColorUpdate(GX_ENABLE); - GXSetAlphaUpdate(GX_DISABLE); -} - -/* 80871268-8087146C 000728 0204+00 1/1 0/0 0/0 .text - * modelDraw__16dMirror_packet_cFP8J3DModelPA4_f */ -void dMirror_packet_c::modelDraw(J3DModel* i_model, Mtx param_1) { - Mtx& model_mtx = i_model->getBaseTRMtx(); - cXyz sp28(model_mtx[0][3], model_mtx[1][3], model_mtx[2][3]); - - cXyz sp1C; - cMtx_multVec(param_1, &sp28, &sp1C); - - cXyz sp10; - cMtx_multVec(j3dSys.getViewMtx(), &sp28, &sp10); - - if (mViewScale.y > 0.0f && sp1C.z > sp10.z) { - return; - } - - dScnKy_env_light_c* kankyo = dKy_getEnvlight(); - JUT_ASSERT(kankyo != 0); - - GXColor color = {0}; - color.r = kankyo->mTerrainAmbienceBG[0].r; - color.g = kankyo->mTerrainAmbienceBG[0].g; - color.b = kankyo->mTerrainAmbienceBG[0].b; - color.a = kankyo->mTerrainAmbienceBG[0].a; - - J3DModelData* modelData = i_model->getModelData(); - u16 materialNum = modelData->getMaterialNum(); - for (u16 i = 0; i < materialNum; i++) { - J3DMatPacket* matPacket = i_model->getMatPacket(i); - J3DShapePacket* shapePacket = matPacket->getShapePacket(); - J3DShape* shape = shapePacket->getShape(); - - if (!shape->checkFlag(1)) { - J3DMaterial* material = modelData->getMaterialNodePointer(i); - u32 texGenNum = material->getTexGenBlock()->getTexGenNum(); - u8 colorChanNum = material->getColorBlock()->getColorChanNum(); - u8 tevStageNum = material->getTevBlock()->getTevStageNum(); - u8 indTexStageNum = material->getIndBlock()->getIndTexStageNum(); - - material->load(); - matPacket->callDL(); - shape->loadPreDrawSetting(); - if (shapePacket->getDisplayListObj() != NULL) { - shapePacket->getDisplayListObj()->callDL(); - } - - GFSetGenMode2(texGenNum, (GXChannelID)colorChanNum, (GXTevStageID)tevStageNum, - indTexStageNum, GX_CULL_FRONT); - GFSetChanAmbColor(GX_COLOR0, color); - shapePacket->setBaseMtxPtr((Mtx*)param_1); - shapePacket->drawFast(); - shapePacket->setBaseMtxPtr((Mtx*)j3dSys.getViewMtx()); - } - shape->resetVcdVatCache(); - } -} - -/* 8087146C-80871D84 00092C 0918+00 1/1 0/0 0/1 .text mainDraw__16dMirror_packet_cFv */ -void dMirror_packet_c::mainDraw() { - j3dSys.reinitGX(); - - cXyz sp19C[5]; - - Mtx sp16C; - - f32 sp150[7]; - GXGetProjectionv(sp150); - - f32 sp138[6]; - GXGetViewportv(sp138); - - u32 scissor[4]; - GXGetScissor(&scissor[0], &scissor[1], &scissor[2], &scissor[3]); - - f32 var_f31 = FLT_MAX; - f32 var_f30 = FLT_MAX; - f32 temp_f0 = -FLT_MAX; - f32 var_f29 = temp_f0; - f32 var_f28 = temp_f0; - f32 var_f27 = temp_f0; - - f32 temp_f26 = scissor[0]; - f32 temp_f25 = temp_f26 + scissor[2]; - f32 temp_f24 = scissor[1]; - f32 temp_f23 = temp_f24 + scissor[3]; - - int prjPosNum = 4; - - view_class* view = dComIfGd_getView(); - f32 temp_f22 = -view->mNear; - cXyz* var_r21 = mQuad; - cXyz* var_r22 = sp19C; - int var_r23 = 0; - int var_r28 = 0; - for (int i = 0; i < 4; i++) { - cMtx_multVec(view->mViewMtx, var_r21, var_r22); - if (var_r22->z >= temp_f22) { - var_r23++; - } else { - var_r28 = i; - } - - var_r21++; - var_r22++; - } - - if (var_r23 < 4) { - if (var_r23 != 0) { - int var_r27 = -1; - - for (int i = 0; i < 4; i++) { - int temp_r5 = (var_r28 + 1) % 4; - if (var_r27 < 0) { - if (sp19C[temp_r5].z >= temp_f22) { - var_r27 = temp_r5; - } - } else if (sp19C[temp_r5].z < temp_f22) { - int temp_r29 = (var_r27 + 3) % 4; - cXyz sp11C = sp19C[var_r27] - sp19C[temp_r29]; - f32 temp_f1 = sp11C.z; - temp_f1 = (temp_f22 - sp19C[temp_r29].z) / temp_f1; - sp11C *= temp_f1; - - JUT_ASSERT(0 <= prjPosNum && prjPosNum < (4 + 1)); - - sp19C[4] = sp19C[temp_r29] + sp11C; - - prjPosNum++; - - sp11C = sp19C[var_r28] - sp19C[temp_r5]; - sp11C *= (temp_f22 - sp19C[temp_r5].z) / sp11C.z; - sp19C[var_r28] = sp19C[temp_r5] + sp11C; - - for (int j = var_r27; j != var_r28; j = (j + 1) % 4) { - sp19C[j] = sp19C[var_r28]; - temp_r29++; - } - break; - } - - var_r28 = temp_r5; - } - } - - f32 aspect = view->mAspect; - f32 temp_f0_2 = i_tanf(MTXDegToRad(view->mFovy * 0.5f)); - view_port_class* view_port = dComIfGd_getViewport(); - - f32 var_f3; - f32 var_f4; - f32 var_f5; - f32 var_f6; - if (view_port->mXOrig != 0.0f) { - var_f3 = (((view_port->mXOrig * 2.0f) + view_port->mWidth) * 0.5f) - (608.0f / 2); - var_f5 = 608.0f; - } else { - var_f3 = view_port->mXOrig; - var_f5 = view_port->mWidth; - } - - if (view_port->mYOrig != 0.0f) { - var_f4 = (((view_port->mYOrig * 2.0f) + view_port->mHeight) * 0.5f) - (448.0f / 2); - var_f6 = 448.0f; - } else { - var_f4 = view_port->mYOrig; - var_f6 = view_port->mHeight; - } - - Vec* var_r3 = sp19C; - for (int i = 0; i < prjPosNum; i++) { - var_r3->y = (var_r3->y / (var_r3->z * temp_f0_2)); - var_r3->x = (var_r3->x / (aspect * (-var_r3->z * temp_f0_2))); - var_r3->x = (var_f3 + ((1.0f + var_r3->x) * (var_f5 * 0.5f))); - var_r3->y = (var_f4 + ((1.0f + var_r3->y) * (var_f6 * 0.5f))); - - var_r3->x = cLib_minMaxLimit(var_r3->x, temp_f26, temp_f25); - var_r3->y = cLib_minMaxLimit(var_r3->y, temp_f24, temp_f23); - - if (var_r3->x < var_f31) { - var_f31 = var_r3->x; - } - - if (var_r3->x > var_f29) { - var_f29 = var_r3->x; - } - - if (var_r3->y < var_f30) { - var_f30 = var_r3->y; - } - - if (var_r3->y > var_f28) { - var_f28 = var_r3->y; - } - - if (var_r3->z > var_f27) { - var_f27 = var_r3->z; - } - - var_r3++; - } - - if (fabsf(var_f29 - var_f31) < 8.0f || fabsf(var_f28 - var_f30) < 8.0f) { - return; - } - - GXSetScissor((u32)var_f31, (u32)var_f30, (u32)(var_f29 - var_f31), - (u32)(var_f28 - var_f30)); - - cXyz sp110 = mQuad[1] - mQuad[0]; - cXyz sp104 = mQuad[2] - mQuad[1]; - cXyz spF8 = sp110.outprod(sp104); - spF8.normalizeZP(); - - f32 temp_f7 = (spF8.x * mQuad[0].x) + (spF8.y * mQuad[0].y) + (spF8.z * mQuad[0].z); - f32 temp_f22_4 = - ((spF8.z * view->mLookat.mCenter.z) + - ((spF8.x * view->mLookat.mCenter.x) + (spF8.y * view->mLookat.mCenter.y))) - - temp_f7; - - cXyz spEC = - view->mLookat.mEye - - (spF8 * (2.0f * (((spF8.z * view->mLookat.mEye.z) + - ((spF8.x * view->mLookat.mEye.x) + (spF8.y * view->mLookat.mEye.y))) - - temp_f7))); - cXyz spE0 = view->mLookat.mCenter - (spF8 * (2.0f * temp_f22_4)); - - cXyz spD4(0.0f, 1.0f, 0.0f); - if (mViewScale.y > 0.0f) { - sp110 = spEC - view->mLookat.mEye; - sp104 = sp110.outprod(view->mLookat.mUp); - spD4 = sp110.outprod(sp104); - spD4.normalizeZP(); - spD4 *= cXyz(-1.0f, -1.0f, -1.0f); - } - - mDoMtx_lookAt(sp16C, &spEC, &spE0, &spD4, view->mBank); - mDoMtx_stack_c::scaleS(mViewScale); - mDoMtx_stack_c::concat(sp16C); - J3DShape::resetVcdVatCache(); - - for (int i = 0; i < mModelCount; i++) { - modelDraw(mModels[i], mDoMtx_stack_c::get()); - } - - j3dSys.reinitGX(); - GXSetScissor(scissor[0], scissor[1], scissor[2], scissor[3]); - mirrorZdraw(sp150, sp138, view->mFar, var_f31, var_f30, var_f29, var_f28, var_f27); - } -} - -/* 80871D84-80871E24 001244 00A0+00 1/0 0/0 0/0 .text draw__16dMirror_packet_cFv */ -void dMirror_packet_c::draw() { - mDoLib_clipper::changeFar(dComIfGd_getView()->mFar); - if (!mDoLib_clipper::clip(j3dSys.getViewMtx(), &mMaxVal, &mMinVal)) { - mainDraw(); - } - - mDoLib_clipper::resetFar(); - reset(); -} - -/* 80871E24-80871E84 0012E4 0060+00 1/1 0/0 0/0 .text __ct__10daMirror_cFv */ -daMirror_c::daMirror_c() { - m_entryModel = &daMirror_c::entryModel; -} - -/* 80871E84-80871F08 001344 0084+00 1/0 0/0 0/0 .text __dt__16dMirror_packet_cFv */ -dMirror_packet_c::~dMirror_packet_c() {} - -/* 80871F08-80871F78 0013C8 0070+00 1/1 0/0 0/0 .text createHeap__10daMirror_cFv */ -BOOL daMirror_c::createHeap() { - J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, 4); - mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); - if (mpModel == NULL) { - return false; - } - - return true; -} - -/* 80871F78-80872018 001438 00A0+00 1/1 0/0 0/0 .text setModelMtx__10daMirror_cFv */ -void daMirror_c::setModelMtx() { - mpModel->setBaseScale(scale); - - mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); - mDoMtx_stack_c::YrotM(shape_angle.y); - mDoMtx_stack_c::XrotM(shape_angle.x); - mDoMtx_stack_c::ZrotM(0x2000); - mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); -} - -/* 80872018-8087206C 0014D8 0054+00 1/0 0/0 0/0 .text daMirror_create__FP10daMirror_c */ -static int daMirror_create(daMirror_c* i_this) { - fopAcM_SetupActor(i_this, daMirror_c); - return i_this->daMirror_c::create(); -} - -/* 8087206C-80872344 00152C 02D8+00 2/2 0/0 0/0 .text create__10daMirror_cFv */ -int daMirror_c::create() { - if (getSw() != 0xFF && !fopAcM_isSwitch(this, getSw())) { - return cPhs_COMPLEATE_e; - } - - if (m_myObj != NULL) { - return cPhs_INIT_e; - } - - int type = getType(); - if (type == 2) { - int phase_state = dComIfG_resLoad(this, l_arcName); - switch (phase_state) { - default: - return phase_state; - case cPhs_COMPLEATE_e: - if (!fopAcM_entrySolidHeap(this, daMirror_c_createHeap, 0x1540)) { - return cPhs_ERROR_e; - } - break; - } - - setModelMtx(); - mDoLib_setResTimgObj((ResTIMG*)dComIfG_getObjectRes(l_arcName, 7), &mPacket.getTexObj(), 0, - NULL); - Vec src[4] = { - {-72.5f, 145.0f, 0.0f}, - {72.5f, 145.0f, 0.0f}, - {72.5f, 0.0f, 0.0f}, - {-72.5f, 0.0f, 0.0f}, - }; - mDoMtx_stack_c::scaleS(scale); - mDoMtx_stack_c::revConcat(mpModel->getBaseTRMtx()); - cMtx_multVecArray(mDoMtx_stack_c::get(), src, mPacket.getQuad(), 4); - mPacket.getViewScale().set(-1.0f, 1.0f, 1.0f); - } else { - if (type == 1) { - scale *= 10.0f; - mPacket.getViewScale().set(1.0, -1.0, 1.0); - } else { - if (type == 3) { - int phase_state = dComIfG_resLoad(this, l_arcName2); - switch (phase_state) { - default: - return phase_state; - case cPhs_COMPLEATE_e: - mDoLib_setResTimgObj((ResTIMG*)dComIfG_getObjectRes(l_arcName2, 0x25), - &mPacket.getTexObj(), 0, NULL); - break; - } - } - - mPacket.getViewScale().set(-1.0f, 1.0f, 1.0f); - } - - mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); - mDoMtx_stack_c::YrotM(shape_angle.y); - mDoMtx_stack_c::XrotM(shape_angle.x); - mDoMtx_stack_c::scaleM(scale.x, scale.y, scale.z); - static Vec const l_mirrorQuad[4] = { - {-50.0f, 100.0f, 0.0f}, - {50.0f, 100.0f, 0.0f}, - {50.0f, 0.0f, 0.0f}, - {-50.0f, 0.0f, 0.0f}, - }; - mDoMtx_stack_c::multVecArray(l_mirrorQuad, mPacket.getQuad(), 4); - } - - m_myObj = this; - mPacket.calcMinMax(); - static const Vec l_mirrorLook = {0.0f, 50.0f, 0.0f}; - mDoMtx_stack_c::multVec(&l_mirrorLook, &eyePos); - return cPhs_COMPLEATE_e; -} - -int daMirror_c::Delete() { - int type = getType(); - if (type == 2) { - dComIfG_resDelete(this, l_arcName); - } else if (type == 3) { - dComIfG_resDelete(this, l_arcName2); - } - - m_myObj = NULL; - return 1; -} - -/* 80872344-808723C4 001804 0080+00 1/0 0/0 0/0 .text daMirror_Delete__FP10daMirror_c */ -static int daMirror_Delete(daMirror_c* i_this) { - return i_this->Delete(); -} - -/* 808723C4-808723E4 001884 0020+00 1/0 0/0 0/0 .text daMirror_execute__FP10daMirror_c */ -static int daMirror_execute(daMirror_c* i_this) { - return i_this->execute(); -} - -/* 808723E4-808724C0 0018A4 00DC+00 1/1 0/0 0/0 .text execute__10daMirror_cFv */ -int daMirror_c::execute() { - if (this != m_myObj) { - if (m_myObj == NULL) { - if (create() == cPhs_ERROR_e) { - fopAcM_delete(this); - } - } - - return 1; - } - - daPy_py_c* player = daPy_getLinkPlayerActorClass(); - JUT_ASSERT(player != 0); - - if (mPacket.getViewScale().y > 0.0f && player->getKandelaarFlamePos() && - fopAcM_searchActorDistance2(this, player) < 40000.0f) - { - if (fopAcM_seenActorAngleY(this, player) < 0x4000) { - daPy_py_c::setLookPos(&eyePos); - } - } - - return 1; -} - -int daMirror_c::draw() { - if (this != daMirror_c::m_myObj) { - return 1; - } - - if (mpModel != NULL) { - g_env_light.settingTevStruct(0x10, ¤t.pos, &tevStr); - g_env_light.setLightTevColorType(mpModel, &tevStr); - mDoExt_modelUpdateDL(mpModel); - } - - dComIfGd_getOpaListBG()->entryImm(&mPacket, 0); - return 1; -} - -/* 808724C0-80872560 001980 00A0+00 1/0 0/0 0/0 .text daMirror_draw__FP10daMirror_c */ -static int daMirror_draw(daMirror_c* i_this) { - return i_this->draw(); -} - -/* 80872560-80872584 001A20 0024+00 1/0 0/0 0/0 .text entryModel__10daMirror_cFP8J3DModel - */ -int daMirror_c::entryModel(J3DModel* i_model) { - return mPacket.entryModel(i_model); -} - -/* 80872674-80872694 -00001 0020+00 1/0 0/0 0/0 .data daMirror_METHODS */ -static actor_method_class daMirror_METHODS = { - (process_method_func)daMirror_create, (process_method_func)daMirror_Delete, - (process_method_func)daMirror_execute, (process_method_func)NULL, - (process_method_func)daMirror_draw, -}; - -/* 80872694-808726C4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_MIRROR */ -extern actor_process_profile_definition g_profile_MIRROR = { - fpcLy_CURRENT_e, - 7, - fpcPi_CURRENT_e, - PROC_MIRROR, - &g_fpcLf_Method.mBase, - sizeof(daMirror_c), - 0, - 0, - &g_fopAc_Method.base, - 757, - &daMirror_METHODS, - 0x60000, - fopAc_UNK_GROUP_5_e, - fopAc_CULLBOX_0_e, -}; +/** + * d_a_mirror.cpp + * Mirror of Twilight + */ + +#include "rel/d/a/d_a_mirror/d_a_mirror.h" +#include "JSystem/J3DGraphBase/J3DDrawBuffer.h" +#include "JSystem/J3DGraphBase/J3DMaterial.h" +#include "d/a/d_a_player.h" +#include "d/com/d_com_inf_game.h" +#include "dolphin/gf/GFGeometry.h" +#include "dolphin/gf/GFLight.h" +#include "m_Do/m_Do_lib.h" + +/* 80870BB8-80870BD8 000078 0020+00 1/1 0/0 0/0 .text daMirror_c_createHeap__FP10fopAc_ac_c */ +static BOOL daMirror_c_createHeap(fopAc_ac_c* i_this) { + return ((daMirror_c*)i_this)->createHeap(); +} + +/* 80872660-80872664 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ +static char* l_arcName = "Mirror"; + +/* 80872664-80872668 -00001 0004+00 2/2 0/0 0/0 .data l_arcName2 */ +static char* l_arcName2 = "MR-Table"; + +/* 80870BD8-80870C54 000098 007C+00 1/1 0/0 0/0 .text __ct__16dMirror_packet_cFv */ +dMirror_packet_c::dMirror_packet_c() { + reset(); +} + +/* 80870C94-80870CA0 000154 000C+00 2/2 0/0 0/0 .text reset__16dMirror_packet_cFv */ +void dMirror_packet_c::reset() { + mModelCount = 0; +} + +/* 80870CA0-80870D58 000160 00B8+00 1/1 0/0 0/0 .text calcMinMax__16dMirror_packet_cFv */ +void dMirror_packet_c::calcMinMax() { + mMinVal.set(FLT_MAX, FLT_MAX, FLT_MAX); + mMaxVal.set(-FLT_MAX, -FLT_MAX, -FLT_MAX); + + cXyz* quad = mQuad; + for (int i = 0; i < 4; i++, quad++) { + f32 val = quad->x; + if (val < mMinVal.x) { + mMinVal.x = val; + } + + val = quad->x; + if (val > mMaxVal.x) { + mMaxVal.x = val; + } + + val = quad->y; + if (val < mMinVal.y) { + mMinVal.y = val; + } + + val = quad->y; + if (val > mMaxVal.y) { + mMaxVal.y = val; + } + + val = quad->z; + if (val < mMinVal.z) { + mMinVal.z = val; + } + + val = quad->z; + if (val > mMaxVal.z) { + mMaxVal.z = val; + } + } +} + +/* 80870D58-80870D88 000218 0030+00 1/1 0/0 0/0 .text entryModel__16dMirror_packet_cFP8J3DModel */ +int dMirror_packet_c::entryModel(J3DModel* i_model) { + if (mModelCount >= 0x40) { + return 0; + } + + mModels[mModelCount++] = i_model; + return 1; +} + +/* 80870D88-80871268 000248 04E0+00 1/1 0/0 0/0 .text mirrorZdraw__16dMirror_packet_cFPfPfffffff + */ +void dMirror_packet_c::mirrorZdraw(f32* param_0, f32* param_1, f32 param_2, f32 param_3, + f32 param_4, f32 param_5, f32 param_6, f32 param_7) { + GXSetNumChans(1); + GXSetChanCtrl(GX_COLOR0, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_NONE, GX_AF_NONE); + GXSetNumTexGens(0); + GXSetNumTevStages(1); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0); + GXColor color = {0, 0, 0, 0xFF}; + GXSetTevColor(GX_TEVREG0, color); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_C0); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_A0); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetZCompLoc(GX_TRUE); + GXSetBlendMode(GX_BM_BLEND, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_OR); + GXSetAlphaCompare(GX_GREATER, 0, GX_AOP_OR, GX_GREATER, 0); + GXSetFog(GX_FOG_NONE, 0.0f, 0.0f, 0.0f, 0.0f, g_clearColor); + GXSetFogRangeAdj(0, 0, NULL); + GXSetCullMode(GX_CULL_BACK); + GXSetNumIndStages(0); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_POS_XYZ, GX_F32, 0); + GXSetZMode(GX_ENABLE, GX_GEQUAL, GX_ENABLE); + GXLoadPosMtxImm(j3dSys.getViewMtx(), 0); + GXSetCurrentMtx(0); + + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + for (int i = 0; i < 4; i++) { + GXPosition3f32(mQuad[i].x, mQuad[i].y, mQuad[i].z); + } + GXEnd(); + + if (mViewScale.y > 0.0f) { + GXSetZMode(GX_ENABLE, GX_ALWAYS, GX_ENABLE); + GXSetColorUpdate(GX_DISABLE); + GXSetAlphaUpdate(GX_DISABLE); + Mtx44 mtx; + C_MTXOrtho(mtx, param_1[1], param_1[1] + param_1[3], param_1[0], param_1[0] + param_1[2], 0, + 100.0f); + GXSetProjection(mtx, GX_ORTHOGRAPHIC); + GXLoadPosMtxImm(mDoMtx_getIdentity(), 0); + + param_3 -= 1.0f; + param_4 -= 1.0f; + param_5 += 1.0f; + param_6 += 1.0f; + + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + GXPosition3f32(param_3, param_4, -100.0f); + GXPosition3f32(param_5, param_4, -100.0f); + GXPosition3f32(param_5, param_6, -100.0f); + GXPosition3f32(param_3, param_6, -100.0f); + GXEnd(); + + GXSetProjectionv(param_0); + GXSetZMode(1, GX_ALWAYS, 1); + GXLoadPosMtxImm(j3dSys.getViewMtx(), 0); + + if (GXGetTexObjWidth(&mTexObj)) { + GXLoadTexObj(&mTexObj, GX_TEXMAP0); + GXSetTexCoordGen(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 60); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_TEXA); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, + GX_TEVPREV); + GXSetNumChans(0); + GXSetNumTexGens(1); + GXSetZCompLoc(GX_FALSE); + GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_POS_XYZ, GX_S8, 0); + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + + static s8 const l_texCoord[4][2] = { + {0x00, 0x00}, + {0x01, 0x00}, + {0x01, 0x01}, + {0x00, 0x01}, + }; + + cXyz* quad = mQuad; + const s8* texPtr = &l_texCoord[0][0]; + for (int i = 0; i < 4; quad++, texPtr += 2, i++) { + GXPosition3f32(quad->x, quad->y, quad->z); + GXTexCoord2s8(texPtr[0], texPtr[1]); + } + } else { + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + cXyz* quad = mQuad; + for (int i = 0; i < 4; quad++, i++) { + GXPosition3f32(quad->x, quad->y, quad->z); + } + } + + GXEnd(); + } else { + GXSetProjectionv(param_0); + } + + GXSetColorUpdate(GX_ENABLE); + GXSetAlphaUpdate(GX_DISABLE); +} + +/* 80871268-8087146C 000728 0204+00 1/1 0/0 0/0 .text + * modelDraw__16dMirror_packet_cFP8J3DModelPA4_f */ +void dMirror_packet_c::modelDraw(J3DModel* i_model, Mtx param_1) { + Mtx& model_mtx = i_model->getBaseTRMtx(); + cXyz sp28(model_mtx[0][3], model_mtx[1][3], model_mtx[2][3]); + + cXyz sp1C; + cMtx_multVec(param_1, &sp28, &sp1C); + + cXyz sp10; + cMtx_multVec(j3dSys.getViewMtx(), &sp28, &sp10); + + if (mViewScale.y > 0.0f && sp1C.z > sp10.z) { + return; + } + + dScnKy_env_light_c* kankyo = dKy_getEnvlight(); + JUT_ASSERT(kankyo != 0); + + GXColor color = {0}; + color.r = kankyo->mTerrainAmbienceBG[0].r; + color.g = kankyo->mTerrainAmbienceBG[0].g; + color.b = kankyo->mTerrainAmbienceBG[0].b; + color.a = kankyo->mTerrainAmbienceBG[0].a; + + J3DModelData* modelData = i_model->getModelData(); + u16 materialNum = modelData->getMaterialNum(); + for (u16 i = 0; i < materialNum; i++) { + J3DMatPacket* matPacket = i_model->getMatPacket(i); + J3DShapePacket* shapePacket = matPacket->getShapePacket(); + J3DShape* shape = shapePacket->getShape(); + + if (!shape->checkFlag(1)) { + J3DMaterial* material = modelData->getMaterialNodePointer(i); + u32 texGenNum = material->getTexGenBlock()->getTexGenNum(); + u8 colorChanNum = material->getColorBlock()->getColorChanNum(); + u8 tevStageNum = material->getTevBlock()->getTevStageNum(); + u8 indTexStageNum = material->getIndBlock()->getIndTexStageNum(); + + material->load(); + matPacket->callDL(); + shape->loadPreDrawSetting(); + if (shapePacket->getDisplayListObj() != NULL) { + shapePacket->getDisplayListObj()->callDL(); + } + + GFSetGenMode2(texGenNum, (GXChannelID)colorChanNum, (GXTevStageID)tevStageNum, + indTexStageNum, GX_CULL_FRONT); + GFSetChanAmbColor(GX_COLOR0, color); + shapePacket->setBaseMtxPtr((Mtx*)param_1); + shapePacket->drawFast(); + shapePacket->setBaseMtxPtr((Mtx*)j3dSys.getViewMtx()); + } + shape->resetVcdVatCache(); + } +} + +/* 8087146C-80871D84 00092C 0918+00 1/1 0/0 0/1 .text mainDraw__16dMirror_packet_cFv */ +void dMirror_packet_c::mainDraw() { + j3dSys.reinitGX(); + + cXyz sp19C[5]; + + Mtx sp16C; + + f32 sp150[7]; + GXGetProjectionv(sp150); + + f32 sp138[6]; + GXGetViewportv(sp138); + + u32 scissor[4]; + GXGetScissor(&scissor[0], &scissor[1], &scissor[2], &scissor[3]); + + f32 var_f31 = FLT_MAX; + f32 var_f30 = FLT_MAX; + f32 temp_f0 = -FLT_MAX; + f32 var_f29 = temp_f0; + f32 var_f28 = temp_f0; + f32 var_f27 = temp_f0; + + f32 temp_f26 = scissor[0]; + f32 temp_f25 = temp_f26 + scissor[2]; + f32 temp_f24 = scissor[1]; + f32 temp_f23 = temp_f24 + scissor[3]; + + int prjPosNum = 4; + + view_class* view = dComIfGd_getView(); + f32 temp_f22 = -view->mNear; + cXyz* var_r21 = mQuad; + cXyz* var_r22 = sp19C; + int var_r23 = 0; + int var_r28 = 0; + for (int i = 0; i < 4; i++) { + cMtx_multVec(view->mViewMtx, var_r21, var_r22); + if (var_r22->z >= temp_f22) { + var_r23++; + } else { + var_r28 = i; + } + + var_r21++; + var_r22++; + } + + if (var_r23 < 4) { + if (var_r23 != 0) { + int var_r27 = -1; + + for (int i = 0; i < 4; i++) { + int temp_r5 = (var_r28 + 1) % 4; + if (var_r27 < 0) { + if (sp19C[temp_r5].z >= temp_f22) { + var_r27 = temp_r5; + } + } else if (sp19C[temp_r5].z < temp_f22) { + int temp_r29 = (var_r27 + 3) % 4; + cXyz sp11C = sp19C[var_r27] - sp19C[temp_r29]; + f32 temp_f1 = sp11C.z; + temp_f1 = (temp_f22 - sp19C[temp_r29].z) / temp_f1; + sp11C *= temp_f1; + + JUT_ASSERT(0 <= prjPosNum && prjPosNum < (4 + 1)); + + sp19C[4] = sp19C[temp_r29] + sp11C; + + prjPosNum++; + + sp11C = sp19C[var_r28] - sp19C[temp_r5]; + sp11C *= (temp_f22 - sp19C[temp_r5].z) / sp11C.z; + sp19C[var_r28] = sp19C[temp_r5] + sp11C; + + for (int j = var_r27; j != var_r28; j = (j + 1) % 4) { + sp19C[j] = sp19C[var_r28]; + temp_r29++; + } + break; + } + + var_r28 = temp_r5; + } + } + + f32 aspect = view->mAspect; + f32 temp_f0_2 = i_tanf(MTXDegToRad(view->mFovy * 0.5f)); + view_port_class* view_port = dComIfGd_getViewport(); + + f32 var_f3; + f32 var_f4; + f32 var_f5; + f32 var_f6; + if (view_port->mXOrig != 0.0f) { + var_f3 = (((view_port->mXOrig * 2.0f) + view_port->mWidth) * 0.5f) - (608.0f / 2); + var_f5 = 608.0f; + } else { + var_f3 = view_port->mXOrig; + var_f5 = view_port->mWidth; + } + + if (view_port->mYOrig != 0.0f) { + var_f4 = (((view_port->mYOrig * 2.0f) + view_port->mHeight) * 0.5f) - (448.0f / 2); + var_f6 = 448.0f; + } else { + var_f4 = view_port->mYOrig; + var_f6 = view_port->mHeight; + } + + Vec* var_r3 = sp19C; + for (int i = 0; i < prjPosNum; i++) { + var_r3->y = (var_r3->y / (var_r3->z * temp_f0_2)); + var_r3->x = (var_r3->x / (aspect * (-var_r3->z * temp_f0_2))); + var_r3->x = (var_f3 + ((1.0f + var_r3->x) * (var_f5 * 0.5f))); + var_r3->y = (var_f4 + ((1.0f + var_r3->y) * (var_f6 * 0.5f))); + + var_r3->x = cLib_minMaxLimit(var_r3->x, temp_f26, temp_f25); + var_r3->y = cLib_minMaxLimit(var_r3->y, temp_f24, temp_f23); + + if (var_r3->x < var_f31) { + var_f31 = var_r3->x; + } + + if (var_r3->x > var_f29) { + var_f29 = var_r3->x; + } + + if (var_r3->y < var_f30) { + var_f30 = var_r3->y; + } + + if (var_r3->y > var_f28) { + var_f28 = var_r3->y; + } + + if (var_r3->z > var_f27) { + var_f27 = var_r3->z; + } + + var_r3++; + } + + if (fabsf(var_f29 - var_f31) < 8.0f || fabsf(var_f28 - var_f30) < 8.0f) { + return; + } + + GXSetScissor((u32)var_f31, (u32)var_f30, (u32)(var_f29 - var_f31), + (u32)(var_f28 - var_f30)); + + cXyz sp110 = mQuad[1] - mQuad[0]; + cXyz sp104 = mQuad[2] - mQuad[1]; + cXyz spF8 = sp110.outprod(sp104); + spF8.normalizeZP(); + + f32 temp_f7 = (spF8.x * mQuad[0].x) + (spF8.y * mQuad[0].y) + (spF8.z * mQuad[0].z); + f32 temp_f22_4 = + ((spF8.z * view->mLookat.mCenter.z) + + ((spF8.x * view->mLookat.mCenter.x) + (spF8.y * view->mLookat.mCenter.y))) - + temp_f7; + + cXyz spEC = + view->mLookat.mEye - + (spF8 * (2.0f * (((spF8.z * view->mLookat.mEye.z) + + ((spF8.x * view->mLookat.mEye.x) + (spF8.y * view->mLookat.mEye.y))) - + temp_f7))); + cXyz spE0 = view->mLookat.mCenter - (spF8 * (2.0f * temp_f22_4)); + + cXyz spD4(0.0f, 1.0f, 0.0f); + if (mViewScale.y > 0.0f) { + sp110 = spEC - view->mLookat.mEye; + sp104 = sp110.outprod(view->mLookat.mUp); + spD4 = sp110.outprod(sp104); + spD4.normalizeZP(); + spD4 *= cXyz(-1.0f, -1.0f, -1.0f); + } + + mDoMtx_lookAt(sp16C, &spEC, &spE0, &spD4, view->mBank); + mDoMtx_stack_c::scaleS(mViewScale); + mDoMtx_stack_c::concat(sp16C); + J3DShape::resetVcdVatCache(); + + for (int i = 0; i < mModelCount; i++) { + modelDraw(mModels[i], mDoMtx_stack_c::get()); + } + + j3dSys.reinitGX(); + GXSetScissor(scissor[0], scissor[1], scissor[2], scissor[3]); + mirrorZdraw(sp150, sp138, view->mFar, var_f31, var_f30, var_f29, var_f28, var_f27); + } +} + +/* 80871D84-80871E24 001244 00A0+00 1/0 0/0 0/0 .text draw__16dMirror_packet_cFv */ +void dMirror_packet_c::draw() { + mDoLib_clipper::changeFar(dComIfGd_getView()->mFar); + if (!mDoLib_clipper::clip(j3dSys.getViewMtx(), &mMaxVal, &mMinVal)) { + mainDraw(); + } + + mDoLib_clipper::resetFar(); + reset(); +} + +/* 80871E24-80871E84 0012E4 0060+00 1/1 0/0 0/0 .text __ct__10daMirror_cFv */ +daMirror_c::daMirror_c() { + m_entryModel = &daMirror_c::entryModel; +} + +/* 80871E84-80871F08 001344 0084+00 1/0 0/0 0/0 .text __dt__16dMirror_packet_cFv */ +dMirror_packet_c::~dMirror_packet_c() {} + +/* 80871F08-80871F78 0013C8 0070+00 1/1 0/0 0/0 .text createHeap__10daMirror_cFv */ +BOOL daMirror_c::createHeap() { + J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, 4); + mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); + if (mpModel == NULL) { + return false; + } + + return true; +} + +/* 80871F78-80872018 001438 00A0+00 1/1 0/0 0/0 .text setModelMtx__10daMirror_cFv */ +void daMirror_c::setModelMtx() { + mpModel->setBaseScale(scale); + + mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); + mDoMtx_stack_c::YrotM(shape_angle.y); + mDoMtx_stack_c::XrotM(shape_angle.x); + mDoMtx_stack_c::ZrotM(0x2000); + mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); +} + +/* 80872018-8087206C 0014D8 0054+00 1/0 0/0 0/0 .text daMirror_create__FP10daMirror_c */ +static int daMirror_create(daMirror_c* i_this) { + fopAcM_SetupActor(i_this, daMirror_c); + return i_this->daMirror_c::create(); +} + +/* 8087206C-80872344 00152C 02D8+00 2/2 0/0 0/0 .text create__10daMirror_cFv */ +int daMirror_c::create() { + if (getSw() != 0xFF && !fopAcM_isSwitch(this, getSw())) { + return cPhs_COMPLEATE_e; + } + + if (m_myObj != NULL) { + return cPhs_INIT_e; + } + + int type = getType(); + if (type == 2) { + int phase_state = dComIfG_resLoad(this, l_arcName); + switch (phase_state) { + default: + return phase_state; + case cPhs_COMPLEATE_e: + if (!fopAcM_entrySolidHeap(this, daMirror_c_createHeap, 0x1540)) { + return cPhs_ERROR_e; + } + break; + } + + setModelMtx(); + mDoLib_setResTimgObj((ResTIMG*)dComIfG_getObjectRes(l_arcName, 7), &mPacket.getTexObj(), 0, + NULL); + Vec src[4] = { + {-72.5f, 145.0f, 0.0f}, + {72.5f, 145.0f, 0.0f}, + {72.5f, 0.0f, 0.0f}, + {-72.5f, 0.0f, 0.0f}, + }; + mDoMtx_stack_c::scaleS(scale); + mDoMtx_stack_c::revConcat(mpModel->getBaseTRMtx()); + cMtx_multVecArray(mDoMtx_stack_c::get(), src, mPacket.getQuad(), 4); + mPacket.getViewScale().set(-1.0f, 1.0f, 1.0f); + } else { + if (type == 1) { + scale *= 10.0f; + mPacket.getViewScale().set(1.0, -1.0, 1.0); + } else { + if (type == 3) { + int phase_state = dComIfG_resLoad(this, l_arcName2); + switch (phase_state) { + default: + return phase_state; + case cPhs_COMPLEATE_e: + mDoLib_setResTimgObj((ResTIMG*)dComIfG_getObjectRes(l_arcName2, 0x25), + &mPacket.getTexObj(), 0, NULL); + break; + } + } + + mPacket.getViewScale().set(-1.0f, 1.0f, 1.0f); + } + + mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); + mDoMtx_stack_c::YrotM(shape_angle.y); + mDoMtx_stack_c::XrotM(shape_angle.x); + mDoMtx_stack_c::scaleM(scale.x, scale.y, scale.z); + static Vec const l_mirrorQuad[4] = { + {-50.0f, 100.0f, 0.0f}, + {50.0f, 100.0f, 0.0f}, + {50.0f, 0.0f, 0.0f}, + {-50.0f, 0.0f, 0.0f}, + }; + mDoMtx_stack_c::multVecArray(l_mirrorQuad, mPacket.getQuad(), 4); + } + + m_myObj = this; + mPacket.calcMinMax(); + static const Vec l_mirrorLook = {0.0f, 50.0f, 0.0f}; + mDoMtx_stack_c::multVec(&l_mirrorLook, &eyePos); + return cPhs_COMPLEATE_e; +} + +int daMirror_c::Delete() { + int type = getType(); + if (type == 2) { + dComIfG_resDelete(this, l_arcName); + } else if (type == 3) { + dComIfG_resDelete(this, l_arcName2); + } + + m_myObj = NULL; + return 1; +} + +/* 80872344-808723C4 001804 0080+00 1/0 0/0 0/0 .text daMirror_Delete__FP10daMirror_c */ +static int daMirror_Delete(daMirror_c* i_this) { + return i_this->Delete(); +} + +/* 808723C4-808723E4 001884 0020+00 1/0 0/0 0/0 .text daMirror_execute__FP10daMirror_c */ +static int daMirror_execute(daMirror_c* i_this) { + return i_this->execute(); +} + +/* 808723E4-808724C0 0018A4 00DC+00 1/1 0/0 0/0 .text execute__10daMirror_cFv */ +int daMirror_c::execute() { + if (this != m_myObj) { + if (m_myObj == NULL) { + if (create() == cPhs_ERROR_e) { + fopAcM_delete(this); + } + } + + return 1; + } + + daPy_py_c* player = daPy_getLinkPlayerActorClass(); + JUT_ASSERT(player != 0); + + if (mPacket.getViewScale().y > 0.0f && player->getKandelaarFlamePos() && + fopAcM_searchActorDistance2(this, player) < 40000.0f) + { + if (fopAcM_seenActorAngleY(this, player) < 0x4000) { + daPy_py_c::setLookPos(&eyePos); + } + } + + return 1; +} + +int daMirror_c::draw() { + if (this != daMirror_c::m_myObj) { + return 1; + } + + if (mpModel != NULL) { + g_env_light.settingTevStruct(0x10, ¤t.pos, &tevStr); + g_env_light.setLightTevColorType(mpModel, &tevStr); + mDoExt_modelUpdateDL(mpModel); + } + + dComIfGd_getOpaListBG()->entryImm(&mPacket, 0); + return 1; +} + +/* 808724C0-80872560 001980 00A0+00 1/0 0/0 0/0 .text daMirror_draw__FP10daMirror_c */ +static int daMirror_draw(daMirror_c* i_this) { + return i_this->draw(); +} + +/* 80872560-80872584 001A20 0024+00 1/0 0/0 0/0 .text entryModel__10daMirror_cFP8J3DModel + */ +int daMirror_c::entryModel(J3DModel* i_model) { + return mPacket.entryModel(i_model); +} + +/* 80872674-80872694 -00001 0020+00 1/0 0/0 0/0 .data daMirror_METHODS */ +static actor_method_class daMirror_METHODS = { + (process_method_func)daMirror_create, (process_method_func)daMirror_Delete, + (process_method_func)daMirror_execute, (process_method_func)NULL, + (process_method_func)daMirror_draw, +}; + +/* 80872694-808726C4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_MIRROR */ +extern actor_process_profile_definition g_profile_MIRROR = { + fpcLy_CURRENT_e, + 7, + fpcPi_CURRENT_e, + PROC_MIRROR, + &g_fpcLf_Method.mBase, + sizeof(daMirror_c), + 0, + 0, + &g_fopAc_Method.base, + 757, + &daMirror_METHODS, + 0x60000, + fopAc_UNK_GROUP_5_e, + fopAc_CULLBOX_0_e, +}; diff --git a/rel/d/a/d_a_movie_player/d_a_movie_player.cpp b/rel/d/a/d_a_movie_player/d_a_movie_player.cpp index c2ade04b60..57e967fbb7 100644 --- a/rel/d/a/d_a_movie_player/d_a_movie_player.cpp +++ b/rel/d/a/d_a_movie_player/d_a_movie_player.cpp @@ -5,7 +5,6 @@ #include "rel/d/a/d_a_movie_player/d_a_movie_player.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "dolphin/types.h" // diff --git a/rel/d/a/d_a_myna/d_a_myna.cpp b/rel/d/a/d_a_myna/d_a_myna.cpp index b55dc953c6..e1d1217ef4 100644 --- a/rel/d/a/d_a_myna/d_a_myna.cpp +++ b/rel/d/a/d_a_myna/d_a_myna.cpp @@ -4,12 +4,7 @@ // #include "rel/d/a/d_a_myna/d_a_myna.h" -#include "JSystem/JAudio2/JAISound.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/kankyo/d_kankyo.h" #include "d/msg/d_msg_object.h" #include "dol2asm.h" diff --git a/rel/d/a/d_a_ni/d_a_ni_NONMATCHING.cpp b/rel/d/a/d_a_ni/d_a_ni_NONMATCHING.cpp index c9f1e6c4d9..64ca48a4c2 100644 --- a/rel/d/a/d_a_ni/d_a_ni_NONMATCHING.cpp +++ b/rel/d/a/d_a_ni/d_a_ni_NONMATCHING.cpp @@ -8,12 +8,6 @@ * and some extra dtors being emitted that shouldnt be after daNi_Create */ -#include "SSystem/SComponent/c_math.h" -#include "c/c_damagereaction.h" -#include "d/a/d_a_player.h" -#include "d/cc/d_cc_d.h" -#include "d/cc/d_cc_uty.h" -#include "d/com/d_com_inf_game.h" #include "d/msg/d_msg_flow.h" #include "d/s/d_s_play.h" #include "dol2asm.h" diff --git a/rel/d/a/d_a_scene_exit/d_a_scene_exit.cpp b/rel/d/a/d_a_scene_exit/d_a_scene_exit.cpp index 2bf5048adc..72e394b2fd 100644 --- a/rel/d/a/d_a_scene_exit/d_a_scene_exit.cpp +++ b/rel/d/a/d_a_scene_exit/d_a_scene_exit.cpp @@ -6,7 +6,6 @@ #include "rel/d/a/d_a_scene_exit/d_a_scene_exit.h" #include "dol2asm.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_mtx.h" // diff --git a/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.cpp b/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.cpp index 447ee1e8b4..7744366c51 100644 --- a/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.cpp +++ b/rel/d/a/d_a_scene_exit2/d_a_scene_exit2.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/d_a_scene_exit2/d_a_scene_exit2.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/d_a_set_bgobj/d_a_set_bgobj.cpp b/rel/d/a/d_a_set_bgobj/d_a_set_bgobj.cpp index 3d9936c1ff..29c2d8d5e7 100644 --- a/rel/d/a/d_a_set_bgobj/d_a_set_bgobj.cpp +++ b/rel/d/a/d_a_set_bgobj/d_a_set_bgobj.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/d_a_set_bgobj/d_a_set_bgobj.h" -#include "JSystem/JKernel/JKRHeap.h" #include "stdio.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" /* 80485F00-80485F0C 000000 0009+03 1/1 0/0 0/0 .rodata l_specName */ diff --git a/rel/d/a/d_a_skip_2D/d_a_skip_2D.cpp b/rel/d/a/d_a_skip_2D/d_a_skip_2D.cpp index b4ab07a855..80aa462558 100644 --- a/rel/d/a/d_a_skip_2D/d_a_skip_2D.cpp +++ b/rel/d/a/d_a_skip_2D/d_a_skip_2D.cpp @@ -4,9 +4,6 @@ */ #include "rel/d/a/d_a_skip_2D/d_a_skip_2D.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" -#include "d/meter/d_meter2.h" #include "d/meter/d_meter_button.h" #include "f_op/f_op_actor_mng.h" diff --git a/rel/d/a/d_a_spinner/d_a_spinner.cpp b/rel/d/a/d_a_spinner/d_a_spinner.cpp index 29a5cd217c..5f8d55dfa0 100644 --- a/rel/d/a/d_a_spinner/d_a_spinner.cpp +++ b/rel/d/a/d_a_spinner/d_a_spinner.cpp @@ -6,8 +6,6 @@ #include "rel/d/a/d_a_spinner/d_a_spinner.h" #include "dol2asm.h" #include "d/a/d_a_alink.h" -#include "m_Do/m_Do_controller_pad.h" -#include "rel/d/a/d_a_mirror/d_a_mirror.h" #include "SSystem/SComponent/c_math.h" // diff --git a/rel/d/a/d_a_startAndGoal/d_a_startAndGoal.cpp b/rel/d/a/d_a_startAndGoal/d_a_startAndGoal.cpp index f733bdfbb0..d689a87e55 100644 --- a/rel/d/a/d_a_startAndGoal/d_a_startAndGoal.cpp +++ b/rel/d/a/d_a_startAndGoal/d_a_startAndGoal.cpp @@ -5,7 +5,6 @@ #include "rel/d/a/d_a_startAndGoal/d_a_startAndGoal.h" #include "d/a/d_a_npc.h" -#include "d/com/d_com_inf_game.h" #include "d/d_timer.h" #include "d/meter/d_meter2_info.h" #include "f_op/f_op_actor_mng.h" diff --git a/rel/d/a/d_a_suspend/d_a_suspend.cpp b/rel/d/a/d_a_suspend/d_a_suspend.cpp index 5c6635e24f..6ef89e6ba5 100644 --- a/rel/d/a/d_a_suspend/d_a_suspend.cpp +++ b/rel/d/a/d_a_suspend/d_a_suspend.cpp @@ -4,7 +4,6 @@ // #include "rel/d/a/d_a_suspend/d_a_suspend.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 804D5118-804D51E0 000078 00C8+00 1/1 0/0 0/0 .text create__7daSus_cFv */ diff --git a/rel/d/a/d_a_swTime/d_a_swTime.cpp b/rel/d/a/d_a_swTime/d_a_swTime.cpp index 11140d83a2..16f3b7cbe9 100644 --- a/rel/d/a/d_a_swTime/d_a_swTime.cpp +++ b/rel/d/a/d_a_swTime/d_a_swTime.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/d_a_swTime/d_a_swTime.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" diff --git a/rel/d/a/d_a_swc00/d_a_swc00.cpp b/rel/d/a/d_a_swc00/d_a_swc00.cpp index d8ec12a1f2..b60c249fc4 100644 --- a/rel/d/a/d_a_swc00/d_a_swc00.cpp +++ b/rel/d/a/d_a_swc00/d_a_swc00.cpp @@ -5,7 +5,6 @@ #include "rel/d/a/d_a_swc00/d_a_swc00.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "d/com/d_com_inf_game.h" #include "f_op/f_op_actor_mng.h" diff --git a/rel/d/a/d_a_talk/d_a_talk.cpp b/rel/d/a/d_a_talk/d_a_talk.cpp index 6bc81de02e..24bb4dba32 100644 --- a/rel/d/a/d_a_talk/d_a_talk.cpp +++ b/rel/d/a/d_a_talk/d_a_talk.cpp @@ -4,8 +4,6 @@ // #include "rel/d/a/d_a_talk/d_a_talk.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "d/msg/d_msg_object.h" #include "f_op/f_op_msg_mng.h" diff --git a/rel/d/a/d_a_tbox/d_a_tbox_NONMATCHING.cpp b/rel/d/a/d_a_tbox/d_a_tbox_NONMATCHING.cpp index 139dbea7bb..a7a05f9819 100644 --- a/rel/d/a/d_a_tbox/d_a_tbox_NONMATCHING.cpp +++ b/rel/d/a/d_a_tbox/d_a_tbox_NONMATCHING.cpp @@ -4,13 +4,6 @@ // #include "rel/d/a/d_a_tbox/d_a_tbox.h" -#include "SSystem/SComponent/c_math.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/com/d_com_inf_game.h" -#include "d/bg/d_bg_w.h" -#include "d/a/d_a_player.h" -#include "d/d_path.h" -#include "d/d_stage.h" #include "d/d_tresure.h" #include "d/d_item_data.h" #include "f_op/f_op_actor.h" diff --git a/rel/d/a/d_a_tbox2/d_a_tbox2.cpp b/rel/d/a/d_a_tbox2/d_a_tbox2.cpp index e2ad045010..4b3f4682c1 100644 --- a/rel/d/a/d_a_tbox2/d_a_tbox2.cpp +++ b/rel/d/a/d_a_tbox2/d_a_tbox2.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/d_a_tbox2/d_a_tbox2.h" -#include "d/a/d_a_player.h" #include "d/bg/d_bg_w.h" -#include "d/com/d_com_inf_game.h" #include "rel/d/a/d_a_midna/d_a_midna.h" /* 80496A18-80496A54 000078 003C+00 1/1 0/0 0/0 .text initBaseMtx__9daTbox2_cFv */ diff --git a/rel/d/a/d_a_tboxSw/d_a_tboxSw.cpp b/rel/d/a/d_a_tboxSw/d_a_tboxSw.cpp index 935b425c46..8ca3b43c19 100644 --- a/rel/d/a/d_a_tboxSw/d_a_tboxSw.cpp +++ b/rel/d/a/d_a_tboxSw/d_a_tboxSw.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/d_a_tboxSw/d_a_tboxSw.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/d_a_title/d_a_title_nonmatching.cpp b/rel/d/a/d_a_title/d_a_title_nonmatching.cpp index 8ec494f3cd..b4bafb3469 100644 --- a/rel/d/a/d_a_title/d_a_title_nonmatching.cpp +++ b/rel/d/a/d_a_title/d_a_title_nonmatching.cpp @@ -4,10 +4,6 @@ // #include "rel/d/a/d_a_title/d_a_title.h" -#include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" -#include "f_op/f_op_overlap_mng.h" -#include "f_op/f_op_msg_mng.h" #include "d/pane/d_pane_class_alpha.h" #include "d/menu/d_menu_collect.h" #include "m_Do/m_Do_Reset.h" diff --git a/rel/d/a/d_a_vrbox/d_a_vrbox.cpp b/rel/d/a/d_a_vrbox/d_a_vrbox.cpp index 9ded445c96..7ef2160115 100644 --- a/rel/d/a/d_a_vrbox/d_a_vrbox.cpp +++ b/rel/d/a/d_a_vrbox/d_a_vrbox.cpp @@ -5,8 +5,6 @@ #include "rel/d/a/d_a_vrbox/d_a_vrbox.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" static int daVrbox_color_set(vrbox_class* i_this); diff --git a/rel/d/a/d_a_vrbox2/d_a_vrbox2.cpp b/rel/d/a/d_a_vrbox2/d_a_vrbox2.cpp index a7cacf4ee5..e2b4a0cad9 100644 --- a/rel/d/a/d_a_vrbox2/d_a_vrbox2.cpp +++ b/rel/d/a/d_a_vrbox2/d_a_vrbox2.cpp @@ -4,9 +4,6 @@ // #include "rel/d/a/d_a_vrbox2/d_a_vrbox2.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "SSystem/SComponent/c_math.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" #include "d/kankyo/d_kankyo_rain.h" diff --git a/rel/d/a/d_a_warp_bug/d_a_warp_bug.cpp b/rel/d/a/d_a_warp_bug/d_a_warp_bug.cpp index b677fce7e8..3a845fffc0 100644 --- a/rel/d/a/d_a_warp_bug/d_a_warp_bug.cpp +++ b/rel/d/a/d_a_warp_bug/d_a_warp_bug.cpp @@ -4,9 +4,6 @@ */ #include "rel/d/a/d_a_warp_bug/d_a_warp_bug.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/d_a_ykgr/d_a_ykgr.cpp b/rel/d/a/d_a_ykgr/d_a_ykgr.cpp index 5b0fd36e31..5143dc372d 100644 --- a/rel/d/a/d_a_ykgr/d_a_ykgr.cpp +++ b/rel/d/a/d_a_ykgr/d_a_ykgr.cpp @@ -4,11 +4,6 @@ // #include "rel/d/a/d_a_ykgr/d_a_ykgr.h" -#include "m_Do/m_Do_mtx.h" -#include "m_Do/m_Do_hostIO.h" -#include "d/particle/d_particle.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_actor.h" #include "f_op/f_op_actor_mng.h" #include "dol2asm.h" diff --git a/rel/d/a/door/d_a_door_boss/d_a_door_boss.cpp b/rel/d/a/door/d_a_door_boss/d_a_door_boss.cpp index 9fa71afb6d..fc51d6667d 100644 --- a/rel/d/a/door/d_a_door_boss/d_a_door_boss.cpp +++ b/rel/d/a/door/d_a_door_boss/d_a_door_boss.cpp @@ -4,13 +4,11 @@ */ #include "rel/d/a/door/d_a_door_boss/d_a_door_boss.h" -#include "SSystem/SComponent/c_math.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/a/d_a_player.h" #include "d/d_procname.h" #include "d/d_door_param2.h" +#include "SSystem/SComponent/c_math.h" /* 80670A20-80670A2C 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ static u8 cNullVec__6Z2Calc[12] = { diff --git a/rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.cpp b/rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.cpp index 3b75c8f8b4..902e1af1d0 100644 --- a/rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.cpp +++ b/rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.cpp @@ -4,12 +4,10 @@ // #include "rel/d/a/door/d_a_door_dbdoor00/d_a_door_dbdoor00.h" -#include "JSystem/JKernel/JKRHeap.h" #include "printf.h" #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" #include "d/d_door_param2.h" -#include "d/d_procname.h" #include "dol2asm.h" extern "C" extern char const* const d_a_door_dbdoor00__stringBase0; diff --git a/rel/d/a/door/d_a_door_push/d_a_door_push.cpp b/rel/d/a/door/d_a_door_push/d_a_door_push.cpp index a1fafb4389..6152f25094 100644 --- a/rel/d/a/door/d_a_door_push/d_a_door_push.cpp +++ b/rel/d/a/door/d_a_door_push/d_a_door_push.cpp @@ -4,12 +4,8 @@ */ #include "rel/d/a/door/d_a_door_push/d_a_door_push.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" -#include "d/a/d_a_player.h" -#include "d/bg/d_bg_s_movebg_actor.h" #include "d/bg/d_bg_w.h" -#include "d/com/d_com_inf_game.h" #include "d/d_procname.h" #include "dol2asm.h" #include "f_op/f_op_actor_mng.h" diff --git a/rel/d/a/e/d_a_e_bee/d_a_e_bee.cpp b/rel/d/a/e/d_a_e_bee/d_a_e_bee.cpp index 4969b55e5a..7e0f21d705 100644 --- a/rel/d/a/e/d_a_e_bee/d_a_e_bee.cpp +++ b/rel/d/a/e/d_a_e_bee/d_a_e_bee.cpp @@ -4,11 +4,6 @@ */ #include "rel/d/a/e/d_a_e_bee/d_a_e_bee.h" -#include "rel/d/a/e/d_a_e_nest/d_a_e_nest.h" -#include "SSystem/SComponent/c_math.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/cc/d_cc_uty.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/a/d_a_player.h" #include "d/d_procname.h" diff --git a/rel/d/a/e/d_a_e_db_leaf/d_a_e_db_leaf.cpp b/rel/d/a/e/d_a_e_db_leaf/d_a_e_db_leaf.cpp index b405af180a..6b45a78472 100644 --- a/rel/d/a/e/d_a_e_db_leaf/d_a_e_db_leaf.cpp +++ b/rel/d/a/e/d_a_e_db_leaf/d_a_e_db_leaf.cpp @@ -1,7 +1,6 @@ // Translation Unit: d_a_e_db_leaf #include "rel/d/a/e/d_a_e_db_leaf/d_a_e_db_leaf.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 806A1E38-806A1EA0 000078 0068+00 1/0 0/0 0/0 .text daE_DB_LEAF_Draw__FP15e_db_leaf_class */ diff --git a/rel/d/a/e/d_a_e_fz/d_a_e_fz.cpp b/rel/d/a/e/d_a_e_fz/d_a_e_fz.cpp index 5fb5d7be71..c8e92f3b30 100644 --- a/rel/d/a/e/d_a_e_fz/d_a_e_fz.cpp +++ b/rel/d/a/e/d_a_e_fz/d_a_e_fz.cpp @@ -1,254 +1,14 @@ -// -// Generated By: dol2asm -// Translation Unit: d_a_e_fz -// +/** + * @file d_a_obj_carry.cpp + * @brief Enemy - Mini Freezard + */ #include "rel/d/a/e/d_a_e_fz/d_a_e_fz.h" +#include "d/com/d_com_inf_game.h" +#include "SSystem/SComponent/c_math.h" +#include "SSystem/SComponent/c_xyz.h" #include "dol2asm.h" -// -// Types: -// - -struct request_of_phase_process_class {}; - -struct csXyz {}; - -struct mDoMtx_stack_c { - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CE38 */ void scaleM(f32, f32, f32); - /* 8000CF44 */ void ZXYrotM(csXyz const&); - - static u8 now[48]; -}; - -struct J3DModel {}; - -struct mDoExt_invisibleModel { - /* 8000E53C */ void create(J3DModel*, u8); -}; - -struct fopEn_enemy_c {}; - -struct fopAc_ac_c { - /* 80018B64 */ fopAc_ac_c(); -}; - -struct daPy_py_c { - static u8 m_midnaActor[4]; -}; - -struct daMirror_c { - /* 8003194C */ void entry(J3DModel*); -}; - -struct daE_FZ_c { - /* 806BE9D4 */ void draw(); - /* 806BEAF8 */ void setActionMode(int, int); - /* 806BEB04 */ void setReflectAngle(); - /* 806BEBA0 */ void mBoundSoundset(); - /* 806BEC08 */ void deadnextSet(bool); - /* 806BED34 */ void damage_check(); - /* 806BF444 */ void way_gake_check(); - /* 806BF58C */ void executeWait(); - /* 806BF8E8 */ void executeMove(); - /* 806BFA64 */ void executeAttack(); - /* 806BFB60 */ void executeDamage(); - /* 806BFF94 */ void executeRollMove(); - /* 806C0224 */ void action(); - /* 806C06DC */ void mtx_set(); - /* 806C0760 */ void cc_set(); - /* 806C08C4 */ void execute(); - /* 806C0B20 */ void demoDelete(); - /* 806C0B94 */ void _delete(); - /* 806C0C28 */ void CreateHeap(); - /* 806C0CD0 */ void create(); -}; - -struct daE_FZ_HIO_c { - /* 806BE94C */ daE_FZ_HIO_c(); - /* 806C1440 */ ~daE_FZ_HIO_c(); -}; - -struct Vec {}; - -struct cXyz { - /* 80266B34 */ void operator-(Vec const&) const; - /* 80267128 */ void atan2sX_Z() const; - /* 806C13D4 */ cXyz(); - /* 806C18E8 */ ~cXyz(); -}; - -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); -}; - -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct dScnKy_env_light_c { - /* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*); - /* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dPa_levelEcallBack {}; - -struct _GXColor {}; - -struct dPa_control_c { - struct level_c { - /* 8004B8B4 */ void forceOnEventMove(u32); - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004C218 */ void setHitMark(u16, fopAc_ac_c*, cXyz const*, csXyz const*, cXyz const*, u32); - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); - /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*, - u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*, - cXyz const*, f32); - - static u8 mParticleTracePCB[4 + 4 /* padding */]; -}; - -struct dDlst_shadowControl_c { - static u8 mSimpleTexObj[32]; -}; - -struct dCcU_AtInfo {}; - -struct dCcD_Stts { - /* 80083860 */ void Init(int, int, fopAc_ac_c*); -}; - -struct dCcD_SrcSph {}; - -struct dCcD_Sph { - /* 80084A34 */ void Set(dCcD_SrcSph const&); -}; - -struct dCcD_GStts { - /* 80083760 */ dCcD_GStts(); - /* 80083830 */ void Move(); - /* 806C1298 */ ~dCcD_GStts(); -}; - -struct dCcD_GObjInf { - /* 80083A28 */ dCcD_GObjInf(); - /* 800842C0 */ void ChkAtHit(); - /* 80084460 */ void ChkTgHit(); - /* 800844F8 */ void GetTgHitObj(); - /* 80084658 */ void ChkCoHit(); -}; - -struct dCcD_GAtTgCoCommonBase { - /* 80083688 */ void GetAc(); -}; - -struct dBgS_PolyPassChk { - /* 80078E68 */ void SetObj(); -}; - -struct dBgS_ObjAcch { - /* 806C12F4 */ ~dBgS_ObjAcch(); -}; - -struct dBgS_LinChk { - /* 80077C68 */ dBgS_LinChk(); - /* 80077CDC */ ~dBgS_LinChk(); - /* 80077D64 */ void Set(cXyz const*, cXyz const*, fopAc_ac_c const*); -}; - -struct dBgS_GndChk { - /* 8007757C */ dBgS_GndChk(); - /* 800775F0 */ ~dBgS_GndChk(); -}; - -struct dBgS_AcchCir { - /* 80075EAC */ dBgS_AcchCir(); - /* 80075F58 */ void SetWall(f32, f32); - /* 806C1364 */ ~dBgS_AcchCir(); -}; - -struct cBgS_PolyInfo { - /* 802680B0 */ ~cBgS_PolyInfo(); -}; - -struct dBgS { - /* 80074E50 */ void GetPolyAtt0(cBgS_PolyInfo const&); -}; - -struct dBgS_Acch { - /* 80075F94 */ ~dBgS_Acch(); - /* 800760A0 */ dBgS_Acch(); - /* 80076248 */ void Set(cXyz*, cXyz*, fopAc_ac_c*, int, dBgS_AcchCir*, cXyz*, csXyz*, csXyz*); - /* 80076AAC */ void CrrPos(dBgS&); -}; - -struct cM3dGSph { - /* 8026F648 */ void SetC(cXyz const&); - /* 8026F708 */ void SetR(f32); - /* 806C1208 */ ~cM3dGSph(); -}; - -struct cM3dGCir { - /* 8026EF18 */ ~cM3dGCir(); -}; - -struct cM3dGAab { - /* 806C1250 */ ~cM3dGAab(); -}; - -struct cCcD_Obj {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - -struct cCcD_GStts { - /* 806C13F8 */ ~cCcD_GStts(); -}; - -struct cBgS_LinChk {}; - -struct cBgS_GndChk { - /* 80267D28 */ void SetPos(cXyz const*); -}; - -struct cBgS { - /* 800743B4 */ void LineCross(cBgS_LinChk*); - /* 800744A0 */ void GroundCross(cBgS_GndChk*); - /* 80074618 */ void GetActorPointer(int) const; -}; - -struct _GXTexObj {}; - -struct Z2CreatureEnemy { - /* 802C0F64 */ Z2CreatureEnemy(); - /* 802C1094 */ void init(Vec*, Vec*, u8, u8); - /* 802C1B7C */ void setLinkSearch(bool); - /* 802C1B90 */ void setEnemyName(char const*); -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; - -struct JGeometry { - template - struct TVec3 {}; - /* TVec3 */ - struct TVec3__template0 {}; -}; - // // Forward References: // @@ -390,12 +150,6 @@ extern "C" void init__15Z2CreatureEnemyFP3VecP3VecUcUc(); extern "C" void setLinkSearch__15Z2CreatureEnemyFb(); extern "C" void setEnemyName__15Z2CreatureEnemyFPCc(); extern "C" void __dl__FPv(); -extern "C" void PSMTXCopy(); -extern "C" void PSMTXTrans(); -extern "C" void PSMTXMultVec(); -extern "C" void PSVECAdd(); -extern "C" void PSVECScale(); -extern "C" void PSVECSquareMag(); extern "C" void __construct_array(); extern "C" void __cvt_fp2unsigned(); extern "C" void _savegpr_19(); @@ -408,21 +162,14 @@ extern "C" void _restgpr_23(); extern "C" void _restgpr_25(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void abs(); -extern "C" extern void* g_fopAc_Method[8]; -extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__8dCcD_Sph[36]; extern "C" extern void* __vt__9dCcD_Stts[11]; extern "C" extern void* __vt__12cCcD_SphAttr[25]; extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; -extern "C" extern u8 g_env_light[4880]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern void* calc_mtx[1 + 1 /* padding */]; -extern "C" extern u32 __float_nan; extern "C" u8 mParticleTracePCB__13dPa_control_c[4 + 4 /* padding */]; extern "C" u8 m_midnaActor__9daPy_py_c[4]; extern "C" void __register_global_object(); @@ -585,50 +332,60 @@ SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = { /* 806C1A20-806C1A28 000020 0008+00 0/1 0/0 0/0 .data e_prim$3682 */ #pragma push #pragma force_active on -SECTION_DATA static u8 e_prim[8] = { - 0xFF, 0x78, 0x00, 0x00, 0xFF, 0x64, 0x78, 0x00, +SECTION_DATA static GXColor e_prim[2] = { + {0xFF, 0x78, 0x00, 0x00}, + {0xFF, 0x64, 0x78, 0x00}, }; #pragma pop /* 806C1A28-806C1A30 000028 0008+00 0/1 0/0 0/0 .data e_env$3683 */ #pragma push #pragma force_active on -SECTION_DATA static u8 e_env[8] = { - 0x5A, 0x2D, 0x2D, 0x00, 0x3C, 0x1E, 0x1E, 0x00, +SECTION_DATA static GXColor e_env[2] = { + {0x5A, 0x2D, 0x2D, 0x00}, + {0x3C, 0x1E, 0x1E, 0x00}, }; #pragma pop + /* 806C1A30-806C1A38 000030 0006+02 0/1 0/0 0/0 .data eff_id$3691 */ #pragma push #pragma force_active on -SECTION_DATA static u8 eff_id[6 + 2 /* padding */] = { - 0x02, - 0x9D, - 0x02, - 0x9E, - 0x02, - 0x9F, - /* padding */ - 0x00, - 0x00, +SECTION_DATA static u16 eff_id[3] = { + 0x029D, + 0x029E, + 0x029F, + // /* padding */ + // 0x00, + // 0x00, }; #pragma pop /* 806C1A38-806C1A78 000038 0040+00 1/1 0/0 0/0 .data cc_fz_src__22@unnamed@d_a_e_fz_cpp@ */ -SECTION_DATA static u8 data_806C1A38[64] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xD0, 0xFB, 0xFD, 0xFF, 0x00, 0x00, 0x00, 0x43, 0x00, 0x00, 0x00, 0x65, 0x09, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, +static dCcD_SrcSph cc_fz_src = { + { + {0x0, {{0x100, 0x1, 0x0}, {0xd0fbfdff, 0x43}, 0x65}}, // mObj + {dCcD_SE_METAL, 0x0, 0x0, 0x0, 0x0}, // mGObjAt + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x6}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf + { + {{0.0f, 0.0f, 0.0f}, 40.0f} // mSph + } // mSphAttr }; /* 806C1A78-806C1AB8 000078 0040+00 1/1 0/0 0/0 .data cc_fz_at_src__22@unnamed@d_a_e_fz_cpp@ */ -SECTION_DATA static u8 data_806C1A78[64] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1D, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00, +static dCcD_SrcSph cc_fz_at_src = { + { + {0x0, {{0x100, 0x1, 0x1d}, {0x0, 0x0}, 0x0}}, // mObj + {dCcD_SE_METAL, 0x0, 0x0, 0x0, 0x0}, // mGObjAt + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x2}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf + { + {{0.0f, 0.0f, 0.0f}, 40.0f} // mSph + } // mSphAttr }; /* 806C1AB8-806C1AD4 -00001 001C+00 1/1 0/0 0/0 .data @4324 */ @@ -643,38 +400,37 @@ SECTION_DATA static void* lit_4324[7] = { }; /* 806C1AD4-806C1ADC 0000D4 0006+02 1/1 0/0 0/0 .data ice_name$4578 */ -SECTION_DATA static u8 ice_name[6 + 2 /* padding */] = { - 0x82, - 0x21, - 0x82, - 0x22, - 0x82, - 0x23, - /* padding */ - 0x00, - 0x00, +SECTION_DATA static u16 ice_name[3] = { + 0x8221, + 0x8222, + 0x8223, }; /* 806C1ADC-806C1AFC -00001 0020+00 1/0 0/0 0/0 .data l_daE_FZ_Method */ -SECTION_DATA static void* l_daE_FZ_Method[8] = { - (void*)daE_FZ_Create__FP8daE_FZ_c, - (void*)daE_FZ_Delete__FP8daE_FZ_c, - (void*)daE_FZ_Execute__FP8daE_FZ_c, - (void*)daE_FZ_IsDelete__FP8daE_FZ_c, - (void*)daE_FZ_Draw__FP8daE_FZ_c, - (void*)NULL, - (void*)NULL, - (void*)NULL, +static actor_method_class l_daE_FZ_Method = { + (process_method_func)daE_FZ_Create__FP8daE_FZ_c, + (process_method_func)daE_FZ_Delete__FP8daE_FZ_c, + (process_method_func)daE_FZ_Execute__FP8daE_FZ_c, + (process_method_func)daE_FZ_IsDelete__FP8daE_FZ_c, + (process_method_func)daE_FZ_Draw__FP8daE_FZ_c, }; /* 806C1AFC-806C1B2C -00001 0030+00 0/0 0/0 1/0 .data g_profile_E_FZ */ -SECTION_DATA extern void* g_profile_E_FZ[12] = { - (void*)0xFFFFFFFD, (void*)0x0007FFFD, - (void*)0x01DE0000, (void*)&g_fpcLf_Method, - (void*)0x00000C24, (void*)NULL, - (void*)NULL, (void*)&g_fopAc_Method, - (void*)0x00A90000, (void*)&l_daE_FZ_Method, - (void*)0x00040120, (void*)0x02000000, +extern actor_process_profile_definition g_profile_E_FZ = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_E_FZ, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daE_FZ_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 169, // mPriority + &l_daE_FZ_Method, // sub_method + 0x00040120, // mStatus + fopAc_ENEMY_e, // mActorType + fopAc_CULLBOX_0_e, // cullType }; /* 806C1B2C-806C1B38 00012C 000C+00 1/1 0/0 0/0 .data __vt__12dBgS_AcchCir */ @@ -733,6 +489,25 @@ SECTION_DATA extern void* __vt__12daE_FZ_HIO_c[3] = { }; /* 806BE94C-806BE9D4 0000EC 0088+00 1/1 0/0 0/0 .text __ct__12daE_FZ_HIO_cFv */ +#ifdef NONMATCHING +// matches except extra vtable? +daE_FZ_HIO_c::daE_FZ_HIO_c() { + field_0x04 = -1; + field_0x0c = FLOAT_LABEL(lit_3824); + field_0x10 = FLOAT_LABEL(lit_3825); + field_0x14 = FLOAT_LABEL(lit_3826); + field_0x18 = FLOAT_LABEL(lit_3827); + field_0x1c = FLOAT_LABEL(lit_3828); + field_0x20 = FLOAT_LABEL(lit_3829); + field_0x24 = FLOAT_LABEL(lit_3830); + field_0x28 = FLOAT_LABEL(lit_3831); + field_0x2c = FLOAT_LABEL(lit_3832); + field_0x06 = 0x28; + field_0x30 = FLOAT_LABEL(lit_3833); + field_0x08 = 0x78; + field_0x34 = FLOAT_LABEL(lit_3834); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -741,6 +516,7 @@ asm daE_FZ_HIO_c::daE_FZ_HIO_c() { #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/__ct__12daE_FZ_HIO_cFv.s" } #pragma pop +#endif /* ############################################################################################## */ /* 806C1990-806C1994 000058 0004+00 0/3 0/0 0/0 .rodata @3863 */ @@ -751,56 +527,104 @@ COMPILER_STRIP_GATE(0x806C1990, &lit_3863); #pragma pop /* 806BE9D4-806BEAD8 000174 0104+00 1/1 0/0 0/0 .text draw__8daE_FZ_cFv */ +#ifdef NONMATCHING +// float literals + dComIfGd_setShadow param issue maybe +s32 daE_FZ_c::draw() { + if (field_0x714 != 2 || !checkItemGet(IRONBALL,1)) { + return 1; + } + + J3DModel* model = mpModel; + + g_env_light.settingTevStruct(0, ¤t.pos, &mTevStr); + g_env_light.setLightTevColorType_MAJI(mpModel->mModelData, &mTevStr); + + + mDoExt_modelUpdateDL(mpModel); + daMirror_c::entry(mpModel); + + cXyz pos; + + pos.set(current.pos.x,current.pos.y+10.0f,current.pos.z); + field_0x70c = dComIfGd_setShadow(field_0x70c,1,model,&pos,0.0f,1.0f,2.0f,mObjAcch.GetGroundH(),*(mObjAcch.pm_out_poly_info),&mTevStr,0,0.0f,&dDlst_shadowControl_c::mSimpleTexObj); + return 1; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daE_FZ_c::draw() { +asm s32 daE_FZ_c::draw() { nofralloc #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/draw__8daE_FZ_cFv.s" } #pragma pop +#endif /* 806BEAD8-806BEAF8 000278 0020+00 1/0 0/0 0/0 .text daE_FZ_Draw__FP8daE_FZ_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daE_FZ_Draw(daE_FZ_c* param_0) { - nofralloc -#include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Draw__FP8daE_FZ_c.s" +static void daE_FZ_Draw(daE_FZ_c* i_this) { + i_this->draw(); } -#pragma pop /* 806BEAF8-806BEB04 000298 000C+00 9/9 0/0 0/0 .text setActionMode__8daE_FZ_cFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daE_FZ_c::setActionMode(int param_0, int param_1) { - nofralloc -#include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/setActionMode__8daE_FZ_cFii.s" +void daE_FZ_c::setActionMode(int i_actionMode, int i_actionPhase) { + mActionMode = i_actionMode; + mActionPhase = i_actionPhase; } -#pragma pop /* 806BEB04-806BEBA0 0002A4 009C+00 2/2 0/0 0/0 .text setReflectAngle__8daE_FZ_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daE_FZ_c::setReflectAngle() { - nofralloc -#include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/setReflectAngle__8daE_FZ_cFv.s" +void daE_FZ_c::setReflectAngle() { + s16 x = current.angle.y - mLastWallHitAngle; + + if (abs(x) > 18432) { + current.angle.y = (mLastWallHitAngle << 1) - (current.angle.y + 32768); + } else { + if (x > 14336) { + current.angle.y = mLastWallHitAngle + 14336; + } else { + if (x < -14336) { + current.angle.y = mLastWallHitAngle - 14336; + } + } + } } -#pragma pop /* 806BEBA0-806BEC08 000340 0068+00 2/2 0/0 0/0 .text mBoundSoundset__8daE_FZ_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daE_FZ_c::mBoundSoundset() { - nofralloc -#include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/mBoundSoundset__8daE_FZ_cFv.s" +void daE_FZ_c::mBoundSoundset() { + u32 speed = speedF; + + if (speed < 1) + speed = 1; + + mCreature.startCreatureSound(Z2SE_EN_FZ_BOUND,speed,-1); } -#pragma pop /* 806BEC08-806BED34 0003A8 012C+00 2/2 0/0 0/0 .text deadnextSet__8daE_FZ_cFb */ +#ifdef NONMATCHING +// float literals +void daE_FZ_c::deadnextSet(bool param_0) { + mHealth = 0; + + if (!param_0) { + if (field_0x714 != 3) { + dComIfGp_getVibration().StartShock(2,0x1f,cXyz(0.0f,1.0f,0.0f)); + } + mCreature.startCollisionSE(Z2SE_HIT_HAMMER,0x20); + } + + mSph1.ClrTgHit(); + fopAcM_OffStatus(this,0); + mAttentionInfo.mFlags &= 0xfffffffb; + + mSph2.OffAtSetBit(); + mSph1.OffTgSetBit(); + + mCreature.startCreatureSound(Z2SE_EN_FZ_DEATH,0,-1); + + speedF = 0.0f; + field_0x6fc = 0; + setActionMode(ACT_DAMAGE,0); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -809,6 +633,7 @@ asm void daE_FZ_c::deadnextSet(bool param_0) { #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/deadnextSet__8daE_FZ_cFb.s" } #pragma pop +#endif /* ############################################################################################## */ /* 806C1994-806C1998 00005C 0004+00 1/3 0/0 0/0 .rodata @4109 */ @@ -822,9 +647,189 @@ static u8 data_806C1BA0[4]; static u8 lit_3819[12]; /* 806C1BB0-806C1BE8 000018 0038+00 8/8 0/0 0/0 .bss l_HIO */ -static u8 l_HIO[56]; +static daE_FZ_HIO_c_tmp l_HIO; /* 806BED34-806BF444 0004D4 0710+00 1/1 0/0 0/0 .text damage_check__8daE_FZ_cFv */ +#ifdef NONMATCHING +// fwd ref to function at bottom of TU +static int setMidnaBindEffect(fopEn_enemy_c* param_0, Z2CreatureEnemy* param_1, cXyz* param_2, + cXyz* param_3); + +void daE_FZ_c::damage_check() { + // stack placement issues + float literals + csXyz s_pos; + cXyz pos; + cXyz pos2; + cXyz pos3; + + if (1 < health) { + scale.set(l_HIO.field_0x0c, l_HIO.field_0x0c, l_HIO.field_0x0c); + setMidnaBindEffect(this, &mCreature, ¤t.pos, &scale); + + if (field_0x712 == 0) { + pos.set(dComIfGp_getPlayer(0)->current.pos); + mStts.Move(); + + if (field_0x714 == 3) { + if (mSph1.ChkTgHit()) { + mAtInfo.mpCollider = mSph1.GetTgHitObj(); + + if (mSph1.GetTgHitObj()->ChkAtType(AT_TYPE_IRON_BALL)) { + deadnextSet(false); + } + } + } else { + if (mSph1.ChkTgHit()) { + mAtInfo.mpCollider = mSph1.GetTgHitObj(); + + if (mSph1.GetTgHitObj()->ChkAtType(AT_TYPE_40) || mSph1.GetTgHitObj()->ChkAtType(AT_TYPE_BOOMERANG)) { + current.angle.y = fopAcM_searchPlayerAngleY(this) + 32768; + f32 tmp_l_hio = l_HIO.field_0x28; + speedF = tmp_l_hio; + field_0x6fc = tmp_l_hio; + mBoundSoundset(); + setActionMode(ACT_DAMAGE,1); + return; + } + + pos2 = current.pos - *mSph1.GetTgHitPosP(); + pos3.set(*mSph1.GetTgHitPosP()); + + s_pos.x = 0; + s_pos.y = pos2.atan2sX_Z(); + s_pos.z = 0; + + if (mSph1.GetTgHitObj()->ChkAtType(AT_TYPE_SPINNER) || mSph1.GetTgHitObj()->ChkAtType(AT_TYPE_ARROW)) { + current.angle.y = fopAcM_searchPlayerAngleY(this) + 32768; + f32 tmp_l_hio = l_HIO.field_0x28; + speedF = tmp_l_hio; + field_0x6fc = tmp_l_hio; + mBoundSoundset(); + dComIfGp_setHitMark(2,this,&pos3,&s_pos,0,AT_TYPE_0); + setActionMode(ACT_DAMAGE,1); + return; + } + + dComIfGp_particle_set(0x85ba, ¤t.pos, &shape_angle, &cXyz(l_HIO.field_0x0c, l_HIO.field_0x0c, l_HIO.field_0x0c)); + + if (mSph1.GetTgHitObj()->ChkAtType(AT_TYPE_HOOKSHOT)) { + health -= 20; + + if (1 < health) { + current.angle.y = fopAcM_searchPlayerAngleY(this) + 32768; + + f32 tmp_l_hio = l_HIO.field_0x28; + speedF = tmp_l_hio; + field_0x6fc = tmp_l_hio; + mCreature.startCreatureSound(Z2SE_EN_FZ_DAMAGE,0,-1); + + f32 tmp_l_hio2 = l_HIO.field_0x28; + speedF = tmp_l_hio2; + field_0x6fc = tmp_l_hio2; + setActionMode(ACT_DAMAGE,1); + dComIfGp_setHitMark(3,this,&pos3,&s_pos,0,AT_TYPE_0); + return; + } + + deadnextSet(true); + dComIfGp_setHitMark(1,this,&pos3,&s_pos,0,AT_TYPE_0); + return; + } + + if (mSph1.GetTgHitObj()->ChkAtType(AT_TYPE_IRON_BALL)) { + deadnextSet(false); + mSph1.ClrTgHit(); + dComIfGp_setHitMark(3,this,&pos3,&s_pos,0,AT_TYPE_0); + return; + } + + cc_at_check(this,&mAtInfo); + + if (mAtInfo.mHitStatus == 0) { + dComIfGp_setHitMark(1,this,&pos3,&s_pos,0,AT_TYPE_0); + } else { + dComIfGp_setHitMark(3,this,&pos3,&s_pos,0,AT_TYPE_0); + } + + mLastWallHitAngle = mAtInfo.mHitDirection; + setReflectAngle(); + current.angle.y += -32768; + field_0x712 = 10; + + if (1 < health) { + mCreature.startCreatureSound(Z2SE_EN_FZ_DAMAGE,0,-1); + f32 tmp_l_hio = l_HIO.field_0x28; + speedF = tmp_l_hio; + field_0x6fc = tmp_l_hio; + setActionMode(ACT_DAMAGE,1); + return; + } + + deadnextSet(true); + return; + } else { + if (mObjAcch.ChkGroundHit() && mSph1.ChkCoHit()) { + fopAc_ac_c* co_hit_actor = mSph1.GetCoHitAc(); + + if (fopAcM_IsActor(co_hit_actor) && fopAcM_GetName(co_hit_actor) == PROC_E_FZ) { + pos = current.pos - mSph1.GetCoHitAc()->current.pos; + mSph1.ClrCoHit(); + f32 co_hit_actor_speed = co_hit_actor->speedF; + + if (co_hit_actor_speed > l_HIO.field_0x28 * 0.2f || speedF > l_HIO.field_0x28 * 0.2f) { + pos3 = current.pos - co_hit_actor->current.pos; + mLastWallHitAngle = pos.atan2sX_Z(); + setReflectAngle(); + + f32 tmp2 = speedF; + f32 tmp = co_hit_actor->speedF; + + if (speedF > tmp) { + co_hit_actor->speedF = tmp2; + static_cast(co_hit_actor)->field_0x6fc = tmp2; + } else { + speedF = tmp; + field_0x6fc = tmp; + } + + mBoundSoundset(); + setActionMode(ACT_DAMAGE,5); + return; + } + } + } + + if (mSph2.ChkAtHit()) { + fopAc_ac_c* player = dComIfGp_getPlayer(0); + fopAc_ac_c* at_hit_actor = mSph2.GetAtHitAc(); + + current.angle.y = fopAcM_searchPlayerAngleY(this) + 32768; + + if (player != at_hit_actor) { + mSph2.ClrAtHit(); + } else { + if (mSph2.ChkAtShieldHit()) { + f32 l_hio_28 = l_HIO.field_0x28; + speedF = l_hio_28; + field_0x6fc = l_hio_28; + setActionMode(ACT_DAMAGE,1); + + } else { + if (mActionMode != ACT_DAMAGE) { + field_0x712 = 10; + setActionMode(ACT_DAMAGE,3); + } + } + mBoundSoundset(); + mSph2.ClrAtHit(); + } + } + } + } + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -833,6 +838,7 @@ asm void daE_FZ_c::damage_check() { #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/damage_check__8daE_FZ_cFv.s" } #pragma pop +#endif /* ############################################################################################## */ /* 806C1998-806C199C 000060 0004+00 0/3 0/0 0/0 .rodata @4139 */ @@ -850,14 +856,50 @@ COMPILER_STRIP_GATE(0x806C199C, &lit_4140); #pragma pop /* 806BF444-806BF58C 000BE4 0148+00 3/3 0/0 0/0 .text way_gake_check__8daE_FZ_cFv */ +#ifdef NONMATCHING +// float literals +bool daE_FZ_c::way_gake_check() { + cXyz pos; + dBgS_GndChk gnd_chk; + + if (mObjAcch.ChkWallHit()) { + return false; + } + + cMtx_YrotS((MtxP)calc_mtx,current.angle.y); + + pos.x = 0.0f; + pos.y = 300.0f; + pos.z = 70.0f; + + MtxPosition(&pos,&field_0x6dc); + + field_0x6dc += current.pos; + field_0x6e8.set(field_0x6dc); + gnd_chk.SetPos(&field_0x6e8); + + field_0x6e8.y = dComIfG_Bgsp().GroundCross(&gnd_chk); + f32 tmp = field_0x6e8.y; + + if (tmp == -1e+09f) { + field_0x6e8.y = current.pos.y; + return true; + } else if (current.pos.y - tmp > 100.0f) { + return true; + } + + return false; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daE_FZ_c::way_gake_check() { +asm bool daE_FZ_c::way_gake_check() { nofralloc #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/way_gake_check__8daE_FZ_cFv.s" } #pragma pop +#endif /* ############################################################################################## */ /* 806C19A0-806C19A4 000068 0004+00 0/3 0/0 0/0 .rodata @4200 */ @@ -898,6 +940,87 @@ COMPILER_STRIP_GATE(0x806C19B0, &lit_4205); #pragma pop /* 806BF58C-806BF8E8 000D2C 035C+00 1/1 0/0 0/0 .text executeWait__8daE_FZ_cFv */ +#ifdef NONMATCHING +// stack issues + float literals +void daE_FZ_c::executeWait() { + cXyz pos; + s16 angle; + f32 tmp = l_HIO.field_0x14; + + switch (mActionPhase) { + case 0: + if (fopAcM_wayBgCheck(this,200.0f,50.0f)) { + angle = cM_rndFX(10000.0f) + 32768.0f; + } else { + + pos.x = orig.pos.x + cM_rndFX(l_HIO.field_0x10); + pos.y = orig.pos.y; + pos.z = orig.pos.z + cM_rndFX(l_HIO.field_0x10); + + pos = pos - current.pos; // -= doesn't appear to work here + + angle = pos.atan2sX_Z() - current.angle.y; + + if (angle > 12288) { + angle = 12288; + } + else { + if (angle < -12288) + angle = -12288; + } + } + + mAngleFromPlayer = current.angle.y + angle; + field_0x710 = l_HIO.field_0x06 + cM_rndFX(l_HIO.field_0x30); + mActionPhase = 1; + case 1: + if (way_gake_check()) { + cXyz pos2; + pos2 = current.pos - orig.pos; + angle = pos2.atan2sX_Z(); + mAngleFromPlayer = angle; + current.angle.y = angle; + } + + if (field_0x714 == 4) { + field_0x710 = 10; + speedF = 0.0f; + angle = fopAcM_searchPlayerAngleY(this); + mAngleFromPlayer = angle; + current.angle.y = angle; + tmp = l_HIO.field_0x18; + } + + if (mObjAcch.ChkGroundHit() && dComIfG_Bgsp().GetPolyAtt0(mObjAcch.m_gnd) == 8) { + angle = shape_angle.y - mAngleFromPlayer; + + if (abs(angle) < 512 && field_0x710 == 0) { + cLib_addCalc0(&speedF, 0.1f, 0.1f); + } + } else { + cLib_addCalc0(&speedF,0.1f,l_HIO.field_0x2c); + } + + if (field_0x710 == 0 && speedF < 0.2f) { + angle = shape_angle.y - mAngleFromPlayer; + + if (abs(angle) < 512) { + current.angle.y = shape_angle.y; + setActionMode(ACT_MOVE,0); + } + } + } + + cLib_addCalcAngleS2(&shape_angle.y,mAngleFromPlayer,8,1280); + + if (fopAcM_searchPlayerDistance(this) <= tmp && !way_gake_check()) { + if (!fopAcM_otherBgCheck(this,dComIfGp_getPlayer(0))) { + current.angle.y = shape_angle.y; + setActionMode(ACT_ATTACK,0); + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -906,8 +1029,37 @@ asm void daE_FZ_c::executeWait() { #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/executeWait__8daE_FZ_cFv.s" } #pragma pop +#endif /* 806BF8E8-806BFA64 001088 017C+00 1/1 0/0 0/0 .text executeMove__8daE_FZ_cFv */ +#ifdef NONMATCHING +// float literals +void daE_FZ_c::executeMove() { + switch (mActionPhase) { + case 0: + field_0x710 = l_HIO.field_0x08 + cM_rndFX(l_HIO.field_0x34); + mActionPhase = 1; + case 1: + cLib_addCalcAngleS2(¤t.angle.y,mAngleFromPlayer,8,256); + cLib_addCalc2(&speedF,l_HIO.field_0x1c,1.0f,3.0f); + + if (fopAcM_wayBgCheck(this, 200.0f,500.0f) != 0 || field_0x710 == 0) { + setActionMode(ACT_WAIT,0); + } + default: + if (way_gake_check()) { + speedF = 0; + setActionMode(ACT_WAIT,0); + } else { + shape_angle.y = current.angle.y; + + if (fopAcM_searchPlayerDistance(this) <= l_HIO.field_0x14) { + setActionMode(ACT_ATTACK,0); + } + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -916,6 +1068,7 @@ asm void daE_FZ_c::executeMove() { #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/executeMove__8daE_FZ_cFv.s" } #pragma pop +#endif /* ############################################################################################## */ /* 806C19B8-806C19BC 000080 0004+00 0/1 0/0 0/0 .rodata @4243 */ @@ -926,6 +1079,29 @@ COMPILER_STRIP_GATE(0x806C19B8, &lit_4243); #pragma pop /* 806BFA64-806BFB60 001204 00FC+00 1/1 0/0 0/0 .text executeAttack__8daE_FZ_cFv */ +#ifdef NONMATCHING +// float literals +void daE_FZ_c::executeAttack() { + switch (mActionPhase) { + case 0: + cLib_addCalcAngleS2(¤t.angle.y,fopAcM_searchPlayerAngleY(this),8,0x300); + if (way_gake_check() == 0) { + cLib_addCalc2(&speedF,l_HIO.field_0x20,0.7f,1.0f); + } else { + speedF = 0.0f; + } + default: + shape_angle.y = current.angle.y; + if (!(fopAcM_searchPlayerDistance(this) >= l_HIO.field_0x10)) { + if (fopAcM_otherBgCheck(this,dComIfGp_getPlayer(0)) == 0) { + return; + } + } + } + + setActionMode(ACT_WAIT,0); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -934,8 +1110,111 @@ asm void daE_FZ_c::executeAttack() { #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/executeAttack__8daE_FZ_cFv.s" } #pragma pop +#endif /* 806BFB60-806BFF94 001300 0434+00 2/1 0/0 0/0 .text executeDamage__8daE_FZ_cFv */ +#ifdef NONMATCHING +// float literals +void daE_FZ_c::executeDamage() { + cXyz pos; + pos.set(l_HIO.field_0x0c, l_HIO.field_0x0c, l_HIO.field_0x0c); + + switch(mActionPhase) { + case 0: + dComIfGp_particle_set(0x85b8,¤t.pos,&shape_angle,&pos); + dComIfGp_particle_set(0x85b9,¤t.pos,&shape_angle,&pos); + + if (field_0x714 != 3) { + field_0x564 = 25; + fopAcM_createItemFromEnemyID(field_0x564,¤t.pos,-1,-1,0,0,0,0); + } else { + if (cM_rnd() < 0.2f) { + fopAcM_createItem(¤t.pos,0,-1,-1,0,0,0); + } + } + fopAcM_delete(this); + break; + case 1: + f32 tmp = l_HIO.field_0x28; + speedF = tmp; + field_0x6fc = tmp; + case 5: + mStts.SetWeight(118); + current.angle.y < 0 ? field_0x704 = 0 : field_0x704 = 1; + mActionPhase = 2; + case 2: + if (mObjAcch.ChkGroundHit() && dComIfG_Bgsp().GetPolyAtt0(mObjAcch.m_gnd) == 8) { + tmp = 1.0f; + } else { + tmp = 0.3f; + } + + cLib_addCalc0(&speedF,0.1f,tmp); + + if (field_0x704 == 0) { + s16 value = 4096.0f - (4096.0f / field_0x6fc) * (field_0x6fc - speedF); + shape_angle.y -= value; + } else { + s16 value = 4096.0f - (4096.0f / field_0x6fc) * (field_0x6fc - speedF); + shape_angle.y += value; + } + + if (mObjAcch.ChkWallHit()) { + mLastWallHitAngle = mAcchCir.GetWallAngleY(); + setReflectAngle(); + mBoundSoundset(); + } + + if (speedF < 0.3f) { + current.angle.y = shape_angle.y; + mStts.SetWeight(100); + setActionMode(ACT_WAIT,0); + } + break; + case 3: + mAngleFromPlayer = fopAcM_searchPlayerAngleY(this); + if (current.angle.y < 0) { + field_0x704 = 0; + } + else { + field_0x704 = 1; + } + tmp = l_HIO.field_0x24; + speedF = tmp; + field_0x6fc = tmp; + mActionPhase = 4; + case 4: + if (field_0x704 == 0) { + s16 value = 4096.0f - (4096.0f / field_0x6fc) * (field_0x6fc - speedF); + shape_angle.y -= value; + } + else { + s16 value = 4096.0f - (4096.0f / field_0x6fc) * (field_0x6fc - speedF); + shape_angle.y += value; + } + + cLib_addCalcAngleS2(¤t.angle.y,mAngleFromPlayer,1,512); + cLib_addCalc0(&speedF,0.1f,0.1f); + + if (mObjAcch.ChkWallHit()) { + mLastWallHitAngle = mAcchCir.GetWallAngleY(); + setReflectAngle(); + mBoundSoundset(); + } + + if (speedF < 0.2f) { + current.angle.y = shape_angle.y; + setActionMode(ACT_ATTACK,0); + } + break; + case 6: + mHealth = 0; + if (field_0x710 == 1 || mObjAcch.ChkGroundHit()) { + mActionPhase = 0; + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -944,6 +1223,7 @@ asm void daE_FZ_c::executeDamage() { #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/executeDamage__8daE_FZ_cFv.s" } #pragma pop +#endif /* ############################################################################################## */ /* 806C19BC-806C19C0 000084 0004+00 0/0 0/0 0/0 .rodata @4322 */ @@ -982,6 +1262,74 @@ COMPILER_STRIP_GATE(0x806C19CC, &lit_4421); #pragma pop /* 806BFF94-806C0224 001734 0290+00 1/1 0/0 0/0 .text executeRollMove__8daE_FZ_cFv */ +#ifdef NONMATCHING +// float literals +void daE_FZ_c::executeRollMove() { + if (fopAcM_SearchByID(fopAcM_GetLinkId(this),&mpBlizzetaActor) == 0 || !mpBlizzetaActor) return; + u32 model_no = static_cast(mpBlizzetaActor)->getModelNo(); + + if (model_no < 4 || 6 < model_no) { + fopAcM_delete(this); + return; + } + + cXyz pos; + + s16 roll_angle = static_cast(mpBlizzetaActor)->getFrizadRollAngle(); + f32 mode_rarius = static_cast(mpBlizzetaActor)->getModeRarius(); + + mode_rarius = 100.0f + mode_rarius; + if (mode_rarius < 400.0f) + mode_rarius = 400.0f; + + switch (mActionPhase) { + case 0: + field_0x704 = 0; + speedF = 0.0f; + mRadiusBase = 0; + mActionPhase = 1; + field_0x710 = (20 - field_0x715) * 2; + case 1: + if (field_0x710 == 0) { + cLib_chaseF(&mRadiusBase,0.0f,0.03f); + } + + cLib_chaseAngleS(&field_0x704,1024,16); + pos = mpBlizzetaActor->current.pos; + + pos.x += (f32)(mode_rarius * cM_ssin(roll_angle + field_0x715 * 0xccc)); + pos.z += (f32)(mode_rarius * cM_scos(roll_angle + field_0x715 * 0xccc)); + + current.pos = pos; + u32 frizad_attack = static_cast(mpBlizzetaActor)->getFrizadAttack(); + + if (frizad_attack == 3) { + mActionPhase = 2; + speedF = 60.0f; + current.angle.y = cLib_targetAngleY(&static_cast(mpBlizzetaActor)->current.pos,¤t.pos); + } + break; + case 2: + cLib_chaseF(&mRadiusBase,1.0,0.1); + cLib_chaseAngleS(&field_0x704,512,16); + + if (mObjAcch.ChkWallHit() || !mObjAcch.ChkGroundHit()) { + setActionMode(ACT_DAMAGE,0); + mCreature.startCreatureSound(Z2SE_EN_FZ_DEATH,0,-1); + return; + } + + if (mSph2.ChkAtHit()) { + if ((fopAcM_GetName(mSph2.GetAtHitAc()) == PROC_ALINK) || mSph2.ChkAtShieldHit()) { + setActionMode(ACT_DAMAGE,0); + return; + } + } + } + + shape_angle.y += field_0x704; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -990,6 +1338,7 @@ asm void daE_FZ_c::executeRollMove() { #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/executeRollMove__8daE_FZ_cFv.s" } #pragma pop +#endif /* ############################################################################################## */ /* 806C19D0-806C19D4 000098 0004+00 0/2 0/0 0/0 .rodata @4517 */ @@ -1000,6 +1349,124 @@ COMPILER_STRIP_GATE(0x806C19D0, &lit_4517); #pragma pop /* 806C0224-806C06DC 0019C4 04B8+00 1/1 0/0 0/0 .text action__8daE_FZ_cFv */ +#ifdef NONMATCHING +// close. stack wrong, missing one clrrwi instruction, float literals +void daE_FZ_c::action() { + int linkSearch; + + if (field_0x714 == 1 && mObjAcch.ChkGroundHit()) { + fopAcM_OffStatus(this,0x4000); + field_0x714 = 0; + } + + if (!fopAcM_otherBgCheck(this,dComIfGp_getPlayer(0))) { + fopAcM_OnStatus(this,0); + mAttentionInfo.mFlags |= 4; + } else { + fopAcM_OffStatus(this,0); + mAttentionInfo.mFlags &= 0xfffffffb; + } + + linkSearch = false; + damage_check(); + + switch (mActionMode) { + case ACT_WAIT: + executeWait(); + break; + case ACT_MOVE: + executeMove(); + break; + case ACT_ATTACK: + executeAttack(); + linkSearch = 1; + break; + case ACT_DAMAGE: + executeDamage(); + break; + case ACT_ROLLMOVE: + executeRollMove(); + linkSearch = 1; + } + + mCreature.setLinkSearch(linkSearch); + fopAcM_posMoveF(this,mStts.GetCCMoveP()); + field_0x714 == 3 ? mAcchCir.SetWall(35.0f,70.0f) : mAcchCir.SetWall(35.0f,60.0f); + mObjAcch.CrrPos(dComIfG_Bgsp()); + + if (1 < mHealth) { + u32 speed = speedF; + + if (speed < 1) + speed = 1; + + mCreature.startCreatureSoundLevel(Z2SE_EN_FZ_MOVE,speed,-1); + + for (int i = 0; i < 4; i++) { + // missing clrrwi instruction here + cMtx_YrotS((MtxP)calc_mtx,current.angle.y + (i * 0x4000)); + + MtxPosition(&cXyz(0.0f,100.0f,70.0f), &field_0x67c[i]); + field_0x67c[i] += current.pos; + + MtxPosition(&cXyz(0.0f,100.0f,40.0f), &field_0x6ac[i]); + field_0x6ac[i] += current.pos; + } + + if (1 < mHealth && mAcchCir.ChkWallHit()) { + if (fopAcM_GetName(dComIfG_Bgsp().GetActorPointer(mAcchCir.GetBgIndex())) != PROC_BG) { + dBgS_LinChk lin_chk; + dBgS_LinChk lin_chk2; + + for (int i = 0; i < 2; i++) { + lin_chk.Set(&field_0x67c[i],&field_0x6ac[i], this); + lin_chk2.Set(&field_0x67c[i+2],&field_0x6ac[i+2], this); + + if (dComIfG_Bgsp().LineCross(&lin_chk)) { + if (dComIfG_Bgsp().LineCross(&lin_chk2)) { + deadnextSet(false); + break; + } + } + } + } + } + + if (field_0x714 != 3) { + if (mHealth > 1 && !mObjAcch.ChkGroundHit()) { + dBgS_GndChk gnd_chk; + cXyz pos; + + pos.set(current.pos); + pos.y += 300.0f; + gnd_chk.SetPos(&pos); + pos.y = dComIfG_Bgsp().GroundCross(&gnd_chk); + + if (pos.y != -1e+09f) { + field_0x710 = 0; + + if (current.pos.y - pos.y > 400.0f && field_0x713 == 0) { + field_0x713 = 1; + } + } else { + field_0x710 = 0xfa; + setActionMode(ACT_DAMAGE,6); + } + + if (field_0x713 != 0) { + field_0x713++; + + if (10 < field_0x713) { + setActionMode(ACT_DAMAGE,6); + } + } + } else { + field_0x713 = 0; + } + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1008,16 +1475,16 @@ asm void daE_FZ_c::action() { #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/action__8daE_FZ_cFv.s" } #pragma pop +#endif /* 806C06DC-806C0760 001E7C 0084+00 2/2 0/0 0/0 .text mtx_set__8daE_FZ_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daE_FZ_c::mtx_set() { - nofralloc -#include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/mtx_set__8daE_FZ_cFv.s" +void daE_FZ_c::mtx_set() { + mDoMtx_stack_c::transS(current.pos.x,current.pos.y,current.pos.z); + mDoMtx_stack_c::ZXYrotM(shape_angle); + mDoMtx_stack_c::scaleM(l_HIO.field_0x0c,l_HIO.field_0x0c,l_HIO.field_0x0c); + mDoMtx_stack_c::scaleM(mRadiusBase,mRadiusBase,mRadiusBase); + mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); } -#pragma pop /* ############################################################################################## */ /* 806C19D4-806C19D8 00009C 0004+00 0/1 0/0 0/0 .rodata @4562 */ @@ -1028,6 +1495,38 @@ COMPILER_STRIP_GATE(0x806C19D4, &lit_4562); #pragma pop /* 806C0760-806C08C4 001F00 0164+00 1/1 0/0 0/0 .text cc_set__8daE_FZ_cFv */ +#ifdef NONMATCHING +// float literals +void daE_FZ_c::cc_set() { + cXyz pos; + cXyz pos2; + + pos.set(0.0f,60.0f,0.0f); + mDoMtx_stack_c::multVec(&pos,&mEyePos); + mAttentionInfo.mPosition = mEyePos; + mAttentionInfo.mPosition.y += 25.0f; + + mDoMtx_stack_c::copy(mpModel->getBaseTRMtx()); + + pos.set(0.0f,40.0f,0.0f); + mDoMtx_stack_c::multVec(&pos,&pos2); + + mSph1.SetC(pos2); + mSph1.SetR(mRadiusBase * 60.0f); + + dComIfG_Ccsp()->Set(&mSph1); + + mDoMtx_stack_c::copy(mpModel->getBaseTRMtx()); + + pos.set(0.0f,25.0f,0.0f); + mDoMtx_stack_c::multVec(&pos,&pos2); + + mSph2.SetC(pos2); + mSph2.SetR(mRadiusBase * 40.0f); + + dComIfG_Ccsp()->Set(&mSph2); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1036,6 +1535,7 @@ asm void daE_FZ_c::cc_set() { #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/cc_set__8daE_FZ_cFv.s" } #pragma pop +#endif /* ############################################################################################## */ /* 806C19D8-806C19DC 0000A0 0004+00 0/1 0/0 0/0 .rodata @4627 */ @@ -1046,37 +1546,84 @@ COMPILER_STRIP_GATE(0x806C19D8, &lit_4627); #pragma pop /* 806C08C4-806C0B00 002064 023C+00 1/1 0/0 0/0 .text execute__8daE_FZ_cFv */ +#ifdef NONMATCHING +// float literals +s32 daE_FZ_c::execute() { + if (field_0x714 == 2) { + if (checkItemGet(IRONBALL,1) == 0) { + return 1; + } + + if (mAttentionInfo.field_0x0[2] == 0) { + mAttentionInfo.field_0x0[2] = 69; + fopAcM_SetGroup(this,2); + #if DEBUG + fopAcM_OnStatus(this,0); + #endif + mAttentionInfo.mFlags |= 4; + } + } + + if (field_0x710 != 0) + field_0x710 -= 1; + + if (field_0x711 != 0) + field_0x711 -= 1; + + if (field_0x712 != 0) + field_0x712 -= 1; + + action(); + mtx_set(); + cc_set(); + + mCreature.framework(0,dComIfGp_getReverb(fopAcM_GetRoomNo(this))); + + field_0x664 = current.pos - next.pos; + field_0x664 *= FLOAT_LABEL(lit_4627); + + for (int i = 0; i < 3; i++) { + field_0x71c[i] = dComIfGp_particle_set(field_0x71c[i],ice_name[i],¤t.pos,0,0); + JPABaseEmitter* emitter = dComIfGp_particle_getEmitter(field_0x71c[i]); + + if (emitter) { + mDoMtx_stack_c::copy(field_0x5b4->getBaseTRMtx()); + mDoMtx_stack_c::transM(FLOAT_LABEL(lit_3804),FLOAT_LABEL(lit_3833),FLOAT_LABEL(lit_3804)); + emitter->setGlobalSRTMatrix(mDoMtx_stack_c::get()); + emitter->setParticleCallBackPtr(dPa_control_c::getParticleTracePCB()); + emitter->setUserWork((u32)(&field_0x664)); + } + } + + return 1; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daE_FZ_c::execute() { +asm s32 daE_FZ_c::execute() { nofralloc #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/execute__8daE_FZ_cFv.s" } #pragma pop +#endif /* 806C0B00-806C0B20 0022A0 0020+00 1/0 0/0 0/0 .text daE_FZ_Execute__FP8daE_FZ_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daE_FZ_Execute(daE_FZ_c* param_0) { - nofralloc -#include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Execute__FP8daE_FZ_c.s" +static void daE_FZ_Execute(daE_FZ_c* i_this) { + i_this->execute(); } -#pragma pop /* 806C0B20-806C0B8C 0022C0 006C+00 0/0 0/0 1/1 .text demoDelete__8daE_FZ_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daE_FZ_c::demoDelete() { - nofralloc -#include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/demoDelete__8daE_FZ_cFv.s" +void daE_FZ_c::demoDelete() { + for (int i = 0; i < 3; i++) { + dComIfGp_particle_levelEmitterOnEventMove(field_0x71c[i]); + } + + fopAcM_delete(this); } -#pragma pop /* 806C0B8C-806C0B94 00232C 0008+00 1/0 0/0 0/0 .text daE_FZ_IsDelete__FP8daE_FZ_c */ -static bool daE_FZ_IsDelete(daE_FZ_c* param_0) { +static bool daE_FZ_IsDelete(daE_FZ_c* i_this) { return true; } @@ -1088,44 +1635,41 @@ SECTION_DEAD static char const* const stringBase_806C19F4 = "E_FZ"; #pragma pop /* 806C0B94-806C0C08 002334 0074+00 1/1 0/0 0/0 .text _delete__8daE_FZ_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daE_FZ_c::_delete() { - nofralloc -#include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/_delete__8daE_FZ_cFv.s" +s32 daE_FZ_c::_delete() { + dComIfG_resDelete(&mPhaseReq,"E_FZ"); + + if (field_0xc21 != 0) { + data_806C1BA0[0] = 0; + } + + if (heap) { + mCreature.deleteObject(); + } + + return 1; } -#pragma pop /* 806C0C08-806C0C28 0023A8 0020+00 1/0 0/0 0/0 .text daE_FZ_Delete__FP8daE_FZ_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daE_FZ_Delete(daE_FZ_c* param_0) { - nofralloc -#include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Delete__FP8daE_FZ_c.s" +static void daE_FZ_Delete(daE_FZ_c* i_this) { + i_this->_delete(); } -#pragma pop /* 806C0C28-806C0CB0 0023C8 0088+00 1/1 0/0 0/0 .text CreateHeap__8daE_FZ_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daE_FZ_c::CreateHeap() { - nofralloc -#include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/CreateHeap__8daE_FZ_cFv.s" +s32 daE_FZ_c::CreateHeap() { + J3DModelData* model_data = (J3DModelData*)dComIfG_getObjectRes("E_FZ", 3); + mpModel = mDoExt_J3DModel__create(model_data, 0, 0x11020203); + + if (mpModel == 0) { + return 0; + } + + return mInvisibleModel.create(mpModel, 1) != 0 ? 1 : 0; } -#pragma pop /* 806C0CB0-806C0CD0 002450 0020+00 1/1 0/0 0/0 .text useHeapInit__FP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void useHeapInit(fopAc_ac_c* param_0) { - nofralloc -#include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/useHeapInit__FP10fopAc_ac_c.s" +static int useHeapInit(fopAc_ac_c* i_this) { + return static_cast(i_this)->CreateHeap(); } -#pragma pop /* ############################################################################################## */ /* 806C19DC-806C19E0 0000A4 0004+00 0/1 0/0 0/0 .rodata @4847 */ @@ -1177,20 +1721,128 @@ SECTION_DEAD static char const* const stringBase_806C19F9 = "E_fz"; #pragma pop /* 806C0CD0-806C1208 002470 0538+00 1/1 0/0 0/0 .text create__8daE_FZ_cFv */ +#ifdef NONMATCHING +// float literals +s32 daE_FZ_c::create() { + fopAcM_SetupActor(this,daE_FZ_c); + + s32 phase = dComIfG_resLoad(&mPhaseReq,"E_FZ"); + if (phase == cPhs_COMPLEATE_e) { + if (!fopAcM_entrySolidHeap(this,useHeapInit,6480)) { + return cPhs_ERROR_e; + } + if (data_806C1BA0[0] == 0) { + data_806C1BA0[0] = 1; + field_0xc21 = 1; + l_HIO.field_0x04 = -1; + } + + mAttentionInfo.mFlags = 4; + mAttentionInfo.field_0x0[2] = 69; + + fopAcM_SetMtx(this,mpModel->getBaseTRMtx()); + fopAcM_SetMin(this,-200.0f,-200.0f,-200.0f); + fopAcM_SetMax(this,200.0f,200.0f,200.0f); + + mStts.Init(100,0,this); + mHealth = 80; + field_0x560 = 80; + + field_0x714 = fopAcM_GetParam(this); + field_0x715 = fopAcM_GetParam(this) >> 8; + + if (field_0x714 == 255) + field_0x714 = 0; + + if (field_0x714 == 1 || field_0x714 == 3) { + speed.y = cM_rndFX(10.0f) + 30.0f; + f32 rng = cM_rndFX(1.0f); + speedF = rng + 4.0f; + field_0x6fc = rng + 4.0f; + if (field_0x714 == 1) { + fopAcM_OnStatus(this,fopAcM_STATUS_UNK_004000); + } + } + + mObjAcch.Set(&fopAcM_GetPosition_p(this),&fopAcM_GetOldPosition_p(this), this, 1, &mAcchCir, &fopAcM_GetSpeed_p(this), 0, 0); + + if (field_0x714 == 3) { + mAcchCir.SetWall(35.0f,70.0f); + } + else { + mAcchCir.SetWall(20.0f,60.0f); + } + + mObjAcch.CrrPos(dComIfG_Bgsp()); + + mSph1.Set(cc_fz_src); + mSph1.SetStts(&mStts); + + mSph2.Set(cc_fz_at_src); + mSph2.SetStts(&mStts); + + mCreature.init(¤t.pos,&mEyePos,3,1); + mCreature.setEnemyName("E_fz"); + + mAtInfo.mpSound = &mCreature; + mAtInfo.mPowerType = 1; + + mGravity = -5.0f; + + shape_angle.z = 0; + shape_angle.x = 0; + + s16 random = cM_rndFX(10000.0f); + shape_angle.y = random; + current.angle.y = random; + + field_0x670.set(current.pos); + + for (int i = 0; i < 4; i++) { + field_0x67c[i].set(current.pos); + } + + if (field_0x714 == 2 && !checkItemGet(IRONBALL,1)) { + mAttentionInfo.field_0x0[2] = 0; + fopAcM_SetGroup(this,0); + fopAcM_OffStatus(this,0); + mAttentionInfo.mFlags &= 0xfffffffb; + } + + if (field_0x714 == 3) { + mRadiusBase = 0.0f; + mAttentionInfo.mFlags &= 0xfffffffb; + mSph2.SetAtType(AT_TYPE_CSTATUE_SWING); + mSph2.SetAtSpl(dCcG_At_Spl_UNK_1); + setActionMode(ACT_ROLLMOVE,0); + } else { + mSph2.SetAtMtrl(2); + mRadiusBase = 1.0f; + cM_rnd() < 0.5f ? setActionMode(ACT_WAIT,0) : setActionMode(ACT_MOVE,0); + } + + mtx_set(); + } + + return phase; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daE_FZ_c::create() { +asm s32 daE_FZ_c::create() { nofralloc #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/create__8daE_FZ_cFv.s" } #pragma pop +#endif /* 806C1208-806C1250 0029A8 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGSphFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGSph::~cM3dGSph() { +// asm cM3dGSph::~cM3dGSph() { +asm void __dt__8cM3dGSphFv() { nofralloc #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/__dt__8cM3dGSphFv.s" } @@ -1200,7 +1852,8 @@ asm cM3dGSph::~cM3dGSph() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cM3dGAab::~cM3dGAab() { +// asm cM3dGAab::~cM3dGAab() { +asm void __dt__8cM3dGAabFv() { nofralloc #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/__dt__8cM3dGAabFv.s" } @@ -1210,7 +1863,8 @@ asm cM3dGAab::~cM3dGAab() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dCcD_GStts::~dCcD_GStts() { +// asm dCcD_GStts::~dCcD_GStts() { +asm void __dt__10dCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/__dt__10dCcD_GSttsFv.s" } @@ -1220,7 +1874,8 @@ asm dCcD_GStts::~dCcD_GStts() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_ObjAcch::~dBgS_ObjAcch() { +// asm dBgS_ObjAcch::~dBgS_ObjAcch() { +asm void __dt__12dBgS_ObjAcchFv() { nofralloc #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/__dt__12dBgS_ObjAcchFv.s" } @@ -1230,32 +1885,30 @@ asm dBgS_ObjAcch::~dBgS_ObjAcch() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dBgS_AcchCir::~dBgS_AcchCir() { +// asm dBgS_AcchCir::~dBgS_AcchCir() { +asm void __dt__12dBgS_AcchCirFv() { nofralloc #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/__dt__12dBgS_AcchCirFv.s" } #pragma pop /* 806C13D4-806C13D8 002B74 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -cXyz::cXyz() { +// cXyz::cXyz() { +asm void __ct__4cXyzFv() { /* empty function */ } /* 806C13D8-806C13F8 002B78 0020+00 1/0 0/0 0/0 .text daE_FZ_Create__FP8daE_FZ_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void daE_FZ_Create(daE_FZ_c* param_0) { - nofralloc -#include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/daE_FZ_Create__FP8daE_FZ_c.s" +static void daE_FZ_Create(daE_FZ_c* i_this) { + i_this->create(); } -#pragma pop /* 806C13F8-806C1440 002B98 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cCcD_GStts::~cCcD_GStts() { +// asm cCcD_GStts::~cCcD_GStts() { +asm void __dt__10cCcD_GSttsFv() { nofralloc #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/__dt__10cCcD_GSttsFv.s" } @@ -1308,21 +1961,125 @@ static asm void func_806C14CC() { /* 806C14D4-806C18E8 002C74 0414+00 1/1 0/0 0/0 .text * setMidnaBindEffect__FP13fopEn_enemy_cP15Z2CreatureEnemyP4cXyzP4cXyz */ +#ifdef NONMATCHING +// gave up on this one, it's a mess. +// it appears to be actually defined in f_op_actor header and is in ~60 enemy actor TUs +// so needs to be solved eventually +static int setMidnaBindEffect(fopEn_enemy_c* i_actorP, Z2CreatureEnemy* i_creatureP, cXyz* param_2, + cXyz* param_3) { + int ret; + cXyz pos3; + daPy_py_c* player_actor = daPy_getPlayerActorClass(); + + if (player_actor->getMidnaActor() && player_actor->checkWolfLock(i_actorP)) { + cXyz pos; + bool darkworld_check = dKy_darkworld_check() != false; + + if (i_actorP->getMidnaBindMode() == 0) { + i_actorP->setMidnaBindMode(1); + + csXyz s_pos; + PSMTXCopy(player_actor->getMidnaActor()->getMtxHairTop(),mDoMtx_stack_c::get()); + mDoMtx_stack_c::multVec(&cXyz(100.0f,0.0f,0.0f),&pos3); + + pos = pos3 - *param_2; + + s_pos.y = cM_atan2s(pos.x,pos.z); + s_pos.x = -cM_atan2s(pos.y,JMAFastSqrt(pos.x * pos.x + pos.z * pos.z)); + s_pos.z = 0; + + s32 room_no = fopAcM_GetRoomNo(i_actorP); + + JPABaseEmitter* emitter = dComIfGp_particle_set( + 0x29b, + param_3, + &i_actorP->tevStr, + &s_pos, + param_3, + 0xff, + 0, + room_no, + &e_prim[darkworld_check], + &e_env[darkworld_check], + 0 + ); + + if (emitter) { + emitter->setGlobalParticleHeightScale(0.01f * pos.abs()); + } + + room_no = fopAcM_GetRoomNo(i_actorP); + + dComIfGp_particle_set( + 0x29c, + param_3, + &i_actorP->tevStr, + &i_actorP->shape_angle, + param_3, + 0xff, + 0, + room_no, + &e_prim[darkworld_check], + &e_env[darkworld_check], + 0 + ); + + i_creatureP->startCreatureSound(Z2SE_MIDNA_BIND_LOCK_ON, 0, -1); + } + int i = 0; + int j = 0; + int k = 0; + do { + u32* bind_id = i_actorP->getMidnaBindID(k); + s32 room_no = fopAcM_GetRoomNo(i_actorP); + + *bind_id = dComIfGp_particle_set( + *bind_id, + eff_id[i], + param_2, + &i_actorP->tevStr, + &i_actorP->shape_angle, + param_3, + 0xff, + 0, + room_no, + &e_prim[darkworld_check], + &e_env[darkworld_check], + 0 + ); + + i += 1; + j += 2; + k += 4; + } while( i < 3); + + i_creatureP->startCreatureSound(Z2SE_MIDNA_BIND_LOCK_SUS, 0, -1); + ret = 1; + } else { + i_actorP->setMidnaBindMode(0); + ret = 0; + } + + return ret; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void setMidnaBindEffect(fopEn_enemy_c* param_0, Z2CreatureEnemy* param_1, cXyz* param_2, +static asm int setMidnaBindEffect(fopEn_enemy_c* param_0, Z2CreatureEnemy* param_1, cXyz* param_2, cXyz* param_3) { nofralloc #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/setMidnaBindEffect__FP13fopEn_enemy_cP15Z2CreatureEnemyP4cXyzP4cXyz.s" } #pragma pop +#endif /* 806C18E8-806C1924 003088 003C+00 1/1 0/0 0/0 .text __dt__4cXyzFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm cXyz::~cXyz() { +// asm cXyz::~cXyz() { +asm void __dt__4cXyzFv() { nofralloc #include "asm/rel/d/a/e/d_a_e_fz/d_a_e_fz/__dt__4cXyzFv.s" } diff --git a/rel/d/a/e/d_a_e_nest/d_a_e_nest.cpp b/rel/d/a/e/d_a_e_nest/d_a_e_nest.cpp index dfdb7faf2c..ee15405aca 100644 --- a/rel/d/a/e/d_a_e_nest/d_a_e_nest.cpp +++ b/rel/d/a/e/d_a_e_nest/d_a_e_nest.cpp @@ -5,10 +5,7 @@ #include "rel/d/a/e/d_a_e_nest/d_a_e_nest.h" #include "rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" -#include "f_op/f_op_actor_mng.h" -#include "d/com/d_com_inf_game.h" #include "d/a/d_a_player.h" #include "d/d_bomb.h" #include "d/d_procname.h" diff --git a/rel/d/a/e/d_a_e_ph/d_a_e_ph.cpp b/rel/d/a/e/d_a_e_ph/d_a_e_ph.cpp index 9d4facd16f..96a1dc18fa 100644 --- a/rel/d/a/e/d_a_e_ph/d_a_e_ph.cpp +++ b/rel/d/a/e/d_a_e_ph/d_a_e_ph.cpp @@ -6,7 +6,6 @@ #include "rel/d/a/e/d_a_e_ph/d_a_e_ph.h" #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" -#include "d/com/d_com_inf_game.h" #include "d/s/d_s_play.h" #define PH_BMD 20 diff --git a/rel/d/a/e/d_a_e_pm/d_a_e_pm.cpp b/rel/d/a/e/d_a_e_pm/d_a_e_pm.cpp index ffb1e32dd1..b5ca07bd3f 100644 --- a/rel/d/a/e/d_a_e_pm/d_a_e_pm.cpp +++ b/rel/d/a/e/d_a_e_pm/d_a_e_pm.cpp @@ -4,7 +4,6 @@ // // #include "rel/d/a/e/d_a_e_pm/d_a_e_pm.h" -#include "dolphin/types.h" #include "d/cc/d_cc_d.h" #include "dol2asm.h" diff --git a/rel/d/a/e/d_a_e_sm2/d_a_e_sm2.cpp b/rel/d/a/e/d_a_e_sm2/d_a_e_sm2.cpp index a95887a1b7..b6e5cebd9f 100644 --- a/rel/d/a/e/d_a_e_sm2/d_a_e_sm2.cpp +++ b/rel/d/a/e/d_a_e_sm2/d_a_e_sm2.cpp @@ -4,7 +4,6 @@ // // #include "rel/d/a/e/d_a_e_sm2/d_a_e_sm2.h" -#include "dolphin/types.h" #include "d/cc/d_cc_d.h" #include "dol2asm.h" diff --git a/rel/d/a/e/d_a_e_yc/d_a_e_yc.cpp b/rel/d/a/e/d_a_e_yc/d_a_e_yc.cpp index 259e29d61a..1efcd180fb 100644 --- a/rel/d/a/e/d_a_e_yc/d_a_e_yc.cpp +++ b/rel/d/a/e/d_a_e_yc/d_a_e_yc.cpp @@ -4,7 +4,6 @@ // // #include "rel/d/a/e/d_a_e_yc/d_a_e_yc.h" -#include "dolphin/types.h" #include "d/cc/d_cc_d.h" #include "dol2asm.h" diff --git a/rel/d/a/e/d_a_e_yk/d_a_e_yk.cpp b/rel/d/a/e/d_a_e_yk/d_a_e_yk.cpp index e61d64121f..74af59d578 100644 --- a/rel/d/a/e/d_a_e_yk/d_a_e_yk.cpp +++ b/rel/d/a/e/d_a_e_yk/d_a_e_yk.cpp @@ -1,11 +1,12 @@ /** * @file d_a_e_yk.cpp + * * Enemy - Shadow Keese + * */ #include "rel/d/a/e/d_a_e_yk/d_a_e_yk.h" #include "d/a/d_a_player.h" -#include "d/d_procname.h" #include "d/s/d_s_play.h" #include "dol2asm.h" #include "dolphin/types.h" diff --git a/rel/d/a/e/d_a_e_ym/d_a_e_ym.cpp b/rel/d/a/e/d_a_e_ym/d_a_e_ym.cpp index c66c09188c..89f2dfe32c 100644 --- a/rel/d/a/e/d_a_e_ym/d_a_e_ym.cpp +++ b/rel/d/a/e/d_a_e_ym/d_a_e_ym.cpp @@ -5,9 +5,7 @@ #include "rel/d/a/e/d_a_e_ym/d_a_e_ym.h" #include "SSystem/SComponent/c_math.h" -#include "d/d_procname.h" #include "dol2asm.h" -#include "f_op/f_op_actor_mng.h" #include "global.h" // diff --git a/rel/d/a/e/d_a_e_ym_tag/d_a_e_ym_tag.cpp b/rel/d/a/e/d_a_e_ym_tag/d_a_e_ym_tag.cpp index 174c94db49..06cde444b0 100644 --- a/rel/d/a/e/d_a_e_ym_tag/d_a_e_ym_tag.cpp +++ b/rel/d/a/e/d_a_e_ym_tag/d_a_e_ym_tag.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/e/d_a_e_ym_tag/d_a_e_ym_tag.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" /* 80815DF8-80815E00 000078 0008+00 1/0 0/0 0/0 .text daE_YM_TAG_Draw__FP12daE_YM_TAG_c diff --git a/rel/d/a/kytag/d_a_kytag00/d_a_kytag00.cpp b/rel/d/a/kytag/d_a_kytag00/d_a_kytag00.cpp index 9035dc8ca5..1c734ac363 100644 --- a/rel/d/a/kytag/d_a_kytag00/d_a_kytag00.cpp +++ b/rel/d/a/kytag/d_a_kytag00/d_a_kytag00.cpp @@ -4,9 +4,7 @@ // #include "rel/d/a/kytag/d_a_kytag00/d_a_kytag00.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "dol2asm.h" // diff --git a/rel/d/a/kytag/d_a_kytag02/d_a_kytag02.cpp b/rel/d/a/kytag/d_a_kytag02/d_a_kytag02.cpp index 434cc93eff..604abc8cb8 100644 --- a/rel/d/a/kytag/d_a_kytag02/d_a_kytag02.cpp +++ b/rel/d/a/kytag/d_a_kytag02/d_a_kytag02.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/kytag/d_a_kytag02/d_a_kytag02.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" /* -80855AC0 000078 0008+00 1/0 0/0 0/0 .text daKytag02_Draw__FP13kytag02_class diff --git a/rel/d/a/kytag/d_a_kytag05/d_a_kytag05.cpp b/rel/d/a/kytag/d_a_kytag05/d_a_kytag05.cpp index 89899b3c5d..3c1945b35b 100644 --- a/rel/d/a/kytag/d_a_kytag05/d_a_kytag05.cpp +++ b/rel/d/a/kytag/d_a_kytag05/d_a_kytag05.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/kytag/d_a_kytag05/d_a_kytag05.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" /* 80528A58-80528A60 000078 0008+00 1/0 0/0 0/0 .text daKytag05_Draw__FP13kytag05_class diff --git a/rel/d/a/kytag/d_a_kytag06/d_a_kytag06.cpp b/rel/d/a/kytag/d_a_kytag06/d_a_kytag06.cpp index ee9df5cd67..f6058a2b83 100644 --- a/rel/d/a/kytag/d_a_kytag06/d_a_kytag06.cpp +++ b/rel/d/a/kytag/d_a_kytag06/d_a_kytag06.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/kytag/d_a_kytag06/d_a_kytag06.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_counter.h" #include "SSystem/SComponent/c_math.h" #include "d/com/d_com_inf_game.h" diff --git a/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.cpp b/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.cpp index b93a5ddeaf..a427e9a032 100644 --- a/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.cpp +++ b/rel/d/a/kytag/d_a_kytag07/d_a_kytag07.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/kytag/d_a_kytag07/d_a_kytag07.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_stage.h" -#include "d/d_procname.h" #include "f_op/f_op_overlap_mng.h" /* 8085A278-8085A280 000078 0008+00 1/0 0/0 0/0 .text daKytag07_Draw__FP13kytag07_class diff --git a/rel/d/a/kytag/d_a_kytag08/d_a_kytag08.cpp b/rel/d/a/kytag/d_a_kytag08/d_a_kytag08.cpp index ee9d536f50..7d9f5c4e12 100644 --- a/rel/d/a/kytag/d_a_kytag08/d_a_kytag08.cpp +++ b/rel/d/a/kytag/d_a_kytag08/d_a_kytag08.cpp @@ -5,7 +5,6 @@ #include "rel/d/a/kytag/d_a_kytag08/d_a_kytag08.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "dol2asm.h" // diff --git a/rel/d/a/kytag/d_a_kytag09/d_a_kytag09.cpp b/rel/d/a/kytag/d_a_kytag09/d_a_kytag09.cpp index be9d65673c..6981384a90 100644 --- a/rel/d/a/kytag/d_a_kytag09/d_a_kytag09.cpp +++ b/rel/d/a/kytag/d_a_kytag09/d_a_kytag09.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/kytag/d_a_kytag09/d_a_kytag09.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/kytag/d_a_kytag10/d_a_kytag10.cpp b/rel/d/a/kytag/d_a_kytag10/d_a_kytag10.cpp index 2f86a8a36f..a19d3f788e 100644 --- a/rel/d/a/kytag/d_a_kytag10/d_a_kytag10.cpp +++ b/rel/d/a/kytag/d_a_kytag10/d_a_kytag10.cpp @@ -6,8 +6,6 @@ #include "rel/d/a/kytag/d_a_kytag10/d_a_kytag10.h" #include "d/com/d_com_inf_game.h" #include "d/d_path.h" -#include "d/d_procname.h" -#include "d/kankyo/d_kankyo_rain.h" #include "dol2asm.h" // diff --git a/rel/d/a/kytag/d_a_kytag11/d_a_kytag11.cpp b/rel/d/a/kytag/d_a_kytag11/d_a_kytag11.cpp index 8b1683f997..734fbb3402 100644 --- a/rel/d/a/kytag/d_a_kytag11/d_a_kytag11.cpp +++ b/rel/d/a/kytag/d_a_kytag11/d_a_kytag11.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/kytag/d_a_kytag11/d_a_kytag11.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/com/d_com_inf_game.h" #include "d/d_procname.h" #include "d/kankyo/d_kankyo_static.h" diff --git a/rel/d/a/kytag/d_a_kytag14/d_a_kytag14.cpp b/rel/d/a/kytag/d_a_kytag14/d_a_kytag14.cpp index db686e7147..4d1ae65561 100644 --- a/rel/d/a/kytag/d_a_kytag14/d_a_kytag14.cpp +++ b/rel/d/a/kytag/d_a_kytag14/d_a_kytag14.cpp @@ -5,9 +5,7 @@ */ #include "rel/d/a/kytag/d_a_kytag14/d_a_kytag14.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" /* 80529998-805299A0 000078 0008+00 1/0 0/0 0/0 .text daKytag14_Draw__FP13kytag14_class diff --git a/rel/d/a/kytag/d_a_kytag15/d_a_kytag15.cpp b/rel/d/a/kytag/d_a_kytag15/d_a_kytag15.cpp index 00df251fcb..3c8c356f21 100644 --- a/rel/d/a/kytag/d_a_kytag15/d_a_kytag15.cpp +++ b/rel/d/a/kytag/d_a_kytag15/d_a_kytag15.cpp @@ -5,7 +5,6 @@ #include "rel/d/a/kytag/d_a_kytag15/d_a_kytag15.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/kytag/d_a_kytag16/d_a_kytag16.cpp b/rel/d/a/kytag/d_a_kytag16/d_a_kytag16.cpp index 2d1d981c68..cd7641bfc4 100644 --- a/rel/d/a/kytag/d_a_kytag16/d_a_kytag16.cpp +++ b/rel/d/a/kytag/d_a_kytag16/d_a_kytag16.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/kytag/d_a_kytag16/d_a_kytag16.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_counter.h" #include "SSystem/SComponent/c_math.h" #include "d/com/d_com_inf_game.h" diff --git a/rel/d/a/kytag/d_a_kytag17/d_a_kytag17.cpp b/rel/d/a/kytag/d_a_kytag17/d_a_kytag17.cpp index 17f7f5850e..6e5835a27b 100644 --- a/rel/d/a/kytag/d_a_kytag17/d_a_kytag17.cpp +++ b/rel/d/a/kytag/d_a_kytag17/d_a_kytag17.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/kytag/d_a_kytag17/d_a_kytag17.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 8046DB58-8046DB60 000078 0008+00 1/0 0/0 0/0 .text daKytag17_Draw__FP13kytag17_class diff --git a/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.cpp b/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.cpp index 909c5c539d..e278faf831 100644 --- a/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.cpp +++ b/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.cpp @@ -4,11 +4,8 @@ // #include "rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.h" -#include "JSystem/JKernel/JKRHeap.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "SSystem/SComponent/c_math.h" -#include "f_op/f_op_actor_mng.h" -#include "d/d_procname.h" #include "dol2asm.h" #include "dolphin/types.h" diff --git a/rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.cpp b/rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.cpp index fc2094f2e4..dd68820eb7 100644 --- a/rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.cpp +++ b/rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.cpp @@ -1,10 +1,8 @@ // Translation Unit: d_a_npc_fish #include "rel/d/a/npc/d_a_npc_fish/d_a_npc_fish.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "dol2asm.h" /* 80542178-80542180 000078 0008+00 1/0 0/0 0/0 .text daNpc_Fish_Draw__FP14npc_fish_class */ diff --git a/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.cpp b/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.cpp index 692ff83f00..4c1a65fa39 100644 --- a/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.cpp +++ b/rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.cpp @@ -4,13 +4,7 @@ // #include "rel/d/a/npc/d_a_npc_ne/d_a_npc_ne.h" -#include "SSystem/SComponent/c_math.h" #include "SSystem/SComponent/c_counter.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "JSystem/JUtility/JUTReport.h" -#include "f_op/f_op_actor_mng.h" -#include "f_op/f_op_kankyo_mng.h" -#include "c/c_damagereaction.h" #include "d/com/d_com_inf_game.h" #include "d/a/d_a_player.h" #include "d/d_procname.h" diff --git a/rel/d/a/npc/d_a_npc_the/d_a_npc_the.cpp b/rel/d/a/npc/d_a_npc_the/d_a_npc_the.cpp index 229f057d21..dfacbc35a2 100644 --- a/rel/d/a/npc/d_a_npc_the/d_a_npc_the.cpp +++ b/rel/d/a/npc/d_a_npc_the/d_a_npc_the.cpp @@ -4,9 +4,6 @@ // #include "rel/d/a/npc/d_a_npc_the/d_a_npc_the.h" -#include "SSystem/SComponent/c_math.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JKernel/JKRHeap.h" #include "rel/d/a/tag/d_a_tag_evtarea/d_a_tag_evtarea.h" #include "dol2asm.h" diff --git a/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.cpp b/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.cpp index 2173336592..affebb5245 100644 --- a/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.cpp +++ b/rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.cpp @@ -4,7 +4,6 @@ // // #include "rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h" -#include "dolphin/types.h" #include "d/cc/d_cc_d.h" #include "dol2asm.h" diff --git a/rel/d/a/npc/d_a_npc_tr/d_a_npc_tr.cpp b/rel/d/a/npc/d_a_npc_tr/d_a_npc_tr.cpp index ef7d0042ca..798e538b73 100644 --- a/rel/d/a/npc/d_a_npc_tr/d_a_npc_tr.cpp +++ b/rel/d/a/npc/d_a_npc_tr/d_a_npc_tr.cpp @@ -6,7 +6,6 @@ #include "rel/d/a/npc/d_a_npc_tr/d_a_npc_tr.h" #include "dol2asm.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_mtx.h" // diff --git a/rel/d/a/obj/d_a_obj_barDesk/d_a_obj_barDesk.cpp b/rel/d/a/obj/d_a_obj_barDesk/d_a_obj_barDesk.cpp index ddd0739659..e8512012e5 100644 --- a/rel/d/a/obj/d_a_obj_barDesk/d_a_obj_barDesk.cpp +++ b/rel/d/a/obj/d_a_obj_barDesk/d_a_obj_barDesk.cpp @@ -4,9 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_barDesk/d_a_obj_barDesk.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor.h" -#include "f_op/f_op_actor_mng.h" #include "d/d_procname.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" diff --git a/rel/d/a/obj/d_a_obj_bbox/d_a_obj_bbox.cpp b/rel/d/a/obj/d_a_obj_bbox/d_a_obj_bbox.cpp index 964552e5ef..4802adb45a 100644 --- a/rel/d/a/obj/d_a_obj_bbox/d_a_obj_bbox.cpp +++ b/rel/d/a/obj/d_a_obj_bbox/d_a_obj_bbox.cpp @@ -1,166 +1,165 @@ -/** - * d_a_obj_bbox.cpp - * Object - Breakable Wooden Box - */ - -#include "rel/d/a/obj/d_a_obj_bbox/d_a_obj_bbox.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" - -/* 80BAD474-80BAD4B8 000000 0044+00 2/2 0/0 0/0 .rodata l_cyl_src */ -const static dCcD_SrcCyl l_cyl_src = { - { - {0x0, {{0x0, 0x0, 0x1f}, {0xd8000000, 0x11}, 0x78}}, // mObj - {dCcD_SE_NONE, 0x1, 0x0, 0x0, 0x0}, // mGObjAt - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x6}, // mGObjTg - {0x0}, // mGObjCo - }, // mObjInf - { - {0.0f, 0.0f, 0.0f}, // mCenter - 90.0f, // mRadius - 100.0f // mHeight - } // mCyl -}; - -/* 80BAD4D4-80BAD4D8 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ -static char* l_arcName = "M_BBox"; - -/* 80BACD38-80BACD74 000078 003C+00 1/1 0/0 0/0 .text initBaseMtx__11daObjBBox_cFv */ -void daObjBBox_c::initBaseMtx() { - mpModel->setBaseScale(scale); - setBaseMtx(); -} - -/* 80BACD74-80BACDD8 0000B4 0064+00 2/2 0/0 0/0 .text setBaseMtx__11daObjBBox_cFv */ -void daObjBBox_c::setBaseMtx() { - mDoMtx_stack_c::transS(current.pos); - mDoMtx_stack_c::YrotM(shape_angle.y); - mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); - MTXCopy(mDoMtx_stack_c::get(), mBgMtx); -} - -/* 80BACDD8-80BACE50 000118 0078+00 1/0 0/0 0/0 .text Create__11daObjBBox_cFv */ -int daObjBBox_c::Create() { - initBaseMtx(); - fopAcM_SetMtx(this, mpModel->mBaseTransformMtx); - mStts.Init(0xff, 0xff, this); - mCyl.Set(l_cyl_src); - mCyl.SetStts(&mStts); - fopAcM_setCullSizeBox2(this, mpModel->getModelData()); - return 1; -} - -/* 80BACE50-80BACEC0 000190 0070+00 1/0 0/0 0/0 .text CreateHeap__11daObjBBox_cFv */ -int daObjBBox_c::CreateHeap() { - J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, 4); - mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); - return mpModel != NULL ? 1 : 0; -} - -/* 80BACEC0-80BAD030 000200 0170+00 1/1 0/0 0/0 .text create1st__11daObjBBox_cFv */ -int daObjBBox_c::create1st() { - fopAcM_SetupActor(this, daObjBBox_c); - - if (fopAcM_isSwitch(this, getSwNo())) { - return cPhs_ERROR_e; - } - int phase = dComIfG_resLoad(&mPhaseReq, l_arcName); - if (phase == cPhs_COMPLEATE_e) { - phase = MoveBGCreate(l_arcName, 7, NULL, 0xC00, NULL); - if (phase == cPhs_ERROR_e) { - return phase; - } - } - return phase; -} - -/* 80BAD0C0-80BAD234 000400 0174+00 1/0 0/0 0/0 .text Execute__11daObjBBox_cFPPA3_A4_f */ -int daObjBBox_c::Execute(Mtx** i_mtx) { - static const u16 particle_id[5] = { - 0x83B0, 0x83B1, 0x83B2, 0x83B3, 0x83B4, - }; - if (mCyl.ChkTgHit() != 0) { - cCcD_Obj* hitObj = mCyl.GetTgHitObj(); - if (hitObj != NULL) { - if (hitObj->ChkAtType(0xd8000000)) { - for (int i = 0; i < 5; i++) { - dComIfGp_particle_set(particle_id[i], ¤t.pos, NULL, &scale, 0xff, NULL, - -1, NULL, NULL, NULL); - } - fopAcM_seStart(this, Z2SE_OBJ_WOODBOX_BREAK, 0); - fopAcM_onSwitch(this, getSwNo()); - fopAcM_delete(this); - } - } - } - *i_mtx = &mBgMtx; - setBaseMtx(); - mCyl.SetC(current.pos); - dComIfG_Ccsp()->Set(&mCyl); - return 1; -} - -/* 80BAD234-80BAD2D8 000574 00A4+00 1/0 0/0 0/0 .text Draw__11daObjBBox_cFv */ -int daObjBBox_c::Draw() { - g_env_light.settingTevStruct(0x10, ¤t.pos, &tevStr); - g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr); - dComIfGd_setListBG(); - mDoExt_modelUpdateDL(mpModel); - dComIfGd_setList(); - return 1; -} - -/* 80BAD2D8-80BAD30C 000618 0034+00 1/0 0/0 0/0 .text Delete__11daObjBBox_cFv */ -int daObjBBox_c::Delete() { - dComIfG_resDelete(&mPhaseReq, l_arcName); - return 1; -} - -/* 80BAD30C-80BAD400 00064C 00F4+00 1/0 0/0 0/0 .text daObjBBox_create1st__FP11daObjBBox_c */ -static int daObjBBox_create1st(daObjBBox_c* i_this) { - fopAcM_SetupActor(i_this, daObjBBox_c); - return i_this->create1st(); -} - -/* 80BAD400-80BAD420 000740 0020+00 1/0 0/0 0/0 .text daObjBBox_MoveBGDelete__FP11daObjBBox_c */ -static int daObjBBox_MoveBGDelete(daObjBBox_c* i_this) { - return i_this->MoveBGDelete(); -} - -/* 80BAD420-80BAD440 000760 0020+00 1/0 0/0 0/0 .text daObjBBox_MoveBGExecute__FP11daObjBBox_c */ -static int daObjBBox_MoveBGExecute(daObjBBox_c* i_this) { - return i_this->MoveBGExecute(); -} - -/* 80BAD440-80BAD46C 000780 002C+00 1/0 0/0 0/0 .text daObjBBox_MoveBGDraw__FP11daObjBBox_c */ -static int daObjBBox_MoveBGDraw(daObjBBox_c* i_this) { - return i_this->MoveBGDraw(); -} - -/* 80BAD4D8-80BAD4F8 -00001 0020+00 1/0 0/0 0/0 .data daObjBBox_METHODS */ -static actor_method_class daObjBBox_METHODS = { - (process_method_func)daObjBBox_create1st, - (process_method_func)daObjBBox_MoveBGDelete, - (process_method_func)daObjBBox_MoveBGExecute, - (process_method_func)NULL, - (process_method_func)daObjBBox_MoveBGDraw, -}; - -/* 80BAD4F8-80BAD528 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_BBox */ -extern actor_process_profile_definition g_profile_Obj_BBox = { - fpcLy_CURRENT_e, - 3, - fpcPi_CURRENT_e, - PROC_Obj_BBox, - &g_fpcLf_Method.mBase, - sizeof(daObjBBox_c), - 0, - 0, - &g_fopAc_Method.base, - 0x1F3, - &daObjBBox_METHODS, - 0x40100, - fopAc_ACTOR_e, - fopAc_CULLBOX_CUSTOM_e, -}; +/** + * d_a_obj_bbox.cpp + * Object - Breakable Wooden Box + */ + +#include "rel/d/a/obj/d_a_obj_bbox/d_a_obj_bbox.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_procname.h" + +/* 80BAD474-80BAD4B8 000000 0044+00 2/2 0/0 0/0 .rodata l_cyl_src */ +const static dCcD_SrcCyl l_cyl_src = { + { + {0x0, {{0x0, 0x0, 0x1f}, {0xd8000000, 0x11}, 0x78}}, // mObj + {dCcD_SE_NONE, 0x1, 0x0, 0x0, 0x0}, // mGObjAt + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x6}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf + { + {0.0f, 0.0f, 0.0f}, // mCenter + 90.0f, // mRadius + 100.0f // mHeight + } // mCyl +}; + +/* 80BAD4D4-80BAD4D8 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ +static char* l_arcName = "M_BBox"; + +/* 80BACD38-80BACD74 000078 003C+00 1/1 0/0 0/0 .text initBaseMtx__11daObjBBox_cFv */ +void daObjBBox_c::initBaseMtx() { + mpModel->setBaseScale(scale); + setBaseMtx(); +} + +/* 80BACD74-80BACDD8 0000B4 0064+00 2/2 0/0 0/0 .text setBaseMtx__11daObjBBox_cFv */ +void daObjBBox_c::setBaseMtx() { + mDoMtx_stack_c::transS(current.pos); + mDoMtx_stack_c::YrotM(shape_angle.y); + mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); + MTXCopy(mDoMtx_stack_c::get(), mBgMtx); +} + +/* 80BACDD8-80BACE50 000118 0078+00 1/0 0/0 0/0 .text Create__11daObjBBox_cFv */ +int daObjBBox_c::Create() { + initBaseMtx(); + fopAcM_SetMtx(this, mpModel->mBaseTransformMtx); + mStts.Init(0xff, 0xff, this); + mCyl.Set(l_cyl_src); + mCyl.SetStts(&mStts); + fopAcM_setCullSizeBox2(this, mpModel->getModelData()); + return 1; +} + +/* 80BACE50-80BACEC0 000190 0070+00 1/0 0/0 0/0 .text CreateHeap__11daObjBBox_cFv */ +int daObjBBox_c::CreateHeap() { + J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, 4); + mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); + return mpModel != NULL ? 1 : 0; +} + +/* 80BACEC0-80BAD030 000200 0170+00 1/1 0/0 0/0 .text create1st__11daObjBBox_cFv */ +int daObjBBox_c::create1st() { + fopAcM_SetupActor(this, daObjBBox_c); + + if (fopAcM_isSwitch(this, getSwNo())) { + return cPhs_ERROR_e; + } + int phase = dComIfG_resLoad(&mPhaseReq, l_arcName); + if (phase == cPhs_COMPLEATE_e) { + phase = MoveBGCreate(l_arcName, 7, NULL, 0xC00, NULL); + if (phase == cPhs_ERROR_e) { + return phase; + } + } + return phase; +} + +/* 80BAD0C0-80BAD234 000400 0174+00 1/0 0/0 0/0 .text Execute__11daObjBBox_cFPPA3_A4_f */ +int daObjBBox_c::Execute(Mtx** i_mtx) { + static const u16 particle_id[5] = { + 0x83B0, 0x83B1, 0x83B2, 0x83B3, 0x83B4, + }; + if (mCyl.ChkTgHit() != 0) { + cCcD_Obj* hitObj = mCyl.GetTgHitObj(); + if (hitObj != NULL) { + if (hitObj->ChkAtType(0xd8000000)) { + for (int i = 0; i < 5; i++) { + dComIfGp_particle_set(particle_id[i], ¤t.pos, NULL, &scale, 0xff, NULL, + -1, NULL, NULL, NULL); + } + fopAcM_seStart(this, Z2SE_OBJ_WOODBOX_BREAK, 0); + fopAcM_onSwitch(this, getSwNo()); + fopAcM_delete(this); + } + } + } + *i_mtx = &mBgMtx; + setBaseMtx(); + mCyl.SetC(current.pos); + dComIfG_Ccsp()->Set(&mCyl); + return 1; +} + +/* 80BAD234-80BAD2D8 000574 00A4+00 1/0 0/0 0/0 .text Draw__11daObjBBox_cFv */ +int daObjBBox_c::Draw() { + g_env_light.settingTevStruct(0x10, ¤t.pos, &tevStr); + g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr); + dComIfGd_setListBG(); + mDoExt_modelUpdateDL(mpModel); + dComIfGd_setList(); + return 1; +} + +/* 80BAD2D8-80BAD30C 000618 0034+00 1/0 0/0 0/0 .text Delete__11daObjBBox_cFv */ +int daObjBBox_c::Delete() { + dComIfG_resDelete(&mPhaseReq, l_arcName); + return 1; +} + +/* 80BAD30C-80BAD400 00064C 00F4+00 1/0 0/0 0/0 .text daObjBBox_create1st__FP11daObjBBox_c */ +static int daObjBBox_create1st(daObjBBox_c* i_this) { + fopAcM_SetupActor(i_this, daObjBBox_c); + return i_this->create1st(); +} + +/* 80BAD400-80BAD420 000740 0020+00 1/0 0/0 0/0 .text daObjBBox_MoveBGDelete__FP11daObjBBox_c */ +static int daObjBBox_MoveBGDelete(daObjBBox_c* i_this) { + return i_this->MoveBGDelete(); +} + +/* 80BAD420-80BAD440 000760 0020+00 1/0 0/0 0/0 .text daObjBBox_MoveBGExecute__FP11daObjBBox_c */ +static int daObjBBox_MoveBGExecute(daObjBBox_c* i_this) { + return i_this->MoveBGExecute(); +} + +/* 80BAD440-80BAD46C 000780 002C+00 1/0 0/0 0/0 .text daObjBBox_MoveBGDraw__FP11daObjBBox_c */ +static int daObjBBox_MoveBGDraw(daObjBBox_c* i_this) { + return i_this->MoveBGDraw(); +} + +/* 80BAD4D8-80BAD4F8 -00001 0020+00 1/0 0/0 0/0 .data daObjBBox_METHODS */ +static actor_method_class daObjBBox_METHODS = { + (process_method_func)daObjBBox_create1st, + (process_method_func)daObjBBox_MoveBGDelete, + (process_method_func)daObjBBox_MoveBGExecute, + (process_method_func)NULL, + (process_method_func)daObjBBox_MoveBGDraw, +}; + +/* 80BAD4F8-80BAD528 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_BBox */ +extern actor_process_profile_definition g_profile_Obj_BBox = { + fpcLy_CURRENT_e, + 3, + fpcPi_CURRENT_e, + PROC_Obj_BBox, + &g_fpcLf_Method.mBase, + sizeof(daObjBBox_c), + 0, + 0, + &g_fopAc_Method.base, + 0x1F3, + &daObjBBox_METHODS, + 0x40100, + fopAc_ACTOR_e, + fopAc_CULLBOX_CUSTOM_e, +}; diff --git a/rel/d/a/obj/d_a_obj_bed/d_a_obj_bed.cpp b/rel/d/a/obj/d_a_obj_bed/d_a_obj_bed.cpp index 13695b1d3c..ea07306d43 100644 --- a/rel/d/a/obj/d_a_obj_bed/d_a_obj_bed.cpp +++ b/rel/d/a/obj/d_a_obj_bed/d_a_obj_bed.cpp @@ -4,10 +4,6 @@ // #include "rel/d/a/obj/d_a_obj_bed/d_a_obj_bed.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/bg/d_bg_s.h" -#include "d/d_drawlist.h" -#include "f_op/f_op_actor_mng.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" #include "m_Do/m_Do_ext.h" diff --git a/rel/d/a/obj/d_a_obj_bk_leaf/d_a_obj_bk_leaf.cpp b/rel/d/a/obj/d_a_obj_bk_leaf/d_a_obj_bk_leaf.cpp index 426d9949c2..9892bf19ea 100644 --- a/rel/d/a/obj/d_a_obj_bk_leaf/d_a_obj_bk_leaf.cpp +++ b/rel/d/a/obj/d_a_obj_bk_leaf/d_a_obj_bk_leaf.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_bk_leaf/d_a_obj_bk_leaf.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.h" /* 80BB60D8-80BB60F8 000078 0020+00 1/1 0/0 0/0 .text CheckCreateHeap__FP10fopAc_ac_c */ diff --git a/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf.cpp b/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf.cpp index 33d563d6c1..53e570f548 100644 --- a/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf.cpp +++ b/rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_bombf/d_a_obj_bombf.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80BBAE84-80BBAE8C 000000 0006+02 3/3 0/0 0/0 .rodata l_arcName */ diff --git a/rel/d/a/obj/d_a_obj_bosswarp/d_a_obj_bosswarp.cpp b/rel/d/a/obj/d_a_obj_bosswarp/d_a_obj_bosswarp.cpp index 443e2d2934..11a82e6244 100644 --- a/rel/d/a/obj/d_a_obj_bosswarp/d_a_obj_bosswarp.cpp +++ b/rel/d/a/obj/d_a_obj_bosswarp/d_a_obj_bosswarp.cpp @@ -4,11 +4,7 @@ */ #include "rel/d/a/obj/d_a_obj_bosswarp/d_a_obj_bosswarp.h" -#include "rel/d/a/obj/d_a_obj_ystone/d_a_obj_ystone.h" #include "rel/d/a/d_a_midna/d_a_midna.h" -#include "SSystem/SComponent/c_math.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/com/d_com_inf_game.h" #include "d/a/d_a_player.h" #include "d/d_procname.h" #include "dol2asm.h" diff --git a/rel/d/a/obj/d_a_obj_bsGate/d_a_obj_bsGate.cpp b/rel/d/a/obj/d_a_obj_bsGate/d_a_obj_bsGate.cpp index 403933efb3..dcf08b015f 100644 --- a/rel/d/a/obj/d_a_obj_bsGate/d_a_obj_bsGate.cpp +++ b/rel/d/a/obj/d_a_obj_bsGate/d_a_obj_bsGate.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_bsGate/d_a_obj_bsGate.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.cpp b/rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.cpp index 240ff8ea52..3379dc8f57 100644 --- a/rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.cpp +++ b/rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.cpp @@ -7,11 +7,8 @@ #include "rel/d/a/obj/d_a_obj_swBallA/d_a_obj_swBallA.h" #include "rel/d/a/obj/d_a_obj_swBallB/d_a_obj_swBallB.h" #include "rel/d/a/tag/d_a_tag_setBall/d_a_tag_setBall.h" -#include "d/d_stage.h" #include "d/d_lib.h" #include "dol2asm.h" -#include "dolphin/os.h" -#include "d/d_procname.h" #include "SSystem/SComponent/c_math.h" #include "JSystem/JKernel/JKRHeap.h" diff --git a/rel/d/a/obj/d_a_obj_catdoor/d_a_obj_catdoor.cpp b/rel/d/a/obj/d_a_obj_catdoor/d_a_obj_catdoor.cpp index 58d0b59b5c..42e9e2e838 100644 --- a/rel/d/a/obj/d_a_obj_catdoor/d_a_obj_catdoor.cpp +++ b/rel/d/a/obj/d_a_obj_catdoor/d_a_obj_catdoor.cpp @@ -5,7 +5,6 @@ #include "rel/d/a/obj/d_a_obj_catdoor/d_a_obj_catdoor.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" // // Declarations: diff --git a/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.cpp b/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.cpp index 6e88d6e7db..a5ceb8462b 100644 --- a/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.cpp +++ b/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/bg/d_bg_w.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_cdoor/d_a_obj_cdoor.cpp b/rel/d/a/obj/d_a_obj_cdoor/d_a_obj_cdoor.cpp index b57bdcb92a..13e3b5f676 100644 --- a/rel/d/a/obj/d_a_obj_cdoor/d_a_obj_cdoor.cpp +++ b/rel/d/a/obj/d_a_obj_cdoor/d_a_obj_cdoor.cpp @@ -5,8 +5,6 @@ #include "rel/d/a/obj/d_a_obj_cdoor/d_a_obj_cdoor.h" #include "rel/d/a/obj/d_a_obj_wchain/d_a_obj_wchain.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_chandelier/d_a_obj_chandelier.cpp b/rel/d/a/obj/d_a_obj_chandelier/d_a_obj_chandelier.cpp index 869cbd7281..4d239e9323 100644 --- a/rel/d/a/obj/d_a_obj_chandelier/d_a_obj_chandelier.cpp +++ b/rel/d/a/obj/d_a_obj_chandelier/d_a_obj_chandelier.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_chandelier/d_a_obj_chandelier.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_cho/d_a_obj_cho.cpp b/rel/d/a/obj/d_a_obj_cho/d_a_obj_cho.cpp index 2d0aa5c4b9..04ac3ef3a8 100644 --- a/rel/d/a/obj/d_a_obj_cho/d_a_obj_cho.cpp +++ b/rel/d/a/obj/d_a_obj_cho/d_a_obj_cho.cpp @@ -5,10 +5,7 @@ #include "rel/d/a/obj/d_a_obj_cho/d_a_obj_cho.h" #include "SSystem/SComponent/c_math.h" -#include "JSystem/JKernel/JKRHeap.h" #include "m_Do/m_Do_lib.h" -#include "f_op/f_op_actor_mng.h" -#include "d/com/d_com_inf_game.h" #include "d/menu/d_menu_insect.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.cpp b/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.cpp index 517e54c8e5..a22d3ba831 100644 --- a/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.cpp +++ b/rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_cowdoor/d_a_obj_cowdoor.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80BCC7F8-80BCC86C 000078 0074+00 2/2 0/0 0/0 .text setBaseMtx__11daCowdoor_cFv */ diff --git a/rel/d/a/obj/d_a_obj_crope/d_a_obj_crope.cpp b/rel/d/a/obj/d_a_obj_crope/d_a_obj_crope.cpp index fa6a28ec25..33fac182ff 100644 --- a/rel/d/a/obj/d_a_obj_crope/d_a_obj_crope.cpp +++ b/rel/d/a/obj/d_a_obj_crope/d_a_obj_crope.cpp @@ -4,7 +4,6 @@ // // #include "rel/d/a/obj/d_a_obj_crope/d_a_obj_crope.h" -#include "dolphin/types.h" #include "d/cc/d_cc_d.h" #include "dol2asm.h" diff --git a/rel/d/a/obj/d_a_obj_crystal/d_a_obj_crystal.cpp b/rel/d/a/obj/d_a_obj_crystal/d_a_obj_crystal.cpp index a2d43803af..14a28e0fe4 100644 --- a/rel/d/a/obj/d_a_obj_crystal/d_a_obj_crystal.cpp +++ b/rel/d/a/obj/d_a_obj_crystal/d_a_obj_crystal.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_crystal/d_a_obj_crystal.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_digholl/d_a_obj_digholl.cpp b/rel/d/a/obj/d_a_obj_digholl/d_a_obj_digholl.cpp index ca972aff29..829cca1c68 100644 --- a/rel/d/a/obj/d_a_obj_digholl/d_a_obj_digholl.cpp +++ b/rel/d/a/obj/d_a_obj_digholl/d_a_obj_digholl.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/obj/d_a_obj_digholl/d_a_obj_digholl.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" /* 80BDC618-80BDC73C 000078 0124+00 1/1 0/0 0/0 .text create__14daObjDigholl_cFv */ diff --git a/rel/d/a/obj/d_a_obj_digplace/d_a_obj_digplace.cpp b/rel/d/a/obj/d_a_obj_digplace/d_a_obj_digplace.cpp index 4cd550b385..b3ad49db9f 100644 --- a/rel/d/a/obj/d_a_obj_digplace/d_a_obj_digplace.cpp +++ b/rel/d/a/obj/d_a_obj_digplace/d_a_obj_digplace.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_digplace/d_a_obj_digplace.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.cpp b/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.cpp index e4375572e0..db5448e8f2 100644 --- a/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.cpp +++ b/rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.cpp @@ -4,9 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_dmelevator/d_a_obj_dmelevator.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/bg/d_bg_w.h" -#include "d/d_path.h" #include "d/d_procname.h" #include "dol2asm.h" diff --git a/rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.cpp b/rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.cpp index dd3b4effc4..a740d02be5 100644 --- a/rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.cpp +++ b/rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_enemy_create/d_a_obj_enemy_create.cpp b/rel/d/a/obj/d_a_obj_enemy_create/d_a_obj_enemy_create.cpp index 5f5ddc9603..8b98413ff5 100644 --- a/rel/d/a/obj/d_a_obj_enemy_create/d_a_obj_enemy_create.cpp +++ b/rel/d/a/obj/d_a_obj_enemy_create/d_a_obj_enemy_create.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/obj/d_a_obj_enemy_create/d_a_obj_enemy_create.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" /* 80BE3178-80BE3198 000078 0020+00 1/0 0/0 0/0 .text daObjE_CREATE_Create__FP10fopAc_ac_c */ diff --git a/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.cpp b/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.cpp index f34f176d9b..9b3dcff2c1 100644 --- a/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.cpp +++ b/rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_fallobj/d_a_obj_fallobj.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/bg/d_bg_w.h" #include "d/d_procname.h" #include "dol2asm.h" diff --git a/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.cpp b/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.cpp index 3ec784b7f5..673eb0dffa 100644 --- a/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.cpp +++ b/rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_fireWood/d_a_obj_fireWood.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "dol2asm.h" class daFireWood_c : public fopAc_ac_c { diff --git a/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.cpp b/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.cpp index aa5d8a3286..1746cbff39 100644 --- a/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.cpp +++ b/rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.cpp @@ -4,9 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_fireWood2/d_a_obj_fireWood2.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/cc/d_cc_d.h" -#include "d/d_procname.h" #include "dol2asm.h" #include "m_Do/m_Do_hostIO.h" diff --git a/rel/d/a/obj/d_a_obj_fmobj/d_a_obj_fmobj.cpp b/rel/d/a/obj/d_a_obj_fmobj/d_a_obj_fmobj.cpp index 85a52c60d6..66d2f0485c 100644 --- a/rel/d/a/obj/d_a_obj_fmobj/d_a_obj_fmobj.cpp +++ b/rel/d/a/obj/d_a_obj_fmobj/d_a_obj_fmobj.cpp @@ -4,8 +4,6 @@ // #include "rel/d/a/obj/d_a_obj_fmobj/d_a_obj_fmobj.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "SSystem/SComponent/c_math.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.cpp b/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.cpp index 0d04215562..ca84040da1 100644 --- a/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.cpp +++ b/rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_ganonwall/d_a_obj_ganonwall.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "dol2asm.h" // diff --git a/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.cpp b/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.cpp index 9b58cd1719..c2051d95d8 100644 --- a/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.cpp +++ b/rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_graWall/d_a_obj_graWall.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80C10BF8-80C10D48 000078 0150+00 1/1 0/0 0/0 .text Create__14daObjGraWall_cFv */ diff --git a/rel/d/a/obj/d_a_obj_grave_stone/d_a_obj_grave_stone.cpp b/rel/d/a/obj/d_a_obj_grave_stone/d_a_obj_grave_stone.cpp index 7d5e28c685..9d340233f3 100644 --- a/rel/d/a/obj/d_a_obj_grave_stone/d_a_obj_grave_stone.cpp +++ b/rel/d/a/obj/d_a_obj_grave_stone/d_a_obj_grave_stone.cpp @@ -4,9 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_grave_stone/d_a_obj_grave_stone.h" -#include "JSystem/JGeometry.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" #include "d/d_procname.h" #include "d/com/d_com_inf_game.h" #include "d/bg/d_bg_w.h" diff --git a/rel/d/a/obj/d_a_obj_hbombkoya/d_a_obj_hbombkoya.cpp b/rel/d/a/obj/d_a_obj_hbombkoya/d_a_obj_hbombkoya.cpp index 361ccbe79d..06143b9873 100644 --- a/rel/d/a/obj/d_a_obj_hbombkoya/d_a_obj_hbombkoya.cpp +++ b/rel/d/a/obj/d_a_obj_hbombkoya/d_a_obj_hbombkoya.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/obj/d_a_obj_hbombkoya/d_a_obj_hbombkoya.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "dol2asm.h" // diff --git a/rel/d/a/obj/d_a_obj_heavySw/d_a_obj_heavySw.cpp b/rel/d/a/obj/d_a_obj_heavySw/d_a_obj_heavySw.cpp index 1ac1884ae4..36f72fda9e 100644 --- a/rel/d/a/obj/d_a_obj_heavySw/d_a_obj_heavySw.cpp +++ b/rel/d/a/obj/d_a_obj_heavySw/d_a_obj_heavySw.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_heavySw/d_a_obj_heavySw.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_hsTarget/d_a_obj_hsTarget.cpp b/rel/d/a/obj/d_a_obj_hsTarget/d_a_obj_hsTarget.cpp index cb03de23fc..a004bb262f 100644 --- a/rel/d/a/obj/d_a_obj_hsTarget/d_a_obj_hsTarget.cpp +++ b/rel/d/a/obj/d_a_obj_hsTarget/d_a_obj_hsTarget.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_hsTarget/d_a_obj_hsTarget.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_ice_l/d_a_obj_ice_l.cpp b/rel/d/a/obj/d_a_obj_ice_l/d_a_obj_ice_l.cpp index 1a81326a60..880b5af32f 100644 --- a/rel/d/a/obj/d_a_obj_ice_l/d_a_obj_ice_l.cpp +++ b/rel/d/a/obj/d_a_obj_ice_l/d_a_obj_ice_l.cpp @@ -4,9 +4,6 @@ // #include "rel/d/a/obj/d_a_obj_ice_l/d_a_obj_ice_l.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "SSystem/SComponent/c_math.h" -#include "d/a/d_a_player.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.cpp b/rel/d/a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.cpp index be114102c2..3b01c179e5 100644 --- a/rel/d/a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.cpp +++ b/rel/d/a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.cpp @@ -4,7 +4,6 @@ // // #include "rel/d/a/obj/d_a_obj_iceleaf/d_a_obj_iceleaf.h" -#include "dolphin/types.h" #include "d/cc/d_cc_d.h" #include "dol2asm.h" diff --git a/rel/d/a/obj/d_a_obj_kabuto/d_a_obj_kabuto.cpp b/rel/d/a/obj/d_a_obj_kabuto/d_a_obj_kabuto.cpp index ce1345ee4c..99c43c6074 100644 --- a/rel/d/a/obj/d_a_obj_kabuto/d_a_obj_kabuto.cpp +++ b/rel/d/a/obj/d_a_obj_kabuto/d_a_obj_kabuto.cpp @@ -5,10 +5,7 @@ #include "rel/d/a/obj/d_a_obj_kabuto/d_a_obj_kabuto.h" #include "SSystem/SComponent/c_math.h" -#include "JSystem/JKernel/JKRHeap.h" #include "m_Do/m_Do_lib.h" -#include "f_op/f_op_actor_mng.h" -#include "d/com/d_com_inf_game.h" #include "d/menu/d_menu_insect.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_kantera/d_a_obj_kantera.cpp b/rel/d/a/obj/d_a_obj_kantera/d_a_obj_kantera.cpp index 895a692fb1..e467a54794 100644 --- a/rel/d/a/obj/d_a_obj_kantera/d_a_obj_kantera.cpp +++ b/rel/d/a/obj/d_a_obj_kantera/d_a_obj_kantera.cpp @@ -4,12 +4,7 @@ // #include "rel/d/a/obj/d_a_obj_kantera/d_a_obj_kantera.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "SSystem/SComponent/c_math.h" -#include "d/a/d_a_itembase_static.h" -#include "d/cc/d_cc_d.h" #include "d/com/d_com_inf_game.h" -#include "d/d_item.h" #include "d/d_item_data.h" #include "d/d_procname.h" #include "dol2asm.h" diff --git a/rel/d/a/obj/d_a_obj_kgate/d_a_obj_kgate.cpp b/rel/d/a/obj/d_a_obj_kgate/d_a_obj_kgate.cpp index 53ea63ce84..bb19ac6216 100644 --- a/rel/d/a/obj/d_a_obj_kgate/d_a_obj_kgate.cpp +++ b/rel/d/a/obj/d_a_obj_kgate/d_a_obj_kgate.cpp @@ -4,12 +4,9 @@ */ #include "rel/d/a/obj/d_a_obj_kgate/d_a_obj_kgate.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" -#include "d/a/d_a_player.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "rel/d/a/d_a_horse/d_a_horse.h" #include "rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.h" diff --git a/rel/d/a/obj/d_a_obj_ki/d_a_obj_ki.cpp b/rel/d/a/obj/d_a_obj_ki/d_a_obj_ki.cpp index 5d5fc9796a..8e5a95f48b 100644 --- a/rel/d/a/obj/d_a_obj_ki/d_a_obj_ki.cpp +++ b/rel/d/a/obj/d_a_obj_ki/d_a_obj_ki.cpp @@ -5,8 +5,6 @@ #include "rel/d/a/obj/d_a_obj_ki/d_a_obj_ki.h" #include "SSystem/SComponent/c_math.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_kjgjs/d_a_obj_kjgjs.cpp b/rel/d/a/obj/d_a_obj_kjgjs/d_a_obj_kjgjs.cpp index 764c23375a..78e3e5547b 100644 --- a/rel/d/a/obj/d_a_obj_kjgjs/d_a_obj_kjgjs.cpp +++ b/rel/d/a/obj/d_a_obj_kjgjs/d_a_obj_kjgjs.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_kjgjs/d_a_obj_kjgjs.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/bg/d_bg_w.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_kkanban/d_a_obj_kkanban.cpp b/rel/d/a/obj/d_a_obj_kkanban/d_a_obj_kkanban.cpp index af5b98df5c..e89ae59961 100644 --- a/rel/d/a/obj/d_a_obj_kkanban/d_a_obj_kkanban.cpp +++ b/rel/d/a/obj/d_a_obj_kkanban/d_a_obj_kkanban.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/obj/d_a_obj_kkanban/d_a_obj_kkanban.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" -#include "d/cc/d_cc_d.h" #include "d/d_procname.h" /* 80C46698-80C46768 000078 00D0+00 1/1 0/0 0/0 .text nodeCallBack__FP8J3DJointi */ diff --git a/rel/d/a/obj/d_a_obj_lbox/d_a_obj_lbox.cpp b/rel/d/a/obj/d_a_obj_lbox/d_a_obj_lbox.cpp index fb26b9326e..8556184fc3 100644 --- a/rel/d/a/obj/d_a_obj_lbox/d_a_obj_lbox.cpp +++ b/rel/d/a/obj/d_a_obj_lbox/d_a_obj_lbox.cpp @@ -6,9 +6,6 @@ #include "rel/d/a/obj/d_a_obj_lbox/d_a_obj_lbox.h" #include "SSystem/SComponent/c_math.h" #include "d/com/d_com_inf_game.h" -#include "d/d_resorce.h" -#include "d/d_vibration.h" -#include "dol2asm.h" #include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_hostIO.h" diff --git a/rel/d/a/obj/d_a_obj_lv1Candle00/d_a_obj_lv1Candle00.cpp b/rel/d/a/obj/d_a_obj_lv1Candle00/d_a_obj_lv1Candle00.cpp index 94936d3a0b..6604baaf2e 100644 --- a/rel/d/a/obj/d_a_obj_lv1Candle00/d_a_obj_lv1Candle00.cpp +++ b/rel/d/a/obj/d_a_obj_lv1Candle00/d_a_obj_lv1Candle00.cpp @@ -3,8 +3,6 @@ // #include "rel/d/a/obj/d_a_obj_lv1Candle00/d_a_obj_lv1Candle00.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_lv1Candle01/d_a_obj_lv1Candle01.cpp b/rel/d/a/obj/d_a_obj_lv1Candle01/d_a_obj_lv1Candle01.cpp index bcb6aba87a..75e9a69540 100644 --- a/rel/d/a/obj/d_a_obj_lv1Candle01/d_a_obj_lv1Candle01.cpp +++ b/rel/d/a/obj/d_a_obj_lv1Candle01/d_a_obj_lv1Candle01.cpp @@ -3,8 +3,6 @@ // #include "rel/d/a/obj/d_a_obj_lv1Candle01/d_a_obj_lv1Candle01.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_lv2Candle/d_a_obj_lv2Candle.cpp b/rel/d/a/obj/d_a_obj_lv2Candle/d_a_obj_lv2Candle.cpp index 0da5ba2e8c..d30b98a6d5 100644 --- a/rel/d/a/obj/d_a_obj_lv2Candle/d_a_obj_lv2Candle.cpp +++ b/rel/d/a/obj/d_a_obj_lv2Candle/d_a_obj_lv2Candle.cpp @@ -4,9 +4,7 @@ // #include "rel/d/a/obj/d_a_obj_lv2Candle/d_a_obj_lv2Candle.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_actor.h" /* 8058F2AC-8058F2E0 000014 0034+00 4/4 0/0 0/0 .bss l_HIO */ diff --git a/rel/d/a/obj/d_a_obj_lv3saka00/d_a_obj_lv3saka00.cpp b/rel/d/a/obj/d_a_obj_lv3saka00/d_a_obj_lv3saka00.cpp index be552982e7..2812d6401e 100644 --- a/rel/d/a/obj/d_a_obj_lv3saka00/d_a_obj_lv3saka00.cpp +++ b/rel/d/a/obj/d_a_obj_lv3saka00/d_a_obj_lv3saka00.cpp @@ -4,7 +4,6 @@ // #include "rel/d/a/obj/d_a_obj_lv3saka00/d_a_obj_lv3saka00.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_lv3waterEff/d_a_obj_lv3waterEff.cpp b/rel/d/a/obj/d_a_obj_lv3waterEff/d_a_obj_lv3waterEff.cpp index f1147f7a1e..87991120ad 100644 --- a/rel/d/a/obj/d_a_obj_lv3waterEff/d_a_obj_lv3waterEff.cpp +++ b/rel/d/a/obj/d_a_obj_lv3waterEff/d_a_obj_lv3waterEff.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_lv3waterEff/d_a_obj_lv3waterEff.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_lv4CandleDemoTag/d_a_obj_lv4CandleDemoTag.cpp b/rel/d/a/obj/d_a_obj_lv4CandleDemoTag/d_a_obj_lv4CandleDemoTag.cpp index dbf144203f..f3d45bd2b9 100644 --- a/rel/d/a/obj/d_a_obj_lv4CandleDemoTag/d_a_obj_lv4CandleDemoTag.cpp +++ b/rel/d/a/obj/d_a_obj_lv4CandleDemoTag/d_a_obj_lv4CandleDemoTag.cpp @@ -6,7 +6,6 @@ #include "rel/d/a/obj/d_a_obj_lv4CandleDemoTag/d_a_obj_lv4CandleDemoTag.h" #include "d/com/d_com_inf_game.h" #include "d/d_path.h" -#include "d/d_procname.h" #include "d/event/d_event_lib.h" #include "dol2asm.h" #include "m_Do/m_Do_hostIO.h" diff --git a/rel/d/a/obj/d_a_obj_lv4Gate/d_a_obj_lv4Gate.cpp b/rel/d/a/obj/d_a_obj_lv4Gate/d_a_obj_lv4Gate.cpp index bce005898f..1b311ad3b1 100644 --- a/rel/d/a/obj/d_a_obj_lv4Gate/d_a_obj_lv4Gate.cpp +++ b/rel/d/a/obj/d_a_obj_lv4Gate/d_a_obj_lv4Gate.cpp @@ -1,239 +1,238 @@ -/** - * d_a_obj_lv4Gate.cpp - * Arbiter's Grounds Generic Gate - */ - -#include "rel/d/a/obj/d_a_obj_lv4Gate/d_a_obj_lv4Gate.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" - -/* 80C5F41C-80C5F428 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ -static u8 cNullVec__6Z2Calc[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; - -/* 80C5F428-80C5F43C 00000C 0004+10 0/0 0/0 0/0 .data @1787 */ -// unused data? -#pragma push -#pragma force_active on -static u32 lit_1787[1 + 4 /* padding */] = { - 0x02000201, - /* padding */ - 0x40080000, - 0x00000000, - 0x3FE00000, - 0x00000000, -}; -#pragma pop - -/* 80C5F52C-80C5F538 000014 000C+00 3/3 0/0 0/0 .bss l_HIO */ -static daLv4Gate_HIO_c l_HIO; - -/* 80C5EB6C-80C5EB9C 0000EC 0030+00 1/1 0/0 0/0 .text __ct__15daLv4Gate_HIO_cFv */ -daLv4Gate_HIO_c::daLv4Gate_HIO_c() { - mMoveSpeed = 2.0f; - mShockStrength = 3; -} - -/* 80C5EBE4-80C5EC80 000164 009C+00 2/2 0/0 0/0 .text setBaseMtx__11daLv4Gate_cFv */ -void daLv4Gate_c::setBaseMtx() { - mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); - mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z); - mDoMtx_stack_c::transM(mMoveValue, 0.0f, 0.0f); - - mpModel->setBaseScale(scale); - mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); -} - -/* 80C5EC80-80C5ECEC 000200 006C+00 1/0 0/0 0/0 .text CreateHeap__11daLv4Gate_cFv */ -int daLv4Gate_c::CreateHeap() { - J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes("L4Gate", 4); - - mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); - if (mpModel == NULL) { - return 0; - } - - return 1; -} - -/* 80C5ECEC-80C5EE54 00026C 0168+00 1/1 0/0 0/0 .text create__11daLv4Gate_cFv */ -int daLv4Gate_c::create() { - fopAcM_SetupActor(this, daLv4Gate_c); - - int phase = dComIfG_resLoad(&mPhase, "L4Gate"); - if (phase == cPhs_COMPLEATE_e) { - if (MoveBGCreate("L4Gate", 7, dBgS_MoveBGProc_TypicalRotY, 0x2300, NULL) == cPhs_ERROR_e) { - return cPhs_ERROR_e; - } - - fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); - fopAcM_setCullSizeBox2(this, mpModel->getModelData()); - - mInitMove = fopAcM_isSwitch(this, fopAcM_GetParam(this) & 0xFF); - mMoveType = fopAcM_GetParam(this) >> 8; - - f32 target; - // type 0 is a right side gate, otherwise a left side gate - if (mMoveType == 0) { - target = -250.0f; - } else { - target = 250.0f; - } - - mMoveTarget = target; - mMoveValue = 0.0f; - mGateOpened = false; - - if (mInitMove) { - mMoveValue = mMoveTarget; - mGateOpened = true; - init_modeMoveEnd(); - } else { - init_modeWait(); - } - - setBaseMtx(); - } - - return phase; -} - -/* 80C5EE54-80C5EEA4 0003D4 0050+00 1/0 0/0 0/0 .text Execute__11daLv4Gate_cFPPA3_A4_f */ -int daLv4Gate_c::Execute(Mtx** i_mtxP) { - moveGate(); - *i_mtxP = &mpModel->getBaseTRMtx(); - setBaseMtx(); - - return 1; -} - -/* 80C5EEA4-80C5EF48 000424 00A4+00 1/1 0/0 0/0 .text moveGate__11daLv4Gate_cFv */ -void daLv4Gate_c::moveGate() { - typedef void (daLv4Gate_c::*modeFunc)(); - static modeFunc mode_proc[] = {&daLv4Gate_c::modeWait, &daLv4Gate_c::modeMove, - &daLv4Gate_c::modeMoveEnd}; - - (this->*mode_proc[mMode])(); -} - -/* 80C5EF48-80C5EF54 0004C8 000C+00 1/1 0/0 0/0 .text init_modeWait__11daLv4Gate_cFv */ -void daLv4Gate_c::init_modeWait() { - mMode = MODE_WAIT_e; -} - -/* 80C5EF54-80C5EFB0 0004D4 005C+00 1/0 0/0 0/0 .text modeWait__11daLv4Gate_cFv */ -void daLv4Gate_c::modeWait() { - mInitMove = fopAcM_isSwitch(this, fopAcM_GetParam(this) & 0xFF); - if (mInitMove) { - init_modeMove(); - } -} - -/* 80C5EFB0-80C5EFBC 000530 000C+00 1/1 0/0 0/0 .text init_modeMove__11daLv4Gate_cFv */ -void daLv4Gate_c::init_modeMove() { - mMode = MODE_MOVE_e; -} - -/* 80C5EFBC-80C5F0C4 00053C 0108+00 1/0 0/0 0/0 .text modeMove__11daLv4Gate_cFv */ -void daLv4Gate_c::modeMove() { - mDoMtx_stack_c::ZXYrotS(shape_angle.x, shape_angle.y, shape_angle.z); - - cXyz sound_pos(mMoveTarget, 0.0f, 0.0f); - mDoMtx_stack_c::multVec(&sound_pos, &sound_pos); - sound_pos += current.pos; - - mDoAud_seStartLevel(Z2SE_OBJ_GORONGATE_MOVE, &sound_pos, 0, - dComIfGp_getReverb(fopAcM_GetRoomNo(this))); - - if (cLib_addCalc(&mMoveValue, mMoveTarget, 0.2f, l_HIO.mMoveSpeed, 0.5f) == 0.0f) { - init_modeMoveEnd(); - } -} - -/* 80C5F0C4-80C5F1E4 000644 0120+00 2/2 0/0 0/0 .text init_modeMoveEnd__11daLv4Gate_cFv - */ -void daLv4Gate_c::init_modeMoveEnd() { - if (!mGateOpened) { - mDoMtx_stack_c::ZXYrotS(shape_angle.x, shape_angle.y, shape_angle.z); - - cXyz sound_pos(mMoveTarget, 0.0f, 0.0f); - mDoMtx_stack_c::multVec(&sound_pos, &sound_pos); - sound_pos += current.pos; - - mDoAud_seStart(Z2SE_OBJ_GORONGATE_STOP, &sound_pos, 0, - dComIfGp_getReverb(fopAcM_GetRoomNo(this))); - - dComIfGp_getVibration().StartShock(l_HIO.mShockStrength, 15, cXyz(0.0f, 1.0f, 0.0f)); - } - - mMode = MODE_MOVE_END_e; -} - -/* 80C5F1E4-80C5F1E8 000764 0004+00 1/0 0/0 0/0 .text modeMoveEnd__11daLv4Gate_cFv */ -void daLv4Gate_c::modeMoveEnd() {} - -/* 80C5F1E8-80C5F28C 000768 00A4+00 1/0 0/0 0/0 .text Draw__11daLv4Gate_cFv */ -int daLv4Gate_c::Draw() { - g_env_light.settingTevStruct(0x10, ¤t.pos, &tevStr); - g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr); - - dComIfGd_setListBG(); - mDoExt_modelUpdateDL(mpModel); - dComIfGd_setList(); - return 1; -} - -/* 80C5F28C-80C5F2BC 00080C 0030+00 1/0 0/0 0/0 .text Delete__11daLv4Gate_cFv */ -int daLv4Gate_c::Delete() { - dComIfG_resDelete(&mPhase, "L4Gate"); - return 1; -} - -/* 80C5F2BC-80C5F2E8 00083C 002C+00 1/0 0/0 0/0 .text daLv4Gate_Draw__FP11daLv4Gate_c */ -static int daLv4Gate_Draw(daLv4Gate_c* i_this) { - return i_this->MoveBGDraw(); -} - -/* 80C5F2E8-80C5F308 000868 0020+00 1/0 0/0 0/0 .text daLv4Gate_Execute__FP11daLv4Gate_c - */ -static int daLv4Gate_Execute(daLv4Gate_c* i_this) { - return i_this->MoveBGExecute(); -} - -/* 80C5F308-80C5F328 000888 0020+00 1/0 0/0 0/0 .text daLv4Gate_Delete__FP11daLv4Gate_c - */ -static int daLv4Gate_Delete(daLv4Gate_c* i_this) { - return i_this->MoveBGDelete(); -} - -/* 80C5F328-80C5F348 0008A8 0020+00 1/0 0/0 0/0 .text daLv4Gate_Create__FP10fopAc_ac_c */ -static int daLv4Gate_Create(fopAc_ac_c* i_this) { - return static_cast(i_this)->create(); -} - -/* 80C5F484-80C5F4A4 -00001 0020+00 1/0 0/0 0/0 .data l_daLv4Gate_Method */ -static actor_method_class l_daLv4Gate_Method = { - (process_method_func)daLv4Gate_Create, (process_method_func)daLv4Gate_Delete, - (process_method_func)daLv4Gate_Execute, (process_method_func)NULL, - (process_method_func)daLv4Gate_Draw, -}; - -/* 80C5F4A4-80C5F4D4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Lv4Gate */ -extern actor_process_profile_definition g_profile_Obj_Lv4Gate = { - fpcLy_CURRENT_e, - 3, - fpcPi_CURRENT_e, - PROC_Obj_Lv4Gate, - &g_fpcLf_Method.mBase, - sizeof(daLv4Gate_c), - 0, - 0, - &g_fopAc_Method.base, - 637, - &l_daLv4Gate_Method, - 0x40000, - fopAc_ACTOR_e, - fopAc_CULLBOX_CUSTOM_e, -}; +/** + * d_a_obj_lv4Gate.cpp + * Arbiter's Grounds Generic Gate + */ + +#include "rel/d/a/obj/d_a_obj_lv4Gate/d_a_obj_lv4Gate.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_procname.h" + +/* 80C5F41C-80C5F428 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ +static u8 cNullVec__6Z2Calc[12] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; + +/* 80C5F428-80C5F43C 00000C 0004+10 0/0 0/0 0/0 .data @1787 */ +// unused data? +#pragma push +#pragma force_active on +static u32 lit_1787[1 + 4 /* padding */] = { + 0x02000201, + /* padding */ + 0x40080000, + 0x00000000, + 0x3FE00000, + 0x00000000, +}; +#pragma pop + +/* 80C5F52C-80C5F538 000014 000C+00 3/3 0/0 0/0 .bss l_HIO */ +static daLv4Gate_HIO_c l_HIO; + +/* 80C5EB6C-80C5EB9C 0000EC 0030+00 1/1 0/0 0/0 .text __ct__15daLv4Gate_HIO_cFv */ +daLv4Gate_HIO_c::daLv4Gate_HIO_c() { + mMoveSpeed = 2.0f; + mShockStrength = 3; +} + +/* 80C5EBE4-80C5EC80 000164 009C+00 2/2 0/0 0/0 .text setBaseMtx__11daLv4Gate_cFv */ +void daLv4Gate_c::setBaseMtx() { + mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); + mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z); + mDoMtx_stack_c::transM(mMoveValue, 0.0f, 0.0f); + + mpModel->setBaseScale(scale); + mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); +} + +/* 80C5EC80-80C5ECEC 000200 006C+00 1/0 0/0 0/0 .text CreateHeap__11daLv4Gate_cFv */ +int daLv4Gate_c::CreateHeap() { + J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes("L4Gate", 4); + + mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); + if (mpModel == NULL) { + return 0; + } + + return 1; +} + +/* 80C5ECEC-80C5EE54 00026C 0168+00 1/1 0/0 0/0 .text create__11daLv4Gate_cFv */ +int daLv4Gate_c::create() { + fopAcM_SetupActor(this, daLv4Gate_c); + + int phase = dComIfG_resLoad(&mPhase, "L4Gate"); + if (phase == cPhs_COMPLEATE_e) { + if (MoveBGCreate("L4Gate", 7, dBgS_MoveBGProc_TypicalRotY, 0x2300, NULL) == cPhs_ERROR_e) { + return cPhs_ERROR_e; + } + + fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); + fopAcM_setCullSizeBox2(this, mpModel->getModelData()); + + mInitMove = fopAcM_isSwitch(this, fopAcM_GetParam(this) & 0xFF); + mMoveType = fopAcM_GetParam(this) >> 8; + + f32 target; + // type 0 is a right side gate, otherwise a left side gate + if (mMoveType == 0) { + target = -250.0f; + } else { + target = 250.0f; + } + + mMoveTarget = target; + mMoveValue = 0.0f; + mGateOpened = false; + + if (mInitMove) { + mMoveValue = mMoveTarget; + mGateOpened = true; + init_modeMoveEnd(); + } else { + init_modeWait(); + } + + setBaseMtx(); + } + + return phase; +} + +/* 80C5EE54-80C5EEA4 0003D4 0050+00 1/0 0/0 0/0 .text Execute__11daLv4Gate_cFPPA3_A4_f */ +int daLv4Gate_c::Execute(Mtx** i_mtxP) { + moveGate(); + *i_mtxP = &mpModel->getBaseTRMtx(); + setBaseMtx(); + + return 1; +} + +/* 80C5EEA4-80C5EF48 000424 00A4+00 1/1 0/0 0/0 .text moveGate__11daLv4Gate_cFv */ +void daLv4Gate_c::moveGate() { + typedef void (daLv4Gate_c::*modeFunc)(); + static modeFunc mode_proc[] = {&daLv4Gate_c::modeWait, &daLv4Gate_c::modeMove, + &daLv4Gate_c::modeMoveEnd}; + + (this->*mode_proc[mMode])(); +} + +/* 80C5EF48-80C5EF54 0004C8 000C+00 1/1 0/0 0/0 .text init_modeWait__11daLv4Gate_cFv */ +void daLv4Gate_c::init_modeWait() { + mMode = MODE_WAIT_e; +} + +/* 80C5EF54-80C5EFB0 0004D4 005C+00 1/0 0/0 0/0 .text modeWait__11daLv4Gate_cFv */ +void daLv4Gate_c::modeWait() { + mInitMove = fopAcM_isSwitch(this, fopAcM_GetParam(this) & 0xFF); + if (mInitMove) { + init_modeMove(); + } +} + +/* 80C5EFB0-80C5EFBC 000530 000C+00 1/1 0/0 0/0 .text init_modeMove__11daLv4Gate_cFv */ +void daLv4Gate_c::init_modeMove() { + mMode = MODE_MOVE_e; +} + +/* 80C5EFBC-80C5F0C4 00053C 0108+00 1/0 0/0 0/0 .text modeMove__11daLv4Gate_cFv */ +void daLv4Gate_c::modeMove() { + mDoMtx_stack_c::ZXYrotS(shape_angle.x, shape_angle.y, shape_angle.z); + + cXyz sound_pos(mMoveTarget, 0.0f, 0.0f); + mDoMtx_stack_c::multVec(&sound_pos, &sound_pos); + sound_pos += current.pos; + + mDoAud_seStartLevel(Z2SE_OBJ_GORONGATE_MOVE, &sound_pos, 0, + dComIfGp_getReverb(fopAcM_GetRoomNo(this))); + + if (cLib_addCalc(&mMoveValue, mMoveTarget, 0.2f, l_HIO.mMoveSpeed, 0.5f) == 0.0f) { + init_modeMoveEnd(); + } +} + +/* 80C5F0C4-80C5F1E4 000644 0120+00 2/2 0/0 0/0 .text init_modeMoveEnd__11daLv4Gate_cFv + */ +void daLv4Gate_c::init_modeMoveEnd() { + if (!mGateOpened) { + mDoMtx_stack_c::ZXYrotS(shape_angle.x, shape_angle.y, shape_angle.z); + + cXyz sound_pos(mMoveTarget, 0.0f, 0.0f); + mDoMtx_stack_c::multVec(&sound_pos, &sound_pos); + sound_pos += current.pos; + + mDoAud_seStart(Z2SE_OBJ_GORONGATE_STOP, &sound_pos, 0, + dComIfGp_getReverb(fopAcM_GetRoomNo(this))); + + dComIfGp_getVibration().StartShock(l_HIO.mShockStrength, 15, cXyz(0.0f, 1.0f, 0.0f)); + } + + mMode = MODE_MOVE_END_e; +} + +/* 80C5F1E4-80C5F1E8 000764 0004+00 1/0 0/0 0/0 .text modeMoveEnd__11daLv4Gate_cFv */ +void daLv4Gate_c::modeMoveEnd() {} + +/* 80C5F1E8-80C5F28C 000768 00A4+00 1/0 0/0 0/0 .text Draw__11daLv4Gate_cFv */ +int daLv4Gate_c::Draw() { + g_env_light.settingTevStruct(0x10, ¤t.pos, &tevStr); + g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr); + + dComIfGd_setListBG(); + mDoExt_modelUpdateDL(mpModel); + dComIfGd_setList(); + return 1; +} + +/* 80C5F28C-80C5F2BC 00080C 0030+00 1/0 0/0 0/0 .text Delete__11daLv4Gate_cFv */ +int daLv4Gate_c::Delete() { + dComIfG_resDelete(&mPhase, "L4Gate"); + return 1; +} + +/* 80C5F2BC-80C5F2E8 00083C 002C+00 1/0 0/0 0/0 .text daLv4Gate_Draw__FP11daLv4Gate_c */ +static int daLv4Gate_Draw(daLv4Gate_c* i_this) { + return i_this->MoveBGDraw(); +} + +/* 80C5F2E8-80C5F308 000868 0020+00 1/0 0/0 0/0 .text daLv4Gate_Execute__FP11daLv4Gate_c + */ +static int daLv4Gate_Execute(daLv4Gate_c* i_this) { + return i_this->MoveBGExecute(); +} + +/* 80C5F308-80C5F328 000888 0020+00 1/0 0/0 0/0 .text daLv4Gate_Delete__FP11daLv4Gate_c + */ +static int daLv4Gate_Delete(daLv4Gate_c* i_this) { + return i_this->MoveBGDelete(); +} + +/* 80C5F328-80C5F348 0008A8 0020+00 1/0 0/0 0/0 .text daLv4Gate_Create__FP10fopAc_ac_c */ +static int daLv4Gate_Create(fopAc_ac_c* i_this) { + return static_cast(i_this)->create(); +} + +/* 80C5F484-80C5F4A4 -00001 0020+00 1/0 0/0 0/0 .data l_daLv4Gate_Method */ +static actor_method_class l_daLv4Gate_Method = { + (process_method_func)daLv4Gate_Create, (process_method_func)daLv4Gate_Delete, + (process_method_func)daLv4Gate_Execute, (process_method_func)NULL, + (process_method_func)daLv4Gate_Draw, +}; + +/* 80C5F4A4-80C5F4D4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Lv4Gate */ +extern actor_process_profile_definition g_profile_Obj_Lv4Gate = { + fpcLy_CURRENT_e, + 3, + fpcPi_CURRENT_e, + PROC_Obj_Lv4Gate, + &g_fpcLf_Method.mBase, + sizeof(daLv4Gate_c), + 0, + 0, + &g_fopAc_Method.base, + 637, + &l_daLv4Gate_Method, + 0x40000, + fopAc_ACTOR_e, + fopAc_CULLBOX_CUSTOM_e, +}; diff --git a/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget.cpp b/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget.cpp index 60e7c19f45..e0457d1726 100644 --- a/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget.cpp +++ b/rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_lv4HsTarget/d_a_obj_lv4HsTarget.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_lv4PoGate/d_a_obj_lv4PoGate.cpp b/rel/d/a/obj/d_a_obj_lv4PoGate/d_a_obj_lv4PoGate.cpp index f1445172c8..e3ca47b947 100644 --- a/rel/d/a/obj/d_a_obj_lv4PoGate/d_a_obj_lv4PoGate.cpp +++ b/rel/d/a/obj/d_a_obj_lv4PoGate/d_a_obj_lv4PoGate.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_lv4PoGate/d_a_obj_lv4PoGate.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_lv4floor/d_a_obj_lv4floor.cpp b/rel/d/a/obj/d_a_obj_lv4floor/d_a_obj_lv4floor.cpp index 0090dd584d..d05fd0c20b 100644 --- a/rel/d/a/obj/d_a_obj_lv4floor/d_a_obj_lv4floor.cpp +++ b/rel/d/a/obj/d_a_obj_lv4floor/d_a_obj_lv4floor.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_lv4floor/d_a_obj_lv4floor.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_lv4gear/d_a_obj_lv4gear.cpp b/rel/d/a/obj/d_a_obj_lv4gear/d_a_obj_lv4gear.cpp index 8e0aeace4b..f371d4f6b4 100644 --- a/rel/d/a/obj/d_a_obj_lv4gear/d_a_obj_lv4gear.cpp +++ b/rel/d/a/obj/d_a_obj_lv4gear/d_a_obj_lv4gear.cpp @@ -4,8 +4,6 @@ // #include "rel/d/a/obj/d_a_obj_lv4gear/d_a_obj_lv4gear.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/com/d_com_inf_game.h" #include "d/d_procname.h" /* 80C67F18-80C67F38 000078 0020+00 1/1 0/0 0/0 .text CheckCreateHeap__FP10fopAc_ac_c */ diff --git a/rel/d/a/obj/d_a_obj_magLiftRot/d_a_obj_magLiftRot.cpp b/rel/d/a/obj/d_a_obj_magLiftRot/d_a_obj_magLiftRot.cpp index aa4dc2527d..6a9f9a71e8 100644 --- a/rel/d/a/obj/d_a_obj_magLiftRot/d_a_obj_magLiftRot.cpp +++ b/rel/d/a/obj/d_a_obj_magLiftRot/d_a_obj_magLiftRot.cpp @@ -4,10 +4,6 @@ // #include "rel/d/a/obj/d_a_obj_magLiftRot/d_a_obj_magLiftRot.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "SSystem/SComponent/c_math.h" -#include "Z2AudioLib/Z2SeMgr.h" -#include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" #include "dol2asm.h" diff --git a/rel/d/a/obj/d_a_obj_master_sword/d_a_obj_master_sword.cpp b/rel/d/a/obj/d_a_obj_master_sword/d_a_obj_master_sword.cpp index df2a3f2400..d4c6dfdfc1 100644 --- a/rel/d/a/obj/d_a_obj_master_sword/d_a_obj_master_sword.cpp +++ b/rel/d/a/obj/d_a_obj_master_sword/d_a_obj_master_sword.cpp @@ -4,10 +4,8 @@ // #include "rel/d/a/obj/d_a_obj_master_sword/d_a_obj_master_sword.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/meter/d_meter2_info.h" #include "dol2asm.h" diff --git a/rel/d/a/obj/d_a_obj_mgate/d_a_obj_mgate.cpp b/rel/d/a/obj/d_a_obj_mgate/d_a_obj_mgate.cpp index 90d226a421..09e89e9272 100644 --- a/rel/d/a/obj/d_a_obj_mgate/d_a_obj_mgate.cpp +++ b/rel/d/a/obj/d_a_obj_mgate/d_a_obj_mgate.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_mgate/d_a_obj_mgate.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" #include "d/d_lib.h" diff --git a/rel/d/a/obj/d_a_obj_movebox/d_a_obj_movebox.cpp b/rel/d/a/obj/d_a_obj_movebox/d_a_obj_movebox.cpp index bfe494907c..185a762011 100644 --- a/rel/d/a/obj/d_a_obj_movebox/d_a_obj_movebox.cpp +++ b/rel/d/a/obj/d_a_obj_movebox/d_a_obj_movebox.cpp @@ -4,9 +4,6 @@ // #include "rel/d/a/obj/d_a_obj_movebox/d_a_obj_movebox.h" -#include "d/a/d_a_obj.h" -#include "d/bg/d_bg_s.h" -#include "d/cc/d_cc_d.h" #include "d/d_path.h" #include "dol2asm.h" diff --git a/rel/d/a/obj/d_a_obj_myogan/d_a_obj_myogan.cpp b/rel/d/a/obj/d_a_obj_myogan/d_a_obj_myogan.cpp index a85707f968..aac4ee7518 100644 --- a/rel/d/a/obj/d_a_obj_myogan/d_a_obj_myogan.cpp +++ b/rel/d/a/obj/d_a_obj_myogan/d_a_obj_myogan.cpp @@ -4,11 +4,9 @@ */ #include "rel/d/a/obj/d_a_obj_myogan/d_a_obj_myogan.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" -#include "d/bg/d_bg_s_movebg_actor.h" #include "d/d_procname.h" /* 80C9EBAC-80C9EBDC 0000EC 0030+00 1/1 0/0 0/0 .text __ct__18daObj_Myogan_HIO_cFv */ diff --git a/rel/d/a/obj/d_a_obj_onsen/d_a_obj_onsen.cpp b/rel/d/a/obj/d_a_obj_onsen/d_a_obj_onsen.cpp index c9ec9ddd47..71e2b01f0f 100644 --- a/rel/d/a/obj/d_a_obj_onsen/d_a_obj_onsen.cpp +++ b/rel/d/a/obj/d_a_obj_onsen/d_a_obj_onsen.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_onsen/d_a_obj_onsen.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80CA7B58-80CA7BB0 000078 0058+00 1/1 0/0 0/0 .text initBaseMtx__12daObjOnsen_cFv */ diff --git a/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.cpp b/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.cpp index f213eda9df..b43a80f138 100644 --- a/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.cpp +++ b/rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_onsenFire/d_a_obj_onsenFire.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80CA8278-80CA82F4 000078 007C+00 1/1 0/0 0/0 .text create__16daObjOnsenFire_cFv */ diff --git a/rel/d/a/obj/d_a_obj_pleaf/d_a_obj_pleaf.cpp b/rel/d/a/obj/d_a_obj_pleaf/d_a_obj_pleaf.cpp index 3fc9f5b201..cf6d992509 100644 --- a/rel/d/a/obj/d_a_obj_pleaf/d_a_obj_pleaf.cpp +++ b/rel/d/a/obj/d_a_obj_pleaf/d_a_obj_pleaf.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_pleaf/d_a_obj_pleaf.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "dol2asm.h" /* 80CB189C-80CB18A0 -00001 0004+00 1/1 0/0 0/0 .data l_resName */ diff --git a/rel/d/a/obj/d_a_obj_prop/d_a_obj_prop.cpp b/rel/d/a/obj/d_a_obj_prop/d_a_obj_prop.cpp index 914a2f603c..45b03445aa 100644 --- a/rel/d/a/obj/d_a_obj_prop/d_a_obj_prop.cpp +++ b/rel/d/a/obj/d_a_obj_prop/d_a_obj_prop.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_prop/d_a_obj_prop.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80CB51D8-80CB51F8 000078 0020+00 1/1 0/0 0/0 .text daObjProp_c_createHeap__FP10fopAc_ac_c */ diff --git a/rel/d/a/obj/d_a_obj_rcircle/d_a_obj_rcircle.cpp b/rel/d/a/obj/d_a_obj_rcircle/d_a_obj_rcircle.cpp index 8f48109e2a..738d638bfe 100644 --- a/rel/d/a/obj/d_a_obj_rcircle/d_a_obj_rcircle.cpp +++ b/rel/d/a/obj/d_a_obj_rcircle/d_a_obj_rcircle.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_rcircle/d_a_obj_rcircle.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80CB8658-80CB8678 000078 0020+00 1/1 0/0 0/0 .text daObjRCircle_c_createHeap__FP10fopAc_ac_c */ diff --git a/rel/d/a/obj/d_a_obj_rgate/d_a_obj_rgate.cpp b/rel/d/a/obj/d_a_obj_rgate/d_a_obj_rgate.cpp index 2b57172624..b10dd4d47e 100644 --- a/rel/d/a/obj/d_a_obj_rgate/d_a_obj_rgate.cpp +++ b/rel/d/a/obj/d_a_obj_rgate/d_a_obj_rgate.cpp @@ -4,12 +4,9 @@ */ #include "rel/d/a/obj/d_a_obj_rgate/d_a_obj_rgate.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" -#include "d/a/d_a_player.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "rel/d/a/d_a_horse/d_a_horse.h" #include "rel/d/a/obj/d_a_obj_eff/d_a_obj_eff.h" diff --git a/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.cpp b/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.cpp index 825f083338..d49d508427 100644 --- a/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.cpp +++ b/rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_smoke/d_a_obj_smoke.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80CDCE78-80CDCE98 000078 0020+00 1/1 0/0 0/0 .text initBaseMtx__12daObjSmoke_cFv */ diff --git a/rel/d/a/obj/d_a_obj_snowEffTag/d_a_obj_snowEffTag.cpp b/rel/d/a/obj/d_a_obj_snowEffTag/d_a_obj_snowEffTag.cpp index 0ce2435059..e668dbce72 100644 --- a/rel/d/a/obj/d_a_obj_snowEffTag/d_a_obj_snowEffTag.cpp +++ b/rel/d/a/obj/d_a_obj_snowEffTag/d_a_obj_snowEffTag.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_snowEffTag/d_a_obj_snowEffTag.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" diff --git a/rel/d/a/obj/d_a_obj_snow_soup/d_a_obj_snow_soup.cpp b/rel/d/a/obj/d_a_obj_snow_soup/d_a_obj_snow_soup.cpp index b232e18c4d..d8af7b8d9a 100644 --- a/rel/d/a/obj/d_a_obj_snow_soup/d_a_obj_snow_soup.cpp +++ b/rel/d/a/obj/d_a_obj_snow_soup/d_a_obj_snow_soup.cpp @@ -4,10 +4,7 @@ // #include "rel/d/a/obj/d_a_obj_snow_soup/d_a_obj_snow_soup.h" -#include "string.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor.h" #include "f_op/f_op_actor_mng.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_ss_item/d_a_obj_ss_item.cpp b/rel/d/a/obj/d_a_obj_ss_item/d_a_obj_ss_item.cpp index af9519efb2..ce2c22bd35 100644 --- a/rel/d/a/obj/d_a_obj_ss_item/d_a_obj_ss_item.cpp +++ b/rel/d/a/obj/d_a_obj_ss_item/d_a_obj_ss_item.cpp @@ -4,10 +4,7 @@ */ #include "rel/d/a/obj/d_a_obj_ss_item/d_a_obj_ss_item.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_drawlist.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_ext.h" #include "rel/d/a/d_a_myna/d_a_myna.h" diff --git a/rel/d/a/obj/d_a_obj_stone/d_a_obj_stone.cpp b/rel/d/a/obj/d_a_obj_stone/d_a_obj_stone.cpp index c0225482a9..c127152de8 100644 --- a/rel/d/a/obj/d_a_obj_stone/d_a_obj_stone.cpp +++ b/rel/d/a/obj/d_a_obj_stone/d_a_obj_stone.cpp @@ -8,9 +8,7 @@ #include "rel/d/a/obj/d_a_obj_stone/d_a_obj_stone.h" #include "d/d_lib.h" -#include "d/d_procname.h" #include "dol2asm.h" -#include "dolphin/types.h" #include "global.h" // diff --git a/rel/d/a/obj/d_a_obj_stoneMark/d_a_obj_stoneMark.cpp b/rel/d/a/obj/d_a_obj_stoneMark/d_a_obj_stoneMark.cpp index 4da0fdd180..32224fc538 100644 --- a/rel/d/a/obj/d_a_obj_stoneMark/d_a_obj_stoneMark.cpp +++ b/rel/d/a/obj/d_a_obj_stoneMark/d_a_obj_stoneMark.cpp @@ -7,9 +7,7 @@ */ #include "rel/d/a/obj/d_a_obj_stoneMark/d_a_obj_stoneMark.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_lib.h" diff --git a/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.cpp b/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.cpp index 07a79873be..dc1be58150 100644 --- a/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.cpp +++ b/rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_stopper2/d_a_obj_stopper2.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "dol2asm.h" class daObjStopper2_c : public fopAc_ac_c { diff --git a/rel/d/a/obj/d_a_obj_suisya/d_a_obj_suisya.cpp b/rel/d/a/obj/d_a_obj_suisya/d_a_obj_suisya.cpp index 486f34b85c..26a7e74d11 100644 --- a/rel/d/a/obj/d_a_obj_suisya/d_a_obj_suisya.cpp +++ b/rel/d/a/obj/d_a_obj_suisya/d_a_obj_suisya.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_suisya/d_a_obj_suisya.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_swBallA/d_a_obj_swBallA.cpp b/rel/d/a/obj/d_a_obj_swBallA/d_a_obj_swBallA.cpp index 8b85da4809..58cda10419 100644 --- a/rel/d/a/obj/d_a_obj_swBallA/d_a_obj_swBallA.cpp +++ b/rel/d/a/obj/d_a_obj_swBallA/d_a_obj_swBallA.cpp @@ -5,9 +5,6 @@ #include "rel/d/a/obj/d_a_obj_swBallA/d_a_obj_swBallA.h" #include "rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.h" -#include "d/d_lib.h" -#include "d/a/d_a_player.h" -#include "f_pc/f_pc_executor.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "dol2asm.h" diff --git a/rel/d/a/obj/d_a_obj_swBallB/d_a_obj_swBallB.cpp b/rel/d/a/obj/d_a_obj_swBallB/d_a_obj_swBallB.cpp index 1fac6152d6..9307a8fa56 100644 --- a/rel/d/a/obj/d_a_obj_swBallB/d_a_obj_swBallB.cpp +++ b/rel/d/a/obj/d_a_obj_swBallB/d_a_obj_swBallB.cpp @@ -5,8 +5,6 @@ #include "rel/d/a/obj/d_a_obj_swBallB/d_a_obj_swBallB.h" #include "rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.h" -#include "d/a/d_a_player.h" -#include "d/d_lib.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "dol2asm.h" diff --git a/rel/d/a/obj/d_a_obj_swpropeller/d_a_obj_swpropeller.cpp b/rel/d/a/obj/d_a_obj_swpropeller/d_a_obj_swpropeller.cpp index 762a1a0d97..dfc44fa49c 100644 --- a/rel/d/a/obj/d_a_obj_swpropeller/d_a_obj_swpropeller.cpp +++ b/rel/d/a/obj/d_a_obj_swpropeller/d_a_obj_swpropeller.cpp @@ -4,7 +4,6 @@ // #include "rel/d/a/obj/d_a_obj_swpropeller/d_a_obj_swpropeller.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_swspinner/d_a_obj_swspinner.cpp b/rel/d/a/obj/d_a_obj_swspinner/d_a_obj_swspinner.cpp index 36c36b5bae..0763d865a0 100644 --- a/rel/d/a/obj/d_a_obj_swspinner/d_a_obj_swspinner.cpp +++ b/rel/d/a/obj/d_a_obj_swspinner/d_a_obj_swspinner.cpp @@ -4,8 +4,6 @@ // #include "rel/d/a/obj/d_a_obj_swspinner/d_a_obj_swspinner.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/com/d_com_inf_game.h" #include "d/d_procname.h" /* ############################################################################################## */ diff --git a/rel/d/a/obj/d_a_obj_tgake/d_a_obj_tgake.cpp b/rel/d/a/obj/d_a_obj_tgake/d_a_obj_tgake.cpp index c9a4456965..1971acbb28 100644 --- a/rel/d/a/obj/d_a_obj_tgake/d_a_obj_tgake.cpp +++ b/rel/d/a/obj/d_a_obj_tgake/d_a_obj_tgake.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_tgake/d_a_obj_tgake.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.cpp b/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.cpp index d1868c2864..2d88693111 100644 --- a/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.cpp +++ b/rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_tmoon/d_a_obj_tmoon.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "f_op/f_op_draw_tag.h" /* 80D12B98-80D12BB8 000078 0020+00 1/1 0/0 0/0 .text CheckCreateHeap__FP10fopAc_ac_c */ diff --git a/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.cpp b/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.cpp index 191ca01d5e..84448d981f 100644 --- a/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.cpp +++ b/rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_toaru_maki/d_a_obj_toaru_maki.h" -#include "d/bg/d_bg_s.h" -#include "d/bg/d_bg_w.h" #include "dol2asm.h" class daObjToaruMaki_c : public fopAc_ac_c, public request_of_phase_process_class { diff --git a/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.cpp b/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.cpp index 6192cc5f6c..3960a94781 100644 --- a/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.cpp +++ b/rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_tornado/d_a_obj_tornado.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "dol2asm.h" #include "d/kankyo/d_kankyo_rain.h" diff --git a/rel/d/a/obj/d_a_obj_usaku/d_a_obj_usaku.cpp b/rel/d/a/obj/d_a_obj_usaku/d_a_obj_usaku.cpp index 4966b3b041..fc699e14c4 100644 --- a/rel/d/a/obj/d_a_obj_usaku/d_a_obj_usaku.cpp +++ b/rel/d/a/obj/d_a_obj_usaku/d_a_obj_usaku.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_usaku/d_a_obj_usaku.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_vground/d_a_obj_vground.cpp b/rel/d/a/obj/d_a_obj_vground/d_a_obj_vground.cpp index ebf81c0922..b881a7a82c 100644 --- a/rel/d/a/obj/d_a_obj_vground/d_a_obj_vground.cpp +++ b/rel/d/a/obj/d_a_obj_vground/d_a_obj_vground.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_vground/d_a_obj_vground.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D213D8-80D213F8 000078 0020+00 1/1 0/0 0/0 .text CheckCreateHeap__FP10fopAc_ac_c */ diff --git a/rel/d/a/obj/d_a_obj_volcball/d_a_obj_volcball.cpp b/rel/d/a/obj/d_a_obj_volcball/d_a_obj_volcball.cpp index a8d5cc111c..c6191fcc48 100644 --- a/rel/d/a/obj/d_a_obj_volcball/d_a_obj_volcball.cpp +++ b/rel/d/a/obj/d_a_obj_volcball/d_a_obj_volcball.cpp @@ -5,10 +5,8 @@ #include "rel/d/a/obj/d_a_obj_volcball/d_a_obj_volcball.h" #include "SSystem/SComponent/c_math.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/event/d_event_lib.h" #include "dol2asm.h" #include "f_op/f_op_actor_mng.h" diff --git a/rel/d/a/obj/d_a_obj_wchain/d_a_obj_wchain.cpp b/rel/d/a/obj/d_a_obj_wchain/d_a_obj_wchain.cpp index 7a90e356ef..a03ad2f95a 100644 --- a/rel/d/a/obj/d_a_obj_wchain/d_a_obj_wchain.cpp +++ b/rel/d/a/obj/d_a_obj_wchain/d_a_obj_wchain.cpp @@ -4,11 +4,6 @@ // #include "rel/d/a/obj/d_a_obj_wchain/d_a_obj_wchain.h" -#include "SSystem/SComponent/c_math.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/J3DGraphBase/J3DDrawBuffer.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/a/d_a_player.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_web0/d_a_obj_web0.cpp b/rel/d/a/obj/d_a_obj_web0/d_a_obj_web0.cpp index ae47ad738b..1db0d1b8fd 100644 --- a/rel/d/a/obj/d_a_obj_web0/d_a_obj_web0.cpp +++ b/rel/d/a/obj/d_a_obj_web0/d_a_obj_web0.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/obj/d_a_obj_web0/d_a_obj_web0.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/bg/d_bg_w.h" -#include "d/d_procname.h" #include "dol2asm.h" #include "f_op/f_op_actor_mng.h" #include "global.h" diff --git a/rel/d/a/obj/d_a_obj_web1/d_a_obj_web1.cpp b/rel/d/a/obj/d_a_obj_web1/d_a_obj_web1.cpp index d5f5ca8e3f..ebbeebd496 100644 --- a/rel/d/a/obj/d_a_obj_web1/d_a_obj_web1.cpp +++ b/rel/d/a/obj/d_a_obj_web1/d_a_obj_web1.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_web1/d_a_obj_web1.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "JSystem/JMath/JMath.h" #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" #include "d/bg/d_bg_w.h" diff --git a/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.cpp b/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.cpp index 38001ad715..8474bdf043 100644 --- a/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.cpp +++ b/rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_well_cover/d_a_obj_well_cover.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/bg/d_bg_w.h" #include "d/d_procname.h" #include "d/a/d_a_player.h" diff --git a/rel/d/a/obj/d_a_obj_wflag/d_a_obj_wflag.cpp b/rel/d/a/obj/d_a_obj_wflag/d_a_obj_wflag.cpp index c58c7b9d8c..243000e278 100644 --- a/rel/d/a/obj/d_a_obj_wflag/d_a_obj_wflag.cpp +++ b/rel/d/a/obj/d_a_obj_wflag/d_a_obj_wflag.cpp @@ -4,7 +4,6 @@ #include "rel/d/a/obj/d_a_obj_wflag/d_a_obj_wflag.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "SSystem/SComponent/c_math.h" /* 80D36B98-80D36CA0 000078 0108+00 1/0 0/0 0/0 .text daObj_Wflag_Draw__FP15obj_wflag_class */ diff --git a/rel/d/a/obj/d_a_obj_wind_stone/d_a_obj_wind_stone.cpp b/rel/d/a/obj/d_a_obj_wind_stone/d_a_obj_wind_stone.cpp index 8797f78968..5ae326060a 100644 --- a/rel/d/a/obj/d_a_obj_wind_stone/d_a_obj_wind_stone.cpp +++ b/rel/d/a/obj/d_a_obj_wind_stone/d_a_obj_wind_stone.cpp @@ -4,10 +4,7 @@ */ #include "rel/d/a/obj/d_a_obj_wind_stone/d_a_obj_wind_stone.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "Z2AudioLib/Z2WolfHowlMgr.h" #include "d/a/d_a_alink.h" -#include "d/d_procname.h" #include "d/meter/d_meter2_info.h" #include "dol2asm.h" #include "dolphin/types.h" diff --git a/rel/d/a/obj/d_a_obj_window/d_a_obj_window.cpp b/rel/d/a/obj/d_a_obj_window/d_a_obj_window.cpp index 91db7dcb99..b7edf5f8c0 100644 --- a/rel/d/a/obj/d_a_obj_window/d_a_obj_window.cpp +++ b/rel/d/a/obj/d_a_obj_window/d_a_obj_window.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_window/d_a_obj_window.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.cpp b/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.cpp index 651b37196a..c8aa663314 100644 --- a/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.cpp +++ b/rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_wood_pendulum/d_a_obj_wood_pendulum.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "dol2asm.h" class daObjWPndlm_c : public fopAc_ac_c { diff --git a/rel/d/a/obj/d_a_obj_wsword/d_a_obj_wsword.cpp b/rel/d/a/obj/d_a_obj_wsword/d_a_obj_wsword.cpp index 6b799ac82f..687f6ac26a 100644 --- a/rel/d/a/obj/d_a_obj_wsword/d_a_obj_wsword.cpp +++ b/rel/d/a/obj/d_a_obj_wsword/d_a_obj_wsword.cpp @@ -1,149 +1,147 @@ -/** - * d_a_obj_wsword.cpp - * Object - Wooden Sword - */ - -#include "rel/d/a/obj/d_a_obj_wsword/d_a_obj_wsword.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" -#include "f_op/f_op_actor_mng.h" - -/* 80D3BF2C-80D3BF30 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ -static char* l_arcName = "Obj_brksw"; - -/* 80D3BF30-80D3BF74 000004 0044+00 1/1 0/0 0/0 .data l_cyl_src */ -static dCcD_SrcCyl l_cyl_src = { - { - {0x0, {{0x0, 0x0, 0x0}, {0x0, 0x0}, 0x19}}, // mObj - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x6}, // mGObjAt - {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x4}, // mGObjTg - {0x0}, // mGObjCo - }, // mObjInf - { - {0.0f, 0.0f, 0.0f}, // mCenter - 50.0f, // mRadius - 150.0f // mHeight - } // mCyl -}; - -/* 80D3B978-80D3B998 000078 0020+00 1/1 0/0 0/0 .text CheckCreateHeap__FP10fopAc_ac_c */ -static int CheckCreateHeap(fopAc_ac_c* i_this) { - return static_cast(i_this)->CreateHeap(); -} - -/* 80D3B998-80D3B9D4 000098 003C+00 1/1 0/0 0/0 .text initBaseMtx__13daObjWSword_cFv */ -void daObjWSword_c::initBaseMtx() { - mpModel->setBaseScale(scale); - setBaseMtx(); -} - -/* 80D3B9D4-80D3BA40 0000D4 006C+00 2/2 0/0 0/0 .text setBaseMtx__13daObjWSword_cFv */ -void daObjWSword_c::setBaseMtx() { - mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); - mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z); - mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); -} - -/* 80D3BA40-80D3BAB8 000140 0078+00 1/1 0/0 0/0 .text Create__13daObjWSword_cFv */ -int daObjWSword_c::Create() { - initBaseMtx(); - fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); - mStts.Init(0xff, 0xff, this); - mCyl.Set(l_cyl_src); - mCyl.SetStts(&mStts); - fopAcM_setCullSizeBox2(this, mpModel->getModelData()); - return 1; -} - -/* 80D3BAB8-80D3BB28 0001B8 0070+00 1/1 0/0 0/0 .text CreateHeap__13daObjWSword_cFv */ -int daObjWSword_c::CreateHeap() { - J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, 3); - mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); - return mpModel != NULL ? 1 : 0; -} - -/* 80D3BB28-80D3BCA0 000228 0178+00 1/1 0/0 0/0 .text create__13daObjWSword_cFv */ -int daObjWSword_c::create() { - fopAcM_SetupActor(this, daObjWSword_c); - int phase = dComIfG_resLoad(&mPhaseReq, l_arcName); - if (phase == cPhs_COMPLEATE_e) { - if (!fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckCreateHeap, 0x840)) { - return cPhs_ERROR_e; - } else if (!Create()) { - return cPhs_ERROR_e; - } - } - return phase; -} - -/* 80D3BDA0-80D3BDF0 0004A0 0050+00 1/1 0/0 0/0 .text execute__13daObjWSword_cFv */ -int daObjWSword_c::execute() { - setBaseMtx(); - mCyl.SetC(current.pos); - dComIfG_Ccsp()->Set(&mCyl); - return 1; -} - -/* 80D3BDF0-80D3BE54 0004F0 0064+00 1/1 0/0 0/0 .text draw__13daObjWSword_cFv */ -int daObjWSword_c::draw() { - g_env_light.settingTevStruct(0, ¤t.pos, &tevStr); - g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr); - mDoExt_modelUpdateDL(mpModel); - return 1; -} - -/* 80D3BE54-80D3BE88 000554 0034+00 1/1 0/0 0/0 .text _delete__13daObjWSword_cFv */ -int daObjWSword_c::_delete() { - dComIfG_resDelete(&mPhaseReq, l_arcName); - return 1; -} - -/* 80D3BE88-80D3BEA8 000588 0020+00 1/0 0/0 0/0 .text daObjWSword_Draw__FP13daObjWSword_c - */ -static int daObjWSword_Draw(daObjWSword_c* i_this) { - return i_this->draw(); -} - -/* 80D3BEA8-80D3BEC8 0005A8 0020+00 1/0 0/0 0/0 .text daObjWSword_Execute__FP13daObjWSword_c */ -static int daObjWSword_Execute(daObjWSword_c* i_this) { - return i_this->execute(); -} - -/* 80D3BEC8-80D3BEE8 0005C8 0020+00 1/0 0/0 0/0 .text daObjWSword_Delete__FP13daObjWSword_c */ -static int daObjWSword_Delete(daObjWSword_c* i_this) { - return i_this->_delete(); -} - -/* 80D3BEE8-80D3BF08 0005E8 0020+00 1/0 0/0 0/0 .text daObjWSword_Create__FP10fopAc_ac_c - */ -static int daObjWSword_Create(fopAc_ac_c* i_this) { - return static_cast(i_this)->create(); -} - -/* 80D3BF74-80D3BF94 -00001 0020+00 1/0 0/0 0/0 .data l_daObjWSword_Method */ -static actor_method_class l_daObjWSword_Method = { - (process_method_func)daObjWSword_Create, - (process_method_func)daObjWSword_Delete, - (process_method_func)daObjWSword_Execute, - (process_method_func)NULL, - (process_method_func)daObjWSword_Draw, -}; - -/* 80D3BF94-80D3BFC4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_WoodenSword */ -extern actor_process_profile_definition g_profile_Obj_WoodenSword = { - fpcLy_CURRENT_e, - 7, - fpcPi_CURRENT_e, - PROC_Obj_WoodenSword, - &g_fpcLf_Method.mBase, - sizeof(daObjWSword_c), - 0, - 0, - &g_fopAc_Method.base, - 0x20F, - &l_daObjWSword_Method, - 0x40100, - fopAc_ACTOR_e, - fopAc_CULLBOX_CUSTOM_e, -}; +/** + * d_a_obj_wsword.cpp + * Object - Wooden Sword + */ + +#include "rel/d/a/obj/d_a_obj_wsword/d_a_obj_wsword.h" +#include "d/com/d_com_inf_game.h" +#include "f_op/f_op_actor_mng.h" + +/* 80D3BF2C-80D3BF30 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ +static char* l_arcName = "Obj_brksw"; + +/* 80D3BF30-80D3BF74 000004 0044+00 1/1 0/0 0/0 .data l_cyl_src */ +static dCcD_SrcCyl l_cyl_src = { + { + {0x0, {{0x0, 0x0, 0x0}, {0x0, 0x0}, 0x19}}, // mObj + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x6}, // mGObjAt + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x4}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf + { + {0.0f, 0.0f, 0.0f}, // mCenter + 50.0f, // mRadius + 150.0f // mHeight + } // mCyl +}; + +/* 80D3B978-80D3B998 000078 0020+00 1/1 0/0 0/0 .text CheckCreateHeap__FP10fopAc_ac_c */ +static int CheckCreateHeap(fopAc_ac_c* i_this) { + return static_cast(i_this)->CreateHeap(); +} + +/* 80D3B998-80D3B9D4 000098 003C+00 1/1 0/0 0/0 .text initBaseMtx__13daObjWSword_cFv */ +void daObjWSword_c::initBaseMtx() { + mpModel->setBaseScale(scale); + setBaseMtx(); +} + +/* 80D3B9D4-80D3BA40 0000D4 006C+00 2/2 0/0 0/0 .text setBaseMtx__13daObjWSword_cFv */ +void daObjWSword_c::setBaseMtx() { + mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); + mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z); + mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); +} + +/* 80D3BA40-80D3BAB8 000140 0078+00 1/1 0/0 0/0 .text Create__13daObjWSword_cFv */ +int daObjWSword_c::Create() { + initBaseMtx(); + fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); + mStts.Init(0xff, 0xff, this); + mCyl.Set(l_cyl_src); + mCyl.SetStts(&mStts); + fopAcM_setCullSizeBox2(this, mpModel->getModelData()); + return 1; +} + +/* 80D3BAB8-80D3BB28 0001B8 0070+00 1/1 0/0 0/0 .text CreateHeap__13daObjWSword_cFv */ +int daObjWSword_c::CreateHeap() { + J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes(l_arcName, 3); + mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); + return mpModel != NULL ? 1 : 0; +} + +/* 80D3BB28-80D3BCA0 000228 0178+00 1/1 0/0 0/0 .text create__13daObjWSword_cFv */ +int daObjWSword_c::create() { + fopAcM_SetupActor(this, daObjWSword_c); + int phase = dComIfG_resLoad(&mPhaseReq, l_arcName); + if (phase == cPhs_COMPLEATE_e) { + if (!fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckCreateHeap, 0x840)) { + return cPhs_ERROR_e; + } else if (!Create()) { + return cPhs_ERROR_e; + } + } + return phase; +} + +/* 80D3BDA0-80D3BDF0 0004A0 0050+00 1/1 0/0 0/0 .text execute__13daObjWSword_cFv */ +int daObjWSword_c::execute() { + setBaseMtx(); + mCyl.SetC(current.pos); + dComIfG_Ccsp()->Set(&mCyl); + return 1; +} + +/* 80D3BDF0-80D3BE54 0004F0 0064+00 1/1 0/0 0/0 .text draw__13daObjWSword_cFv */ +int daObjWSword_c::draw() { + g_env_light.settingTevStruct(0, ¤t.pos, &tevStr); + g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr); + mDoExt_modelUpdateDL(mpModel); + return 1; +} + +/* 80D3BE54-80D3BE88 000554 0034+00 1/1 0/0 0/0 .text _delete__13daObjWSword_cFv */ +int daObjWSword_c::_delete() { + dComIfG_resDelete(&mPhaseReq, l_arcName); + return 1; +} + +/* 80D3BE88-80D3BEA8 000588 0020+00 1/0 0/0 0/0 .text daObjWSword_Draw__FP13daObjWSword_c + */ +static int daObjWSword_Draw(daObjWSword_c* i_this) { + return i_this->draw(); +} + +/* 80D3BEA8-80D3BEC8 0005A8 0020+00 1/0 0/0 0/0 .text daObjWSword_Execute__FP13daObjWSword_c */ +static int daObjWSword_Execute(daObjWSword_c* i_this) { + return i_this->execute(); +} + +/* 80D3BEC8-80D3BEE8 0005C8 0020+00 1/0 0/0 0/0 .text daObjWSword_Delete__FP13daObjWSword_c */ +static int daObjWSword_Delete(daObjWSword_c* i_this) { + return i_this->_delete(); +} + +/* 80D3BEE8-80D3BF08 0005E8 0020+00 1/0 0/0 0/0 .text daObjWSword_Create__FP10fopAc_ac_c + */ +static int daObjWSword_Create(fopAc_ac_c* i_this) { + return static_cast(i_this)->create(); +} + +/* 80D3BF74-80D3BF94 -00001 0020+00 1/0 0/0 0/0 .data l_daObjWSword_Method */ +static actor_method_class l_daObjWSword_Method = { + (process_method_func)daObjWSword_Create, + (process_method_func)daObjWSword_Delete, + (process_method_func)daObjWSword_Execute, + (process_method_func)NULL, + (process_method_func)daObjWSword_Draw, +}; + +/* 80D3BF94-80D3BFC4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_WoodenSword */ +extern actor_process_profile_definition g_profile_Obj_WoodenSword = { + fpcLy_CURRENT_e, + 7, + fpcPi_CURRENT_e, + PROC_Obj_WoodenSword, + &g_fpcLf_Method.mBase, + sizeof(daObjWSword_c), + 0, + 0, + &g_fopAc_Method.base, + 0x20F, + &l_daObjWSword_Method, + 0x40100, + fopAc_ACTOR_e, + fopAc_CULLBOX_CUSTOM_e, +}; diff --git a/rel/d/a/obj/d_a_obj_ystone/d_a_obj_ystone.cpp b/rel/d/a/obj/d_a_obj_ystone/d_a_obj_ystone.cpp index 6d94ca92fe..ab992a3455 100644 --- a/rel/d/a/obj/d_a_obj_ystone/d_a_obj_ystone.cpp +++ b/rel/d/a/obj/d_a_obj_ystone/d_a_obj_ystone.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_ystone/d_a_obj_ystone.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_zcloth/d_a_obj_zcloth.cpp b/rel/d/a/obj/d_a_obj_zcloth/d_a_obj_zcloth.cpp index b89805cae3..79877b0e58 100644 --- a/rel/d/a/obj/d_a_obj_zcloth/d_a_obj_zcloth.cpp +++ b/rel/d/a/obj/d_a_obj_zcloth/d_a_obj_zcloth.cpp @@ -1,114 +1,112 @@ -/** - * d_a_obj_zcloth.cpp - * Object - Zora Armor - */ - -#include "rel/d/a/obj/d_a_obj_zcloth/d_a_obj_zcloth.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_item_data.h" -#include "d/a/d_a_itembase_static.h" -#include "d/d_procname.h" - -/* 80D3EE18-80D3EE54 000078 003C+00 1/1 0/0 0/0 .text initBaseMtx__13daObjZCloth_cFv */ -void daObjZCloth_c::initBaseMtx() { - mpModel->setBaseScale(scale); - setBaseMtx(); -} - -/* 80D3EE54-80D3EEC0 0000B4 006C+00 2/2 0/0 0/0 .text setBaseMtx__13daObjZCloth_cFv */ -void daObjZCloth_c::setBaseMtx() { - mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); - mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z); - mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); -} - -/* 80D3EEC0-80D3EF0C 000120 004C+00 1/1 0/0 0/0 .text Create__13daObjZCloth_cFv */ -int daObjZCloth_c::Create() { - initBaseMtx(); - fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); - fopAcM_setCullSizeBox2(this, mpModel->getModelData()); - return 1; -} - -/* 80D3EF0C-80D3F0AC 00016C 01A0+00 1/1 0/0 0/0 .text create__13daObjZCloth_cFv */ -int daObjZCloth_c::create() { - fopAcM_SetupActor(this, daObjZCloth_c); - m_itemNo = 0x31; - int phase = dComIfG_resLoad(&mPhase, dItem_data::getFieldArc(m_itemNo)); - if (phase == cPhs_COMPLEATE_e) { - if (!fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckFieldItemCreateHeap, 0x2fb0)) { - return cPhs_ERROR_e; - } - else if (!Create()) { - return cPhs_ERROR_e; - } - } - return phase; -} - -/* 80D3F1AC-80D3F1D0 00040C 0024+00 1/1 0/0 0/0 .text execute__13daObjZCloth_cFv */ -int daObjZCloth_c::execute() { - setBaseMtx(); - return 1; -} - -/* 80D3F1D0-80D3F200 000430 0030+00 1/1 0/0 0/0 .text draw__13daObjZCloth_cFv */ -int daObjZCloth_c::draw() { - DrawBase(); - return 1; -} - -/* 80D3F200-80D3F23C 000460 003C+00 1/1 0/0 0/0 .text _delete__13daObjZCloth_cFv */ -int daObjZCloth_c::_delete() { - dComIfG_resDelete(&mPhase, dItem_data::getFieldArc(m_itemNo)); - return 1; -} - -/* 80D3F23C-80D3F25C 00049C 0020+00 1/0 0/0 0/0 .text daObjZCloth_Draw__FP13daObjZCloth_c */ -static int daObjZCloth_Draw(daObjZCloth_c* i_this) { - return i_this->draw(); -} - -/* 80D3F25C-80D3F27C 0004BC 0020+00 1/0 0/0 0/0 .text daObjZCloth_Execute__FP13daObjZCloth_c */ -static int daObjZCloth_Execute(daObjZCloth_c* i_this) { - return i_this->execute(); -} - -/* 80D3F27C-80D3F29C 0004DC 0020+00 1/0 0/0 0/0 .text daObjZCloth_Delete__FP13daObjZCloth_c */ -static int daObjZCloth_Delete(daObjZCloth_c* i_this) { - return i_this->_delete(); -} - -/* 80D3F29C-80D3F2BC 0004FC 0020+00 1/0 0/0 0/0 .text daObjZCloth_Create__FP10fopAc_ac_c */ -static int daObjZCloth_Create(fopAc_ac_c* i_this) { - return static_cast(i_this)->create(); -} - -/* 80D3F2D4-80D3F2F4 -00001 0020+00 1/0 0/0 0/0 .data l_daObjZCloth_Method */ -static actor_method_class l_daObjZCloth_Method = { - (process_method_func)daObjZCloth_Create, - (process_method_func)daObjZCloth_Delete, - (process_method_func)daObjZCloth_Execute, - (process_method_func)NULL, - (process_method_func)daObjZCloth_Draw, -}; - -/* 80D3F2F4-80D3F324 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_ZoraCloth */ -extern actor_process_profile_definition g_profile_Obj_ZoraCloth = { - fpcLy_CURRENT_e, - 7, - fpcPi_CURRENT_e, - PROC_Obj_ZoraCloth, - &g_fpcLf_Method.mBase, - sizeof(daObjZCloth_c), - 0, - 0, - &g_fopAc_Method.base, - 0x220, - &l_daObjZCloth_Method, - 0x40100, - fopAc_ACTOR_e, - fopAc_CULLBOX_CUSTOM_e, -}; +/** + * d_a_obj_zcloth.cpp + * Object - Zora Armor + */ + +#include "rel/d/a/obj/d_a_obj_zcloth/d_a_obj_zcloth.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_item_data.h" +#include "d/a/d_a_itembase_static.h" +#include "d/d_procname.h" + +/* 80D3EE18-80D3EE54 000078 003C+00 1/1 0/0 0/0 .text initBaseMtx__13daObjZCloth_cFv */ +void daObjZCloth_c::initBaseMtx() { + mpModel->setBaseScale(scale); + setBaseMtx(); +} + +/* 80D3EE54-80D3EEC0 0000B4 006C+00 2/2 0/0 0/0 .text setBaseMtx__13daObjZCloth_cFv */ +void daObjZCloth_c::setBaseMtx() { + mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); + mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z); + mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); +} + +/* 80D3EEC0-80D3EF0C 000120 004C+00 1/1 0/0 0/0 .text Create__13daObjZCloth_cFv */ +int daObjZCloth_c::Create() { + initBaseMtx(); + fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); + fopAcM_setCullSizeBox2(this, mpModel->getModelData()); + return 1; +} + +/* 80D3EF0C-80D3F0AC 00016C 01A0+00 1/1 0/0 0/0 .text create__13daObjZCloth_cFv */ +int daObjZCloth_c::create() { + fopAcM_SetupActor(this, daObjZCloth_c); + m_itemNo = 0x31; + int phase = dComIfG_resLoad(&mPhase, dItem_data::getFieldArc(m_itemNo)); + if (phase == cPhs_COMPLEATE_e) { + if (!fopAcM_entrySolidHeap(this, (heapCallbackFunc)CheckFieldItemCreateHeap, 0x2fb0)) { + return cPhs_ERROR_e; + } + else if (!Create()) { + return cPhs_ERROR_e; + } + } + return phase; +} + +/* 80D3F1AC-80D3F1D0 00040C 0024+00 1/1 0/0 0/0 .text execute__13daObjZCloth_cFv */ +int daObjZCloth_c::execute() { + setBaseMtx(); + return 1; +} + +/* 80D3F1D0-80D3F200 000430 0030+00 1/1 0/0 0/0 .text draw__13daObjZCloth_cFv */ +int daObjZCloth_c::draw() { + DrawBase(); + return 1; +} + +/* 80D3F200-80D3F23C 000460 003C+00 1/1 0/0 0/0 .text _delete__13daObjZCloth_cFv */ +int daObjZCloth_c::_delete() { + dComIfG_resDelete(&mPhase, dItem_data::getFieldArc(m_itemNo)); + return 1; +} + +/* 80D3F23C-80D3F25C 00049C 0020+00 1/0 0/0 0/0 .text daObjZCloth_Draw__FP13daObjZCloth_c */ +static int daObjZCloth_Draw(daObjZCloth_c* i_this) { + return i_this->draw(); +} + +/* 80D3F25C-80D3F27C 0004BC 0020+00 1/0 0/0 0/0 .text daObjZCloth_Execute__FP13daObjZCloth_c */ +static int daObjZCloth_Execute(daObjZCloth_c* i_this) { + return i_this->execute(); +} + +/* 80D3F27C-80D3F29C 0004DC 0020+00 1/0 0/0 0/0 .text daObjZCloth_Delete__FP13daObjZCloth_c */ +static int daObjZCloth_Delete(daObjZCloth_c* i_this) { + return i_this->_delete(); +} + +/* 80D3F29C-80D3F2BC 0004FC 0020+00 1/0 0/0 0/0 .text daObjZCloth_Create__FP10fopAc_ac_c */ +static int daObjZCloth_Create(fopAc_ac_c* i_this) { + return static_cast(i_this)->create(); +} + +/* 80D3F2D4-80D3F2F4 -00001 0020+00 1/0 0/0 0/0 .data l_daObjZCloth_Method */ +static actor_method_class l_daObjZCloth_Method = { + (process_method_func)daObjZCloth_Create, + (process_method_func)daObjZCloth_Delete, + (process_method_func)daObjZCloth_Execute, + (process_method_func)NULL, + (process_method_func)daObjZCloth_Draw, +}; + +/* 80D3F2F4-80D3F324 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_ZoraCloth */ +extern actor_process_profile_definition g_profile_Obj_ZoraCloth = { + fpcLy_CURRENT_e, + 7, + fpcPi_CURRENT_e, + PROC_Obj_ZoraCloth, + &g_fpcLf_Method.mBase, + sizeof(daObjZCloth_c), + 0, + 0, + &g_fopAc_Method.base, + 0x220, + &l_daObjZCloth_Method, + 0x40100, + fopAc_ACTOR_e, + fopAc_CULLBOX_CUSTOM_e, +}; diff --git a/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.cpp b/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.cpp index c3ae4031a0..196b4b824f 100644 --- a/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.cpp +++ b/rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_zdoor/d_a_obj_zdoor.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "dol2asm.h" class daZdoor_c : public dBgS_MoveBgActor { diff --git a/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara.cpp b/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara.cpp index 06a13974bc..fab27c6c78 100644 --- a/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara.cpp +++ b/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara.cpp @@ -1,654 +1,652 @@ -/** - * d_a_obj_zrTurara.cpp - * Object - Zora River Stalactite - */ - -#include "rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "SSystem/SComponent/c_math.h" -#include "d/bg/d_bg_w.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" -#include "dol2asm.h" - -// -// Forward References: -// - -extern "C" void __ct__16daZrTurara_HIO_cFv(); -extern "C" void __dt__14mDoHIO_entry_cFv(); -extern "C" void setBaseMtx__12daZrTurara_cFv(); -extern "C" void CreateHeap__12daZrTurara_cFv(); -extern "C" void create__12daZrTurara_cFv(); -extern "C" void __dt__8cM3dGCylFv(); -extern "C" void __dt__8cM3dGAabFv(); -extern "C" void __dt__10dCcD_GSttsFv(); -extern "C" void Execute__12daZrTurara_cFPPA3_A4_f(); -extern "C" void move__12daZrTurara_cFv(); -extern "C" void modeWait__12daZrTurara_cFv(); -extern "C" void init_modeBreak__12daZrTurara_cFv(); -extern "C" void modeBreak__12daZrTurara_cFv(); -extern "C" void init_modeEnd__12daZrTurara_cFv(); -extern "C" void modeEnd__12daZrTurara_cFv(); -extern "C" void Draw__12daZrTurara_cFv(); -extern "C" void Delete__12daZrTurara_cFv(); -extern "C" static void daZrTurara_Draw__FP12daZrTurara_c(); -extern "C" static void daZrTurara_Execute__FP12daZrTurara_c(); -extern "C" static void daZrTurara_Delete__FP12daZrTurara_c(); -extern "C" static void daZrTurara_Create__FP10fopAc_ac_c(); -extern "C" void __dt__10cCcD_GSttsFv(); -extern "C" void __dt__16daZrTurara_HIO_cFv(); -extern "C" void __sinit_d_a_obj_zrTurara_cpp(); -extern "C" u8 const mCcDObjInfo__12daZrTurara_c[48]; -extern "C" extern char const* const d_a_obj_zrTurara__stringBase0; -extern "C" u8 mCcDCyl__12daZrTurara_c[68]; - -// -// External References: -// - -extern "C" void mDoMtx_ZXYrotM__FPA4_fsss(); -extern "C" void scaleM__14mDoMtx_stack_cFfff(); -extern "C" void mDoExt_modelUpdateDL__FP8J3DModel(); -extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl(); -extern "C" void fopAcM_create__FsUlPC4cXyziPC5csXyzPC4cXyzSc(); -extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff(); -extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc(); -extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc(); -extern "C" void dComIfGp_getReverb__Fi(); -extern "C" void onSwitch__10dSv_info_cFii(); -extern "C" void isSwitch__10dSv_info_cCFii(); -extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci(); -extern "C" void getEmitter__Q213dPa_control_c7level_cFUl(); -extern "C" void -set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf(); -extern "C" void -set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf(); -extern "C" void Release__4cBgSFP9dBgW_Base(); -extern "C" void Regist__4dBgSFP9dBgW_BaseP10fopAc_ac_c(); -extern "C" void dBgS_MoveBGProc_TypicalRotY__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz(); -extern "C" void __ct__16dBgS_MoveBgActorFv(); -extern "C" bool Create__16dBgS_MoveBgActorFv(); -extern "C" bool IsDelete__16dBgS_MoveBgActorFv(); -extern "C" bool ToFore__16dBgS_MoveBgActorFv(); -extern "C" bool ToBack__16dBgS_MoveBgActorFv(); -extern "C" void -MoveBGCreate__16dBgS_MoveBgActorFPCciPFP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz_vUlPA3_A4_f(); -extern "C" void MoveBGDelete__16dBgS_MoveBgActorFv(); -extern "C" void MoveBGExecute__16dBgS_MoveBgActorFv(); -extern "C" void Set__4cBgWFP6cBgD_tUlPA3_A4_f(); -extern "C" void __ct__4dBgWFv(); -extern "C" void Move__4dBgWFv(); -extern "C" void __ct__10dCcD_GSttsFv(); -extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c(); -extern "C" void __ct__12dCcD_GObjInfFv(); -extern "C" void ChkTgHit__12dCcD_GObjInfFv(); -extern "C" void GetTgHitGObj__12dCcD_GObjInfFv(); -extern "C" void Set__8dCcD_CylFRC11dCcD_SrcCyl(); -extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c(); -extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c(); -extern "C" void Set__4cCcSFP8cCcD_Obj(); -extern "C" void cM_rndF__Ff(); -extern "C" void cM_rndFX__Ff(); -extern "C" void ChkUsed__9cBgW_BgIdCFv(); -extern "C" void SetC__8cM3dGCylFRC4cXyz(); -extern "C" void SetH__8cM3dGCylFf(); -extern "C" void SetR__8cM3dGCylFf(); -extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); -extern "C" void* __nw__FUl(); -extern "C" void __dl__FPv(); -extern "C" void __ptmf_scall(); -extern "C" void _savegpr_28(); -extern "C" void _restgpr_28(); -extern "C" extern void* __vt__8dCcD_Cyl[36]; -extern "C" extern void* __vt__9dCcD_Stts[11]; -extern "C" extern void* __vt__12cCcD_CylAttr[25]; -extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; -extern "C" extern void* __vt__9cCcD_Stts[8]; -extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; -extern "C" void __register_global_object(); - -// -// Declarations: -// - -/* 80D41608-80D41614 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ -SECTION_DATA static u8 cNullVec__6Z2Calc[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; - -/* 80D41614-80D41628 00000C 0004+10 0/0 0/0 0/0 .data @1787 */ -#pragma push -#pragma force_active on -SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = { - 0x02000201, - /* padding */ - 0x40080000, - 0x00000000, - 0x3FE00000, - 0x00000000, -}; -#pragma pop - -/* 80D4159C-80D415A0 000000 0004+00 3/4 0/0 0/0 .rodata @3657 */ -SECTION_RODATA static f32 const lit_3657 = 250.0f; -COMPILER_STRIP_GATE(0x80D4159C, &lit_3657); - -/* 80D4056C-80D4059C 0000EC 0030+00 1/1 0/0 0/0 .text __ct__16daZrTurara_HIO_cFv */ -daZrTurara_HIO_c::daZrTurara_HIO_c() { - mDebrisNum = 5; - // mDebrisRange = 250.0f; - mDebrisRange = FLOAT_LABEL(lit_3657); -} - -/* 80D4178C-80D41798 000014 000C+00 2/2 0/0 0/0 .bss l_HIO */ -static daZrTurara_HIO_c l_HIO; - -/* 80D415A0-80D415D0 000004 0030+00 1/1 0/0 0/0 .rodata mCcDObjInfo__12daZrTurara_c */ -dCcD_SrcGObjInf const daZrTurara_c::mCcDObjInfo = { - {0, { - {0, 0, 0}, - {0x20, 0x11}, - {0} - }}, - {1, 0, 1, 0, 0}, - {0xA, 0, 0, 0, 2}, - {0} -}; - -/* 80D41628-80D4166C 000020 0044+00 2/2 0/0 0/0 .data mCcDCyl__12daZrTurara_c */ -dCcD_SrcCyl daZrTurara_c::mCcDCyl = { - mCcDObjInfo, - {{0.0f, 0.0f, 0.0f}, 0.0f, 0.0f} -}; - -/* 80D4166C-80D41678 -00001 000C+00 0/1 0/0 0/0 .data @3916 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3916[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)modeWait__12daZrTurara_cFv, -}; -#pragma pop - -/* 80D41678-80D41684 -00001 000C+00 0/1 0/0 0/0 .data @3917 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3917[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)modeBreak__12daZrTurara_cFv, -}; -#pragma pop - -/* 80D41684-80D41690 -00001 000C+00 0/1 0/0 0/0 .data @3918 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3918[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)modeEnd__12daZrTurara_cFv, -}; -#pragma pop - -/* 80D41690-80D416B4 000088 0024+00 0/1 0/0 0/0 .data mode_proc$3915 */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 mode_proc[36] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -#pragma pop - -/* 80D416B4-80D416D4 -00001 0020+00 1/0 0/0 0/0 .data l_daZrTurara_Method */ -static actor_method_class l_daZrTurara_Method = { - (process_method_func)daZrTurara_Create__FP10fopAc_ac_c, - (process_method_func)daZrTurara_Delete__FP12daZrTurara_c, - (process_method_func)daZrTurara_Execute__FP12daZrTurara_c, - (process_method_func)NULL, - (process_method_func)daZrTurara_Draw__FP12daZrTurara_c, -}; - -/* 80D416D4-80D41704 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_zrTurara */ -extern actor_process_profile_definition g_profile_Obj_zrTurara = { - fpcLy_CURRENT_e, - 3, - fpcPi_CURRENT_e, - PROC_Obj_zrTurara, - &g_fpcLf_Method.mBase, - sizeof(daZrTurara_c), - 0, - 0, - &g_fopAc_Method.base, - 0x28C, - &l_daZrTurara_Method, - 0x40100, - fopAc_ACTOR_e, - fopAc_CULLBOX_CUSTOM_e, -}; - -/* 80D41704-80D41710 0000FC 000C+00 2/2 0/0 0/0 .data __vt__10cCcD_GStts */ -SECTION_DATA extern void* __vt__10cCcD_GStts[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__10cCcD_GSttsFv, -}; - -/* 80D41710-80D4171C 000108 000C+00 1/1 0/0 0/0 .data __vt__10dCcD_GStts */ -SECTION_DATA extern void* __vt__10dCcD_GStts[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__10dCcD_GSttsFv, -}; - -/* 80D4171C-80D41728 000114 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGCyl */ -SECTION_DATA extern void* __vt__8cM3dGCyl[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGCylFv, -}; - -/* 80D41728-80D41734 000120 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGAab */ -SECTION_DATA extern void* __vt__8cM3dGAab[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGAabFv, -}; - -/* 80D41734-80D4175C 00012C 0028+00 1/1 0/0 0/0 .data __vt__12daZrTurara_c */ -extern "C" extern void* __vt__12daZrTurara_c[10]; - -/* 80D4175C-80D41768 000154 000C+00 2/2 0/0 0/0 .data __vt__16daZrTurara_HIO_c */ -extern "C" extern void* __vt__16daZrTurara_HIO_c[3]; - -/* 80D41768-80D41774 000160 000C+00 3/3 0/0 0/0 .data __vt__14mDoHIO_entry_c */ -extern "C" extern void* __vt__14mDoHIO_entry_c[3]; - -/* 80D415D0-80D415D4 000034 0004+00 3/4 0/0 0/0 .rodata @3699 */ -SECTION_RODATA static f32 const lit_3699 = 1.0f; -COMPILER_STRIP_GATE(0x80D415D0, &lit_3699); - -/* 80D405E4-80D40714 000164 0130+00 2/2 0/0 0/0 .text setBaseMtx__12daZrTurara_cFv */ -void daZrTurara_c::setBaseMtx() { - mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); - mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z); - mDoMtx_stack_c::scaleM(mScaleF, mScaleF, mScaleF); - // cXyz scale(1.0f, 1.0f, 1.0f); - cXyz scale(FLOAT_LABEL(lit_3699), FLOAT_LABEL(lit_3699), FLOAT_LABEL(lit_3699)); - mpBaseModel->setBaseScale(scale); - mpBaseModel->setBaseTRMtx(mDoMtx_stack_c::get()); - PSMTXCopy(mDoMtx_stack_c::get(), mBgMtx); - mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); - mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z); - mDoMtx_stack_c::scaleM(mScaleF, mScaleF, mScaleF); - mpRockModel->setBaseScale(scale); - mpRockModel->setBaseTRMtx(mDoMtx_stack_c::get()); - PSMTXCopy(mDoMtx_stack_c::get(), mRockBgMtx); -} - -/* 80D40714-80D40844 000294 0130+00 1/0 0/0 0/0 .text CreateHeap__12daZrTurara_cFv */ -int daZrTurara_c::CreateHeap() { - J3DModelData* base_model_data = (J3DModelData*)dComIfG_getObjectRes("M_DrpRock", 5); - mpBaseModel = mDoExt_J3DModel__create(base_model_data, 0x80000, 0x11000084); - if (mpBaseModel == NULL) { - return 0; - } - J3DModelData* rock_model_data = (J3DModelData*)dComIfG_getObjectRes("M_DrpRock", 4); - mpRockModel = mDoExt_J3DModel__create(rock_model_data, 0x80000, 0x11000084); - if (mpRockModel == NULL) { - return 0; - } - mpRockBgW = new dBgW(); - if (mpRockBgW == NULL || - mpRockBgW->Set((cBgD_t*)dComIfG_getObjectRes("M_DrpRock", 8), 1, &mRockBgMtx)) - { - mpRockBgW = NULL; - return 0; - } - return 1; -} - -/* 80D415D4-80D415DC 000038 0004+04 1/1 0/0 0/0 .rodata @3831 */ -SECTION_RODATA static f32 const lit_3831[1 + 1 /* padding */] = { - 1.0f / 10.0f, - /* padding */ - 0.0f, -}; -COMPILER_STRIP_GATE(0x80D415D4, &lit_3831); - -/* 80D415DC-80D415E4 000040 0008+00 1/1 0/0 0/0 .rodata @3833 */ -SECTION_RODATA static u8 const lit_3833[8] = { - 0x43, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80D415DC, &lit_3833); - -/* 80D40844-80D40B1C 0003C4 02D8+00 1/1 0/0 0/0 .text create__12daZrTurara_cFv */ -#ifdef NONMATCHING -// matches with literals -cPhs__Step daZrTurara_c::create() { - fopAcM_SetupActor(this, daZrTurara_c); - cPhs__Step step = (cPhs__Step)dComIfG_resLoad(&mPhaseReq, "M_DrpRock"); - if (step == cPhs_COMPLEATE_e) { - cPhs__Step bg_step = (cPhs__Step)MoveBGCreate("M_DrpRock", 9, dBgS_MoveBGProc_TypicalRotY, - 0x2800, NULL); - if (bg_step == cPhs_ERROR_e) { - return cPhs_ERROR_e; - } - mSw2 = getSwBit2(); - mDrawRock = true; - mCcStatus.Init(0xff, 0xff, this); - mCcCyl.Set(mCcDCyl); - mCcCyl.SetStts(&mCcStatus); - u8 sw1 = getSwBit1(); - if (fopAcM_isSwitch(this, sw1)) { - if (mpRockBgW != NULL) { - dComIfG_Bgsp().Release(mpRockBgW); - mpRockBgW->Move(); - } - mCcCyl.OffTgSetBit(); - mDrawRock = false; - init_modeEnd(); - } else if (mpRockBgW != NULL) { - dComIfG_Bgsp().Regist(mpRockBgW, this); - mpRockBgW->Move(); - } - fopAcM_SetMtx(this, mpBaseModel->getBaseTRMtx()); - J3DJoint* base_joint = mpBaseModel->getModelData()->getJointNodePointer(0); - J3DJoint* rock_joint = mpRockModel->getModelData()->getJointNodePointer(0); - fopAcM_setCullSizeBox( - this, - scale.x * rock_joint->getMin()->x, - scale.y * rock_joint->getMin()->y, - scale.z * rock_joint->getMin()->z, - scale.x * base_joint->getMax()->x, - scale.y * base_joint->getMax()->y, - scale.z * base_joint->getMax()->z - ); - u8 scale = getScale(); - if (scale == 0xff) { - scale = 0; - } - mScaleF = scale * 0.1f + 1.0f; - setBaseMtx(); - } - return step; -} -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm cPhs__Step daZrTurara_c::create() { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/create__12daZrTurara_cFv.s" -} -#pragma pop -#endif - -/* 80D40B1C-80D40B64 00069C 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm cM3dGCyl::~cM3dGCyl() { -extern "C" asm void __dt__8cM3dGCylFv() { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/__dt__8cM3dGCylFv.s" -} -#pragma pop - -/* 80D40B64-80D40BAC 0006E4 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm cM3dGAab::~cM3dGAab() { -extern "C" asm void __dt__8cM3dGAabFv() { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/__dt__8cM3dGAabFv.s" -} -#pragma pop - -/* 80D40BAC-80D40C08 00072C 005C+00 1/0 0/0 0/0 .text __dt__10dCcD_GSttsFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm dCcD_GStts::~dCcD_GStts() { -extern "C" asm void __dt__10dCcD_GSttsFv() { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/__dt__10dCcD_GSttsFv.s" -} -#pragma pop - -/* 80D40C08-80D40C68 000788 0060+00 1/0 0/0 0/0 .text Execute__12daZrTurara_cFPPA3_A4_f - */ -int daZrTurara_c::Execute(Mtx** i_mtxP) { - move(); - *i_mtxP = &mpBaseModel->getBaseTRMtx(); - setBaseMtx(); - if (mpRockBgW != NULL) { - mpRockBgW->Move(); - } - return 1; -} - -/* 80D415E4-80D415E8 000048 0004+00 0/1 0/0 0/0 .rodata @3926 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3926 = 130.0f; -COMPILER_STRIP_GATE(0x80D415E4, &lit_3926); -#pragma pop - -/* 80D415E8-80D415EC 00004C 0004+00 0/1 0/0 0/0 .rodata @3927 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3927 = 450.0f; -COMPILER_STRIP_GATE(0x80D415E8, &lit_3927); -#pragma pop - -/* 80D415EC-80D415F0 000050 0004+00 0/1 0/0 0/0 .rodata @3928 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_3928 = 500.0f; -COMPILER_STRIP_GATE(0x80D415EC, &lit_3928); -#pragma pop - -/* 80D41798-80D4179C 000020 0004+00 1/1 0/0 0/0 .bss None */ -static u8 data_80D41798[4]; - -/* 80D40C68-80D40D88 0007E8 0120+00 1/1 0/0 0/0 .text move__12daZrTurara_cFv */ -#ifdef NONMATCHING -// matches with literals -void daZrTurara_c::move() { - typedef void (daZrTurara_c::*daZrTurara_modeFunc)(); - static daZrTurara_modeFunc mode_proc[3] = { - &modeWait, - &modeBreak, - &modeEnd, - }; - (this->*mode_proc[mMode])(); - mCcCyl.SetR(130.0f); - mCcCyl.SetH(450.0f); - cXyz pos = current.pos; - pos.y -= 500.0f; - mCcCyl.SetC(pos); - dComIfG_Ccsp()->Set(&mCcCyl); -} -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daZrTurara_c::move() { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/move__12daZrTurara_cFv.s" -} -#pragma pop -#endif - -/* 80D40D88-80D40E0C 000908 0084+00 1/0 0/0 0/0 .text modeWait__12daZrTurara_cFv */ -void daZrTurara_c::modeWait() { - if (mSw2 != 0xff && fopAcM_isSwitch(this, mSw2)) { - init_modeBreak(); - } - if (mCcCyl.ChkTgHit() && mCcCyl.GetTgHitGObj()->GetAtType() == AT_TYPE_BOMB) { - init_modeBreak(); - } -} - -/* 80D415F0-80D415F4 000054 0004+00 1/1 0/0 0/0 .rodata @4013 */ -SECTION_RODATA static f32 const lit_4013 = -1.0f; -COMPILER_STRIP_GATE(0x80D415F0, &lit_4013); - -/* 80D40E0C-80D410E0 00098C 02D4+00 1/1 0/0 0/0 .text init_modeBreak__12daZrTurara_cFv */ -#ifdef NONMATCHING -// matches with literals -void daZrTurara_c::init_modeBreak() { - mDoAud_seStart(Z2SE_OBJ_RG_ROCK_BREAK, ¤t.pos, 0, - dComIfGp_getReverb(fopAcM_GetRoomNo(this))); - if (mpRockBgW != NULL) { - dComIfG_Bgsp().Release(mpRockBgW); - mpRockBgW->Move(); - } - mDrawRock = false; - mCcCyl.OffTgSetBit(); - cXyz scale(mScaleF, mScaleF, mScaleF); - dComIfGp_particle_set(0x8a93, ¤t.pos, NULL, &scale); - dComIfGp_particle_set(0x8a94, ¤t.pos, NULL, &scale); - dComIfGp_particle_set(0x8a95, ¤t.pos, NULL, &scale); - dComIfGp_particle_set(0x8a96, ¤t.pos, NULL, &scale); - dComIfGp_particle_set(0x8a97, ¤t.pos, NULL, &scale); - mParticleKey = dComIfGp_particle_set(mParticleKey, 0x8a98, ¤t.pos, NULL, &scale); - u8 sw1 = getSwBit1(); - fopAcM_onSwitch(this, sw1); - mDebrisCount = 0; - mBreakTimer = 0; - mMode = 1; -} -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daZrTurara_c::init_modeBreak() { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/init_modeBreak__12daZrTurara_cFv.s" -} -#pragma pop -#endif - -/* 80D415F4-80D415F8 000058 0004+00 0/1 0/0 0/0 .rodata @4059 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4059 = 200.0f; -COMPILER_STRIP_GATE(0x80D415F4, &lit_4059); -#pragma pop - -/* 80D415F8-80D415FC 00005C 0004+00 0/1 0/0 0/0 .rodata @4060 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4060 = 20.0f; -COMPILER_STRIP_GATE(0x80D415F8, &lit_4060); -#pragma pop - -/* 80D410E0-80D412A0 000C60 01C0+00 1/0 0/0 0/0 .text modeBreak__12daZrTurara_cFv */ -#ifdef NONMATCHING -// regalloc -void daZrTurara_c::modeBreak() { - cXyz scale(mScaleF, mScaleF, mScaleF); - mParticleKey = dComIfGp_particle_set(mParticleKey, 0x8a98, ¤t.pos, NULL, &scale); - if (mBreakTimer != 0) { - mBreakTimer--; - } else { - cXyz pos = current.pos; - pos.y -= 200.0f; - pos.x += l_HIO.mDebrisRange * cM_rndFX(1.0f); - pos.y += l_HIO.mDebrisRange * cM_rndFX(1.0f); - fopAcM_create(PROC_Obj_zrTuraraRc, getScale(), &pos, - fopAcM_GetRoomNo(this), NULL, NULL, 0xff); - mDebrisCount++; - mBreakTimer = cM_rndF(1.0f) * 20.0f; - if (mDebrisCount >= l_HIO.mDebrisNum) { - JPABaseEmitter* emitter = dComIfGp_particle_getEmitter(mParticleKey); - if (emitter != NULL) { - emitter->becomeInvalidEmitter(); - } - init_modeEnd(); - } - } -} -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daZrTurara_c::modeBreak() { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/modeBreak__12daZrTurara_cFv.s" -} -#pragma pop -#endif - -/* 80D412A0-80D412AC 000E20 000C+00 2/2 0/0 0/0 .text init_modeEnd__12daZrTurara_cFv */ -void daZrTurara_c::init_modeEnd() { - mMode = 2; -} - -/* 80D412AC-80D412B0 000E2C 0004+00 1/0 0/0 0/0 .text modeEnd__12daZrTurara_cFv */ -void daZrTurara_c::modeEnd() { - /* empty function */ -} - -/* 80D412B0-80D41380 000E30 00D0+00 1/0 0/0 0/0 .text Draw__12daZrTurara_cFv */ -int daZrTurara_c::Draw() { - g_env_light.settingTevStruct(0x10, ¤t.pos, &tevStr); - g_env_light.setLightTevColorType_MAJI(mpBaseModel, &tevStr); - g_env_light.setLightTevColorType_MAJI(mpRockModel, &tevStr); - dComIfGd_setListBG(); - mDoExt_modelUpdateDL(mpBaseModel); - if (mDrawRock) { - mDoExt_modelUpdateDL(mpRockModel); - } - dComIfGd_setList(); - return 1; -} - -/* 80D41380-80D413E8 000F00 0068+00 1/0 0/0 0/0 .text Delete__12daZrTurara_cFv */ -int daZrTurara_c::Delete() { - dComIfG_resDelete(&mPhaseReq, "M_DrpRock"); - if (mpRockBgW != NULL && mpRockBgW->ChkUsed()) { - dComIfG_Bgsp().Release(mpRockBgW); - } - return 1; -} - -/* 80D413E8-80D41414 000F68 002C+00 1/0 0/0 0/0 .text daZrTurara_Draw__FP12daZrTurara_c - */ -static int daZrTurara_Draw(daZrTurara_c* i_this) { - return i_this->MoveBGDraw(); -} - -/* 80D41414-80D41434 000F94 0020+00 1/0 0/0 0/0 .text daZrTurara_Execute__FP12daZrTurara_c */ -static int daZrTurara_Execute(daZrTurara_c* i_this) { - return i_this->MoveBGExecute(); -} - -/* 80D41434-80D41454 000FB4 0020+00 1/0 0/0 0/0 .text daZrTurara_Delete__FP12daZrTurara_c - */ -static int daZrTurara_Delete(daZrTurara_c* i_this) { - return i_this->MoveBGDelete(); -} - -/* 80D41454-80D41474 000FD4 0020+00 1/0 0/0 0/0 .text daZrTurara_Create__FP10fopAc_ac_c - */ -static cPhs__Step daZrTurara_Create(fopAc_ac_c* i_this) { - return static_cast(i_this)->create(); -} - -/* 80D41474-80D414BC 000FF4 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm cCcD_GStts::~cCcD_GStts() { -extern "C" asm void __dt__10cCcD_GSttsFv() { - nofralloc -#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/__dt__10cCcD_GSttsFv.s" -} -#pragma pop +/** + * d_a_obj_zrTurara.cpp + * Object - Zora River Stalactite + */ + +#include "rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara.h" +#include "d/bg/d_bg_w.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_procname.h" +#include "dol2asm.h" + +// +// Forward References: +// + +extern "C" void __ct__16daZrTurara_HIO_cFv(); +extern "C" void __dt__14mDoHIO_entry_cFv(); +extern "C" void setBaseMtx__12daZrTurara_cFv(); +extern "C" void CreateHeap__12daZrTurara_cFv(); +extern "C" void create__12daZrTurara_cFv(); +extern "C" void __dt__8cM3dGCylFv(); +extern "C" void __dt__8cM3dGAabFv(); +extern "C" void __dt__10dCcD_GSttsFv(); +extern "C" void Execute__12daZrTurara_cFPPA3_A4_f(); +extern "C" void move__12daZrTurara_cFv(); +extern "C" void modeWait__12daZrTurara_cFv(); +extern "C" void init_modeBreak__12daZrTurara_cFv(); +extern "C" void modeBreak__12daZrTurara_cFv(); +extern "C" void init_modeEnd__12daZrTurara_cFv(); +extern "C" void modeEnd__12daZrTurara_cFv(); +extern "C" void Draw__12daZrTurara_cFv(); +extern "C" void Delete__12daZrTurara_cFv(); +extern "C" static void daZrTurara_Draw__FP12daZrTurara_c(); +extern "C" static void daZrTurara_Execute__FP12daZrTurara_c(); +extern "C" static void daZrTurara_Delete__FP12daZrTurara_c(); +extern "C" static void daZrTurara_Create__FP10fopAc_ac_c(); +extern "C" void __dt__10cCcD_GSttsFv(); +extern "C" void __dt__16daZrTurara_HIO_cFv(); +extern "C" void __sinit_d_a_obj_zrTurara_cpp(); +extern "C" u8 const mCcDObjInfo__12daZrTurara_c[48]; +extern "C" extern char const* const d_a_obj_zrTurara__stringBase0; +extern "C" u8 mCcDCyl__12daZrTurara_c[68]; + +// +// External References: +// + +extern "C" void mDoMtx_ZXYrotM__FPA4_fsss(); +extern "C" void scaleM__14mDoMtx_stack_cFfff(); +extern "C" void mDoExt_modelUpdateDL__FP8J3DModel(); +extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl(); +extern "C" void fopAcM_create__FsUlPC4cXyziPC5csXyzPC4cXyzSc(); +extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff(); +extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc(); +extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc(); +extern "C" void dComIfGp_getReverb__Fi(); +extern "C" void onSwitch__10dSv_info_cFii(); +extern "C" void isSwitch__10dSv_info_cCFii(); +extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci(); +extern "C" void getEmitter__Q213dPa_control_c7level_cFUl(); +extern "C" void +set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf(); +extern "C" void +set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf(); +extern "C" void Release__4cBgSFP9dBgW_Base(); +extern "C" void Regist__4dBgSFP9dBgW_BaseP10fopAc_ac_c(); +extern "C" void dBgS_MoveBGProc_TypicalRotY__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz(); +extern "C" void __ct__16dBgS_MoveBgActorFv(); +extern "C" bool Create__16dBgS_MoveBgActorFv(); +extern "C" bool IsDelete__16dBgS_MoveBgActorFv(); +extern "C" bool ToFore__16dBgS_MoveBgActorFv(); +extern "C" bool ToBack__16dBgS_MoveBgActorFv(); +extern "C" void +MoveBGCreate__16dBgS_MoveBgActorFPCciPFP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz_vUlPA3_A4_f(); +extern "C" void MoveBGDelete__16dBgS_MoveBgActorFv(); +extern "C" void MoveBGExecute__16dBgS_MoveBgActorFv(); +extern "C" void Set__4cBgWFP6cBgD_tUlPA3_A4_f(); +extern "C" void __ct__4dBgWFv(); +extern "C" void Move__4dBgWFv(); +extern "C" void __ct__10dCcD_GSttsFv(); +extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c(); +extern "C" void __ct__12dCcD_GObjInfFv(); +extern "C" void ChkTgHit__12dCcD_GObjInfFv(); +extern "C" void GetTgHitGObj__12dCcD_GObjInfFv(); +extern "C" void Set__8dCcD_CylFRC11dCcD_SrcCyl(); +extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c(); +extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c(); +extern "C" void Set__4cCcSFP8cCcD_Obj(); +extern "C" void cM_rndF__Ff(); +extern "C" void cM_rndFX__Ff(); +extern "C" void ChkUsed__9cBgW_BgIdCFv(); +extern "C" void SetC__8cM3dGCylFRC4cXyz(); +extern "C" void SetH__8cM3dGCylFf(); +extern "C" void SetR__8cM3dGCylFf(); +extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); +extern "C" void* __nw__FUl(); +extern "C" void __dl__FPv(); +extern "C" void __ptmf_scall(); +extern "C" void _savegpr_28(); +extern "C" void _restgpr_28(); +extern "C" extern void* __vt__8dCcD_Cyl[36]; +extern "C" extern void* __vt__9dCcD_Stts[11]; +extern "C" extern void* __vt__12cCcD_CylAttr[25]; +extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; +extern "C" extern void* __vt__9cCcD_Stts[8]; +extern "C" u8 now__14mDoMtx_stack_c[48]; +extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; +extern "C" void __register_global_object(); + +// +// Declarations: +// + +/* 80D41608-80D41614 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ +SECTION_DATA static u8 cNullVec__6Z2Calc[12] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; + +/* 80D41614-80D41628 00000C 0004+10 0/0 0/0 0/0 .data @1787 */ +#pragma push +#pragma force_active on +SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = { + 0x02000201, + /* padding */ + 0x40080000, + 0x00000000, + 0x3FE00000, + 0x00000000, +}; +#pragma pop + +/* 80D4159C-80D415A0 000000 0004+00 3/4 0/0 0/0 .rodata @3657 */ +SECTION_RODATA static f32 const lit_3657 = 250.0f; +COMPILER_STRIP_GATE(0x80D4159C, &lit_3657); + +/* 80D4056C-80D4059C 0000EC 0030+00 1/1 0/0 0/0 .text __ct__16daZrTurara_HIO_cFv */ +daZrTurara_HIO_c::daZrTurara_HIO_c() { + mDebrisNum = 5; + // mDebrisRange = 250.0f; + mDebrisRange = FLOAT_LABEL(lit_3657); +} + +/* 80D4178C-80D41798 000014 000C+00 2/2 0/0 0/0 .bss l_HIO */ +static daZrTurara_HIO_c l_HIO; + +/* 80D415A0-80D415D0 000004 0030+00 1/1 0/0 0/0 .rodata mCcDObjInfo__12daZrTurara_c */ +dCcD_SrcGObjInf const daZrTurara_c::mCcDObjInfo = { + {0, { + {0, 0, 0}, + {0x20, 0x11}, + {0} + }}, + {1, 0, 1, 0, 0}, + {0xA, 0, 0, 0, 2}, + {0} +}; + +/* 80D41628-80D4166C 000020 0044+00 2/2 0/0 0/0 .data mCcDCyl__12daZrTurara_c */ +dCcD_SrcCyl daZrTurara_c::mCcDCyl = { + mCcDObjInfo, + {{0.0f, 0.0f, 0.0f}, 0.0f, 0.0f} +}; + +/* 80D4166C-80D41678 -00001 000C+00 0/1 0/0 0/0 .data @3916 */ +#pragma push +#pragma force_active on +SECTION_DATA static void* lit_3916[3] = { + (void*)NULL, + (void*)0xFFFFFFFF, + (void*)modeWait__12daZrTurara_cFv, +}; +#pragma pop + +/* 80D41678-80D41684 -00001 000C+00 0/1 0/0 0/0 .data @3917 */ +#pragma push +#pragma force_active on +SECTION_DATA static void* lit_3917[3] = { + (void*)NULL, + (void*)0xFFFFFFFF, + (void*)modeBreak__12daZrTurara_cFv, +}; +#pragma pop + +/* 80D41684-80D41690 -00001 000C+00 0/1 0/0 0/0 .data @3918 */ +#pragma push +#pragma force_active on +SECTION_DATA static void* lit_3918[3] = { + (void*)NULL, + (void*)0xFFFFFFFF, + (void*)modeEnd__12daZrTurara_cFv, +}; +#pragma pop + +/* 80D41690-80D416B4 000088 0024+00 0/1 0/0 0/0 .data mode_proc$3915 */ +#pragma push +#pragma force_active on +SECTION_DATA static u8 mode_proc[36] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; +#pragma pop + +/* 80D416B4-80D416D4 -00001 0020+00 1/0 0/0 0/0 .data l_daZrTurara_Method */ +static actor_method_class l_daZrTurara_Method = { + (process_method_func)daZrTurara_Create__FP10fopAc_ac_c, + (process_method_func)daZrTurara_Delete__FP12daZrTurara_c, + (process_method_func)daZrTurara_Execute__FP12daZrTurara_c, + (process_method_func)NULL, + (process_method_func)daZrTurara_Draw__FP12daZrTurara_c, +}; + +/* 80D416D4-80D41704 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_zrTurara */ +extern actor_process_profile_definition g_profile_Obj_zrTurara = { + fpcLy_CURRENT_e, + 3, + fpcPi_CURRENT_e, + PROC_Obj_zrTurara, + &g_fpcLf_Method.mBase, + sizeof(daZrTurara_c), + 0, + 0, + &g_fopAc_Method.base, + 0x28C, + &l_daZrTurara_Method, + 0x40100, + fopAc_ACTOR_e, + fopAc_CULLBOX_CUSTOM_e, +}; + +/* 80D41704-80D41710 0000FC 000C+00 2/2 0/0 0/0 .data __vt__10cCcD_GStts */ +SECTION_DATA extern void* __vt__10cCcD_GStts[3] = { + (void*)NULL /* RTTI */, + (void*)NULL, + (void*)__dt__10cCcD_GSttsFv, +}; + +/* 80D41710-80D4171C 000108 000C+00 1/1 0/0 0/0 .data __vt__10dCcD_GStts */ +SECTION_DATA extern void* __vt__10dCcD_GStts[3] = { + (void*)NULL /* RTTI */, + (void*)NULL, + (void*)__dt__10dCcD_GSttsFv, +}; + +/* 80D4171C-80D41728 000114 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGCyl */ +SECTION_DATA extern void* __vt__8cM3dGCyl[3] = { + (void*)NULL /* RTTI */, + (void*)NULL, + (void*)__dt__8cM3dGCylFv, +}; + +/* 80D41728-80D41734 000120 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGAab */ +SECTION_DATA extern void* __vt__8cM3dGAab[3] = { + (void*)NULL /* RTTI */, + (void*)NULL, + (void*)__dt__8cM3dGAabFv, +}; + +/* 80D41734-80D4175C 00012C 0028+00 1/1 0/0 0/0 .data __vt__12daZrTurara_c */ +extern "C" extern void* __vt__12daZrTurara_c[10]; + +/* 80D4175C-80D41768 000154 000C+00 2/2 0/0 0/0 .data __vt__16daZrTurara_HIO_c */ +extern "C" extern void* __vt__16daZrTurara_HIO_c[3]; + +/* 80D41768-80D41774 000160 000C+00 3/3 0/0 0/0 .data __vt__14mDoHIO_entry_c */ +extern "C" extern void* __vt__14mDoHIO_entry_c[3]; + +/* 80D415D0-80D415D4 000034 0004+00 3/4 0/0 0/0 .rodata @3699 */ +SECTION_RODATA static f32 const lit_3699 = 1.0f; +COMPILER_STRIP_GATE(0x80D415D0, &lit_3699); + +/* 80D405E4-80D40714 000164 0130+00 2/2 0/0 0/0 .text setBaseMtx__12daZrTurara_cFv */ +void daZrTurara_c::setBaseMtx() { + mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); + mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z); + mDoMtx_stack_c::scaleM(mScaleF, mScaleF, mScaleF); + // cXyz scale(1.0f, 1.0f, 1.0f); + cXyz scale(FLOAT_LABEL(lit_3699), FLOAT_LABEL(lit_3699), FLOAT_LABEL(lit_3699)); + mpBaseModel->setBaseScale(scale); + mpBaseModel->setBaseTRMtx(mDoMtx_stack_c::get()); + PSMTXCopy(mDoMtx_stack_c::get(), mBgMtx); + mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); + mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z); + mDoMtx_stack_c::scaleM(mScaleF, mScaleF, mScaleF); + mpRockModel->setBaseScale(scale); + mpRockModel->setBaseTRMtx(mDoMtx_stack_c::get()); + PSMTXCopy(mDoMtx_stack_c::get(), mRockBgMtx); +} + +/* 80D40714-80D40844 000294 0130+00 1/0 0/0 0/0 .text CreateHeap__12daZrTurara_cFv */ +int daZrTurara_c::CreateHeap() { + J3DModelData* base_model_data = (J3DModelData*)dComIfG_getObjectRes("M_DrpRock", 5); + mpBaseModel = mDoExt_J3DModel__create(base_model_data, 0x80000, 0x11000084); + if (mpBaseModel == NULL) { + return 0; + } + J3DModelData* rock_model_data = (J3DModelData*)dComIfG_getObjectRes("M_DrpRock", 4); + mpRockModel = mDoExt_J3DModel__create(rock_model_data, 0x80000, 0x11000084); + if (mpRockModel == NULL) { + return 0; + } + mpRockBgW = new dBgW(); + if (mpRockBgW == NULL || + mpRockBgW->Set((cBgD_t*)dComIfG_getObjectRes("M_DrpRock", 8), 1, &mRockBgMtx)) + { + mpRockBgW = NULL; + return 0; + } + return 1; +} + +/* 80D415D4-80D415DC 000038 0004+04 1/1 0/0 0/0 .rodata @3831 */ +SECTION_RODATA static f32 const lit_3831[1 + 1 /* padding */] = { + 1.0f / 10.0f, + /* padding */ + 0.0f, +}; +COMPILER_STRIP_GATE(0x80D415D4, &lit_3831); + +/* 80D415DC-80D415E4 000040 0008+00 1/1 0/0 0/0 .rodata @3833 */ +SECTION_RODATA static u8 const lit_3833[8] = { + 0x43, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; +COMPILER_STRIP_GATE(0x80D415DC, &lit_3833); + +/* 80D40844-80D40B1C 0003C4 02D8+00 1/1 0/0 0/0 .text create__12daZrTurara_cFv */ +#ifdef NONMATCHING +// matches with literals +cPhs__Step daZrTurara_c::create() { + fopAcM_SetupActor(this, daZrTurara_c); + cPhs__Step step = (cPhs__Step)dComIfG_resLoad(&mPhaseReq, "M_DrpRock"); + if (step == cPhs_COMPLEATE_e) { + cPhs__Step bg_step = (cPhs__Step)MoveBGCreate("M_DrpRock", 9, dBgS_MoveBGProc_TypicalRotY, + 0x2800, NULL); + if (bg_step == cPhs_ERROR_e) { + return cPhs_ERROR_e; + } + mSw2 = getSwBit2(); + mDrawRock = true; + mCcStatus.Init(0xff, 0xff, this); + mCcCyl.Set(mCcDCyl); + mCcCyl.SetStts(&mCcStatus); + u8 sw1 = getSwBit1(); + if (fopAcM_isSwitch(this, sw1)) { + if (mpRockBgW != NULL) { + dComIfG_Bgsp().Release(mpRockBgW); + mpRockBgW->Move(); + } + mCcCyl.OffTgSetBit(); + mDrawRock = false; + init_modeEnd(); + } else if (mpRockBgW != NULL) { + dComIfG_Bgsp().Regist(mpRockBgW, this); + mpRockBgW->Move(); + } + fopAcM_SetMtx(this, mpBaseModel->getBaseTRMtx()); + J3DJoint* base_joint = mpBaseModel->getModelData()->getJointNodePointer(0); + J3DJoint* rock_joint = mpRockModel->getModelData()->getJointNodePointer(0); + fopAcM_setCullSizeBox( + this, + scale.x * rock_joint->getMin()->x, + scale.y * rock_joint->getMin()->y, + scale.z * rock_joint->getMin()->z, + scale.x * base_joint->getMax()->x, + scale.y * base_joint->getMax()->y, + scale.z * base_joint->getMax()->z + ); + u8 scale = getScale(); + if (scale == 0xff) { + scale = 0; + } + mScaleF = scale * 0.1f + 1.0f; + setBaseMtx(); + } + return step; +} +#else +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm cPhs__Step daZrTurara_c::create() { + nofralloc +#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/create__12daZrTurara_cFv.s" +} +#pragma pop +#endif + +/* 80D40B1C-80D40B64 00069C 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +// asm cM3dGCyl::~cM3dGCyl() { +extern "C" asm void __dt__8cM3dGCylFv() { + nofralloc +#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/__dt__8cM3dGCylFv.s" +} +#pragma pop + +/* 80D40B64-80D40BAC 0006E4 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +// asm cM3dGAab::~cM3dGAab() { +extern "C" asm void __dt__8cM3dGAabFv() { + nofralloc +#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/__dt__8cM3dGAabFv.s" +} +#pragma pop + +/* 80D40BAC-80D40C08 00072C 005C+00 1/0 0/0 0/0 .text __dt__10dCcD_GSttsFv */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +// asm dCcD_GStts::~dCcD_GStts() { +extern "C" asm void __dt__10dCcD_GSttsFv() { + nofralloc +#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/__dt__10dCcD_GSttsFv.s" +} +#pragma pop + +/* 80D40C08-80D40C68 000788 0060+00 1/0 0/0 0/0 .text Execute__12daZrTurara_cFPPA3_A4_f + */ +int daZrTurara_c::Execute(Mtx** i_mtxP) { + move(); + *i_mtxP = &mpBaseModel->getBaseTRMtx(); + setBaseMtx(); + if (mpRockBgW != NULL) { + mpRockBgW->Move(); + } + return 1; +} + +/* 80D415E4-80D415E8 000048 0004+00 0/1 0/0 0/0 .rodata @3926 */ +#pragma push +#pragma force_active on +SECTION_RODATA static f32 const lit_3926 = 130.0f; +COMPILER_STRIP_GATE(0x80D415E4, &lit_3926); +#pragma pop + +/* 80D415E8-80D415EC 00004C 0004+00 0/1 0/0 0/0 .rodata @3927 */ +#pragma push +#pragma force_active on +SECTION_RODATA static f32 const lit_3927 = 450.0f; +COMPILER_STRIP_GATE(0x80D415E8, &lit_3927); +#pragma pop + +/* 80D415EC-80D415F0 000050 0004+00 0/1 0/0 0/0 .rodata @3928 */ +#pragma push +#pragma force_active on +SECTION_RODATA static f32 const lit_3928 = 500.0f; +COMPILER_STRIP_GATE(0x80D415EC, &lit_3928); +#pragma pop + +/* 80D41798-80D4179C 000020 0004+00 1/1 0/0 0/0 .bss None */ +static u8 data_80D41798[4]; + +/* 80D40C68-80D40D88 0007E8 0120+00 1/1 0/0 0/0 .text move__12daZrTurara_cFv */ +#ifdef NONMATCHING +// matches with literals +void daZrTurara_c::move() { + typedef void (daZrTurara_c::*daZrTurara_modeFunc)(); + static daZrTurara_modeFunc mode_proc[3] = { + &modeWait, + &modeBreak, + &modeEnd, + }; + (this->*mode_proc[mMode])(); + mCcCyl.SetR(130.0f); + mCcCyl.SetH(450.0f); + cXyz pos = current.pos; + pos.y -= 500.0f; + mCcCyl.SetC(pos); + dComIfG_Ccsp()->Set(&mCcCyl); +} +#else +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm void daZrTurara_c::move() { + nofralloc +#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/move__12daZrTurara_cFv.s" +} +#pragma pop +#endif + +/* 80D40D88-80D40E0C 000908 0084+00 1/0 0/0 0/0 .text modeWait__12daZrTurara_cFv */ +void daZrTurara_c::modeWait() { + if (mSw2 != 0xff && fopAcM_isSwitch(this, mSw2)) { + init_modeBreak(); + } + if (mCcCyl.ChkTgHit() && mCcCyl.GetTgHitGObj()->GetAtType() == AT_TYPE_BOMB) { + init_modeBreak(); + } +} + +/* 80D415F0-80D415F4 000054 0004+00 1/1 0/0 0/0 .rodata @4013 */ +SECTION_RODATA static f32 const lit_4013 = -1.0f; +COMPILER_STRIP_GATE(0x80D415F0, &lit_4013); + +/* 80D40E0C-80D410E0 00098C 02D4+00 1/1 0/0 0/0 .text init_modeBreak__12daZrTurara_cFv */ +#ifdef NONMATCHING +// matches with literals +void daZrTurara_c::init_modeBreak() { + mDoAud_seStart(Z2SE_OBJ_RG_ROCK_BREAK, ¤t.pos, 0, + dComIfGp_getReverb(fopAcM_GetRoomNo(this))); + if (mpRockBgW != NULL) { + dComIfG_Bgsp().Release(mpRockBgW); + mpRockBgW->Move(); + } + mDrawRock = false; + mCcCyl.OffTgSetBit(); + cXyz scale(mScaleF, mScaleF, mScaleF); + dComIfGp_particle_set(0x8a93, ¤t.pos, NULL, &scale); + dComIfGp_particle_set(0x8a94, ¤t.pos, NULL, &scale); + dComIfGp_particle_set(0x8a95, ¤t.pos, NULL, &scale); + dComIfGp_particle_set(0x8a96, ¤t.pos, NULL, &scale); + dComIfGp_particle_set(0x8a97, ¤t.pos, NULL, &scale); + mParticleKey = dComIfGp_particle_set(mParticleKey, 0x8a98, ¤t.pos, NULL, &scale); + u8 sw1 = getSwBit1(); + fopAcM_onSwitch(this, sw1); + mDebrisCount = 0; + mBreakTimer = 0; + mMode = 1; +} +#else +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm void daZrTurara_c::init_modeBreak() { + nofralloc +#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/init_modeBreak__12daZrTurara_cFv.s" +} +#pragma pop +#endif + +/* 80D415F4-80D415F8 000058 0004+00 0/1 0/0 0/0 .rodata @4059 */ +#pragma push +#pragma force_active on +SECTION_RODATA static f32 const lit_4059 = 200.0f; +COMPILER_STRIP_GATE(0x80D415F4, &lit_4059); +#pragma pop + +/* 80D415F8-80D415FC 00005C 0004+00 0/1 0/0 0/0 .rodata @4060 */ +#pragma push +#pragma force_active on +SECTION_RODATA static f32 const lit_4060 = 20.0f; +COMPILER_STRIP_GATE(0x80D415F8, &lit_4060); +#pragma pop + +/* 80D410E0-80D412A0 000C60 01C0+00 1/0 0/0 0/0 .text modeBreak__12daZrTurara_cFv */ +#ifdef NONMATCHING +// regalloc +void daZrTurara_c::modeBreak() { + cXyz scale(mScaleF, mScaleF, mScaleF); + mParticleKey = dComIfGp_particle_set(mParticleKey, 0x8a98, ¤t.pos, NULL, &scale); + if (mBreakTimer != 0) { + mBreakTimer--; + } else { + cXyz pos = current.pos; + pos.y -= 200.0f; + pos.x += l_HIO.mDebrisRange * cM_rndFX(1.0f); + pos.y += l_HIO.mDebrisRange * cM_rndFX(1.0f); + fopAcM_create(PROC_Obj_zrTuraraRc, getScale(), &pos, + fopAcM_GetRoomNo(this), NULL, NULL, 0xff); + mDebrisCount++; + mBreakTimer = cM_rndF(1.0f) * 20.0f; + if (mDebrisCount >= l_HIO.mDebrisNum) { + JPABaseEmitter* emitter = dComIfGp_particle_getEmitter(mParticleKey); + if (emitter != NULL) { + emitter->becomeInvalidEmitter(); + } + init_modeEnd(); + } + } +} +#else +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +asm void daZrTurara_c::modeBreak() { + nofralloc +#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/modeBreak__12daZrTurara_cFv.s" +} +#pragma pop +#endif + +/* 80D412A0-80D412AC 000E20 000C+00 2/2 0/0 0/0 .text init_modeEnd__12daZrTurara_cFv */ +void daZrTurara_c::init_modeEnd() { + mMode = 2; +} + +/* 80D412AC-80D412B0 000E2C 0004+00 1/0 0/0 0/0 .text modeEnd__12daZrTurara_cFv */ +void daZrTurara_c::modeEnd() { + /* empty function */ +} + +/* 80D412B0-80D41380 000E30 00D0+00 1/0 0/0 0/0 .text Draw__12daZrTurara_cFv */ +int daZrTurara_c::Draw() { + g_env_light.settingTevStruct(0x10, ¤t.pos, &tevStr); + g_env_light.setLightTevColorType_MAJI(mpBaseModel, &tevStr); + g_env_light.setLightTevColorType_MAJI(mpRockModel, &tevStr); + dComIfGd_setListBG(); + mDoExt_modelUpdateDL(mpBaseModel); + if (mDrawRock) { + mDoExt_modelUpdateDL(mpRockModel); + } + dComIfGd_setList(); + return 1; +} + +/* 80D41380-80D413E8 000F00 0068+00 1/0 0/0 0/0 .text Delete__12daZrTurara_cFv */ +int daZrTurara_c::Delete() { + dComIfG_resDelete(&mPhaseReq, "M_DrpRock"); + if (mpRockBgW != NULL && mpRockBgW->ChkUsed()) { + dComIfG_Bgsp().Release(mpRockBgW); + } + return 1; +} + +/* 80D413E8-80D41414 000F68 002C+00 1/0 0/0 0/0 .text daZrTurara_Draw__FP12daZrTurara_c + */ +static int daZrTurara_Draw(daZrTurara_c* i_this) { + return i_this->MoveBGDraw(); +} + +/* 80D41414-80D41434 000F94 0020+00 1/0 0/0 0/0 .text daZrTurara_Execute__FP12daZrTurara_c */ +static int daZrTurara_Execute(daZrTurara_c* i_this) { + return i_this->MoveBGExecute(); +} + +/* 80D41434-80D41454 000FB4 0020+00 1/0 0/0 0/0 .text daZrTurara_Delete__FP12daZrTurara_c + */ +static int daZrTurara_Delete(daZrTurara_c* i_this) { + return i_this->MoveBGDelete(); +} + +/* 80D41454-80D41474 000FD4 0020+00 1/0 0/0 0/0 .text daZrTurara_Create__FP10fopAc_ac_c + */ +static cPhs__Step daZrTurara_Create(fopAc_ac_c* i_this) { + return static_cast(i_this)->create(); +} + +/* 80D41474-80D414BC 000FF4 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */ +#pragma push +#pragma optimization_level 0 +#pragma optimizewithasm off +// asm cCcD_GStts::~cCcD_GStts() { +extern "C" asm void __dt__10cCcD_GSttsFv() { + nofralloc +#include "asm/rel/d/a/obj/d_a_obj_zrTurara/d_a_obj_zrTurara/__dt__10cCcD_GSttsFv.s" +} +#pragma pop diff --git a/rel/d/a/obj/d_a_obj_zrTuraraRock/d_a_obj_zrTuraraRock.cpp b/rel/d/a/obj/d_a_obj_zrTuraraRock/d_a_obj_zrTuraraRock.cpp index d39e6167e8..9d252bfedf 100644 --- a/rel/d/a/obj/d_a_obj_zrTuraraRock/d_a_obj_zrTuraraRock.cpp +++ b/rel/d/a/obj/d_a_obj_zrTuraraRock/d_a_obj_zrTuraraRock.cpp @@ -1,237 +1,236 @@ -/** - * d_a_obj_zrTuraraRock.cpp - * Object - Zora River Stalactite Debris - */ - -#include "rel/d/a/obj/d_a_obj_zrTuraraRock/d_a_obj_zrTuraraRock.h" -#include "SSystem/SComponent/c_math.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" - -/* 80D42440-80D4244C 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ -static u8 cNullVec__6Z2Calc[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; - -/* 80D4244C-80D42460 00000C 0004+10 0/0 0/0 0/0 .data @1787 */ -static u32 lit_1787[1 + 4 /* padding */] = { - 0x02000201, - /* padding */ - 0x40080000, - 0x00000000, - 0x3FE00000, - 0x00000000, -}; - -/* 80D425AC-80D425CC 000014 0020+00 2/2 0/0 0/0 .bss l_HIO */ -static daZrTuraRc_HIO_c l_HIO; - -/* 80D4188C-80D418EC 0000EC 0060+00 1/1 0/0 0/0 .text __ct__16daZrTuraRc_HIO_cFv */ -daZrTuraRc_HIO_c::daZrTuraRc_HIO_c() { - field_0x04 = 450.0f; - mGravity = 10.0f; - mMaxFallSpeed = 200.0f; - field_0x10 = 30; - field_0x14 = 5.0f; - field_0x11 = 4; - field_0x18 = 3.0f; - field_0x1c = 5.0f; -} - -/* 80D423D4-80D42404 000014 0030+00 1/1 0/0 0/0 .rodata mCcDObjInfo__12daZrTuraRc_c */ -dCcD_SrcGObjInf const daZrTuraRc_c::mCcDObjInfo = { - {0, { - {0x20, 1, 0x1F}, - {0, 0}, - {0x79} - }}, - {1, 0, 1, 0, 0}, - {0xA, 0, 0, 0, 2}, - {0} -}; - -/* 80D42460-80D424A0 000020 0040+00 2/2 0/0 0/0 .data mCcDSph__12daZrTuraRc_c */ -dCcD_SrcSph daZrTuraRc_c::mCcDSph = { - mCcDObjInfo, - {{{0.0f, 0.0f, 0.0f}, 0.0f}} -}; - -/* 80D41934-80D419D4 000194 00A0+00 2/2 0/0 0/0 .text setBaseMtx__12daZrTuraRc_cFv */ -void daZrTuraRc_c::setBaseMtx() { - mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); - mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z); - mDoMtx_stack_c::scaleM(mScaleF, mScaleF, mScaleF); - mpModel->setBaseScale(cXyz(1.0f, 1.0f, 1.0f)); - mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); -} - -/* 80D419D4-80D41A40 000234 006C+00 1/1 0/0 0/0 .text CreateHeap__12daZrTuraRc_cFv */ -int daZrTuraRc_c::CreateHeap() { - J3DModelData* model_data = (J3DModelData*)dComIfG_getObjectRes("M_DRockHn", 3); - mpModel = mDoExt_J3DModel__create(model_data, 0x80000, 0x11000084); - if (mpModel == NULL) { - return 0; - } - return 1; -} - -/* 80D41A40-80D41D24 0002A0 02E4+00 1/1 0/0 0/0 .text create__12daZrTuraRc_cFv */ -cPhs__Step daZrTuraRc_c::create() { - fopAcM_SetupActor(this, daZrTuraRc_c); - cPhs__Step step = (cPhs__Step)dComIfG_resLoad(&mPhaseReq, "M_DRockHn"); - if (step == cPhs_COMPLEATE_e) { - if (!fopAcM_entrySolidHeap(this, createHeapCallBack, 0x840)) { - return cPhs_ERROR_e; - } - mAcchCir.SetWall(130.0f, 65.0f); - mAcch.Set(¤t.pos, &old.pos, this, 1, &mAcchCir, &speed, NULL, NULL); - mAcch.SetWaterCheckOffset(10000.0f); - mCcStatus.Init(0xff, 0xff, this); - mCcSph.Set(mCcDSph); - mCcSph.SetStts(&mCcStatus); - mSound.init(¤t.pos, 1); - fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); - fopAcM_setCullSizeBox2(this, mpModel->getModelData()); - u8 scale = getScale(); - if (scale == 0xff) { - scale = 0; - } - mScaleF = (scale * 0.1f + 1.0f) * (1.0f - fabsf(cM_rndFX(0.9f))); - shape_angle.x = cM_deg2s(cM_rndFX(180.0f)); - shape_angle.y = cM_deg2s(cM_rndFX(180.0f)); - shape_angle.z = cM_deg2s(cM_rndFX(180.0f)); - setBaseMtx(); - init_modeDrop(); - } - return step; -} - -/* 80D41EF0-80D41F10 000750 0020+00 1/1 0/0 0/0 .text - * createHeapCallBack__12daZrTuraRc_cFP10fopAc_ac_c */ -int daZrTuraRc_c::createHeapCallBack(fopAc_ac_c* i_this) { - return static_cast(i_this)->CreateHeap(); -} - -/* 80D41F10-80D41F78 000770 0068+00 1/1 0/0 0/0 .text Execute__12daZrTuraRc_cFv */ -int daZrTuraRc_c::Execute() { - move(); - setBaseMtx(); - mCcStatus.Move(); - mSound.framework(0, dComIfGp_getReverb(fopAcM_GetRoomNo(this))); - return 1; -} - -/* 80D41F78-80D4204C 0007D8 00D4+00 1/1 0/0 0/0 .text move__12daZrTuraRc_cFv */ -void daZrTuraRc_c::move() { - typedef void (daZrTuraRc_c::*daZrTuraRc_modeFunc)(); - static daZrTuraRc_modeFunc mode_proc[2] = { - &modeDrop, - &modeDropEnd, - }; - (this->*mode_proc[mMode])(); - mCcSph.SetR(mScaleF * 130.0f); - mCcSph.SetC(current.pos); - dComIfG_Ccsp()->Set(&mCcSph); -} - -/* 80D4204C-80D42084 0008AC 0038+00 1/1 0/0 0/0 .text init_modeDrop__12daZrTuraRc_cFv */ -void daZrTuraRc_c::init_modeDrop() { - fopAcM_SetGravity(this, -l_HIO.mGravity); - fopAcM_SetMaxFallSpeed(this, -l_HIO.mMaxFallSpeed); - fopAcM_SetSpeedF(this, 0.0f); - mMode = 0; -} - -/* 80D42084-80D420FC 0008E4 0078+00 1/0 0/0 0/0 .text modeDrop__12daZrTuraRc_cFv */ -void daZrTuraRc_c::modeDrop() { - fopAcM_posMoveF(this, mCcStatus.GetCCMoveP()); - mSound.startLevelSound(Z2SE_OBJ_RG_ROCK_FALL, 0, -1); - mAcch.CrrPos(dComIfG_Bgsp()); - bgCheck(); -} - -/* 80D420FC-80D42128 00095C 002C+00 1/1 0/0 0/0 .text bgCheck__12daZrTuraRc_cFv */ -void daZrTuraRc_c::bgCheck() { - // this should be ChkGroundHit but that doesn't match - if (mAcch.m_flags >> 5 & 1) { - init_modeDropEnd(); - } -} - -/* 80D42128-80D4215C 000988 0034+00 1/1 0/0 0/0 .text init_modeDropEnd__12daZrTuraRc_cFv - */ -void daZrTuraRc_c::init_modeDropEnd() { - fopAcM_delete(this); - mMode = 1; -} - -/* 80D4215C-80D42160 0009BC 0004+00 1/0 0/0 0/0 .text modeDropEnd__12daZrTuraRc_cFv */ -void daZrTuraRc_c::modeDropEnd() { - /* empty function */ -} - -/* 80D42160-80D421C4 0009C0 0064+00 1/1 0/0 0/0 .text Draw__12daZrTuraRc_cFv */ -int daZrTuraRc_c::Draw() { - g_env_light.settingTevStruct(0x10, ¤t.pos, &tevStr); - g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr); - mDoExt_modelUpdateDL(mpModel); - return 1; -} - -/* 80D421C4-80D42208 000A24 0044+00 1/1 0/0 0/0 .text Delete__12daZrTuraRc_cFv */ -int daZrTuraRc_c::Delete() { - dComIfG_resDelete(&mPhaseReq, "M_DRockHn"); - mSound.deleteObject(); - return 1; -} - -/* 80D42208-80D42228 000A68 0020+00 1/0 0/0 0/0 .text daZrTuraRc_Draw__FP12daZrTuraRc_c - */ -static int daZrTuraRc_Draw(daZrTuraRc_c* i_this) { - return i_this->Draw(); -} - -/* 80D42228-80D42248 000A88 0020+00 1/0 0/0 0/0 .text daZrTuraRc_Execute__FP12daZrTuraRc_c */ -static int daZrTuraRc_Execute(daZrTuraRc_c* i_this) { - return i_this->Execute(); -} - -/* 80D42248-80D42268 000AA8 0020+00 1/0 0/0 0/0 .text daZrTuraRc_Delete__FP12daZrTuraRc_c - */ -static int daZrTuraRc_Delete(daZrTuraRc_c* i_this) { - return i_this->Delete(); -} - -/* 80D42268-80D42288 000AC8 0020+00 1/0 0/0 0/0 .text daZrTuraRc_Create__FP10fopAc_ac_c - */ -static cPhs__Step daZrTuraRc_Create(fopAc_ac_c* i_this) { - return static_cast(i_this)->create(); -} - -/* 80D424D0-80D424F0 -00001 0020+00 1/0 0/0 0/0 .data l_daZrTuraRc_Method */ -static actor_method_class l_daZrTuraRc_Method = { - (process_method_func)daZrTuraRc_Create, - (process_method_func)daZrTuraRc_Delete, - (process_method_func)daZrTuraRc_Execute, - (process_method_func)NULL, - (process_method_func)daZrTuraRc_Draw, -}; - -/* 80D424F0-80D42520 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_zrTuraraRc */ -extern actor_process_profile_definition g_profile_Obj_zrTuraraRc = { - fpcLy_CURRENT_e, - 7, - fpcPi_CURRENT_e, - PROC_Obj_zrTuraraRc, - &g_fpcLf_Method.mBase, - sizeof(daZrTuraRc_c), - 0, - 0, - &g_fopAc_Method.base, - 0x28D, - &l_daZrTuraRc_Method, - 0x40100, - fopAc_ACTOR_e, - fopAc_CULLBOX_CUSTOM_e, -}; +/** + * d_a_obj_zrTuraraRock.cpp + * Object - Zora River Stalactite Debris + */ + +#include "rel/d/a/obj/d_a_obj_zrTuraraRock/d_a_obj_zrTuraraRock.h" +#include "SSystem/SComponent/c_math.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_procname.h" + +/* 80D42440-80D4244C 000000 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ +static u8 cNullVec__6Z2Calc[12] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; + +/* 80D4244C-80D42460 00000C 0004+10 0/0 0/0 0/0 .data @1787 */ +static u32 lit_1787[1 + 4 /* padding */] = { + 0x02000201, + /* padding */ + 0x40080000, + 0x00000000, + 0x3FE00000, + 0x00000000, +}; + +/* 80D425AC-80D425CC 000014 0020+00 2/2 0/0 0/0 .bss l_HIO */ +static daZrTuraRc_HIO_c l_HIO; + +/* 80D4188C-80D418EC 0000EC 0060+00 1/1 0/0 0/0 .text __ct__16daZrTuraRc_HIO_cFv */ +daZrTuraRc_HIO_c::daZrTuraRc_HIO_c() { + field_0x04 = 450.0f; + mGravity = 10.0f; + mMaxFallSpeed = 200.0f; + field_0x10 = 30; + field_0x14 = 5.0f; + field_0x11 = 4; + field_0x18 = 3.0f; + field_0x1c = 5.0f; +} + +/* 80D423D4-80D42404 000014 0030+00 1/1 0/0 0/0 .rodata mCcDObjInfo__12daZrTuraRc_c */ +dCcD_SrcGObjInf const daZrTuraRc_c::mCcDObjInfo = { + {0, { + {0x20, 1, 0x1F}, + {0, 0}, + {0x79} + }}, + {1, 0, 1, 0, 0}, + {0xA, 0, 0, 0, 2}, + {0} +}; + +/* 80D42460-80D424A0 000020 0040+00 2/2 0/0 0/0 .data mCcDSph__12daZrTuraRc_c */ +dCcD_SrcSph daZrTuraRc_c::mCcDSph = { + mCcDObjInfo, + {{{0.0f, 0.0f, 0.0f}, 0.0f}} +}; + +/* 80D41934-80D419D4 000194 00A0+00 2/2 0/0 0/0 .text setBaseMtx__12daZrTuraRc_cFv */ +void daZrTuraRc_c::setBaseMtx() { + mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); + mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z); + mDoMtx_stack_c::scaleM(mScaleF, mScaleF, mScaleF); + mpModel->setBaseScale(cXyz(1.0f, 1.0f, 1.0f)); + mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); +} + +/* 80D419D4-80D41A40 000234 006C+00 1/1 0/0 0/0 .text CreateHeap__12daZrTuraRc_cFv */ +int daZrTuraRc_c::CreateHeap() { + J3DModelData* model_data = (J3DModelData*)dComIfG_getObjectRes("M_DRockHn", 3); + mpModel = mDoExt_J3DModel__create(model_data, 0x80000, 0x11000084); + if (mpModel == NULL) { + return 0; + } + return 1; +} + +/* 80D41A40-80D41D24 0002A0 02E4+00 1/1 0/0 0/0 .text create__12daZrTuraRc_cFv */ +cPhs__Step daZrTuraRc_c::create() { + fopAcM_SetupActor(this, daZrTuraRc_c); + cPhs__Step step = (cPhs__Step)dComIfG_resLoad(&mPhaseReq, "M_DRockHn"); + if (step == cPhs_COMPLEATE_e) { + if (!fopAcM_entrySolidHeap(this, createHeapCallBack, 0x840)) { + return cPhs_ERROR_e; + } + mAcchCir.SetWall(130.0f, 65.0f); + mAcch.Set(¤t.pos, &old.pos, this, 1, &mAcchCir, &speed, NULL, NULL); + mAcch.SetWaterCheckOffset(10000.0f); + mCcStatus.Init(0xff, 0xff, this); + mCcSph.Set(mCcDSph); + mCcSph.SetStts(&mCcStatus); + mSound.init(¤t.pos, 1); + fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); + fopAcM_setCullSizeBox2(this, mpModel->getModelData()); + u8 scale = getScale(); + if (scale == 0xff) { + scale = 0; + } + mScaleF = (scale * 0.1f + 1.0f) * (1.0f - fabsf(cM_rndFX(0.9f))); + shape_angle.x = cM_deg2s(cM_rndFX(180.0f)); + shape_angle.y = cM_deg2s(cM_rndFX(180.0f)); + shape_angle.z = cM_deg2s(cM_rndFX(180.0f)); + setBaseMtx(); + init_modeDrop(); + } + return step; +} + +/* 80D41EF0-80D41F10 000750 0020+00 1/1 0/0 0/0 .text + * createHeapCallBack__12daZrTuraRc_cFP10fopAc_ac_c */ +int daZrTuraRc_c::createHeapCallBack(fopAc_ac_c* i_this) { + return static_cast(i_this)->CreateHeap(); +} + +/* 80D41F10-80D41F78 000770 0068+00 1/1 0/0 0/0 .text Execute__12daZrTuraRc_cFv */ +int daZrTuraRc_c::Execute() { + move(); + setBaseMtx(); + mCcStatus.Move(); + mSound.framework(0, dComIfGp_getReverb(fopAcM_GetRoomNo(this))); + return 1; +} + +/* 80D41F78-80D4204C 0007D8 00D4+00 1/1 0/0 0/0 .text move__12daZrTuraRc_cFv */ +void daZrTuraRc_c::move() { + typedef void (daZrTuraRc_c::*daZrTuraRc_modeFunc)(); + static daZrTuraRc_modeFunc mode_proc[2] = { + &modeDrop, + &modeDropEnd, + }; + (this->*mode_proc[mMode])(); + mCcSph.SetR(mScaleF * 130.0f); + mCcSph.SetC(current.pos); + dComIfG_Ccsp()->Set(&mCcSph); +} + +/* 80D4204C-80D42084 0008AC 0038+00 1/1 0/0 0/0 .text init_modeDrop__12daZrTuraRc_cFv */ +void daZrTuraRc_c::init_modeDrop() { + fopAcM_SetGravity(this, -l_HIO.mGravity); + fopAcM_SetMaxFallSpeed(this, -l_HIO.mMaxFallSpeed); + fopAcM_SetSpeedF(this, 0.0f); + mMode = 0; +} + +/* 80D42084-80D420FC 0008E4 0078+00 1/0 0/0 0/0 .text modeDrop__12daZrTuraRc_cFv */ +void daZrTuraRc_c::modeDrop() { + fopAcM_posMoveF(this, mCcStatus.GetCCMoveP()); + mSound.startLevelSound(Z2SE_OBJ_RG_ROCK_FALL, 0, -1); + mAcch.CrrPos(dComIfG_Bgsp()); + bgCheck(); +} + +/* 80D420FC-80D42128 00095C 002C+00 1/1 0/0 0/0 .text bgCheck__12daZrTuraRc_cFv */ +void daZrTuraRc_c::bgCheck() { + // this should be ChkGroundHit but that doesn't match + if (mAcch.m_flags >> 5 & 1) { + init_modeDropEnd(); + } +} + +/* 80D42128-80D4215C 000988 0034+00 1/1 0/0 0/0 .text init_modeDropEnd__12daZrTuraRc_cFv + */ +void daZrTuraRc_c::init_modeDropEnd() { + fopAcM_delete(this); + mMode = 1; +} + +/* 80D4215C-80D42160 0009BC 0004+00 1/0 0/0 0/0 .text modeDropEnd__12daZrTuraRc_cFv */ +void daZrTuraRc_c::modeDropEnd() { + /* empty function */ +} + +/* 80D42160-80D421C4 0009C0 0064+00 1/1 0/0 0/0 .text Draw__12daZrTuraRc_cFv */ +int daZrTuraRc_c::Draw() { + g_env_light.settingTevStruct(0x10, ¤t.pos, &tevStr); + g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr); + mDoExt_modelUpdateDL(mpModel); + return 1; +} + +/* 80D421C4-80D42208 000A24 0044+00 1/1 0/0 0/0 .text Delete__12daZrTuraRc_cFv */ +int daZrTuraRc_c::Delete() { + dComIfG_resDelete(&mPhaseReq, "M_DRockHn"); + mSound.deleteObject(); + return 1; +} + +/* 80D42208-80D42228 000A68 0020+00 1/0 0/0 0/0 .text daZrTuraRc_Draw__FP12daZrTuraRc_c + */ +static int daZrTuraRc_Draw(daZrTuraRc_c* i_this) { + return i_this->Draw(); +} + +/* 80D42228-80D42248 000A88 0020+00 1/0 0/0 0/0 .text daZrTuraRc_Execute__FP12daZrTuraRc_c */ +static int daZrTuraRc_Execute(daZrTuraRc_c* i_this) { + return i_this->Execute(); +} + +/* 80D42248-80D42268 000AA8 0020+00 1/0 0/0 0/0 .text daZrTuraRc_Delete__FP12daZrTuraRc_c + */ +static int daZrTuraRc_Delete(daZrTuraRc_c* i_this) { + return i_this->Delete(); +} + +/* 80D42268-80D42288 000AC8 0020+00 1/0 0/0 0/0 .text daZrTuraRc_Create__FP10fopAc_ac_c + */ +static cPhs__Step daZrTuraRc_Create(fopAc_ac_c* i_this) { + return static_cast(i_this)->create(); +} + +/* 80D424D0-80D424F0 -00001 0020+00 1/0 0/0 0/0 .data l_daZrTuraRc_Method */ +static actor_method_class l_daZrTuraRc_Method = { + (process_method_func)daZrTuraRc_Create, + (process_method_func)daZrTuraRc_Delete, + (process_method_func)daZrTuraRc_Execute, + (process_method_func)NULL, + (process_method_func)daZrTuraRc_Draw, +}; + +/* 80D424F0-80D42520 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_zrTuraraRc */ +extern actor_process_profile_definition g_profile_Obj_zrTuraraRc = { + fpcLy_CURRENT_e, + 7, + fpcPi_CURRENT_e, + PROC_Obj_zrTuraraRc, + &g_fpcLf_Method.mBase, + sizeof(daZrTuraRc_c), + 0, + 0, + &g_fopAc_Method.base, + 0x28D, + &l_daZrTuraRc_Method, + 0x40100, + fopAc_ACTOR_e, + fopAc_CULLBOX_CUSTOM_e, +}; diff --git a/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.cpp b/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.cpp index 2a5f538515..747af2df84 100644 --- a/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.cpp +++ b/rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.cpp @@ -4,10 +4,8 @@ */ #include "rel/d/a/obj/d_a_obj_zra_freeze/d_a_obj_zra_freeze.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "m_Do/m_Do_lib.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/a/d_a_player.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.cpp b/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.cpp index c31bf952a0..1627c2702a 100644 --- a/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.cpp +++ b/rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/d_a_obj_zra_rock/d_a_obj_zra_rock.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" #include "d/com/d_com_inf_game.h" #include "d/bg/d_bg_w.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/mirror/d_a_obj_mirror_6pole/d_a_obj_mirror_6pole.cpp b/rel/d/a/obj/mirror/d_a_obj_mirror_6pole/d_a_obj_mirror_6pole.cpp index af7f2feedb..f4cfe4f32b 100644 --- a/rel/d/a/obj/mirror/d_a_obj_mirror_6pole/d_a_obj_mirror_6pole.cpp +++ b/rel/d/a/obj/mirror/d_a_obj_mirror_6pole/d_a_obj_mirror_6pole.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/mirror/d_a_obj_mirror_6pole/d_a_obj_mirror_6pole.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/com/d_com_inf_game.h" #include "d/d_procname.h" /* 80C95E18-80C95E2C 000078 0014+00 1/0 0/0 0/0 .text initWait__18daObjMirror6Pole_cFv */ diff --git a/rel/d/a/obj/mirror/d_a_obj_mirror_chain/d_a_obj_mirror_chain.cpp b/rel/d/a/obj/mirror/d_a_obj_mirror_chain/d_a_obj_mirror_chain.cpp index 8de89af0e4..05621e35cb 100644 --- a/rel/d/a/obj/mirror/d_a_obj_mirror_chain/d_a_obj_mirror_chain.cpp +++ b/rel/d/a/obj/mirror/d_a_obj_mirror_chain/d_a_obj_mirror_chain.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/obj/mirror/d_a_obj_mirror_chain/d_a_obj_mirror_chain.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "dol2asm.h" // diff --git a/rel/d/a/obj/mirror/d_a_obj_mirror_sand/d_a_obj_mirror_sand.cpp b/rel/d/a/obj/mirror/d_a_obj_mirror_sand/d_a_obj_mirror_sand.cpp index 09da155276..326c3319d3 100644 --- a/rel/d/a/obj/mirror/d_a_obj_mirror_sand/d_a_obj_mirror_sand.cpp +++ b/rel/d/a/obj/mirror/d_a_obj_mirror_sand/d_a_obj_mirror_sand.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/mirror/d_a_obj_mirror_sand/d_a_obj_mirror_sand.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/com/d_com_inf_game.h" #include "d/d_procname.h" /* 80C989F0-80C989F4 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */ diff --git a/rel/d/a/obj/mirror/d_a_obj_mirror_screw/d_a_obj_mirror_screw.cpp b/rel/d/a/obj/mirror/d_a_obj_mirror_screw/d_a_obj_mirror_screw.cpp index 9afe0a7317..ab55f5b95f 100644 --- a/rel/d/a/obj/mirror/d_a_obj_mirror_screw/d_a_obj_mirror_screw.cpp +++ b/rel/d/a/obj/mirror/d_a_obj_mirror_screw/d_a_obj_mirror_screw.cpp @@ -4,9 +4,6 @@ */ #include "rel/d/a/obj/mirror/d_a_obj_mirror_screw/d_a_obj_mirror_screw.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "f_op/f_op_actor_mng.h" -#include "d/com/d_com_inf_game.h" #include "d/a/d_a_player.h" #include "d/d_procname.h" diff --git a/rel/d/a/obj/mirror/d_a_obj_mirror_table/d_a_obj_mirror_table.cpp b/rel/d/a/obj/mirror/d_a_obj_mirror_table/d_a_obj_mirror_table.cpp index 53342cf6c8..387df2da7a 100644 --- a/rel/d/a/obj/mirror/d_a_obj_mirror_table/d_a_obj_mirror_table.cpp +++ b/rel/d/a/obj/mirror/d_a_obj_mirror_table/d_a_obj_mirror_table.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/obj/mirror/d_a_obj_mirror_table/d_a_obj_mirror_table.h" -#include "rel/d/a/d_a_mirror/d_a_mirror.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/a/d_a_player.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_CstaSw/d_a_tag_CstaSw.cpp b/rel/d/a/tag/d_a_tag_CstaSw/d_a_tag_CstaSw.cpp index adb1d60f8c..9c0910c2bc 100644 --- a/rel/d/a/tag/d_a_tag_CstaSw/d_a_tag_CstaSw.cpp +++ b/rel/d/a/tag/d_a_tag_CstaSw/d_a_tag_CstaSw.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_CstaSw/d_a_tag_CstaSw.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 805A202C-805A2050 0000EC 0024+00 1/1 0/0 0/0 .text __ct__17daTagCstaSw_HIO_cFv */ diff --git a/rel/d/a/tag/d_a_tag_Lv6Gate/d_a_tag_Lv6Gate.cpp b/rel/d/a/tag/d_a_tag_Lv6Gate/d_a_tag_Lv6Gate.cpp index aae12a7a75..a152130483 100644 --- a/rel/d/a/tag/d_a_tag_Lv6Gate/d_a_tag_Lv6Gate.cpp +++ b/rel/d/a/tag/d_a_tag_Lv6Gate/d_a_tag_Lv6Gate.cpp @@ -5,9 +5,6 @@ #include "rel/d/a/tag/d_a_tag_Lv6Gate/d_a_tag_Lv6Gate.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/a/d_a_player.h" -#include "d/bg/d_bg_w.h" #include "d/d_procname.h" #include "dol2asm.h" diff --git a/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate.cpp b/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate.cpp index 84d0e8794d..028f0160d8 100644 --- a/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate.cpp +++ b/rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate.cpp @@ -4,7 +4,6 @@ // #include "rel/d/a/tag/d_a_tag_Lv7Gate/d_a_tag_Lv7Gate.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/d_path.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_TWgate/d_a_tag_TWgate.cpp b/rel/d/a/tag/d_a_tag_TWgate/d_a_tag_TWgate.cpp index d3a0d1927f..c48ccd0a61 100644 --- a/rel/d/a/tag/d_a_tag_TWgate/d_a_tag_TWgate.cpp +++ b/rel/d/a/tag/d_a_tag_TWgate/d_a_tag_TWgate.cpp @@ -4,7 +4,6 @@ // #include "rel/d/a/tag/d_a_tag_TWgate/d_a_tag_TWgate.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" #include "d/msg/d_msg_flow.h" diff --git a/rel/d/a/tag/d_a_tag_ajnot/d_a_tag_ajnot.cpp b/rel/d/a/tag/d_a_tag_ajnot/d_a_tag_ajnot.cpp index 12f76bc321..440c7bbd2f 100644 --- a/rel/d/a/tag/d_a_tag_ajnot/d_a_tag_ajnot.cpp +++ b/rel/d/a/tag/d_a_tag_ajnot/d_a_tag_ajnot.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_ajnot/d_a_tag_ajnot.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_arena/d_a_tag_arena.cpp b/rel/d/a/tag/d_a_tag_arena/d_a_tag_arena.cpp index d9aa7dd313..211967e4c1 100644 --- a/rel/d/a/tag/d_a_tag_arena/d_a_tag_arena.cpp +++ b/rel/d/a/tag/d_a_tag_arena/d_a_tag_arena.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_arena/d_a_tag_arena.h" -#include "d/d_procname.h" /* 80D55CD8-80D55D28 000078 0050+00 1/0 0/0 0/0 .text daTagArena_Create__FP10fopAc_ac_c */ diff --git a/rel/d/a/tag/d_a_tag_assistance/d_a_tag_assistance.cpp b/rel/d/a/tag/d_a_tag_assistance/d_a_tag_assistance.cpp index 5c2e591492..4372747f64 100644 --- a/rel/d/a/tag/d_a_tag_assistance/d_a_tag_assistance.cpp +++ b/rel/d/a/tag/d_a_tag_assistance/d_a_tag_assistance.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_assistance/d_a_tag_assistance.h" -#include "d/d_procname.h" /* 80D55E38-80D55E98 000078 0060+00 1/0 0/0 0/0 .text daTagAssist_Create__FP10fopAc_ac_c */ diff --git a/rel/d/a/tag/d_a_tag_attack_item/d_a_tag_attack_item.cpp b/rel/d/a/tag/d_a_tag_attack_item/d_a_tag_attack_item.cpp index 16daff3814..7237159f32 100644 --- a/rel/d/a/tag/d_a_tag_attack_item/d_a_tag_attack_item.cpp +++ b/rel/d/a/tag/d_a_tag_attack_item/d_a_tag_attack_item.cpp @@ -6,9 +6,7 @@ #include "rel/d/a/tag/d_a_tag_attack_item/d_a_tag_attack_item.h" #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" -#include "d/cc/d_cc_d.h" #include "d/com/d_com_inf_game.h" -#include "d/event/d_event_lib.h" #include "dol2asm.h" // diff --git a/rel/d/a/tag/d_a_tag_attention/d_a_tag_attention.cpp b/rel/d/a/tag/d_a_tag_attention/d_a_tag_attention.cpp index 5faf1a9011..b32bc1e31d 100644 --- a/rel/d/a/tag/d_a_tag_attention/d_a_tag_attention.cpp +++ b/rel/d/a/tag/d_a_tag_attention/d_a_tag_attention.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_attention/d_a_tag_attention.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" static const u8 l_dist_tbl[] = { 0x23, 0x24 }; diff --git a/rel/d/a/tag/d_a_tag_bottle_item/d_a_tag_bottle_item.cpp b/rel/d/a/tag/d_a_tag_bottle_item/d_a_tag_bottle_item.cpp index ba73ad3870..18d508f114 100644 --- a/rel/d/a/tag/d_a_tag_bottle_item/d_a_tag_bottle_item.cpp +++ b/rel/d/a/tag/d_a_tag_bottle_item/d_a_tag_bottle_item.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_bottle_item/d_a_tag_bottle_item.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_item.h" #include "d/a/d_a_player.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_chgrestart/d_a_tag_chgrestart.cpp b/rel/d/a/tag/d_a_tag_chgrestart/d_a_tag_chgrestart.cpp index a09a4dee1f..62a6725436 100644 --- a/rel/d/a/tag/d_a_tag_chgrestart/d_a_tag_chgrestart.cpp +++ b/rel/d/a/tag/d_a_tag_chgrestart/d_a_tag_chgrestart.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_chgrestart/d_a_tag_chgrestart.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D56758-80D567E4 000078 008C+00 1/1 0/0 0/0 .text Create__17daTagChgRestart_cFv */ diff --git a/rel/d/a/tag/d_a_tag_chkpoint/d_a_tag_chkpoint.cpp b/rel/d/a/tag/d_a_tag_chkpoint/d_a_tag_chkpoint.cpp index 5e74fb2ead..d798bf3c77 100644 --- a/rel/d/a/tag/d_a_tag_chkpoint/d_a_tag_chkpoint.cpp +++ b/rel/d/a/tag/d_a_tag_chkpoint/d_a_tag_chkpoint.cpp @@ -5,7 +5,6 @@ #include "rel/d/a/tag/d_a_tag_chkpoint/d_a_tag_chkpoint.h" #include "dol2asm.h" -#include "d/d_procname.h" #include "d/a/d_a_player.h" // diff --git a/rel/d/a/tag/d_a_tag_escape/d_a_tag_escape.cpp b/rel/d/a/tag/d_a_tag_escape/d_a_tag_escape.cpp index bac34e8a4a..877ee172c7 100644 --- a/rel/d/a/tag/d_a_tag_escape/d_a_tag_escape.cpp +++ b/rel/d/a/tag/d_a_tag_escape/d_a_tag_escape.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_escape/d_a_tag_escape.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D587D8-80D58828 000078 0050+00 1/0 0/0 0/0 .text daTagEscape_Create__FP10fopAc_ac_c diff --git a/rel/d/a/tag/d_a_tag_evt/d_a_tag_evt.cpp b/rel/d/a/tag/d_a_tag_evt/d_a_tag_evt.cpp index 68cdb5cd95..78bd1f3e10 100644 --- a/rel/d/a/tag/d_a_tag_evt/d_a_tag_evt.cpp +++ b/rel/d/a/tag/d_a_tag_evt/d_a_tag_evt.cpp @@ -4,11 +4,9 @@ // #include "rel/d/a/tag/d_a_tag_evt/d_a_tag_evt.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" #include "d/com/d_com_static.h" -#include "d/d_procname.h" #include "d/save/d_save.h" #include "f_op/f_op_actor_mng.h" diff --git a/rel/d/a/tag/d_a_tag_evtarea/d_a_tag_evtarea.cpp b/rel/d/a/tag/d_a_tag_evtarea/d_a_tag_evtarea.cpp index cc16e91a4f..cb2d845a4a 100644 --- a/rel/d/a/tag/d_a_tag_evtarea/d_a_tag_evtarea.cpp +++ b/rel/d/a/tag/d_a_tag_evtarea/d_a_tag_evtarea.cpp @@ -3,7 +3,6 @@ // #include "rel/d/a/tag/d_a_tag_evtarea/d_a_tag_evtarea.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_npc.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_evtmsg/d_a_tag_evtmsg.cpp b/rel/d/a/tag/d_a_tag_evtmsg/d_a_tag_evtmsg.cpp index fbd7ba2dec..cc6defae76 100644 --- a/rel/d/a/tag/d_a_tag_evtmsg/d_a_tag_evtmsg.cpp +++ b/rel/d/a/tag/d_a_tag_evtmsg/d_a_tag_evtmsg.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/tag/d_a_tag_evtmsg/d_a_tag_evtmsg.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_npc.h" -#include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_gra/d_a_tag_gra.cpp b/rel/d/a/tag/d_a_tag_gra/d_a_tag_gra.cpp index d9064d59c8..d0a2124cbd 100644 --- a/rel/d/a/tag/d_a_tag_gra/d_a_tag_gra.cpp +++ b/rel/d/a/tag/d_a_tag_gra/d_a_tag_gra.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_gra/d_a_tag_gra.h" -#include "d/d_procname.h" /* 80D59658-80D596E8 000078 0090+00 1/0 0/0 0/0 .text daTagGra_Create__FP10fopAc_ac_c */ static int daTagGra_Create(fopAc_ac_c* i_this) { diff --git a/rel/d/a/tag/d_a_tag_gstart/d_a_tag_gstart.cpp b/rel/d/a/tag/d_a_tag_gstart/d_a_tag_gstart.cpp index d5f8714526..8f4e970045 100644 --- a/rel/d/a/tag/d_a_tag_gstart/d_a_tag_gstart.cpp +++ b/rel/d/a/tag/d_a_tag_gstart/d_a_tag_gstart.cpp @@ -4,10 +4,8 @@ */ #include "rel/d/a/tag/d_a_tag_gstart/d_a_tag_gstart.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" /* 805A3478-805A34F4 000078 007C+00 1/1 0/0 0/0 .text create__13daTagGstart_cFv */ diff --git a/rel/d/a/tag/d_a_tag_guard/d_a_tag_guard.cpp b/rel/d/a/tag/d_a_tag_guard/d_a_tag_guard.cpp index f280c9492f..3c517d2bd8 100644 --- a/rel/d/a/tag/d_a_tag_guard/d_a_tag_guard.cpp +++ b/rel/d/a/tag/d_a_tag_guard/d_a_tag_guard.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_guard/d_a_tag_guard.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "d/d_stage.h" /* 80D597F8-80D5985C 000078 0064+00 0/0 0/0 1/1 .text getAppearPoint__12daTagGuard_cFP3Vec */ diff --git a/rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit.cpp b/rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit.cpp index dbf78dcf5e..01086b1e26 100644 --- a/rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit.cpp +++ b/rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_hinit/d_a_tag_hinit.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" /* 805A3758-805A3800 000078 00A8+00 1/1 0/0 0/0 .text create__12daTagHinit_cFv */ diff --git a/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.cpp b/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.cpp index 09663e83a7..c5f3a0541c 100644 --- a/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.cpp +++ b/rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.cpp @@ -4,11 +4,9 @@ */ #include "rel/d/a/tag/d_a_tag_hjump/d_a_tag_hjump.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "rel/d/a/d_a_horse/d_a_horse.h" /* 805A4238-805A4240 000000 0007+01 4/4 0/0 0/0 .rodata l_arcName */ diff --git a/rel/d/a/tag/d_a_tag_howl/d_a_tag_howl.cpp b/rel/d/a/tag/d_a_tag_howl/d_a_tag_howl.cpp index fd260e94a3..d2ca01529a 100644 --- a/rel/d/a/tag/d_a_tag_howl/d_a_tag_howl.cpp +++ b/rel/d/a/tag/d_a_tag_howl/d_a_tag_howl.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_howl/d_a_tag_howl.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" #include "f_op/f_op_actor_mng.h" diff --git a/rel/d/a/tag/d_a_tag_hstop/d_a_tag_hstop.cpp b/rel/d/a/tag/d_a_tag_hstop/d_a_tag_hstop.cpp index 348bfb61cd..54b6a15958 100644 --- a/rel/d/a/tag/d_a_tag_hstop/d_a_tag_hstop.cpp +++ b/rel/d/a/tag/d_a_tag_hstop/d_a_tag_hstop.cpp @@ -4,9 +4,7 @@ */ #include "rel/d/a/tag/d_a_tag_hstop/d_a_tag_hstop.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/meter/d_meter2_info.h" #include "f_op/f_op_actor_mng.h" #include "rel/d/a/d_a_horse/d_a_horse.h" diff --git a/rel/d/a/tag/d_a_tag_instruction/d_a_tag_instruction.cpp b/rel/d/a/tag/d_a_tag_instruction/d_a_tag_instruction.cpp index 7ac4c8e41b..c154637dad 100644 --- a/rel/d/a/tag/d_a_tag_instruction/d_a_tag_instruction.cpp +++ b/rel/d/a/tag/d_a_tag_instruction/d_a_tag_instruction.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_instruction/d_a_tag_instruction.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D59AF8-80D59B48 000078 0050+00 1/0 0/0 0/0 .text daTagInst_Create__FP10fopAc_ac_c */ diff --git a/rel/d/a/tag/d_a_tag_lantern/d_a_tag_lantern.cpp b/rel/d/a/tag/d_a_tag_lantern/d_a_tag_lantern.cpp index 23f8ec7d50..4eb206fb9f 100644 --- a/rel/d/a/tag/d_a_tag_lantern/d_a_tag_lantern.cpp +++ b/rel/d/a/tag/d_a_tag_lantern/d_a_tag_lantern.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_lantern/d_a_tag_lantern.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 8048ECAC-8048ED28 0000EC 007C+00 1/0 0/0 0/0 .text __dt__15daTag_Lantern_cFv */ diff --git a/rel/d/a/tag/d_a_tag_lightball/d_a_tag_lightball.cpp b/rel/d/a/tag/d_a_tag_lightball/d_a_tag_lightball.cpp index 24150950e4..1dc51cf4c5 100644 --- a/rel/d/a/tag/d_a_tag_lightball/d_a_tag_lightball.cpp +++ b/rel/d/a/tag/d_a_tag_lightball/d_a_tag_lightball.cpp @@ -1,7 +1,6 @@ // Translation Unit: d_a_tag_lightball #include "rel/d/a/tag/d_a_tag_lightball/d_a_tag_lightball.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_lv2prchk/d_a_tag_lv2prchk.cpp b/rel/d/a/tag/d_a_tag_lv2prchk/d_a_tag_lv2prchk.cpp index a7324bbf0d..7d27986a37 100644 --- a/rel/d/a/tag/d_a_tag_lv2prchk/d_a_tag_lv2prchk.cpp +++ b/rel/d/a/tag/d_a_tag_lv2prchk/d_a_tag_lv2prchk.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_lv2prchk/d_a_tag_lv2prchk.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_lv5soup/d_a_tag_lv5soup.cpp b/rel/d/a/tag/d_a_tag_lv5soup/d_a_tag_lv5soup.cpp index fb0de6b9da..4a9b59124a 100644 --- a/rel/d/a/tag/d_a_tag_lv5soup/d_a_tag_lv5soup.cpp +++ b/rel/d/a/tag/d_a_tag_lv5soup/d_a_tag_lv5soup.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_lv5soup/d_a_tag_lv5soup.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" diff --git a/rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.cpp b/rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.cpp index 22143015fa..bbef765eed 100644 --- a/rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.cpp +++ b/rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_lv6CstaSw/d_a_tag_lv6CstaSw.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D5B2EC-80D5B310 0000EC 0024+00 1/1 0/0 0/0 .text __ct__17daLv6CstaSw_HIO_cFv */ diff --git a/rel/d/a/tag/d_a_tag_magne/d_a_tag_magne.cpp b/rel/d/a/tag/d_a_tag_magne/d_a_tag_magne.cpp index 3634ea19e9..eb986b945c 100644 --- a/rel/d/a/tag/d_a_tag_magne/d_a_tag_magne.cpp +++ b/rel/d/a/tag/d_a_tag_magne/d_a_tag_magne.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_magne/d_a_tag_magne.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 805A5498-805A54DC 000078 0044+00 1/1 0/0 0/0 .text Create__12daTagMagne_cFv */ diff --git a/rel/d/a/tag/d_a_tag_mhint/d_a_tag_mhint.cpp b/rel/d/a/tag/d_a_tag_mhint/d_a_tag_mhint.cpp index 058e4fd555..a60b993fe2 100644 --- a/rel/d/a/tag/d_a_tag_mhint/d_a_tag_mhint.cpp +++ b/rel/d/a/tag/d_a_tag_mhint/d_a_tag_mhint.cpp @@ -4,10 +4,6 @@ // #include "rel/d/a/tag/d_a_tag_mhint/d_a_tag_mhint.h" -#include "rel/d/a/d_a_midna/d_a_midna.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/a/d_a_npc.h" -#include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" #include "d/meter/d_meter2_info.h" diff --git a/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist.cpp b/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist.cpp index c871c79903..15c84b1a10 100644 --- a/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist.cpp +++ b/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_mist/d_a_tag_mist.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_mmsg/d_a_tag_mmsg.cpp b/rel/d/a/tag/d_a_tag_mmsg/d_a_tag_mmsg.cpp index 8ce27681d0..f9f1bd9b0c 100644 --- a/rel/d/a/tag/d_a_tag_mmsg/d_a_tag_mmsg.cpp +++ b/rel/d/a/tag/d_a_tag_mmsg/d_a_tag_mmsg.cpp @@ -4,10 +4,8 @@ // #include "rel/d/a/tag/d_a_tag_mmsg/d_a_tag_mmsg.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" /* ############################################################################################## */ diff --git a/rel/d/a/tag/d_a_tag_mstop/d_a_tag_mstop.cpp b/rel/d/a/tag/d_a_tag_mstop/d_a_tag_mstop.cpp index 6508c33b83..50a7017a50 100644 --- a/rel/d/a/tag/d_a_tag_mstop/d_a_tag_mstop.cpp +++ b/rel/d/a/tag/d_a_tag_mstop/d_a_tag_mstop.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_mstop/d_a_tag_mstop.h" -#include "rel/d/a/d_a_midna/d_a_midna.h" -#include "d/d_procname.h" #include "dol2asm.h" #include "dolphin/types.h" #include "f_op/f_op_actor_mng.h" diff --git a/rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait.cpp b/rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait.cpp index b0ad045636..8dd5c267b5 100644 --- a/rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait.cpp +++ b/rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait.cpp @@ -5,8 +5,6 @@ #include "rel/d/a/tag/d_a_tag_mwait/d_a_tag_mwait.h" #include "rel/d/a/d_a_midna/d_a_midna.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/com/d_com_inf_game.h" #include "d/d_procname.h" /* 80D5BE18-80D5BFFC 000078 01E4+00 1/1 0/0 0/0 .text create__12daTagMwait_cFv */ diff --git a/rel/d/a/tag/d_a_tag_myna2/d_a_tag_myna2.cpp b/rel/d/a/tag/d_a_tag_myna2/d_a_tag_myna2.cpp index fcff088d2d..181ce77e4c 100644 --- a/rel/d/a/tag/d_a_tag_myna2/d_a_tag_myna2.cpp +++ b/rel/d/a/tag/d_a_tag_myna2/d_a_tag_myna2.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_myna2/d_a_tag_myna2.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D5C698-80D5C708 000078 0070+00 1/1 0/0 0/0 .text create__12daTagMyna2_cFv */ diff --git a/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light.cpp b/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light.cpp index 5eb705c37d..7971da183a 100644 --- a/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light.cpp +++ b/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light.cpp @@ -1,9 +1,7 @@ // Translation Unit: d_a_tag_myna_light #include "rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/d_stage.h" #include "d/particle/d_particle.h" diff --git a/rel/d/a/tag/d_a_tag_pachi/d_a_tag_pachi.cpp b/rel/d/a/tag/d_a_tag_pachi/d_a_tag_pachi.cpp index d0e90f49d1..eb22772b13 100644 --- a/rel/d/a/tag/d_a_tag_pachi/d_a_tag_pachi.cpp +++ b/rel/d/a/tag/d_a_tag_pachi/d_a_tag_pachi.cpp @@ -4,7 +4,6 @@ // #include "rel/d/a/tag/d_a_tag_pachi/d_a_tag_pachi.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire.cpp b/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire.cpp index 1ea77e997e..cc11196ef3 100644 --- a/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire.cpp +++ b/rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_poFire/d_a_tag_poFire.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D5DACC-80D5DAF0 0000EC 0024+00 1/1 0/0 0/0 .text __ct__17daTagPoFire_HIO_cFv */ diff --git a/rel/d/a/tag/d_a_tag_push/d_a_tag_push.cpp b/rel/d/a/tag/d_a_tag_push/d_a_tag_push.cpp index 25ac326ea2..0d6512104f 100644 --- a/rel/d/a/tag/d_a_tag_push/d_a_tag_push.cpp +++ b/rel/d/a/tag/d_a_tag_push/d_a_tag_push.cpp @@ -4,7 +4,6 @@ // #include "rel/d/a/tag/d_a_tag_push/d_a_tag_push.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 804902B8-80490418 000078 0160+00 2/1 0/0 0/0 .text srchActor__12daTag_Push_cFPvPv */ diff --git a/rel/d/a/tag/d_a_tag_ret_room/d_a_tag_ret_room.cpp b/rel/d/a/tag/d_a_tag_ret_room/d_a_tag_ret_room.cpp index f7bf4f1802..a7985b40f6 100644 --- a/rel/d/a/tag/d_a_tag_ret_room/d_a_tag_ret_room.cpp +++ b/rel/d/a/tag/d_a_tag_ret_room/d_a_tag_ret_room.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_ret_room/d_a_tag_ret_room.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" /* 80D5EE98-80D5EED4 000078 003C+00 2/2 0/0 0/0 .text __ct__12daTagRetRm_cFv */ diff --git a/rel/d/a/tag/d_a_tag_river_back/d_a_tag_river_back.cpp b/rel/d/a/tag/d_a_tag_river_back/d_a_tag_river_back.cpp index 13ded3c534..393ddcde51 100644 --- a/rel/d/a/tag/d_a_tag_river_back/d_a_tag_river_back.cpp +++ b/rel/d/a/tag/d_a_tag_river_back/d_a_tag_river_back.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_river_back/d_a_tag_river_back.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" // diff --git a/rel/d/a/tag/d_a_tag_rmbit_sw/d_a_tag_rmbit_sw.cpp b/rel/d/a/tag/d_a_tag_rmbit_sw/d_a_tag_rmbit_sw.cpp index 2ec0d53679..abb9a1f82c 100644 --- a/rel/d/a/tag/d_a_tag_rmbit_sw/d_a_tag_rmbit_sw.cpp +++ b/rel/d/a/tag/d_a_tag_rmbit_sw/d_a_tag_rmbit_sw.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_rmbit_sw/d_a_tag_rmbit_sw.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D5FAF8-80D5FB34 000078 003C+00 2/2 0/0 0/0 .text __ct__14daTagRmbitSw_cFv */ diff --git a/rel/d/a/tag/d_a_tag_schedule/d_a_tag_schedule.cpp b/rel/d/a/tag/d_a_tag_schedule/d_a_tag_schedule.cpp index a824a3ef09..b89fc78563 100644 --- a/rel/d/a/tag/d_a_tag_schedule/d_a_tag_schedule.cpp +++ b/rel/d/a/tag/d_a_tag_schedule/d_a_tag_schedule.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_schedule/d_a_tag_schedule.h" -#include "d/d_procname.h" /* 80D60098-80D600E8 000078 0050+00 1/0 0/0 0/0 .text daTagSchedule_Create__FP10fopAc_ac_c */ static int daTagSchedule_Create(fopAc_ac_c* i_this) { diff --git a/rel/d/a/tag/d_a_tag_setBall/d_a_tag_setBall.cpp b/rel/d/a/tag/d_a_tag_setBall/d_a_tag_setBall.cpp index 4640d982a8..42ad775859 100644 --- a/rel/d/a/tag/d_a_tag_setBall/d_a_tag_setBall.cpp +++ b/rel/d/a/tag/d_a_tag_setBall/d_a_tag_setBall.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_setBall/d_a_tag_setBall.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D601F8-80D60218 000078 0020+00 1/1 0/0 0/0 .text initBaseMtx__14daTagSetBall_cFv */ diff --git a/rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart.cpp b/rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart.cpp index abf51e5841..2af155e354 100644 --- a/rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart.cpp +++ b/rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart.cpp @@ -5,7 +5,6 @@ */ #include "rel/d/a/tag/d_a_tag_setrestart/d_a_tag_setrestart.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_shop_camera/d_a_tag_shop_camera.cpp b/rel/d/a/tag/d_a_tag_shop_camera/d_a_tag_shop_camera.cpp index 5fc0544dac..9b2a7a2d89 100644 --- a/rel/d/a/tag/d_a_tag_shop_camera/d_a_tag_shop_camera.cpp +++ b/rel/d/a/tag/d_a_tag_shop_camera/d_a_tag_shop_camera.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_shop_camera/d_a_tag_shop_camera.h" -#include "JSystem/JKernel/JKRHeap.h" #include "dol2asm.h" diff --git a/rel/d/a/tag/d_a_tag_shop_item/d_a_tag_shop_item.cpp b/rel/d/a/tag/d_a_tag_shop_item/d_a_tag_shop_item.cpp index 0bf5f00736..08fecf3ba3 100644 --- a/rel/d/a/tag/d_a_tag_shop_item/d_a_tag_shop_item.cpp +++ b/rel/d/a/tag/d_a_tag_shop_item/d_a_tag_shop_item.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_shop_item/d_a_tag_shop_item.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D60B78-80D60D78 000078 0200+00 1/1 0/0 0/0 .text create__16daTag_ShopItem_cFv */ diff --git a/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.cpp b/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.cpp index 4a99d91088..43e07487e9 100644 --- a/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.cpp +++ b/rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_smk_emt/d_a_tag_smk_emt.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D612D8-80D61324 000078 004C+00 2/2 0/0 0/0 .text __ct__13daTagSmkEmt_cFv */ diff --git a/rel/d/a/tag/d_a_tag_spinner/d_a_tag_spinner.cpp b/rel/d/a/tag/d_a_tag_spinner/d_a_tag_spinner.cpp index 9e9eb5ec19..ec13dbfe1b 100644 --- a/rel/d/a/tag/d_a_tag_spinner/d_a_tag_spinner.cpp +++ b/rel/d/a/tag/d_a_tag_spinner/d_a_tag_spinner.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_spinner/d_a_tag_spinner.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D616F8-80D61718 000078 0020+00 1/1 0/0 0/0 .text CheckCreateHeap__FP10fopAc_ac_c */ diff --git a/rel/d/a/tag/d_a_tag_spring/d_a_tag_spring.cpp b/rel/d/a/tag/d_a_tag_spring/d_a_tag_spring.cpp index 6867e5d39e..367b674b1d 100644 --- a/rel/d/a/tag/d_a_tag_spring/d_a_tag_spring.cpp +++ b/rel/d/a/tag/d_a_tag_spring/d_a_tag_spring.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_spring/d_a_tag_spring.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_ss_drink/d_a_tag_ss_drink.cpp b/rel/d/a/tag/d_a_tag_ss_drink/d_a_tag_ss_drink.cpp index acf8f0d8c9..70a9b56aa3 100644 --- a/rel/d/a/tag/d_a_tag_ss_drink/d_a_tag_ss_drink.cpp +++ b/rel/d/a/tag/d_a_tag_ss_drink/d_a_tag_ss_drink.cpp @@ -4,11 +4,7 @@ */ #include "rel/d/a/tag/d_a_tag_ss_drink/d_a_tag_ss_drink.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/a/d_a_obj_ss_base.h" #include "d/a/d_a_player.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_attention.h" #include "d/d_procname.h" #include "d/msg/d_msg_object.h" #include "rel/d/a/d_a_myna/d_a_myna.h" diff --git a/rel/d/a/tag/d_a_tag_stream/d_a_tag_stream.cpp b/rel/d/a/tag/d_a_tag_stream/d_a_tag_stream.cpp index e4c6aa1952..3e5498ce58 100644 --- a/rel/d/a/tag/d_a_tag_stream/d_a_tag_stream.cpp +++ b/rel/d/a/tag/d_a_tag_stream/d_a_tag_stream.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_stream/d_a_tag_stream.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_telop/d_a_tag_telop.cpp b/rel/d/a/tag/d_a_tag_telop/d_a_tag_telop.cpp index 3499927446..db2ab23278 100644 --- a/rel/d/a/tag/d_a_tag_telop/d_a_tag_telop.cpp +++ b/rel/d/a/tag/d_a_tag_telop/d_a_tag_telop.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_telop/d_a_tag_telop.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" #include "f_op/f_op_msg_mng.h" diff --git a/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl.cpp b/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl.cpp index e786698c53..46227a76f5 100644 --- a/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl.cpp +++ b/rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_wara_howl/d_a_tag_wara_howl.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_watchge/d_a_tag_watchge.cpp b/rel/d/a/tag/d_a_tag_watchge/d_a_tag_watchge.cpp index b7a60d2004..01fe7a4d82 100644 --- a/rel/d/a/tag/d_a_tag_watchge/d_a_tag_watchge.cpp +++ b/rel/d/a/tag/d_a_tag_watchge/d_a_tag_watchge.cpp @@ -4,7 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_watchge/d_a_tag_watchge.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/d_procname.h" /* 80D642D8-80D642E0 000078 0008+00 1/1 0/0 0/0 .text draw__14daTagWatchGe_cFv */ diff --git a/rel/d/a/tag/d_a_tag_waterfall/d_a_tag_waterfall.cpp b/rel/d/a/tag/d_a_tag_waterfall/d_a_tag_waterfall.cpp index 8df53556d5..867af0c3c4 100644 --- a/rel/d/a/tag/d_a_tag_waterfall/d_a_tag_waterfall.cpp +++ b/rel/d/a/tag/d_a_tag_waterfall/d_a_tag_waterfall.cpp @@ -4,8 +4,6 @@ */ #include "rel/d/a/tag/d_a_tag_waterfall/d_a_tag_waterfall.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "JSystem/JMath/JMath.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" diff --git a/rel/d/a/tag/d_a_tag_wljump/d_a_tag_wljump.cpp b/rel/d/a/tag/d_a_tag_wljump/d_a_tag_wljump.cpp index 0e4d88f083..50f308d97a 100644 --- a/rel/d/a/tag/d_a_tag_wljump/d_a_tag_wljump.cpp +++ b/rel/d/a/tag/d_a_tag_wljump/d_a_tag_wljump.cpp @@ -4,8 +4,6 @@ // #include "rel/d/a/tag/d_a_tag_wljump/d_a_tag_wljump.h" -#include "rel/d/a/d_a_midna/d_a_midna.h" -#include "f_op/f_op_actor_mng.h" #include "dol2asm.h" #include "d/d_path.h" #include "d/d_procname.h" diff --git a/rel/executor.cpp b/rel/executor.cpp index c039306b81..6319192c91 100644 --- a/rel/executor.cpp +++ b/rel/executor.cpp @@ -2,7 +2,6 @@ // // -#include "dolphin/types.h" extern "C" void ModuleProlog(); extern "C" void ModuleEpilog(); diff --git a/src/DynamicLink.cpp b/src/DynamicLink.cpp index 967838b763..8b9124909f 100644 --- a/src/DynamicLink.cpp +++ b/src/DynamicLink.cpp @@ -9,8 +9,6 @@ #include "JSystem/JKernel/JKRFileCache.h" #include "JSystem/JUtility/JUTConsole.h" #include "stdio.h" -#include "dol2asm.h" -#include "dolphin/os.h" #include "m_Do/m_Do_dvd_thread.h" #include "m_Do/m_Do_ext.h" diff --git a/src/c/c_damagereaction.cpp b/src/c/c_damagereaction.cpp index 7f31d09858..d8a917cf5a 100644 --- a/src/c/c_damagereaction.cpp +++ b/src/c/c_damagereaction.cpp @@ -7,7 +7,6 @@ #include "dol2asm.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" // diff --git a/src/c/c_dylink.cpp b/src/c/c_dylink.cpp index 63de249b0c..44a9db74bb 100644 --- a/src/c/c_dylink.cpp +++ b/src/c/c_dylink.cpp @@ -8,8 +8,6 @@ #include "JSystem/JKernel/JKRFileCache.h" #include "JSystem/JKernel/JKRSolidHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" -#include "global.h" #include "m_Do/m_Do_ext.h" /* 80374640-80375DE8 -00001 17A8+00 1/1 0/0 0/0 .rodata DynamicNameTable */ diff --git a/src/d/a/d_a_alink.cpp b/src/d/a/d_a_alink.cpp index d5c5120ced..64651e9c8d 100644 --- a/src/d/a/d_a_alink.cpp +++ b/src/d/a/d_a_alink.cpp @@ -7,25 +7,16 @@ #include "JSystem/J2DGraph/J2DAnmLoader.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "JSystem/J3DGraphLoader/J3DAnmLoader.h" -#include "JSystem/JAudio2/JAISeq.h" #include "JSystem/JKernel/JKRExpHeap.h" -#include "JSystem/JMath/JMath.h" #include "SSystem/SComponent/c_math.h" -#include "d/a/d_a_npc.h" -#include "d/a/d_a_obj.h" #include "d/d_item.h" -#include "d/d_procname.h" #include "d/meter/d_meter2_draw.h" -#include "d/msg/d_msg_object.h" #include "d/pane/d_pane_class.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "rel/d/a/d_a_crod/d_a_crod.h" -#include "rel/d/a/d_a_horse/d_a_horse.h" #include "rel/d/a/d_a_mg_rod/d_a_mg_rod.h" #include "rel/d/a/d_a_midna/d_a_midna.h" #include "rel/d/a/d_a_mirror/d_a_mirror.h" -#include "rel/d/a/d_a_scene_exit/d_a_scene_exit.h" #include "rel/d/a/d_a_spinner/d_a_spinner.h" #include "rel/d/a/d_a_tbox/d_a_tbox.h" #include "rel/d/a/e/d_a_e_wb/d_a_e_wb.h" diff --git a/src/d/a/d_a_item_static.cpp b/src/d/a/d_a_item_static.cpp index 164dcba362..40d2e8c864 100644 --- a/src/d/a/d_a_item_static.cpp +++ b/src/d/a/d_a_item_static.cpp @@ -4,7 +4,6 @@ // #include "d/a/d_a_item_static.h" -#include "dolphin/types.h" // // Forward References: diff --git a/src/d/a/d_a_itembase.cpp b/src/d/a/d_a_itembase.cpp index 5dda2b8d49..076fe8dace 100644 --- a/src/d/a/d_a_itembase.cpp +++ b/src/d/a/d_a_itembase.cpp @@ -6,7 +6,6 @@ #include "d/a/d_a_itembase.h" #include "d/com/d_com_inf_game.h" #include "d/d_item_data.h" -#include "dolphin/types.h" #include "f_op/f_op_actor_mng.h" // diff --git a/src/d/a/d_a_no_chg_room.cpp b/src/d/a/d_a_no_chg_room.cpp index b4052088f0..b02055dc42 100644 --- a/src/d/a/d_a_no_chg_room.cpp +++ b/src/d/a/d_a_no_chg_room.cpp @@ -4,10 +4,6 @@ */ #include "d/a/d_a_no_chg_room.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/a/d_a_player.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/s/d_s_room.h" #include "rel/d/a/d_a_horse/d_a_horse.h" #include "rel/d/a/d_a_spinner/d_a_spinner.h" diff --git a/src/d/a/d_a_npc.cpp b/src/d/a/d_a_npc.cpp index 3cde9f420c..c839175d2e 100644 --- a/src/d/a/d_a_npc.cpp +++ b/src/d/a/d_a_npc.cpp @@ -4,12 +4,8 @@ // #include "d/a/d_a_npc.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "SSystem/SComponent/c_math.h" -#include "d/d_procname.h" #include "d/msg/d_msg_object.h" #include "dol2asm.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_lib.h" #include "rel/d/a/npc/d_a_npc_tk/d_a_npc_tk.h" #include "rel/d/a/tag/d_a_tag_evtarea/d_a_tag_evtarea.h" diff --git a/src/d/a/d_a_npc_cd.cpp b/src/d/a/d_a_npc_cd.cpp index 113063b2d8..694e3e34ea 100644 --- a/src/d/a/d_a_npc_cd.cpp +++ b/src/d/a/d_a_npc_cd.cpp @@ -5,7 +5,6 @@ #include "d/a/d_a_npc_cd.h" #include "dol2asm.h" -#include "f_op/f_op_actor_mng.h" // // Types: diff --git a/src/d/a/d_a_npc_cd2.cpp b/src/d/a/d_a_npc_cd2.cpp index 6d950843b7..6d460da358 100644 --- a/src/d/a/d_a_npc_cd2.cpp +++ b/src/d/a/d_a_npc_cd2.cpp @@ -5,7 +5,6 @@ #include "d/a/d_a_npc_cd2.h" #include "d/a/d_a_player.h" -#include "d/d_procname.h" #include "dol2asm.h" #include "f_op/f_op_actor_mng.h" diff --git a/src/d/a/d_a_obj.cpp b/src/d/a/d_a_obj.cpp index d5e0fd7ea5..3a45d70ce9 100644 --- a/src/d/a/d_a_obj.cpp +++ b/src/d/a/d_a_obj.cpp @@ -4,7 +4,6 @@ */ #include "d/a/d_a_obj.h" -#include "JSystem/JMath/JMath.h" #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" diff --git a/src/d/a/d_a_obj_item.cpp b/src/d/a/d_a_obj_item.cpp index 169e703d54..6ce96e2919 100644 --- a/src/d/a/d_a_obj_item.cpp +++ b/src/d/a/d_a_obj_item.cpp @@ -9,7 +9,6 @@ #include "d/d_item.h" #include "d/d_item_data.h" #include "dol2asm.h" -#include "global.h" #include "m_Do/m_Do_mtx.h" // diff --git a/src/d/a/d_a_player.cpp b/src/d/a/d_a_player.cpp index 6e34eb5fb8..27e358729d 100644 --- a/src/d/a/d_a_player.cpp +++ b/src/d/a/d_a_player.cpp @@ -8,7 +8,6 @@ #include "JSystem/JKernel/JKRSolidHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_alink.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_lib.h" #include "rel/d/a/d_a_boomerang/d_a_boomerang.h" #include "rel/d/a/d_a_midna/d_a_midna.h" diff --git a/src/d/bg/d_bg_plc.cpp b/src/d/bg/d_bg_plc.cpp index 7a5e475a84..02bf36e04f 100644 --- a/src/d/bg/d_bg_plc.cpp +++ b/src/d/bg/d_bg_plc.cpp @@ -3,7 +3,6 @@ // #include "d/bg/d_bg_plc.h" -#include "dolphin/types.h" #include "JSystem/JUtility/JUTAssert.h" /* 80074074-80074080 06E9B4 000C+00 0/0 1/1 0/0 .text __ct__6dBgPlcFv */ diff --git a/src/d/bg/d_bg_s.cpp b/src/d/bg/d_bg_s.cpp index 34654a2e48..38899da3d9 100644 --- a/src/d/bg/d_bg_s.cpp +++ b/src/d/bg/d_bg_s.cpp @@ -7,7 +7,6 @@ #include "d/bg/d_bg_s_sph_chk.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" -#include "dolphin/mtx.h" #include "f_op/f_op_actor_mng.h" /* 800740F4-80074110 06EA34 001C+00 2/2 1/1 0/0 .text Init__11cBgS_ChkElmFv */ diff --git a/src/d/bg/d_bg_s_acch.cpp b/src/d/bg/d_bg_s_acch.cpp index ff14f4e045..ce48e206b2 100644 --- a/src/d/bg/d_bg_s_acch.cpp +++ b/src/d/bg/d_bg_s_acch.cpp @@ -7,7 +7,6 @@ #include "d/a/d_a_player.h" #include "d/bg/d_bg_s.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #include "global.h" /* 80075EAC-80075F14 0707EC 0068+00 0/0 4/4 336/336 .text __ct__12dBgS_AcchCirFv */ diff --git a/src/d/bg/d_bg_s_movebg_actor.cpp b/src/d/bg/d_bg_s_movebg_actor.cpp index 26ed5f5234..0f3330748f 100644 --- a/src/d/bg/d_bg_s_movebg_actor.cpp +++ b/src/d/bg/d_bg_s_movebg_actor.cpp @@ -6,7 +6,6 @@ #include "d/bg/d_bg_s_movebg_actor.h" #include "d/bg/d_bg_w.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_mtx.h" /* 80078624-80078668 072F64 0044+00 0/0 0/0 173/173 .text __ct__16dBgS_MoveBgActorFv */ diff --git a/src/d/bg/d_bg_w.cpp b/src/d/bg/d_bg_w.cpp index bbbf564206..67397be608 100644 --- a/src/d/bg/d_bg_w.cpp +++ b/src/d/bg/d_bg_w.cpp @@ -10,7 +10,6 @@ #include "d/bg/d_bg_s_sph_chk.h" #include "d/com/d_com_inf_game.h" #include "dol2asm.h" -#include "global.h" #include "rel/d/a/d_a_horse/d_a_horse.h" // diff --git a/src/d/bg/d_bg_w_kcol.cpp b/src/d/bg/d_bg_w_kcol.cpp index 1069f9be73..dbc81c2612 100644 --- a/src/d/bg/d_bg_w_kcol.cpp +++ b/src/d/bg/d_bg_w_kcol.cpp @@ -4,7 +4,6 @@ // #include "d/bg/d_bg_w_kcol.h" -#include "d/bg/d_bg_pc.h" #include "d/com/d_com_inf_game.h" #include "dol2asm.h" #include "rel/d/a/d_a_horse/d_a_horse.h" diff --git a/src/d/cc/d_cc_d_nonmatching.cpp b/src/d/cc/d_cc_d_nonmatching.cpp index 6237305fae..21001af1e9 100644 --- a/src/d/cc/d_cc_d_nonmatching.cpp +++ b/src/d/cc/d_cc_d_nonmatching.cpp @@ -4,7 +4,6 @@ // #include "d/cc/d_cc_d.h" -#include "f_op/f_op_actor_mng.h" #include "f_pc/f_pc_searcher.h" // diff --git a/src/d/cc/d_cc_s.cpp b/src/d/cc/d_cc_s.cpp index 038378bcc3..6cfa2ee58e 100644 --- a/src/d/cc/d_cc_s.cpp +++ b/src/d/cc/d_cc_s.cpp @@ -4,7 +4,6 @@ */ #include "d/cc/d_cc_s.h" -#include "JSystem/JMath/JMath.h" #include "d/com/d_com_inf_game.h" #include "d/d_jnt_col.h" #include "f_op/f_op_actor_mng.h" diff --git a/src/d/cc/d_cc_uty.cpp b/src/d/cc/d_cc_uty.cpp index 1b909460a9..226f5284af 100644 --- a/src/d/cc/d_cc_uty.cpp +++ b/src/d/cc/d_cc_uty.cpp @@ -7,7 +7,6 @@ #include "SSystem/SComponent/c_math.h" #include "Z2AudioLib/Z2Creature.h" #include "d/a/d_a_player.h" -#include "d/d_procname.h" #include "d/s/d_s_play.h" #include "f_op/f_op_actor_mng.h" diff --git a/src/d/com/d_com_inf_game.cpp b/src/d/com/d_com_inf_game.cpp index c973b8743d..72ff497a29 100644 --- a/src/d/com/d_com_inf_game.cpp +++ b/src/d/com/d_com_inf_game.cpp @@ -8,16 +8,12 @@ #include "JSystem/JKernel/JKRExpHeap.h" #include "d/a/d_a_alink.h" #include "d/d_item.h" -#include "d/d_procname.h" #include "d/d_simple_model.h" #include "d/d_timer.h" #include "d/map/d_map_path_dmap.h" #include "d/menu/d_menu_fmap.h" -#include "dol2asm.h" -#include "dolphin/os.h" #include "f_op/f_op_scene_mng.h" #include "m_Do/m_Do_Reset.h" -#include "m_Do/m_Do_audio.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" #include "stdio.h" diff --git a/src/d/d_att_dist.cpp b/src/d/d_att_dist.cpp index 7c34ef645b..ac4b83e3ed 100644 --- a/src/d/d_att_dist.cpp +++ b/src/d/d_att_dist.cpp @@ -1,6 +1,5 @@ #include "d/d_att_dist.h" #include "d/d_attention.h" -#include "dolphin/types.h" /* ############################################################################################## */ /* 803A9C70-803AB608 006D90 1998+00 0/0 5/5 13/13 .data dist_table__12dAttention_c */ diff --git a/src/d/d_attention.cpp b/src/d/d_attention.cpp index c5b20338e4..17c5854511 100644 --- a/src/d/d_attention.cpp +++ b/src/d/d_attention.cpp @@ -4,13 +4,10 @@ // #include "d/d_attention.h" -#include "JSystem/J3DGraphBase/J3DMatBlock.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "dol2asm.h" -#include "dolphin/os/OSCache.h" #include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_controller_pad.h" diff --git a/src/d/d_bomb.cpp b/src/d/d_bomb.cpp index 34c4457194..1e21946d35 100644 --- a/src/d/d_bomb.cpp +++ b/src/d/d_bomb.cpp @@ -4,7 +4,6 @@ */ #include "d/d_bomb.h" -#include "d/d_procname.h" bool dBomb_c::checkStateCarry() { return (fopAcM_checkCarryNow(this) || fopAcM_checkHookCarryNow(this) || diff --git a/src/d/d_bright_check.cpp b/src/d/d_bright_check.cpp index 06ef8483c1..9cd0449608 100644 --- a/src/d/d_bright_check.cpp +++ b/src/d/d_bright_check.cpp @@ -6,10 +6,8 @@ #define NO_INLINE_DLSTBASE_DRAW #include "d/d_bright_check.h" -#include "JSystem/J2DGraph/J2DGrafContext.h" #include "JSystem/J2DGraph/J2DScreen.h" #include "JSystem/J2DGraph/J2DTextBox.h" -#include "JSystem/JKernel/JKRArchive.h" #include "d/msg/d_msg_string.h" #include "m_Do/m_Do_controller_pad.h" diff --git a/src/d/d_camera.cpp b/src/d/d_camera.cpp index 91924d8cf0..e36213a427 100644 --- a/src/d/d_camera.cpp +++ b/src/d/d_camera.cpp @@ -5,8 +5,6 @@ #include "d/d_camera.h" #include "dol2asm.h" -#include "dolphin/os.h" -#include "d/a/d_a_alink.h" #include "d/com/d_com_inf_game.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" diff --git a/src/d/d_demo.cpp b/src/d/d_demo.cpp index 26930fba20..fc8c3d228d 100644 --- a/src/d/d_demo.cpp +++ b/src/d/d_demo.cpp @@ -6,9 +6,6 @@ #include "d/d_demo.h" #include "d/msg/d_msg_object.h" #include "dol2asm.h" -#include "dolphin/os.h" -#include "f_op/f_op_actor_mng.h" -#include "global.h" #include "m_Do/m_Do_graphic.h" #include "rel/d/a/d_a_movie_player/d_a_movie_player.h" diff --git a/src/d/d_drawlist.cpp b/src/d/d_drawlist.cpp index 4d430fe228..686d5766c6 100644 --- a/src/d/d_drawlist.cpp +++ b/src/d/d_drawlist.cpp @@ -8,14 +8,10 @@ #include "d/d_drawlist.h" #include "d/s/d_s_play.h" #include "JSystem/J2DGraph/J2DScreen.h" -#include "JSystem/J2DGraph/J2DGrafContext.h" #include "JSystem/J3DGraphBase/J3DDrawBuffer.h" #include "SSystem/SComponent/c_bg_s_shdw_draw.h" #include "d/com/d_com_inf_game.h" #include "dol2asm.h" -#include "dolphin/gx.h" -#include "dolphin/mtx/mtx44.h" -#include "dolphin/mtx.h" #include "m_Do/m_Do_graphic.h" #include "m_Do/m_Do_lib.h" #include "m_Do/m_Do_mtx.h" diff --git a/src/d/d_envse.cpp b/src/d/d_envse.cpp index c75b9822d6..becd3cfbe4 100644 --- a/src/d/d_envse.cpp +++ b/src/d/d_envse.cpp @@ -6,7 +6,6 @@ #include "d/d_envse.h" #include "d/com/d_com_inf_game.h" #include "d/d_path.h" -#include "d/d_procname.h" #include "dol2asm.h" #include "string.h" diff --git a/src/d/d_error_msg.cpp b/src/d/d_error_msg.cpp index 19b64b53c9..a007e80de6 100644 --- a/src/d/d_error_msg.cpp +++ b/src/d/d_error_msg.cpp @@ -5,7 +5,6 @@ #include "d/d_error_msg.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "dolphin/types.h" // diff --git a/src/d/d_ev_camera.cpp b/src/d/d_ev_camera.cpp index d78b75f998..d2fc2ef5c2 100644 --- a/src/d/d_ev_camera.cpp +++ b/src/d/d_ev_camera.cpp @@ -4,10 +4,6 @@ // #include "d/d_ev_camera.h" -#include "d/a/d_a_alink.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_camera.h" -#include "d/d_demo.h" #include "dol2asm.h" #include "m_Do/m_Do_controller_pad.h" #include "rel/d/a/d_a_midna/d_a_midna.h" diff --git a/src/d/d_eye_hl.cpp b/src/d/d_eye_hl.cpp index bd958130b1..88d3fd9f20 100644 --- a/src/d/d_eye_hl.cpp +++ b/src/d/d_eye_hl.cpp @@ -6,8 +6,6 @@ #include "d/d_eye_hl.h" #include "JSystem/J3DGraphBase/J3DTexture.h" #include "d/com/d_com_inf_game.h" -#include "dol2asm.h" -#include "dolphin/os.h" #include "d/s/d_s_play.h" /* 8009C964-8009CA28 0972A4 00C4+00 0/0 2/2 0/0 .text entry__8dEyeHL_cFP12J3DModelDataPCc diff --git a/src/d/d_gameover.cpp b/src/d/d_gameover.cpp index f708983b8d..7a257f03bf 100644 --- a/src/d/d_gameover.cpp +++ b/src/d/d_gameover.cpp @@ -10,9 +10,7 @@ #include "d/d_gameover.h" #include "JSystem/J2DGraph/J2DScreen.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/meter/d_meter2_info.h" #include "d/meter/d_meter_HIO.h" #include "dol2asm.h" diff --git a/src/d/d_insect.cpp b/src/d/d_insect.cpp index 41df33357d..096ac4efd6 100644 --- a/src/d/d_insect.cpp +++ b/src/d/d_insect.cpp @@ -4,9 +4,7 @@ */ #include "d/d_insect.h" -#include "d/com/d_com_inf_game.h" #include "d/menu/d_menu_insect.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_lib.h" /* 8015E010-8015E078 158950 0068+00 0/0 0/0 13/13 .text __ct__9dInsect_cFv */ diff --git a/src/d/d_jnt_col.cpp b/src/d/d_jnt_col.cpp index dc14333f4d..3889246534 100644 --- a/src/d/d_jnt_col.cpp +++ b/src/d/d_jnt_col.cpp @@ -6,7 +6,6 @@ #include "d/d_jnt_col.h" #include "dol2asm.h" #include "f_op/f_op_actor_mng.h" -#include "m_Do/m_Do_mtx.h" // // Types: diff --git a/src/d/d_k_wmark.cpp b/src/d/d_k_wmark.cpp index be3ab90203..b4d2c6e0a5 100644 --- a/src/d/d_k_wmark.cpp +++ b/src/d/d_k_wmark.cpp @@ -5,11 +5,9 @@ #include "d/d_k_wmark.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_lib.h" diff --git a/src/d/d_k_wpillar.cpp b/src/d/d_k_wpillar.cpp index 2d59f822fa..cdf496d147 100644 --- a/src/d/d_k_wpillar.cpp +++ b/src/d/d_k_wpillar.cpp @@ -4,10 +4,6 @@ // #include "d/d_k_wpillar.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "SSystem/SComponent/c_math.h" -#include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" #include "d/d_procname.h" #include "f_op/f_op_actor_mng.h" diff --git a/src/d/d_kantera_icon_meter.cpp b/src/d/d_kantera_icon_meter.cpp index 027bac711c..aab32657fc 100644 --- a/src/d/d_kantera_icon_meter.cpp +++ b/src/d/d_kantera_icon_meter.cpp @@ -9,7 +9,6 @@ #include "d/com/d_com_inf_game.h" #include "d/meter/d_meter_HIO.h" #include "d/pane/d_pane_class.h" -#include "dolphin/types.h" /* 801AE938-801AE974 1A9278 003C+00 0/0 3/3 0/0 .text __ct__15dKantera_icon_cFv */ dKantera_icon_c::dKantera_icon_c() { diff --git a/src/d/d_ky_thunder.cpp b/src/d/d_ky_thunder.cpp index 3c5f402980..58ca5a9544 100644 --- a/src/d/d_ky_thunder.cpp +++ b/src/d/d_ky_thunder.cpp @@ -5,12 +5,9 @@ #include "d/d_ky_thunder.h" #include "JSystem/JKernel/JKRSolidHeap.h" -#include "JSystem/JMath/JMath.h" #include "SSystem/SComponent/c_counter.h" #include "SSystem/SComponent/c_math.h" -#include "dolphin/os/OSCache.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/kankyo/d_kankyo_rain.h" #include "f_op/f_op_kankyo_mng.h" diff --git a/src/d/d_kyeff.cpp b/src/d/d_kyeff.cpp index b040a15762..cbfdf261fd 100644 --- a/src/d/d_kyeff.cpp +++ b/src/d/d_kyeff.cpp @@ -5,7 +5,6 @@ #include "d/d_kyeff.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/kankyo/d_kankyo_wether.h" static int dKyeff_Draw(dKyeff_c* i_this) { diff --git a/src/d/d_kyeff2.cpp b/src/d/d_kyeff2.cpp index 9dbc5fc8f7..e25669846a 100644 --- a/src/d/d_kyeff2.cpp +++ b/src/d/d_kyeff2.cpp @@ -5,7 +5,6 @@ #include "SSystem/SComponent/c_phase.h" #include "d/d_kyeff2.h" -#include "d/d_procname.h" #include "d/kankyo/d_kankyo_wether.h" static int dKyeff2_Draw(dKyeff2_c* i_this) { diff --git a/src/d/d_lib.cpp b/src/d/d_lib.cpp index 30ea35ac45..fa5e6a9384 100644 --- a/src/d/d_lib.cpp +++ b/src/d/d_lib.cpp @@ -6,11 +6,9 @@ #include "d/d_lib.h" #include "d/event/d_event.h" #include "d/d_stage.h" -#include "SSystem/SComponent/c_m3d.h" #include "JSystem/JKernel/JKRAramArchive.h" #include "JSystem/JKernel/JKRAram.h" #include "JSystem/JKernel/JKRDecomp.h" -#include "JSystem/JKernel/JKRDvdRipper.h" #include "dol2asm.h" #include "f_op/f_op_actor.h" #include "m_Do/m_Do_controller_pad.h" diff --git a/src/d/d_model.cpp b/src/d/d_model.cpp index ede13e819f..75a0a9d424 100644 --- a/src/d/d_model.cpp +++ b/src/d/d_model.cpp @@ -7,7 +7,6 @@ #include "JSystem/J3DGraphBase/J3DDrawBuffer.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "d/com/d_com_inf_game.h" -#include "dolphin/types.h" // // Forward References: diff --git a/src/d/d_name.cpp b/src/d/d_name.cpp index 4c3717c882..e5d418a0d8 100644 --- a/src/d/d_name.cpp +++ b/src/d/d_name.cpp @@ -6,13 +6,10 @@ #define NO_INLINE_DLSTBASE_DRAW #include "d/d_name.h" -#include "JSystem/J2DGraph/J2DAnmLoader.h" #include "JSystem/J2DGraph/J2DTextBox.h" #include "d/com/d_com_inf_game.h" #include "d/d_lib.h" #include "dol2asm.h" -#include "f_op/f_op_msg_mng.h" -#include "global.h" #include "m_Do/m_Do_audio.h" #include "m_Do/m_Do_controller_pad.h" #include "stdio.h" diff --git a/src/d/d_npc_lib.cpp b/src/d/d_npc_lib.cpp index 3699ae51d0..4b51fa6852 100644 --- a/src/d/d_npc_lib.cpp +++ b/src/d/d_npc_lib.cpp @@ -4,7 +4,6 @@ // #include "d/d_npc_lib.h" -#include "SSystem/SComponent/c_math.h" #include "dol2asm.h" // diff --git a/src/d/d_resorce.cpp b/src/d/d_resorce.cpp index 3e7f9500cc..a1b43e613e 100644 --- a/src/d/d_resorce.cpp +++ b/src/d/d_resorce.cpp @@ -5,16 +5,10 @@ #include "d/d_resorce.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h" -#include "JSystem/J3DGraphLoader/J3DModelLoader.h" -#include "JSystem/J3DGraphLoader/J3DClusterLoader.h" -#include "JSystem/J3DGraphLoader/J3DAnmLoader.h" #include "JSystem/JKernel/JKRMemArchive.h" #include "JSystem/JKernel/JKRSolidHeap.h" -#include "d/bg/d_bg_w_kcol.h" #include "d/com/d_com_inf_game.h" #include "dol2asm.h" -#include "dolphin/mtx.h" #include "dolphin/os.h" #include "dolphin/types.h" #include "global.h" diff --git a/src/d/d_scope.cpp b/src/d/d_scope.cpp index cc8b9a58aa..544e49f88b 100644 --- a/src/d/d_scope.cpp +++ b/src/d/d_scope.cpp @@ -11,7 +11,6 @@ #include "d/com/d_com_inf_game.h" #include "d/meter/d_meter2_info.h" #include "dol2asm.h" -#include "global.h" // // Forward References: diff --git a/src/d/d_select_cursor.cpp b/src/d/d_select_cursor.cpp index 69732c0a06..25fbb9527b 100644 --- a/src/d/d_select_cursor.cpp +++ b/src/d/d_select_cursor.cpp @@ -7,7 +7,6 @@ #include "d/com/d_com_inf_game.h" #include "JSystem/J2DGraph/J2DAnimation.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "global.h" // diff --git a/src/d/d_simple_model.cpp b/src/d/d_simple_model.cpp index a868f467a6..8e3f7e0449 100644 --- a/src/d/d_simple_model.cpp +++ b/src/d/d_simple_model.cpp @@ -5,7 +5,6 @@ #include "d/d_simple_model.h" #include "d/com/d_com_inf_game.h" -#include "m_Do/m_Do_mtx.h" // // External References: diff --git a/src/d/d_stage.cpp b/src/d/d_stage.cpp index aac0e2d7fc..b73269c4e2 100644 --- a/src/d/d_stage.cpp +++ b/src/d/d_stage.cpp @@ -11,12 +11,10 @@ #include "d/com/d_com_inf_game.h" #include "d/com/d_com_static.h" #include "d/d_lib.h" -#include "d/d_procname.h" #include "d/map/d_map_path_dmap.h" #include "d/map/d_map_path_fmap.h" #include "d/save/d_save_HIO.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "f_op/f_op_kankyo_mng.h" #include "f_op/f_op_msg_mng.h" #include "f_op/f_op_scene_mng.h" diff --git a/src/d/d_timer.cpp b/src/d/d_timer.cpp index e3aa040a55..e197c84368 100644 --- a/src/d/d_timer.cpp +++ b/src/d/d_timer.cpp @@ -12,13 +12,11 @@ #include "JSystem/JUtility/JUTFont.h" #include "SSystem/SComponent/c_math.h" #include "d/d_lib.h" -#include "d/d_procname.h" #include "d/meter/d_meter2.h" #include "d/meter/d_meter2_draw.h" #include "d/meter/d_meter2_info.h" #include "d/meter/d_meter_HIO.h" #include "d/pane/d_pane_class.h" -#include "dol2asm.h" #include "f_op/f_op_msg_mng.h" #include "m_Do/m_Do_lib.h" diff --git a/src/d/event/d_event.cpp b/src/d/event/d_event.cpp index f6925b1e72..0e2d0cbac0 100644 --- a/src/d/event/d_event.cpp +++ b/src/d/event/d_event.cpp @@ -6,13 +6,10 @@ #include "d/event/d_event.h" #include "d/a/d_a_alink.h" #include "d/d_demo.h" -#include "d/d_procname.h" #include "d/msg/d_msg_object.h" #include "dol2asm.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" -#include "rel/d/a/d_a_midna/d_a_midna.h" #include "rel/d/a/tag/d_a_tag_mhint/d_a_tag_mhint.h" #include "rel/d/a/tag/d_a_tag_mstop/d_a_tag_mstop.h" diff --git a/src/d/event/d_event_data.cpp b/src/d/event/d_event_data.cpp index 126677193e..d23e1b4419 100644 --- a/src/d/event/d_event_data.cpp +++ b/src/d/event/d_event_data.cpp @@ -8,8 +8,6 @@ #include "d/d_demo.h" #include "d/d_gameover.h" #include "d/msg/d_msg_object.h" -#include "f_op/f_op_actor_mng.h" -#include "f_op/f_op_msg_mng.h" #include "m_Do/m_Do_graphic.h" inline BOOL dEvDtFlagCheck(int flag) { diff --git a/src/d/event/d_event_lib.cpp b/src/d/event/d_event_lib.cpp index 1dec5bb349..2bfcb69488 100644 --- a/src/d/event/d_event_lib.cpp +++ b/src/d/event/d_event_lib.cpp @@ -5,7 +5,6 @@ #include "d/event/d_event_lib.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" /* 803A82B8-803A82C4 0053D8 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ static u8 cNullVec__6Z2Calc[12] = { diff --git a/src/d/event/d_event_manager.cpp b/src/d/event/d_event_manager.cpp index 817fb273e4..c30c193d08 100644 --- a/src/d/event/d_event_manager.cpp +++ b/src/d/event/d_event_manager.cpp @@ -7,8 +7,6 @@ #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_actor_mng.h" -#include "m_Do/m_Do_audio.h" #include "stdio.h" BOOL daPy_py_c::checkNowWolf() { diff --git a/src/d/file/d_file_sel_warning.cpp b/src/d/file/d_file_sel_warning.cpp index e4ba765344..047564a089 100644 --- a/src/d/file/d_file_sel_warning.cpp +++ b/src/d/file/d_file_sel_warning.cpp @@ -6,7 +6,6 @@ #define DFILE_WARNING_C_DUMMY_VIRTUAL // #include "d/file/d_file_sel_warning.h" -#include "JSystem/J2DGraph/J2DScreen.h" #include "JSystem/J2DGraph/J2DTextBox.h" #include "d/com/d_com_inf_game.h" #include "dol2asm.h" diff --git a/src/d/file/d_file_sel_warning_NONMATCHING.cpp b/src/d/file/d_file_sel_warning_NONMATCHING.cpp index 1a3c006206..36b4b73902 100644 --- a/src/d/file/d_file_sel_warning_NONMATCHING.cpp +++ b/src/d/file/d_file_sel_warning_NONMATCHING.cpp @@ -7,10 +7,6 @@ // Translation Unit: d/file/d_file_sel_warning // -#include "JSystem/J2DGraph/J2DAnmLoader.h" -#include "JSystem/J2DGraph/J2DScreen.h" -#include "JSystem/J2DGraph/J2DTextBox.h" -#include "d/com/d_com_inf_game.h" #include "d/file/d_file_sel_warning.h" #include "d/msg/d_msg_string.h" #include "d/pane/d_pane_class.h" diff --git a/src/d/file/d_file_select.cpp b/src/d/file/d_file_select.cpp index fa25cbb2d8..9b07814dc5 100644 --- a/src/d/file/d_file_select.cpp +++ b/src/d/file/d_file_select.cpp @@ -8,17 +8,10 @@ #include "d/file/d_file_select.h" #include "d/file/d_file_sel_info.h" -#include "JSystem/J2DGraph/J2DTextBox.h" #include "JSystem/J2DGraph/J2DAnmLoader.h" -#include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/JKernel/JKRSolidHeap.h" #include "d/meter/d_meter2_info.h" -#include "d/s/d_s_play.h" -#include "d/d_lib.h" #include "f_op/f_op_msg_mng.h" #include "dol2asm.h" -#include "dolphin/dvd.h" #include "dolphin/types.h" #include "m_Do/m_Do_MemCard.h" #include "m_Do/m_Do_controller_pad.h" diff --git a/src/d/kankyo/d_kankyo.cpp b/src/d/kankyo/d_kankyo.cpp index 3813033424..34d40ba8a1 100644 --- a/src/d/kankyo/d_kankyo.cpp +++ b/src/d/kankyo/d_kankyo.cpp @@ -6,13 +6,8 @@ #include "d/kankyo/d_kankyo.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "SSystem/SComponent/c_counter.h" -#include "SSystem/SComponent/c_math.h" -#include "d/a/d_a_player.h" -#include "d/kankyo/d_kankyo_rain.h" #include "d/meter/d_meter2_info.h" -#include "d/msg/d_msg_object.h" #include "dol2asm.h" -#include "m_Do/m_Do_audio.h" #include "m_Do/m_Do_graphic.h" #include "rel/d/a/kytag/d_a_kytag08/d_a_kytag08.h" #include "d/kankyo/d_kankyo_static.h" diff --git a/src/d/kankyo/d_kankyo_data.cpp b/src/d/kankyo/d_kankyo_data.cpp index 56eaab54e9..02be7a068a 100644 --- a/src/d/kankyo/d_kankyo_data.cpp +++ b/src/d/kankyo/d_kankyo_data.cpp @@ -5,7 +5,6 @@ #include "d/kankyo/d_kankyo_data.h" #include "d/d_stage.h" -#include "dolphin/types.h" // // Types: diff --git a/src/d/kankyo/d_kankyo_rain.cpp b/src/d/kankyo/d_kankyo_rain.cpp index 245324c325..21a6a5a95d 100644 --- a/src/d/kankyo/d_kankyo_rain.cpp +++ b/src/d/kankyo/d_kankyo_rain.cpp @@ -4,13 +4,10 @@ // #include "d/kankyo/d_kankyo_rain.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_counter.h" -#include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" #include "dol2asm.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_lib.h" #include "string.h" diff --git a/src/d/kankyo/d_kankyo_wether.cpp b/src/d/kankyo/d_kankyo_wether.cpp index 39fea23638..42b64701f6 100644 --- a/src/d/kankyo/d_kankyo_wether.cpp +++ b/src/d/kankyo/d_kankyo_wether.cpp @@ -5,13 +5,11 @@ #include "d/kankyo/d_kankyo_wether.h" #include "JSystem/J3DGraphBase/J3DDrawBuffer.h" -#include "JSystem/JKernel/JKRHeap.h" #include "SSystem/SComponent/c_math.h" #include "d/com/d_com_inf_game.h" #include "d/kankyo/d_kankyo.h" #include "d/kankyo/d_kankyo_rain.h" #include "dol2asm.h" -#include "global.h" #include "string.h" #include "m_Do/m_Do_audio.h" diff --git a/src/d/map/d_map_path_dmap.cpp b/src/d/map/d_map_path_dmap.cpp index 21ff75dbfd..6ead3b85d8 100644 --- a/src/d/map/d_map_path_dmap.cpp +++ b/src/d/map/d_map_path_dmap.cpp @@ -9,7 +9,6 @@ #include "d/map/d_map_path.h" #include "d/meter/d_meter_HIO.h" #include "dol2asm.h" -#include "m_Do/m_Do_mtx.h" // // Forward References: diff --git a/src/d/menu/d_menu_collect.cpp b/src/d/menu/d_menu_collect.cpp index 82d9c231a6..11d7f7fff1 100644 --- a/src/d/menu/d_menu_collect.cpp +++ b/src/d/menu/d_menu_collect.cpp @@ -4,17 +4,10 @@ */ #include "d/menu/d_menu_collect.h" -#include "JSystem/J2DGraph/J2DGrafContext.h" #include "JSystem/J2DGraph/J2DTextBox.h" -#include "JSystem/J3DGraphBase/J3DMaterial.h" -#include "JSystem/J3DGraphLoader/J3DAnmLoader.h" -#include "JSystem/J3DGraphLoader/J3DModelLoader.h" -#include "JSystem/JKernel/JKRArchive.h" #include "JSystem/JKernel/JKRExpHeap.h" #include "JSystem/JKernel/JKRSolidHeap.h" #include "d/a/d_a_alink.h" -#include "d/com/d_com_inf_game.h" -#include "d/d_item.h" #include "d/d_select_cursor.h" #include "d/menu/d_menu_fishing.h" #include "d/menu/d_menu_insect.h" @@ -22,8 +15,6 @@ #include "d/menu/d_menu_option.h" #include "d/menu/d_menu_save.h" #include "d/menu/d_menu_skill.h" -#include "d/menu/d_menu_window.h" -#include "d/meter/d_meter2_info.h" #include "d/meter/d_meter_HIO.h" #include "d/msg/d_msg_class.h" #include "d/msg/d_msg_object.h" diff --git a/src/d/menu/d_menu_dmap.cpp b/src/d/menu/d_menu_dmap.cpp index 2aaa4c92ea..5b635caf87 100644 --- a/src/d/menu/d_menu_dmap.cpp +++ b/src/d/menu/d_menu_dmap.cpp @@ -5,23 +5,10 @@ #include "d/menu/d_menu_dmap.h" #include "d/menu/d_menu_item_explain.h" -#include "d/msg/d_msg_string.h" #include "d/msg/d_msg_object.h" -#include "d/msg/d_msg_class.h" -#include "d/map/d_map_path_dmap.h" -#include "d/meter/d_meter_haihai.h" #include "d/meter/d_meter_HIO.h" #include "d/meter/d_meter2_info.h" -#include "d/a/d_a_player.h" #include "d/d_lib.h" -#include "d/d_item.h" -#include "d/d_tresure.h" -#include "d/pane/d_pane_class.h" -#include "d/save/d_save.h" -#include "f_op/f_op_msg_mng.h" -#include "m_Do/m_Do_controller_pad.h" -#include "m_Do/m_Do_dvd_thread.h" -#include "m_Do/m_Do_graphic.h" #include "JSystem/J2DGraph/J2DAnmLoader.h" #include "JSystem/J2DGraph/J2DGrafContext.h" #include "JSystem/J2DGraph/J2DOrthoGraph.h" diff --git a/src/d/menu/d_menu_fishing.cpp b/src/d/menu/d_menu_fishing.cpp index ff1a295fa0..9cb650b6f6 100644 --- a/src/d/menu/d_menu_fishing.cpp +++ b/src/d/menu/d_menu_fishing.cpp @@ -6,7 +6,6 @@ #include "d/menu/d_menu_fishing.h" #include "JSystem/J2DGraph/J2DTextBox.h" #include "JSystem/JKernel/JKRMemArchive.h" -#include "d/com/d_com_inf_game.h" #include "d/menu/d_menu_dmap.h" #include "d/meter/d_meter2_info.h" #include "d/meter/d_meter_HIO.h" diff --git a/src/d/menu/d_menu_fmap.cpp b/src/d/menu/d_menu_fmap.cpp index 616423aea0..4f8758a573 100644 --- a/src/d/menu/d_menu_fmap.cpp +++ b/src/d/menu/d_menu_fmap.cpp @@ -9,7 +9,6 @@ #include "string.h" #include "dol2asm.h" #include "dolphin/os/OSCache.h" -#include "dolphin/types.h" struct ResTIMG; diff --git a/src/d/menu/d_menu_item_explain.cpp b/src/d/menu/d_menu_item_explain.cpp index cd64009059..0bc71f0b67 100644 --- a/src/d/menu/d_menu_item_explain.cpp +++ b/src/d/menu/d_menu_item_explain.cpp @@ -5,10 +5,7 @@ #include "d/menu/d_menu_item_explain.h" #include "JSystem/J2DGraph/J2DTextBox.h" -#include "JSystem/JGeometry.h" #include "JSystem/JKernel/JKRExpHeap.h" -#include "JSystem/JKernel/JKRMemArchive.h" -#include "JSystem/JUtility/JUTPalette.h" #include "JSystem/JUtility/JUTTexture.h" #include "stdio.h" #include "d/a/d_a_player.h" @@ -19,9 +16,7 @@ #include "d/d_select_cursor.h" #include "d/meter/d_meter2_info.h" #include "d/meter/d_meter_HIO.h" -#include "d/msg/d_msg_class.h" #include "d/msg/d_msg_string.h" -#include "dol2asm.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" #include "d/msg/d_msg_scrn_3select.h" diff --git a/src/d/menu/d_menu_letter.cpp b/src/d/menu/d_menu_letter.cpp index 94daabbdad..eafd70ee9f 100644 --- a/src/d/menu/d_menu_letter.cpp +++ b/src/d/menu/d_menu_letter.cpp @@ -5,17 +5,12 @@ #include "d/menu/d_menu_letter.h" #include "JSystem/J2DGraph/J2DTextBox.h" -#include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JKernel/JKRMemArchive.h" -#include "math.h" #include "stdio.h" -#include "string.h" #include "d/com/d_com_inf_game.h" -#include "d/d_lib.h" #include "d/d_select_cursor.h" #include "d/meter/d_meter2_info.h" #include "d/meter/d_meter_HIO.h" -#include "d/msg/d_msg_class.h" #include "d/msg/d_msg_string.h" #include "dol2asm.h" #include "dolphin/types.h" diff --git a/src/d/menu/d_menu_map_common.cpp b/src/d/menu/d_menu_map_common.cpp index ed6eafaf2c..8b57a1dee7 100644 --- a/src/d/menu/d_menu_map_common.cpp +++ b/src/d/menu/d_menu_map_common.cpp @@ -7,7 +7,6 @@ #include "d/com/d_com_inf_game.h" #include "d/d_select_cursor.h" #include "d/meter/d_meter_HIO.h" -#include "dol2asm.h" #include "global.h" /* ############################################################################################## */ diff --git a/src/d/menu/d_menu_option.cpp b/src/d/menu/d_menu_option.cpp index d97e751e7e..e98cc93ac1 100644 --- a/src/d/menu/d_menu_option.cpp +++ b/src/d/menu/d_menu_option.cpp @@ -4,22 +4,16 @@ // #include "d/menu/d_menu_option.h" -#include "JSystem/J2DGraph/J2DAnmLoader.h" -#include "JSystem/J2DGraph/J2DTextBox.h" -#include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JKernel/JKRMemArchive.h" -#include "JSystem/JUtility/JUTGamePad.h" #include "d/com/d_com_inf_game.h" #include "d/d_lib.h" #include "d/d_select_cursor.h" #include "d/file/d_file_sel_warning.h" #include "d/menu/d_menu_calibration.h" #include "d/menu/d_menu_window.h" -#include "d/meter/d_meter2.h" #include "d/meter/d_meter2_info.h" #include "d/meter/d_meter_HIO.h" #include "d/meter/d_meter_haihai.h" -#include "d/msg/d_msg_class.h" #include "d/msg/d_msg_string.h" #include "dol2asm.h" #include "dolphin/os/OSRtc.h" diff --git a/src/d/menu/d_menu_ring.cpp b/src/d/menu/d_menu_ring.cpp index 596b70c4c7..90b2cb60a8 100644 --- a/src/d/menu/d_menu_ring.cpp +++ b/src/d/menu/d_menu_ring.cpp @@ -5,7 +5,6 @@ #include "d/menu/d_menu_ring.h" #include "JSystem/J2DGraph/J2DOrthoGraph.h" -#include "JSystem/J2DGraph/J2DScreen.h" #include "JSystem/J2DGraph/J2DTextBox.h" #include "JSystem/JKernel/JKRExpHeap.h" #include "SSystem/SComponent/c_math.h" @@ -18,10 +17,8 @@ #include "d/menu/d_menu_window.h" #include "d/meter/d_meter2.h" #include "d/meter/d_meter2_draw.h" -#include "d/meter/d_meter2_info.h" #include "d/meter/d_meter_HIO.h" #include "d/msg/d_msg_string.h" -#include "d/pane/d_pane_class.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" #include "string.h" diff --git a/src/d/menu/d_menu_window.cpp b/src/d/menu/d_menu_window.cpp index e32ce29cd4..4422eb080c 100644 --- a/src/d/menu/d_menu_window.cpp +++ b/src/d/menu/d_menu_window.cpp @@ -23,9 +23,7 @@ #include "d/meter/d_meter_map.h" #include "d/msg/d_msg_object.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "f_op/f_op_msg_mng.h" -#include "global.h" #include "m_Do/m_Do_controller_pad.h" // diff --git a/src/d/meter/d_meter2.cpp b/src/d/meter/d_meter2.cpp index 54a4adba8a..f22fce198d 100644 --- a/src/d/meter/d_meter2.cpp +++ b/src/d/meter/d_meter2.cpp @@ -6,7 +6,6 @@ #include "d/meter/d_meter2.h" #include "JSystem/JKernel/JKRExpHeap.h" #include "d/d_demo.h" -#include "d/d_procname.h" #include "d/d_scope.h" #include "d/d_timer.h" #include "d/menu/d_menu_window_HIO.h" diff --git a/src/d/meter/d_meter2_info.cpp b/src/d/meter/d_meter2_info.cpp index 005e52cad4..2642c8e8e3 100644 --- a/src/d/meter/d_meter2_info.cpp +++ b/src/d/meter/d_meter2_info.cpp @@ -6,11 +6,9 @@ #include "d/meter/d_meter2_info.h" #include "JSystem/J2DGraph/J2DTextBox.h" #include "d/a/d_a_npc.h" -#include "d/d_item_data.h" #include "d/meter/d_meter2.h" #include "d/meter/d_meter_map.h" #include "dol2asm.h" -#include "dolphin/os/OSCache.h" #include "dolphin/types.h" #include "global.h" diff --git a/src/d/meter/d_meter_HIO.cpp b/src/d/meter/d_meter_HIO.cpp index eefee54015..31a0a4190e 100644 --- a/src/d/meter/d_meter_HIO.cpp +++ b/src/d/meter/d_meter_HIO.cpp @@ -8,7 +8,6 @@ #include "JSystem/JKernel/JKRArchive.h" #include "JSystem/JKernel/JKRExpHeap.h" #include "m_Do/m_Do_ext.h" -#include "global.h" /* 801FE330-801FE348 1F8C70 0018+00 1/1 0/0 0/0 .text __ct__16dMeter_menuHIO_cFv */ dMeter_menuHIO_c::dMeter_menuHIO_c() { diff --git a/src/d/meter/d_meter_button.cpp b/src/d/meter/d_meter_button.cpp index c49e270507..cd568bf9ea 100644 --- a/src/d/meter/d_meter_button.cpp +++ b/src/d/meter/d_meter_button.cpp @@ -5,9 +5,7 @@ #include "d/meter/d_meter_button.h" #include "JSystem/J2DGraph/J2DGrafContext.h" -#include "JSystem/JKernel/JKRHeap.h" #include "d/a/d_a_player.h" -#include "d/com/d_com_inf_game.h" #include "d/meter/d_meter2.h" #include "d/meter/d_meter2_draw.h" #include "d/meter/d_meter2_info.h" diff --git a/src/d/meter/d_meter_haihai.cpp b/src/d/meter/d_meter_haihai.cpp index 8a1fdbf320..1910c75164 100644 --- a/src/d/meter/d_meter_haihai.cpp +++ b/src/d/meter/d_meter_haihai.cpp @@ -5,8 +5,6 @@ #include "d/meter/d_meter_haihai.h" #include "JSystem/J2DGraph/J2DAnmLoader.h" -#include "JSystem/J2DGraph/J2DGrafContext.h" -#include "JSystem/J2DGraph/J2DPane.h" #include "JSystem/J2DGraph/J2DScreen.h" #include "d/com/d_com_inf_game.h" #include "d/meter/d_meter_HIO.h" diff --git a/src/d/meter/d_meter_string.cpp b/src/d/meter/d_meter_string.cpp index 157f2ea81d..ec49a92788 100644 --- a/src/d/meter/d_meter_string.cpp +++ b/src/d/meter/d_meter_string.cpp @@ -9,7 +9,6 @@ #include "JSystem/J2DGraph/J2DScreen.h" #include "JSystem/J2DGraph/J2DTextBox.h" #include "JSystem/JUtility/JUTFont.h" -#include "d/com/d_com_inf_game.h" #include "d/d_timer.h" #include "d/meter/d_meter2_draw.h" #include "d/meter/d_meter2_info.h" diff --git a/src/d/msg/d_msg_class.cpp b/src/d/msg/d_msg_class.cpp index 88bc23a9ec..0c1d9b2556 100644 --- a/src/d/msg/d_msg_class.cpp +++ b/src/d/msg/d_msg_class.cpp @@ -9,9 +9,7 @@ #include "d/msg/d_msg_object.h" #include "d/msg/d_msg_unit.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "JSystem/J2DGraph/J2DTextBox.h" -#include "JSystem/JUtility/JUTFont.h" #include "d/msg/d_msg_out_font.h" #include "m_Do/m_Do_graphic.h" diff --git a/src/d/msg/d_msg_flow.cpp b/src/d/msg/d_msg_flow.cpp index b54f56870a..d8e063c345 100644 --- a/src/d/msg/d_msg_flow.cpp +++ b/src/d/msg/d_msg_flow.cpp @@ -10,9 +10,7 @@ #include "d/msg/d_msg_object.h" #include "d/shop/d_shop_system.h" #include "dol2asm.h" -#include "f_op/f_op_actor_mng.h" #include "f_op/f_op_msg_mng.h" -#include "m_Do/m_Do_audio.h" #include "m_Do/m_Do_graphic.h" #include "rel/d/a/d_a_midna/d_a_midna.h" diff --git a/src/d/msg/d_msg_object.cpp b/src/d/msg/d_msg_object.cpp index 18a973ba3f..90a5ae291a 100644 --- a/src/d/msg/d_msg_object.cpp +++ b/src/d/msg/d_msg_object.cpp @@ -8,7 +8,6 @@ #include "d/meter/d_meter2_info.h" #include "d/msg/d_msg_class.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "dolphin/types.h" // diff --git a/src/d/msg/d_msg_out_font.cpp b/src/d/msg/d_msg_out_font.cpp index 18f7b472dc..f396e26446 100644 --- a/src/d/msg/d_msg_out_font.cpp +++ b/src/d/msg/d_msg_out_font.cpp @@ -1,7 +1,6 @@ #include "d/msg/d_msg_out_font.h" #include "JSystem/J2DGraph/J2DTextBox.h" #include "JSystem/JUtility/JUTTexture.h" -#include "d/com/d_com_inf_game.h" #include "d/meter/d_meter2_info.h" #include "d/msg/d_msg_object.h" #include "f_op/f_op_msg_mng.h" diff --git a/src/d/msg/d_msg_scrn_howl.cpp b/src/d/msg/d_msg_scrn_howl.cpp index 6d33065805..48ea72b0d9 100644 --- a/src/d/msg/d_msg_scrn_howl.cpp +++ b/src/d/msg/d_msg_scrn_howl.cpp @@ -5,16 +5,9 @@ #include "d/msg/d_msg_scrn_howl.h" #include "m_Do/m_Do_controller_pad.h" -#include "m_Do/m_Do_graphic.h" -#include "d/msg/d_msg_class.h" #include "d/msg/d_msg_object.h" -#include "d/meter/d_meter2_info.h" -#include "d/meter/d_meter2_draw.h" -#include "d/pane/d_pane_class_alpha.h" #include "d/pane/d_pane_class.h" #include "d/a/d_a_alink.h" -#include "JSystem/JKernel/JKRExpHeap.h" -#include "JSystem/JKernel/JKRArchive.h" #include "JSystem/JUtility/JUTTexture.h" #include "JSystem/JUtility/JUTAssert.h" #include "JSystem/J2DGraph/J2DGrafContext.h" diff --git a/src/d/msg/d_msg_scrn_kanban.cpp b/src/d/msg/d_msg_scrn_kanban.cpp index 123479d29b..1e216c7f6e 100644 --- a/src/d/msg/d_msg_scrn_kanban.cpp +++ b/src/d/msg/d_msg_scrn_kanban.cpp @@ -6,11 +6,7 @@ #include "JSystem/J2DGraph/J2DAnmLoader.h" #include "JSystem/J2DGraph/J2DGrafContext.h" #include "JSystem/J2DGraph/J2DScreen.h" -#include "JSystem/J2DGraph/J2DTextBox.h" -#include "JSystem/JKernel/JKRArchive.h" #include "JSystem/JKernel/JKRExpHeap.h" -#include "JSystem/JKernel/JKRFileLoader.h" -#include "d/com/d_com_inf_game.h" #include "d/msg/d_msg_object.h" #include "d/msg/d_msg_out_font.h" #include "d/pane/d_pane_class.h" diff --git a/src/d/msg/d_msg_string.cpp b/src/d/msg/d_msg_string.cpp index 6e0980e45e..217f692e81 100644 --- a/src/d/msg/d_msg_string.cpp +++ b/src/d/msg/d_msg_string.cpp @@ -7,7 +7,6 @@ #include "JSystem/J2DGraph/J2DTextBox.h" #include "d/msg/d_msg_out_font.h" #include "dol2asm.h" -#include "JSystem/JGeometry.h" // // Forward References: diff --git a/src/d/msg/d_msg_string_base.cpp b/src/d/msg/d_msg_string_base.cpp index 64e960db8e..7c43b8d2a1 100644 --- a/src/d/msg/d_msg_string_base.cpp +++ b/src/d/msg/d_msg_string_base.cpp @@ -8,8 +8,6 @@ #include "d/com/d_com_inf_game.h" #include "d/meter/d_meter2_info.h" #include "dol2asm.h" -#include "dolphin/types.h" -#include "JSystem/JUtility/JUTAssert.h" #include "JSystem/JKernel/JKRArchive.h" #include "JSystem/J2DGraph/J2DTextBox.h" diff --git a/src/d/msg/d_msg_unit.cpp b/src/d/msg/d_msg_unit.cpp index 1832949b2b..e1da2ad3a3 100644 --- a/src/d/msg/d_msg_unit.cpp +++ b/src/d/msg/d_msg_unit.cpp @@ -5,7 +5,6 @@ #include "d/msg/d_msg_unit.h" #include "stdio.h" -#include "string.h" #include "dol2asm.h" #include "d/kankyo/d_kankyo.h" #include "d/meter/d_meter2_info.h" diff --git a/src/d/ovlp/d_ovlp_fade.cpp b/src/d/ovlp/d_ovlp_fade.cpp index c9f49dbe9e..87261c89c1 100644 --- a/src/d/ovlp/d_ovlp_fade.cpp +++ b/src/d/ovlp/d_ovlp_fade.cpp @@ -4,9 +4,7 @@ */ #include "d/ovlp/d_ovlp_fade.h" -#include "JSystem/JFramework/JFWDisplay.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "f_op/f_op_overlap_mng.h" #include "m_Do/m_Do_audio.h" #include "m_Do/m_Do_graphic.h" diff --git a/src/d/ovlp/d_ovlp_fade2.cpp b/src/d/ovlp/d_ovlp_fade2.cpp index 8fb6bb31fc..016d28a684 100644 --- a/src/d/ovlp/d_ovlp_fade2.cpp +++ b/src/d/ovlp/d_ovlp_fade2.cpp @@ -5,8 +5,6 @@ #include "d/ovlp/d_ovlp_fade2.h" #include "JSystem/J2DGraph/J2DOrthoGraph.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "d/s/d_s_play.h" #include "m_Do/m_Do_audio.h" #include "m_Do/m_Do_graphic.h" diff --git a/src/d/ovlp/d_ovlp_fade3.cpp b/src/d/ovlp/d_ovlp_fade3.cpp index 126710600d..f6cb4dcd1b 100644 --- a/src/d/ovlp/d_ovlp_fade3.cpp +++ b/src/d/ovlp/d_ovlp_fade3.cpp @@ -5,8 +5,6 @@ #include "d/ovlp/d_ovlp_fade3.h" #include "JSystem/J2DGraph/J2DOrthoGraph.h" -#include "JSystem/JKernel/JKRHeap.h" -#include "d/d_procname.h" #include "d/s/d_s_play.h" #include "m_Do/m_Do_audio.h" #include "m_Do/m_Do_graphic.h" diff --git a/src/d/pane/d_pane_class_ex.cpp b/src/d/pane/d_pane_class_ex.cpp index 5de784ea6a..7a072d86f7 100644 --- a/src/d/pane/d_pane_class_ex.cpp +++ b/src/d/pane/d_pane_class_ex.cpp @@ -4,7 +4,6 @@ // #include "d/pane/d_pane_class_ex.h" -#include "dolphin/types.h" // // Types: diff --git a/src/d/particle/d_particle.cpp b/src/d/particle/d_particle.cpp index cf7b27660a..a26ca1d9e3 100644 --- a/src/d/particle/d_particle.cpp +++ b/src/d/particle/d_particle.cpp @@ -4,7 +4,6 @@ // #include "d/particle/d_particle.h" -#include "d/particle/d_particle_name.h" #include "JSystem/JKernel/JKRExpHeap.h" #include "JSystem/JKernel/JKRSolidHeap.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" @@ -14,7 +13,6 @@ #include "stdio.h" #include "d/com/d_com_inf_game.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "m_Do/m_Do_lib.h" #include "m_Do/m_Do_graphic.h" #include "f_op/f_op_actor_mng.h" diff --git a/src/d/particle/d_particle_copoly.cpp b/src/d/particle/d_particle_copoly.cpp index eddfc0bc74..f1120aa1eb 100644 --- a/src/d/particle/d_particle_copoly.cpp +++ b/src/d/particle/d_particle_copoly.cpp @@ -4,8 +4,6 @@ */ #include "d/particle/d_particle_copoly.h" -#include "SSystem/SComponent/c_bg_s_poly_info.h" -#include "d/com/d_com_inf_game.h" #include "f_op/f_op_kankyo_mng.h" /* 80050C9C-80050CC4 04B5DC 0028+00 0/0 2/2 27/27 .text init__7dPaPo_cFP9dBgS_Acchff */ diff --git a/src/d/s/d_s_logo.cpp b/src/d/s/d_s_logo.cpp index f28377dc7e..656924ad98 100644 --- a/src/d/s/d_s_logo.cpp +++ b/src/d/s/d_s_logo.cpp @@ -9,9 +9,7 @@ #include "c/c_dylink.h" #include "d/com/d_com_inf_game.h" #include "d/d_item.h" -#include "d/d_procname.h" #include "d/map/d_map_path_dmap.h" -#include "dolphin/vi.h" #include "m_Do/m_Do_Reset.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" diff --git a/src/d/s/d_s_menu.cpp b/src/d/s/d_s_menu.cpp index 2c6814c12b..09df496b84 100644 --- a/src/d/s/d_s_menu.cpp +++ b/src/d/s/d_s_menu.cpp @@ -4,7 +4,6 @@ */ #include "d/s/d_s_menu.h" -#include "d/d_procname.h" #include "f_pc/f_pc_leaf.h" #include "f_op/f_op_scene.h" diff --git a/src/d/s/d_s_name.cpp b/src/d/s/d_s_name.cpp index 593df2df6b..3314fd1431 100644 --- a/src/d/s/d_s_name.cpp +++ b/src/d/s/d_s_name.cpp @@ -6,11 +6,9 @@ #include "d/s/d_s_name.h" #include "JSystem/JKernel/JKRExpHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/meter/d_meter2_info.h" #include "f_op/f_op_scene_mng.h" #include "m_Do/m_Do_Reset.h" -#include "m_Do/m_Do_audio.h" #include "m_Do/m_Do_graphic.h" #include "m_Do/m_Do_machine.h" #include "m_Do/m_Do_mtx.h" diff --git a/src/d/s/d_s_play.cpp b/src/d/s/d_s_play.cpp index 6df4938eb7..31946773bb 100644 --- a/src/d/s/d_s_play.cpp +++ b/src/d/s/d_s_play.cpp @@ -4,7 +4,6 @@ */ #include "d/s/d_s_play.h" -#include "JSystem/JKernel/JKRHeap.h" #include "JSystem/JUtility/JUTConsole.h" #include "JSystem/JUtility/JUTGamePad.h" #include "SSystem/SComponent/c_counter.h" @@ -14,7 +13,6 @@ #include "d/d_eye_hl.h" #include "d/d_item.h" #include "d/d_model.h" -#include "d/d_procname.h" #include "d/map/d_map_path_dmap.h" #include "d/meter/d_meter2_info.h" #include "d/msg/d_msg_object.h" @@ -22,9 +20,7 @@ #include "f_op/f_op_draw_iter.h" #include "f_op/f_op_msg_mng.h" #include "f_op/f_op_overlap_mng.h" -#include "f_op/f_op_scene_mng.h" #include "m_Do/m_Do_Reset.h" -#include "m_Do/m_Do_audio.h" #include "m_Do/m_Do_graphic.h" #include "rel/d/a/d_a_suspend/d_a_suspend.h" #include "rel/d/a/d_a_ykgr/d_a_ykgr.h" diff --git a/src/d/s/d_s_room.cpp b/src/d/s/d_s_room.cpp index 26690e907c..908c9fcf73 100644 --- a/src/d/s/d_s_room.cpp +++ b/src/d/s/d_s_room.cpp @@ -6,9 +6,7 @@ #include "d/s/d_s_room.h" #include "JSystem/JKernel/JKRExpHeap.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/s/d_s_play.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_Reset.h" #include "stdio.h" diff --git a/src/d/s/d_s_title.cpp b/src/d/s/d_s_title.cpp index 995a2a7e67..1ab8fec3b5 100644 --- a/src/d/s/d_s_title.cpp +++ b/src/d/s/d_s_title.cpp @@ -6,7 +6,6 @@ #include "d/s/d_s_title.h" #include "f_op/f_op_scene.h" #include "f_pc/f_pc_leaf.h" -#include "d/d_procname.h" /* 803C32B0-803C32D8 -00001 0028+00 0/0 0/0 1/0 .data g_profile_WARNING_SCENE */ extern scene_process_profile_definition g_profile_WARNING_SCENE = { diff --git a/src/d/save/d_save.cpp b/src/d/save/d_save.cpp index a9dda1889b..82f084c8ca 100644 --- a/src/d/save/d_save.cpp +++ b/src/d/save/d_save.cpp @@ -7,10 +7,8 @@ #include "d/save/d_save_init.h" #include "JSystem/JUtility/JUTGamePad.h" #include "stdio.h" -#include "d/com/d_com_inf_game.h" #include "d/meter/d_meter2_info.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.h" // diff --git a/src/d/shop/d_shop_camera.cpp b/src/d/shop/d_shop_camera.cpp index f8da5eb561..5c4f5d0c2a 100644 --- a/src/d/shop/d_shop_camera.cpp +++ b/src/d/shop/d_shop_camera.cpp @@ -7,7 +7,6 @@ #include "SSystem/SComponent/c_math.h" #include "d/a/d_a_player.h" #include "d/com/d_com_inf_game.h" -#include "d/d_camera.h" struct SeiraCam { /* 0x00 */ Vec field_0x0; diff --git a/src/d/shop/d_shop_item_ctrl.cpp b/src/d/shop/d_shop_item_ctrl.cpp index 04d3e72a54..e1f902982c 100644 --- a/src/d/shop/d_shop_item_ctrl.cpp +++ b/src/d/shop/d_shop_item_ctrl.cpp @@ -5,7 +5,6 @@ #include "d/shop/d_shop_item_ctrl.h" #include "SSystem/SComponent/c_lib.h" #include "d/a/d_a_shop_item_static.h" -#include "f_op/f_op_actor_mng.h" /* 80196914-80196958 191254 0044+00 0/0 0/0 10/10 .text __ct__15dShopItemCtrl_cFv */ dShopItemCtrl_c::dShopItemCtrl_c() { diff --git a/src/d/shop/d_shop_system.cpp b/src/d/shop/d_shop_system.cpp index 01b4c5b8c4..843a5aa643 100644 --- a/src/d/shop/d_shop_system.cpp +++ b/src/d/shop/d_shop_system.cpp @@ -8,12 +8,10 @@ #include "d/a/d_a_shop_item_static.h" #include "d/d_item.h" #include "d/d_lib.h" -#include "d/d_procname.h" #include "d/d_select_cursor.h" #include "d/meter/d_meter2_info.h" #include "d/meter/d_meter_HIO.h" #include "d/msg/d_msg_object.h" -#include "m_Do/m_Do_audio.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_lib.h" #include "rel/d/a/tag/d_a_tag_shop_item/d_a_tag_shop_item.h" diff --git a/src/f_op/f_op_actor.cpp b/src/f_op/f_op_actor.cpp index 61a8765f57..a17640c7f2 100644 --- a/src/f_op/f_op_actor.cpp +++ b/src/f_op/f_op_actor.cpp @@ -6,7 +6,6 @@ #include "f_op/f_op_actor.h" #include "d/a/d_a_alink.h" #include "d/com/d_com_inf_actor.h" -#include "d/com/d_com_inf_game.h" #include "d/com/d_com_static.h" #include "d/d_demo.h" #include "d/s/d_s_play.h" diff --git a/src/f_op/f_op_camera.cpp b/src/f_op/f_op_camera.cpp index 15533b145f..fbfbac7052 100644 --- a/src/f_op/f_op_camera.cpp +++ b/src/f_op/f_op_camera.cpp @@ -7,7 +7,6 @@ #include "d/com/d_com_inf_game.h" #include "d/s/d_s_play.h" #include "f_op/f_op_draw_tag.h" -#include "f_pc/f_pc_manager.h" // TODO: this is a hack to get f_op_actor_mng.cpp weak function order correct // at the moment, if these are made into inlined virtuals, they incorrectly generate before thunks diff --git a/src/f_op/f_op_kankyo.cpp b/src/f_op/f_op_kankyo.cpp index 82257f118d..7c80ae7532 100644 --- a/src/f_op/f_op_kankyo.cpp +++ b/src/f_op/f_op_kankyo.cpp @@ -5,7 +5,6 @@ #include "f_op/f_op_kankyo.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" #include "d/s/d_s_play.h" #include "f_op/f_op_draw_tag.h" #include "f_op/f_op_kankyo_mng.h" diff --git a/src/f_op/f_op_kankyo_mng.cpp b/src/f_op/f_op_kankyo_mng.cpp index 5b0f6632f0..91b556e3c0 100644 --- a/src/f_op/f_op_kankyo_mng.cpp +++ b/src/f_op/f_op_kankyo_mng.cpp @@ -6,7 +6,6 @@ #include "f_op/f_op_kankyo_mng.h" #include "SSystem/SComponent/c_malloc.h" #include "d/com/d_com_inf_game.h" -#include "d/d_procname.h" /* 8001F660-8001F6B8 019FA0 0058+00 2/2 0/0 0/0 .text fopKyM_CreateAppend__Fv */ static fopKyM_prm_class* fopKyM_CreateAppend() { diff --git a/src/f_op/f_op_msg_mng.cpp b/src/f_op/f_op_msg_mng.cpp index 7f5f19b2a8..075decfe85 100644 --- a/src/f_op/f_op_msg_mng.cpp +++ b/src/f_op/f_op_msg_mng.cpp @@ -6,12 +6,10 @@ #include "f_op/f_op_msg_mng.h" #include "JSystem/JKernel/JKRExpHeap.h" #include "SSystem/SComponent/c_malloc.h" -#include "SSystem/SComponent/c_math.h" #include "d/meter/d_meter2.h" #include "d/meter/d_meter2_info.h" #include "d/msg/d_msg_object.h" #include "dol2asm.h" -#include "dolphin/types.h" #include "f_op/f_op_scene_mng.h" #include "global.h" diff --git a/src/f_op/f_op_overlap_req.cpp b/src/f_op/f_op_overlap_req.cpp index ef02ca0ac5..01f8f11adc 100644 --- a/src/f_op/f_op_overlap_req.cpp +++ b/src/f_op/f_op_overlap_req.cpp @@ -6,7 +6,6 @@ #include "SSystem/SComponent/c_request.h" #include "f_op/f_op_overlap_req.h" #include "f_pc/f_pc_manager.h" -#include "f_pc/f_pc_stdcreate_req.h" void fopOvlpReq_SetPeektime(overlap_request_class*, u16); diff --git a/src/f_op/f_op_scene_mng.cpp b/src/f_op/f_op_scene_mng.cpp index 8a7e1cc2a5..feec035ae8 100644 --- a/src/f_op/f_op_scene_mng.cpp +++ b/src/f_op/f_op_scene_mng.cpp @@ -6,7 +6,6 @@ #include "f_op/f_op_scene_mng.h" #include "f_op/f_op_scene_iter.h" #include "f_op/f_op_scene_req.h" -#include "f_pc/f_pc_searcher.h" /* 8001ECB0-8001ECE0 0195F0 0030+00 0/0 7/7 1/1 .text fopScnM_SearchByID__FUi */ scene_class* fopScnM_SearchByID(unsigned int id) { diff --git a/src/f_pc/f_pc_create_req.cpp b/src/f_pc/f_pc_create_req.cpp index 307a3dfa36..6c279eac46 100644 --- a/src/f_pc/f_pc_create_req.cpp +++ b/src/f_pc/f_pc_create_req.cpp @@ -10,7 +10,6 @@ #include "f_pc/f_pc_deletor.h" #include "f_pc/f_pc_executor.h" #include "f_pc/f_pc_layer.h" -#include "f_pc/f_pc_layer_iter.h" /* 80020ACC-80020AE8 001C+00 s=1 e=0 z=0 None .text fpcCtRq_isCreatingByID__FP10create_tagPUi */ diff --git a/src/f_pc/f_pc_manager.cpp b/src/f_pc/f_pc_manager.cpp index 19d434729d..4fa2081405 100644 --- a/src/f_pc/f_pc_manager.cpp +++ b/src/f_pc/f_pc_manager.cpp @@ -12,9 +12,6 @@ #include "f_pc/f_pc_draw.h" #include "f_pc/f_pc_fstcreate_req.h" #include "f_pc/f_pc_line.h" -#include "f_pc/f_pc_line_tag.h" -#include "f_pc/f_pc_method.h" -#include "f_pc/f_pc_node_req.h" #include "f_pc/f_pc_pause.h" #include "f_pc/f_pc_priority.h" #include "f_pc/f_pc_profile.h" diff --git a/src/f_pc/f_pc_node_req.cpp b/src/f_pc/f_pc_node_req.cpp index 6781915a11..1e260db654 100644 --- a/src/f_pc/f_pc_node_req.cpp +++ b/src/f_pc/f_pc_node_req.cpp @@ -8,7 +8,6 @@ #include "SSystem/SStandard/s_basic.h" #include "f_pc/f_pc_deletor.h" #include "f_pc/f_pc_executor.h" -#include "f_pc/f_pc_layer.h" #include "f_pc/f_pc_node.h" #include "f_pc/f_pc_stdcreate_req.h" diff --git a/src/init.c b/src/init.c index dd6927340c..39c912ee21 100644 --- a/src/init.c +++ b/src/init.c @@ -6,7 +6,6 @@ #include "init.h" #include "string.h" #include "dol2asm.h" -#include "dolphin/types.h" // // Forward References: diff --git a/src/m_Do/m_Do_DVDError.cpp b/src/m_Do/m_Do_DVDError.cpp index 7498e258c8..1223df3e54 100644 --- a/src/m_Do/m_Do_DVDError.cpp +++ b/src/m_Do/m_Do_DVDError.cpp @@ -5,10 +5,6 @@ #include "m_Do/m_Do_DVDError.h" #include "JSystem/JKernel/JKRAssertHeap.h" -#include "JSystem/JKernel/JKRThread.h" -#include "dol2asm.h" -#include "dolphin/dvd.h" -#include "dolphin/os/OSAlarm.h" #include "dolphin/os/OSInterrupt.h" #include "m_Do/m_Do_dvd_thread.h" #include "m_Do/m_Do_ext.h" diff --git a/src/m_Do/m_Do_MemCard.cpp b/src/m_Do/m_Do_MemCard.cpp index c3883e2485..8095f5aadd 100644 --- a/src/m_Do/m_Do_MemCard.cpp +++ b/src/m_Do/m_Do_MemCard.cpp @@ -5,9 +5,6 @@ #include "m_Do/m_Do_MemCard.h" #include "JSystem/JKernel/JKRAssertHeap.h" -#include "JSystem/JKernel/JKRThread.h" -#include "string.h" -#include "dol2asm.h" #include "dolphin/card.h" #include "m_Do/m_Do_ext.h" #include "m_Do/m_Do_MemCardRWmng.h" diff --git a/src/m_Do/m_Do_Reset.cpp b/src/m_Do/m_Do_Reset.cpp index c49dc095a3..94dd707f62 100644 --- a/src/m_Do/m_Do_Reset.cpp +++ b/src/m_Do/m_Do_Reset.cpp @@ -5,12 +5,10 @@ #include "m_Do/m_Do_Reset.h" #include "JSystem/JAudio2/JASDvdThread.h" -#include "JSystem/JAudio2/JASTaskThread.h" #include "JSystem/JUtility/JUTGamePad.h" #include "JSystem/JUtility/JUTXfb.h" #include "SSystem/SComponent/c_API_controller_pad.h" #include "dolphin/gx.h" -#include "dolphin/os.h" #include "m_Do/m_Do_audio.h" #include "m_Do/m_Do_DVDError.h" #include "m_Do/m_Do_MemCard.h" diff --git a/src/m_Do/m_Do_audio.cpp b/src/m_Do/m_Do_audio.cpp index 66a062df49..56db6a49b6 100644 --- a/src/m_Do/m_Do_audio.cpp +++ b/src/m_Do/m_Do_audio.cpp @@ -7,7 +7,6 @@ #include "JSystem/JKernel/JKRSolidHeap.h" #include "d/com/d_com_inf_game.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "m_Do/m_Do_Reset.h" #include "m_Do/m_Do_dvd_thread.h" diff --git a/src/m_Do/m_Do_dvd_thread.cpp b/src/m_Do/m_Do_dvd_thread.cpp index 4a070c866e..7b02bf929b 100644 --- a/src/m_Do/m_Do_dvd_thread.cpp +++ b/src/m_Do/m_Do_dvd_thread.cpp @@ -5,14 +5,11 @@ #include "m_Do/m_Do_dvd_thread.h" #include "JSystem/JAudio2/JASDvdThread.h" -#include "JSystem/JAudio2/JASTaskThread.h" #include "JSystem/JKernel/JKRAssertHeap.h" #include "JSystem/JKernel/JKRDvdRipper.h" #include "JSystem/JKernel/JKRExpHeap.h" #include "JSystem/JKernel/JKRMemArchive.h" #include "dol2asm.h" -#include "dolphin/os.h" -#include "dolphin/types.h" #include "m_Do/m_Do_Reset.h" #include "m_Do/m_Do_ext.h" diff --git a/src/m_Do/m_Do_ext.cpp b/src/m_Do/m_Do_ext.cpp index 4f07159bbb..3576c4c76f 100644 --- a/src/m_Do/m_Do_ext.cpp +++ b/src/m_Do/m_Do_ext.cpp @@ -19,9 +19,6 @@ #include "d/com/d_com_inf_game.h" #include "dol2asm.h" #include "dolphin/gx/GXDraw.h" -#include "dolphin/mtx.h" -#include "dolphin/os.h" -#include "dolphin/types.h" #include "global.h" #include "m_Do/m_Do_mtx.h" diff --git a/src/m_Do/m_Do_graphic.cpp b/src/m_Do/m_Do_graphic.cpp index 8c31ea2309..7cbf5eec8a 100644 --- a/src/m_Do/m_Do_graphic.cpp +++ b/src/m_Do/m_Do_graphic.cpp @@ -14,12 +14,9 @@ #include "d/menu/d_menu_collect.h" #include "dol2asm.h" #include "f_ap/f_ap_game.h" -#include "f_op/f_op_actor_mng.h" -#include "global.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_machine.h" #include "m_Do/m_Do_main.h" -#include "m_Do/m_Do_mtx.h" #include "SSystem/SComponent/c_math.h" #include "JSystem/J2DGraph/J2DOrthoGraph.h" #include "JSystem/JParticle/JPADrawInfo.h" diff --git a/src/m_Do/m_Do_lib.cpp b/src/m_Do/m_Do_lib.cpp index e6fa30cbf8..44b606fd4b 100644 --- a/src/m_Do/m_Do_lib.cpp +++ b/src/m_Do/m_Do_lib.cpp @@ -1,132 +1,131 @@ -/** - * m_Do_lib.cpp - * View and Projection Matrix Helper Functions - */ - -#include "m_Do/m_Do_lib.h" -#include "JSystem/J3DGraphBase/J3DMatBlock.h" -#include "JSystem/JUtility/JUTTexture.h" -#include "SSystem/SComponent/c_math.h" -#include "d/com/d_com_inf_game.h" -#include "dolphin/types.h" - -/* 8001513C-8001528C 00FA7C 0150+00 0/0 3/3 2/2 .text - * mDoLib_setResTimgObj__FPC7ResTIMGP9_GXTexObjUlP10_GXTlutObj */ -u8 mDoLib_setResTimgObj(ResTIMG const* res, _GXTexObj* o_texObj, u32 tlut_name, - _GXTlutObj* o_tlutObj) { - ResTIMG* _res = (ResTIMG*)res; - - if (_res->indexTexture) { - GXInitTlutObj(o_tlutObj, (void*)((u8*)_res + _res->paletteOffset), - (GXTlutFmt)_res->colorFormat, _res->numColors); - GXInitTexObjCI(o_texObj, (void*)((u8*)_res + _res->imageOffset), _res->width, _res->height, - (GXCITexFmt)_res->format, (GXTexWrapMode)_res->wrapS, - (GXTexWrapMode)_res->wrapT, _res->mipmapCount > 1, tlut_name); - } else { - GXInitTexObj(o_texObj, (void*)((u8*)_res + _res->imageOffset), _res->width, _res->height, - (GXTexFmt)_res->format, (GXTexWrapMode)_res->wrapS, (GXTexWrapMode)_res->wrapT, - _res->mipmapCount > 1); - } - GXInitTexObjLOD(o_texObj, (GXTexFilter)_res->minFilter, (GXTexFilter)_res->magFilter, - (f32)_res->minLOD * 0.125f, (f32)_res->maxLOD * 0.125f, - (f32)_res->LODBias * 0.01f, (s32)_res->biasClamp, (s32)_res->doEdgeLOD, - (GXAnisotropy)_res->maxAnisotropy); - - return _res->indexTexture; -} - -/* 803DD8E4-803DD940 00A604 005C+00 2/2 5/5 5/5 .bss mClipper__14mDoLib_clipper */ -J3DUClipper mDoLib_clipper::mClipper; - -/* 80450C70-80450C74 000170 0004+00 1/1 2/2 4/4 .sbss mSystemFar__14mDoLib_clipper */ -f32 mDoLib_clipper::mSystemFar; - -/* 80450C74-80450C78 000174 0004+00 1/1 1/1 0/0 .sbss mFovyRate__14mDoLib_clipper */ -f32 mDoLib_clipper::mFovyRate; - -/* 8001528C-80015310 00FBCC 0084+00 0/0 1/1 0/0 .text setup__14mDoLib_clipperFffff */ -void mDoLib_clipper::setup(f32 fovy, f32 aspect, f32 near, f32 far) { - mClipper.setFovy(fovy); - mClipper.setAspect(aspect); - mClipper.setNear(near); - mClipper.setFar(far); - mSystemFar = far; - mClipper.calcViewFrustum(); - - s16 tmp = fovy * 182.04444885253906f; - - mFovyRate = cM_scos(tmp) / cM_ssin(tmp); -} - -/* 80015310-800154EC 00FC50 01DC+00 0/0 21/21 23/23 .text mDoLib_project__FP3VecP3Vec */ -void mDoLib_project(Vec* src, Vec* dst) { - if (dComIfGd_getView() == NULL) { - dst->x = 0.0f; - dst->y = 0.0f; - dst->z = 0.0f; - return; - } - Mtx44* projMtx = dComIfGd_getProjViewMtx(); - Vec multVec; - cMtx_multVec(*projMtx, src, &multVec); - - float calcFloat = (src->x * (*dComIfGd_getProjViewMtx())[3][0]) + - (src->y * (*dComIfGd_getProjViewMtx())[3][1]) + - (src->z * (*dComIfGd_getProjViewMtx())[3][2]) + - (*dComIfGd_getProjViewMtx())[3][3]; - if (multVec.z >= 0.0f) { - multVec.z = 0.0f; - } - float f3; - if (calcFloat <= 0.0f) { - if (calcFloat == 0.0f) { - dst->z = multVec.z * 500000.0f; - } else { - dst->z = multVec.z * (0.5f / calcFloat); - } - f3 = 500000.0f; - } else { - f3 = 0.5f / calcFloat; - dst->z = multVec.z * f3; - } - - view_port_class* viewPort = dComIfGd_getViewport(); - float xOffset; - float yOffset; - float xSize; - float ySize; - if (viewPort->mXOrig != 0.0f) { - xOffset = (0.5f * ((2.0f * viewPort->mXOrig) + viewPort->mWidth)) - 304.0f; - xSize = 608.0f; - } else { - xOffset = viewPort->mXOrig; - xSize = viewPort->mWidth; - } - - if (viewPort->mYOrig != 0.0f) { - yOffset = (0.5f * ((2.0f * viewPort->mYOrig) + viewPort->mHeight)) - 224.0f; - ySize = 448.0f; - } else { - yOffset = viewPort->mYOrig; - ySize = viewPort->mHeight; - } - - dst->x = ((0.5f + (multVec.x * f3)) * xSize) + xOffset; - dst->y = ((0.5f + (multVec.y * (-f3))) * ySize) + yOffset; -} - -/* 800154EC-80015544 00FE2C 0058+00 0/0 2/2 9/9 .text mDoLib_pos2camera__FP3VecP3Vec */ -void mDoLib_pos2camera(Vec* src, Vec* dst) { - if (dComIfGd_getView() == NULL) { - dst->x = 0.0f; - dst->y = 0.0f; - dst->z = 0.0f; - return; - } - cMtx_multVec(dComIfGd_getView()->mViewMtx, src, dst); -} - -// Fake function to make the weak function calcAlphaCmpID appear in this TU -u32 mDoLib_calcAlphaCmpID(u8 param_0, u8 param_1, u8 param_2) { - return calcAlphaCmpID(param_0, param_1, param_2); -} +/** + * m_Do_lib.cpp + * View and Projection Matrix Helper Functions + */ + +#include "m_Do/m_Do_lib.h" +#include "JSystem/J3DGraphBase/J3DMatBlock.h" +#include "SSystem/SComponent/c_math.h" +#include "d/com/d_com_inf_game.h" +#include "dolphin/types.h" + +/* 8001513C-8001528C 00FA7C 0150+00 0/0 3/3 2/2 .text + * mDoLib_setResTimgObj__FPC7ResTIMGP9_GXTexObjUlP10_GXTlutObj */ +u8 mDoLib_setResTimgObj(ResTIMG const* res, _GXTexObj* o_texObj, u32 tlut_name, + _GXTlutObj* o_tlutObj) { + ResTIMG* _res = (ResTIMG*)res; + + if (_res->indexTexture) { + GXInitTlutObj(o_tlutObj, (void*)((u8*)_res + _res->paletteOffset), + (GXTlutFmt)_res->colorFormat, _res->numColors); + GXInitTexObjCI(o_texObj, (void*)((u8*)_res + _res->imageOffset), _res->width, _res->height, + (GXCITexFmt)_res->format, (GXTexWrapMode)_res->wrapS, + (GXTexWrapMode)_res->wrapT, _res->mipmapCount > 1, tlut_name); + } else { + GXInitTexObj(o_texObj, (void*)((u8*)_res + _res->imageOffset), _res->width, _res->height, + (GXTexFmt)_res->format, (GXTexWrapMode)_res->wrapS, (GXTexWrapMode)_res->wrapT, + _res->mipmapCount > 1); + } + GXInitTexObjLOD(o_texObj, (GXTexFilter)_res->minFilter, (GXTexFilter)_res->magFilter, + (f32)_res->minLOD * 0.125f, (f32)_res->maxLOD * 0.125f, + (f32)_res->LODBias * 0.01f, (s32)_res->biasClamp, (s32)_res->doEdgeLOD, + (GXAnisotropy)_res->maxAnisotropy); + + return _res->indexTexture; +} + +/* 803DD8E4-803DD940 00A604 005C+00 2/2 5/5 5/5 .bss mClipper__14mDoLib_clipper */ +J3DUClipper mDoLib_clipper::mClipper; + +/* 80450C70-80450C74 000170 0004+00 1/1 2/2 4/4 .sbss mSystemFar__14mDoLib_clipper */ +f32 mDoLib_clipper::mSystemFar; + +/* 80450C74-80450C78 000174 0004+00 1/1 1/1 0/0 .sbss mFovyRate__14mDoLib_clipper */ +f32 mDoLib_clipper::mFovyRate; + +/* 8001528C-80015310 00FBCC 0084+00 0/0 1/1 0/0 .text setup__14mDoLib_clipperFffff */ +void mDoLib_clipper::setup(f32 fovy, f32 aspect, f32 near, f32 far) { + mClipper.setFovy(fovy); + mClipper.setAspect(aspect); + mClipper.setNear(near); + mClipper.setFar(far); + mSystemFar = far; + mClipper.calcViewFrustum(); + + s16 tmp = fovy * 182.04444885253906f; + + mFovyRate = cM_scos(tmp) / cM_ssin(tmp); +} + +/* 80015310-800154EC 00FC50 01DC+00 0/0 21/21 23/23 .text mDoLib_project__FP3VecP3Vec */ +void mDoLib_project(Vec* src, Vec* dst) { + if (dComIfGd_getView() == NULL) { + dst->x = 0.0f; + dst->y = 0.0f; + dst->z = 0.0f; + return; + } + Mtx44* projMtx = dComIfGd_getProjViewMtx(); + Vec multVec; + cMtx_multVec(*projMtx, src, &multVec); + + float calcFloat = (src->x * (*dComIfGd_getProjViewMtx())[3][0]) + + (src->y * (*dComIfGd_getProjViewMtx())[3][1]) + + (src->z * (*dComIfGd_getProjViewMtx())[3][2]) + + (*dComIfGd_getProjViewMtx())[3][3]; + if (multVec.z >= 0.0f) { + multVec.z = 0.0f; + } + float f3; + if (calcFloat <= 0.0f) { + if (calcFloat == 0.0f) { + dst->z = multVec.z * 500000.0f; + } else { + dst->z = multVec.z * (0.5f / calcFloat); + } + f3 = 500000.0f; + } else { + f3 = 0.5f / calcFloat; + dst->z = multVec.z * f3; + } + + view_port_class* viewPort = dComIfGd_getViewport(); + float xOffset; + float yOffset; + float xSize; + float ySize; + if (viewPort->mXOrig != 0.0f) { + xOffset = (0.5f * ((2.0f * viewPort->mXOrig) + viewPort->mWidth)) - 304.0f; + xSize = 608.0f; + } else { + xOffset = viewPort->mXOrig; + xSize = viewPort->mWidth; + } + + if (viewPort->mYOrig != 0.0f) { + yOffset = (0.5f * ((2.0f * viewPort->mYOrig) + viewPort->mHeight)) - 224.0f; + ySize = 448.0f; + } else { + yOffset = viewPort->mYOrig; + ySize = viewPort->mHeight; + } + + dst->x = ((0.5f + (multVec.x * f3)) * xSize) + xOffset; + dst->y = ((0.5f + (multVec.y * (-f3))) * ySize) + yOffset; +} + +/* 800154EC-80015544 00FE2C 0058+00 0/0 2/2 9/9 .text mDoLib_pos2camera__FP3VecP3Vec */ +void mDoLib_pos2camera(Vec* src, Vec* dst) { + if (dComIfGd_getView() == NULL) { + dst->x = 0.0f; + dst->y = 0.0f; + dst->z = 0.0f; + return; + } + cMtx_multVec(dComIfGd_getView()->mViewMtx, src, dst); +} + +// Fake function to make the weak function calcAlphaCmpID appear in this TU +u32 mDoLib_calcAlphaCmpID(u8 param_0, u8 param_1, u8 param_2) { + return calcAlphaCmpID(param_0, param_1, param_2); +} diff --git a/src/m_Do/m_Do_machine.cpp b/src/m_Do/m_Do_machine.cpp index da28692299..3b8b56ff4b 100644 --- a/src/m_Do/m_Do_machine.cpp +++ b/src/m_Do/m_Do_machine.cpp @@ -9,15 +9,8 @@ #include "JSystem/JUtility/JUTDbPrint.h" #include "JSystem/JUtility/JUTException.h" #include "JSystem/JUtility/JUTVideo.h" -#include "JSystem/JKernel/JKRAramStream.h" -#include "JSystem/JKernel/JKRDvdRipper.h" -#include "JSystem/JKernel/JKRDvdAramRipper.h" -#include "JSystem/JKernel/JKRAram.h" #include "SSystem/SComponent/c_API_controller_pad.h" -#include "SSystem/SComponent/c_malloc.h" -#include "SSystem/SComponent/c_math.h" #include "dol2asm.h" -#include "dolphin/os.h" #include "m_Do/m_Do_DVDError.h" #include "m_Do/m_Do_MemCard.h" #include "m_Do/m_Do_Reset.h" diff --git a/src/m_Do/m_Do_machine_exception.cpp b/src/m_Do/m_Do_machine_exception.cpp index 258349167f..b0274384a6 100644 --- a/src/m_Do/m_Do_machine_exception.cpp +++ b/src/m_Do/m_Do_machine_exception.cpp @@ -8,7 +8,6 @@ #include "JSystem/JKernel/JKRAram.h" #include "JSystem/JUtility/JUTConsole.h" #include "d/com/d_com_inf_game.h" -#include "m_Do/m_Do_ext.h" #include "m_Do/m_Do_main.h" #include "DynamicLink.h" diff --git a/src/m_Do/m_Do_main.cpp b/src/m_Do/m_Do_main.cpp index c1bf7706cf..84939f46d7 100644 --- a/src/m_Do/m_Do_main.cpp +++ b/src/m_Do/m_Do_main.cpp @@ -12,13 +12,10 @@ #include "JSystem/JKernel/JKRSolidHeap.h" #include "JSystem/JUtility/JUTConsole.h" #include "JSystem/JUtility/JUTReport.h" -#include "Z2AudioLib/Z2SoundInfo.h" #include "Z2AudioLib/Z2WolfHowlMgr.h" #include "c/c_dylink.h" #include "d/com/d_com_inf_game.h" -#include "dolphin/os.h" #include "f_ap/f_ap_game.h" -#include "f_op/f_op_actor_mng.h" #include "m_Do/m_Do_MemCard.h" #include "m_Do/m_Do_Reset.h" #include "m_Do/m_Do_controller_pad.h" diff --git a/src/m_Do/m_Do_mtx.cpp b/src/m_Do/m_Do_mtx.cpp index b88cf3f23f..e54853b850 100644 --- a/src/m_Do/m_Do_mtx.cpp +++ b/src/m_Do/m_Do_mtx.cpp @@ -5,7 +5,6 @@ #include "m_Do/m_Do_mtx.h" #include "JSystem/JGeometry.h" -#include "JSystem/JMath/JMATrigonometric.h" #include "JSystem/JMath/JMath.h" #include "JSystem/JUtility/JUTAssert.h" #include "SSystem/SComponent/c_m3d.h" diff --git a/src/m_Do/m_Do_printf.cpp b/src/m_Do/m_Do_printf.cpp index 9958d705d2..2e0f544f62 100644 --- a/src/m_Do/m_Do_printf.cpp +++ b/src/m_Do/m_Do_printf.cpp @@ -5,9 +5,7 @@ #include "m_Do/m_Do_printf.h" #include "stdio.h" -#include "dol2asm.h" #include "dolphin/base/PPCArch.h" -#include "dolphin/os.h" #include "m_Do/m_Do_ext.h" /* 80450B98-80450B9C -00001 0004+00 0/0 6/6 0/0 .sbss None */ diff --git a/tools/setup_profile.py b/tools/setup_profile.py new file mode 100644 index 0000000000..697e659411 --- /dev/null +++ b/tools/setup_profile.py @@ -0,0 +1,1007 @@ +import click +import re +import sys +import struct + + +LayerID = { + "0x00000000": "fpcLy_ROOT_e", + "0xFFFFFFFD": "fpcLy_CURRENT_e", + "0xFFFFFFFE": "fpcLy_SPECIAL_e", + "0xFFFFFFFF": "fpcLy_NONE_e" +} + +ListPrio = { + 0xFFFD: "fpcPi_CURRENT_e", + 0xFFFE: "fpcPi_SPECIAL_e", +} + +ProcName = { + 0x0000: "PROC_OVERLAP0", + 0x0001: "PROC_OVERLAP1", + 0x0002: "PROC_OVERLAP3", + 0x0003: "PROC_OVERLAP6", + 0x0004: "PROC_OVERLAP7", + 0x0005: "PROC_OVERLAP8", + 0x0006: "PROC_OVERLAP9", + 0x0007: "PROC_OVERLAP10", + 0x0008: "PROC_OVERLAP11", + 0x0009: "PROC_LOGO_SCENE", + 0x000A: "PROC_MENU_SCENE", + 0x000B: "PROC_PLAY_SCENE", + 0x000C: "PROC_OPENING_SCENE", + 0x000D: "PROC_NAME_SCENE", + 0x000E: "PROC_NAMEEX_SCENE", + 0x000F: "PROC_WARNING_SCENE", + 0x0010: "PROC_WARNING2_SCENE", + 0x0011: "PROC_OVERLAP2", + 0x0012: "PROC_ROOM_SCENE", + 0x0013: "PROC_KANKYO", + 0x0014: "PROC_ALLDIE", + 0x0015: "PROC_ENVSE", + 0x0016: "PROC_Obj_Swpush", + 0x0017: "PROC_Obj_Swpush2", + 0x0018: "PROC_Obj_Swpush5", + 0x0019: "PROC_Tag_Gstart", + 0x001A: "PROC_NO_CHG_ROOM", + 0x001B: "PROC_Obj_Lv6ElevtA", + 0x001C: "PROC_OBJ_SO", + 0x001D: "PROC_Obj_Movebox", + 0x001E: "PROC_Obj_SwTurn", + 0x001F: "PROC_Obj_Lv6SwTurn", + 0x0020: "PROC_OBJ_SEKIZOA", + 0x0021: "PROC_OBJ_GRA", + 0x0022: "PROC_TAG_GRA", + 0x0023: "PROC_TAG_YAMI", + 0x0024: "PROC_Obj_Ladder", + 0x0025: "PROC_OBJ_BEF", + 0x0026: "PROC_OBJ_FMOBJ", + 0x0027: "PROC_OBJ_LBOX", + 0x0028: "PROC_OBJ_WEB0", + 0x0029: "PROC_OBJ_WEB1", + 0x002A: "PROC_OBJ_CB", + 0x002B: "PROC_OBJ_MAKI", + 0x002C: "PROC_OBJ_BRG", + 0x002D: "PROC_OBJ_GB", + 0x002E: "PROC_OBJ_GM", + 0x002F: "PROC_OBJ_TOBY", + 0x0030: "PROC_OBJ_TP", + 0x0031: "PROC_TREESH", + 0x0032: "PROC_Obj_ZDoor", + 0x0033: "PROC_Obj_Pillar", + 0x0034: "PROC_Obj_Cdoor", + 0x0035: "PROC_GRDWATER", + 0x0036: "PROC_Obj_RotBridge", + 0x0037: "PROC_Obj_MagLift", + 0x0038: "PROC_Obj_MagLiftRot", + 0x0039: "PROC_Obj_Lv1Cdl00", + 0x003A: "PROC_Obj_Lv1Cdl01", + 0x003B: "PROC_Obj_TvCdlst", + 0x003C: "PROC_Obj_HsTarget", + 0x003D: "PROC_Obj_HeavySw", + 0x003E: "PROC_Obj_GoGate", + 0x003F: "PROC_Obj_TaFence", + 0x0040: "PROC_Obj_Saidan", + 0x0041: "PROC_Obj_SpinLift", + 0x0042: "PROC_Obj_BmWindow", + 0x0043: "PROC_Obj_RfHole", + 0x0044: "PROC_Obj_WaterPillar", + 0x0045: "PROC_Obj_SyRock", + 0x0046: "PROC_Obj_BsGate", + 0x0047: "PROC_Obj_AmiShutter", + 0x0048: "PROC_Obj_WtGate", + 0x0049: "PROC_Obj_Lv2Candle", + 0x004A: "PROC_Obj_TogeTrap", + 0x004B: "PROC_Obj_RotTrap", + 0x004C: "PROC_Obj_SwallShutter", + 0x004D: "PROC_Obj_IceWall", + 0x004E: "PROC_Obj_Lv5SwIce", + 0x004F: "PROC_Obj_Lv5FBoard", + 0x0050: "PROC_Obj_Turara", + 0x0051: "PROC_Obj_TwGate", + 0x0052: "PROC_Obj_Digholl", + 0x0053: "PROC_Obj_Digpl", + 0x0054: "PROC_Obj_TestCube", + 0x0055: "PROC_Obj_Kshutter", + 0x0056: "PROC_NPC_COACH", + 0x0057: "PROC_NPC_THEB", + 0x0058: "PROC_COACH_FIRE", + 0x0059: "PROC_COACH2D", + 0x005A: "PROC_BALLOON2D", + 0x005B: "PROC_SKIP2D", + 0x005C: "PROC_Obj_MvStair", + 0x005D: "PROC_Obj_Cowdoor", + 0x005E: "PROC_Obj_Swpropeller", + 0x005F: "PROC_Obj_BoomShutter", + 0x0060: "PROC_NPC_KS", + 0x0061: "PROC_Obj_Hfuta", + 0x0062: "PROC_Obj_BkDoor", + 0x0063: "PROC_Obj_Cboard", + 0x0064: "PROC_Obj_MGate", + 0x0065: "PROC_Obj_Ikada", + 0x0066: "PROC_Obj_Ice_l", + 0x0067: "PROC_Obj_Ice_s", + 0x0068: "PROC_Obj_E_CREATE", + 0x0069: "PROC_Obj_Bhbridge", + 0x006A: "PROC_Obj_Kaisou", + 0x006B: "PROC_Obj_HHASHI", + 0x006C: "PROC_Obj_BHASHI", + 0x006D: "PROC_OCTHASHI", + 0x006E: "PROC_Obj_THASHI", + 0x006F: "PROC_Obj_CRVGATE", + 0x0070: "PROC_Obj_CRVFENCE", + 0x0071: "PROC_Obj_CRVHAHEN", + 0x0072: "PROC_Obj_CRVSTEEL", + 0x0073: "PROC_Obj_CRVLH_UP", + 0x0074: "PROC_Obj_CRVLH_DW", + 0x0075: "PROC_Obj_RIVERROCK", + 0x0076: "PROC_Obj_DUST", + 0x0077: "PROC_Obj_ITA", + 0x0078: "PROC_Obj_Window", + 0x0079: "PROC_Obj_MetalBox", + 0x007A: "PROC_Obj_BBox", + 0x007B: "PROC_OBJ_MSIMA", + 0x007C: "PROC_OBJ_MYOGAN", + 0x007D: "PROC_B_ZANTS", + 0x007E: "PROC_Obj_ChainBlock", + 0x007F: "PROC_Obj_ChainWall", + 0x0080: "PROC_Obj_KkrGate", + 0x0081: "PROC_Obj_RiderGate", + 0x0082: "PROC_Obj_Onsen", + 0x0083: "PROC_Obj_Chest", + 0x0084: "PROC_Obj_Bemos", + 0x0085: "PROC_Obj_RopeBridge", + 0x0086: "PROC_Obj_WellCover", + 0x0087: "PROC_Obj_GraveStone", + 0x0088: "PROC_Obj_ZraRock", + 0x0089: "PROC_Obj_GraRock", + 0x008A: "PROC_Obj_GrzRock", + 0x008B: "PROC_GRA_WALL", + 0x008C: "PROC_OBJ_ONSEN_FIRE", + 0x008D: "PROC_Obj_Lv6bemos", + 0x008E: "PROC_Obj_Lv6bemos2", + 0x008F: "PROC_Obj_BarDesk", + 0x0090: "PROC_Obj_DigSnow", + 0x0091: "PROC_Obj_Ytaihou", + 0x0092: "PROC_Obj_Elevator", + 0x0093: "PROC_Obj_Lv6TogeRoll", + 0x0094: "PROC_Obj_Lv6TogeTrap", + 0x0095: "PROC_Obj_Lv6Tenbin", + 0x0096: "PROC_Obj_Lv6SwGate", + 0x0097: "PROC_Obj_Lv6Lblock", + 0x0098: "PROC_Obj_Lv6ChgGate", + 0x0099: "PROC_Obj_Lv6FuriTrap", + 0x009A: "PROC_Obj_Lv6SzGate", + 0x009B: "PROC_Obj_Lv4EdShutter", + 0x009C: "PROC_Obj_Lv4Gate", + 0x009D: "PROC_Obj_Lv4PoGate", + 0x009E: "PROC_Obj_Lv4SlideWall", + 0x009F: "PROC_Obj_Lv4HsTarget", + 0x00A0: "PROC_Obj_Lv7PropY", + 0x00A1: "PROC_Obj_Lv7BsGate", + 0x00A2: "PROC_Obj_Lv8OptiLift", + 0x00A3: "PROC_Obj_Lv8KekkaiTrap", + 0x00A4: "PROC_Obj_Lv8Lift", + 0x00A5: "PROC_Obj_Lv8UdFloor", + 0x00A6: "PROC_Obj_Lv9SwShutter", + 0x00A7: "PROC_Obj_TobyHouse", + 0x00A8: "PROC_Obj_poCandle", + 0x00A9: "PROC_Obj_Lv4DigSand", + 0x00AA: "PROC_Obj_FallObj", + 0x00AB: "PROC_Obj_SmgDoor", + 0x00AC: "PROC_Obj_SwLight", + 0x00AD: "PROC_Obj_Avalanche", + 0x00AE: "PROC_Obj_MirrorScrew", + 0x00AF: "PROC_Obj_MirrorSand", + 0x00B0: "PROC_Obj_MirrorTable", + 0x00B1: "PROC_Obj_MirrorChain", + 0x00B2: "PROC_Obj_Mirror6Pole", + 0x00B3: "PROC_Obj_SwSpinner", + 0x00B4: "PROC_Obj_TDoor", + 0x00B5: "PROC_Obj_Lv7Bridge", + 0x00B6: "PROC_Obj_zrTurara", + 0x00B7: "PROC_Obj_TakaraDai", + 0x00B8: "PROC_Obj_Table", + 0x00B9: "PROC_Obj_CatDoor", + 0x00BA: "PROC_Obj_Gake", + 0x00BB: "PROC_CSTAF", + 0x00BC: "PROC_Obj_Lv4RailWall", + 0x00BD: "PROC_Obj_Lv4Sand", + 0x00BE: "PROC_Obj_PushDoor", + 0x00BF: "PROC_PushDoor", + 0x00C0: "PROC_Obj_GanonWall2", + 0x00C1: "PROC_Obj_Lv4Bridge", + 0x00C2: "PROC_Obj_Lv4Floor", + 0x00C3: "PROC_Tag_Spinner", + 0x00C4: "PROC_Obj_SwHang", + 0x00C5: "PROC_Obj_RotStair", + 0x00C6: "PROC_Obj_MagneArm", + 0x00C7: "PROC_Obj_KWheel00", + 0x00C8: "PROC_Obj_KWheel01", + 0x00C9: "PROC_Obj_Ychndlr", + 0x00CA: "PROC_Obj_PRElvtr", + 0x00CB: "PROC_Obj_MHasu", + 0x00CC: "PROC_Obj_YIblltray", + 0x00CD: "PROC_Obj_Lv6EGate", + 0x00CE: "PROC_Obj_PDtile", + 0x00CF: "PROC_Obj_PDwall", + 0x00D0: "PROC_Obj_Lv4PRwall", + 0x00D1: "PROC_Obj_KLift00", + 0x00D2: "PROC_B_OH", + 0x00D3: "PROC_Obj_Lv4Chan", + 0x00D4: "PROC_Obj_Lv3R10Saka", + 0x00D5: "PROC_Obj_Lv3Water", + 0x00D6: "PROC_Obj_Lv3Water2", + 0x00D7: "PROC_OBJ_LV3WATERB", + 0x00D8: "PROC_Obj_HBombkoya", + 0x00D9: "PROC_Obj_SZbridge", + 0x00DA: "PROC_Obj_KakarikoBrg", + 0x00DB: "PROC_Obj_OrdinBrg", + 0x00DC: "PROC_Obj_BurnBox", + 0x00DD: "PROC_Obj_KJgjs", + 0x00DE: "PROC_OBJ_IHASI", + 0x00DF: "PROC_Obj_IceBlock", + 0x00E0: "PROC_Obj_VolcanicBall", + 0x00E1: "PROC_Obj_VolcanicBomb", + 0x00E2: "PROC_Obj_VolcGnd", + 0x00E3: "PROC_Obj_KKanban", + 0x00E4: "PROC_E_PH", + 0x00E5: "PROC_NPC_ZRA", + 0x00E6: "PROC_Obj_Chandelier", + 0x00E7: "PROC_Obj_Stopper2", + 0x00E8: "PROC_DOOR20", + 0x00E9: "PROC_Tag_Hinit", + 0x00EA: "PROC_Tag_Hjump", + 0x00EB: "PROC_Tag_AJnot", + 0x00EC: "PROC_Tag_Hstop", + 0x00ED: "PROC_CANOE", + 0x00EE: "PROC_HORSE", + 0x00EF: "PROC_E_WB", + 0x00F0: "PROC_OBJ_ITO", + 0x00F1: "PROC_OBJ_SW", + 0x00F2: "PROC_SPINNER", + 0x00F3: "PROC_B_OB", + 0x00F4: "PROC_KAGO", + 0x00F5: "PROC_E_YC", + 0x00F6: "PROC_B_DS", + 0x00F7: "PROC_B_DR", + 0x00F8: "PROC_B_ZANTZ", + 0x00F9: "PROC_B_ZANT", + 0x00FA: "PROC_B_ZANTM", + 0x00FB: "PROC_TBOX", + 0x00FC: "PROC_TBOX2", + 0x00FD: "PROC_ALINK", + 0x00FE: "PROC_BOOMERANG", + 0x00FF: "PROC_MIDNA", + 0x0100: "PROC_NPC_TK", + 0x0101: "PROC_NPC_WORM", + 0x0102: "PROC_PPolamp", + 0x0103: "PROC_BkyRock", + 0x0104: "PROC_HITOBJ", + 0x0105: "PROC_EP", + 0x0106: "PROC_COW", + 0x0107: "PROC_PERU", + 0x0108: "PROC_NI", + 0x0109: "PROC_NPC_TKJ2", + 0x010A: "PROC_SQ", + 0x010B: "PROC_NPC_SQ", + 0x010C: "PROC_DO", + 0x010D: "PROC_NPC_NE", + 0x010E: "PROC_NPC_TR", + 0x010F: "PROC_NPC_LF", + 0x0110: "PROC_OBJ_FOOD", + 0x0111: "PROC_OBJ_KI", + 0x0112: "PROC_OBJ_KITA", + 0x0113: "PROC_OBJ_KEY", + 0x0114: "PROC_OBJ_KEYHOLE", + 0x0115: "PROC_Obj_Lv5Key", + 0x0116: "PROC_OBJ_LP", + 0x0117: "PROC_OBJ_TATIGI", + 0x0118: "PROC_OBJ_ROCK", + 0x0119: "PROC_OBJ_WFLAG", + 0x011A: "PROC_OBJ_KAGE", + 0x011B: "PROC_OBJ_KANBAN2", + 0x011C: "PROC_OBJ_BALLOON", + 0x011D: "PROC_OBJ_SUISYA", + 0x011E: "PROC_OBJ_OILTUBO", + 0x011F: "PROC_OBJ_ROTEN", + 0x0120: "PROC_OBJ_SSDRINK", + 0x0121: "PROC_OBJ_SSITEM", + 0x0122: "PROC_TAG_SSDRINK", + 0x0123: "PROC_TAG_BTLITM", + 0x0124: "PROC_TAG_LV5SOUP", + 0x0125: "PROC_TAG_MNLIGHT", + 0x0126: "PROC_TAG_SHOPCAM", + 0x0127: "PROC_TAG_SHOPITM", + 0x0128: "PROC_OBJ_NDOOR", + 0x0129: "PROC_OBJ_UDOOR", + 0x012A: "PROC_OBJ_USAKU", + 0x012B: "PROC_Obj_SM_DOOR", + 0x012C: "PROC_OBJ_BED", + 0x012D: "PROC_OBJ_BOUMATO", + 0x012E: "PROC_OBJ_ITAMATO", + 0x012F: "PROC_OBJ_NOUGU", + 0x0130: "PROC_OBJ_STICK", + 0x0131: "PROC_OBJ_MIE", + 0x0132: "PROC_OBJ_SEKIDOOR", + 0x0133: "PROC_OBJ_SEKIZO", + 0x0134: "PROC_OBJ_SMTILE", + 0x0135: "PROC_NPC_FISH", + 0x0136: "PROC_MG_FISH", + 0x0137: "PROC_FSHOP", + 0x0138: "PROC_NPC_DU", + 0x0139: "PROC_DISAPPEAR", + 0x013A: "PROC_Obj_Mato", + 0x013B: "PROC_Obj_Flag", + 0x013C: "PROC_Obj_Flag2", + 0x013D: "PROC_Obj_Flag3", + 0x013E: "PROC_Obj_GOMIKABE", + 0x013F: "PROC_Obj_Yousei", + 0x0140: "PROC_Obj_Kabuto", + 0x0141: "PROC_Obj_Cho", + 0x0142: "PROC_Obj_Kuw", + 0x0143: "PROC_Obj_Nan", + 0x0144: "PROC_Obj_Dan", + 0x0145: "PROC_Obj_Kam", + 0x0146: "PROC_Obj_Ten", + 0x0147: "PROC_Obj_Ari", + 0x0148: "PROC_Obj_Kag", + 0x0149: "PROC_Obj_Batta", + 0x014A: "PROC_Obj_Tombo", + 0x014B: "PROC_Obj_Kat", + 0x014C: "PROC_Obj_H_Saku", + 0x014D: "PROC_Obj_Yobikusa", + 0x014E: "PROC_Obj_KazeNeko", + 0x014F: "PROC_Obj_KznkArm", + 0x0150: "PROC_Obj_NamePlate", + 0x0151: "PROC_Obj_OnCloth", + 0x0152: "PROC_Obj_LndRope", + 0x0153: "PROC_Obj_ItaRope", + 0x0154: "PROC_Obj_Sakuita", + 0x0155: "PROC_Obj_Laundry", + 0x0156: "PROC_WarpBug", + 0x0157: "PROC_Izumi_Gate", + 0x0158: "PROC_Obj_Fchain", + 0x0159: "PROC_Obj_Wchain", + 0x015A: "PROC_Tag_Attp", + 0x015B: "PROC_Obj_Tornado", + 0x015C: "PROC_Obj_Tornado2", + 0x015D: "PROC_Obj_FirePillar", + 0x015E: "PROC_Obj_FirePillar2", + 0x015F: "PROC_Obj_InoBone", + 0x0160: "PROC_Obj_Stopper", + 0x0161: "PROC_Obj_MHole", + 0x0162: "PROC_Tag_Magne", + 0x0163: "PROC_Obj_BossWarp", + 0x0164: "PROC_Obj_WoodPendulum", + 0x0165: "PROC_Obj_WdStick", + 0x0166: "PROC_Obj_StairBlock", + 0x0167: "PROC_Obj_Geyser", + 0x0168: "PROC_Tag_KtOnFire", + 0x0169: "PROC_Obj_FireWood", + 0x016A: "PROC_Obj_FireWood2", + 0x016B: "PROC_Obj_GpTaru", + 0x016C: "PROC_Obj_OnsenTaru", + 0x016D: "PROC_Obj_KiPot", + 0x016E: "PROC_TBOX_SW", + 0x016F: "PROC_Obj_SwChain", + 0x0170: "PROC_Obj_WoodenSword", + 0x0171: "PROC_Obj_StoneMark", + 0x0172: "PROC_Obj_Lv3Candle", + 0x0173: "PROC_Tag_Lv4Candle", + 0x0174: "PROC_Tag_Lv4CandleDm", + 0x0175: "PROC_Obj_DamCps", + 0x0176: "PROC_Obj_Smoke", + 0x0177: "PROC_Obj_WaterFall", + 0x0178: "PROC_Obj_ZoraCloth", + 0x0179: "PROC_Obj_poFire", + 0x017A: "PROC_Tag_poFire", + 0x017B: "PROC_Obj_glowSphere", + 0x017C: "PROC_Tag_LightBall", + 0x017D: "PROC_SwLBall", + 0x017E: "PROC_SwBall", + 0x017F: "PROC_Obj_WaterEff", + 0x0180: "PROC_Tag_RiverBack", + 0x0181: "PROC_Tag_KagoFall", + 0x0182: "PROC_Tag_Lv2PrChk", + 0x0183: "PROC_Obj_Lv4Gear", + 0x0184: "PROC_Obj_MasterSword", + 0x0185: "PROC_Obj_WoodStatue", + 0x0186: "PROC_Obj_Fan", + 0x0187: "PROC_Obj_IceLeaf", + 0x0188: "PROC_Obj_zrTuraraRc", + 0x0189: "PROC_Tag_RetRoom", + 0x018A: "PROC_Obj_WindStone", + 0x018B: "PROC_Tag_WaraHowl", + 0x018C: "PROC_Obj_SCannon", + 0x018D: "PROC_Obj_SmWStone", + 0x018E: "PROC_Obj_SCannonCrs", + 0x018F: "PROC_Tag_SnowEff", + 0x0190: "PROC_Tag_CstaSw", + 0x0191: "PROC_Tag_Lv6CstaSw", + 0x0192: "PROC_Obj_awaPlar", + 0x0193: "PROC_Obj_poTbox", + 0x0194: "PROC_Obj_TimeFire", + 0x0195: "PROC_Obj_TMoon", + 0x0196: "PROC_Obj_GanonWall", + 0x0197: "PROC_Obj_Prop", + 0x0198: "PROC_CSTATUE", + 0x0199: "PROC_Obj_SwBallA", + 0x019A: "PROC_Obj_SwBallB", + 0x019B: "PROC_Obj_SnowSoup", + 0x019C: "PROC_Obj_Nagaisu", + 0x019D: "PROC_Obj_RCircle", + 0x019E: "PROC_Obj_Picture", + 0x019F: "PROC_Tag_SetBall", + 0x01A0: "PROC_Tag_SmkEmt", + 0x01A1: "PROC_SwTime", + 0x01A2: "PROC_Obj_HFtr", + 0x01A3: "PROC_Obj_HBarrel", + 0x01A4: "PROC_Obj_Crystal", + 0x01A5: "PROC_Obj_SCannonTen", + 0x01A6: "PROC_Obj_SwBallC", + 0x01A7: "PROC_SCENE_EXIT2", + 0x01A8: "PROC_Obj_Hata", + 0x01A9: "PROC_Obj_ToaruMaki", + 0x01AA: "PROC_Tag_AttackItem", + 0x01AB: "PROC_Tag_RmbitSw", + 0x01AC: "PROC_Obj_Sword", + 0x01AD: "PROC_Tag_Spring", + 0x01AE: "PROC_Tag_Statue", + 0x01AF: "PROC_E_AI", + 0x01B0: "PROC_E_GS", + 0x01B1: "PROC_E_GOB", + 0x01B2: "PROC_E_DD", + 0x01B3: "PROC_E_DN", + 0x01B4: "PROC_E_S1", + 0x01B5: "PROC_E_MF", + 0x01B6: "PROC_E_SG", + 0x01B7: "PROC_E_BS", + 0x01B8: "PROC_E_SF", + 0x01B9: "PROC_E_SH", + 0x01BA: "PROC_E_DF", + 0x01BB: "PROC_E_GM", + 0x01BC: "PROC_E_MD", + 0x01BD: "PROC_E_SM", + 0x01BE: "PROC_E_SM2", + 0x01BF: "PROC_E_ST", + 0x01C0: "PROC_E_ST_LINE", + 0x01C1: "PROC_E_SB", + 0x01C2: "PROC_E_TH", + 0x01C3: "PROC_E_CR", + 0x01C4: "PROC_E_CR_EGG", + 0x01C5: "PROC_E_DB", + 0x01C6: "PROC_E_DB_LEAF", + 0x01C7: "PROC_E_GA", + 0x01C8: "PROC_E_GB", + 0x01C9: "PROC_E_HB", + 0x01CA: "PROC_E_HB_LEAF", + 0x01CB: "PROC_E_HZELDA", + 0x01CC: "PROC_E_YD", + 0x01CD: "PROC_E_YH", + 0x01CE: "PROC_E_YD_LEAF", + 0x01CF: "PROC_E_HM", + 0x01D0: "PROC_E_TK", + 0x01D1: "PROC_E_TK2", + 0x01D2: "PROC_E_TK_BALL", + 0x01D3: "PROC_E_RB", + 0x01D4: "PROC_E_RD", + 0x01D5: "PROC_E_RDB", + 0x01D6: "PROC_E_RDY", + 0x01D7: "PROC_E_FM", + 0x01D8: "PROC_E_FS", + 0x01D9: "PROC_E_PM", + 0x01DA: "PROC_E_PO", + 0x01DB: "PROC_E_MB", + 0x01DC: "PROC_E_MK", + 0x01DD: "PROC_E_MM", + 0x01DE: "PROC_E_FZ", + 0x01DF: "PROC_E_ZS", + 0x01E0: "PROC_E_KK", + 0x01E1: "PROC_E_HP", + 0x01E2: "PROC_E_ZH", + 0x01E3: "PROC_E_ZM", + 0x01E4: "PROC_E_PZ", + 0x01E5: "PROC_E_FB", + 0x01E6: "PROC_E_FK", + 0x01E7: "PROC_E_MS", + 0x01E8: "PROC_E_NEST", + 0x01E9: "PROC_E_NZ", + 0x01EA: "PROC_E_BA", + 0x01EB: "PROC_E_BU", + 0x01EC: "PROC_E_BUG", + 0x01ED: "PROC_E_BEE", + 0x01EE: "PROC_E_IS", + 0x01EF: "PROC_E_KG", + 0x01F0: "PROC_E_KR", + 0x01F1: "PROC_E_SW", + 0x01F2: "PROC_E_GE", + 0x01F3: "PROC_Tag_WatchGe", + 0x01F4: "PROC_E_YM", + 0x01F5: "PROC_E_YM_TAG", + 0x01F6: "PROC_E_YMB", + 0x01F7: "PROC_Tag_FWall", + 0x01F8: "PROC_Tag_WaterFall", + 0x01F9: "PROC_E_YK", + 0x01FA: "PROC_E_YR", + 0x01FB: "PROC_E_YG", + 0x01FC: "PROC_E_HZ", + 0x01FD: "PROC_E_WS", + 0x01FE: "PROC_E_OC", + 0x01FF: "PROC_E_OT", + 0x0200: "PROC_E_DT", + 0x0201: "PROC_E_BG", + 0x0202: "PROC_E_OctBg", + 0x0203: "PROC_DR", + 0x0204: "PROC_L7lowDr", + 0x0205: "PROC_L7ODR", + 0x0206: "PROC_E_TT", + 0x0207: "PROC_E_DK", + 0x0208: "PROC_E_VT", + 0x0209: "PROC_E_WW", + 0x020A: "PROC_E_GI", + 0x020B: "PROC_B_BH", + 0x020C: "PROC_B_BQ", + 0x020D: "PROC_B_GM", + 0x020E: "PROC_B_GND", + 0x020F: "PROC_B_GO", + 0x0210: "PROC_B_OH2", + 0x0211: "PROC_B_YO", + 0x0212: "PROC_B_YOI", + 0x0213: "PROC_B_TN", + 0x0214: "PROC_B_GG", + 0x0215: "PROC_B_DRE", + 0x0216: "PROC_B_MGN", + 0x0217: "PROC_E_WAP", + 0x0218: "PROC_ITEM", + 0x0219: "PROC_Obj_SmallKey", + 0x021A: "PROC_Obj_Kantera", + 0x021B: "PROC_Obj_LifeContainer", + 0x021C: "PROC_Obj_Shield", + 0x021D: "PROC_Demo_Item", + 0x021E: "PROC_ShopItem", + 0x021F: "PROC_Obj_Drop", + 0x0220: "PROC_OBJ_RW", + 0x0221: "PROC_NBOMB", + 0x0222: "PROC_TAG_CSW", + 0x0223: "PROC_TAG_QS", + 0x0224: "PROC_HOZELDA", + 0x0225: "PROC_SWC00", + 0x0226: "PROC_KNOB20", + 0x0227: "PROC_DBDOOR", + 0x0228: "PROC_BOSS_DOOR", + 0x0229: "PROC_L1BOSS_DOOR", + 0x022A: "PROC_L1MBOSS_DOOR", + 0x022B: "PROC_L5BOSS_DOOR", + 0x022C: "PROC_DSHUTTER", + 0x022D: "PROC_SPIRAL_DOOR", + 0x022E: "PROC_Tag_ChgRestart", + 0x022F: "PROC_Tag_Restart", + 0x0230: "PROC_ANDSW", + 0x0231: "PROC_ANDSW2", + 0x0232: "PROC_MYNA", + 0x0233: "PROC_NPC_GND", + 0x0234: "PROC_NPC_GRA", + 0x0235: "PROC_NPC_GRC", + 0x0236: "PROC_NPC_GRD", + 0x0237: "PROC_NPC_GRM", + 0x0238: "PROC_NPC_GRMC", + 0x0239: "PROC_NPC_GRO", + 0x023A: "PROC_NPC_GRR", + 0x023B: "PROC_NPC_GRS", + 0x023C: "PROC_NPC_GRZ", + 0x023D: "PROC_NPC_YAMID", + 0x023E: "PROC_NPC_YAMIT", + 0x023F: "PROC_NPC_YAMIS", + 0x0240: "PROC_NPC_BLUENS", + 0x0241: "PROC_NPC_KAKASHI", + 0x0242: "PROC_NPC_KDK", + 0x0243: "PROC_NPC_ARU", + 0x0244: "PROC_NPC_BANS", + 0x0245: "PROC_NPC_BESU", + 0x0246: "PROC_NPC_BOU", + 0x0247: "PROC_NPC_BOU_S", + 0x0248: "PROC_NPC_CLERKA", + 0x0249: "PROC_NPC_CLERKB", + 0x024A: "PROC_NPC_CLERKT", + 0x024B: "PROC_NPC_WRESTLER", + 0x024C: "PROC_Tag_Arena", + 0x024D: "PROC_Tag_Instruction", + 0x024E: "PROC_NPC_DOC", + 0x024F: "PROC_NPC_GWOLF", + 0x0250: "PROC_NPC_LEN", + 0x0251: "PROC_NPC_LUD", + 0x0252: "PROC_NPC_FAIRY_SEIREI", + 0x0253: "PROC_NPC_FAIRY", + 0x0254: "PROC_NPC_HANJO", + 0x0255: "PROC_NPC_HENNA", + 0x0256: "PROC_NPC_HENNA0", + 0x0257: "PROC_NPC_HOZ", + 0x0258: "PROC_NPC_JAGAR", + 0x0259: "PROC_NPC_KKRI", + 0x025A: "PROC_NPC_KN", + 0x025B: "PROC_KN_BULLET", + 0x025C: "PROC_NPC_KNJ", + 0x025D: "PROC_NPC_KOLIN", + 0x025E: "PROC_NPC_KOLINB", + 0x025F: "PROC_NPC_KYURY", + 0x0260: "PROC_NPC_MARO", + 0x0261: "PROC_NPC_MIDP", + 0x0262: "PROC_NPC_MOI", + 0x0263: "PROC_NPC_RACA", + 0x0264: "PROC_NPC_SARU", + 0x0265: "PROC_NPC_SEIB", + 0x0266: "PROC_NPC_SEIC", + 0x0267: "PROC_NPC_SEID", + 0x0268: "PROC_NPC_SEIRA", + 0x0269: "PROC_NPC_SERA2", + 0x026A: "PROC_NPC_SEIREI", + 0x026B: "PROC_NPC_SHAMAN", + 0x026C: "PROC_NPC_SMARO", + 0x026D: "PROC_NPC_SOLA", + 0x026E: "PROC_NPC_TARO", + 0x026F: "PROC_NPC_PACHI_BESU", + 0x0270: "PROC_NPC_PACHI_TARO", + 0x0271: "PROC_NPC_PACHI_MARO", + 0x0272: "PROC_TAG_PATI", + 0x0273: "PROC_NPC_THE", + 0x0274: "PROC_NPC_TKJ", + 0x0275: "PROC_NPC_TKS", + 0x0276: "PROC_NPC_TKC", + 0x0277: "PROC_OBJ_TKS", + 0x0278: "PROC_NPC_TOBY", + 0x0279: "PROC_NPC_URI", + 0x027A: "PROC_NPC_YELIA", + 0x027B: "PROC_NPC_YKM", + 0x027C: "PROC_NPC_YKW", + 0x027D: "PROC_NPC_ZANB", + 0x027E: "PROC_NPC_ZANT", + 0x027F: "PROC_NPC_ZELDA", + 0x0280: "PROC_NPC_ZELR", + 0x0281: "PROC_NPC_ZELRO", + 0x0282: "PROC_OBJ_ZRAFREEZE", + 0x0283: "PROC_NPC_ZRC", + 0x0284: "PROC_NPC_ZRZ", + 0x0285: "PROC_ZRA_MARK", + 0x0286: "PROC_MYNA2", + 0x0287: "PROC_TAG_MYNA2", + 0x0288: "PROC_NPC_CD3", + 0x0289: "PROC_Tag_Schedule", + 0x028A: "PROC_Tag_Escape", + 0x028B: "PROC_NPC_CHAT", + 0x028C: "PROC_NPC_SOLDIERa", + 0x028D: "PROC_NPC_SOLDIERb", + 0x028E: "PROC_PASSER_MNG", + 0x028F: "PROC_NPC_PASSER", + 0x0290: "PROC_NPC_PASSER2", + 0x0291: "PROC_NPC_POST", + 0x0292: "PROC_NPC_POUYA", + 0x0293: "PROC_FORMATION_MNG", + 0x0294: "PROC_NPC_FGUARD", + 0x0295: "PROC_GUARD_MNG", + 0x0296: "PROC_TAG_GUARD", + 0x0297: "PROC_NPC_GUARD", + 0x0298: "PROC_NPC_ASH", + 0x0299: "PROC_NPC_ASHB", + 0x029A: "PROC_NPC_SHAD", + 0x029B: "PROC_NPC_RAFREL", + 0x029C: "PROC_NPC_MOIR", + 0x029D: "PROC_NPC_IMPAL", + 0x029E: "PROC_NPC_SHOE", + 0x029F: "PROC_NPC_DOORBOY", + 0x02A0: "PROC_NPC_PRAYER", + 0x02A1: "PROC_NPC_KASIHANA", + 0x02A2: "PROC_NPC_KASIKYU", + 0x02A3: "PROC_NPC_KASIMICH", + 0x02A4: "PROC_NPC_DRSOL", + 0x02A5: "PROC_NPC_CHIN", + 0x02A6: "PROC_NPC_INS", + 0x02A7: "PROC_NPC_SHOP0", + 0x02A8: "PROC_NPC_MK", + 0x02A9: "PROC_NPC_P2", + 0x02AA: "PROC_KYTAG00", + 0x02AB: "PROC_KYTAG01", + 0x02AC: "PROC_KYTAG02", + 0x02AD: "PROC_KYTAG03", + 0x02AE: "PROC_KYTAG04", + 0x02AF: "PROC_KYTAG05", + 0x02B0: "PROC_KYTAG06", + 0x02B1: "PROC_KYTAG07", + 0x02B2: "PROC_KYTAG08", + 0x02B3: "PROC_KYTAG09", + 0x02B4: "PROC_KYTAG10", + 0x02B5: "PROC_KYTAG11", + 0x02B6: "PROC_KYTAG12", + 0x02B7: "PROC_KYTAG13", + 0x02B8: "PROC_KYTAG14", + 0x02B9: "PROC_KYTAG15", + 0x02BA: "PROC_KYTAG16", + 0x02BB: "PROC_KYTAG17", + 0x02BC: "PROC_Ykgr", + 0x02BD: "PROC_TALK", + 0x02BE: "PROC_Obj_Crope", + 0x02BF: "PROC_Obj_Bombf", + 0x02C0: "PROC_Obj_BkLeaf", + 0x02C1: "PROC_Tag_Mhint", + 0x02C2: "PROC_Tag_Mmsg", + 0x02C3: "PROC_Tag_Mwait", + 0x02C4: "PROC_Tag_Mstop", + 0x02C5: "PROC_Tag_Stream", + 0x02C6: "PROC_Tag_Sppath", + 0x02C7: "PROC_Tag_Wljump", + 0x02C8: "PROC_Tag_TWGate", + 0x02C9: "PROC_Tag_Lv6Gate", + 0x02CA: "PROC_Tag_Lv7Gate", + 0x02CB: "PROC_Tag_Lv8Gate", + 0x02CC: "PROC_Tag_TheBHint", + 0x02CD: "PROC_Tag_Assist", + 0x02CE: "PROC_DEMO00", + 0x02CF: "PROC_TAG_CAMERA", + 0x02D0: "PROC_TAG_CHKPOINT", + 0x02D1: "PROC_TAG_EVENT", + 0x02D2: "PROC_TAG_EVT", + 0x02D3: "PROC_TAG_TELOP", + 0x02D4: "PROC_TAG_HOWL", + 0x02D5: "PROC_TAG_MSG", + 0x02D6: "PROC_TAG_LANTERN", + 0x02D7: "PROC_Tag_Mist", + 0x02D8: "PROC_DMIDNA", + 0x02D9: "PROC_KY_THUNDER", + 0x02DA: "PROC_VRBOX", + 0x02DB: "PROC_VRBOX2", + 0x02DC: "PROC_BG", + 0x02DD: "PROC_SET_BG_OBJ", + 0x02DE: "PROC_BG_OBJ", + 0x02DF: "PROC_MIRROR", + 0x02E0: "PROC_MOVIE_PLAYER", + 0x02E1: "PROC_TITLE", + 0x02E2: "PROC_FR", + 0x02E3: "PROC_ECONT", + 0x02E4: "PROC_MG_ROD", + 0x02E5: "PROC_E_ARROW", + 0x02E6: "PROC_BULLET", + 0x02E7: "PROC_SWHIT0", + 0x02E8: "PROC_E_TH_BALL", + 0x02E9: "PROC_TAG_EVTAREA", + 0x02EA: "PROC_TAG_EVTMSG", + 0x02EB: "PROC_TAG_KMSG", + 0x02EC: "PROC_TAG_PUSH", + 0x02ED: "PROC_E_MK_BO", + 0x02EE: "PROC_E_MM_MT", + 0x02EF: "PROC_OBJ_KBOX", + 0x02F0: "PROC_OBJ_FW", + 0x02F1: "PROC_B_GOS", + 0x02F2: "PROC_OBJ_YSTONE", + 0x02F3: "PROC_MANT", + 0x02F4: "PROC_CROD", + 0x02F5: "PROC_OBJ_PLEAF", + 0x02F6: "PROC_OBJ_KBACKET", + 0x02F7: "PROC_OBJ_YBAG", + 0x02F8: "PROC_OBJ_PUMPKIN", + 0x02F9: "PROC_OBJ_AUTOMATA", + 0x02FA: "PROC_OBJ_GADGET", + 0x02FB: "PROC_OBJ_KAGO", + 0x02FC: "PROC_Obj_Carry", + 0x02FD: "PROC_Obj_Stone", + 0x02FE: "PROC_OBJ_HB", + 0x02FF: "PROC_NPC_INKO", + 0x0300: "PROC_BD", + 0x0301: "PROC_Obj_Eff", + 0x0302: "PROC_WPILLAR", + 0x0303: "PROC_WMARK", + 0x0304: "PROC_E_BI", + 0x0305: "PROC_E_BI_LEAF", + 0x0306: "PROC_START_AND_GOAL", + 0x0307: "PROC_NPC_DF", + 0x0308: "PROC_ARROW", + 0x0309: "PROC_PATH_LINE", + 0x030A: "PROC_TAG_ALLMATO", + 0x030B: "PROC_Obj_Timer", + 0x030C: "PROC_SCENE_EXIT", + 0x030D: "PROC_CAMERA", + 0x030E: "PROC_CAMERA2", + 0x030F: "PROC_SUSPEND", + 0x0310: "PROC_GRASS", + 0x0311: "PROC_KYEFF", + 0x0312: "PROC_KYEFF2", + 0x0313: "PROC_MSG_OBJECT", + 0x0314: "PROC_MENUWINDOW", + 0x0315: "PROC_TIMER", + 0x0316: "PROC_METER2", + 0x0317: "PROC_GAMEOVER", +} + +ActorType = { + 0: "fopAc_ACTOR_e", + 1: "fopAc_PLAYER_e", + 2: "fopAc_ENEMY_e", + 3: "fopAc_ENV_e", + 4: "fopAc_NPC_e", + 5: "fopAc_UNK_GROUP_5_e", +} + +CullType = { + 0: "fopAc_CULLBOX_0_e", + 1: "fopAc_CULLBOX_1_e", + 2: "fopAc_CULLBOX_2_e", + 3: "fopAc_CULLBOX_3_e", + 4: "fopAc_CULLBOX_4_e", + 5: "fopAc_CULLBOX_5_e", + 6: "fopAc_CULLBOX_6_e", + 7: "fopAc_CULLBOX_7_e", + 8: "fopAc_CULLBOX_8_e", + 9: "fopAc_CULLBOX_9_e", + 10: "fopAc_CULLBOX_10_e", + 11: "fopAc_CULLBOX_11_e", + 12: "fopAc_CULLBOX_12_e", + 13: "fopAc_CULLBOX_13_e", + 14: "fopAc_CULLBOX_CUSTOM_e", + 15: "fopAc_CULLSPHERE_0_e", + 16: "fopAc_CULLSPHERE_1_e", + 17: "fopAc_CULLSPHERE_2_e", + 18: "fopAc_CULLSPHERE_3_e", + 19: "fopAc_CULLSPHERE_4_e", + 20: "fopAc_CULLSPHERE_5_e", + 21: "fopAc_CULLSPHERE_6_e", + 22: "fopAc_CULLSPHERE_7_e", + 23: "fopAc_CULLSPHERE_8_e", + 24: "fopAc_CULLSPHERE_9_e", + 25: "fopAc_CULLSPHERE_10_e", + 26: "fopAc_CULLSPHERE_11_e", + 27: "fopAc_CULLSPHERE_12_e", + 28: "fopAc_CULLSPHERE_13_e", + 29: "fopAc_CULLSPHERE_CUSTOM_e", +} + +def get_profiles_from_cpp_data(filepath): + profiles = [] + + with open(filepath, 'r') as file: + data = file.readlines() + + # Track iterator and member + for i, line in enumerate(data): + if "SECTION_DATA extern void* g_profile_" in line: + start_idx = i + + # Extract profile name + profile_name = "g_profile_"+re.search(r'g_profile_(\w+)', line).group(1) + + # Split remaining members by comma until }; is reached + profile_members = [] + loop_idx = start_idx+1 + next_line = data[loop_idx] + + while "};" not in next_line: + # Split the line on "," and strip whitespace and newline characters from each element + profile_members.extend([item.strip() for item in next_line.split(",") if item.strip()]) + + # print(next_line) + loop_idx += 1 + next_line = data[loop_idx] + + if len(profile_members) != 12: + print("Error: Expected 12 members, got", len(profile_members)) + sys.exit(1) + + end_idx = loop_idx + + # Extract remaining members + mLayerID = LayerID.get(profile_members[0].strip("(void*)")) + + mListIDmListPrio_string = profile_members[1].replace("(void*)","") + mListIDmListPrio_bytes = struct.pack(">I",int(mListIDmListPrio_string,16)) + mListID = struct.unpack(">H",mListIDmListPrio_bytes[0:2])[0] + mListPrio = ListPrio.get(struct.unpack(">H",mListIDmListPrio_bytes[2:4])[0]) + + mProcName_string = profile_members[2].replace("(void*)","") + mProcName_bytes = struct.pack(">I",int(mProcName_string,16)) + mProcName = ProcName.get(struct.unpack(">H",mProcName_bytes[0:2])[0]) + + sub_method1 = profile_members[3].replace("(void*)","")+".mBase" + + mSize = profile_members[4].replace("(void*)","") + + mSizeOther = profile_members[5].replace("(void*)","").replace("NULL","0") + + mParameters = profile_members[6].replace("(void*)","").replace("NULL","0") + + sub_method2 = profile_members[7].replace("(void*)","")+".base" + + mPriority_string = profile_members[8].replace("(void*)","") + mPriority_bytes = struct.pack(">I",int(mPriority_string,16)) + mPriority = struct.unpack(">H",mPriority_bytes[0:2])[0] + + sub_method3 = profile_members[9].replace("(void*)","") + + mStatus = profile_members[10].replace("(void*)","") + + mActorTypeCullType_string = profile_members[11].replace("(void*)","") + mActorTypeCullType_bytes = struct.pack(">I",int(mActorTypeCullType_string,16)) + mActorType = ActorType.get(struct.unpack(">B",mActorTypeCullType_bytes[0:1])[0]) + cullType = CullType.get(struct.unpack(">B",mActorTypeCullType_bytes[1:2])[0]) + + # print(mLayerID) + # print(mListID) + # print(mListPrio) + # print(mProcName) + # print(sub_method1) + # print(mSize) + # print(mSizeOther) + # print(mParameters) + # print(sub_method2) + # print(mPriority) + # print(sub_method3) + # print(mStatus) + # print(mActorType) + # print(cullType) + + # print(profile_members) + # print(len(profile_members)) + # print(next_line) + profiles.append({ + "name": profile_name, + "start_idx": start_idx, + "end_idx": end_idx, + "members": { + "mLayerID": mLayerID, + "mListID": mListID, + "mListPrio": mListPrio, + "mProcName": mProcName, + "sub_method1": sub_method1, + "mSize": mSize, + "mSizeOther": mSizeOther, + "mParameters": mParameters, + "sub_method2": sub_method2, + "mPriority": mPriority, + "sub_method3": sub_method3, + "mStatus": mStatus, + "mActorType": mActorType, + "cullType": cullType + } + }) + + return profiles + +@click.command() +@click.option('--file-path', required=True, help='Filepath of the cpp file to parse.') +def main(file_path): + profiles = get_profiles_from_cpp_data(file_path) + + # Open file, delete lines between start and end idx and insert new lines starting at start idx + with open(file_path, 'r') as file: + data = file.readlines() + + for profile in profiles: + start_idx = profile["start_idx"] + end_idx = profile["end_idx"] + + # Delete lines between start and end idx + del data[start_idx:end_idx+1] + + # Insert new lines starting at start idx + max_length = max(len(str(v)) for v in profile['members'].values()) + data.insert(start_idx, f"extern actor_process_profile_definition {profile['name']} = {{\n") + data.insert(start_idx+1, f" {profile['members']['mLayerID']},{' '*(max_length-len(str(profile['members']['mLayerID'])))} // mLayerID\n") + data.insert(start_idx+2, f" {profile['members']['mListID']},{' '*(max_length-len(str(profile['members']['mListID'])))} // mListID\n") + data.insert(start_idx+3, f" {profile['members']['mListPrio']},{' '*(max_length-len(str(profile['members']['mListPrio'])))} // mListPrio\n") + data.insert(start_idx+4, f" {profile['members']['mProcName']},{' '*(max_length-len(str(profile['members']['mProcName'])))} // mProcName\n") + data.insert(start_idx+5, f" {profile['members']['sub_method1']},{' '*(max_length-len(str(profile['members']['sub_method1'])))} // sub_method\n") + data.insert(start_idx+6, f" {profile['members']['mSize']},{' '*(max_length-len(str(profile['members']['mSize'])))} // mSize\n") + data.insert(start_idx+7, f" {profile['members']['mSizeOther']},{' '*(max_length-len(str(profile['members']['mSizeOther'])))} // mSizeOther\n") + data.insert(start_idx+8, f" {profile['members']['mParameters']},{' '*(max_length-len(str(profile['members']['mParameters'])))} // mParameters\n") + data.insert(start_idx+9, f" {profile['members']['sub_method2']},{' '*(max_length-len(str(profile['members']['sub_method2'])))} // sub_method\n") + data.insert(start_idx+10, f" {profile['members']['mPriority']},{' '*(max_length-len(str(profile['members']['mPriority'])))} // mPriority\n") + data.insert(start_idx+11, f" {profile['members']['sub_method3']},{' '*(max_length-len(str(profile['members']['sub_method3'])))} // sub_method\n") + data.insert(start_idx+12, f" {profile['members']['mStatus']},{' '*(max_length-len(str(profile['members']['mStatus'])))} // mStatus\n") + data.insert(start_idx+13, f" {profile['members']['mActorType']},{' '*(max_length-len(str(profile['members']['mActorType'])))} // mActorType\n") + data.insert(start_idx+14, f" {profile['members']['cullType']},{' '*(max_length-len(str(profile['members']['cullType'])))} // cullType\n") + data.insert(start_idx+15, f"}};\n") + + with open(file_path, 'w') as file: + file.writelines(data) + + + +if __name__ == "__main__": + main() diff --git a/tools/setup_shape_data.py b/tools/setup_shape_data.py index b1f00a0269..29f9dd2530 100644 --- a/tools/setup_shape_data.py +++ b/tools/setup_shape_data.py @@ -568,16 +568,27 @@ def post_process(filename): with open(filename, 'w') as f: f.writelines(lines) -def search_files(shape, size): - ignore_files = [''] - directories = ['rel', 'src'] - pattern = re.compile(f'(SECTION_DATA|SECTION_RODATA).*static\s+u8\s+(const\s+)?(\w*{shape}\w*)\[{size}\]', re.I) - +def search_file(target,pattern): file_matches = [] - for directory in directories: - for root, dirs, files in os.walk(directory): + + # if target is a file, search the file + if os.path.isfile(target): + with open(target, 'r') as f: + contents = f.read() + matches = pattern.findall(contents) + if matches: + for match in matches: + # Extract the desired part of the match and append it to the file_matches list + variable_name = match[2] + file_matches.append((target, variable_name)) + return file_matches + print("No matches found in the file.") + return None + # if target is a directory, search all files in the directory + elif os.path.isdir(target): + for root, dirs, files in os.walk(target): for file in files: - if file.endswith('.cpp') and file not in ignore_files: + if file.endswith('.cpp'): filepath = os.path.join(root, file) with open(filepath, 'r') as f: contents = f.read() @@ -587,30 +598,56 @@ def search_files(shape, size): # Extract the desired part of the match and append it to the file_matches list variable_name = match[2] file_matches.append((filepath, variable_name)) + return file_matches + print("Target is neither a file nor a directory.") + return None - return file_matches +def search_files(shape, target, variable_name=None): + """ + Returns a pairing of filename and shape data lines that have not been setup. + If variable_name is not set, the function will attempt to find and setup all variables with the specified shape. + """ + if variable_name is not None: + search_shape = variable_name + else: + search_shape = shape -def run_make_command(): - command = "make all rels -j$(nproc) WINE=~/git/c/wibo/build/wibo" - result = subprocess.run(command, shell=True) + pattern = re.compile(f'(SECTION_DATA|SECTION_RODATA).*static\\s+u8\\s+(const\\s+)?(\\w*{search_shape}\\w*)\\[\\d+\\]', re.I) + return search_file(target,pattern) + +def run_make_command(wibo_path=None, thread_num=1): + cmd = ["make", "all", "rels", f"-j{thread_num}"] + if wibo_path: + cmd.append(f"WINE={wibo_path}") + result = subprocess.run(cmd) if result.returncode != 0: print("Failed to run make command") sys.exit(1) @click.command() -@click.option('--shape', required=True, help='Shape to unpack. Should be on of: triangle, sphere, cylinder or capsule.') -def process_file(shape): - filenames = [] +@click.option('--shape', required=True, help='Shape to unpack. Should be one of: triangle, sphere, cylinder or capsule.') +@click.option('--variable-name', default=None, required=False, help='Name of the variable in the file to transform. If not set, the script will atempt to find and setup all variables with the specified shape.') +@click.option('--target', required=True, type=str, help='Target filename or path where the file to be processed is located.') +@click.option('--wibo-path', default="~/git/c/wibo/build/wibo", help='Path to Wibo.') +@click.option('--thread-num', default=1, type=int, help='Number of threads for compilation.') +def process_file(shape, variable_name, target, wibo_path, thread_num): + """ + Process the specified file(s) and unpack the shape of the variable(s). + """ match shape.lower(): case "cylinder": - filenames = search_files("cyl", 68) + filenames = search_files("cyl", target, variable_name) - for filename in filenames: + if filenames is None: + sys.exit(0) + + for file in filenames: cylinder_data = None - f_name = filename[0] - variable_name = filename[1] - data = fetch_shape_data(f_name, variable_name) + f_name = file[0] + var_name = file[1] + print(f_name) + data = fetch_shape_data(f_name, var_name) if data is not None: cylinder_data = unpack_cylinder_data(data["data"]) @@ -618,9 +655,12 @@ def process_file(shape): print("Updating", f_name) write_cylinder_shape_data(f_name, cylinder_data, variable_name, data["section_rodata_present"], data["start_index"], data["end_index"]) post_process(f_name) - run_make_command() + run_make_command(wibo_path, thread_num) case "sphere": - filenames = search_files("sph", 64) + filenames = search_files("sph", target, variable_name) + + if filenames is None: + sys.exit(0) for filename in filenames: sphere_data = None @@ -636,7 +676,10 @@ def process_file(shape): post_process(f_name) run_make_command() case "triangle": - filenames = search_files("tri", 84) + filenames = search_files("tri", target, variable_name) + + if filenames is None: + sys.exit(0) for filename in filenames: triangle_data = None @@ -652,7 +695,10 @@ def process_file(shape): post_process(f_name) run_make_command() case "capsule": - filenames = search_files("cps", 76) + filenames = search_files("cps", target, variable_name) + + if filenames is None: + sys.exit(0) for filename in filenames: capsule_data = None