6800 I флаг при сбросе
Я написал эмуляцию микрокомпьютерного тренажера Heathkit ET-3400A на Java, в основном для того, чтобы посмотреть, смогу ли я это сделать, и чтобы мои ноги намочили на Java. Странный вопрос, но есть несоответствие (одно из многих, которое я обнаружил) в техническом описании 6800 и справочнике программиста. В таблице указано, что флаг I (маска прерывания) устанавливается при сбросе. Ссылка программиста, кажется, указывает на иное. Кто-нибудь знает, что это на самом деле? Некоторое время назад продал свой ET-3400A, до сих пор ругая себя за это.
Если кому-то интересно, у меня есть это на Github, и он работает в Windows, MacOS и Linux.
Ответы
В таблице указано, что флаг I (маска прерывания) устанавливается при сбросе.
Вы имеете в виду, что Iфлаг устанавливается при возникновении прерывания сброса? Если нет, поясните, что вы имеете в виду. Но если вы это имеете в виду, это правильно. Когда обслуживается какое-либо прерывание, устанавливается Iфлаг (маска прерывания), так что никакие дополнительные запросы прерывания не будут обслуживаться, пока не будет обработано текущее прерывание.
Ссылка программиста, кажется, указывает на иное.
Здесь было бы полезно цитировать ссылку. Я не вижу никаких указаний на то, что маска прерывания очищается / сбрасывается при возникновении запроса на прерывание.