Нашел на исходниках.ру программу-помощника под названием help.exe, это справочное руководство по различным функциям дос-биос. Было интересно посмотреть, что там пишут, но запустив программу я увидел на экране только какие-то кракозябры вместо русских букв.
Пришлось писать свой русификатор. Для этой цели я выбрал функцию 1100h прерывания 10h. Ниже код программы неполностью - код довольно большой, букв много:
Если посмотреть ASCII- таблицу, то можно увидеть, что русская кодировка раскидана по двум разным адресам, поэтому понадобилась отдельная метка для продолжения:
это сама программа:
теперь стало возможным познакомиться с интересующей меня программой:
Вообще в знакогенератор можно загрузить любое свое значение, ниже код программы, которая выводит изображение человечка вместо английской буквы а:
Для компиляции необходимо воспользоваться FASMом, для эмуляции DosBOXом. Результат работы программы приведен на титульной картинке статьи.
Значения от 0 до 127 знакогенератора формируются в операционной памяти биосом во время загрузки компьютера, а вектором указывающим на значения от 128 до 255 служит прерывание 1Fh.
Это пожалуй все, что я могу рассказать вам о знакогенераторе на сегодняшний день. Всего доброго! Удачи в программировании.
#ассемблер #знакогенератор #дос