Эмуляция терминала VT100 для 8-битного компьютерного эмулятора на базе Java

Я успешно использую экран GNU в качестве последовательного терминала, чтобы "общаться" с моим клоном Altair 8800 ( http://altairclone.com/), используя последовательную линию. Я использую команду 'screen -istrip /dev/ttyUSB0'. Экран делает эмуляцию VT100, снимает MSB с выхода и т. Д. - работает отлично.

Сейчас я также работаю над эмулятором Altair 8800 на Java и хотел бы использовать какой-нибудь эмулятор терминала для подключения и общения с ним, как будто это была настоящая машина за последовательным устройством. Какой лучший способ решить в мире Linux? Есть ли способ использовать экран для этого? Что-то подсказывает мне, что решение тривиально, но я пока не знаю;) Спасибо за любые предложения.

1 ответ

Ваш эмулятор должен создать нечто, называемое "псевдотерминал". Это пара устройств - главная сторона используется эмулятором терминала, записывая байты, которые должны быть отправлены программе на компьютере, и считывая байты, которые посылает компьютер. Ведомая сторона находится на другом конце: это устройство, которое программа, управляемая псевдотерминалом, открывает для получения ввода и отправки вывода. Подчиненное устройство появится в файловой системе с именем, подобным "/dev/pts/9". См. http://www.gnu.org/software/libc/manual/html_node/Pseudo_002dTerminals.html.

Кроме того, чтобы получить эмуляцию vt100 в Linux, убедитесь, что пакет terminfo установлен и установите TERM=vt100; экспортировать $TERM после открытия окна терминала

Другие вопросы по тегам