PDA

Просмотр полной версии : Nescube 1.2 - J2ME эмулятор консоли NES(Dendy)



Dr.Lion/RSM
18.02.2007, 17:59
Nescube- эмулятор безумно популярной в 90-х игровой консоли Nintendo Entertainment System (NES, более известной на просторах СНГ под торговой маркой Dendy) для мобильных устройств (телефонов, смартфонов) с поддержкой Java 2 ME (CLDC-1.0, MIDP-2.0). Для его работы необходимо устройство (далее просто телефон) с достаточно быстрым и мощным процессором.

Эмулятор реализует работу следующих узлов консоли NES:

- центральный процессор CPU 6502 (с незначительными упрощениями в пользу скорости эмуляции);
- видеопроцессор PPU 2C02 (тайминги NTSC, размеры кадра - 256x224 или 256x240);
- звуковой сопроцессор APU 2A03 (очень упрощенная реализация через APU to MIDI transfer);
- подсистема памяти (RAM + SRAM + VRAM + CHR-ROM + PRG-ROM);
- мапперы 0, 1, 2, 3, 4, 6, 7, 8, 11, 15;
- джойстик 1 с поддержкой клавиш Turbo AB.

Основные характеристики и особенности реализации эмулятора:

- четыре видеорежима: Scale LQ, Scale HQ, Dynamic, Static;
- полноэкранный режим Scale LQ и Scale HQ c нарушением пропорции картинки;
- поворот картинки по/против часовой стрелки;
- сменные цветовые палитры;
- возможность изменения яркости и цветности картинки;
- настраиваемая информационная строка - OSD;
- отображение FPS (количества виртуальных кадров за секунду);
- возможность пропуска кадров (Skip frames);
- ряд технологий, управляющих совместимостью/скоростью эмуляции;
- включение/отключение отдельных каналов APU;
- отображение информации об загруженном игровом картридже;
- отображение информации об текущем состоянии java-системы;
- сохранение/восстановление игрового состояния;
- технология непрерывной игры (технология Unceasing play);
- возможность индивидуальной настройки эмуляции для каждой игры;
- возможность переопределения управляющих клавиш;
- возможность минимизации (сворачивания) приложения;
- удобный и крассивый интерфейс;

Nescube написан на J2ME под профиль MIDP-2.0 с применением жесточайшего процедурного программирования, что и позволило выжать максимум быстродействия из Java-подсистемы телефона. В коде используются только стандартные классы профиля, следовательно, эмулятор не заточен под конкретные модели телефонов, бережно расходует память и может работать практически на всех современных телефонах.

Сайт проекта - http://rsm.pud.ru, on-line документация на русском - http://rsm-files.narod.ru/nescube/documentation.html

Dr.Lion/RSM
29.11.2007, 02:50
Тут в соседней теме народ ностальгирует по денди. Возможно мой эмулятор NES, работающий на обычных мобильных телефонах, поможет страждущим, особенно тем, кого интересует портативный вариант великой приставки. Итак...

Проект Nescube подошел к своему логическому завершению. Работа над ним велась более двух лет. На ваш суд представлена финальная версия эмулятора, основанная на ядре второго поколения.

Более подробно здесь - http://rsm.pud.ru

newart
29.11.2007, 05:21
Советую открыть тебе страничку на анлийском языке (а так-же всех основных язках) и разместить там ссылку на donation.
Уверен благодарные найдутся.

newart
12.12.2007, 00:17
Веселый эмулятор.
1 FPS в любом режиме. (motorola v360)

Firestarter
12.12.2007, 00:30
отличный эмулятор
60fps Skip 1-4 (Sony Erricson K550i)

newart
12.12.2007, 01:31
отличный эмулятор
Тупой он, в том смысле что не адаптивный.
Неужели сложно было сделать режимы: Максимальное быстродейтвие и Максимальное качество.
Звук эмулируется?
Если да, то где опции его отключения?

Добавлено через 38 секунд
Я кстати про версию 2.2

Dr.Lion/RSM
14.12.2007, 11:25
newart, представляешь, если зайти в пункт Settings, можно увидеть целый список разделов настроек! И по названиям понятно, что за что отвечает. Там есть и Sound (по умолчанию звук выключен), и Engine (можно регулировать скорость/совместимость) и многое другое!


Тупой он, в том смысле что не адаптивный.
Неужели сложно было сделать режимы: Максимальное быстродейтвие и Максимальное качество.
А как программа может адаптироваться под тупой телефон? НИ НА ОДНОЙ МОТОРОЛЛЕ НИ ОДИН ЭМУЛЯТОР НА ЯВА НЕ РАБОТАЕТ С ПРИЕМЛЕМОЙ СКОРОСТЬЮ! Если ты вдруг усомнился в моих словах, поставь себе забугорный vNes и поиграй на нем!

Емуляторы на яве работают на гране возможностей телефона и его виртуальной машины ява. В телефонах Sony Ericsson применяются процессоры архитектуры AMR с частотой 100-200 МГц и аппаратной поддержкой байт-кода ява, в этот компании сидят нормальные программеры и они смогли сделать нормальную виртуальную машину ява, поэтому на данных телефонах эмуляторы работают нормально.

Если даже на большей половине телефонов Nokia (включая мой N73) реализована кривая и медленная виртуальная машина ява (хотя в телефонах тоже используются ARM-процессоры), то что можно говорить о вечно отстающих моторолах, лж и самсунгах?

newart
14.12.2007, 11:46
Если ты вдруг усомнился в моих словах
Да ты не кипятись. Все что мне надо было это получить подтверждение. :)