Всё изменения через порт #7FFD. Переключается верхний банк ОЗУ (16КБ) #C000-#FFFF, а также банк ПЗУ (с 0 и до экрана) между 48 (#10) и 128 (0), то бишь 4-й бит это номер ПЗУ. Также можно переключать отображаемый экран: 5-я банка либо 7-я, физически в карте ничего не меняется, но видеоконтроллер отображает одну из них как экран. Задаётся битом 3 в том же порту. Соответственно, Бейсик-48 и "стандартный" экран это число #10, а Бейсик-128 и второй экран - число 8 (хотя в реальности так никогда не делают).
Блок порта производится установкой бита 5 (#20), после чего изменения невозможны до сброса компа. Разумеется, одновременно можно записать и номера нужных страниц ОЗУ-ПЗУ-экрана, но это будет последняя запись, и работа системы будет нарушена после такого приема, если работал Бейсик-128, либо 48-й со стеком (Clear) #C000 и выше. Ну, и смена экрана на 7-ю банку означает работу вслепую, т. к. Бейсики понятия не имеют о втором экране - он используется только запускаемыми программами.
И ещё один момент: каждое прерывание Бейсик-128 щёлкает страницами. Вот отсюда и идут все проблемы с загрузкой данных выше #C000, а также с попытками управлять портом, пока жив этот 128-й Бейсик. Проще сразу делать USR 0, получая режим "48К с открытым портом", ни на какие игры и софт это не повлияет. Наоборот, некоторые даже заработают, хотя в "чистом" 128-м режиме не запускаются.





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