Advertisement
LuigiBlood

objalloc.h

May 5th, 2019
305
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.17 KB | None | 0 0
  1. /* Original File Path: "C:\HAL\sysdolphin\src\libraries\baselib\objalloc.c" */
  2. /* 1764270 - TAG_compile_unit */
  3.  
  4. struct {                                                                                            /* 1764353 */
  5.     unsigned long           top;                        /* 0x00 */
  6.     unsigned long           cur;                        /* 0x04 */
  7.     unsigned long           size;                       /* 0x08 */
  8.     unsigned long           remain;                     /* 0x0C */
  9. } obj_heap;                                                                                         /* 17643ed */
  10.  
  11. struct _HSD_ObjAllocLink {                                                                          /* 1764413 */
  12.     struct _HSD_ObjAllocLink *  next;                   /* 0x00 */
  13. }
  14.  
  15. struct _HSD_ObjAllocData {                                                                          /* 1764463 */
  16.     unsigned long               num_limit_flag:1;       /* 0x00 */
  17.     unsigned long               heap_limit_flag:1;
  18.     struct _HSD_ObjAllocLink *  freehead;               /* 0x04 */
  19.     unsigned long               used;                   /* 0x08 */
  20.     unsigned long               free;                   /* 0x0C */
  21.     unsigned long               peak;                   /* 0x10 */
  22.     unsigned long               num_limit;              /* 0x14 */
  23.     unsigned long               heap_limit_size;        /* 0x18 */
  24.     unsigned long               heap_limit_num;         /* 0x1C */
  25.     unsigned long               size;                   /* 0x20 */
  26.     unsigned long               align;                  /* 0x24 */
  27.     struct _HSD_ObjAllocData *  next;                   /* 0x28 */
  28. }
  29.  
  30. struct _HSD_ObjAllocData *  alloc_datas;                                                            /* 1764677 */
  31.  
  32. void    AddAllocData(struct _HSD_ObjAllocData *data);                                               /* 17646a3 */
  33. void    DelAllocData(struct _HSD_ObjAllocData *data);                                               /* 17646f9 */
  34.  
  35. /* Heap */
  36.  
  37. void            HSD_ObjSetHeap(unsigned long size, void *ptr);                                      /* 1764772 */
  38. void            HSD_ObjGetHeap(unsigned long *size, void *ptr);                                     /* 17647e4 */
  39. unsigned long   HSD_ObjGetHeapSizeAlloc();                                                          /* 1764859 */
  40. unsigned long   HSD_ObjGetHeapSizeRemain();                                                         /* 17648db */
  41. unsigned long   HSD_ObjGetHeapSizeUsing();                                                          /* 1764918 */
  42. unsigned long   HSD_ObjGetHeapSizeFreed();                                                          /* 176499a */
  43.  
  44. /* Alloc */
  45.  
  46. int     HSD_ObjAllocAddFree(struct _HSD_ObjAllocData * data, unsigned long num);                    /* 1764a1c */
  47. void *  HSD_ObjAlloc(struct _HSD_ObjAllocData * data);                                              /* 1764b6b */
  48. void    HSD_ObjFree(struct _HSD_ObjAllocData * data, void * obj);                                   /* 1764be1 */
  49. void    HSD_ObjAllocInit(struct _HSD_ObjAllocData * data, unsigned long size, unsigned long align); /* 1764c71 */
  50. void    _HSD_ObjAllocForgetMemory();                                                                /* 1764d0c */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement