X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Flib%2F16_hc.h;h=96c3d4967f214e4779207fef5f1878782ddfeefd;hb=6021fc3f27b895d382fbd30488ead35657e39196;hp=d9f18c83572f267744c01b4cae6121154eb49cba;hpb=25dd42920069d35d6ae44c21b1222e63143c84e8;p=16.git diff --git a/src/lib/16_hc.h b/src/lib/16_hc.h index d9f18c83..96c3d496 100755 --- a/src/lib/16_hc.h +++ b/src/lib/16_hc.h @@ -1,5 +1,5 @@ /* Project 16 Source Code~ - * Copyright (C) 2012-2017 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover + * Copyright (C) 2012-2018 sparky4 & pngwen & andrius4669 & joncampbell123 & yakui-lover * * This file is part of Project 16. * @@ -20,7 +20,7 @@ * */ /* - heap test stuff + heap check */ #ifndef __16HC__ @@ -28,23 +28,36 @@ #include "src/lib/16_head.h" -//long HC_Newfarcoreleft(); -#ifdef __BORLANDC__ -void * HC_LargestFreeBlock(size_t* Size); -#endif +typedef struct heapusage +{ + unsigned long h_free, h_total, h_used; + int heap_status; +} hc_use_t; + #ifdef __WATCOMC__ -void __near* HC_LargestFreeBlock(size_t* Size); +#define NPTR __near +#endif + +#ifdef __BORLANDC__ +#define NPTR + +#define _HEAPBADBEGIN 2 /* heap header is corrupted */ +#define _HEAPBADNODE 3 /* heap entry is corrupted */ +#define _HEAPBADPTR 5 /* invalid heap entry pointer (_heapwalk) */ #endif + +//long HC_Newfarcoreleft(); +void NPTR* HC_LargestFreeBlock(size_t* Size); size_t HC_coreleft(void); -void far* HC_LargestFarFreeBlock(unsigned long* Size); +void far* HC_LargestFarFreeBlock(dword* Size); unsigned long HC_farcoreleft(void); //size_t HC_GetFreeSize(void); unsigned long HC_GetFarFreeSize(void); size_t HC_GetNearFreeSize(void); void HC_heapdump(global_game_variables_t *gvar); -void HCL_heapstat(global_game_variables_t *gvar, int heap_status, byte *str); -void HCL_heapstat0(int heap_status); +void HCL_heapstatLogWrite(global_game_variables_t *gvar, int heap_status, byte *str); +void HCL_heapstat(int heap_status); void HC_OpenDebug(global_game_variables_t *gvar); void HC_CloseDebug(global_game_variables_t *gvar);