Zrobiłem badania i, jak się spodziewałem, musisz użyć trybu graficznego lub potrzebujesz specjalnego wsparcia sprzętowego, ponieważ nie ma możliwości użycia więcej niż 512 znaków w trybie tekstowym VGA
Cóż, sam DOS nie może drukować w zestawach znaków przekraczających 1 bajt na znak, ponieważ korzysta z funkcji BIOS-u, które z kolei korzystają ze sprzętu VGA, który nie może mieć czcionek o rozmiarze większym niż 2 x 256 znaków. To znowu brzmi jak praca dla KIEROWCY, który używa trybu graficznego do renderowania obszernych czcionek. Mamy już obsługę czcionek Unicode w kilku graficznych edytorach tekstowych DOS i podobnych (dzięki :-)) i niezależnie od tego, czy używany jest DBCS, czy UTF-8, oba mają „rozmiar znaku może wynosić jeden lub więcej bajtów” obsługujących „anomalię” .
Czy w FreeDOS będzie kiedykolwiek oficjalne wsparcie dla języka japońskiego?
Japońskiej wersji DOS (DOS / V) używa pierwszego podejścia i symuluje tryb tekstowy przez renderowania znaków w trybie graficznym za pomocą specjalnego sterownika. Sterownik jest zgodny ze standardem IBM V-Text, który jest mechanizmem rozszerzającym możliwości wyświetlania tekstu w systemie DOS. Możesz wybierać między różnymi czcionkami 16/24/32/48-kropkowymi, takimi jak to
Niektóre inne systemy trybu tekstowego również używają tej samej techniki. W FreeDOS możesz załadować specjalny sterownik do japońskiego wsparcia
Moduł renderujący przechwytuje połączenia między godzinami 10 i 21 godzin i rysuje tekst ręcznie, więc będzie działał nawet dla normalnych programów w języku angielskim. Ale to nie będzie działać w przypadku programów, które zapisują bezpośrednio w pamięci VGA. W przypadku drukowania japońskie znaki int 5h i int 17h są również zaczepione.
Zgodnie z instrukcją DOS / V później IBM BIOS dodał także obsługę V-Text przez int 15h z następującymi 4 nowymi funkcjami
5010H Video extension information acquisition
5011H Video extension function registration
5012H Video extension driver release
5013H Video extension driver lock setting
Podejrzewam, że jest to również powód, dla którego widziałem wsparcie japońskie w BIOS-ach moich starych komputerów
Niemniej jednak powolność trybu graficznego może powodować usterki podczas przewijania, które wymagają specjalnej obsługi
DOS / V to tak naprawdę pierwsze oprogramowanie dla japońskiego trybu tekstowego
Tymczasem od wczesnych lat 80. XX wieku w IBM Japan prowadzone były poważne badania mające na celu opracowanie rozwiązania programowego problemu wyświetlania japońskich znaków. Wraz z pojawieniem się monitorów VGA o wysokiej rozdzielczości, szybszych procesorów oraz większych pamięci i dysków twardych, projektanci z laboratoriów badawczych IBM Fujisawa i Yamato zdali sobie sprawę, że informacje o kształcie i rozmiarze znaków kanji można przechowywać na dysku, ładować do rozszerzonej pamięci, i wyświetlane przez VRAM w trybie graficznym. (Nawiasem mówiąc, „V” w DOS / V pochodzi od monitora VGA niezbędnego do wyświetlania japońskich znaków za pomocą oprogramowania.)
DOS / V: Soft (ware) Rozwiązanie trudnych (ware) problemów
Zgodnie z tym samym artykułem, przed wynalezieniem DOS / V inne systemy wymagają pamięci ROM Kanji
Wszystkie marki komputerów korzystały z rozwiązań sprzętowych do obsługi wyświetlania japońskich znaków, przechowując dane wszystkich znaków na specjalnych układach zwanych ROM-ami kanji. Ta metoda wymagała wysłania do procesora dwubajtowego kodu dla każdego znaku klawiatury, który z kolei pobrał odpowiedni znak z pamięci ROM kanji i wysłał go na ekran za pośrednictwem VRAM w trybie tekstowym. Zastosowanie pamięci podręcznej kanji ROM oznaczało, że kształt każdego znaku został ustalony, natomiast użycie pamięci VRAM w trybie tekstowym ustawiało standardowy rozmiar kropki 16 x 16 dla każdego znaku.
Na przykład IBM Personal System / 55, który korzysta ze specjalnego adaptera graficznego z japońską czcionką, aby uzyskać tryb prawdziwego tekstu
Na początku lat 80. firma IBM Japan wydała dwie linie komputerów osobistych z procesorem x86 dla regionu Azji i Pacyfiku, IBM 5550 i IBM JX. 5550 odczytał czcionki Kanji z dysku i narysował tekst jako znaki graficzne na monitorze o wysokiej rozdzielczości 1024 x 768.
https://en.wikipedia.org/wiki/DOS/V#History
Podobnie jak w przypadku IBM 5550, tryb tekstowy miał 1040 x 725 pikseli (czcionka 12 x 24 i 24 x 24 piksele, 80 x 25 znaków) w 8 kolorach, może wyświetlać japońskie znaki odczytywane z pamięci ROM czcionek
Architektura AX używa specjalnego adaptera jėga zamiast standardowego EGA
AX (Architecture eXtended) to japońska inicjatywa komputerowa, która rozpoczęła się około 1986 r., Aby umożliwić komputerom obsługę dwubajtowego (DBCS) japońskiego tekstu za pomocą specjalnych układów sprzętowych, jednocześnie umożliwiając kompatybilność z oprogramowaniem napisanym dla zagranicznych komputerów IBM.
...
Aby wyświetlać znaki Kanji z wystarczającą klarownością, maszyny AX miały ekrany JEGA (ja) o rozdzielczości 640x480 zamiast standardowej rozdzielczości EGA 640x350 dominującej gdzie indziej w tym czasie. Użytkownicy zazwyczaj mogą przełączać się między trybami japońskim i angielskim, wpisując „JP” i „US”, co również wywołuje AX-BIOS i edytor IME umożliwiający wprowadzanie japońskich znaków.
Późniejsze wersje dodają również specjalny sprzęt AX-VGA / H i AX-VGA / S do emulacji oprogramowania na VGA
Jednak wkrótce po wydaniu AX firma IBM wydała standard VGA, z którym AX oczywiście nie był kompatybilny (nie tylko one promowały niestandardowe rozszerzenia „super EGA”). W związku z tym konsorcjum AX musiało zaprojektować zgodny AX-VGA (ja). AX-VGA / H była implementacją sprzętową z AX-BIOS, natomiast AX-VGA / S była emulacją oprogramowania.
Z powodu mniej dostępnego oprogramowania i innych problemów, AX zawiódł i nie był w stanie przełamać dominacji PC-9801 w Japonii. W 1990 r. IBM Japan zaprezentował DOS / V, który umożliwił IBM PC / AT i jego klonom wyświetlanie japońskiego tekstu bez dodatkowego sprzętu przy użyciu standardowej karty VGA. Wkrótce potem AX zniknął i zaczął się spadek NEC PC-9801.
Seria NEC PC-98 ma także znak ROM w kontrolerze wyświetlacza
Standardowy PC-98 ma dwa kontrolery wyświetlacza µPD7220 (master i slave) z odpowiednio 12 KB pamięci głównej i 256 KB pamięci wideo RAM. Główny kontroler wyświetlania obsługuje pamięć ROM czcionek, wyświetlając znaki JIS X 0201 (7 x 13 pikseli) i JIS X 0208 (15 x 16 pikseli)
Nie znam sytuacji w Chinach i Korei, ale myślę, że stosowane są te same techniki. Nie jestem pewien, czy istnieją inne sposoby na osiągnięcie tego, czy nie