#ifndef POKEPLATINUM_OV76_0223B870_H
#define POKEPLATINUM_OV76_0223B870_H

#include "overlay076/struct_ov76_0223C398.h"
#include "overlay076/struct_ov76_0223DE00.h"

#include "bg_window.h"
#include "g3d_pipeline.h"
#include "narc.h"
#include "palette.h"
#include "sprite_system.h"

void ov76_0223B8A8(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223B8C4(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223B904(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223B940(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223B96C(UnkStruct_ov76_0223DE00 *param0, BOOL param1);
void ov76_0223B98C(UnkStruct_ov76_0223DE00 *param0, int param1, int param2, int param3, int param4);
void ov76_0223BA90(UnkStruct_ov76_0223DE00 *param0, int param1);
void ov76_0223BB04(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223BBAC(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223BC70(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223BD30(UnkStruct_ov76_0223DE00 *param0, s8 param1, int param2);
G3DPipelineBuffers *ov76_0223BE6C(void);
void ov76_0223BE8C(void);
void ov76_0223BF10(void);
void ov76_0223BF50(void);
void ov76_0223BF74(BgConfig *param0, Window *param1, int param2, UnkStruct_ov76_0223DE00 *param3, int param4);
void ov76_0223C0EC(int param0, s16 *param1, s16 *param2);
void ov76_0223C110(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223C188(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223C288(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223C304(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223C32C(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223C354(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223C398(UnkStruct_ov76_0223C398 *param0);
void ov76_0223C424(UnkStruct_ov76_0223C398 *param0);
void ov76_0223C438(UnkStruct_ov76_0223DE00 *param0, NARC *param1);
void ov76_0223C4AC(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223C544(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223C568(UnkStruct_ov76_0223DE00 *param0, int param1);
void ov76_0223C588(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223C5A4(SpriteSystem *param0, SpriteManager *param1, PaletteData *param2, int param3, int param4, int param5, int param6, int param7, int param8, int param9, NARC *param10);
void ov76_0223C61C(UnkStruct_ov76_0223DE00 *param0, NARC *param1);
void ov76_0223C7E0(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223C80C(UnkStruct_ov76_0223DE00 *param0, int param1, int param2);
void ov76_0223C88C(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223C8BC(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223C8EC(BgConfig *param0, PaletteData *param1, int param2);
void ov76_0223C974(BgConfig *param0, PaletteData *param1, int param2);
void ov76_0223CA30(Window *param0, int param1);
void ov76_0223CA98(BgConfig *param0, Window *param1, int param2, int param3, int param4, int param5, int param6, int param7);
void ov76_0223CB58(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223CC8C(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223CD20(UnkStruct_ov76_0223DE00 *param0, int param1);
void ov76_0223CDA4(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223CDC4(Window *param0, int param1);
void ov76_0223CE2C(void);
void ov76_0223CE44(void);
void ov76_0223CE64(void);
void ov76_0223CE84(UnkStruct_ov76_0223DE00 *param0, NARC *param1);
void ov76_0223CF24(UnkStruct_ov76_0223DE00 *param0, NARC *param1);
void ov76_0223CF88(UnkStruct_ov76_0223DE00 *param0, NARC *param1);
void ov76_0223CFEC(UnkStruct_ov76_0223DE00 *param0, NARC *param1);
void ov76_0223D16C(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223D2F4(UnkStruct_ov76_0223DE00 *param0, int param1);
void ov76_0223D318(UnkStruct_ov76_0223DE00 *param0);
void ov76_0223D31C(UnkStruct_ov76_0223DE00 *param0);

#endif // POKEPLATINUM_OV76_0223B870_H
