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_4a [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_4a [2024/08/13 11:17] (Version actuelle) – frater | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | ====== INT 0x21 - 0x4a - Resize Memory Block (DOS 2+) ====== | ||
| + | |||
| + | This function : | ||
| + | |||
| + | * modifies memory block allocated by [[back2root: | ||
| + | * can be used by program to shrink or increase the size of allocated memory | ||
| + | |||
| + | ===== Request/ | ||
| + | |||
| + | {{tablelayout? | ||
| + | ^ reg ^ value ^ descr ^ | ||
| + | | AH | ||
| + | | BX | ||
| + | | ES | ||
| + | |||
| + | ===== Return: ===== | ||
| + | |||
| + | ** CF is cleared if successful** | ||
| + | |||
| + | **CF is Set if error** | ||
| + | |||
| + | {{tablelayout? | ||
| + | ^ reg ^ descr ^ | ||
| + | | AX | Error Code (0x07, 0x08, 0x09) (See [[back2root: | ||
| + | | BX | maximum paragraphs available for specified memory block | | ||
| + | |||
| + | ===== Notes & Comments ===== | ||
| + | |||
| + | <WRAP round box> | ||
| + | * PC-DOS 2.1 and DOS 3.x will allocate the largest available block if CF is set. BX will equal the size allocated. | ||
| + | * under DOS 2.1-5.0, if there is insufficient memory to expand the block as much as requested, the block will be made as large as possible | ||
| + | * DOS 2.1-5.0 coalesces any free blocks immediately following the block to be resized | ||
| + | </ | ||
| + | |||
| + | [[start|Back]] | ||