Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

International keyboard support (Developers)

posted by Laaca Homepage, Czech republic, 23.01.2023, 00:20

Yes, the 8-bit (extended ASCII) to Unicode (and vice versa) conversion is a problem as DOS does not provide any table for it.
There exist a 8-bit Uppercase/Lowercase table, collation table but not the 8-bit/Unicode table.
My programs (and also DOSLFN a few other programs) use the .TBL files (for examples and format description look to DOSLFN archive).
The principe is: ask DOS what for code page we actualy use.
Lets say that DOS answers 852.
Then we load the proper TBL file named "cp852uni.tbl" and use the values.

In systems with LFN functions you also maybe can (in theory of course because nobody is so insane) try this:
Using LFNCreateFile create a file in root directory (like C:\) named _insane_#128#129#130... and so on up to #255.
.....It will be internaly translated to Unicode.
But in reading it would be translate back from Unicode to ASCII.
To keep the filename in Unicode you have to read it directly - not using LFNFindFirst("_insane*.*") but using the interrupt INT25h (INT21h/AX=7305h).

---
DOS-u-akbar!

 

Complete thread:

Back to the forum
Board view  Mix view
22049 Postings in 2034 Threads, 396 registered users, 76 users online (0 registered, 76 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum