Тут надо разделить две вещи: официально ведь у девяток поддержка софта для Apple делалась только через ИКП, а пункт Applesoft грузил оригинальный DOS 3.3, ничего не знавший про дисковод 840К. Поэтому с точки зрения изготовителя, для поддержки софта Apple дисковод 140К был необходим.
А вот покупателей девяток с одним дисководом такая ситуация не устраивала, поэтому для них сторонние разработчики предложили решение проблемы - загрузчики игр с дисков 840К.
***
Совместимость загрузчиков игр - это тема отдельного исследования :)
Главное тут - не перепутать, что причина, а что следствие: это игры так отбирались для сборников, что проблем совместимости не было, или это загрузчики были настолько хороши, что любые игры работали.
Судя по тому, сколько было разных загрузчиков, проблемы совместимости у них были решены на разном уровне :) Вот, навскидку, я поделил программы на категории по трудоемкости их переноса:
1) "файловые игрушки". На самом деле, многие из "файловых игрушек" изначально такими не были. Они поставлялись на одном диске (часто с защитой от копирования), и содержали загрузчик (часто на Бейсике), который грузил несколько файлов. "Файловыми" эти игрушки стали после перепаковки, когда все файлы были слиты вместе, а бейсиковый загрузчик заменен вставкой на ассемблере, перемещающей блоки в нужные адреса. Могу предположить, что хакеры так делали в том числе для совместимости с самыми первыми Apple ][, у которых был INTBASIC и бейсиковые загрузчики на Applesoft Basic просто не работали.
Для таких игрушек было все равно, с чего их загружают. Да и нижняя граница доступной памяти их не интересовала - они просто не предусматривали возврат в DOS, только перезагрузку. Совместимость для них обеспечить проще всего.
2) игрушки, требующие Бейсик. Для них, очевидно, нужен Бейсик в адресах $D000-$F7FF. Это более сложный вариант, потому что код, добавленный в DOS для поддержки 840К дисковода уже нельзя закинуть в верхние адреса - там теперь Бейсик.
3) игрушки без перепаковки и софт, работающий с файлами штатными средствами. Еще чуть сложнее - если для запуска игрушек первого типа DOS целиком не нужен и можно, например, выкинуть из него поддержку большинства команд, то тут уже все основные команды должны быть реализованы.
4) софт, работающий с файлами в обход штатных средств. Например, напрямую с файловым менеджером. Вот это уже не очень просто. Тут должны сохраняться адреса точек входа в DOS, в том числе недокументированные.
5) софт, работающий напрямую с секторами. Это еще сложнее. Потому что DOS при этом вообще не имеет понятия, что делает программа. А программе реально может снести крышу, если она ждет номер трека меньше 35, а по факту получает 159-й номер.
Из примеров таких игрушек - тот же Lode Runner, который уровни грузит через RWTS.
Я нашел только один загрузчик с Lode Runner-ом (может, есть и еще, я тут не очень в теме) http://agatcomp.ru/agat/Software/MicroDos/Used.shtml. Смотрим первую строчку на картинке и видим: DISK FREE:210 USED:350. В сумме 560 или 140К. То есть, похоже, что загрузчик на уровне RWTS занимается эмуляцией 140К тома.
Короче, чем больше программа хочет от DOS, тем сложнее все делается. И вот непонятно, на 840К диски переносились только те программы, которые сравнительно легко было перенести, или был достигнут такой уровень совместимости, что можно было перенести вообще любые программы с файловой структурой?