Скриншоты взяты из игры Defender of the Crown, скорее всего с Amiga:
http://www.mobygames.com/game/defend...wn/screenshots
Скриншоты взяты из игры Defender of the Crown, скорее всего с Amiga:
http://www.mobygames.com/game/defend...wn/screenshots
А может и с Atari ST.
Никита, ты проверил у себя, портится ли адрес 017776?
Я не эмулятор пишу, а только дизассемблирую. Потом в коде надо разбираться. Для того, чтобы разобраться, надо при разборе учитывать значения регистров диспетчера памяти, чтобы знать, что и куда пишется в физическую память. Это всё-таки какое-то время надо.
---------- Post added at 17:14 ---------- Previous post was at 17:13 ----------
Вы лучше объясните, как у вас сделана эта эмуляция. Неужто не поняли, где тормоза на аппаратном уровне?
Нет, тормозов нет)
Когда какой-либо процесс дает запрос на VIRQ, вызывается подпрограмма ВПО, которая добавляет этот запрос в специальную табличку (это делается программно).
Далее, как только в USER-процессе будут разрешены прерывания, аппаратный контроллер VIRQ сразу даст прерывания и подсунет вектор, который он вычислит из этой таблички. Затем он уберет вектор из таблички и сдвинет очередь. Если в табличке остались запросы на прерывания по другим векторам, то при следующем разрешении прерываний, этот контроллер выдаст прерывание по следующему вектору из таблички, который был в очереди. И т.д.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)