>>412632 >Какие знания по теме уже имеются? никаких. иначе я бы не стал создавать трхед. Конечно же я хочу реальную железку, чтобы разобраться как железки устроены.
Для начала почитай что-нибудь по архитектуре компьютера. Совсем-совсем энтри левел: Петцольд - Код (уже писал в соседнем треде). После можно переходить к чему-то более серьезному. Есть внушительный талмуд за авторством Таненбаума. Но я его, если честно, не читал. Предпочитаю более олдовые книги. Вот несколько примеров: 1. Трехтомник "Микропроцессоры" под редакцией Преснухина; 2. Двухтомник "Архитектура и программирование микро-ЭВМ" за авторством Уокерли; 3. Винрарнейшая книженция Т. Фрэнека "PDP-11: Архитектура и программирование" - в ней не только описывается один из лучших в истории компьютеров, но и дается очень доходчивое и подробное объяснение внутреннего устройства процессора, начиная системами счисления и представлением чисел, и заканчивая поэтапным исполнением машинных кодов и обработкой прерываний.
В то время, пока ты будешь все больше углубляться в устройство компов, не будет лишним расширять свой кругозор и по другим смежным направлениям. Например, будет полезно изучить ассемблер. Тут тебе поможет книга Зубкова. Если владеешь инглишем и испытываешь отвращение к x86, то есть альтернатива: R. Britton "MIPS Assembly Language Programming". С ней ты поймешь что такое RISC-архитектура (в той литературе, которую я насоветовал выше рассматриваются в основном CISC-архитектуры).
Насчет эмуляции. 1. http://fms.komkon.org/EMUL8/HOWTO.html 2. Читай исходники эмулятора SIMH. Но перед этим проштудируй документацию для разработчиков (прилагается к эмулятору). SIMH содержит эмуляторы 8086, PDP11, Z80, 8080 и много чего еще.
Тут посоветовали написать эмулятор DCPU-16. Для начала проект, конечно, неплохой. Но после того как Нотч дропнул 0x10c, особого смысла я в этом не вижу. Так что смотри по собственной мотивации. Если все же надумаешь, то ищи спецификацию в вебархиве или отпиши сюда - я залью на ргхост.
Пока все. Если что-то вспомню важное - допишу потом. Но вообще, написать эмулятор не так уж и сложно, на самом деле.
Начни с эмулятора Nintendo Entertaiment System (NES, среди пидорашек кличют Дендей). Там простенький процессор, простенькое GPU и море дампов картриджей для отладки твоего поделия. Кури этот сайт: http://dendy.migera.ru/nes/index.php Вот только дело в том, что если ты действительно хочешь написать эмулятор, пускай даже денди, то тебе дохуя всего нужно знать. Скорее всего ты разочаруешься и бросишь. Нужно было на программиста учиться, лолка.
>>412857 >простенький процессор Но ведь там куча режимов адресации и фиксированное время выполнения команд. Но это ладно. Чтобы запускать дампы картриджей, нужно еще как минимум видео сэмулировать.
Если советовать что-то совсем для ньюфага, то лучше тогда уж MC6800.
такой вопрос: допустим, в приставочной и не только видеокарте есть же какая-то программа, которая преобразует то что записано у нее в памяти в видеосигнал. как это эмулируют?
>>413528 За видеосигнал отвечает железо. Чаще всего есть отдельный чип-видеоконтролер. В древних приставках отрисовкой графики занимается ЦП. То есть, именно он расчитывает спрайты, линии, прочую графику и сохраняет результат в видеопамять. Он же управляет видеоконтролером посредством систмемы ввода-вывода. Как реализуется? В эмуляторе есть видеобуфер. Его нужно с определенной частотой просматривать и выводить содержащуюся в нем информацию на виртуальный дисплей.