X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Flib%2F16_hc.h;h=2b77b5387bded0f3accca8fa00ecb9cc45165529;hb=0df3c2d5e81ce6a2f1d498b3107e1fd223e7af80;hp=d9f18c83572f267744c01b4cae6121154eb49cba;hpb=25dd42920069d35d6ae44c21b1222e63143c84e8;p=16.git diff --git a/src/lib/16_hc.h b/src/lib/16_hc.h index d9f18c83..2b77b538 100755 --- a/src/lib/16_hc.h +++ b/src/lib/16_hc.h @@ -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);