diff options
author | yenatch <yenatch@gmail.com> | 2017-09-03 18:11:57 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-09-03 18:11:57 -0400 |
commit | 7ea0d462c49360351006f246f0a300aaa765a843 (patch) | |
tree | c930fe4733b8ae2bc02940ae6a35fbf73f933aca /include/window.h | |
parent | cbe13acff18405e99827df7c4a772d20b851f33b (diff) | |
parent | 5afd2d5bfb1ec117d80898d9ad1c2529d28a091c (diff) |
Merge pull request #22 from DizzyEggg/clean_up
bring pokeemerald to usable state
Diffstat (limited to 'include/window.h')
-rw-r--r-- | include/window.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/include/window.h b/include/window.h index ca0520d41..6f5f55c11 100644 --- a/include/window.h +++ b/include/window.h @@ -1,6 +1,18 @@ #ifndef GUARD_WINDOW_H #define GUARD_WINDOW_H +enum +{ + WINDOW_PRIORITY, + WINDOW_TILEMAP_LEFT, + WINDOW_TILEMAP_TOP, + WINDOW_WIDTH, + WINDOW_HEIGHT, + WINDOW_PALETTE_NUM, + WINDOW_BASE_BLOCK, + WINDOW_TILE_DATA +}; + struct WindowTemplate { u8 priority; @@ -18,4 +30,32 @@ struct Window u8 *tileData; }; +bool16 InitWindows(struct WindowTemplate *templates); +u16 AddWindow(struct WindowTemplate *template); +int AddWindowWithoutTileMap(struct WindowTemplate *template); +void RemoveWindow(u8 windowId); +void FreeAllWindowBuffers(void); +void CopyWindowToVram(u8 windowId, u8 mode); +void CopyWindowRectToVram(u32 windowId, u32 mode, u32 x, u32 y, u32 w, u32 h); +void PutWindowTilemap(u8 windowId); +void PutWindowRectTilemapOverridePalette(u8 windowId, u8 x, u8 y, u8 width, u8 height, u8 palette); +void ClearWindowTilemap(u8 windowId); +void PutWindowRectTilemap(u8 windowId, u8 x, u8 y, u8 width, u8 height); +void BlitBitmapToWindow(u8 windowId, u8 *pixels, u16 x, u16 y, u16 width, u16 height); +void BlitBitmapRectToWindow(u8 windowId, const u8 *pixels, u16 srcX, u16 srcY, u16 srcWidth, int srcHeight, u16 destX, u16 destY, u16 rectWidth, u16 rectHeight); +void FillWindowPixelRect(u8 windowId, u8 fillValue, u16 x, u16 y, u16 width, u16 height); +void CopyToWindowPixelBuffer(u8 windowId, u8 *src, u16 size, u16 tileOffset); +void FillWindowPixelBuffer(u8 windowId, u8 fillValue); +void ScrollWindow(u8 windowId, u8 direction, u8 distance, u8 fillValue); +void CallWindowFunction(u8 windowId, void ( *func)(u8, u8, u8, u8, u8, u8)); +bool8 SetWindowAttribute(u8 windowId, u8 attributeId, u32 value); +u32 GetWindowAttribute(u8 windowId, u8 attributeId); +u16 AddWindow8Bit(struct WindowTemplate *template); +u16 AddWindow8Bit(struct WindowTemplate *template); +void FillWindowPixelRect8Bit(u8 windowId, u8 fillValue, u16 x, u16 y, u16 width, u16 height); +void BlitBitmapRectToWindow4BitTo8Bit(u8 windowId, u8 *pixels, u16 srcX, u16 srcY, u16 srcWidth, int srcHeight, u16 destX, u16 destY, u16 rectWidth, u16 rectHeight, u8 paletteNum); +void CopyWindowToVram8Bit(u8 windowId, u8 mode); + +extern struct Window gWindows[]; + #endif // GUARD_WINDOW_H |