HeadlinesBriefing favicon HeadlinesBriefing.com

Marty PC: Эмулятор IBM PC/XT с точностью цикла на Rust

Hacker News •
×

Marty PC — это эмулятор с точностью цикла для старых IBM PC и совместимых, включая IBM Model 5150 (PC), IBM Model 5160 (XT), IBM PCjr и Tandy 1000. Разработан dbalsom с апреля 2022 года как проект по изучению Rust, работает на Windows, Linux и macOS, доступна демо в браузере. Эмулятор ориентирован на разработчиков ретро PC с обширными инструментами отладки и журналами.

Эмуляция CPU Intel 8088 достигает 99.9997% точности цикла, проверенная против физического 8088, подключенного к microcontroller Arduino MEGA через проект Arduino8088. Этот подход, проверенный на hardware, выявил и исправил numerous неточностей очереди предварительного извлечения. Marty PC был первым эмулятором, запустившим демо 8088 MPH (апрель 2023) и демо Area 5150 (май 2023).

Эмуляция периферии включает 8253 PIT (тестировался с осциллографом), 8237 DMAC, 8259 PIC, 8255 PPI, 8250 UART, игровой порт и параллельный порт. Включена реализация CPU NEC V20, но не полная точность цикла. Текущая версия 0.4.1, разработка 0.5.0. Сборки через GitHub Releases или артефакты Actions; сборка из исходного кода требует руководства Wiki Marty PC.

Ключевые сущности: Компании: IBM, Intel, NEC, Tandy, Arduino, GitHub | Люди: dbalsom

Часто задаваемые вопросы: Как Marty PC достигает точности цикла 8088?

Marty PC проверяет свою эмуляцию CPU 8088, выполняя инструкции одновременно в эмуляторе и на физическом CPU 8088, подключенном к microcontroller Arduino MEGA, сравнивая результаты цикл за цикл через проект Arduino8088.