Archy
Member

Posts: 646
Registered: 11-09 |
Quasar said:
The DOS exe won't allocate a zone heap larger than 8 MB, if I remember correctly. This can be expanded via hex hacking up to a bit short of 32 MB (space for the stack has to be left), but you need expert knowledge to do that hack on your own.
So, if assuming the default 8 MB heap, you then need to subtract away the amount of memory that is allocated for everything else in the game and what you're left with is the largest possible demo buffer.
The game usually has somewhere between 2 and 4 MB of non-purgable static allocations to load a small level such as E1M1 or MAP01. That would leave around 4 MB at max for demo buffering. Large levels, especially ones with lots of monsters, will cut this down dramatically.
Ahh that makes sense, but does that mean that if I do a "-maxdemo 8192" and 4 MB is already allocated, then the game will only record up to 4096 kilobytes? Or does that mean if 4 MB will be allocated, then the -maxdemo parameter will only except a value up to "4096"?
Also, myk, thanks for the hack.
|