На комоде, например, печатать весь лабиринт заставляют ПЗУ, хитро запатчив ему область память с переменными и небольшими кусочками кодов.
Каждая из 7b, 6b и 5b требует определённых манимуляций с бейсиком, после чего в области памяти #FFxx (где стек) появляются некоторые байтики, которые, будучи исполненными, оказываются подходящими, чтобы закрутить процедуркам цикл и как-то модифицировать регистры. Вопрос — включать ли это в длину кода, или нет, и почему? Если включаем, то тогда далеко не 7 байт будет, если нет и меряемся только длиной части с данными кодового блока, то 0б (1б) — победитель, ведь трюки-то любые никто не запрещал.
1. Из длины комодоровских процедур надо вычитать 2. Т.е. настоящая длина 11 и 9 байт соответственно. И ещё, эти блоки грузятся в 0ую страницу по адресу $7С. Там, в основном, лежат системные переменные биоса и бейсика, но и кусочки кода тоже. Судя по всему, они хитро патчат эти кусочки. Основной цикл, кстати, крутится в ПЗУ! Глубже не копал.
2. Оказывается, чуть раньше Gasman'овского threadzx на пц появился Maze 8b. Правда, лабиринт там неклассический, если судить по скриншоту.
Сравнения имели бы смысл, если бы это было какое-то компо с зафксированными правилами. А так у alone прикольный хак и у psb прикольный хак, но совершенно другого плана.
Кстати, ещё пара наблюдений.
1. На пати была амига в качестве компо-машины, с работами ессно (см. результаты).
2. В результатах только места, никаких средних или суммарных баллов.
Считайте меня параноиком, но почему-то вспоминается ещё и жюри на Артфильде.
его и не надо замечать, это фэйк из всех фэйков. почему? потому что во всех других вариантах есть настоящий код, который печатает (рст 10 + манипуляции с регами для вывода слешей). и именно этот код измеряется, этот код встраивается в некое более-менее стандартное окружение. и это интересно — найти минимум байт, при загрузке которых оно начнет делать то, что хочется.
0б — это фикция. там кода много байт, просто он загружается косвенно, но загружается, но нам рассказывают, что байт нет или он один.
Не больший читинг, чем устанавливать все регистры и генерить половину кода в памяти бейсиком.
да не генерится никакая половина кода бейсиком, там просто честный лоад и уср. это просто реюзание памяти. а то можно ведь сделать бейсик в который незаметно вшить код и назвать это true-0b. там будет rand usr 0 и всё.
не надо превращать соревнование по сокращению кода в соревнования по прятанию кода.
«47 voters: 38 online + 9 at partyplace»
Каждая из 7b, 6b и 5b требует определённых манимуляций с бейсиком, после чего в области памяти #FFxx (где стек) появляются некоторые байтики, которые, будучи исполненными, оказываются подходящими, чтобы закрутить процедуркам цикл и как-то модифицировать регистры. Вопрос — включать ли это в длину кода, или нет, и почему? Если включаем, то тогда далеко не 7 байт будет, если нет и меряемся только длиной части с данными кодового блока, то 0б (1б) — победитель, ведь трюки-то любые никто не запрещал.
2. Оказывается, чуть раньше Gasman'овского threadzx на пц появился Maze 8b. Правда, лабиринт там неклассический, если судить по скриншоту.
1) на других платформах так же были хаки?
2) если не было, то какие все таки честные объемы рабочих процедур на ZX?
А сравнивать их, это как теплое и мягкое.
1. На пати была амига в качестве компо-машины, с работами ессно (см. результаты).
2. В результатах только места, никаких средних или суммарных баллов.
Считайте меня параноиком, но почему-то вспоминается ещё и жюри на Артфильде.
чур я не писец:) уломайте алона написать, заодно и повод зарегаться:)
0б — это фикция. там кода много байт, просто он загружается косвенно, но загружается, но нам рассказывают, что байт нет или он один.
да не генерится никакая половина кода бейсиком, там просто честный лоад и уср. это просто реюзание памяти. а то можно ведь сделать бейсик в который незаметно вшить код и назвать это true-0b. там будет rand usr 0 и всё.
не надо превращать соревнование по сокращению кода в соревнования по прятанию кода.
Не меньше 50 человек было, кстати, судя по csdb.