Change la Taille d'un Bloc de Mémoire Linéaire [1.0]

Change la taille d'un bloc de mémoire precedemment alloué avec la fonction Alloue Bloc de Mémoire Linéaire(Int 31H Fonction 0504H).

Appel avec

AX = 0505H
ESI = handle du bloc de mémoire
ECX = nouvelle taille du bloc (octets, doit être non-nulle)
EDX = flags

BitSignification
00 = crée pages non engagées
1 = crée pages engagées
10 = ne met pas à jour les descripteurs
1 = mise à jour du descripteur requise
2-31reservé, doit être zéro
et, si le bit 1 de EDX est posé (=1):
ES:EBX = selecteur:offset d'un buffer contenant un tableau de selecteurs, 1 mot (16 bits) par selecteur
EDI = nombre de selecteurs dans le tableau

Retourne

si la fonction réussit
Carry flag = 0
EBX = nouvelle adresse linéaire du bloc de mémoire
ESI = nouveau handle du bloc de mémoire

si la fonction échoue
Carry flag = 1
AX = code d'erreur
8001Hfonction non supportée (hôte 16-bit)
8012Hmémoire linéaire indisponible
8013Hmémoire physique indisponible
8014Hbacking store indisponible
8016Hhandle indisponible
8021Hvaleur invalide (ECX = 0)
8023Hhandle invalide(in ESI)

Notes