Investigué un poco y, como anticipé, debe usar el modo de gráficos o necesita soporte de hardware especial porque no hay forma de usar más de 512 caracteres en el modo de texto VGA
Bueno, el DOS en sí mismo no puede imprimir en charsets más allá de 1 byte por char, porque usa las funciones del BIOS que a su vez usan el hardware VGA que no puede tener más de 2 x 256 caracteres de tamaño. Así que esto nuevamente suena como un trabajo para un DRIVER, uno que usa el modo de gráficos para representar fuentes extensas. Ya tenemos soporte para las fuentes Unicode en algunos editores gráficos de texto DOS y similares (gracias :-)) y si se utiliza DBCS o UTF-8, ambos comparten el "tamaño del carácter puede ser uno o más bytes" manejando "anomalía" .
¿Alguna vez habrá algún soporte oficial para el idioma japonés en FreeDOS?
La versión japonesa de DOS (DOS / V) utiliza el primer enfoque y simula el modo de texto al representar los caracteres en modo gráfico utilizando un controlador especial. El controlador sigue el estándar IBM V-Text, que es un mecanismo para extender las capacidades de visualización de texto del DOS. Puede elegir entre varias fuentes de 16/24/32/48 puntos como esta
Algunos otros sistemas de modo de texto también usan la misma técnica. En FreeDOS puede cargar algún controlador especial para soporte japonés
El procesador interceptará las llamadas int 10h e int 21h y dibujará el texto manualmente, por lo que funcionará incluso para los programas normales de inglés. Pero no funcionará para programas que escriben directamente en la memoria VGA. Para imprimir caracteres japoneses int 5h e int 17h también están enganchados.
De acuerdo con el manual de DOS / V, el BIOS de IBM también agregó soporte para V-Text a través de int 15h con las siguientes 4 nuevas funciones
5010H Video extension information acquisition
5011H Video extension function registration
5012H Video extension driver release
5013H Video extension driver lock setting
Supongo que esta es también la razón por la que vi soporte japonés en los BIOS de mis PC antiguas
Sin embargo, la lentitud del modo gráfico puede introducir fallas mientras se desplaza, lo que requiere un manejo especial.
DOS / V es en realidad la primera solución de software para el modo de texto japonés
Mientras tanto, se había realizado una investigación seria en IBM Japón desde principios de la década de 1980 para producir una solución de software al problema de mostrar caracteres japoneses. Con la llegada de los monitores VGA de alta resolución, procesadores más rápidos y memorias y discos duros más grandes, los diseñadores de los laboratorios de investigación Fujisawa y Yamato de IBM se dieron cuenta de que la información sobre la forma y el tamaño de los caracteres kanji podía almacenarse en el disco, cargarse en una memoria extendida, y se muestra a través de VRAM en modo gráfico. (La "V" en DOS / V, por cierto, proviene del monitor VGA necesario para mostrar los caracteres japoneses a través del software).
DOS / V: la solución de software (software) a los problemas de software (software)
Según el mismo artículo, antes de la invención del DOS / V, todos los otros sistemas necesitan una ROM Kanji en el hardware.
Todas las marcas de computadoras utilizaron soluciones de hardware para manejar la visualización de caracteres japoneses, almacenando los datos de todos los caracteres en chips especiales conocidos como ROM de kanji. Este método requería que el código de doble byte para cada carácter de entrada de teclado se enviara a la CPU, que a su vez extrajo el carácter correspondiente de la ROM kanji y lo envió a la pantalla a través de VRAM en modo texto. El uso de kanji ROM significaba que la forma de cada carácter era fija, mientras que el uso de VRAM en modo texto estableció un tamaño de punto estándar de 16x16 para cada carácter.
Por ejemplo, el IBM Personal System / 55 que utiliza un adaptador gráfico especial con fuente japonesa, por lo que obtienen el modo de texto real
A principios de la década de 1980, IBM Japón lanzó dos líneas de computadoras personales basadas en x86 para la región del Pacífico asiático, IBM 5550 e IBM JX. El 5550 leyó las fuentes Kanji del disco y dibujó texto como caracteres gráficos en un monitor de alta resolución de 1024 x 768.
https://en.wikipedia.org/wiki/DOS/V#History
Similar a IBM 5550, el modo de texto tenía 1040x725 píxeles (fuente de 12x24 y 24x24 píxeles, caracteres de 80x25) en 8 colores, puede mostrar caracteres japoneses leídos desde la fuente ROM
La arquitectura AX utiliza un adaptador JEGA especial en lugar del EGA estándar.
AX (Architecture eXtended) fue una iniciativa informática japonesa que comenzó alrededor de 1986 para permitir a las PC manejar texto japonés de doble byte (DBCS) a través de chips de hardware especiales, al tiempo que permitía la compatibilidad con el software escrito para PC IBM extranjeras.
...
Para mostrar los caracteres Kanji con suficiente claridad, las máquinas AX tenían pantallas JEGA (ja) con una resolución de 640x480 en lugar de la resolución EGA estándar de 640x350 que prevalecía en otros lugares en ese momento. Los usuarios normalmente pueden cambiar entre los modos japonés e inglés escribiendo 'JP' y 'US', lo que también invocaría el AX-BIOS y un IME que permite la entrada de caracteres japoneses.
Las versiones posteriores también agregan un hardware especial AX-VGA / H y AX-VGA / S para la emulación de software en VGA
Sin embargo, poco después del lanzamiento de AX, IBM lanzó el estándar VGA con el que AX obviamente no era compatible (no eran los únicos que promovían extensiones "súper EGA" no estándar). En consecuencia, el consorcio AX tuvo que diseñar un AX-VGA (ja) compatible. AX-VGA / H era una implementación de hardware con AX-BIOS, mientras que AX-VGA / S era una emulación de software.
Debido a la menor disponibilidad de software y otros problemas, AX falló y no pudo romper el dominio de la PC-9801 en Japón. En 1990, IBM Japón presentó DOS / V que permitía a IBM PC / AT y sus clones mostrar texto en japonés sin ningún hardware adicional utilizando una tarjeta VGA estándar. Poco después, AX desapareció y comenzó el declive de NEC PC-9801.
La serie NEC PC-98 también tiene una ROM de caracteres en el controlador de pantalla
Una PC-98 estándar tiene dos controladores de pantalla µPD7220 (un maestro y un esclavo) con 12 KB de memoria principal y 256 KB de RAM de video, respectivamente. El controlador de pantalla maestro maneja la fuente ROM, mostrando caracteres JIS X 0201 (7x13 píxeles) y JIS X 0208 (15x16 píxeles)
No sé la situación de los chinos y coreanos, pero creo que se utilizan las mismas técnicas. No estoy seguro de si hay otras formas de lograrlo o no