Форум Эму-Россия
http://forum.emu-russia.net/

Отличия Dendy и других клонов от оригинальных NES/Famicom
http://forum.emu-russia.net/viewtopic.php?f=13&t=419
Страница 11 из 11

Автор:  VEG [ 25 янв 2014, 13:37 ]
Заголовок сообщения:  Re: Отличия Dendy и других клонов от оригинальных NES/Famico

EvGS писал(а):
Твою-ж мать! Сколько лет, сколько зим... Хотя нет смысла наверное пинать труп. Судя по разговорам он всё равно уже больше не оживет.

Всё может быть. Было бы клёво, если бы Мартин выпустил коммерческую версию Nestopia для мобильных. Тогда у него был бы материальный стимул развивать этот проект.

Автор:  EvGS [ 21 фев 2014, 14:47 ]
Заголовок сообщения:  Re: Отличия Dendy и других клонов от оригинальных NES/Famico

Позавчера узнал о существовании nesemu2 - эмулятора, поддерживающего денди-режим.

GUI видимо еще недоработан. Не все чекбоксы пока работают.
При первом запуске эмулятор создает в своей папке конфиг.файл "nesemu2.cfg"
Меняем в нем "nes.region = ntsc" на "nes.region = dendy" и наслаждаемся.

Последний коммит в source датирован 18.09.2013, а доступный бинарник под Windows на nesemu2.com датирован июлем.
К тому же он как-то странно собран и не работает на Windows XP (выдает ошибку "приложение не является Win32")

Собрал новый бинарник из последних сорцов с помощью Visual C++ express 2010 и DXSDK summer 2004.
Заработало даже на хрюше.

Input по-умолчанию:
Z = "B"
X = "A"
A = "Select"
S = "Start"

Enjoy ^_^:

Вложения:
nesemu2_win32_18.09.2013.rar [456.23 КБ]
Скачиваний: 94

Автор:  EvGS [ 28 июл 2014, 15:18 ]
Заголовок сообщения:  Re: Отличия Dendy и других клонов от оригинальных NES/Famico

С весны не следил за BizHawk. Менюшку для денди-режима добавили еще в 1.7.0, сейчас уже актуальна версия 1.7.3
При настройках по умолчанию мы не можем добраться до этой менюшки. Делаем следующее:

1. Загружаем NES Rom и видим, что меню NES -> Advanced Movie Settings недоступно.
2. Переключаем NES-ядро с "квикнесовского" на "родное": Config -> Cores -> NES in QuickNES (снимаем галку).
3. Emulation -> Reboot Core
4. NES -> Advanced Movie Settings: Region Override = dendy
5. Emulation -> Reboot Core

Может кому пригодится.

Автор:  leenkeen [ 28 июл 2014, 16:21 ]
Заголовок сообщения:  Re: Отличия Dendy и других клонов от оригинальных NES/Famico

Недоступное меню Advanced Movie Settings заметил еще с 1.7.0. А как его включить не догадался, спс!

Автор:  EvGS [ 24 янв 2015, 23:00 ]
Заголовок сообщения:  Re: Отличия Dendy и других клонов от оригинальных NES/Famico

В процессе тестирования новейшей беты puNES всплыла ещё одна особенность денди, касающаяся ее джойстиков.
Если вкратце - оригинальные фамикомовские джойстики отличаются "по поведению" от неоригинальных дендевских (и прочих китайских).

Возникли проблемы с игрой "Joe & Mac - Сavemen Ninja (U) [!]" - которая в денди-режиме puNES не показывала режим "Demo play",
а самопроизвольно стартовала, как если бы игрок нажал "старт".
Специальные тесты на железе показали, что оригинальные фамикомовские джойстики на тесте NesStress.nes
"$4016" "Read 9 - 16 и Read 17 - 24" выдают "4141", а неоригинальные должны выдавать "4040".
В последнем случае проблемы с игрой в денди-режиме не возникает.
Второй тест CountErrors.nes показывает нам, что оригинальные фамикомовские джойстики выдают "ошибки" режимах денди, NTSC и PAL.
Вернее, это не совсем "ошибки", а скорее специфика оригинальных NES\FC.
На денди и её родных джойстиках (которые по словам ХВМ выдают значение "4040" в тесте) ошибок в быть не должно.
У меня нет родных дендеджойстиков, но есть 2 экземпляра фамикомовских, которые ХВМ допилил под денди, и один родной от FC AV:
Цитата:
"я оригинальный допиливал, отпаяв SR вход регистра и он тоже стал выдавать 4040"

По тесту nestress на железе этот "допиленный" джойстик выдает "?0?0" и 0 ошибок.

FHorse добавил поддержку "3rd-party" джойстиков в puNES. Их рекомендуется использовать в режиме денди.
Возможно, будет реализовано автопереключение.

-- 24 янв 2015, 23:13 --

PS: Забавно следующее: на моей денди с оригинальными фамикомовскими джойстиками, которые в тесте на железе выдают "4141",
не возникает никаких проблем с Caveman Ninja, на нинтендуляторе и нестопии тоже. Хотя, по идее, они должны проявляться.
Retrocopy вообще эмулирует неоригинальные джойстики (4040) для всех систем.

Вложения:
Комментарий к файлу: ТЕСТЫ: NEStress.nes и Count_Errors.nes
cntrlr_tests.7z [9.37 КБ]
Скачиваний: 48
Комментарий к файлу: Пиратский (денди)-контроллер в режиме денди
dendy_cntrlr_on_dendy.png
dendy_cntrlr_on_dendy.png [ 10.94 КБ | Просмотров: 3865 ]
Комментарий к файлу: Famicom-контроллер в режиме Dendy (на NTSC и PAL тоже проявляются эти "ошибки")
original_nes_cntrlr_on_dendy.png
original_nes_cntrlr_on_dendy.png [ 15.24 КБ | Просмотров: 3865 ]
Комментарий к файлу: Пиратский контроллер "денди" (4040)
Pirate_controller_4040.png
Pirate_controller_4040.png [ 18.53 КБ | Просмотров: 3865 ]
Комментарий к файлу: Оригинальный Famicom-контроллер (4141)
Original_controller_4141.png
Original_controller_4141.png [ 18.47 КБ | Просмотров: 3865 ]

Автор:  EvGS [ 31 авг 2015, 00:05 ]
Заголовок сообщения:  Отличия Dendy и других клонов от оригинальных NES/Famicom

Процесс пошел всё глубже. Я очень надеюсь, что скоро "белых пятен" в эмуляции денди не останется.

PPU UMC UA6538:
Изображение

Автор:  EvGS [ 21 сен 2015, 12:04 ]
Заголовок сообщения:  Re: Отличия Dendy и других клонов от оригинальных NES/Famico

Спустя 6 лет (ужас, как быстро летит время) наконец-то пригодились наработки HardWareMan'а по PAL-фильтру:

Изображение Изображение Изображение Изображение Изображение
Изображение Изображение Изображение Изображение Изображение
Изображение Изображение Изображение Изображение Изображение

В данном билде хорошо смотрятся такие настройки:
Video -> DirectDraw -> Hardware acceleration
Video -> Special Filter -> PAL
Palette -> PAL emulation: Saturation = 100~120%, Notch = 70~80

Вложения:
Комментарий к файлу: PAL filter early beta
fceux-svn3112+.rar [1.1 МБ]
Скачиваний: 66

Автор:  EvGS [ 19 дек 2015, 00:27 ]
Заголовок сообщения:  Re: Отличия Dendy и других клонов от оригинальных NES/Famico

Камбек в прошлое. Сам не ожидал...
Спустя почти 8 лет Мартин вышел на связь (фейсбук рулит :laugh: ) и помог вылечить
самый серьезный баг нестопии - рандомные щелчки звука:

https://github.com/rdanbrook/nestopia/i ... -165468503
https://github.com/rdanbrook/nestopia/c ... cf4b0d485b

Изображение

Вложения:
nestopia_1.40_soundfix.rar [969.95 КБ]
Скачиваний: 45

Автор:  VEG [ 20 дек 2015, 15:33 ]
Заголовок сообщения:  Re: Отличия Dendy и других клонов от оригинальных NES/Famico

Ого, вот это да! А вернуться к разработке своего эмулятора он не надумал? :)

Автор:  EvGS [ 20 дек 2015, 16:56 ]
Заголовок сообщения:  Re: Отличия Dendy и других клонов от оригинальных NES/Famico

Думаю нет. Данный вопрос он проигнорировал. И даже не помог вылечить другой серьезный баг, закравшийся между 1.37 и 1.38, который приводит к глюкам в денди-режиме.

Мы с феосом посмотрели дифф винмержем, в надежде справиться своими силами - а там всё ядро перекурочено...

Тут хрипы звука с 2008 года не могли вылечить и понять, в чем причина, пока Мартин сам не помог. А вторая проблема еще сложнее.
Этот баг с денди раздражает меня уже очень давно, поэтому мне пришлось сделать билд, который висит в подписи.
Кстати в свете последних событий мне надо бы его обновить - оставить только 1.37 и вылечить в нем хрипы звука.

Автор:  EvGS [ 11 июн 2016, 15:04 ]
Заголовок сообщения:  Отличия Dendy и других клонов от оригинальных NES/Famicom

Ну вот и хорошие новости :clap:

FHorse дебажил нестопию два дня, долго и упорно, пытаясь понять зубодробительный код Мартина.
И в конечном итоге он смог разобраться в проблеме с глюками денди, которая всё висит с 2008 года.
Как и ожидалось, проблема была в части кода, добавленной в 1.38.
Код:
Watching routine Ppu::Run you can easily see that the flag of VBLANK and the NMI are performed to cycles.hClock 681 (HCLOCK_VBLANK_0), 682 (HCLOCK_VBLANK_1) and 684 (HCLOCK_VBLANK_2) that is virtually one scanline after the VACTIVE (240) scanlines. This is fine for PPU_RP2C02 (NTSC) and PPU_RP2C07 (PAL) but not for PPU_DENDY that needs another 50 sleep scanlines. What I did was nothing more than adding these 50 scanlines first of the HCLOCK_VBLANK_0 that are performed only when the variable (ssleep >= 0) and this is true only in the case of PPU_DENDY. This way I left intact the logic with which the routine work for NTSC and PAL, intervening only for Dendy mode because ssleep will always be -1 for PPU_RP2C02 and PPU_RP2C07.
I hope that I was able to explain well.

Патч получился увесистый.
Думаю вряд ли простой человек, не знакомый с низкоуровневыми тонкостями PPU, смог бы осилить эту проблему.
Также я добавил патч, устраняющий периодические выпадения фреймов звука.

Заплатка для nestopia undead edition направлена на рассмотрение в багтрекер

Это оригинальная Nestopia 1.40 с примененными патчами + cpp-файлы, если кому интересно:

Вложения:
Original_Nestopia_1.40_Fixed_by_FHorse.7z [955.11 КБ]
Скачиваний: 109

Автор:  HardWareMan [ 31 окт 2017, 10:24 ]
Заголовок сообщения:  Re: Отличия Dendy и других клонов от оригинальных NES/Famico

Не прошло и 3х лет, как Миша таки отдал нам UMC UA6538... Аллилуйя, братья!
Теперь все коэффициенты четко видно. Нужно теперь систематизировать информацию.

Страница 11 из 11 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/