; Copyright 2002 Tematic 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. ; ; Structure of generic HAL devices, as described in Kernel.Docs.HAL.NewAPI OldOpt SETA {OPT} OPT OptNoList+OptNoP1List [ :LNOT: :DEF: Included_Hdr_HALDevice GBLL Included_Hdr_HALDevice Included_Hdr_HALDevice SETL {TRUE} ^ 0 HALDevice_Type # 2 HALDevice_ID # 2 HALDevice_Location # 4 HALDevice_Version # 4 HALDevice_Description # 4 HALDevice_Address # 4 # 12 HALDevice_Activate # 4 HALDevice_Deactivate # 4 HALDevice_Reset # 4 HALDevice_Sleep # 4 HALDevice_Device # 4 HALDevice_TestIRQ # 4 # 8 HALDeviceSize * :INDEX: @ HALDeviceType_Video * 1 :SHL: 8 ^ 1 HALDeviceVideo_VDU # 1 ; VDU display HALDeviceType_Audio * 2 :SHL: 8 ^ 1 HALDeviceAudio_PCM16 # 1 ; 16-bit PCM sound output HALDeviceType_SysPeri * 3 :SHL: 8 ^ 1 HALDeviceSysPeri_IntC # 1 ; Interrupt controller HALDeviceSysPeri_DMAC # 1 ; DMA controller HALDeviceSysPeri_DMAB # 1 ; DMA channel - buffer type HALDeviceSysPeri_DMAL # 1 ; DMA channel - list type HALDeviceType_Comms * 4 :SHL: 8 ^ 1 HALDeviceComms_UART # 1 ; UART HALDeviceBus_Pro * 0 :SHL: 28 ^ 0 HALDeviceProBus_Core # 1 :SHL: 24 HALDeviceProBus_CoPro # 1 :SHL: 24 HALDeviceBus_Sys * 1 :SHL: 28 ^ 0 HALDeviceSysBus_AHB # 1 :SHL: 24 HALDeviceSysBus_ASB # 1 :SHL: 24 HALDeviceBus_Peri * 2 :SHL: 28 ^ 0 HALDevicePeriBus_APB # 1 :SHL: 24 HALDeviceBus_Exp * 3 :SHL: 28 ^ 0 HALDeviceExpBus_Acorn # 1 :SHL: 24 HALDeviceExpBus_ISA # 1 :SHL: 24 HALDeviceExpBus_PCI # 1 :SHL: 24 ] OPT OldOpt END