User Tag List

Страница 2 из 6 ПерваяПервая 123456 ПоследняяПоследняя
Показано с 11 по 20 из 131

Тема: Баг формата SZX

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

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

    Регистрация
    30.01.2006
    Сообщений
    1,921
    Спасибо Благодарностей отдано 
    73
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    80 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Spectramine Посмотреть сообщение
    и некорректных префиксов #DD/#FD, как написано в описании формата. Т.е. для корректных префиксов #DD/#FD этот флаг неактуален.
    что значит "некорректный префикс"? У Z80 все префиксы корректные.

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

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    еще вспомнил, тема поднималась недавно - https://spectrumcomputing.co.uk/foru...pic.php?t=7086
    выход retn/reti после корректного NMI (что возможно при модификации пзу) также может прерывание отложить
    тогда сразу после будет невозможно понять, выполнялся ли предыдущий байт, если это код префикса или ei
    интересная информация, правда это актуально только при возвращении из NMI, а NMI не может сработать при выполнении префикса.
    Таким образом проблема может возникнуть только если снэпшот сохранен сразу после возврата из NMI обработчика который модифицировал адрес возврата таким образом, чтобы в предыдущем байте был префикс.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

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

  3. #2

    Регистрация
    07.10.2006
    Сообщений
    1,731
    Спасибо Благодарностей отдано 
    257
    Спасибо Благодарностей получено 
    275
    Поблагодарили
    167 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Повторюсь - вообще цепочки префиксов прерывать конечно можно (и иногда нужно), нельзя прерывать команду после значимого префикса.

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

    Снапшот с командой, прерванной после значимого префикса, не сможет корректно прочитать ни один эмулятор, т.к. формат снапшота не предполагает прерывание в середине команды.

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

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    Второй момент - при при таком подходе сохранение SZX будет сбивать состояние процессора, заставляя его выполнить дополнительную инструкцию, таким образом сохраненный снэпшот будет битым, т.к. не будет отражать точное состояние процессора в момент сохранения.
    Нет, не будет, нужно сохранять снапшот после полного выполнения последней команды, либо во время цепочки префиксов, но не после значимого префикса.
    Последний раз редактировалось Spectramine; 11.11.2024 в 15:34.

  4. #3

    Регистрация
    30.01.2006
    Сообщений
    1,921
    Спасибо Благодарностей отдано 
    73
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    80 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Spectramine Посмотреть сообщение
    Снапшот с командой, прерванной после значимого префикса, не сможет корректно прочитать ни один эмулятор, т.к. формат снапшота не предполагает прерывание в середине команды.
    что значит ни один, доработанный ZXMAK2 может и корректно читает такие снэпшоты.


    Цитата Сообщение от Spectramine Посмотреть сообщение
    Нет, не будет, нужно сохранять снапшот после полного выполнения последней команды, либо во время цепочки префиксов, но не после значимого префикса.
    Как быть если я хочу сохранить текущее состояние процессора, в том виде как есть, а не "после выполнения команд"?
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

  5. #4

    Регистрация
    07.10.2006
    Сообщений
    1,731
    Спасибо Благодарностей отдано 
    257
    Спасибо Благодарностей получено 
    275
    Поблагодарили
    167 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    что значит ни один, доработанный ZXMAK2 может и корректно читает такие снэпшоты.
    Ну вот только он один и может))

    Как быть если я хочу сохранить текущее состояние процессора, в том виде как есть, а не "после выполнения команд"?
    Если вы хотите сохранять состояние процессора в середине выполнения команды, можно написать своё расширение формата, ни с чем не совместимое, например.

  6. #5

    Регистрация
    28.08.2023
    Адрес
    г. Брест, Беларусь
    Сообщений
    142
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    54
    Поблагодарили
    33 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Мнэээ, а о чём спор? Я, конечно, как Ходжа Насреддин, ничего не понимаю в эмуляторах, но я точно читал документацию для zx-state формат. И там ясно написано, если не читается и в Spectaculator и в FUSE, посмотрите в FUSE как надо записывать.

  7. #6

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,293
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    203
    Спасибо Благодарностей получено 
    1,458
    Поблагодарили
    948 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Chwe Посмотреть сообщение
    Мнэээ, а о чём спор?
    в приведённом примере PC=#F46D INC HL
    но в коде выполняется #F46C INC IX

  8. #7

    Регистрация
    08.09.2005
    Адрес
    Воронеж
    Сообщений
    4,966
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    314
    Поблагодарили
    237 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    еще вспомнил, тема поднималась недавно - https://spectrumcomputing.co.uk/foru...pic.php?t=7086
    выход retn/reti после корректного NMI (что возможно при модификации пзу) также может прерывание отложить
    тогда сразу после будет невозможно понять, выполнялся ли предыдущий байт, если это код префикса или ei
    Прихожу без разрешения, сею смерть и разрушение...

    Этот пользователь поблагодарил Lethargeek за это полезное сообщение:

    ZXMAK(12.11.2024)

  9. #8

    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    1,691
    Спасибо Благодарностей отдано 
    302
    Спасибо Благодарностей получено 
    223
    Поблагодарили
    159 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZXMAK Посмотреть сообщение
    Интересно узнать статистику - какие эмуляторы умеют корректно загружать этот SZX снэпшот.
    а какой инструмент охранил такой снапшот?
    Heavy on the disasm
    Eric and the disasm
    Mask 3: Venom strikes disasm
    Bard's disasm

  10. #9

    Регистрация
    07.10.2006
    Сообщений
    1,731
    Спасибо Благодарностей отдано 
    257
    Спасибо Благодарностей получено 
    275
    Поблагодарили
    167 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Bedazzle Посмотреть сообщение
    а какой инструмент охранил такой снапшот?
    Сам ZXMAK2 и сохранил, в снапе инфа есть.

  11. #10

    Регистрация
    30.01.2006
    Сообщений
    1,921
    Спасибо Благодарностей отдано 
    73
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    80 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    да, лучше конечно добавить флаги для состояния префиксов в снэпшот. Без этого снэпшоты неполноценные получаются.

    А как с автором SZX связаться?
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

Страница 2 из 6 ПерваяПервая 123456 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Баг в W1793 (1818ВГ93).
    от xolod в разделе Клоны на ПЛИС, МК и БМК
    Ответов: 18
    Последнее: 19.03.2019, 14:18
  2. Баг в depacker от hrust1.3?
    от moroz1999 в разделе Программирование
    Ответов: 65
    Последнее: 17.04.2014, 10:39
  3. [Atari]баг игры NINJA?
    от denpopov в разделе Atari
    Ответов: 13
    Последнее: 16.03.2014, 07:20
  4. BUG in SZX snapshots ???
    от VELESOFT в разделе Эмуляторы
    Ответов: 1
    Последнее: 12.09.2009, 13:28

Ваши права

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