Последнее достаточно забавно, и мне даже нравится. В качестве FPU можно использовать AYX-32 (про который тут когда-нибудь будет статья). Самое простое — код по $0028 поменять на вызовы команд по портам АУ.
По опкодам.
Либо префиксировать каждую команду, либо включать отдельный блок расширенной ISA. Префикс можно выбрать либо ED, либо из команд типа LD R,R — где реги одинаковые. Второй метод позволяет сильно экономить память — по объему и машциклам, а также дает неограниченную свободу воли в выборе опкодов. Для крайней совместимости предусмотреть защелку, блокирующую включение доп. опкодов.
По набору команд.
Основная цель — С компиляторы. Полагаю, 256 байт для регфайла достаточно. Должна быть общая арифметика, хотя бы 2-операндная, между любыми ячейками регистрового файла. Объединение соседних ячей в пары/четверки. Адресация ячеек как непосредственно, так и регистрами. Постинкремент и предекремент адресующих регов.
Над конкретным набором команд надо садиться и думать.
Ну и конечно, сначала опробовать все это в эмуляторе, что несложно.
Такты в ФПГА реализации не всегда боттлнек, кое-что можно значительно оптимизировать. В основном же существующие корки имеют растактовки для совместимости.
В контроллерах, для которых разрабатывают свои ISA, специализированные инструкции для железа вполне норма. Раз некст «улучшенный», то почему не улучшить и проц? Говорить о том, что в з80 не хватает элементарных вещей, наверное излише. Но я не столько сами их инструкции не понимаю, сколько scope (забываю русский) ихнего дизайна. Что они хотят выносить на аксели, а что на проц? Выглядит как-то сумбурно.
Ну и щас скажу ужасное (instrospec, закрой глаза): в последнее время подумываю, как расширить зетник для работы с регистровым файлом по типу 6502.
Извините за некропстокамент, но только щас увидел тему.
В тсконфе с вдаком цветовое разрешение палитры по 5 бит на цвет, т.е. по 32 градации.
Предлагается:
— сделать тулзу, плавно изменяющую каждый цвет,
— провести колорометрические измерения (поставить 2 одинаковых монитора рядом, что ли, я хз),
— замерить правильные значения палитры и навечно поселить в биос, как дефолтную палитру для спека.
Напоминаю, что на ВСЕХ мониторах эта самая гамма-коррекция разная (впилить палитру под каждый монитор?..)
На самом деле, истина, как всегда, где-то посредине и все не настолько плохо.
Мороз, ты прав во всем, только не говоришь, что надо кушать, чтоб у нас выросли пункты 1-6. То, что у нас автобус поломался, мы и сами знаем.
На лицензии мне всегда было как обычно. Если кто-то захочет убрать его код из моих поделий, я уберу. Свои коды я всегда держал в открытом доступе и лицухами не обкладывал. У нас был случай, когда алохин подаван поднял шитсторм из-за своих недоигрушек — убрали игрушки. Алсо, потеря была равна 0 или меньше. Если некстобуратины захотят взять сорцы конфы, а потом станут продавать за деньги — я подниму шитсторм и расстрэляю из говномета. Слава б-гу им для этого не хватит мозгов, если б даже очень захотели. Смайлик.
Я специально выбрал такой пример, чтоб подчеркнуть не сложность фичи, а то, что авторы думали настолько «на отъебись», что ни за что не сделали бы ничего подобного.
или огонь.1. [so sad that] covfefe is outta here! by scalesmann/march[ing]_cats
2. -ViKi ViKa- by Slash ^ AtD/RPSG
3. Rain by Mikael ^ Pretzel Logic
Либо префиксировать каждую команду, либо включать отдельный блок расширенной ISA. Префикс можно выбрать либо ED, либо из команд типа LD R,R — где реги одинаковые. Второй метод позволяет сильно экономить память — по объему и машциклам, а также дает неограниченную свободу воли в выборе опкодов. Для крайней совместимости предусмотреть защелку, блокирующую включение доп. опкодов.
По набору команд.
Основная цель — С компиляторы. Полагаю, 256 байт для регфайла достаточно. Должна быть общая арифметика, хотя бы 2-операндная, между любыми ячейками регистрового файла. Объединение соседних ячей в пары/четверки. Адресация ячеек как непосредственно, так и регистрами. Постинкремент и предекремент адресующих регов.
Над конкретным набором команд надо садиться и думать.
Ну и конечно, сначала опробовать все это в эмуляторе, что несложно.
Ну и щас скажу ужасное (instrospec, закрой глаза): в последнее время подумываю, как расширить зетник для работы с регистровым файлом по типу 6502.
В тсконфе с вдаком цветовое разрешение палитры по 5 бит на цвет, т.е. по 32 градации.
Предлагается:
— сделать тулзу, плавно изменяющую каждый цвет,
— провести колорометрические измерения (поставить 2 одинаковых монитора рядом, что ли, я хз),
— замерить правильные значения палитры и навечно поселить в биос, как дефолтную палитру для спека.
Напоминаю, что на ВСЕХ мониторах эта самая гамма-коррекция разная (впилить палитру под каждый монитор?..)
Мороз, ты прав во всем, только не говоришь, что надо кушать, чтоб у нас выросли пункты 1-6. То, что у нас автобус поломался, мы и сами знаем.
© Н.Гоголь, «Нос»