Posted By: Keson (Keson) on 'CZprogram' Title: Re: PASCAL, $M a DOS Fn 4Ah + 48h + 49h Date: Thu Dec 19 17:05:50 1996 Ahoj, > No ... divil by ses. Existujou divny lidi (treba JA), kteri se v pascalu > odvazili napsat resident. No a moc rad bych vedel jak BEZ znalosti PSP jde > odinstalovat program ;-)) :-))))))))))))))))) Tak k te pameti: Ja jsem to obvykle resil spis tak, ze jsem pomoci $M nastavil minimalni pamet pro rozbehnuti a dalsi pamet jsem dle potreby alokoval /dealokoval pomoci fci 48H / 49H. ********************************************************************** * AH 48H * * BX requested amount of memory in paragraphs (16-byte chunks) * * ----------------------------------------------------------------- * * AX error code if CF is set to CY * * BX size of available RAM, in paragraphs (if allocation fails) * * AX segment address of allocated block (if no error) * ********************************************************************** * AH 49H * * ES segment address (paragraph) of allocated memory to release * * ----------------------------------------------------------------- * * AX error code if CF is set to CY * ********************************************************************** A k odinstalovani napriklad: PROCEDURE Uninstall; Far; VAR P,Q,R : Pointer; BEGIN GetIntVec(8,P); GetIntVec(9,Q); If (P = @NewInt8) And (Q = @NewInt9) Then Begin SetIntVec(8,@OldInt8); SetIntVec(9,@OldInt9); Asm mov AH,49h mov ES,PrefixSeg int 21h End; End; END; {Uninstall} Keson