; 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.
;
; -*- Mode: Assembler -*-
;* module header for shared C and RISCOS library module
;* Created 26-10-89 by IDJ
;
; 23-11-89  JSR  Moved version information into s.version
;
; Copyright (C) Acorn Computers Ltd., 1988.
;

                AREA |!!!Module$$Header|, CODE, READONLY

                GBLS ModuleName
ModuleName      SETS "SharedCLibrary"
                GBLS ModuleHelpName
ModuleHelpName  SETS "C Library"

; **************************************************************************

Lib_Init        * &80680
TAB             * 9
CR              * 13
ModuleFlag_32bit * 1

; *********************** Module code starts here *****************************

        IMPORT  |_Shared_Lib_Module_SWI_Code|
        IMPORT  |_Shared_Lib_Module_Init_Code|
        IMPORT  |_Shared_Lib_Module_Die_Code|

Code_ModuleBase
        DCD     Code_StartEntry   -Code_ModuleBase
        DCD     Code_InitEntry    -Code_ModuleBase
        DCD     Code_DieEntry     -Code_ModuleBase
        DCD     Code_ServiceEntry -Code_ModuleBase
        DCD     Code_TitleString  -Code_ModuleBase
        DCD     Code_HelpString   -Code_ModuleBase
        DCD     Code_CommandTable -Code_ModuleBase
        DCD     Lib_Init
        DCD     Code_SWICode      -Code_ModuleBase
        DCD     SWI_Table         -Code_ModuleBase
        DCD     0
        DCD     0
        DCD     Code_ModuleFlags  -Code_ModuleBase

Code_TitleString
        DCB     "$ModuleName", 0
SWI_Table
        DCB     "$ModuleName", 0
        DCB     "LibInitAPCS_A", 0
        DCB     "LibInitAPCS_R", 0
        DCB     "LibInitModule", 0
        DCB     "LibInitAPCS_32", 0
        DCB     "LibInitModuleAPCS_32", 0
        DCB     0

Code_HelpString
        DCB     "$ModuleHelpName"
        DCB     TAB
    [ :LEN: "$ModuleHelpName" < 8
        DCB     TAB
    ]
        GET     s.Version
        DCB     0
        ALIGN

Code_ModuleFlags
    [ {CONFIG}=26
        DCD     0
    |
        DCD     ModuleFlag_32bit
    ]

; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Code_StartEntry   * Code_ModuleBase
Code_CommandTable * Code_ModuleBase
Code_ServiceEntry * Code_ModuleBase

; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Code_InitEntry    B     |_Shared_Lib_Module_Init_Code|
Code_DieEntry     B     |_Shared_Lib_Module_Die_Code|
Code_SWICode      B     |_Shared_Lib_Module_SWI_Code|

        END