diff --git a/files.cmake b/files.cmake index c305ab5f3f..e7042dcbad 100644 --- a/files.cmake +++ b/files.cmake @@ -1329,6 +1329,8 @@ set(DUSK_FILES src/dusk/J3DTransforms_C.cpp #src/dusk/m_Do_ext_dusk.cpp src/dusk/dvd_emu.cpp + src/dusk/imgui/imgui.hpp + src/dusk/imgui/processes.cpp src/dolphin/os/OSContext.cpp src/dolphin/os/OSThread.cpp src/dolphin/os/OSMutex.cpp diff --git a/include/d/d_procname.h b/include/d/d_procname.h index bc0ed5efc1..4ec2faa84a 100644 --- a/include/d/d_procname.h +++ b/include/d/d_procname.h @@ -3,803 +3,829 @@ #include "global.h" -enum { - /* 0x000 */ PROC_OVERLAP0, - /* 0x001 */ PROC_OVERLAP1, - /* 0x002 */ PROC_OVERLAP3, - /* 0x003 */ PROC_OVERLAP6, - /* 0x004 */ PROC_OVERLAP7, - /* 0x005 */ PROC_OVERLAP8, - /* 0x006 */ PROC_OVERLAP9, - /* 0x007 */ PROC_OVERLAP10, - /* 0x008 */ PROC_OVERLAP11, - /* 0x009 */ PROC_LOGO_SCENE, - /* 0x00A */ PROC_MENU_SCENE, - /* 0x00B */ PROC_PLAY_SCENE, - /* 0x00C */ PROC_OPENING_SCENE, - /* 0x00D */ PROC_NAME_SCENE, - /* 0x00E */ PROC_NAMEEX_SCENE, #if VERSION != VERSION_WII_USA_R0 && VERSION != VERSION_WII_PAL - /* 0x00F */ PROC_WARNING_SCENE, - /* 0x010 */ PROC_WARNING2_SCENE, +#define PROCS_NOT_WII \ +/* 0x00F */ X(PROC_WARNING_SCENE) \ +/* 0x010 */ X(PROC_WARNING2_SCENE) +#else +#define PROCS_NOT_WII #endif - /* 0x011 */ PROC_OVERLAP2, - /* 0x012 */ PROC_ROOM_SCENE, - /* 0x013 */ PROC_KANKYO, - /* 0x014 */ PROC_ALLDIE, - /* 0x015 */ PROC_ENVSE, - /* 0x016 */ PROC_Obj_Swpush, - /* 0x017 */ PROC_Obj_Swpush2, - /* 0x018 */ PROC_Obj_Swpush5, - /* 0x019 */ PROC_Tag_Gstart, - /* 0x01A */ PROC_NO_CHG_ROOM, - /* 0x01B */ PROC_Obj_Lv6ElevtA, - /* 0x01C */ PROC_OBJ_SO, - /* 0x01D */ PROC_Obj_Movebox, - /* 0x01E */ PROC_Obj_SwTurn, - /* 0x01F */ PROC_Obj_Lv6SwTurn, - /* 0x020 */ PROC_OBJ_SEKIZOA, - /* 0x021 */ PROC_OBJ_GRA, - /* 0x022 */ PROC_TAG_GRA, - /* 0x023 */ PROC_TAG_YAMI, - /* 0x024 */ PROC_Obj_Ladder, - /* 0x025 */ PROC_OBJ_BEF, - /* 0x026 */ PROC_OBJ_FMOBJ, - /* 0x027 */ PROC_OBJ_LBOX, - /* 0x028 */ PROC_OBJ_WEB0, - /* 0x029 */ PROC_OBJ_WEB1, - /* 0x02A */ PROC_OBJ_CB, - /* 0x02B */ PROC_OBJ_MAKI, - /* 0x02C */ PROC_OBJ_BRG, - /* 0x02D */ PROC_OBJ_GB, - /* 0x02E */ PROC_OBJ_GM, - /* 0x02F */ PROC_OBJ_TOBY, - /* 0x030 */ PROC_OBJ_TP, - /* 0x031 */ PROC_TREESH, - /* 0x032 */ PROC_Obj_ZDoor, - /* 0x033 */ PROC_Obj_Pillar, - /* 0x034 */ PROC_Obj_Cdoor, - /* 0x035 */ PROC_GRDWATER, - /* 0x036 */ PROC_Obj_RotBridge, - /* 0x037 */ PROC_Obj_MagLift, - /* 0x038 */ PROC_Obj_MagLiftRot, - /* 0x039 */ PROC_Obj_Lv1Cdl00, - /* 0x03A */ PROC_Obj_Lv1Cdl01, - /* 0x03B */ PROC_Obj_TvCdlst, - /* 0x03C */ PROC_Obj_HsTarget, - /* 0x03D */ PROC_Obj_HeavySw, - /* 0x03E */ PROC_Obj_GoGate, - /* 0x03F */ PROC_Obj_TaFence, - /* 0x040 */ PROC_Obj_Saidan, - /* 0x041 */ PROC_Obj_SpinLift, - /* 0x042 */ PROC_Obj_BmWindow, - /* 0x043 */ PROC_Obj_RfHole, - /* 0x044 */ PROC_Obj_WaterPillar, - /* 0x045 */ PROC_Obj_SyRock, - /* 0x046 */ PROC_Obj_BsGate, - /* 0x047 */ PROC_Obj_AmiShutter, - /* 0x048 */ PROC_Obj_WtGate, - /* 0x049 */ PROC_Obj_Lv2Candle, - /* 0x04A */ PROC_Obj_TogeTrap, - /* 0x04B */ PROC_Obj_RotTrap, - /* 0x04C */ PROC_Obj_SwallShutter, - /* 0x04D */ PROC_Obj_IceWall, - /* 0x04E */ PROC_Obj_Lv5SwIce, - /* 0x04F */ PROC_Obj_Lv5FBoard, - /* 0x050 */ PROC_Obj_Turara, - /* 0x051 */ PROC_Obj_TwGate, - /* 0x052 */ PROC_Obj_Digholl, - /* 0x053 */ PROC_Obj_Digpl, - /* 0x054 */ PROC_Obj_TestCube, - /* 0x055 */ PROC_Obj_Kshutter, - /* 0x056 */ PROC_NPC_COACH, - /* 0x057 */ PROC_NPC_THEB, - /* 0x058 */ PROC_COACH_FIRE, - /* 0x059 */ PROC_COACH2D, - /* 0x05A */ PROC_BALLOON2D, - /* 0x05B */ PROC_SKIP2D, - /* 0x05C */ PROC_Obj_MvStair, - /* 0x05D */ PROC_Obj_Cowdoor, - /* 0x05E */ PROC_Obj_Swpropeller, - /* 0x05F */ PROC_Obj_BoomShutter, - /* 0x060 */ PROC_NPC_KS, - /* 0x061 */ PROC_Obj_Hfuta, - /* 0x062 */ PROC_Obj_BkDoor, - /* 0x063 */ PROC_Obj_Cboard, - /* 0x064 */ PROC_Obj_MGate, - /* 0x065 */ PROC_Obj_Ikada, - /* 0x066 */ PROC_Obj_Ice_l, - /* 0x067 */ PROC_Obj_Ice_s, - /* 0x068 */ PROC_Obj_E_CREATE, - /* 0x069 */ PROC_Obj_Bhbridge, - /* 0x06A */ PROC_Obj_Kaisou, - /* 0x06B */ PROC_Obj_HHASHI, - /* 0x06C */ PROC_Obj_BHASHI, - /* 0x06D */ PROC_OCTHASHI, - /* 0x06E */ PROC_Obj_THASHI, - /* 0x06F */ PROC_Obj_CRVGATE, - /* 0x070 */ PROC_Obj_CRVFENCE, - /* 0x071 */ PROC_Obj_CRVHAHEN, - /* 0x072 */ PROC_Obj_CRVSTEEL, - /* 0x073 */ PROC_Obj_CRVLH_UP, - /* 0x074 */ PROC_Obj_CRVLH_DW, - /* 0x075 */ PROC_Obj_RIVERROCK, - /* 0x076 */ PROC_Obj_DUST, - /* 0x077 */ PROC_Obj_ITA, - /* 0x078 */ PROC_Obj_Window, - /* 0x079 */ PROC_Obj_MetalBox, - /* 0x07A */ PROC_Obj_BBox, - /* 0x07B */ PROC_OBJ_MSIMA, - /* 0x07C */ PROC_OBJ_MYOGAN, - /* 0x07D */ PROC_B_ZANTS, - /* 0x07E */ PROC_Obj_ChainBlock, - /* 0x07F */ PROC_Obj_ChainWall, - /* 0x080 */ PROC_Obj_KkrGate, - /* 0x081 */ PROC_Obj_RiderGate, - /* 0x082 */ PROC_Obj_Onsen, - /* 0x083 */ PROC_Obj_Chest, - /* 0x084 */ PROC_Obj_Bemos, - /* 0x085 */ PROC_Obj_RopeBridge, - /* 0x086 */ PROC_Obj_WellCover, - /* 0x087 */ PROC_Obj_GraveStone, - /* 0x088 */ PROC_Obj_ZraRock, - /* 0x089 */ PROC_Obj_GraRock, - /* 0x08A */ PROC_Obj_GrzRock, - /* 0x08B */ PROC_GRA_WALL, - /* 0x08C */ PROC_OBJ_ONSEN_FIRE, - /* 0x08D */ PROC_Obj_Lv6bemos, - /* 0x08E */ PROC_Obj_Lv6bemos2, - /* 0x08F */ PROC_Obj_BarDesk, - /* 0x090 */ PROC_Obj_DigSnow, - /* 0x091 */ PROC_Obj_Ytaihou, - /* 0x092 */ PROC_Obj_Elevator, - /* 0x093 */ PROC_Obj_Lv6TogeRoll, - /* 0x094 */ PROC_Obj_Lv6TogeTrap, - /* 0x095 */ PROC_Obj_Lv6Tenbin, - /* 0x096 */ PROC_Obj_Lv6SwGate, - /* 0x097 */ PROC_Obj_Lv6Lblock, - /* 0x098 */ PROC_Obj_Lv6ChgGate, - /* 0x099 */ PROC_Obj_Lv6FuriTrap, - /* 0x09A */ PROC_Obj_Lv6SzGate, - /* 0x09B */ PROC_Obj_Lv4EdShutter, - /* 0x09C */ PROC_Obj_Lv4Gate, - /* 0x09D */ PROC_Obj_Lv4PoGate, - /* 0x09E */ PROC_Obj_Lv4SlideWall, - /* 0x09F */ PROC_Obj_Lv4HsTarget, - /* 0x0A0 */ PROC_Obj_Lv7PropY, - /* 0x0A1 */ PROC_Obj_Lv7BsGate, - /* 0x0A2 */ PROC_Obj_Lv8OptiLift, - /* 0x0A3 */ PROC_Obj_Lv8KekkaiTrap, - /* 0x0A4 */ PROC_Obj_Lv8Lift, - /* 0x0A5 */ PROC_Obj_Lv8UdFloor, - /* 0x0A6 */ PROC_Obj_Lv9SwShutter, - /* 0x0A7 */ PROC_Obj_TobyHouse, - /* 0x0A8 */ PROC_Obj_poCandle, - /* 0x0A9 */ PROC_Obj_Lv4DigSand, - /* 0x0AA */ PROC_Obj_FallObj, - /* 0x0AB */ PROC_Obj_SmgDoor, - /* 0x0AC */ PROC_Obj_SwLight, - /* 0x0AD */ PROC_Obj_Avalanche, - /* 0x0AE */ PROC_Obj_MirrorScrew, - /* 0x0AF */ PROC_Obj_MirrorSand, - /* 0x0B0 */ PROC_Obj_MirrorTable, - /* 0x0B1 */ PROC_Obj_MirrorChain, - /* 0x0B2 */ PROC_Obj_Mirror6Pole, - /* 0x0B3 */ PROC_Obj_SwSpinner, - /* 0x0B4 */ PROC_Obj_TDoor, - /* 0x0B5 */ PROC_Obj_Lv7Bridge, - /* 0x0B6 */ PROC_Obj_zrTurara, - /* 0x0B7 */ PROC_Obj_TakaraDai, - /* 0x0B8 */ PROC_Obj_Table, - /* 0x0B9 */ PROC_Obj_CatDoor, - /* 0x0BA */ PROC_Obj_Gake, - /* 0x0BB */ PROC_CSTAF, - /* 0x0BC */ PROC_Obj_Lv4RailWall, - /* 0x0BD */ PROC_Obj_Lv4Sand, - /* 0x0BE */ PROC_Obj_PushDoor, - /* 0x0BF */ PROC_PushDoor, - /* 0x0C0 */ PROC_Obj_GanonWall2, - /* 0x0C1 */ PROC_Obj_Lv4Bridge, - /* 0x0C2 */ PROC_Obj_Lv4Floor, - /* 0x0C3 */ PROC_Tag_Spinner, - /* 0x0C4 */ PROC_Obj_SwHang, - /* 0x0C5 */ PROC_Obj_RotStair, - /* 0x0C6 */ PROC_Obj_MagneArm, - /* 0x0C7 */ PROC_Obj_KWheel00, - /* 0x0C8 */ PROC_Obj_KWheel01, - /* 0x0C9 */ PROC_Obj_Ychndlr, - /* 0x0CA */ PROC_Obj_PRElvtr, - /* 0x0CB */ PROC_Obj_MHasu, - /* 0x0CC */ PROC_Obj_YIblltray, - /* 0x0CD */ PROC_Obj_Lv6EGate, - /* 0x0CE */ PROC_Obj_PDtile, - /* 0x0CF */ PROC_Obj_PDwall, - /* 0x0D0 */ PROC_Obj_Lv4PRwall, - /* 0x0D1 */ PROC_Obj_KLift00, - /* 0x0D2 */ PROC_B_OH, - /* 0x0D3 */ PROC_Obj_Lv4Chan, - /* 0x0D4 */ PROC_Obj_Lv3R10Saka, - /* 0x0D5 */ PROC_Obj_Lv3Water, - /* 0x0D6 */ PROC_Obj_Lv3Water2, - /* 0x0D7 */ PROC_OBJ_LV3WATERB, - /* 0x0D8 */ PROC_Obj_HBombkoya, - /* 0x0D9 */ PROC_Obj_SZbridge, - /* 0x0DA */ PROC_Obj_KakarikoBrg, - /* 0x0DB */ PROC_Obj_OrdinBrg, - /* 0x0DC */ PROC_Obj_BurnBox, - /* 0x0DD */ PROC_Obj_KJgjs, - /* 0x0DE */ PROC_OBJ_IHASI, - /* 0x0DF */ PROC_Obj_IceBlock, - /* 0x0E0 */ PROC_Obj_VolcanicBall, - /* 0x0E1 */ PROC_Obj_VolcanicBomb, - /* 0x0E2 */ PROC_Obj_VolcGnd, - /* 0x0E3 */ PROC_Obj_KKanban, - /* 0x0E4 */ PROC_E_PH, - /* 0x0E5 */ PROC_NPC_ZRA, - /* 0x0E6 */ PROC_Obj_Chandelier, - /* 0x0E7 */ PROC_Obj_Stopper2, - /* 0x0E8 */ PROC_DOOR20, - /* 0x0E9 */ PROC_Tag_Hinit, - /* 0x0EA */ PROC_Tag_Hjump, - /* 0x0EB */ PROC_Tag_AJnot, - /* 0x0EC */ PROC_Tag_Hstop, - /* 0x0ED */ PROC_CANOE, - /* 0x0EE */ PROC_HORSE, - /* 0x0EF */ PROC_E_WB, - /* 0x0F0 */ PROC_OBJ_ITO, - /* 0x0F1 */ PROC_OBJ_SW, - /* 0x0F2 */ PROC_SPINNER, - /* 0x0F3 */ PROC_B_OB, - /* 0x0F4 */ PROC_KAGO, - /* 0x0F5 */ PROC_E_YC, - /* 0x0F6 */ PROC_B_DS, - /* 0x0F7 */ PROC_B_DR, - /* 0x0F8 */ PROC_B_ZANTZ, - /* 0x0F9 */ PROC_B_ZANT, - /* 0x0FA */ PROC_B_ZANTM, - /* 0x0FB */ PROC_TBOX, - /* 0x0FC */ PROC_TBOX2, - /* 0x0FD */ PROC_ALINK, - /* 0x0FE */ PROC_BOOMERANG, - /* 0x0FF */ PROC_MIDNA, - /* 0x100 */ PROC_NPC_TK, - /* 0x101 */ PROC_NPC_WORM, - /* 0x102 */ PROC_PPolamp, - /* 0x103 */ PROC_BkyRock, - /* 0x104 */ PROC_HITOBJ, - /* 0x105 */ PROC_EP, - /* 0x106 */ PROC_COW, - /* 0x107 */ PROC_PERU, - /* 0x108 */ PROC_NI, - /* 0x109 */ PROC_NPC_TKJ2, - /* 0x10A */ PROC_SQ, - /* 0x10B */ PROC_NPC_SQ, - /* 0x10C */ PROC_DO, - /* 0x10D */ PROC_NPC_NE, - /* 0x10E */ PROC_NPC_TR, - /* 0x10F */ PROC_NPC_LF, - /* 0x110 */ PROC_OBJ_FOOD, - /* 0x111 */ PROC_OBJ_KI, - /* 0x112 */ PROC_OBJ_KITA, - /* 0x113 */ PROC_OBJ_KEY, - /* 0x114 */ PROC_OBJ_KEYHOLE, - /* 0x115 */ PROC_Obj_Lv5Key, - /* 0x116 */ PROC_OBJ_LP, - /* 0x117 */ PROC_OBJ_TATIGI, - /* 0x118 */ PROC_OBJ_ROCK, - /* 0x119 */ PROC_OBJ_WFLAG, - /* 0x11A */ PROC_OBJ_KAGE, - /* 0x11B */ PROC_OBJ_KANBAN2, - /* 0x11C */ PROC_OBJ_BALLOON, - /* 0x11D */ PROC_OBJ_SUISYA, - /* 0x11E */ PROC_OBJ_OILTUBO, - /* 0x11F */ PROC_OBJ_ROTEN, - /* 0x120 */ PROC_OBJ_SSDRINK, - /* 0x121 */ PROC_OBJ_SSITEM, - /* 0x122 */ PROC_TAG_SSDRINK, - /* 0x123 */ PROC_TAG_BTLITM, - /* 0x124 */ PROC_TAG_LV5SOUP, - /* 0x125 */ PROC_TAG_MNLIGHT, - /* 0x126 */ PROC_TAG_SHOPCAM, - /* 0x127 */ PROC_TAG_SHOPITM, - /* 0x128 */ PROC_OBJ_NDOOR, - /* 0x129 */ PROC_OBJ_UDOOR, - /* 0x12A */ PROC_OBJ_USAKU, - /* 0x12B */ PROC_Obj_SM_DOOR, - /* 0x12C */ PROC_OBJ_BED, - /* 0x12D */ PROC_OBJ_BOUMATO, - /* 0x12E */ PROC_OBJ_ITAMATO, - /* 0x12F */ PROC_OBJ_NOUGU, - /* 0x130 */ PROC_OBJ_STICK, - /* 0x131 */ PROC_OBJ_MIE, - /* 0x132 */ PROC_OBJ_SEKIDOOR, - /* 0x133 */ PROC_OBJ_SEKIZO, - /* 0x134 */ PROC_OBJ_SMTILE, - /* 0x135 */ PROC_NPC_FISH, - /* 0x136 */ PROC_MG_FISH, - /* 0x137 */ PROC_FSHOP, - /* 0x138 */ PROC_NPC_DU, - /* 0x139 */ PROC_DISAPPEAR, - /* 0x13A */ PROC_Obj_Mato, - /* 0x13B */ PROC_Obj_Flag, - /* 0x13C */ PROC_Obj_Flag2, - /* 0x13D */ PROC_Obj_Flag3, - /* 0x13E */ PROC_Obj_GOMIKABE, - /* 0x13F */ PROC_Obj_Yousei, - /* 0x140 */ PROC_Obj_Kabuto, - /* 0x141 */ PROC_Obj_Cho, - /* 0x142 */ PROC_Obj_Kuw, - /* 0x143 */ PROC_Obj_Nan, - /* 0x144 */ PROC_Obj_Dan, - /* 0x145 */ PROC_Obj_Kam, - /* 0x146 */ PROC_Obj_Ten, - /* 0x147 */ PROC_Obj_Ari, - /* 0x148 */ PROC_Obj_Kag, - /* 0x149 */ PROC_Obj_Batta, - /* 0x14A */ PROC_Obj_Tombo, - /* 0x14B */ PROC_Obj_Kat, - /* 0x14C */ PROC_Obj_H_Saku, - /* 0x14D */ PROC_Obj_Yobikusa, - /* 0x14E */ PROC_Obj_KazeNeko, - /* 0x14F */ PROC_Obj_KznkArm, - /* 0x150 */ PROC_Obj_NamePlate, - /* 0x151 */ PROC_Obj_OnCloth, - /* 0x152 */ PROC_Obj_LndRope, - /* 0x153 */ PROC_Obj_ItaRope, - /* 0x154 */ PROC_Obj_Sakuita, - /* 0x155 */ PROC_Obj_Laundry, - /* 0x156 */ PROC_WarpBug, - /* 0x157 */ PROC_Izumi_Gate, - /* 0x158 */ PROC_Obj_Fchain, - /* 0x159 */ PROC_Obj_Wchain, - /* 0x15A */ PROC_Tag_Attp, - /* 0x15B */ PROC_Obj_Tornado, - /* 0x15C */ PROC_Obj_Tornado2, - /* 0x15D */ PROC_Obj_FirePillar, - /* 0x15E */ PROC_Obj_FirePillar2, - /* 0x15F */ PROC_Obj_InoBone, - /* 0x160 */ PROC_Obj_Stopper, - /* 0x161 */ PROC_Obj_MHole, - /* 0x162 */ PROC_Tag_Magne, - /* 0x163 */ PROC_Obj_BossWarp, - /* 0x164 */ PROC_Obj_WoodPendulum, - /* 0x165 */ PROC_Obj_WdStick, - /* 0x166 */ PROC_Obj_StairBlock, - /* 0x167 */ PROC_Obj_Geyser, - /* 0x168 */ PROC_Tag_KtOnFire, - /* 0x169 */ PROC_Obj_FireWood, - /* 0x16A */ PROC_Obj_FireWood2, - /* 0x16B */ PROC_Obj_GpTaru, - /* 0x16C */ PROC_Obj_OnsenTaru, - /* 0x16D */ PROC_Obj_KiPot, - /* 0x16E */ PROC_TBOX_SW, - /* 0x16F */ PROC_Obj_SwChain, - /* 0x170 */ PROC_Obj_WoodenSword, - /* 0x171 */ PROC_Obj_StoneMark, - /* 0x172 */ PROC_Obj_Lv3Candle, - /* 0x173 */ PROC_Tag_Lv4Candle, - /* 0x174 */ PROC_Tag_Lv4CandleDm, - /* 0x175 */ PROC_Obj_DamCps, - /* 0x176 */ PROC_Obj_Smoke, - /* 0x177 */ PROC_Obj_WaterFall, - /* 0x178 */ PROC_Obj_ZoraCloth, - /* 0x179 */ PROC_Obj_poFire, - /* 0x17A */ PROC_Tag_poFire, - /* 0x17B */ PROC_Obj_glowSphere, - /* 0x17C */ PROC_Tag_LightBall, - /* 0x17D */ PROC_SwLBall, - /* 0x17E */ PROC_SwBall, - /* 0x17F */ PROC_Obj_WaterEff, - /* 0x180 */ PROC_Tag_RiverBack, - /* 0x181 */ PROC_Tag_KagoFall, - /* 0x182 */ PROC_Tag_Lv2PrChk, - /* 0x183 */ PROC_Obj_Lv4Gear, - /* 0x184 */ PROC_Obj_MasterSword, - /* 0x185 */ PROC_Obj_WoodStatue, - /* 0x186 */ PROC_Obj_Fan, - /* 0x187 */ PROC_Obj_IceLeaf, - /* 0x188 */ PROC_Obj_zrTuraraRc, - /* 0x189 */ PROC_Tag_RetRoom, - /* 0x18A */ PROC_Obj_WindStone, - /* 0x18B */ PROC_Tag_WaraHowl, - /* 0x18C */ PROC_Obj_SCannon, - /* 0x18D */ PROC_Obj_SmWStone, - /* 0x18E */ PROC_Obj_SCannonCrs, - /* 0x18F */ PROC_Tag_SnowEff, - /* 0x190 */ PROC_Tag_CstaSw, - /* 0x191 */ PROC_Tag_Lv6CstaSw, - /* 0x192 */ PROC_Obj_awaPlar, - /* 0x193 */ PROC_Obj_poTbox, - /* 0x194 */ PROC_Obj_TimeFire, - /* 0x195 */ PROC_Obj_TMoon, - /* 0x196 */ PROC_Obj_GanonWall, - /* 0x197 */ PROC_Obj_Prop, - /* 0x198 */ PROC_CSTATUE, - /* 0x199 */ PROC_Obj_SwBallA, - /* 0x19A */ PROC_Obj_SwBallB, - /* 0x19B */ PROC_Obj_SnowSoup, - /* 0x19C */ PROC_Obj_Nagaisu, - /* 0x19D */ PROC_Obj_RCircle, - /* 0x19E */ PROC_Obj_Picture, - /* 0x19F */ PROC_Tag_SetBall, - /* 0x1A0 */ PROC_Tag_SmkEmt, - /* 0x1A1 */ PROC_SwTime, - /* 0x1A2 */ PROC_Obj_HFtr, - /* 0x1A3 */ PROC_Obj_HBarrel, - /* 0x1A4 */ PROC_Obj_Crystal, - /* 0x1A5 */ PROC_Obj_SCannonTen, - /* 0x1A6 */ PROC_Obj_SwBallC, - /* 0x1A7 */ PROC_SCENE_EXIT2, - /* 0x1A8 */ PROC_Obj_Hata, - /* 0x1A9 */ PROC_Obj_ToaruMaki, - /* 0x1AA */ PROC_Tag_AttackItem, - /* 0x1AB */ PROC_Tag_RmbitSw, - /* 0x1AC */ PROC_Obj_Sword, - /* 0x1AD */ PROC_Tag_Spring, - /* 0x1AE */ PROC_Tag_Statue, - /* 0x1AF */ PROC_E_AI, - /* 0x1B0 */ PROC_E_GS, - /* 0x1B1 */ PROC_E_GOB, - /* 0x1B2 */ PROC_E_DD, - /* 0x1B3 */ PROC_E_DN, - /* 0x1B4 */ PROC_E_S1, - /* 0x1B5 */ PROC_E_MF, - /* 0x1B6 */ PROC_E_SG, - /* 0x1B7 */ PROC_E_BS, - /* 0x1B8 */ PROC_E_SF, - /* 0x1B9 */ PROC_E_SH, - /* 0x1BA */ PROC_E_DF, - /* 0x1BB */ PROC_E_GM, - /* 0x1BC */ PROC_E_MD, - /* 0x1BD */ PROC_E_SM, - /* 0x1BE */ PROC_E_SM2, - /* 0x1BF */ PROC_E_ST, - /* 0x1C0 */ PROC_E_ST_LINE, - /* 0x1C1 */ PROC_E_SB, - /* 0x1C2 */ PROC_E_TH, - /* 0x1C3 */ PROC_E_CR, - /* 0x1C4 */ PROC_E_CR_EGG, - /* 0x1C5 */ PROC_E_DB, - /* 0x1C6 */ PROC_E_DB_LEAF, - /* 0x1C7 */ PROC_E_GA, - /* 0x1C8 */ PROC_E_GB, - /* 0x1C9 */ PROC_E_HB, - /* 0x1CA */ PROC_E_HB_LEAF, - /* 0x1CB */ PROC_E_HZELDA, - /* 0x1CC */ PROC_E_YD, - /* 0x1CD */ PROC_E_YH, - /* 0x1CE */ PROC_E_YD_LEAF, - /* 0x1CF */ PROC_E_HM, - /* 0x1D0 */ PROC_E_TK, - /* 0x1D1 */ PROC_E_TK2, - /* 0x1D2 */ PROC_E_TK_BALL, - /* 0x1D3 */ PROC_E_RB, - /* 0x1D4 */ PROC_E_RD, - /* 0x1D5 */ PROC_E_RDB, - /* 0x1D6 */ PROC_E_RDY, - /* 0x1D7 */ PROC_E_FM, - /* 0x1D8 */ PROC_E_FS, - /* 0x1D9 */ PROC_E_PM, - /* 0x1DA */ PROC_E_PO, - /* 0x1DB */ PROC_E_MB, - /* 0x1DC */ PROC_E_MK, - /* 0x1DD */ PROC_E_MM, - /* 0x1DE */ PROC_E_FZ, - /* 0x1DF */ PROC_E_ZS, - /* 0x1E0 */ PROC_E_KK, - /* 0x1E1 */ PROC_E_HP, - /* 0x1E2 */ PROC_E_ZH, - /* 0x1E3 */ PROC_E_ZM, - /* 0x1E4 */ PROC_E_PZ, - /* 0x1E5 */ PROC_E_FB, - /* 0x1E6 */ PROC_E_FK, - /* 0x1E7 */ PROC_E_MS, - /* 0x1E8 */ PROC_E_NEST, - /* 0x1E9 */ PROC_E_NZ, - /* 0x1EA */ PROC_E_BA, - /* 0x1EB */ PROC_E_BU, - /* 0x1EC */ PROC_E_BUG, - /* 0x1ED */ PROC_E_BEE, - /* 0x1EE */ PROC_E_IS, - /* 0x1EF */ PROC_E_KG, - /* 0x1F0 */ PROC_E_KR, - /* 0x1F1 */ PROC_E_SW, - /* 0x1F2 */ PROC_E_GE, - /* 0x1F3 */ PROC_Tag_WatchGe, - /* 0x1F4 */ PROC_E_YM, - /* 0x1F5 */ PROC_E_YM_TAG, - /* 0x1F6 */ PROC_E_YMB, - /* 0x1F7 */ PROC_Tag_FWall, - /* 0x1F8 */ PROC_Tag_WaterFall, - /* 0x1F9 */ PROC_E_YK, - /* 0x1FA */ PROC_E_YR, - /* 0x1FB */ PROC_E_YG, - /* 0x1FC */ PROC_E_HZ, - /* 0x1FD */ PROC_E_WS, - /* 0x1FE */ PROC_E_OC, - /* 0x1FF */ PROC_E_OT, - /* 0x200 */ PROC_E_DT, - /* 0x201 */ PROC_E_BG, - /* 0x202 */ PROC_E_OctBg, - /* 0x203 */ PROC_DR, - /* 0x204 */ PROC_L7lowDr, - /* 0x205 */ PROC_L7ODR, - /* 0x206 */ PROC_E_TT, - /* 0x207 */ PROC_E_DK, - /* 0x208 */ PROC_E_VT, - /* 0x209 */ PROC_E_WW, - /* 0x20A */ PROC_E_GI, - /* 0x20B */ PROC_B_BH, - /* 0x20C */ PROC_B_BQ, - /* 0x20D */ PROC_B_GM, - /* 0x20E */ PROC_B_GND, - /* 0x20F */ PROC_B_GO, - /* 0x210 */ PROC_B_OH2, - /* 0x211 */ PROC_B_YO, - /* 0x212 */ PROC_B_YOI, - /* 0x213 */ PROC_B_TN, - /* 0x214 */ PROC_B_GG, - /* 0x215 */ PROC_B_DRE, - /* 0x216 */ PROC_B_MGN, - /* 0x217 */ PROC_E_WAP, - /* 0x218 */ PROC_ITEM, - /* 0x219 */ PROC_Obj_SmallKey, - /* 0x21A */ PROC_Obj_Kantera, - /* 0x21B */ PROC_Obj_LifeContainer, - /* 0x21C */ PROC_Obj_Shield, - /* 0x21D */ PROC_Demo_Item, - /* 0x21E */ PROC_ShopItem, - /* 0x21F */ PROC_Obj_Drop, - /* 0x220 */ PROC_OBJ_RW, - /* 0x221 */ PROC_NBOMB, - /* 0x222 */ PROC_TAG_CSW, - /* 0x223 */ PROC_TAG_QS, - /* 0x224 */ PROC_HOZELDA, - /* 0x225 */ PROC_SWC00, - /* 0x226 */ PROC_KNOB20, - /* 0x227 */ PROC_DBDOOR, - /* 0x228 */ PROC_BOSS_DOOR, - /* 0x229 */ PROC_L1BOSS_DOOR, - /* 0x22A */ PROC_L1MBOSS_DOOR, - /* 0x22B */ PROC_L5BOSS_DOOR, - /* 0x22C */ PROC_DSHUTTER, - /* 0x22D */ PROC_SPIRAL_DOOR, - /* 0x22E */ PROC_Tag_ChgRestart, - /* 0x22F */ PROC_Tag_Restart, - /* 0x230 */ PROC_ANDSW, - /* 0x231 */ PROC_ANDSW2, - /* 0x232 */ PROC_MYNA, - /* 0x233 */ PROC_NPC_GND, - /* 0x234 */ PROC_NPC_GRA, - /* 0x235 */ PROC_NPC_GRC, - /* 0x236 */ PROC_NPC_GRD, - /* 0x237 */ PROC_NPC_GRM, - /* 0x238 */ PROC_NPC_GRMC, - /* 0x239 */ PROC_NPC_GRO, - /* 0x23A */ PROC_NPC_GRR, - /* 0x23B */ PROC_NPC_GRS, - /* 0x23C */ PROC_NPC_GRZ, - /* 0x23D */ PROC_NPC_YAMID, - /* 0x23E */ PROC_NPC_YAMIT, - /* 0x23F */ PROC_NPC_YAMIS, - /* 0x240 */ PROC_NPC_BLUENS, - /* 0x241 */ PROC_NPC_KAKASHI, - /* 0x242 */ PROC_NPC_KDK, - /* 0x243 */ PROC_NPC_ARU, - /* 0x244 */ PROC_NPC_BANS, - /* 0x245 */ PROC_NPC_BESU, - /* 0x246 */ PROC_NPC_BOU, - /* 0x247 */ PROC_NPC_BOU_S, - /* 0x248 */ PROC_NPC_CLERKA, - /* 0x249 */ PROC_NPC_CLERKB, - /* 0x24A */ PROC_NPC_CLERKT, - /* 0x24B */ PROC_NPC_WRESTLER, - /* 0x24C */ PROC_Tag_Arena, - /* 0x24D */ PROC_Tag_Instruction, - /* 0x24E */ PROC_NPC_DOC, - /* 0x24F */ PROC_NPC_GWOLF, - /* 0x250 */ PROC_NPC_LEN, - /* 0x251 */ PROC_NPC_LUD, - /* 0x252 */ PROC_NPC_FAIRY_SEIREI, - /* 0x253 */ PROC_NPC_FAIRY, - /* 0x254 */ PROC_NPC_HANJO, - /* 0x255 */ PROC_NPC_HENNA, - /* 0x256 */ PROC_NPC_HENNA0, - /* 0x257 */ PROC_NPC_HOZ, - /* 0x258 */ PROC_NPC_JAGAR, - /* 0x259 */ PROC_NPC_KKRI, - /* 0x25A */ PROC_NPC_KN, - /* 0x25B */ PROC_KN_BULLET, - /* 0x25C */ PROC_NPC_KNJ, - /* 0x25D */ PROC_NPC_KOLIN, - /* 0x25E */ PROC_NPC_KOLINB, - /* 0x25F */ PROC_NPC_KYURY, - /* 0x260 */ PROC_NPC_MARO, - /* 0x261 */ PROC_NPC_MIDP, - /* 0x262 */ PROC_NPC_MOI, - /* 0x263 */ PROC_NPC_RACA, - /* 0x264 */ PROC_NPC_SARU, - /* 0x265 */ PROC_NPC_SEIB, - /* 0x266 */ PROC_NPC_SEIC, - /* 0x267 */ PROC_NPC_SEID, - /* 0x268 */ PROC_NPC_SEIRA, - /* 0x269 */ PROC_NPC_SERA2, - /* 0x26A */ PROC_NPC_SEIREI, - /* 0x26B */ PROC_NPC_SHAMAN, - /* 0x26C */ PROC_NPC_SMARO, - /* 0x26D */ PROC_NPC_SOLA, - /* 0x26E */ PROC_NPC_TARO, - /* 0x26F */ PROC_NPC_PACHI_BESU, - /* 0x270 */ PROC_NPC_PACHI_TARO, - /* 0x271 */ PROC_NPC_PACHI_MARO, - /* 0x272 */ PROC_TAG_PATI, - /* 0x273 */ PROC_NPC_THE, - /* 0x274 */ PROC_NPC_TKJ, - /* 0x275 */ PROC_NPC_TKS, - /* 0x276 */ PROC_NPC_TKC, - /* 0x277 */ PROC_OBJ_TKS, - /* 0x278 */ PROC_NPC_TOBY, - /* 0x279 */ PROC_NPC_URI, - /* 0x27A */ PROC_NPC_YELIA, - /* 0x27B */ PROC_NPC_YKM, - /* 0x27C */ PROC_NPC_YKW, - /* 0x27D */ PROC_NPC_ZANB, - /* 0x27E */ PROC_NPC_ZANT, - /* 0x27F */ PROC_NPC_ZELDA, - /* 0x280 */ PROC_NPC_ZELR, - /* 0x281 */ PROC_NPC_ZELRO, - /* 0x282 */ PROC_OBJ_ZRAFREEZE, - /* 0x283 */ PROC_NPC_ZRC, - /* 0x284 */ PROC_NPC_ZRZ, - /* 0x285 */ PROC_ZRA_MARK, - /* 0x286 */ PROC_MYNA2, - /* 0x287 */ PROC_TAG_MYNA2, - /* 0x288 */ PROC_NPC_CD3, - /* 0x289 */ PROC_Tag_Schedule, - /* 0x28A */ PROC_Tag_Escape, - /* 0x28B */ PROC_NPC_CHAT, - /* 0x28C */ PROC_NPC_SOLDIERa, - /* 0x28D */ PROC_NPC_SOLDIERb, - /* 0x28E */ PROC_PASSER_MNG, - /* 0x28F */ PROC_NPC_PASSER, - /* 0x290 */ PROC_NPC_PASSER2, - /* 0x291 */ PROC_NPC_POST, - /* 0x292 */ PROC_NPC_POUYA, - /* 0x293 */ PROC_FORMATION_MNG, - /* 0x294 */ PROC_NPC_FGUARD, - /* 0x295 */ PROC_GUARD_MNG, - /* 0x296 */ PROC_TAG_GUARD, - /* 0x297 */ PROC_NPC_GUARD, - /* 0x298 */ PROC_NPC_ASH, - /* 0x299 */ PROC_NPC_ASHB, - /* 0x29A */ PROC_NPC_SHAD, - /* 0x29B */ PROC_NPC_RAFREL, - /* 0x29C */ PROC_NPC_MOIR, - /* 0x29D */ PROC_NPC_IMPAL, - /* 0x29E */ PROC_NPC_SHOE, - /* 0x29F */ PROC_NPC_DOORBOY, - /* 0x2A0 */ PROC_NPC_PRAYER, - /* 0x2A1 */ PROC_NPC_KASIHANA, - /* 0x2A2 */ PROC_NPC_KASIKYU, - /* 0x2A3 */ PROC_NPC_KASIMICH, - /* 0x2A4 */ PROC_NPC_DRSOL, - /* 0x2A5 */ PROC_NPC_CHIN, - /* 0x2A6 */ PROC_NPC_INS, - /* 0x2A7 */ PROC_NPC_SHOP0, - /* 0x2A8 */ PROC_NPC_MK, - /* 0x2A9 */ PROC_NPC_P2, - /* 0x2AA */ PROC_KYTAG00, - /* 0x2AB */ PROC_KYTAG01, - /* 0x2AC */ PROC_KYTAG02, - /* 0x2AD */ PROC_KYTAG03, - /* 0x2AE */ PROC_KYTAG04, - /* 0x2AF */ PROC_KYTAG05, - /* 0x2B0 */ PROC_KYTAG06, - /* 0x2B1 */ PROC_KYTAG07, - /* 0x2B2 */ PROC_KYTAG08, - /* 0x2B3 */ PROC_KYTAG09, - /* 0x2B4 */ PROC_KYTAG10, - /* 0x2B5 */ PROC_KYTAG11, - /* 0x2B6 */ PROC_KYTAG12, - /* 0x2B7 */ PROC_KYTAG13, - /* 0x2B8 */ PROC_KYTAG14, - /* 0x2B9 */ PROC_KYTAG15, - /* 0x2BA */ PROC_KYTAG16, - /* 0x2BB */ PROC_KYTAG17, - /* 0x2BC */ PROC_Ykgr, - /* 0x2BD */ PROC_TALK, - /* 0x2BE */ PROC_Obj_Crope, - /* 0x2BF */ PROC_Obj_Bombf, - /* 0x2C0 */ PROC_Obj_BkLeaf, - /* 0x2C1 */ PROC_Tag_Mhint, - /* 0x2C2 */ PROC_Tag_Mmsg, - /* 0x2C3 */ PROC_Tag_Mwait, - /* 0x2C4 */ PROC_Tag_Mstop, - /* 0x2C5 */ PROC_Tag_Stream, - /* 0x2C6 */ PROC_Tag_Sppath, - /* 0x2C7 */ PROC_Tag_Wljump, - /* 0x2C8 */ PROC_Tag_TWGate, - /* 0x2C9 */ PROC_Tag_Lv6Gate, - /* 0x2CA */ PROC_Tag_Lv7Gate, - /* 0x2CB */ PROC_Tag_Lv8Gate, - /* 0x2CC */ PROC_Tag_TheBHint, - /* 0x2CD */ PROC_Tag_Assist, - /* 0x2CE */ PROC_DEMO00, - /* 0x2CF */ PROC_TAG_CAMERA, - /* 0x2D0 */ PROC_TAG_CHKPOINT, - /* 0x2D1 */ PROC_TAG_EVENT, - /* 0x2D2 */ PROC_TAG_EVT, - /* 0x2D3 */ PROC_TAG_TELOP, - /* 0x2D4 */ PROC_TAG_HOWL, - /* 0x2D5 */ PROC_TAG_MSG, - /* 0x2D6 */ PROC_TAG_LANTERN, - /* 0x2D7 */ PROC_Tag_Mist, - /* 0x2D8 */ PROC_DMIDNA, - /* 0x2D9 */ PROC_KY_THUNDER, - /* 0x2DA */ PROC_VRBOX, - /* 0x2DB */ PROC_VRBOX2, - /* 0x2DC */ PROC_BG, - /* 0x2DD */ PROC_SET_BG_OBJ, - /* 0x2DE */ PROC_BG_OBJ, - /* 0x2DF */ PROC_MIRROR, - /* 0x2E0 */ PROC_MOVIE_PLAYER, - /* 0x2E1 */ PROC_TITLE, - /* 0x2E2 */ PROC_FR, - /* 0x2E3 */ PROC_ECONT, - /* 0x2E4 */ PROC_MG_ROD, - /* 0x2E5 */ PROC_E_ARROW, - /* 0x2E6 */ PROC_BULLET, - /* 0x2E7 */ PROC_SWHIT0, - /* 0x2E8 */ PROC_E_TH_BALL, - /* 0x2E9 */ PROC_TAG_EVTAREA, - /* 0x2EA */ PROC_TAG_EVTMSG, - /* 0x2EB */ PROC_TAG_KMSG, - /* 0x2EC */ PROC_TAG_PUSH, - /* 0x2ED */ PROC_E_MK_BO, - /* 0x2EE */ PROC_E_MM_MT, - /* 0x2EF */ PROC_OBJ_KBOX, - /* 0x2F0 */ PROC_OBJ_FW, - /* 0x2F1 */ PROC_B_GOS, - /* 0x2F2 */ PROC_OBJ_YSTONE, - /* 0x2F3 */ PROC_MANT, - /* 0x2F4 */ PROC_CROD, - /* 0x2F5 */ PROC_OBJ_PLEAF, - /* 0x2F6 */ PROC_OBJ_KBACKET, - /* 0x2F7 */ PROC_OBJ_YBAG, - /* 0x2F8 */ PROC_OBJ_PUMPKIN, - /* 0x2F9 */ PROC_OBJ_AUTOMATA, - /* 0x2FA */ PROC_OBJ_GADGET, - /* 0x2FB */ PROC_OBJ_KAGO, - /* 0x2FC */ PROC_Obj_Carry, - /* 0x2FD */ PROC_Obj_Stone, - /* 0x2FE */ PROC_OBJ_HB, - /* 0x2FF */ PROC_NPC_INKO, - /* 0x300 */ PROC_BD, - /* 0x301 */ PROC_Obj_Eff, - /* 0x302 */ PROC_WPILLAR, - /* 0x303 */ PROC_WMARK, - /* 0x304 */ PROC_E_BI, - /* 0x305 */ PROC_E_BI_LEAF, - /* 0x306 */ PROC_START_AND_GOAL, - /* 0x307 */ PROC_NPC_DF, - /* 0x308 */ PROC_ARROW, - /* 0x309 */ PROC_PATH_LINE, - /* 0x30A */ PROC_TAG_ALLMATO, - /* 0x30B */ PROC_Obj_Timer, - /* 0x30C */ PROC_SCENE_EXIT, - /* 0x30D */ PROC_CAMERA, - /* 0x30E */ PROC_CAMERA2, - /* 0x30F */ PROC_SUSPEND, - /* 0x310 */ PROC_GRASS, - /* 0x311 */ PROC_KYEFF, - /* 0x312 */ PROC_KYEFF2, - /* 0x313 */ PROC_MSG_OBJECT, - /* 0x314 */ PROC_MENUWINDOW, - /* 0x315 */ PROC_TIMER, - /* 0x316 */ PROC_METER2, - /* 0x317 */ PROC_GAMEOVER, + +#define ALL_PROCS \ +/* 0x000 */ X(PROC_OVERLAP0) \ +/* 0x001 */ X(PROC_OVERLAP1) \ +/* 0x002 */ X(PROC_OVERLAP3) \ +/* 0x003 */ X(PROC_OVERLAP6) \ +/* 0x004 */ X(PROC_OVERLAP7) \ +/* 0x005 */ X(PROC_OVERLAP8) \ +/* 0x006 */ X(PROC_OVERLAP9) \ +/* 0x007 */ X(PROC_OVERLAP10) \ +/* 0x008 */ X(PROC_OVERLAP11) \ +/* 0x009 */ X(PROC_LOGO_SCENE) \ +/* 0x00A */ X(PROC_MENU_SCENE) \ +/* 0x00B */ X(PROC_PLAY_SCENE) \ +/* 0x00C */ X(PROC_OPENING_SCENE) \ +/* 0x00D */ X(PROC_NAME_SCENE) \ +/* 0x00E */ X(PROC_NAMEEX_SCENE) \ +PROCS_NOT_WII \ +/* 0x011 */ X(PROC_OVERLAP2) \ +/* 0x012 */ X(PROC_ROOM_SCENE) \ +/* 0x013 */ X(PROC_KANKYO) \ +/* 0x014 */ X(PROC_ALLDIE) \ +/* 0x015 */ X(PROC_ENVSE) \ +/* 0x016 */ X(PROC_Obj_Swpush) \ +/* 0x017 */ X(PROC_Obj_Swpush2) \ +/* 0x018 */ X(PROC_Obj_Swpush5) \ +/* 0x019 */ X(PROC_Tag_Gstart) \ +/* 0x01A */ X(PROC_NO_CHG_ROOM) \ +/* 0x01B */ X(PROC_Obj_Lv6ElevtA) \ +/* 0x01C */ X(PROC_OBJ_SO) \ +/* 0x01D */ X(PROC_Obj_Movebox) \ +/* 0x01E */ X(PROC_Obj_SwTurn) \ +/* 0x01F */ X(PROC_Obj_Lv6SwTurn) \ +/* 0x020 */ X(PROC_OBJ_SEKIZOA) \ +/* 0x021 */ X(PROC_OBJ_GRA) \ +/* 0x022 */ X(PROC_TAG_GRA) \ +/* 0x023 */ X(PROC_TAG_YAMI) \ +/* 0x024 */ X(PROC_Obj_Ladder) \ +/* 0x025 */ X(PROC_OBJ_BEF) \ +/* 0x026 */ X(PROC_OBJ_FMOBJ) \ +/* 0x027 */ X(PROC_OBJ_LBOX) \ +/* 0x028 */ X(PROC_OBJ_WEB0) \ +/* 0x029 */ X(PROC_OBJ_WEB1) \ +/* 0x02A */ X(PROC_OBJ_CB) \ +/* 0x02B */ X(PROC_OBJ_MAKI) \ +/* 0x02C */ X(PROC_OBJ_BRG) \ +/* 0x02D */ X(PROC_OBJ_GB) \ +/* 0x02E */ X(PROC_OBJ_GM) \ +/* 0x02F */ X(PROC_OBJ_TOBY) \ +/* 0x030 */ X(PROC_OBJ_TP) \ +/* 0x031 */ X(PROC_TREESH) \ +/* 0x032 */ X(PROC_Obj_ZDoor) \ +/* 0x033 */ X(PROC_Obj_Pillar) \ +/* 0x034 */ X(PROC_Obj_Cdoor) \ +/* 0x035 */ X(PROC_GRDWATER) \ +/* 0x036 */ X(PROC_Obj_RotBridge) \ +/* 0x037 */ X(PROC_Obj_MagLift) \ +/* 0x038 */ X(PROC_Obj_MagLiftRot) \ +/* 0x039 */ X(PROC_Obj_Lv1Cdl00) \ +/* 0x03A */ X(PROC_Obj_Lv1Cdl01) \ +/* 0x03B */ X(PROC_Obj_TvCdlst) \ +/* 0x03C */ X(PROC_Obj_HsTarget) \ +/* 0x03D */ X(PROC_Obj_HeavySw) \ +/* 0x03E */ X(PROC_Obj_GoGate) \ +/* 0x03F */ X(PROC_Obj_TaFence) \ +/* 0x040 */ X(PROC_Obj_Saidan) \ +/* 0x041 */ X(PROC_Obj_SpinLift) \ +/* 0x042 */ X(PROC_Obj_BmWindow) \ +/* 0x043 */ X(PROC_Obj_RfHole) \ +/* 0x044 */ X(PROC_Obj_WaterPillar) \ +/* 0x045 */ X(PROC_Obj_SyRock) \ +/* 0x046 */ X(PROC_Obj_BsGate) \ +/* 0x047 */ X(PROC_Obj_AmiShutter) \ +/* 0x048 */ X(PROC_Obj_WtGate) \ +/* 0x049 */ X(PROC_Obj_Lv2Candle) \ +/* 0x04A */ X(PROC_Obj_TogeTrap) \ +/* 0x04B */ X(PROC_Obj_RotTrap) \ +/* 0x04C */ X(PROC_Obj_SwallShutter) \ +/* 0x04D */ X(PROC_Obj_IceWall) \ +/* 0x04E */ X(PROC_Obj_Lv5SwIce) \ +/* 0x04F */ X(PROC_Obj_Lv5FBoard) \ +/* 0x050 */ X(PROC_Obj_Turara) \ +/* 0x051 */ X(PROC_Obj_TwGate) \ +/* 0x052 */ X(PROC_Obj_Digholl) \ +/* 0x053 */ X(PROC_Obj_Digpl) \ +/* 0x054 */ X(PROC_Obj_TestCube) \ +/* 0x055 */ X(PROC_Obj_Kshutter) \ +/* 0x056 */ X(PROC_NPC_COACH) \ +/* 0x057 */ X(PROC_NPC_THEB) \ +/* 0x058 */ X(PROC_COACH_FIRE) \ +/* 0x059 */ X(PROC_COACH2D) \ +/* 0x05A */ X(PROC_BALLOON2D) \ +/* 0x05B */ X(PROC_SKIP2D) \ +/* 0x05C */ X(PROC_Obj_MvStair) \ +/* 0x05D */ X(PROC_Obj_Cowdoor) \ +/* 0x05E */ X(PROC_Obj_Swpropeller) \ +/* 0x05F */ X(PROC_Obj_BoomShutter) \ +/* 0x060 */ X(PROC_NPC_KS) \ +/* 0x061 */ X(PROC_Obj_Hfuta) \ +/* 0x062 */ X(PROC_Obj_BkDoor) \ +/* 0x063 */ X(PROC_Obj_Cboard) \ +/* 0x064 */ X(PROC_Obj_MGate) \ +/* 0x065 */ X(PROC_Obj_Ikada) \ +/* 0x066 */ X(PROC_Obj_Ice_l) \ +/* 0x067 */ X(PROC_Obj_Ice_s) \ +/* 0x068 */ X(PROC_Obj_E_CREATE) \ +/* 0x069 */ X(PROC_Obj_Bhbridge) \ +/* 0x06A */ X(PROC_Obj_Kaisou) \ +/* 0x06B */ X(PROC_Obj_HHASHI) \ +/* 0x06C */ X(PROC_Obj_BHASHI) \ +/* 0x06D */ X(PROC_OCTHASHI) \ +/* 0x06E */ X(PROC_Obj_THASHI) \ +/* 0x06F */ X(PROC_Obj_CRVGATE) \ +/* 0x070 */ X(PROC_Obj_CRVFENCE) \ +/* 0x071 */ X(PROC_Obj_CRVHAHEN) \ +/* 0x072 */ X(PROC_Obj_CRVSTEEL) \ +/* 0x073 */ X(PROC_Obj_CRVLH_UP) \ +/* 0x074 */ X(PROC_Obj_CRVLH_DW) \ +/* 0x075 */ X(PROC_Obj_RIVERROCK) \ +/* 0x076 */ X(PROC_Obj_DUST) \ +/* 0x077 */ X(PROC_Obj_ITA) \ +/* 0x078 */ X(PROC_Obj_Window) \ +/* 0x079 */ X(PROC_Obj_MetalBox) \ +/* 0x07A */ X(PROC_Obj_BBox) \ +/* 0x07B */ X(PROC_OBJ_MSIMA) \ +/* 0x07C */ X(PROC_OBJ_MYOGAN) \ +/* 0x07D */ X(PROC_B_ZANTS) \ +/* 0x07E */ X(PROC_Obj_ChainBlock) \ +/* 0x07F */ X(PROC_Obj_ChainWall) \ +/* 0x080 */ X(PROC_Obj_KkrGate) \ +/* 0x081 */ X(PROC_Obj_RiderGate) \ +/* 0x082 */ X(PROC_Obj_Onsen) \ +/* 0x083 */ X(PROC_Obj_Chest) \ +/* 0x084 */ X(PROC_Obj_Bemos) \ +/* 0x085 */ X(PROC_Obj_RopeBridge) \ +/* 0x086 */ X(PROC_Obj_WellCover) \ +/* 0x087 */ X(PROC_Obj_GraveStone) \ +/* 0x088 */ X(PROC_Obj_ZraRock) \ +/* 0x089 */ X(PROC_Obj_GraRock) \ +/* 0x08A */ X(PROC_Obj_GrzRock) \ +/* 0x08B */ X(PROC_GRA_WALL) \ +/* 0x08C */ X(PROC_OBJ_ONSEN_FIRE) \ +/* 0x08D */ X(PROC_Obj_Lv6bemos) \ +/* 0x08E */ X(PROC_Obj_Lv6bemos2) \ +/* 0x08F */ X(PROC_Obj_BarDesk) \ +/* 0x090 */ X(PROC_Obj_DigSnow) \ +/* 0x091 */ X(PROC_Obj_Ytaihou) \ +/* 0x092 */ X(PROC_Obj_Elevator) \ +/* 0x093 */ X(PROC_Obj_Lv6TogeRoll) \ +/* 0x094 */ X(PROC_Obj_Lv6TogeTrap) \ +/* 0x095 */ X(PROC_Obj_Lv6Tenbin) \ +/* 0x096 */ X(PROC_Obj_Lv6SwGate) \ +/* 0x097 */ X(PROC_Obj_Lv6Lblock) \ +/* 0x098 */ X(PROC_Obj_Lv6ChgGate) \ +/* 0x099 */ X(PROC_Obj_Lv6FuriTrap) \ +/* 0x09A */ X(PROC_Obj_Lv6SzGate) \ +/* 0x09B */ X(PROC_Obj_Lv4EdShutter) \ +/* 0x09C */ X(PROC_Obj_Lv4Gate) \ +/* 0x09D */ X(PROC_Obj_Lv4PoGate) \ +/* 0x09E */ X(PROC_Obj_Lv4SlideWall) \ +/* 0x09F */ X(PROC_Obj_Lv4HsTarget) \ +/* 0x0A0 */ X(PROC_Obj_Lv7PropY) \ +/* 0x0A1 */ X(PROC_Obj_Lv7BsGate) \ +/* 0x0A2 */ X(PROC_Obj_Lv8OptiLift) \ +/* 0x0A3 */ X(PROC_Obj_Lv8KekkaiTrap) \ +/* 0x0A4 */ X(PROC_Obj_Lv8Lift) \ +/* 0x0A5 */ X(PROC_Obj_Lv8UdFloor) \ +/* 0x0A6 */ X(PROC_Obj_Lv9SwShutter) \ +/* 0x0A7 */ X(PROC_Obj_TobyHouse) \ +/* 0x0A8 */ X(PROC_Obj_poCandle) \ +/* 0x0A9 */ X(PROC_Obj_Lv4DigSand) \ +/* 0x0AA */ X(PROC_Obj_FallObj) \ +/* 0x0AB */ X(PROC_Obj_SmgDoor) \ +/* 0x0AC */ X(PROC_Obj_SwLight) \ +/* 0x0AD */ X(PROC_Obj_Avalanche) \ +/* 0x0AE */ X(PROC_Obj_MirrorScrew) \ +/* 0x0AF */ X(PROC_Obj_MirrorSand) \ +/* 0x0B0 */ X(PROC_Obj_MirrorTable) \ +/* 0x0B1 */ X(PROC_Obj_MirrorChain) \ +/* 0x0B2 */ X(PROC_Obj_Mirror6Pole) \ +/* 0x0B3 */ X(PROC_Obj_SwSpinner) \ +/* 0x0B4 */ X(PROC_Obj_TDoor) \ +/* 0x0B5 */ X(PROC_Obj_Lv7Bridge) \ +/* 0x0B6 */ X(PROC_Obj_zrTurara) \ +/* 0x0B7 */ X(PROC_Obj_TakaraDai) \ +/* 0x0B8 */ X(PROC_Obj_Table) \ +/* 0x0B9 */ X(PROC_Obj_CatDoor) \ +/* 0x0BA */ X(PROC_Obj_Gake) \ +/* 0x0BB */ X(PROC_CSTAF) \ +/* 0x0BC */ X(PROC_Obj_Lv4RailWall) \ +/* 0x0BD */ X(PROC_Obj_Lv4Sand) \ +/* 0x0BE */ X(PROC_Obj_PushDoor) \ +/* 0x0BF */ X(PROC_PushDoor) \ +/* 0x0C0 */ X(PROC_Obj_GanonWall2) \ +/* 0x0C1 */ X(PROC_Obj_Lv4Bridge) \ +/* 0x0C2 */ X(PROC_Obj_Lv4Floor) \ +/* 0x0C3 */ X(PROC_Tag_Spinner) \ +/* 0x0C4 */ X(PROC_Obj_SwHang) \ +/* 0x0C5 */ X(PROC_Obj_RotStair) \ +/* 0x0C6 */ X(PROC_Obj_MagneArm) \ +/* 0x0C7 */ X(PROC_Obj_KWheel00) \ +/* 0x0C8 */ X(PROC_Obj_KWheel01) \ +/* 0x0C9 */ X(PROC_Obj_Ychndlr) \ +/* 0x0CA */ X(PROC_Obj_PRElvtr) \ +/* 0x0CB */ X(PROC_Obj_MHasu) \ +/* 0x0CC */ X(PROC_Obj_YIblltray) \ +/* 0x0CD */ X(PROC_Obj_Lv6EGate) \ +/* 0x0CE */ X(PROC_Obj_PDtile) \ +/* 0x0CF */ X(PROC_Obj_PDwall) \ +/* 0x0D0 */ X(PROC_Obj_Lv4PRwall) \ +/* 0x0D1 */ X(PROC_Obj_KLift00) \ +/* 0x0D2 */ X(PROC_B_OH) \ +/* 0x0D3 */ X(PROC_Obj_Lv4Chan) \ +/* 0x0D4 */ X(PROC_Obj_Lv3R10Saka) \ +/* 0x0D5 */ X(PROC_Obj_Lv3Water) \ +/* 0x0D6 */ X(PROC_Obj_Lv3Water2) \ +/* 0x0D7 */ X(PROC_OBJ_LV3WATERB) \ +/* 0x0D8 */ X(PROC_Obj_HBombkoya) \ +/* 0x0D9 */ X(PROC_Obj_SZbridge) \ +/* 0x0DA */ X(PROC_Obj_KakarikoBrg) \ +/* 0x0DB */ X(PROC_Obj_OrdinBrg) \ +/* 0x0DC */ X(PROC_Obj_BurnBox) \ +/* 0x0DD */ X(PROC_Obj_KJgjs) \ +/* 0x0DE */ X(PROC_OBJ_IHASI) \ +/* 0x0DF */ X(PROC_Obj_IceBlock) \ +/* 0x0E0 */ X(PROC_Obj_VolcanicBall) \ +/* 0x0E1 */ X(PROC_Obj_VolcanicBomb) \ +/* 0x0E2 */ X(PROC_Obj_VolcGnd) \ +/* 0x0E3 */ X(PROC_Obj_KKanban) \ +/* 0x0E4 */ X(PROC_E_PH) \ +/* 0x0E5 */ X(PROC_NPC_ZRA) \ +/* 0x0E6 */ X(PROC_Obj_Chandelier) \ +/* 0x0E7 */ X(PROC_Obj_Stopper2) \ +/* 0x0E8 */ X(PROC_DOOR20) \ +/* 0x0E9 */ X(PROC_Tag_Hinit) \ +/* 0x0EA */ X(PROC_Tag_Hjump) \ +/* 0x0EB */ X(PROC_Tag_AJnot) \ +/* 0x0EC */ X(PROC_Tag_Hstop) \ +/* 0x0ED */ X(PROC_CANOE) \ +/* 0x0EE */ X(PROC_HORSE) \ +/* 0x0EF */ X(PROC_E_WB) \ +/* 0x0F0 */ X(PROC_OBJ_ITO) \ +/* 0x0F1 */ X(PROC_OBJ_SW) \ +/* 0x0F2 */ X(PROC_SPINNER) \ +/* 0x0F3 */ X(PROC_B_OB) \ +/* 0x0F4 */ X(PROC_KAGO) \ +/* 0x0F5 */ X(PROC_E_YC) \ +/* 0x0F6 */ X(PROC_B_DS) \ +/* 0x0F7 */ X(PROC_B_DR) \ +/* 0x0F8 */ X(PROC_B_ZANTZ) \ +/* 0x0F9 */ X(PROC_B_ZANT) \ +/* 0x0FA */ X(PROC_B_ZANTM) \ +/* 0x0FB */ X(PROC_TBOX) \ +/* 0x0FC */ X(PROC_TBOX2) \ +/* 0x0FD */ X(PROC_ALINK) \ +/* 0x0FE */ X(PROC_BOOMERANG) \ +/* 0x0FF */ X(PROC_MIDNA) \ +/* 0x100 */ X(PROC_NPC_TK) \ +/* 0x101 */ X(PROC_NPC_WORM) \ +/* 0x102 */ X(PROC_PPolamp) \ +/* 0x103 */ X(PROC_BkyRock) \ +/* 0x104 */ X(PROC_HITOBJ) \ +/* 0x105 */ X(PROC_EP) \ +/* 0x106 */ X(PROC_COW) \ +/* 0x107 */ X(PROC_PERU) \ +/* 0x108 */ X(PROC_NI) \ +/* 0x109 */ X(PROC_NPC_TKJ2) \ +/* 0x10A */ X(PROC_SQ) \ +/* 0x10B */ X(PROC_NPC_SQ) \ +/* 0x10C */ X(PROC_DO) \ +/* 0x10D */ X(PROC_NPC_NE) \ +/* 0x10E */ X(PROC_NPC_TR) \ +/* 0x10F */ X(PROC_NPC_LF) \ +/* 0x110 */ X(PROC_OBJ_FOOD) \ +/* 0x111 */ X(PROC_OBJ_KI) \ +/* 0x112 */ X(PROC_OBJ_KITA) \ +/* 0x113 */ X(PROC_OBJ_KEY) \ +/* 0x114 */ X(PROC_OBJ_KEYHOLE) \ +/* 0x115 */ X(PROC_Obj_Lv5Key) \ +/* 0x116 */ X(PROC_OBJ_LP) \ +/* 0x117 */ X(PROC_OBJ_TATIGI) \ +/* 0x118 */ X(PROC_OBJ_ROCK) \ +/* 0x119 */ X(PROC_OBJ_WFLAG) \ +/* 0x11A */ X(PROC_OBJ_KAGE) \ +/* 0x11B */ X(PROC_OBJ_KANBAN2) \ +/* 0x11C */ X(PROC_OBJ_BALLOON) \ +/* 0x11D */ X(PROC_OBJ_SUISYA) \ +/* 0x11E */ X(PROC_OBJ_OILTUBO) \ +/* 0x11F */ X(PROC_OBJ_ROTEN) \ +/* 0x120 */ X(PROC_OBJ_SSDRINK) \ +/* 0x121 */ X(PROC_OBJ_SSITEM) \ +/* 0x122 */ X(PROC_TAG_SSDRINK) \ +/* 0x123 */ X(PROC_TAG_BTLITM) \ +/* 0x124 */ X(PROC_TAG_LV5SOUP) \ +/* 0x125 */ X(PROC_TAG_MNLIGHT) \ +/* 0x126 */ X(PROC_TAG_SHOPCAM) \ +/* 0x127 */ X(PROC_TAG_SHOPITM) \ +/* 0x128 */ X(PROC_OBJ_NDOOR) \ +/* 0x129 */ X(PROC_OBJ_UDOOR) \ +/* 0x12A */ X(PROC_OBJ_USAKU) \ +/* 0x12B */ X(PROC_Obj_SM_DOOR) \ +/* 0x12C */ X(PROC_OBJ_BED) \ +/* 0x12D */ X(PROC_OBJ_BOUMATO) \ +/* 0x12E */ X(PROC_OBJ_ITAMATO) \ +/* 0x12F */ X(PROC_OBJ_NOUGU) \ +/* 0x130 */ X(PROC_OBJ_STICK) \ +/* 0x131 */ X(PROC_OBJ_MIE) \ +/* 0x132 */ X(PROC_OBJ_SEKIDOOR) \ +/* 0x133 */ X(PROC_OBJ_SEKIZO) \ +/* 0x134 */ X(PROC_OBJ_SMTILE) \ +/* 0x135 */ X(PROC_NPC_FISH) \ +/* 0x136 */ X(PROC_MG_FISH) \ +/* 0x137 */ X(PROC_FSHOP) \ +/* 0x138 */ X(PROC_NPC_DU) \ +/* 0x139 */ X(PROC_DISAPPEAR) \ +/* 0x13A */ X(PROC_Obj_Mato) \ +/* 0x13B */ X(PROC_Obj_Flag) \ +/* 0x13C */ X(PROC_Obj_Flag2) \ +/* 0x13D */ X(PROC_Obj_Flag3) \ +/* 0x13E */ X(PROC_Obj_GOMIKABE) \ +/* 0x13F */ X(PROC_Obj_Yousei) \ +/* 0x140 */ X(PROC_Obj_Kabuto) \ +/* 0x141 */ X(PROC_Obj_Cho) \ +/* 0x142 */ X(PROC_Obj_Kuw) \ +/* 0x143 */ X(PROC_Obj_Nan) \ +/* 0x144 */ X(PROC_Obj_Dan) \ +/* 0x145 */ X(PROC_Obj_Kam) \ +/* 0x146 */ X(PROC_Obj_Ten) \ +/* 0x147 */ X(PROC_Obj_Ari) \ +/* 0x148 */ X(PROC_Obj_Kag) \ +/* 0x149 */ X(PROC_Obj_Batta) \ +/* 0x14A */ X(PROC_Obj_Tombo) \ +/* 0x14B */ X(PROC_Obj_Kat) \ +/* 0x14C */ X(PROC_Obj_H_Saku) \ +/* 0x14D */ X(PROC_Obj_Yobikusa) \ +/* 0x14E */ X(PROC_Obj_KazeNeko) \ +/* 0x14F */ X(PROC_Obj_KznkArm) \ +/* 0x150 */ X(PROC_Obj_NamePlate) \ +/* 0x151 */ X(PROC_Obj_OnCloth) \ +/* 0x152 */ X(PROC_Obj_LndRope) \ +/* 0x153 */ X(PROC_Obj_ItaRope) \ +/* 0x154 */ X(PROC_Obj_Sakuita) \ +/* 0x155 */ X(PROC_Obj_Laundry) \ +/* 0x156 */ X(PROC_WarpBug) \ +/* 0x157 */ X(PROC_Izumi_Gate) \ +/* 0x158 */ X(PROC_Obj_Fchain) \ +/* 0x159 */ X(PROC_Obj_Wchain) \ +/* 0x15A */ X(PROC_Tag_Attp) \ +/* 0x15B */ X(PROC_Obj_Tornado) \ +/* 0x15C */ X(PROC_Obj_Tornado2) \ +/* 0x15D */ X(PROC_Obj_FirePillar) \ +/* 0x15E */ X(PROC_Obj_FirePillar2) \ +/* 0x15F */ X(PROC_Obj_InoBone) \ +/* 0x160 */ X(PROC_Obj_Stopper) \ +/* 0x161 */ X(PROC_Obj_MHole) \ +/* 0x162 */ X(PROC_Tag_Magne) \ +/* 0x163 */ X(PROC_Obj_BossWarp) \ +/* 0x164 */ X(PROC_Obj_WoodPendulum) \ +/* 0x165 */ X(PROC_Obj_WdStick) \ +/* 0x166 */ X(PROC_Obj_StairBlock) \ +/* 0x167 */ X(PROC_Obj_Geyser) \ +/* 0x168 */ X(PROC_Tag_KtOnFire) \ +/* 0x169 */ X(PROC_Obj_FireWood) \ +/* 0x16A */ X(PROC_Obj_FireWood2) \ +/* 0x16B */ X(PROC_Obj_GpTaru) \ +/* 0x16C */ X(PROC_Obj_OnsenTaru) \ +/* 0x16D */ X(PROC_Obj_KiPot) \ +/* 0x16E */ X(PROC_TBOX_SW) \ +/* 0x16F */ X(PROC_Obj_SwChain) \ +/* 0x170 */ X(PROC_Obj_WoodenSword) \ +/* 0x171 */ X(PROC_Obj_StoneMark) \ +/* 0x172 */ X(PROC_Obj_Lv3Candle) \ +/* 0x173 */ X(PROC_Tag_Lv4Candle) \ +/* 0x174 */ X(PROC_Tag_Lv4CandleDm) \ +/* 0x175 */ X(PROC_Obj_DamCps) \ +/* 0x176 */ X(PROC_Obj_Smoke) \ +/* 0x177 */ X(PROC_Obj_WaterFall) \ +/* 0x178 */ X(PROC_Obj_ZoraCloth) \ +/* 0x179 */ X(PROC_Obj_poFire) \ +/* 0x17A */ X(PROC_Tag_poFire) \ +/* 0x17B */ X(PROC_Obj_glowSphere) \ +/* 0x17C */ X(PROC_Tag_LightBall) \ +/* 0x17D */ X(PROC_SwLBall) \ +/* 0x17E */ X(PROC_SwBall) \ +/* 0x17F */ X(PROC_Obj_WaterEff) \ +/* 0x180 */ X(PROC_Tag_RiverBack) \ +/* 0x181 */ X(PROC_Tag_KagoFall) \ +/* 0x182 */ X(PROC_Tag_Lv2PrChk) \ +/* 0x183 */ X(PROC_Obj_Lv4Gear) \ +/* 0x184 */ X(PROC_Obj_MasterSword) \ +/* 0x185 */ X(PROC_Obj_WoodStatue) \ +/* 0x186 */ X(PROC_Obj_Fan) \ +/* 0x187 */ X(PROC_Obj_IceLeaf) \ +/* 0x188 */ X(PROC_Obj_zrTuraraRc) \ +/* 0x189 */ X(PROC_Tag_RetRoom) \ +/* 0x18A */ X(PROC_Obj_WindStone) \ +/* 0x18B */ X(PROC_Tag_WaraHowl) \ +/* 0x18C */ X(PROC_Obj_SCannon) \ +/* 0x18D */ X(PROC_Obj_SmWStone) \ +/* 0x18E */ X(PROC_Obj_SCannonCrs) \ +/* 0x18F */ X(PROC_Tag_SnowEff) \ +/* 0x190 */ X(PROC_Tag_CstaSw) \ +/* 0x191 */ X(PROC_Tag_Lv6CstaSw) \ +/* 0x192 */ X(PROC_Obj_awaPlar) \ +/* 0x193 */ X(PROC_Obj_poTbox) \ +/* 0x194 */ X(PROC_Obj_TimeFire) \ +/* 0x195 */ X(PROC_Obj_TMoon) \ +/* 0x196 */ X(PROC_Obj_GanonWall) \ +/* 0x197 */ X(PROC_Obj_Prop) \ +/* 0x198 */ X(PROC_CSTATUE) \ +/* 0x199 */ X(PROC_Obj_SwBallA) \ +/* 0x19A */ X(PROC_Obj_SwBallB) \ +/* 0x19B */ X(PROC_Obj_SnowSoup) \ +/* 0x19C */ X(PROC_Obj_Nagaisu) \ +/* 0x19D */ X(PROC_Obj_RCircle) \ +/* 0x19E */ X(PROC_Obj_Picture) \ +/* 0x19F */ X(PROC_Tag_SetBall) \ +/* 0x1A0 */ X(PROC_Tag_SmkEmt) \ +/* 0x1A1 */ X(PROC_SwTime) \ +/* 0x1A2 */ X(PROC_Obj_HFtr) \ +/* 0x1A3 */ X(PROC_Obj_HBarrel) \ +/* 0x1A4 */ X(PROC_Obj_Crystal) \ +/* 0x1A5 */ X(PROC_Obj_SCannonTen) \ +/* 0x1A6 */ X(PROC_Obj_SwBallC) \ +/* 0x1A7 */ X(PROC_SCENE_EXIT2) \ +/* 0x1A8 */ X(PROC_Obj_Hata) \ +/* 0x1A9 */ X(PROC_Obj_ToaruMaki) \ +/* 0x1AA */ X(PROC_Tag_AttackItem) \ +/* 0x1AB */ X(PROC_Tag_RmbitSw) \ +/* 0x1AC */ X(PROC_Obj_Sword) \ +/* 0x1AD */ X(PROC_Tag_Spring) \ +/* 0x1AE */ X(PROC_Tag_Statue) \ +/* 0x1AF */ X(PROC_E_AI) \ +/* 0x1B0 */ X(PROC_E_GS) \ +/* 0x1B1 */ X(PROC_E_GOB) \ +/* 0x1B2 */ X(PROC_E_DD) \ +/* 0x1B3 */ X(PROC_E_DN) \ +/* 0x1B4 */ X(PROC_E_S1) \ +/* 0x1B5 */ X(PROC_E_MF) \ +/* 0x1B6 */ X(PROC_E_SG) \ +/* 0x1B7 */ X(PROC_E_BS) \ +/* 0x1B8 */ X(PROC_E_SF) \ +/* 0x1B9 */ X(PROC_E_SH) \ +/* 0x1BA */ X(PROC_E_DF) \ +/* 0x1BB */ X(PROC_E_GM) \ +/* 0x1BC */ X(PROC_E_MD) \ +/* 0x1BD */ X(PROC_E_SM) \ +/* 0x1BE */ X(PROC_E_SM2) \ +/* 0x1BF */ X(PROC_E_ST) \ +/* 0x1C0 */ X(PROC_E_ST_LINE) \ +/* 0x1C1 */ X(PROC_E_SB) \ +/* 0x1C2 */ X(PROC_E_TH) \ +/* 0x1C3 */ X(PROC_E_CR) \ +/* 0x1C4 */ X(PROC_E_CR_EGG) \ +/* 0x1C5 */ X(PROC_E_DB) \ +/* 0x1C6 */ X(PROC_E_DB_LEAF) \ +/* 0x1C7 */ X(PROC_E_GA) \ +/* 0x1C8 */ X(PROC_E_GB) \ +/* 0x1C9 */ X(PROC_E_HB) \ +/* 0x1CA */ X(PROC_E_HB_LEAF) \ +/* 0x1CB */ X(PROC_E_HZELDA) \ +/* 0x1CC */ X(PROC_E_YD) \ +/* 0x1CD */ X(PROC_E_YH) \ +/* 0x1CE */ X(PROC_E_YD_LEAF) \ +/* 0x1CF */ X(PROC_E_HM) \ +/* 0x1D0 */ X(PROC_E_TK) \ +/* 0x1D1 */ X(PROC_E_TK2) \ +/* 0x1D2 */ X(PROC_E_TK_BALL) \ +/* 0x1D3 */ X(PROC_E_RB) \ +/* 0x1D4 */ X(PROC_E_RD) \ +/* 0x1D5 */ X(PROC_E_RDB) \ +/* 0x1D6 */ X(PROC_E_RDY) \ +/* 0x1D7 */ X(PROC_E_FM) \ +/* 0x1D8 */ X(PROC_E_FS) \ +/* 0x1D9 */ X(PROC_E_PM) \ +/* 0x1DA */ X(PROC_E_PO) \ +/* 0x1DB */ X(PROC_E_MB) \ +/* 0x1DC */ X(PROC_E_MK) \ +/* 0x1DD */ X(PROC_E_MM) \ +/* 0x1DE */ X(PROC_E_FZ) \ +/* 0x1DF */ X(PROC_E_ZS) \ +/* 0x1E0 */ X(PROC_E_KK) \ +/* 0x1E1 */ X(PROC_E_HP) \ +/* 0x1E2 */ X(PROC_E_ZH) \ +/* 0x1E3 */ X(PROC_E_ZM) \ +/* 0x1E4 */ X(PROC_E_PZ) \ +/* 0x1E5 */ X(PROC_E_FB) \ +/* 0x1E6 */ X(PROC_E_FK) \ +/* 0x1E7 */ X(PROC_E_MS) \ +/* 0x1E8 */ X(PROC_E_NEST) \ +/* 0x1E9 */ X(PROC_E_NZ) \ +/* 0x1EA */ X(PROC_E_BA) \ +/* 0x1EB */ X(PROC_E_BU) \ +/* 0x1EC */ X(PROC_E_BUG) \ +/* 0x1ED */ X(PROC_E_BEE) \ +/* 0x1EE */ X(PROC_E_IS) \ +/* 0x1EF */ X(PROC_E_KG) \ +/* 0x1F0 */ X(PROC_E_KR) \ +/* 0x1F1 */ X(PROC_E_SW) \ +/* 0x1F2 */ X(PROC_E_GE) \ +/* 0x1F3 */ X(PROC_Tag_WatchGe) \ +/* 0x1F4 */ X(PROC_E_YM) \ +/* 0x1F5 */ X(PROC_E_YM_TAG) \ +/* 0x1F6 */ X(PROC_E_YMB) \ +/* 0x1F7 */ X(PROC_Tag_FWall) \ +/* 0x1F8 */ X(PROC_Tag_WaterFall) \ +/* 0x1F9 */ X(PROC_E_YK) \ +/* 0x1FA */ X(PROC_E_YR) \ +/* 0x1FB */ X(PROC_E_YG) \ +/* 0x1FC */ X(PROC_E_HZ) \ +/* 0x1FD */ X(PROC_E_WS) \ +/* 0x1FE */ X(PROC_E_OC) \ +/* 0x1FF */ X(PROC_E_OT) \ +/* 0x200 */ X(PROC_E_DT) \ +/* 0x201 */ X(PROC_E_BG) \ +/* 0x202 */ X(PROC_E_OctBg) \ +/* 0x203 */ X(PROC_DR) \ +/* 0x204 */ X(PROC_L7lowDr) \ +/* 0x205 */ X(PROC_L7ODR) \ +/* 0x206 */ X(PROC_E_TT) \ +/* 0x207 */ X(PROC_E_DK) \ +/* 0x208 */ X(PROC_E_VT) \ +/* 0x209 */ X(PROC_E_WW) \ +/* 0x20A */ X(PROC_E_GI) \ +/* 0x20B */ X(PROC_B_BH) \ +/* 0x20C */ X(PROC_B_BQ) \ +/* 0x20D */ X(PROC_B_GM) \ +/* 0x20E */ X(PROC_B_GND) \ +/* 0x20F */ X(PROC_B_GO) \ +/* 0x210 */ X(PROC_B_OH2) \ +/* 0x211 */ X(PROC_B_YO) \ +/* 0x212 */ X(PROC_B_YOI) \ +/* 0x213 */ X(PROC_B_TN) \ +/* 0x214 */ X(PROC_B_GG) \ +/* 0x215 */ X(PROC_B_DRE) \ +/* 0x216 */ X(PROC_B_MGN) \ +/* 0x217 */ X(PROC_E_WAP) \ +/* 0x218 */ X(PROC_ITEM) \ +/* 0x219 */ X(PROC_Obj_SmallKey) \ +/* 0x21A */ X(PROC_Obj_Kantera) \ +/* 0x21B */ X(PROC_Obj_LifeContainer) \ +/* 0x21C */ X(PROC_Obj_Shield) \ +/* 0x21D */ X(PROC_Demo_Item) \ +/* 0x21E */ X(PROC_ShopItem) \ +/* 0x21F */ X(PROC_Obj_Drop) \ +/* 0x220 */ X(PROC_OBJ_RW) \ +/* 0x221 */ X(PROC_NBOMB) \ +/* 0x222 */ X(PROC_TAG_CSW) \ +/* 0x223 */ X(PROC_TAG_QS) \ +/* 0x224 */ X(PROC_HOZELDA) \ +/* 0x225 */ X(PROC_SWC00) \ +/* 0x226 */ X(PROC_KNOB20) \ +/* 0x227 */ X(PROC_DBDOOR) \ +/* 0x228 */ X(PROC_BOSS_DOOR) \ +/* 0x229 */ X(PROC_L1BOSS_DOOR) \ +/* 0x22A */ X(PROC_L1MBOSS_DOOR) \ +/* 0x22B */ X(PROC_L5BOSS_DOOR) \ +/* 0x22C */ X(PROC_DSHUTTER) \ +/* 0x22D */ X(PROC_SPIRAL_DOOR) \ +/* 0x22E */ X(PROC_Tag_ChgRestart) \ +/* 0x22F */ X(PROC_Tag_Restart) \ +/* 0x230 */ X(PROC_ANDSW) \ +/* 0x231 */ X(PROC_ANDSW2) \ +/* 0x232 */ X(PROC_MYNA) \ +/* 0x233 */ X(PROC_NPC_GND) \ +/* 0x234 */ X(PROC_NPC_GRA) \ +/* 0x235 */ X(PROC_NPC_GRC) \ +/* 0x236 */ X(PROC_NPC_GRD) \ +/* 0x237 */ X(PROC_NPC_GRM) \ +/* 0x238 */ X(PROC_NPC_GRMC) \ +/* 0x239 */ X(PROC_NPC_GRO) \ +/* 0x23A */ X(PROC_NPC_GRR) \ +/* 0x23B */ X(PROC_NPC_GRS) \ +/* 0x23C */ X(PROC_NPC_GRZ) \ +/* 0x23D */ X(PROC_NPC_YAMID) \ +/* 0x23E */ X(PROC_NPC_YAMIT) \ +/* 0x23F */ X(PROC_NPC_YAMIS) \ +/* 0x240 */ X(PROC_NPC_BLUENS) \ +/* 0x241 */ X(PROC_NPC_KAKASHI) \ +/* 0x242 */ X(PROC_NPC_KDK) \ +/* 0x243 */ X(PROC_NPC_ARU) \ +/* 0x244 */ X(PROC_NPC_BANS) \ +/* 0x245 */ X(PROC_NPC_BESU) \ +/* 0x246 */ X(PROC_NPC_BOU) \ +/* 0x247 */ X(PROC_NPC_BOU_S) \ +/* 0x248 */ X(PROC_NPC_CLERKA) \ +/* 0x249 */ X(PROC_NPC_CLERKB) \ +/* 0x24A */ X(PROC_NPC_CLERKT) \ +/* 0x24B */ X(PROC_NPC_WRESTLER) \ +/* 0x24C */ X(PROC_Tag_Arena) \ +/* 0x24D */ X(PROC_Tag_Instruction) \ +/* 0x24E */ X(PROC_NPC_DOC) \ +/* 0x24F */ X(PROC_NPC_GWOLF) \ +/* 0x250 */ X(PROC_NPC_LEN) \ +/* 0x251 */ X(PROC_NPC_LUD) \ +/* 0x252 */ X(PROC_NPC_FAIRY_SEIREI) \ +/* 0x253 */ X(PROC_NPC_FAIRY) \ +/* 0x254 */ X(PROC_NPC_HANJO) \ +/* 0x255 */ X(PROC_NPC_HENNA) \ +/* 0x256 */ X(PROC_NPC_HENNA0) \ +/* 0x257 */ X(PROC_NPC_HOZ) \ +/* 0x258 */ X(PROC_NPC_JAGAR) \ +/* 0x259 */ X(PROC_NPC_KKRI) \ +/* 0x25A */ X(PROC_NPC_KN) \ +/* 0x25B */ X(PROC_KN_BULLET) \ +/* 0x25C */ X(PROC_NPC_KNJ) \ +/* 0x25D */ X(PROC_NPC_KOLIN) \ +/* 0x25E */ X(PROC_NPC_KOLINB) \ +/* 0x25F */ X(PROC_NPC_KYURY) \ +/* 0x260 */ X(PROC_NPC_MARO) \ +/* 0x261 */ X(PROC_NPC_MIDP) \ +/* 0x262 */ X(PROC_NPC_MOI) \ +/* 0x263 */ X(PROC_NPC_RACA) \ +/* 0x264 */ X(PROC_NPC_SARU) \ +/* 0x265 */ X(PROC_NPC_SEIB) \ +/* 0x266 */ X(PROC_NPC_SEIC) \ +/* 0x267 */ X(PROC_NPC_SEID) \ +/* 0x268 */ X(PROC_NPC_SEIRA) \ +/* 0x269 */ X(PROC_NPC_SERA2) \ +/* 0x26A */ X(PROC_NPC_SEIREI) \ +/* 0x26B */ X(PROC_NPC_SHAMAN) \ +/* 0x26C */ X(PROC_NPC_SMARO) \ +/* 0x26D */ X(PROC_NPC_SOLA) \ +/* 0x26E */ X(PROC_NPC_TARO) \ +/* 0x26F */ X(PROC_NPC_PACHI_BESU) \ +/* 0x270 */ X(PROC_NPC_PACHI_TARO) \ +/* 0x271 */ X(PROC_NPC_PACHI_MARO) \ +/* 0x272 */ X(PROC_TAG_PATI) \ +/* 0x273 */ X(PROC_NPC_THE) \ +/* 0x274 */ X(PROC_NPC_TKJ) \ +/* 0x275 */ X(PROC_NPC_TKS) \ +/* 0x276 */ X(PROC_NPC_TKC) \ +/* 0x277 */ X(PROC_OBJ_TKS) \ +/* 0x278 */ X(PROC_NPC_TOBY) \ +/* 0x279 */ X(PROC_NPC_URI) \ +/* 0x27A */ X(PROC_NPC_YELIA) \ +/* 0x27B */ X(PROC_NPC_YKM) \ +/* 0x27C */ X(PROC_NPC_YKW) \ +/* 0x27D */ X(PROC_NPC_ZANB) \ +/* 0x27E */ X(PROC_NPC_ZANT) \ +/* 0x27F */ X(PROC_NPC_ZELDA) \ +/* 0x280 */ X(PROC_NPC_ZELR) \ +/* 0x281 */ X(PROC_NPC_ZELRO) \ +/* 0x282 */ X(PROC_OBJ_ZRAFREEZE) \ +/* 0x283 */ X(PROC_NPC_ZRC) \ +/* 0x284 */ X(PROC_NPC_ZRZ) \ +/* 0x285 */ X(PROC_ZRA_MARK) \ +/* 0x286 */ X(PROC_MYNA2) \ +/* 0x287 */ X(PROC_TAG_MYNA2) \ +/* 0x288 */ X(PROC_NPC_CD3) \ +/* 0x289 */ X(PROC_Tag_Schedule) \ +/* 0x28A */ X(PROC_Tag_Escape) \ +/* 0x28B */ X(PROC_NPC_CHAT) \ +/* 0x28C */ X(PROC_NPC_SOLDIERa) \ +/* 0x28D */ X(PROC_NPC_SOLDIERb) \ +/* 0x28E */ X(PROC_PASSER_MNG) \ +/* 0x28F */ X(PROC_NPC_PASSER) \ +/* 0x290 */ X(PROC_NPC_PASSER2) \ +/* 0x291 */ X(PROC_NPC_POST) \ +/* 0x292 */ X(PROC_NPC_POUYA) \ +/* 0x293 */ X(PROC_FORMATION_MNG) \ +/* 0x294 */ X(PROC_NPC_FGUARD) \ +/* 0x295 */ X(PROC_GUARD_MNG) \ +/* 0x296 */ X(PROC_TAG_GUARD) \ +/* 0x297 */ X(PROC_NPC_GUARD) \ +/* 0x298 */ X(PROC_NPC_ASH) \ +/* 0x299 */ X(PROC_NPC_ASHB) \ +/* 0x29A */ X(PROC_NPC_SHAD) \ +/* 0x29B */ X(PROC_NPC_RAFREL) \ +/* 0x29C */ X(PROC_NPC_MOIR) \ +/* 0x29D */ X(PROC_NPC_IMPAL) \ +/* 0x29E */ X(PROC_NPC_SHOE) \ +/* 0x29F */ X(PROC_NPC_DOORBOY) \ +/* 0x2A0 */ X(PROC_NPC_PRAYER) \ +/* 0x2A1 */ X(PROC_NPC_KASIHANA) \ +/* 0x2A2 */ X(PROC_NPC_KASIKYU) \ +/* 0x2A3 */ X(PROC_NPC_KASIMICH) \ +/* 0x2A4 */ X(PROC_NPC_DRSOL) \ +/* 0x2A5 */ X(PROC_NPC_CHIN) \ +/* 0x2A6 */ X(PROC_NPC_INS) \ +/* 0x2A7 */ X(PROC_NPC_SHOP0) \ +/* 0x2A8 */ X(PROC_NPC_MK) \ +/* 0x2A9 */ X(PROC_NPC_P2) \ +/* 0x2AA */ X(PROC_KYTAG00) \ +/* 0x2AB */ X(PROC_KYTAG01) \ +/* 0x2AC */ X(PROC_KYTAG02) \ +/* 0x2AD */ X(PROC_KYTAG03) \ +/* 0x2AE */ X(PROC_KYTAG04) \ +/* 0x2AF */ X(PROC_KYTAG05) \ +/* 0x2B0 */ X(PROC_KYTAG06) \ +/* 0x2B1 */ X(PROC_KYTAG07) \ +/* 0x2B2 */ X(PROC_KYTAG08) \ +/* 0x2B3 */ X(PROC_KYTAG09) \ +/* 0x2B4 */ X(PROC_KYTAG10) \ +/* 0x2B5 */ X(PROC_KYTAG11) \ +/* 0x2B6 */ X(PROC_KYTAG12) \ +/* 0x2B7 */ X(PROC_KYTAG13) \ +/* 0x2B8 */ X(PROC_KYTAG14) \ +/* 0x2B9 */ X(PROC_KYTAG15) \ +/* 0x2BA */ X(PROC_KYTAG16) \ +/* 0x2BB */ X(PROC_KYTAG17) \ +/* 0x2BC */ X(PROC_Ykgr) \ +/* 0x2BD */ X(PROC_TALK) \ +/* 0x2BE */ X(PROC_Obj_Crope) \ +/* 0x2BF */ X(PROC_Obj_Bombf) \ +/* 0x2C0 */ X(PROC_Obj_BkLeaf) \ +/* 0x2C1 */ X(PROC_Tag_Mhint) \ +/* 0x2C2 */ X(PROC_Tag_Mmsg) \ +/* 0x2C3 */ X(PROC_Tag_Mwait) \ +/* 0x2C4 */ X(PROC_Tag_Mstop) \ +/* 0x2C5 */ X(PROC_Tag_Stream) \ +/* 0x2C6 */ X(PROC_Tag_Sppath) \ +/* 0x2C7 */ X(PROC_Tag_Wljump) \ +/* 0x2C8 */ X(PROC_Tag_TWGate) \ +/* 0x2C9 */ X(PROC_Tag_Lv6Gate) \ +/* 0x2CA */ X(PROC_Tag_Lv7Gate) \ +/* 0x2CB */ X(PROC_Tag_Lv8Gate) \ +/* 0x2CC */ X(PROC_Tag_TheBHint) \ +/* 0x2CD */ X(PROC_Tag_Assist) \ +/* 0x2CE */ X(PROC_DEMO00) \ +/* 0x2CF */ X(PROC_TAG_CAMERA) \ +/* 0x2D0 */ X(PROC_TAG_CHKPOINT) \ +/* 0x2D1 */ X(PROC_TAG_EVENT) \ +/* 0x2D2 */ X(PROC_TAG_EVT) \ +/* 0x2D3 */ X(PROC_TAG_TELOP) \ +/* 0x2D4 */ X(PROC_TAG_HOWL) \ +/* 0x2D5 */ X(PROC_TAG_MSG) \ +/* 0x2D6 */ X(PROC_TAG_LANTERN) \ +/* 0x2D7 */ X(PROC_Tag_Mist) \ +/* 0x2D8 */ X(PROC_DMIDNA) \ +/* 0x2D9 */ X(PROC_KY_THUNDER) \ +/* 0x2DA */ X(PROC_VRBOX) \ +/* 0x2DB */ X(PROC_VRBOX2) \ +/* 0x2DC */ X(PROC_BG) \ +/* 0x2DD */ X(PROC_SET_BG_OBJ) \ +/* 0x2DE */ X(PROC_BG_OBJ) \ +/* 0x2DF */ X(PROC_MIRROR) \ +/* 0x2E0 */ X(PROC_MOVIE_PLAYER) \ +/* 0x2E1 */ X(PROC_TITLE) \ +/* 0x2E2 */ X(PROC_FR) \ +/* 0x2E3 */ X(PROC_ECONT) \ +/* 0x2E4 */ X(PROC_MG_ROD) \ +/* 0x2E5 */ X(PROC_E_ARROW) \ +/* 0x2E6 */ X(PROC_BULLET) \ +/* 0x2E7 */ X(PROC_SWHIT0) \ +/* 0x2E8 */ X(PROC_E_TH_BALL) \ +/* 0x2E9 */ X(PROC_TAG_EVTAREA) \ +/* 0x2EA */ X(PROC_TAG_EVTMSG) \ +/* 0x2EB */ X(PROC_TAG_KMSG) \ +/* 0x2EC */ X(PROC_TAG_PUSH) \ +/* 0x2ED */ X(PROC_E_MK_BO) \ +/* 0x2EE */ X(PROC_E_MM_MT) \ +/* 0x2EF */ X(PROC_OBJ_KBOX) \ +/* 0x2F0 */ X(PROC_OBJ_FW) \ +/* 0x2F1 */ X(PROC_B_GOS) \ +/* 0x2F2 */ X(PROC_OBJ_YSTONE) \ +/* 0x2F3 */ X(PROC_MANT) \ +/* 0x2F4 */ X(PROC_CROD) \ +/* 0x2F5 */ X(PROC_OBJ_PLEAF) \ +/* 0x2F6 */ X(PROC_OBJ_KBACKET) \ +/* 0x2F7 */ X(PROC_OBJ_YBAG) \ +/* 0x2F8 */ X(PROC_OBJ_PUMPKIN) \ +/* 0x2F9 */ X(PROC_OBJ_AUTOMATA) \ +/* 0x2FA */ X(PROC_OBJ_GADGET) \ +/* 0x2FB */ X(PROC_OBJ_KAGO) \ +/* 0x2FC */ X(PROC_Obj_Carry) \ +/* 0x2FD */ X(PROC_Obj_Stone) \ +/* 0x2FE */ X(PROC_OBJ_HB) \ +/* 0x2FF */ X(PROC_NPC_INKO) \ +/* 0x300 */ X(PROC_BD) \ +/* 0x301 */ X(PROC_Obj_Eff) \ +/* 0x302 */ X(PROC_WPILLAR) \ +/* 0x303 */ X(PROC_WMARK) \ +/* 0x304 */ X(PROC_E_BI) \ +/* 0x305 */ X(PROC_E_BI_LEAF) \ +/* 0x306 */ X(PROC_START_AND_GOAL) \ +/* 0x307 */ X(PROC_NPC_DF) \ +/* 0x308 */ X(PROC_ARROW) \ +/* 0x309 */ X(PROC_PATH_LINE) \ +/* 0x30A */ X(PROC_TAG_ALLMATO) \ +/* 0x30B */ X(PROC_Obj_Timer) \ +/* 0x30C */ X(PROC_SCENE_EXIT) \ +/* 0x30D */ X(PROC_CAMERA) \ +/* 0x30E */ X(PROC_CAMERA2) \ +/* 0x30F */ X(PROC_SUSPEND) \ +/* 0x310 */ X(PROC_GRASS) \ +/* 0x311 */ X(PROC_KYEFF) \ +/* 0x312 */ X(PROC_KYEFF2) \ +/* 0x313 */ X(PROC_MSG_OBJECT) \ +/* 0x314 */ X(PROC_MENUWINDOW) \ +/* 0x315 */ X(PROC_TIMER) \ +/* 0x316 */ X(PROC_METER2) \ +/* 0x317 */ X(PROC_GAMEOVER) \ + +#define X(name) name, +enum { + ALL_PROCS PROC_MAX_NUM, }; +#undef X + +#if PROCS_DUMP_NAMES +struct ProcName { + unsigned int id; + const char* name; +}; + +#define X(name) { name, #name }, +inline ProcName procNames[] = { + ALL_PROCS +}; +#undef name + +#endif + +#undef ALL_PROCS #endif /* D_PROCNAME_H */ diff --git a/src/dusk/imgui.cpp b/src/dusk/imgui.cpp index 0a42e87191..c48a96c456 100644 --- a/src/dusk/imgui.cpp +++ b/src/dusk/imgui.cpp @@ -1,4 +1,5 @@ #include "dusk/imgui.h" +#include "imgui/imgui.hpp" #include #include @@ -72,6 +73,8 @@ static std::string BytesToString(size_t bytes) return fmt::format(FMT_STRING("{:.1f}{}"), count, suffixes[s]); } +static void ShowProcesses(); + void imgui_main(const AuroraInfo *info) { @@ -164,6 +167,8 @@ void imgui_main(const AuroraInfo *info) } } ImGui::End(); + + DuskImguiProcesses(); } class Limiter diff --git a/src/dusk/imgui/imgui.hpp b/src/dusk/imgui/imgui.hpp new file mode 100644 index 0000000000..f5c6e430db --- /dev/null +++ b/src/dusk/imgui/imgui.hpp @@ -0,0 +1,6 @@ +#ifndef DUSK_IMGUI_HPP +#define DUSK_IMGUI_HPP + +void DuskImguiProcesses(); + +#endif // DUSK_IMGUI_HPP diff --git a/src/dusk/imgui/processes.cpp b/src/dusk/imgui/processes.cpp new file mode 100644 index 0000000000..4950f3341d --- /dev/null +++ b/src/dusk/imgui/processes.cpp @@ -0,0 +1,110 @@ +#define PROCS_DUMP_NAMES 1 + +#include + +#include "d/d_procname.h" +#include "f_pc/f_pc_create_iter.h" +#include "f_pc/f_pc_create_req.h" +#include "f_pc/f_pc_layer.h" +#include "f_pc/f_pc_layer_iter.h" +#include "f_pc/f_pc_leaf.h" +#include "f_pc/f_pc_node.h" +#include "imgui.h" +#include "imgui.hpp" +#include "imgui_internal.h" + +static const char* getProcName(s16 id) { + for (auto procName : procNames) { + if (procName.id == id) { + return procName.name; + } + } + + return nullptr; +} + +bool showTreeRecursive; + +static int ShowProcess(void* p, void*) { + auto proc = static_cast(p); + + char buf[64]; + snprintf(buf, sizeof(buf), "%d", proc->id); + + ImVec2 avail = ImGui::GetContentRegionAvail(); + + ImVec2 vec = {avail.x, 0}; + if (ImGui::BeginChild(buf, vec, ImGuiChildFlags_Border | ImGuiChildFlags_AutoResizeY)) { + ImGui::Text("[%d] %s", proc->id, getProcName(proc->profname)); + ImGui::Text("init_state: %d, create_phase: %d", proc->state.init_state, proc->state.create_phase); + + const char* ofTypeName = "unknown"; + if (proc->subtype == g_fpcNd_type) { + ofTypeName = "Node"; + } else if (proc->subtype == g_fpcLf_type) { + ofTypeName = "Leaf"; + } + + ImGui::Text("OfType: %d (%s), layer: %d", proc->subtype, ofTypeName, proc->layer_tag.layer->layer_id); + + if (proc->create_req != nullptr) { + ImGui::TextColored(ImVec4(1.0f, 0.0f, 0.0f, 1.0f), "Pending create request"); + } + + if (showTreeRecursive) { + if (fpcBs_Is_JustOfType(g_fpcNd_type, proc->subtype)) { + auto procNode = static_cast(p); + + ImGui::Text("Owns layer %d", procNode->layer.layer_id); + + fpcLyIt_OnlyHere(&procNode->layer, ShowProcess, nullptr); + } + } + } + + ImGui::EndChild(); + return 1; +} + +static int ShowCreateRequest(void* p, void*) { + create_request* req = (create_request*)p; + + if (req->process != nullptr) { + ShowProcess(req->process, nullptr); + } + + return 1; +} + +void DuskImguiProcesses() { + if (ImGui::Begin("Processes")) { + if (ImGui::BeginTabBar("Tabs")) { + showTreeRecursive = true; + if (ImGui::BeginTabItem("Tree")) { + fpcLyIt_OnlyHere(fpcLy_RootLayer(), ShowProcess, nullptr); + ImGui::EndTabItem(); + } + + showTreeRecursive = false; + if (ImGui::BeginTabItem("All layers")) { + fpcLyIt_All(ShowProcess, nullptr); + ImGui::EndTabItem(); + } + + if (ImGui::BeginTabItem("Creation queue")) { + fpcCtIt_Method(ShowCreateRequest, nullptr); + + ImGui::EndTabItem(); + } + + ImGui::EndTabBar(); + } + } + + ImGui::End(); + + /* + bool open = true; + ImGui::ShowDemoWindow(&open); + */ +}