Вы можете просмотреть страницу https://zx-pk.ru/content/500-Bare-me...mpiutershchika
Вы можете просмотреть страницу https://zx-pk.ru/content/500-Bare-me...mpiutershchika
С уважением, Станислав.
andykarpov (22.09.2021), Oleg N. Cher (21.09.2021), sdima1357 (23.09.2021), Spectramine (22.09.2021)
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Очень интересная статья. И, конечно же, буду ждать продолжения. На самом деле, это могло бы стать отличным учебным примером, как сегодня писать на ассемблере под современные железки: с пошаговыми уроками, с примерами и проектом на гитхабе. Чтобы даже те кто не в теме (а сейчас тех, кто программирует на ассемблере, не много) могли бы взять готовый тулчейн и повторить шаги автора.
Oleg N. Cher (22.09.2021)
Желание писать на ассемблере и контроллировать все и вся у меня отпало после того, как году так в 2000 я вооружившись умной книжкой сел писать небольшую прогу чисто на x86 асме под голый DOS писюка. Отладив код, как мне казалось до немыслимых высот и скоростей я все же решил переписать его на си и скормить модному тогда интеловскому компилеру в режиме оптимизации по скорости. Каково было мое удивление, когда моя программа стала работать раза в два быстрее, тк интел компилер учитывал все эти кеширования, параллелизм и предсказания переходов, которые я учесть был не в состоянии. С тех пор я всегда взвешенно оцениваю возможности того или иного инструмента и доверяю работу ему, абстрагируясь от самого низкого уровня где это можно и нужно.
Недавно начал изучать ПЛИС. Там тоже все здорово, там вообще можно производить тысячи логических операций (или даже команд нескольких синтезированных процессоров) за один такт, есть несколько уровней абстракции, и вот уж где совсем не хочется все делать на самом нижнем уровне, ибо результат ручной работы уж точно не будет лучше машинного синтеза.
Oleg N. Cher (22.09.2021)
Полностью согласен! Асм нравится тем, что накодил, то и получил. Под 8 бит процы только он. Кто то кроссворды гадает, а мне нравится под z80 мОзги свои шебуршить
Я буду ждать продолжение прямо-таки с нетерпением. Тоже давно посматриваю в сторону Arduino и Raspberry, но никак не заставлю себя начать. А они могли бы решить мне многие задачи гораздо меньшими деньгами в сравнении в решениями на Windows. Это я про рабочие моменты.
Ставлю сто баксов против десяти , что ничего не выйдет. Для потактовой эмуляции не хватит скорости прерываний. Эмулирующему прцессору нужно по очереди обрабатывать задачу симуляции собсвенно Z80, контроллера звука AY-3-8910, рендеринг собственно биппера. правильную в относительном времени отрисовку экрана, правильный захват порта чтения магнитофона и клавиатуры и все это на ассемблере ? Это не реально. Sorry... Так можно только сделать поделку умеющую худо бедно эмулировать Z80, на котором работает половина игр в лучшем случае и то кое как... Не стоит, не тратьте свое время. Или пишите на Си или делайте на FPGA (на нем будет проще всего).
- - - Добавлено - - -
Даже bare metal лучше писать на Си для таких объемов работы. Слишком много обрабатываемых очередей.
Вы, видимо, по диагонали пробежались по статье. Так как нигде в ней я не обозначал никаких целей по части написания чего-либо. Цель статьи просто рассказать о такой явлении, как "bare metal", ну и по возможности поделиться тем, что я сам накопал, интересуясь данным вопросом.
Я так понимаю, что это вы про эмулятор ZX Spectruma. Так есть он уже - ZXBareumulator, вполне работающий и неплохо эмулирующий и Z80, и AY-3-8910. И работающий при этом на одном ядре ARM и без операционной системы.
Иногда важен не только результат, а сам процесс. Это же своего рода спорт.
С уважением, Станислав.
Последний раз редактировалось sdima1357; 23.09.2021 в 19:27.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)