blob: 6aebdc3d9e8817161950cd1689d2453448b8367e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
static void
InitMemoryTable(global_memory *GlobalMemory, memory *Memory, uint64 Size, memory_table_list TableName, char *Name) {
memory_table *Table = &Memory->Slot[TableName];
Table->Name = Name;
Table->Address = (uint64 *)GlobalMemory->Address + GlobalMemory->CurrentPosition;
Table->Size = Size;
GlobalMemory->CurrentPosition += Size;
}
static void*
AllocateMemory(memory *Memory, uint64 Size, memory_table_list TableName) {
void *Address;
memory_table *Table = &Memory->Slot[TableName];
Assert(Table->CurrentPosition + Size < Table->Size);
Address = (uint64 *)Table->Address + Table->CurrentPosition;
Table->CurrentPosition += Size;
return Address;
}
|