; Copyright 2008 Castle Technology 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.
;
; This header file is autogenerated from the files maintained by the
; RISC OS allocations manager and should not be edited by anyone else.

        SUBT    Service call info. => &.Hdr.Services

OldOpt  SETA    {OPT}
        OPT     OptNoList+OptNoP1List

; <<<search marker>>>

; +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; All the service call reason codes

; Name                   Value Beeb Elk  Mast Arc  Description
; ====                  * === ;    ;    ;    ;    ;
;-------------------------------------------------------------------------------
Service_Serviced        * &00 ; X  ; X  ; X  ; X  ; Terminates processing
Service_Static0E00      * &01 ; X  ; X  ; X  ;    ; Claim space at &E00
Service_Dynamic0E00     * &02 ; X  ; X  ; X  ;    ; Dynamic space above &E00
Service_AutoBoot        * &03 ; X  ; X  ; X  ;    ; Cause filing system to boot
Service_UKCommand       * &04 ; X  ; X  ; X  ; X  ; Do you know what this is??
Service_UnknownIRQ      * &05 ; X  ; X  ; X  ;    ; Process IRQ
Service_Error           * &06 ; X  ; X  ; X  ; X  ; A 'BRK' has occured, use ErrorV on Archimedes
Service_UKByte          * &07 ; X  ; X  ; X  ; X  ; Unknown OSBYTEs go thru here
Service_UKWord          * &08 ; X  ; X  ; X  ; X  ; Unknown OSWORDs go thru here
Service_Help            * &09 ; X  ; X  ; X  ; X  ; Issued at the start of the *Help
Service_Claim0E00       * &0A ; X  ; X  ; X  ;    ; Claim the use of space at &E00
Service_ReleaseFIQ      * &0B ; X  ; X  ; X  ; X  ;
Service_ClaimFIQ        * &0C ; X  ; X  ; X  ; X  ; May only be issued from foreground !
Service_StartROMFS      * &0D ; X  ; X  ; X  ;    ; Initialise ROM filing system
Service_ROMFSGetByte    * &0E ; X  ; X  ; X  ;    ; ROM filing system get byte
Service_ClaimFSVectors  * &0F ; X  ; X  ; X  ;    ; A new FS has claimed the vectors
Service_CloseSpoolExec  * &10 ; X  ; X  ; X  ;    ; Closeure warning for Spool/Exec files
Service_Memory          * &11 ; X  ; X  ; X  ; X  ; Font change, Memory movement
Service_StartUpFS       * &12 ; X  ; X  ; X  ; X  ;
Service_RS423Char       * &13 ;    ; X  ;    ;    ; Character written to RS423 buffer
Service_PrinterChar     * &14 ;    ; X  ;    ;    ; Character written to printer buffer
Service_PollingInterupt * &15 ;    ; X  ; X  ;    ; Offered every centi-second
Service_ExternalBell    * &16 ;    ; X  ;    ;    ; Offer the bell to external sound
Service_ExternalPurge   * &17 ;    ; X  ;    ;    ; Purge external sound buffers
Service_Post_Help       * &18 ;    ;    ; X  ; X  ; Passed round at the end of the *Help code

Service_StaticC000      * &21 ;    ;    ; X  ;    ; Static space claim at &C000
Service_DynamicC000     * &22 ;    ;    ; X  ;    ; Dynamic workspace claim, above &C000
Service_InformTopOfC000 * &23 ;    ;    ; X  ;    ; Inform top of &C000 static space
Service_TestDynamicC000 * &24 ;    ;    ; X  ;    ; Dynamic space test
Service_InformFilingSys * &25 ;    ;    ; X  ;    ; Return filing system name, handles, and number
Service_ShutAllFiles    * &26 ;    ;    ; X  ;    ; Shut all files, in response to *Shut
Service_Reset           * &27 ;    ;    ; X  ; X  ;
Service_UKConfig        * &28 ;    ;    ; X  ; X  ;
Service_UKStatus        * &29 ;    ;    ; X  ; X  ;
Service_NewApplication  * &2A ;    ;    ; X  ; X  ; Passed round before application/language is loaded/run
Service_DisplayBanner   * &2B ;    ;    ; X  ;    ; Display startup banner
Service_CumanaBackup    * &2C ;    ;    ; X  ;    ; Cumana removable cartidge drive

Service_BondIntKboard1  * &30 ;    ;    ; X  ;    ; Indirected international keyboard service (Internat'nl PRB/COM)
Service_BondIntKboard2  * &31 ;    ;    ; X  ;    ; Reserved for Paul Bond

Service_Tube            * &FE ; X  ; X  ; X  ; X  ; Means "Tube changing state"
Service_TubeMainInit    * &FF ; X  ; X  ; X  ;    ;

; RISC OS specific ones

Service_FSRedeclare                     * &40   ; Add yourselves as Filing Systems again please
Service_Print                           * &41   ; Printer Driver is being turned on/off (R2=0/1)
Service_LookupFileType                  * &42   ; Do you know this file type ?
Service_International                   * &43   ; Translate country/alphabet numbers/names or define set of chars
Service_KeyHandler                      * &44   ; Offered when keyboard id ascertained
Service_PreReset                        * &45   ; Offered after pressing the 'Break Key'
Service_ModeChange                      * &46   ; Offered after a screen MODE change
Service_ClaimFIQinBackground            * &47   ; Claim if you are FIQ owner and can release FIQ straight away.
Service_ReAllocatePorts                 * &48   ; Econet is being started up again
Service_StartWimp                       * &49   ;
Service_StartedWimp                     * &4A   ;
Service_StartFiler                      * &4B   ;
Service_StartedFiler                    * &4C   ;
Service_PreModeChange                   * &4D   ; Offered before mode changes, if claimed then returns if R0=0, else R0 -> error block
Service_MemoryMoved                     * &4E   ; Offered at end of ChangeDynamic
Service_FilerDying                      * &4F   ;
Service_ModeExtension                   * &50   ; To allow soft modes
Service_ModeTranslation                 * &51   ; For unknown monitor types
Service_MouseTrap                       * &52   ; For non-click mouse warnings
Service_WimpCloseDown                   * &53   ; for trapping Wimp_CloseDown calls
Service_Sound                           * &54   ; Something's happening ... sub-rc's in Hdr.Sound
Service_NetFS                           * &55   ; Either a *Logon or a *Bye has happened, or NetFS has started
Service_EconetDying                     * &56   ; Econet is leaving Abandon all Tx/RxCBs
Service_WimpReportError                 * &57   ; Wimp is opening/closing a ReportError window
Service_MIDI                            * &58   ; MIDI is initialising or dying. Sub reason codes in Hdr.MIDI
Service_ResourceFSStarted               * &59   ; comes after ResourceFSStarting (for clients)
Service_ResourceFSDying                 * &5A   ; when ResourceFS is killed / reloaded
Service_CalibrationChanged              * &5B   ; when the calibration for the screen is changed
Service_WimpSaveDesktop                 * &5C   ; when a save desktop to file is requested by the user
Service_WimpPalette                     * &5D   ; on every Wimp_SetPalette
Service_MessageFileClosed               * &5E   ; from MessageTrans module
Service_NetFSDying                      * &5F   ; NetFS is going to heaven, interceptors beware!
Service_ResourceFSStarting              * &60   ; when ResourceFS is reloaded / reinited
Service_NFS                             * &61   ; when NFS has mounted/dismounted or just loaded
Service_DBoxModuleDying                 * &62   ; when the DBox module is rmkilled or succesfully tidied
Service_DBoxModuleStarting              * &63   ; when the DBox module is rmloaded or reinitted
Service_TerritoryManagerLoaded          * &64   ; when the territory manager is rmloaded or reinitted
Service_PDriverStarting                 * &65   ; when the PDriver sharer module starts up
Service_PDumperStarting                 * &66   ; when the PDumper module starts up
Service_PDumperDying                    * &67   ; when the PDumper module dies
Service_CloseFile                       * &68   ; when somebody wants to open a file (eg FileSwitch or PCEmulator)
Service_IdentifyDisc                    * &69   ; when FileCore wants a disc format to be identified
Service_EnumerateFormats                * &6A   ; when ADFSFiler wants some format submenu entries
Service_IdentifyFormat                  * &6B   ; when ADFS wishes to identify a format identifier from a *format command
Service_DisplayFormatHelp               * &6C   ; when ADFS wishes to display the list of available formats
Service_ValidateAddress                 * &6D   ; when OS_ValidateAddress called with an apparently invalid address range
Service_FontsChanged                    * &6E   ; when Font_ListFonts/Font_FindFont detects new Font$Path
Service_BufferStarting                  * &6F   ; when Buffer manager installed (RMReinited, etc..).
Service_DeviceFSStarting                * &70   ; when devices to register with DeviceFS.
Service_DeviceFSDying                   * &71   ; when DeviceFS is dying.
Service_SwitchingOutputToSprite         * &72   ; when output switched to sprite or sprite mask or screen (inc. on mode change)
Service_PostInit                        * &73   ; called after all modules have been initialised
Service_BASICHelp                       * &74   ; called before printing BASIC help text ( r2 = Token).
Service_TerritoryStarted                * &75   ; called when a new territory is starting
Service_MonitorLeadTranslation          * &76   ; to translate a monitor lead ID to a default monitortype, mode and sync
Service_SerialDevice                    * &77   ; Passing of serial device handle (in r0) to all support module.
Service_PDriverGetMessages              * &78   ; Get printer driver modules common Messages file info.
Service_DeviceDead                      * &79   ; Device has been killed by DeviceFS, r0 =0, r2 =handle / =0 if all.
Service_ScreenBlanked                   * &7A   ; Screen blanked by screen blanker.
Service_ScreenRestored                  * &7B   ; Screen restored by screen blanker.
Service_DesktopWelcome                  * &7C   ; Desktop about to start, display welcome message.
Service_DiscDismounted                  * &7D   ; Disc has just been dismounted - close your viewers etc.
Service_ShutDown                        * &7E   ; Switcher is shutting down.
Service_PDriverChanged                  * &7F   ; PDriver has changed via PDriver_SelectDriver.
Service_ShutDownComplete                * &80   ; Switcher has completed the shutdown.
Service_DeviceFSCloseRequest            * &81   ; Opening a device which already has maximum number of streams open
Service_InvalidateCache                 * &82   ; ColourTrans has invalidated its cache
Service_ProtocolDying                   * &83   ; Tells the world that a protocol is dying
Service_FindNetworkDriver               * &84   ; Issued when a protocol module is looking for device drivers
Service_WimpSpritesMoved                * &85   ; Window Managers sprite areas have moved.
Service_WimpRegisterFilters             * &86   ; Window Manager has defaulted the filter owners.
Service_FilterManagerInstalled          * &87   ; Please register with the Filter Manager now
Service_FilterManagerDying              * &88   ; Filter Manager has just disappeared
Service_ModeChanging                    * &89   ; Issued after Service_PreModeChange when a mode change is inevitable
Service_Portable                        * &8A   ; Issued when various bits of power are removed or applied
Service_NetworkDriverStatus             * &8B   ; Issued when various driver modules startup or die
Service_SyntaxError                     * &8C   ; Issued by OS_CLI if syntax incorrect - for internationalisation
Service_EnumerateScreenModes            * &8D   ; Enumerate which screen modes are available
Service_PagesUnsafe                     * &8E   ; Physical memory pages are moving
Service_PagesSafe                       * &8F   ; Physical memory pages have moved
Service_DynamicAreaCreate               * &90   ; Dynamic area just created
Service_DynamicAreaRemove               * &91   ; Dynamic area just removed
Service_DynamicAreaRenumber             * &92   ; Dynamic area just renumbered
Service_ColourPickerLoaded              * &93   ; when the colour picker is rmloaded or reinitted
Service_ModeFileChanged                 * &94   ; when a new mode description file is loaded
Service_FreewayStarting                 * &95   ; Freeway starting
Service_FreewayTerminating              * &96   ; Freeway terminating
Service_ShareDStarting                  * &97   ; ShareD starting
Service_ShareDTerminating               * &98   ; ShareD terminating
Service_ModulePostInitialisation        * &99   ; Notification that a Module has just started
Service_ModulePreFinalisation           * &9A   ; Notification that a Module is about to die
Service_EnumerateNetworkDrivers         * &9B   ; Enumaration of network drivers
Service_PCMCIA                          * &9C   ; PCMCIA system parts are starting and/or terminating
Service_DCIDriverStatus                 * &9D   ; Issued when DCI 4 driver modules startup or die
Service_DCIFrameTypeFree                * &9E   ; Issued by DCI 4 driver modules when a frame type is relinquished
Service_DCIProtocolStatus               * &9F   ; Issued when DCI 4 protocol modules startup or die
Service_MbufManagerStatus               * &A2   ; ANT Ltd. / Acorn (DCI 4)
Service_SamplerSupport                  * &A3   ; Jonathan Allin
Service_AccessLockKey                   * &A4   ; Issued when 'Access Lock' key pressed on Stork
Service_RedrawManagerInstalled          * &A5   ; ART kb
Service_RedrawManagerDying              * &A6   ; ART kb
Service_URI                             * &A7   ; ART rce
Service_NCDialUIStatus                  * &A8   ; ANC ol
Service_ScreenBlanking                  * &A9   ; ANC ol
Service_IRDirectorStarting              * &AA   ; ANC cb
Service_Standby                         * &AD   ; ANC Steve Cormie
Service_NCAccessManager                 * &AE   ; ANC Ant Skelton
Service_InternetStatus                  * &B0   ; Issued by Internet module when address is configured
Service_Sleeping                        * &B1   ; Online Media Set-Top Box
Service_TimeShare                       * &B2   ; Alan Glover, Acorn, for SkyNet
Service_CDNewDrivePoll                  * &B3   ; Timothy Roddis, Acorn, for CDFS
Service_Dialler                         * &B4   ; ART Dialler
Service_UnknownPlatformFeature          * &B5   ; ART WTurner
Service_CountATAPIDevices               * &B6   ; ART MChallis
Service_UKCompression                   * &B7   ; ART WTurner
Service_CacheManager                    * &B8   ; ART TRoddis
Service_ModulePreInit                   * &B9   ; ART MStephens
Service_NCRegistry                      * &BA   ; ANC Ant Skelton
Service_SCTransportStarting             * &BB   ; ANC Rich Buckley
Service_NCRegistrySupport               * &BC   ; ANC Ant Skelton
Service_MachineAddress                  * &BD   ; ANC Steve Cormie
Service_CSFSStarting                    * &BE   ; ANC Rich Buckley
Service_JavaStarting                    * &BF   ; ANC Piers Wombwell
Service_PPPTimingOut                    * &C0   ; ART Ben Laughton
Service_IRDirector                      * &C1   ; Chris Berry
Service_PortMan                         * &C2   ; Neil Turton
Service_PCI                             * &C3   ; William Turner
Service_Diallerb                        * &C4   ; Ben Laughton
Service_ManagedAccess                   * &C5   ; Ant Skelton
Service_MIDIMgr                         * &C6   ; Tim Roddis
Service_MPEGControlStarting             * &C7   ; Tim Dobson
Service_IME                             * &C8   ; Andrew Hodgkinson
Service_SVBmip                          * &C9   ; Steve Revill
Service_VideoControl                    * &CA   ; Andrew Hodgkinson
Service_VideoControl_ProtocolModule     * &CB   ; Andrew Hodgkinson
Service_NCMA				* &D1	; Pace
Service_USB				* &D2	; Pace
Service_PRISM_Core			* &D3	; Pace
Service_ConfigUpdate			* &D4	; Pace
Service_PRISM_Client			* &D5	; Pace
Service_Hardware			* &D9	; RO5
Service_ModulePostInit			* &DA	; RO5
Service_ModulePostFinal			* &DB	; RO5
Service_NVRAM                           * &E0   ; Steve Cormie (This used to be isolated, but allocations have now caught up)

; Alias (should not be used)

Service_PDriverGetSharedMessagesFile * Service_PDriverGetMessages


; International service sub-reason codes

Inter_CNaToCNo  * 0
Inter_ANaToANo  * 1
Inter_CNoToCNa  * 2
Inter_ANoToANa  * 3
Inter_CNoToANo  * 4
Inter_Define    * 5
Inter_Keyboard  * 6
Inter_DefineUCS * 7
Inter_UCSTable  * 8
Inter_Highest   * 9             ; highest reason code +1

; Sub-reason codes (in r2) for Service_Portable

ServicePortable_PowerDown       *       0       ; Power about to be removed from some ports
ServicePortable_PowerUp         *       1       ; Power has been reapplied to some ports
ServicePortable_TidyUp          *       2       ; Issued by Econet if it can't powerdown due to outstanding RxCBs
ServicePortable_Freeze          *       3       ; Issued on entry to SWI Portable_Stop
ServicePortable_Unfreeze        *       4       ; Issued on exit from SWI Portable_Stop
ServicePortable_FreezeRequest   *       5       ; Preceedes ServicePortable_Freeze

                                ^       &10800  ; ADFS Service calls
Service_ADFSPodule              #       1       ; &10800 locates ST506 podule
Service_ADFSPoduleIDE           #       1       ; &10801 locates IDE podule
Service_ADFSPoduleIDEDying      #       1       ; &10802 tells ADFS podule is dying

                                ^       &20100  ; SCSIDriver Service calls
SCSIDriverService               #       64

                                ^       &400c0
Service_ErrorStarting           #       1       ; new wimp error extension system
Service_ErrorButtonPressed      #       1
Service_ErrorEnding             #       1

                                ^       &40100
Service_CM_State_PreSleep       #       1
Service_CM_State_PostWake       #       1

                                ^       &40200
Service_NetPrintCheckD1         #       1       ; Used to find the SJ printer server


                                ^       &41200  ; Internet/Networking Service calls
Service_Internet                #       1       ; &41200 tells the world that Internet is dying

                                ^       &41580  ; Acorn TIP Service calls
Service_FindProtocols           #       1       ; &41580    Called to find which protocols are available
Service_FindProtocolsEnd        #       1       ; &41581    Called when all protocols have been found.
Service_ProtocolNameToNumber    #       1       ; &41582    Called to convert a protocol name to its SWI base.

                                ^       &44EC0  ; Aquarius Toolbox services
Service_ToolboxUnused           #       1       ; &44EC0
Service_ToolboxStarting         #       1       ; &44EC1
Service_ToolboxTaskBorn         #       1       ; &44EC2
Service_ToolboxTaskDied         #       1       ; &44EC3
Service_ToolboxDying            #       1       ; &44EC4
Service_WindowDeleted           #       1       ; &44EC5

				^	&4D480  ; ModeFiles
Service_SafeAreaChanged		#	1	; &4D480


; Third party services start at &80000 and they get 64 each

                                ^       &80000

                                ^       &80540
AcornProtocols                  #       64      ; &80540, ART rce

                                ^       &82880  ; Aquarius Window services
Service_WindowModuleUnused      #       1       ; &82880
Service_WindowModuleStarting    #       1       ; &82881
Service_WindowModuleDying       #       1       ; &82882
Service_GadgetRegistered        #       1       ; &82883
Service_GadgetDeregistered      #       1       ; &82884

                                ^       &83E00
URLModuleService                #       64      ; &83E00, Acorn, Stewart Brodie

        OPT     OldOpt
        END