In addition to what Tom said (and regarding KEYB):
*   int 09 calls int 15h/4Fh is guaranteed for PC/ATs. For older keyboards
where it does not happen,  /9 option will hook the int9h handler to
precisely add this call to the present int9h handler.
* KEYB does not hook int 2Fh just for installation check. KEYB is "codepage
aware", as it has produce the appropriate character code for that
particular codepage (font), and that is why INT 2Fh/AD81h exists: DISPLAY
will call KEYB whenever there's a codepage change request, so that KEYB
keeps aligned with the current codepage.

Maybe you can find out more on this topic here:

'Re: [fd-dev] Changing codepages in FreeDOS' - MARC
<https://marc.info/?l=freedos-dev&m=99789675012254>

Aitor


On Wed, 9 Dec 2020 at 19:40, tom ehlert <t...@drivesnapshot.de> wrote:

>
> > After installing new layout and calling int 15h/4Fh manually,
> > causes correct scan code / ascii code pair is enqueued into the
> > keyboard buffer and carry flag isn't set because something is
> > changed this time. In short, this function is responsible for
> > changing keyboard layout, obviously. But how? I mean, how do
> > keyb.com know where exactly code page is in memory.
>
> KEYB doesn't know. AT ALL.
>
> KEYB translates scan codes (as transmitted form the keyboard) to
> 8 bit codes according to the keyboard language.
>
> ascii is the wrong term here.
> ASCII is defined (mostly) for the lower 128 of 256 characters, like
> the usual aAbBcB...zZ1..9.,;:...  that are common to most languages.
>
> as there is not enough space above 128 to have all possible russian,
> greek, spanish, indonesian, ...  codepages where invented.
>
> codepages assume a particular character set which differs for each
> language.
>
> most likely (I am no language expert) the code 0x31 will display
> identical (as '1') in all codepages, but 0x99 will display differently
> for greek and russian. it's probably best to think of 'codepages' as
> 'fonts'.
>
> Tom
>
>
>
> _______________________________________________
> Freedos-devel mailing list
> Freedos-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/freedos-devel
>
_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to