Esempio n. 1
0
T_word32 FreeMemory(T_void)
{
#if defined(DOS32)
	T_word32 memInfo[12] ;

    union REGS regs ;
    struct SREGS sregs ;

    regs.x.eax = 0x500 ;
    memset(&sregs, 0, sizeof(sregs)) ;
    sregs.es = FP_SEG(memInfo) ;
    regs.x.edi = FP_OFF(memInfo) ;
    int386x(0x31, &regs, &regs, &sregs) ;

    return (memInfo[0] + _memavl()) ;
#else
    return 100000000; // TODO: don't really know
#endif
}
Esempio n. 2
0
    unsigned cdecl coreleft(void)
    {
      #ifdef __WATCOMC__

        struct _heapinfo entry;
        unsigned left;

        left=0;
        entry._pentry=NULL;

        while (1)
        {
          if (_heapwalk(&entry) != _HEAPOK)
            break;

          if (entry._useflag==_FREEENTRY)
            left += entry._size;
        }

        return (left);
      #else
        return (_memavl());
      #endif
    }