Host System Values ================== mdfs.net/Docs/Comp/Acorn/HostVals Osbyte0 returns what type of host you're running on. INKEY-256 (Osbyte 129,&FF00) returns the varient of the hardware, viz: fx0: INKEY-256 low byte: (Varient of host system:) error &00: BBC OS 0.10 0 &01: Electron 1 &FF: BBC OS 1.00/1.20 (full word returned=-1) &FE: BBC OS 1.10 (US) &FC: BBC OS 1.20 (Germany) &FA: Acorn Business Computer OS 2 &FB: BBC B+ OS 2.00 &FF: Reuters Terminal (UK) (switchable with *UK) &FE: Reuters Terminal (US) (switchable with *US) &FA: Acorn Business Computer OS 3 &FD: Master OS 3.20 4 &F7: Master ET OS 4.00 5 &F5: Master Compact 6 &A0: Archimedes Arthur 1.20 &A1: Archimedes RISC OS 2.00 &A2: Archimedes RISC OS 2.01 &A3: Archimedes RISC OS 3.00 &A4: Archimedes RISC OS 3.1x &A5: Archimedes RISC OS 3.50 &A6: Archimedes RISC OS 3.60 &A7: Archimedes RISC OS 3.7x &A8: RISC OS 4.0x &A9: RISC OS 4.3x &AA: RISC OS 5.xx (ie, arm%=(INKEY-256 AND&F0)=&A0 ) 7 &AF: Springboard (An ARM-based development system plugged into a PC) 8 ---: UNIX-type OS &F6: OpenBSD &F7: FreeBSD &F9: Linux &FE: NetBSD 29 &8x: TI Calculator 30 &Dx: Amstrad 464/664/6128, etc. 31 &Ex: Spectrum 32 **** DOS with Basic(86) (INKEY-256 not available) &57: BBC BASIC for Windows &FA: DOS with Brandy BASIC &FC: Windows 32 -- &F5: Amiga (Brandy Basic) -- &F8: MacOS X (Brandy Basic) -- &FB: Beos (Brandy Basic) -- &00: RM Nimbus NOTES ===== Some sources quote returning X=0 with BBC B MOS 0.xx, but that's incorrect as Osbyte 0 always returned with an error message describing the version in MOS 0.xx (eg "EPROM OS 0.10"), it would never return a value. BBC BASIC 86 for DOS actually returns the character code under the cursor. That character will be a space if the program stars by clearing the screen, or printing to a new line with nothing already printed. I don't know what varients OS 8 (Unix) running on RiscIx returns. I've now got some more documents, so it may be in there. When I was putting together a system to run BBC BASIC on the Amstrad and Spectrum, I picked 30 and 31 following on from 32. I was intending to get INKEY-256 to return the varient of the hardware by interrogating the firmware somehow. On checking the source code, the 48K Spectrum returned &E0. History ======= 07-Aug-04: Added Springboard values 07-Oct-04: Added &57 for Windows 09-Mar-05: Added Amiga, MacOS and more UNIX systems 12-Mar-08: Added TI Calculator