| Разработка и ромхакинг > Ромхакинг и программирование |
| Написать эмулятор NES самому |
| (1/4) > >> |
| ilua_great:
Хочу летом, на досуге, написать эмулятор Nes на Java. Но как? :-\ Java немного знаю и постоянно совершенствуюсь в этом направлении, а вот как писать эмулятор, не представляю. Какую литературу почитать? Может кто какие документы по теме подкинет. Буду крайне признателен. :D |
| gepar:
Ну можешь посмотреть исходники другого nes эмулятора, этого например. |
| HoRRoR:
http://dendy.migera.ru/ |
| ilua_great:
gepar, спасибо. HoRRoR, спасибо, то, что нужно. Всем добра :hi: |
| CrazyMax:
Охренеть. Во народ пошел... --- Цитата: ilua_great от 10 Май 2011, 19:23:13 ---Java немного знаю... --- Конец цитаты --- и сразу же эмулятор писать. o_0 |
| gepar:
CrazyMax,ну так всегда же хочется сразу что-то интересное написать, все эти элементарные программы вроде калькулятора это же не так интересно :) |
| CrazyMax:
Эмуляция калькулятора - это самое сложное, пусть сначала эмуль NESа напишет ;) |
| SPOT:
Написание программ-эмуляторов |
| gepar:
HoRRoR,при участии новичков - да, обычно все. На хабре кстати была статья о написание эмулятора старенькой атари, это так чтобы в общем представить что же именно надо делать, можешь поискать, эмулятор Atari 2600 если не ошибаюсь автор там писал. |
| Tron2:
Если делать эмуль то такой который превосходит уже существующие. |
| CrazyMax:
--- Цитата: Neutron-239 от 11 Май 2011, 18:33:23 ---Если делать эмуль то такой который превосходит уже существующие. --- Конец цитаты --- Поэтому я и подчеркнул "...Java немного...", а то что знать как работают процессоры (все равно какие), их регистры, флаги и т.д., как работает шина, память (как мапится, как идет обращение...)... как использовать битовые/логические операции (без них тут вообще никак) так это все не надо? А так получается, выучил "немножко" язык программирования, вывел на экран пару строчек (окон) и вперед эмулятор писать. |
| ilua_great:
CrazyMax, год на C/C++, несколько лет на Pascal, Около полугода на Java... <_< |
| CrazyMax:
--- Цитата: ilua_great от 11 Май 2011, 19:24:37 ---CrazyMax, год на C/C++, несколько лет на Pascal, Около полугода на Java... <_< --- Конец цитаты --- Ну и как успехи? Тогда осталось тебе еще ассемблер выучить, если собираешься писать эмуль, как ты будеш отлаживать инструкции проца? Ты даже не понял о чем я написал. Для того, чтобы писать эмулятор одни доки не помогут по конкретной платформе, нужно представлять как работают все устройства изнутри и неважно какая платформа. P.S. ilua_great, я не пытаюсь разубедить, просто изучать языки программирования с написания эмулятора - это полный бред (поверь мне, я начал программировать в 1989 году, правда тогда о эмуляторах ничего не знали :) ) . |
| ilua_great:
Документы я получил. Буду разбираться. Откуда такая уверенность в провале? |
| Maelstrom:
ilua_great, Эмулятор на квантовый наладонник пишешь? |
| ilua_great:
Именно! Люди пишут эмуляторы на Java, чем я хуже? Потом на наладонник перенесу. Буду на парах в танчики гонять на эмуляторе собственного производства же. :cool: |
| HoRRoR:
Какие все умные, лол. Правда в компетентности умников сомневаюсь. Может человек для саморазвития взялся писать, какая вам нахрен разница? --- Цитата: CrazyMax от 11 Май 2011, 19:31:01 ---Для того, чтобы писать эмулятор одни доки не помогут по конкретной платформе, нужно представлять как работают все устройства изнутри и неважно какая платформа. --- Конец цитаты --- Что ты этим хочешь сказать? Что надо знать как работает микроволновка, чтобы разогреть в ней еду? Реализации могут быть разными, интерфейсы, протоколы и прочее стандартизированы. И зачем знать подробности конкретной реализации для воспроизведения программного кода? Достаточно иметь спецификацию, в которой описаны стандарты. А уж как это будет работать - решать тебе, исходя из обстановки. |
| CrazyMax:
Не путай разные вещи - пользоваться чем-либо и эмулировать ее работу. О компетентности "умников" я промолчу. |
| gepar:
--- Цитата: CrazyMax ---(поверь мне, я начал программировать в 1989 году, правда тогда о эмуляторах ничего не знали ) . --- Конец цитаты --- Да ладно? Мне почему-то кажется что первые атари додумались эмулировать в те времена :) |
| HoRRoR:
--- Цитата: CrazyMax от 11 Май 2011, 20:08:33 ---Не путай разные вещи - пользоваться чем-либо и эмулировать ее работу. --- Конец цитаты --- Ну, скажем так, в данном случае надо эмулировать нагревание пищи в замкнутом пространстве электромагнитными волнами определённой частоты, а не генерацию оных и прочее. Нам дан интерфейс - генератор электромагнитных волн, как он был реализован в каждом конкретном случае - нас не колышит. Если передо мной, например, стоит цель эмулировать выполнение программного кода, зачем мне знать, как это делает процессор? Мне достаточно знать информацию о каждой эмулируемой инструкции, эмуляция процессора будет крайне абстрактна, чем-то даже можно пренебречь. А вся необходимая информация о железе прекрасно описана в документации. Речь идёт об эмуляторе платформы (принципов работы железа), а не об эмуляторе конкретного железа со всеми его особенностями. Другой вопрос - насколько надо абстрагироваться, ибо не всегда спецификации достаточно, не всё бывает описано и часто встречаются подводные камни, особенно в сложных системах. |
| Навигация |
| Главная страница сообщений |
| Следующая страница |