You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
101 lines
2.5 KiB
101 lines
2.5 KiB
//-----------------------------------------------------------------------------
|
|
//
|
|
// This file contains the general span parsing code.
|
|
//
|
|
// Copyright (C) Microsoft Corporation, 1997.
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
|
|
#include "pch.cpp"
|
|
#pragma hdrstop
|
|
#include "mbldfncs.h"
|
|
#include "mbufread.h"
|
|
#include "mbufwrt.h"
|
|
#include "mcrbd_mh.h"
|
|
#include "mcrgn_mh.h"
|
|
#include "mloop.h"
|
|
#include "mspnpars.h"
|
|
#include "mtest_mh.h"
|
|
#include "mtx1a_mh.h"
|
|
#include "mtx2a_mh.h"
|
|
#include "mtxbd_mh.h"
|
|
#include "mtxrd_mh.h"
|
|
#include "mtstf_mh.h"
|
|
#include "matest_mh.h"
|
|
include(`bead.mh')
|
|
|
|
//-----------------------------------------------------------------------------
|
|
//
|
|
// CMMX_*Tbl
|
|
//
|
|
// The individual bead tables
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
#define CMMX_NULL NULL
|
|
define(`d_MakeTable', `
|
|
static d_UpCase(`$1')`'BEADS CMMX_`'$1`'Beads =
|
|
{
|
|
d_Null(d_`'$1`'Beads(`` CMMX_XX,
|
|
'', `XX'))
|
|
};')dnl
|
|
dnl
|
|
d_MakeTable(RenderSpans)
|
|
d_MakeTable(Begin)
|
|
d_MakeTable(Test)
|
|
d_MakeTable(TestFail)
|
|
d_MakeTable(Tex1Addr)
|
|
d_MakeTable(Tex1AddrMip)
|
|
d_MakeTable(TexRead)
|
|
d_MakeTable(Tex2Addr)
|
|
d_MakeTable(TexBlend)
|
|
d_MakeTable(TexBlendGetColor)
|
|
d_MakeTable(TexBlendGetAlpha)
|
|
d_MakeTable(TexBlendOpColor)
|
|
d_MakeTable(TexBlendOpAlpha)
|
|
d_MakeTable(ColorGen)
|
|
d_MakeTable(AlphaTest)
|
|
d_MakeTable(ColorBlend)
|
|
d_MakeTable(SrcBlend)
|
|
d_MakeTable(DestBlend)
|
|
d_MakeTable(BufRead)
|
|
d_MakeTable(BufWrite)
|
|
|
|
// These beads are unused.
|
|
#define CMMX_PixelEndAny NULL
|
|
#define CMMX_SpanEndAny NULL
|
|
d_MakeTable(PixelEnd)
|
|
d_MakeTable(SpanEnd)
|
|
|
|
//-----------------------------------------------------------------------------
|
|
//
|
|
// CMMX_BeadTbl
|
|
//
|
|
// The root of all the bead table pointers.
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
|
|
BEADTABLE g_CMMX_BeadTbl =
|
|
{
|
|
&CMMX_RenderSpansBeads,
|
|
&CMMX_BeginBeads,
|
|
&CMMX_TestBeads,
|
|
&CMMX_TestFailBeads,
|
|
&CMMX_Tex1AddrBeads,
|
|
&CMMX_Tex1AddrMipBeads,
|
|
&CMMX_TexReadBeads,
|
|
&CMMX_Tex2AddrBeads,
|
|
&CMMX_TexBlendBeads,
|
|
&CMMX_TexBlendGetColorBeads,
|
|
&CMMX_TexBlendGetAlphaBeads,
|
|
&CMMX_TexBlendOpColorBeads,
|
|
&CMMX_TexBlendOpAlphaBeads,
|
|
&CMMX_ColorGenBeads,
|
|
&CMMX_AlphaTestBeads,
|
|
&CMMX_ColorBlendBeads,
|
|
&CMMX_SrcBlendBeads,
|
|
&CMMX_DestBlendBeads,
|
|
&CMMX_BufReadBeads,
|
|
&CMMX_BufWriteBeads,
|
|
&CMMX_PixelEndBeads,
|
|
&CMMX_SpanEndBeads,
|
|
};
|