Entry | |
---|---|
R0 | Territory number |
R1 | Pointer to table of entry points |
R2 | Value of R12 on entry to territory |
Exit | |
---|---|
R0 | Preserved |
R1 | Preserved |
R2 | Preserved |
The purpose of this call is to add the given territory to the list of active territories.
This call adds the given territory to the list of active territories, making it available for application programs.
A territory module must issue this call from its initialisation entry point when it is initialised, and whenever it receives the service call Service_TerritoryManagerLoaded.
The table pointed to by R1 should contain 43 entries, each of which is a pointer to code to handle one of the SWIs that – although in the territory manager SWI chunk – are actually handled by a territory module. The first entry corresponds to the SWI &4304A, the second to SWI &4304B, and so on through to the last entry which is for SWI &43074.
Note that SWIs &43075 to &4307F in the Territory manager do not have any corresponding entry points in the table. They are therefore only suitable for functionality which can be implemented by calling the other entry points, or for management functions like Territory_Select.
Some of these SWI numbers (currently from &43064 to &43074) are reserved for future expansion and so territory modules cannot implement them. You must nevertheless provide code for each of these entry points, which must return error &43040 with the text ‘Unknown Territory SWI’ or a suitable translation. You must not just return without error, as there would then be no way for a future Territory manager to tell whether your territory module supports any new entry points which have come into use.