воскресенье, 28 марта 2010 г.

Старый хлам в картонной коробке

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

Lab_5_18
Когда-то я зарабатывал карманные деньги тем, что делал лабораторки для старшекурсников. Все это было, конечно, примитивно и скучно: работа с массивами, списками, основы языка... Но одна лабораторка мне нравится до сих пор. Каждый раз как запускаю умиляюсь, до чего хорошо получилось. Это парсер, который раскладывает арифметическое выражение в дерево:
Кстати, тут видно, что он не только строил дерево, но и немного сжимал его, избавляясь от сложения с нулем и подобных операций. Конечно, когда формула уже лежит в дереве, то работать с ней становится легко и приятно, можно применять разные шаблоны, тасовать узлы как угодно и получать просто восхитительные результаты. Например, формульный калькулятор в компилируемых языках. Думаю, что именно такой способ представления формул используется в каком-нибудь MathLab.

DemoAsm
Первая программа на ассемблере. Скомпилирована еще тогда, но до сих пор работает. Чего бы ей не работать. Собственно включает режим 0x13h и рисует желтую точку на экране. Управлять точкой можно с помощью клавиш q,a,o,p, выход - Esc. Скриншот, к сожалению, не делается. Кстати! Размер EXE-шника всего 956 байт.Т.е. меньше килобайта. Нет, все-таки в ассемблере что-то есть.

Fistpath
Патчер для какой-то из версий игры "Элита" (кажется First Encounters). Добавлял произвольное количество денег. Кажется, речь шла о "стартовых" деньгах.
Патчер примечателен тем, что в нем переопределялся знакогенератор для режима 0x03h и менялась палитра. За счет этого достигался эффект плавной бегущей строки (в текстовом режиме) и плавного появления/исчезновения звезд на фоне. Тут я тоже не осилил сделать скриншот, но вы можете посмотреть сами.

WinKley
Софтина задумывалась как "клей" для windows-программ. По-идее должна была "склеивать" два EXE-шника в один таким образом, чтобы сначала загружался один, а за ним другой. Сам клей реализован так и не был, но зато получился симпатичный интерфейс (нужно помнить, что речь идет о времени, когда WinXP с ее красивыми темами еще не вышла). Он весь подсвечивается и подзвучивается при наведениях и нажатиях. Кстати, что-то оно с EXE-шниками все же делает, во всяком случае мой антивирус ругается на Output file.

Kt
Электронный камертон. Ничего необычного, просто пищит через PC-спикер. Замечательно то, что тут используется библиотека sCrt. Это моя собственная библиотека (очень примитивная надо отметить, были намного профессиональнее) упрощающая построение интерфейса в стиле Norton. Тогда это, был самый популярный пользовательский интерфейс для DOS-приложений. Кажется это было одно из последних приложений под DOS. Все-таки 2001-год, я уже писал под Windows.

Poin1
После запуска на экран будет выведено несколько точек, а после нажатия клавиши точки будут обведены в многоугольник, причем так, что крайние точки станут его вершинами, а все остальные окажутся внутри. Т.е. многоугольник как бы "обтянет" эти точки. Такой же эффект, как если бы вы бегали с ниткой вокруг группы деревьев, некоторые оказались бы внутри ниточного ограждения, а на некоторые (самые внешние) оказались бы в вершинах ниточного многоугольника.
Вообще-то Poin1 это часть общей задачи которая изначально решалась в 3D для точек и многогранника. Это же ее разновидность для плоскости.

Matrix
Не думаю, что нужно объяснять что именно делает эта программа. Совершенно ничего особенного. Обычный Screen saver. Таких были сотни разновидностей. Вот еще один для DOS-а. Да, я немного подправил его сегодня, поставлял задержек, чтобы на современной машине можно было хоть что-то разглядеть.

Вот, собственно, и все что нашлось из интересного. А еще больше было потеряно, стерто и отформатировано. Мои эксперименты с 3D, куча разных мелких утилит под Windows и еще много чего.

Естественно, выкладываю все файлы (с исходниками) в архиве: old_prog.zip

2 комментария:

Ragnar комментирует...

где тетрис, задротище? =)

Green FiLin комментирует...

Походу провтыкался. Вместе со "змейкой", "лайнс" и еще там всяким...

Отправить комментарий