summaryrefslogtreecommitdiff
path: root/include/functions.h
diff options
context:
space:
mode:
authorCameron Hall <cameronghall@cox.net>2019-08-01 20:02:32 -0500
committerCameron Hall <cameronghall@cox.net>2019-08-01 20:02:32 -0500
commit3878495887f2693c810228694b417f4e4d954476 (patch)
tree3520f05e949c598b7466c24c4e7b1339bef65120 /include/functions.h
parentc427a4af00fa46f33f7167977ea834218c37cfa8 (diff)
move all externs to header files
Diffstat (limited to 'include/functions.h')
-rw-r--r--include/functions.h922
1 files changed, 922 insertions, 0 deletions
diff --git a/include/functions.h b/include/functions.h
new file mode 100644
index 0000000..ae6c8c8
--- /dev/null
+++ b/include/functions.h
@@ -0,0 +1,922 @@
+#ifndef GUARD_FUNCTIONS_H
+#define GUARD_FUNCTIONS_H
+
+// Place all external function declarations in this file
+
+// src/gbplayer.c
+
+void InitGameBoyPlayer(void);
+void sub_10C0(void);
+void sub_111C(void);
+int sub_1170(void);
+void sub_1198(void);
+void sub_11B0(int arg0);
+void sub_11E4(int arg0);
+void sub_11F0(int arg0);
+void sub_11FC(void);
+void sub_1340(void);
+
+// src/m4a_2.c
+
+/*
+u32 MidiKeyToFreq(struct WaveData *wav, u8 key, u8 fineAdjust);
+void UnusedDummyFunc();
+void MPlayContinue(struct MusicPlayerInfo *mplayInfo);
+void MPlayFadeOut(struct MusicPlayerInfo *mplayInfo, u16 speed);
+void m4aSoundInit(void);
+void m4aSoundMain(void);
+void m4aSongNumStart(u16 n);
+void m4aSongNumStartOrChange(u16 n);
+void m4aSongNumStartOrContinue(u16 n);
+void m4aSongNumStop(u16 n);
+void m4aSongNumContinue(u16 n);
+void m4aMPlayAllStop(void);
+void m4aMPlayContinue(struct MusicPlayerInfo *mplayInfo);
+void m4aMPlayAllContinue(void);
+void m4aMPlayFadeOut(struct MusicPlayerInfo *mplayInfo, u16 speed);
+void m4aMPlayFadeOutTemporarily(struct MusicPlayerInfo *mplayInfo, u16 speed);
+void m4aMPlayFadeIn(struct MusicPlayerInfo *mplayInfo, u16 speed);
+void m4aMPlayImmInit(struct MusicPlayerInfo *mplayInfo);
+void MPlayExtender(struct CgbChannel *cgbChans);
+void MusicPlayerJumpTableCopy(void);
+void ClearChain(void *x);
+void Clear64byte(void *x);
+void SoundInit(struct SoundInfo *soundInfo);
+void SampleFreqSet(u32 freq);
+void m4aSoundMode(u32 mode);
+void SoundClear(void);
+void m4aSoundVSyncOff(void);
+void m4aSoundVSyncOn(void);
+void MPlayOpen(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *tracks, u8 trackCount);
+void MPlayStart(struct MusicPlayerInfo *mplayInfo, struct SongHeader *songHeader);
+void m4aMPlayStop(struct MusicPlayerInfo *mplayInfo);
+void FadeOutBody(struct MusicPlayerInfo *mplayInfo);
+void TrkVolPitSet(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+u32 MidiKeyToCgbFreq(u8 chanNum, u8 key, u8 fineAdjust);
+void CgbOscOff(u8 chanNum);
+void CgbModVol(struct CgbChannel *chan);
+
+// src/m4a_4.c
+
+void m4aMPlayTempoControl(struct MusicPlayerInfo *mplayInfo, u16 tempo);
+void m4aMPlayVolumeControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, u16 volume);
+void m4aMPlayPitchControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, s16 pitch);
+void m4aMPlayPanpotControl(struct MusicPlayerInfo *mplayInfo, u16 trackBits, s8 pan);
+void ClearModM(struct MusicPlayerTrack *track);
+void m4aMPlayModDepthSet(struct MusicPlayerInfo *mplayInfo, u16 trackBits, u8 modDepth);
+void m4aMPlayLFOSpeedSet(struct MusicPlayerInfo *mplayInfo, u16 trackBits, u8 lfoSpeed);
+void ply_memacc(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xcmd(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xxx(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xwave(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xtype(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xatta(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xdeca(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xsust(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xrele(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xiecv(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xiecl(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xleng(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xswee(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xcmd_0C(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void ply_xcmd_0D(struct MusicPlayerInfo *mplayInfo, struct MusicPlayerTrack *track);
+void DummyFunc(void);
+void SetPokemonCryVolume(u8 val);
+void SetPokemonCryPanpot(s8 val);
+void SetPokemonCryPitch(s16 val);
+void SetPokemonCryLength(u16 val);
+void SetPokemonCryRelease(u8 val);
+void SetPokemonCryProgress(u32 val);
+int IsPokemonCryPlaying(struct MusicPlayerInfo *mplayInfo);
+void SetPokemonCryChorus(s8 val);
+void SetPokemonCryStereo(u32 val);
+void SetPokemonCryPriority(u8 val);
+*/
+
+// src/main.c
+
+void AgbMain(void);
+void sub_9BC_Main(void);
+void HBlankIntr(void);
+void VCountIntr(void);
+void SerialIntr(void);
+void Timer3Intr(void);
+void IntrDummy(void);
+u32 Random(void);
+s16 sub_C24(u16 arg0);
+s16 sub_C24(u16 arg0);
+s16 sub_C74(u16 arg0);
+void sub_CBC(void);
+void sub_D10(void);
+void sub_D74(void);
+void sub_DC4(void);
+
+// src/rom_3219C.c
+
+void sub_3219C(void);
+void sub_3219C(void);
+
+// src/rom_850.c
+
+u16 sub_850(void);
+void sub_898(void (*func)(void));
+void sub_8BC(void);
+void sub_8D4(void (*func)(void));
+void sub_8FC(void);
+void sub_918(void (*func)(void));
+void sub_940(void);
+
+// src/titlescreen.c
+
+void TitlescreenMain(void);
+void LoadTitlescreenGraphics(void);
+void sub_10AC0(void);
+void sub_10BB8(void);
+void sub_10CF0(void);
+void sub_10D84(void);
+void sub_10E00(void);
+void sub_10EF4(void);
+void sub_11020(void);
+void sub_110FC(void);
+void sub_11228(void);
+void sub_11320(void);
+void sub_11428(void);
+void sub_114B4(void);
+
+// src/util.c
+
+void SetMainGameState(u16 mainState);
+void sub_24C(void);
+void sub_2B4(void);
+s16 LoadSpriteSets(const struct SpriteSet *const *spriteSets, u16 numSpriteSets, struct SpriteGroup *spriteGroups);
+void sub_438(void);
+void sub_490(void);
+void sub_518(void);
+void sub_578(void);
+void sub_678(u8 *arg0, s16 arg1, s16 arg2);
+void SetMatrixScale(s16 xScale, s16 yScale, s16 matrixNum);
+
+// asm/bonus_field_select.s
+
+//extern ? BonusFieldSelectMain();
+//extern ? sub_25C4();
+//extern ? sub_2710();
+//extern ? sub_2768();
+//extern ? sub_2990();
+//extern ? sub_29C8();
+
+// asm/ereader.s
+
+//extern ? EReaderMain();
+//extern ? sub_2C78();
+//extern ? sub_2DF0();
+//extern ? sub_2E40();
+//extern ? sub_2FC0();
+//extern ? sub_304C();
+//extern ? sub_3208();
+//extern ? sub_33A0();
+//extern ? sub_343C();
+//extern ? sub_35C8();
+//extern ? sub_374C();
+//extern ? sub_377C();
+//extern ? sub_37B4();
+//extern ? sub_3828();
+//extern ? sub_38A0();
+//extern ? sub_38F0();
+//extern ? sub_394C();
+//extern ? sub_3AB4();
+//extern ? sub_3C1C();
+//extern ? sub_3C78();
+//extern ? sub_3CD8();
+
+// asm/field_select.s
+
+//extern ? FieldSelectMain();
+//extern ? LoadFieldSelectGraphics();
+//extern ? sub_8C38();
+//extern ? sub_8C7C();
+//extern ? sub_8F64();
+//extern ? sub_8F94();
+
+// asm/high_scores.s
+
+//extern ? HighScoresMain();
+//extern ? IdleHighScoresMain();
+//extern ? sub_CE88();
+//extern ? sub_CFD4();
+//extern ? sub_D20C();
+//extern ? sub_D308();
+//extern ? sub_D4B8();
+//extern ? sub_D664();
+//extern ? sub_D9F8();
+//extern ? sub_DA20();
+//extern ? sub_DB4C();
+//extern ? sub_DB70();
+//extern ? sub_DBF4();
+//extern ? sub_DCF0();
+//extern ? sub_DD4C();
+//extern ? sub_DD70();
+//extern ? sub_DEB4();
+//extern ? sub_DF68();
+//extern ? sub_E0C4();
+//extern ? sub_E0EC();
+//extern ? sub_E230();
+//extern ? sub_E390();
+//extern ? sub_E3A8();
+//extern ? sub_E464();
+//extern ? sub_E860();
+//extern ? sub_E908();
+//extern ? sub_E94C();
+//extern ? sub_E970();
+//extern ? sub_E994();
+//extern ? sub_EAC0();
+//extern ? sub_EBEC();
+//extern ? sub_ED28();
+//extern ? sub_EE64();
+//extern ? sub_F21C();
+//extern ? sub_F3BC();
+//extern ? sub_F3DC();
+//extern ? sub_F434();
+//extern ? sub_F4FC();
+//extern ? sub_F670();
+//extern ? sub_F6E0();
+//extern ? sub_F74C();
+//extern ? sub_F8B0();
+//extern ? sub_FAE8();
+//extern ? sub_FD20();
+extern void sub_FD5C(void (*func)(void));
+extern void sub_FE04(void (*func)(void));
+//extern ? sub_FEB8();
+//extern ? sub_FF74();
+//extern ? sub_1001C();
+//extern ? sub_10170();
+//extern ? sub_102A8();
+//extern ? sub_10424();
+//extern ? sub_10480();
+//extern ? sub_1050C();
+//extern ? sub_10528();
+//extern ? sub_10544();
+//extern ? sub_105A0();
+//extern ? sub_10618();
+
+// asm/intro.s
+
+//extern ? IntroMain();
+//extern ? sub_929C();
+//extern ? sub_9348();
+//extern ? sub_9370();
+//extern ? sub_938C();
+//extern ? sub_93D0();
+//extern ? sub_93F8();
+//extern ? sub_9498();
+//extern ? sub_96A8();
+//extern ? sub_978C();
+//extern ? sub_9830();
+//extern ? sub_9878();
+//extern ? sub_98B4();
+//extern ? sub_9920();
+//extern ? sub_999C();
+//extern ? sub_9AB8();
+//extern ? nullsub_4();
+//extern ? sub_9C10();
+//extern ? nullsub_5();
+//extern ? nullsub_17();
+//extern ? sub_9C9C();
+//extern ? sub_9CB8();
+//extern ? sub_9D70();
+//extern ? sub_9E90();
+//extern ? sub_A154();
+//extern ? sub_A16C();
+//extern ? sub_A2A8();
+//extern ? nullsub_6();
+//extern ? sub_A2F0();
+//extern ? nullsub_7();
+//extern ? sub_A39C();
+//extern ? sub_A43C();
+//extern ? sub_A454();
+//extern ? sub_A628();
+//extern ? sub_A674();
+//extern ? sub_A710();
+//extern ? nullsub_8();
+//extern ? sub_A860();
+//extern ? sub_A87C();
+//extern ? sub_A950();
+//extern ? sub_A968();
+//extern ? sub_AAA8();
+//extern ? nullsub_9();
+//extern ? sub_AAF4();
+//extern ? nullsub_10();
+//extern ? sub_AB90();
+//extern ? sub_AC20();
+//extern ? sub_AC38();
+//extern ? sub_ADFC();
+//extern ? sub_AE74();
+//extern ? sub_AF80();
+//extern ? nullsub_11();
+//extern ? sub_B090();
+//extern ? sub_B0E8();
+//extern ? sub_B2E0();
+//extern ? sub_B2F8();
+//extern ? sub_B4A0();
+//extern ? sub_B560();
+//extern ? sub_B6C4();
+//extern ? sub_B7A0();
+//extern ? sub_B7F8();
+//extern ? sub_BA2C();
+//extern ? sub_BA3C();
+//extern ? sub_BBE0();
+//extern ? sub_BC54();
+//extern ? sub_BCE8();
+//extern ? sub_BDC0();
+//extern ? sub_BED0();
+//extern ? sub_C018();
+//extern ? sub_C0BC();
+//extern ? sub_C0D8();
+//extern ? sub_C210();
+//extern ? sub_C228();
+//extern ? sub_C2F0();
+//extern ? sub_C38C();
+//extern ? sub_C3D0();
+//extern ? sub_C450();
+//extern ? nullsub_12();
+//extern ? nullsub_13();
+//extern ? sub_C498();
+//extern ? sub_C4F0();
+//extern ? sub_C814();
+//extern ? sub_C948();
+//extern ? sub_CA28();
+//extern ? sub_CAA0();
+//extern ? sub_CB6C();
+//extern ? sub_CBA4();
+//extern ? nullsub_14();
+//extern ? sub_CC94();
+//extern ? sub_CCF8();
+//extern ? sub_CD18();
+
+// asm/libagbsyscall.s
+
+//extern ? ArcTan2();
+//extern ? CpuSet();
+//extern ? LZ77UnCompWram();
+//extern ? RegisterRamReset();
+//extern ? Sqrt();
+//extern ? VBlankIntrWait();
+
+// asm/m4a_1.s
+
+//extern ? umul3232H32();
+//extern ? SoundMain();
+//extern ? SoundMainRAM();
+//extern ? SoundMainBTM();
+//extern ? RealClearChain();
+//extern ? ply_fine();
+//extern ? MPlayJumpTableCopy();
+//extern ? ld_r3_tp_adr_i();
+//extern ? ply_goto();
+//extern ? ply_patt();
+//extern ? ply_pend();
+//extern ? ply_rept();
+//extern ? ply_prio();
+//extern ? ply_tempo();
+//extern ? ply_keysh();
+//extern ? ply_voice();
+//extern ? ply_vol();
+//extern ? ply_pan();
+//extern ? ply_bend();
+//extern ? ply_bendr();
+//extern ? ply_lfodl();
+//extern ? ply_modt();
+//extern ? ply_tune();
+//extern ? ply_port();
+//extern ? m4aSoundVSync();
+//extern ? MPlayMain();
+//extern ? TrackStop();
+//extern ? ChnVolSetAsm();
+//extern ? ply_note();
+//extern ? ply_endtie();
+//extern ? clear_modM();
+//extern ? ld_r3_tp_adr_i();
+//extern ? ply_lfos();
+//extern ? ply_mod();
+
+// asm/m4a_3.s
+
+//extern ? CgbSound();
+
+// asm/options.s
+
+//extern ? OptionsMain();
+//extern ? sub_51240();
+//extern ? sub_513B8();
+//extern ? sub_514B8();
+//extern ? sub_51C3C();
+//extern ? sub_51C60();
+//extern ? sub_51C9C();
+//extern ? sub_524BC();
+//extern ? sub_52528();
+//extern ? sub_525CC();
+
+// asm/pokedex.s
+
+//extern ? PokedexMain();
+//extern ? sub_3DCC();
+//extern ? sub_3FAC();
+//extern ? sub_4150();
+//extern ? sub_43D4();
+//extern ? sub_4428();
+//extern ? sub_45A4();
+//extern ? sub_4860();
+//extern ? sub_49A8();
+//extern ? sub_49D0();
+//extern ? sub_4B10();
+//extern ? sub_4B34();
+//extern ? sub_4BB4();
+//extern ? sub_4C80();
+//extern ? sub_4D50();
+//extern ? sub_4D74();
+//extern ? sub_4E34();
+//extern ? sub_4EF0();
+//extern ? sub_4F50();
+//extern ? sub_4FC8();
+//extern ? sub_5064();
+//extern ? sub_5134();
+//extern ? sub_5174();
+//extern ? sub_51CC();
+//extern ? sub_51FC();
+//extern ? sub_599C();
+//extern ? sub_5E60();
+//extern ? sub_5EA4();
+//extern ? sub_5EC8();
+//extern ? sub_5EEC();
+//extern ? sub_6144();
+//extern ? sub_639C();
+//extern ? sub_65DC();
+//extern ? sub_681C();
+//extern ? sub_6BEC();
+//extern ? sub_6CA0();
+//extern ? sub_6F30();
+//extern ? sub_6F78();
+//extern ? sub_70E0();
+//extern ? sub_71DC();
+//extern ? sub_88E4();
+//extern ? sub_8974();
+//extern ? sub_8A78();
+//extern ? sub_8ABC();
+
+// asm/rom_1068C.s
+
+//extern ? sub_1068C();
+extern void sub_10708(void*, void*, u16, s16);
+//extern ? sub_10750();
+//extern ? sub_10798();
+//extern ? sub_10860();
+extern void sub_1090C(void);
+
+// asm/rom_11B9C.s
+
+//extern ? sub_11B9C();
+//extern ? sub_11C14();
+//extern ? sub_11C98();
+//extern ? sub_11F88();
+//extern ? sub_12524();
+//extern ? sub_12BF8();
+//extern ? sub_1332C();
+//extern ? sub_1333C();
+//extern ? sub_13824();
+//extern ? sub_13934();
+//extern ? sub_13B28();
+//extern ? sub_13D24();
+//extern ? sub_14074();
+//extern ? sub_14488();
+//extern ? sub_1467C();
+//extern ? sub_14740();
+//extern ? sub_1493C();
+//extern ? sub_14AF4();
+//extern ? sub_14B84();
+//extern ? sub_14E08();
+//extern ? sub_15054();
+//extern ? sub_153CC();
+//extern ? sub_16090();
+//extern ? sub_162B8();
+//extern ? sub_1642C();
+//extern ? sub_171C8();
+//extern ? sub_173FC();
+//extern ? sub_17634();
+//extern ? sub_176B0();
+//extern ? sub_17898();
+//extern ? sub_179D0();
+//extern ? sub_17C1C();
+//extern ? sub_17F28();
+//extern ? sub_18180();
+//extern ? sub_182B4();
+//extern ? sub_18324();
+//extern ? sub_1857C();
+//extern ? sub_18784();
+//extern ? sub_187F4();
+//extern ? sub_18A4C();
+//extern ? sub_18AE0();
+//extern ? sub_18B50();
+//extern ? sub_18DAC();
+//extern ? sub_18F38();
+//extern ? IdlePinballGameMain();
+//extern ? sub_19048();
+//extern ? sub_19190();
+//extern ? sub_19288();
+//extern ? sub_19304();
+//extern ? sub_1931C();
+//extern ? sub_19490();
+//extern ? sub_195C4();
+//extern ? sub_19734();
+//extern ? sub_19894();
+//extern ? sub_19A20();
+//extern ? sub_19B10();
+//extern ? sub_19B64();
+//extern ? sub_19B90();
+//extern ? sub_19C04();
+//extern ? sub_19CC8();
+//extern ? sub_19D04();
+//extern ? sub_19E10();
+//extern ? sub_19F70();
+//extern ? sub_19FA0();
+//extern ? sub_1A0F4();
+//extern ? sub_1A2C0();
+//extern ? sub_1A98C();
+//extern ? sub_1A9E8();
+//extern ? sub_1AA38();
+//extern ? sub_1AAA0();
+//extern ? sub_1AD84();
+//extern ? sub_1ADF4();
+//extern ? sub_1AF84();
+//extern ? sub_1AFD4();
+//extern ? sub_1B140();
+//extern ? sub_1BB68();
+//extern ? sub_1C544();
+//extern ? sub_1C560();
+//extern ? sub_1C5AC();
+//extern ? sub_1C73C();
+//extern ? sub_1C7F4();
+//extern ? sub_1D128();
+//extern ? sub_1D4D0();
+//extern ? sub_1D5D8();
+//extern ? sub_1DA74();
+//extern ? sub_1DAD8();
+//extern ? sub_1DC7C();
+//extern ? sub_1DDDC();
+//extern ? sub_1EC48();
+//extern ? sub_1F158();
+//extern ? sub_1F2A4();
+//extern ? sub_1F59C();
+//extern ? sub_1F698();
+//extern ? sub_1FA48();
+//extern ? sub_1FBC4();
+//extern ? sub_1FF0C();
+//extern ? sub_201B8();
+//extern ? sub_203CC();
+//extern ? sub_20EC0();
+//extern ? sub_21238();
+//extern ? sub_21300();
+//extern ? sub_21320();
+//extern ? sub_21514();
+//extern ? sub_21578();
+//extern ? sub_216FC();
+//extern ? sub_219A8();
+//extern ? sub_219EC();
+//extern ? sub_21B0C();
+//extern ? sub_21D78();
+//extern ? sub_21FBC();
+//extern ? sub_225F0();
+//extern ? sub_22978();
+//extern ? sub_22A30();
+//extern ? sub_22C6C();
+//extern ? sub_22D54();
+//extern ? sub_22FA4();
+//extern ? sub_23070();
+//extern ? sub_2310C();
+//extern ? sub_2312C();
+//extern ? sub_23300();
+//extern ? sub_23954();
+//extern ? sub_239A4();
+//extern ? sub_23E18();
+//extern ? sub_242B4();
+//extern ? sub_24350();
+//extern ? sub_24408();
+//extern ? sub_2530C();
+//extern ? sub_253E0();
+//extern ? sub_25808();
+//extern ? sub_25F64();
+//extern ? sub_260B8();
+//extern ? sub_26778();
+//extern ? sub_26820();
+//extern ? sub_268CC();
+//extern ? sub_269A4();
+//extern ? sub_26A10();
+//extern ? sub_26EA4();
+//extern ? sub_26F38();
+//extern ? sub_27080();
+//extern ? sub_278F4();
+//extern ? sub_27D44();
+//extern ? sub_27E08();
+//extern ? sub_27F94();
+//extern ? sub_28404();
+//extern ? sub_28544();
+//extern ? sub_28AE0();
+//extern ? sub_28BFC();
+//extern ? sub_28C90();
+//extern ? sub_28E2C();
+//extern ? sub_28EA0();
+//extern ? sub_292A0();
+//extern ? sub_29334();
+//extern ? sub_293D8();
+//extern ? sub_29624();
+//extern ? sub_29664();
+//extern ? sub_2971C();
+//extern ? sub_29924();
+//extern ? sub_29A6C();
+//extern ? sub_29D9C();
+//extern ? sub_2A054();
+//extern ? sub_2A354();
+//extern ? sub_2AADC();
+//extern ? sub_2C518();
+//extern ? sub_2C538();
+//extern ? sub_2C9A4();
+//extern ? sub_2CA9C();
+//extern ? sub_2CD98();
+//extern ? sub_2CE80();
+//extern ? sub_2D104();
+//extern ? sub_2D204();
+//extern ? sub_2DE54();
+//extern ? sub_2E094();
+//extern ? sub_2E67C();
+//extern ? sub_2E6AC();
+//extern ? sub_2F140();
+//extern ? sub_2F26C();
+//extern ? sub_2F504();
+//extern ? sub_2F79C();
+//extern ? sub_2FCD0();
+//extern ? sub_300D8();
+//extern ? sub_30178();
+//extern ? sub_30480();
+//extern ? sub_304C8();
+//extern ? sub_308DC();
+//extern ? sub_30EB4();
+//extern ? sub_31144();
+//extern ? sub_313A0();
+//extern ? sub_31498();
+//extern ? sub_31B30();
+//extern ? sub_31BE8();
+//extern ? sub_31CF8();
+//extern ? sub_31F6C();
+
+// asm/rom_3219C.s
+
+//extern ? sub_32484();
+//extern ? sub_325E0();
+//extern ? sub_326F4();
+//extern ? sub_3276C();
+//extern ? sub_327C0();
+//extern ? sub_328C8();
+//extern ? sub_32914();
+//extern ? sub_32968();
+//extern ? sub_329B0();
+//extern ? sub_329F4();
+//extern ? sub_32B74();
+//extern ? sub_32BE4();
+//extern ? sub_32DF8();
+//extern ? sub_32F3C();
+//extern ? sub_33130();
+//extern ? sub_3342C();
+//extern ? sub_336E0();
+//extern ? sub_340EC();
+//extern ? sub_34450();
+//extern ? sub_350F0();
+//extern ? sub_351A8();
+//extern ? sub_356A0();
+//extern ? sub_357B8();
+//extern ? sub_35860();
+//extern ? sub_35AA4();
+//extern ? sub_35D54();
+//extern ? sub_36CB4();
+//extern ? sub_372B4();
+//extern ? sub_3751C();
+//extern ? sub_37850();
+//extern ? sub_38218();
+//extern ? sub_383E4();
+//extern ? sub_3869C();
+//extern ? sub_38A20();
+//extern ? sub_395D8();
+//extern ? sub_39A40();
+//extern ? sub_3A150();
+//extern ? sub_3ADA0();
+//extern ? sub_3AE14();
+//extern ? sub_3B120();
+//extern ? sub_3B49C();
+//extern ? sub_3B7C4();
+//extern ? sub_3C6E0();
+//extern ? sub_3CBC4();
+//extern ? sub_3E5D0();
+//extern ? sub_3E644();
+//extern ? sub_3E79C();
+//extern ? sub_3EB2C();
+//extern ? sub_3EDF0();
+//extern ? sub_3FAE0();
+//extern ? sub_40288();
+//extern ? sub_41580();
+//extern ? sub_417F8();
+//extern ? sub_423D8();
+//extern ? sub_42E48();
+//extern ? sub_43228();
+//extern ? sub_43500();
+//extern ? sub_4387C();
+//extern ? sub_44D58();
+//extern ? sub_44F3C();
+//extern ? sub_45164();
+//extern ? sub_455D0();
+//extern ? sub_45E08();
+//extern ? sub_45E90();
+//extern ? sub_467F4();
+//extern ? sub_46FD4();
+//extern ? sub_47030();
+//extern ? sub_47100();
+//extern ? sub_47110();
+//extern ? sub_47160();
+//extern ? sub_472E4();
+//extern ? sub_47344();
+//extern ? sub_474F4();
+//extern ? sub_47670();
+//extern ? sub_478D8();
+//extern ? sub_47FBC();
+//extern ? sub_47FF8();
+//extern ? sub_48124();
+//extern ? sub_48190();
+//extern ? sub_495A0();
+//extern ? sub_497BC();
+//extern ? sub_49850();
+//extern ? sub_49A34();
+//extern ? PinballGameMain();
+//extern ? sub_49ED4();
+//extern ? sub_4A270();
+//extern ? sub_4A518();
+//extern ? sub_4A6A0();
+//extern ? sub_4A90C();
+//extern ? sub_4AAD8();
+//extern ? sub_4ABC8();
+//extern ? sub_4ABEC();
+//extern ? sub_4ACF0();
+//extern ? sub_4AE8C();
+//extern ? sub_4B000();
+//extern ? sub_4B20C();
+//extern ? nullsub_19();
+//extern ? sub_4B280();
+//extern ? sub_4B334();
+//extern ? sub_4B408();
+//extern ? sub_4B654();
+//extern ? sub_4B678();
+//extern ? sub_4BC34();
+//extern ? sub_4C290();
+//extern ? sub_4C808();
+//extern ? sub_4CA18();
+//extern ? sub_4CAE8();
+//extern ? sub_4CB0C();
+//extern ? sub_4CB30();
+//extern ? sub_4CBB4();
+//extern ? sub_4CC58();
+//extern ? sub_4CD60();
+//extern ? nullsub_18();
+//extern ? sub_4CEA8();
+//extern ? sub_4CEB4();
+//extern ? sub_4D3D0();
+//extern ? sub_4D648();
+//extern ? sub_4D6C4();
+//extern ? sub_4D960();
+//extern ? sub_4DBFC();
+//extern ? sub_4DFA0();
+//extern ? sub_4E2F8();
+//extern ? sub_4E468();
+//extern ? sub_4E598();
+//extern ? sub_4E814();
+//extern ? sub_4E920();
+//extern ? sub_4E9F0();
+//extern ? sub_4EA44();
+//extern ? sub_4EAB0();
+//extern ? sub_4EAF8();
+//extern ? sub_4EBD0();
+//extern ? sub_4ECDC();
+//extern ? sub_4EDC0();
+//extern ? sub_4EE74();
+//extern ? sub_4EF38();
+//extern ? sub_4F028();
+//extern ? sub_4F0F0();
+//extern ? sub_4F258();
+//extern ? sub_4F2B8();
+//extern ? sub_4F30C();
+//extern ? sub_4F4B4();
+//extern ? sub_4F660();
+//extern ? sub_4F814();
+//extern ? sub_4F95C();
+//extern ? sub_4F9F0();
+//extern ? sub_4FAC0();
+//extern ? sub_4FB08();
+//extern ? sub_4FBA4();
+//extern ? sub_4FC7C();
+//extern ? sub_4FD88();
+//extern ? sub_4FE6C();
+//extern ? sub_50000();
+//extern ? sub_500B4();
+//extern ? sub_50154();
+//extern ? sub_5030C();
+//extern ? sub_504C0();
+//extern ? sub_505A4();
+//extern ? sub_506B0();
+//extern ? sub_50710();
+//extern ? sub_507D4();
+//extern ? sub_50848();
+//extern ? sub_50918();
+//extern ? sub_50AD4();
+//extern ? sub_50B80();
+//extern ? sub_50D48();
+//extern ? sub_50DB8();
+//extern ? sub_50DE0();
+//extern ? nullsub_20();
+//extern ? sub_50F04();
+//extern ? sub_50FAC();
+//extern ? sub_50FD4();
+//extern ? sub_51068();
+//extern ? sub_51090();
+//extern ? sub_51128();
+//extern ? sub_51150();
+//extern ? sub_511F8();
+
+// asm/rom_528AC.s
+
+//extern ? sub_528AC();
+//extern ? sub_528DC();
+//extern ? sub_5291C();
+//extern ? sub_52940();
+extern void sub_52A18(void);
+//extern ? sub_52A68();
+//extern ? sub_52B30();
+//extern ? sub_52BB0();
+extern void sub_52C44(void);
+//extern ? sub_52C64();
+
+// asm/rom_9BC.s
+
+extern void sub_13FC(void);
+//extern ? sub_1668();
+//extern ? sub_16A0();
+//extern ? sub_170C();
+//extern ? sub_1748();
+//extern ? sub_17D8();
+extern void sub_1828(void);
+//extern ? sub_1884();
+//extern ? sub_19B4();
+//extern ? sub_19CC();
+//extern ? sub_1A78();
+//extern ? nullsub_15();
+//extern ? sub_1AA4();
+//extern ? sub_1B04();
+//extern ? sub_1C5C();
+//extern ? sub_1C84();
+//extern ? sub_1CD4();
+//extern ? sub_1DB8();
+//extern ? sub_1EC0();
+extern void sub_1F4C(void);
+extern void sub_1F5C(void);
+//extern ? sub_1FEC();
+//extern ? sub_1FFC();
+//extern ? sub_20FC();
+//extern ? sub_223C();
+//extern ? sub_2308();
+//extern ? sub_2338();
+//extern ? sub_2364();
+//extern ? sub_23B4();
+//extern ? sub_2414();
+//extern ? nullsub_16();
+//extern ? sub_24DC();
+//extern ? sub_250C();
+//extern ? sub_2538();
+//extern ? sub_2568();
+
+// asm/start.s
+
+
+// asm/titlescreen.s
+
+//extern ? sub_11640();
+extern void sub_1175C(void);
+extern void sub_11968(void);
+extern void sub_11B74(void);
+
+// asm/unknown_lib_2.s
+
+extern int sub_55A24(u8*); // Rumble Pak?
+
+// asm/unknown_lib.s
+
+//extern ? sub_554F0();
+//extern ? sub_55530();
+//extern ? sub_55570();
+//extern ? sub_555BC();
+//extern ? sub_55654();
+
+#endif // GUARD_FUNCTIONS_H \ No newline at end of file