;************************************************************** ;*** XMS0F.ASM *** ;*** *** ;*** function XMS_XmBlk.resizeXM( *** ;*** newSize: Word) *** ;*** : Boolean; *** ;*** *** ;*** Changes the size of an already allocated block. *** ;*** *** ;************************************************************** .model large,pascal include xmsdefs.asm extrn errno:WORD extrn xmsHandler:DWord ; ; Define entry point ; public XMS_XmBlk@resizeXM .code XMS_XmBlk@resizeXM proc newSize:Word, handle:Far Ptr Word les bx,handle mov dx,es:[bx] ; get handle mov bx,newSize ; new block size mov ah,XMSResizeXM ; Function code call xmsHandler ; call the guy or ax,ax ; AX=0 means error jz errorReturn mov ax,XMSErrOK ; No error ret errorReturn: mov al,bl ; Move error code to AL xor ah,ah ; Zero extend to 16 bits mov errno,ax ; Copy to errno ret XMS_XmBlk@resizeXM endp ; end of procedure end