From 3a598d672e3e28b77239e827d7b5b15651dec382 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Fri, 25 Mar 2016 14:55:01 +0100 Subject: [PATCH] - removed the angle_t type from the VM, now that nothing in the interface requires it anymore. --- src/actor.h | 5 --- src/dobjtype.cpp | 65 --------------------------------- src/dobjtype.h | 13 ------- src/r_plane.cpp | 2 +- src/sc_man_scanner.re | 1 - src/sc_man_tokens.h | 1 - src/thingdef/thingdef_parse.cpp | 4 -- src/zscript/vmexec.h | 20 ---------- src/zscript/vmops.h | 4 -- 9 files changed, 1 insertion(+), 114 deletions(-) diff --git a/src/actor.h b/src/actor.h index b6142f698..843e928dc 100644 --- a/src/actor.h +++ b/src/actor.h @@ -847,11 +847,6 @@ public: return P_AproxDistance(_f_X() - otherpos.x + xadd, _f_Y() - otherpos.y + yadd); } - fixed_t AproxDistance3D(AActor *other, bool absolute = false) - { - return P_AproxDistance(AproxDistance(other), _f_Z() - other->_f_Z()); - } - // more precise, but slower version, being used in a few places double Distance2D(AActor *other, bool absolute = false) { diff --git a/src/dobjtype.cpp b/src/dobjtype.cpp index 609ec1721..1e9a1c655 100644 --- a/src/dobjtype.cpp +++ b/src/dobjtype.cpp @@ -80,7 +80,6 @@ PSound *TypeSound; PColor *TypeColor; PStatePointer *TypeState; PFixed *TypeFixed; -PAngle *TypeAngle; // PRIVATE DATA DEFINITIONS ------------------------------------------------ @@ -507,7 +506,6 @@ void PType::StaticInit() RUNTIME_CLASS(PClass)->TypeTableType = RUNTIME_CLASS(PClass); RUNTIME_CLASS(PStatePointer)->TypeTableType = RUNTIME_CLASS(PStatePointer); RUNTIME_CLASS(PFixed)->TypeTableType = RUNTIME_CLASS(PFixed); - RUNTIME_CLASS(PAngle)->TypeTableType = RUNTIME_CLASS(PAngle); // Create types and add them type the type table. TypeTable.AddType(TypeError = new PErrorType); @@ -527,7 +525,6 @@ void PType::StaticInit() TypeTable.AddType(TypeColor = new PColor); TypeTable.AddType(TypeState = new PStatePointer); TypeTable.AddType(TypeFixed = new PFixed); - TypeTable.AddType(TypeAngle = new PAngle); GlobalSymbols.AddSymbol(new PSymbolType(NAME_sByte, TypeSInt8)); GlobalSymbols.AddSymbol(new PSymbolType(NAME_Byte, TypeUInt8)); @@ -546,7 +543,6 @@ void PType::StaticInit() GlobalSymbols.AddSymbol(new PSymbolType(NAME_Color, TypeColor)); GlobalSymbols.AddSymbol(new PSymbolType(NAME_State, TypeState)); GlobalSymbols.AddSymbol(new PSymbolType(NAME_Fixed, TypeFixed)); - GlobalSymbols.AddSymbol(new PSymbolType(NAME_Angle, TypeAngle)); } @@ -1146,67 +1142,6 @@ int PFixed::GetLoadOp() const return OP_LX; } -/* PAngle *****************************************************************/ - -IMPLEMENT_CLASS(PAngle) - -//========================================================================== -// -// PAngle Default Constructor -// -//========================================================================== - -PAngle::PAngle() -: PFloat(sizeof(angle_t)) -{ -} - -//========================================================================== -// -// PAngle :: SetValue -// -//========================================================================== - -void PAngle::SetValue(void *addr, int val) -{ - assert(((intptr_t)addr & (Align - 1)) == 0 && "unaligned address"); - *(angle_t *)addr = Scale(val, ANGLE_90, 90); -} - -//========================================================================== -// -// PAngle :: GetValueInt -// -//========================================================================== - -int PAngle::GetValueInt(void *addr) const -{ - assert(((intptr_t)addr & (Align - 1)) == 0 && "unaligned address"); - return *(angle_t *)addr / ANGLE_1; -} - -//========================================================================== -// -// PAngle :: GetStoreOp -// -//========================================================================== - -int PAngle::GetStoreOp() const -{ - return OP_SANG; -} - -//========================================================================== -// -// PAngle :: GetLoadOp -// -//========================================================================== - -int PAngle::GetLoadOp() const -{ - return OP_LANG; -} - /* PStatePointer **********************************************************/ IMPLEMENT_CLASS(PStatePointer) diff --git a/src/dobjtype.h b/src/dobjtype.h index b482efe45..6c25d4a2c 100644 --- a/src/dobjtype.h +++ b/src/dobjtype.h @@ -415,18 +415,6 @@ public: virtual int GetLoadOp() const; }; -class PAngle : public PFloat -{ - DECLARE_CLASS(PAngle, PFloat); -public: - PAngle(); - - virtual void SetValue(void *addr, int val); - virtual int GetValueInt(void *addr) const; - virtual int GetStoreOp() const; - virtual int GetLoadOp() const; -}; - // Pointers ----------------------------------------------------------------- class PStatePointer : public PBasicType @@ -784,7 +772,6 @@ extern PSound *TypeSound; extern PColor *TypeColor; extern PStatePointer *TypeState; extern PFixed *TypeFixed; -extern PAngle *TypeAngle; // A constant value --------------------------------------------------------- diff --git a/src/r_plane.cpp b/src/r_plane.cpp index 7e7e4cd4f..c62647355 100644 --- a/src/r_plane.cpp +++ b/src/r_plane.cpp @@ -1243,7 +1243,7 @@ void R_DrawSkyBoxes () viewx = viewpos.x; viewy = viewpos.y; viewz = viewpos.z; - viewangle = savedangle + FLOAT2ANGLE(sky->PrevAngles.Yaw.Degrees) + FixedMul(r_TicFrac, sky->_f_angle() - FLOAT2ANGLE(sky->PrevAngles.Yaw.Degrees)); + viewangle = savedangle + (sky->PrevAngles.Yaw + (sky->Angles.Yaw * r_TicFracF) - sky->PrevAngles.Yaw).BAMs(); R_CopyStackedViewParameters(); } diff --git a/src/sc_man_scanner.re b/src/sc_man_scanner.re index 7e82f19c1..3b05c5b72 100644 --- a/src/sc_man_scanner.re +++ b/src/sc_man_scanner.re @@ -193,7 +193,6 @@ std2: /* other DECORATE top level keywords */ '#include' { RET(TK_Include); } 'fixed_t' { RET(TK_Fixed_t); } - 'angle_t' { RET(TK_Angle_t); } L (L|D)* { RET(TK_Identifier); } diff --git a/src/sc_man_tokens.h b/src/sc_man_tokens.h index 7fda91330..ac69c153e 100644 --- a/src/sc_man_tokens.h +++ b/src/sc_man_tokens.h @@ -112,7 +112,6 @@ xx(TK_Self, "'self'") xx(TK_Stop, "'stop'") xx(TK_Include, "'include'") xx(TK_Fixed_t, "'fixed_t'") -xx(TK_Angle_t, "'angle_t'") xx(TK_Is, "'is'") xx(TK_Replaces, "'replaces'") diff --git a/src/thingdef/thingdef_parse.cpp b/src/thingdef/thingdef_parse.cpp index e0b19d19c..d68ab6fdb 100644 --- a/src/thingdef/thingdef_parse.cpp +++ b/src/thingdef/thingdef_parse.cpp @@ -486,10 +486,6 @@ static void ParseNativeFunction(FScanner &sc, PClassActor *cls) rets.Push(TypeFloat64); break; - case TK_Angle_t: - rets.Push(TypeAngle); - break; - case TK_Fixed_t: rets.Push(TypeFixed); break; diff --git a/src/zscript/vmexec.h b/src/zscript/vmexec.h index 954a8cde8..e75e7a9eb 100644 --- a/src/zscript/vmexec.h +++ b/src/zscript/vmexec.h @@ -220,16 +220,6 @@ begin: GETADDR(PB,RC,X_READ_NIL); reg.f[a] = *(VM_SWORD *)ptr / 65536.0; NEXTOP; - OP(LANG): - ASSERTF(a); ASSERTA(B); ASSERTKD(C); - GETADDR(PB,KC,X_READ_NIL); - reg.f[a] = (*(VM_UWORD *)ptr >> 1) * (180.0 / 0x40000000); // BAM -> deg - NEXTOP; - OP(LANG_R): - ASSERTF(a); ASSERTA(B); ASSERTD(C); - GETADDR(PB,RC,X_READ_NIL); - reg.f[a] = (*(VM_UWORD *)ptr >> 1) * (180.0 / 0x40000000); - NEXTOP; OP(LBIT): ASSERTD(a); ASSERTA(B); GETADDR(PB,0,X_READ_NIL); @@ -336,16 +326,6 @@ begin: GETADDR(PA,RC,X_WRITE_NIL); *(VM_SWORD *)ptr = (VM_SWORD)(reg.f[B] * 65536.0); NEXTOP; - OP(SANG): - ASSERTA(a); ASSERTF(B); ASSERTKD(C); - GETADDR(PA,KC,X_WRITE_NIL); - *(VM_UWORD *)ptr = (VM_UWORD)(xs_CRoundToInt((reg.f[B]) * (0x40000000/90.))); // deg -> BAM - NEXTOP; - OP(SANG_R): - ASSERTA(a); ASSERTF(B); ASSERTD(C); - GETADDR(PA,RC,X_WRITE_NIL); - *(VM_UWORD *)ptr = (VM_UWORD)(xs_CRoundToInt((reg.f[B]) * (0x40000000/90.))); - NEXTOP; OP(SBIT): ASSERTA(a); ASSERTD(B); GETADDR(PA,0,X_WRITE_NIL); diff --git a/src/zscript/vmops.h b/src/zscript/vmops.h index 36924d6bb..e1b230984 100644 --- a/src/zscript/vmops.h +++ b/src/zscript/vmops.h @@ -37,8 +37,6 @@ xx(LV, lv, RVRPKI), // load vector xx(LV_R, lv, RVRPRI), xx(LX, lx, RFRPKI), // load fixed point xx(LX_R, lx, RFRPRI), -xx(LANG, lang, RFRPKI), // load angle -xx(LANG_R, lang, RFRPRI), xx(LBIT, lbit, RIRPI8), // rA = !!(*rB & C) -- *rB is a byte @@ -61,8 +59,6 @@ xx(SV, sv, RPRVKI), // store vector xx(SV_R, sv, RPRVRI), xx(SX, sx, RPRFKI), // store fixed point xx(SX_R, sx, RPRFRI), -xx(SANG, sang, RPRFKI), // store angle -xx(SANG_R, sang, RPRFRI), xx(SBIT, sbit, RPRII8), // *rA |= C if rB is true, *rA &= ~C otherwise