h6. [[OS SWI Calls]] h6(. » [[OS_ReadSysInfo]] h6((. » OS_ReadSysInfo 2 h2. OS_ReadSysInfo 2 h5. (SWI &58) |_<^{width:4em}. Entry | | |<^. R0 |<^. 2 | |_<^{width:4em}. Exit | | |<^. R0 |<^. Hardware configuration word 0 | |<^. R1 |<^. Hardware configuration word 1 | |<^. R2 |<^. Hardware configuration word 2 | |<^. R3 |<^. Low half of machine ID | |<^. R4 |<^. High half of machine ID | h4. Hardware configuration words |_<^{width:4em}. Word |_<^. Bits |_<^. Use |_<^. Values | |/2<^. 0 |/2<^. 0-7 |/2<^. Special functions chip type |<^. 0 = none/unspecified | |<^. 1 = IOEB | |/3<^. 0 |/3<^. 8-15 |/3<^. I/O controller chip type |<^. 0 = IOC | |<^. 1 = IOMD | |<^. 255 = unspecified | |/3<^. 0 |/3<^. 16-23 |/3<^. Memory controller chip type |<^. 0 = MEMC1/MEMC1a | |<^. 1 = IOMD | |<^. 255 = unspecified | |/3<^. 0 |/3<^. 24-31 |/3<^. Video controller chip type |<^. 0 = VIDC1a | |<^. 1 = VIDC20 | |<^. 255 = unspecified | |/2<^. 1 |/2<^. 0-7 |/2<^. I/O chip type |<^. 0 = none/unspecified | |<^. 1 = 82C710 or similar | |<^. 1 |<^. 8-31 |<^. Reserved |<^. 0 | |/3<^. 2 |/3<^. 0-7 |/3<^. LCD controller type |<^. 0 = none | |<^. 1 = type 1 (e.g. A4 portable) | |<^. 2 = type 2 (e.g. Stork portable) | |/2<^. 2 |/2<^. 8-15 |/2<^. IOMD variant |<^. 0 = IOMD | |<^. 1 = IOMDL (i.e. ARM7500) | |/2<^. 2 |/2<^. 16-23 |/2<^. VIDC20 variant |<^. 0 = VIDC20 | |<^. 1 = VIDC2L (i.e. ARM7500) | |/2<^. 2 |/2<^. 24 |/2<^. IIC bus speed |<^. 0 = slow (100kHz) | |<^. 1 = fast (400kHz) | |/2<^. 2 |/2<^. 25 |/2<^. Clock state during idle |<^. 0 = Keep I/O clocks running during idle | |<^. 1 = Stop I/O clocks during idle | |<^. 2 |<^. 26-31 |<^. Reserved |<^. 0 | h4. Use The purpose of this call is to check for the presence of various chips, returning flags. It also reads the unique machine ID if a suitable chip is fitted to the computer; if none is, an ID of zero is returned. h4. Notes The content of hardware information word 2 is generally only correct if the system is IOC or IOMD based. Modern HAL based systems typically return 0 for the whole word. When using this call to read the machine ID, it is recommended that programs first check with [[OS_ReadSysInfo 12]] to see if an extended machine ID is available. If you only wish to read the old-style 64 bit machine ID, then [[OS_ReadSysInfo 5]] can be used instead. h4. See also * [[OS_ReadSysInfo]] * [[OS_ReadSysInfo 5]] * [[OS_ReadSysInfo 12]]