Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
back2root:ibm-pc-ms-dos:interrupts:int_21:int_21_48 [2023/01/10 11:55] – supprimée - modification externe (Unknown date) 127.0.0.1 | back2root:ibm-pc-ms-dos:interrupts:int_21:int_21_48 [2023/01/16 17:54] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== INT 0x21 - 0x48 - Allocate Memory ====== | ||
+ | |||
+ | ===== Request/ | ||
+ | |||
+ | {{tablelayout? | ||
+ | ^ reg ^ value ^ descr ^ | ||
+ | | AH | ||
+ | | BX | ||
+ | |||
+ | ===== Return: ===== | ||
+ | |||
+ | * CF set if error | ||
+ | * CF cleared if successful | ||
+ | |||
+ | {{tablelayout? | ||
+ | ^ reg ^ | ||
+ | | AX | Segment address of allocated memory block (MCB + 1para)\\ error code if CF is set (see [[back2root: | ||
+ | | BX | size in paras of the largest block of memory available if CF set, and AX = 08 (Not Enough Mem) | | ||
+ | |||
+ | ===== Notes & Comments ===== | ||
+ | |||
+ | <WRAP round box> | ||
+ | * returns segment address of allocated memory block AX:0000 | ||
+ | * each allocation requires a 16 byte overhead for the MCB | ||
+ | * returns maximum block size available if error | ||
+ | </ | ||
+ | |||
+ | [[start|Back]] | ||