1 /*---------------------------------------------------------------------------*
2   Project:  Dolphin GD demo
3   File:     gd-tev.h
4 
5   Copyright 2001 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   $Log: gd-tev.h,v $
14   Revision 1.2  02/20/2006 04:13:09  mitu
15   changed include path from dolphin/ to revolution/.
16 
17   Revision 1.1  02/08/2006 11:19:58  mitu
18   1st version.
19 
20 
21     2     02/09/06 11:30 Hirose
22     Resolved future time stamp problem.
23 
24     2     10/18/02 11:07p Hirose
25     Fixed quantize shift amount.
26 
27     1     10/04/01 2:47p Hirose
28     Initial check in.
29 
30   $NoKeywords: $
31  *---------------------------------------------------------------------------*/
32 /*---------------------------------------------------------------------------*
33    gd-tev
34      Displaylist demo with multi-texture shader commands
35      [Header file]
36  *---------------------------------------------------------------------------*/
37 
38 
39 /*---------------------------------------------------------------------------*
40    Header files
41  *---------------------------------------------------------------------------*/
42 #include <revolution/gd.h>
43 
44 /*---------------------------------------------------------------------------*
45    Macro definitions
46  *---------------------------------------------------------------------------*/
47 #define QUANTIZE_SHIFT  14
48 #define QSCALE          (1<<QUANTIZE_SHIFT)
49 
50 #define MODEL_MESHX     16
51 #define MODEL_MESHY     16
52 #define MODEL_ZSCALE    0.65F
53 
54 #define BUMP_SCALE      0x50
55 #define REFLEX_SCALE    0x50
56 #define DIFFUSE_BASE    0xA0
57 #define SPECULAR_BASE   0x80
58 
59 #define NUM_TEXTURES    4
60 
61 #define NUM_SHADERDLS   4
62 #define NUM_MODELDLS    1
63 #define NUM_DLS         (NUM_SHADERDLS+NUM_MODELDLS)
64 #define NUM_PLS         NUM_SHADERDLS
65 
66 #define MDL_SIZE_MAX    4096
67 #define SDL_SIZE_MAX    512
68 #define PL_SIZE_MAX     96
69 
70 /*---------------------------------------------------------------------------*
71    External function references
72  *---------------------------------------------------------------------------*/
73 extern void CreateModelDL   ( void* dlPtr, u32* dlSize );
74 extern void CreateShader0DL ( void* dlPtr, u32* dlSize, u32* plPtr, u32* plSize );
75 extern void CreateShader1DL ( void* dlPtr, u32* dlSize, u32* plPtr, u32* plSize );
76 extern void CreateShader2DL ( void* dlPtr, u32* dlSize, u32* plPtr, u32* plSize );
77 extern void CreateShader3DL ( void* dlPtr, u32* dlSize, u32* plPtr, u32* plSize );
78 
79 
80 /*============================================================================*/
81