Теоретический вопрос по железной начинке ZX Spectrum

На фоне обсуждений последних двух дней у меня родился вот какой вопрос:
Возможно ли было в чипах ULA спектрума сделать дёшево и сердито вот какую концепцию:
а) запись в некие два порта вывода X и Y координаты пикселя генерировали бы на входе трёх других портов ввода:
б) верхний байт адреса полоски пикселей в массиве пикселей видеопамяти
в) нижний байт адреса полоски пикселей в массиве пикселей видеопамяти
г) верхний байт адреса атрибута этой полоски пикселей
(нижний байт адреса атрибута тут не нужен, т.к. мы уже знаем, что он совпадает с (в) после предыдущих тем)
На уровне проводов это просто разброска линий и их перемешивание, что мы видели в предыдущих темах.
Так не было ли бы это возможным сделать без весомых затрат на самом старте?
(сразу обозначу — это чисто теоретический вопрос и статью я по нему писать не собираюсь. просто очень интересно.)

Почему у ZX Spectrum нелинейная адресация видеопамяти

v.1.0. черновая.

Почему экран ZX Spectrum устроен так необычно? Казалось бы, линейный экран намного проще?

Рассмотрим ZX Spectrum 16K. Контроллеру дисплея требуется считывать сразу два байта подряд (На самом деле он считывает в burst’е 2+2 байт, но для объяснения это несущественно). Сначала считывается байт атрибутов, затем байт пиксельных данных. Адрес приходится выставлять дважды: адрес атрибутов и адрес пикселей.

Читать дальше →

Почему у ZX Spectrum нелинейная раскладка видеопамяти

Если у вас был ZX Spectrum, то даже без навыков программирования графики в ассемблере вы постоянно должны были замечать странную вещь при загрузке игр с магнитофона — линейная заливка видеопамяти данными визуально выглядела нелинейно:




Читать дальше →

Почему у ZX Spectrum нелинейная раскладка видеопамяти?

Вопрос этот мучает меня довольно давно и я немало гуглил и задавался этим вопросом на других (непрофильных) форумах, так что хочу задать его теперь здесь.

Читать дальше →

3aRulem #24

Друзья! Работа над 24-ым номером журнала в самом разгаре!
Откровенные интервью, жгучие красотки, железо, сцена — всё в одном номере!
Спешите направить статьи, фотографии, истории из жизни, собственные рисунки! Напоминаем адрес редакции — not_soft@mail.ru
Ждём ваших материалов!
Увидимся в конце ноября на страницах нашего журнала!

3aRulem #24

New game for ZX Spectrum: OLD TOWER is released!

Привет парни!
Буду первым, кто отпишет за новую игруху от Дениса Грачёва, которая вышла… ну вот только что!
Итак, OLD TOWER.
Игра представляет собой эдакий вариант вертикального супермена — пекмена, успевающего преодолевать огромные расстояния за миллисекунды, и при этом — съедая всё на своём пути. Не всё по зубам нашему герою, но… :)
Итак, OLD TOWER!


Читать дальше →

Из интервью с KF/Triad

Пока монтировал видеозапись своего рассказа про демосцену, невольно посмотрел ещё несколько раз демо Red Storm by Triad (1992 года, на Commodore 64). После чего, решил нагуглить подоплёку социально-политического посыла этой работы.



Оказалось, что в 1994 году один из авторов Red Storm — KF / Triad, дал довольно любопытное интервью diskmag'у "Revealed" (N4). Приведу цитату, с переводом:

King Fisher /Triad (Швеция, 1972 г.р., купил Commodore 64 в 1986-м, первая party была в 1987-м, в 1988 присоединился к Byterapers, затем к Mute 101, Royalty, Rebels и, наконец, к Triad).

Читать дальше →

Конкурс ретро-игр на DG Mag

В рамках журнала Downgrade стартовал конкурс на создание игр для ретро-ПК. Работы принимаются до 20 декабря. Среди номинаций есть и ZX Spectrum. Полный список номинаций:
  • игра в текстовом режиме для DOS/Win 9x;
  • игра для DOS в графическом режиме;
  • игра для Spectrum 48K, можно использовать AY.
Для мотивации участников предусмотрен призовой фонд ;)

Полный перечень правил см. на форуме журнала.

Конкурс процедурной графики на Out Of Compo 2018

Как вы знаете, но напомнить лишний раз не помешает, уже через месяц, 24 ноября этого года, состоится виртуальный конкурс графики Out of Compo. На этот, уже третий, раз в конкурсе будут участвовать графические работы не только в традиционных форматах ZX Spectrum 6912 и 53c, но и в жанрах классической и современной пиксельной графики, цифровой живописи и 3D-рендеров — разумеется, разделённые на соответствующие категории. А также, впервые в программе, и в этом причина написания данного поста, в этом году добавился конкурс процедурной графики для ZX Spectrum.

Напоминаю, процедурная графика — это неподвижные полноэкранные изображения, создаваемые кодом особо малого размера. Ранее полноценные конкурсы этой дисциплины на ZX Spectrum проводились всего дважды, на ASCII 2008 и DiHalt 2018, в остальном же некоторое количество работ участвовало в самых разных конкурсах и вне них. Вполне себе в духе Out of Compo. Направление, тем не менее, крайне интересное, достойное дальнейшего развития, и этому определённо должно поспособствовать проведение конкурсов почаще, чем раз в десятилетие.

По результатам обсуждения в комментариях к обзору работ с DiHalt 2018 и тяжких раздумий было решено пока что ничего принципиально не менять и провести конкурс с более-менее консервативными правилами:

  • Платформа только ZX Spectrum 48К или 128К.
  • Любой язык программирования (Бейсик, ассемблер, прочие).
  • Максимальный размер запускаемого кодового блока 1024 байта.
  • В результате должен получиться стандартный экран 6144 или 6912 байт. Multicolor, Gigascreen и бордюрные эффекты запрещены.
  • Выходить в Бейсик не обязательно, можно сделать бесконечный цикл.
  • Работа должна устанавливать нужные цвета, включая цвет бордюра, внутри кодового блока.
  • Изображение должна быть одинаковым при каждом запуске, независимо от содержимого ОЗУ.
  • Время генерации изображения до 5 минут.
  • Оценка будет выставляться финальному изображению, визуальные эффекты во время работы на оценку не повлияют.

Некоторые моменты правил, безусловно, спорные. Но в этом и смысл, проверить их на практике, обсудить возможные улучшения, и постепенно выработать более совершенные рамки формата для будущих конкурсов. Пока поясню, что ограничения на 48K/128K, нестандартные видеорежимы и трюки введены главным образом в целях устранения проблем совместимости, чтобы работы одинаково функционировали на любых конфигурациях.

Так как процедурная графика для нашей сцены и платформы ZX Spectrum довольно нова и опыта у потенциальных участников немного, допускаются работы произвольной тематики. Но следование общей теме Out of Compo — работы эротического содержания — крайне приветствуется, ведь это двойной вызов и двойная проверка как кодерских, так и художественных способностей. Как много ты готов показать в 1024 байтах?

Публичное голосование будет проводиться онлайн как обычно, на сайте events.retroscene.org/. По предложению из прошлого обсуждения, для работ по процедурной графике будет также показан их размер в байтах и размер создаваемых ими экранов, упакованных Laser Compact 5.2.1 — чисто в информационных целях. Каждый голосующий волен решать, как эта информация повлияет или не повлияет на оценку.

На этот раз помимо дипломов в награду за старания и превозмогание трудностей предусмотрены памятные и полезные призы, отправляемые почтой.

Подробные правила — на сайте конкурса.