; Copyright 1996 Acorn Computers Ltd
;
; Licensed under the Apache License, Version 2.0 (the "License");
; you may not use this file except in compliance with the License.
; You may obtain a copy of the License at
;
;     http://www.apache.org/licenses/LICENSE-2.0
;
; Unless required by applicable law or agreed to in writing, software
; distributed under the License is distributed on an "AS IS" BASIS,
; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
; See the License for the specific language governing permissions and
; limitations under the License.
;
; > s.Memory

; Small veneer between AMBControl's memory block requirements and OS_Heap,
; using system heap. This is changed since Ursula - old code called OS_Module
; and claimed blocks from RMA, which is an anachronism since code is in
; the kernel.

;in:  r3=size
;out: r2 -> block, r0 corrupted
;
AMB_BlockClaim ROUT
        Push    "r1,r3,lr"
        BL      ClaimSysHeapNode
        Pull    "r1,r3,pc"

;in:  r2 -> block
;out: r0 corrupted
;
AMB_BlockFree ROUT
        Push    "r1,lr"
        BL      FreeSysHeapNode
        Pull    "r1,pc"


        END