айрхеология
«Виола»: математический модуль
Наверное, можно подумать, что я забросил заниматься браузером «Виола» — первым графическим браузером с потрясающими для своего времени возможностями. На самом деле — ничего подобного: почти каждый день, с редкими пропусками, я
Тот исходный код, который мне достался, был в статусе беты, но даже для беты тут очень много вполне очевидных багов, которые нужно исправить. А ещё — много впечатляющих вещей, которые автор, по всей видимости, не успел доделать. Часть из них я нашёл чисто случайно, как, например, модуль для отображения математических формул.
Нашёлся он совершенно случайно, когда я чинил баг с отображением символьных сущностей HTML — плёвая ошибка: дело было в том, что char у меня в компиляторе — тип со знаком, а в компиляторе автора, видимо, был без него.
В общем, обнаружив модуль для отображения математических функций, я занялся им. Основное поправил,
Вот как выглядят формулы:
<math>&integral;<sup>∞</sup><sub>0</sub> e<sup>-x</sup> = <box>σ<over>2</box></math>Это третья формула на моём скриншоте, можно посмотреть чему соответствуют отдельные элементы. Как можно убедиться, реализованное в «Виоле» почти в точности совпадает со стандартом HTML Math, разрабатываемым
Синтаксис довольно простой, но, в принципе, несложные формулы записать можно. Вся математика отображается красным, я думал это
Продолжаю возиться с «Виолой»
Продолжаю понемногу возиться с браузером «Виола», оживлением которого я недавно занялся. Благодаря нейросетям, на это ушли не годы, а всего несколько дней.
Чтобы не нарушать аутентичность, решил править только ошибки — их там нашлось и ещё найдётся немало — и доработать работу с сетью. Добавил менеджер соединений, поддержку HTTPS и транслитерацию кодировок: иначе пришлось бы заменять шрифты, а это в мои планы не входит. Кроме того, сделал забавную вещь — поддержку протокола
Если желаете тоже прикоснуться к истории, проект лежит на «Гитхабе», можно попробовать себе его собрать. Только сразу скажу — я собираю под «МакОС», под другие платформы без переделки собрать не получится.
Браузер ViolaWWW ожил
Пожалуй он заслуживает быть вписанным в историю развития интернета!
В последний раз браузер, думаю, компилировали
Но теперь ведь у нас есть нейросети! В итоге, я запустил редактор «Курсор», дав ему утром задание успешно запустить браузер, и вечером получил работающее приложение. Мы даже добавили в него поддержку русских букв!
Не скажу, что всё прошло гладко, иногда мне приходилось направлять нейросеть на верную дорогу, но такое было всего несколько раз. Вряд ли я сделал бы такое количество исправлений самостоятельно — потребовались бы
За один рабочий день нейросеть портировала этот брайзер под «МакОС» и перевела
99 бутылок: JOSS
Продолжают писать американскую считалочку «песня о пиве» на всяких странных и не очень языках программирования.
85. JOSS (JOHNNIAC Open Shop System) — язык, созданный Клиффордом Шоу в RAND Corporation в 1963 году для машины JOHNNIAC.
Именно в этом языке впервые появились условные выражения, диапазоны, функции и компактный синтаксис ветвлений, позволявший записывать целые решения в одну строку. Из «Джосса» выросли TELCOMP, STRINGCOMP, CAL, MUMPS, «Фокал» и «Бейсик» — целое поколение языков, унаследовавших его простоту и интерактивность.
Что в «Джоссе» необычного? Из тех языков, с которыми наиболее вероятно столкнуться в реальной жизни, он, разумеется, напоминает
Ну и мелочи: перевод строки обозначается подчёркиванием (_), умножение — интерпунктом (·), «звёздочка» при этом служит для экспоненты, «неравно» записывается отдельным символом (≠). Таких деталей в «Джоссе» много — перечислять можно долго.
* "99 Bottles of Beer," written in JOSS on Oct 16, 2025
* by Evgeny Stepanishchev (https://bolknote.ru)
Let b(n)=[n=1:" bottle"; n≠1:" bottles"].
1.1 Set n=99.
1.2 Do part 2 for i=n(-1)1.
1.3 Do part 3.
1.4 Stop.
2.1 Set j=i-1.
2.2 Type i, b(i), " of beer on the wall, ", i, b(i), " of beer.".
2.3 Type "Take one down and pass it around, no more bottles of beer on the wall." if j=0.
2.4 Type "Take one down and pass it around, ", j, b(j), " of beer on the wall." if j>0.
2.5 Type _.
3.1 Type "No more bottles of beer on the wall, no more bottles of beer.".
3.2 Type "Go to the store and buy some more, 99 bottles of beer on the wall.".
Go.Язык давно уже не используется, поэтому мне не удалось найти, где можно было бы выполнить на нём программу. Обычно в таких случаях я просто пишу код по описанию, не проверяя его, но здесь впервые пошёл другим путём — написал несколько тестов и «завайбкодил» интерпретатор по описанию, взятому из «Википедии».
Колеблюсь, выкладывать его или нет. С одной стороны, кому он нужен — интерпретатор давно почившего языка? С другой стороны, вдруг
Первая BBS в Казани ★
Около полугода назад я заинтересовался темой появления казанских BBS — это системы электронных доски объявлений, которые были распространены до эпохи интернета. В одном из источников, которые я использовал для исследования, всплыло указание на первое казанское объявление в газете «Вечерняя Казань», которое рекламировала первую казанскую BBS.
Доска объявлений называлась «ORPHAN’S BBS». Модерировали её Амир Шабашвили, с которым я
Поискав по казанским фидошникам фотографию, скан или вырезку из газеты с этим объявлением, я успеха не достиг — ни у кого искомого не обнаружилось. Поставив себе задачу в список
Время шло, я искал
Недавно я выделил время
Нашёл не без труда, объявление совсем крошечное. Латинского шрифта в газете в те времена ещё не было, поэтому BBS написали как ВВС:
Владельцы модемов! Информацию о первой в Казани
ФИДО-ВВС Вы можете получить по тел.76-85-59.
Думаю, на этом я для себя тему казанских BBS закрою — копать тут особо больше нечего. Разве что
99 бутылок: Входной язык ПЭВМ Искра-1256
Сегодня у меня рубрике «99 бутылок» язык настолько редкий, что у него даже отдельного названия нет. Иногда его называют «русскоязычным Бейсиком
В редкой профессиональной литераторе по теме его называют «входной язык…» или «символьный язык ПЭВМ
83. Входной язык ПЭВМ
Машина работала
С языком программирования пришлось разбираться по листингу сохранившихся программ, никаких следов его описания к сожалению, не обнаружилось. Впрочем, если прочитать все нашедшиеся программы, основное понять можно, сложного там ничего нет.
Строки нумеруются подряд, видимо в этом
Номер строки тут, кажется, используется только для удобства набора текста программы, переход же в языке делается не на номер строки, а на метку, причём их минимум два вида — метка для передачи управления, начинающаяся с буквы «М» (например — M01), и метка подпрограммы, которая начинается с «П» (П01).
Операторы записываются русскими буквами. Например ПЕРЕХ П01 — вызов подпрограммы, перед которой стоит метка П01. Оператор перехода часто используется с условным оператором, у которого нет
Переменные так же записываются русскими буквами, их буквенные префиксы значимы. Со всеми префиксами разобраться не удалось, но некоторые я понял: например, буквами «И» и «А» обозначаются переменные, содержащие числа. Разница, кажется, в том, что на вторые
Необычно выглядит присваивание — оно тут записывается как => и присваивает левое значение правому операнду.
Но самое странное — это функции.
Вот какая программа получилась у меня после попытки освоить этот язык. Не факт, что она написана без ошибок, но попробовать, как вы догадываетесь, негде:
1 ПЕЧАТЬ(HEX(03),,)
2 ЦИКЛ(И01,0,98)
3 И01-99=>A01
4 ПЕРЕХ П02
5 ПЕЧАТЬ(" ON THE WALL, ",,)
6 ПЕРЕХ П02
7 ПЕЧАТЬ("!",HEX(0A0D),"TAKE ONE DOWN, PASS IT AROUND,",)
8 А01-1=>А01
9 ПЕРЕХ П02
10 ПЕЧАТЬ(" ON THE WALL!",)
11 ЦИКЛ*
12 ПЕЧАТЬ("NO MORE BOTTLES OF BEER ON THE WALL,",)
13 ПЕЧАТЬ("NO MORE BOTTLES OF BEER!",)
14 ПЕЧАТЬ("GO TO THE STORE AND BUY SOME MORE,",)
15 ПЕЧАТЬ("99 ON THE WALL!",)
16 П01
17 "S"=>СА01
18 А01=1ПЕРЕХ М01
19 ""=>СА01
20 М01
21 П02
22 A01=0ПЕРЕХ М02
23 ПЕЧАТЬ(А01(2.0),,)
24 ПЕРЕХ М03
25 М02
26 ПЕЧАТЬ("NO",,)
27 М03
28 ПЕРЕХ П01
29 ПЕЧАТЬ(" BOTTLE",СА01," OF BEER",,)Разобраться в языке мне помогли следующие книги, найденные в интернете. В них нашлось
- «Комплекс вычислительный „Искра 1256“. Комплект контрольных
тест-программ. 1.320.118 Д15»; - «Процессор интерпретирующий
„Искра-1256“. Библиотека программ. 3.050.187 Д14»; - «Задачник по аналитической химии», Н. Ф. Клещев, Е. А. Алферов и другие, М., «Химия», 1993;
- Журнал «Вычислительная техника и её применение», №3, 1988.
Самым большим тёмным пятном остался оператор СЕЛЕКТ(). Без чёткого описания понять его функцию мне кажется невозможным. Всё, что я смог о нём узнать, заключено в цитате, найденной в одном из обсуждений: «там половину языка составлял оператор СЕЛЕКТ(n, параметры). В зависимости от этого n он чего только не делал».
Добавлено позднее: действительно, оператор СЕЛЕКТ() чего только не делал, например через него можно было производить смену режимов дисплея или указывать задержку.
Мой первый сайт
Показывал тут коллегам свою зачётную книжку и обратил внимание, что свою первую курсовую работу я сдал в мае 1998 года. Это был набор страничек факультета, на котором я учился.
Собственно эта программа и подтолкнула меня изучить вёрстку — работала она мучительно медленно, а генерируемый ей код повергал меня в ужас.
Спасибо
Всё по гайдлайнам
Помню научрук попросил меня распечатать получившийся код — тогда это было необходимое требование. В итоге, я израсходовал на это всю предоставленную им бумагу, плюс пришлось использовать все черновики, которые мы нашли на кафедре. И всё равно всё не поместилось. Мы решили, что никто не заметит, что части кода нет и оставили так.
Programm BBS
Поторопился я, когда сказал, что на моей малой родине, в Лениногорске не было BBS. Оказывается всё это было, правда я уже жил в Казани. В списке поинтов Фидо тех лет, который я нашёл в интернете, случайно заметил родной город, после чего разыскал контакт через общего знакомого.
Владимир Задвинский (адрес Фидо: 2:5049/33 aka /36.24), преподаватель информатики в Лениногорском нефтяном техникуме, в 1998 году организовал BBS (электронную доску объявлений) и ноду сети Фидонет в Лениногорске. Оборудование для BBS и Фидонета было установлено
«Крокодил» — это корпус, похожий на лежащий на боку чемодан и раскрывавшийся, как пасть крокодила.
В техникуме была телефонная линия «ТатАИСНефть», используемая для охраны помещения. Она не задумывалась
Откуда он взялся непонятно, понятно, что
BBS Владимира, которая называлась Programm BBS, работала на базе программного обеспечения найденного, вероятно, в интернете. Тогда доступ к нему уже начал повляться. Основной интерес для пользователей представляла фидошная часть, а сама BBS не пользовалась большой популярностью
Всё это исправно работало года два или три. Позже, Владимир уволился из техникума и перешел на работу в коммерческую структуру. Нода в техникуме продолжала работать, но уже под управлением его друга Николая Киселёва.
Интересно, что в коммерческой структуре, куда перешёл работать Владимир Задвинский, для работы использовалось то же программное обеспечение, при помощи которого организовывалась и работа Фидонета. Бесплатного межгорода не было, но зато был модемный пул на несколько входящих номеров, что было удобнее для фидошников Лениногорска — одновременно соединяться с нодой могли несколько пользователей. Поэтому было принятно решение перенести ноду на новое место.
Хотя от исходящих междугородних звонков пришлось отказаться, челнинского сисопа это не смутило, он регулярно инициировал модемную связь по межгороду со своей стороны, что позволяло обмениваться пакетами Фидо. BBS после переезда поднимать не стали — наглеть не стоило.
Всего в Лениногорске, в период расцвета Фидонета было около
Архив ноды был сохранен на домашнем хранилище и, если вдруг
The Golden Horde и Сrasher Warezzz BBS
Случайно открыл пифос Пандоры. Посидел над источниками на тему казанских электронных досок (BBS) и оказалось, что они были у очень многих казанских фидошников, среди которых у меня довольно много знакомых. Написал нескольким и потонул в потоке воспоминаний.
Заодно устроил перепись казанских BBS, всего пока получилось 65 штук.
Хотелось бы продолжить разговор на эту тему, но прежде всего, некоторым читателям стало интересно, что такое этот ваш модем, про который я писал в прошлый раз? Не все застали, это понятно.
Модем в те времена — устройство, которая позволяло двум компьютерам обмениваться между собой информацией поверх стационарной телефонной сети. Для этого оно преобразовывало цифровой сигнал в звук, а на другом конце делало обратное преобразование.
Устройство, естественно, занимало телефонную линию и телефоном в этот момент нельзя было пользоваться, что могло мешать домочадцам. Кроме этого, им мог мешать звук — при работе модем транслировать звуковой сигнал не только в линию, но и наружу — через динамик. Несмотря на то, что его можно было выключить, обычно так не делали, чтобы контролировать обрыв или пересоединения в случае сбоев.
Пока тема для меня свежа, я напишу ещё о нескольких казанских BBS.
Ещё одной электронной доской владел И. Б. (адрес в Фидо: 2:5049/113.15) в начале
Доска принимала пользователей с 21⁰⁰ до 3⁰⁰ ночи, именно в это время можно было дозвониться к нему домой и получить доступ к контенту, который он выкладывал — софт и книжки. Рекламой свой BBS он особо не занимался, разве что иногда упоминал о ней на сисопках, которые было по пятницам на Чёрном Озере — одном из известных мест общения фидошников того времени.
Другой мой знакомый, П. И. (2:5049/7) был владельцем The Golden Horde BBS в середине
Сначала был найден открытый X.25 шлюз в Казани, позже подключились к «Фидонету», где использовался пакетный режим связи с периодическими созвонами для обмена накопленными данными. В промежутках модем работал в автоответчике и запускал BBS, если не звонил фидошный мейлер. Компьютер, куда дозванивлись пользователи, стоял в здании ЦИВТ КГУ, в комнате 201.
На BBS выкладывались актуальные программы, а для рекламы часто добавлялись файлы с ASCII-артом в архивы. Пользователи, обмениваясь программами, распространяли с ними реквизиты BBS. Также существовал список BBS, который распространялся через Фидо. Фидо и BBS были тесно связаны: почти все BBS имели
Pulse BBS
Оказалось, что один из моих старых знакомых, Р. Х. (адрес в Фидо: 2:5049/46.21)
Я никогда не видел этих досок вживую — они почти исчезли, когда я только переехал в Казань. В моём родном городе их, похоже, не было вообще. Однако в те годы, когда мы обменивались софтом на дискетах, на некоторых из них можно было увидеть заставки BBS, выполненные в ASCII-графике.
Я немного расспросил его о тех временах — ведь это часть истории, и мне было интересно её зафиксировать. Вот что он рассказал.
В 1996 году, когда ему было 15 лет, он настроил свою собственную электронную доску с помощью популярной в те годы программы — «Tornado BBS» и назвал её «Pulse».
Программа «Tornado» позволяла создавать интерфейсы с использованием ASCII-графики, организовывать разделы для обмена файлами и даже делать чаты. Мой знакомый покупал CD-диски с софтом и утилитами, которые потом размещал на своей BBS.
Его доска работала преимущественно ночью — с 19⁰⁰ до 9⁰⁰, когда телефонная линия не была занята. Это время он оставлял для пользователей. Он активно рекламировал свою BBS на других досках, благодаря этому у него часто было много посетителей. Когда он спал, из его комнаты нередко раздавался характерный звук подключения по модему — это значит на BBS зашёл пользователь. Одновременное подключение было невозможно — для этого нужен был пул из нескольких телефонных номеров.
Посвящая всё своё свободное время сбору и раздаче софта, он иногда даже прогуливал школу. Его BBS проработала два или три года, но с развитием интернета в Казани электронные доски потеряли свою актуальность.
Прошлое: Дни Интернета в Казани ★
Вчера встретил в кафе нашего офисного центра своего друга А. Х., который общался
А. Х. попросил меня помочь, но сначала мне пришлось отказаться — меня ждали на встрече. Позже выяснилось, что встречу передвинули и у меня есть минут 15—20, чтобы спринтом пробежаться по памяти
События очень давние, поэтому вспомнить удалось не так много как хотелось бы, но зато в памяти всплыл один забавный случай, про который я нигде не писал. Журналисткам он не подошёл по тематике, поделюсь здесь.
В конце девяностых—начале двухтысячных в Казани проводились Дни Интернета. Событие, насколько я помню, должно было стать ежегодным, но не стало. Его провели не менее двух раз
В интернете об этом упоминаний не сохранилось,
Я был на двух «Днях». Один из них проводил на свои деньги известный тогда в казанском интернете деятель Daddy Hab, а второй, если мне не изменяет память, провайдер
Кажется оба раза это было в зале НКЦ «Казань», но что там конкретно было, я уже и не помню. Вероятно, просто тусовка с алкоголем. Но что я помню хорошо, что перед одним из этих событий в качестве приглашённого гостя был анонсирован Артемий Лебедев, в те годы — абсолютная суперзвезда в интернете.
На беду организаторов я тогда с ним активно переписывался, поэтому не постеснялся узнать правда ли его пригласили. Он сказал, что в первый раз об этом слышит и я, для смеха, выслал ему фотографию флайера с его именем. К сожалению, электронная почта того времени работала иногда из рук вон плохо и файл с картинкой никак до него не доходил. На третьей попытке я его сконвертировал, для надёжности, в несколько форматов и выложил на свой сайт ссылками, которые и отослал ему в письме.
Как пошутил А. Х., я делился файлами через облако до того как это стало модным.
Разумеется я не помнил этого в таких подробностях, но вчера написал Артемию, в надежде, что у него осталось это письмо и не обманулся — он мне его переслал, после чего эта история проступила в памяти более ясно.
Организаторы так и не признались, что не стали приглашать Лебедева и на самом событии интригу тянули до последнего. Я бродил в толпе и вносил смуту среди своих знакомых, но и у меня, думаю, теплилась надежда.
К сожалению, чуда не случилось. В итоге
Perl 1
Перл — один из языков, которые помогли мне
Я тут недавно сообразил, что программирую на ПХП с третьей версии, однажды попробовал в действии вторую версию
К счастью, его исходники довольно просто найти, причём
К первой версии идёт пятьдесят тестов, написанных на Перле тех времён. Я бегло их просмотрел и, на первый взгляд, язык как будто мало изменился, тем не менее
Для интереса попробовал запустить небольшую программульку для подсчёта количества счастливых билетов, которую я
for ($i = 0; $i <= 999999; $i++)
{
$a = ('0' x (6 - length($i))) . $i;
$c++ if (substr($a, 0, 1) + substr($a, 1, 1) + substr($a, 2, 1)) ==
(substr($a, 3, 1) + substr($a, 4, 1) + substr($a, 5, 1));
}
print "$c\n";Вот что пришлось исправить: изменить синтаксис цикла, ну и скобок побольше наставить.
Производительность, кстати, изменилась значительно — первая версия выполняет эту программу за 1,7 секунд, а современный Перл на том же оборудовании — за 0,8 секунды.
Американская народная игра «Убей вампира»
Сегодня знаменательный день! Сегодня закрылся мой детский гештальт, а именно — я нашёл игру, в которую играл на компьютере
Помнил я её очень смутно, всё, за что можно было зацепиться — фраза «американская народная игра убей вампира», записанная мной тридцать три года назад в одном из дневников жизни.
Поиск в интернете ничего не давал, но однажды, когда я заинтересовался языком «Фортран» и искал что бы на него портировать, нашлась игрушка «Hunt the Wumpus», в которой я увидел сюжет искомой игры про вампира.
Это мало что дало, разве что объяснило почему в игре моего детства было прилагательное «американская». Позже я пытался найти хоть
Тот компьютер принадлежал моему дяде и я хорошо помнил, что все игры и другие программы он набирал
Сегодня я предпринял очередную попытку и преуспел! Для начала я снова выкачал все программы
И вот на одном из сайтов я нашёл её — Американскую народную игру «Убей вампира»! Это точно она, та самая игра!
86-DOS version 0.11
Мне интересно иногда посмотреть на старые операционные системы и программы, которые я не застал или пропустил в своё время. Предтечу
Довольно долго разбирался как её запустить, опишу, чтобы не забыть, мало ли, вдруг
Первом делом скачиваем IMD-образ операционной системы и распаковаем его
из-под ДОСбокса набором утилит ImageDisk 1.19. Получившийся после распаковки образ переименовываем в 86dos.imd.Качаем первый попавшийся эмулятор Altairz80 под требуемую операционную систему, компилируем, в папку эмулятора кладём файлы scp86mon.txt, scp86mon.rom и образ операционной системы.
Вводим команду ./altairz80 scp86mon.txt, потом уже там несколько раз «Ввод», латинскую B, снова «Ввод» и, по идее, всё должно запуститься.
Смотреть там, конечно, особо не на что, хотя есть редактор, ассемблер и шахматы, а так же работают
Теперь могу говорить, что я своими собственными глазами видел самого раннего предка
«Трубо Паскакаль»
В конце
Это был хоть и случайный, но удачный выбор, — позже появилась совершенно гениальная среда разработки «Делфи», где я заработал немало масла на свой хлеб. Кроме того, в Университете всё программирование преподавалось на Паскале, очень выручило, что я знал тогда этот язык.
До «Делфи» разработка происходила в среде «Турбо Паскаль», глядя в синие окошки которой, я провёл
Поэтому, наверное, понятно, почему когда я в комментариях к одной из статей на «Хабре» увидел упоминание пародийной программы «Трубо Паскакаль», не смог пройти мимо.
Программа поверхностно имитирует «Турбо Паскаль», где в меню спрятаны разные приколюхи. Если вы
Док ик ак ук (ftp-2-mail)
Примерно
Это специальный протокол для хостинга файлов, сейчас он всё ещё используется, но распространён мало. Надо упомянуть, что FTP — текстовый протокол, команды надо было писать руками в командную строку, благо их довольно просто было выучить.
Это были времена, когда интернет только начинал появляться и многие о нём ещё даже не слышали, не говоря о том, чтобы пользоваться. Поэтому даже такое окошко в него было очень интересным. Сама идея того, что программы можно было получать
Выглядело всё следующим образом. Если мы знали адрес нужного сервера FTP, то список команд к нему надо было выслать на один из специальных почтовых адресов. Некоторые я помню до сих пор:
ftpmail@ftp.uni-stuttdart.de
ftpmail@doc.ic.ac.uk
ftpmail@suusite.unc.eduПисьмо могло выглядеть
connect ftp.netscape.com anonymous user@example.org
cd pub/windows/netscape
binary
get netscape30.zip
quitЕсли всё было правильно, обратно приходили пронумерованные письма с кусками бинарного файла в текстовом формате UUC. Их надо надо было собрать в правильном порядке в один файл и декодировать программой uudecode.
Откуда я брал имена FTP-серверов, честно говоря не помню, но помню
Я его получил нечестным способом, — узнав пароль своего друга, аспиранта моей кафедры, Андрея Г. Аспиранты не студенты, им адреса почты положены были, и выдавались в виде Имя.Фамилия@ksu.ru.
Андрей
Андрей поменял пароль и рассказал об этом мне. Кажется я сам ему признался, что это был я, на что он посмеявшись, дал мне новый пароль, но попросил быть впредь осторожнее и больше не заказывать такие большие файлы.
Видео на компьютере в 80-е
На «Хабре» вышел перевод статьи «Nude Pictures on early Retro PCs — Was it Possible?», автор оригинала попытался разобраться как смотрели на голых девушек по времена ДОСа и даже раньше.
В каком же формате смотрели айтишники развлекательные картинки до изобретения форматов графики, которыми мы пользуемся сейчас?
Я те времена не застал, но ещё помню переходный период — когда графика сейчас уже античных форматов заменялась
GIF сейчас хоть и используется, но статичные картинки в нём уже никто не смотрит.
Но на дискетах ходили и пикантные видеофайлы в экзотическом сейчас форматах GL. Видеоконтент был тогда в диковинку, так что нас поражала и форма, и содержание. В интернете и сейчас можно найти файлы этом формате. Файлы нередко занимали несколько сотен килобайт и на дискету умещалось от одного до трёх таких файлов.
Посмотреть современным софтом их не получится, но я сконвертировал для вас кусочек файла MTV2.GL, чтобы вы имели представление о том как это было.
GL расшифровывается как GRASP Library, где GRASP, в свою очередь, тоже аббревиатура — GRaphic Animation System for Professionals. Концептуально формат был придуман в 1984 году программистом Дугом Вулфграмом, а реализован годом или двумя позже.
Хотя я сталкивался с ним в качестве видеоформата, на самом деле это скриптовый язык вывода графики, как можно убедиться в описании формата и задумывался, по всей видимости для интерактивных презентаций. Появление этого формата многие называют рождением мультимедийной индустрии.
Первые реализации были
В самом конце
Мой рассказ был бы неполным без упоминания формата DL, хотя появился он позже
В интернете встречаются файлы и в этом формате тоже, правда найти ролик, безопасный для публикации, оказалось довольно сложно.
В отличие от GL, DL — честный видеоформат, который создавался именно для этой цели. Всё что он умеет — проигрывать зацикленное видео со звуком. DL — расшифровывается как Davide Luca, по имени и фамилии одного из создателей формата (он итальянец). Первые версии редактора и просмотрщика были бесплатными, но с версии 3.0 продукт стал
Последняя версия, которую можно встретить в интернете — 3.1, датируется
Оба формата можно сконвертировать для просмотра утилитой deark (я использовал версию для «Мака»), она распаковывает кадры в файлы PNG и VOC (в них звук), естественно, убивая тайминги. Её я использовал для конвертации DL, а для файла GL использовался альтернативный способ — встроенный в DOSBOX видеозахват, там я запускал оригинальный плеер GLPro.
«ВАМПИР»
Я
Одному из моих гештальтов в этом определении почти 30 лет — в начале
Игру удалось починить и возможно поэтому она мне так запомнилась, что через много лет мне захотелось её найти и сыграть. Тем более, что эмуляторов
Шли годы, я без особой надежды регулярно гуглил эту игрушку, но она никак не находилась.
Но тут недавно, когда я подбирал чего бы мне такого портировать на «Фортран», в списке старых игр на «Бейсике» увидел игру «Hunt the Wumpus» 1972 года и по листингу понял, что передо мной — исходный вариант игры «Вампир», следы которой я до сих пор никак не мог разыскать!
Хоть
Все программы для этого компьютера в те времена набирались вручную из печатных источников — из журналов, возможно
Архив программ
Честно сказать, я считаю проект «Архив Интернета» более важным проектом, чем «Википедия», жаль что ему достаётся незаслуженно мало внимания. За 20 лет существования моего сайта, в старых заметках поумирало 100% ссылок и только «Архив Интернета» позволяет понять что
В нём же я нередко ищу старые книги, подшивки газет и прочие бумажные материалы — некоторые издания можно найти в интернете только там. Но кроме этого, как оказалось, там бывают старые компьютерные программы, причём запускаемые прямо в окне браузера!
Я тут заинтересовался препроцессором «Ратфор», который был разработан
Пока гуглил информацию по «Ратфору» (литературы не так уж и много), в «Архиве Интернета» нашёл реализацию, запускаемую в окне браузера под портированным ДОСБоксом. Очень здорово придумано — можно сразу бегло посмотреть требуемое.
JUnix ★
Вкратце: выложил на гитхаб свой старый проект «эмулятора» Линукса, который я писал
Мне тогда этот язык невероятно нравился, я был в бешеном восторге и такое вот несерьёзное к нему отношение меня очень задевало.
Эта фантазия меня так увлекла, что примерно год я посвящал ей все вечера, в ущерб учёбе в Университете и личной жизни. Позже я ещё долго возвращался к этому проекту, правда моя активность всё угасала, пока
Конечно настоящий эмулятор у меня не получился, да я и не пытался его создать, получилась имитация командной строки «Линукса» на том уровне знаний, который у меня был в те годы.
Реализованы
Поскольку шеллом
В своё время появление этого «эмулятора» понаделало шуму — о нём написали все основные российские сайты про программирование, а я каждый день получал письма от тех, кому понравилась моя игрушка.
Постепенно домен, на котором это всё располагалось, потерялся, а потом со старым винтом умер и бакап сайта. Осталась только копия
Так бы он там и лежал, но вчера в разговоре Леонидом Кагановым я случайно помянул почивший проект и Леонид, который его моментально вспомнил, предложил забрать сохранившееся
Честно говоря, я и сам давно об этом думал —
И вот вчера я наконец выкачал слепок первой попавшейся качалкой, поправил очевидные баги, чтобы всё заработало в современных браузерах — они
Кстати, если вам нравится в таком копаться, можете посмотреть сколько костылей в то время приходилось городить и как беден был раньше этот ДжаваСкрипт.
Я потестировал
Репозиторий проекта: https://github.com/bolknote/junix.
Сайт проекта, где можно посмотреть всё в действии: https://bolknote.github.io/junix.