Порт FCE Ultra - NES (Dendy)
-
Начал работу над NES эмулятором. Все конечно даже не в альфа, а так начало. К сожалению делаю все очень медленно так как учу АСМ на ходу, в основном все знания из области крэкинга, но не хочу больше рушить, хочу созидать:))))....На данный момент имею более или менее отлаженный модуль эмулирующий 6502 процессор. Делаю все модульно, т.к. 6502 распространенный был проц для приставок, так, что можно потом будет переделать и не на NES. В общем, кому не лень пишите:)))
Это оч классная идея сделать его Но я увы дизайном занимаюсь так что увы в программировании помочь не смогу. А так разве что кнопочки сделать или ещё что. Удачи над эмулем.
Из хаоса в космос
В крайнем случае я могу сделать gui-обертку для твоего кода, хотя сейчас очень занят и есть более приоритетные задачи. Попробуй сделать движок в динамической библиотеке, было бы очень полезно.
..bw
..bw
динамическая библиотека - абсолютно ни к чему.
а по коду камня 6502 - советую функции чтения и записи в память делать "вуртуальными", т.е. через указатели, так потом будет проще писать поддержку различных маперов и модули железа (например PPU). А ещё лучше как таблицу с диапазонами. Например:
wr_tab:
dd 0x4016, 0x4016, wr_joy
dd 0x2000, 0x3FFF, wr_video
dd 0,0,0
ну или типа того, так и зеркалирование (mirroring) делать проще будет для NES`а (а у него много зеркалируемых кусков...).
для удобства советую использовать в таких функциях stdcall вызовы.
а по коду камня 6502 - советую функции чтения и записи в память делать "вуртуальными", т.е. через указатели, так потом будет проще писать поддержку различных маперов и модули железа (например PPU). А ещё лучше как таблицу с диапазонами. Например:
wr_tab:
dd 0x4016, 0x4016, wr_joy
dd 0x2000, 0x3FFF, wr_video
dd 0,0,0
ну или типа того, так и зеркалирование (mirroring) делать проще будет для NES`а (а у него много зеркалируемых кусков...).
для удобства советую использовать в таких функциях stdcall вызовы.
Извините за тупой вопрос, а что такое NES?
NES - Nintendo Entertaiment System, или попросту у нас в России Денди (нелегальная пиратка).
За автора я очень рад, сам не программист - но если надо что сделать, потестить и т.д. всегда буду рад помочь
За автора я очень рад, сам не программист - но если надо что сделать, потестить и т.д. всегда буду рад помочь
Очень здорово, вот только есть одна неувязочка: лично у меня нет ни одной игры для Денди, но зато есть много игр для Сега...
Очень рад за активный отклик. Постараюсь, все делать ASAP. К концу недели выложу модуль 6502 на растерзание. Надо просто дописать описание и комменты, не думаю, что кто-то хочет терзать голые сорцы:) К сожалению, интерфейса никакого пока нет. Так что только отладчик:))))
Описание эмулятора.
Программа состоит из модулей. Основной модуль - EMUL.ASM
CPU - модуль эмулирующий процессор 6502
PPU - модуль эмулирующий PPU на данный момент полностью пустой:(((
Программа стартует с RESET последовательности, далее попадает в цикл проверки
NMI прерывания. Далее в этом цикле обрабатываются опкоды процессора 6502,
т.е. эмулятор работает в режиме интерпритатора.
В общем, в кратце описал, что уже накропал. Впал в полнейший ступор с написанием PPU,
то ли вдохновение кончилось, то ли пока тямы не хватает. В общем огромная просьба помочь
с этим, кто заинтересован. Так же очень буду рад всем предложениям по улучшению кода и критике,
т.к. лучше это сделать на начальном этапе, чтоб потом не забрести в дебри ошибок.
Ведь, в конце-концов, кто же если не мы?....
Для подробных описаний просьба мылить на moldov_subscribe<ухо>mail.ru
Программа состоит из модулей. Основной модуль - EMUL.ASM
CPU - модуль эмулирующий процессор 6502
PPU - модуль эмулирующий PPU на данный момент полностью пустой:(((
Программа стартует с RESET последовательности, далее попадает в цикл проверки
NMI прерывания. Далее в этом цикле обрабатываются опкоды процессора 6502,
т.е. эмулятор работает в режиме интерпритатора.
В общем, в кратце описал, что уже накропал. Впал в полнейший ступор с написанием PPU,
то ли вдохновение кончилось, то ли пока тямы не хватает. В общем огромная просьба помочь
с этим, кто заинтересован. Так же очень буду рад всем предложениям по улучшению кода и критике,
т.к. лучше это сделать на начальном этапе, чтоб потом не забрести в дебри ошибок.
Ведь, в конце-концов, кто же если не мы?....
Для подробных описаний просьба мылить на moldov_subscribe<ухо>mail.ru
Обязательно обращусь, т.к. обычно на ГУИ у меня все останавливается, так как леньLeency wrote:Это оч классная идея сделать его Но я увы дизайном занимаюсь так что увы в программировании помочь не смогу. А так разве что кнопочки сделать или ещё что. Удачи над эмулем.
ему-нет.ру вагон ромовАтауальпа wrote:Очень здорово, вот только есть одна неувязочка: лично у меня нет ни одной игры для Денди, но зато есть много игр для Сега...
респект
И мы уже давно не пешки,
Мы пули, мы орлы, и решки!
Война ютит бинарный код,
Умри, или иди вперед!
Мы пули, мы орлы, и решки!
Война ютит бинарный код,
Умри, или иди вперед!
Good luck!
I persnally own 2 NES's and love them
I persnally own 2 NES's and love them
"Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
Wow! I really don't know that NES was popular somewhere else too, exept exUSSR countries.
Из хаоса в космос
Ты что, Денди была популярна во всем мире. Только недавно (вот, в 2007 году) Nintendo прекратила ее поддержку (ну техническое обслуживание).
насчет PPU - что именно у тебя не получается?
Ты обращался к эму-гуру по NES на http://emu-russia.km.ru/ под ником Сан4eз? Он знает о Денди все.. Ну или почти все.
Если нужны доки по NES - могу надыбать (ну или по крайней мере сделать вид что ищу)
насчет PPU - что именно у тебя не получается?
Ты обращался к эму-гуру по NES на http://emu-russia.km.ru/ под ником Сан4eз? Он знает о Денди все.. Ну или почти все.
Если нужны доки по NES - могу надыбать (ну или по крайней мере сделать вид что ищу)
Who is online
Users browsing this forum: No registered users and 1 guest