User Tag List

Показано с 1 по 10 из 60

Тема: Помогите вспомнить игру :-)

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    19.04.2013
    Адрес
    г. Чебоксары
    Сообщений
    609
    Спасибо Благодарностей отдано 
    18
    Спасибо Благодарностей получено 
    175
    Поблагодарили
    135 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    Что-то происходит с регистром 177660.
    Пока что я остановился на предположении, что на реальной машине при чтении из 177662 бит 7 в 177660 сбрасывается не сразу а с какой-то задержкой, а в эмуляторах - мгновенно.
    В игре разрешены прерывания от клавиатуры, где читается код из 177662, и одновременно с этим делается проверка на новый код в 177662 путём тестирования бита 7 в 177660. И вот тут-то и получается конфликт, в релизной версии с оптимизациями, что-то слишком соптимизировалось.

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

  3. #2

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    482
    Спасибо Благодарностей отдано 
    139
    Спасибо Благодарностей получено 
    390
    Поблагодарили
    145 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от gid Посмотреть сообщение
    на реальной машине при чтении из 177662 бит 7 в 177660 сбрасывается не сразу
    Там есть кусок кода где просто висит на нем:

    Для примера загружается этот болдер-даш-3 уровни 0. Лезем в эмулятор, после звука заставки остановить эмулятор и в адресе 001436 меняется команда на скажем tstb #377 (вместо tstb @#177660) ну чтобы сразу флаг взвелся без вопросов.
    (кстати еще не сказал - но редактирование прямо ассемблера в эмуляторе это мегакруть!!!! вот уж НЕ ОЖИДАЛ!)

    Далее - продолжить. Эта вылезающая заставка исчезнет и .. игра виснет дальше на вот таком куске кода (уже по другому адресу):

    001674: tstb @#177660
    001700: bpl 001674

    Ну и оно уходит в цикл на эмуляторе. Бит не выставляется хотя звук клавиш слышен дефолтный, а других команд вообще нет.
    Этот код тоже можно заменить на тот-же tstb #377, но тогда меню игры будет "весело работать" (не будет ждать нажатия клавиши).
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

  4. #3

    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,247
    Спасибо Благодарностей отдано 
    360
    Спасибо Благодарностей получено 
    638
    Поблагодарили
    414 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от gid Посмотреть сообщение
    Пока что я остановился на предположении, что на реальной машине при чтении из 177662 бит 7 в 177660 сбрасывается не сразу а с какой-то задержкой, а в эмуляторах - мгновенно.
    В игре разрешены прерывания от клавиатуры, где читается код из 177662, и одновременно с этим делается проверка на новый код в 177662 путём тестирования бита 7 в 177660. И вот тут-то и получается конфликт, в релизной версии с оптимизациями, что-то слишком соптимизировалось.
    Не могу сказать как в 1801ВМ1, а в 1801ВМ2 в этом случае, когда возникает прерывание VIRQ, то оно отрабатывается спустя одну команду. В UKNCBTL прерывание возникает сразу, потому такой же цикл с клавиатурой не сработает. А вот на реальной УКНЦ работает.
    Попробуйте при возникновении запроса на прерывание отработать его спустя одну команду.

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

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

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

Похожие темы

  1. Помогите вспомнить игру!
    от Оззя в разделе Игры
    Ответов: 2
    Последнее: 30.03.2007, 20:57
  2. Помогите вспомнить игру 2
    от DrE в разделе Игры
    Ответов: 5
    Последнее: 15.03.2007, 11:22
  3. Помогите вспомнить игру
    от Lethlorien в разделе Игры
    Ответов: 2
    Последнее: 23.02.2007, 15:59
  4. помогите вспомнить игру
    от RamTop в разделе Игры
    Ответов: 3
    Последнее: 25.11.2006, 01:02
  5. Помогите вспомнить игру
    от Ilya в разделе Игры
    Ответов: 7
    Последнее: 30.06.2006, 16:34

Ваши права

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