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 9eaa69ef6..862d0a6b4 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 761408c9a..5c96c6b56 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 2a5a94116..860114535 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 f6136b8c4..000000000 --- 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 8c67eaa2a..000000000 --- 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 34a6f0ee4..4808acdd0 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 b0eeac56a..000000000 --- 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 1bc15b1ee..000000000 --- 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 a16cb98b1..000000000 --- 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 24ecee8a1..000000000 --- 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 b69f16ea2..000000000 --- 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 cef15e417..000000000 --- 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 c21d05f70..000000000 --- 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 2e673c1d5..000000000 --- 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 04310aa63..000000000 --- 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 201a52465..000000000 --- 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 000000000..40fe2d38e --- /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 000000000..86c16fd93 --- /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 000000000..20a9669d7 --- /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 000000000..e53d132ce --- /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 000000000..d207446e0 --- /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 000000000..853f6d692 --- /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 000000000..06dfd3d66 --- /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 000000000..a44945b36 --- /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 000000000..e66c1aee5 --- /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 000000000..ad6f35a52 --- /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 000000000..ab2f31ba5 --- /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 000000000..72c373172 --- /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 000000000..505978608 --- /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 000000000..07b041915 --- /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 000000000..acdc58d3c --- /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 000000000..f25e50ffb --- /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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≪I{;CgJ2 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⪻bQ$oo^SV`d(Js{=$wm~gVKtQmAVf< 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 Ai2wiq literal 0 HcmV?d00001 diff --git a/include/JSystem/J2DGraph/J2DAnimation.h b/include/JSystem/J2DGraph/J2DAnimation.h index 752fe5b06..8f37c4c7a 100644 --- a/include/JSystem/J2DGraph/J2DAnimation.h +++ b/include/JSystem/J2DGraph/J2DAnimation.h @@ -2,7 +2,6 @@ #define J2DANIMATION_H #include "JSystem/J3DGraphAnimator/J3DAnimation.h" -#include "global.h" typedef struct _GXColor GXColor; typedef struct _GXColorS10 GXColorS10; @@ -20,6 +19,10 @@ enum J2DAnmKind { KIND_VTX_COLOR = 7 }; +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmBase { public: J2DAnmBase() { @@ -42,6 +45,10 @@ public: /* 0xC */ J2DAnmKind mKind; }; // Size: 0x10 +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmVtxColor : public J2DAnmBase { public: J2DAnmVtxColor() { @@ -67,6 +74,10 @@ public: struct J3DTransformInfo; struct J3DTextureSRTInfo; +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmVtxColorKey : public J2DAnmVtxColor { public: J2DAnmVtxColorKey() { @@ -84,6 +95,10 @@ public: /* 0x38 */ s16* mAValues; }; // Size: 0x3C +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmVtxColorFull : public J2DAnmVtxColor { public: J2DAnmVtxColorFull() { @@ -101,6 +116,10 @@ public: /* 0x38 */ u8* mAValues; }; // Size: 0x3C +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmVisibilityFull : public J2DAnmBase { public: J2DAnmVisibilityFull() { @@ -119,6 +138,10 @@ public: /* 0x18 */ u8* mValues; }; // Size: 0x1C +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmTransform : public J2DAnmBase { public: J2DAnmTransform(f32* pScaleValues, s16* pRotationValues, f32* pTranslateValues) { @@ -139,6 +162,10 @@ public: /* 0x18 */ f32* mTranslateValues; }; // Size: 0x1C +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmTransformKey : public J2DAnmTransform { public: J2DAnmTransformKey() : J2DAnmTransform(NULL, NULL, NULL) { @@ -157,6 +184,10 @@ public: /* 0x28 */ J3DAnmTransformKeyTable* mInfoTable; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmTransformFull : public J2DAnmTransform { public: J2DAnmTransformFull() : J2DAnmTransform(NULL, NULL, NULL) { mTableInfo = NULL; } @@ -168,6 +199,10 @@ public: /* 0x24 */ J3DAnmTransformFullTable* mTableInfo; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmTextureSRTKey : public J2DAnmBase { public: J2DAnmTextureSRTKey() { @@ -227,6 +262,10 @@ public: /* 0x7C */ int field_0x7c; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmTexPattern : public J2DAnmBase { public: struct J2DAnmTexPatternTIMGPointer { @@ -265,6 +304,10 @@ public: /* 0x30 */ J2DAnmTexPatternTIMGPointer* mTIMGPtrArray; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmTevRegKey : public J2DAnmBase { public: J2DAnmTevRegKey() { @@ -331,6 +374,10 @@ public: /* 0x70 */ s16* mKAValues; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmColor : public J2DAnmBase { public: J2DAnmColor() { @@ -357,6 +404,10 @@ public: /* 0x20 */ JUTNameTab field_0x20; }; // Size: 0x30 +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmColorKey : public J2DAnmColor { public: J2DAnmColorKey() { @@ -376,6 +427,10 @@ public: /* 0x40 */ J3DAnmColorKeyTable* mInfoTable; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DAnmColorFullInfo { /* 0x00 */ u16 mRMaxFrame; /* 0x02 */ u16 mROffset; @@ -387,6 +442,10 @@ struct J2DAnmColorFullInfo { /* 0x0E */ u16 mAOffset; }; // Size = 0x10 +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmColorFull : public J2DAnmColor { public: J2DAnmColorFull() { diff --git a/include/JSystem/J2DGraph/J2DAnmLoader.h b/include/JSystem/J2DGraph/J2DAnmLoader.h index 73d000fcc..be7b04ec6 100644 --- a/include/JSystem/J2DGraph/J2DAnmLoader.h +++ b/include/JSystem/J2DGraph/J2DAnmLoader.h @@ -3,10 +3,18 @@ #include "JSystem/J2DGraph/J2DAnimation.h" +/** + * @ingroup jsystem-j2d + * + */ struct J2DAnmLoaderDataBase { /* 80308A6C */ static J2DAnmBase* load(void const*); }; +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmLoader { public: virtual void* load(void const*) = 0; @@ -27,6 +35,10 @@ struct J3DAnmVisibilityFullData; struct J3DAnmVtxColorFullData; struct J3DAnmTransformKeyData; +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmKeyLoader_v15 : public J2DAnmLoader { public: /* 80309290 */ J2DAnmKeyLoader_v15(); @@ -48,6 +60,10 @@ public: // /* 0x04 */ void* _4; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DAnmFullLoader_v15 : public J2DAnmLoader { public: /* 80309CE8 */ J2DAnmFullLoader_v15(); diff --git a/include/JSystem/J2DGraph/J2DGrafContext.h b/include/JSystem/J2DGraph/J2DGrafContext.h index ffa54f2e5..f784a5a5e 100644 --- a/include/JSystem/J2DGraph/J2DGrafContext.h +++ b/include/JSystem/J2DGraph/J2DGrafContext.h @@ -4,8 +4,11 @@ #include "JSystem/JGeometry.h" #include "JSystem/JUtility/TColor.h" #include "dolphin/mtx.h" -#include "dolphin/types.h" +/** + * @ingroup jsystem-j2d + * + */ class J2DGrafContext { public: struct Blend { diff --git a/include/JSystem/J2DGraph/J2DManage.h b/include/JSystem/J2DGraph/J2DManage.h index 07d563571..55eae2b1c 100644 --- a/include/JSystem/J2DGraph/J2DManage.h +++ b/include/JSystem/J2DGraph/J2DManage.h @@ -5,6 +5,10 @@ class JSUInputStream; +/** + * @ingroup jsystem-j2d + * + */ struct J2DResReference { /* 0x00 */ u16 mCount; /* 0x02 */ u16 mOffsets[1]; @@ -13,12 +17,20 @@ struct J2DResReference { /* 8030CF44 */ char* getName(u16) const; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DataManageLink { /* 0x00 */ void* mData; /* 0x04 */ char* mName; /* 0x08 */ J2DataManageLink* mNext; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DDataManage { private: /* 0x00 */ J2DataManageLink* mList; diff --git a/include/JSystem/J2DGraph/J2DMatBlock.h b/include/JSystem/J2DGraph/J2DMatBlock.h index 0e699ef72..770986d5b 100644 --- a/include/JSystem/J2DGraph/J2DMatBlock.h +++ b/include/JSystem/J2DGraph/J2DMatBlock.h @@ -3,7 +3,6 @@ #include "JSystem/J2DGraph/J2DTevs.h" #include "JSystem/JUtility/TColor.h" -#include "dolphin/types.h" class JUTFont; class JUTPalette; @@ -13,6 +12,10 @@ struct ResFONT; struct ResTIMG; struct ResTLUT; +/** + * @ingroup jsystem-j2d + * + */ struct J2DGXColorS10 : public GXColorS10 { /* 802F1B90 */ J2DGXColorS10() {} J2DGXColorS10(const J2DGXColorS10& other) { @@ -39,6 +42,10 @@ struct J2DGXColorS10 : public GXColorS10 { struct J2DTevSwapModeInfo; +/** + * @ingroup jsystem-j2d + * + */ class J2DTevBlock { public: /* 802F2A40 */ virtual void initialize(); @@ -88,6 +95,10 @@ public: /* 802EB184 */ virtual ~J2DTevBlock() {} }; +/** + * @ingroup jsystem-j2d + * + */ class J2DTevBlock1 : public J2DTevBlock { public: /* 802EB88C */ J2DTevBlock1(); @@ -155,6 +166,10 @@ private: /* 0x05C */ u8 mUndeleteFlag; }; // Size: 0x60 +/** + * @ingroup jsystem-j2d + * + */ class J2DTevBlock2 : public J2DTevBlock { public: /* 802EC5B8 */ J2DTevBlock2(); @@ -224,6 +239,10 @@ private: /* 0x078 */ u8 mUndeleteFlag; }; // Size: 0x7C +/** + * @ingroup jsystem-j2d + * + */ class J2DTevBlock4 : public J2DTevBlock { public: /* 802ED8BC */ J2DTevBlock4(); @@ -293,6 +312,10 @@ private: /* 0x0B0 */ u8 mUndeleteFlag; }; // Size: 0xB4 +/** + * @ingroup jsystem-j2d + * + */ class J2DTevBlock8 : public J2DTevBlock { public: /* 802EED64 */ J2DTevBlock8(); @@ -363,6 +386,10 @@ private: /* 0x121 */ bool mFontUndeleteFlag; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DTevBlock16 : public J2DTevBlock { public: /* 802F01E4 */ J2DTevBlock16(); @@ -433,6 +460,10 @@ public: /* 0x1B1 */ bool mFontUndeleteFlag; }; // Size: 0x1B4 +/** + * @ingroup jsystem-j2d + * + */ struct J2DAlphaCompInfo { /* 0x0 */ u8 field_0x0; /* 0x1 */ u8 field_0x1; @@ -448,6 +479,10 @@ inline u16 J2DCalcAlphaCmp(s32 param_1, u32 param_2, u32 param_3) { return ((param_1) << 5) | ((param_2 & 0xff) << 3) | (param_3 & 0xff); } +/** + * @ingroup jsystem-j2d + * + */ struct J2DAlphaComp { J2DAlphaComp() { mAlphaCmp = j2dDefaultAlphaCmp; @@ -470,6 +505,10 @@ struct J2DAlphaComp { /* 0x3 */ u8 mRef1; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DBlendInfo { void operator=(J2DBlendInfo const& other) { mType = other.mType; @@ -486,6 +525,10 @@ struct J2DBlendInfo { extern const J2DBlendInfo j2dDefaultBlendInfo; +/** + * @ingroup jsystem-j2d + * + */ struct J2DBlend { J2DBlend() { mBlendInfo = j2dDefaultBlendInfo; } J2DBlend(const J2DBlendInfo& info) { mBlendInfo = info; } @@ -498,6 +541,10 @@ struct J2DBlend { /* 0x0 */ J2DBlendInfo mBlendInfo; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DPEBlock { public: J2DPEBlock() { initialize(); } @@ -514,6 +561,10 @@ private: /* 0x8 */ u8 mDither; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DIndBlock { public: /* 802EB24C */ virtual void initialize(); @@ -530,6 +581,10 @@ public: /* 802EB13C */ virtual ~J2DIndBlock() {} }; +/** + * @ingroup jsystem-j2d + * + */ class J2DIndBlockFull : public J2DIndBlock { public: J2DIndBlockFull() { initialize(); } @@ -554,6 +609,10 @@ private: /* 0x64 */ J2DIndTexCoordScale mTexCoordScale[4]; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DIndBlockNull : public J2DIndBlock { public: J2DIndBlockNull() {} @@ -563,6 +622,10 @@ public: /* 802EB1F0 */ virtual ~J2DIndBlockNull(); }; +/** + * @ingroup jsystem-j2d + * + */ class J2DTexGenBlock { private: /* 0x00 */ u32 mTexGenNum; @@ -585,6 +648,10 @@ public: /* 802EB620 */ virtual ~J2DTexGenBlock(); }; // Size: 0x48 +/** + * @ingroup jsystem-j2d + * + */ struct J2DColorChanInfo { /* 0x0 */ u8 field_0x0; /* 0x0 */ u8 field_0x1; @@ -595,6 +662,10 @@ struct J2DColorChanInfo { inline u8 J2DCalcColorChanID(u8 param_1) { return param_1; } extern const J2DColorChanInfo j2dDefaultColorChanInfo; +/** + * @ingroup jsystem-j2d + * + */ class J2DColorChan { public: /* 802EB280 */ J2DColorChan() { @@ -613,6 +684,10 @@ private: /* 0x0 */ u16 mColorChan; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DColorBlock { private: /* 0x00 */ JUtility::TColor mMatColor[2]; diff --git a/include/JSystem/J2DGraph/J2DMaterial.h b/include/JSystem/J2DGraph/J2DMaterial.h index a7022e49b..4e1e812cd 100644 --- a/include/JSystem/J2DGraph/J2DMaterial.h +++ b/include/JSystem/J2DGraph/J2DMaterial.h @@ -4,6 +4,10 @@ #include "JSystem/J2DGraph/J2DAnimation.h" #include "JSystem/J2DGraph/J2DMatBlock.h" +/** + * @ingroup jsystem-j2d + * + */ class J2DMaterial { public: struct J2DMaterialAnmPointer { diff --git a/include/JSystem/J2DGraph/J2DMaterialFactory.h b/include/JSystem/J2DGraph/J2DMaterialFactory.h index 02936b0ad..506dfa0fd 100644 --- a/include/JSystem/J2DGraph/J2DMaterialFactory.h +++ b/include/JSystem/J2DGraph/J2DMaterialFactory.h @@ -3,8 +3,11 @@ #include "JSystem/J2DGraph/J2DManage.h" #include "JSystem/J2DGraph/J2DMatBlock.h" -#include "dolphin/types.h" +/** + * @ingroup jsystem-j2d + * + */ struct J2DMaterialBlock { u32 field_0x0; u32 field_0x4; @@ -42,6 +45,10 @@ struct J2DBlendInfo; struct J2DColorChanInfo; class J2DMaterial; +/** + * @ingroup jsystem-j2d + * + */ struct J2DIndInitData { u8 field_0x0; u8 field_0x1; @@ -53,6 +60,10 @@ struct J2DIndInitData { u8 field_0xac[0x90]; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DMaterialInitData { u8 field_0x0; u8 field_0x1; @@ -88,6 +99,10 @@ struct J2DTexCoordInfo; struct J2DTexMtxInfo; class JKRArchive; +/** + * @ingroup jsystem-j2d + * + */ class J2DMaterialFactory { public: /* 802F2AD0 */ J2DMaterialFactory(J2DMaterialBlock const&); diff --git a/include/JSystem/J2DGraph/J2DOrthoGraph.h b/include/JSystem/J2DGraph/J2DOrthoGraph.h index 5393ca272..aea5e40f7 100644 --- a/include/JSystem/J2DGraph/J2DOrthoGraph.h +++ b/include/JSystem/J2DGraph/J2DOrthoGraph.h @@ -3,6 +3,10 @@ #include "JSystem/J2DGraph/J2DGrafContext.h" +/** + * @ingroup jsystem-j2d + * + */ class J2DOrthoGraph : public J2DGrafContext { public: /* 802E9670 */ J2DOrthoGraph(); diff --git a/include/JSystem/J2DGraph/J2DPane.h b/include/JSystem/J2DGraph/J2DPane.h index 6e6a605bf..09f8c388f 100644 --- a/include/JSystem/J2DGraph/J2DPane.h +++ b/include/JSystem/J2DGraph/J2DPane.h @@ -35,11 +35,19 @@ enum J2DBasePosition { J2DBasePosition_4, }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DPaneHeader { /* 0x0 */ u32 mKind; /* 0x4 */ u32 mSize; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DPane { public: J2DPane(); diff --git a/include/JSystem/J2DGraph/J2DPicture.h b/include/JSystem/J2DGraph/J2DPicture.h index 2b2f63376..4a47ea6a3 100644 --- a/include/JSystem/J2DGraph/J2DPicture.h +++ b/include/JSystem/J2DGraph/J2DPicture.h @@ -3,7 +3,6 @@ #include "JSystem/J2DGraph/J2DPane.h" #include "JSystem/JUtility/TColor.h" -#include "dolphin/types.h" class J2DMaterial; class JUTPalette; @@ -26,11 +25,19 @@ enum J2DBinding { /* 0xF */ BIND15 = 15, // temp, figure out later }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DPicHeader { /* 0x0 */ u32 mTag; /* 0x4 */ u32 mSize; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DScrnBlockPictureParameter { /* 0x00 */ u16 field_0x0; /* 0x02 */ u16 mMaterialNum; @@ -41,6 +48,10 @@ struct J2DScrnBlockPictureParameter { /* 0x20 */ u32 mCornerColor[4]; }; // Size: 0x30 +/** + * @ingroup jsystem-j2d + * + */ class J2DPicture : public J2DPane { public: /* 802FCFF0 */ virtual ~J2DPicture(); diff --git a/include/JSystem/J2DGraph/J2DPictureEx.h b/include/JSystem/J2DGraph/J2DPictureEx.h index d89416972..bf924d2c3 100644 --- a/include/JSystem/J2DGraph/J2DPictureEx.h +++ b/include/JSystem/J2DGraph/J2DPictureEx.h @@ -3,10 +3,13 @@ #include "JSystem/J2DGraph/J2DPicture.h" #include "JSystem/J2DGraph/J2DTevs.h" -#include "dolphin/types.h" class J2DMaterial; +/** + * @ingroup jsystem-j2d + * + */ class J2DPictureEx : public J2DPicture { public: enum stage_enum {}; diff --git a/include/JSystem/J2DGraph/J2DPrint.h b/include/JSystem/J2DGraph/J2DPrint.h index 4765a991f..126ae750a 100644 --- a/include/JSystem/J2DGraph/J2DPrint.h +++ b/include/JSystem/J2DGraph/J2DPrint.h @@ -3,10 +3,13 @@ #include "JSystem/J2DGraph/J2DTextBox.h" #include "__va_arg.h" -#include "dolphin/types.h" class JUTFont; +/** + * @ingroup jsystem-j2d + * + */ class J2DPrint { public: struct TSize { diff --git a/include/JSystem/J2DGraph/J2DScreen.h b/include/JSystem/J2DGraph/J2DScreen.h index 5dac5685f..29d41577b 100644 --- a/include/JSystem/J2DGraph/J2DScreen.h +++ b/include/JSystem/J2DGraph/J2DScreen.h @@ -8,6 +8,10 @@ class J2DMaterial; class JUTNameTab; +/** + * @ingroup jsystem-j2d + * + */ struct J2DScrnHeader { /* 0x00 */ u32 mTag; /* 0x04 */ u32 mType; @@ -16,6 +20,10 @@ struct J2DScrnHeader { /* 0x10 */ u8 padding[0x10]; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DScrnInfoHeader { /* 0x0 */ u32 mTag; /* 0x4 */ u32 mSize; @@ -24,11 +32,19 @@ struct J2DScrnInfoHeader { /* 0xC */ u32 mColor; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DScrnBlockHeader { /* 0x00 */ u32 mTag; /* 0x04 */ s32 mSize; }; +/** + * @ingroup jsystem-j2d + * + */ class J2DScreen : public J2DPane { public: /* 802F8540 */ virtual ~J2DScreen(); diff --git a/include/JSystem/J2DGraph/J2DTevs.h b/include/JSystem/J2DGraph/J2DTevs.h index 4de6ad07a..214d91fc3 100644 --- a/include/JSystem/J2DGraph/J2DTevs.h +++ b/include/JSystem/J2DGraph/J2DTevs.h @@ -1,10 +1,13 @@ #ifndef J2DTEVS_H #define J2DTEVS_H -#include "dolphin/gx/GXEnum.h" #include "dolphin/gx/GXStruct.h" #include "dolphin/mtx.h" +/** + * @ingroup jsystem-j2d + * + */ struct J2DTextureSRTInfo { /* 0x00 */ f32 field_0x0; /* 0x04 */ f32 field_0x4; @@ -13,6 +16,10 @@ struct J2DTextureSRTInfo { /* 0x10 */ f32 field_0x10; }; // Size: 0x14 +/** + * @ingroup jsystem-j2d + * + */ struct J2DTexMtxInfo { enum { /* 0x0 */ DCC_NONE, @@ -39,6 +46,10 @@ struct J2DTexMtxInfo { extern J2DTexMtxInfo const j2dDefaultTexMtxInfo; +/** + * @ingroup jsystem-j2d + * + */ class J2DTexMtx { public: J2DTexMtx() { mInfo = j2dDefaultTexMtxInfo; } @@ -55,6 +66,10 @@ private: /* 0x24 */ Mtx mTexMtx; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DIndTexOrderInfo { /* 0x0 */ u8 mTexCoordID; /* 0x1 */ u8 mTexMapID; @@ -70,6 +85,10 @@ struct J2DIndTexOrderInfo { extern const J2DIndTexOrderInfo j2dDefaultIndTexOrderNull; +/** + * @ingroup jsystem-j2d + * + */ class J2DIndTexOrder { public: /* 802EB378 */ J2DIndTexOrder() { @@ -84,6 +103,10 @@ private: /* 0x0 */ J2DIndTexOrderInfo mInfo; }; +/** + * @ingroup jsystem-j2d + * + */ struct J2DIndTexMtxInfo { /* 0x00 */ Mtx23 mMtx; /* 0x18 */ s8 mScaleExp; @@ -101,6 +124,10 @@ struct J2DIndTexMtxInfo { extern J2DIndTexMtxInfo const j2dDefaultIndTexMtxInfo; +/** + * @ingroup jsystem-j2d + * + */ class J2DIndTexMtx { public: /* 802EB2E4 */ ~J2DIndTexMtx() {} @@ -118,6 +145,10 @@ private: /* 0x0 */ J2DIndTexMtxInfo mIndTexMtxInfo; }; // Size: 0x1C +/** + * @ingroup jsystem-j2d + * + */ struct J2DIndTexCoordScaleInfo { /* 0x0 */ u8 mScaleS; /* 0x1 */ u8 mScaleT; @@ -133,6 +164,10 @@ struct J2DIndTexCoordScaleInfo { extern const J2DIndTexCoordScaleInfo j2dDefaultIndTexCoordScaleInfo; +/** + * @ingroup jsystem-j2d + * + */ class J2DIndTexCoordScale { public: /* 802EB290 */ ~J2DIndTexCoordScale() {} @@ -148,6 +183,10 @@ private: /* 0x0 */ J2DIndTexCoordScaleInfo mInfo; }; // Size: 0x2 +/** + * @ingroup jsystem-j2d + * + */ struct J2DIndTevStageInfo { /* 0x0 */ u8 mIndStage; /* 0x1 */ u8 mIndFormat; @@ -171,6 +210,10 @@ inline u32 J2DCalcIndTevStage(J2DIndTevStageInfo info) { extern const J2DIndTevStageInfo j2dDefaultIndTevStageInfo; +/** + * @ingroup jsystem-j2d + * + */ class J2DIndTevStage { public: /* 802EA044 */ void load(u8); @@ -197,6 +240,10 @@ private: GXIndTexAlphaSel getAlphaSel() const { return (GXIndTexAlphaSel)((mFlags >> 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 979c9039c..2a64b8349 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 301d11063..ff663f093 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 3eaeecc92..20ab4c1c7 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 a84530658..1c9415ccf 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 98627e90f..4cfa7cfab 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 221fd98d9..ea9fbe2b7 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 093cc448e..fa6971358 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 542d51300..e0b809eb2 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 340a6c816..59375ef26 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 4086f29ce..f0f21a8b2 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 4fa4973b2..4d878d8a4 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 c63a79fae..17557f449 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 fd03736f3..28ad960ed 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 f31cff671..8ae9ff94a 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 6adf2c350..1b6ea8631 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 714de468d..e58be9e6a 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 1a1083699..53e63508c 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 d488d0b70..9634fb3b0 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 fd9fce606..79545e01e 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 e43349aeb..ce01c85b1 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 e045b31ed..7e7b96aae 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 2293fd633..8863f868d 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 222d35a0a..590b95a3f 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 13e097cf3..c019217e5 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 774f303fc..2a2f66710 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 645301981..a7b668bd2 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 6deb7e563..479d674ed 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 5ffe0a73d..0a327c4c4 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 4e5129a3b..f10073696 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 15df300e0..789f52bfa 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 fa8acfb99..45c3bf13e 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 5b6325d10..4ca8c129a 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 f1786865e..251d900aa 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 b44d01208..d6ee20b2d 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 2770e348b..21ec5cd16 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 16afb4848..47ab5f699 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 119490e47..0a6386b29 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 a15172221..f2ea239e2 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 47e6a59a1..f8db9d3a5 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 294784d5e..1b565a069 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 07624b2a0..6bc0b4478 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 f335f37b1..03e1d8952 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 ca0a351fe..469212b89 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 094393322..bc6e1de46 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 05018ba03..81642eeef 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 fd35e583d..c37f80051 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 ebc250efb..d90e85086 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 4182a560a..f1274ceb3 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 84b10883b..dd74c06c3 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 7c0da397d..66daf5927 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 726812f06..fda197b26 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 90b3a3e18..4f7b37e62 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 8616bc7be..a0e5e2b17 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 58dc24b49..107e59945 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 c297ea780..5b9e0969d 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 aa077e053..2e4e66f87 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 04dd028eb..f244b70fe 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 90ba1ebcd..b68f7103e 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 7215dd67d..0688e044e 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 a0fce283d..3ac16d702 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 977bb3de4..cd1b0383a 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 214119284..68e722100 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 ef2982f8c..6f2b545c8 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 0b345f61f..33bd5e7f5 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 e9ef6d3e0..54e5201ab 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 5bf14b286..f579e923e 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 affd991f3..d737eb79a 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 16ab05e36..155c25b94 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 6324d397b..30e1259cf 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 6710da05b..c76511ee5 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 916ceeae8..5408daf19 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 f601cfb17..e38d630c8 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 85e183505..fc4c365be 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 c051e0ffb..b8c21c35f 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 0da67d079..ac7f58c3a 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 22d1347d1..26d43c20d 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 8a5c46655..12379b404 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 89eec89f9..1f20132ff 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 90ead911e..f1f2dbc95 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 900ebe226..1582997db 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 6745a6397..416e1e81f 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 b48dbaea3..d38f32bac 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 15eef47ce..b3e338ee2 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 1b47cc47b..199f8a217 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 647883825..5b7dff784 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 196ee9b14..c951d48f2 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 8555857de..ccd20c395 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 26719245d..26910d9c9 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 583e5905c..4e6f225cb 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 7ff7e8742..83baf7c9b 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 928388b39..86724662d 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 c81e726b3..fd5cc908c 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 37ee315a2..1a4bf5be5 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 4400a2d0f..2d9434210 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 a602c0c68..1b5bed4e4 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 bf00750a5..7f5410527 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 ad14fa5c2..aaf2c0308 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 61afc9ad6..080473abf 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 c3dca05ad..9fa0f2791 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 b6dc7204a..b3c4d2451 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 9aa0e9d42..86fa88f91 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 67e0d7201..7b508b975 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 4a23e2f6f..b9bb6e58c 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 526a45b9f..48c5ebf18 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 753b043e7..17590f426 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 e1b878f12..7a3fa71c6 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 0fb415c98..cb966d8cf 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 27368cdec..ef935112e 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 392be1be5..8ff04ebaa 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 15058145b..e3eea9916 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 6c27494b5..44f3b10d5 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 8cf3213d4..9c1d2d2fb 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 9d815b300..a5eb0b468 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 aed8b707f..a546c5d0b 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 d0e8d876c..13e84d0d1 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 11524afc0..d5eb60448 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 161a667e1..c39721859 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 b8a844f79..ff414d22a 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 29e62f94e..fe12c61c3 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 83333ad96..776998dbe 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 9281ac326..8a4eafafb 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 3e3d91b5d..954c6fd09 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 cf90a526d..5ef7b026f 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 ed9d35a2c..896ddb497 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 b4b9830bc..9103340cd 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 24a88e6d2..961b7eab4 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 9e05be16a..a7a284b46 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 3ea9ae250..7764c5baf 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 24f0ec6c0..9878f7349 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 7a72e6eb8..661148cd2 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 625da6544..d5d213659 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 356b8acd6..5af842f63 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 84d3dfa64..c6794aaae 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 36fbebfc4..8bce73e82 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 ab1532b8e..f14489c98 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 2a2cd07d8..19a122789 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 6cd21e08b..b636820ba 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 66c1e0d00..8ccf715e6 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 99b81f417..9f716cc28 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 445ceb5cd..65a71ac45 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 f241d73a2..8eb2d54af 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 c3fc89fb3..5ef85f5a9 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 46a062490..dacd87ace 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 c4b5a065f..37ba924b7 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 28b3a4327..0ec6471d1 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 0df0e5743..5a231348d 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 2f29e74ac..3c457a110 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 816cda16c..2a1fe7ece 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 b36eb04fc..ebedcc654 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 a88799ca7..b76c46d7b 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 5b3e891bc..a041daf30 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 5f6c44381..47be34de1 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 b204c732b..2820c8109 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 dcb2c2eba..19b3bed71 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 47ea0b2ba..4deeae1c6 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 144d5af9c..1a764b5de 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 bc8d6880b..aee5f3e96 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 d5551cac1..d2602993c 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 df60d405f..b358c70d6 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 742406b8b..d7d1f7584 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 0dc426b56..9728b126e 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 8e5696408..ecdf1767b 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 cc03e765d..9dd8d9abd 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 16051b0dc..0b98b548a 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 1b8c3a88d..c4929f48e 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 5fd0fbc16..e19a516df 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 d0aa9ce5c..cbae2e37c 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 c44a81e2f..761c1d61d 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 2c045ef08..25a9dea78 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 fe1eb57b4..0ef470355 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 4541db53d..efa4dc123 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 d93962dbd..68259f0e2 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 ece097add..bf72ca2ef 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 feb348382..7685f8460 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 c2633d708..d454a2b14 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 d4b683065..062020081 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 f5f4ac270..b2c8307ab 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 c7362afdf..ba1b6bcd4 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 f9429df77..5c6519fb3 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 3ee0a6a16..7c308269a 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 55bd5d71f..b0a1a5c84 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 568731bdb..38a731e69 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 831a79943..1c53ecef7 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 d6c17bddd..56ec079db 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 4a3d297bc..3702cbafa 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 99d94e11e..b38ad82b1 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 097a4fa3d..36e79aa3b 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 8a6b3120c..f5181cbff 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 f55f3217c..b9a02b00b 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 1030b7f2b..2c1727ab2 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 682529e04..d98f16672 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 fd11ee8a7..e8bf44d45 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 3566c5445..72595bc2b 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 806d7cf5d..e99a933b7 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 9d2492248..64381d1c2 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 b1b902e73..09899b8a2 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 9e9011096..f6fe537a7 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 cc4076df3..e68ed1e2a 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 2e60d72ce..759f2b640 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 d2f724085..5147e0211 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 f94050088..72d0b1147 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 be657db09..56f8695e4 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 9139673dc..9f112f2e6 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 d14aaec39..7fa53a07b 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 89e87baaa..729756b52 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 a538a1905..180cfb83f 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 62c12692b..dca001381 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 2a75211bd..8d1a4aa77 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 2ed57f5fd..c0dcde4c7 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 a1f1b82dc..51571963d 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 7e0098445..f25bd80bf 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 86ae43696..b118ef2e9 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 46efbcdfb..8cf1a9578 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 fb8c218c6..7b1f93651 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 773089dc2..4dbc80df6 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 675fb0992..2ccc73ff7 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 76e091574..85e2d664e 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 c96b01e4c..1e51f6c77 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 f133ebb5e..ece10c7fd 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 bbc86ba3e..c776a468e 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 6c5db5633..5914b1077 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 2cf89231d..d4d206fb2 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 e8f1ed76f..eb6c46c43 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 103471ccc..63afb943e 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 dead03570..4a0a0a680 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 c9282c930..1b1ac1c50 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 26c732b92..7911d8a7d 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 8159f236b..d6d557915 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 f96cbe645..25dbfcd69 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 b9e40ee62..d2949e467 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 2789e5cf2..a41a14007 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 4dc1a559c..0e9ac6cd5 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 6a854d64f..be4a58c21 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 609182a92..ddc15b03f 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 84e87cc88..531a00ba9 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 3338404bf..85ea2160b 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 8cdd855ac..5d1a0667f 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 7fbfb54a3..952981df7 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 2fcb15132..e7f2cf9fd 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 5de6f4cf7..7269e622a 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 d08c5c059..5902b44cb 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 bab6da8a5..cc8daad77 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 a5ac66ec6..cbc9de6d0 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 b0bf49d42..1aa4b75a7 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 1705cd3f9..c72b7b4c5 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 a9b89dcb4..54a5f4eb6 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 137de0455..229debe31 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 c815e46df..378ec4ec4 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 8da24f94e..2ccdb8412 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 1365cbc59..1c8d10e8b 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 8d55dd1dc..1a03a3d54 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 8164ed4af..3fca0a4f7 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 165a1c97c..39156b701 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 bca1d8495..b20a9e433 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 357c91f88..27c57b2f8 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 fb8aefc50..d131368b8 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 670ac0efa..1928882ec 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 6aa89af26..52dffbc21 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 540f069e3..4419db89a 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 5a68eca90..3e1d6a802 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 3ebc3b749..670fe8dcf 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 1877088cf..b370e1ad3 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 9ef61a332..ed654979b 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 b310a5fb8..e99aa2e31 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 4d2af60b3..aad90f24b 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 b0023ac8e..60b5ec871 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 eda84da6b..99d61b1e7 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 0afd92a74..663f0ceba 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 5dc439e6e..e0c34ef72 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 81a0232c1..d027ec11b 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 c20c6e630..875ce03fe 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 50ce1de34..942a954c1 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 10dff9c0c..96df637f1 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 af92a947c..d360345c1 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 82fd78a1b..4e04aad1d 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 a93237d33..3edd9ea4f 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 b9b3d3a60..3b0571f22 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 20da7b385..5d8b63d7d 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 f1eaec7e9..709c3ed20 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 fd32d818f..feec7a71e 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 45c4fc84a..55e63d5e2 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 03e0e4369..e0205387e 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 ee70f37bf..e2d3a4255 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 74a8981cd..e50091daf 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 524611c76..bea066a96 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 0001d715f..947489bcb 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 43a8fc102..ddc709c0f 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 19f00e1ca..65d1a4f23 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 4b078a788..ade5531a4 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 84c3e66c0..ebb8b26be 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 f90b4c266..0ab2c6136 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 d03af1227..5e4539d87 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 29e2e4cf8..c68d3c4e0 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 135529fb8..1e7ba6d93 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 26e273079..4841f1e49 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 60a44737d..d2d44c54c 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 1432ff6d7..c90f541bf 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 a58d04c43..e7066588c 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 42e5c090f..d0217c850 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 2fca1198a..08edd37b1 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 f22becbb7..696db6c7b 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 bb524ad0b..84e33420b 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 c823bdca9..f7821c028 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 967fd7137..fd3d20ae9 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 efb2b4938..81ae182ea 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 c88fe408c..45c87a04d 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 be7c86399..46bca9dd3 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 19970cc41..2466d50d1 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 d0be384f4..bba855da9 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 470092a85..80e1d3452 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 f0d89455d..93fc6c4f3 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 475a62a3f..644112e8e 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 70ffc9d0a..64cdab8bc 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 e46d9f007..8b1a131ca 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 dce13b69c..503433579 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 bbd183c09..da870375f 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 3533acc1c..88a685f4e 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 03335419a..761f8807a 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 445f69a43..dd88fcded 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 74b636914..73697193c 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 5b09bec33..5fc0bc432 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 86cd0fb8d..91b31f60c 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 496e8e053..2d07fd53d 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 b8a484dda..669751530 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 4cb4e4feb..1928bfaf7 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 2811bea1e..eeaaa7fa0 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 a543ff0cb..f9d4392d3 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 5579ded9c..7c8310179 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 fdf78b8bb..03cda7612 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 b989d8365..4a58fa9a1 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 9fd473f90..9797efec1 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 d54e7cc6c..ba6ba6adf 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 7ed39d41c..56340601f 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 133fb2097..58032c261 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 5b4e1ad24..3e8d121ee 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 ca8034c1d..4e36b154c 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 0a59b5568..1935b2df5 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 1b05a72d4..a171f0107 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 e2583c16a..3034e94ea 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 a13b62e7d..0a1060d8e 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 d24b27fe4..585455c3b 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 a79636d5d..5fd7fc7f9 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 2a104dfeb..e931f6912 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 478c5e914..fffae02d5 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 28439659d..f5ec332e1 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 a6dad28bc..f1dcc89c7 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 b4e664b85..32e22d0bf 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 5505b6926..7db9cee1c 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 4d3258b43..64c8f822c 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 20867fe1c..d6acaaf20 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 00f05a0d8..7d94c9199 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 7499a900b..dd9597622 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 91eb04141..9ba682be2 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 bc50d898a..f9d969b08 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 e499ac89e..fa3065741 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 7be91af9c..9776ea203 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 f58550297..67f48a538 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 da7563f26..800ec5b62 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 ed235c2a9..b1cb482fd 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 c6f2e3aee..e8c5a76b9 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 8a4668bf0..0a713fbe5 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 01065836e..2b68f413a 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 a3c3c229a..40ed0d557 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 7783021ea..9a901cd44 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 b7021693f..093bf97ed 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 915a55799..ad2881a39 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 d5afb018b..10192cbf8 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 7ff17fa8f..6f80a83a0 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 de2fc677b..b322facb9 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 fe55aadc2..644085ceb 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 c179be44b..a58f13abd 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 546d13404..ba1310cf1 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 92909a093..bfafb2312 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 949034d60..9183de5f1 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 675285a73..5b6eff96e 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 0f2674b71..4852c6f3b 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 7928c90a0..efbb4d2e4 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 e6e85e842..63e5969cc 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 23ea53a4a..97e646885 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 2bbdf1011..2b95af2b2 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 335fb0945..62834464e 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 f753dfa15..e4e8ace7e 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 15c496691..308f0528e 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 343a0c1fd..d7084de8c 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 67695e6d7..330b58f00 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 092bbf150..68889b5d2 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 30e701d80..4a5c5a45a 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 9a486d89c..6c74e78f2 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 899685cac..677d0e86b 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 b07e2de26..bda984531 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 d71011dc2..54c310fc8 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 3ce67dc34..1c57c2049 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 fd1a0bb31..765653929 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 ec26c6047..c25ec28e6 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 94d098f9b..94d3e5055 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 03d2e2a9b..d972f0e43 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 ac1186695..543f9efa1 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 42a845b1d..d72336db5 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 bb231f85c..01c811d26 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 99fe5b0b1..1458c646d 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 e26dc508d..157db473d 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 d9afc5d5a..7bc5edd91 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 b80b5f48e..a10b61933 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 827e6d229..c00285c55 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 661268fed..d3ac5522f 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 b80250e32..738dbc1f7 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 d0548a877..09aea7733 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 f4e03857a..609aee725 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 690be8d2e..e66586e09 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 5864a701b..dcd66535f 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 9837ac142..933bd79f8 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 70277fabb..e09a02c7f 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 371a3cc51..8c5be52c5 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 97fe5fef6..042346444 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 bb456e147..6a1bfae31 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 b5c3b69de..bb08e7d52 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 ce09fb7ed..622b3fb50 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 cbc2fa432..f85015942 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 4b6386d59..ccb670854 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 59aac2fb2..c4db5fdea 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 ce7d1f288..26ee01d77 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 49edda02c..096953219 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 04a612273..5906a28b6 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 5ac9f2759..f167e1f50 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 7c864ae04..efe593f20 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 b007232ba..6c2427e85 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 f9ae983b0..27d58747e 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 102e73964..8545ca665 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 096f2a4a4..0a521eb87 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 2b02eb11d..86771a294 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 65eeed5bc..073d6c12c 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 5391c5477..67a9d12b0 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 405f39275..14a2876b7 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 2124f2663..cb2fabd9e 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 8148b7bc9..350bf297a 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 f947d65e2..bc10c6153 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 b379531a8..037c93264 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 9acb6f300..4b5d4fe26 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 b339acb60..6911a0b97 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 cfb0f8727..f7029f2e0 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 240fdcebe..6997d43c7 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 fa858d76f..1e5174ae3 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 4e446a39f..ad61c9515 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 2b144aaaa..c9c63fa43 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 81419c641..71766d4a2 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 6bca7f112..eafbdabf4 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 3c69dde82..40e20b1b6 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 bc41bf7e6..2e89c8aac 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 74c53c443..0e40f0532 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 f0a092b44..0a076ed05 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 fce7dd35f..cf1b3c105 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 2f792fde8..49d71cc17 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 13ef9cefb..38d91a864 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 d82823ad5..135e8f842 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 4d925ce8e..91eba52b0 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 27459682b..7e1c81c04 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 a5c8c1e39..7de095950 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 111da83bc..897daf799 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 6e5600467..c00a18230 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 6bfb6c774..58b6bae5a 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 f5826358c..2953c3767 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 2b6a0b79a..9ff2adfe2 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 04e3c9671..e438b9289 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 f6af00a7d..0464efc9f 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 660b28f85..963fa5e56 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 f24b3d253..48d8d6cb4 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 ce3b0a4f8..861155616 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 818c35f9b..92be3b93a 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 7d406d982..3241dddc0 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 5a547982b..110f5c6da 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 e65ba81ba..ffd623b44 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 def07c1c3..749c444e5 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 627df03fd..16d98c849 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 db817f41e..6dec3060c 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 2f5272f1a..501906d0c 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 bc1e4a7ec..8cc1ecead 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 7b19a4c87..1243fe935 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 aa22b6051..8ca4e5e4a 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 4db2df949..abb1f2d6f 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 b29668711..d881ad880 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 cf40ef114..3cb12e640 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 36422552f..aa69b1385 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 661302d7d..707efda5d 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 0b1e0c968..881e1c7ea 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 262032bae..d68149730 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 9253943d3..f568a3207 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 a58623d87..50382ef4a 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 b3dfc5d7a..a161f60e1 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 4328f72c3..45f9c0699 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 bdba35c58..9b9246da9 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 604cd2f0d..31078327a 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 60c578a50..85a941e32 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 7776d0dde..3915451bf 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 43598a07a..47aa7f3dd 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 87d195444..91e331da6 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 ba0bda7dc..b8c9910f0 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 cbc18e7f1..41755394e 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 1c277416e..03f56d0c7 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 541ef5017..343c74ce1 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 4df6913b9..414287a63 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 3b7534aa7..bd7e1ab36 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 5a3e38fda..d6d0dfb53 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 3411e49a0..b5472017d 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 ce4d2d4be..46f373cae 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 bca73f648..30e0be54d 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 5937c5d92..8b6b07231 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 9de6c4789..727d1b7b2 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 01542d910..52061bb7d 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 5892330b0..47123b6ad 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 9ff21329f..9b57eb4a8 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 a3fa82a6e..08bd39b54 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 0822de654..04cb3f2a2 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 ea7fd6691..7f65865c1 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 9236ea9c1..be572abd4 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 94a0c0dd3..ed77cfec9 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 a776d6502..c437a167c 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 e3f183850..7abe15fce 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 46db323f8..039d516fe 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 518f75b83..e206ec393 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 ad88723ca..8bb04cf17 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 c0323f8c7..22a88ac9c 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 8bc4ffd43..ae5ea7363 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 08a5f14c1..7b60d7252 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 dc98d093d..f9e12b49c 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 4a3bc6e02..15ef3017d 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 ad4c01591..723a4b542 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 3f9366d1b..7cd7708b0 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 1f34d12e0..44f94c453 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 ef1ca8094..69675110c 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 9ba20dbc8..47e2909b3 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 bb840d0ed..fbe015e46 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 65f73a709..34b7c0100 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 404070509..616fb2271 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 96ba383a9..68bdcaf90 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 321ecd134..4e98f3a3d 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 01dd9e784..a7446ef6f 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 34b3b2223..164426b46 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 3bda5b4d1..c72449988 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 37163395a..a93ee2b9f 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 fd7d22eb4..70672805e 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 62957e17b..53ce241f8 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 0155686d3..76f7a508f 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 dfc26e63b..aed0bc394 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 3451aceff..887c3d1ab 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 57dfefbdd..d0821337f 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 d277490f5..6a77dc43a 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 29704c6aa..ee1c984a9 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 c7aa4d1c9..5bd321277 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 dedd9d03a..04b5fe0da 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 587b4d605..90d1c8399 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 3677844a5..7ca7a532b 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 a82372619..2f6c0fc06 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 2eb1f9bc3..012a31d56 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 340c97f24..81c7d7b42 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 59ac1e675..b6c294f21 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 a7ad2b15a..b417ef8f3 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 484564096..505427919 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 5c8136998..53067ba39 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 3bf026be7..a63729f98 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 32a1da958..5ff475c07 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 b4c1b1e17..620fbaf47 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 2ae022c4b..c66639dc1 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 f7d491855..aceb02aa1 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 f66abe1d4..f171efe9e 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 673f16879..302d0eaf4 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 843a22e46..7c1d81d75 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 5867ebabd..7608d00df 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 43a411952..d2214e5d8 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 2faa427fa..ff3eee1d4 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 b1d7fa09a..dc8e14391 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 3aaea0b73..2b91b6ccd 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 cda892c0e..68fef5591 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 ffd1d4516..6699964bf 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 782a2bf62..f4671583a 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 10328f63e..bfebede57 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 7bed2744f..51b11520b 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 9041033aa..e76c97da2 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 05301d93a..326e504c6 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 e9c2ae8c2..5c40f903f 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 46057741c..829d082ca 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 9fd822ab8..2ed8b202c 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 5c8242656..ac47a167f 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 75dc334a1..c53e9c2f1 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 4380e6742..3b01b05d0 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 0922505e6..8a25948c5 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 3fdf4de8d..4d01ecae4 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 b05a9975d..91207f536 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 a64afb0f2..06b93ecdf 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 67a47304f..f8aca71ef 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 a76c31156..48b5b498b 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 bd4a48eb5..da8c57da1 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 77f0094bc..c179d317c 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 c43d65da4..705250923 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 9a3056872..1c3cab497 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 3c46b5173..5f9ec1f56 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 58718bd60..a42de7765 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 4164d72d6..4a8fa45ff 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 639a27ba4..74e2428c5 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 7dbb86efb..387ddcb32 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 6b8fb9aa8..8d811c472 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 817ecaa85..34acda8c2 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 7c5ceb9a9..9653f0081 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 c5eeb44c5..7a6ef1e32 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 0ff7c35e8..004085b15 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 47c397a0a..40ee2e99b 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 e1adbd51b..51ad477c1 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 5d94e835b..3e106e912 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 59be67fdf..993ab6c30 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 46e8db31a..e478d95ce 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 8b2973bf3..90604ff92 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 0c9c92906..4110d1e7e 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 0e419686e..63c637eff 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 6fb55daf3..ed418a09d 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 7874986fe..d35f1a0f1 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 d25648f74..55e8c5545 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 870ef2140..799c9ec13 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 530942ae8..33c6f907a 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 02249a045..967ad4bc2 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 56c7b52cd..6bd0d4bb7 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 d64504370..6e04421e0 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 6cf4ec5e3..1b750cad1 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 686fbb27e..fd809ec23 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 e8f4c042c..4a74b5d13 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 a36531b5b..b21d5131e 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 a04693760..fd00e444d 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 bd16ca898..826c0dbed 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 d224d9b06..56fd04300 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 74ec8e5ac..d28e0ba3b 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 135a29b18..cb0ed6c77 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 7a571c4c1..c06ce49ca 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 62a533a70..0af7668be 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 7f65db79a..899ecb692 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 1754afff5..852c27b4d 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 ad853d22e..258c0b6d1 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 894f79dd8..a371507f0 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 d5c1405b6..828a738bd 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 b2d537934..e1bc18315 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 3e7acef50..a813a1b7b 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 917edb672..82327d9b8 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 67c2ca1a6..b271fe2c3 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 2d8ddc997..f0cdca374 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 2a9921e41..aa049536f 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 84b488115..48c78e10c 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 451097dd5..ac58c7dc0 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 c8c9b091d..4044cdf60 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 42cfc489f..d928c4ed5 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 527ea32ce..060d87e55 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 d852ec7b5..df18b8389 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 60edda683..a8f89a236 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 c215769d0..20cbc171b 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 106c9ec73..ac0faf813 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 92dec4772..8b563d095 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 b344dee40..d35278eaa 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 d00b503c6..b1dafa6ef 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 ac7304c71..be54b1a30 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 89a1afa77..2452c36bf 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 b8de2969f..ccec52ea7 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 f8721b0aa..81944b0d8 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 a7d8bc8e1..dcd0d10cd 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 073bac8c4..69ee1e577 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 f79efde35..3eb513522 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 8c04a7a66..3534a5bc1 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 cf125fbc9..40b16b119 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 1084f2675..2d5225f03 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 f77508f81..95fb409c5 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 109fd3027..66cfbf711 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 c752cfcf9..250c789a8 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 19b4d1f4c..3ed7767e1 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 8d74d1539..2b7c8a3d6 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 9c601948c..a93069b7a 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 9ed566f29..3da1a6e22 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 0dca0bbc7..8163429e9 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 9cbe077c0..aeda5e55c 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 7d9091f6f..7fc8f9ebe 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 f75be6597..8e683c597 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 e26d898b7..6326120c9 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 24e440b19..8e3a97338 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 f2e732856..9d5c7b973 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 79cfb85f4..b924cb84f 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 9e27a0655..cb11d7dda 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 8864ecc7f..6b6f578e3 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 b9c939809..47d61463d 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 263718159..59f5b121f 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 c60031f4e..19f40c580 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 9ea11c9c4..25d5c8a43 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 4be1ff58d..5c9fd6732 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 30bfd6009..b2c396656 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 7e8acfd7b..10f5b6b2c 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 fefe1eeae..39890480b 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 9f88dfb22..14020078f 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 998dadfc2..f9aaebe3c 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 698fe98da..2092d6c1b 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 55ca12664..0ea1a0c60 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 13f521026..7e5970f53 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 9dea8fad7..9dcbe32de 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 1a7d5a88e..a0e0e97d8 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 a24a33e94..cae59ffca 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 7072f6e3f..b5d1e5b5f 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 bd9eedd63..a6f95394e 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 37c31b017..23cb3d4bd 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 d33ba72f6..af2b9532a 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 02eb2522b..bfe280fa9 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 0fcd38a5f..9229e2544 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 28ef7fbb9..edfb6bef8 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 d36f5a4e1..55d909691 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 bfd8664e7..d3958685f 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 b44dfcfd4..5731c63ef 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 c44448292..a0105eb5f 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 0f1bcec7c..2cb3a2324 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 3f109791b..f63cd758c 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 48f190e15..0d8035e29 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 dd4c57468..487a20488 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 0f9ea60cb..76ba6f43d 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 e5c55fa1a..29a46ec7a 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 45c2d77f6..0f40503ad 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 8489a4ed1..0035690a2 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 249e45696..7e8a91497 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 c5d79f45b..ec2544e89 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 936f06f67..fe7bf8b50 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 26dc04174..184affe16 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 7fa1f8096..c05884de2 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 bcd779b21..4d088342f 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 a721e64e0..87d3bdd67 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 bb593f960..c424dbaa6 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 0ea8f0c09..13d5a7b89 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 f7c2b7cc1..45eedf2d1 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 1bdd4f0fa..ec45c8f61 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 085c40d48..4f8376cbf 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 82152fbc2..1c0492294 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 e673ced4d..88866003e 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 ca142dc1c..46fd3c637 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 2ce2e5c80..7617229c6 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 66b4c008d..4c31c2e11 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 06c1eba03..8100ed795 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 27eeed7cf..affaee7c4 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 94571b4ba..056b45785 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 80c35a49f..37baccec9 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 ab47acc94..da1f3c80c 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 5a24eff00..617de8380 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 75c8ec671..4440b23bb 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 19d3d666d..4447f2cac 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 d7b6a23dd..b99b0dc31 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 5a2c51cc9..20701ac9e 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 2e07cdac9..8fd6ed3ba 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 f1851675e..7e5d2ee34 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 4e4015257..bafdf0fab 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 f280ea683..7df05c119 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 2805ba495..feaeb5ffd 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 fe9ad6fcb..36253e234 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 4505302bf..94d72e908 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 270f9454e..79c5ef420 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 003ddcf0a..2c056d127 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 eb15a0dcb..5896173ef 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 22f795075..9ddf72305 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 37de9b65d..464604e34 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 d1ce61943..731f353d9 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 fefc3f6a0..61e4b8301 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 02ec555c6..e5bfbc032 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 efb88ef53..37c0b9c51 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 7af5401ec..99cadf89a 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 846ade584..daec5a9d6 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 27f2be43b..5008359ec 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 9089c9624..fec194aa2 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 e578303d1..f77cbfe78 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 83e0b4bc9..1249af0bb 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 0762223a1..b08d52ba1 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 1aeb3eec2..07542f97e 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 86e68e212..19deb029c 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 2b045cb34..99a12ce97 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 27ecf3ac6..68bb38efe 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 4c989d77d..8305a80de 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 12b28740f..ed3ac0c1f 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 2c3db4c86..6026b1f7b 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 52c4a1982..2ccf80ae7 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 e55b97deb..7e75a765f 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 706047138..792caedd6 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 59d6fa7ec..669cf200b 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 b05da8234..2996aae9a 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 36e945940..4b4e03f0a 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 c32225200..4a66db16d 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 b3bd3bf34..99a0df898 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 6106681bb..af963de05 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 8c1226147..01cb7673e 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 19afd307a..e836bbba9 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 0df040bb4..61a48db71 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 afba4c3f5..1b14f330b 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 6e1643aed..65c09056a 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 afd89cb68..10963ee1c 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 f50687ecb..ca0698012 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 139712961..d9c6d5c87 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 5a9eb2db2..52ae99d15 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 e32d486f6..9c432737f 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 6fefed478..fcf54a406 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 1a49bc892..2e7487a80 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 823edd966..6af5f9d5f 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 8b151e682..424486393 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 f2a723a0d..09f05e555 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 26e931a7c..e58068c38 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 adcaaf504..64c43fdaf 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 854a4caa9..bc81d42b5 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 5321a9214..77dd6a876 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 dac050865..e0deaf961 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 d5d7eb4b2..8ea563704 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 c23e73348..08be7734a 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 07753bf90..e6c99568d 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 84bc56c4a..16e6d2cb2 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 798ea809b..5eaf9c39d 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 815a9b0f3..081b8e9ff 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 77746d9ed..11db107d9 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 bb8e43354..f07c9c3ea 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 6b191e3a8..f6afe2ad0 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 95c2290ac..3b091b5ff 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 e1b2d806d..f4ce427d0 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 3c2f4bb2d..5ab7ff8b7 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 6401d8ddf..214e67032 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 f00eee18a..ac283bafc 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 bf7b61eb9..b5753d4b3 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 b1843354e..15ec51b2f 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 7c9f33113..2999acc5b 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 1a1a969d1..1ee05d23e 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 5fdfcc75e..32ff2145c 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 22a926dc0..97a8edc2e 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 86b1340f5..f3ad1fd38 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 ad6b8be22..798fe8c03 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 3e8cebbca..6a9491895 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 f062e996b..ffdc7afe9 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 1c18a05c2..72dbc1166 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 c97abbe4e..f7ad1f40b 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 01c00f157..dc8fd54cf 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 7e2bffcb5..554a5f147 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 84993e959..4646e8ee7 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 2ba7b41d4..676bb9283 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 2b2efbff8..d31a4c537 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 fd0b1826c..a4759df87 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 9ddf8907b..14251a814 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 669d04082..8f3f0615a 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 8aed23540..38a1bf231 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 fa0e41c61..8a7f2a9c1 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 b1242c232..ca5e6a51f 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 354cab0d4..dfd2f4c99 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 83f62fa10..bf0c28708 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 91110364a..480b2644b 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 557a9afaa..b700c259b 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 c28b764f9..46d91a547 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 2b9b5cfba..14778153a 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 8a043797c..eccb36fc6 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 3eb72ed72..236139185 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 a7caf0fec..f1254f51e 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 1951bdcb9..f9c67c9ec 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 bc8176b8e..6a7e47b2c 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 a9c8d8830..bf74caa12 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 c2ade04b6..57e967fbb 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 b55dc953c..e1d1217ef 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 c9f1e6c4d..64ca48a4c 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 2bf5048ad..72e394b2f 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 447ee1e8b..7744366c5 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 3d9936c1f..29c2d8d5e 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 b4ab07a85..80aa46255 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 29a5cd217..5f8d55dfa 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 f733bdfbb..d689a87e5 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 5c6635e24..6ef89e6ba 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 11140d83a..16f3b7cbe 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 d8ec12a1f..b60c249fc 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 6bc81de02..24bb4dba3 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 139dbea7b..a7a05f981 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 e2ad04501..4b3f4682c 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 935b425c4..8ca3b43c1 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 8ec494f3c..b4bafb346 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 9ded445c9..7ef216011 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 a7cacf4ee..e2b4a0cad 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 b677fce7e..3a845fffc 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 5b0fd36e3..5143dc372 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 9fa71afb6..fc51d6667 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 3b75c8f8b..902e1af1d 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 a1fafb438..6152f2509 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 4969b55e5..7e0f21d70 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 b405af180..6b45a7847 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 5fb5d7be7..c8e92f3b3 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 dfdb7faf2..ee15405ac 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 9d4facd16..96a1dc18f 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 ffb1e32dd..b5ca07bd3 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 a95887a1b..b6e5cebd9 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 259e29d61..1efcd180f 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 e61d64121..74af59d57 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 c66c09188..89f2dfe32 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 174c94db4..06cde444b 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 9035dc8ca..1c734ac36 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 434cc93ef..604abc8cb 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 89899b3c5..3c1945b35 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 ee9df5cd6..f6058a2b8 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 b93a5ddea..a427e9a03 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 ee9d536f5..7d9f5c4e1 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 be9d65673..6981384a9 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 2f86a8a36..a19d3f788 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 8b1683f99..734fbb340 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 db686e714..4d1ae6556 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 00df251fc..3c8c356f2 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 2d1d981c6..cd7641bfc 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 17f7f5850..6e5835a27 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 909c5c539..e278faf83 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 fc2094f2e..dd68820eb 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 692ff83f0..4c1a65fa3 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 229f057d2..dfacbc35a 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 217333659..affebb524 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 ef7d0042c..798e538b7 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 ddd073965..e8512012e 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 964552e5e..4802adb45 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 13695b1d3..ea07306d4 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 426d9949c..9892bf19e 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 33d563d6c..53e570f54 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 443e2d293..11a82e624 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 403933efb..dcf08b015 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 240ff8ea5..3379dc8f5 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 58d0b59b5..42e9e2e83 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 6e88d6e7d..a5ceb8462 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 b57bdcb92..13e3b5f67 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 869cbd728..4d239e932 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 2d0aa5c4b..04ac3ef3a 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 517e54c8e..a22d3ba83 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 fa6a28ec2..33fac182f 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 a2d43803a..14a28e0fe 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 ca972aff2..829cca1c6 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 4cd550b38..b3ad49db9 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 e4375572e..db5448e8f 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 dd3b4effc..a740d02be 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 5f5ddc960..8b98413ff 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 f34f176d9..9b3dcff2c 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 3ec784b7f..673eb0dff 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 aa5d8a328..1746cbff3 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 85a52c60d..66d2f0485 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 0d0421556..ca84040da 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 9b58cd171..c2051d95d 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 7d5e28c68..9d340233f 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 361ccbe79..06143b987 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 1ac1884ae..36f72fda9 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 cb03de23f..a004bb262 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 1a81326a6..880b5af32 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 be114102c..3b01c179e 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 ce1345ee4..99c43c607 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 895a692fb..e467a5479 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 53ea63ce8..bb19ac621 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 5d5fc9796..8e5a95f48 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 764c23375..78e3e5547 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 af5b98df5..e89ae5996 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 fb26b9326..8556184fc 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 94936d3a0..6604baaf2 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 bcb6aba87..75e9a6954 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 0da5ba2e8..d30b98a6d 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 be552982e..2812d6401 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 f1147f7a1..87991120a 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 dbf144203..f3d45bd2b 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 bce005898..1b311ad3b 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 60e7c19f4..e0457d172 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 f1445172c..e3ca47b94 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 0090dd584..d05fd0c20 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 8e0aeace4..f371d4f6b 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 aa4dc2527..6a9f9a71e 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 df2a3f240..d4c6dfdfc 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 90d226a42..09e89e927 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 bfe494907..185a76201 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 a85707f96..aac4ee751 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 c9ec9ddd4..71e2b01f0 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 f213eda9d..b43a80f13 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 3fc9f5b20..cf6d99250 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 914a2f603..45b03445a 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 8f48109e2..738d638bf 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 2b5717262..b10dd4d47 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 825f08333..d49d50842 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 0ce243505..e668dbce7 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 b232e18c4..d8af7b8d9 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 af9519efb..ce2c22bd3 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 c0225482a..c127152de 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 4da0fdd18..32224fc53 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 07a79873b..dc1be5815 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 486f34b85..26a7e74d1 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 8b85da480..58cda1041 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 1fac6152d..9307a8fa5 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 762a1a0d9..dfc44fa49 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 36c36b5ba..0763d865a 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 c9a445696..1971acbb2 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 d1868c286..2d8869311 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 191ca01d5..84448d981 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 6192cc5f6..3960a9478 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 4966b3b04..fc699e14c 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 ebf81c092..b881a7a82 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 a8d5cc111..c6191fcc4 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 7a90e356e..a03ad2f95 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 ae47ad738..1db0d1b8f 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 d5f5ca8e3..ebbeebd49 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 38001ad71..8474bdf04 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 c58c7b9d8..243000e27 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 8797f7896..5ae326060 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 91db7dcb9..b7edf5f8c 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 651b37196..c8aa66331 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 6b799ac82..687f6ac26 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 6d94ca92f..ab992a345 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 b89805cae..79877b0e5 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 c3ae4031a..196b4b824 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 06a13974b..fab27c6c7 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 d39e6167e..9d252bfed 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 2a5f53851..747af2df8 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 c31bf952a..1627c2702 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 af7f2feed..f4cfe4f32 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 8de89af0e..05621e35c 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 09da15527..326c3319d 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 9afe0a731..ab55f5b95 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 53342cf6c..387df2da7 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 adb1d60f8..9c0910c2b 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 aae12a7a7..a15213048 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 84d0e8794..028f0160d 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 d3a0d1927..c48ccd0a6 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 12f76bc32..440c7bbd2 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 d9aa7dd31..211967e4c 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 5c2e59149..4372747f6 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 16daff381..7237159f3 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 5faf1a901..b32bc1e31 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 ba73ad387..18d508f11 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 a09a4dee1..62a672543 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 5e74fb2ea..d798bf3c7 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 bac34e8a4..877ee172c 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 68cdb5cd9..78bd1f3e1 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 cc16e91a4..cb2d845a4 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 fbd7ba2de..cc6defae7 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 d9064d59c..d0a2124cb 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 d5f871452..8f4e97004 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 f280c9492..3c517d2bd 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 dbf78dcf5..01086b1e2 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 09663e83a..c5f3a0541 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 fd260e94a..d2ca01529 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 348bfb61c..54b6a1595 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 7ac4c8e41..c154637da 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 23f8ec7d5..4eb206fb9 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 24150950e..1dc51cf4c 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 a7324bbf0..7d27986a3 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 fb0de6b9d..4a9b59124 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 22143015f..bbef765ee 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 3634ea19e..eb986b945 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 058e4fd55..a60b993fe 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 c871c7990..15c84b1a1 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 8ce27681d..f9f1bd9b0 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 6508c33b8..50a7017a5 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 b0ad04563..8dd5c267b 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 fcff088d2..181ce77e4 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 5eb705c37..7971da183 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 d0e90f49d..eb22772b1 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 1ea77e997..cc11196ef 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 25ac326ea..0d6512104 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 f7bf4f180..a7985b40f 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 13ded3c53..393ddcde5 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 2ec0d5367..abb9a1f82 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 a824a3ef0..b89fc7856 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 4640d982a..42ad77585 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 abf51e584..2af155e35 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 5fc0544da..9b2a7a2d8 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 0bf5f0073..08fecf3ba 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 4a99d9108..43e07487e 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 9e9eb5ec1..ec13dbfe1 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 6867e5d39..367b674b1 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 acf8f0d8c..70a9b56aa 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 e4c6aa195..3e5498ce5 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 349992744..db2ab2327 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 e786698c5..46227a76f 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 b7a60d200..01fe7a4d8 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 8df53556d..867af0c3c 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 0e4d88f08..50f308d97 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 c039306b8..6319192c9 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 967838b76..8b9124909 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 7f31d0985..d8a917cf5 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 63de249b0..44a9db74b 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 d5c5120ce..64651e9c8 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 164dcba36..40d2e8c86 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 5dda2b8d4..076fe8dac 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 b4052088f..b02055dc4 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 3cde9f420..c839175d2 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 113063b2d..694e3e34e 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 6d950843b..6d460da35 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 d5e0fd7ea..3a45d70ce 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 169e703d5..6ce96e291 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 6e34eb5fb..27e358729 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 7a5e475a8..02bf36e04 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 34654a2e4..38899da3d 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 ff14f4e04..ce48e206b 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 26ed5f523..0f3330748 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 bbbf56420..67397be60 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 1069f9be7..dbc81c261 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 6237305fa..21001af1e 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 038378bcc..6cfa2ee58 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 1b909460a..226f5284a 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 c973b8743..72ff497a2 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 7c34ef645..ac4b83e3e 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 c5b20338e..17c585451 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 34c445719..1e21946d3 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 06ef8483c..9cd044960 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 91924d8cf..e36213a42 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 26930fba2..fc8c3d228 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 4d430fe22..686d5766c 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 c75b9822d..becd3cfbe 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 19b64b53c..a007e80de 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 d78b75f99..d2fc2ef5c 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 bd958130b..88d3fd9f2 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 f708983b8..7a257f03b 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 41df33357..096ac4efd 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 dc14333f4..388924653 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 be3ab9020..b4d2c6e0a 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 2d59f822f..cdf496d14 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 027bac711..aab32657f 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 3c5f40298..58ca5a954 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 b040a1576..cbfdf261f 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 9dbc5fc8f..e25669846 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 30ea35ac4..fa5e6a938 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 ede13e819..75a0a9d42 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 4c3717c88..e5d418a0d 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 3699ae51d..4b51fa685 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 3e7f9500c..a1b43e613 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 cc8b9a58a..544e49f88 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 69732c0a0..25fbb9527 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 a868f467a..8e3f7e044 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 aac0e2d7f..b73269c4e 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 e3aa040a5..e197c8436 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 f6925b1e7..0e2d0cbac 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 126677193..d23e1b441 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 1dec5bb34..2bfcb6948 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 817fb273e..c30c193d0 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 e4ba76534..047564a08 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 1a3c00620..36b4b7390 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 fa25cbb2d..9b07814dc 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 381303342..34d40ba8a 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 56eaab54e..02be7a068 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 245324c32..21a6a5a95 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 39fea2363..42b64701f 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 21ff75dbf..6ead3b85d 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 82d9c231a..11d7f7fff 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 2aaa4c92e..5b635caf8 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 ff1a295fa..9cb650b6f 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 616423aea..4f8758a57 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 cd6400905..0bc71f0b6 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 94daabbda..eafd70ee9 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 ed6eafaf2..8b57a1dee 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 d97e751e7..e98cc93ac 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 596b70c4c..90b2cb60a 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 e32ce29cd..4422eb080 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 54a4adba8..f22fce198 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 005e52cad..2642c8e8e 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 eefee5401..31a0a4190 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 c49e27050..cd568bf9e 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 8a1fdbf32..1910c7516 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 157f2ea81..ec49a9278 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 88bc23a9e..0c1d9b255 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 b54f56870..d8e063c34 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 18a973ba3..90a5ae291 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 18f7b472d..f396e2644 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 6d3306580..48ea72b0d 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 123479d29..1e216c7f6 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 6e0980e45..217f692e8 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 64e960db8..7c43b8d2a 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 1832949b2..e1da2ad3a 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 c9f49dbe9..87261c89c 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 8fb6bb31f..016d28a68 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 126710600..f6cb4dcd1 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 5de784ea6..7a072d86f 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 cf7b27660..a26ca1d9e 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 eddfc0bc7..f1120aa1e 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 f28377dc7..656924ad9 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 2c6814c12..09df496b8 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 593df2df6..3314fd143 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 6df4938eb..31946773b 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 26690e907..908c9fcf7 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 995a2a7e6..1ab8fec3b 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 a9dda1889..82f084c8c 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 f8da5eb56..5c4f5d0c2 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 04d3e72a5..e1f902982 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 01b4c5b8c..843a5aa64 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 61a8765f5..a17640c7f 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 15533b145..fbfbac705 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 82257f118..7c80ae753 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 5b0f6632f..91b556e3c 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 7f5f19b2a..075decfe8 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 ef02ca0ac..01f8f11ad 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 8a7e1cc2a..feec035ae 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 307a3dfa3..6c279eac4 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 19d434729..4fa208140 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 6781915a1..1e260db65 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 dd6927340..39c912ee2 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 7498e258c..1223df3e5 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 c3883e248..8095f5aad 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 c49dc095a..94dd707f6 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 66a062df4..56db6a49b 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 4a070c866..7b02bf929 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 4f07159bb..3576c4c76 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 8c31ea230..7cbf5eec8 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 e6fa30cbf..44b606fd4 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 da2869229..3b8b56ff4 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 258349167..b0274384a 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 c1bf7706c..84939f46d 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 b88cf3f23..e54853b85 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 9958d705d..2e0f544f6 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 000000000..697e65941 --- /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 b1f00a026..29f9dd253 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