User Tag List

Показано с 1 по 10 из 434

Тема: Компьютер "Искра-1080 Тарту"

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,927
    Спасибо Благодарностей отдано 
    106
    Спасибо Благодарностей получено 
    291
    Поблагодарили
    217 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от vinxru Посмотреть сообщение
    Этот контроллер дисковода очень похож на контроллер от Ориона-128
    Ага, я тоже по нему микросхемы отгадывал

    В принципе, у Ориона порты через память, т.е. обращение лишь на 3 такта короче (к тому же и частота чуть выше), так что можно его процедуры взять. Вот, например, чтение сектора:
    Код:
    L1: LDAX B ; читаем статус
    RAR
    RNC ; если контроллер больше не занят
    RAR
    JNC L1 ; если данных пока нет
    LDAX D ; читаем байт
    MOV M,A
    INX H
    JMP L1
    Минимум 59 тактов плюс по 30 тактов, если данных ещё нет. У нас будет 62(+33), думаю, должно успеть.

    Я только не понял, если CS ВГ93 рулится через порт, тогда читать можно из любого несуществующего порта. А что произойдёт при записи в порт, когда мы CS выключать будем? Видимо, запись будет в порт данных ВГ93, в принципе, ничего страшного, если контроллер уже ничего не делает. Но это при условии, что выключать будем через порт 0C7h.

    ---------- Post added at 13:58 ---------- Previous post was at 13:46 ----------

    Цитата Сообщение от vinxru Посмотреть сообщение
    Скорее всего CP/M так же можно взять с Ориона.
    Нет. Она слинкована с адреса 9600, а нам нужно с 9С00.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    HardWareMan
    Гость

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Вот, например, чтение сектора:
    Код:
    L1: LDAX B ; читаем статус
    RAR
    RNC ; если контроллер больше не занят
    RAR
    JNC L1 ; если данных пока нет
    LDAX D ; читаем байт
    MOV M,A
    INX H
    JMP L1
    Минимум 59 тактов плюс по 30 тактов, если данных ещё нет. У нас будет 62(+33), думаю, должно успеть.
    Я на Орионе делал так:
    Код:
        LXI  H,BUF
        LXI  D,0F700H
        LXI  B,0082H
    IN0:LDAX D
        ANA  C
        JZ   IN0
        LDA  0F703H
        MOV  M,A
        INX  H
        DCR  B
        JNZ  IN0
        LDA  0F700H
    И все отлично работало. Если нужно было читать более 256 байт (512 и 1024 байт), то приходилось повторять куски циклов по 256 байт, иначе не успевало уже. Последний LDA брал статус ВГ93, данные процедуры не висли при ошибках ВГ93, но, правда, заполняли область загрузки каким-нибудь байтом (в случае ошибки). Код 82Н - это готовность диска и готовность данных. в случае ошибки прога вываливала при отсутствии готовности диска.

    Это если вдруг кому интересно.
    Последний раз редактировалось HardWareMan; 12.04.2012 в 17:27.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Компьютер "Искра-1030(М)"
    от Жека:) в разделе Разное
    Ответов: 281
    Последнее: 11.11.2024, 20:32
  2. Компьютер "Искра-1031"
    от Andrey_Ak в разделе Разное
    Ответов: 25
    Последнее: 07.02.2010, 20:47
  3. Ответов: 27
    Последнее: 19.12.2009, 18:49
  4. "КВАРЦ Игровой компьютер" надо кому?
    от Rodion в разделе Барахолка (архив)
    Ответов: 9
    Последнее: 26.06.2009, 08:38
  5. Ответов: 0
    Последнее: 26.06.2005, 11:52

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •