; Copyright 2000 Pace Micro Technology plc ; ; 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. ; ; The layout of the HAL descriptor ^ 0 HALDesc_Flags # 4 HALDesc_Start # 4 HALDesc_Size # 4 HALDesc_Entries # 4 HALDesc_NumEntries # 4 HALDesc_Workspace # 4 HALDesc_size # 4 ; Entries to the HAL from the OS ^ 0 EntryNo_HAL_Init # 1 EntryNo_HAL_IRQEnable # 1 EntryNo_HAL_IRQDisable # 1 EntryNo_HAL_IRQClear # 1 EntryNo_HAL_IRQSource # 1 EntryNo_HAL_IRQStatus # 1 EntryNo_HAL_FIQEnable # 1 EntryNo_HAL_FIQDisable # 1 EntryNo_HAL_FIQDisableAll # 1 EntryNo_HAL_FIQClear # 1 EntryNo_HAL_FIQSource # 1 EntryNo_HAL_FIQStatus # 1 EntryNo_HAL_Timers # 1 EntryNo_HAL_TimerDevice # 1 EntryNo_HAL_TimerGranularity # 1 EntryNo_HAL_TimerMaxPeriod # 1 EntryNo_HAL_TimerSetPeriod # 1 EntryNo_HAL_TimerPeriod # 1 EntryNo_HAL_TimerReadCountdown # 1 EntryNo_HAL_CounterRate # 1 EntryNo_HAL_CounterPeriod # 1 EntryNo_HAL_CounterRead # 1 EntryNo_HAL_CounterDelay # 1 EntryNo_HAL_NVMemoryType # 1 EntryNo_HAL_NVMemorySize # 1 EntryNo_HAL_NVMemoryPageSize # 1 EntryNo_HAL_NVMemoryProtectedSize # 1 EntryNo_HAL_NVMemoryProtection # 1 EntryNo_HAL_NVMemoryIICAddress # 1 EntryNo_HAL_NVMemoryRead # 1 EntryNo_HAL_NVMemoryWrite # 1 EntryNo_HAL_IICBuses # 1 EntryNo_HAL_IICType # 1 EntryNo_HAL_IICSetLines # 1 EntryNo_HAL_IICReadLines # 1 EntryNo_HAL_IICDevice # 1 EntryNo_HAL_IICTransfer # 1 EntryNo_HAL_IICMonitorTransfer # 1 EntryNo_HAL_VideoFlybackDevice # 1 EntryNo_HAL_Video_SetMode # 1 EntryNo_HAL_Video_WritePaletteEntry # 1 EntryNo_HAL_Video_WritePaletteEntries # 1 EntryNo_HAL_Video_ReadPaletteEntry # 1 EntryNo_HAL_Video_SetInterlace # 1 EntryNo_HAL_Video_SetBlank # 1 EntryNo_HAL_Video_SetPowerSave # 1 EntryNo_HAL_Video_UpdatePointer # 1 EntryNo_HAL_Video_SetDAG # 1 EntryNo_HAL_Video_VetMode # 1 EntryNo_HAL_Video_PixelFormats # 1 EntryNo_HAL_Video_Features # 1 EntryNo_HAL_Video_BufferAlignment # 1 EntryNo_HAL_Video_OutputFormat # 1 EntryNo_HAL_MatrixColumns # 1 EntryNo_HAL_MatrixScan # 1 EntryNo_HAL_TouchscreenType # 1 EntryNo_HAL_TouchscreenRead # 1 EntryNo_HAL_TouchscreenMode # 1 EntryNo_HAL_TouchscreenMeasure # 1 EntryNo_HAL_MachineID # 1 ; ReadSysInfo 2 EntryNo_HAL_ControllerAddress # 1 ; Memory 9 EntryNo_HAL_HardwareInfo # 1 ; ReadSysInfo 2 EntryNo_HAL_SuperIOInfo # 1 ; ReadSysInfo 3 EntryNo_HAL_PlatformInfo # 1 ; ReadSysInfo 8 EntryNo_HAL_CleanerSpace # 1 EntryNo_HAL_UARTPorts # 1 EntryNo_HAL_UARTStartUp # 1 EntryNo_HAL_UARTShutdown # 1 EntryNo_HAL_UARTFeatures # 1 EntryNo_HAL_UARTReceiveByte # 1 EntryNo_HAL_UARTTransmitByte # 1 EntryNo_HAL_UARTLineStatus # 1 EntryNo_HAL_UARTInterruptEnable # 1 EntryNo_HAL_UARTRate # 1 EntryNo_HAL_UARTFormat # 1 EntryNo_HAL_UARTFIFOSize # 1 EntryNo_HAL_UARTFIFOClear # 1 EntryNo_HAL_UARTFIFOEnable # 1 EntryNo_HAL_UARTFIFOThreshold # 1 EntryNo_HAL_UARTInterruptID # 1 EntryNo_HAL_UARTBreak # 1 EntryNo_HAL_UARTModemControl # 1 EntryNo_HAL_UARTModemStatus # 1 EntryNo_HAL_UARTDevice # 1 EntryNo_HAL_Reset # 1 EntryNo_HAL_DebugRX # 1 EntryNo_HAL_DebugTX # 1 EntryNo_HAL_PCIFeatures # 1 EntryNo_HAL_PCIReadConfigByte # 1 EntryNo_HAL_PCIReadConfigHalfword # 1 EntryNo_HAL_PCIReadConfigWord # 1 EntryNo_HAL_PCIWriteConfigByte # 1 EntryNo_HAL_PCIWriteConfigHalfword # 1 EntryNo_HAL_PCIWriteConfigWord # 1 EntryNo_HAL_PCISpecialCycle # 1 EntryNo_HAL_PCISlotNumber # 1 EntryNo_HAL_PCIAddresses # 1 EntryNo_HAL_ATAControllerInfo # 1 EntryNo_HAL_ATASetModes # 1 EntryNo_HAL_ATACableID # 1 EntryNo_HAL_InitDevices # 1 ; Quick bodge until devices are working... EntryNo_HAL_DMA_Activate # 1 EntryNo_HAL_DMA_Deactivate # 1 EntryNo_HAL_DMA_Reset # 1 EntryNo_HAL_DMA_Sleep # 1 EntryNo_HAL_DMA_TestIRQ # 1 EntryNo_HAL_DMA_DMA_EnumeratePhysical # 1 EntryNo_HAL_DMA_DMA_EnumerateLogical # 1 EntryNo_HAL_DMA_DMA_Allocate # 1 EntryNo_HAL_DMA_DMA_Deallocate # 1 EntryNo_HAL_DMA_DMA_Features # 1 EntryNo_HAL_DMA_DMA_SetOptions # 1 EntryNo_HAL_DMA_DMA_SetCurrentTransfer # 1 EntryNo_HAL_DMA_DMA_SetNextTransfer # 1 EntryNo_HAL_DMA_DMA_TransferState # 1 EntryNo_HAL_DMA_DMA_SetCurrentTransfer2 # 1 EntryNo_HAL_DMA_DMA_SetNextTransfer2 # 1 EntryNo_HAL_DMA_DMA_TransferState2 # 1 EntryNo_HAL_DMA_DMA_IRQClear # 1 EntryNo_HAL_DMA_DMA_Status # 1 ; Various flags and constants ; NVMemory NVMemoryFlag_None * 0 NVMemoryFlag_MaybeIIC * 1 NVMemoryFlag_IIC * 2 NVMemoryFlag_HAL * 3 NVMemoryFlag_Provision * 7 ; mask for provision NVMemoryFlag_ProtectAtEnd * 1:SHL:8 ; Protected region at end NVMemoryFlag_Deprotectable * 1:SHL:9 NVMemoryFlag_LowRead * 1:SHL:10 ; locations 0-15 are readable NVMemoryFlag_LowWrite * 1:SHL:11 ; locations 0-15 are writeable ; IIC IICFlag_LowLevel * 1:SHL:0 IICFlag_HighLevel * 1:SHL:1 IICFlag_Background * 1:SHL:4 IICFlag_Fast * 1:SHL:16 IICFlag_HighSpeed * 1:SHL:17 END