From be85b3f9c546742b01769813c53ce376ef1cecf8 Mon Sep 17 00:00:00 2001 From: Xadhoom <> Date: Wed, 23 Jan 2019 16:47:53 +0000 Subject: [PATCH] 64-bit clean items.cpp, lighting.cpp --- Source/items.cpp | 14 +++++++------- Source/lighting.cpp | 34 +++++++++++++++++----------------- Source/lighting.h | 2 +- 3 files changed, 25 insertions(+), 25 deletions(-) diff --git a/Source/items.cpp b/Source/items.cpp index 98e490587..7b598c09c 100644 --- a/Source/items.cpp +++ b/Source/items.cpp @@ -723,7 +723,7 @@ void __cdecl InitItems() v0[11] = 0; v0[10] = 0; v0 += 92; - } while ((signed int)v0 < (signed int)&item[MAXITEMS + 1]._ix); + } while ((INT_PTR)v0 < (INT_PTR)&item[MAXITEMS + 1]._ix); v1 = 0; memset(itemactive, 0, sizeof(itemactive)); do { @@ -4196,7 +4196,7 @@ void __cdecl SortSmith() signed int v2; // ecx int *v3; // eax int v4; // ebx - int v5; // edi + INT_PTR v5; // edi v0 = 0; if (smithitem[1]._itype != -1) { @@ -4213,7 +4213,7 @@ void __cdecl SortSmith() v3 = &smithitem[0].IDidx; v4 = v0; do { - v5 = (int)(v3 + 92); + v5 = (INT_PTR)(v3 + 92); if (*v3 > v3[92]) { BubbleSwapItem((ItemStruct *)(v3 - 90), (ItemStruct *)(v3 + 2)); v2 = 0; @@ -4402,7 +4402,7 @@ void __cdecl SortWitch() signed int v2; // ecx int *v3; // eax int v4; // ebx - int v5; // edi + INT_PTR v5; // edi v0 = 3; if (witchitem[4]._itype != -1) { @@ -4419,7 +4419,7 @@ void __cdecl SortWitch() v3 = &witchitem[3].IDidx; v4 = v0 - 3; do { - v5 = (int)(v3 + 92); + v5 = (INT_PTR)(v3 + 92); if (*v3 > v3[92]) { BubbleSwapItem((ItemStruct *)(v3 - 90), (ItemStruct *)(v3 + 2)); v2 = 0; @@ -4627,7 +4627,7 @@ void __cdecl SortHealer() signed int v2; // ecx int *v3; // eax int v4; // ebx - int v5; // edi + INT_PTR v5; // edi v0 = 2; if (healitem[3]._itype != -1) { @@ -4644,7 +4644,7 @@ void __cdecl SortHealer() v3 = &healitem[2].IDidx; v4 = v0 - 2; do { - v5 = (int)(v3 + 92); + v5 = (INT_PTR)(v3 + 92); if (*v3 > v3[92]) { BubbleSwapItem((ItemStruct *)(v3 - 90), (ItemStruct *)(v3 + 2)); v2 = 0; diff --git a/Source/lighting.cpp b/Source/lighting.cpp index e0d77cc54..ca0f77487 100644 --- a/Source/lighting.cpp +++ b/Source/lighting.cpp @@ -451,7 +451,7 @@ unsigned char byte_49463C[18][18] = /* unused */ unsigned char RadiusAdj[23] = { 0, 0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 4, 3, 2, 2, 2, 1, 1, 1, 0, 0, 0, 0 }; -void __fastcall SetLightFX(int *x, int *y, short *s_r, short *s_g, int *s_b, int *d_r, int *d_g, int *d_b) +void __fastcall SetLightFX(int *x, int *y, short *s_r, short *s_g, PINT_PTR s_b, PINT_PTR d_r, int *d_g, int *d_b) { short *v8; // eax int v9; // edx @@ -467,7 +467,7 @@ void __fastcall SetLightFX(int *x, int *y, short *s_r, short *s_g, int *s_b, int *(_DWORD *)s_g = v9; s_ra = (short *)*s_b; *s_b = 7 - *d_r; - *d_r = (int)s_ra; + *d_r = (INT_PTR)s_ra; *x = *(_DWORD *)v8 - *s_b; *v10 = *(_DWORD *)s_g - *d_r; if (*x < 0) { @@ -519,8 +519,8 @@ void __fastcall DoLighting(int nXPos, int nYPos, int nRadius, int Lnum) int v38; // edi short s_r[2]; // [esp+Ch] [ebp-44h] short s_g[2]; // [esp+10h] [ebp-40h] - int s_b; // [esp+14h] [ebp-3Ch] - int d_r; // [esp+18h] [ebp-38h] + INT_PTR s_b; // [esp+14h] [ebp-3Ch] + INT_PTR d_r; // [esp+18h] [ebp-38h] int v43; // [esp+1Ch] [ebp-34h] int v44; // [esp+20h] [ebp-30h] int v45; // [esp+24h] [ebp-2Ch] @@ -933,7 +933,7 @@ void __fastcall DoVision(int nXPos, int nYPos, int nRadius, unsigned char doauto ++v20; v8 += 30; v19 = v8; - } while ((signed int)v8 < (signed int)&vCrawlTable[23][1]); + } while ((INT_PTR)v8 < (INT_PTR)&vCrawlTable[23][1]); ++v27; } while (v27 < 4); } @@ -968,15 +968,15 @@ void __cdecl MakeLightTable() unsigned char v11; // al char *v12; // ebx char *v13; // ebx - int v14; // ecx + INT_PTR v14; // ecx signed int v15; // esi char v16; // al int v17; // edx - int v18; // ebx + INT_PTR v18; // ebx signed int v19; // esi _BYTE *v20; // ebx char *v21; // ebx - int v22; // edi + INT_PTR v22; // edi unsigned char *v23; // esi signed int v24; // edx unsigned char *v25; // esi @@ -996,7 +996,7 @@ void __cdecl MakeLightTable() int v39; // esi double v40; // st7 double v41; // st6 - int v42; // ecx + INT_PTR v42; // ecx char *v43; // ecx BOOLEAN v44; // zf char v45[16]; // [esp+14h] [ebp-2Ch] /* check */ @@ -1004,9 +1004,9 @@ void __cdecl MakeLightTable() int v47; // [esp+28h] [ebp-18h] char *v48; // [esp+2Ch] [ebp-14h] int v49; // [esp+30h] [ebp-10h] - int v50; // [esp+34h] [ebp-Ch] - int v51; // [esp+38h] [ebp-8h] - int v52; // [esp+3Ch] [ebp-4h] + INT_PTR v50; // [esp+34h] [ebp-Ch] + INT_PTR v51; // [esp+38h] [ebp-8h] + INT_PTR v52; // [esp+3Ch] [ebp-4h] v51 = 0; v0 = pLightTbl; @@ -1111,7 +1111,7 @@ void __cdecl MakeLightTable() ++v15; } while (v15 < 16); *v13 = 0; - v18 = (int)(v13 + 1); + v18 = (INT_PTR)(v13 + 1); *(_DWORD *)v18 = *(_DWORD *)&v45[1]; *(_DWORD *)(v18 + 4) = *(_DWORD *)&v45[5]; *(_DWORD *)(v18 + 8) = *(_DWORD *)&v45[9]; @@ -1131,7 +1131,7 @@ void __cdecl MakeLightTable() *v13 = 0; v21 = v13 + 1; memset(v21, 1u, 0x1Cu); - v22 = (int)(v21 + 28); + v22 = (INT_PTR)(v21 + 28); *(_WORD *)v22 = 257; *(_BYTE *)(v22 + 2) = 1; v12 = v21 + 255; @@ -1187,7 +1187,7 @@ void __cdecl MakeLightTable() --v33; } while (v33); v35 = 0; - v51 = (int)dung_map_radius; + v51 = (INT_PTR)dung_map_radius; v52 = 8; do { v36 = 0; @@ -1224,7 +1224,7 @@ void __cdecl MakeLightTable() v41 = 0.5; else v41 = -0.5; - v42 = (int)v48; + v42 = (INT_PTR)v48; v51 += 8; v48[v38++] = (signed __int64)(v41 + v40); } while (v38 < 16); @@ -1237,7 +1237,7 @@ void __cdecl MakeLightTable() v37 = v43; } while (v52 > -8); --v49; - } while ((signed int)v43 < (signed int)&dung_map_rgba[16384]); + } while ((INT_PTR)v43 < (INT_PTR)&dung_map_rgba[16384]); } // 525728: using guessed type int light4flag; diff --git a/Source/lighting.h b/Source/lighting.h index e7b288728..2d5e0054c 100644 --- a/Source/lighting.h +++ b/Source/lighting.h @@ -16,7 +16,7 @@ extern int visionid; extern char *pLightTbl; /* todo: struct? */ extern BOOL lightflag; -void __fastcall SetLightFX(int *x, int *y, short *s_r, short *s_g, int *s_b, int *d_r, int *d_g, int *d_b); +void __fastcall SetLightFX(int *x, int *y, short *s_r, short *s_g, PINT_PTR s_b, PINT_PTR d_r, int *d_g, int *d_b); void __fastcall DoLighting(int nXPos, int nYPos, int nRadius, int Lnum); void __fastcall DoUnLight(int nXPos, int nYPos, int nRadius); void __fastcall DoUnVision(int nXPos, int nYPos, int nRadius);