User Tag List

Страница 3 из 3 ПерваяПервая 123
Показано с 21 по 30 из 30

Тема: Эмуляция 8080 на z80

  1. #21

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

    По умолчанию

    ivagor, а как ты эмулируешь флаги?
    Прихожу без разрешения, сею смерть и разрушение...

  2. #22

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В основном варианте никаких специальных усилий для коррекции флагов не прилагается, как команды z80 сформировали, так и есть.

  3. #23

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

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    как команды z80 сформировали, так и есть.
    но это же не полностью совместимо
    Прихожу без разрешения, сею смерть и разрушение...

  4. #24

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Задача - запуск программ для 8080, самый вероятный источник программ - специалист, поэтому тренируюсь на нем. Приоритеты в решении этой задачи:
    1. Быстродействие
    2. Точность во всех проявлениях (флаги, соотношение длительностей команд и т.п.)
    Сейчас п.1 на порядки важнее. Несовпадение установки флага четности влияет из популярных программ только на потомки микрософтовского бейсика 3.2. Пробное добавление коррекции этого флага показало, что если очень надо, то можно и корректировать, но при наличии патченых под z80 версий бейсика за флаг четности можно особо не переживать, лучше пусть эмулятор работает побыстрее.

  5. #25

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

    По умолчанию

    Так сам флаг необязательно корректировать, можно сохранять последний результат несовместимой команды и потом, когда надо, просто проверять его на чётность каким-нибудь OR. И для скорости иметь два набора таблиц с двумя вариантами эмуляции, которые будут неявно переключаться (тот самый "inc h" или "ld h,?") после команды, чтобы для совместимых не замедляться сохранением и проверкой результата.
    Прихожу без разрешения, сею смерть и разрушение...

  6. #26

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Т.е. как я понимаю разделить обработку флага четности на 2 части: в арифметической команде сохранить результат, который возможно потребуется проверить на четность, и переключить таблицу на условные переходы с проверкой на четность. Плюс там еще надо предусмотреть возможность переключения обратно на "облегченные" варианты после того, как "подозрительный" результат или сам флаг четности станут неактуальны. Сам бы я так делать не стал, слишком много мороки и слишком много кода, проще сразу проверить и установить флаг четности после арифметических команд (хотя в быстром варианте это тоже привело к сильному разбуханию кода). Ну и повторюсь - в этом нет серьезной необходимости, вот если кто-нибудь сделает программу или игрушку сильно завязанную на флаг четности, тогда можно будет еще подумать над этой темой.

  7. #27

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Интерпретатор 8080 на 8080 оказался не настолько хуже интерпретатора на z80, насколько я ожидал. Медленнее на 25-33%, по размеру в полтора раза больше. Но если z80 на 20 МГц есть, то с подобными 8080 напряженка.

  8. #28

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

    По умолчанию

    Прихожу без разрешения, сею смерть и разрушение...

  9. #29

    Регистрация
    26.12.2010
    Адрес
    Кубань
    Сообщений
    1,159
    Спасибо Благодарностей отдано 
    42
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    26 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Да, интересно, сколько максимальных вложений уместится в память? :-)
    То есть, 8080 эмулируется на 8080, который эмклируется на 8080, который эмулируется...

  10. #30

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Скорее всего интересующиеся подобной тематикой в курсе, но не вижу ничего плохого в том, чтобы привести ссылку на x86 Alone Codera, там рядом и z80. А на его ютубовском канале можно посмотреть соответствующие стримы.

Страница 3 из 3 ПерваяПервая 123

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

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

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

Похожие темы

  1. Z80 => 8080 адаптация
    от NEO SPECTRUMAN в разделе Программирование
    Ответов: 22
    Последнее: 22.06.2021, 18:12
  2. схема АОН на 8080/z80
    от sergey2b в разделе Разный софт
    Ответов: 7
    Последнее: 07.02.2010, 22:43
  3. эмуляция Z80: тайминг
    от boo_boo в разделе Эмуляторы
    Ответов: 5
    Последнее: 06.02.2006, 13:29
  4. An 8080/Z80 C Compiler
    от breeze в разделе Программирование
    Ответов: 1
    Последнее: 18.08.2005, 06:54

Ваши права

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