Львов я купил в свое время на деньги вырученные с продажи мотоцикла. А то этот «Планета спорт» ездил на мне, пожалуй, больше чем я на нем. Дело было где-то на третьем курсе универа, я думаю. В принципе до покупки я уже некоторое время интересовался компьютерами, читал журнал Радио, где публиковались схемы Радио РК-86, а позже и коды программ для него. Так что к моменту покупки Львова я более-менее представлял что и как работает. Ах да, один раз я брал у сокурсника компьютер «Микроша» чтобы поиграться. После покупки был в некоторой мере удивлен отсутствие ассемблера в составе стандартного софта.
Так или иначе, я брал Львов в том числе для программирования а не только для игр, так что стал писать программы: например обсчет лабораторных. Попытки писать игры быстро натыкались на недостаточное быстродействие бейсика и толкали к использованию ассемблера. Кстати, интересно, кому пришла в голову сделать на таком не слишком мощном процессоре бейсик с поддержкой только float чисел? Посмотрел на бейсиковые программы использующие ассемблерные вставки (Дракончик), попробовал сам такие писать (уж не помню что). Понял, что неудобно и надо как-то искать нормальный путь программирования на ассемблере. Для начала написал на бейсике простейший дизассемблер, чтобы понять, что и как сделано в ПЗУ. Потом решил написать свой ассемблер. На бейсике. Чтобы не мучаться с редактором текст ассемблерной программы записывался в самом редакторе бейсика а код ассемблера начинался гдето со строки 10000. выглядело довольно забавно:
10 GOTO 10000
20 JMP START
30 SPRITE: MVI B, 10h
…
Работало медленно, и не было до конца отлажено, так как ближе к окончанию написания до меня добралась кассета с редактором/ассемблером EKR-2 по моему. Свой ассемблер был заброшен. Но по крайней мере написание дало мне некоторый алгоритмический опыт, например использование hash-map для поиска меток.
Вот тут то собственно и стало можно писать игры
. Первые писались так, для себя. Через некоторое время договорился с конторкой, которая торговала аудио кассетами и программами для Спектрума торговать программами для Львова. Надо заметить, что тогда пиратство воспринималось как само собой разумеющееся. Так что я тиражировал и свои программы и чужие. 20% вроде бы отстегивал ларьку, который принимал и отдавал заказы. Судя по тому, что я не бедствовал (неплохая была прибавка к стипендии) Львовов в Нижнем Новгороде было достаточно. Писать с магнитофона на магнитофон почему-то не позволяла совесть, так как качество падало. Соответственно, многие игры со своими загрузчиками переупаковывались, надо отметить доставляло определенное удовольствие вскрывать разнообразные защиты
Программы писал, используя черно-белый телевизор Юность 402 в качестве монитора, цвета подгонялись потом, при подключении Львова к цветному телевизору. То, как игры выглядели в цвете при первом подключении можно охарактеризовать одним словом – кошмар. Надо признаться хоть палитра и позволяла назначать разные цвета логическим цветам, выбор цветов был мало адекватным. Игры помогала мне писать моя жена. Да да, Чистякова Е.Л. - копирайт, который стоит на некоторых играх – это ее. В этих играх большая часть кода написана ей, под моим разумеется чутким руководством
. Она же являлась бессменным тестером, оказывала неоценимую помощь при балансировке геймплея и рисовала уровни ко многим играм. Многие игрушки, конечно, были навеяны тем, что я видел на других платформах: spectrum, MSX, ранние PC. Но, в общем, привносилось и много своего. Что-то особенно интересного про процесс программирования сразу вот так не вспоминается, если вспомню – напишу позже.
Через какое то время я прикупил себе ПК-8000 Сура с дисководами к нему и перестал использовать магнитофон. Аудио входы – выходы двух компов были соединены между собой и программы для Львова считывались с дискет и выдавались на аудио выход Суры с раза в 3 увеличенной скоростью где их и подхватывал Львов. Где-то у меня лежат эти дискеты, но для того чтобы их прочитать надо будет найти пятидюймовый флопповод, если конечно эти дискеты еще читаются.
Купился я как-то на предложение о сотрудничестве зеленоградского кооператива Электрон. Привез им свои программы и сел ждать денег
. Ага. Можно считать развели как лоха, получил я, помнится, от них рублей 30 за все время. Естественно, ведь на дворе лихие 90е, а никакого механизма учета продаж в наличие нет. Во всяком случае, в Нижнем Новгороде я заработал за аналогичное время просто намного больше.
Честно говоря, приятно вспоминать то время, ну как говориться и трава зеленее была, и женщины красивее, и, вооружившись карандашиком можно было посчитать сколько тактов будет крутиться цикл. Будучи знакомым в основном с i8080 ассемблером круглыми глазами смотрел на статьи в журналах по поводу RISC процессоров пытаясь представить куда еще можно сократить набор команд
Проявлял я и некоторый интерес к разработке дополнительного хардвера. Среди того что помню: небольшой трехголосный синтезатор на базе таймера 580ВИ53 (Иностранные микросхемы типа ямаховского синтезатора как в Спектруме были не слишком доступны, да и не факт что я про них что-то конкретное знал)
Подключение в качестве принтера списаной Эл. Пишущей машинки типа "Консул" от какого-то старого большого компа. Потребовалось напаять небольшую плату примерно 8 на 8 сантиметров, выкинуть кучу ненужных плат и написать драйвер. Работала она – это было что-то: при переводе каретки тумбочка, на которой стоял этот девайс, прямо таки подпрыгивала одним краем. Да и сам звук напоминал что-то среднее между отбойным молотком и автоматной стрельбой.
Потом был подключен обычный покупной матричный принтер, но там вроде никаких доработок было не нужно.
Подключить дисковод ко Львову мне не удалось. Интересно было бы посмотреть схему тех, кому удалось. По моим расчетам скорости процессора не хватало на проверку сигнала готовности и чтение из порта, а не DMA не прерываний не было. Кстати предельно интересно этот вопрос решили в ПК-8000 Сура.
UPD.
Связанная тема "А.Чистяков и ПК8000 "Сура".