Barmaley_m, а где можно пощупать ASC CP/M?
Barmaley_m, а где можно пощупать ASC CP/M?
С уважением,
Jerri / Red Triangle.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Интересно выходит,
1) "плоский" режим не что иное как упрощение реальной жизни, т.е. в каждом CPU адресное пространство ограниченно, а значит можно себе представить что потребуются overlays (а иначе можно было бы загрузить все проги вселенной в "резиновую" память);
2) для поддержки overlays компилятору и компоновщику нужно различать как минимум 2 типа памяти (общая и подменяемая), а так же знать максимальный размер и количество кусков таких типов (это чтоб контроллировать выход за рамки возможного);
3) у компилятора с поддержкой overlays кроме обычных операций jmp() call() есть так же jmp_far() и call_far() которые перед самой передачей управления изменят конфигурацию памяти на нужную (рассчитанную компоновщиком, который тоже должен знать про overlays);
4) сами программы должны быть написанны с учетом overlays (и возможно иметь настройки сколько страниц использовать и какого размера общая страница, стек и подгружаемые страницы), а такие алгоритмы типа "рекурсионные" вообще никуда не годятся так как рассчитанны на "резиновую" память.
Я в этой теме выкладывал свои архивы (стр. 13). В моих архивах есть дискета "sp_basic.trd". На ней в виде бейсик-файла находится запускаемый образ ASC CP/M. Для запуска необходимо иметь Спектрум с минимум 144Кб ОЗУ, из которых "лишние" 16К подключаются по адресам 0000-3FFF. Также должны быть открыты порты TR-DOS, то есть доступ к ним должен быть возможен не только из TR-DOS, а из любого места без ограничений. Подключение доп. страницы по адресам 0000-3FFF выполняется по команде OUT 123,2.
Также в моих выложенных архивах имеются файлы, запускаемые под CP/M. К сожалению, перед запуском их необходимо сначала записать на дискету в формате ASC CP/M, а это нетривиальная задача.
Я когда-то модифицировал эмулятор Unreal, чтобы он поддерживал все вышеупомянутые режимы. До конца дело не довел, поэтому в общий доступ не выкладывал пока. Возможно, имело бы смысл довести до конца этот проект эмулятора и подготовить образы дискет, чтобы можно было беспрепятственно запускать ASC CP/M. Просто до сих пор никто не проявлял особого интереса к этой теме, поэтому и мотивации не было. Возможно, имеет смысл создать отдельную тему по этой ОС и туда все выкладывать.
Только что выложил файлы, с помощью которых можно как следует пощупать эту систему, в этой теме.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)