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

User Tag List

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

Тема: Вопрос по процедуре сброса

  1. #1
    Junior
    Регистрация
    24.09.2005
    Адрес
    Новосибирск
    Сообщений
    20
    Благодарностей: 0
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Вопрос по процедуре сброса

    Извините за возможно глупый вопрос, я вообще-то чайник в вопросах относительно того, что содержится в ПЗУ.
    Но вот, скажем, при сбросе спектрума 48К возникают пресловутые красные полоски — заполнение ОЗУ двойкой, а потом проверка:
    Код:
    	 . . .
    	LD	H,D
    	LD	L,E
    
    L1:	LD	(HL),#02
    	DEC	HL	
    	CP	H
    	JR	NZ,L1
    
    L2:	AND	A
    	SBC	HL,DE
    	ADD	HL,DE	
    	INC	HL
    	JR	NC,L3
    
    	DEC	(HL)
    	JR	Z,L3
    	
    	DEC	(HL)
    	JR	Z,L2
    
    L3:	DEC	HL
    	 . . .
    Почему процедура устроена именно так:
    1) Какая вообще цель этой процедуры? Проверка ОЗУ?
    2) Почему в память заносятся именно двойки?
    3) Почему от этих двоек потом дважды делается DEC с проверкой того, что после первого DEC’а должен остаться не ноль, а после второго — ноль?

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

  3. #2
    Activist Аватар для Jukov
    Регистрация
    03.12.2005
    Адрес
    Серов
    Сообщений
    471
    Благодарностей: 65
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    все это нужно лишь для того, чтобы проверить работоспособность всего ОЗУ.
    Проверяется, что в ОЗУ нормально пишутся и нули и единицы.
    Кворум-192, Кворум-128 CP/M, Кворум-64, ZS-Scorpion 256 Turbo+&Caro ZX_MC, Мастер48К

  4. #3
    Junior
    Регистрация
    24.09.2005
    Адрес
    Новосибирск
    Сообщений
    20
    Благодарностей: 0
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Очень странная проверка.
    Допустим, сгорели старшие 6 бит байта, и единица в них не записывается (или так не бывает?) — а данная «проверка» этого и не заметит.
    Почему бы не записать, скажем 255, а потом 0, а не 2 и 0?

  5. #4
    Veteran Аватар для Destr
    Регистрация
    26.03.2008
    Адрес
    Питкяранта
    Сообщений
    1,463
    Благодарностей: 676
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Тайльнемер Посмотреть сообщение
    Очень странная проверка.
    Допустим, сгорели старшие 6 бит байта, и единица в них не записывается (или так не бывает?) — а данная «проверка» этого и не заметит.
    Почему бы не записать, скажем 255, а потом 0, а не 2 и 0?
    Бывает.
    У меня на Скорпе как-то один из разрядов сгорел, а я понять не мог чё-за хрень. Работают одни игры, другие нет...
    Только с помощью Service monitor удалось разобратся что пишем в память допустим #E6, а читается #А6.
    Батон микросхему (видимо памяти) поменял, и всё стало ок.

    По уму видимо надо чтоб все разряды по очереди проверялись (писались и считывались), но видимо на заре комп-строения и пзу-юзанья довольствовались лишь котнрольным числом и типа всё ок...
    Последний раз редактировалось Destr; 05.05.2009 в 00:40. Причина: edit

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

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

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

Похожие темы

  1. Симуляция сброса
    от newart в разделе Программирование
    Ответов: 7
    Последнее: 23.08.2008, 19:35
  2. Ответов: 4
    Последнее: 04.06.2008, 19:20
  3. Вопрос по IDE
    от Пётр в разделе Внешние накопители
    Ответов: 67
    Последнее: 13.05.2007, 19:40

Ваши права

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