1 /*---------------------------------------------------------------------------*
2   Project:  Dolphin/Revolution gx demo
3   File:     G2D-test00.h (Test of 2D API by Paul Donnelly, Nov. 1999)
4 
5   Copyright 1998-2006 Nintendo.  All rights reserved.
6 
7   These coded instructions, statements, and computer programs contain
8   proprietary information of Nintendo of America Inc. and/or Nintendo
9   Company Ltd., and are protected by Federal copyright law.  They may
10   not be disclosed to third parties or copied or duplicated in any form,
11   in whole or in part, without the prior written consent of Nintendo.
12  *---------------------------------------------------------------------------*/
13 
14 #ifndef __G2DTEST_H__
15 #define __G2DTEST_H__
16 
17 #ifdef __cplusplus
18     extern "C" {
19 #endif
20 
21 /*---------------------------------------------------------------------------*
22    Includes
23  *---------------------------------------------------------------------------*/
24 
25 #include <demo.h>
26 #include <G2D.h>
27 
28 /*---------------------------------------------------------------------------*
29    Defines
30  *---------------------------------------------------------------------------*/
31 
32 #define MY_SCREEN_WIDTH  640
33 #define MY_SCREEN_HEIGHT 448
34 
35 #define USED_TILES 86
36 
37 #ifdef EMU
38     #define _EDITOR
39 #endif
40 
41 /*---------------------------------------------------------------------------*
42   Global Variables
43  *---------------------------------------------------------------------------*/
44 
45 // Joy
46 extern u16 nButtons;
47 extern u16 nOldButtons;
48 extern s8 stickX;
49 extern s8 stickY;
50 
51 // Phy
52 extern G2DPosOri poCam;
53 extern G2DPosOri poShip;
54 extern f32 rAng;
55 
56 extern s32 nStartIdx;
57 extern u32 nMode;
58 extern u8 *map;
59 extern s32 nMapWidth, nMapHeight;
60 extern f32 rWorldWidth, rWorldHeight;
61 
62 // Level1
63 extern const char sUsedTiles[];
64 extern G2DLayer lyrBack;
65 extern G2DLayer lyrFront;
66 extern G2DTileDesc tileDescLyr1[];
67 extern G2DTileDesc tileDescLyr2[];
68 
69 #ifdef _EDITOR
70 
71     // Editor
72     extern u32 nMode;
73     extern s32 nMapIdx;
74     extern s32 nMapX, nMapY;
75     extern s32 nStampLeft, nStampWidth;
76     extern s32 nStampTop, nStampHeight;
77     extern s32 nStampStartX, nStampStartY;
78     extern s32 nStampOffsetX, nStampOffsetY;
79     extern u8 aEditStamp[];
80     extern u8 aEditBack[];
81 
82 #endif // ifdef _EDITOR
83 
84 /*---------------------------------------------------------------------------*
85   Function Declarations
86  *---------------------------------------------------------------------------*/
87 
88 // Joy
89 void JoyInit        ( void );
90 void JoyTick        ( void );
91 u16  JoyReadButtons ( void );
92 s8   JoyReadStickX  ( void );
93 s8   JoyReadStickY  ( void );
94 
95 // Phy
96 extern void AnimInit( void );
97 extern void AnimTick( void );
98 
99 // Level1
100 void InitLevel1( TPLPalettePtr *tpl );
101 
102 // Editor
103 void MapEditor( G2DLayer *layer );
104 void SaveMap( G2DLayer *layer );
105 void RenderEditorMode( s8 *aSortBuffer );
106 
107 #ifdef __cplusplus
108     }
109 #endif
110 
111 /* Prevent re-inclusion */
112 #endif // __G2DTEST_H__
113 
114 /*===========================================================================*/
115 
116