5 changed files with 454 additions and 604 deletions
@ -1,502 +1,404 @@
|
||||
// ref: 0x10006581
|
||||
signed int Doom_10006581() { return 0; } |
||||
/* {
|
||||
signed int result; // eax
|
||||
|
||||
result = 2139095040; |
||||
dword_10029854 = 2139095040; |
||||
return result; |
||||
} */ |
||||
// 10029854: using guessed type int dword_10029854;
|
||||
void __cdecl Doom_cpp_init() |
||||
{ |
||||
doom_cpp_float = doom_cpp_float_value; |
||||
} |
||||
// 1001F41C: using guessed type int doom_cpp_float_value;
|
||||
// 10029854: using guessed type int doom_cpp_float;
|
||||
|
||||
// ref: 0x1000658C
|
||||
int __fastcall Doom_1000658C(HWND hWnd, int *a2, int a3, int a4) { return 0; } |
||||
/* {
|
||||
int *v4; // esi
|
||||
HWND v5; // edi
|
||||
void __fastcall Doom_ParseWndProcs(HWND hWnd, int *msgtbl, int a3, int a4) |
||||
{ |
||||
HWND v6; // eax
|
||||
int result; // eax
|
||||
|
||||
v4 = a2; |
||||
v5 = hWnd; |
||||
while ( 1 ) |
||||
while ( *msgtbl ) |
||||
{ |
||||
result = *v4; |
||||
if ( !*v4 ) |
||||
break; |
||||
v6 = GetDlgItem(v5, result); |
||||
Doom_100065BB(v5, v6, a3, a4); |
||||
++v4; |
||||
v6 = GetDlgItem(hWnd, *msgtbl); |
||||
Doom_GetSetWndText(hWnd, (int)v6, a3, a4); |
||||
++msgtbl; |
||||
} |
||||
return result; |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x100065BB
|
||||
void __fastcall Doom_100065BB(HWND hWnd, HWND a2, int a3, int a4) { return; } |
||||
/* {
|
||||
void __fastcall Doom_GetSetWndText(HWND hWnd, int msg, int nFont, int a4) |
||||
{ |
||||
HWND v4; // esi
|
||||
HWND v5; // edi
|
||||
int v6; // eax
|
||||
CHAR String; // [esp+8h] [ebp-100h]
|
||||
char String[256]; // [esp+8h] [ebp-100h]
|
||||
|
||||
v4 = a2; |
||||
v4 = (HWND)msg; |
||||
v5 = hWnd; |
||||
if ( a2 ) |
||||
if ( msg ) |
||||
{ |
||||
Doom_10006719((int)hWnd, a2, 1521); |
||||
Doom_1000678A(v5, v4); |
||||
artfont_10001058((char *)a3); |
||||
Doom_1000663F(v4, a4); |
||||
GetWindowTextA(v4, &String, 255); |
||||
if ( strlen(&String) ) |
||||
Doom_AllocAndSetBMP(hWnd, 1521); |
||||
Doom_GetWindowROP3(v5, v4); |
||||
artfont_SetArtFont(nFont); |
||||
Doom_PrintStrWithSpin(v4, a4); |
||||
GetWindowTextA(v4, String, 255); |
||||
if ( strlen(String) ) |
||||
{ |
||||
v6 = GetWindowLongA(v4, -21); |
||||
local_10007FA4(v6, &String); |
||||
SetWindowTextA(v4, &byte_10029448); |
||||
local_SetWndLongStr(v6, String); |
||||
SetWindowTextA(v4, (LPCSTR)&wndtext_pointer); |
||||
} |
||||
} |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x1000663F
|
||||
_DWORD *__fastcall Doom_1000663F(HWND hWnd, int a2) { return 0; } |
||||
/* {
|
||||
int v2; // edi
|
||||
_DWORD *result; // eax
|
||||
void __fastcall Doom_PrintStrWithSpin(HWND hWnd, BOOL a2) |
||||
{ |
||||
_DWORD *v3; // eax
|
||||
_DWORD *v4; // esi
|
||||
unsigned char *v5; // ebx
|
||||
char *v5; // ebx
|
||||
int v6; // edi
|
||||
size_t v7; // eax
|
||||
unsigned char *i; // eax
|
||||
char *i; // eax
|
||||
int v9; // kr04_4
|
||||
int v10; // eax
|
||||
CHAR String; // [esp+8h] [ebp-10Ch]
|
||||
unsigned char *v12; // [esp+108h] [ebp-Ch]
|
||||
HWND hWnda; // [esp+10Ch] [ebp-8h]
|
||||
char String[256]; // [esp+8h] [ebp-10Ch]
|
||||
char *v12; // [esp+108h] [ebp-Ch]
|
||||
int v14; // [esp+110h] [ebp-4h]
|
||||
|
||||
v2 = a2; |
||||
hWnda = hWnd; |
||||
result = (_DWORD *)GetWindowLongA(hWnd, -21); |
||||
v4 = result; |
||||
if ( result && *result ) |
||||
v3 = (_DWORD *)GetWindowLongA(hWnd, -21); |
||||
v4 = v3; |
||||
if ( v3 && *v3 ) |
||||
{ |
||||
GetWindowTextA(hWnda, &String, 255); |
||||
v5 = (unsigned char *)&String; |
||||
if ( !strlen(&String) ) |
||||
v5 = (unsigned char *)(v4 + 4); |
||||
v14 = artfont_10001329(v5); |
||||
if ( v2 ) |
||||
GetWindowTextA(hWnd, String, 255); |
||||
v5 = String; |
||||
if ( !strlen(String) ) |
||||
v5 = (char *)(v4 + 4); |
||||
v14 = artfont_GetFontWidth(v5); |
||||
if ( a2 ) |
||||
{ |
||||
v6 = v4[1] - 2 * Focus_10007482(); |
||||
v7 = strlen((const char *)v5); |
||||
v6 = v4[1] - 2 * Focus_GetSpinWidthOrZero(); |
||||
v7 = strlen(v5); |
||||
if ( v14 > v6 ) |
||||
{ |
||||
for ( i = &v5[v7]; ; i = v12 ) |
||||
{ |
||||
v12 = i - 1; |
||||
*v12 = 0; |
||||
v14 = artfont_10001329(v5); |
||||
v14 = artfont_GetFontWidth(v5); |
||||
if ( v14 <= v6 ) |
||||
break; |
||||
} |
||||
} |
||||
} |
||||
v9 = v4[1] - v14 - 1; |
||||
v10 = artfont_100012F6(); |
||||
artfont_100013CD(v5, v4, v9 / 2, (v4[2] - v10) / 2); |
||||
result = (_DWORD *)InvalidateRect(hWnda, 0, 0); |
||||
v10 = artfont_GetFontMaxHeight(); |
||||
artfont_PrintFontStr(v5, (DWORD **)v4, v9 / 2, (v4[2] - v10) / 2); |
||||
InvalidateRect(hWnd, 0, 0); |
||||
} |
||||
return result; |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x10006719
|
||||
int __fastcall Doom_10006719(int a1, HWND a2, int a3) { return 0; } |
||||
/* {
|
||||
HWND v3; // edi
|
||||
_DWORD *v4; // eax
|
||||
_DWORD *v5; // esi
|
||||
void __fastcall Doom_AllocAndSetBMP(HWND hWnd, int bmp_flags) |
||||
{ |
||||
DWORD *v3; // esi
|
||||
struct tagRECT Rect; // [esp+8h] [ebp-10h]
|
||||
|
||||
v3 = a2; |
||||
GetClientRect(a2, &Rect); |
||||
v4 = (_DWORD *)local_10007F46(); |
||||
v5 = v4; |
||||
v4[1] = Rect.right; |
||||
v4[2] = Rect.bottom; |
||||
*v4 = SMemAlloc(Rect.right * Rect.bottom, "C:\\Src\\Diablo\\DiabloUI\\Doom.cpp", 139, 0); |
||||
SetWindowLongA(v3, -21, (LONG)v5); |
||||
return SDlgSetBitmapI(v3, 0, &byte_10029448, -1, a3, *v5, 0, v5[1], v5[2], -1); |
||||
} */ |
||||
// 10010364: using guessed type int __stdcall SMemAlloc(_DWORD, _DWORD, _DWORD, _DWORD);
|
||||
// 10010400: using guessed type int __stdcall SDlgSetBitmapI(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD);
|
||||
GetClientRect(hWnd, &Rect); |
||||
v3 = local_AllocWndLongData(); |
||||
v3[1] = Rect.right; |
||||
v3[2] = Rect.bottom; |
||||
*v3 = (DWORD)SMemAlloc(Rect.right * Rect.bottom, "C:\\Src\\Diablo\\DiabloUI\\Doom.cpp", 139, 0); |
||||
SetWindowLongA(hWnd, -21, (LONG)v3); |
||||
SDlgSetBitmapI(hWnd, 0, (char *)&wndtext_pointer, -1, bmp_flags, (void *)*v3, 0, v3[1], v3[2], -1); |
||||
} |
||||
|
||||
// ref: 0x1000678A
|
||||
_DWORD *__fastcall Doom_1000678A(HWND hWnd, HWND a2) { return 0; } |
||||
/* {
|
||||
HWND v2; // edi
|
||||
void __fastcall Doom_GetWindowROP3(HWND hWnd1, HWND hWnd2) |
||||
{ |
||||
_DWORD *v3; // ebx
|
||||
_DWORD *result; // eax
|
||||
_DWORD *v5; // esi
|
||||
LONG v4; // eax MAPDST
|
||||
struct tagRECT Rect; // [esp+Ch] [ebp-14h]
|
||||
HWND hWnda; // [esp+1Ch] [ebp-4h]
|
||||
|
||||
v2 = a2; |
||||
hWnda = hWnd; |
||||
v3 = (_DWORD *)GetWindowLongA(hWnd, -21); |
||||
result = (_DWORD *)GetWindowLongA(v2, -21); |
||||
v5 = result; |
||||
if ( v3 && *v3 && result ) |
||||
v3 = (_DWORD *)GetWindowLongA(hWnd1, -21); |
||||
v4 = GetWindowLongA(hWnd2, -21); |
||||
if ( v3 && *v3 && v4 ) |
||||
{ |
||||
if ( *result ) |
||||
if ( *(_DWORD *)v4 ) |
||||
{ |
||||
GetWindowRect(v2, &Rect); |
||||
ScreenToClient(hWnda, (LPPOINT)&Rect); |
||||
ScreenToClient(hWnda, (LPPOINT)&Rect.right); |
||||
result = (_DWORD *)SBltROP3( |
||||
*v5, |
||||
Rect.left + *v3 + Rect.top * v3[1], |
||||
v5[1], |
||||
v5[2], |
||||
v5[1], |
||||
v3[1], |
||||
0, |
||||
13369376); |
||||
GetWindowRect(hWnd2, &Rect); |
||||
ScreenToClient(hWnd1, (LPPOINT)&Rect); |
||||
ScreenToClient(hWnd1, (LPPOINT)&Rect.right); |
||||
SBltROP3( |
||||
*(void **)v4, |
||||
(void *)(Rect.left + *v3 + Rect.top * v3[1]), |
||||
*(_DWORD *)(v4 + 4), |
||||
*(_DWORD *)(v4 + 8), |
||||
*(_DWORD *)(v4 + 4), |
||||
v3[1], |
||||
0, |
||||
0xCC0020u); |
||||
} |
||||
} |
||||
return result; |
||||
} */ |
||||
// 100103F4: using guessed type int __stdcall SBltROP3(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD);
|
||||
} |
||||
|
||||
// ref: 0x1000680A
|
||||
int __fastcall Doom_1000680A(HWND hDlg, int *a2, int a3, int a4) { return 0; } |
||||
/* {
|
||||
int *v4; // esi
|
||||
HWND v5; // edi
|
||||
void __fastcall Doom_ParseWndProc2(HWND hWnd, int *msgtbl, int a3, int a4) |
||||
{ |
||||
HWND v6; // eax
|
||||
int result; // eax
|
||||
|
||||
v4 = a2; |
||||
v5 = hDlg; |
||||
while ( 1 ) |
||||
while ( *msgtbl ) |
||||
{ |
||||
result = *v4; |
||||
if ( !*v4 ) |
||||
break; |
||||
v6 = GetDlgItem(v5, result); |
||||
Doom_10006839(v5, v6, (char *)a3, a4); |
||||
++v4; |
||||
v6 = GetDlgItem(hWnd, *msgtbl); |
||||
Doom_GetSetWndTxt2(hWnd, (int)v6, a3, a4); |
||||
++msgtbl; |
||||
} |
||||
return result; |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x10006839
|
||||
void __fastcall Doom_10006839(HWND a1, HWND a2, char *a3, int a4) { return; } |
||||
/* {
|
||||
void __fastcall Doom_GetSetWndTxt2(HWND hWnd, int msg, int nFont, int a4) |
||||
{ |
||||
HWND v4; // esi
|
||||
int v5; // eax
|
||||
CHAR String; // [esp+4h] [ebp-100h]
|
||||
char String[256]; // [esp+4h] [ebp-100h]
|
||||
|
||||
v4 = a2; |
||||
if ( a2 ) |
||||
v4 = (HWND)msg; |
||||
if ( msg ) |
||||
{ |
||||
Doom_1000678A(a1, a2); |
||||
artfont_10001058(a3); |
||||
Doom_1000663F(v4, a4); |
||||
GetWindowTextA(v4, &String, 255); |
||||
if ( strlen(&String) ) |
||||
Doom_GetWindowROP3(hWnd, (HWND)msg); |
||||
artfont_SetArtFont(nFont); |
||||
Doom_PrintStrWithSpin(v4, a4); |
||||
GetWindowTextA(v4, String, 255); |
||||
if ( strlen(String) ) |
||||
{ |
||||
v5 = GetWindowLongA(v4, -21); |
||||
local_10007FA4(v5, &String); |
||||
SetWindowTextA(v4, &byte_10029448); |
||||
local_SetWndLongStr(v5, String); |
||||
SetWindowTextA(v4, (LPCSTR)&wndtext_pointer); |
||||
} |
||||
} |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x100068AB
|
||||
int __fastcall Doom_100068AB(HWND hWnd, int *a2, int a3) { return 0; } |
||||
/* {
|
||||
int *v3; // esi
|
||||
HWND v4; // edi
|
||||
void __fastcall Doom_ParseWndProc3(HWND hWnd, int *msgtbl, int a3) |
||||
{ |
||||
HWND v5; // eax
|
||||
int result; // eax
|
||||
|
||||
v3 = a2; |
||||
v4 = hWnd; |
||||
while ( 1 ) |
||||
while ( *msgtbl ) |
||||
{ |
||||
result = *v3; |
||||
if ( !*v3 ) |
||||
break; |
||||
v5 = GetDlgItem(v4, result); |
||||
Doom_100068D6(v4, v5, a3); |
||||
++v3; |
||||
v5 = GetDlgItem(hWnd, *msgtbl); |
||||
Doom_GetSetWndTxt3(hWnd, (int)v5, a3); |
||||
++msgtbl; |
||||
} |
||||
return result; |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x100068D6
|
||||
void __fastcall Doom_100068D6(HWND hWnd, HWND a2, int a3) { return; } |
||||
/* {
|
||||
void __fastcall Doom_GetSetWndTxt3(HWND hWnd, int msg, int nFont) |
||||
{ |
||||
HWND v3; // esi
|
||||
HWND v4; // edi
|
||||
int v5; // eax
|
||||
int v6; // eax
|
||||
CHAR String; // [esp+8h] [ebp-100h]
|
||||
char String[256]; // [esp+8h] [ebp-100h]
|
||||
|
||||
v3 = a2; |
||||
v3 = (HWND)msg; |
||||
v4 = hWnd; |
||||
if ( a2 ) |
||||
if ( msg ) |
||||
{ |
||||
Doom_10006719((int)hWnd, a2, 1); |
||||
Doom_1000678A(v4, v3); |
||||
artfont_10001058((char *)a3); |
||||
Doom_AllocAndSetBMP(hWnd, 1); |
||||
Doom_GetWindowROP3(v4, v3); |
||||
artfont_SetArtFont(nFont); |
||||
v5 = GetWindowLongA(v3, -16); |
||||
Doom_1000695D(v3, v5); |
||||
GetWindowTextA(v3, &String, 255); |
||||
if ( strlen(&String) ) |
||||
Doom_PrintStrWithSpn2(v3, v5); |
||||
GetWindowTextA(v3, String, 255); |
||||
if ( strlen(String) ) |
||||
{ |
||||
v6 = GetWindowLongA(v3, -21); |
||||
local_10007FA4(v6, &String); |
||||
SetWindowTextA(v3, &byte_10029448); |
||||
local_SetWndLongStr(v6, String); |
||||
SetWindowTextA(v3, (LPCSTR)&wndtext_pointer); |
||||
} |
||||
} |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x1000695D
|
||||
_DWORD *__fastcall Doom_1000695D(HWND hWnd, int a2) { return 0; } |
||||
/* {
|
||||
_DWORD *result; // eax
|
||||
void __fastcall Doom_PrintStrWithSpn2(HWND hWnd, int justify_type) |
||||
{ |
||||
_DWORD *v2; // eax
|
||||
_DWORD *v3; // esi
|
||||
unsigned char *v4; // edi
|
||||
char *v4; // edi
|
||||
int v5; // eax
|
||||
CHAR String; // [esp+4h] [ebp-108h]
|
||||
int v7; // [esp+104h] [ebp-8h]
|
||||
HWND hWnda; // [esp+108h] [ebp-4h]
|
||||
|
||||
v7 = a2; |
||||
hWnda = hWnd; |
||||
result = (_DWORD *)GetWindowLongA(hWnd, -21); |
||||
v3 = result; |
||||
if ( result && *result ) |
||||
char String[256]; // [esp+4h] [ebp-108h]
|
||||
|
||||
v2 = (_DWORD *)GetWindowLongA(hWnd, -21); |
||||
v3 = v2; |
||||
if ( v2 && *v2 ) |
||||
{ |
||||
GetWindowTextA(hWnda, &String, 255); |
||||
v4 = (unsigned char *)&String; |
||||
if ( !strlen(&String) ) |
||||
v4 = (unsigned char *)(v3 + 4); |
||||
if ( v7 & 2 ) |
||||
GetWindowTextA(hWnd, String, 255); |
||||
v4 = String; |
||||
if ( !strlen(String) ) |
||||
v4 = (char *)(v3 + 4); |
||||
if ( justify_type & 2 ) |
||||
{ |
||||
v5 = v3[1] - artfont_10001329(v4) - 1; |
||||
v5 = v3[1] - artfont_GetFontWidth(v4) - 1; |
||||
} |
||||
else if ( v7 & 1 ) |
||||
else if ( justify_type & 1 ) |
||||
{ |
||||
v5 = (v3[1] - artfont_10001329(v4) - 1) / 2; |
||||
v5 = (v3[1] - artfont_GetFontWidth(v4) - 1) / 2; |
||||
} |
||||
else |
||||
{ |
||||
v5 = 0; |
||||
} |
||||
artfont_100013CD(v4, v3, v5, 0); |
||||
result = (_DWORD *)InvalidateRect(hWnda, 0, 0); |
||||
artfont_PrintFontStr(v4, (DWORD **)v3, v5, 0); |
||||
InvalidateRect(hWnd, 0, 0); |
||||
} |
||||
return result; |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x10006A13
|
||||
int __fastcall Doom_10006A13(HWND hDlg, int *a2, int a3) { return 0; } |
||||
/* {
|
||||
int *v3; // esi
|
||||
HWND v4; // edi
|
||||
void __fastcall Doom_ParseWndProc4(HWND hWnd, int *msgtbl, int a3) |
||||
{ |
||||
HWND v5; // eax
|
||||
int result; // eax
|
||||
|
||||
v3 = a2; |
||||
v4 = hDlg; |
||||
while ( 1 ) |
||||
while ( *msgtbl ) |
||||
{ |
||||
result = *v3; |
||||
if ( !*v3 ) |
||||
break; |
||||
v5 = GetDlgItem(v4, result); |
||||
Doom_10006A3E(v4, v5, (char *)a3); |
||||
++v3; |
||||
v5 = GetDlgItem(hWnd, *msgtbl); |
||||
Doom_GetSetWndTxt4(hWnd, (int)v5, a3); |
||||
++msgtbl; |
||||
} |
||||
return result; |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x10006A3E
|
||||
void __fastcall Doom_10006A3E(HWND a1, HWND a2, char *a3) { return; } |
||||
/* {
|
||||
void __fastcall Doom_GetSetWndTxt4(HWND hWnd, int msg, int nFont) |
||||
{ |
||||
HWND v3; // edi
|
||||
int v4; // eax
|
||||
int v5; // eax
|
||||
CHAR String; // [esp+8h] [ebp-100h]
|
||||
char String[256]; // [esp+8h] [ebp-100h]
|
||||
|
||||
v3 = a2; |
||||
if ( a2 ) |
||||
v3 = (HWND)msg; |
||||
if ( msg ) |
||||
{ |
||||
Doom_1000678A(a1, a2); |
||||
artfont_10001058(a3); |
||||
Doom_GetWindowROP3(hWnd, (HWND)msg); |
||||
artfont_SetArtFont(nFont); |
||||
v4 = GetWindowLongA(v3, -16); |
||||
Doom_1000695D(v3, v4); |
||||
GetWindowTextA(v3, &String, 255); |
||||
if ( strlen(&String) ) |
||||
Doom_PrintStrWithSpn2(v3, v4); |
||||
GetWindowTextA(v3, String, 255); |
||||
if ( strlen(String) ) |
||||
{ |
||||
v5 = GetWindowLongA(v3, -21); |
||||
local_10007FA4(v5, &String); |
||||
SetWindowTextA(v3, &byte_10029448); |
||||
local_SetWndLongStr(v5, String); |
||||
SetWindowTextA(v3, (LPCSTR)&wndtext_pointer); |
||||
} |
||||
} |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x10006AB8
|
||||
int __fastcall Doom_10006AB8(HWND hWnd, int *a2, int a3) { return 0; } |
||||
/* {
|
||||
int *v3; // esi
|
||||
HWND v4; // edi
|
||||
void __fastcall Doom_ParseWndProc5(HWND hWnd, int *msgtbl, int a3) |
||||
{ |
||||
HWND v5; // eax
|
||||
int result; // eax
|
||||
|
||||
v3 = a2; |
||||
v4 = hWnd; |
||||
while ( 1 ) |
||||
while ( *msgtbl ) |
||||
{ |
||||
result = *v3; |
||||
if ( !*v3 ) |
||||
break; |
||||
v5 = GetDlgItem(v4, result); |
||||
Doom_10006AE3(v4, v5, a3); |
||||
++v3; |
||||
v5 = GetDlgItem(hWnd, *msgtbl); |
||||
Doom_GetSetWndTxt5(hWnd, (int)v5, a3); |
||||
++msgtbl; |
||||
} |
||||
return result; |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x10006AE3
|
||||
void __fastcall Doom_10006AE3(HWND hWnd, HWND a2, int a3) { return; } |
||||
/* {
|
||||
void __fastcall Doom_GetSetWndTxt5(HWND hWnd, int msg, int nFont) |
||||
{ |
||||
HWND v3; // esi
|
||||
HWND v4; // edi
|
||||
|
||||
v3 = a2; |
||||
v4 = hWnd; |
||||
if ( a2 ) |
||||
v3 = (HWND)msg; |
||||
if ( msg ) |
||||
{ |
||||
Doom_10006719((int)hWnd, a2, 1); |
||||
Doom_1000678A(v4, v3); |
||||
artfont_10001058((char *)a3); |
||||
Doom_10006B12(v3); |
||||
Doom_AllocAndSetBMP(hWnd, 1); |
||||
Doom_GetWindowROP3(hWnd, v3); |
||||
artfont_SetArtFont(nFont); |
||||
Doom_PrintTextMsg403(v3); |
||||
} |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x10006B12
|
||||
void UNKCALL Doom_10006B12(HWND hWnd) { return; } |
||||
/* {
|
||||
HWND v1; // ebx
|
||||
_DWORD *v2; // eax
|
||||
void __fastcall Doom_PrintTextMsg403(HWND hWnd) |
||||
{ |
||||
BYTE *v2; // eax
|
||||
int v3; // edi
|
||||
int v4; // edi
|
||||
int v5; // esi
|
||||
int v6; // esi
|
||||
unsigned char *v7; // ebx
|
||||
char *i; // ebx
|
||||
int v8; // eax
|
||||
char v9; // [esp+3h] [ebp-11Dh]
|
||||
CHAR String; // [esp+4h] [ebp-11Ch]
|
||||
//char v9; // [esp+3h] [ebp-11Dh]
|
||||
char String[256]; // [esp+4h] [ebp-11Ch]
|
||||
struct tagRECT Rect; // [esp+104h] [ebp-1Ch]
|
||||
LRESULT v12; // [esp+114h] [ebp-Ch]
|
||||
_DWORD *v13; // [esp+118h] [ebp-8h]
|
||||
BYTE *pWidthBin; // [esp+118h] [ebp-8h]
|
||||
size_t v14; // [esp+11Ch] [ebp-4h]
|
||||
|
||||
v1 = hWnd; |
||||
v2 = (_DWORD *)GetWindowLongA(hWnd, -21); |
||||
v13 = v2; |
||||
if ( v2 && *v2 ) |
||||
v2 = (BYTE *)GetWindowLongA(hWnd, -21); |
||||
pWidthBin = v2; |
||||
if ( v2 && *(_DWORD *)v2 ) |
||||
{ |
||||
GetWindowTextA(v1, &String, 255); |
||||
v14 = strlen(&String); |
||||
v3 = Focus_10007482(); |
||||
v4 = artfont_10001310() + v3; |
||||
GetClientRect(v1, &Rect); |
||||
v5 = Focus_10007482(); |
||||
v6 = Rect.right - 2 * (artfont_10001310() + v5); |
||||
v12 = SendMessageA(v1, 0x403u, 0, 0); |
||||
GetWindowTextA(hWnd, String, 255); |
||||
v14 = strlen(String); |
||||
v3 = Focus_GetSpinWidthOrZero(); |
||||
v4 = artfont_GetFontDefWidth() + v3; |
||||
GetClientRect(hWnd, &Rect); |
||||
v5 = Focus_GetSpinWidthOrZero(); |
||||
v6 = Rect.right - 2 * (artfont_GetFontDefWidth() + v5); |
||||
v12 = SendMessageA(hWnd, 0x403u, 0, 0); |
||||
if ( v12 == 1 ) |
||||
*(&v9 + v14) = 0; |
||||
v7 = (unsigned char *)&String; |
||||
if ( String ) |
||||
String[v14-1] = 0; // *(&v9 + v14) = 0;
|
||||
for ( i = String; *i; ++i ) |
||||
{ |
||||
do |
||||
{ |
||||
if ( artfont_10001329(v7) <= v6 ) |
||||
break; |
||||
++v7; |
||||
} |
||||
while ( *v7 ); |
||||
if ( artfont_GetFontWidth(i) <= v6 ) |
||||
break; |
||||
} |
||||
if ( v12 ) |
||||
*(&v9 + v14) = 124; |
||||
v8 = artfont_100012F6(); |
||||
artfont_100013CD(v7, v13, v4, (v13[2] - v8) / 2); |
||||
String[v14-1] = 124; // *(&v9 + v14) = 124;
|
||||
v8 = artfont_GetFontMaxHeight(); |
||||
artfont_PrintFontStr(i, (DWORD **)pWidthBin, v4, (*((_DWORD *)pWidthBin + 2) - v8) / 2); |
||||
} |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x10006C08
|
||||
int __fastcall Doom_10006C08(HWND hDlg, int *a2, int a3) { return 0; } |
||||
/* {
|
||||
int *v3; // esi
|
||||
HWND v4; // edi
|
||||
void __fastcall Doom_ParseWndProc6(HWND hWnd, int *msgtbl, int a3) |
||||
{ |
||||
HWND v5; // eax
|
||||
int result; // eax
|
||||
|
||||
v3 = a2; |
||||
v4 = hDlg; |
||||
while ( 1 ) |
||||
while ( *msgtbl ) |
||||
{ |
||||
result = *v3; |
||||
if ( !*v3 ) |
||||
break; |
||||
v5 = GetDlgItem(v4, result); |
||||
Doom_10006C33(v4, v5, (char *)a3); |
||||
++v3; |
||||
v5 = GetDlgItem(hWnd, *msgtbl); |
||||
Doom_GetSetWndTxt6(hWnd, (int)v5, a3); |
||||
++msgtbl; |
||||
} |
||||
return result; |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x10006C33
|
||||
void __fastcall Doom_10006C33(HWND a1, HWND a2, char *a3) { return; } |
||||
/* {
|
||||
void __fastcall Doom_GetSetWndTxt6(HWND hWnd, int msg, int nFont) |
||||
{ |
||||
HWND v3; // esi
|
||||
|
||||
v3 = a2; |
||||
if ( a2 ) |
||||
v3 = (HWND)msg; |
||||
if ( msg ) |
||||
{ |
||||
Doom_1000678A(a1, a2); |
||||
artfont_10001058(a3); |
||||
Doom_10006B12(v3); |
||||
Doom_GetWindowROP3(hWnd, (HWND)msg); |
||||
artfont_SetArtFont(nFont); |
||||
Doom_PrintTextMsg403(v3); |
||||
} |
||||
} */ |
||||
} |
||||
|
||||
// ref: 0x10006C53
|
||||
int __fastcall Doom_10006C53(HWND hDlg, int *a2) { return 0; } |
||||
/* {
|
||||
int *v2; // edi
|
||||
HWND v3; // ebx
|
||||
int result; // eax
|
||||
HWND v5; // eax
|
||||
HWND v6; // esi
|
||||
_DWORD *v7; // eax
|
||||
void __fastcall Doom_DeleteFreeProcs(HWND hWnd, int *msgtbl) |
||||
{ |
||||
int i; // eax
|
||||
HWND v5; // eax MAPDST
|
||||
void **v7; // eax
|
||||
|
||||
v2 = a2; |
||||
v3 = hDlg; |
||||
for ( result = *a2; *v2; result = *v2 ) |
||||
for ( i = *msgtbl; *msgtbl; i = *msgtbl ) |
||||
{ |
||||
v5 = GetDlgItem(v3, result); |
||||
v6 = v5; |
||||
v5 = GetDlgItem(hWnd, i); |
||||
if ( v5 ) |
||||
{ |
||||
v7 = (_DWORD *)GetWindowLongA(v5, -21); |
||||
local_10007F72(v7); |
||||
SetWindowLongA(v6, -21, 0); |
||||
v7 = (void **)GetWindowLongA(v5, -21); |
||||
local_FreeMemPtr(v7); |
||||
SetWindowLongA(v5, -21, 0); |
||||
} |
||||
++v2; |
||||
++msgtbl; |
||||
} |
||||
return result; |
||||
} */ |
||||
} |
||||
|
||||
@ -1,288 +1,246 @@
|
||||
// ref: 0x10007458
|
||||
int (__stdcall *UNKCALL Focus_10007458(void *arg))(_DWORD) { return 0; } |
||||
/* {
|
||||
int v1; // esi
|
||||
int (__stdcall *result)(_DWORD); // eax
|
||||
|
||||
v1 = (int)arg; |
||||
if ( dword_10029CA4 && arg != (void *)dword_10029CA8 ) |
||||
void __fastcall Focus_CheckPlayMove(LPARAM lParam) |
||||
{ |
||||
if ( sgbSpinnersLoaded && lParam != dword_10029CA8 ) |
||||
{ |
||||
if ( dword_10029CAC ) |
||||
result = TitleSnd_10010315(); |
||||
dword_10029CA8 = v1; |
||||
TitleSnd_PlayMoveSound(); |
||||
dword_10029CA8 = lParam; |
||||
} |
||||
return result; |
||||
} */ |
||||
// 10029CA4: using guessed type int dword_10029CA4;
|
||||
} |
||||
// 10029CA4: using guessed type int sgbSpinnersLoaded;
|
||||
// 10029CA8: using guessed type int dword_10029CA8;
|
||||
// 10029CAC: using guessed type int dword_10029CAC;
|
||||
|
||||
// ref: 0x10007482
|
||||
int Focus_10007482() { return 0; } |
||||
/* {
|
||||
return dword_10029CA4 != 0 ? dword_10029C98 : 0; |
||||
} */ |
||||
// 10029C98: using guessed type int dword_10029C98;
|
||||
// 10029CA4: using guessed type int dword_10029CA4;
|
||||
int __cdecl Focus_GetSpinWidthOrZero() |
||||
{ |
||||
return sgbSpinnersLoaded != 0 ? focus_spin_width : 0; |
||||
} |
||||
// 10029CA4: using guessed type int sgbSpinnersLoaded;
|
||||
|
||||
// ref: 0x10007492
|
||||
_DWORD *__fastcall Focus_10007492(HWND hWnd, HWND a2) { return 0; } |
||||
/* {
|
||||
void __fastcall Focus_BlitSpinner(HWND hWnd1, HWND hWnd2) |
||||
{ |
||||
_DWORD *v2; // edi
|
||||
_DWORD *result; // eax
|
||||
_DWORD *v4; // esi
|
||||
int v5; // eax
|
||||
int v6; // ST14_4
|
||||
LONG v3; // eax MAPDST
|
||||
int v5; // eax MAPDST
|
||||
int v7; // eax
|
||||
struct tagRECT Rect; // [esp+8h] [ebp-18h]
|
||||
HWND v9; // [esp+18h] [ebp-8h]
|
||||
HWND hWnda; // [esp+1Ch] [ebp-4h]
|
||||
char *v9; // [esp+18h] [ebp-8h]
|
||||
|
||||
hWnda = a2; |
||||
v9 = hWnd; |
||||
v2 = (_DWORD *)GetWindowLongA(hWnd, -21); |
||||
result = (_DWORD *)GetWindowLongA(hWnda, -21); |
||||
v4 = result; |
||||
if ( v2 && result && *v2 ) |
||||
v9 = (char *)hWnd1; |
||||
v2 = (_DWORD *)GetWindowLongA(hWnd1, -21); |
||||
v3 = GetWindowLongA(hWnd2, -21); |
||||
if ( v2 && v3 && *v2 ) |
||||
{ |
||||
if ( *result ) |
||||
if ( *(_DWORD *)v3 ) |
||||
{ |
||||
GetWindowRect(hWnda, &Rect); |
||||
ScreenToClient(v9, (LPPOINT)&Rect); |
||||
ScreenToClient(v9, (LPPOINT)&Rect.right); |
||||
SBltROP3(*v4, Rect.left + *v2 + Rect.top * v2[1], dword_10029C98, v4[2], v4[1], v2[1], 0, 13369376); |
||||
GetWindowRect(hWnd2, &Rect); |
||||
ScreenToClient((HWND)v9, (LPPOINT)&Rect); |
||||
ScreenToClient((HWND)v9, (LPPOINT)&Rect.right); |
||||
SBltROP3( |
||||
*(void **)v3, |
||||
(void *)(Rect.left + *v2 + Rect.top * v2[1]), |
||||
focus_spin_width, |
||||
*(_DWORD *)(v3 + 8), |
||||
*(_DWORD *)(v3 + 4), |
||||
v2[1], |
||||
0, |
||||
0xCC0020u); |
||||
v5 = v2[1]; |
||||
v6 = v5; |
||||
v7 = *v2 + Rect.top * v5; |
||||
v9 = (HWND)v4[1]; |
||||
v9 = *(char **)(v3 + 4); |
||||
SBltROP3( |
||||
(char *)v9 + *v4 - dword_10029C98, |
||||
(char *)v9 + v7 - dword_10029C98 + Rect.left, |
||||
dword_10029C98, |
||||
v4[2], |
||||
v9, |
||||
v6, |
||||
&v9[*(_DWORD *)v3 - focus_spin_width], |
||||
&v9[v7 - focus_spin_width + Rect.left], |
||||
focus_spin_width, |
||||
*(_DWORD *)(v3 + 8), |
||||
(int)v9, |
||||
v5, |
||||
0, |
||||
13369376); |
||||
result = (_DWORD *)Focus_10007566(hWnda); |
||||
0xCC0020u); |
||||
Focus_CenterSpinFromSide(hWnd2); |
||||
} |
||||
} |
||||
return result; |
||||
} */ |
||||
// 100103F4: using guessed type int __stdcall SBltROP3(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD);
|
||||
// 10029C98: using guessed type int dword_10029C98;
|
||||
} |
||||
|
||||
// ref: 0x10007566
|
||||
BOOL UNKCALL Focus_10007566(HWND hWnd) { return 0; } |
||||
/* {
|
||||
HWND v1; // edi
|
||||
void __fastcall Focus_CenterSpinFromSide(HWND hWnd) |
||||
{ |
||||
struct tagRECT Rect; // [esp+8h] [ebp-10h]
|
||||
|
||||
v1 = hWnd; |
||||
GetClientRect(hWnd, &Rect); |
||||
--Rect.bottom; |
||||
Rect.left = --Rect.right - dword_10029C98; |
||||
InvalidateRect(v1, &Rect, 0); |
||||
Rect.left = --Rect.right - focus_spin_width; |
||||
InvalidateRect(hWnd, &Rect, 0); |
||||
Rect.left = 0; |
||||
Rect.right = dword_10029C98 - 1; |
||||
return InvalidateRect(v1, &Rect, 0); |
||||
} */ |
||||
// 10029C98: using guessed type int dword_10029C98;
|
||||
Rect.right = focus_spin_width - 1; |
||||
InvalidateRect(hWnd, &Rect, 0); |
||||
} |
||||
|
||||
// ref: 0x100075B7
|
||||
_DWORD *__fastcall Focus_100075B7(HWND hWnd, HWND a2) { return 0; } |
||||
/* {
|
||||
void __fastcall Focus_GetAndBlitSpin(HWND hWnd, LPARAM lParam) |
||||
{ |
||||
HWND v2; // esi
|
||||
HWND v3; // edi
|
||||
_DWORD *result; // eax
|
||||
|
||||
v2 = a2; |
||||
v3 = hWnd; |
||||
GetWindowLongA(a2, -12); |
||||
result = Focus_10007492(v3, v2); |
||||
v2 = (HWND)lParam; |
||||
GetWindowLongA((HWND)lParam, -12); |
||||
Focus_BlitSpinner(hWnd, v2); |
||||
dword_10029CAC = 1; |
||||
return result; |
||||
} */ |
||||
} |
||||
// 10029CAC: using guessed type int dword_10029CAC;
|
||||
|
||||
// ref: 0x100075DC
|
||||
int __fastcall Focus_100075DC(HWND hWnd, HWND a2) { return 0; } |
||||
/* {
|
||||
HWND v2; // edi
|
||||
HWND v3; // ebx
|
||||
_DWORD *v4; // eax
|
||||
_DWORD *v5; // esi
|
||||
BOOL __fastcall Focus_DoBlitSpinIncFrame(HWND hWnd1, HWND hWnd2) |
||||
{ |
||||
void **v4; // eax
|
||||
void **v5; // esi
|
||||
int v7; // edi
|
||||
struct tagRECT Rect; // [esp+Ch] [ebp-14h]
|
||||
HWND hWnda; // [esp+1Ch] [ebp-4h]
|
||||
|
||||
v2 = hWnd; |
||||
v3 = a2; |
||||
hWnda = hWnd; |
||||
if ( !dword_10029CA4 ) |
||||
if ( !sgbSpinnersLoaded ) |
||||
return 0; |
||||
if ( !a2 ) |
||||
if ( !hWnd2 ) |
||||
return 0; |
||||
GetWindowLongA(a2, -12); |
||||
if ( v2 != GetParent(v3) ) |
||||
GetWindowLongA(hWnd2, -12); |
||||
if ( hWnd1 != GetParent(hWnd2) ) |
||||
return 0; |
||||
Focus_10007492(v2, v3); |
||||
v4 = (_DWORD *)GetWindowLongA(v3, -21); |
||||
Focus_BlitSpinner(hWnd1, hWnd2); |
||||
v4 = (void **)GetWindowLongA(hWnd2, -21); |
||||
v5 = v4; |
||||
if ( !v4 || !*v4 ) |
||||
return 0; |
||||
GetWindowRect(v3, &Rect); |
||||
ScreenToClient(v2, (LPPOINT)&Rect); |
||||
ScreenToClient(hWnda, (LPPOINT)&Rect.right); |
||||
if ( dword_10029C78[dword_10029CB0] ) |
||||
GetWindowRect(hWnd2, &Rect); |
||||
ScreenToClient(hWnd1, (LPPOINT)&Rect); |
||||
ScreenToClient(hWnd1, (LPPOINT)&Rect.right); |
||||
if ( SpinnerTransOut[sgnSpinnerFrame] ) |
||||
{ |
||||
v7 = (v5[2] - dword_10029C9C) / 2; |
||||
STransBlt(*v5, 0, v7, v5[1], dword_10029C78[dword_10029CB0]); |
||||
STransBlt(*v5, v5[1] - dword_10029C98, v7, v5[1], dword_10029C78[dword_10029CB0]); |
||||
Focus_10007566(v3); |
||||
v7 = ((signed int)v5[2] - focus_spin_height) / 2; |
||||
STransBlt(*v5, 0, v7, (int)v5[1], SpinnerTransOut[sgnSpinnerFrame]); |
||||
STransBlt(*v5, (int)v5[1] - focus_spin_width, v7, (int)v5[1], SpinnerTransOut[sgnSpinnerFrame]); |
||||
Focus_CenterSpinFromSide(hWnd2); |
||||
} |
||||
if ( ++dword_10029CB0 >= 8 ) |
||||
dword_10029CB0 = 0; |
||||
if ( ++sgnSpinnerFrame >= 8 ) |
||||
sgnSpinnerFrame = 0; |
||||
return 1; |
||||
} */ |
||||
// 1001036A: using guessed type int __stdcall STransBlt(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD);
|
||||
// 10029C98: using guessed type int dword_10029C98;
|
||||
// 10029C9C: using guessed type int dword_10029C9C;
|
||||
// 10029CA4: using guessed type int dword_10029CA4;
|
||||
// 10029CB0: using guessed type int dword_10029CB0;
|
||||
} |
||||
// 10029C9C: using guessed type int focus_spin_height;
|
||||
// 10029CA4: using guessed type int sgbSpinnersLoaded;
|
||||
// 10029CB0: using guessed type int sgnSpinnerFrame;
|
||||
|
||||
// ref: 0x100076C3
|
||||
int Focus_100076C3() { return 0; } |
||||
/* {
|
||||
int *v0; // esi
|
||||
int result; // eax
|
||||
void __cdecl Focus_DeleteSpinners() |
||||
{ |
||||
HANDLE *v0; // esi
|
||||
|
||||
v0 = dword_10029C78; |
||||
v0 = SpinnerTransOut; |
||||
do |
||||
{ |
||||
result = *v0; |
||||
if ( *v0 ) |
||||
{ |
||||
result = STransDelete(*v0); |
||||
STransDelete(*v0); |
||||
*v0 = 0; |
||||
} |
||||
++v0; |
||||
} |
||||
while ( (signed int)v0 < (signed int)&dword_10029C98 ); |
||||
while ( (signed int)v0 < (signed int)&SpinnerTransOut[8] ); |
||||
dword_10029CAC = 0; |
||||
dword_10029CA8 = 0; |
||||
dword_10029CA4 = 0; |
||||
return result; |
||||
} */ |
||||
// 1001033A: using guessed type int __stdcall STransDelete(_DWORD);
|
||||
// 10029C98: using guessed type int dword_10029C98;
|
||||
// 10029CA4: using guessed type int dword_10029CA4;
|
||||
sgbSpinnersLoaded = 0; |
||||
} |
||||
// 10029CA4: using guessed type int sgbSpinnersLoaded;
|
||||
// 10029CA8: using guessed type int dword_10029CA8;
|
||||
// 10029CAC: using guessed type int dword_10029CAC;
|
||||
|
||||
// ref: 0x100076FA
|
||||
void Focus_100076FA() { return; } |
||||
/* {
|
||||
void __cdecl Focus_ResetSpinToZero() |
||||
{ |
||||
dword_10029CAC = 0; |
||||
dword_10029CA8 = 0; |
||||
} */ |
||||
} |
||||
// 10029CA8: using guessed type int dword_10029CA8;
|
||||
// 10029CAC: using guessed type int dword_10029CAC;
|
||||
|
||||
// ref: 0x1000770E
|
||||
signed int Focus_1000770E() { return 0; } |
||||
/* {
|
||||
signed int result; // eax
|
||||
|
||||
result = 2139095040; |
||||
dword_10029CA0 = 2139095040; |
||||
return result; |
||||
} */ |
||||
// 10029CA0: using guessed type int dword_10029CA0;
|
||||
void __cdecl Focus_cpp_init() |
||||
{ |
||||
focus_cpp_float = focus_cpp_float_value; |
||||
} |
||||
// 1001F42C: using guessed type int focus_cpp_float_value;
|
||||
// 10029CA0: using guessed type int focus_cpp_float;
|
||||
|
||||
// ref: 0x10007719
|
||||
void UNKCALL Focus_10007719(void *arg) { return; } |
||||
/* {
|
||||
int *v1; // esi
|
||||
void __fastcall Focus_LoadSpinner(const char *pszFileName) |
||||
{ |
||||
HANDLE *v1; // esi
|
||||
int v2; // ecx
|
||||
int v3; // eax
|
||||
int v4; // ebx
|
||||
int v5; // [esp+4h] [ebp-1Ch]
|
||||
int v6; // [esp+8h] [ebp-18h]
|
||||
int v7; // [esp+Ch] [ebp-14h]
|
||||
int v8; // [esp+10h] [ebp-10h]
|
||||
int v9; // [esp+14h] [ebp-Ch]
|
||||
int v10; // [esp+18h] [ebp-8h]
|
||||
int v11; // [esp+1Ch] [ebp-4h]
|
||||
int a5[4]; // [esp+4h] [ebp-1Ch]
|
||||
DWORD data[2]; // [esp+14h] [ebp-Ch]
|
||||
BYTE *pBuffer; // [esp+1Ch] [ebp-4h]
|
||||
|
||||
if ( !dword_10029CA4 ) |
||||
if ( !sgbSpinnersLoaded ) |
||||
{ |
||||
v11 = 0; |
||||
pBuffer = 0; |
||||
dword_10029CAC = 0; |
||||
dword_10029CA8 = 0; |
||||
local_100078BE((int)arg, &v11, &v9); |
||||
v1 = dword_10029C78; |
||||
memset(dword_10029C78, 0, 0x20u); |
||||
if ( v11 ) |
||||
local_LoadArtImage(pszFileName, &pBuffer, data); |
||||
v1 = SpinnerTransOut; |
||||
memset(SpinnerTransOut, 0, 0x20u); |
||||
if ( pBuffer ) |
||||
{ |
||||
v2 = v9; |
||||
dword_10029C98 = v9; |
||||
v3 = v10 / 8; |
||||
v2 = data[0]; |
||||
focus_spin_width = data[0]; |
||||
v3 = (signed int)data[1] / 8; |
||||
v4 = 0; |
||||
dword_10029C9C = v10 / 8; |
||||
focus_spin_height = (signed int)data[1] / 8; |
||||
while ( 1 ) |
||||
{ |
||||
v7 = v2 - 1; |
||||
v6 = v4 * v3; |
||||
v5 = 0; |
||||
v8 = v3 + v4 * v3 - 1; |
||||
STransCreateI(v11, v2, v3, 8, &v5, 16777466, v1); |
||||
a5[2] = v2 - 1; |
||||
a5[1] = v4 * v3; |
||||
a5[0] = 0; |
||||
a5[3] = v3 + v4 * v3 - 1; |
||||
STransCreateI(pBuffer, v2, v3, 8, (int)a5, 16777466, v1); |
||||
++v1; |
||||
++v4; |
||||
if ( (signed int)v1 >= (signed int)&dword_10029C98 ) |
||||
if ( (signed int)v1 >= (signed int)&SpinnerTransOut[8] ) |
||||
break; |
||||
v3 = dword_10029C9C; |
||||
v2 = dword_10029C98; |
||||
v3 = focus_spin_height; |
||||
v2 = focus_spin_width; |
||||
} |
||||
SMemFree(v11, "C:\\Src\\Diablo\\DiabloUI\\Focus.cpp", 246, 0); |
||||
SMemFree(pBuffer, "C:\\Src\\Diablo\\DiabloUI\\Focus.cpp", 246, 0); |
||||
} |
||||
dword_10029CB0 = 0; |
||||
dword_10029CA4 = 1; |
||||
sgnSpinnerFrame = 0; |
||||
sgbSpinnersLoaded = 1; |
||||
} |
||||
} */ |
||||
// 10010340: using guessed type int __stdcall SMemFree(_DWORD, _DWORD, _DWORD, _DWORD);
|
||||
// 10010346: using guessed type int __stdcall STransCreateI(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD);
|
||||
// 10029C98: using guessed type int dword_10029C98;
|
||||
// 10029C9C: using guessed type int dword_10029C9C;
|
||||
// 10029CA4: using guessed type int dword_10029CA4;
|
||||
} |
||||
// 10029C9C: using guessed type int focus_spin_height;
|
||||
// 10029CA4: using guessed type int sgbSpinnersLoaded;
|
||||
// 10029CA8: using guessed type int dword_10029CA8;
|
||||
// 10029CAC: using guessed type int dword_10029CAC;
|
||||
// 10029CB0: using guessed type int dword_10029CB0;
|
||||
// 10029CB0: using guessed type int sgnSpinnerFrame;
|
||||
|
||||
// ref: 0x100077E9
|
||||
int __fastcall Focus_100077E9(int a1, void *a2, HWND hWnd) { return 0; } |
||||
/* {
|
||||
int v3; // esi
|
||||
|
||||
v3 = a1; |
||||
Focus_10007719(a2); |
||||
return SDlgSetTimer(v3, 1, 55, Focus_10007804); |
||||
} */ |
||||
// 10010412: using guessed type int __stdcall SDlgSetTimer(_DWORD, _DWORD, _DWORD, _DWORD);
|
||||
void __fastcall Focus_SetFocusTimer(HWND hWnd, const char *pszFileName) |
||||
{ |
||||
Focus_LoadSpinner(pszFileName); |
||||
SDlgSetTimer((int)hWnd, 1, 55, Focus_SetFocusAndBlit); |
||||
} |
||||
|
||||
// ref: 0x10007804
|
||||
int __stdcall Focus_10007804(HWND hWnd, int a2, int a3, int a4) { return 0; } |
||||
/* {
|
||||
HWND v4; // eax
|
||||
void __stdcall Focus_SetFocusAndBlit(int hWnd) |
||||
{ |
||||
HWND v1; // eax
|
||||
|
||||
v4 = GetFocus(); |
||||
return Focus_100075DC(hWnd, v4); |
||||
} */ |
||||
v1 = GetFocus(); |
||||
Focus_DoBlitSpinIncFrame((HWND)hWnd, v1); |
||||
} |
||||
|
||||
// ref: 0x10007818
|
||||
int UNKCALL Focus_10007818(void *arg) { return 0; } |
||||
/* {
|
||||
SDlgKillTimer(arg, 1); |
||||
return Focus_100076C3(); |
||||
} */ |
||||
// 10010418: using guessed type int __stdcall SDlgKillTimer(_DWORD, _DWORD);
|
||||
void __fastcall Focus_KillFocusTimer(HWND hWnd) |
||||
{ |
||||
SDlgKillTimer((int)hWnd, 1); |
||||
Focus_DeleteSpinners(); |
||||
} |
||||
|
||||
@ -1,49 +1,33 @@
|
||||
// ref: 0x10010306
|
||||
void UNKCALL TitleSnd_10010306(void *arg) { return; } |
||||
/* {
|
||||
dword_1002A594 = (int (__stdcall *)(_DWORD))arg; |
||||
} */ |
||||
// 1002A594: using guessed type int (__stdcall *dword_1002A594)(_DWORD);
|
||||
void __fastcall TitleSnd_SetSoundFunction(void (__stdcall *func)(char *file)) |
||||
{ |
||||
gfnSoundFunction = func; |
||||
} |
||||
|
||||
// ref: 0x1001030D
|
||||
void TitleSnd_1001030D() { return; } |
||||
/* {
|
||||
dword_1002A594 = 0; |
||||
} */ |
||||
// 1002A594: using guessed type int (__stdcall *dword_1002A594)(_DWORD);
|
||||
void __cdecl TitleSnd_InitSoundFunc() |
||||
{ |
||||
gfnSoundFunction = 0; |
||||
} |
||||
|
||||
// ref: 0x10010315
|
||||
int (__stdcall *TitleSnd_10010315())(_DWORD) { return 0; } |
||||
/* {
|
||||
int (__stdcall *result)(_DWORD); // eax
|
||||
|
||||
result = dword_1002A594; |
||||
if ( dword_1002A594 ) |
||||
result = (int (__stdcall *)(_DWORD))dword_1002A594("sfx\\items\\titlemov.wav"); |
||||
return result; |
||||
} */ |
||||
// 1002A594: invalid function type has been ignored
|
||||
// 1002A594: using guessed type int (__stdcall *dword_1002A594)(_DWORD);
|
||||
void __cdecl TitleSnd_PlayMoveSound() |
||||
{ |
||||
if ( gfnSoundFunction ) |
||||
gfnSoundFunction("sfx\\items\\titlemov.wav"); |
||||
} |
||||
|
||||
// ref: 0x1001031F
|
||||
int (__stdcall *TitleSnd_1001031F())(_DWORD) { return 0; } |
||||
/* {
|
||||
int (__stdcall *result)(_DWORD); // eax
|
||||
|
||||
result = dword_1002A594; |
||||
if ( dword_1002A594 ) |
||||
result = (int (__stdcall *)(_DWORD))dword_1002A594("sfx\\items\\titlslct.wav"); |
||||
return result; |
||||
} */ |
||||
// 1002A594: using guessed type int (__stdcall *dword_1002A594)(_DWORD);
|
||||
void __cdecl TitleSnd_PlaySelectSound() |
||||
{ |
||||
if ( gfnSoundFunction ) |
||||
gfnSoundFunction("sfx\\items\\titlslct.wav"); |
||||
} |
||||
|
||||
// ref: 0x1001032E
|
||||
signed int TitleSnd_1001032E() { return 0; } |
||||
/* {
|
||||
signed int result; // eax
|
||||
|
||||
result = 2139095040; |
||||
dword_1002A590 = 2139095040; |
||||
return result; |
||||
} */ |
||||
// 1002A590: using guessed type int dword_1002A590;
|
||||
void __cdecl TitleSnd_cpp_init() |
||||
{ |
||||
titlesnd_cpp_float = titlesnd_cpp_float_value; |
||||
} |
||||
// 1001F480: using guessed type int titlesnd_cpp_float_value;
|
||||
// 1002A590: using guessed type int titlesnd_cpp_float;
|
||||
|
||||
Loading…
Reference in new issue