Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
Скорее всего, флаг 128-го BASIC'а сбрасывается здесь чтобы спокойно использовать память буфера принтера.
В общем, поковырялся я в коде ПЗУ по поводу этого флага. Давай все же сначала поймем какую цель ты преследуешь. Из программы на Обероне можно выйти обычным способом, по ret на стеке с продолжением исполнения программы на BASIC'е? Если да, то принудительный переход в BASIC - это не дело. Если выход только по Halt(N), то можно перейти в 48K, только переход надо сделать тем кодом, который прислал тебе Wlodek. Кстати, а буфер принтера так критичен?

Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
А почему нельзя оставить активную страницу?
По большому счету, можно. Мы пришли к этому из-за того, что вектор прерывания лежит в #fe00...#feff, поэтому с #с000 должна быть впечатана быстрая страница. Во всем зоопарке фирменный машин быстрые страницы - только 0 и 2, а коммандер может оставить после себя впечатанной любую, в том числе и медленную страницу, то есть, есть небольшой риск получить на фирменной машине снег.
Итого: Принудительно впечатывать страницу 0 есть смысл только при использовании IM 2.

Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
Значит впечатывать 0-ю страницу нужно до загрузки машкода в память, т.е. не иначе как из лоадера, а не из уже загруженного и запущенного кода.
Да, это я облажался. Впечатывать страницу надо в загрузчике после CLEAR и перед загрузкой машкода (POKE 23388,16: OUT (32765),16).