Инженеры до сих пор не могут понять, как работает эта игра

techcult.ru — В далеком 1982-м для приставки Atari 2600 вышла занимательная игра «Entombed». В силу ограничений самой платформы она представляла собой образец программистской смекалки. Настолько, что современные специалисты по программному обеспечению до сих пор не могут понять, как она работает
Новости, Компьютеры | kielty 13:45 17.06.2020
2 комментария | 12 за, 26 против |
#1 | 15:32 17.06.2020 | Кому: Vascosoft
> В чем проблема разобрать 4кб машинного кода? Люди многомегабайтные прошивки потрошат.

На примере ассемблера ZX Spectrum - весь код чтения и записи на магнитную ленту занимал меньше 100 байт.

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

Так в ПЗУ был код для этой адресации, если не ошибаюсь - всего лишь в 16 байт - сплошные сложения, сдвиги, циклические сдвиги, сдвиги с переносом через регистр переполнения и ни одного условного перехода (при этом происходило деление/умножение/сложение). Вотт это было - охуенно! А не как сейчас говнокод раскопируют десять раз, подправят циферки в условиях - началнык, я сделаль!

P.S. Чтобы 4 кб ассемблера разобрать, где процентов 80 каждый байт - отдельная команда - крепко нужно попотеть. А если их делал ювелир, который пытался впихнуть невпихуемое...
#2 | 21:37 17.06.2020 | Кому: Peter Zuev
> > На примере ассемблера ZX Spectrum - весь код чтения и записи на магнитную ленту занимал меньше 100 байт.
>
> (Меланхолично) Под ДОС могу написать программу из 1 байта. Работает.

Что там сложно - ret поставить (возврат в операционную систему). Так практически на любом железе можно сделать.
Войдите или зарегистрируйтесь чтобы писать комментарии.