Обратите внимание, что новости можно получать по RSS.
X
-

События, Демосцена, Информационные технологии, История вычислительной техники и IT, LiveJournal cr_it - архив

20 августа 2012, 02:58 (4645 дней назад, №8824)Программирование в машинных кодах на ЭВМ "Агат"

DSC_8219На прошедшем в эти выходные Chaos Constructions'2012 кто-то принёс на выставку Агат  - советский неполный аналог Apple II. С ним была одна дискета, с которой он ничего не хотел грузить. То есть писал "АГАТ" и единственное что можно было сделать - выйти во встроенный монитор, который позволял смотреть память по адресам, менять её, ну и еще дизассемблировать.

DSC_8287Мы (я, tnt23, Oxyd, Meteo и еще один человек) никогда с Apple II и Агатами дела не имели, но предположили, что там ну просто обязан быть Бейсик в ПЗУ. И пытались его самыми разными способами извлечь. Похоже, Бейсика там в помине не было, но в какой-то момент сам процесс стал интереснее цели. Сначала методом тыка мы нашли, какие примерно команды монитор понимает. Просматривая память обнаружили, где примерно начинается ПЗУ (с Fx00) и где ОЗУ, в которое можно писать (с 0100). Поскольку я когда-то начинал с Commodore 64, по крайней мере процессор (6502/6510) был знаком. Так что, просматривая листинг ПЗУ, быстро удалось найти подпрограмму вывода на экран символа (во-первых, она часто вызывалась, во-вторых перед вызовом всегда загружался только аккумулятор: что-то типа LDA ... и затем JSR FDD4). В итоге за несколько минут в кодах была написана суперпрограмма:

DSC_8243DSC_8239INX             ; о том, что нельзя увеличивать напрямую значение аккумулятора я уже и забыл
TXA            ; так что увеличиваем индексный регистр, а потом переносим значение в аккумулятор
JSR FDD4 ; вызываем ROM подпрограмму вывода символа на экран
JMP 0100   ; и по новой..

ассемблировать монитор не умел (или мы не нашли как), поэтому пришлось писать в машинных кодах.
Запущенная программа сходу вывела все символы и даже стала чистить экран и пищать (видимо там есть и управляющие коды). Видео.

Приятно было вспомнить системы, которые можно изучать такими простыми способами :-)

P.S. Заодно, ссылки на фотографии с CC'12. Первый день, Второй день.


Опубликовано: Пётр Соболев

Случайная заметка

9382 дня назад, 21:231 сентября 1999 Вчера Apple объявила о выпуске своего нового компьютера G4, на основе PowerPC G4. В процессоре G4 реализован набор инструкций для потоковой обработки AltiVec. 500 МГц G4 работает быстрее, чем Pentium III 600. PhotoShop давно уже работает шустрее на Apple'овских компьютерах. Кроме того, Apple предлагает вместе с G4 монитор Apple Cinema Display. Это 22-дюмовый ...далее

Избранное

2926 дней назад, 01:575 мая 2017 Часть 1: От четырёх до восьми Я люблю читать воспоминания людей, заставших первые шаги вычислительной техники в их стране. В них всегда есть какая-то романтика, причём какого она рода — сильно зависит от того, с каких компьютеров люди начали. Обычно это определяется обстоятельствами — местом работы, учёбы, а иногда и вовсе — ...далее

2438 дней назад, 20:305 сентября 2018 "Finally, we come to the instruction we've all been waiting for – SEX!" / из статьи про микропроцессор CDP1802 / В начале 1970-х в США были весьма популярны простые электронные игры типа Pong (в СССР их аналоги появились в продаже через 5-10 лет). Как правило, такие игры не имели микропроцессора и памяти в современном понимании этих слов, а строились на жёсткой ...далее