teapot.h 3.93 KB

/**************************************************************************
 *                                                                        *
 *               Copyright (C) 1994, Silicon Graphics, Inc.               *
 *                                                                        *
 *  These coded instructions, statements, and computer programs  contain  *
 *  unpublished  proprietary  information of Silicon Graphics, Inc., and  *
 *  are protected by Federal copyright  law.  They  may not be disclosed  *
 *  to  third  parties  or copied or duplicated in any form, in whole or  *
 *  in part, without the prior written consent of Silicon Graphics, Inc.  *
 *                                                                        *
 *************************************************************************/

/*
 * File:	teapot.h
 * Creator:	hsa@sgi.com
 * Create Date:	Sun Jun  4 18:39:48 PDT 1995
 *
 */

#define	STATIC_SEGMENT		1
#define	CFB_SEGMENT		1

#define	SCREEN_HT	240
#define	SCREEN_WD	320

#define	TEX_HT		72
#define	TEX_WD		112

#define	IMG_HT		120
#define	IMG_WD		188

#define	STACKSIZE	0x2000

/*
 * ifdef needed because this file is included by "spec"
 */
#ifdef _LANGUAGE_C

/*
 * Layout of our dynamic segment
 */
typedef struct {
	Mtx	projection;
	Mtx	viewing;

	LookAt	lookat[2];
	Hilite	hilite[2];

        Mtx     teapot_scale;
        Mtx     teapot_rotate;
        Mtx     teapot_trans;

	Mtx	projectionBG;
	Mtx	viewingBG;
        Mtx     identity;

	unsigned short texture[TEX_WD*TEX_HT];

        Mtx     shadow_scale;
        Mtx     shadow_rotate;
        Mtx     shadow_trans;

	Gfx	glist[4096];
} Dynamic;

extern Dynamic	dynamic;

extern unsigned short 	cfb_16_a[];
extern unsigned short 	cfb_16_b[];
extern unsigned short	zbuffer[];

extern Gfx 	rspinit_dl[];
extern Gfx 	rdpinit_dl[];
extern Gfx 	teapot_setup_dl[];
extern Gfx 	teapot_geom_dl[];
extern Gfx 	setting_setup_dl[];
extern Gfx 	setting_geom_a_dl[];
extern Gfx 	setting_geom_b_dl[];
extern Gfx 	setting_geom_c_dl[];
extern Gfx 	setting_geom_d_dl[];

extern unsigned short tv2_00[];
extern unsigned short tv2_01[];
extern unsigned short tv2_02[];
extern unsigned short tv2_03[];
extern unsigned short tv2_04[];
extern unsigned short tv2_05[];
extern unsigned short tv2_06[];
extern unsigned short tv2_07[];
extern unsigned short tv2_08[];
extern unsigned short tv2_09[];

extern unsigned short tv2_10[];
extern unsigned short tv2_11[];
extern unsigned short tv2_12[];
extern unsigned short tv2_13[];
extern unsigned short tv2_14[];
extern unsigned short tv2_15[];
extern unsigned short tv2_16[];
extern unsigned short tv2_17[];
extern unsigned short tv2_18[];
extern unsigned short tv2_19[];

extern unsigned short tv2_20[];
extern unsigned short tv2_21[];
extern unsigned short tv2_22[];
extern unsigned short tv2_23[];
extern unsigned short tv2_24[];
extern unsigned short tv2_25[];
extern unsigned short tv2_26[];
extern unsigned short tv2_27[];
extern unsigned short tv2_28[];
extern unsigned short tv2_29[];

extern unsigned short tv2_30[];
extern unsigned short tv2_31[];
extern unsigned short tv2_32[];
extern unsigned short tv2_33[];
extern unsigned short tv2_34[];
extern unsigned short tv2_35[];
extern unsigned short tv2_36[];
extern unsigned short tv2_37[];
extern unsigned short tv2_38[];
extern unsigned short tv2_39[];

extern unsigned short tv2_40[];
extern unsigned short tv2_41[];
extern unsigned short tv2_42[];
extern unsigned short tv2_43[];
extern unsigned short tv2_44[];
extern unsigned short tv2_45[];
extern unsigned short tv2_46[];
extern unsigned short tv2_47[];
extern unsigned short tv2_48[];
extern unsigned short tv2_49[];

extern unsigned short tv2_50[];
extern unsigned short tv2_51[];
extern unsigned short tv2_52[];
extern unsigned short tv2_53[];
extern unsigned short tv2_54[];
extern unsigned short tv2_55[];
extern unsigned short tv2_56[];
extern unsigned short tv2_57[];
extern unsigned short tv2_58[];
extern unsigned short tv2_59[];

#endif	/* _LANGUAGE_C */