On Wed, Jul 28, 2021 at 7:15 AM Eric Auer <e.a...@jpberlin.de> wrote: > > COUNTRY=... and COUNTRY.SYS are not undocumented, but your > choice of words hints at another idea: Do you suggest to > introduce a TSR to handle string and key translations, to > be used by FreeDOS apps? I think this would not save enough > overhead compared to implementing translations in each app > to be worth the incompatibility. Remember that our kitten > implementation of catgets is very lightweight :-) >
Although it's up to the individual developer, my preference and recommendation would be to use the FreeDOS Kitten library for any C program that wants to add support for different spoken languages ("internationalization"). There's a version for Pascal, too. https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/devel/libs/cats/ Although if you're using Assembly, there's no version of Kitten for that. So that requires a different method. I think using language catalogs is a very flexible way to provide internationalization in a program. The tradeoff is a bit of performance (reading the catalog) and some extra code to manage everything. The benefit is you end up with *one* compiled program that you use in every language instance, and it reads the message catalog for the user's preferred language. MS-DOS supported other languages by creating new compiled/assembled versions of its programs. So there was an "English" (default) version of MS-DOS, and a "German" version, etc. Each language release was sold separately. Which made sense for the 1980s and 1990s where you actually purchased the software you needed - you didn't download it from a website. And the benefit here is that you have a small distribution (because you aren't including language catalog files for languages you don't need) and things are smaller and faster (because all the text is "hard coded" into the binary. But for a modern DOS that needs to support different languages by different users in different countries, I think language catalogs (the "Kitten" method) provide the best solution. Jim _______________________________________________ Freedos-devel mailing list Freedos-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-devel