Difference between revisions of "OSBYTE &46"

From BeebWiki
Jump to: navigation, search
(Added Mac Basic.)
(Rewritten.)
Line 1: Line 1:
[[Category:OSBYTE]]
+
[[Category:OSBYTE]]__NOTOC__
==OSBYTE &46 (70) - Read/write country number (on exit X=0 if the country was invalid)==
+
==OSBYTE &46 (70) - Set country number==
 +
On entry: X=&00+n - set or read country
 +
          X=&80+n - reserved
 +
                n=&00 - set to default
 +
                n=&7F - read current setting
 +
 +
On exitX=0   - if specified country not supported
 +
          X<&80 - previous country
 +
          X>&7F - OSBYTE call not supported
  
    X=1 UK
+
This call allows both the keyboard and alphabet (font) to be set both at once.
    X=2 Master
 
    X=3 Compact
 
    X=4 Italy      X=10 Greece    X=16 Iceland  X=22 Ireland    X=28 LatinAm
 
    X=5 Spain      X=11 Sweden    X=17 Canada1  X=23 Hong Kong  X=48 USA
 
    X=6 France    X=12 Finland    X=18 Canada2  X=24 Russia
 
    X=7 Germany    X=13 Unused    X=19 Canada    X=25 Russia2
 
    X=8 Portugal  X=14 Denmark    X=20 Turkey    X=26 Israel
 
    X=9 Esperanto  X=15 Norway    X=21 Arabic    X=27 Mexico
 
    Or use X=127 to read the current value
 
  
Implemented in the Master Internationalisation ROM and RISC OS.
+
The country is specified with a country number 0-99, this sets the appropriate
 +
keyboard and the appropriate alphabet (font) for that country by redefining the
 +
font with VDU 23 sequences. See [[OSBYTE &47]] for country numbers.
 +
 
 +
Selecting the default country with X=&00 selects the default country set with
 +
'''*CONFIGURE COUNTRY'''. If there is no default country set it falls back
 +
to UK or BBC as appropriate.
 +
 
 +
[[OSBYTE &47]] allows the keyboard and alphabet (font) to be set individually.
 +
The country number is stored in the [[OSBYTE &F0]] variable.
 +
 
 +
* '''*COUNTRY''' parses the parameter and calls OSBYTE &46,n
 +
* '''*ALPHABET''' parses the parameter and calls OSBYTE &47,&00+n
 +
* '''*KEYBOARD''' parses the parameter and calls OSBYTE &47,&80+n
 +
 
 +
===Implementation===
 +
Implemented in the Master Internationalisation ROM, RISC OS kernel and
 +
keyboard handlers, and 8-bit keyboard extensions.
  
 
==OSBYTE &46 (70) - Apple Mac BBC BASIC==
 
==OSBYTE &46 (70) - Apple Mac BBC BASIC==
 
 
*FX70,n,n does something on Mac Basic
 
*FX70,n,n does something on Mac Basic
  
 
==See Also==
 
==See Also==
 +
* [[OSBYTE &47]] - Set keyboard and alphabet
 +
* [[OSBYTE &AC]] - Read/write keyboard handler setting
 +
* [[OSBYTE &AD]] - Read/write keyboard handler setting
 +
* [[OSBYTE &F0]] - Read/write country code
 
* http://mdfs.net/Docs/Comp/BBC/Osbyte00
 
* http://mdfs.net/Docs/Comp/BBC/Osbyte00
 
* http://mdfs.net/System/ROMs/AcornMOS/Compact511
 
* http://mdfs.net/System/ROMs/AcornMOS/Compact511
Line 25: Line 44:
 
[[User:WikiSysop|WikiSysop]] ([[User talk:WikiSysop|talk]]) 13:32, 8 March 2015 (UTC)
 
[[User:WikiSysop|WikiSysop]] ([[User talk:WikiSysop|talk]]) 13:32, 8 March 2015 (UTC)
 
[[User:Jgharston|Jgharston]] ([[User talk:Jgharston|talk]]) 00:08, 13 May 2020 (CEST)
 
[[User:Jgharston|Jgharston]] ([[User talk:Jgharston|talk]]) 00:08, 13 May 2020 (CEST)
 +
[[User:Jgharston|Jgharston]] ([[User talk:Jgharston|talk]]) 23:14, 18 October 2020 (CEST)

Revision as of 22:14, 18 October 2020

OSBYTE &46 (70) - Set country number

On entry: X=&00+n - set or read country
          X=&80+n - reserved
                n=&00 - set to default
                n=&7F - read current setting

On exit,  X=0   - if specified country not supported
          X<&80 - previous country
          X>&7F - OSBYTE call not supported

This call allows both the keyboard and alphabet (font) to be set both at once.

The country is specified with a country number 0-99, this sets the appropriate keyboard and the appropriate alphabet (font) for that country by redefining the font with VDU 23 sequences. See OSBYTE &47 for country numbers.

Selecting the default country with X=&00 selects the default country set with *CONFIGURE COUNTRY. If there is no default country set it falls back to UK or BBC as appropriate.

OSBYTE &47 allows the keyboard and alphabet (font) to be set individually. The country number is stored in the OSBYTE &F0 variable.

  • *COUNTRY parses the parameter and calls OSBYTE &46,n
  • *ALPHABET parses the parameter and calls OSBYTE &47,&00+n
  • *KEYBOARD parses the parameter and calls OSBYTE &47,&80+n

Implementation

Implemented in the Master Internationalisation ROM, RISC OS kernel and keyboard handlers, and 8-bit keyboard extensions.

OSBYTE &46 (70) - Apple Mac BBC BASIC

  • FX70,n,n does something on Mac Basic

See Also

WikiSysop (talk) 13:32, 8 March 2015 (UTC) Jgharston (talk) 00:08, 13 May 2020 (CEST) Jgharston (talk) 23:14, 18 October 2020 (CEST)