-=> Quoting Denis Boyles to Kevin Barrow <=-
DB> @MSGID: 1:153/290.0 32f939f6
KB> DB> TSR's PSP making DOS use that instead. Next the TSR's MCB is
`altered'
KB> DB> to reflect the size of memory being used. This was determined by the
KB> DB> `dummy' allocation call used at init.
KB>MCB? I know About the PSP and ENV but what is the MCB? and just how
DB> The (M)emory (C)ontrol (B)lock is a 16 byte data structure that DOS
DB> uses to control memory allocation. DOS uses the MCBs to keep track of
DB> the memory segments. This allows DOS to check available memory,
DB> allocate it, free it, etc. While the MCB is 16 bytes in size, only the
DB> first 5 bytes are actually used.
Half correct:
Format of memory control block:
Offset Size Description
00h BYTE block type: 5Ah if last block in chain, otherwise 4Dh
01h WORD PSP segment of owner, 0000h if free, 0008h if belongs to
DOS
03h WORD size of memory block in paragraphs
05h 3 BYTEs unused
---DOS 2.x,3.x---
08h 8 BYTEs unused
---DOS 4.x---
08h 8 BYTEs ASCII program name if PSP memory block, else garbage
null-terminated if less than 8 characters
Peter
... Situation Normal. Please Panic Accordingly.
--- GEcho 1.11+
---------------
* Origin: Nouveau BBS: ++31-36-5302153/5302156 (X75) (2:283/502)
|