Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 18.04.2010, 11:18
forhaxed вне форума Посмотреть профиль Отправить личное сообщение для forhaxed Найти все сообщения от forhaxed
  № 11  
Ответить с цитированием
forhaxed

Регистрация: Jun 2009
Сообщений: 35
http://nesdev.com/
это мне поможет?

Старый 18.04.2010, 11:49
VVall вне форума Посмотреть профиль Отправить личное сообщение для VVall Найти все сообщения от VVall
  № 12  
Ответить с цитированием
VVall

Регистрация: Feb 2009
Сообщений: 1,195
В образе картриджа нет никакой структуры или определённого формата для "сценарий, гарфика и прочее". Всё, что там есть - код и данные. Нет никакого способа без выполнения кода автоматически определить, какие данные где находятся и к чему относятся. Собственно сценарий игры существует только в виде кода, а не некой абстрактной сущности. Для выполнения кода нужно его интерпретировать, это и будет эмуляция.

"Драйвера эмуляции различных чипов" всё те же интерпретаторы, как и эмулятор процессора.

Старый 18.04.2010, 12:27
Tahion вне форума Посмотреть профиль Отправить личное сообщение для Tahion Найти все сообщения от Tahion
  № 13  
Ответить с цитированием
Tahion

Регистрация: Apr 2010
Сообщений: 57
"Собственно сценарий игры существует только в виде кода" - это и есть некая абстракция. На картридже записан байт код содержащий ресурсы игры. Есть например множество утилит вытаскивающих ресурсы из rom файлов SNES. И как они это делают? Они парсят байт код образа и достают ресурсы. Цель эмуляторов существующих и принцип работы например psxeven в том что он эмулирует программно полностью работу приставки каждый чип, каждое устрйоство и тд. Но это незначит что это единственный вариант, это незначит что нельзя распарсить байт код и получить из него свой исполняемый код который не будет требовать всех этих систем но будет работать.


forhaxed я думаю вы не понимаете на сколько это сложно сделать

Старый 18.04.2010, 13:05
VVall вне форума Посмотреть профиль Отправить личное сообщение для VVall Найти все сообщения от VVall
  № 14  
Ответить с цитированием
VVall

Регистрация: Feb 2009
Сообщений: 1,195
Никакого "байт-кода, содержащего ресурсы игры" не существует. Есть код, есть данные. Ресурсы - это данные, набор байт с неизвестной в общем случае структурой. Исключение составляют несжатая графика на 8-16 битных приставках, структуру которой жёстко диктует устройство видеоконтроллера, несжатый цифровой звук, и более современные приставки, на которых гораздо чаще встречаются стандартные форматы хранения графических и звуковых данных.

Парсинг кода и непосредственное исполнение = эмуляция. Парсинг и трансляция в код другого процессора = рекомпиляция, без исполнения статическая (не используется со времён первых эмуляторов), с исполнением динамическая (активно используется в эмуляторах производительных систем). В любом случае, код без эмуляции устройств ввода-вывода бесполезен. Устройства вы статически "распарсить" не сможете.

Старый 18.04.2010, 13:54
Tahion вне форума Посмотреть профиль Отправить личное сообщение для Tahion Найти все сообщения от Tahion
  № 15  
Ответить с цитированием
Tahion

Регистрация: Apr 2010
Сообщений: 57
Смысл самому что то приудмывать? Определение эмуляции есть в теме выше).

И для любого здравомыслящего человека понятно устройство кариджа каким образом хранится на нем данные . И каким образом они взаимодействуют с самой приставкой.
И вообще вы сами говорите "Никакого "байт-кода, содержащего ресурсы игры" не существует" далее противоречешая этой фраза "Парсинг кода и непосредственное исполнение = эмуляция. Парсинг и трансляция в код другого процессора ..рекомпиляция...".

Если разсмотреть это в простом примере то это как перевести книгу с испанского на русский. А приницп работы современных эмуляторов ну к пример psxeven это выучить испанский и прочитать книгу. Ну и вообще хватит этого оффтопа). Если нечгео по теме сказать зачем продалжать безцельно писать посты?

Мне кажется что если forhaxed вообще задает подобные вопросы на форуме мало вероятно что его знания позволят написать этот эмулятор в ближайшее время без дополнительных знаний. Поэтому VVall раз вы обладаете огромными знаниями в данной теме возможно вы приведете список литературы содержащий описания этих механизмов.


Последний раз редактировалось Tahion; 18.04.2010 в 13:57.
Старый 18.04.2010, 14:28
VVall вне форума Посмотреть профиль Отправить личное сообщение для VVall Найти все сообщения от VVall
  № 16  
Ответить с цитированием
VVall

Регистрация: Feb 2009
Сообщений: 1,195
Какое отношение определение слова "эмуляция" имеет к внутреннему устройству эмуляторов? Где вы нашли противоречие во фразах, говорящих о совершенно разных вещах (придуманном вами байт-коде ресурсов и абсолютно конкретном исполняемом коде) - абсолютная загадка, как и ваша аналогия между переводом с языка на язык (нерешаемая программно задача) и простейшей интерпретацией.

Литературы на конкретную тему прикладной эмуляции приставок и прочего нет и быть не может, так как легальность этого дела под большим вопросом. Я, как и очень многие, начал с широко известного текста How to write a computer emulator. Если интересует глубокая теория, в информатике это раздел виртуализации. В любом случае, для написания эмулятора надо очень хорошо знать устройство эмулируемой системы. Автор темы уже нашёл сайт, где есть вся необходимая информация. Но по второму его посту смутно понятно, что ему нужно готовое решение, которого не существует (за исключением собственно nesbox), поэтому вдаваться в детали просто не имеет смысла.

Старый 18.04.2010, 15:22
Tahion вне форума Посмотреть профиль Отправить личное сообщение для Tahion Найти все сообщения от Tahion
  № 17  
Ответить с цитированием
Tahion

Регистрация: Apr 2010
Сообщений: 57
Цитата:
Сообщение от VVall Посмотреть сообщение
Какое отношение определение слова "эмуляция" имеет к внутреннему устройству эмуляторов?
Это определение именно эмуляции в случае эмуляции игровой плотформы .

Цитата:
Сообщение от VVall Посмотреть сообщение
Где вы нашли противоречие во фразах, говорящих о совершенно разных вещах (придуманном вами байт-коде ресурсов и абсолютно конкретном исполняемом коде)
Данные хранятся в определенном виде, значит их можно считать даже если битмап рисуется в рантайме можно считать алгоритм которы его рисует.


Цитата:
Сообщение от VVall Посмотреть сообщение
как и ваша аналогия между переводом с языка на язык (нерешаемая программно задача) и простейшей интерпретацией.
Я не вижу особых отличий в языке программирования, байт коде или разговорном языке, а т.к разговорный для нас гораздо ближе это должно было быть понятней

А какраз перевод с 1 языка на другой это интерпретация

Старый 18.04.2010, 22:15
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 18  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Tahion, ресурсы и код - две РАЗНЫХ составляющих, никакого "байт-кода ресурсов" нет. Котлеты отдельно, мухи - отдельно. Пример - файл swf. Есть библиотека ресурсов, а есть исполняемый байт-код.
Эмуляция и интепретация - два разных подхода. Одно дело читать файл ресурсов, другое - исполнять исполняемый код. Сотни программ читают формат *.pdf, однако же никто не называет их эмуляторами Adobe Acrobat. А здесь задача совсем другая. Ее можно сравнить с задачей написать на AS3 свой флэш-плеер, т.е. некий swf-файл, который загружает в себя другой swf-файл в виде массива байтов и парсящий его на ресурсы и код. Если с первым еще вполне реально справиться (вспомнить тот же gordon), то вот разобрать по байтам и исполнить байткод будет, мягко говоря, проблематично.
__________________
Reality.getBounds(this);


Последний раз редактировалось Wolsh; 19.04.2010 в 00:56.
Создать новую тему Ответ Часовой пояс GMT +4, время: 13:28.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 13:28.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.