The SGADE Documentation

the SGADE The Socrates Gameboy Advance Development Engine

The SGADE is a development library for the Nintendo Gameboy Advance. It's free for all uses and is distributed without guarantees. For more information visit the SGADE page.


Main Page   Modules   Data Structures   File List   Data Fields   Globals   Related Pages  

SoBkgMap.h

Go to the documentation of this file.
00001 // ----------------------------------------------------------------------------
00013 // ----------------------------------------------------------------------------
00014 
00015 #ifndef SO_BKG_MAP_H
00016 #define SO_BKG_MAP_H
00017 
00018 #ifdef __cplusplus
00019     extern "C" {
00020 #endif
00021 
00022 // ---------------------------------------------------------------------------- //! @{
00065 // ----------------------------------------------------------------------------
00066 
00067 // ----------------------------------------------------------------------------
00068 // Includes
00069 // ----------------------------------------------------------------------------
00070 
00071 #include "SoSystem.h"
00072 #include "SoBkg.h"
00073 #include "SoDisplay.h"
00074 #include "SoTileMap.h"
00075 
00076 // ----------------------------------------------------------------------------
00077 // Defines
00078 // ----------------------------------------------------------------------------
00079 
00080 #define SO_BKG_MAP_MODE_RAW     0x0000  
00081 #define SO_BKG_MAP_MODE_DYNAMIC 0x0001  
00082 
00083 // ----------------------------------------------------------------------------
00084 // Typedefs
00085 // ----------------------------------------------------------------------------
00086 
00092 typedef struct
00093 {
00094     u16        m_Mode;          
00095     u16        m_Bkg;           
00096     u16        m_XPos;          
00097     u16        m_YPos;          
00098     SoTileMap *m_TileMap;       
00099 } SoBkgMap;
00100 
00101 
00102 // ----------------------------------------------------------------------------
00103 // Public methods;
00104 // ----------------------------------------------------------------------------
00105 
00107 #define SoBkgMapIsDynamic(a_This)      ((a_This)->m_Mode & SO_BKG_MAP_MODE_DYNAMIC)
00108 
00110 #define SoBkgMapGetBackground(a_This)  ((const u16)((a_This)->m_Bkg))
00111 
00112 void SoBkgMapInit(SoBkgMap *a_This, u16 a_Mode);
00113 void SoBkgMapSetBackground(SoBkgMap *a_This, u32 a_Index);
00114 void SoBkgMapSetTileMap(SoBkgMap *a_This, SoTileMap *a_TileMap);
00115 void SoBkgMapSetScroll(SoBkgMap *a_This, u16 a_XPos, u16 a_YPos);
00116 
00117 //void SoBkgMapWrite(SoBkgMap *a_This, u16 a_XIndex, u16 a_YIndex, u16 a_Len, u16 *a_buffer);
00118 //void SoBkgMapWrite(SoBkgMap *a_This, u16 a_XIndex, u16 a_YIndex, u16 a_Len, u16 *a_buffer);
00119 //void SoBkgMapWriteV(SoBkgMap *a_This, u16 a_XIndex, u16 a_YIndex, u16 a_Len, u16 *a_buffer);
00120 //void SoBkgMapWriteBlock(SoBkgMap *a_This, u16 a_XIndex, u16 a_YIndex, u16 a_Width, u16 a_Height,
00121 //                  u16 a_Pitch, u16 *a_buffer);
00122 //const SoBkgFont* SoBkgMapSetFont(SoBkgMap *a_This, const SoBkgFont *a_Font);
00123 
00124 
00125 // ----------------------------------------------------------------------------
00126 // EOF
00127 // ----------------------------------------------------------------------------
00128 
00130 
00131 #ifdef __cplusplus
00132 } // extern "C"
00133 #endif
00134 
00135 #endif // SO_BKG_MAP_H

Copyright 2002 by the SGADE authors. See SoLicense.h or Visit the SGADE page for more information.