xref: /reactos/subsystems/mvdm/ntvdm/bios/umamgr.h (revision c2c66aff)
1 /*
2  * COPYRIGHT:       GPLv2+ - See COPYING in the top level directory
3  * PROJECT:         ReactOS Virtual DOS Machine
4  * FILE:            subsystems/mvdm/ntvdm/bios/umamgr.h
5  * PURPOSE:         Upper Memory Area Manager
6  * PROGRAMMERS:     Hermes Belusca-Maito (hermes.belusca@sfr.fr)
7  */
8 
9 #ifndef _UMAMGR_H_
10 #define _UMAMGR_H_
11 
12 /* DEFINITIONS ****************************************************************/
13 
14 typedef enum
15 {
16     UMA_FREE = 0,   // Free RAM block
17     UMA_SYSTEM,     // System memory (eg. VGA memory, etc...)
18     UMA_ROM,        // ROM block
19     UMA_UMB,        // Upper memory block
20     UMA_VDD         // VDD-reserved block
21 } UMA_DESC_TYPE;
22 
23 /* FUNCTIONS ******************************************************************/
24 
25 BOOLEAN UmaDescReserve(IN OUT PUSHORT UmbSegment, IN OUT PUSHORT Size);
26 BOOLEAN UmaDescRelease(IN USHORT UmbSegment);
27 BOOLEAN UmaDescReallocate(IN USHORT UmbSegment, IN OUT PUSHORT Size);
28 
29 BOOLEAN UmaMgrInitialize(VOID);
30 VOID UmaMgrCleanup(VOID);
31 
32 #endif /* _UMAMGR_H_ */
33