+16.72
22 читателя, 70 топиков

Ottifants portable


Пока мы исследуем разные приставки да копаемся в их внутренностях, обсуждаем их особенности да способы реализации железа, его использования… Возможно стоит посмотреть — как провернуть дельце.
Дельце, которое позволит нам использовать их код для нашего интереса и нашего удовольствия.

Итак, речь пойдёт снова о приставке :) О Сеге Мастер Систем.

SMS интересна.
Не самая крутая приставка, но – довольно крупная компания девелоперов с очень насыщенными проектами. Много данных, много уровней, разнообразные игры, пусть и платформеры в большинстве.

Для меня СМС оказалась открытием, так как качество игр впечатляет обьёмом и проработкой геймплея.

Не так давно, на волне Соника, я занялся портированием следующей игры. Задача была седующая – беру произвольную игру, переношу на ZX Enhanced, под. TS Config.

Итак, в данном случае задача — работать чисто с бинарём. Без любой другой помощи.

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

Как продолжать жить, не переставая програмить; или - живём в плагине WC

Жизнь в среде накладывает свои ограничения на любое творчество.
Ибо — ты в песочнице, созданной её творцом.

Но, не будем о риллайф, всё это и так всем знакомо. Поговорим о среде, в которой работают плагины для WildCommander, и о том — что и как там можно использовать настолько резвым и эгоистичным кодерам как мы с вами.

Речь будет о только что законченом мною плаге, под названием MaxiClock.
По сути, плаг представляет собою флип-часы.


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

Архитектура и программирование Philips Videopac (Magnavox Odyssey 2)

«Hardware is just software crystallized early»
— Alan Kay




Компьютер Magnavox Odyssey 2 (Videopac) появился в 1978 году и позиционировался как игровой, однако с возможностью более серьёзного применения (для чего у него имелась встроенная плёночная клавиатура). Серьёзных приложений, учитывая назначительный объём памяти, было очень мало, так что, по факту, правильнее считать Videopac игровой приставкой.

Что касается названий, Magnavox Odyssey 2 продавался в США и выдавал NTSC видеосигнал (через RF выход). Philips Videopac G7000 (он же C52) продавался в Европе, соответственно, с PAL видео. Кроме этого различия (которое, разумеется, влияло на работоспособность части игр) компьютеры совершенно одинаковые.

Videopac был одной из первых игровых приставок, для которой игры выпускались в виде картриджей с программами. Поэтому ничего удивительного, что и технически это устройство весьма аскетично.


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

Как стартовать первую программу на ассемблере.

По небольшим просьбам публикую самую короткую и простую инструкцию, как с минимальными усилиями написать и запустить примитивную программу на ассемблере. Я нарочно не затрагиваю тут принципов работы, литературу, архитектуру итд. Цель — получить нечто двигающееся здесь и сейчас.


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

Разбор полётов: демо High Hopes на NES

За редкими исключениями, игровые приставки не завоевали сколько-нибудь заметной популярности в качестве демо-платформ. Эту участь разделяет и NES, оставаясь лишь изредка всплывающей в демо-конкурсах в категориях wild или oldschool экзотикой, а большинство работ для неё в основном примечательно самим выбором платформы. За многие годы существования сцены любительской разработки для NES, демо, в отличие от игр, было написано немного. На Pouet их перечислено всего десять. Наиболее высоко оценённым и популярным из них до сих пор заслуженно является High Hopes, занявшее на Assembly 2007 первое место в категории oldskool demo. На его примере сегодня мы разберём, какие особенности и хитрости применяются при реализации классических демо-эффектов на NES.




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

Архитектура и программирование Sony Playstation 1



По сравнению с другими, ранее описанными мной архитектурами, архитектура Sony Playstation 1 (PSX) — сравнительно современная. И дело даже не в годе выпуска (1994) — скорее это общее ощущение сочетания новых возможностей и исчезновения привычных старых, которые были типичными для компьютеров и приставок предыдущей эпохи.

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

ZiFi или интернет для Z80


Сетевые разработки ведутся уже давно.
Давно существует прототип ethernet плата от nedopc, в U16 встроен ethernet контроллер, есть и зарубежные разработки в этой области.
Но почему же мы до сих пор их не используем?

Сейчас я вижу одну главную проблему. Существующее железо для сети лежит как прототип.
Для этого железа нет никакой программной поддержки.
Как вы думаете, почему?

В первую очередь — это равнение на существующий мир. Скайп, интернет-приложения, видеохостинги, всё богатство сети — в нашем спектруме?
Как посмотришь на обьём — сразу опускаются руки. Даже большой командой решить большинство вопросов реализации доступных нам на РС сервисов — невозможно из-за ограничения существующих и популярных сейчас платформ на базе Z80 и совместимых со спектрумом.

Но я вижу, что пришло время.
У меня есть видение, как реализовать такого рода вещь.

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

Ещё раз про тайлы и RET

Всем привет, недавно у меня возникла необходимость ускорить рендер тайлов для нашего мультиколорного долгостроя Dice Legends. В результате экспериментов удалось увеличить игровое поле с 26х15 до 30х18. Как водится по результатам приятного времяпрепровождения я решил сделать небольшую игру, чтобы обкатать всякие штуки с картой и прочим. Ведь игра это не только про то как быстро что-то нарисовать.


Ничего нового я не изобрёл, но после выхода игры уже несколько человек попросили меня рассказать как там всё устроено. Постараюсь максимально кратко )

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

Карта памяти NES

Одна из первых вещей, которую приходится изучать при освоении низкоуровневого программирования для новой платформы — её карта памяти, то есть где в адресном пространстве находятся ОЗУ, ПЗУ, регистры устройств и тому подобное. Если простота устройства ZX Spectrum, которое можно описать одним предложением — 'нижние 16 килобайт ПЗУ, остальное ОЗУ, экран в начале ОЗУ, весь ввод и вывод через один порт' — позволяет не особо задумываться о самом существовании этого вопроса, то у многих других современных ему платформ дела обстоят несколько сложнее. В особенности это справедливо для NES, карту памяти которой, а также причины именно такой её организации, мы и рассмотрим в этой статье.


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

Sleet - 232b интро для STM32 и осциллографа



Идея была — написать 256 байт интро для голого чипа. Выбран был STM32L100RCT6, поскольку я как раз разбирался с STM32, идя сверху вниз — сначала помигал светодиодом на HAL, потом на CMSIS и, наконец, на чистом ассемблере. Конкретно в упомянутом чипе есть два цифро-аналоговых преобразователя, что позволяло обойтись без внешней обвязки, подключив всё непосредственно к дисплею. В качестве дисплея я рассматривал два возможных варианта — либо обычный ЭЛТ монитор с PAL/NTSC композитным входом, либо осциллограф. Сгенерировать осмысленный сигнал для композита в 256 байт будет, как по мне, сложновато, а вот для осциллографа — в самый раз. К тому же тепло (что зимой немаловажно) и лампово.

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