__diffAt is the comparison function which takes 4 parameters:
- the code segment address
- the constant data address
- the initialized data address
- the object file path
When I could guess the object file name from the assembly code (originally through the __FILE__ macro) I kept this name. Otherwise I would name the file from the object code address prefixed with C_.
As you can see, most of the exe file is reversed now. Only the battle effects modules are still to be decompiled. And there are many of them. So it won't be for tomorrow.
Anyway I'm pretty happy with this "map" because it gives some clean view to the original exe file. You can see that there is a clean separation of the different parts of the file. For instance, the "highway minigame" files are contiguous, same for the "field" part, or the "world map" part.
Here it is, I hope you have fun with it !
//-------------------- //---- 0x00401000 ---- //-------------------- // __diffAt(0x00401000, 0x007BA070, 0, OBJPATH "init.obj");//ok // __diffAt(0x00401500, 0x007BA1A8, 0x007B63E0, OBJPATH "C_00401500.obj");//ok -- "swirl effect module" // __diffAt(0x00402EF0, 0x007BA278, 0x007B6408, OBJPATH "C_00402EF0.obj");//ok -- "request CD" // __diffAt(0x00404D80, 0, 0x007B6448, OBJPATH "C_00404D80.obj");//ok -- windows registry stuff // __diffAt(0x00404E00, 0x007BA668, 0x007B6490, OBJPATH "C_00404E00.obj");//ok -- "Game Over" // __diffAt(0x004067A0, 0x007BA738, 0x007B64A0, OBJPATH "C_004067A0.obj");//ok -- windows registry stuff // __diffAt(0x00406D10, 0x007BA748, 0x007B6550, OBJPATH "initpath.obj");//ok[contains bug] // __diffAt(0x00408010, 0x007BAB24, 0x007B6658, OBJPATH "main.obj");//ok // __diffAt(0x0040A460, 0, 0x007B6730, OBJPATH "C_0040A460.obj");//ok -- windows registry stuff // __diffAt(0x0040AAB0, 0, 0x007B6818, OBJPATH "C_0040AAB0.obj");//ok -- timeSetEvent related // __diffAt(0x0040AC90, 0x007BAE80, 0, OBJPATH "sm_movie.obj");//ok //-------------------- //---- 0x0040B400 ---- //-------------------- // libc //-------------------- //---- 0x00414EE0 ---- //-------------------- // __diffAt(0x00414EE0, 0, 0, OBJPATH "C_00414EE0.obj");//ok -- movie related debug module // __diffAt(0x00414F00, 0x007BF640, 0x007B7468, OBJPATH "movie.obj");//ok[using DXMEDIA 6] // __diffAt(0x004186E0, 0x007C05B8, 0, OBJPATH "C_004186E0.obj");//ok // __diffAt(0x00419210, 0x007C0A68, 0x007B7470, OBJPATH "smcdfile.obj");//ok // __diffAt(0x00419360, 0x007C0AE8, 0x007B7478, OBJPATH "C_00419360.obj");//ok // __diffAt(0x00419E50, 0, 0, OBJPATH "C_00419E50.obj");//ok -- part of gzip inflater? // __diffAt(0x0041A090, 0, 0, OBJPATH "C_0041A090.obj");//ok -- used by SWIRL? // __diffAt(0x0041A1B0, 0, 0, OBJPATH "C_0041A1B0.obj");//ok -- high-level input module // __diffAt(0x0041B300, 0/*0x007C0AF0*/, 0x007B74B8, OBJPATH "Battle.obj");//hobo ok[data] // __diffAt(0x0041CF10, 0, 0, OBJPATH "C_0041CF10.obj");//ok -- some inflate function // __diffAt(0x0041D090, 0x00000000, 0x00000000, OBJPATH "C_0041D090.obj");//ok // __diffAt(0x0041D300, 0x007C0D08, 0, OBJPATH "C_0041D300.obj");//ok -- inflate.cpp? // __diffAt(0x0041EEA0, 0x007C0E84, 0x007B74D0, OBJPATH "input.obj");//ok //====---- BATTLE ----==== almost 300 files // __diffAt(0x0041FA70, 0/*0x007C1028*/, 0, OBJPATH "C_0041FA70.obj");//hobo ok[data] // __diffAt(0x00428500, 0x007C1FC8, 0x007B74E0, OBJPATH "b3ddata.obj");//ok // __diffAt(0x00429AC0, 0x007C21C8, 0x007B74E4, OBJPATH "C_00429AC0.obj");//ok // __diffAt(0x00430DD0, 0, 0, OBJPATH "C_00430DD0.obj");//ok // __diffAt(0x00431890, 0x007C28C0, 0, OBJPATH "coloss.obj");//ok // __diffAt(0x00431C80, 0, 0, OBJPATH "C_00431C80.obj");//ok // __diffAt(0x00432040, 0, 0, OBJPATH "C_00432040.obj");//ok // __diffAt(0x00432C60, 0, 0, OBJPATH "C_00432C60.obj");//ok // __diffAt(0x00433020, 0, 0, OBJPATH "C_00433020.obj");//ok // __diffAt(0x00433510, 0x007C2980, 0x007B74F0, OBJPATH "C_00433510.obj");//hobo ok[data duplicate problem] // __diffAt(0x00434690, 0x007C2A00, 0x007B7500, OBJPATH "C_00434690.obj");//hobo ok[data duplicate problem] // __diffAt(0x00435250, 0, 0, OBJPATH "C_00435250.obj");//ok // __diffAt(0x00435770, 0x007C2ACC, 0x007B7510, OBJPATH "C_00435770.obj");//ok // __diffAt(0x00436C30, 0, 0, OBJPATH "C_00436C30.obj");//ok // __diffAt(0x004372B0, 0, 0, OBJPATH "C_004372B0.obj");//ok // __diffAt(0x00437370, 0x007C2AD0, 0, OBJPATH "C_00437370.obj");//ok // __diffAt(0x00437DB0, 0, 0, OBJPATH "C_00437DB0.obj");//ok //-- 284 files -- // __diffAt(0x00438610, 0x007C2AE0, 0, OBJPATH "C_00438610.obj");//ok "EFFECT/HITMARK" // __diffAt(0x00438C80, 0x007C3248, 0, OBJPATH "C_00438C80.obj");//ok "EFFECT/S_BARIA" // __diffAt(0x004390F0, 0x007C32D0, 0, OBJPATH "C_004390F0.obj");//ok "MAGIC/MGUN" //__diffAt(0x00439A00, 0x007C33A0, 0, OBJPATH "lasboss3.obj");//[TODO] "weapon/s_nova" //0x004429B0 "weapon/dia_u" //0x00444730 "weapon/weapon4" //0x00447AB0 "weapon/beam1" //0x00448A60 "weapon/weapon3" //0x0044A510 "weapon/weapon1" "C:\FF7\src\battle\yasui\sting.cpp"? //0x0044EC10 "WEAPON/WEAPON2" // __diffAt(0x00452020, 0x007E2CA8, 0, OBJPATH "deadsef.obj");//ok "SUMMON/LASTBOSS" //0x004559B0 "SPECIAL/TOSEKI" //0x00457040 "SPECIAL/MAGEND" //0x00457410 "MAGIC/WALL" //0x00457A90 "SPECIAL/LASBOSS1" //0x0045A2C0 "LIMIT/S_GUARD" //0x0045ADF0 "LIMIT/DAICHI" //0x0045B8A0 "SPECIAL/PUNCH" //0x0045C030 "limit2/satan" //0x00461660 "limit2/night" //0x00463E50 "LIMIT2/SPARK" //0x004658A0 "ITEM/KEMURI" //0x00465B30 "ITEM/YAMABIKO" //0x00465F70 "LIMIT/A_MAX" //0x00466990 "LIMIT/HAZARD" //0x00467490 "LIMIT/HAMBLOW" //0x004685F0 "LIMIT/CATASTRO" //0x0046B6C0 "LIMIT/BUSIN" //0x0046E7F0 "LIMIT/HAKOU" //0x0046FF00 "LIMIT/S_BEAM" //0x00471FD0 "LIMIT/GLENADE" //0x00472EC0 "LIMIT/JAKI" //0x004739E0 "LIMIT/EVA" //__diffAt(0x004766C0, 0x00000000, 0x00000000, OBJPATH "C_004766C0.obj");//[TODO] "SUMMON/KNIGHTS" //0x00483520 "SUMMON/VAHAMUT3" "C:\FF7\src\Battle\yasui\vahamut0.cpp"? //0x0048C200 "SUMMON/VAHAMUT2" //0x004943E0 "LIMIT2/GAISEI" //0x00496B50 "LIMIT/RAKUIN" //0x00497790 "SUMMON/VAHAMUT" //__diffAt(0x0049B040, 0x00000000, 0x00000000, OBJPATH "C_0049B040.obj");//[TODO] "magic/brizag2" //0x0049FA40 "limit2/dise" //0x004A0A40 "SUMMON/odin1" // __diffAt(0x004A5AC0, 0x00803E48, 0, OBJPATH "C_004A5AC0.obj");//ok "SUMMON/odin2" //0x004AAB50 "limit2/beast" //0x004AB910 "LIMIT/KODOU" //0x004AC3F0 "LIMIT/MIND" //0x004ACE20 "LIMIT2/HITUMETU" //0x004AD950 "LIMIT2/ISSHOKU" //0x004AE240 "LIMIT2/MATSURI" //0x004AE840 "LIMIT2/JINRAI" //0x004AEB60 "LIMIT3/RANNTOU" //0x004AF1E0 "LIMIT3/D_DIVE" //0x004AFD20 "LIMIT3/H_JUMP" //0x004B1800 "LIMIT3/D_M" //0x004B2A50 "LIMIT3/B_JUMP" //0x004B2F40 "LIMIT3/SINRA" //0x004B38A0 "LIMIT3/HIWIND" //0x004B46B0 "LIMIT2/MEIKYO" //0x004B5120 "LIMIT3/DYNAMITE" //0x004B62B0 "summon/hardeath" //0x004BE8A0 "limit2/garyoten" //0x004C15C0 "limit2/meteo_r" //0x004C3F80 "limit/lgirl" //0x004C4BE0 "LIMIT3/C_M" //0x004C6860 "limit3/e_r" //0x004C8200 "limit2/lunatic" //0x004C8E90 "limit3/s_d" //0x004CB120 "limit3/h_moon" //0x004CBDF0 "LIMIT2/TOYBOX" //0x004CCF30 "item/wp_bi" //0x004CD810 "item/wp_ke" //__diffAt(0x004CE0F0, 0x00000000, 0x00000000, OBJPATH "C_004CE0F0.obj");//[TODO] "item/wp_yu" //0x004CFEB0 "item/wp_si" //0x004D1B90 "item/wp_ea" //0x004D2830 "item/wp_ba" //0x004D36A0 "item/wp_cu" //0x004D3F10 "BLUE/KAENN" //0x004D4790 "MAGIC/FULL" //0x004D56B0 "SUMMON/tupon" //0x004DB2E0 "SPECIAL/TYOKYU" //0x004DCEB0 "SPECIAL/SYAKU" //0x004DE3E0 "SPECIAL/RE_DO" //0x004DF8F0 "SPECIAL/HADOHO" //0x004E0E40 "SPECIAL/SHIELD" //__diffAt(0x004E1580, 0x00000000, 0x00000000, OBJPATH "C_004E1580.obj");//[TODO] "limit2/tifa1" //0x004EA970 "limit3/sld_fang" //0x004ECE70 "special/joker2" //0x004EE870 "special/joker1" //0x004EF6A0 "SPECIAL/DIA2" //0x004F06F0 "SPECIAL/DIA1" //0x004F1E20 "SPECIAL/CLUB2" //0x004F4370 "SPECIAL/club1" //0x004F52D0 "special/heart2" //0x004F6AF0 "special/heart1" //0x004F7AF0 "SPECIAL/SPADE2" //0x004F8AD0 "SPECIAL/SPADE1" //0x004F97F0 "SUMMON/KJATA" //0x005013F0 "SUMMON/ALEXAND" //0x00507AF0 "SUMMON/CHOCO2" //0x005097C0 "SUMMON/CHOCO" //0x0050B850 "SPECIAL/HADO" //0x0050CD90 "SPECIAL/ENERGY" //0x0050E2B0 "SPECIAL/KAKUSAN" //0x0050F110 "SPECIAL/SAIKYO" //0x00510230 "SPECIAL/HO_DEN" //0x00511230 "special/s_bless" //0x005125E0 "SPECIAL/GESUI1" //0x005135B0 "SPECIAL/MIZUFUKI" //0x00514710 "ITEM/VEGET" //0x00515060 "SUMMON/FENIC" //0x005190F0 "special/korosi" //0x00519830 "SPECIAL/FROG" //0x0051A500 "SPECIAL/DAIONPA" //0x0051B250 "SPECIAL/RENMISA" //0x0051C410 "SPECIAL/SEKIKA" //0x0051E190 "SPECIAL/NAPARM" //0x0051F5F0 "SPECIAL/KONA" //0x00520290 "SPECIAL/PINK" //0x005212B0 "SPECIAL/JAMMER2" //0x00522010 "SPECIAL/JAMMER" //0x00522B00 "SPECIAL/HAKUGEK2" //0x00523850 "SPECIAL/HAKUGEK1" //0x005246A0 "SPECIAL/GAS" //0x00525190 "SPECIAL/SHOWER" //0x00525EC0 "SPECIAL/JIBASIRI" //0x00526DA0 "SPECIAL/TELE" //0x00528200 "SPECIAL/DENGEKI" //0x00528FF0 "SPECIAL/NADARE" //0x0052A550 "SPECIAL/ROKET" //0x0052B920 "SPECIAL/KOUDAN2" //0x0052CB40 "SPECIAL/KOUDAN1" //0x0052D8B0 "SPECIAL/REITO" //0x0052F170 "special/yami" //0x0052FE10 "special/renbaku" //0x005305F0 "special/zenbaku" //0x00530D30 "SPECIAL/UTAGOE" //0x005313F0 "special/daisenp" //0x00531FE0 "special/ayasii" //0x005324A0 "special/heatbu" //0x00532B10 "magic/seald" //0x00533920 "SPECIAL/MAGMA2" //0x00533FE0 "SPECIAL/HIKARI3" //0x00534710 "SPECIAL/HIKARI2" //0x00534E80 "SPECIAL/REIKI" //0x00535C30 "SPECIAL/KAEN2" //0x00536850 "SPECIAL/KAEN" //0x00537340 "SPECIAL/JIBAKU2" //0x00538480 "special/turara" //0x00539040 "SPECIAL/WLASER" //0x00539770 "SPECIAL/HAKAI" //0x00539B10 "SPECIAL/GEKI2" //0x0053B2B0 "SPECIAL/GEKI1" //0x0053BFA0 "SPECIAL/NETU" //0x0053CCD0 "SPECIAL/MAGMA" //0x0053D3D0 "SPECIAL/ONSEN" //0x0053DAA0 "special/sander" //0x0053EEC0 "SPECIAL/AWA2" //0x0053FE90 "SPECIAL/CHIKASUI" //0x00540500 "SPECIAL/KINZAN" //0x00540B10 "SPECIAL/SMOG" //0x00541810 "SPECIAL/TUNAMI" //0x005426E0 "SPECIAL/KAHUN" //0x005434E0 "special/toboe2" //0x00543D40 "SPECIAL/SCORP" //0x00544590 "SPECIAL/NOZAN" //0x005452E0 "SPECIAL/SAZAN" //0x00546030 "SPECIAL/KUEISA" //0x00547460 "SPECIAL/HUBUKI" //0x005482A0 "SPECIAL/DOKUEKI" //0x00548AC0 "SPECIAL/DOKUFUKI" //0x005493F0 "SPECIAL/OIL" //0x00549D50 "SPECIAL/NONOSI" //0x0054B150 "SPECIAL/ATMIC" //0x0054C8E0 "SPECIAL/COLD1" //0x0054D6F0 "SPECIAL/RAKU" //0x0054E6D0 "SPECIAL/HARRIER" //0x0054F290 "SPECIAL/MIZU" //0x0054FA50 "SPECIAL/TRIANGLE" //0x00550CB0 "SPECIAL/OSEN" //0x00551B80 "SPECIAL/KYUU2" //0x005529F0 "SPECIAL/JIBAKU1" //0x00552CF0 "SPECIAL/KAMA2" //0x005535E0 "SPECIAL/SUMI" //0x00554010 "SPECIAL/KYUU" //0x00554E80 "SPECIAL/KAMA" //0x00555760 "SPECIAL/MISAIRU" //0x00556130 "SPECIAL/B_2" //0x005579E0 "special/yuwaku" //0x005586C0 "SPECIAL/REZA2" //0x00559470 "SPECIAL/HIKARI" //0x00559AC0 "SPECIAL/ITO" //0x0055A710 "SPECIAL/SUNA" //0x0055B350 "SPECIAL/KONOHA" //0x0055BA70 "SPECIAL/KIENGIRI" //0x0055C3B0 "special/tan" //0x0055C940 "SPECIAL/MGBEAM" //0x0055D240 "SPECIAL/TANE" //0x0055DA60 "SPECIAL/HARI" //0x0055E2E0 "SPECIAL/SARCHI" //0x0055EAE0 "SPECIAL/BAKYU" //0x0055F7E0 "SPECIAL/ONPA" //0x0055FDD0 "blue/chyobo" //0x00561B90 "magic/deth" //0x00564390 "magic/aleiz" //0x00565EC0 "blue/ruretto" //0x00566740 "blue/nanntoka" //0x00568D30 "blue/mytyg" //0x005696A0 "blue/lv4jibak" //0x0056A800 "blue/matra" //0x0056C1A0 "blue/reazer" //__diffAt(0x0056D880, 0x00000000, 0x00000000, OBJPATH "C_0056D880.obj");//[TODO] "magic/faiga3" //0x0056ECF0 "blue/lv5deth" //0x0056F2B0 "blue/dethfo" //0x0056FFD0 "blue/kaeru" //0x00570850 "blue/dragonn" //0x005711E0 "blue/hanmmer" //0x00571940 "blue/kusai" //0x00571E20 "blue/hatena" //0x00572B90 "blue/goblinp" //0x00573720 "blue/aqua" //0x00573D80 "blue/magikal" //0x005743C0 "BLUE/TRAINN" //0x00574B00 "MAGIC/TODO" //0x00574F90 "magic/minimam" //0x00575460 "magic/dethper" //0x00576F40 "blue/sflea" //0x00578520 "magic/debaria" //0x005796B0 "magic/altema" //0x0057A6E0 "blue/beata" //0x0057B630 "magic/brizag" //0x0057E260 "magic/faiga" //0x0057F210 "magic/flea" //0x00580750 "MAGIC/STOP" //0x00581550 "magic/sailess" //0x005819D0 "magic/queik" //0x00581D50 "magic/queig" //0x00585330 "magic/queir" //0x00587C90 "magic/heist" //0x00588D10 "MAGIC/SLIPL" //0x00589550 "SPECIAL/TIMEDMG" //0x0058ADB0 "SPECIAL/UZUMAKI" //0x0058BD10 "BLUE/KAENN" //0x0058CE50 "MAGIC/FREEZE" //0x0058E370 "SUMMON/SIVA" //0x00592720 "SUMMON/IFU" //0x00596F50 "SUMMON/LAMU" //0x0059B090 "SUMMON/TAITAN" //0x005A01A0 "MAGIC/HITMARK" //0x005A0DC0 "BLUE/HOWIN" //0x005A1320 "MAGIC/REZIST" //0x005A1850 "MAGIC/ESNA" //0x005A1D60 "MAGIC/BREAK" // __diffAt(0x005A2570, 0x008C9978, 0x00000000, OBJPATH "C_005A2570.obj");//ok "MAGIC/BIO4" //0x005A2E60 "MAGIC/BIO3" //0x005A4220 "MAGIC/COMETEO" //0x005A5520 "MAGIC/BIO2" //0x005A66A0 "MAGIC/BIO" //0x005A6BF0 "MAGIC/COMET" //__diffAt(0x005A7DD0, 0x00000000, 0x00000000, OBJPATH "C_005A7DD0.obj");//[TODO] "MAGIC/GRAV5" //0x005A9630 "MAGIC/GRAV3_1" //0x005AA910 "MAGIC/GRAV2" //0x005AB420 "MAGIC/TORNADO" //0x005AC3A0 "MAGIC/DEJON" //0x005ACEF0 "SPECIAL/REZA1" //0x005AD5C0 "LIMIT/HVSHOT" //0x005AE4C0 "LIMIT/KYOGIRI" // __diffAt(0x005AEC40, 0x008F34B8, 0x00000000, OBJPATH "C_005AEC40.obj");//ok "LIMIT/BLAVER" //0x005AF350 "LIMIT/IYASHI" //0x005AFF70 "SPECIAL/KEMU1" // __diffAt(0x005B02E0, 0x008F36D8, 0, OBJPATH "C_005B02E0.obj");//ok "SUMMON/riva" //0x005B31F0 "MAGIC/BARSAC" //0x005B3970 "MAGIC/RIFREK" //0x005B3E40 "MAGIC/MBARIA" //0x005B42F0 "MAGIC/BARIA" //0x005B4D80 "MAGIC/SLOU" //0x005B5720 "MAGIC/GRAV1" //0x005B5E10 "MAGIC/BRIZAR2" // __diffAt(0x005B6540, 0x008FD958, 0x00000000, OBJPATH "C_005B6540.obj");//ok "MAGIC/BRIZAD" //__diffAt(0x005B68A0, 0x00000000, 0x00000000, OBJPATH "C_005B68A0.obj");//[TODO] "MAGIC/THUNDER4" //0x005B7730 "MAGIC/THUNDER3" //0x005B8570 "MAGIC/THUNDERA" // __diffAt(0x005B8E30, 0x008FDE88, 0x00000000, OBJPATH "C_005B8E30.obj");//ok "MAGIC/THUNDER" // __diffAt(0x005B9480, 0x008FDF50, 0x00000000, OBJPATH "C_005B9480.obj");//ok "MAGIC/FAIRA" // __diffAt(0x005B9810, 0x008FE0A8, 0x00000000, OBJPATH "C_005B9810.obj");//ok "MAGIC/FIRE" //-- -- // __diffAt(0x005B9B30, 0x008FE110, 0x007B7670, OBJPATH "C_005B9B30.obj");//ok // __diffAt(0x005BE490, 0x008FE260, 0, OBJPATH "C_005BE490.obj");//ok // __diffAt(0x005BE9F0, 0, 0, OBJPATH "C_005BE9F0.obj");//ok // __diffAt(0x005BEC50, 0, 0, OBJPATH "C_005BEC50.obj");//ok "task.cpp"? // __diffAt(0x005BF340, 0, 0, OBJPATH "C_005BF340.obj");//ok // __diffAt(0x005BF9D0, 0x008FE2AC, 0, OBJPATH "C_005BF9D0.obj");//hobo ok[code] // __diffAt(0x005BFAA0, 0x00000000, 0, OBJPATH "C_005BFAA0.obj");//ok // __diffAt(0x005C01A0, 0x008FE2B8, 0, OBJPATH "C_005C01A0.obj");//ok "MAGIC/LIMIT" // __diffAt(0x005C0C20, 0x00000000, 0, OBJPATH "C_005C0C20.obj");//ok // __diffAt( 0, 0x008FE398, 0, OBJPATH "D_008FE398.obj");//ok // __diffAt(0x005C0CA0, 0x008FEBA0, 0, OBJPATH "C_005C0CA0.obj");//ok // __diffAt(0x005C2070, 0x008FEE2C, 0, OBJPATH "C_005C2070.obj");//ok // __diffAt(0x005C67A0, 0, 0, OBJPATH "C_005C67A0.obj");//ok // __diffAt(0x005C6B60, 0, 0, OBJPATH "C_005C6B60.obj");//ok -- character progression? // __diffAt(0x005C7090, 0, 0, OBJPATH "C_005C7090.obj");//ok -- character progression? // __diffAt(0x005C7260, 0, 0, OBJPATH "C_005C7260.obj");//ok -- character progression? // __diffAt(0x005C7C50, 0, 0, OBJPATH "C_005C7C50.obj");//ok // __diffAt(0x005C8000, 0, 0, OBJPATH "C_005C8000.obj");//ok -- some helper functions? // __diffAt(0x005C8180, 0, 0, OBJPATH "C_005C8180.obj");//ok // __diffAt(0x005C86E0, 0x008FEE38, 0, OBJPATH "C_005C86E0.obj");//ok // __diffAt(0x005C8B80, 0, 0, OBJPATH "C_005C8B80.obj");//ok // __diffAt(0x005C8C90, 0, 0x007B7688, OBJPATH "C_005C8C90.obj");//ok // __diffAt(0x005C8FB0, 0x008FEE48, 0x007B76A0, OBJPATH "C_005C8FB0.obj");//ok // __diffAt(0x005CA860, 0, 0x007B76C0, OBJPATH "C_005CA860.obj");//ok // __diffAt(0x005CAD70, 0x008FEEC8, 0x00000000, OBJPATH "C_005CAD70.obj");//ok -- materia/equip/... related? // __diffAt(0x005CF650, 0, 0x007B76C8, OBJPATH "C_005CF650.obj");//ok // __diffAt(0x005D0690, 0, 0x00000000, OBJPATH "C_005D0690.obj");//ok // __diffAt(0x005D0CA0, 0, 0x007B76E8, OBJPATH "C_005D0CA0.obj");//ok // __diffAt(0x005D1050, 0x008FF038, 0x007B76F0, OBJPATH "inits.obj");//ok // __diffAt(0x005D1520, 0, 0x00000000, OBJPATH "C_005D1520.obj");//ok // __diffAt(0x005D16D0, 0x008FF068, 0x007B7700, OBJPATH "C_005D16D0.obj");//ok // __diffAt(0x005D1910, 0, 0, OBJPATH "C_005D1910.obj");//ok -- random related too? // __diffAt(0x005D1A30, 0, 0x007B772C, OBJPATH "C_005D1A30.obj");//ok // __diffAt(0x005D2A30, 0, 0x00000000, OBJPATH "C_005D2A30.obj");//ok // __diffAt(0x005D2E00, 0, 0x00000000, OBJPATH "C_005D2E00.obj");//ok // __diffAt(0x005D2F40, 0, 0, OBJPATH "C_005D2F40.obj");//ok -- helper functions for magic FX? // __diffAt(0x005D3240, 0, 0, OBJPATH "C_005D3240.obj");//ok -- helper functions for magic FX? // __diffAt(0x005D3650, 0, 0, OBJPATH "C_005D3650.obj");//ok -- helper functions for "SUMMON/KNIGHTS" // __diffAt(0x005D38D0, 0, 0, OBJPATH "C_005D38D0.obj");//ok -- helper function for "SUMMON/riva" // __diffAt(0x005D4240, 0, 0, OBJPATH "C_005D4240.obj");//ok -- more magic callbacks? // __diffAt(0x005D4390, 0x008FF078, 0x00000000, OBJPATH "C_005D4390.obj");//ok -- items,potion related? // __diffAt(0x005D4F90, 0x008FF098, 0x00000000, OBJPATH "C_005D4F90.obj");//ok -- more magic callbacks? // __diffAt(0x005D5720, 0x008FF0E8, 0x00000000, OBJPATH "C_005D5720.obj");//ok -- more magic callbacks? // __diffAt(0x005D6A70, 0x008FF100, 0x00000000, OBJPATH "C_005D6A70.obj");//ok -- more magic callbacks? // __diffAt(0x005D6E70, 0x008FF138, 0x00000000, OBJPATH "C_005D6E70.obj");//ok -- more magic callbacks? // __diffAt(0x005D7720, 0x008FF170, 0x00000000, OBJPATH "C_005D7720.obj");//ok -- more magic callbacks? // __diffAt(0x005D7CF0, 0x008FF1D8, 0x00000000, OBJPATH "C_005D7CF0.obj");//ok // __diffAt(0x005D9550, 0x008FF1E8, 0x007B7738, OBJPATH "C_005D9550.obj");//ok // __diffAt(0x005DC390, 0, 0x00000000, OBJPATH "C_005DC390.obj");//ok // __diffAt(0x005DC880, 0, 0x007B7748, OBJPATH "C_005DC880.obj");//ok // __diffAt(0x005DD700, 0, 0x007B7790, OBJPATH "C_005DD700.obj");//ok // __diffAt(0x005DDBB0, 0, 0x007B77A8, OBJPATH "C_005DDBB0.obj");//ok // __diffAt(0x005DE5C0, 0x008FF1F8, 0x00000000, OBJPATH "C_005DE5C0.obj");//ok // __diffAt(0x005DF080, 0, 0x00000000, OBJPATH "C_005DF080.obj");//ok // __diffAt(0x005DF0F0, 0, 0x00000000, OBJPATH "C_005DF0F0.obj");//ok -- damage management? // __diffAt(0x005DF460, 0x008FF278, 0x007B77C8, OBJPATH "C_005DF460.obj");//ok // __diffAt(0x005DFDC0, 0x008FF290, 0x00000000, OBJPATH "bdata.obj");//ok // __diffAt(0x005E0200, 0/*0x008FF2E8*/, 0x00000000, OBJPATH "char.obj");//hobo ok[data] // __diffAt(0x005E2A10, 0x008FFA50, 0x00000000, OBJPATH "limitbrk.obj");//ok // __diffAt(0x005E2F00, 0x008FFB00, 0x007B77D0, OBJPATH "stage.obj");//ok // __diffAt(0x005E3900, 0x008FFC00, 0x00000000, OBJPATH "enemy.obj");//ok // __diffAt(0x005E4310, 0x008FFC78, 0x007B77DC, OBJPATH "lmd.obj");//ok // __diffAt(0x005E7680, 0x00900084, 0x007B77EC, OBJPATH "amptoanm.obj");//ok // __diffAt(0x005E8550, 0x00900120, 0x007B77F4, OBJPATH "mdl.obj");//ok // __diffAt( 0, 0x00900198, 0, OBJPATH "D_00900198.obj"); //====---- coaster ----==== // __diffAt(0x005E8A70, 0x0090140C, 0x007B77F8, OBJPATH "C_005E8A70.obj");//ok -- launcher // __diffAt(0x005E9150, 0x00901410, 0, OBJPATH "C_005E9150.obj");//ok -- resources/sound? // __diffAt(0x005E98E0, 0x009014A8, 0x007B780C, OBJPATH "C_005E98E0.obj");//ok -- main? // __diffAt(0x005EA8C0, 0x009014B0, 0, OBJPATH "C_005EA8C0.obj");//ok -- track matrix? // __diffAt(0x005EAB70, 0, 0, OBJPATH "C_005EAB70.obj");//ok -- game objects // __diffAt(0x005ED8F0, 0, 0, OBJPATH "C_005ED8F0.obj");//ok -- "static" objects // __diffAt(0x005EE150, 0, 0, OBJPATH "C_005EE150.obj");//ok -- input module // __diffAt(0x005EE620, 0x009014F0, 0, OBJPATH "psxdata_c.obj");//ok // __diffAt(0x005EE7F0, 0, 0, OBJPATH "C_005EE7F0.obj");//ok -- 3d models? // __diffAt(0x005EEA50, 0, 0, OBJPATH "C_005EEA50.obj");//hobo ok[code] -- hit/clip? // __diffAt(0x005EF1C0, 0, 0, OBJPATH "C_005EF1C0.obj");//ok -- nodes? // __diffAt(0x005EF4D0, 0x00901550, 0x007B7810, OBJPATH "C_005EF4D0.obj");//ok -- Class_coaster_D8 //====---- condor ----==== // __diffAt(0x005F2BF0, 0x00901644, 0, OBJPATH "cd_init.obj");//ok // __diffAt(0x005F4630, 0, 0, OBJPATH "C_005F4630.obj");//ok // __diffAt(0x005F4740, 0x00901A40, 0x007B7820, OBJPATH "cd_app.obj");//ok // __diffAt( 0, 0x00901A90, 0, OBJPATH "D_00901A90.obj");//ok // __diffAt(0x005F4C70, 0x00901AB0, 0x007B7828, OBJPATH "C_005F4C70.obj");//ok // __diffAt(0x005F5C40, 0x00901AB4, 0, OBJPATH "cd_tim.obj");//ok // __diffAt(0x005F76A0, 0x00901B70, 0, OBJPATH "C_005F76A0.obj");//ok // __diffAt(0x005FA280, 0x00901B80, 0, OBJPATH "C_005FA280.obj");//ok // __diffAt(0x005FA660, 0x00905464, 0, OBJPATH "cd_ddraw.obj");//ok // __diffAt(0x005FAB70, 0x00905480, 0, OBJPATH "C_005FAB70.obj");//ok // __diffAt(0x005FB300, 0x00905528, 0, OBJPATH "C_005FB300.obj");//ok // __diffAt(0x005FD3A0, 0, 0x007B7830, OBJPATH "C_005FD3A0.obj");//ok // __diffAt(0x005FF2E0, 0, 0, OBJPATH "C_005FF2E0.obj");//ok // __diffAt(0x00603230, 0, 0, OBJPATH "C_00603230.obj");//ok // __diffAt(0x006049D0, 0, 0, OBJPATH "C_006049D0.obj");//ok // __diffAt(0x00606A50, 0, 0, OBJPATH "C_00606A50.obj");//ok // __diffAt(0x00607880, 0x00905560, 0x007B7838, OBJPATH "C_00607880.obj");//ok // __diffAt(0x0060A450, 0, 0, OBJPATH "C_0060A450.obj");//ok //====---- FIELD ----==== // __diffAt(0x0060B260, 0, 0, OBJPATH "C_0060B260.obj");//ok // __diffAt(0x0060B9D0, 0x009055A0, 0, OBJPATH "C_0060B9D0.obj");//ok // __diffAt(0x0060D810, 0x00905AC8, 0x007B7840, OBJPATH "ad_app.obj");//ok // __diffAt(0x0060F750, 0x00905E50, 0, OBJPATH "C_0060F750.obj");//ok // __diffAt(0x00620510, 0, 0, OBJPATH "C_00620510.obj");//ok // __diffAt(0x00620790, 0x00905E58, 0x007B7850, OBJPATH "ad_data.obj");//ok // __diffAt(0x0062D240, 0x009066F0, 0, OBJPATH "ad_image.obj");//ok // __diffAt(0x006305C0, 0x00906750, 0, OBJPATH "ad_cdr.obj");//ok // __diffAt(0x00630940, 0, 0, OBJPATH "C_00630940.obj");//ok // __diffAt(0x006339C0, 0x009067C0, 0, OBJPATH "ad_human.obj");//ok // __diffAt(0x006384B0, 0x009069C4, 0x007B7898, OBJPATH "C_006384B0.obj");//ok // __diffAt(0x0063AA30, 0x009069CC, 0, OBJPATH "tutaddr.obj");//ok // __diffAt(0x0063AC20, 0x00906A70, 0, OBJPATH "C_0063AC20.obj");//ok // __diffAt(0x0063BC90, 0x00906B88, 0, OBJPATH "C_0063BC90.obj");//ok // __diffAt(0x0063CD40, 0/*0x00906C68*/, 0x007B78AC, OBJPATH "ad_obj.obj");//hobo ok[data] // __diffAt(0x0063F350, 0x00907C20, 0, OBJPATH "ad_tile.obj");//ok // __diffAt(0x00641760, 0x00907D8C, 0, OBJPATH "ad_ddraw.obj");//ok // __diffAt(0x00642950, 0x00907E10, 0, OBJPATH "ad_bk.obj");//ok // __diffAt(0x00644A80, 0, 0, OBJPATH "C_00644A80.obj");//ok // __diffAt(0x00645150, 0x00907F60, 0x007B78B8, OBJPATH "C_00645150.obj");//ok // __diffAt(0x00646310, 0, 0, OBJPATH "C_00646310.obj");//ok // __diffAt(0x006463F0, 0x00907F64, 0x007B7918, OBJPATH "ad_list.obj");//ok // __diffAt(0x006470E0, 0x00907FC4, 0, OBJPATH "ad_pal.obj");//ok // __diffAt(0x006496E0, 0x00908150, 0, OBJPATH "C_006496E0.obj");//ok // __diffAt(0x00649770, 0, 0, OBJPATH "C_00649770.obj");//ok // __diffAt(0x00649B30, 0, 0, OBJPATH "C_00649B30.obj");//ok // __diffAt(0x00649B50, 0x00908E28, 0, OBJPATH "C_00649B50.obj");//ok // __diffAt(0x00649DE0, 0, 0x007B7920, OBJPATH "C_00649DE0.obj");//ok // __diffAt(0x0064A070, 0, 0, OBJPATH "C_0064A070.obj");//ok // __diffAt(0x0064B090, 0x00908E30, 0x007B7930, OBJPATH "C_0064B090.obj");//ok // __diffAt(0x0064D670, 0, 0, OBJPATH "C_0064D670.obj");//ok // __diffAt(0x0064E0C0, 0, 0, OBJPATH "C_0064E0C0.obj");//ok // __diffAt(0x0064E1B0, 0, 0, OBJPATH "C_0064E1B0.obj");//ok // __diffAt(0x0064E940, 0, 0, OBJPATH "C_0064E940.obj");//ok // __diffAt(0x0064EB50, 0, 0, OBJPATH "C_0064EB50.obj");//ok // __diffAt(0x0064EC60, 0, 0, OBJPATH "C_0064EC60.obj");//ok // __diffAt(0x0064EEE0, 0, 0, OBJPATH "C_0064EEE0.obj");//ok // __diffAt(0x0064F420, 0, 0, OBJPATH "C_0064F420.obj");//ok // __diffAt(0x0064F860, 0, 0, OBJPATH "C_0064F860.obj");//ok // __diffAt(0x0064FB20, 0, 0, OBJPATH "C_0064FB20.obj");//ok //====---- HighWay ----==== // __diffAt(0x00650310, 0, 0, OBJPATH "C_00650310.obj");//ok -- launcher // __diffAt(0x006504C0, 0x009092b0, 0x007B7990, OBJPATH "C_006504C0.obj");//ok -- main // __diffAt(0x006520C0, 0, 0, OBJPATH "C_006520C0.obj");//ok -- input module // __diffAt(0x006523B0, 0x0090930C, 0, OBJPATH "psxdata.obj");//ok // __diffAt(0x00652670, 0, 0, OBJPATH "C_00652670.obj");//ok -- sparkles // __diffAt(0x00652D40, 0x00909398, 0, OBJPATH "C_00652D40.obj");//ok -- Player & AI? // __diffAt(0x00656EB0, 0x00909568, 0x007B79B0, OBJPATH "C_00656EB0.obj");//hobo ok[code] -- Class_HW_B0 & Class_HW_Road // __diffAt(0x00658700, 0x009096A0, 0x007B79C8, OBJPATH "C_00658700.obj");//ok -- Class_HW_2DDisplay // __diffAt(0x006595E0, 0, 0, OBJPATH "C_006595E0.obj");//ok -- Class_HW_Background // __diffAt(0x00659770, 0, 0x007B79F4, OBJPATH "C_00659770.obj");//ok -- Class_HW_Node & Class_HW_C87C // __diffAt(0x00659F50, 0x00909728, 0, OBJPATH "C_00659F50.obj");//ok -- Class_HW_ModelCache // __diffAt(0x0065A3A0, 0, 0x007B7A00, OBJPATH "C_0065A3A0.obj");//ok -- Class_HW_Camera -- camera & trajectories // __diffAt(0x0065BCE0, 0x0090A280, 0, OBJPATH "C_0065BCE0.obj");//ok -- Class_HW_AnimatedModel & Class_HW_ListAnimations // __diffAt(0x0065C910, 0x0090A6C8, 0x007B7A18, OBJPATH "C_0065C910.obj");//ok[+__asm] -- Class_HW_20 // __diffAt(0x0065DC20, 0, 0, OBJPATH "C_0065DC20.obj");//ok -- Class_HW_4E0 // __diffAt(0x0065E520, 0, 0, OBJPATH "C_0065E520.obj");//ok -- part of PSXData?!? // __diffAt(0x0065E560, 0, 0x007B7A20, OBJPATH "C_0065E560.obj");//ok -- Class_HW_Sprites //====---- some library? ----==== // __diffAt(0x0065EC20, 0x0090A808, 0, OBJPATH "memory.obj");//ok[check again] // __diffAt(0x0065EC60, 0, 0, OBJPATH "C_0065EC60.obj");//ok // __diffAt(0x0065ED50, 0, 0x007B7A30, OBJPATH "C_0065ED50.obj");//ok[+__asm] // __diffAt(0x0065FAC0, 0/*0x0090A838*/, 0, OBJPATH "mem.obj");//hobo ok[data] // __diffAt(0x00660370, 0, 0x007B7A48, OBJPATH "C_00660370.obj");//ok -- timing functions? // __diffAt(0x00660540, 0x0090AA2C, 0, OBJPATH "g_drv.obj");//ok // __diffAt(0x00661000, 0x0090AA90, 0x007B7A50, OBJPATH "psx.obj");//ok // __diffAt(0x00664160, 0x0090AB64, 0, OBJPATH "dx_dbg.obj");//ok // __diffAt(0x00664E90, 0x0090C86C, 0x007B7A80, OBJPATH "dx_3d2d.obj");//ok // __diffAt(0x00666AB0, 0x0090C930, 0, OBJPATH "C_00666AB0.obj");//ok // __diffAt(0x00666F60, 0x0090C9D8, 0x007B7A98, OBJPATH "psxgraph.obj");//ok // __diffAt(0x0066C3D0, 0, 0, OBJPATH "C_0066C3D0.obj");//ok // __diffAt(0x0066C4F0, 0, 0, OBJPATH "C_0066C4F0.obj");//ok -- optimized matrix functions // __diffAt(0x0066D060, 0x0090CA84, 0x007B7AC0, OBJPATH "dx_spr.obj");//ok // __diffAt(0x006700E0, 0/*0x0090CBC8*/, 0x007B7ACC, OBJPATH "dx_sfx.obj");//hobo ok[data] // __diffAt(0x00674530, 0x0090CF38, 0, OBJPATH "rsd.obj");//ok // __diffAt(0x006750E0, 0/*0x0090D16C*/, 0, OBJPATH "is_lib.obj");//hobo ok[data] // __diffAt(0x006763F0, 0/*0x0090D268*/, 0, OBJPATH "directx.obj");//hobo ok[data] // __diffAt(0x0067A050, 0x0090DE4C, 0x007B7AD8, OBJPATH "dx_mat.obj");//ok[+__asm] // __diffAt(0x0067DB30, 0, 0x007B7B00, OBJPATH "WinMain.obj");//ok // __diffAt(0x0067DED0, 0x0090E06C, 0, OBJPATH "C_0067DED0.obj");//ok // __diffAt(0x0067F5F0, 0x0090F480, 0, OBJPATH "C_0067F5F0.obj");//ok[+__asm] -- sw: // __diffAt(0x0067FA90, 0x0090F490, 0x007B7B08, OBJPATH "sw.obj");//ok // __diffAt(0x00681FF0, 0x0090F690, 0, OBJPATH "file.obj");//ok[contains bug] // __diffAt(0x00682D80, 0, 0, OBJPATH "C_00682D80.obj");//ok // __diffAt(0x006833D0, 0x0090F964, 0x007B7B18, OBJPATH "anm.obj");//ok // __diffAt(0x00685110, 0x0090F984, 0x007B7B20, OBJPATH "dx_stat.obj");//ok // __diffAt(0x00685DA0, 0/*0x0090FBB8*/, 0, OBJPATH "dx_graph.obj");//hobo ok[data] // __diffAt(0x006892B0, 0x00910480, 0, OBJPATH "thread.obj");//ok // __diffAt(0x00689820, 0x00910658, 0, OBJPATH "render.obj");//ok // __diffAt(0x0068AAC0, 0x00910798, 0, OBJPATH "dx_rendi.obj");//ok // __diffAt(0x0068CF70, 0, 0x007B7B34, OBJPATH "C_0068CF70.obj");//ok // __diffAt(0x0068D6F0, 0x00910A08, 0x007B7B3C, OBJPATH "C_0068D6F0.obj");//ok -- light related? // __diffAt(0x0068F7A0, 0x00910A1C, 0, OBJPATH "instance.obj"); // __diffAt(0x0068F960, 0x00910A64, 0, OBJPATH "direct.obj");//ok // __diffAt(0x00690240, 0/*0x00910B90*/, 0x007B7B50, OBJPATH "plytopd.obj");//hobo ok[data] // __diffAt(0x00696D00, 0x009116DC, 0, OBJPATH "tim.obj");//ok // __diffAt(0x00699470, 0/*0x00911A9C*/, 0x007B7B60, OBJPATH "polygon.obj");//hobo ok[data] // __diffAt(0x0069AFC0, 0x00911FDC, 0, OBJPATH "list.obj");//ok // __diffAt(0x0069B660, 0x00912088, 0, OBJPATH "C_0069B660.obj");//ok // __diffAt(0x0069BC10, 0, 0, OBJPATH "C_0069BC10.obj");//ok[+__asm] // __diffAt(0x0069BF90, 0x0091212C, 0x007B7B64, OBJPATH "light.obj");//ok // __diffAt(0x0069CBD0, 0x009121EC, 0, OBJPATH "TexCache.obj");//hobo ok[code] // __diffAt(0x0069F910, 0x00912234, 0x007B7B70, OBJPATH "trans.obj");//ok // __diffAt(0x0069FCA0, 0/*0x00912288*/, 0x007B7B80, OBJPATH "dx_rend.obj");//hobo ok[data] // __diffAt(0x006A28F0, 0x009129A8, 0, OBJPATH "stack.obj");//ok // __diffAt(0x006A2AB0, 0x00912A64, 0, OBJPATH "shp.obj");//ok // __diffAt(0x006A3280, 0x00912C50, 0x007B7B84, OBJPATH "dx_rend5.obj");//ok // __diffAt(0x006A4F10, 0x00912E78, 0, OBJPATH "sort.obj");//ok // __diffAt(0x006A5440, 0x00912F90, 0, OBJPATH "heap.obj");//ok // __diffAt(0x006A5A70, 0, 0, OBJPATH "C_006A5A70.obj");//ok // __diffAt(0x006A5D80, 0x00913050, 0, OBJPATH "dx_pal.obj");//ok // __diffAt(0x006A6740, 0x009132B0, 0, OBJPATH "driver.obj");//ok // __diffAt(0x006A6790, 0x009132F0, 0, OBJPATH "dx_rendx.obj");//ok // __diffAt(0x006A68F0, 0x00917214, 0x007B7B88, OBJPATH "gl_code.obj");//ok // __diffAt(0x006A9060, 0x009177EC, 0, OBJPATH "registry.obj");//ok // __diffAt(0x006A91F0, 0x0091782C, 0x007B7B90, OBJPATH "dx_view.obj");//ok // __diffAt(0x006A9B60, 0, 0, OBJPATH "C_006A9B60.obj");//ok -- setup OpenGL driver // __diffAt(0x006A9DF0, 0, 0, OBJPATH "C_006A9DF0.obj");//ok -- setup SW driver // __diffAt(0x006AA080, 0, 0, OBJPATH "C_006AA080.obj");//ok -- setup D3D/HW driver // __diffAt(0x006AA340, 0, 0, OBJPATH "C_006AA340.obj");//ok -- sw:line clipper // __diffAt(0x006AAAE0, 0, 0, OBJPATH "C_006AAAE0.obj");//ok[+__asm] -- sw:fast lines[debug] // __diffAt(0x006AB1D0, 0x009179F0, 0, OBJPATH "C_006AB1D0.obj");//ok -- sw: // __diffAt(0x006AB9C0, 0x00917C20, 0, OBJPATH "z.obj");//ok -- sw: // __diffAt(0x006ABC60, 0x00917CC0, 0x007B7B98, OBJPATH "sw_vert.obj");//ok[+__asm] -- sw: // __diffAt(0x006AC860, 0, 0x007B7BA0, OBJPATH "C_006AC860.obj");//ok -- sw: // __diffAt(0x006AD110, 0, 0, OBJPATH "C_006AD110.obj");//ok -- sw:setup functions? // __diffAt(0x006AF160, 0x00917D88, 0, OBJPATH "C_006AF160.obj");//ok -- sw:creates "c:/lib/h/graphics/sw/offset.hpp" file // __diffAt(0x006B1D60, 0x00919514, 0, OBJPATH "C_006B1D60.obj");//ok -- sw:renderer? // __diffAt(0x006B26C0, 0x0091951C, 0x007B7BB0, OBJPATH "dx_mesh.obj");//ok // __diffAt(0x006B35D0, 0x0091955C, 0, OBJPATH "token.obj");//ok // __diffAt(0x006B3CA0, 0, 0, OBJPATH "C_006B3CA0.obj");//ok -- blend mode related for plytopd // __diffAt(0x006B3D10, 0x00919608, 0, OBJPATH "gl.obj");//ok // __diffAt(0x006B6180, 0x009196C0, 0x007B7BC0, OBJPATH "C_006B6180.obj");//ok -- OpenGL:implementation of "dx_spr.cpp" // __diffAt(0x006B6A10, 0, 0, OBJPATH "C_006B6A10.obj");//ok -- sw:implementation of "dx_spr.cpp" // __diffAt(0x006B76F0, 0x009196C8, 0, OBJPATH "C_006B76F0.obj");//ok -- hw:blend mode // __diffAt(0x006B77F0, 0x00919800, 0x007B7BC4, OBJPATH "C_006B77F0.obj");//ok -- sw:clipping functions? // __diffAt(0x006B9200, 0, 0, OBJPATH "C_006B9200.obj");//ok[+__asm] -- sw:triangle drawing functions // __diffAt(0x006BBBD0, 0, 0x007B7BCC, OBJPATH "C_006BBBD0.obj");//ok[+__asm] -- sw:some fixed_32_32//float conversions? // __diffAt(0x006BBDC0, 0, 0, OBJPATH "C_006BBDC0.obj");//ok -- sw:more gradient // __diffAt(0x006BC180, 0, 0x007B7BD0, OBJPATH "C_006BC180.obj");//ok -- sw:gradient related // __diffAt(0x006BC2E0, 0, 0, OBJPATH "C_006BC2E0.obj");//ok[+__asm] -- sw:some gradient(for unused function) // __diffAt(0x006BC350, 0x00919880, 0, OBJPATH "C_006BC350.obj");//ok[+__asm] -- sw:aligned quad rendering? // __diffAt(0x006BE300, 0x009198E0, 0x007B7BD4, OBJPATH "C_006BE300.obj");//ok[+__asm] -- sw:render lines? // __diffAt(0x006BF220, 0, 0, OBJPATH "C_006BF220.obj");//ok -- sw:2D clipping for aligned quads? //====---- Menu System ----==== // __diffAt( 0, 0x00919928, 0, OBJPATH "menu_data.obj");// // __diffAt(0x006BF4E0, 0x00919960, 0x007B7BD8, OBJPATH "C_006BF4E0.obj");//ok -- "Exit box" // __diffAt(0x006C0F60, 0x00919C18, 0, OBJPATH "C_006C0F60.obj");//ok -- icon resources // __diffAt(0x006C1F60, 0x00919EA8, 0, OBJPATH "C_006C1F60.obj");//ok -- config submenu // __diffAt(0x006C4970, 0x0091A8C0, 0x007B7BE0, OBJPATH "C_006C4970.obj");//ok -- main // __diffAt(0x006CDC20, 0x0091ACB0, 0, OBJPATH "C_006CDC20.obj");//ok -- key config //-- combat specific -- // __diffAt(0x006CE7D0, 0x0091BD68, 0, OBJPATH "callback.obj");//ok[must check BSS] // __diffAt(0x006CF5C0, 0x0091BE90, 0x007B7C08, OBJPATH "C_006CF5C0.obj");//ok // __diffAt(0x006DC910, 0x0091E828, 0x007B7C58, OBJPATH "C_006DC910.obj");//ok // __diffAt(0x006E5980, 0, 0, OBJPATH "C_006E5980.obj");//ok[must check BSS] // 0x0091EF90~0x0091EFC8 //-- -- // __diffAt(0x006E6C30, 0x0091EFC8, 0x007B7CA8, OBJPATH "C_006E6C30.obj");//ok -- more graphic functions // __diffAt(0x006F4D30, 0, 0, OBJPATH "C_006F4D30.obj");//ok -- input // __diffAt(0x006F5490, 0x0091F034, 0x007B7CF8, OBJPATH "C_006F5490.obj");//ok -- graphic functions // __diffAt(0x006FDCA0, 0, 0, OBJPATH "C_006FDCA0.obj");//ok -- "C" to "FF7" string // __diffAt(0x006FE2B0, 0x0091F038, 0, OBJPATH "C_006FE2B0.obj");//ok -- unused menu? // __diffAt(0x006FEB00, 0, 0, OBJPATH "C_006FEB00.obj");//ok -- empty menu? // __diffAt(0x006FEB20, 0x0091F0B0, 0, OBJPATH "C_006FEB20.obj");//ok -- save submenu // __diffAt(0x00700090, 0x0091F140, 0, OBJPATH "C_00700090.obj");//ok -- phs submenu // __diffAt(0x007020A0, 0x0091F4D8, 0, OBJPATH "C_007020A0.obj");//ok -- limit menu // __diffAt(0x00703610, 0x00920520, 0, OBJPATH "C_00703610.obj");//ok -- unused submenu // __diffAt(0x00703760, 0x00920540, 0, OBJPATH "C_00703760.obj");//ok -- status menu // __diffAt(0x00705C80, 0x009209A8, 0, OBJPATH "C_00705C80.obj");//ok -- equip menu // __diffAt(0x00708670, 0x00920B18, 0, OBJPATH "C_00708670.obj");//ok -- materia menu // __diffAt(0x00710C50, 0x00920FE8, 0, OBJPATH "C_00710C50.obj");//ok -- magic menu // __diffAt(0x00714640, 0x00921168, 0, OBJPATH "C_00714640.obj");//ok -- item/.../... menu // __diffAt(0x00718200, 0, 0, OBJPATH "C_00718200.obj");//ok -- input for tutorial // __diffAt(0x00718710, 0x00921CB8, 0, OBJPATH "C_00718710.obj");//ok -- "please enter a name" // __diffAt(0x00719D20, 0x009229B0, 0, OBJPATH "C_00719D20.obj");//ok -- shops // __diffAt(0x00720080, 0x00925760, 0x007B7D28, OBJPATH "loadmenu.obj");//ok // __diffAt(0x007228C0, 0, 0, OBJPATH "C_007228C0.obj");//ok // __diffAt(0x00722BB0, 0x00926288, 0, OBJPATH "C_00722BB0.obj");//ok //====---- Snowboard ----==== // __diffAt(0x00722C10, 0, 0, OBJPATH "C_00722C10.obj");//ok // __diffAt(0x00722E60, 0x00926290, 0x007B7D38, OBJPATH "C_00722E60.obj");//hobo ok[code] // __diffAt( 0, 0x00926500, 0, OBJPATH "snobo_data.obj");//hobo ok[must convert data] // __diffAt( 0, 0x0093A280, 0, OBJPATH "snobo_data2.obj");//hobo ok[must convert data] // __diffAt(0x0072A170, 0x0094A340, 0x007B7D70, OBJPATH "C_0072A170.obj");//ok // __diffAt(0x0072CA90, 0/*0x00956638*/, 0x007B7DA8, OBJPATH "C_0072CA90.obj");//hobo ok[data] // __diffAt(0x0072FE00, 0x00956F00, 0/*0x007B7DC0*/, OBJPATH "C_0072FE00.obj");//hobo ok[code/data] // __diffAt(0x00731AA0, 0x009624A0, 0x007B7DF4, OBJPATH "tmd.obj");//ok // __diffAt(0x00733340, 0, 0, OBJPATH "C_00733340.obj");//ok // __diffAt(0x00733360, 0x00962B40, 0x007B7E14, OBJPATH "C_00733360.obj");//ok // __diffAt(0x00735220, 0, 0, OBJPATH "C_00735220.obj");//ok // __diffAt(0x00735370, 0, 0, OBJPATH "C_00735370.obj");//ok // __diffAt(0x00735400, 0x00962B60, 0x007B7E1C, OBJPATH "C_00735400.obj");//ok // __diffAt(0x0073BB60, 0x00964CE8, 0x007B7E28, OBJPATH "C_0073BB60.obj");//ok //====---- Midi/sound ----==== // __diffAt(0x00740D80, 0x00966B14, 0, OBJPATH "C_00740D80.obj");//ok // __diffAt(0x00741780, 0/*0x00966B48*/, 0x007B7E40, OBJPATH "midi1.obj");//hobo ok[data] // __diffAt(0x00744400, 0x00967660, 0x007B7E70, OBJPATH "sound.obj");//ok // __diffAt(0x00749940, 0x00967FA0, 0, OBJPATH "C_00749940.obj"); // __diffAt(0x00749C50, 0, 0, OBJPATH "C_00749C50.obj");//ok // __diffAt(0x00749EE0, 0x0096805C, 0, OBJPATH "C_00749EE0.obj"); // __diffAt(0x0074A0D0, 0x009684C8, 0, OBJPATH "C_0074A0D0.obj");//ok // __diffAt(0x0074A0F0, 0x00968920, 0, OBJPATH "dx_snd.obj");//ok // __diffAt(0x0074A900, 0x00968BF8, 0, OBJPATH "acm.obj");//ok // __diffAt(0x0074AB90, 0x00968CF4, 0, OBJPATH "C_0074AB90.obj");//ok // __diffAt(0x0074ADE0, 0x00969198, 0, OBJPATH "sfutils.obj");//ok // __diffAt(0x0074B8C0, 0x00969228, 0, OBJPATH "C_0074B8C0.obj");//ok //====---- World Map ----==== // __diffAt(0x0074BA80, 0x00969948, 0x007B7EC0, OBJPATH "C_0074BA80.obj");//ok // __diffAt(0x0074C9A0, 0/*0x009699B0*/, 0, OBJPATH "C_0074C9A0.obj");//hobo ok[data] // __diffAt(0x0074FFC0, 0x00969B30, 0, OBJPATH "C_0074FFC0.obj");//ok // __diffAt(0x00753860, 0x00969B58, 0x007B7ED0, OBJPATH "C_00753860.obj");//ok // __diffAt(0x007592E0, 0x00969CE8, 0x007B7ED8, OBJPATH "wmfile.obj");//ok // __diffAt(0x0075AB50, 0x0096D55C, 0, OBJPATH "wmdefine.obj");//ok // __diffAt(0x0075AC80, 0x0096D598, 0x007B7EE0, OBJPATH "C_0075AC80.obj");//ok // __diffAt(0x0075E7A0, 0, 0, OBJPATH "C_0075E7A0.obj");//ok // __diffAt(0x0075EE50, 0, 0, OBJPATH "C_0075EE50.obj");//ok // __diffAt(0x0075F090, 0, 0x007B7EF0, OBJPATH "C_0075F090.obj");//ok // __diffAt(0x00760FB0, 0x0096DDB0, 0, OBJPATH "C_00760FB0.obj");//ok // __diffAt(0x007663E0, 0, 0, OBJPATH "C_007663E0.obj");//ok // __diffAt(0x00766B70, 0x0096DEA0, 0, OBJPATH "C_00766B70.obj");//ok // __diffAt(0x00767D40, 0x0096DEF0, 0x007B7F08, OBJPATH "C_00767D40.obj");//ok // __diffAt(0x007688E0, 0x0096DF10, 0, OBJPATH "C_007688E0.obj");//ok // __diffAt(0x00768C70, 0x0096E0B0, 0, OBJPATH "C_00768C70.obj");//ok //====---- chocobo ----==== // __diffAt(0x0076B850, 0/*0x0096E0F0*/, 0x007B7F10, OBJPATH "ch_init.obj");//hobo ok[data] // __diffAt(0x0076D320, 0x0096E34C, 0x007B7F18, OBJPATH "ch_app.obj");//ok // __diffAt(0x0076DDF0, 0x0096E518, 0, OBJPATH "C_0076DDF0.obj");//ok // __diffAt(0x0076E1F0, 0x0096E5C0, 0, OBJPATH "C_0076E1F0.obj");//ok // __diffAt(0x0076E2B0, 0x0096E878, 0, OBJPATH "C_0076E2B0.obj");//ok // __diffAt(0x0076EFF0, 0/*0x0096EBE0*/, 0x007B7F20, OBJPATH "ch_chr.obj");//hobo ok[data] // __diffAt(0x0076FF60, 0x00971D08, 0, OBJPATH "C_0076FF60.obj");//ok // __diffAt(0x00770800, 0x00971DE0, 0, OBJPATH "C_00770800.obj");//ok // __diffAt(0x00771660, 0x00972A78, 0, OBJPATH "C_00771660.obj");//ok // __diffAt(0x00771680, 0, 0, OBJPATH "C_00771680.obj");//ok // __diffAt(0x00772340, 0, 0x007B7F28, OBJPATH "C_00772340.obj");//ok // __diffAt(0, 0x0097A108, 0, OBJPATH "D_0097A108.obj");//ok // __diffAt(0x00776370, 0x0097A440, 0x007B7F2C, OBJPATH "C_00776370.obj");//ok // __diffAt(0, 0x0097A4F8, 0, OBJPATH "D_0097A4F8.obj");//ok // __diffAt(0x007794F0, 0x0097C748, 0, OBJPATH "ch_ddraw.obj");//ok // __diffAt(0x00779850, 0x0097C768, 0, OBJPATH "C_00779850.obj");//ok // __diffAt(0, 0x0097c8a8, 0, OBJPATH "D_0097C8A8.obj");//ok // __diffAt(0x00779C90, 0x00980DA0, 0x007B7F38, OBJPATH "C_00779C90.obj");//ok // __diffAt(0x0077CF40, 0, 0, OBJPATH "C_0077CF40.obj");//ok //====---- submarine ----==== // __diffAt(0x0077D030, 0x00980DA8, 0x007B7F60, OBJPATH "C_0077D030.obj");//ok // __diffAt( 0, 0x00981000, 0, OBJPATH "D_00981000.obj");//ok // __diffAt(0x0078CBD0, 0x00987018, 0x007B7F78, OBJPATH "C_0078CBD0.obj");//ok // __diffAt(0x0078F4A0, 0x00987028, 0, OBJPATH "C_0078F4A0.obj");//ok // __diffAt(0x00798160, 0x00987058, 0, OBJPATH "C_00798160.obj");//ok // __diffAt(0x00798580, 0x009870B0, 0x007B7F90, OBJPATH "C_00798580.obj");//ok // __diffAt(0x0079A550, 0x009873F8, 0x007B7FA0, OBJPATH "C_0079A550.obj");//ok // __diffAt(0x0079C030, 0x00987478, 0x007B7FB8, OBJPATH "C_0079C030.obj");//ok // __diffAt( 0, 0x009874F0, 0, OBJPATH "D_009874F0.obj");//ok // __diffAt( 0, 0x00989D38, 0, OBJPATH "D_00989D38.obj");//ok // __diffAt( 0, 0x0098A1A8, 0, OBJPATH "D_0098A1A8.obj");//ok // __diffAt( 0, 0x0098A6E8, 0, OBJPATH "D_0098A6E8.obj");//ok // __diffAt(0x0079F5C0, 0, 0, OBJPATH "C_0079F5C0.obj");//ok // __diffAt(0x0079FB20, 0x00989CF8, 0x007B7FC8, OBJPATH "C_0079FB20.obj");//ok // __diffAt(0x007A0190, 0, 0x007B7FD4, OBJPATH "C_007A0190.obj");//ok // __diffAt(0x007A2CA0, 0, 0, OBJPATH "C_007A2CA0.obj");//ok // __diffAt(0x007A3110, 0, 0x007B7FD8, OBJPATH "C_007A3110.obj");//ok // __diffAt( 0, 0x00999718, 0, OBJPATH "D_00999718.obj");//ok //====---- credits ----==== // __diffAt(0x007A5060, 0x0099B4D0, 0x007B7FE0, OBJPATH "C_007A5060.obj");//ok // __diffAt(0x007A8150, 0x0099C5F0, 0x007B7FF0, OBJPATH "C_007A8150.obj");//ok // __diffAt(0x007A98F0, 0x0099C6B0, 0, OBJPATH "credfile.obj");//ok // __diffAt(0x007AA820, 0, 0x007B8028, OBJPATH "C_007AA820.obj");//ok //------------------ //--- 0x007AD7A0 --- //------------------ // more libc //------------------ //--- 0x007B6000 --- //------------------