Как стать автором
Обновить

Софт в прямом эфире — как энтузиасты скачивали компьютерные программы с помощью радио

Время на прочтение2 мин
Количество просмотров17K
Всего голосов 36: ↑36 и ↓0+36
Комментарии51

Комментарии 51

Какова скорость передачи данных у этой технологии? Сколько килобайт в минуту можно было вместить?
Очевидно — примерно как у модемов того времени. Поскольку частотный и амплитудный интервал был тем же самым — ориентированным на то, что слышит типичное человеческое ухо.

Тут мы имеем интересный эффект: первые цифровые компьютерные технологии использовали то, что было разработано для аналогового использования: телевизор в роли монитора, магнитофон в роли хранилища данных (в т.ч. АрВид), голосовую телефонию в роли сети. А потом компьютерная отрасль уже разработала собственные устройства.
В 1983 году редкий владелец дешевого 8 битного компьютера мог позволить себе модем на 1200 бод. Т.е. реально «скачивать» варез через эфир было выгодно с точки зрения финансовых вложений.
Компьютерная отрасль к тому времени имела нормальные накопители и мониторы, только вот стоимость одного полнокомплектного рабочего места примерно равнялась стоимости легкового автомобиля.
BASICODE представлял собой сигнал 1200BPS RS232 c FSK-модуляцией.

Для Спектрума скорость записи на магнитофонную ленту была 1500 б/с, по радио можно было передавать с такой же скоростью.
Мы два спектрума по телефонной линии связывали — один на запись другой на воспроизведение. Только схемку согласования с линией телефонной надо было сделать: там сигналы в разы больше по амплитуде чем на линейном входе/выходе магнитофона + просто огромные скачки при звонке (если это не убирать то можно было и спалить входные/выходные цепи компа).
По-моему, это и так понятно — данные должны идти в том же виде, в котором их может употребить принимающая сторона. А принимающая сторона, это обычная бытовая магнитола. Ну а почему сжатие не было реализовано в самом компьютере, тоже ничего хитрого. С одной стороны, чтобы всунуть компрессор/декомпрессор данных в 16К ПЗУ компьютера, оттуда надо выкинуть что-то нужное, или пожертвовать какими-то системными подпрограммами, или пожертвовать функциональностью встроенного Бейсика. С другой стороны, емкость 60-минутной кассеты составляла килобайт 600, что для компьютера с ОЗУ 16...48К было более чем достаточно для хранения кучи софта без всякого сжатия.
Тут дело, скорее, в том, что декомпрессию сколько-нибудь эффективного алгоритма сжатия процессор не потянул бы в реальном времени, а для промежуточного сохранения сжатых данных не было места в памяти.
Проц тянул сжатие в реальном времени.
На спектруме были копировщики сжимающие загруженное на лету, и в 48кб памяти порой удавалось загрузить под 100кб данных, и затем сохранить их на ленту в оригинальном формате
Да для тех алгоритмов сжатия, которые использовались в начале 1980-х, Z80 как раз хватало с лихвой, это был вполне себе производительный микропроцессор в своё время. Тем более что речь про «выжать максимум» не стоит, даже простейшее уплотнение RLL бесплатно даст +20% свободного места.
Была еще фишка со скоростной загрузкой, когда сначала программа подтягивала загрузчик, и он уже загружал дальше с увеличенной скоростью, играясь с форматом хранимых данных. Вроде бы для кассет такая схема обычно применялась. Например вот www.atarimagazines.com/compute/issue57/turbotape.html
Угу но программы с ускоренной загрузкой были более капризны и требовательны к сигналу. Так что проще всего было не сжимать.

Вообще да, хз почему так не делали. Но если начать рыться в вики, то примерно в 85 годах архиваторы только-только начинали набирать популярность.
+Чисто было лень, ибо легче просто записать по воздуху за 2минуты и начать играть, чем дрочить пальчики придумывая хитрые алгоритмы чтоб уместить в памяти и архиватор и саму программу, зато за 1.5 минуты а потом ждать установки.
Слишком мало памяти у них было тогда.

Внутри программ (игр в основном), графика и музыка обычно сжимались компрессорами. Сам код, написанный на ассемблере занимал считанные килобайты и не очень хорошо жмется. Поэтому жать еще сверху по пожатому практически не имеет смысла. Когда, в среднем, на все про все у тебя есть всего 40кб (если говорить про Спектрум 48), приходится считать буквально каждый байт.
Из-за проблемы, известной как pkunzip.zip в самом жёстком его проявлении, когда распаковать нечем не потому, что именно у получателя архиватора нет, а потому, что про них еще почти никто не знает, а первая версия gzip выйдет только десятком лет позже
Ну встроить распаковщик в тушку вместе с запакованными данными — никто не мешал. Тем более (как уже упомянуто выше) распаковщик такой обычно был на ассемблере писан и сам по себе занимал довольно небольшой объем.
Напомню, статья о первой половине 80-х, Arc, compress и Zoo появились только в середине 80-х, LHA и ZIP — в конце 80-х, gzip только в 90-х. И тогда только единицы знали о существовании такой возможности как сжатие.
Подробнее здесь
Никто и не спорит.
Однако данные сжимали и до появления оформленных в утилиты программ.
Иногда это были довольно примитивные методики, иногда довольно продвинутые.
А без отдельных утилит: другого варианта как вшить распаковщик в программу — попросту и не было.

В программах для ZXSpecrum (у нас это уже начало 90-х) встроенные распаковщики встречались регулярно. Причем часто место которое распаковщик занимал в ОЗУ переиспользовалось. Были даже хитрые приемы как перезаписать распаковщик прямо теми данными что он и распаковывает (там от него оставался только 1 байт с командой RET).
Эффективное сжатие очень затратно для маленьких 8битных машин, как по памяти, так и нагрузке на процессор. Поскольку проц почти всегда выполнял декодирование этого потока программно, то на что-то более серьёзное чем RLE его производительности не хватало. Ну и канал был достаточно зашумленый, а протоколы коррекции ошибок нижнего уровня MNP появились к концу 80-х. Так же гдето в этот период был принят стандарт сжатия налету V42/V42bis которые использовали алгоритмы LZ сжатия.
Ну и соответственно никаких протоколов передачи файлов кроме ASCII и Xmodem тогда не существовало.

Поначалу, в примитивных играх не сжимали. Но очень скоро софт освоил эту возможность.
Всё-таки 3,5MHz и 1500 бод. Время выполнения простейшей операции — 4 такта. Процессор буквально простаивал во время загрузки с ленты, а уж для сжатия последовательности одинаковых байтов его хватало с лихвой. Люди и вращающеся счётчики ленты рисовали, и заставку на экране выводили по произвольному контуру. Даже дым, бегущий из трубы колечками, во время загрузки с ленты можно было пускать :)

Про Югославскую программу и редактора очень большая и интересная история на самом деле. Они разработали компы, которые мог собрать любой (ну или почти), и передавали для них программы. Это вот действительно опен сурс был.

Мы об этом недавно писали, кстати. Не реклама, просто мало ли, вдруг кого заинтересует :))
Идея была любопытная, и даже рабочая (хотя, если произошел сбой, тут кассету или бобину не перемотаешь и не повторишь), но абсолютно не жизненная, по моему: монетизировать подобное распространение игр практически невозможно. А шифрование/дешифровка радиопередачи в те времена стоили бы на порядок (или порядки) дороже «Спектрума». «Золотая идея» для «благородного пиратства», но, поскольку услышал об этом в первый раз спустя почти 30 лет, «благородных пиратов» не бывает.
Это было не про деньги, как таковые. Это было про дополнительный сервис в элитном community.
Как сейчас всякие фишки для яхтсменов.
Эту идею можно было монетизировать точно также, как сейчас монетизируются FM радиостанции.

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

НЛО прилетело и опубликовало эту надпись здесь
Например, вроде вот в этом аркадном автомате en.wikipedia.org/wiki/Galaga
На краю памяти болтается, что что-то похожее делали и с 6502
Из более известного — вспоминается коммодоровский дисковод 1541, где в качестве контроллера стоял практически такой же чип, как и в головном компьютере.
ЕМНП то в каком-то из отечественных клонов Спектрума Z80 использовался для вывода графики.
Ну и конечно нельзя не вспомнить звуковую карту для отечественных спектрумов GeneralSound в которой крутился Z80

Напомнило украинский вариант такой передачи данных из 90-х: электронная газета "Все — всім". Там использовался видеоряд на первом канале телевидения.

У нас в городе какое-то время (несколько месяцев, емнип) раз в неделю по проводному радио передавали софт для спектрумов.

Интересно, сколько можно было бы записать на виниловую пластинку?
В районе сотни килобайт в лучшем случае на 30-минутную пластинку. На Floppy-ROM писали несколько килобайт. На 90-минутную аудиокассету – до 660 килобайт.
Учитывая, что частотный диапазон у пластинок повыше, чем у кассет, то как минимум, объем записываемых данных будет пропорционален длительности звучания. Емкость 60-минутной кассеты в спектрумовом формате примерно 600К (там длина переменная, в зависимости от данных), в формате IBM PC — 720К. Соответственно, на 30 минутную пластинку влезет или 300К, или 360К.
в стандарте MSX на кассету входило 720кб, соответственно на винил с 33.3 об/мин можно было записать до 20-24минуты т.е. гдето 1/3 объема кассеты т.е. 200-240кб
На самодельную одностороннюю пластинку типа «музыки на костях» получалось килобайт до 40-60.
Вышеуказанный флоппи-ром канзасского стандарта вначале был очень низкоскоростным.
Оказывается и тогда файлы скачивали то а щас копирасты бучу катят на торренты хотя торренты фактически ничем не отличаются от подобной технологии только данные идут через кабель интернет а не по радиоволнам.

Помню как годах в 90-х на каком-то телеканале наткнулся на то, что передавали звуком программы для Синклера. Попробовал, удалось даже запустить некоторые из них. Какая-то игра. Там, кажется, была простенькая защита в загрузчике и задумано было это дело продавать. Так что заодно получил один из первых опытов её снятия.

В одном из выпусков авторы даже опубликовали схему сборки DIY-компьютера, который быстро стал «народным». Вместо дорого (по тем временам) графического чипа, для генерации графики ЭВМ использовала дешевый микропроцессор Zilog Z80A.

Как-то не совсем точно. Здесь Z80 использовался и для основных вычислений по программе пользователя, и для видео. Похоже на то как было в компьтере ZX80.
Компьютер Galaksija описан в Википедии — Галаксия (компьютер)
Кстати в детстве у меня была такая идея. Почему бы не сделать радио с передачей игр через эфир. А оказывается у них это было.
Авторы были в шаге от создания цифрового радио. Можно было в место игр предавать другой цифровой контент: новости, погоду, рассказы.
Это называлось Телетекст и к 80м годам уже давно было в коммерции :)
Можно было в место игр предавать другой цифровой контент: новости, погоду, рассказы.

Для этого им нужен был какой-то иной компьютер. На Спекки напрочь отсутствовал соответствующий софт, да и в среде спектрумистов не водилась привычка обмениваться текстами для чтения на компьютерах, как это было, например, на больших ЭВМ, или позже на РС. Кроме того, загрузка с радио обычно делалась вообще не на компьютер. Это сначала просто писали магнитолой на кассеты, а потом уже воспроизводили для загрузки на Спектрум.
SSTV и его предки жили и до 80х годов. Использовалось для передачи через КВ/Спутник всяких газет и прочего.

Ничего себе! Не знал что такое было. Спасибо за стастью
Правда не понятно: а как же копирайт и все дела? Неужели авторы игр были не против?
И еще — а если кто-то включал радио посередине передачи игры?

Как бы там небыли, это один из очень интересных методов передачи данных. Каждый раз, удивляюсь до чего может довести человека фраза «а если...».
Зарегистрируйтесь на Хабре, чтобы оставить комментарий