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

User Tag List

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

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

  1. #1
    Veteran
    Регистрация
    07.10.2006
    Сообщений
    1,640
    Спасибо Благодарностей отдано 
    241
    Спасибо Благодарностей получено 
    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
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    Guru
    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    13,754
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    141
    Спасибо Благодарностей получено 
    1,172
    Поблагодарили
    769 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от weiv Посмотреть сообщение
    Portos13 запустил этот тест на своей машине, и у него он выдал "DATA BUS ERROR". Моё предположение, из-за чего у него не работает дема EyeAche2, оказалось верным.
    странно, когда дема начинается вектор берётся строго из #92FF , полной таблицы нет
    (на прерываниях висит переключение страниц для вызова плейера)
    ..................
    (извини, уже понял что дему ты частично изучил)

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

    Цитата Сообщение от weiv Посмотреть сообщение
    Если шина данных стабильно = #FF на момент прерывания, тест работает бесконечно, выводя в верхней трети экрана произвольные атрибуты, и мигая черно/белым в остальной части экрана.
    проверил на своём реале (старый пентагон из 90х) - стабильно мерцает уже минут 5
    Последний раз редактировалось goodboy; 20.11.2017 в 12:09.

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

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    странно, когда дема начинается вектор берётся строго из #92FF , полной таблицы нет
    (на прерываниях висит переключение страниц для вызова плейера)
    ..................
    (извини, уже понял что дему ты частично изучил)
    Да, я знаю. Дело в том, что у Protos13 шина данных не постоянно нестабильна, она засоряется после определённых переключений страниц памяти. Тест Ковалевского у него работал 18 минут без проблем. Я смотрел код демы, ничего там особенного не нашел, кроме переключения страниц через упрощенную адресацию порта, и 2хбайтного вектора прерываний. Предположил, что определённое переключение влияет на шину, проверил этим тестом - действительно.

    проверил на своём реале (старый пентагон из 90х) - стабильно мерцает уже минут 5
    Ну вот, проблем нет - тест не вылетает.

  5. #4
    Guru Аватар для SoftFelix
    Регистрация
    20.03.2007
    Адрес
    Санкт-Петербург
    Сообщений
    2,975
    Спасибо Благодарностей отдано 
    171
    Спасибо Благодарностей получено 
    102
    Поблагодарили
    88 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от weiv Посмотреть сообщение
    upd: Тест не вполне подойдет для машин с более точной дешифрацией порта #7FFD, в частности, для Скорпиона - он будет работать, но без переключения страниц и видеоэффектов, просто будет висеть, как и на 48к моделях.
    Шёл 21-ый век... А что там мешает вставить LD BC,#7FFD?
    Цитата Сообщение от weiv Посмотреть сообщение
    В частности, обычные тесты стабильности шины у Portos13 отрабатывали без вопросов, включая тест INT`a от Ковалевского
    Только про него хотел спросить. У меня КАЙ, он почти Скорп. Сделай, плиз, всеядный тест.

    p.s. А кто в курсе, почему TEST v4.30 ругается на нестабильную шину в TR-DOS'е? В частности, на КАЕ.
    МГТФ - любимый провод!
    KAY-1024(4096)/SL-4/TURBO v2010 + Nemo-FDC + Nemo-IDE (CF 4GB) + SMUC2 Rev.B RTC (HDD 1.6GB + DVD-ROM) + PROF-ROM + ZXMC2 + GENERAL SOUND 2MB + ZX-BUS_TEE + FDD 3.5' + FDD 5.25' + VGA&PAL

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

    По умолчанию

    Цитата Сообщение от SoftFelix Посмотреть сообщение
    Шёл 21-ый век... А что там мешает вставить LD BC,#7FFD?
    Там смысл был в том, чтобы проверить переключение на упрощенной дешифрации порта, как в демке EyeAche2.

    Цитата Сообщение от SoftFelix Посмотреть сообщение
    . Сделай, плиз, всеядный тест.
    Всеядный я ниасилю, стандартов переключения страниц памяти чуть менее чем дофига. Я ж привел исходник, каждый может его допилить на свой комп.

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

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

Эту тему просматривают: 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

Ваши права

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