Assembler для начинающих



              

Кассета


    Программа управления кассетным магнитофоном в BIOS - это пример
    работы с последовательным устройством с помощью временных циклов.
    Но из-за отличий временных параметров команд, программа
    обслуживания кассетного магнитофона BIOS во всех критических
    случаях использует таймер-счетчик 8253.  Здесь будут рассмотрены
    только две программы использующие таймер - READ_HALF_BIT и
    WRITE_BIT.
 
      В техническом описании содержится вся информация о методе
    кодировки данных, записываемых на кассету. Программа WRITE_BIT
    записывает на ленту один бит данных. Выход канала 2
    таймера/счетчика непосредственно подключается к выводному порту
    кассетного адаптера. Поэтому запись бита данных заключается в
    установке правильной частоты канала 2 таймера и ожидании одного
    полного цикла. Программа WRITE_BIT делает именно это, но в обратном
    порядке. Когда программа WRITE_BIT получает управление, предыдущий
    бит еще находится в процессе записи. Два цикла ожидания в программе
    WRITE_BIT обеспечивают задержку на пол-цикла, необходимую для
    завершения записи предыдущего бита. Когда запись бита завершена,
    BIOS заносит новое значение частоты в канал 2 таймера. Программа
    WRITE_BIT возвращает управление вызвавшей программе тогда, когда
    новая частота начала выдаваться на ленту. Программа управления
    кассетным магнитофоном достаточно быстрая (или скорость выдачи бит
    в кассету достаточно медленная - это зависит от вашей точки
    зрения), чтобы программа WRITE_BIT вызвалась снова до того, как
    таймер завершит первые полцикла записи бита.
 
      Программа READ_HALF_BIT выполняет противоположную работу. Эта
    программа ждет до тех пор, пока бит ввода с кассетного механизма
    (бит 4 порта 62H) не изменит состояние. Каждая смена состояния
    этого бита соответствует чтению половины бита. Программа кассетного
    механизма вычитает текущее значение таймера из его значения при
    предыдущей смене бита. Это число соответствует времени, которое



Содержание  Назад  Вперед