Не всё сразу
- - - Добавлено - - -
Смотря что считать корректным. Формально она не корректная, но фактически сложно представить реальную (а не выдуманную) ситуацию в которой она не сработает. Вряд ли кто-то будет что-то химичить с содержанием страниц, а потом, без рестарта компа решит поиграть в игру. Даже в детстве, када я грузил с мафона, было правило, что перед каждой попыткой загрузки делался reset. И мне кажется, что все так делали/делают.
Т.е. эта проверка - достаточная. Можно конечно сделать проверку "маниакальную", предельно корректную для всех случаев. Можно конечно сделать, для интереса. Правда тада не получится:
ld a,20
......
dec a ; a=19
Ибо придется делать примерно так:
1. В сжатом блоке хруста находим после 49151 какой-то байт, который равен нулю. Берём этот адрес на карандаш.
2. Грузим картинку и основной блок.
3. Переключаем на 19
4. Заносим по этому адресу "19"
5. Переключаем обратно на 16.
6. Смотрим что лежит по адресу.
7. Если там 19, то JZ на 48-ой сценарий.
8. Иначе (0) - по любому 128. И пофиг что там в каких страницах лежало до загрузки игры.
В 48-ом сценарии конечно придется перед стартом добавить
XOR A
LD адрес , A






Ответить с цитированием