Что мешает добавить бит, чтобы каждый из процессоров мог выполнять свой код пока нет обращения к видеопамяти? А когда есть, чтобы синхронно выполнять один и тот же
Что мешает добавить бит, чтобы каждый из процессоров мог выполнять свой код пока нет обращения к видеопамяти? А когда есть, чтобы синхронно выполнять один и тот же
Насколько я понимаю, Spec256 и не планировался в железе. И концепция фактически подразумевала 8 параллельно работающих спектрумов, каждый из которых синхронно загружает и запускает свой экземпляр одной и той же игры, с обычной однобитной, но различающейся графикой. Но вывод на дисплей при этом происходит "аккумулированный", собирая 8мибитный "пиксель" с учётом 256 цветовой палитры. Близость концепции тут именнов самой идее - распараллеливание битмапов по параллельным ипостасям одной машины. Но ZX-Poly технологически более продвинут и "круче", с тем же 2x режимом, и теоретической возможностью использования 4х процессорной системы именно как 4хпроцессорной, ускоряя ту же математику, тот же 3D (если вывод на экран делать в обычном режиме, с одного из 4х).
В общем, занятная штука.
Raydac (22.11.2019)
да, плюс судя по коду эмулятора, там не только параллельное исполнение, но и синхронизация состояния "графических процессоров" по ведущему процессору выполняющему неизмененный снапшотИ концепция фактически подразумевала 8 параллельно работающих спектрумов, каждый из которых синхронно загружает и запускает свой экземпляр одной и той же игры
- - - Добавлено - - -
в существующий софт, даже один бит добавить это адская проблемаЧто мешает добавить бит, чтобы каждый из процессоров мог выполнять свой код пока нет обращения к видеопамяти? А когда есть, чтобы синхронно выполнять один и тот же
а не о существующем софте речь, существующий софт и знать ничего не будет об этом бите. А при старте эмулятора, если надо устанавливаешь его в 1 или сбрасываешь в 0, и в зависимости от этого режим либо тот, что есть, либо каждый из процессоров выполняет свой код, а при обращении любого к видеопамяти идет прерывание на все и они начинают синхронно выполнять один и тот же код. По кодовым сегментам для линкера можно будет указывать для какого процессора из 4 код и загрузчику будет понятно, в чью память грузить. А сейчас, если все 4 проца исполняют один и тот же код, то это никак не многопроцессорная система!
немногопроцессорная система это Spec256, так как там нельзя запустить 8 процессоров идти по своим путям, они по главному засинхронизируют состояния всеравно, а тут загрузи просто разные данные в память модулей и стартуй и поедут своими путямиПо кодовым сегментам для линкера можно будет указывать для какого процессора из 4 код и загрузчику будет понятно, в чью память грузить.
Raydac (22.11.2019)
хмм, не такой простой вопрос, как кажется с первого раза. Сложность компьютера это повышение порога для вхождения. У вас есть портфолио игр для Android и потенциальные инвесторы с миллионом евро? А тем у кого их нет? Гораздо приятней написать своими силами,чем идти к кому-то в кабалу. В таком случае наверно малые компьютеры 70 и 80-х, которые Вы именуете ретро вам не интересны. А другим людям они интересны-настолько интересны, что они даже готовы заниматься редизайном чипов, которые давно сняты с производства. Ведь авторские права на старые архитектуры ничтожны в юридическом смысле в подавляющем большинстве случаев. И это "новодел", для коллекционеров он мало интересен. А обычным пользователям интересен вполне. Потому что пользоваться простыми вещами в этом есть определенный кайф. Их можно полностью освоить при дефиците времени и минимизировать любые риски "черных ящиков". Это если совсем коротко. А если символически, наблюдая, что здесь собрались не одни уже только спектрумисты, я теперь именую всю нашу тусовку "цифровые партизаны"
Последний раз редактировалось andrews; 22.11.2019 в 19:54.
Нет. Множество бабулек со смартфонами пример.
Ну так пишите, кто не даёт? Несколько тредов, в которых замечал вас последнее время - одно бесконечное бла-бла-бла с наполеоновскими даже не планами, а просто намётками на идеи.
Рад, что вы составили своё мнение на мой счёт. Предлагаю на этом закончить непродуктивную дискуссию, которая перешла в оффтопик.
Heavy on the disasm
Eric and the disasm
Mask 3: Venom strikes disasm
Bard's disasm
ради интереса, вставил в версию 2.0.1-SNAPSHOT поддержку архивов от Spec256. чтобы заодно и проверить сходность. Процентов 80 игры Spec256 имхо очень жестко расчитаны именно на виртуальный проц с 64 битными графическими регистрами. У меня такого нет и я просто пускаю 8 ядер на их собственной памяти, с последующей синхронизацией некоторых регистров (по умолчанию IX IY и F с сохранением флага C), но сделал что в *.CFG файл (который юзается обычно EmuzWin) можно добавить опцию zxpAlignRegs где установить какие регистры должны сихронизироваться с процом который выполняет неизмененную программу (всего получается 9 спеков в параллель). К примеру для ScoobyDoo этот параметра для Renegade этоzxpAlignRegs=HLXY. Так вроде худо бедно работает, но не все игрухи и видно что расчет Spec256 именно не на многопроцессорность, а на SIMD процессор с длинными регистрами.zxpAlignRegs=DE
обрабатываются только архивы ZIP, содержащие игру в SNA формате, файлы могут быть во вложенных директориях, так как прочесываются все файле в зипе и анализируется только расширение, соответственно в одном архиве должна быть одна игра
из атрибутов кладовского эмулятора, я поддержал только BkOverFF
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)