- PVSM.RU - https://www.pvsm.ru -
Дамы, господа, сегодня отличный день!
Скорее всего вы помните, что существует такая форма компьютерного искусства как «демосцена», но если слышите это слово впервые — просто прочитайте тематический хаб [1] и теги [2] на Хабре, а так же пару популярных статей по этому вопросу.
Одной из форм соревнования на демосцене является sizecoding — программирование визуальных эффектов в крайне ограниченном объеме машинного кода. Прежде чем мы перейдем к достижениям сегодняшнего дня (а они есть и более чем масштабные), давайте очень быстро пробежимся по наследию дедов. Все приведенные ниже работы сделаны в разные годы, объединяет их требование к платформе — PC, x86, DOS (никакого GPU, обычная видеокарта). В идеале вам стоит поставить DosBox и запускать каждую работу самостоятельно, благо авторы не особенно озадачиваются созданием видео и загрузкой его на YouTube. Мы постарались выбрать по одной показательной работе в каждой номинации.
Для начала посмотрим на «крупные» релизы, те, которые занимают килобайты. Здесь золотым стандартом является 64 килобайта. Категория 40 килобайт популярна на компьютере Commodore Amiga, а в случае с PC здесь обычно лежат работы, которые авторы не захотели дописывать до 64k. Говоря про 32k и 16k — это чаще всего cracktro и bbs intro, которые формально тоже можно отнести к демосцене.
64k intro [3] — heaven seven [4] by Exceed
40k intro [5] — Alien Incident Cracktro [6] by Hybrid & Superior Art Creations
32k intro [7] — Quake 3 Cracktro (RZR #07) [8] by Razor 1911 & Superior Art Creations
16k intro [9] — Blastersound BBS (2) [10] by Iguana
А вот отсюда начинается настоящая демосцена, здоровенная, демосцена моей мечты!
8k intro [11] — mars [12] by Tim Clarke
4k intro [13] — Omniscent [14] by Sanction
1k intro [15] — paleozoa [16] by fsqrt
512b intro [17] — AFLAtoxin [18]
256b intro [19] — Puls [20] by Rrrola
128b intro [21] — cross [22] by Queue Members Group
64b intro [23] — into a new era [24] by Desire
32b intro [25] — Projektbeschreibung [26] by Desire
На этом официальны градации на Pouet [27] заканчиваются, но не заканчивается погоня за эффектами в минимальном объеме кода. Вот в качестве примера всем знакомый «дождь из символов в Матрице» размеров всего восемь (8) байт:
8b intro — m8trix 8b [28]
Вопрос дня: может ли быть интро размером в 4 байта? А в 2 байта?
Ответ: ДА.
Вот машинный код для процессора x86:
#EB #80
А вот результат на экране:
Заинтригованы? Во второй части мы детально расскажем как такое возможно! Уж такой сегодня
день…
Продолжение статьи можно и не ждать, если вы умеете держать ассемблер в руках и язык вероятного противника вам знаком. Вот ссылка на ответ: www.pouet.net/prod.php?which=85118 [29]
Пишите в комментариях что поняли, что не поняли и что хотели бы понять из прочитанного выше. Ассемблер вовсе не черная магия! Просто НОРМАЛЬНЫЙ мужской язык программирования, а не это все «для девочек», на чем вы обычно каждый день пишите.
Архив выпусков нашей научно-популярной передачи:
И целого байта мало… (Часть #0) [30]
И целого байта мало… (Часть #-1, пилот) [31]
Автор: Максим Мучкаев
Источник [32]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/x86/351419
Ссылки в тексте:
[1] хаб: https://habr.com/ru/hub/demoscene/
[2] теги: https://habr.com/ru/search/?q=%5B%D0%B4%D0%B5%D0%BC%D0%BE%D1%81%D1%86%D0%B5%D0%BD%D0%B0%5D&target_type=posts
[3] 64k intro: https://www.pouet.net/prodlist.php?type%5B0%5D=64k&platform%5B0%5D=MS-Dos&page=1&order=thumbup
[4] heaven seven: https://www.pouet.net/prod.php?which=5
[5] 40k intro: https://www.pouet.net/prodlist.php?type%5B%5D=40k&platform%5B%5D=MS-Dos&page=1
[6] Alien Incident Cracktro: https://www.pouet.net/prod.php?which=613
[7] 32k intro: https://www.pouet.net/prodlist.php?type%5B%5D=32k&platform%5B%5D=MS-Dos&page=1
[8] Quake 3 Cracktro (RZR #07): https://www.pouet.net/prod.php?which=638
[9] 16k intro: https://www.pouet.net/prodlist.php?type%5B%5D=16k&platform%5B%5D=MS-Dos&page=1
[10] Blastersound BBS (2): https://www.pouet.net/prod.php?which=12650
[11] 8k intro: https://www.pouet.net/prodlist.php?type%5B%5D=8k&platform%5B%5D=MS-Dos&page=1
[12] mars: https://www.pouet.net/prod.php?which=4662
[13] 4k intro: https://www.pouet.net/prodlist.php?type%5B%5D=4k&platform%5B%5D=MS-Dos&page=1
[14] Omniscent: https://www.pouet.net/prod.php?which=482
[15] 1k intro: https://www.pouet.net/prodlist.php?type%5B%5D=1k&platform%5B%5D=MS-Dos&page=1
[16] paleozoa: https://www.pouet.net/prod.php?which=58497
[17] 512b intro: https://www.pouet.net/prodlist.php?type%5B%5D=512b&platform%5B%5D=MS-Dos&page=1
[18] AFLAtoxin: https://www.pouet.net/prod.php?which=53992
[19] 256b intro: https://www.pouet.net/prodlist.php?type%5B%5D=256b&platform%5B%5D=MS-Dos&page=1
[20] Puls: https://www.pouet.net/prod.php?which=53816
[21] 128b intro: https://www.pouet.net/prodlist.php?type%5B%5D=128b&platform%5B%5D=MS-Dos&page=1
[22] cross: https://www.pouet.net/prod.php?which=6212
[23] 64b intro: https://www.pouet.net/prodlist.php?type%5B%5D=64b&platform%5B%5D=MS-Dos&page=1
[24] into a new era: https://www.pouet.net/prod.php?which=78044
[25] 32b intro: https://www.pouet.net/prodlist.php?type%5B%5D=32b&platform%5B%5D=MS-Dos&page=1
[26] Projektbeschreibung: https://www.pouet.net/prod.php?which=76788
[27] Pouet: https://www.pouet.net
[28] m8trix 8b: https://www.pouet.net/prod.php?which=63126
[29] www.pouet.net/prod.php?which=85118: https://www.pouet.net/prod.php?which=85118
[30] И целого байта мало… (Часть #0): https://habr.com/ru/post/492984/
[31] И целого байта мало… (Часть #-1, пилот): https://habr.com/ru/post/68984/
[32] Источник: https://habr.com/ru/post/495042/?utm_source=habrahabr&utm_medium=rss&utm_campaign=495042
Нажмите здесь для печати.