SvarDOS / edrdos

Enhanced DR-DOS kernel and command interpreter ported to JWasm and OpenWatcom C
http://svardos.org/
Other
40 stars 4 forks source link

kernel proposes a CP437 collation table for codepage 866 #44

Closed mateuszviste closed 2 months ago

mateuszviste commented 9 months ago

CONFIG.SYS:

COUNTRY=001,866,C:\COUNTRY.SYS

AUTOEXEC.BAT:

MODE CON CP PREP=((866) C:\SVARDOS\CPI\EGA3.CPX)
MODE CON CP SELECT=866

This seem to be accepted - at least I see no error messages at boot that would suggest my COUNTRY configuration is invalid and I can see that CP 866 is being loaded properly.

With this configuration, INT 21h/AX=6506h returns a collate table that matches CP437, which leads to very unexpected sorting within DIR outputs.

This actually matches the behavior of MSDOS, as mentioned in https://github.com/SvarDOS/bugz/issues/68 but perhaps EDRDOS could be smarter about this?

I would expect the INT 21h/AX=6506h call to fail for unsupported COUNTRY/CODEPAGE combinations, or at least a boot message say that the configured COUNTRY directive is illegal.

boeckmann commented 9 months ago

an error message should now be shown if country / CP combination is invalid 1179411