Змейка размером с твит

Чем можно заняться на карантине

low level asm

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

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

perl -E "say'swFoAKAHvqB9uBMAzRC/wPi5gAjzqqqBxz4Bc/jkYDxIchE8UHcNN5hISHIFLAJrwLCJwwHetIa2780VtEUmMCR72uv','B'x589,'Vao='"
Как это выглядит

Собственно, ничего сверхестественного или какой-то магии нет - мы в цикле читаем ввод клавиатуры, понимаем, какая стрелка нажата, меняем направление движения. Пожалуй, единственное, что доставило некоторые проблемы при создании этой штуки - автор использовал прерывание 10h, которое в BIOS отвечает за работу с графическими устройствами в связке с аргументом 0Bh, которое обновляет палитру. Как я понял, это было сделано для того, чтобы старые компы успевали отрисовывать вертикальную графику. На современных таких проблем не наблюдается, поэтому я просто заменил это на 15h прерывание со значением из головы (ну не совсем, подобрано около-опытным путем). По сути, просто прикольная штука, я не смог пройти мимо :)

Previous Post Next Post