• avatar nyuk
  • 1
А известна дальность антенны?
Ты так смело об этом говоришь, как будто до тебя не добирает.
dman_pcb приезжай, забухаем!
  • avatar tsl
  • 4
Добавлю два нюанса.

Порядок событий, связанных с приходом сигнала прерывания выглядит так:
0. включение триггера соответствующим источником, при этом на процессор выставляется !INT (при наличие хотя бы одного активного триггера)
1. процессор выполняет последний машцикл инструкции, цепляет инт
2. процессор генерирует цикл подтверждения им2
3. логика контроллера определяет, какой вектор выставить на шину данных (в зависимости от включенных триггеров и их приоритетов)
4. проц цепляет вектор, читает из памяти адрес, летит на ISR
5. контроллер выключает тот триггер, вектор которого обработан; если остались другие триггеры либо успели прийти новые события, инт не убирается
6. процессор заканчивает обработку ISR командами EI:RET, при этом новый инт (если сигнал активен) обработается на последнем машцикле RET, с п.1.

Нюанс первый.
Имеем следующие события:
— установился триггер источника с приоритетом 2,
— прошло 3 такта,
— установился триггер источника с приоритетом 0,
— прошло 2 такта,
— процессор распознал инт и запросил вектор.
Вопрос: какой вектор обработается?
Ответ: источника с приоритетом 0. Несмотря на то, что по тактам событие источника 2 пришло раньше.
Глубокая мораль: приоритеты обрабатываются не по факту прихода, а по факту наличия на момент подтверждения цикла им2.

Нюанс второй.
Если во время активного триггера погасить соответствующий бит в регистре масок, то данный источник не только не будет обработан, но и сбросится триггер. Это нужно для двух вещей: чтоб не оставались «висящие» необработанные инты после выключения битов маски и чтоб можно было рулить разрешениями низших приоритетов из иср-ов высших.
чёрт, спалили!
Нет, это не рука, это антенна для промывания мозгов!
Неисповедимы пути…
Спасибо, Вова, что не «рога». Не знаю я :)
  • avatar VBI
  • 0
diver4d , у тебя на картинке что-то из головы торчит… рука?
Когда ты смотришь на рекламу 3BM, она смотрит на тебя?
Переделал )
  • avatar tsl
  • 6
Я бы добавил спасибо рекламодателю, потому что 2 тумбдауна на пуэте, это НИЧТО по сравнению с нашей популярностью, которую он таким образом создает!

Еще, пользуясь трибуной, хочу выразить крик души: ааааааааааа не делайте из сабжа недоамигу! Идея была такая, чтоб Диззи бегал поверх 6912 ускорить эффекты обычного спектрума, сэкономить на лдпушах при помощи ДМА, ускорить проц кешом, добавить в 6912 необычных цветов и палитровых фефектов, упростить растровые эффекты при помощи двигаемого инта, упростить наконец страничную адресацию. Я хочу странного?.. =)
  • avatar tsl
  • 5
VBI,
TSU овер текстмод работает, как задумано. Это не бага, а фича ©. Просто из-за обильной документации (на всех языках мира, в 25 томах) многие моменты остаются мутными.
Весь видеосигнал в системе формируется в таймингах ТВ. Это не позволяет вывести данный видеосигнал на ВГА монитор. Потому есть ВГА-даблер. Он сохраняет пиксели во внутреннем буфере, а затем выводит их на ВГА с двойной частотой по два раза. Таких буферов 2, один пишется, другой показывается. размер буфера 360 пикселей спектрумского (обычного, лоурез, low-res) разрешения. Поскольку выход палитры содержит 16 бит, а вход — 8 бит (256 ячеек по 16 бит — 32к цветов 5:5:5 и бит выбора таблицы), то для экономии выгоднее хранить вход, т.е. индексы цветов, а не готовый «труколор».
Схема такая:

И так оно работает во всех режимах, кроме текстмода (хайрез, hi-res), в котором пиксели «тоньше» в 2 раза и их следовательно 720, а не 360. Что делать? Запоминать в ВГА даблере вместо одного пикселя по 8 бит — два по 4. И тут уже схема другая:

Отсюда имеем процесс: если вывести графику TSU поверх текстмода, то получим, что в тех местах, где отображается пиксель тайла/спрайта он накроет 2 пикселя текста, попадет в буфер 2 раза, но при этом не будет содержать инфы, к какой палитре принадлежит. Палитра возьмется из того же селектора, что и текстмод.

Почему все так сложно? Потому что ЕР1К50 имеет 10 блоков памяти по 512 байт. Использованы они следующим образом:
2 — буфера ВГА даблера,
1 — палитровое ОЗУ,
1 — спрайтовое ОЗУ,
2 — оверлейные буфера TSU,
2 — буфера предвыборки тайлов,
1 — теги кеша,
1 — данные кеша,
Как можно видеть, если бы я сделал буфер даблера на 3 блока (как это, кстати, в бейзе), то было бы все труколор, но не было бы чего-то другого.
Такие дела.
нужно БОЛЬШЕ интереса!!!
  • avatar VBI
  • 0
Кстати, Нирваны — дохрена.
И выглядит — супер!
  • avatar VBI
  • 1
Nuts_ , вторая строчка тебе :)
  • avatar VBI
  • 3
introspec , Спасибо. Я не считаю что я «тащу» что-то, совершенно. Мне хочется делиться этим.
Тут скорее движение души, интерес к новому, к изучению, к тому что до сих пор не открыто и не изведанно.
Спек исходили полностью, и мы все знаем большинство входов и выходов, большинство приёмов использования — сейчас я говорю не за себя, за многих из нас. Спек изучен до корней, до микрокода ядра, до внутренностей ULA.
И при этом мы его продолжаем любить.

, я выложил своё понимание текущей ситуации на сцене с этой системой.
Дело в том, что я считаю так — система чрезвычайно интересна. Знаешь, когда я только начал воспринимать все возможности системы, я был очень воодушевлён открывающимися горизонтами, огромными просторами возможностей, которые МОЖНО использовать в своих демах и играх для Evo. А сейчас и не только для неё.

Об этом я и пишу, в общем :)
  • avatar Nuts_
  • 1
все так мосчно
тока я не понял тут вообще о чем
Вова, спасибо что тащишь на себе такой большой проект. Да, так вышло, что тс-конфа у нас оказалась «спорной» платформой, по ряду причин, в чём-то объективных, в чём-то не очень. Извини, что мы (я) не вполне за тобой успеваем — довлеет груз других проектов. Хочу проговорить: то, что ты делаешь, важно. Я прочитал все статьи в твоей серии. К сожалению, нетривиальные вопросы/замечания/дополнения требуют намного более плотной работы с конфой, поэтому лично мне просто сложно спросить что-то нетупое.

Главная польза от твоей работы, как я вижу её для себя, заключается в том, что гораздо быстрее и проще учиться основам чего-то новое из вот такого вроде поверхностного неглубокого трёпа. В этом плане, ты держишь правильный курс.

А вообше, всё очень просто. Нужно делать нетривиальный проект на тс. Очень надеюсь в какой-то момент осилить.
  • avatar VBI
  • 1
июлm — это хорошо.
  • avatar trefi
  • 1
Гуд гуд гуд!
dimidrol, детей только от экрана убери, когда нажмешь:)