User Tag List

Показано с 1 по 7 из 7

Тема: О быстром доступе к верхней памяти

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

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

    Регистрация
    29.01.2005
    Адрес
    Belarus, Grodno
    Сообщений
    1,279
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    вообще мне идея нравиться. надо будет только перекосоёжить немного порт #7FFD
    (сделать нижние три бита на отдельную ТМ-ку, дабы избежать лишних мультиплексоров).
    А по поводу совместимсти- все программы работающие с памятью свыше 128 кб делают это через драйвер (пару журналов не в счёт, ибо они и на 128к работают).

    да... МНЕ НРАВИТЬСЯ

    когда буду паять 16 колорз на кай изменю адресацию к верхней памяти.

    вот только порт 31 мне не нравиться. надо будет другой сделать.
    и обязательно с полной адресацией, пора привыкать уже
    [target] [zemu] [js8x] [pouet] KAY-1024, 5''FDD, 3''FDD, HDD

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

  3. #2

    Регистрация
    03.12.2005
    Адрес
    Серов
    Сообщений
    542
    Спасибо Благодарностей отдано 
    37
    Спасибо Благодарностей получено 
    50
    Поблагодарили
    22 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Да, с АТМ полная жопа выходит. Хотя я не представляю, что это были за программы, которые обращались к порту с A0=0. У меня на Кворуме-192 есть порт 126, который отвечает за теневое озу и память, но у меня никогда не висли программы из-за этого порта. Вот еще вариант (идея украдена у скорпионщиков): разместить этот порт в TR-DOS, и где-то среди адресов #3D00-#3DFF прошить команду записи в этот порт и RET.

    Проект стандарта:
    Если порт размещен в пространстве SOS, тогда по адресу #0013 прошиваем следующее:
    0013 D3XX OUT (#XX),A
    0015 C9 RET
    0016 YY ;Байт контрольной суммы
    где XX - адрес ДПР

    Если порт размещен в адресном пространстве TR-DOS, тогда прошиваем:

    3D5C CD925C CALL #5C92
    3D5F 00 NOP
    3D60 1805 JR #3D67
    3D62 00 NOP
    3D63 D3XX OUT (#XX),A
    3D65 C9 RET
    3D66 YY ;Байт контрольной суммы

    Точка входа #3D62, при этом не нужно пользоваться точкой входа 15663.

    Программа автоконфигурации работает следующим образом:
    1) Проверяется наличие байтов #D3 по адресу #0013 и #C9 по адресу #0015. Если они там есть, считывается контрольная сумма 3 байт с адреса #0013 и сверяется с #0016. Если всё сошлось используем для переключения банков команду CALL #0013
    2) Если пункт 1 не прошел копируем с помощью #3D13 3 байта из ПЗУ TR-DOS по адресам #3D62, #3D63 и #3D65. Сверяем ячейки с эталоном, проверяем контрольную сумму. Если всё сошлось используем для переключения банков команду CALL #3D62.
    Последний раз редактировалось Jukov; 21.01.2006 в 21:23.

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

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

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

Похожие темы

  1. Ответов: 6
    Последнее: 10.09.2013, 16:04
  2. Порты памяти - Scorpion и др.
    от ASMAN в разделе Программирование
    Ответов: 27
    Последнее: 18.06.2008, 12:20
  3. Расширение памяти
    от alexfreed в разделе Память
    Ответов: 7
    Последнее: 16.11.2005, 17:49
  4. Ответов: 76
    Последнее: 18.07.2005, 13:34
  5. Мег памяти на скорпе...
    от lvd в разделе Scorpion
    Ответов: 8
    Последнее: 04.06.2005, 12:06

Ваши права

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