История IT глазами ребенка. Часть 1: Эра ZX Spectrum

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

Итак, в прошлом посте мы познакомились… со мной. Теперь же пришла пора перейти к куда более конкретным явлениям в IT-индустрии, которые мог наблюдать ребенок в первой половине и середине 90-х годов. В особенности я постараюсь понятно и доступно объяснить, что же такое «спектрум», о котором знает огромное число людей, родившихся в 80-х и о котором мало что слышала современная молодежь. Я прекрасно понимаю, что на эту тему написано немало статей и снято множество видеороликов, однако я хочу рассказать об этом явлении 90-х максимально просто, понятно и без совсем уж лишних подробностей (но немного технической инфы все же будет).

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

Но прежде чем добраться до ZX Spectrum, нужно пройти еще один небольшой шаг, имя которому КУВТ «Корвет». Если же вас мало интересует предыстория моего обладания этим продуктом британского гения, можете смело мотать вниз вплоть до фотографии «спектрума» - там начинается самая мякотка.

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

В Советском Союзе школы часто имели одну из нескольких разновидностей «комплектов учебно-вычислительной техники» или КУВТ. Ничего сложного и страшного в этом термине нет – всему виной советская тяга к аббревиатурам. Сегодняшний человек, вместо использования этих букв, может подставлять у себя в голове обычное и понятное «компьютерный класс».


Итак, именно из «Корветов» состоял первый класс информатики в моей школе – предмета, который у нас появился в третьем классе. Почему в третьем? Полагаю, все дело в том, что первые два класса школы у нас протекали в отдельном крыле (туда даже из основной части школы пройти было проблематично), а вот начиная с третьего класса мы потихоньку начинали самостоятельно ползать по школе.


Сами же «Корветы» были чем-то вроде «спектрума на стероидах». Нет, они не были совместимы, но как минимум поддержка CP/M (это такая операционка была в те годы) и какая-то совместимость части команд процессора присутствовала. К слову, о «Спектрумах на стероидах» - в следующем посте уделю этому чуть больше внимания.


На уроках информатики в первый год мы занимались какой-то ерундой. Несмотря на то, что при старте ПК был доступен Бейсик, мы гоняли в какие-то обучающие игры, а когда заканчивали выполнять задания, играли в менее обучающие. Игрушек было несколько, но мне больше всего запомнился «POP Corn» - эдакий клон арканоида, в котором нужно было разбивать шариком кирпичики, отбивая его лопаткой. Было еще что-то про пожарников, Lode Runner, ну и парочка других занятных развлечений.

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

Куда интереснее был метод загрузки: дисковод присутствовал только на учительском компьютере, в результате чего грузили всё поэтапно. Например, первым загружают POP Corn – все, кому хочется в него сыграть, перезагружают компьютеры и ждут, пока на экране не появится заставка. Потом так же поступают те, кому интересна следующая игра и т.д. Одним словом, программа слалась на все компьютеры, которые были недавно перезагружены. К сожалению, я до сего дня так и не смог увидеть, как это было реализовано на учительском ПК (хотя была даже вполне реальная возможность утащить такой комп домой), но даже с клиентской стороны все было несколько необычно.


Именно на этих уроках я и заметил, что один парнишка, который только в третьем классе перевелся в нашу школу, не испытывает особого восторга. Причиной тому оказался тот факт, что дома у него уже был компьютер с кучей игр, да еще и цветной! Мониторы же наших Корветов были поголовно черно-белые. Естественно, идея напроситься в гости к свежеиспеченному однокласснику возникла за считаные секунды.

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

Парнягу звали Константином (ну, тогда он был просто Костя, но какая разница). По меркам 90-х его семья жила очень и очень неплохо. В то время, когда всем повально задерживали зарплаты, его отец работал (кажется) дальнобойщиком, и не только регулярно получал неплохую зарплату, но и мог привозить интересные шняжки из поездок. Дома у одноклассника обнаружился музыкальный центр, куча машинок на пультах и радиоуправлении, но самым интересным для меня оказался… очередной клон спектрума. Ну, а что поделать, если в то время они были нереально распространены. Что примечательно, хоть клон и был довольно топорным – явно самоделка с корпусом из согнутого листа алюминия (он еще и током бился), монитор был вполне себе заводским – выглядел солидно, а главное – был цветным! До этого цвет мне доводилось наблюдать только на тех Atari, о которых я вспоминал постом ранее.


Именно проводя время у этого одноклассника я и насмотрелся на кучу спектрумовских игр (стоит ли их перечислять?), наслушался звуков загрузки и, наконец-то, научился играть на клавиатуре. Более того, даже пресловутое LOAD "" перестало быть для меня чем-то сокровенным.

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

При всем при этом, был один момент, который не давал мне покоя – играть, безусловно, было интересно, но ведь компьютер не только для игр, и мне прям свербило попробовать сделать что-то свое, а главное – записать это на кассету! Какое-то время я думал о том, что это в принципе невозможно, пока Костя не показал мне «игру», которую написал его отец. Почему в кавычках? Потому что этой «игрой» оказалась простенькая программа, содержащая в себе лишь один экран текста, в котором содержалась информация сколько шагов нужно пройти в том или ином направлении по квартире, чтобы найти заныканый в шкафу подарок на день рождения. Стоит отметить, что в компьютере моего одноклассника уже был вшит русский язык, ибо без него вряд ли подобная «игра» вообще появилась. Так вот, несмотря на свою незамысловатость, эта программка являлась доказательством того, что задуманное мной вполне реализуемо, вот только проблема заключалась в том, что магнитофон, которым мы пользовались для игр на спектруме, не мог что-либо записывать. Функция-то такая у него была, да вот только что-то было вшатано и запись просто не работала.

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

Ну, вот и все. На этом можно официально считать «Вступление» законченным. Почему? Да потому что спустя всего каких-то полгода, году эдак в 1996-м, накануне моего дня рождения родители прямо спросили: «Что тебе подарить: маленький магнитофон, маленький телевизор или маленький компьютер?». Судя по обилию прилагательных, вы уже могли догадаться, что с финансами у нас тогда дела обстояли, мягко говоря, не очень. Как бы то ни было, думать мне вообще не пришлось – магнитофон у нас дома уже был, телевизоров было даже несколько (разной степени ушатанности), а вот компьютера не было.


В результате, докинув пару тысяч тенге к моим уже накопленным к тому времени двум тысячам (подарки на праздники и прочая лабуда – на самом деле, по тем временам деньги довольно большие). Мы с отцом отправились к его другу детства, который на компьютерах не просто «собаку съел», а открыл настоящий ресторан северокорейской кухни. Данной темой он начал интересоваться еще в те годы, когда компактными назывались те компы, которые размером были сопоставимы с трехкамерным холодильником. Естественно, дома у него присутствовало и несколько рабочих экземпляров, один из которых оказался ему абсолютно не нужным, во всяком случае, за 4000 тенге он согласился с ним расстаться (дабы был понятен масштаб трагедии, 4000 тенге по тем временам представляли собой нечто вроде 100-150 долларов сегодня). Домой я в тот вечер вернулся уставший и счастливый, ибо на собственном горбу пер тряпичную сумку, которую обычно использовали для транспортировки домой картошки из погреба. Вот только в этот раз в ней лежали на грязные клубни, а маленький автомобильный телевизор (мы его таскали из дома с собой, дабы подпаяться к видеоусилителю), несколько десятков аудиокассет, пара книжек и его величество ZX Spectrum, вернее, один из его клонов.


Сразу оговорюсь, что фотографии его не осталось. Тем не менее, я отчетливо помню, что у него был очень и очень приличный вид – светло-бежевый пластиковый корпус, QWERTY-клавиатура, на которой помимо стандартных спектрумовских кнопок, присутствовала еще и RUS/LAT (которая, впрочем, делала ровным счетом нихрена). Были нанесены и русские буквы, вот только толку от этого было ровным счетом никакого. В уголке же красовались выдавленные цифры «0010». Логично было бы предположить, что корпус с клавой достались ему от какой-то БК, однако, сколько бы я не искал фотографий этого компьютера, ничего похожего найти не удалось, да и расположение клавиш у БК заметно отличалось (у нее хотя бы был полноценный пробел).

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

Итак, Sinclair ZX Spectrum 48k. Для тех, кто не в курсе, это был очень распространенный в странах СНГ компьютер, который можно было собрать если не из спичек и желудей, то как минимум из весьма доступных компонентов, достать которые особого труда не представляло. Его клоны клепались на радиозаводах, в радиомастерских, да даже на домашних кухнях. Несмотря на то, что характеристики этой железки были весьма скромны, это был самый настоящий компьютер, а значит, его хотели себе все. Так что же было внутри этого красавца?


Ну, во-первых, интересна уже его конструкция – все потроха (за исключением, как правило, блока питания) располагались внутри клавиатуры. Я до сих пор жалею о том, что данный форм-фактор ПК на 99% вымер – было в нем что-то практичное и неуловимо ламповое. Процессор спектрума был 8-битным (как правило Zilog Z80 или один из его клонов) и фурычил со скоростью 3.5MHz. Оперативки, если судить даже из названия, в компе было 48 килобайт (в число которых входила и видеопамять), а наиболее распространенным устройством ввода-вывода был обычный бытовой магнитофон. Вот как раз к нему я и присандалил свой новый (во всяком случае, для меня он был новым) спектрум. Агрегат выглядел вот так:

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

Команду загрузки, выглядевшую как LOAD "" я знал уже давно. Кроме того, мои познания в тот вечер были пополнены командами PRINT, RUN, а также REM и SAVE. Одним словом, у меня было все необходимое для того, чтобы не только загружать программы, но и записывать их. Позже я понял, что с отдавать компьютер с таким набором "знаний" - то еще издевательство, но об этом позже.

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

На первой же кассете, которая своими воплями изображала адскую какофонию проклятых котов Вельзевула, первой игрой оказалась Captain Blood. Честно говоря, вообще не лучший выбор для старта. Я не понял ровным счетом ничего, ибо, несмотря на довольно неплохую по меркам спектрума графику и интерфейс (эмуляция курсора мыши, полеты «в 3D» и пр.), понять, что же в ней нужно делать, было попросту невозможно. Пришлось искать что-то попроще.

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

Впрочем, про игры не рассказывал только ленивый, да и я им уже порядком уделял внимания. Отдельному рассмотрению «бриллиантов» я посвящу немного времени позже (или в следующий раз), а пока, вернемся к комплектации моего компьютера. Помимо кассет и самого спектрума, мне в сумку положили парочку книжек, одна из которых оказалась порождением сумрачного гения (50% ее объема составляли патчи к каким-то программам в HEX-формате, а вторую половину – обзоры различных копировщиков и альтернативных языков программирования, вроде Laser Basic), а вот второй была «мышка Программышка». Как мне кажется, она была предназначена для компьютеров IBM PC первых ревизий. Она рассказывала о встроенном бейсике (а тогда бейсик был основой большинства компьютеров и играл роль операционной системы), а также имела в себе несколько примеров программ. И вот тут началось «самое интересное». Обратите внимание на клавиатуру ZX Spectrum:

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

Вас не озадачило обилие надписей на каждой клавише? Дело в том, что команды здесь не нужно было вбивать побуквенно – достаточно было нажать на кнопку и она вставлялась целиком. Кто-то считает, что такое решение использовалось для того, чтобы сделать компьютер более «дружелюбным», но на деле все дело в обычном жмотстве экономии ресурсов. Например, вместо того, чтобы хранить в памяти 7 байт для команды PRINT и окружавших ее пробелов, можно было просто записать в оперативку ее код, который, как правило, был всего 2-3 байта (если ошибаюсь, пусть меня поправят). Одним словом, кромешная экономия ресурсов. Если вам кажется, что это – перебор, чуть позже я расскажу о том, как в спектруме была устроена видеопамять – там вы совсем офигеете.


Но вернемся к книжке. Давайте представим, что у нас есть программка, которая получает от пользователя число, прибавляет к нему 10 и выводит результат. В книжке она была бы записана так:


10 INPUT A

20 A=A+10

30 PRINT A

Вот только на ZX Spectrum это не работало. Во-первых, начать строчку с буквы уже было достаточно проблематично, ведь при нажатии на букву А компьютер сразу втыкал оператор NEW. Конечно, можно было после оператора набрать нужную строчку, а потом стереть слово в начале, но тогда ничего не работало.


В результате, меня оставили один на один с Basic, не рассказав о имевшемся в нем операторе присвоения. Думаете меня это остановило? Фиг там! Я даже умудрялся писать какие-то игры. Помню, у меня был симулятор похода в магазин, в котором расчет денег после покупки производился примерно так (K – количество ваших денег, 30 – цена булки хлеба):


1050 PRINT “Вы купили хлеб за 30 рублей!”

1060 PRINT “У вас осталось”;

1070 PRINT K-30

1080 PRINT “Введите количество оставшихся денег”

1090 INPUT K

Для тех, кому совсем чуждо программирование в целом и Basic в частности, переведу. Представьте ситуацию: вы приходите в магазин и просите у продавца булку хлеба за 30 рублей. Продавец дает вам хлеб, отбирает кошелек, видит в нем 200 рублей и вытряхивает все содержимое в кассу. Потом говорит, у вас должно остаться 170 рублей, после чего поворачивает к вам открытую кассу и уходит.


В книжке хватало и других занятных различий, от разницы в командах (в книжке был PSET, а на спектруме – PLOT), до перевернутой координатной сетки. Так, к примеру, координаты 0:0 по книжке находились в левом верхнем углу, а у ZX Spectrum они были в левом нижнем (тут может и перепутал – давно это было). Ну или команда LINE – в книжке она рисовала линию, а у спектрума использовалась для того, чтобы указать строку автозапуска в сохраняемой на кассету программе. Одним словом, было весело.

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

Но самым мощным толчком, направившим меня в объятия болота под названием программирование, был учебник по спектрумовскому Бейсику, но уже в виде обучающей программы. Что занятно – софтина была жутко каноничной, ибо сама также была написана на том же Sinclair Basic. К тому времени я уже знал, что можно остановить любое бейсик-приложение с помощью кнопок Shift+Break, а потом с любопытством покопаться в потрошках. Меняя те или иные строчки, я узнал за один вечер в десятки раз больше, чем от целой орды «мышек-программышек», «хомяков-сисадминов», «морских свинок-интеграторов» и «инфузорий-1Сников». Кроме того, я сам того не понимая, открыл для себя реверс-инженеринг. Но главное - я узнал об операторе LET, который позволял присваивать переменным значениям, благодаря чему мой «продавец» перестал бросать кассу на произвол клиентов.


Дальше было больше – уж не помню как, но я узнал расположение видеопамяти и научился пихать данные в нее напрямую через POKE. Тем же методом пришла и способность создавать собственные шрифты знакогенератора, благодаря чему в моих программах появилась возможность писать, как на русском, так и на английском языках (я просто переписывал строчные английские буквы заглавными русскими, получая тем самым сразу два алфавита).


К слову о видеопамяти. Как я уже упоминал ранее, она была включена в ОЗУ. Учитывая, что разрешение спектрума – 256х192 пикселя, а он поддерживает 16 цветов (фактически 15, но не суть), то необходимый для отображения картинки объем видеопамяти должен был бы быть: (256*192)/2=24576 байт… что, по сути, половина всей оперативки. Жирно, не правда ли? Вот и создатели спектрума так подумали, уменьшив ее до 6912 байт. Как вы понимаете, нельзя просто так отгрызть больше 60% видеопамяти и не получить неприятные последствия. Само собой, и тут без них не обошлось. В частности, пользователи ZX Spectrum прекрасно знакомы с таким явлением как «конфликт аттрибутов» (он же клэшинг). Дело в том, что весь экран разделяется на квадраты 8х8 пикселей и внутри каждого из таких квадратов может быть только два разных цвета. Именно благодаря этой особенности мы получаем вот такие психоделические явления:

История IT глазами ребенка. Часть 1: Эра ZX Spectrum Детство 90-х, Воспоминания из детства, Компьютерные игры, Zx Spectrum, Кувт, Корвет, Длиннопост, Видео

Зато изображение занимает всего 6144 байт и еще 768 байт на информацию о цвете. Экономия! Кстати, сама конструкция видеопамяти спектрума мне всегда казалась очень занятной. Честно говоря, тут я не особо специалист и может это абсолютная норма, но информация об изображении хранится в ней не последовательно, а строками с хорошим сдвигом, а потом еще и информация о цвете. На словах это объяснить очень трудно – проще посмотреть, как картинка грузится в память с магнитофона. Напоминаю, загрузка идет последовательно, просто спектрум «так видит».

Пожалуй, на этом пока закончу, ибо и без того портянка вышла знатной. В качестве бонуса – на днях запилю небольшой пост о наиболее интересных (на мой взгляд) спектрумовских играх, а также клонах и продолжателях идеи Синклера. А потом… да начнется эра IBM PC AT!

IT минувших дней

1K пост7.1K подписчиков

Добавить пост

Правила сообщества

Запрещается добавлять новости о прошлогодних новинках, а также посты, не относящиеся к тематике "ретро в ИТ".

Желательно соблюдать правила приличия.

Вы смотрите срез комментариев. Показать все
3
Автор поста оценил этот комментарий

А чего сразу к IBM. У спектрума было такое полезное приложение, Laser Basic. С неплохой такой кучей операндов для графических фишек. Трудился я тогда пацаном на студии кабельного телевидения и написал на нем заставку с телепрограммой. Было круто. :)

раскрыть ветку (33)
5
Автор поста оценил этот комментарий

Я его упоминал в этом посте, правда, не видел ни разу. Кроме того, совсем уж углубляться не хотелось бы - планировал рассказать про "копировщики", про ArtStudio и несколько занятных игрушек, ну и про парочку клонов (современных и не очень). Так что если есть что добавить: "Пилите, Шура Андреич, пилите... пост".

раскрыть ветку (2)
6
Автор поста оценил этот комментарий

Самое офигительное было это когда я будучи пацаном и не тратя карманные на всякие газировки, кое-как насобирав на плату Scorpion 256 (на собранный комп категорически не хватало) припер ее домой с рынка, сел паять разъемы, уже все видео завелось, картинка пошла, я допаиваю кажется кемпстоны и тут паяльник коротит у меня в руках и засыпает плату кучами искр. Чудес не произошло, плата кончилась. Только через год я смог накопить на уже собранный компик. :)

раскрыть ветку (1)
Автор поста оценил этот комментарий

воспоминания на всю жизнь)

1
Автор поста оценил этот комментарий

А я сразу на асм кинулся, бейсик как-то мимо прошёл. Тогда был популярен masm, но появился alasm, который надолго прописался в лучших IDE для спектрума) Кодить в нём было удовольствием. А вообще в асме особенно нравилась как раз работа с графикой - ищешь где бы сэкономить пару тактов, циклы разворачиваешь и вот это всё)


Блин, да я движок написал свой и редактор карт)

раскрыть ветку (29)
1
Автор поста оценил этот комментарий

Извините, но вы так красиво рассказываете, что я вынужден немного усомниться. Если позволите, можно провести небольшую проверку ваших знаний? Как можно сделать так, чтобы вместо строчной буквы "а" везде выводилась заглавная "А"? В смысле совсем везде - даже в листингах.
Навскидку, достаточно вшить 8 байт начиная с определенного адреса. Но у вас может быть и альтернативный вариант.
Просто и на асме вам кодилось с удовольствием, и сетевые игры на спектруме, и мессенджеры - как-то на байки похоже.

раскрыть ветку (28)
2
Автор поста оценил этот комментарий
Извините, но вы так красиво рассказываете, что я вынужден немного усомниться.

Имеешь полное право.


Как можно сделать так, чтобы вместо строчной буквы "а" везде выводилась заглавная "А"? В смысле совсем везде - даже в листингах.
Навскидку, достаточно вшить 8 байт начиная с определенного адреса. Но у вас может быть и альтернативный вариант.

Эм, чего? Чувак, я вроде ни на что не претендовал, на кой хрен ты мне тут экзамены устраиваешь?


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

А на чём ещё можно было что-то написать на Спектруме? Ты видел хоть одну вменяемую игру кроме как в машинных кодах? И как на асме может не кодиться с удовольствием, если он простой как три копейки?


Насчёт модема - http://zxpress.ru/article.php?id=12924 что-то такое, примитивное. Софт аналогичный - наверное стоило написать "мессенджер" в кавычках. Два поля - вверху пишет товарищ, внизу я. Игра Laser Squad, повторюсь. Вот есть ссылка на неё http://www.planetemu.net/rom/sinclair-zx-spectrum-games-hobe...


Что-то такое, видимо. Это было почти 20 лет назад.


Что за скептицизм? Я зашёл понастальгировать, а ты меня обдал своим недоверием с ног до головы. Обидно, блин(

раскрыть ветку (24)
1
Автор поста оценил этот комментарий
Я зашёл понастальгировать, а ты меня обдал своим недоверием с ног до головы.

Так вы ностальгируйте как-то скромнее - у всех тут Elite, River Raid и прочий ширпотреб, а потом появляетесь вы с мультиплеерными играми и знанием асма.

раскрыть ветку (13)
1
Автор поста оценил этот комментарий

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


Что я задел в твоей душе, друг, колись? Без претензий, без наездов - просто вспомнил былое, да такое, чего ты даже не знал. А, так может в этом дело? А я ещё на Paradox в Ростов ездил, прикинь. И в группе Coder's Academy состоял. Как тебе такое, уже плачешь?

раскрыть ветку (12)
1
Автор поста оценил этот комментарий

Уже оба кулака в соплях. Да дело в том, что тут комменты почитаешь, так у половины в начале 95-го года 200-е пеньки ММХ были, да еще и винда 95-я стояла. Как-то вера в людей немного рассасывается.
P.S. А задачка-то с заменой буковок элементарная. Я тож спектрум в руках лет 20 не держал (да и асма его не знаю), но решить ее минут за 10 смогу.

раскрыть ветку (11)
1
Автор поста оценил этот комментарий
Как-то вера в людей немного рассасывается.

Ты на допросе в околотке, я не пойму? Люди путают даты - это абсолютно нормально. Речь не о том, чтобы поразить окружающих как же он круто жил в 2000-х, а вспомнить нечто приятное.


P.S. А задачка-то с заменой буковок элементарная. Я тож спектрум в руках лет 20 не держал (да и асма его не знаю), но решить ее минут за 10 смогу.

Да беспезды ты крут, чувак. Но не для всех важно доказывать что-то нонеймам в сети, извини.

раскрыть ветку (10)
1
Автор поста оценил этот комментарий

Люди путают даты - это абсолютно нормально. Речь не о том, чтобы поразить окружающих как же он круто жил в 2000-х, а вспомнить нечто приятное.

Дык в том то и дело, что не признаются в том, что путают. Да и цель поразить окружающих тут тоже вполне прослеживается - полистайте - есть и примеры а-ля "Чего ты в 2000-х фигней страдал - нормальные поцики с GeForce в анрылу шпилили".

раскрыть ветку (9)
Автор поста оценил этот комментарий

Ну, я напутал в сокете - признался. Всё остальное - правда.


Ну и для сведения - когда говорят "в 2000-х" не имеют ввиду период от 1 января до 31 декабря 2000, а всё десятилетие. Там можно уточнять - первая половина 2000-х, вторая или середина. У меня в 2000-х была и GeForce MX440 и ATI Radeon 9600. А потом ещё 1950xt agp.

раскрыть ветку (8)
Автор поста оценил этот комментарий

Там речь шла о конкретном годе.

раскрыть ветку (1)
Автор поста оценил этот комментарий

По-моему, мы уж слишком увлеклись придирками к словам друг друга. Как вам идея забить на эту тему и обсудить что-то более интересное?

раскрыть ветку (5)
Автор поста оценил этот комментарий

Фиг знает, мне кажется подозрительным, что человек владеющий ассемблером путает Slot A и Slot 1 :)

раскрыть ветку (9)
Автор поста оценил этот комментарий
Какая связь между ассемблером z-80 и сокетом x86?
раскрыть ветку (8)
Автор поста оценил этот комментарий

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

раскрыть ветку (7)
1
Автор поста оценил этот комментарий

Не, я тебя обманул. На самом деле я асма, да и спектрума не знаю, я в то время сидел на кортах с пацанами и пил балтику 9 с семками. Как ты меня ловко на чистую воду вывел, а!

раскрыть ветку (6)
Автор поста оценил этот комментарий

Забыл добавить:  "А слова все умные на кульке от семечек прочитал" :)

раскрыть ветку (5)
1
Автор поста оценил этот комментарий

Не, ботанов щемили, от них набрались.

раскрыть ветку (4)
1
Автор поста оценил этот комментарий

Они, как я понимаю, по методу Дани Шаповалова защищались? "Иди сюда, мастдай непропатченый"? :)

раскрыть ветку (3)
1
Автор поста оценил этот комментарий
Привет, можно я на эту загадку отвечу?

1. По адресам 23606/23607 лежат два байта. Это адрес дампа знакогенератора, используемого в данный момент. Старший байт, вроде, перед младшим, но это неточно. Умножаем старший байт на 255 (или 256?), прибавляем младший.
2. Выбираем подходящее место в памяти. Обычно в районе 6е4. Хорошо выбрать такой адрес, чтобы он отличался от оригинального только старшим байтом: переключать удобнее.
3. Копируем (цикл с пик-поук) (127-32)х8 байт из пзу в ОЗУ на новое место.
А теперь фокус: делаем цикл длиной 26х8 и копируем из пзу со смещением CODE "А"х8 в ОЗУ со смещением CODE "а"х8.
4. Записываем в адреса 23606/23607 адрес нового дампа.

Ой. Вы только букву "а" хотели заменить. Тогда цикл "фокуса" короче, только 8 байт.
раскрыть ветку (2)
Автор поста оценил этот комментарий

Насчет конкретных адресов уже не упомню (надо тыкать-проверять), но алгоритм верный :)

раскрыть ветку (1)
1
Автор поста оценил этот комментарий
Ага. Я честно взял из собственной памяти (сам удивился, уж четверть века прошла, а я помню) но сейчас проверил: да, адрес системной переменной CHARS я назвал правильный. См. https://www.worldofspectrum.org/ZXBasicManual/zxmanchap25.ht...

С порядком я ошибся: первым идёт младший байт.
И ещё одну ошибку заметил: где я говорю о CODE, надо использовать (CODE "" -32). Знакогенератор начинается с пробела, а не с нулевого символа, поэтому надо корректировать смещение.
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку