h6. [[OS SWI Calls]] h6(. » [[OS_ReadSysInfo]] h6((. » OS_ReadSysInfo 12 h2. OS_ReadSysInfo 12 h5. (SWI &58) |_<^{width:4em}. Entry | | |<^. R0 |<^. 12 | |<^. R1 |<^. Pointer to word-aligned buffer, or 0 to read required buffer size | |_<^{width:4em}. Exit | | |<^. R0 |<^. Size of extended ID, or 0 if extended ID not present/corrupt | |<^. R1 |<^. Preserved. If the buffer pointer was supplied, the extended ID will have been copied into it. | h4. Use For machines which provide machine IDs that differ from Acorn's traditional ID format, this call allows you to read the full, unmodified ID. h4. Notes For compatability with old software, if a machine's HAL provides an extended ID then the kernel will use that extended ID to synthesise an Acorn-style machine ID. This synthesised ID will be then be returned by any calls to [[OS_ReadSysInfo 2]]/[[OS_ReadSysInfo 5]]. Because of this behaviour it is recommended that new software should first attempt to read the extended ID via OS_ReadSysInfo 12 before falling back on the ID returned by OS_ReadSysInfo 2/5. This will help to ensure the uniqueness of the ID that the program uses. This call first became available in RISC OS 5.17. h4. See also * [[OS_ReadSysInfo]] * [[OS_ReadSysInfo 2]] * [[OS_ReadSysInfo 5]] * [[HAL_ExtMachineID]]