h3,h5, gdraw.c: minor typo/whitespace fixes and some syncing.
This commit is contained in:
@@ -290,28 +290,27 @@ GR_ENTRY(grDrawTriangle, void, (const void *a, const void *b, const void *c))
|
||||
{
|
||||
GR_BEGIN_NOFIFOCHECK("grDrawTriangle",92);
|
||||
GDBG_INFO_MORE(gc->myLevel,"(0x%x,0x%x,0x%x)\n",a,b,c);
|
||||
|
||||
TRISETUP(a, b, c );
|
||||
|
||||
#if GLIDE_DEBUG
|
||||
#if GLIDE_DEBUG
|
||||
/* HackAlert: Nuke the fifo ptr checking stuff here if we're just
|
||||
* debugging teh asm tri code.
|
||||
*/
|
||||
* debugging the asm tri code.
|
||||
*/
|
||||
gc->checkPtr = (FxU32)gc->cmdTransportInfo.fifoPtr;
|
||||
gc->checkCounter = 0;
|
||||
#endif /* GLIDE_DEBUG */
|
||||
#endif /* GLIDE_DEBUG */
|
||||
GR_END();
|
||||
}
|
||||
|
||||
#elif defined(__MSC__)
|
||||
{
|
||||
_asm {
|
||||
mov eax, DWORD PTR fs:[WNT_TEB_PTR] ;
|
||||
__asm {
|
||||
mov eax, DWORD PTR fs:[WNT_TEB_PTR];
|
||||
add eax, DWORD PTR _GlideRoot.tlsOffset;
|
||||
mov edx, [eax];
|
||||
test edx, edx;
|
||||
je lostContext;
|
||||
mov eax, [edx + kLostContextOffset];
|
||||
test eax, eax
|
||||
test eax, eax;
|
||||
je lostContext;
|
||||
mov eax, [eax];
|
||||
test eax, 1;
|
||||
@@ -321,12 +320,14 @@ GR_ENTRY(grDrawTriangle, void, (const void *a, const void *b, const void *c))
|
||||
}
|
||||
lostContext: ; /* <-- my, that's odd, but MSVC was insistent */
|
||||
}
|
||||
|
||||
#elif defined( __linux__ ) || defined(__FreeBSD__) || (GLIDE_PLATFORM & GLIDE_OS_DOS32)
|
||||
{
|
||||
GR_BEGIN_NOFIFOCHECK("grDrawTriangle",92);
|
||||
TRISETUP(a, b, c);
|
||||
GR_END();
|
||||
}
|
||||
|
||||
#else
|
||||
#error "Write triangle proc dispatch for this compiler"
|
||||
#endif /* Triangle proc dispatch routine */
|
||||
@@ -443,14 +444,14 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
{
|
||||
FxU32 x, y;
|
||||
FxU32 dataElem;
|
||||
|
||||
|
||||
DA_CONT(kSetupStrip | kSetupCullDisable, 0x00,
|
||||
0x02, sizeof(FxU32) << 1, SSTCP_PKT3_BDDDDD);
|
||||
|
||||
/* Convert to 32-bit representation */
|
||||
gc->pool.temp1.f = FARRAY(vPtr, gc->state.vData.vertexInfo.offset) + bias;
|
||||
gc->pool.temp2.f = FARRAY(vPtr, gc->state.vData.vertexInfo.offset + 4) + bias;
|
||||
|
||||
|
||||
/* draw a little triangle, with the lower left corner at pixel center. */
|
||||
|
||||
/* The approach here is to split the triangle into two packets, one
|
||||
@@ -468,8 +469,8 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
(0x01UL << (22UL - kNumMantissaBits)));
|
||||
y = ((gc->pool.temp2.u & (0xFFFFFFFFUL << (22UL - kNumMantissaBits))) +
|
||||
(0x01UL << (22UL - kNumMantissaBits)));
|
||||
|
||||
/* Lower right corner */
|
||||
|
||||
/* Lower right corner */
|
||||
DA_SET(x);
|
||||
DA_SET(y);
|
||||
|
||||
@@ -481,11 +482,11 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
|
||||
/* Upper Left corner */
|
||||
x -= (0x01UL << (21UL - kNumMantissaBits));
|
||||
|
||||
|
||||
/* Packet w/ actual point coordinate and parameter data */
|
||||
DA_CONT(kSetupStrip | kSetupCullDisable, gc->cmdTransportInfo.paramMask,
|
||||
1, gc->state.vData.vSize, SSTCP_PKT3_DDDDDD);
|
||||
|
||||
|
||||
i = gc->tsuDataList[dataElem];
|
||||
DA_SET(x);
|
||||
DA_SET(y);
|
||||
@@ -499,16 +500,15 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
DA_END;
|
||||
GR_CHECK_SIZE();
|
||||
/* end points routine */
|
||||
|
||||
|
||||
count -= POINTS_BUFFER;
|
||||
}
|
||||
} else {
|
||||
/*
|
||||
* first cut of clip space coordinate code.
|
||||
*/
|
||||
|
||||
float oow;
|
||||
|
||||
|
||||
while (count > 0) {
|
||||
float *vPtr;
|
||||
FxI32 k;
|
||||
@@ -517,15 +517,15 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
|
||||
/* begin points routine */
|
||||
DA_BEGIN;
|
||||
|
||||
|
||||
for (k = 0; k < vcount; k++) {
|
||||
|
||||
|
||||
vPtr = pointers;
|
||||
if (mode)
|
||||
vPtr = *(float **)vPtr;
|
||||
oow = 1.0f / FARRAY(vPtr, gc->state.vData.wInfo.offset);
|
||||
oow = 1.0f / FARRAY(vPtr, gc->state.vData.wInfo.offset);
|
||||
pointers = (float *)pointers + stride;
|
||||
|
||||
|
||||
{
|
||||
FxU32 x, y;
|
||||
|
||||
@@ -549,7 +549,7 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
(0x01UL << (22UL - kNumMantissaBits)));
|
||||
y = ((gc->pool.temp2.u & (0xFFFFFFFFUL << (22UL - kNumMantissaBits))) +
|
||||
(0x01UL << (22UL - kNumMantissaBits)));
|
||||
|
||||
|
||||
/* Lower right cornder */
|
||||
DA_SET(x);
|
||||
DA_SET(y);
|
||||
@@ -561,11 +561,11 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
|
||||
/* Upper Left corner */
|
||||
x -= (0x01UL << (21UL - kNumMantissaBits));
|
||||
|
||||
|
||||
/* Packet w/ actual point coordinate and parameter data */
|
||||
DA_CONT(kSetupStrip | kSetupCullDisable, gc->cmdTransportInfo.paramMask,
|
||||
1, gc->state.vData.vSize, SSTCP_PKT3_DDDDDD);
|
||||
|
||||
|
||||
DA_SET(x);
|
||||
DA_SET(y);
|
||||
DA_VP_SETFS(vPtr, oow);
|
||||
@@ -574,7 +574,7 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
DA_END;
|
||||
GR_CHECK_SIZE();
|
||||
/* end points routine */
|
||||
|
||||
|
||||
count -= POINTS_BUFFER;
|
||||
}
|
||||
}
|
||||
@@ -793,7 +793,7 @@ _grDrawLineStrip(FxI32 mode, FxI32 ltype, FxI32 count, void *pointers)
|
||||
if (mode) {
|
||||
a = *(float **)a;
|
||||
}
|
||||
oowb = 1.0f / FARRAY(a, gc->state.vData.wInfo.offset);
|
||||
oowb = 1.0f / FARRAY(a, gc->state.vData.wInfo.offset);
|
||||
}
|
||||
for (k = 0; k < vcount; k++) {
|
||||
a = (float *)pointers;
|
||||
@@ -804,7 +804,7 @@ _grDrawLineStrip(FxI32 mode, FxI32 ltype, FxI32 count, void *pointers)
|
||||
}
|
||||
pointers = (float *)pointers + stride;
|
||||
if (ltype == GR_LINES) {
|
||||
owa = oowa = 1.0f / FARRAY(a, gc->state.vData.wInfo.offset);
|
||||
owa = oowa = 1.0f / FARRAY(a, gc->state.vData.wInfo.offset);
|
||||
pointers = (float *)pointers + stride;
|
||||
}
|
||||
else
|
||||
@@ -814,14 +814,14 @@ _grDrawLineStrip(FxI32 mode, FxI32 ltype, FxI32 count, void *pointers)
|
||||
fay = tmp1 = FARRAY(a, gc->state.vData.vertexInfo.offset+4)
|
||||
*oowa*gc->state.Viewport.hheight+gc->state.Viewport.oy;
|
||||
fby = tmp2 = FARRAY(b, gc->state.vData.vertexInfo.offset+4)
|
||||
*oowb*gc->state.Viewport.hheight+gc->state.Viewport.oy;
|
||||
*oowb*gc->state.Viewport.hheight+gc->state.Viewport.oy;
|
||||
|
||||
/*
|
||||
** compute absolute deltas and draw from low Y to high Y
|
||||
*/
|
||||
ADY.f = tmp2 - tmp1;
|
||||
if (ADY.i < 0) {
|
||||
float *tv;
|
||||
float *tv;
|
||||
owa = oowb; owb = oowa;
|
||||
fay = tmp2;
|
||||
fby = tmp1;
|
||||
@@ -834,14 +834,14 @@ _grDrawLineStrip(FxI32 mode, FxI32 ltype, FxI32 count, void *pointers)
|
||||
*owb*gc->state.Viewport.hwidth+gc->state.Viewport.ox;
|
||||
|
||||
DX.f = fbx - fax;
|
||||
DX.i &= 0x7fffffff; /* abs(adx) */
|
||||
DX.i &= 0x7fffffff; /* abs(adx) */
|
||||
|
||||
/* check for zero-length lines */
|
||||
if ((DX.i >= ADY.i) && (DX.i == 0)) goto all_done_vp;
|
||||
|
||||
|
||||
DA_CONT(kSetupCullDisable | kSetupStrip, gc->cmdTransportInfo.paramMask,
|
||||
0x04UL, vertexParamOffset, SSTCP_PKT3_BDDDDD);
|
||||
{
|
||||
{
|
||||
/* x major */
|
||||
if (DX.i >= ADY.i) {
|
||||
DA_SETF(fbx);
|
||||
@@ -1001,8 +1001,6 @@ _grDrawTriangles_Default(FxI32 mode, FxI32 count, void *pointers)
|
||||
count -= 15;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#undef FN_NAME
|
||||
} /* _grDrawTriangles */
|
||||
|
||||
|
||||
@@ -275,17 +275,17 @@ GR_ENTRY(grDrawPoint, void, (const void *p))
|
||||
GR_ENTRY(grDrawLine, void, (const void *a, const void *b))
|
||||
{
|
||||
#define FN_NAME "grDrawLine"
|
||||
void *verts[2]; /**** FIXME: this needs to be const! ****/
|
||||
void *vertices[2]; /**** FIXME: this needs to be const! ****/
|
||||
|
||||
GR_BEGIN_NOFIFOCHECK(FN_NAME, 91);
|
||||
GDBG_INFO_MORE(gc->myLevel, "(a = 0x%x, b = 0x%x)\n", a, b);
|
||||
|
||||
verts[0] = (void *)a; verts[1] = (void *)b; /** FIXME **/
|
||||
vertices[0] = (void *)a; vertices[1] = (void *)b; /* FIXME! */
|
||||
|
||||
if (gc->state.grEnableArgs.primitive_smooth_mode & GR_AA_ORDERED_LINES_MASK)
|
||||
_grAADrawLineStrip(GR_VTX_PTR_ARRAY, GR_LINES, 2, verts);
|
||||
_grAADrawLineStrip(GR_VTX_PTR_ARRAY, GR_LINES, 2, vertices);
|
||||
else
|
||||
_grDrawLineStrip(GR_VTX_PTR_ARRAY, GR_LINES, 2, verts);
|
||||
_grDrawLineStrip(GR_VTX_PTR_ARRAY, GR_LINES, 2, vertices);
|
||||
#undef FN_NAME
|
||||
} /* grDrawLine */
|
||||
|
||||
@@ -315,19 +315,18 @@ GR_ENTRY(grDrawTriangle, void, (const void *a, const void *b, const void *c))
|
||||
GR_BEGIN_NOFIFOCHECK_NORET("grDrawTriangle",92);
|
||||
#endif /* GLIDE_DEBUG */
|
||||
GDBG_INFO_MORE(gc->myLevel,"(0x%x,0x%x,0x%x)\n",a,b,c);
|
||||
|
||||
TRISETUP(a, b, c );
|
||||
|
||||
#if GLIDE_DEBUG
|
||||
#if GLIDE_DEBUG
|
||||
/* HackAlert: Nuke the fifo ptr checking stuff here if we're just
|
||||
* debugging the asm tri code.
|
||||
*/
|
||||
*/
|
||||
gc->checkPtr = (FxU32)gc->cmdTransportInfo.fifoPtr;
|
||||
gc->checkCounter = 0;
|
||||
#else /* GLIDE_DEBUG */
|
||||
GR_END();
|
||||
#endif /* GLIDE_DEBUG */
|
||||
}
|
||||
|
||||
#elif defined(__MSC__)
|
||||
{
|
||||
#if USE_STANDARD_TLS_FUNC
|
||||
@@ -365,13 +364,14 @@ GR_ENTRY(grDrawTriangle, void, (const void *a, const void *b, const void *c))
|
||||
#endif
|
||||
lostContext: ; /* <-- my, that's odd, but MSVC was insistent */
|
||||
}
|
||||
|
||||
#elif (GLIDE_PLATFORM & GLIDE_OS_UNIX) || (GLIDE_PLATFORM & GLIDE_OS_DOS32)
|
||||
{
|
||||
GR_BEGIN_NOFIFOCHECK("grDrawTriangle",92);
|
||||
TRISETUP(a, b, c);
|
||||
GR_END();
|
||||
}
|
||||
|
||||
|
||||
#else /* (GLIDE_PLATFORM & GLIDE_OS_UNIX) || (GLIDE_PLATFORM & GLIDE_OS_DOS32) */
|
||||
#error "Write triangle proc dispatch for this compiler"
|
||||
#endif /* Triangle proc dispatch routine */
|
||||
@@ -379,6 +379,7 @@ GR_ENTRY(grDrawTriangle, void, (const void *a, const void *b, const void *c))
|
||||
} /* grDrawTriangle */
|
||||
#endif
|
||||
|
||||
|
||||
#define DA_BEGIN \
|
||||
{ \
|
||||
FxU32* packetPtr = gc->cmdTransportInfo.fifoPtr; \
|
||||
@@ -444,7 +445,6 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
* to compute a logical 1 value to fill an entire pixel.
|
||||
*/
|
||||
#define kNumMantissaBits 12UL
|
||||
|
||||
|
||||
GR_BEGIN_NOFIFOCHECK(FN_NAME, 90);
|
||||
|
||||
@@ -491,14 +491,14 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
FxU32 x, y;
|
||||
FxU32 dataElem;
|
||||
const float bias = (const float)(3UL << kNumMantissaBits);
|
||||
|
||||
|
||||
DA_CONT(kSetupStrip | kSetupCullDisable, 0x00,
|
||||
0x02, sizeof(FxU32) << 1, SSTCP_PKT3_BDDDDD);
|
||||
|
||||
/* Convert to 32-bit representation */
|
||||
gc->pool.temp1.f = FARRAY(vPtr, gc->state.vData.vertexInfo.offset) + bias;
|
||||
gc->pool.temp2.f = FARRAY(vPtr, gc->state.vData.vertexInfo.offset + 4) + bias;
|
||||
|
||||
|
||||
/* draw a little triangle, with the lower left corner at pixel center. */
|
||||
|
||||
/* The approach here is to split the triangle into two packets, one
|
||||
@@ -510,7 +510,7 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
* triangle from the first packet sent.
|
||||
*/
|
||||
|
||||
/* Mask off the real fractional bits from the mantissa */
|
||||
/* Mask off the real fractional bits from the mantissa */
|
||||
x = ((gc->pool.temp1.u & (0xFFFFFFFFUL << (22UL - kNumMantissaBits))) +
|
||||
(0x01UL << (22UL - kNumMantissaBits)));
|
||||
y = ((gc->pool.temp2.u & (0xFFFFFFFFUL << (22UL - kNumMantissaBits))) +
|
||||
@@ -522,17 +522,16 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
|
||||
/* Upper right corner */
|
||||
y -= (0x01UL << (21UL - kNumMantissaBits));
|
||||
|
||||
DA_SET(x);
|
||||
dataElem = 0;
|
||||
DA_SET(y);
|
||||
|
||||
/* Upper Left corner */
|
||||
x -= (0x01UL << (21UL - kNumMantissaBits));
|
||||
|
||||
|
||||
/* Packet w/ actual point coordinate and parameter data */
|
||||
DA_CONT(kSetupStrip | kSetupCullDisable, gc->cmdTransportInfo.paramMask,
|
||||
1, gc->state.vData.vSize, SSTCP_PKT3_DDDDDD);
|
||||
1, gc->state.vData.vSize, SSTCP_PKT3_DDDDDD);
|
||||
|
||||
i = gc->tsuDataList[dataElem];
|
||||
DA_SET(x);
|
||||
@@ -547,7 +546,7 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
DA_END;
|
||||
GR_CHECK_SIZE();
|
||||
/* end points routine */
|
||||
|
||||
|
||||
count -= POINTS_BUFFER;
|
||||
}
|
||||
#else
|
||||
@@ -560,24 +559,24 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
|
||||
/* begin points routine */
|
||||
DA_BEGIN;
|
||||
|
||||
|
||||
for (k = 0; k < vcount; k++) {
|
||||
vPtr = pointers;
|
||||
if (mode) vPtr = *(float **)vPtr;
|
||||
|
||||
|
||||
pointers = (float *)pointers + stride;
|
||||
|
||||
|
||||
GDBG_INFO_MORE(gc->myLevel, "(%f %f)\n",
|
||||
FARRAY(vPtr,gc->state.vData.vertexInfo.offset),
|
||||
FARRAY(vPtr,gc->state.vData.vertexInfo.offset + 4));
|
||||
|
||||
|
||||
{
|
||||
volatile float x, y;
|
||||
FxU32 dataElem;
|
||||
|
||||
|
||||
DA_CONT(kSetupStrip | kSetupCullDisable, gc->cmdTransportInfo.paramMask,
|
||||
4, -1/*NOT USED*//*gc->state.vData.vSize * 3*/, SSTCP_PKT3_BDDDDD);
|
||||
|
||||
|
||||
x = FARRAY(vPtr, gc->state.vData.vertexInfo.offset) + 0.5f;
|
||||
y = FARRAY(vPtr, gc->state.vData.vertexInfo.offset + 4) + 0.5f;
|
||||
|
||||
@@ -590,8 +589,8 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
|
||||
/* Correct the bias to get rid of the fractional bits */
|
||||
x = /*(volatile float)*/gc->pool.temp1.f - lbias;
|
||||
y = /*(volatile float)*/gc->pool.temp2.f - lbias;
|
||||
|
||||
y = /*(volatile float)*/gc->pool.temp2.f - lbias;
|
||||
|
||||
/* Lower right corner */
|
||||
DA_SETF(x);
|
||||
DA_SETF(y);
|
||||
@@ -608,8 +607,8 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
i = gc->tsuDataList[dataElem];
|
||||
}
|
||||
|
||||
/* Upper right corner */
|
||||
y -= 1.0f;
|
||||
/* Upper right corner */
|
||||
y -= 1.0f;
|
||||
DA_SETF(x);
|
||||
DA_SETF(y);
|
||||
dataElem = 0;
|
||||
@@ -633,7 +632,7 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
i = gc->tsuDataList[dataElem];
|
||||
}
|
||||
|
||||
/* Upper leftcorner */
|
||||
/* Upper leftcorner */
|
||||
y += 1.0f;
|
||||
DA_SETF(x);
|
||||
DA_SETF(y);
|
||||
@@ -649,7 +648,7 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
DA_END;
|
||||
GR_CHECK_SIZE();
|
||||
/* end points routine */
|
||||
|
||||
|
||||
count -= POINTS_BUFFER;
|
||||
}
|
||||
#endif
|
||||
@@ -657,9 +656,8 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
/*
|
||||
* first cut of clip space coordinate code.
|
||||
*/
|
||||
|
||||
float oow;
|
||||
|
||||
|
||||
while (count > 0) {
|
||||
float lbias = (float)( 3 << 22);
|
||||
float *vPtr;
|
||||
@@ -669,16 +667,16 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
|
||||
/* begin points routine */
|
||||
DA_BEGIN;
|
||||
|
||||
|
||||
for (k = 0; k < vcount; k++) {
|
||||
|
||||
|
||||
vPtr = pointers;
|
||||
if (mode)
|
||||
vPtr = *(float **)vPtr;
|
||||
oow = 1.0f / FARRAY(vPtr, gc->state.vData.wInfo.offset);
|
||||
oow = 1.0f / FARRAY(vPtr, gc->state.vData.wInfo.offset);
|
||||
pointers = (float *)pointers + stride;
|
||||
|
||||
{
|
||||
|
||||
{
|
||||
float fx, fy;
|
||||
|
||||
DA_CONT(kSetupStrip | kSetupCullDisable, 0x00,
|
||||
@@ -689,7 +687,7 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
gc->pool.temp1.f = (FARRAY(vPtr, gc->state.vData.vertexInfo.offset) *
|
||||
oow *
|
||||
gc->state.Viewport.hwidth +
|
||||
gc->state.Viewport.ox +
|
||||
gc->state.Viewport.ox +
|
||||
0.5f);
|
||||
gc->pool.temp2.f = (FARRAY(vPtr, gc->state.vData.vertexInfo.offset + 4) *
|
||||
oow *
|
||||
@@ -705,17 +703,17 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
|
||||
fx = gc->pool.temp1.f - lbias;
|
||||
fy = gc->pool.temp2.f - lbias;
|
||||
|
||||
|
||||
/* Lower right corner */
|
||||
DA_SETF(fx);
|
||||
DA_SETF(fy);
|
||||
|
||||
/* Upper right corner. */
|
||||
/* Upper right corner. */
|
||||
fy -= 1.0f;
|
||||
DA_SETF(fx);
|
||||
DA_SETF(fy);
|
||||
|
||||
/* Lower left corner */
|
||||
/* Lower left corner */
|
||||
fy += 1.0f;
|
||||
fx -= 1.0f;
|
||||
DA_SETF(fx);
|
||||
@@ -725,8 +723,7 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
DA_CONT(kSetupStrip | kSetupCullDisable, gc->cmdTransportInfo.paramMask,
|
||||
1, gc->state.vData.vSize, SSTCP_PKT3_DDDDDD);
|
||||
|
||||
|
||||
/*Upper left corner */
|
||||
/*Upper left corner */
|
||||
fy -= 1.0f;
|
||||
DA_SETF(fx);
|
||||
DA_SETF(fy);
|
||||
@@ -737,7 +734,7 @@ _grDrawPoints(FxI32 mode, FxI32 count, void *pointers)
|
||||
DA_END;
|
||||
GR_CHECK_SIZE();
|
||||
/* end points routine */
|
||||
|
||||
|
||||
count -= POINTS_BUFFER;
|
||||
}
|
||||
}
|
||||
@@ -957,7 +954,7 @@ _grDrawLineStrip(FxI32 mode, FxI32 ltype, FxI32 count, void *pointers)
|
||||
if (mode) {
|
||||
a = *(float **)a;
|
||||
}
|
||||
oowb = 1.0f / FARRAY(a, gc->state.vData.wInfo.offset);
|
||||
oowb = 1.0f / FARRAY(a, gc->state.vData.wInfo.offset);
|
||||
}
|
||||
for (k = 0; k < vcount; k++) {
|
||||
a = (float *)pointers;
|
||||
@@ -968,7 +965,7 @@ _grDrawLineStrip(FxI32 mode, FxI32 ltype, FxI32 count, void *pointers)
|
||||
}
|
||||
pointers = (float *)pointers + stride;
|
||||
if (ltype == GR_LINES) {
|
||||
owa = oowa = 1.0f / FARRAY(a, gc->state.vData.wInfo.offset);
|
||||
owa = oowa = 1.0f / FARRAY(a, gc->state.vData.wInfo.offset);
|
||||
pointers = (float *)pointers + stride;
|
||||
}
|
||||
else
|
||||
@@ -978,14 +975,14 @@ _grDrawLineStrip(FxI32 mode, FxI32 ltype, FxI32 count, void *pointers)
|
||||
fay = tmp1 = FARRAY(a, gc->state.vData.vertexInfo.offset+4)
|
||||
*oowa*gc->state.Viewport.hheight+gc->state.Viewport.oy;
|
||||
fby = tmp2 = FARRAY(b, gc->state.vData.vertexInfo.offset+4)
|
||||
*oowb*gc->state.Viewport.hheight+gc->state.Viewport.oy;
|
||||
*oowb*gc->state.Viewport.hheight+gc->state.Viewport.oy;
|
||||
|
||||
/*
|
||||
** compute absolute deltas and draw from low Y to high Y
|
||||
*/
|
||||
ADY.f = tmp2 - tmp1;
|
||||
if (ADY.i < 0) {
|
||||
float *tv;
|
||||
float *tv;
|
||||
owa = oowb; owb = oowa;
|
||||
fay = tmp2;
|
||||
fby = tmp1;
|
||||
@@ -998,14 +995,14 @@ _grDrawLineStrip(FxI32 mode, FxI32 ltype, FxI32 count, void *pointers)
|
||||
*owb*gc->state.Viewport.hwidth+gc->state.Viewport.ox;
|
||||
|
||||
DX.f = fbx - fax;
|
||||
DX.i &= 0x7fffffff; /* abs(adx) */
|
||||
DX.i &= 0x7fffffff; /* abs(adx) */
|
||||
|
||||
/* check for zero-length lines */
|
||||
if ((DX.i >= ADY.i) && (DX.i == 0)) goto all_done_vp;
|
||||
|
||||
|
||||
DA_CONT(kSetupCullDisable | kSetupStrip, gc->cmdTransportInfo.paramMask,
|
||||
0x04UL, vertexParamOffset, SSTCP_PKT3_BDDDDD);
|
||||
{
|
||||
{
|
||||
/* x major */
|
||||
if (DX.i >= ADY.i) {
|
||||
DA_SETF(fbx);
|
||||
@@ -1164,7 +1161,7 @@ _grDrawTriangles_Default(FxI32 mode, FxI32 count, void *pointers)
|
||||
count -= 15;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
#undef FN_NAME
|
||||
} /* _grDrawTriangles */
|
||||
|
||||
Reference in New Issue
Block a user