This document describes the SWI calls provided by the DASupport module. It provides facilities to simplify the management of dynamic areas by external clients.
The module
s SWI chunk base is &50540, which has been allocated by Acorn, and so shouldn
t clash with other modules out there.
Changes
0.04 - Added DASupport_Fill.
0.03 - Altered DASupport_Claim: added ability to fill a newly created area with a particular word.
DASupport module (16th January 1998)
1_Plain
1_Plain
DASupport module (16th January 1998)
SWI calls
DASupport_Claim
Used to create a dynamic area.
On entry
R0 = size of area to create
bit 31 set means fill the area with the word in R2
pointer to ctrl-terminated name to use for are
word to fill area with (if bit 31 of R0 set)
On exit
R0 = 0 if area created successfully
1 if area not created
base address of area if R0 = 0.
All other registers preserved.
This SWI attempts to create a dynamic area of the specified size, giving it the name pointed to by R1
. Currently DASupport can manage up to 500 dynamic areas. If an attempt is made to create more, the error
DASupport cannot claim any more areas
will be reported.
If bit 31 of R0 is set, the area is filled with the word given in R2.
DASupport_Release
Used to remove a dynamic area.
On entry
R1 = base address of area to remove (as returned from DASupport_Claim)
On exit
R0 = 0 if area removed successfully
1 if area not removed
All other registers preserved.
This SWI removes a dynamic area created with DASupport_Claim.
DASupport_Fill
Used to fill an existing area.
On entry
R1 = base address of area to fill (as returned from DASupport_Claim)