Re: [hatari-devel] Setting TOS language / keyboard (was: which version of emutos for next Hatari )

[ Thread Index | Date Index | More Archives ]


On 22.5.2022 11.34, Nicolas Pomarède wrote:
Le 22/05/2022 à 00:45, Eero Tamminen a écrit :
2 weeks gone with no comments?

I'm especially interested whether the TOS check criteria looks OK, i.e. doing the country code setting only for multilanguage TOS (= unmodified EmuTOS 1024k, or older 512k, and TOS v4) versions.

And setting PAL/NTSC based on whether it's US country code, like EmuTOS tos-lang-change tool does.

And whether the LANG thing is actually good idea..
I tried your patches, here're my remarks :

 - the patch depends on keyboard's nKbdLayout to be the same as nLanguage ; in my case I never chose a value for nKbdLayout so far, so it doesn't work.

To test country code setting for ST/STE, use e.g. "--language fr --layout fr". Or set both to same value in the Hatari config file.

Note: Nowadays EmuTOS 512k images support only multiple keyboard layouts, multi-language support has been dropped from them (for space reasons), i.e. country code setting will impact only kbd layout for them, not language.

Also the fact that nKbdLayout has no equivalent in the GUI could mean it's often TOS_LANG_UNKNOWN for many people.

Both nKbdLayout & nLanguage are new options. They both default to unset value to avoid changing / breaking people's existing setups.

*Neither* of them has GUI option yet, only config file and CLI options. I'm not sure where in the SDL GUI one even could fit such new lang / kbdlayout options...

 - as nKbdLayout was Falcon/TT specific so far to change nvram, it means LANG won't be used when running Hatari in STF mode + emutos 1024k (at least I was not able to have emutos start in french that way, despite adding some traces to tos.c to confirm LANG was correctly parsed)
LANG is only language locale setting for the host system. Therefore LANG affecting anything else than language under the emulation would be unexpected.

Keyboard layout should match the keyboard user has, and that is not a locale setting.

In the end, maybe multi language TOS should only depend on LANG value, not matter what nKbdLayout contains, unless the user already explicitly set a value for language in nvram ?

Keyboard layout should not be changed unless user explicitly asks for it, because it can subtly break user's hatari keyboard config file settings (as TOS then interprets some of them differently[1]).

Because country code sets both language and keyboard layout, it has same concern.

If no nvram, then as nKbdLayout won't be taken into account it should allow your patch to work for stf/ste too I think.

Maybe it's easier just to drop Thomas' LANG suggestion?

	- Eero

[1] See:

Mail converted by MHonArc 2.6.19+