OS_Fma, Find Memory for Allocation

Register parameters

RST 20H, DEFW $C406
	  A = options
        A7 = even bank needed (for segment 0 allocation)
        A6 = fixed memory requested (no subject to swapping)
        A5 = from any slot
		A4 = any offset (generated and returned by call)
        A0-A1 = slot number if A5=0

      H = page offset ($00-$3F; $00 if A4 option set)
      L = number of pages wanted (1 to 64)

OUT:  Fc = 0
         L = 0, always 
         Available memory found at pointer BHL
      Fc = 1, A = RC_Room if not enough space in slot(s)

Registers changed after return:
     ....DEH./IXIY same
     AFBC...L/.... different


This call tells application in which bank the explicit memory area requested is free for allocation. Refer to explicit memory allocation for further informations. This system call is only available in OZ release V4.6 and newer.

Related calls

OS_Axm, Allocate explicit memory
Axp, Allocate explicit page
OS_Bix, Bind in extended address 
OS_Box, Restore bindings after OS_Bix 
OS_Fc, Select fast code (fast bank switching)  
OS_Fxm, Free explicit memory   
OS_Mal, Allocate memory
OS_Mcl, Close memory (free memory pool) 
OS_Mfr, Free (previously allocated block) memory 
OS_Mgb, Get current bank binding in segment 
OS_Mop, Open memory (allocate memory pool) 
OS_Mpb, Set new bank binding in segment
OZ_Mgb, Get current bank binding in segment
OZ_Mpb, Set new bank binding in segment

web analytics