Use vlineasm4 for the upright-oriented rotatesprite in C-replacements build.

Gives a couple more fps for scenes where much screen estate is covered by
stuff, like when holding the devastator.

git-svn-id: https://svn.eduke32.com/eduke32@2499 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
helixhorned 2012-03-18 23:17:32 +00:00
parent 020c60feec
commit eb52100654

View file

@ -6976,8 +6976,12 @@ static void dorotatesprite(int32_t sx, int32_t sy, int32_t z, int16_t a, int16_t
else if (dastat&8) else if (dastat&8)
permanentupdate = 1; */ permanentupdate = 1; */
#if !defined ENGINE_USING_A_C #if defined ENGINE_USING_A_C
if ((dastat&1)==0 && ((a&1023) == 0) && (ysiz <= 256)) //vlineasm4 has 256 high limit!
#else
//#if !defined ENGINE_USING_A_C // (1)
if ((dastat&1) == 0) if ((dastat&1) == 0)
#endif
{ {
char bad; char bad;
int32_t ny1, ny2, xx, xend; int32_t ny1, ny2, xx, xend;
@ -7083,6 +7087,7 @@ static void dorotatesprite(int32_t sx, int32_t sy, int32_t z, int16_t a, int16_t
faketimerhandler(); faketimerhandler();
} }
} }
#ifndef ENGINE_USING_A_C
else else
{ {
if (dastat&64) if (dastat&64)
@ -7205,9 +7210,10 @@ static void dorotatesprite(int32_t sx, int32_t sy, int32_t z, int16_t a, int16_t
else rmhlineasm4(x2-lastx[y1],(bx>>16)*ysiz+(by>>16)+bufplc,0L,bx<<16,by<<16,ylookup[y1]+x2+frameplace); else rmhlineasm4(x2-lastx[y1],(bx>>16)*ysiz+(by>>16)+bufplc,0L,bx<<16,by<<16,ylookup[y1]+x2+frameplace);
} }
} }
#endif // !defined ENGINE_USING_A_C
} }
else else
#endif // !defined ENGINE_USING_A_C //#endif // !defined ENGINE_USING_A_C // (1)
{ {
if ((dastat&1) == 0) if ((dastat&1) == 0)
{ {
@ -7232,6 +7238,7 @@ static void dorotatesprite(int32_t sx, int32_t sy, int32_t z, int16_t a, int16_t
#endif #endif
if (dastat&32) settransreverse(); else settransnormal(); if (dastat&32) settransreverse(); else settransnormal();
} }
for (x=x1; x<x2; x++) for (x=x1; x<x2; x++)
{ {
bx += xv2; by += yv2; bx += xv2; by += yv2;