1

Кто-то сказал мне, что эмуляция Sega Genesis не может быть сделана одним человеком, даже в течение многих лет. Почему это? Небольшие инди-команды и проекты с открытым исходным кодом делают emus бесплатно, а на YouTube есть видео с парнем, пишущим эмулятор NES на C++ менее чем за несколько часов. Почему нельзя сделать эмулятор Sega Genesis?

Если вы можете прочитать документацию по аппаратному обеспечению, которая широко доступна, и вы можете имитировать Motorola 68k плюс сопроцессор Zilog, что может занять так много времени?

1 ответ1

6

Кто-то сказал мне, что эмуляция Sega Genesis не может быть сделана одним человеком, даже в течение многих лет ... почему это так?

Эмуляция классической системы видеоигр чрезвычайно трудна, если ваша цель - 100% точная эмуляция, которая играет во все игры без сбоев или других ошибок.

Небольшие инди-команды и проекты с открытым исходным кодом освобождают emus, и на youtube есть видео, где я пишу эмулятор NES на C++ менее чем за несколько часов.

NES - одна из самых когда-либо разработанных и документированных проприетарных платформ. Информация об этом легко доступна в значительной степени только благодаря свободно доступной работе сотен, если не больше. Вернемся к 1994, 1995, когда большая часть этого началась, и это другая история.

Я гарантирую вам, что у такого парня НЕ будет должным образом эмулироваться все картографы NES в течение нескольких часов. Есть сотни из них, каждый из которых должен быть уникально эмулирован в дополнение к оборудованию NES.

Почему нельзя сделать эмулятор Sega Genesis? Я имею в виду, вот как я на это смотрю

если вы можете прочитать документацию по оборудованию, которое широко доступно

Со многими классическими системами видеоигр документация НЕ была доступна (Sega, Nintendo не просто передаст вам информацию!) и точное поведение таких систем должно быть тщательно разработано.

и может ли имитировать Motorola 68K плюс сопроцессор Zilog, что должно занять так много времени?

Ну, эмулировать процессоры, особенно двухпроцессорные, нелегко. Эмуляция видеопроцессоров, вероятно, еще более сложная, особенно в старых системах, которые часто должны были работать с точностью до цикла, чтобы процессор работал правильно. Это также, как правило, там, где происходит наибольшая недокументированная / серая зона. Кроме того, код должен быть эффективным и быстрым для эмуляции со скоростью 60 кадров в секунду или чем-то рядом с ним. Это тяжело. Вы можете даже программировать в 68000?

я верю, что можно сделать эмулятор генеза за 3 месяца максимум, если они работают каждый день на нем.

Возможно, если вы нацелены на совместимость только с несколькими играми и можете использовать существующий код эмулятора m68k+Z80 (и имеете опыт его использования), это может быть.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .