#ifndef TEXTURES_H
#define TEXTURES_H

#include <PR/ultratypes.h>
#include <PR/gbi.h>

// generic
extern const u8 generic_09000000[];
extern const u8 generic_09000800[];
extern const u8 generic_09001000[];
extern const u8 generic_09001800[];
extern const u8 generic_09002000[];
extern const u8 generic_09002800[];
extern const u8 generic_09003000[];
extern const u8 generic_09003800[];
extern const u8 generic_09004000[];
extern const u8 generic_09004800[];
extern const u8 generic_09005000[];
extern const u8 generic_09005800[];

// inside
extern const u8 inside_09000000[];
extern const u8 inside_09001000[];
extern const u8 inside_09002000[];
extern const u8 inside_09002800[];
extern const u8 inside_09003000[];
extern const u8 inside_09003800[];
extern const u8 inside_09004000[];
extern const u8 inside_09004800[];
extern const u8 inside_09005000[];
extern const u8 inside_09005800[];
extern const u8 inside_09006000[];
extern const u8 inside_09006800[];
extern const u8 inside_09007000[];
extern const u8 inside_09008000[];
extern const u8 inside_09009000[];
extern const u8 inside_09009800[];

// outside
extern const u8 outside_09000800[];
extern const u8 outside_09001000[];
extern const u8 outside_09002000[];
extern const u8 outside_09003000[];
extern const u8 outside_09003800[];
extern const u8 outside_09004800[];
extern const u8 outside_09005800[];
extern const u8 outside_09006000[];
extern const u8 outside_09006800[];
extern const u8 outside_09007800[];
extern const u8 outside_09008000[];
extern const u8 outside_09008800[];
extern const u8 outside_09009000[];
extern const u8 outside_0900A000[];
extern const u8 outside_0900A800[];
extern const u8 outside_0900B000[];
extern const u8 outside_0900B400[];
extern const u8 outside_0900BC00[];

// sky
extern const u8 sky_09000000[];
extern const u8 sky_09000800[];
extern const u8 sky_09001000[];
extern const u8 sky_09001800[];
extern const u8 sky_09002000[];
extern const u8 sky_09003000[];
extern const u8 sky_09003800[];
extern const u8 sky_09004800[];
extern const u8 sky_09005000[];
extern const u8 sky_09005800[];
extern const u8 sky_09006000[];
extern const u8 texture_metal_hole[];
extern const u8 sky_09007000[];
extern const u8 sky_09007800[];
extern const u8 sky_09008000[];

// slide
extern const u8 slide_09000800[];
extern const u8 slide_09002800[];
extern const u8 slide_09003000[];
extern const u8 slide_09006800[];
extern const u8 slide_09007000[];
extern const u8 slide_09008800[];
extern const u8 slide_09009800[];
extern const u8 slide_0900A800[];
extern const u8 slide_0900B000[];
extern const u8 slide_0900B800[];
extern const u8 slide_SnowSlideArrow_rgba16[];

// spooky
extern const u8 spooky_09000000[];
extern const u8 spooky_09000800[];
extern const u8 spooky_09001000[];
extern const u8 spooky_09001800[];
extern const u8 spooky_09002800[];
extern const u8 spooky_09003800[];
extern const u8 spooky_09004800[];
extern const u8 spooky_09005000[];
extern const u8 spooky_09006000[];
extern const u8 spooky_09006800[];
extern const u8 spooky_09007000[];
extern const u8 spooky_09008000[];
extern const u8 spooky_09008800[];
extern const u8 spooky_09009000[];
extern const u8 spooky_0900A000[];
extern const u8 spooky_0900A800[];
extern const u8 spooky_0900B000[];
extern const u8 spooky_0900B800[];

// water
extern const u8 water_09001800[];
extern const u8 water_09003800[];
extern const u8 water_09004800[];
extern const u8 water_09006800[];
extern const u8 water_09007800[];
extern const u8 water_09009000[];
extern const u8 water_0900A000[];

// effect
extern const u8 *const flower_bubbles_textures_ptr_0B002008[];
extern const u8 *const lava_bubble_ptr_0B006020[];
extern const u8 *const bubble_ptr_0B006848[];
extern const Gfx tiny_bubble_dl_0B006A50[];
extern const Gfx tiny_bubble_dl_0B006AB0[];
extern const Gfx tiny_bubble_dl_0B006CD8[];
extern const Gfx tiny_bubble_dl_0B006D38[];
extern const Gfx tiny_bubble_dl_0B006D68[];

// title_screen_bg
extern const Gfx title_screen_bg_dl_0A000100[];
extern const Gfx title_screen_bg_dl_0A000118[];
extern const Gfx title_screen_bg_dl_0A000130[];
extern const Gfx title_screen_bg_dl_0A000148[];
extern const Gfx title_screen_bg_dl_0A000160[];
extern const Gfx title_screen_bg_dl_0A000178[];
extern const Gfx title_screen_bg_dl_0A000190[];
extern const u8 *const mario_title_texture_table[];
extern const u8 *const game_over_texture_table[];

#endif // TEXTURES_H
