Абзац
:: Поиск
:: Поддержка проекта
Webmoney:
  • Z610389805629
  • R427996570517
  • E023541002978
  • :: №10 (30.01.2002) Просмотров: 5910

    Автор: Александр Хавзин.

    Рубрика: В помощь разработчику.

    Номер: №10 (30.01.2002).



    Электронный диск KAY-1024

    Практически все новые программы для компьютера ZX-SPECTRUM, расчитанные на работу с дисковой системой TR-DOS либо используют непосредственное обращение к подпрограммам DOS, либо используют стандартную точку входа #3D13. В некоторых программах пользователь сам может настроить какой драйвер будет использовать программа для работы с диском (#3D13 или программирование ВГ93).

    Такой сервис можно только приветсвовать. Особенно полезны такие возможности для пользователей, являющихся счастливыми обладателями SCORPION’ов, KAY’ев и других компьютеров, имеющих возможность подключения HDD и встроенный электронный квазидисковод. Использование программой точки входа #3D13 позволяет ей нормально работать с винчестером и/или обычным дисководом.

    Но, к сожалению, не все подобные программы «видят» электронный квазидисковод компьютера KAY-1024. Постараюсь объяснить в чем заключается проблема.

    Программы, использующие стандартную точку входа TR-DOS #3D13, как правило, устанавливают некоторые системные переменные DOS. Так вот, в адреса #5CFA-#5CFD, отвечающие за скорость перемещения головок дисководов (#5CFA -дисковод A, #5CFB - B и т.д.) заносится число 8, означающее максимальную скорость (может быть число 8-11 или 255 - если дисковод не инициализирован).

    А в KAY-1024 эти переменные могут содержать и число #1B, по которому система определяет соответствующий дисковод как электронный и обращение уже идет к памяти. Естественно занесение программой в эти адреса чисел, отличных от #1B жестко привязывают систему к «настоящим» дисководам.

    Таким образом, чтобы программа работала с электронным дисководом на KAY-1024 она должна при инициализации проверять значения вышеуказанных переменных, и если находит в них #1B, то оствляет его там и определяет соответствующий дисковод как электронный.

    Еще одна тонкость: электронный квазидисковод в KAY-1024 не будет работать (выдается ошибка NO DISK), если перед первым обращением не провести его инициализацию функцией 1 подпрограммы #3D13 (регистр C=1, в A - номер дисковода (0-3) и CALL #3D13).

    В заключение хочется выразить надежду, что авторы таких замечательных программ как: AC_Edit - Быстров Дмитрий и Best View -Иван Рощин в последующих версиях своих программ учтут особенности компьютера KAY-1024 и встроят в них поддержку электронного квазидисковода.


    Литература:

    1. Поморцев Ю. «TR-DOS для профессионалов и любителей», Москва, 1994 г.

    2. Федин П.Ю. «Полное описание + полный дизасемблер ПЗУ TR-DOS 5.04T (5.03), Москва, 1996 г.

    3. Шарапов Б.А., NEMO, Леонтьев А.Г. «KAY-1024 руководство по эксплуатации», Москва, 1999-2000 г.


    Александр ХАВЗИН, Приморский край,
    ZXNet 500:4232/1.7
    FidoNet 2:5045/78.7


    © 2004-2013 Perspective group