Как стать автором
Обновить

Atari 800XL: Смотрим, разбираем, включаем

История IT Старое железо Игры и игровые консоли
Наверняка многие читатели Хабра выросли на компьютерах ZX Spectrum и БК-0010/0011, ну или как минимум сталкивались с ними в далёких 90-х годах. Для многих эти ПК стали отправной точкой в мир ИТ. Но, как и многое другое, в нашу страну восьмибитные домашние ЭВМ пришли гораздо позже остального цивилизованного мира, да и не в полном объёме. Там же эта эра началась почти на 10 лет раньше, в конце 70-х годов, когда вышли Atari 400/800, Commodore PET и, конечно, Apple II. Массовое же распространение домашние компьютеры начали получать в начале 80-х. В 1982 году увидели свет знаменитый ZX Spectrum 48 и не менее знаменитый Commodore 64, в 1983 году вышел Atari 800XL, а в 1984 году на прилавках магазинов появился первый Macintosh. Как и большинство домашних компьютеров на тот момент, Atari 800XL был основан на процессоре 6502C с частотой 1.79 МГц, имел 64Кб памяти, умел запускать игры с кассет, трещать 5,25" дискетами, выгуливать на экране 61440 разноцветных пикселей и много чего ещё. Об этой замечательной железке я и собираюсь сегодня поговорить, впрочем, не только поговорить!


Читать дальше →
Всего голосов 67: ↑67 и ↓0 +67
Просмотры 53K
Комментарии 22

Простой «железный» терминал

DIY или Сделай сам
Данная статья является продолжением описания микроконтроллера на процессоре 6502 «Аюша». В ней мы рассмотрим, как превратить контроллер в полноценный компьютерный комплект, причём в качестве основы не обязательно делать «Аюшу», сойдёт любой иной девайс. Ну или применим собранный терминал для чего-нибудь ещё. И опять же, для сборки будет применён «подножный корм»…

image
Читать дальше →
Всего голосов 71: ↑71 и ↓0 +71
Просмотры 69K
Комментарии 20

Как собрать Apple 1 и написать для него игру

Assembler *Компьютерное железо История IT DIY или Сделай сам Игры и игровые консоли

Как собрать Apple 1 и написать для него игру




Прошло 40 лет с момента выхода в свет компьютера Apple 1. Сегодня его возможности не дотягивают даже до простых микропроцессорных устройств или микроконтроллеров. Но в 1976-ом году эта новинка наделала много шума, говорилось даже о революции в мире ЭВМ. Предлагаю читателю вместе со мной собрать Apple 1, чтобы узнать, что же интересного в нём было, и написать какую нибудь программу.

Сразу скажу, собирал я его не за один раз. На поиск компонентов, сборку и отладку в свободное время, ушло три года, примерно столько же потом на отладку, и чтобы наконец собраться и написать эту статью.
Всего голосов 83: ↑82 и ↓1 +81
Просмотры 29K
Комментарии 38

Союз Arduino и классического процессора

Разработка под Arduino *Старое железо Процессоры DIY или Сделай сам
Туториал
Перевод

Ретрокомпьютерщики бывают различной степени привередливости. Одни довольствуются эмуляцией. Другие предпочитают ПЛИС, потому что тогда получается не эмуляция, а воссоздание. Наконец, третьим подавай настоящий процессор.

Но процессору для работы нужно столько всего! Снова дилемма: взять настоящие микросхемы тех же лет, или поместить всё в ПЛИС, оставив снаружи процессор? Впрочем, почему обязательно ПЛИС? Да здравствует союз Arduino и классического процессора!
Читать дальше →
Всего голосов 56: ↑56 и ↓0 +56
Просмотры 32K
Комментарии 23

История взлома классической игры на Dendy или Contra на 100 жизней

Assembler *Игры и игровые консоли
Из песочницы

Поскольку некоторая японская компания, до сих пор тщательно бдит свои авторские права. Я не могу предоставить вам ни мою версию рома ни использованный мною исходник. Скажу лишь, что нашёл его в торрент сборнике "Все игры на Dendy". Взяв оттуда переведённую на русский язык японскую версию игры "Contra (J) [T+Rus_Chronix]" я несколько раз её прошёл и будучи крайне любознательным человеком решил немного расковырять ROM образ, в частности подарить немного жизней игрокам.

Читать дальше →
Всего голосов 21: ↑19 и ↓2 +17
Просмотры 12K
Комментарии 19

История взлома классической игры на Dendy или Contra со спрэдганом в начале

Assembler *Игры и игровые консоли
Туториал

Раз уж прошлая моя статья, к моему большому удивлению, вас заинтересовала. Я решил дополнить её результат, хакнутую версию игры "Contra (J) [T+Rus_Chronix]", небольшим функционалом, заодно показав "code injection" на NES. В этот раз я сделаю так, чтоб игроки начинали игру с прокачанным Spreadgun, для его получения в игре нужно подобрать иконку "S", а за ней "R".



Все заинтересовавшиеся welcome под кат.

Всего голосов 30: ↑27 и ↓3 +24
Просмотры 9K
Комментарии 9

Умные часы с Бейсиком на физическом 6502

Программирование *Гаджеты DIY или Сделай сам
Туториал
Перевод

Процессор 6502 существует более 40 лет и до сих пор используется в ряде встроенных систем. Компания WDC продолжает выпускать 65C02 и периферийные микросхемы серии 65Cxx. Автор обнаружил, что теперь они доступны и в корпусах PLCC и QFP, но эти варианты микросхем используются редко. Микросхемы же в DIP-корпусах более недоступны, поскольку спрос со стороны одних лишь самодельщиков слишком мал. Автор решил сделать самый маленький одноплатник на 6502, какой только сможет. Не исключено, что самый маленький из известных самодельных одноплатников на этом процессоре (несамодельные бывают и меньше, например, Тамагочи). В результате получилось устройство, к которому можно при желании разработать наручный корпус с ремешком. Дисплей взят от Nokia 5110, написана оболочка с красивым интерфейсом, и получились, возможно, единственные смарт-часы на 6502.

В часах установлены: процессор 65C02 с тактовой частотой в 8 МГц, микросхема 65C22, управляющая ЖКИ и опрашивающая кнопки на плате и внешнюю клавиатуру, дисплей от Nokia 5110 (84х48 пикселей), 32 кБ статического ОЗУ, 16 кБ ПЗУ в адресном пространстве. Напряжение питания — 3,3 В.

И самое главное: в качестве док-станции к разъёму на плате можно подключать матрицу клавиатуры от Commodore 64, получая что-то похожее на Seiko UC-2000 (обзор на Хабре):

Читать дальше →
Всего голосов 52: ↑52 и ↓0 +52
Просмотры 17K
Комментарии 6

Я нашёл отличного программиста по имени Стив Возняк

Программирование *Совершенный код *Производство и разработка электроники *История IT Процессоры
Перевод
Давным-давно, когда компьютеры были большими, а бизнес скучным, произошло нечто неожиданное. Молодые хакеры нашли способ собрать персональные компьютеры на дешёвых микропроцессорах от телетайпов и светофоров. Одним из них был Стив Возняк. Эти ребята восприняли ограничения своих компьютеров как вызов, сели и заставили эти крошечные чипы делать удивительные вещи. Вот что публиковал Dr Dobb's Journal в августе 1976 года:



Это набор арифметических процедур на действительных числах. Микропроцессор (6502, такой же, как в Apple I и II) мог работать только с байтами, то есть целыми числами между 0 и 255. Хуже того, он мог только складывать и вычитать их. Но с помощью этой библиотеки вы можете вычислить $1.2627-1099.56$, или даже взять квадратный корень из пи. Удивительно, но автор программы по имени Стив Возняк уместил основные функции (сложение, вычитание, умножение и деление) в 239 байт, используя всего 127 инструкций.
Читать дальше →
Всего голосов 85: ↑80 и ↓5 +75
Просмотры 40K
Комментарии 69

Грязные хаки ассемблера 6502

Спортивное программирование *Совершенный код *Assembler *Демосцена
Перевод
В этой статье перечислены некоторые трюки, которые применяли участники моего маленького конкурса программирования Commodore 64. Правила конкурса были просты: создать исполняемый файл C64 (PRG), который рисует две линии, чтобы сформировать изображение ниже. Побеждал тот, чей файл меньше по размеру.


Конкурсные работы публиковались в открытых твитах и личными сообщениями, которые содержали только байты PRG-файла и хэш MD5.
Читать дальше →
Всего голосов 75: ↑74 и ↓1 +73
Просмотры 22K
Комментарии 19

Разработка демо для NES — HEOHdemo

Ненормальное программирование *Демосцена Старое железо Игры и игровые консоли
История проведения фестивалей компьютерного искусства, также известных как демопати, насчитывает в нашей стране уже четверть века. Люди со всех концов страны собираются, чтобы показать свои упражнения в извлечении невозможного из старых или современных компьютеров и сверхмалых объёмов кода. В первую пятилетку одним из главных демопати страны стал CAFe (внезапно, Computer Art Festival), проводившийся в Казани с 1999 по 2003 годы. Позже он надолго исчез с радаров, отдав пальму первенства более известным ныне Chaos Constructions и DiHalt, и только в этом году произошло довольно триумфальное его возвращение — если не по масштабу мероприятия, то по количеству разнообразных работ, показ которых затянулся до шести утра. Среди них была и моя, о создании которой пойдёт речь в этой статье.

Читать дальше →
Всего голосов 53: ↑53 и ↓0 +53
Просмотры 5.3K
Комментарии 5

Making a demo for NES — HEOHdemo

Ненормальное программирование *Демосцена Старое железо Игры и игровые консоли
There is a lengthy history of computer arts festivals, also known as demo parties, held in Russia over the last quarter century. For decades, once in a while people from all over the country gather together to compete in their ingenuity at getting what was once deemed impossible out of the old or new computer hardware and mere bytes of code. A few leading annual events has been established in the early years. One of them, creatively named CAFe (an acronym for Computer Art FEstival), was held in Kazan from 1999 to 2003. It went under the radar since, making the way for the everlasting Chaos Constructions (1999 — now) and DiHalt (2005 — now). After so long hiatus, the last year CAFe made a loud comeback, returning in full glory — at least by the number of prods released, if not in the scale of the event itself. Presentation of the compo entries went far into the night, with the last demos being shown at 6 AM to the popping eyes of the few hardy ones. There was my demo, too, and this is the story of its making.

Read more →
Всего голосов 13: ↑12 и ↓1 +11
Просмотры 4.4K
Комментарии 0

Превращаем компьютер BBC Micro (1981 год) в устройство записи защищённых дисков за 40 000 долларов

Реверс-инжиниринг *Старое железо Игры и игровые консоли
Перевод

Введение


Одна из самых известных историй о защите гибких дисков связана с Dungeon Master. Эта игра, выпущенная в декабре 1987 года, сочетала в себе усложнённый формат физического диска (нечёткие биты) со скрытными проверками защиты, встроенными в сам геймплей.

Рекомендую прочитать эту статью, в которой представлен замечательный обзор гибких дисков, после которого идёт очень подробный обзор защиты нечёткими битами диска Dungeon Master для Atari ST. Есть также вот эта замечательная статья, которая более подробно рассказывает об историях, связанных с защитой Dungeon Master. В ней есть цитата одного из авторов Dungeon Master:

«Мы получили преимущество, получив патент на схему защиты гибких дисков, в которой для записи дисков требовалось специализированное оборудование за 40 тысяч долларов. Без этого оборудования образ диска создать было невозможно, а само оборудование было выведено из эксплуатации».

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

Компьютер BBC Micro имел процессор 6502 на 2 МГц и для выполнения его простейших инструкций требовалось два такта, то есть 1 микросекунда. Есть ли надежда, что можно будет записать нечёткие биты в условиях таких ограничений? Посмотрим, как далеко нам удастся зайти. Эта работа будет называться «проектом Oiled Otter».
Всего голосов 31: ↑31 и ↓0 +31
Просмотры 7.6K
Комментарии 2

Программирование NES (dendy), assembler 6502

Программирование *Assembler *
Из песочницы

У меня с детства была мечта написать игру для любимой приставки денди, шло время, мечта то появлялась то затихала снова. Она меня направляла в сторону магии программирование, и вот прошло больше 20-ти лет я программист, и снова в который раз пытаюсь постигнуть магию той самой денди что так будоражило моё воображение в тяжелом но счастливом детстве. Сегодня Я расскажу вам как постиг секреты этой магии, наконец то смог вывести спрайты на экран и научился рисовать фон, и надеюсь это будет не последняя мая статья на Хабре.

Мечта под катом
Всего голосов 18: ↑17 и ↓1 +16
Просмотры 8.3K
Комментарии 10

Создание графики для nes/dendy

Программирование *Assembler *Игры и игровые консоли

Предыдущие мои статьи рассказывают о том как начать программировать под денди на ассемблере. Мы научились отрисовывать спрайты и background, так же мельком обсудили что такое таблица атрибутов и таблица имен, так же мы разобрались как прочитать контроллер. В тех статьях Я использовал chr от игры super mario bros 2 потому как не художник, но все же для создания игры мне пришлось искать инструменты какое мне помогут в создание своей графики для игры. Под катом этапы разработки графики.

Читать далее
Всего голосов 14: ↑13 и ↓1 +12
Просмотры 3.9K
Комментарии 2

Как игре Pitfall для Atari удалось поместить 255 комнат в картридж на 4КБ

Ненормальное программирование *Реверс-инжиниринг *Игры и игровые консоли
Перевод
Игры для Atari 2600 разрабатывались в условиях сильных ограничений. Когда Уоррен Робинетт продвигал идею, которая в дальнейшем станет игрой Adventure (в ней нужно исследовать мир из множества комнат и подбирать предметы, которые помогают игроку в пути), ему отказали, потому что посчитали, что её невозможно реализовать. И это было логично. Консоль появилась в конце 70-х; до Робинетта никто ещё не создавал игру с несколькими экранами. Это была эпоха Space Invaders и Pac Man, когда весь игровой мир постоянно находился у игрока перед глазами, поэтому то, что выпущенная в 1980 году Adventure состояла из 30 комнат, было весьма впечатляюще.


Первый экран игры Adventure. Игрок управляет точкой (которую Робинетт называл «человеком»).

Разработчикам даже пришлось объяснять эту концепцию в руководстве к игре:

Каждая область, показанная на экране телевизора, будет иметь один или несколько барьеров или стен, через которые вы НЕ можете проходить. Также там есть один или несколько проёмов. Чтобы перейти из одной области в соседнюю, «выйдите» с экрана телевизора через один из проёмов, и на экране появится соседняя область.

Наличие нескольких комнат было довольно большой инновацией, а то, что в Adventure удалось реализовать целых 30 комнат, стало настоящей революцией. Однако в созданной Дэвидом Крэйном и выпущенной в 1983 году Pitfall! таких комнат было 255, и каждая из них была более сложной (с точки зрения графики), чем любая комната Adventure. В статье я расскажу, как этого удалось добиться.

Примечание: в игре Superman было несколько комнат и её выпустили до Adventure, но она создавалась на основе кода Adventure.


Типичный экран Pitfall!
Всего голосов 26: ↑26 и ↓0 +26
Просмотры 7K
Комментарии 11

Правда о мозге Бендера

Киберпанк Робототехника Старое железо Биографии гиков Научная фантастика
Перевод

14 ноября 1999 года эпизод "Футурамы", анимационного научно-фантастического сериала от создателя "Симпосонов" Мэтта Гроунинга, ошарашил гиков зрелищем технологического характера, абсолютно беспрецедентным в отрасли развлечений в прошлом. В этом эпизоде, "Фрай и фабрика Слёрма", профессор Фарнсворт направляет Ф-луч на голову безумного робота Бендера, и мы видим маленький прямоугольник, очевидно являющийся микросхемой, с надписью "6502".

Читать далее
Всего голосов 61: ↑57 и ↓4 +53
Просмотры 33K
Комментарии 44

Живое видео и цифровой звук на 8-битной игровой приставке

Ненормальное программирование *Assembler *Старое железо Игры и игровые консоли Звук

В 2016 году американский музыкант Sergio Elisondo опубликовал музыкальный альбом инструментальных кавер-версий A Winner Is You (отсылка к древнему мему, происходящему из классической игры Pro Wrestling), в котором он в одиночку исполнял музыку из популярных игр для восьмибитной приставки NES на настоящих музыкальных инструментах. Необычным дополнением к этому релизу стала его версия в виде картриджа для игровой приставки NES, запускаемая на ней и воспроизводящая музыку из альбома в виде полноценного аудио, а не типичного для этой приставки довольно примитивного синтезированного звука. Я занимался разработкой программной части этого не вполне обычного проекта.

Дальше больше
Всего голосов 80: ↑80 и ↓0 +80
Просмотры 10K
Комментарии 21

Создание игр для NES на ассемблере 6502: приступаем к разработке

Assembler *Разработка игр *Компиляторы *История IT Старое железо
Перевод
image


2. Фундаментальные понятия


Содержание:

  • Работа с данными
  • Регистры процессора
  • Память
  • Как задаются данные
  • Как сделать данные человекочитаемыми
  • Соединяем всё вместе

Что такое компьютер?

Вопрос кажется простым, но он затрагивает самую суть того, что делаем мы как программисты. Пока скажем, что «компьютер» — это нечто, исполняющее программу. «Программа» — это просто последовательность команд, а под исполнением программы подразумевается, что команды выполняются с начала и одна за другой. (Если вы читаете программу и сами исполняете команды, то поздравляю! Вы — компьютер!)
Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Просмотры 7.9K
Комментарии 1

Создание игр для NES на ассемблере 6502: оборудование NES и знакомство с ассемблером

Assembler *Разработка игр *Компиляторы *История IT Старое железо
Перевод
image


4. Оборудование NES


Содержание:

  • Консоль
  • Картриджи
  • Как это связано с нашим тестовым проектом?
  • Цвета и палитры
  • Возвращаемся к тестовому проекту

Прежде чем приступать к разбору ассемблера, начнём с обзора самой NES.
Читать дальше →
Всего голосов 10: ↑10 и ↓0 +10
Просмотры 5.4K
Комментарии 3

Создание игр для NES на ассемблере 6502: заголовки и векторы прерываний

Assembler *Разработка игр *Компиляторы *История IT Старое железо
Перевод


6. Заголовки и векторы прерываний


Содержание:

  • Заголовки iNES
  • Выделение процедур с помощью .proc
  • Векторы прерываний

В предыдущей главе мы разобрали часть «main» тестового проекта, которая задаёт цвет фона, а затем входит в бесконечный цикл. Однако этот код составляет всего 13 из 44 строк исходного кода тестового проекта. В этой главе мы изучим оставшуюся часть кода тестового проекта и узнаем ещё несколько опкодов.
Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 3.5K
Комментарии 1
1