Важная информация

User Tag List

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

Тема: Простой тест стабильности шины данных в момент подтверждения прерывания

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

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Veteran
    Регистрация
    07.10.2006
    Сообщений
    1,644
    Спасибо Благодарностей отдано 
    243
    Спасибо Благодарностей получено 
    249
    Поблагодарили
    155 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Простой тест стабильности шины данных в момент подтверждения прерывания

    Написал простой тест проверки стабильность шины данных в момент подтверждения прерывания на фоне переключения страниц ОЗУ: im2test.zip


    Если шина данных стабильно = #FF на момент прерывания, тест работает бесконечно, выводя в верхней трети экрана произвольные атрибуты, и мигая черно/белым в остальной части экрана. Если шина данных нестабильна, тест, если он был запущен после USR 0, выйдет в бейсик с сообщением DATA BUS ERROR, если из меню 128, сбросится. В процессе работы тест постоянно переключает страницы ОЗУ, и копирует 256 байтов из ПЗУ в текущую верхнюю страницу.

    upd: Тест можно запускать и на 48к моделях - если тест "висит" без каких-либо признаков жизни, шина данных в порядке, если выходит в бейсик с сообщением, шина нестабильна.

    upd: Тест не вполне подойдет для машин с более точной дешифрацией порта #7FFD, в частности, для Скорпиона - он будет работать, но без переключения страниц и видеоэффектов, просто будет висеть, как и на 48к моделях. Но если шина данных нестабильна и без переключений страниц, тест на Скорпионе закончится заполнением экрана упорядоченным фиолетовым "матрасом".

    upd. Для +2А/+3 он не подойдет вообще.

    Листинг ассемблера привожу.

    org #6000

    // иниц. IM2
    DI
    LD (SAVESP),SP
    LD HL, #5B00
    LD A,H
    L1 LD (HL),#60
    INC HL
    BIT 2,H
    JR Z,L1
    LD (HL),#61
    LD I,A
    IM 2
    EI

    // основной бесконечный цикл
    L3 XOR A
    LD H,A
    LD L,A
    L2 OUT (#FD),A
    LD DE,#D800
    LD BC,256
    LDIR
    INC A
    CP 32
    JR NZ,L2
    JR L3

    // обработка некорректного прерывания - выход в бейсик 48
    ORG #6060
    LD SP,0
    SAVESP EQU $-2
    LD BC,#7FFD
    LD A,#10
    OUT (C),A
    IM 1
    EI
    RET

    // обработка корректного прерывания
    ORG #6160
    EI
    RET

    - - - Добавлено - - -

    Portos13 запустил этот тест на своей машине, и у него он выдал "DATA BUS ERROR". Моё предположение, из-за чего у него не работает дема EyeAche2, оказалось верным. Возможно, тест будет полезен кому-то ещё.

    Тест также полезен в том плане, что он более полно тестирует железо по сравнению с существующими тестами на ту же тему - т.к. проверка стабильности шины данных происходит на фоне переключения страниц. В частности, обычные тесты стабильности шины у Portos13 отрабатывали без вопросов, включая тест INT`a от Ковалевского
    Последний раз редактировалось Spectramine; 20.11.2017 в 16:27.

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

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

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

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

Похожие темы

  1. Момент считывания из ОЗУ?
    от Sergei Frolov в разделе Память
    Ответов: 15
    Последнее: 25.08.2016, 14:07
  2. куплю самый простой спек! 48кб самый простой
    от REMR в разделе Барахолка (архив)
    Ответов: 9
    Последнее: 23.08.2008, 23:42
  3. Ответов: 4
    Последнее: 12.04.2005, 07:27
  4. Циклы шины Z80 + разбивка команд по циклам шины
    от lvd в разделе Несортированное железо
    Ответов: 4
    Последнее: 28.03.2005, 02:08

Ваши права

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