Rev 211 | Rev 213 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 211 | Rev 212 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | HEAP_BASE equ 0x01000000 |
1 | HEAP_BASE equ 0x00C00000 |
2 | ;HEAP_SIZE equ 0x01000000 |
2 | ;HEAP_SIZE equ 0x01000000 |
Line 3... | Line 3... | ||
3 | 3 | ||
4 | struc MEM_BLOCK |
4 | struc MEM_BLOCK |
5 | { .next_block dd ? |
5 | { .next_block dd ? |
Line 124... | Line 124... | ||
124 | mov [ebx+list_next], eax |
124 | mov [ebx+list_next], eax |
125 | mov [ebx+block_base], HEAP_BASE+4096*MEM_BLOCK_SIZE |
125 | mov [ebx+block_base], HEAP_BASE+4096*MEM_BLOCK_SIZE |
126 | 126 | ||
Line 127... | Line 127... | ||
127 | mov ecx, [MEM_AMOUNT] |
127 | mov ecx, [MEM_AMOUNT] |
128 | sub ecx, 0x01000000 + 4096*MEM_BLOCK_SIZE |
128 | sub ecx, HEAP_BASE + 4096*MEM_BLOCK_SIZE |
129 | mov [heap_size], ecx |
129 | mov [heap_size], ecx |
130 | mov [heap_free], ecx |
130 | mov [heap_free], ecx |
131 | mov [ebx+block_size], ecx |
131 | mov [ebx+block_size], ecx |
132 | mov [ebx+block_flags], FREE_BLOCK |
132 | mov [ebx+block_flags], FREE_BLOCK |