Модифицировал когда-то прошивку Basic-48 и BASIC-128 для работы с любым EPSON-совместимым принтером через порт Centronics на всех моделях Кворумов.
Порт принтера в Кворумах упрощенный: 8 бит данных, Строб на передачу и Готовность на прием. Разьем DB-25.
Для работы с принтером этого достаточно.
Адрес порта данных = 0xFB;
Строб = 0 при записи в порт 0x7B;
Строб = 1 при записи в порт 0xFB;
Готовность = бит 7 порта 0x1B
Процедура выдачи байта в порт принтера:
Код:OUT_LP: PUSH AF OUT (0FBH),A ;ДАННЫЕ W_LPT: CALL LPT_ST ;СТАТУС ПРИНТЕРА JR Z,W_LPT ;ЖДАТЬ ГОТОВНОСТИ POP AF OUT (7BH),A ;СТРОБ=0 JR $+2 OUT (0FBH),A ;СТРОБ=1 RET ; LPT_ST: IN A,(1BH) ;СТАТУС ПРИНТЕРА CPL AND 80H ;ЕСЛИ D7=1 RET ;ПРИНТЕР ГОТОВ, Z=0




Ответить с цитированием