17 #define __attribute__(x) 65 #define ARCBIOS_STDIN 0 66 #define ARCBIOS_STDOUT 1 68 #define ARCBIOS_PAGESIZE 4096 71 #define ARCBIOS_ESUCCESS 0 72 #define ARCBIOS_E2BIG 1 73 #define ARCBIOS_EACCES 2 74 #define ARCBIOS_EAGAIN 3 75 #define ARCBIOS_EBADF 4 76 #define ARCBIOS_EBUSY 5 77 #define ARCBIOS_EFAULT 6 78 #define ARCBIOS_EINVAL 7 80 #define ARCBIOS_EISDIR 9 81 #define ARCBIOS_EMFILE 10 82 #define ARCBIOS_EMLINK 11 83 #define ARCBIOS_ENAMETOOLONG 12 84 #define ARCBIOS_ENODEV 13 85 #define ARCBIOS_ENOENT 14 86 #define ARCBIOS_ENOEXEC 15 87 #define ARCBIOS_ENOMEM 16 88 #define ARCBIOS_ENOSPC 17 89 #define ARCBIOS_ENOTDIR 18 90 #define ARCBIOS_ENOTTY 19 91 #define ARCBIOS_ENXIO 20 92 #define ARCBIOS_EROFS 21 94 #define ARCBIOS_EADDRNOTAVAIL 31 95 #define ARCBIOS_ETIMEDOUT 32 96 #define ARCBIOS_ECONNABORTED 33 97 #define ARCBIOS_ENOCONNECT 34 149 #define ARCBIOS_SPB_SIGNATURE 0x53435241 150 #define ARCBIOS_SPB_SIGNATURE_1 0x41524353 188 #define COMPONENT_CLASS_SystemClass 0 189 #define COMPONENT_CLASS_ProcessorClass 1 190 #define COMPONENT_CLASS_CacheClass 2 191 #define COMPONENT_CLASS_MemoryClass 3 192 #define COMPONENT_CLASS_AdapterClass 4 193 #define COMPONENT_CLASS_ControllerClass 5 194 #define COMPONENT_CLASS_PeripheralClass 6 197 #define COMPONENT_CLASS_SystemClass 0 198 #define COMPONENT_CLASS_ProcessorClass 1 199 #define COMPONENT_CLASS_CacheClass 2 200 #define COMPONENT_CLASS_AdapterClass 3 201 #define COMPONENT_CLASS_ControllerClass 4 202 #define COMPONENT_CLASS_PeripheralClass 5 203 #define COMPONENT_CLASS_MemoryClass 6 209 #define COMPONENT_TYPE_ARC 0 212 #define COMPONENT_TYPE_CPU 1 213 #define COMPONENT_TYPE_FPU 2 216 #define COMPONENT_TYPE_PrimaryICache 3 217 #define COMPONENT_TYPE_PrimaryDCache 4 218 #define COMPONENT_TYPE_SecondaryICache 5 219 #define COMPONENT_TYPE_SecondaryDCache 6 220 #define COMPONENT_TYPE_SecondaryCache 7 223 #define COMPONENT_TYPE_MemoryUnit 8 226 #define COMPONENT_TYPE_EISAAdapter 9 227 #define COMPONENT_TYPE_TCAdapter 10 228 #define COMPONENT_TYPE_SCSIAdapter 11 229 #define COMPONENT_TYPE_DTIAdapter 12 230 #define COMPONENT_TYPE_MultiFunctionAdapter 13 233 #define COMPONENT_TYPE_DiskController 14 234 #define COMPONENT_TYPE_TapeController 15 235 #define COMPONENT_TYPE_CDROMController 16 236 #define COMPONENT_TYPE_WORMController 17 237 #define COMPONENT_TYPE_SerialController 18 238 #define COMPONENT_TYPE_NetworkController 19 239 #define COMPONENT_TYPE_DisplayController 20 240 #define COMPONENT_TYPE_ParallelController 21 241 #define COMPONENT_TYPE_PointerController 22 242 #define COMPONENT_TYPE_KeyboardController 23 243 #define COMPONENT_TYPE_AudioController 24 244 #define COMPONENT_TYPE_OtherController 25 247 #define COMPONENT_TYPE_DiskPeripheral 26 248 #define COMPONENT_TYPE_FloppyDiskPeripheral 27 249 #define COMPONENT_TYPE_TapePeripheral 28 250 #define COMPONENT_TYPE_ModemPeripheral 29 251 #define COMPONENT_TYPE_MonitorPeripheral 30 252 #define COMPONENT_TYPE_PrinterPeripheral 31 253 #define COMPONENT_TYPE_PointerPeripheral 32 254 #define COMPONENT_TYPE_KeyboardPeripheral 33 255 #define COMPONENT_TYPE_TerminalPeripheral 34 256 #define COMPONENT_TYPE_LinePeripheral 35 257 #define COMPONENT_TYPE_NetworkPeripheral 36 258 #define COMPONENT_TYPE_OtherPeripheral 37 261 #define COMPONENT_TYPE_ARC 0 264 #define COMPONENT_TYPE_CPU 1 265 #define COMPONENT_TYPE_FPU 2 268 #define COMPONENT_TYPE_PrimaryICache 3 269 #define COMPONENT_TYPE_PrimaryDCache 4 270 #define COMPONENT_TYPE_SecondaryICache 5 271 #define COMPONENT_TYPE_SecondaryDCache 6 272 #define COMPONENT_TYPE_SecondaryCache 7 275 #define COMPONENT_TYPE_EISAAdapter 8 276 #define COMPONENT_TYPE_TCAdapter 9 277 #define COMPONENT_TYPE_SCSIAdapter 10 278 #define COMPONENT_TYPE_DTIAdapter 11 279 #define COMPONENT_TYPE_MultiFunctionAdapter 12 282 #define COMPONENT_TYPE_DiskController 13 283 #define COMPONENT_TYPE_TapeController 14 284 #define COMPONENT_TYPE_CDROMController 15 285 #define COMPONENT_TYPE_WORMController 16 286 #define COMPONENT_TYPE_SerialController 17 287 #define COMPONENT_TYPE_NetworkController 18 288 #define COMPONENT_TYPE_DisplayController 19 289 #define COMPONENT_TYPE_ParallelController 20 290 #define COMPONENT_TYPE_PointerController 21 291 #define COMPONENT_TYPE_KeyboardController 22 292 #define COMPONENT_TYPE_AudioController 23 293 #define COMPONENT_TYPE_OtherController 24 296 #define COMPONENT_TYPE_DiskPeripheral 25 297 #define COMPONENT_TYPE_FloppyDiskPeripheral 26 298 #define COMPONENT_TYPE_TapePeripheral 27 299 #define COMPONENT_TYPE_ModemPeripheral 28 300 #define COMPONENT_TYPE_MonitorPeripheral 29 301 #define COMPONENT_TYPE_PrinterPeripheral 30 302 #define COMPONENT_TYPE_PointerPeripheral 31 303 #define COMPONENT_TYPE_KeyboardPeripheral 32 304 #define COMPONENT_TYPE_TerminalPeripheral 33 305 #define COMPONENT_TYPE_OtherPeripheral 34 306 #define COMPONENT_TYPE_LinePeripheral 35 307 #define COMPONENT_TYPE_NetworkPeripheral 36 310 #define COMPONENT_TYPE_MemoryUnit 37 314 #define COMPONENT_FLAG_Failed 1 315 #define COMPONENT_FLAG_ReadOnly 2 316 #define COMPONENT_FLAG_Removable 4 317 #define COMPONENT_FLAG_ConsoleIn 8 318 #define COMPONENT_FLAG_ConsoleOut 16 319 #define COMPONENT_FLAG_Input 32 320 #define COMPONENT_FLAG_Output 64 323 #define COMPONENT_KEY_Cache_CacheSize(x) \ 324 (ARCBIOS_PAGESIZE << ((x) & 0xffff)) 325 #define COMPONENT_KEY_Cache_LineSize(x) \ 326 (1U << (((x) >> 16) & 0xff)) 327 #define COMPONENT_KEY_Cache_RefillSize(x) \ 333 #define ARCBIOS_SYSID_FIELDLEN 8 357 #define ARCBIOS_MEM_ExecptionBlock 0 358 #define ARCBIOS_MEM_SystemParameterBlock 1 359 #define ARCBIOS_MEM_FreeContiguous 2 360 #define ARCBIOS_MEM_FreeMemory 3 361 #define ARCBIOS_MEM_BadMemory 4 362 #define ARCBIOS_MEM_LoadedProgram 5 363 #define ARCBIOS_MEM_FirmwareTemporary 6 364 #define ARCBIOS_MEM_FirmwarePermanent 7 366 #define ARCBIOS_MEM_ExceptionBlock 0 367 #define ARCBIOS_MEM_SystemParameterBlock 1 368 #define ARCBIOS_MEM_FreeMemory 2 369 #define ARCBIOS_MEM_BadMemory 3 370 #define ARCBIOS_MEM_LoadedProgram 4 371 #define ARCBIOS_MEM_FirmwareTemporary 5 372 #define ARCBIOS_MEM_FirmwarePermanent 6 373 #define ARCBIOS_MEM_FreeContiguous 7 417 void (*PowerDown)(void)
420 void (*Restart)(void)
426 void (*EnterInteractiveMode)(void)
431 void (*ReturnFromMain)(void)
443 uint32_t (*GetConfigurationData)(
451 uint32_t (*DeleteComponent)(
454 uint32_t (*GetComponent)(
457 uint32_t (*SaveConfiguration)(void);
459 void *(*GetSystemId)(void);
461 void *(*GetMemoryDescriptor)(
470 void *(*GetTime)(void);
472 uint32_t (*GetRelativeTime)(void);
474 uint32_t (*GetDirectoryEntry)(
494 uint32_t (*GetReadStatus)(
512 char *(*GetEnvironmentVariable)(
515 uint32_t (*SetEnvironmentVariable)(
519 uint32_t (*GetFileInformation)(
523 uint32_t (*SetFileInformation)(
528 void (*FlushAllCaches)(void);
529 #if !defined(sgimips) 530 uint32_t (*TestUnicode)(
534 void *(*GetDisplayStatus)(
uint16_t CursorMaxXPosition
uint32_t AdapterVectorLength
uint32_t ConfigurationDataSize
uint32_t FirmwareVectorLength
uint64_t ConfigurationDataSize
uint32_t PrivateVectorLength
uint64_t FirmwareVectorLength
uint32_t IdentifierLength
uint64_t IdentifierLength
uint64_t AdapterVectorLength
uint64_t PrivateVectorLength
#define ARCBIOS_SYSID_FIELDLEN
uint16_t CursorMaxYPosition