// ----------------------------------------------------------------------
// Warning: This file will be processed using a rather simple sed script
// to turn it into a C include file.
//
// sed -e "s/\([^;]*\);/\1\/\//"                    \
//     -e "s/^\.if/#if/" -e "s/^\.else/#else/" -e "s/^\.endif/#endif/"  \
//     -e "s/^\.equ\([  ][^,]*\),/#define\1/" -e "s/pipeASymb/pipeASymb/g"
//                    ^-[ space TAB ]  [ pipe specific prefix]--^
// Sorry about the C++ style comments this generates.
// ----------------------------------------------------------------------
/* RWPUBLIC */

// Enums
#ifndef vuEnumLightNaLight
// Warning these must be reconciled with the C enums.
// Check auto-generated file "baequate.i"

#define vuEnumLightNaLight 0      // rpNALIGHTTYPE
#define vuEnumLightDirectional 1  // rpLIGHTDIRECTIONAL
#define vuEnumLightAmbient 2      // rpLIGHTAMBIENT
#define vuEnumLightPoint 128      // rpLIGHTPOINT
#define vuEnumLightSpot 129       // rpLIGHTSPOT
#define vuEnumLightSpotSoft 130   // rpLIGHTSPOTSOFT

#endif

// Use this define to get a VUCONTINUE style lib. You must also define
// VUCONTINUE in world/pipe/p2/sky2/nodePS2MatInstance.h
// and world/pipe/p2/sky2/nodePS2All.h

// #define VUCONTINUE 1

// Data in high memory

#ifndef vuSDmat0

#define vuSDLightOffset     0x3d0
#define vuSDBlockLow        0x3c3
#define vuSDBlockHigh       0x3f0
#define vuSDmat0            vuSDBlockHigh
#define vuSDmat1            vuSDBlockHigh+1
#define vuSDmat2            vuSDBlockHigh+2
#define vuSDmat3            vuSDBlockHigh+3
#define vuSDnearClip        vuSDBlockHigh+4
#define vuSDfarClip         vuSDBlockHigh+5
#define vuSDxMaxyMax        vuSDBlockHigh+6
#define vuSDcamWcamHzScale  vuSDBlockHigh+7
#define vuSDoffXoffYzShift  vuSDBlockHigh+8
#define vuSDrealOffset      vuSDBlockHigh+9
#define vuSDgifTag          vuSDBlockHigh+10
#define vuSDcolScale        vuSDBlockHigh+11
#define vuSDsurfProps       vuSDBlockHigh+12
#define vuSDpingPongAddr    vuSDBlockHigh+13    
#define vuSDpingPongCount   vuSDBlockHigh+14    
#define vuSDClipvec1        vuSDBlockHigh+13                                     
#define vuSDClipvec2        vuSDBlockHigh+14                                        
#define vuSDVUSwitch        vuSDBlockHigh+15     

#endif

/*----------------- BUFFERS STRIDE -------------------------------------*/
#define _rwskyStrideOfInputCluster  (4)
#define _rwskyStrideOfOutputCluster (3)
/*----------------------------------------------------------------------*/

/*----------------- DOUBLE BUFFER --------------------------------------*/
#define _rwskyStaticDataStart       vuSDLightOffset
/*----------------------------------------------------------------------*/

/*----------------- BUFFERS SIZE ---------------------------------------*/
#define _rwskyTSVertexCount ((_rwskyStaticDataStart-2)/(2*_rwskyStrideOfInputCluster+2*_rwskyStrideOfOutputCluster))
#define _rwskyVIFOffset     (_rwskyStrideOfInputCluster*_rwskyTSVertexCount)
#define _rwskyTLTriCount    (_rwskyTSVertexCount/3)
/*----------------------------------------------------------------------*/


/* RWPUBLICEND */
