Pull to refresh

Comments 133

Приятно, что есть ещё фанаты асма. Прекрасно, коллега!
Вот она, старая школа! Каждый байт на вес золота!
ну не только старая.
По-хорошему, програмеры разных микроконтроллеров порой тоже весьма зажаты в байтах…
Это да, а сейчас 1 полигон в игре больше. Производители железа развратили кодеров:)
UFO just landed and posted this here
UFO just landed and posted this here
Приятно, что такая игра загрузится за 0,0004 сек на мегабитном канале интернета.
Кстати, пустая SWF-ка, в которой ничего нет, занимает 36 байт.
Вспоминается аналогия:
программа на WPF занимает 20кб, но что бы ее запустить нужно .netFramework 3.5 который весит 200мб :)
программа на ассемблере занимает 58 байт. Но чтобы ее запустить — нужен i386 процессор весом около 50 грамм :)
предлагаемая версия не использует 32-битных инструкций, так что берите ещё ниже :)
Те процессоры были тяжелее :)
Не факт. i8088 в пластиковом корпусе будет легче i80386DX в керамическом.
Хотя Am486SX в PQFP возможно ещё легче был.
Страшно даже подумать, что 88-й был выпущен в 79-м. Спустя 30 лет всего 64)
Много места занимает прокрутка экрана (8 байт)…


Таких людей осталось мало, и скоро, к сожалению, совсем не будет. Vale!
будет и осталось.

например, моя программа ExactMouse для win32 написана на Ассемблере (-:
UFO just landed and posted this here
o_O

Графика, конечно, не как в .kkrieger, но и места занимает в полторы тысячи раз меньше. Респект.
А не выпустить ли железяку на микроконтроллере и с маленьким ЖК экраном с набором таких игр?
Как бэ уже давно:
Вот и надо обойти китайцев, и сделать у нас такую штуку, только игры будут более оригинальные, ведь по части выдумки нам равных нет.
По части выдумки равных нет. А по части производства и продаж: сложнее. Хотя могло бы пользоваться спросом.
Проблема в том что они будут непопулярны. Они не смогут конкурировать с игровыми возможностями обычных телефонов. :)
Мода как известно развивается по спирали, так что вполне вероятно что через какое-то время такого рода игры опять будут популярны. Можно вместо устройства просто писать программы для телефонов.
тем более некоторые устройства уже снова начинают понимать ассемблер)
такие как siemens и sony ericsson с поставленным на них эльфпаком
Тут не обошли.
Это копия (клон, как нынче модно говорить) нинтенды.
ru.wikipedia.org/wiki/%D0%9A%D0%B0%D1%80%D0%BC%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5_%D0%B8%D0%B3%D1%80%D1%8B_%D1%81%D0%B5%D1%80%D0%B8%D0%B8_%C2%AB%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%BD%D0%B8%D0%BA%D0%B0%C2%BB
Можете минусовать, но правда именно такая :)
А, ну да:)
Сам ссылку поставил, а толком не вчитался — виноват:)
вот ты какой убийца айфона…
И весить отечественный девайс будет пол кило, не меньше :)
Это была байка такая, не знаю, факт или нет: собрали мобильник полностью из российских деталей. Получился агрегат весом 950 грамм.
Ага, даже шутка такая есть.
На уссурийского тигра ВВП надел ГЛОНАСС-передатчик, чтобы всегда знать, где находится это редкое животное. Теперь все знают, где тигр — там, где его с передатчиком оставили, т.к. передвигаться с ним он уже не может.
Ага, и тетрисом назвать! Наверняка никто такого не делал
То тетрис, а здесь можно напихать сотни маленьких программ.
к концу популярности подобных устройств там были и подобные гонки. Единственно поле было поменьше…

Снимаю шляпу. Вы — золотой человек!
Какой добрый топик… Душу греет! А в сравнение на ум приходит только подкованная Левшой блоха.

Поставлю всем плюсов…
В детстве, когда я мечтал о компьютере БК0010, или хотя бы о программируемом калькуляторе, я написал еще более короткую игру, которая шла на калькуляторе, у которого можно было табом менять значения, выводимые на экран.

В ячейку Х вводилось число 555555.

В ячейку Y вводилось число 222222.

Затем, нажимая на кнопку таб, собственно можно было начать наблюдать игру: «Танцующие змеи»:
Я тоже начинал программировать на программируемом калькуляторе МК-61 (до сих пор жив и работает, не так давно даже пользовался по прямому назначению) и БК-0010 (и БК-0011М).

Помню как в одном журнале увидел программу для МК-61 играющую в игру «Бридж», и при этом занимающую то ли 8, то ли 16 байт. Другой аналог этой программы занимал более 100 байт, и играл гораздо медленее и хуже.
Эх, были времена… Помню, тоже «программировал» игры на МК-52. Тоже читал журналы (кажется, то был ж-л «Техника-молодежи», кстати, отличный журнал), там публиковали исходники игр с комментариями. Читатели даже нашли недокументированные возможности, когда числа при переполнении разрядов превращались в «монстров» :)
я тоже с мк-56 начинал программировать. учитель офигела когда я принес его в школу и ее глазах написал игру быки и коровы. с тех пор разрешили с десятым классом мне семикласснику ходить на информатику. но я очень скоро понял что они там ничем интересным не занимаются и попросился паралленьно еще и с 11 классом ходить. в итоге после 7 класса уже программировал на бейсике для БК.
Точно меньше 10, скорее всего 9 байт. Можно поискать. При этом у него была выигрышная стратегия ))
Спасибо, поностальгировал:
F Прг

01.5 02.5 03.5 04.5 05.5 06.5 07.5 08.5
09.B↑
10.2 11.2 12.2 13.2 14.2 15.2 16.2 17.2
18.(F ¤)
19.(БП 18)

F Авт
В/О
С/П
Эхехе, ностальгия… МК-54 и МК-61, программы из «Техники Молодёжи», игры «Бесконечная история» и «Лабиринт» — помните такое? Особенно игрушки, которая даже умудрялись не занимать всю доступную память калькулятора, а игрались так, что современные «шедевры» отдыхают.
Самой большой неприятностью казался однострочный экран. «Эх, а вот с многострочником я бы наворотил!» — главная мысль того времени.
А потом уже появилась какая-то из «Электроник»-клонов «Спектрума». До сих пор дома пылится, кстати.
во сколько уложитесь при добавлении блекджека и шлюх во второй версии?
шютка, респект.
Игра «подтормаживает» сама по себе, или у меня железо старое?
зы: про подтормаживает — я не шучу
Скорее всего это следствие «В XP программа работает, но таймер работает не гладко»
Вы запускаете под XP? Там таймер работает не так как в DOS'е. Попробуйте запустить с опцией «Эмуляция совместимого аппаратного таймера» (Compatible timer hardware emulation).
UFO just landed and posted this here
Юные дарования сейчас могут писать только крестики-нолики, требующие 8 ядер и гигабайт памяти ..(
UFO just landed and posted this here
я начинал с Правцов болгарских, писал на машинных кодах там, потом перешёл на Спектрум, ассемблер, затем 0x86.
UFO just landed and posted this here
UFO just landed and posted this here
кстати да, вам бы в демосцену ;)
я думаю, после годика эскпериментов парень бы выдал неплохие 4k-демки ;)
Пробовал, но был молод и поэтому особенных результатов не достиг)

В тот момент, когда я заканчивал свой килобайтный 3д движок, мне показали 4кб демку Меша (названия точно не помню, но в архивах должна где-то быть) — 10 минут 3д сцен и музыки. Она убила мою веру в себя.
посмотрите Seven Heaven, тоже очень стоящая работа
я когда ее в первый раз увидел — долго смотрел на свой комп и думал, как это вообще возможно )) потом понял
на самом деле советую скачать некоторые демки, которые распространяются вместе с сорцами, там много интересного
сорри, опечатался — Heaven Seven
Меня Chaos Theory от демо-группы Conspiracy ещё поразила. :)

Впрочем, любителям этой темы стоит основательно покопаться в архиве демосцены. Особого внимания заслуживают конкурсные работы с демо-пати Assembly, Breakpoint, The Gathering и почившей в бозе Mekka & Symposium.
о да
это история
я уже и не сосчитаю, сколько я оттуда скачал и насмотрелся
вот умеют же некоторые с компом обращаться!
а меня в своё время, очень потрясла fr08v101
да и сейчас тоже запустил, посмотрел, нет слов…
я когда такое смотрю, убеждаю себя что это все в винде уже прописано, а они просто вызвали недокументированную функцию воспроизведения ;-)
Ещё бы несколько таких людей и можно переписывать исходники Мира, тогда бы улучшилась производительность всех людей на земле. )))
размер как правило никак не связан с производительностью ;)
Автор в данном случае считал байты, но так же увлекался, судя по его рассказу, и тактами ,.)
Производи́тельность — внесистемная величина, равная отношению объема проделанной работы к времени, за которое она была совершена.

Есть две программы, выполняющие одно и то-же(объем проделанной работы) первая — 50 байт, вторая — 100, соответственно первая выполняется за 50 тактов, вторая за 100 (если считать одна команда — один байт). Какая программа быстрее и, соответственно, у которой
больше производительность?
Производительность больше у второй, там развёрнуты все циклы :-P
Вероятно, если я расскажу, что в программе могут быть операторы переходов, это станет для вас открытием )
1. Кликнуть на flash.
2. Выбрать игру.
3. Играть.
А у вас в игре скроллинг плавный? (игру не запускал) Смотрелось бы отлично. Делается через запись в контроллер ЭЛТ, просто пишется значение по определенным адресам, в справочниках кажется Фроловых было описание.
если запускать из под XP — не плавный, прыгает
до для такого размера файла — простительно
Нет. Скроллинг посимвольный (8 пикселей за раз). Все из-за размера, насколько я помню, только чтобы обратиться к контроллеру надо было 3-4 инструкции.
Вместе с этим еще можно символы грузовика в шрифте модифицировать, сдвигая на пиксель вверх, тогда и скроллинг плавный будет и грузовик дергаться не будет :)
UFO just landed and posted this here
Когда-то занимался подобными вещами на Спектруме.
Хорошо что хоть кто-то еще этим занимается :)
Интерестно было потыркаться… Молодость всполмнил…
Автор молодчага, а я свой асм забросил, лет 6 назад. Вспомнились строки из «Программистской молодости»:

«Но это время прошло, но это было давно,
Теперь y каждого нудной работы полно,
И заказчик-дурак тычет мышкой в картиночки гордо...»


"… Теперь нам лень изощряться, оптимизировать код,
И интерфейс с дураками мы пишем из году в год,
Свыклись с мощной машиной, отвыкли от всякого риска.
Забыли коды команд и старых трюков запас..."

Удачи автору!

Шикарно! И летние каникулы с толком провели)
Хаха! Одна из первых вещей, которые я делал на флэше в школьном далеком прошлом: files.webi.ru/m_down/peretiaganki.swf.html
А вы таки на асме попробуйте ;-)
Я не пишу на асме. Мне за это минус? Новые правила хабра? Хм…
Да нет, не новые. Просто это примерно как если бы вам похвастались что его картины выставляются в Эрмитаже, на что вы ответили бы что «да, эт прикольно. я тоже на заборах хорошо рисую» :)

К слову, минус ставил не я.
Спасибо за ссылку, добавил в топик. Исходник было интересно почитать.
Уважаемый, вы заставили моё сердце встрепеннуться. Cреди комментов на поуёте, была ссылка на игрушку K.Y.K.

Так вот, Dr. Max — это я (;

а k.y.k. мы писали с моим однокласником. так сказать «на перегонки». модемов тогда ещё не было в нашей деревушке, по этому мы активно менялись дискетами в классе (боже мой, сколько всего интересного влезало в эти 1457664 байта! Умопомрочительно!).

Я сделал первую версию весом байт в триста. Серёга на следующий день принём версию в 280 или около того… я сдела 188… он ответил на это 128 байтами… кончилось тем, что я упаковал это в 37.

до сих пор с умилением вспоминаю эти дни… (;

Сейчас доделаю кой чего по дому и может выложу куда архивчики этих забавных древностей (если компашка с бэкапом не накрылась).

p.s. Кто этот Pirx и откуда он взял мою игрушку и инфо о ней? ооочень интересно… (8
Вот, может кому будет интересно. «Я изучаю ассемблер» называется. (;

не смотрите на даты, там небольшой косяк с ними. по идее всё это происходит в 1997 году (может осенью, а может весной). из-за этого же косяка очень сложно восстановить порядок в котором они были написаны. но, подозреваю что чем меньше получаемый комок, тем более поздняя это версия. (8

narod.ru/disk/10887439000/kyk_history.tar.bz2.html

сейчас поставлю себе dosbox и буду смотреть чего там ещё есть в этом архивчике (а там что-то уж сильно дофига всего :)

Только вот очень обидно, что не сохранились серёгины версии. Хоть и без исходников, но всё равно забавно было бы поизучать.
Спасибо, поностальгияровал. Тоже на tasm'е писал и оптимизировал.
Жаль старые версии потерялись, интересно было бы почитать про процесс оптимизации :)
Когда-то давно реализовывал программку, которая тупо выводила на экран cpuid. Уложился в 14 байт, и то только благодаря какой-то случайности, вроде последовательности регистров при массовом запихивании в стек.

Но теперь, думаю, что можно и меньше сделать ;)
на дороге встречаются люди и деревья. и столбы перебегают иногда ;)
UFO just landed and posted this here
Чем больше у человека доступных ресурсов — тем больше он будет лениться. Зато такие задачки как эта, когда приходится действовать в очень ограниченных рамках, заставляют по-настоящему шелевить мозгами :)
UFO just landed and posted this here
Раньше именно байтами и измерялись.
А демо сцена, точнее говоря 4KB и 64KB интро, тогда что, полная свобода действий?
Раньше ограничением был объем памяти, сейчас — высокая нагрузка. Изменился вектор и приемы, но проблема не исчезла
интересно, влезла бы она на DVD-болванку, если бы ее делали товарищи из Rockstar Games :)
Искренне завидую, во времена ассемблера я под стол пешком ходил, а про такие вещи остается только слушать старших коллег :)
Никогда не поздно начать. Ниша однокристаллок еще вовсю асм юзает.
Асма-асма) Люди умели ценить ресурсы, сейчас бывает взглянешь на код, так как-будто специально пишут чтобы подлиннее, да потяжелее, особенно этим страдают Java-кодеры.
Расскажите это Java ME разработчикам, они с вами вместе посмеются.
Или разработчикам LinkedIn, который написан на Java.

И вообще, только вот грязи не надо.
Огромный респект автору!

Я тоже начинал с MK-52 и с журналом «Техника-Молодежи», кстати, очень помогло в институте на информатике (сразу посадили самостоятельно изучать… хм… бейсик на Ямахах, он кстати от Майкрософта был) и ..., вы не поверите — астрономии! Дали задание: кто напишет самую короткую программу для преобразования сферических координат — вот тогда пятерку я этим себе честно заработал.

А еще был такой ПК «Вектор», кстати, нравился он мне больше чем БК, т.к. там аж целых 32Кб было под видеопамять выделено, а это 256*256*16 из 256 возможных цветов… предел мечтаний! :) Правда видеопамять там была по уродски устроена, постраничная, цвет пиксела складывался из битов расположенных друг от друга на расстоянии 8 Килобайт. И чтоб одну точку поменять, надо было 4 байта изменить, но зато благодаря такой организации памяти можно было видеопамять под данные отдавать за счет уменьшения битности цвета…

А игруху я писал, это я в тетрадке, по тактам процессора рассчитывал, насколько та или иная процедура на ассемблере будет более быстрой для вывода спрайта. «Профилирование» кода в тетрадке… :)

И дисковода не было грузился с магнитофона, загрузишь с магнитофона ассемблер, напишешь, сохранишь на кассету исходник, скомпилируешь, скинешь на кассету, выгрузишь ассемблер, загрузишь что скомпилировал, потестируешь… и все по новой — романтика!

А сейчас? Столько возможностей, пиши на чем хочешь, для чего хочешь! И порой думаешь: эх, молодежь нынче ленивая стала — им сейчас все на блюдечке с голубой каёмочкой, а они — лентяи, ничего делать не хотят! Но вот только сейчас от всего этого IT изобилия я периодически испытываю настоящий шок — так все быстро меняется, появляется так много новых технологий, что только успеешь освоить одну, как она уже устаревает. Поэтому и молодежи сейчас даже видимо тяжелее, чем нам, они другие сейчас так как время сейчас другое…

все меняется, время летит. и даже если нас самих вернуть в то время, то не повторятся те эмоции, тот дух, тот интерес, что бывало оторвешься чаю попить — в окно взглянул — а там рассвет.
Со всем уважением, последнее — повторяется — и еще как! (сейчас танцую с бубном вокруг GLSL...)
Супер! Побольше бы таких фанатов ассемблера. :)
я бы сказал сказал умиления и ностальгирования)
По поводу сюжета. Интересная такая дорога, где поперёк вмещается более чем три десятка грузовиков и прямо на полотне растут деревья. =))) Если действительно сменить направление прокрутки, то можно придумать что-нибудь по поводу батискафа и мин. ;)
Не перевелись еще богатыри на земле Русской. Порадовали :)
Вы используете функции вызова BIOS и DOS для работы с экраном и клавиатурой.
Кто как, а я и щас байты считаю. На Микроконтроллерах. Сижу вот пишу маленькуй маленькую кооперативную ОС. Пока укладываюсь в 400байт.
Sign up to leave a comment.

Articles