Формат JPEG представили в 1993 году, а GIF — в 1987-м. Но тогда непонятно, как смотрели фотографии девушек на этой прекрасной машине образца 1983 года?
Такой вопрос пришёл мне от читателя обзора портативного компьютера Compaq Portable. Ответ оказался сложнее, чем мы думали. Давайте разберёмся.
Железо
Сначала поговорим об аппаратном обеспечении — была ли вообще возможность обрабатывать фотоизображения на той технике? Очевидно, что мейнфреймы и суперкомпьютеры 70-х годов могли, но они были недоступны для широкой публики. Первый в мире персональный компьютер Altair 8800 вышел в 1975 году. Счастливый обладатель этого чуда техники вводил программу с помощью переключателей, наблюдая за состоянием регистров на светодиодах:
Altair 8800 © Википедия
Для этой машины даже написали несколько игр. Названия вроде «Убить бит» (Kill The Bit) дают представление об игровом процессе… Очевидно, что отобразить фотографию на таком устройстве не было никакой возможности.
В конце 70-х годов появились более продвинутые компьютеры на CP/M. Это полноценная ОС с файловой системой, дисковыми накопителями, компиляторами, программами и играми. Но увы — чисто текстовый UI. Теоретически, с помощью ASCII-графики можно отобразить нечто подобное:
Изображение «Ленна» в формате ASCII © en.wikipedia.org/wiki/Lenna
Но это скорее забавный трюк, чем настоящее фото. Хотя надо признать, что на некоторых компьютерах CP/M имелись зачатки графики. Например, на Visual 1050. Однако универсальных графических стандартов ещё не придумали.
Компьютер Visual 1050 на CP/M © www.vintagecomputing.com
Одним из самых ранних форматов графики для CP/M стал RLE, который кодировал чёрно-белые изображения с разрешением 256×192. На практике картинка может выглядеть примерно так:
Как видим, формат далёк от совершенства, но гораздо лучше чистого ASCII. Размер монохромного изображения RLE около 6 КБ, поэтому на дискету CP/M объёмом 90 КБ вмещалось до 14 фотографий такого качества.
С годами компьютерное железо становилось всё лучше. В 1981 году вышел формат CGA (Color Graphics Adapter), а компьютеры MS-DOS могли отображать графику с разрешением до 320x240 в четырёх цветах. Изображение такого качества может выглядеть следующим образом:
Размер изображения в таком формате составляет около 40 КБ, а на дискету 360 КБ вмещалось около восьми картинок. Через несколько лет на рынке появились адаптеры VGA, которые смогли выводить на экран 256-цветные картинки. Вот они уже были действительно реалистичными:
Размер этого изображения 77 КБ, а на 1,44-дюймовую дискету 720 КБ можно было сохранить пять-шесть изображений (с операционной системой — прим. пер.). Как видим, размеры дискет растут, но количество картинок на них практически не меняется.
В конце 80-х адаптеры SVGA (Super Video Graphics Array) начали отображать фотореалистичные изображения до 1280×1024 с 16 миллионами цветов, что фактически аналогично современному.
В 80-х и 90-х продавались и другие компьютеры — Apple, Commodore, ZX Spectrum… Все могли отображать различные типы графики. Перечислять полный список слишком скучно, надеюсь, читатели уже получили основное представление о графических адаптерах тех времён. Так что давайте поговорим о программном обеспечении.
Источники изображений
С аппаратными возможностями ПК в начале 80-х годов всё более или менее ясно, но что насчёт самих изображений? Сначала давайте найдем ответ на более простой вопрос — были вообще в то время доступны фотографии обнажённой натуры в целом? Ответ — «да». На самом деле, знаменитое изображение Ленны (см. выше), которое сегодня стало своего рода стандартом при тестировании алгоритмов обработки изображений, отсканировано из журнала Playboy в 1973 году в Университете Южной Калифорнии с помощью сканера и компьютера Hewlett Packard 2100.
Компьютер HP 2100 в 70-е годы © en.wikipedia.org/wiki/HP_2100
Шведская модель Ленна Шьёблом (Lenna Sjööblom), безусловно, привлекательная женщина (полноразмерное изображение см. здесь). Но сейчас никто бы не вспомнил о старой фотографии из «Плейбоя» 1973 года. Только благодаря научной публикации фотография «Ленны» стала одним из самых используемых изображений в компьютерной истории. Конечно, оно было отсканировано не для обмена нюдсами, а в качестве иллюстрации для научного доклада.
(Сканирование девушек «Плейбоя» для научных статей в области обработки изображений у учёных встречается с 1960 года — прим. пер.)
Как бы то ни было, технология сканирования изображений была доступна уже в 70-х годах, а в 80-х дискеты стали дешевым и надежным хранилищем для сохранения и копирования файлов. Например, так выглядела дискета 5-1/4" на 360 КБ рядом с картой MicroSD для сравнения:
Таким образом, в 80-е годы пользователи компьютеров уже познакомились с цифровыми изображениями и могли ими легко обмениваться. Конечно, «картинки для взрослых» были своего рода редкостью, а сканеры вообще оставались доступны широкой публике.
Форматы изображений
Что появилось первым — курица или яйцо? Изображение или формат? Ну, первым было изображение. В простейшем случае «формат» не нужен, ведь монохромное изображение — это просто последовательность бит:
Если мы знаем ширину и высоту изображения, а компьютер умеет отображать пиксели, то любой разработчик может сделать программу, которая выводит картинку «как есть» из двоичного файла.
Кстати, на тему кастомных форматов интересно упомянуть игру Strip Poker, которая вышла в 1985 году:
На первом экране выбор оппонента: Сюзи или Мелисса, второй экран — сама игра. Если открыть папку с файлами игры, то легко заметить, что файлы данных обеих девушек сохранены «как есть», никакого сжатия, все файлы одинакового размера:
1:03 AM 71 Melissa.txt 12:18 AM 5768 Melissa1.pic 12:18 AM 5768 Melissa2.pic 12:19 AM 5768 Melissa3.pic 12:20 AM 5768 Melissa4.pic 12:21 AM 5768 Melissa5.pic 5:40 AM 35 Opn.txt 12:04 AM 5768 Opps.pic 12:59 PM 50304 Poker.exe 1:06 AM 1288 Screen.pic 12:03 AM 5768 Stitle.pic 5:09 AM 69 Suzi.txt 12:02 AM 5768 Suzi1.pic 1:33 AM 5768 Suzi2.pic 12:00 AM 5768 Suzi3.pic 12:01 AM 5768 Suzi4.pic 12:00 AM 5768 Suzi5.pic
Разработчики игры сделали всё возможное, чтобы минимизировать размер файлов. Каждый всего 5768 байт, что даёт нам разрешение всего лишь 320×18 в оттенках серого. И действительно, если открыть pic-файл с помощью Python, то многие детали отсутствуют:
Разработчики определённо использовали какие-то трюки, чтобы вывести изображение 320×18 на экране 320×240.
Возможно, игра использовала отдельное фоновое изображение или программно рисовала некоторые детали (например, вертикальные линии).
Зачем они потратили столько усилий? Ответ прост — у большинства компьютеров в то время вообще не было жёстких дисков. Поэтому было крайне важно, чтобы игра поместилась на дискету. Как мы уже знаем, размер первых дискет составлял всего 360 КБ — и это не только для игры, но и для загрузочных файлов MS-DOS. И разработчики сумели проявить чудеса оптимизации, так что размер всех файлов игры составляет всего 140 КБ.
Конечно, изображения «как есть» без сжатия занимают много места, поэтому все постоянно пытались найти лучшие способы. Одним из первых методов кодирования изображений стал RLE (Run-Length Encoding). В этом формате каждый блок данных хранится в парах «число, значение», что позволяет сохранять изображения более эффективно. В качестве простого примера — последовательность черно-белых пикселей
ЧБББЧББББ
можно сохранить как 1Ч3Б1Ч4Б
. Так можно сэкономить немного места (или наоборот). Такой метод подходит скорее для графиков или таблиц, но для фотореалистичных изображений сжатый RLE может оказаться даже больше оригинала.Одним из первых широко используемых форматов стал PCX (PiCture eXchange), который вышел в 1985 году. Этот формат также использует кодировку RLE, а в заголовке хранит много дополнительной информации:
// Standard PCX header (C/C++)
struct PCXHeader {
char ID; // ID, always 0x0A
char Version; // The version number
char Encoding; // Use of encoding (0, 1)
char BitPerPixel; // 1, 2, 4 or 8
short X1; // The minimum x-coordinate of the image position
short Y1; // The minimum y coordinate of the image position
short X2; // The maximum x coordinate of the image position
short Y2; // The maximum y coordinate of the image position
short HRes; // The horizontal image resolution in DPI
short VRes; // The vertical image resolution in DPI
char ClrMap[16*3]; // The EGA palette for 16-color images
char Reserved1;
char NumPlanes; // Number of color planes: 1, 3, or 4
short BPL; // The number of bytes of one color plane
short Pal_t;
char Filler[58];
} Header;
На самом деле PCX не очень хорош для сохранения фотографий, например, та же «Ленна» в в 16-цветном формате 320×240 занимает 35 КБ, а в 256-цветном — целых 100 КБ!
В 1987 году появился ещё формат GIF (Graphics Interchange Format) — гораздо более продвинутый, чем PCX. Для сжатия он использует более эффективный алгоритм Lempel-Ziv-Welch (LZW) — одно и то же изображение Ленны 320×240 в формате GIF занимает всего 37 КБ по сравнению со 100 КБ в PCX. В 1989 году вышла расширенная версия GIF, способная отображать ещё и анимацию.
Удивительно, но анимированные GIF используются и сегодня, даже в этой статье. Это по-прежнему самый простой и кроссплатформенный способ встраивания анимированного контента на страницу.
Наконец, в 1992 году учёные представили формат JPEG (аббревиатура Объединенной группой экспертов по фотографии, то есть Joint Photographic Experts Group). Этот формат использовал сжатие с потерями и специально разработан для сохранения фотографий. Для кодирования данных тут используется алгоритм DCT. Вообще-то, сам метод дискретного косинусного преобразования предложен в 1972 году, но, только через двадцать лет появился реальный общественный спрос на эту технологию.
Кстати, в 90-е годы продажа эротических изображений стала бизнесом. С технической точки зрения забавно смотрятся эти рекламные объявления из журнала PC Magazine за 1994 год:
Источник изображения: © PC Mag, июнь 1994
Сегодня коллекция «более 2500 VGA картинок» или «Super VGA 1024x768x256 изображений» вызывает только улыбку, но в то время это был своего рода хайтек.
Заключение
Вернёмся к первоначальному вопросу — можно ли смотреть нюдсы на компьютере XT в начале 80-х? Технически, «да». Эти машины умели отображать графику и у них были дисководы для дискет для обмена файлами. Вот как этот процесс выглядит на настоящем компьютере Compaq Portable, выпущенном в 1983 году:
Как видим, компьютер не самый быстрый, время загрузки изображения составляет около 40 секунд, но он ещё работает.
Но в реальной жизни этот компьютер был выпущен в 1983 году. А форматы изображений PCX, GIF или JPEG тогда ещё не изобрели. Скорее всего, существовали какие-то кастомные форматы — кодировка простая, и почти любой студент или программист мог написать простой вьюер монохромных изображений. Более того, программы просмотра изображений были доступны ещё в операционной системе CP/M, которая использовалась до MS-DOS. Поэтому я почти уверен, что пользователи делились между собой некоторыми изображениями эротического характера. Например, на компьютерах в университетских кампусах. Правда, я не смог найти никаких доказательств этого факта. Я нашёл несколько программ для просмотра изображений под MS-DOS, но все они сделаны позже, в 90-е:
Так что настоящий ответ остаётся открытым. Если кто-то из вас пользовался программами для сканирования, просмотра или редактирования изображений в 80-х годах или если у кого-то есть примеры таких изображений, пожалуйста, напишите в комментариях.
Спасибо за чтение. Кого интересуют подробности, предлагаю обзор того самого компьютера Compaq Plus Portable. Больше интересного про MS-DOS — в другой статье.
Комментарии (78)
MinimumLaw
14.12.2022 15:23+18Остается только по стариковски поплакаться, мол, вот и выросло поколение...
Yuribtr
14.12.2022 16:29+4Вот кстати подумалось что в области обучения моделей нейросетей мы сейчас как раз на уровне тех самых восьмидесятых. Размеры изображений которые можно непосредственно подавать на вход упирается в производительность железа и примерно соответствует размерам которые мог отображать пользовательский комп в 80-х годах.
flass
14.12.2022 17:33+3Очень удивлён этим обстоятельством. Получается что пытаются научить распознаванию дороги для управления автомобилем, подавая нейросетям на вход кадры разрешением 320х240?
mikelavr
14.12.2022 16:56+53У меня история чуть более поздняя, из 1990 года. "Контент" для просмотра уже был (с BBS и частным обменом), цветные VGA мониторы 640*480 тоже были. А вот сканеров не было.
И тут ко мне в руки на пару недель попадает плата видеоввода в компьютер. 640*480, 8-bit, черно-белая, под слот ISA-16. Без софта, но с бумажным описанием регистров ввода-вывода!
Видеокамера у меня была, подключил её к видеовводу. Написал программу, которая с этой платы читала статический кадр. Обнаружил, что уровни черного и белого не вполне корректные, и требуется внесение гамма-коррекции. Фотошопа под Windows еще не было. Написал "редактор уровней" с интерактивным подбором значений. На картинках снизу как раз кусочек интерфейса этого редактора с градиентами черного и белого.
Результаты ниже. Первое фото - это "автопортрет" самой платы в компьютере.
vconst
14.12.2022 16:59+24Я нашёл несколько программ для просмотра изображений под MS-DOS, но все они сделаны позже, в 90-е.
Я пользовался, только написал ее сам ))
Так что настоящий ответ остаётся открытым. Если кто-то из вас пользовался программами для сканирования, просмотра или редактирования изображений в 80-х годах или если у кого-то есть примеры таких изображений, пожалуйста, напишите в комментариях.
В где-то на стыке 80х и 90х мне в руки попалась игра Strip Poker III, в которую долго и мучительно не мог выиграть, ибо в правилах покера вообше ничего не понимал и а мозги работали совсем в другую сторону )))
Потом мне попалась документация по PCXLIB для Turbo Pascal, я посмотрел исходники игры в файловом редакторе и понял — что «это оно!». Быстренько написал простенькую программку, которая распаковывала библиотеки с картинками и выводила их на экран :)
Играть стало не интересно ))))
Вот он, стимул программировать для подростка:ssj100
14.12.2022 18:50+2эх, а у нас была "русские стрип-шашки" одним ехе-шником, еще под вин95 поэтому приходилось наловчиться и 3 раза выйграть(на уроках информатики) и каждый раз собирал толпу одногрупников, кстати потом понял что с каждой следущей девочкой уровень сложности повышался. но на вид там под капотом были просто jpeg и хотел научиться взламывать, научусь и сделаю себе доступ чтоб достать всю мякотку скрытую. Позже пропал интерес так как аналогичного контента было пруд пруди.
vconst
14.12.2022 20:10+1Ну, некий азарт присутствует))
Экзешники, когда он один — все упаковывались одной и той же программой. Ничего сложного в том, чтобы их «взломать» — не было ))
DGN
15.12.2022 14:10Как люди без вебкама то мучались...
Держал BBS, но не помню засилия контента 18+, рассказы самиздата были более распространены, софт, игры.
vconst
15.12.2022 14:17Исходя из чего сделаны выводы о засилье 18+ и каких-то мучений?
Обычная развлекуха
Exchan-ge
16.12.2022 09:13+1Держал BBS, но не помню засилия контента 18+, рассказы самиздата были более распространены, софт, игры
В начале 90х в ходу были коллекции изображений, причем самых разных тематик.
Дискетами передавали друг другу картинки, был большой спрос на это.
(с появлением Интернета этот кайф был утрачен и плотно забыт :)
Schokn-Itrch
14.12.2022 17:09Разработчики игры сделали всё возможное, чтобы минимизировать размер файлов
Определенно не все. 320x200 это еще и текстовому режиму 40x25. 40x25 равняется 1000 знакомест. И, обычно говорят, юля. "CGA адаптер не поддерживает перепрограммирование знакогенератора" - аксиома, но верная только для первых версий. CGA не поддерживает перепрограммирование "на лету", как и EGA, такое стало возможно только у VGA. Однако однократное возможно даже у первых ревизий. По сути даже неоднократное, но с нюансами.
Опустив железную ересь, 1000 знакомест это 4 уникальных из 256 доступных. Показать, подр....посмотреть и забыть. Вполне нормальная функция для компов требующих перезагрузки после среды программирования. Не сегодняшним днем мыслите.
anticyclope
14.12.2022 17:48но ведь где-то должна быть инфа для знакогенератора. не пойму, где профит?
shiru8bit
14.12.2022 18:11+2В принципе 1000+256*8=3048 всё же получше, чем 8000 (320*200/8). Но тогда, в те времена, задачу оптимизации изображения до максимум 256 уникальных символов пришлось бы решать неделю.
PuerteMuerte
14.12.2022 23:19+3В CGA инфа для знакогенератора зашита в УФ ПЗУ на плате, и действительно не предполагает перепрограммирование, ни однократное, ни многократное, как утверждает коллега@Schokn-Itrch. Ну, если таковым не считать перепрошивку в антураже тех времён - вытащить (а часто - выпаять) ПЗУ, облучить жёстким ультрафиолетом, засунуть в программатор, и зашить новый знакогенератор. В отличии от него у EGA и VGA в ПЗУ зашито несколько шрифтов, и у обоих есть возможность затягивать из ОЗУ компьютера кастомный шрифт.
anticyclope
15.12.2022 06:46Это я понимаю. Вопрос был не в том, как это работает, а в том, как это подсчитано :)
Ведь для более-менее реалистичного вывода нужны не абы какие символы, а с соответствующим паттерном для данного знакоместа. А эти паттерны тоже место занимают. @shiru8bit, собственно, сделал необходимый подсчёт.
Я только не понял про "4 уникальных из 256 доступных". Уникальных чего?
nipper
15.12.2022 09:44Не совсем верно, CGA давали возможность заменять верхнюю половину таблицы, но только в графических режимах. Лексикон или Слово и Дело этим активно пользовались.
PuerteMuerte
15.12.2022 13:31+2Неа, верно. CGA не давали возможность менять никакую половину таблицы. Текстовые редакторы в графических режимах русские буквы (и любые другие символы из любой половины таблицы) рисовали сами, попиксельно.
edo1h
14.12.2022 23:10CGA не поддерживает перепрограммирование "на лету", как и EGA, такое стало возможно только у VGA
уверены, но на ega нельзя?
вот например: Драйвер работает на адаптерах EGA/VGA
shornikov
14.12.2022 17:41+4Во времена *.PCX был тетрис был с девицами в 15 уровней сложности. Удачно тогда освоили freegame toolkit и девицы с 13 по 15 сдались.
Помнится, старшие товарищи принесли ВИДЕО! на четырех дискетках. Нас человек 30 собралось.
shiru8bit
14.12.2022 18:09+12Честно говоря, технически статья крайне слабая. Какая-то дичь про труднодоступность фоток, про влезание на дискету (какие ещё дискеты, Карл? Целая эпоха игр прошла безо всяких дискет), минутная загрузка на Compaq Portable, который может загрузить эту 8-килобайтную картинку за пять секунд и показать мгновенно, и так далее. В 80-х уже было полно игр для взрослых, особенно на японских компьютерах, где это вообще был основной вид ПО, а появились они в 1982-1983. Да что там говорить, порнографические игры были даже на Atari 2600, у которой и графики-то толком нет.
Alcpp
15.12.2022 01:06+5Вы в каком государстве тогда жили?
Sunmo22
16.12.2022 11:58+1Жили В СССР. В 1985-м уже был оборудован компьютерный класс в школе (в крупном городе на Урале) персональными компьютерами Атари. Со следующего года был УПК в одном из вузов, и туда от школы направляли классы на информатику и УПК (учебно-производсвенный комплекс) по специальности "Оператор ЭВМ", там уже стояли персоналки IBM, правда, не класс, а несколько единичных. Но также работали и на больших машинах, а у моих родителей в ВЦ на этих больших советских машинах было даже что-то вроде интернета: сотрудники внутри учреждения и между несколькими учреждениями в городе могли обмениваться текстовыми сообщениями на чб экране. Уже были текстовые библиотеки в цифре. А картинки сделанные шрифтами отец еще в детстве приносил распечатанные на перфорированной широкой бумаге. Игры были, "нюдсы" в цифровом варианте меня не интересовали, потому что полно было календарей, видеосалонов с видеофильмами такой тематики. Даже любопытно было прочитать в комментариях, что кто-то сильно трудился, чтобы добыть такие картинки из игр.
DmitriySun
14.12.2022 18:49+1Как человек, который смотрел нюдсы на XT+CGA отмечу, что на тот момент это была просто фантастика!!! А в Strip Poker я играл не только на XT, но и на Спектруме - это вам даже не дискетки.
RedPandaHere
14.12.2022 20:25+1А как же формат bmp ?
sden77
14.12.2022 21:16+2а он очень мало где использовался по причине отстутвия сжатия и применялся в основном в каких-то мелких картинках в программах для windows и os/2
vconst
14.12.2022 21:20Да еще и закрытый был, поначалу
ermouth
15.12.2022 08:52Да ещё и развёртка у него снизу вверх.
sden77
15.12.2022 10:11+4ну это для нюдсов на модеме 14400 скорее плюс, т.к. наиболее интересная часть изображения обычно снизу
Stanislavvv
15.12.2022 13:31На модемах и педально-шаговых атс bmp скорее минус... Там, где гифка загружалась полностью, bmp могла и не докачаться до чего-нибудь различимого...
geher
15.12.2022 05:55+1Строго говоря сжатие там вполне себе было. RLE мог использоваться в некоторых случаях (для монохромных точно поддерживалось).
axe_chita
14.12.2022 21:13+3А как же Image Alchemy? Чем ещё под DOS было сконвертировать VGA картинку, ну или JPEG чтоб посмотреть её на монохромном HGC?
И в переводе совсем забыли про GRASP и замечательный формат GL, в котором были не только слайд-шоу, но и «живое» ню-видео. Кто вспомнит GL-ку с Poor Mandy?bolk
15.12.2022 18:03+1Я помню! Тоже об этом хотел написать. Было видео в форматах GL и DL, GASP — это вторая половина 80-х.
Didimus
14.12.2022 21:19+12- Вовочка, тебе какие женщины больше нравится?
- Маленькие! Они быстрее скачиваются!
CrazyTux
14.12.2022 21:36+1Что бы отдельно там вьюеры.... может и были.... А вот что точно помню, кассеты для Спека с коллекциями фоток в монохроме таких барышень как Саманта Фокс, где каждая фотка грузилась отдельно как бинарь...
F0iL
14.12.2022 22:00+7можно ли смотреть нюдсы на компьютере XT в начале 80-х?
Да ладно. При должном желании на XT можно даже смотреть рилтайм-видео с этим самым.
https://trixter.oldskool.org/2014/06/19/8088-domination-post-mortem-part-1/
titbit
14.12.2022 22:23+3Если кто-то из вас пользовался программами для сканирования, просмотра или редактирования изображений в 80-х годах или если у кого-то есть примеры таких изображений
Были конечно программы для работы с изображениями в 80-ых. Например, вот нашел у себя скриншот аналога тогдашнего "фотошопа":
Hidden text
И сами изображения были (сканы), например вот из 1988 года, сконвертирован для загрузки:
Hidden text
sappience
15.12.2022 02:45+1а на 1,44-дюймовую дискету 720 КБ можно было сохранить пять-шесть изображений
Вы тут что-то дюймы с мегабайтами попутали :) Это 3.5" дискеты были емкостью 720кБ (DD) и 1.44МБ (HD).
axe_chita
15.12.2022 04:09Все претензии к автору оригинального текста :)
«The size of this picture is 77 KB, so 5–6 images could be saved on a 720 KB 1.44'' diskette.»
drobzik
15.12.2022 03:10+4Вот как этот процесс выглядит на настоящем компьютере Compaq Portable, выпущенном в 1983 году:
Вспомнилась старая шутка времен BBS — «Если бы картинки загружались снизу вверх, сколько бы трафика было бы сэкономлено!»axe_chita
15.12.2022 04:03+3Поэтому GIF и научился загружать картинку в интерлейс, при котором картинка с каждой секундой становилась все лучше ;)
Areso
15.12.2022 03:26+2Первой игрой была та, в которой управляя клавишами курсора своим пикселем нужно было 'отрезать' части от поля, и тогда они заменялись нижележащей картинкой.
При этом за тобой охотились пакманы размером в 1 пиксель и нужно было от них убегать :)
PuerteMuerte
15.12.2022 03:37+5Угу, я уже где-то в нулевых совершенно случайно узнал, что у "Сексоникса", оказывается, существовал изначальный прототип без голых баб.
xxxDef
15.12.2022 08:40+1Ну здрасте. А ASCII нюдсы, с ЭВМ СМ-4 напечатанные на АЦП? На бумаге с перфорацией с двух сторон. Это ж было вообще фантастика. Киберпанк начала 80х.
axe_chita
15.12.2022 09:14+10Типа такого?.XMMMXMMMXXXXX. .XXMMXXXXMMMMXXXXXX. .XXXMMMXXXXXMMXMMXXXXX. .XXXMXXMMXXXXXMXMMMXXXXX. .XMXXMXXXXXXXXXXXMMMMMXMXX. .XMMXXXMXXXMXXXXXXXXXXXMMXX. .XXXMXXMMXXXMMXXXXXXMMMMMXMX. .XXXMMXMMMMXXMMMXMMMMMMMXMMXX. .XXXMMMMXMMXXXXMMMMMMMMXXMMXXX. .XXXMMMMXMXMMMMMMMMMMMXXMMMXXX. .XMMI""""\MMM.I"""".XXMMMXXXXM. XXMM.."(). ."().. XMMMXMMX .XXXM. """' . """' "MMMMMXXX .XXXM. . "MMMMXX. .XXXMM . "MMMMMXX. .XXXMM. '. .) MMMMMMMMMM. .XXMMMM. ."MMMMMMMMMMM. .XXMMMMM. .:''''.' . "MMMMMMMMMMM. .XXMMMMMMM. """"" . :"MMMMMMMMMMMM. .XXMMMMMMMMM. . ::"MMMMMMMMMMMM. .X. ''''''MMMMM. . .::::"MMMMMMMMMMM. .' XMMMM:'''' .:::::::"MMMMMMMMMMMM. .' .MMM:: :::' ....."MMMMMMMMMMM. ; .MX:: .' '"" '.MMMMX. ; "" .MMM. ; ; "" .MM. .; "" .M. ;' "" X ..' ""; . II::' "";. . .:::' . .::::. "";. . ''' ' '::XX::' ."".. ' . '::::::' .MM.:. ' : . . ''::'' .;MM.:: ' . :: .. .;MMXX.:: : . .;: :. .;MMMXXX.:: : '...::' ':. ;MMMMMXXMM.:: MM"-:-:-:-:-:-:-:-:-XXX;,, ,,;MMMMMMXXXMM".:. MM" "MMMMMMMMMMMMMMMMMXXXMM" .:. MM"-:-:-:-:-:-:-:-:"MMXXMMMMMMMMMMMMXXXXMM" .:. MM" "MMMMMMMMMMMMMMMMXXMXXMM" .:. MM-:-:-:-:-:-:-"MMXXMMMXXXMXXXXXXMMMXMM" .:. XMM" "MMMMMMMMXXXXXMMMMMMMMMM" .:. MXMM"-:-:-:-:-:"MMMMMMXXXXXXXXMMMXXXMM" .:. MMXMM" "MMMMMXXXXXXXXXXXXXXMM" ... MMXXMM-:-:-:-:-"MMXMMXXXXXXXXXXXXXXMM" /I:.. MMXXXM" "MMMXXXXXXXXXXXXXXXMM" .;;' MMXXXM"-:-:-:-:-"MMMXXXXXXXXXXXXXXMM" .;' MMMMMM" (I) "MMMMMMMMMMMMMMMMMMMM" .'' .' XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXX MISS BUSTING OPEN XXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Или такого?8888 8888888 888888888888888888888888 8888:::8888888888888888888888888 8888::::::8888888888888888888888888888 88::::::::888:::8888888888888888888888888 88888888::::8:::::::::::88888888888888888888 888 8::888888::::::::::::::::::88888888888 888 88::::88888888::::m::::::::::88888888888 8 888888888888888888:M:::::::::::8888888888888 88888888888888888888::::::::::::M88888888888888 8888888888888888888888:::::::::M8888888888888888 8888888888888888888888:::::::M888888888888888888 8888888888888888::88888::::::M88888888888888888888 88888888888888888:::88888:::::M888888888888888 8888 88888888888888888:::88888::::M::;o*M*o;888888888 88 88888888888888888:::8888:::::M:::::::::::88888888 8 88888888888888888::::88::::::M:;:::::::::::888888888 8888888888888888888:::8::::::M::aAa::::::::M8888888888 8 88 8888888888::88::::8::::M:::::::::::::888888888888888 8888 88 88888888888:::8:::::::::M::::::::::;::88:88888888888888888 8 8888888888888:::::::::::M::"@@@@@@@"::::8w8888888888888888 88888888888:888::::::::::M:::::"@a@":::::M8i888888888888888 8888888888::::88:::::::::M88:::::::::::::M88z88888888888888888 8888888888:::::8:::::::::M88888:::::::::MM888!888888888888888888 888888888:::::8:::::::::M8888888MAmmmAMVMM888*88888888 88888888 888888 M:::::::::::::::M888888888:::::::MM88888888888888 8888888 8888 M::::::::::::::M88888888888::::::MM888888888888888 88888 888 M:::::::::::::M8888888888888M:::::mM888888888888888 8888 888 M::::::::::::M8888:888888888888::::m::Mm88888 888888 8888 88 M::::::::::::8888:88888888888888888::::::Mm8 88888 888 88 M::::::::::8888M::88888::888888888888:::::::Mm88888 88 8 MM::::::::8888M:::8888:::::888888888888::::::::Mm8 4 8M:::::::8888M:::::888:::::::88:::8888888::::::::Mm 2 88MM:::::8888M:::::::88::::::::8:::::888888:::M:::::M 8888M:::::888MM::::::::8:::::::::::M::::8888::::M::::M 88888M:::::88:M::::::::::8:::::::::::M:::8888::::::M::M 88 888MM:::888:M:::::::::::::::::::::::M:8888:::::::::M: 8 88888M:::88::M:::::::::::::::::::::::MM:88::::::::::::M 88888M:::88::M::::::::::*88*::::::::::M:88::::::::::::::M 888888M:::88::M:::::::::88@@88:::::::::M::88::::::::::::::M 888888MM::88::MM::::::::88@@88:::::::::M:::8::::::::::::::*8 88888 M:::8::MM:::::::::*88*::::::::::M:::::::::::::::::88@@ 8888 MM::::::MM:::::::::::::::::::::MM:::::::::::::::::88@@ 888 M:::::::MM:::::::::::::::::::MM::M::::::::::::::::*8 888 MM:::::::MMM::::::::::::::::MM:::MM:::::::::::::::M 88 M::::::::MMMM:::::::::::MMMM:::::MM::::::::::::MM 88 MM:::::::::MMMMMMMMMMMMMMM::::::::MMM::::::::MMM 88 MM::::::::::::MMMMMMM::::::::::::::MMMMMMMMMM 88 8MM::::::::::::::::::::::::::::::::::MMMMMM 8 88MM::::::::::::::::::::::M:::M::::::::MM 888MM::::::::::::::::::MM::::::MM::::::MM 88888MM:::::::::::::::MMM:::::::mM:::::MM 888888MM:::::::::::::MMM:::::::::MMM:::M 88888888MM:::::::::::MMM:::::::::::MM:::M 88 8888888M:::::::::MMM::::::::::::::M:::M 8 888888 M:::::::MM:::::::::::::::::M:::M: 888888 M::::::M:::::::::::::::::::M:::MM 888888 M:::::M::::::::::::::::::::::::M:M 888888 M:::::M:::::::::@::::::::::::::M::M 88888 M::::::::::::::@@:::::::::::::::M::M 88888 M::::::::::::::@@@::::::::::::::::M::M 88888 M:::::::::::::::@@::::::::::::::::::M::M 88888 M:::::m::::::::::@::::::::::Mm:::::::M:::M 8888 M:::::M:::::::::::::::::::::::MM:::::::M:::M 8888 M:::::M:::::::::::::::::::::::MMM::::::::M:::M 888 M:::::Mm::::::::::::::::::::::MMM:::::::::M::::M 8888 MM::::Mm:::::::::::::::::::::MMMM:::::::::m::m:::M 888 M:::::M::::::::::::::::::::MMM::::::::::::M::mm:::M 8888 MM:::::::::::::::::::::::::MM:::::::::::::mM::MM:::M: M:::::::::::::::::::::::::M:::::::::::::::mM::MM:::Mm MM::::::m:::::::::::::::::::::::::::::::::::M::MM:::MM M::::::::M:::::::::::::::::::::::::::::::::::M::M:::MM MM:::::::::M:::::::::::::M:::::::::::::::::::::M:M:::MM M:::::::::::M88:::::::::M:::::::::::::::::::::::MM::MMM M::::::::::::8888888888M::::::::::::::::::::::::MM::MM M:::::::::::::88888888M:::::::::::::::::::::::::M::MM M::::::::::::::888888M:::::::::::::::::::::::::M::MM M:::::::::::::::88888M:::::::::::::::::::::::::M:MM M:::::::::::::::::88M::::::::::::::::::::::::::MMM M:::::::::::::::::::M::::::::::::::::::::::::::MMM MM:::::::::::::::::M::::::::::::::::::::::::::MMM M:::::::::::::::::M::::::::::::::::::::::::::MMM MM:::::::::::::::M::::::::::::::::::::::::::MMM M:::::::::::::::M:::::::::::::::::::::::::MMM MM:::::::::::::M:::::::::::::::::::::::::MMM M:::::::::::::M::::::::::::::::::::::::MMM MM:::::::::::M::::::::::::::::::::::::MMM M:::::::::::M:::::::::::::::::::::::MMM MM:::::::::M:::::::::::::::::::::::MMM M:::::::::M::::::::::::::::::::::MMM MM:::::::M::::::::::::::::::::::MMM MM::::::M:::::::::::::::::::::MMM MM:::::M:::::::::::::::::::::MMM MM::::M::::::::::::::::::::MMM MM:::M::::::::::::::::::::MMM MM::M:::::::::::::::::::MMM MM:M:::::::::::::::::::MMM MMM::::::::::::::::::MMM MM::::::::::::::::::MMM M:::::::::::::::::MMM MM::::::::::::::::MMM MM:::::::::::::::MMM MM::::M:::::::::MMM: mMM::::MM:::::::MMMM MMM:::::::::::MMM:M mMM:::M:::::::M:M:M MM::MMMM:::::::M:M MM::MMM::::::::M:M mMM::MM::::::::M:M MM::MM:::::::::M:M MM::MM::::::::::M:m MM:::M:::::::::::MM MMM:::::::::::::::M: MMM:::::::::::::::M: MMM::::::::::::::::M MMM::::::::::::::::M MMM::::::::::::::::Mm MM::::::::::::::::MM MMM:::::::::::::::MM MMM:::::::::::::::MM MMM:::::::::::::::MM MMM:::::::::::::::MM MM::::::::::::::MMM MMM:::::::::::::MM MMM:::::::::::::MM MMM::::::::::::MM MM::::::::::::MM MM::::::::::::MM MM:::::::::::MM MMM::::::::::MM MMM::::::::::MM MM:::::::::MM MMM::::::::MM MMM::::::::MM MM::::::::MM MMM::::::MM MMM::::::MM MM::::::MM MM::::::MM MM:::::MM MM:::::MM: MM:::::M:M MM:::::M:M :M::::::M: M:M:::::::M M:::M::::::M M::::M::::::M M:::::M:::::::M M::::::MM:::::::M M:::::::M::::::::M M;:;::::M:::::::::M M:m:;:::M::::::::::M MM:m:m::M::::::::;:M MM:m::MM:::::::;:;M MM::MMM::::::;:m:M MMMM MM::::m:m:MM MM::::m:MM MM::::MM MM::MM
Или этакое....::IIIIII:::''. .:IIIIHIHHIHHHII::I: .IIIIHHHHHHHHHHIIIIMHHI:. :IIIIHHHHHHHHMMHHIHHIIHHIII:. .:IHHHHHHHHHHHHHHHHHIHHIHHHIH:I:, CINDY ..:HHHHHHHHHHHHHHHHHHHHHHHHIHHII:. ..:IHHHHHHHHHHMMMMHHHHHHHIIHHHIHII. .:IIHHHHHHHMMMMMHHHHMMMHHMHHHHHHHIIII: .IIHHHMMMMMMMHHMMMHHHMMMHHMHII:HHHII:I. :HHHHHMMMMMMMMMMMMMMMMMHHHMI:HHMMHII:::. HIHHIHHMMMMMMMMMMMMMMMMMMHHHHMM::::IIHII: :IHHHHHMMMMMMMMMMMMMMHHHHNNHHI:'' ':IIH. IIHHHHMMMMMMMMMMMMMMHHHHMI::'' 'HHM. IHHHHHMMMMMMMMMMMMMHHHIHI::' 'MMH. HHHHHMMMMMMMMMMMMMMHHIHI::' ..MMM:. HHHHMMMMMMMMMMMMMMMHHIHI:: ..:I:'IMMI. HHHHMMMMMMMMMMMMMMMHHIII:' :HI:... HHI: HHHHHMMMMMMMMMMMMMHHHI:HHHII:.. ':.HHP'HPIHII. IHHHHMMMMMMMMMMMMMHHHII:II::I::. 'HHHH .:: HII: :HHHHHHHMMMMMMMMMHHHHHIIIHHHII::. .P'I::'' HI:I 'IHHHHHHMMMMMMMMHHHHHIHHMMI.HH:H:: II:I :HHHHHMMMMMMMMMHHHHHIHMHHII:::H::. :III IHHHHMMMMMMMMMMHHHHH:II:::..::H:::. .IIHII IHHMMMMMMMMMMMMMHHH:II::::..:HI::::: IIHII 'HHHHMMMMMMMMMHHHH:II::::..::IIIIII/ ::.' HHHIH: HHMMMMMMMMMMMHHHH:II::::.. .. .;;;. ..HHHIHH. MHHMMMMMMMMMMMHHH:II::::..'' ,;;,,:::* .HHHIHH: HHHMMMMMMMMMMMMHHH:II:::.. :[II'''' II" .HHHIHHI. 'HHHMMMMMMMMMMMMHHH:II:::::. "I:...:I". .HMHHIHHH; :HHMMMMMMMMMMMMMMHH:II:::::::..""" .. :MMHI:IHHI 'HHMMMMMMMMMMMMMMHHH:II:::::::::::: . .MMHI:IHHH. :HHHMMMMMMMMMMMMMHHH:IIII:::::... ..:MMMMHI:IHHH:. 'HHMMMMMMMMMMMMMMMMHHHIIIIIIIII:::::MMMMMHHI:IHHHI. ;IHMMMMMMMMMMMMMMMMMHHII:MHHHHH'HMMMMMMMHI:IIHHH:I :IMMMMMMMMMMMMMMMMMMHHHII:MHHH:HMMMMMMMHHHIHIHHHI: ;HHHMMMMMMMMMMMMMMMMMMHHHI:MMHIHHMMMMHHHHHHHHHMHHI: ;HHHHHMMMMMMMMMMMMMMMHMHHHI:M.HHHHMMHHHHHHHIHHHHHI: :HHHHHHHHMMMMMMMMMMMHHHMHHHI:IHHMMMMHHHHHMHIHHHHHHI ;HHHHHHHHMMMMMMMMMMHHMMIHMI:IIHHHMHHHHMHMHIHIHHHHI:. IHHHHHHHHHHMMMMMMMMMHHMMHHMMII:IHHMMHMHHHHMMHMHMHHHH; :IHHHHMMMMMMMMMHIHMHIIMMHI:IMHMMMI:HHHHHMMHHHHIHHHIHI:. .:I' .. . ':HHHHMMMMMMMMMMHI:HMMHI:IHHHI::IHHHI:HIHHHI:I:. .:I ; . . . ; ':HHHHMMMMMHMMMHIHIMMMHI:HHHMI:IHHHIHI:HHHHII:I. .:H' . .. . . 'IHMMMMHMMHMMMMHIHIHHHHIIHHHH:IHHHHHIHHHHHIIHII:. .:I' .. . . . :IHMMMMMMMHHIHHHI:HHIHHHIHIHHHHIHHHHHHI:HHHHHII::' ..: . . . :IMMMMMHHIMHIIHHI:IHHI:IHHIHHHHIHIHHHHIHIHHHHIHI::. .:... . . . ..:IHMMMMMHMHMHHHHMHIHHI:.IHIIHHHHHHHHHHHI:HIHHIHII:; .: . . . . :IHMMMMMIHIH:IIHHHIHH:.I:IIHHHIHHHHHHHHIHI:IHHHI:; :: .:. . . . . :IHHHMMMMIHIH:IIHHHMHH::..:HHHHI:HHHHHHI:I:IIIHII; :. ... . . . ..::HHHMMMMHHHI:HIIHHMMHH:..:HHHMHHIHHHI:: .:IIIIIII :. .. . . ..:IHHHMMMMHHII:HIHMMMHHI:. HHMHMMHHII:' .'.:IIII:' :.... . . . ..:IHHHMMMMMMHI:HIHMMMHH...HHMMHHHMH:' .' :II::' :. .. .... . ..IHHHHMMMMHHHI:I:IHMMH. .HHMHHHH:' .' '':. ::... ........ . ..::IHHHMMMMHHII::I:IHMMHHHHIHIHH'' . . . ::... ....... .. ...::IIIHHHMMMHI::IHHHIIIHHHIIHI'. .. . . ::....;;;.;........ ....:::HHIIHHHHHHHIIHMMMHI'' 'HI::.. . . . ::.................... ...HHIIIIIIIHH::''' 'HII:.. .. . ::................... ...HHHIIIIIIHHHI::. . 'HII::. . . .. :::............... . . ..:MHHHHIIIIIII::. . 'HII:::. .. ':. :::::........... . . ...MHHHHHIIII:::. . 'HII:::. . . ..:. :::::::.......... . ....MHHHHHHHIII::::.. . 'HI::. . ..::: :::::::::......... ....:MHHHHHHIIII::::... . 'HI::. . ..::II ::::::::::........ ...:MHHHHHHIIII::::.. . 'HI:. ....II' ::::::::::::...... . .MMMHHHHIIIII::::... . . I:: ...:::' :.::I::::::::..... ..MMMHHHHIIIIII:::... . . .::. ...:' :..:II:::::::::.... ..MMMHHHHIIIIIIIII::.... . ...::''' ::.:III::::::::::.....MMMMIHHHHIIIIIII::::.... . .....:. ::..:III:::::::::.....MMHMMIHHHHHIIIIIII::::.. . ..::..:. ::::.::III::::::::... .IMMHMMIHHHHHHIIIIII::::.. ..::..::: .:::I.:::III:::::::... .:MMHHMMIHHHHHIIIIIII::::....:::.:::: :::IIH.:::III::::::::....MMHMHMMIHHHHHHIIIIIIII:::.:::::::II :::IIHH.II:::II::::::::...MMMHMHMMIHHHHHHHHIIII:::..::::::II" ::IIIHHH.III::I;:::::::...MHHMHHHHHIIHHHHHHHIII:...::::..:" :IIHHHHH.HIIII:::::::::...HHHHHHHHII:':HHHHIIII:::...:'' IIHHHHHHI.HHIIIIII:::::...HHHHHII:' . .''HIIIIII:'' IHHHHHHHH:HHHHIIIIII::::..HHHI::' .. .... HHHHHHHHHHIHHHHHHHHIII::.IHI:' . ..:... HHHHHHHHHHIHHHHHHHHHII:..II:' . .:' ''':. HHHHHHHHHHIHHHHHHHHHII:..I:' . .:' '':. HHHHHHHHHHIHHHHHHHHHII:..::' :.::.. ':. MMHHHHHHHHHIHHHHHHHHII::.::' :.::.... '':. MMMHHHHHHHHIHHHHHHHHII::..::. ...:I:.... '':. MMMMHHHHHHHIHHHHHHHHHII:..:::. :.:II:::..... . ':. MMMMMHHHHHHIHHHHHHHHHHII:..::.:.:HIII::::....... . ':. MMMMMHHHHHHIHHHHHHHHHHIII:.:..::HHIIIIIII::::::::...... ...::. MMMHHHHHHHI:HHHHHHHHHHIII::.:::HHHHHIIIIIIIII:::::::::....... . ...:: MHHHHHH$IIII:HHHHHHHHHIII::..:HHHHHHHHHHHHHHIIIIIIIIIIII::::..... ..:: HHHHHH$$IIIIHHHHHHHHHHHII::..HHHHHHHHHHHHHHHHHHHHHIIIIIIII:::::::::::: HHHH$$$IIII::HHHHHHHHHHII::..:HHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIII HHHH$$$$II::::HHHHHHHHIII::...LMMMMMMMMMMMMMMMMMMMMHHHHHHHIIIIIIIIIII' HHHHHI$$I:::::HHHHHHHHHIII::..HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH' HHHHHH$$$I::::HHHHHHHHHIIII:..MHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH' MHHHHHI$$$I::::HHHHHHHHHIII:..MMMHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH' MMHHHHH$$$II::HHHHHHHHHHIII:..:MMMMMMMMMMMMMHHHHHHHHHHHHHHHHHHHH' II:IIHHHI::::MIHHHHHHHHHIII::..MMMMMMMMMMMMMMMMMMMMMHHHHHHHHH' III:IIIHHI::::IIHHHHHHHHHHII.;MMMMMMMMMMMMMMMMMMMM:::'''' IIIIIIII::::. HHHHHHHHHHII:: IIIIIII:II:::. 'HHHHHHHHHHHHII: IIIIIIIII:::::. :HHHHHHHHHHHHII IIIIIIII:::::::. MHHHHHHHHHHHHI IIIIIII:::::::::. 'MMMHHHHHHHHHII IIIIII:::::::::::. MMMMMMHHHHHHHI IIIIIIII::::::::::. MMMMMMMHHHHHI: IIIIIIIIII::::::::..MMMMMMMMHHHHHI IIIIIIIIIIIII::::::..MMMMMMMMHHHHH IIIIIIIIIIIIIII:::::..MMMMMMMMHHHH: IIIIIIIIIIIIIIIII:::..MMMMMMMMMMHHI HIIIIIIIIIIIIIIIII:::..MMMMMMMMHHI:; HHHIIIIIIIIIIIIIIII::::IMMMMMMHHHI:. HHHHIIIIIIIIIIIIIIHHHH:.MMMMMHMHHI:: HHHHHIIIIIIIIIIIHHHHHHI:MMMMMHMHHI:: HHHHHHIIIIIIIIHHHHHHHHHIMMHHHHHIIHI:. HHHHHHHHIIIIIIIIHHHHHMMIHHHHHHIIIII:. HHHHHHHHHIIIIIIIIIHHHMHHIIHIIHIIII:::. MMHHHHHHHHHHIIIIIIIHMIHIIHHIIIHIII::... MMMHHHHHHHHHHHHHIIHMMIIIIIHHIIHHI:::::.. MMMMMMMHHHHHHHHHHIHMI:IHIHII:HI:HII::.::. MMMMMMMMMMHHHHHHHHII:IHMMH.:HIIHI:II:IHI:. MMMMMMMMMMMMHHHHHMIII:IMHIHHHMH:IH::I:IHH. MMMMMMMMMMMMMMMHMIIIHHMHHHHHMHHIHHI.:MMHI: HHHHMMMHHHMMMMMII:IIHHIIHMIIIHI:HI:HM:IHII HHHHHHMMMHHHMMM:II:IMHHIIMIHIIIHIHHIHMM:II HHHHHHHHMMMHMM:'::MHHHIMMIIII:MIIIHI:MM::: 'IHHHHHHHMMMMM .IMHHHIMIII::IMIHHI:HHHM::' 'HHHHHHMMMMMMMIHHIIMIHI::IMIHH:IHHHHII' ':HHMMMMMMM':HHIIIHHIIMIIHI:IMMHHMM' 'MMMMMM:..:MMMIHHIIMIIHI:MMMMMM' '':MMMMMMMM' :MMM'':MMMMMM:' '':MMMMM:MMMMM:MMMMM:'' """""""""""""'
Вознесем же благодарность тэгу python в source, за то что он смог правильно отобразить эту красоту
mentin
15.12.2022 11:05Из ASCII конечно можно гораздо больше вытащить, тут только четыре градации яркости по средней яркости блока, пробел и .*@. Чуть позже появились программы подбиравшие буквы и символы, заметно повышая "разрешение".
sadr0b0t
15.12.2022 11:54+1nsfw
http://www.vintagecomputing.com/index.php/archives/974/high-resolution-scan-of-the-worlds-first-digital-computer-art
https://www.theatlantic.com/technology/archive/2013/01/the-never-before-told-story-of-the-worlds-first-computer-art-its-a-sexy-dame/267439/
https://www.computerhistory.org/timeline/graphics-games/
adeshere
15.12.2022 13:07+4Я нашёл несколько программ для просмотра изображений под MS-DOS, но все они сделаны позже, в 90-е:
В 1987 то ли в 1988г к нам в горную памирскую глухомань вместе с коллегой из США приехал Compaq Portable, да так у нас и остался. Потом почти сразу появились XT-шки и пошло-поехало. Так на смену СМ-4 и RSX-11M, где рисовать можно было только на плоттере (а вместо сканера - дигитайзер), пришел MS-DOS с новым фортраном и, неожиданно, графикой. Правда, мы в основном рисовали картинки сами, а не сканировали. Сканировать было проблематично из-за размера: обнажения там, преимущественно, встречались геологические.
Если мне память не изменяет, то первой моей программой на персоналке стал конвертер фортрана-IV в МS Fortran. После чего мы перетащили туда программы и базу данных с большой машины, прикрутили библиотеку HALO и начали жить по-новому. HALO позволяла не только рисовать что-то статичное, но и обеспечивала вполне приличный интерактив. Правда, часть функций для ускорения тормозов приходилось писать на ассемблере, но вместе с фортраном в комплект входил MASM, и это было несложно. Особенно упрощала жизнь возможность вывести asm-листинг исходного кода, причем туда же вставлялись исходные операторы на фортране. Поэтому даже слепой мог довольно быстро понять, как одно превратить в другое, что именно тормозит, и куда надо оптимизировать.
Помню, что тяжелее всего фортрану тогда давалась работа со строками. А для организации интерфейса надо было при каждом нажатии клавиши мгновенно сформировать и вывести на экран 25 строк по 80 символов, каждая из которых объединяла с десяток динамически генерируемых подстрок. Поэтому многие простейшие функции мы переписывали на ассемблере. До сих пор в шапках некоторых фортрановских (уже!) подпрограмм вместо "С" рамка сделана из кавычек... А еще компилятор ужасно страдал при передаче строк в подпрограмму. Поэтому мы частенько объявляли строку глобально... и этот legacy до сих пор местами присутствует в нашем коде...
Еще библиотека HALO умела выводить нарисованную картинку на принтер, причем с инверсией цвета и, при необходимости, изменением пропорций рисунка в два раза, так как пикселы на экранах в то время были не очень квадратные ;-) . В комплект поставки входили драйверы для разных моделей принтеров и дисплеев, а программа при запуске должна была подергать систему и подцепить нужный.
А в файл мы тогда захватывали картинки GRAB-ом и PCXGRAB-ом (уже не помню, в чем разница). До сих пор в архивах валяются pcx-файлы с нарисованными тогда графиками. По сравнению с черчением тушью и фотокопированием (да, так тогда оформлялись рукописи диссертаций, статей и отчетов) это была какая-то революция... Хотя разрешение картинок еще долго не шло ни в какое сравнение с произведениями искусства чертежника.
И, собственно, про обработку изображений. Помню, что картинки с экрана тогда получались на черном фоне, а для печати мы как-то их инвертировали. А вот чем именно конвертировали - уже не помню. Возможно, опять-таки с помощью HALO: в одном из обрывков кода ушедшей эпохи наша программа читает pcx-файл, а затем вызывает какую-то подозрительную функцию. Но разобраться с этим фрагментом, а тем более перекомпилировать его теперь уже нереально.
w0lf
15.12.2022 13:37+1Я смотрел картинки фривольного содержания на компьютере Искра-1031 (советский XT). Программа для просмотра называлась Compushow (cshow.exe). Формат картинок в основном был PCX.
iiiytn1k
15.12.2022 16:13+1Разработчики игры сделали всё возможное, чтобы минимизировать размер файлов. Каждый всего 5768 байт, что даёт нам разрешение всего лишь 320×18 в оттенках серого. И действительно, если открыть pic-файл с помощью Python, то многие детали отсутствуют:
Разработчики определённо использовали какие-то трюки, чтобы вывести изображение 320×18 на экране 320×240.
Во-первых, это игра работала в режиме 320х200
Во-вторых, если посмотреть скриншоты из игры, то видно, что каждая картинка с девушкой занимала не всю площадь экрана, а область размером 320х144 пикселей.
В битовом формате такое изображение будет занимать (320х144)/8=5760 байт. Но размер каждого файла 5768 байт. Откуда еще 8 байт? Если открыть в шестнадцатеричном редакторе все картинки и сравнить их, то можно обнаружить, что у всех файлов есть одинаковый заголовок длиной 7 байт: FD 00 20 00 00 80 16, а так же в конце у каждого файла есть байт 1A.
iiiytn1k
15.12.2022 19:54Это было слишком просто. Только не совсем понятно как реализована трехцветная палитра.
Tangaroa
15.12.2022 18:04+1Наконец-то я знаю, как Ленна выглядела полностью. Бабушка уже, наверное. Если вообще ещё жива
SquareRootOfZero
15.12.2022 20:58+1Помню, в старших классах средней школы на уроках информатики два моих одноклассника задумали написать программу, которая выводила бы на экран изображение голой женщины. На Агатовском Бейсике. Модель взяли из журнала. Перевели линиями на миллиметровую бумагу. Стали вручную вводить эти данные в компьютер. До хранения данных в отдельном файле и прочих премудростей вроде битового пакования и RLE, разумеется, их юные мозги не додумались, поэтому всё было реализовано набором строк вида (не помню точную команду в том Бейсике для рисования точки, но как-то так):
10 PLOT 34 57
20 PLOT 34 58
и т. д., и т. д., тысячи их. Один диктует, другой вводит. Несколько уроков подряд этим промаялись. При этом странный графический режим Агата это усё растянул вширь, с какой-то своей периодичностью ещё пропуская вертикальные полоски пикселей. В итоге, учитель отказался им за это ставить высокую оценку по предмету, мотивируя это тем, что баба вышла какая-то неэстетичная.
Ivnika
Я это не то что видел, я в это играл :) а тут еще оказывается и довольно интересное "под капотом", спасибо!
Melias
А для меня это стало первым опытом "хакинга". Переименовываешь файл melissa5.pic в melissa1.pic - и получаешь финальную картинку на старте игры!
sterr
На спектруме такое не пролазило. Надо было честно выиграть. Хотя я уже и не помню, но вроде бы на скорпионе я ее ломал.
Vladal
это если спектрум грузил с кассеты а не дискеты
AlexMcArrow
На спектруме, писался загрузчик для блока с "фотками" и потом "методом научного перебора" FOR X = 12000 ... POKE X - выводился блок данных как изображение на экран, вместе со стартовым Битом. Результат записывался на самый надежный носитель (бумажечку - карандашиком) и в последующем, можно было загрузить блок с фото и сразу "смотреть нужное" .