User Tag List

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

Тема: Радио-86РК: Подключение дисковода

Древовидный режим

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

    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    15
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    попались на глаза описание GARNIZON, про "ленивое" чтение
    решил посмотрел на RKDOS 2.95
    полез смотреть
    в общем, вызывает уважение сколько авторы в него впихнули, да и код местами красив
    собственно весь дос я не стал копать, посмотрел только чтение/запись

    то что описывал GARNIZON, там сделать можно
    но в самом досе этого всего нет и близко,
    просто чтение/запись секторов
    т.к. сектор таки да, сами процессим, все красивости описаные GARNIZON леко сделать,
    но надо серьезно дос под это писать
    и есть сомнение что на рк хватит скорости на эти умности.

    дос тоже местами вызвает уважение
    там есть каналы вода.вывода и реализованы bat файлы, круто

    из забавного
    используют OUT в порты, прикольно

    вот пример
    Код:
    RAM:EE1D          FDC_HOME:                               ; CODE XREF: RAM:E094p
    RAM:EE1D                                                  ; FDC_HOME+Cj ...
    RAM:EE1D DB F1                    in      a, (xF001_B_STAT)
    RAM:EE1F E6 20                    and     fdc_TRK00
    RAM:EE21 CA 48 EE                 jp      z, ret_IOERROR
    RAM:EE24          ;
    RAM:EE24 3E 03                    ld      a, ppi_1_|ppi_b1_StepIn
    RAM:EE26 CD 8A ED                 call    doSTEP          ; A- setC direction
    RAM:EE29 C3 1D EE                 jp      FDC_HOME
    RAM:EE29          ; End of function FDC_HOME
    
    RAM:ED8A          ; A- setC direction
    RAM:ED8A
    RAM:ED8A          doSTEP:                                 ; CODE XREF: stepOut+6j
    RAM:ED8A                                                  ; FDC_HOME+9p
    RAM:ED8A 21 03 F0                 ld      hl, FDC_PPI_RUS
    RAM:ED8D 77                       ld      (hl), a
    RAM:ED8E 36 08                    ld      (hl), ppi_0_|ppi_b4_Step
    RAM:ED90 3E 02                    ld      a, 2
    RAM:ED92
    RAM:ED92          loc_ED92:                               ; CODE XREF: doSTEP+9j
    RAM:ED92 3D                       dec     a
    RAM:ED93 C2 92 ED                 jp      nz, loc_ED92
    RAM:ED96 36 09                    ld      (hl), ppi_1_|ppi_b4_Step
    RAM:ED98
    RAM:ED98          loc_ED98:                               ; CODE XREF: doSTEP+Fj
    RAM:ED98 3D                       dec     a
    RAM:ED99 C2 98 ED                 jp      nz, loc_ED98
    RAM:ED9C C9                       ret
    напоминаю что OUT F1 = STA F1F1
    что при такой дишефрации портов как в РК = STA F001

    по идее это ставит крест на запуск доса на Z80 (вроде тут пробегало??)

    вот еще код, кусок чтения сектора

    Код:
    RAM:EDC6          Find_Address_Label:                     ; CODE XREF: FindSector+36j
    RAM:EDC6                                                  ; FindSector+40j
    RAM:EDC6 1B                       dec     de
    RAM:EDC7 7A                       ld      a, d
    RAM:EDC8 B3                       or      e
    RAM:EDC9 CA 47 EE                 jp      z, pop_RET_IOERROR
    RAM:EDCC
    RAM:EDCC          loc_EDCC:                               ; CODE XREF: FindSector+30j
    RAM:EDCC 34                       inc     (hl)
    RAM:EDCD F2 CC ED                 jp      p, loc_EDCC     ; pc7 - DataREADY
    RAM:EDD0          ;
    RAM:EDD0 0A                       ld      a, (bc)         ; DATA_LOCK F004
    RAM:EDD1 D6 EA                    sub     0EAh ; 'ъ'
    RAM:EDD3 C2 C6 ED                 jp      nz, Find_Address_Label
    RAM:EDD6
    RAM:EDD6          loc_EDD6:                               ; CODE XREF: FindSector+3Aj
    RAM:EDD6 B6                       or      (hl)
    RAM:EDD7 F2 D6 ED                 jp      p, loc_EDD6
    RAM:EDDA          ;
    RAM:EDDA 0A                       ld      a, (bc)
    RAM:EDDB D6 D3                    sub     0D3h ; 'L'
    RAM:EDDD C2 C6 ED                 jp      nz, Find_Address_Label
    RAM:EDE0
    RAM:EDE0          loc_EDE0:                               ; CODE XREF: FindSector+44j
    RAM:EDE0 B6                       or      (hl)
    RAM:EDE1 F2 E0 ED                 jp      p, loc_EDE0
    RAM:EDE4          ;
    RAM:EDE4 0A                       ld      a, (bc)         ; Track
    RAM:EDE5 5F                       ld      e, a
    RAM:EDE6
    RAM:EDE6          loc_EDE6:                               ; CODE XREF: FindSector+4Aj
    RAM:EDE6 34                       inc     (hl)
    RAM:EDE7 F2 E6 ED                 jp      p, loc_EDE6
    RAM:EDEA          ;
    RAM:EDEA 0A                       ld      a, (bc)         ; Sector
    RAM:EDEB 57                       ld      d, a
    RAM:EDEC
    RAM:EDEC          loc_EDEC:                               ; CODE XREF: FindSector+50j
    RAM:EDEC 34                       inc     (hl)
    RAM:EDED F2 EC ED                 jp      p, loc_EDEC
    RAM:EDF0          ;
    RAM:EDF0 0A                       ld      a, (bc)
    RAM:EDF1 93                       sub     e
    RAM:EDF2 92                       sub     d               ; calc CRC
    RAM:EDF3 C2 47 EE                 jp      nz, pop_RET_IOERROR


    p.s. дальше копать - врядли буду, уже малоинтересно
    .ida могу желающим отдать
    Последний раз редактировалось esl; 01.12.2013 в 02:39.

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

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

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

Похожие темы

  1. Радио-86РК: Игры
    от rnd.gen в разделе Радио-86РК
    Ответов: 146
    Последнее: 10.12.2025, 06:29
  2. Радио-86РК: Ремонт
    от kokosbot в разделе Радио-86РК
    Ответов: 59
    Последнее: 19.04.2013, 22:48
  3. Радио-86РК: Литература
    от caro в разделе Радио-86РК
    Ответов: 6
    Последнее: 26.04.2011, 10:18
  4. Радио 86РК
    от Shnurkov в разделе Барахолка (архив)
    Ответов: 1
    Последнее: 02.01.2009, 12:52

Ваши права

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