tp/src/c/c_dylink.cpp

1025 lines
37 KiB
C++

/**
* c_dylink.cpp
* REL to process name definitions and REL init functions
*/
#include "c/c_dylink.h"
#include "DynamicLink.h"
#include "JSystem/JKernel/JKRArchive.h"
#include "JSystem/JKernel/JKRSolidHeap.h"
#include "MSL_C/string.h"
#include "d/com/d_com_inf_game.h"
#include "d/d_procname.h"
#include "dol2asm.h"
#include "dolphin/types.h"
#include "m_Do/m_Do_ext.h"
//
// Forward References:
//
extern "C" static void cCc_Init__Fv();
extern "C" void cDyl_IsLinked__Fs();
extern "C" void cDyl_Unlink__Fs();
extern "C" void cDyl_LinkASync__Fs();
extern "C" static void cDyl_InitCallback__FPv();
extern "C" void cDyl_InitAsync__Fv();
extern "C" void cDyl_InitAsyncIsDone__Fv();
extern "C" s32 phase_01__7cDylPhsFPv();
extern "C" void phase_02__7cDylPhsFPs();
extern "C" bool phase_03__7cDylPhsFPv();
extern "C" void Link__7cDylPhsFP30request_of_phase_process_classs();
extern "C" void Unlink__7cDylPhsFP30request_of_phase_process_classs();
extern "C" bool getModuleName__24DynamicModuleControlBaseCFv();
extern "C" void __dt__20DynamicModuleControlFv();
extern "C" extern char const* const c_c_dylink__stringBase0;
//
// External References:
//
extern "C" void mDoExt_getArchiveHeap__Fv();
extern "C" void create__20mDoDvdThd_callback_cFPFPv_PvPv();
extern "C" void fopScnM_CreateReq__FssUsUl();
extern "C" void dComLbG_PhaseHandler__FP30request_of_phase_process_classPPFPv_iPv();
extern "C" void __dt__24DynamicModuleControlBaseFv();
extern "C" void link__24DynamicModuleControlBaseFv();
extern "C" void unlink__24DynamicModuleControlBaseFv();
extern "C" void load_async__24DynamicModuleControlBaseFv();
extern "C" void __ct__20DynamicModuleControlFPCc();
extern "C" void initialize__20DynamicModuleControlFv();
extern "C" void becomeCurrentHeap__7JKRHeapFv();
extern "C" void* __nw__FUl();
extern "C" void __dl__FPv();
extern "C" void create__12JKRSolidHeapFUlP7JKRHeapb();
extern "C" void adjustSize__12JKRSolidHeapFv();
extern "C" void getGlbResource__13JKRFileLoaderFPCc();
extern "C" void detachResource__13JKRFileLoaderFPvP13JKRFileLoader();
extern "C" void mount__12JKRFileCacheFPCcP7JKRHeapPCc();
extern "C" void OSSetStringTable(void*);
extern "C" void _savegpr_23();
extern "C" void _restgpr_23();
extern "C" extern void* __vt__20DynamicModuleControl[13];
//
// Declarations:
//
/* 80374640-80375DE8 -00001 17A8+00 1/1 0/0 0/0 .rodata DynamicNameTable */
static DynamicNameTableEntry const DynamicNameTable[757] = {
{PROC_ALLDIE, "d_a_alldie"},
{PROC_Obj_Swpush, "d_a_obj_swpush"},
{PROC_Obj_Swpush2, "d_a_obj_swpush2"},
{PROC_Obj_Swpush5, "d_a_obj_swpush5"},
{PROC_Tag_Gstart, "d_a_tag_gstart"},
{PROC_Obj_Lv6ElevtA, "d_a_obj_lv6elevta"},
{PROC_OBJ_SO, "d_a_obj_so"},
{PROC_Obj_Movebox, "d_a_obj_movebox"},
{PROC_Obj_SwTurn, "d_a_obj_swturn"},
{PROC_Obj_Lv6SwTurn, "d_a_obj_lv6swturn"},
{PROC_OBJ_SEKIZOA, "d_a_obj_sekizoa"},
{PROC_OBJ_GRA, "d_a_obj_gra2"},
{PROC_TAG_GRA, "d_a_tag_gra"},
{PROC_TAG_YAMI, "d_a_tag_yami"},
{PROC_Obj_Ladder, "d_a_obj_ladder"},
{PROC_OBJ_BEF, "d_a_obj_brakeeff"},
{PROC_OBJ_FMOBJ, "d_a_obj_fmobj"},
{PROC_OBJ_LBOX, "d_a_obj_lbox"},
{PROC_OBJ_WEB0, "d_a_obj_web0"},
{PROC_OBJ_WEB1, "d_a_obj_web1"},
{PROC_OBJ_CB, "d_a_obj_cb"},
{PROC_OBJ_MAKI, "d_a_obj_maki"},
{PROC_OBJ_BRG, "d_a_obj_brg"},
{PROC_OBJ_GB, "d_a_obj_gb"},
{PROC_OBJ_GM, "d_a_obj_gm"},
{PROC_OBJ_TOBY, "d_a_obj_toby"},
{PROC_OBJ_TP, "d_a_obj_tp"},
{PROC_TREESH, "d_a_obj_treesh"},
{PROC_Obj_ZDoor, "d_a_obj_zdoor"},
{PROC_Obj_Pillar, "d_a_obj_pillar"},
{PROC_Obj_Cdoor, "d_a_obj_cdoor"},
{PROC_GRDWATER, "d_a_obj_groundwater"},
{PROC_Obj_RotBridge, "d_a_obj_rotBridge"},
{PROC_Obj_MagLift, "d_a_obj_magLift"},
{PROC_Obj_MagLiftRot, "d_a_obj_magLiftRot"},
{PROC_Obj_Lv1Cdl00, "d_a_obj_lv1Candle00"},
{PROC_Obj_Lv1Cdl01, "d_a_obj_lv1Candle01"},
{PROC_Obj_TvCdlst, "d_a_obj_TvCdlst"},
{PROC_Obj_HsTarget, "d_a_obj_hsTarget"},
{PROC_Obj_HeavySw, "d_a_obj_heavySw"},
{PROC_Obj_GoGate, "d_a_obj_goGate"},
{PROC_Obj_TaFence, "d_a_obj_taFence"},
{PROC_Obj_Saidan, "d_a_obj_saidan"},
{PROC_Obj_SpinLift, "d_a_obj_spinLift"},
{PROC_Obj_BmWindow, "d_a_obj_bmWindow"},
{PROC_Obj_RfHole, "d_a_obj_rfHole"},
{PROC_Obj_WaterPillar, "d_a_obj_waterPillar"},
{PROC_Obj_SyRock, "d_a_obj_syRock"},
{PROC_Obj_BsGate, "d_a_obj_bsGate"},
{PROC_Obj_AmiShutter, "d_a_obj_amiShutter"},
{PROC_Obj_WtGate, "d_a_obj_waterGate"},
{PROC_Obj_Lv2Candle, "d_a_obj_lv2Candle"},
{PROC_Obj_TogeTrap, "d_a_obj_togeTrap"},
{PROC_Obj_RotTrap, "d_a_obj_rotTrap"},
{PROC_Obj_SwallShutter, "d_a_obj_sWallShutter"},
{PROC_Obj_IceWall, "d_a_obj_lv5IceWall"},
{PROC_Obj_Lv5SwIce, "d_a_obj_lv5SwIce"},
{PROC_Obj_Lv5FBoard, "d_a_obj_lv5FloorBoard"},
{PROC_Obj_Turara, "d_a_obj_Turara"},
{PROC_Obj_TwGate, "d_a_obj_twGate"},
{PROC_Obj_Digholl, "d_a_obj_digholl"},
{PROC_Obj_Digpl, "d_a_obj_digplace"},
{PROC_Obj_TestCube, "d_a_obj_testcube"},
{PROC_Obj_Kshutter, "d_a_obj_kshutter"},
{PROC_NPC_COACH, "d_a_npc_coach"},
{PROC_NPC_THEB, "d_a_npc_theB"},
{PROC_COACH_FIRE, "d_a_coach_fire"},
{PROC_COACH2D, "d_a_coach_2D"},
{PROC_BALLOON2D, "d_a_balloon_2D"},
{PROC_SKIP2D, "d_a_skip_2D"},
{PROC_Obj_MvStair, "d_a_obj_mvstair"},
{PROC_Obj_Cowdoor, "d_a_obj_cowdoor"},
{PROC_Obj_Swpropeller, "d_a_obj_swpropeller"},
{PROC_Obj_BoomShutter, "d_a_obj_bmshutter"},
{PROC_NPC_KS, "d_a_npc_ks"},
{PROC_Obj_Hfuta, "d_a_obj_hfuta"},
{PROC_Obj_BkDoor, "d_a_obj_bkdoor"},
{PROC_Obj_Cboard, "d_a_obj_cboard"},
{PROC_Obj_MGate, "d_a_obj_mgate"},
{PROC_Obj_Ikada, "d_a_obj_ikada"},
{PROC_Obj_Ice_l, "d_a_obj_ice_l"},
{PROC_Obj_Ice_s, "d_a_obj_ice_s"},
{PROC_Obj_E_CREATE, "d_a_obj_enemy_create"},
{PROC_Obj_Bhbridge, "d_a_obj_bhbridge"},
{PROC_Obj_Kaisou, "d_a_obj_kaisou"},
{PROC_Obj_HHASHI, "d_a_obj_hhashi"},
{PROC_Obj_BHASHI, "d_a_obj_bhashi"},
{PROC_OCTHASHI, "d_a_obj_octhashi"},
{PROC_Obj_THASHI, "d_a_obj_thashi"},
{PROC_Obj_CRVGATE, "d_a_obj_crvgate"},
{PROC_Obj_CRVFENCE, "d_a_obj_crvfence"},
{PROC_Obj_CRVHAHEN, "d_a_obj_crvhahen"},
{PROC_Obj_CRVSTEEL, "d_a_obj_crvsteel"},
{PROC_Obj_CRVLH_UP, "d_a_obj_crvlh_up"},
{PROC_Obj_CRVLH_DW, "d_a_obj_crvlh_down"},
{PROC_Obj_RIVERROCK, "d_a_obj_riverrock"},
{PROC_Obj_DUST, "d_a_obj_dust"},
{PROC_Obj_ITA, "d_a_obj_ita"},
{PROC_Obj_Window, "d_a_obj_window"},
{PROC_Obj_MetalBox, "d_a_obj_metalbox"},
{PROC_Obj_BBox, "d_a_obj_bbox"},
{PROC_OBJ_MSIMA, "d_a_obj_msima"},
{PROC_OBJ_MYOGAN, "d_a_obj_myogan"},
{PROC_B_ZANTS, "d_a_b_zant_sima"},
{PROC_Obj_ChainBlock, "d_a_obj_cblock"},
{PROC_Obj_ChainWall, "d_a_obj_cwall"},
{PROC_Obj_KkrGate, "d_a_obj_kgate"},
{PROC_Obj_RiderGate, "d_a_obj_rgate"},
{PROC_Obj_Onsen, "d_a_obj_onsen"},
{PROC_Obj_Chest, "d_a_obj_chest"},
{PROC_Obj_Bemos, "d_a_obj_bemos"},
{PROC_Obj_RopeBridge, "d_a_obj_rope_bridge"},
{PROC_Obj_WellCover, "d_a_obj_well_cover"},
{PROC_Obj_GraveStone, "d_a_obj_grave_stone"},
{PROC_Obj_ZraRock, "d_a_obj_zra_rock"},
{PROC_Obj_GraRock, "d_a_obj_gra_rock"},
{PROC_Obj_GrzRock, "d_a_obj_grz_rock"},
{PROC_GRA_WALL, "d_a_obj_graWall"},
{PROC_OBJ_ONSEN_FIRE, "d_a_obj_onsenFire"},
{PROC_Obj_Lv6bemos, "d_a_obj_lv6bemos"},
{PROC_Obj_Lv6bemos2, "d_a_obj_lv6bemos2"},
{PROC_Obj_BarDesk, "d_a_obj_barDesk"},
{PROC_Obj_DigSnow, "d_a_obj_digsnow"},
{PROC_Obj_Ytaihou, "d_a_obj_Y_taihou"},
{PROC_Obj_Elevator, "d_a_obj_dmelevator"},
{PROC_Obj_Lv6TogeRoll, "d_a_obj_lv6TogeRoll"},
{PROC_Obj_Lv6TogeTrap, "d_a_obj_lv6TogeTrap"},
{PROC_Obj_Lv6Tenbin, "d_a_obj_lv6Tenbin"},
{PROC_Obj_Lv6SwGate, "d_a_obj_lv6SwGate"},
{PROC_Obj_Lv6Lblock, "d_a_obj_lv6Lblock"},
{PROC_Obj_Lv6ChgGate, "d_a_obj_lv6ChangeGate"},
{PROC_Obj_Lv6FuriTrap, "d_a_obj_lv6FurikoTrap"},
{PROC_Obj_Lv6SzGate, "d_a_obj_lv6SzGate"},
{PROC_Obj_Lv4EdShutter, "d_a_obj_lv4EdShutter"},
{PROC_Obj_Lv4Gate, "d_a_obj_lv4Gate"},
{PROC_Obj_Lv4PoGate, "d_a_obj_lv4PoGate"},
{PROC_Obj_Lv4SlideWall, "d_a_obj_lv4SlideWall"},
{PROC_Obj_Lv4HsTarget, "d_a_obj_lv4HsTarget"},
{PROC_Obj_Lv7PropY, "d_a_obj_lv7PropellerY"},
{PROC_Obj_Lv7BsGate, "d_a_obj_lv7BsGate"},
{PROC_Obj_Lv8OptiLift, "d_a_obj_lv8OptiLift"},
{PROC_Obj_Lv8KekkaiTrap, "d_a_obj_lv8KekkaiTrap"},
{PROC_Obj_Lv8Lift, "d_a_obj_lv8Lift"},
{PROC_Obj_Lv8UdFloor, "d_a_obj_lv8UdFloor"},
{PROC_Obj_Lv9SwShutter, "d_a_obj_lv9SwShutter"},
{PROC_Obj_TobyHouse, "d_a_obj_tobyhouse"},
{PROC_Obj_poCandle, "d_a_obj_poCandle"},
{PROC_Obj_Lv4DigSand, "d_a_obj_lv4digsand"},
{PROC_Obj_FallObj, "d_a_obj_fallobj"},
{PROC_Obj_SmgDoor, "d_a_obj_smgdoor"},
{PROC_Obj_SwLight, "d_a_obj_swLight"},
{PROC_Obj_Avalanche, "d_a_obj_avalanche"},
{PROC_Obj_MirrorScrew, "d_a_obj_mirror_screw"},
{PROC_Obj_MirrorSand, "d_a_obj_mirror_sand"},
{PROC_Obj_MirrorTable, "d_a_obj_mirror_table"},
{PROC_Obj_MirrorChain, "d_a_obj_mirror_chain"},
{PROC_Obj_Mirror6Pole, "d_a_obj_mirror_6pole"},
{PROC_Obj_SwSpinner, "d_a_obj_swspinner"},
{PROC_Obj_TDoor, "d_a_obj_thdoor"},
{PROC_Obj_Lv7Bridge, "d_a_obj_lv7bridge"},
{PROC_Obj_zrTurara, "d_a_obj_zrTurara"},
{PROC_Obj_TakaraDai, "d_a_obj_takaraDai"},
{PROC_Obj_Table, "d_a_obj_table"},
{PROC_Obj_CatDoor, "d_a_obj_catdoor"},
{PROC_Obj_Gake, "d_a_obj_tgake"},
{PROC_CSTAF, "d_a_cstaF"},
{PROC_Obj_Lv4RailWall, "d_a_obj_lv4RailWall"},
{PROC_Obj_Lv4Sand, "d_a_obj_lv4sand"},
{PROC_Obj_PushDoor, "d_a_obj_pdoor"},
{PROC_PushDoor, "d_a_door_push"},
{PROC_Obj_GanonWall2, "d_a_obj_ganonwall2"},
{PROC_Obj_Lv4Bridge, "d_a_obj_lv4bridge"},
{PROC_Obj_Lv4Floor, "d_a_obj_lv4floor"},
{PROC_Tag_Spinner, "d_a_tag_spinner"},
{PROC_Obj_SwHang, "d_a_obj_swhang"},
{PROC_Obj_RotStair, "d_a_obj_rstair"},
{PROC_Obj_MagneArm, "d_a_obj_magne_arm"},
{PROC_Obj_KWheel00, "d_a_obj_kwheel00"},
{PROC_Obj_KWheel01, "d_a_obj_kwheel01"},
{PROC_Obj_Ychndlr, "d_a_obj_lv5ychndlr"},
{PROC_Obj_PRElvtr, "d_a_obj_lv4prelvtr"},
{PROC_Obj_MHasu, "d_a_obj_hasu2"},
{PROC_Obj_YIblltray, "d_a_obj_lv5yiblltray"},
{PROC_Obj_Lv6EGate, "d_a_obj_lv6egate"},
{PROC_Obj_PDtile, "d_a_obj_pdtile"},
{PROC_Obj_PDwall, "d_a_obj_pdwall"},
{PROC_Obj_Lv4PRwall, "d_a_obj_lv4prwall"},
{PROC_Obj_KLift00, "d_a_obj_klift00"},
{PROC_B_OH, "d_a_b_oh"},
{PROC_Obj_Lv4Chan, "d_a_obj_lv4chandelier"},
{PROC_Obj_Lv3R10Saka, "d_a_obj_lv3saka00"},
{PROC_Obj_Lv3Water, "d_a_obj_lv3Water"},
{PROC_Obj_Lv3Water2, "d_a_obj_lv3Water2"},
{PROC_OBJ_LV3WATERB, "d_a_obj_lv3WaterB"},
{PROC_Obj_HBombkoya, "d_a_obj_hbombkoya"},
{PROC_Obj_SZbridge, "d_a_obj_szbridge"},
{PROC_Obj_KakarikoBrg, "d_a_obj_warp_kbrg"},
{PROC_Obj_OrdinBrg, "d_a_obj_warp_obrg"},
{PROC_Obj_BurnBox, "d_a_obj_burnbox"},
{PROC_Obj_KJgjs, "d_a_obj_kjgjs"},
{PROC_OBJ_IHASI, "d_a_obj_ihasi"},
{PROC_Obj_IceBlock, "d_a_obj_iceblock"},
{PROC_Obj_VolcanicBall, "d_a_obj_volcball"},
{PROC_Obj_VolcanicBomb, "d_a_obj_volcbom"},
{PROC_Obj_VolcGnd, "d_a_obj_vground"},
{PROC_Obj_KKanban, "d_a_obj_kkanban"},
{PROC_E_PH, "d_a_e_ph"},
{PROC_NPC_ZRA, "d_a_npc_zra"},
{PROC_Obj_Chandelier, "d_a_obj_chandelier"},
{PROC_Obj_Stopper2, "d_a_obj_stopper2"},
{PROC_DOOR20, "d_a_door_shutter"},
{PROC_Tag_Hinit, "d_a_tag_hinit"},
{PROC_Tag_Hjump, "d_a_tag_hjump"},
{PROC_Tag_AJnot, "d_a_tag_ajnot"},
{PROC_Tag_Hstop, "d_a_tag_hstop"},
{PROC_CANOE, "d_a_canoe"},
{PROC_HORSE, "d_a_horse"},
{PROC_E_WB, "d_a_e_wb"},
{PROC_OBJ_ITO, "d_a_obj_ito"},
{PROC_OBJ_SW, "d_a_obj_sw"},
{PROC_SPINNER, "d_a_spinner"},
{PROC_B_OB, "d_a_b_ob"},
{PROC_KAGO, "d_a_kago"},
{PROC_E_YC, "d_a_e_yc"},
{PROC_B_DS, "d_a_b_ds"},
{PROC_B_DR, "d_a_b_dr"},
{PROC_B_ZANTZ, "d_a_b_zant_mobile"},
{PROC_B_ZANT, "d_a_b_zant"},
{PROC_B_ZANTM, "d_a_b_zant_magic"},
{PROC_TBOX, "d_a_tbox"},
{PROC_TBOX2, "d_a_tbox2"},
{PROC_BOOMERANG, "d_a_boomerang"},
{PROC_MIDNA, "d_a_midna"},
{PROC_NPC_TK, "d_a_npc_tk"},
{PROC_NPC_WORM, "d_a_npc_worm"},
{PROC_PPolamp, "d_a_ppolamp"},
{PROC_BkyRock, "d_a_obj_bky_rock"},
{PROC_HITOBJ, "d_a_hitobj"},
{PROC_EP, "d_a_ep"},
{PROC_COW, "d_a_cow"},
{PROC_PERU, "d_a_peru"},
{PROC_NI, "d_a_ni"},
{PROC_NPC_TKJ2, "d_a_npc_tkj2"},
{PROC_SQ, "d_a_sq"},
{PROC_NPC_SQ, "d_a_npc_sq"},
{PROC_DO, "d_a_do"},
{PROC_NPC_NE, "d_a_npc_ne"},
{PROC_NPC_TR, "d_a_npc_tr"},
{PROC_NPC_LF, "d_a_npc_lf"},
{PROC_OBJ_FOOD, "d_a_obj_food"},
{PROC_OBJ_KI, "d_a_obj_ki"},
{PROC_OBJ_KITA, "d_a_obj_kita"},
{PROC_OBJ_KEY, "d_a_obj_key"},
{PROC_OBJ_KEYHOLE, "d_a_obj_keyhole"},
{PROC_Obj_Lv5Key, "d_a_obj_Lv5Key"},
{PROC_OBJ_LP, "d_a_obj_lp"},
{PROC_OBJ_TATIGI, "d_a_obj_tatigi"},
{PROC_OBJ_ROCK, "d_a_obj_rock"},
{PROC_OBJ_WFLAG, "d_a_obj_wflag"},
{PROC_OBJ_KAGE, "d_a_obj_kage"},
{PROC_OBJ_KANBAN2, "d_a_obj_kanban2"},
{PROC_OBJ_BALLOON, "d_a_obj_balloon"},
{PROC_OBJ_SUISYA, "d_a_obj_suisya"},
{PROC_OBJ_OILTUBO, "d_a_obj_oiltubo"},
{PROC_OBJ_ROTEN, "d_a_obj_roten"},
{PROC_OBJ_SSDRINK, "d_a_obj_ss_drink"},
{PROC_OBJ_SSITEM, "d_a_obj_ss_item"},
{PROC_TAG_SSDRINK, "d_a_tag_ss_drink"},
{PROC_TAG_BTLITM, "d_a_tag_bottle_item"},
{PROC_TAG_LV5SOUP, "d_a_tag_lv5soup"},
{PROC_TAG_MNLIGHT, "d_a_tag_myna_light"},
{PROC_TAG_SHOPCAM, "d_a_tag_shop_camera"},
{PROC_TAG_SHOPITM, "d_a_tag_shop_item"},
{PROC_OBJ_NDOOR, "d_a_obj_ndoor"},
{PROC_OBJ_UDOOR, "d_a_obj_udoor"},
{PROC_OBJ_USAKU, "d_a_obj_usaku"},
{PROC_Obj_SM_DOOR, "d_a_obj_sm_door"},
{PROC_OBJ_BED, "d_a_obj_bed"},
{PROC_OBJ_BOUMATO, "d_a_obj_boumato"},
{PROC_OBJ_ITAMATO, "d_a_obj_itamato"},
{PROC_OBJ_NOUGU, "d_a_obj_nougu"},
{PROC_OBJ_STICK, "d_a_obj_stick"},
{PROC_OBJ_MIE, "d_a_obj_mie"},
{PROC_OBJ_SEKIDOOR, "d_a_obj_sekidoor"},
{PROC_OBJ_SEKIZO, "d_a_obj_sekizo"},
{PROC_OBJ_SMTILE, "d_a_obj_smtile"},
{PROC_NPC_FISH, "d_a_npc_fish"},
{PROC_MG_FISH, "d_a_mg_fish"},
{PROC_FSHOP, "d_a_mg_fshop"},
{PROC_NPC_DU, "d_a_npc_du"},
{PROC_DISAPPEAR, "d_a_disappear"},
{PROC_Obj_Mato, "d_a_obj_mato"},
{PROC_Obj_Flag, "d_a_obj_flag"},
{PROC_Obj_Flag2, "d_a_obj_flag2"},
{PROC_Obj_Flag3, "d_a_obj_flag3"},
{PROC_Obj_GOMIKABE, "d_a_obj_gomikabe"},
{PROC_Obj_Yousei, "d_a_obj_yousei"},
{PROC_Obj_Kabuto, "d_a_obj_kabuto"},
{PROC_Obj_Cho, "d_a_obj_cho"},
{PROC_Obj_Kuw, "d_a_obj_kuwagata"},
{PROC_Obj_Nan, "d_a_obj_nan"},
{PROC_Obj_Dan, "d_a_obj_dan"},
{PROC_Obj_Kam, "d_a_obj_kamakiri"},
{PROC_Obj_Ten, "d_a_obj_ten"},
{PROC_Obj_Ari, "d_a_obj_ari"},
{PROC_Obj_Kag, "d_a_obj_kag"},
{PROC_Obj_Batta, "d_a_obj_batta"},
{PROC_Obj_Tombo, "d_a_obj_tombo"},
{PROC_Obj_Kat, "d_a_obj_katatsumuri"},
{PROC_Obj_H_Saku, "d_a_obj_h_saku"},
{PROC_Obj_Yobikusa, "d_a_obj_yobikusa"},
{PROC_Obj_KazeNeko, "d_a_obj_kazeneko"},
{PROC_Obj_KznkArm, "d_a_obj_kznkarm"},
{PROC_Obj_NamePlate, "d_a_obj_nameplate"},
{PROC_Obj_OnCloth, "d_a_obj_ornament_cloth"},
{PROC_Obj_LndRope, "d_a_obj_laundry_rope"},
{PROC_Obj_ItaRope, "d_a_obj_sakuita_rope"},
{PROC_Obj_Sakuita, "d_a_obj_sakuita"},
{PROC_Obj_Laundry, "d_a_obj_laundry"},
{PROC_WarpBug, "d_a_warp_bug"},
{PROC_Izumi_Gate, "d_a_izumi_gate"},
{PROC_Obj_Fchain, "d_a_obj_fchain"},
{PROC_Obj_Wchain, "d_a_obj_wchain"},
{PROC_Tag_Attp, "d_a_tag_attention"},
{PROC_Obj_Tornado, "d_a_obj_tornado"},
{PROC_Obj_Tornado2, "d_a_obj_tornado2"},
{PROC_Obj_FirePillar, "d_a_obj_firepillar"},
{PROC_Obj_FirePillar2, "d_a_obj_firepillar2"},
{PROC_Obj_InoBone, "d_a_obj_inobone"},
{PROC_Obj_Stopper, "d_a_obj_stopper"},
{PROC_Obj_MHole, "d_a_obj_mhole"},
{PROC_Tag_Magne, "d_a_tag_magne"},
{PROC_Obj_BossWarp, "d_a_obj_bosswarp"},
{PROC_Obj_WoodPendulum, "d_a_obj_wood_pendulum"},
{PROC_Obj_WdStick, "d_a_obj_wdStick"},
{PROC_Obj_StairBlock, "d_a_obj_stairBlock"},
{PROC_Obj_Geyser, "d_a_obj_geyser"},
{PROC_Tag_KtOnFire, "d_a_obj_ktOnFire"},
{PROC_Obj_FireWood, "d_a_obj_fireWood"},
{PROC_Obj_FireWood2, "d_a_obj_fireWood2"},
{PROC_Obj_GpTaru, "d_a_obj_gpTaru"},
{PROC_Obj_OnsenTaru, "d_a_obj_onsenTaru"},
{PROC_Obj_KiPot, "d_a_obj_kiPot"},
{PROC_TBOX_SW, "d_a_tboxSw"},
{PROC_Obj_SwChain, "d_a_obj_swchain"},
{PROC_Obj_WoodenSword, "d_a_obj_wsword"},
{PROC_Obj_StoneMark, "d_a_obj_stoneMark"},
{PROC_Obj_Lv3Candle, "d_a_obj_lv3Candle"},
{PROC_Tag_Lv4Candle, "d_a_obj_lv4CandleTag"},
{PROC_Tag_Lv4CandleDm, "d_a_obj_lv4CandleDemoTag"},
{PROC_Obj_DamCps, "d_a_obj_damCps"},
{PROC_Obj_Smoke, "d_a_obj_smoke"},
{PROC_Obj_WaterFall, "d_a_obj_waterfall"},
{PROC_Obj_ZoraCloth, "d_a_obj_zcloth"},
{PROC_Obj_poFire, "d_a_obj_poFire"},
{PROC_Tag_poFire, "d_a_tag_poFire"},
{PROC_Obj_glowSphere, "d_a_obj_glowSphere"},
{PROC_Tag_LightBall, "d_a_tag_lightball"},
{PROC_SwLBall, "d_a_swLBall"},
{PROC_SwBall, "d_a_swBall"},
{PROC_Obj_WaterEff, "d_a_obj_lv3waterEff"},
{PROC_Tag_RiverBack, "d_a_tag_river_back"},
{PROC_Tag_KagoFall, "d_a_tag_kago_fall"},
{PROC_Tag_Lv2PrChk, "d_a_tag_lv2prchk"},
{PROC_Obj_Lv4Gear, "d_a_obj_lv4gear"},
{PROC_Obj_MasterSword, "d_a_obj_master_sword"},
{PROC_Obj_WoodStatue, "d_a_obj_wood_statue"},
{PROC_Obj_Fan, "d_a_obj_fan"},
{PROC_Obj_IceLeaf, "d_a_obj_iceleaf"},
{PROC_Obj_zrTuraraRc, "d_a_obj_zrTuraraRock"},
{PROC_Tag_RetRoom, "d_a_tag_ret_room"},
{PROC_Obj_WindStone, "d_a_obj_wind_stone"},
{PROC_Tag_WaraHowl, "d_a_tag_wara_howl"},
{PROC_Obj_SCannon, "d_a_obj_scannon"},
{PROC_Obj_SmWStone, "d_a_obj_smw_stone"},
{PROC_Obj_SCannonCrs, "d_a_obj_scannon_crs"},
{PROC_Tag_SnowEff, "d_a_obj_snowEffTag"},
{PROC_Tag_CstaSw, "d_a_tag_CstaSw"},
{PROC_Tag_Lv6CstaSw, "d_a_tag_lv6CstaSw"},
{PROC_Obj_awaPlar, "d_a_obj_bubblePilar"},
{PROC_Obj_poTbox, "d_a_obj_poTbox"},
{PROC_Obj_TimeFire, "d_a_obj_timeFire"},
{PROC_Obj_TMoon, "d_a_obj_tmoon"},
{PROC_Obj_GanonWall, "d_a_obj_ganonwall"},
{PROC_Obj_Prop, "d_a_obj_prop"},
{PROC_CSTATUE, "d_a_cstatue"},
{PROC_Obj_SwBallA, "d_a_obj_swBallA"},
{PROC_Obj_SwBallB, "d_a_obj_swBallB"},
{PROC_Obj_SnowSoup, "d_a_obj_snow_soup"},
{PROC_Obj_Nagaisu, "d_a_obj_nagaisu"},
{PROC_Obj_RCircle, "d_a_obj_rcircle"},
{PROC_Obj_Picture, "d_a_obj_picture"},
{PROC_Tag_SetBall, "d_a_tag_setBall"},
{PROC_Tag_SmkEmt, "d_a_tag_smk_emt"},
{PROC_SwTime, "d_a_swTime"},
{PROC_Obj_HFtr, "d_a_obj_hakai_ftr"},
{PROC_Obj_HBarrel, "d_a_obj_hakai_brl"},
{PROC_Obj_Crystal, "d_a_obj_crystal"},
{PROC_Obj_SCannonTen, "d_a_obj_scannon_ten"},
{PROC_Obj_SwBallC, "d_a_obj_swBallC"},
{PROC_SCENE_EXIT2, "d_a_scene_exit2"},
{PROC_Obj_Hata, "d_a_obj_hata"},
{PROC_Obj_ToaruMaki, "d_a_obj_toaru_maki"},
{PROC_Tag_AttackItem, "d_a_tag_attack_item"},
{PROC_Tag_RmbitSw, "d_a_tag_rmbit_sw"},
{PROC_Obj_Sword, "d_a_obj_sword"},
{PROC_Tag_Spring, "d_a_tag_spring"},
{PROC_Tag_Statue, "d_a_tag_statue_evt"},
{PROC_E_AI, "d_a_e_ai"},
{PROC_E_GS, "d_a_e_gs"},
{PROC_E_GOB, "d_a_e_gob"},
{PROC_E_DD, "d_a_e_dd"},
{PROC_E_DN, "d_a_e_dn"},
{PROC_E_S1, "d_a_e_s1"},
{PROC_E_MF, "d_a_e_mf"},
{PROC_E_SG, "d_a_e_sg"},
{PROC_E_BS, "d_a_e_bs"},
{PROC_E_SF, "d_a_e_sf"},
{PROC_E_SH, "d_a_e_sh"},
{PROC_E_DF, "d_a_e_df"},
{PROC_E_GM, "d_a_e_gm"},
{PROC_E_MD, "d_a_e_md"},
{PROC_E_SM, "d_a_e_sm"},
{PROC_E_SM2, "d_a_e_sm2"},
{PROC_E_ST, "d_a_e_st"},
{PROC_E_ST_LINE, "d_a_e_st_line"},
{PROC_E_SB, "d_a_e_sb"},
{PROC_E_TH, "d_a_e_th"},
{PROC_E_CR, "d_a_e_cr"},
{PROC_E_CR_EGG, "d_a_e_cr_egg"},
{PROC_E_DB, "d_a_e_db"},
{PROC_E_DB_LEAF, "d_a_e_db_leaf"},
{PROC_E_GA, "d_a_e_ga"},
{PROC_E_GB, "d_a_e_gb"},
{PROC_E_HB, "d_a_e_hb"},
{PROC_E_HB_LEAF, "d_a_e_hb_leaf"},
{PROC_E_HZELDA, "d_a_e_hzelda"},
{PROC_E_YD, "d_a_e_yd"},
{PROC_E_YH, "d_a_e_yh"},
{PROC_E_YD_LEAF, "d_a_e_yd_leaf"},
{PROC_E_HM, "d_a_e_hm"},
{PROC_E_TK, "d_a_e_tk"},
{PROC_E_TK2, "d_a_e_tk2"},
{PROC_E_TK_BALL, "d_a_e_tk_ball"},
{PROC_E_RB, "d_a_e_rb"},
{PROC_E_RD, "d_a_e_rd"},
{PROC_E_RDB, "d_a_e_rdb"},
{PROC_E_RDY, "d_a_e_rdy"},
{PROC_E_FM, "d_a_e_fm"},
{PROC_E_FS, "d_a_e_fs"},
{PROC_E_PM, "d_a_e_pm"},
{PROC_E_PO, "d_a_e_po"},
{PROC_E_MB, "d_a_e_mb"},
{PROC_E_MK, "d_a_e_mk"},
{PROC_E_MM, "d_a_e_mm"},
{PROC_E_FZ, "d_a_e_fz"},
{PROC_E_ZS, "d_a_e_zs"},
{PROC_E_KK, "d_a_e_kk"},
{PROC_E_HP, "d_a_e_hp"},
{PROC_E_ZH, "d_a_e_zh"},
{PROC_E_ZM, "d_a_e_zm"},
{PROC_E_PZ, "d_a_e_pz"},
{PROC_E_FB, "d_a_e_fb"},
{PROC_E_FK, "d_a_e_fk"},
{PROC_E_MS, "d_a_e_ms"},
{PROC_E_NEST, "d_a_e_nest"},
{PROC_E_NZ, "d_a_e_nz"},
{PROC_E_BA, "d_a_e_ba"},
{PROC_E_BU, "d_a_e_bu"},
{PROC_E_BUG, "d_a_e_bug"},
{PROC_E_BEE, "d_a_e_bee"},
{PROC_E_IS, "d_a_e_is"},
{PROC_E_KG, "d_a_e_kg"},
{PROC_E_KR, "d_a_e_kr"},
{PROC_E_SW, "d_a_e_sw"},
{PROC_E_GE, "d_a_e_ge"},
{PROC_Tag_WatchGe, "d_a_tag_watchge"},
{PROC_E_YM, "d_a_e_ym"},
{PROC_E_YM_TAG, "d_a_e_ym_tag"},
{PROC_E_YMB, "d_a_e_ymb"},
{PROC_Tag_FWall, "d_a_tag_firewall"},
{PROC_Tag_WaterFall, "d_a_tag_waterfall"},
{PROC_E_YK, "d_a_e_yk"},
{PROC_E_YR, "d_a_e_yr"},
{PROC_E_YG, "d_a_e_yg"},
{PROC_E_HZ, "d_a_e_hz"},
{PROC_E_WS, "d_a_e_ws"},
{PROC_E_OC, "d_a_e_oc"},
{PROC_E_OT, "d_a_e_ot"},
{PROC_E_DT, "d_a_e_dt"},
{PROC_E_BG, "d_a_e_bg"},
{PROC_E_OctBg, "d_a_e_oct_bg"},
{PROC_DR, "d_a_L7demo_dr"},
{PROC_L7lowDr, "d_a_L7low_dr"},
{PROC_L7ODR, "d_a_L7op_demo_dr"},
{PROC_E_TT, "d_a_e_tt"},
{PROC_E_DK, "d_a_e_dk"},
{PROC_E_VT, "d_a_e_vt"},
{PROC_E_WW, "d_a_e_ww"},
{PROC_E_GI, "d_a_e_gi"},
{PROC_B_BH, "d_a_b_bh"},
{PROC_B_BQ, "d_a_b_bq"},
{PROC_B_GM, "d_a_b_gm"},
{PROC_B_GND, "d_a_b_gnd"},
{PROC_B_GO, "d_a_b_go"},
{PROC_B_OH2, "d_a_b_oh2"},
{PROC_B_YO, "d_a_b_yo"},
{PROC_B_YOI, "d_a_b_yo_ice"},
{PROC_B_TN, "d_a_b_tn"},
{PROC_B_GG, "d_a_b_gg"},
{PROC_B_DRE, "d_a_b_dre"},
{PROC_B_MGN, "d_a_b_mgn"},
{PROC_E_WAP, "d_a_e_warpappear"},
{PROC_Obj_SmallKey, "d_a_obj_smallkey"},
{PROC_Obj_Kantera, "d_a_obj_kantera"},
{PROC_Obj_LifeContainer, "d_a_obj_life_container"},
{PROC_Obj_Shield, "d_a_obj_shield"},
{PROC_Demo_Item, "d_a_demo_item"},
{PROC_ShopItem, "d_a_shop_item"},
{PROC_Obj_Drop, "d_a_obj_drop"},
{PROC_OBJ_RW, "d_a_obj_rw"},
{PROC_NBOMB, "d_a_nbomb"},
{PROC_TAG_CSW, "d_a_tag_csw"},
{PROC_TAG_QS, "d_a_tag_qs"},
{PROC_HOZELDA, "d_a_hozelda"},
{PROC_SWC00, "d_a_swc00"},
{PROC_KNOB20, "d_a_door_knob00"},
{PROC_DBDOOR, "d_a_door_dbdoor00"},
{PROC_BOSS_DOOR, "d_a_door_boss"},
{PROC_L1BOSS_DOOR, "d_a_door_bossL1"},
{PROC_L1MBOSS_DOOR, "d_a_door_mbossL1"},
{PROC_L5BOSS_DOOR, "d_a_door_bossL5"},
{PROC_DSHUTTER, "d_a_dshutter"},
{PROC_SPIRAL_DOOR, "d_a_door_spiral"},
{PROC_Tag_ChgRestart, "d_a_tag_chgrestart"},
{PROC_Tag_Restart, "d_a_tag_setrestart"},
{PROC_ANDSW, "d_a_andsw"},
{PROC_ANDSW2, "d_a_andsw2"},
{PROC_MYNA, "d_a_myna"},
{PROC_NPC_GND, "d_a_npc_gnd"},
{PROC_NPC_GRA, "d_a_npc_gra"},
{PROC_NPC_GRC, "d_a_npc_grc"},
{PROC_NPC_GRD, "d_a_npc_grd"},
{PROC_NPC_GRM, "d_a_npc_grm"},
{PROC_NPC_GRMC, "d_a_npc_grmc"},
{PROC_NPC_GRO, "d_a_npc_gro"},
{PROC_NPC_GRR, "d_a_npc_grr"},
{PROC_NPC_GRS, "d_a_npc_grs"},
{PROC_NPC_GRZ, "d_a_npc_grz"},
{PROC_NPC_YAMID, "d_a_npc_yamid"},
{PROC_NPC_YAMIT, "d_a_npc_yamit"},
{PROC_NPC_YAMIS, "d_a_npc_yamis"},
{PROC_NPC_BLUENS, "d_a_npc_blue_ns"},
{PROC_NPC_KAKASHI, "d_a_npc_kakashi"},
{PROC_NPC_KDK, "d_a_npc_kdk"},
{PROC_NPC_ARU, "d_a_npc_aru"},
{PROC_NPC_BANS, "d_a_npc_bans"},
{PROC_NPC_BESU, "d_a_npc_besu"},
{PROC_NPC_BOU, "d_a_npc_bou"},
{PROC_NPC_BOU_S, "d_a_npc_bouS"},
{PROC_NPC_CLERKA, "d_a_npc_clerka"},
{PROC_NPC_CLERKB, "d_a_npc_clerkb"},
{PROC_NPC_CLERKT, "d_a_npc_clerkt"},
{PROC_NPC_WRESTLER, "d_a_npc_wrestler"},
{PROC_Tag_Arena, "d_a_tag_arena"},
{PROC_Tag_Instruction, "d_a_tag_instruction"},
{PROC_NPC_DOC, "d_a_npc_doc"},
{PROC_NPC_GWOLF, "d_a_npc_gwolf"},
{PROC_NPC_LEN, "d_a_npc_len"},
{PROC_NPC_LUD, "d_a_npc_lud"},
{PROC_NPC_FAIRY_SEIREI, "d_a_npc_fairy_seirei"},
{PROC_NPC_FAIRY, "d_a_npc_fairy"},
{PROC_NPC_HANJO, "d_a_npc_hanjo"},
{PROC_NPC_HENNA, "d_a_npc_henna"},
{PROC_NPC_HENNA0, "d_a_npc_henna0"},
{PROC_NPC_HOZ, "d_a_npc_hoz"},
{PROC_NPC_JAGAR, "d_a_npc_jagar"},
{PROC_NPC_KKRI, "d_a_npc_kkri"},
{PROC_NPC_KN, "d_a_npc_kn"},
{PROC_KN_BULLET, "d_a_obj_knBullet"},
{PROC_NPC_KNJ, "d_a_npc_knj"},
{PROC_NPC_KOLIN, "d_a_npc_kolin"},
{PROC_NPC_KOLINB, "d_a_npc_kolinb"},
{PROC_NPC_KYURY, "d_a_npc_kyury"},
{PROC_NPC_MARO, "d_a_npc_maro"},
{PROC_NPC_MIDP, "d_a_npc_midp"},
{PROC_NPC_MOI, "d_a_npc_moi"},
{PROC_NPC_RACA, "d_a_npc_raca"},
{PROC_NPC_SARU, "d_a_npc_saru"},
{PROC_NPC_SEIB, "d_a_npc_seib"},
{PROC_NPC_SEIC, "d_a_npc_seic"},
{PROC_NPC_SEID, "d_a_npc_seid"},
{PROC_NPC_SEIRA, "d_a_npc_seira"},
{PROC_NPC_SERA2, "d_a_npc_seira2"},
{PROC_NPC_SEIREI, "d_a_npc_seirei"},
{PROC_NPC_SHAMAN, "d_a_npc_shaman"},
{PROC_NPC_SMARO, "d_a_npc_shop_maro"},
{PROC_NPC_SOLA, "d_a_npc_sola"},
{PROC_NPC_TARO, "d_a_npc_taro"},
{PROC_NPC_PACHI_BESU, "d_a_npc_pachi_besu"},
{PROC_NPC_PACHI_TARO, "d_a_npc_pachi_taro"},
{PROC_NPC_PACHI_MARO, "d_a_npc_pachi_maro"},
{PROC_TAG_PATI, "d_a_tag_pachi"},
{PROC_NPC_THE, "d_a_npc_the"},
{PROC_NPC_TKJ, "d_a_npc_tkj"},
{PROC_NPC_TKS, "d_a_npc_tks"},
{PROC_NPC_TKC, "d_a_npc_tkc"},
{PROC_OBJ_TKS, "d_a_obj_tks"},
{PROC_NPC_TOBY, "d_a_npc_toby"},
{PROC_NPC_URI, "d_a_npc_uri"},
{PROC_NPC_YELIA, "d_a_npc_yelia"},
{PROC_NPC_YKM, "d_a_npc_ykm"},
{PROC_NPC_YKW, "d_a_npc_ykw"},
{PROC_NPC_ZANB, "d_a_npc_zanb"},
{PROC_NPC_ZANT, "d_a_npc_zant"},
{PROC_NPC_ZELDA, "d_a_npc_zelda"},
{PROC_NPC_ZELR, "d_a_npc_zelR"},
{PROC_NPC_ZELRO, "d_a_npc_zelRo"},
{PROC_OBJ_ZRAFREEZE, "d_a_obj_zra_freeze"},
{PROC_NPC_ZRC, "d_a_npc_zrc"},
{PROC_NPC_ZRZ, "d_a_npc_zrz"},
{PROC_ZRA_MARK, "d_a_obj_zraMark"},
{PROC_MYNA2, "d_a_npc_myna2"},
{PROC_TAG_MYNA2, "d_a_tag_myna2"},
{PROC_NPC_CD3, "d_a_npc_cdn3"},
{PROC_Tag_Schedule, "d_a_tag_schedule"},
{PROC_Tag_Escape, "d_a_tag_escape"},
{PROC_NPC_CHAT, "d_a_npc_chat"},
{PROC_NPC_SOLDIERa, "d_a_npc_soldierA"},
{PROC_NPC_SOLDIERb, "d_a_npc_soldierB"},
{PROC_PASSER_MNG, "d_a_passer_mng"},
{PROC_NPC_PASSER, "d_a_npc_passer"},
{PROC_NPC_PASSER2, "d_a_npc_passer2"},
{PROC_NPC_POST, "d_a_npc_post"},
{PROC_NPC_POUYA, "d_a_npc_pouya"},
{PROC_FORMATION_MNG, "d_a_formation_mng"},
{PROC_NPC_FGUARD, "d_a_npc_fguard"},
{PROC_GUARD_MNG, "d_a_guard_mng"},
{PROC_TAG_GUARD, "d_a_tag_guard"},
{PROC_NPC_GUARD, "d_a_npc_guard"},
{PROC_NPC_ASH, "d_a_npc_ash"},
{PROC_NPC_ASHB, "d_a_npc_ashB"},
{PROC_NPC_SHAD, "d_a_npc_shad"},
{PROC_NPC_RAFREL, "d_a_npc_rafrel"},
{PROC_NPC_MOIR, "d_a_npc_moir"},
{PROC_NPC_IMPAL, "d_a_npc_impal"},
{PROC_NPC_SHOE, "d_a_npc_shoe"},
{PROC_NPC_DOORBOY, "d_a_npc_doorboy"},
{PROC_NPC_PRAYER, "d_a_npc_prayer"},
{PROC_NPC_KASIHANA, "d_a_npc_kasi_hana"},
{PROC_NPC_KASIKYU, "d_a_npc_kasi_kyu"},
{PROC_NPC_KASIMICH, "d_a_npc_kasi_mich"},
{PROC_NPC_DRSOL, "d_a_npc_drainSol"},
{PROC_NPC_CHIN, "d_a_npc_chin"},
{PROC_NPC_INS, "d_a_npc_ins"},
{PROC_NPC_SHOP0, "d_a_npc_shop0"},
{PROC_NPC_MK, "d_a_npc_mk"},
{PROC_NPC_P2, "d_a_npc_p2"},
{PROC_KYTAG00, "d_a_kytag00"},
{PROC_KYTAG01, "d_a_kytag01"},
{PROC_KYTAG02, "d_a_kytag02"},
{PROC_KYTAG03, "d_a_kytag03"},
{PROC_KYTAG04, "d_a_kytag04"},
{PROC_KYTAG05, "d_a_kytag05"},
{PROC_KYTAG06, "d_a_kytag06"},
{PROC_KYTAG07, "d_a_kytag07"},
{PROC_KYTAG08, "d_a_kytag08"},
{PROC_KYTAG09, "d_a_kytag09"},
{PROC_KYTAG10, "d_a_kytag10"},
{PROC_KYTAG11, "d_a_kytag11"},
{PROC_KYTAG12, "d_a_kytag12"},
{PROC_KYTAG13, "d_a_kytag13"},
{PROC_KYTAG14, "d_a_kytag14"},
{PROC_KYTAG15, "d_a_kytag15"},
{PROC_KYTAG16, "d_a_kytag16"},
{PROC_KYTAG17, "d_a_kytag17"},
{PROC_Ykgr, "d_a_ykgr"},
{PROC_TALK, "d_a_talk"},
{PROC_Obj_Crope, "d_a_obj_crope"},
{PROC_Obj_Bombf, "d_a_obj_bombf"},
{PROC_Obj_BkLeaf, "d_a_obj_bk_leaf"},
{PROC_Tag_Mhint, "d_a_tag_mhint"},
{PROC_Tag_Mmsg, "d_a_tag_mmsg"},
{PROC_Tag_Mwait, "d_a_tag_mwait"},
{PROC_Tag_Mstop, "d_a_tag_mstop"},
{PROC_Tag_Stream, "d_a_tag_stream"},
{PROC_Tag_Sppath, "d_a_tag_sppath"},
{PROC_Tag_Wljump, "d_a_tag_wljump"},
{PROC_Tag_TWGate, "d_a_tag_TWgate"},
{PROC_Tag_Lv6Gate, "d_a_tag_Lv6Gate"},
{PROC_Tag_Lv7Gate, "d_a_tag_Lv7Gate"},
{PROC_Tag_Lv8Gate, "d_a_tag_Lv8Gate"},
{PROC_Tag_TheBHint, "d_a_tag_theB_hint"},
{PROC_Tag_Assist, "d_a_tag_assistance"},
{PROC_DEMO00, "d_a_demo00"},
{PROC_TAG_CAMERA, "d_a_tag_camera"},
{PROC_TAG_CHKPOINT, "d_a_tag_chkpoint"},
{PROC_TAG_EVENT, "d_a_tag_event"},
{PROC_TAG_EVT, "d_a_tag_evt"},
{PROC_TAG_TELOP, "d_a_tag_telop"},
{PROC_TAG_HOWL, "d_a_tag_howl"},
{PROC_TAG_MSG, "d_a_tag_msg"},
{PROC_TAG_LANTERN, "d_a_tag_lantern"},
{PROC_Tag_Mist, "d_a_tag_mist"},
{PROC_DMIDNA, "d_a_dmidna"},
{PROC_VRBOX, "d_a_vrbox"},
{PROC_VRBOX2, "d_a_vrbox2"},
{PROC_BG, "d_a_bg"},
{PROC_SET_BG_OBJ, "d_a_set_bgobj"},
{PROC_BG_OBJ, "d_a_bg_obj"},
{PROC_MIRROR, "d_a_mirror"},
{PROC_MOVIE_PLAYER, "d_a_movie_player"},
{PROC_TITLE, "d_a_title"},
{PROC_FR, "d_a_fr"},
{PROC_ECONT, "d_a_econt"},
{PROC_MG_ROD, "d_a_mg_rod"},
{PROC_E_ARROW, "d_a_e_arrow"},
{PROC_BULLET, "d_a_bullet"},
{PROC_SWHIT0, "d_a_swhit0"},
{PROC_E_TH_BALL, "d_a_e_th_ball"},
{PROC_TAG_EVTAREA, "d_a_tag_evtarea"},
{PROC_TAG_EVTMSG, "d_a_tag_evtmsg"},
{PROC_TAG_KMSG, "d_a_tag_kmsg"},
{PROC_TAG_PUSH, "d_a_tag_push"},
{PROC_E_MK_BO, "d_a_e_mk_bo"},
{PROC_E_MM_MT, "d_a_e_mm_mt"},
{PROC_OBJ_KBOX, "d_a_obj_kbox"},
{PROC_OBJ_FW, "d_a_obj_fw"},
{PROC_B_GOS, "d_a_b_gos"},
{PROC_OBJ_YSTONE, "d_a_obj_ystone"},
{PROC_MANT, "d_a_mant"},
{PROC_CROD, "d_a_crod"},
{PROC_OBJ_PLEAF, "d_a_obj_pleaf"},
{PROC_OBJ_KBACKET, "d_a_obj_kbacket"},
{PROC_OBJ_YBAG, "d_a_obj_yel_bag"},
{PROC_OBJ_PUMPKIN, "d_a_obj_pumpkin"},
{PROC_OBJ_AUTOMATA, "d_a_obj_automata"},
{PROC_OBJ_GADGET, "d_a_obj_gadget"},
{PROC_OBJ_KAGO, "d_a_obj_kago"},
{PROC_Obj_Carry, "d_a_obj_carry"},
{PROC_Obj_Stone, "d_a_obj_stone"},
{PROC_OBJ_HB, "d_a_obj_hb"},
{PROC_NPC_INKO, "d_a_npc_inko"},
{PROC_BD, "d_a_bd"},
{PROC_Obj_Eff, "d_a_obj_eff"},
{PROC_E_BI, "d_a_e_bi"},
{PROC_E_BI_LEAF, "d_a_e_bi_leaf"},
{PROC_START_AND_GOAL, "d_a_startAndGoal"},
{PROC_NPC_DF, "d_a_npc_df"},
{PROC_ARROW, "d_a_arrow"},
{PROC_PATH_LINE, "d_a_path_line"},
{PROC_TAG_ALLMATO, "d_a_tag_allmato"},
{PROC_Obj_Timer, "d_a_obj_timer"},
{PROC_SCENE_EXIT, "d_a_scene_exit"},
{PROC_SUSPEND, "d_a_suspend"},
{PROC_GRASS, "d_a_grass"},
{0xFFFF, NULL},
};
/* 803F0F50-803F1BB0 01DC70 0C60+00 4/4 0/0 0/0 .bss DMC */
static DynamicModuleControl* DMC[0x318];
/* 80450CA8-80450CAC 0001A8 0004+00 1/1 0/0 0/0 .sbss None */
static bool DMC_initialized;
/* 800183DC-80018544 012D1C 0168+00 1/1 0/0 0/0 .text cCc_Init__Fv */
static int cCc_Init() {
JKRHeap* arcHeap = mDoExt_getArchiveHeap();
JKRSolidHeap* heap = JKRSolidHeap::create(0x8820, arcHeap, false);
JKRHeap* prev = heap->becomeCurrentHeap();
memset(&DMC, 0, sizeof(DMC));
for (int i = 0; i < ARRAY_SIZE(DynamicNameTable); i++) {
const DynamicNameTableEntry* d = &DynamicNameTable[i];
if (d->name != NULL) {
for (int j = 0; j < ARRAY_SIZE(DMC); j++) {
if (DMC[j] != NULL) {
if (!strcmp(d->name, DMC[j]->getModuleName())) {
DMC[d->mKey] = DMC[j];
break;
}
}
}
if (DMC[d->mKey] == NULL) {
DMC[d->mKey] = new DynamicModuleControl(d->name);
}
}
}
heap->adjustSize();
prev->becomeCurrentHeap();
DMC_initialized = true;
return 1;
}
/* 80018544-8001857C 012E84 0038+00 0/0 1/1 0/0 .text cDyl_IsLinked__Fs */
BOOL cDyl_IsLinked(s16 i_ProfName) {
if (DMC[i_ProfName] != NULL) {
return DMC[i_ProfName]->isLinked();
}
return true;
}
/* 8001857C-800185C0 012EBC 0044+00 1/1 1/1 0/0 .text cDyl_Unlink__Fs */
BOOL cDyl_Unlink(s16 i_ProfName) {
if (DMC[i_ProfName] != NULL) {
return DMC[i_ProfName]->unlink();
}
return false;
}
/* 80450CAC-80450CB0 0001AC 0004+00 2/2 0/0 0/0 .sbss cDyl_Initialized */
static BOOL cDyl_Initialized;
/* 800185C0-80018688 012F00 00C8+00 1/1 1/1 0/0 .text cDyl_LinkASync__Fs */
int cDyl_LinkASync(s16 i_ProfName) {
if (cDyl_Initialized == false) {
return cPhs_ZERO_e;
}
if (i_ProfName >= ARRAY_SIZE(DMC)) {
OSReport_Error("cDyl_Link i_ProfName=%d\n", i_ProfName);
return cPhs_ERROR_e;
}
DynamicModuleControl* d = DMC[i_ProfName];
if (d != NULL) {
if (d->load_async()) {
if (d->link()) {
return cPhs_COMPLEATE_e;
} else {
// "cDyl_LinkASync: Link failed. Returning\n"
OSReport_Error("cDyl_LinkASync: リンクに失敗しました。諦めます\n");
return cPhs_ERROR_e;
}
} else {
return cPhs_ZERO_e;
}
}
return cPhs_COMPLEATE_e;
}
/* 80018688-80018764 012FC8 00DC+00 1/1 0/0 0/0 .text cDyl_InitCallback__FPv */
static int cDyl_InitCallback(void* param_0) {
JKRExpHeap* heap = mDoExt_getArchiveHeap();
JKRFileLoader* loader = JKRFileCache::mount("/", heap, NULL);
DynamicModuleControl::initialize();
void* strTbl = JKRFileLoader::getGlbResource("/dvd/str/Final/Release/frameworkF.str");
JKRFileLoader::detachResource(strTbl, loader);
loader->unmount();
OSSetStringTable(strTbl);
DynamicModuleControl dmc("f_pc_profile_lst");
dmc.link();
cDyl_Initialized = true;
fopScnM_CreateReq(PROC_LOGO_SCENE, 0x7FFF, 0, 0);
return 1;
}
/* ############################################################################################## */
/* 80450CB0-80450CB8 0001B0 0004+04 2/2 0/0 0/0 .sbss cDyl_DVD */
static mDoDvdThd_callback_c* cDyl_DVD;
/* 80018764-80018798 0130A4 0034+00 0/0 1/1 0/0 .text cDyl_InitAsync__Fv */
void cDyl_InitAsync() {
cCc_Init();
cDyl_DVD = mDoDvdThd_callback_c::create((mDoDvdThd_callback_func)cDyl_InitCallback, NULL);
}
/* 80018798-80018804 0130D8 006C+00 0/0 2/1 0/0 .text cDyl_InitAsyncIsDone__Fv */
int cDyl_InitAsyncIsDone() {
if (cDyl_DVD == NULL) {
return 1;
}
if (cDyl_DVD->sync()) {
cDyl_DVD->destroy();
cDyl_DVD = NULL;
return 1;
}
return 0;
}
/* 80018804-8001880C 013144 0008+00 1/0 0/0 0/0 .text phase_01__7cDylPhsFPv */
int cDylPhs::phase_01(void* param_0) {
return 2;
}
/* 8001880C-80018844 01314C 0038+00 1/0 0/0 0/0 .text phase_02__7cDylPhsFPs */
int cDylPhs::phase_02(s16* p_profName) {
int ret = cDyl_LinkASync(*p_profName);
if (ret != 4) {
return ret;
}
return 2;
}
/* 80018844-8001884C 013184 0008+00 1/0 0/0 0/0 .text phase_03__7cDylPhsFPv */
int cDylPhs::phase_03(void* param_0) {
return 0;
}
/* 8001884C-80018890 01318C 0044+00 0/0 2/2 0/0 .text
* Link__7cDylPhsFP30request_of_phase_process_classs */
int cDylPhs::Link(request_of_phase_process_class* i_phase, s16 param_1) {
static int (*l_method[3])(void*) = {cDylPhs::phase_01, (int (*)(void*))cDylPhs::phase_02,
cDylPhs::phase_03};
if (i_phase->id == cPhs_TWO_e) {
return cPhs_COMPLEATE_e;
}
return dComLbG_PhaseHandler(i_phase, l_method, &param_1);
}
/* 80018890-800188DC 0131D0 004C+00 0/0 1/1 0/0 .text
* Unlink__7cDylPhsFP30request_of_phase_process_classs */
int cDylPhs::Unlink(request_of_phase_process_class* i_phase, s16 i_ProfName) {
int ret;
if (i_phase->id == cPhs_TWO_e) {
ret = cDyl_Unlink(i_ProfName);
i_phase->id = cPhs_ZERO_e;
} else {
ret = 0;
}
return ret;
}
/* 800188DC-800188E4 01321C 0008+00 0/0 1/0 0/0 .text getModuleName__24DynamicModuleControlBaseCFv
*/
// const char* DynamicModuleControlBase::getModuleName() const {
extern "C" bool getModuleName__24DynamicModuleControlBaseCFv() {
return false;
}
/* 800188E4-80018944 013224 0060+00 0/0 1/0 0/0 .text __dt__20DynamicModuleControlFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// asm DynamicModuleControl::~DynamicModuleControl() {
extern "C" asm void __dt__20DynamicModuleControlFv() {
nofralloc
#include "asm/c/c_dylink/__dt__20DynamicModuleControlFv.s"
}
#pragma pop
/* 80375DE8-80375DE8 002448 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */