Как я начинал программить на Бейсике (90е годы)

Дело было в далёком 90м, когда у меня, из не многих тогда людей, был компьютер, собранный моим папой — zx-spectrum! (аналог Ленинград) 48КБ памяти, и загрузка с обычной аудио кассеты с магнитофона. Сам комп, надо сказать тогда подсоединялся к суперкруглому цветному телевизору по RGB проводу, разъём которого даже не был выведен на заднюю панель этого «монитора». В последствии, мой папа спистил с работы накопитель на мягких 5’25 квадратных дискетах, ёмкостью кажется 250КБ и вшитой операционной системой TR-DOS и кнопкой Magic. В процессе модернизации моего компьютера, я сам тоже модернизировался — и встроенный язык программирования Бейсик — знал с закрытыми глазами и уже серьёзно программил. Рисовал программно разноцветные кружки с булькующими-пердящими звуками на основе функции RANDOMIZE, то голую бабу с сиськами — одной лишь функцией print (построчно) , создавал ДАЖЕ с чуваками простые игры типа FRED или BoulderDash или Пакмена — cлабо?! И Бейсик шпарил по полной программе. В школе — валом валились пятёрки на уроке информатике мне было уже не интересно. Так, я в последствии со Спека с лёгкостью переехал на Писюк — и абы какой — Пень сто! 4ГБ Жёсткий диск, CD-ROM, Саундбластер 16 😉 ! Интернет тогда только зарождался в массы, и мне был пока не так сильно интересен! И первым делом было надыбить мой старый Бейсик и установить его на тачке! Пошёл на рынок и купил диск, там по-мимо Бейсика, был ещё TurboBasic и ещё какие-то, и ещё около 50 языков кодинга! Бейсик установил, и начал его изучать!

Оказалось что с момента рождения первого PC — он (Бейсик, потом QBasic.exe) развивался там, а я развивался (в силу не доступности покупки PC хоть 286го 🙁 ) юзал их на Cпектруме. Ну появилась помню команда play(частота, длительность) вот я резвился с ней помню — прикладывая динамик к стене соседа пища ему 35000Hz. Но, опытные, на тот момент программеры сказали — ты не сможешь написать вирус, пока не будешь управлять компом на низком уровне. Как это? На низком? Т.е. интерпритировать ассемблер! Как? А из Бейсика это можно было делать — писать командой OUT читать IN! В OUT (адрес, значение); как-то так! И сказали — отсканируй мол адреса! Я сделал цикл for next где по-байтно отправлял на указанный адрес некое значение… Записал в текстовый файл свой резулт. И вот, «нащупав» порты устройств, а в качестве подопытного у меня был 4гб жёсткий диск, СD-ROM, и две планки памяти — я начал свой эксперимент! 😉 На Бейсике, адреса и что я писал уже не помню, ведь прошло уже около 20 лет, но исходники моих детских экспериментов — могу выложить тут, обещаю это сделать. И так кодинг!

Память пня сотки: Открываю Бейсик, делаю три команды OUT 1) OUT (234,34); OUT (235,34); OUT (236,34); — Сохранить, говорю: Создать STANDALONE (т.е. EXE) файл (И включить Библиотеку dll eже в него же)! Готово! Закрываю Базика. Запускаю из под NC start.exe ENTER — жёсткий диск слегка попердел и … на экрнане появились (на фоне обложки NC) Разноцветные мигающие кубики, от ярко салатовых, до тёмно-синех, в некоторых из них моргали рисунки, толи крестика, толи головы человеска, пики, винни, червы, кубики, разбросаны они были хаотично по экрану — то ярко салатовым, то жёлтым! Глюк! Понял я и обрадовался! Не сломался бы компьютер только! Нажимая на клавиши — издавался истошный — прпрпрпрпрп! ппппп! прпрпр! ппппп… пытался я нажать кнопки, но только пердящий звук издавался даже не из саундбластера, а из динамика, тот что пикает пииииииикккк! при включении питания! Ба, да я хакер! Комп наглухо завис с мерцающим экраном, не помогало даже Alt+Ctrl+Del что бы его перезагрузить — пришлось нажимать на кнопку питания! Во второй раз я проделал — тот же эксперимент — убедившись в его успешности! Комп наглухо лип! Тогада я уже ходил на курсы С++ в Бауманку и предложил готовый экзешник одному сокурснику — на следующий день тот предложит мне заняться вирусописательством, но я отказываюсь и продолжаю экспериментировать с адресами памяти дальше и «заполнением» их областей — в надежде увидеть больше глюков, или разнообразных или «косящих» под СБОЙ HARD WARE (железа!)

Что происходит с компом? Выполняется программа, ну и выполняется, и тут — откуда не возьмись в память перезаписывается х.з. какие-то данные отвечающие за работу целевой системы… Оппп, и комп завис. К такому выводу пришёл я тогда.

Эксперимент с CD-ROMом. Это пожалуй самый удачный эксперимент, в котором, при «посылании» мною уже изученной команды АУТ (прямое обращение к памяти) я освоил ещё два полезных, или нет свойства: научился аппаратно открывать и закрывать крышку диска, и второе — при посыле команды — «останавливал» вращение диска в приводе до нуля, ну и скажем смотрите вы фильм с avi-файла, а тут в прогрессивной последовательности — начинаются «тормоза» изображения, всё чаще и чаще и чаще — пока комп опять не залипает намертво (потому что не может уже «дочитать» файл — смешно 😉 и мне тоже было смешно) — пока я не очконул в прямом смысле от следующего эксперимента.

Вирус Жёсткого диска компьютера! На основе предыдущего эксперимента с сидюком, я решил попробовать (ведь я уже хакер) — эксперимент с жёстким диском компьютера! И так, как всегда любимая команда out (адрес, байты); отправляющая х.з. что х.з. куда 😉 Адрес харда я знал из своей программки сканера! Сделал exe-файл и запустил его. Смотрю визуально — хм? Ничего не произошло. NC — работает. И тут я лезу через NortonCommander в поддиректорию с моими проектами на Басике и …. пауза, ещё пауза — комп залипает на секунду, а курсор может шарить при этом по меню NC! Кликаю по basic.exe (системный блок стоял тогда у меня на столе и лампочка HDD — была мне видна, я тогда поглядывал как мол данные загружаются на неё — в те годы) И тут смотрю, еле, еле, еле, на зелёный светодиод, подаёться сигнал и он так тускло-тускло (вот мол прямо сейчас выключиться) загорается зелёным! Всё что описываю, проискохит далее по рассказу — в периоде 2-3 минут! У меня лезут глаза на лоб! Вылетает красная табличка из NC — «Не могу загрузить файл, т.к. он повреждён или х….»? Тукаю в другой, 5 сек пауза: -«Не могу»… Меняю диск на CD-ROM: (Alt+F1): NC -«Не могу: убедитесь, что диск вставлен…»… Не могу, не могу, не могу… И! В это время… (Вы бывали на аэродроме? Слышали как самолёт ВКЛЮЧАЕТ турбину?) Еле-еле, чуть слышно, начинает вращаться жёсткий диск! С НУЛЯ оборотов, всё быстрее и быстрее… А звук всё усиливается! (Примерно — как стиральная машина — начинает отжимать бельё) Я тыкаю, в файл который весит, смешных 8байт .txt — (один символ) — Нортон орёт красным экраном: «Не могу, не могу, убедитесь что диск, убедитесь что файл…» Вот тут я и очканул! Думал, всё — писец, доиглася х… на скрипке! Сломал НОВЫЙ! дорогостоящий комп! Пень 100! Ппц Жёскому диску думаю, а также плате… и мне от моего папы! 🙁 НО, но! По истечении времени, когда ХАРД «РАСКРУТИЛСЯ» (если можно это назвать так) комп влёт стал всё загружать и нормально работать! Я перезагрузил компьютер! Всё встало на свои места. — «А скажите? В магазине также можно стену приоткрыть?» — «Что вы что вы!» — «Какая машина!»…

Подопытный СаундБластер (SB16, IDA=5, адрес шины = 220 что-то там уже не помню, IRQ=5 прерывание) Он кочевал дальше со мной из сборки в новые сборки — пока на 3-4 разе я оставил его в старой машине! Тоже, команда out и тут — я офигел! Видать я затронул микросхему MPU-401 в которой хранились все шаблоны инструментов и началось: Скрипка-Бубен, или звук — нечто похожий на засасывающий пылесос и орган… Мутированные инструменты! Я это назвал тогда так! Я даже сделал записи, и разложил всё по нотам — какой звук и за что отвечает! Кстати, если вы слушали современную PsihoTranceMusic или что-то в этом роде — так вот именно тогда, я в первые услышал их отрывки там в Pentium100 + Basic + SB16! Свистяще-пердяще-струнные, или ударно-свистовые, хлюпо-заглатывающие, а как вам соло на: cкрипка+пианино+бассгитара+рояль+дует ветер+жжужжание+храп — я всё это ОДИН инструмент — я давал им тогда (конечно не зная как правильно работатет код) классификации: Пердяще-гремящие или Железно-Жужащие инструменты! Даже, у меня в архивах должен быть такой файл — тоже из трёх строчег… out, out 8)! Свои произведения я таскал на дискетке в Институт, но ребята — ржали надо мной — а теперь, спустя дисятиления — это вполне современная музыка, эффекты, которые придумал я тогда (конечно случайно, не надеясь что-либо услышать, как в случае с жёстким диском) — исполняют известные компьютерные музыканыты, типа Армина Ван Бурена и им подобным! Всё, что я написал тут — ИСТИНАЯ ПРАВДА! (А тем кто не верит, попозже, поле ремонта дома, и разбора хлама — я выложу тут исходники для доказательств!) Вот так я програмил на Бейсике! Выучили вас на свою голову — облысели все.

Мои старые заготовки:

На основе всё той же команды out (addr, byte); я хотел, 10 лет назад сделать так называемый вирус монитора, но так и забросил это дело — осталось лишь версия вируса монитора пользователя (демо версия и абсолютно безопасна — для вашего компьютера, кстати ваш антивирус вам не скажет — что мол ахтунг, ахтунг! Можете попробовать (Раньше писалась под браузер MSIE))

8 thoughts on “Как я начинал программить на Бейсике (90е годы)

  1. Ну вот((( год прошел, а исходников всё нет(у самого получилось вызвать только синий экран смерти))

  2. Ну вот. Год прошёл а исходников всё нет. А сам я смог только вызвать BSOD и переустановку системы((

Comments are closed.