86LexX, xttx, я уже запутался, мы сейчас о чём?
ИМХО. Если об эмуляции chip8, то в общем то написать эмулятор этой системы ничего сложного не содержит. Написать парсер машинных кодов и выполнять их.
Ну лично я всё о потенциальной возможности написания глобальной такой статьи, о том, как написать эмулятор.
Практическая реализация эмулятора чип8 вряд-ли кого-то интересует.
Помимо парсера опкодов, нужно ещё память в массив, регистры в переменные, стэк в arrayList, основной цикл подогнать что б крутился с нужной частотой, прерывания от кнопок, графика, звук и... всё собственно
![Улыбка :)](//www.emu-land.net/forum/Smileys/default/smiley.gif)
. Основные компоненты консоли есть, учится на нём можно.
Опять же если брать за основу более сложные системы, например PS3 где есть как минимум 8ми ядерный процессор, то тут базовыми знаниями ну никак не обойтись. Можно конечно написать запускатор игр, это легче, чем эмуляция железа.
Ну да, после чип8 только за PS3 и браться... Зачем из крайности в крайность? Геймбой, нес... Очень удобно, много инфы, много исходников, есть свои заморочки и достаточно интересно ...
Опять же миф об ассемблере. В целом скорость написания ПО на нём ниже, чем на высокоуровневых ЯПах. Ошибок допустить можно больше. Дебажить код сложнее. А читать чужой код так вообще веселье. НО к нему быстро привыкаешь.
Зачем писать ПО на асме? Разве что кусочек встроить, в котором 100500 раз в секунду надо в цикле что-то простенькое делать (да и то сомнительно, т.к. скомпиленная реализация на с, мало чем будет отличатся...). Я имел в виду что ассемблер нужен что бы понимать что делает программа, для системы, которую ты пытаешься за эмулировать.