| Разработка и ромхакинг > Ромхакинг и программирование |
| Написать эмулятор NES самому |
| << < (4/4) |
| teremochek:
--- Цитата: Smoke от 11 Ноябрь 2013, 23:25:16 --- Ага, "Написание эмулятора денди для чайников", лол :lol: --- Конец цитаты --- Конечно, речь не идет о написании полноценного эмулятора, который запускает все игры. Самый простой вариант, с запуском 1- 2 игры. Наверняка найдутся русские люди, которые сумеют показать и доходчиво объяснить, как работают все детали.. Удивительно, что еще не написали такую книгу. Видимо для издателей важней художественная литература про зомбей :lol: |
| evgeny:
Технические документы по NES есть. Для тех, то способен написать эмулятор этого достаточно. |
| Guyver(X.B.M.):
Ещё есть куча сырцов в нете. Я в своё время доделывал один эмулятор, выбирал самый простой, где кода поменьше было ;о))) Особенность его была в том, что он был заточен под midi воспроизведение звуков и музыки из рома... Но автор его так и не доделал. Мне удалось его допилить, даже при том, что я не программер, да и в архитектуре НЕС не шарю вообще. Так что если захотеть - можно всё понять и сделать... Зачем писать с нуля, когда уже всё написано? Бери, разбирайся да правь... |
| igoru:
Guyver(X.B.M.), а билд остался какой-нибудь? Может скинешь поглядеть? |
| Smoke:
На самом деле ответ почему такой книги нет прост. Знающим людям тупо либо в падлу это делать, либо нет времени. |
| s1nka:
На эту тему тут есть одна хорошая фраза: --- Цитата ---Before considering developing your own NES emulator, ask yourself if your efforts may be better spent helping out those who already have emulators in development! --- Конец цитаты --- При этом развернуться есть куда. |
| Mr2:
--- Цитата: teremochek от 12 Ноябрь 2013, 11:58:32 ---Удивительно, что еще не написали такую книгу. --- Конец цитаты --- В книге был бы смысл, если бы не было готовых эмуляторов. Эмулятор повторяет работу консоли. Изучаешь как консоль обрабатывает данные из картриджа, и програмно повторяешь её действия. Всё гениальное просто. :lol: |
| teremochek:
--- Цитата: evgeny от 12 Ноябрь 2013, 12:10:15 ---Технические документы по NES есть. Для тех, то способен написать эмулятор этого достаточно. --- Конец цитаты --- Написать способны все, кто умеет писать. Другое дело, что хочется еще и понять. Надо-же опыт получить.. --- Цитата: s1nka от 12 Ноябрь 2013, 16:01:22 ---На эту тему тут есть одна хорошая фраза:При этом развернуться есть куда. --- Конец цитаты --- Респект! --- Цитата: Smoke от 12 Ноябрь 2013, 15:44:10 ---На самом деле ответ почему такой книги нет прост. Знающим людям тупо либо в падлу это делать, либо нет времени. --- Конец цитаты --- Да. И еще все-таки, такую книгу не просто написать (Если брать разбор НЕС целиком, со всеми мелочами). И чего ради.. Кроме того, действительно, исходников полно. --- Цитата: Guyver(X.B.M.) от 12 Ноябрь 2013, 14:12:03 ---Ещё есть куча сырцов в нете. Я в своё время доделывал один эмулятор, выбирал самый простой, где кода поменьше было ;о))) Особенность его была в том, что он был заточен под midi воспроизведение звуков и музыки из рома... Но автор его так и не доделал. Мне удалось его допилить, даже при том, что я не программер, да и в архитектуре НЕС не шарю вообще. Так что если захотеть - можно всё понять и сделать... Зачем писать с нуля, когда уже всё написано? Бери, разбирайся да правь... --- Конец цитаты --- Главной задачей для меня разобраться как эмулятор работает. А писать новый эмулятор я не собираюсь :) Взял посмотреть исходник. Ничего не понять.. (Да тем более там файлов куча, не знаю какой открывать.. ) --- Цитата: Guyver(X.B.M.) от 12 Ноябрь 2013, 14:12:03 ---..если захотеть - можно всё понять и сделать... --- Конец цитаты --- Золотые слова. |
| s1nka:
teremochek, если интересно просто разобраться как работает эмулятор, то многие советую изучить работу CHIP8. Довольно легко, да и статей на русском куча в интернетах. Если мало, то можно усложниться до CHIP16. Ну, а дальше идти уже более сложными системами. |
| MobNet:
По поводу сорцев джава сорцев ток один тот что я постил, на скока я знаю,а чтоб понять как работает сама приставка пусть учит программирование под денди. А вообще эта консоль самая простая ее эмулятор есть даже на JavaScript |
| teremochek:
Пытался разобраться, в эмуляции CPU(NES). Порядок действий: 1) *Читаем из рома 1 байт. (код операции) 2) *Исходя из кода получаем : команду, способ адресации, длину, время. 3) Читаем еще 0 - 2 байт, исходя из длинны. ( Получаем базовый Адрес) 4) Преобразуем Адрес, полученным способом адресации. 5) Читаем память по преобразованному адресу. 6) *Выполняем команду (со значением полученным из адреса) 7) Сохраняем получившееся значение в преобразованный Адрес. 8) *Прибавляем счетчик времени. Счетчик команд увеличивается при чтении байта из рома, и изменяется при выполнении некоторых команд. |
| teremochek:
--- Цитата: HoRRoR от 10 Май 2011, 19:27:26 ---http://dendy.migera.ru/ --- Конец цитаты --- Спасибо, информативный сайт. (Ранее не заметил эго) Раз уж заглянул -> Какой минимум нужен для эмуляции игры с изображением? (Как я понимаю, без кода графического процессора игра не сможет эмулироватся) Сможет-ли работать игра без звукового сопроцессора? 1.Первое что нужно загрузить РОМ в память. (Загрузчик) 2.Основной процессор (6502) - обязательно нужен!, выполняет код. 3.Память. В некоторых эмуляторах это отдельный класс. Его задача обмен данных процессора с остальными устройствами, которые отражаются в его адресном пространстве. 4.Графический процессор. Выводит изображение на экран. |
| Навигация |
| Главная страница сообщений |
| Предыдущая страница |