Info Guide #12
31 декабря 2017

Системки - история операционной системы CP/M для Спектрума (часть 1).

<b>Системки</b> - история операционной системы CP/M для Спектрума (часть 1).
   История CP/M на Speccy
Alone Coder

   Самая  распространённая ОС для 8-битных
компьютеров -CP/M.Это  очень простая ОС, 
предоставляющая процедуры доступа к файлам 
и консоли. Зато  под  неё, по  сравнению с 
более  серьёзными  поздними  разработками, 
очень много софта. 
   Когда-то делали специализированныеCP/M
компьютеры  на шине S-100, а для некоторых 
других  компьютеров  дляCP/Mдаже ставили 
платы расширения с процессором Z80. Но нам 
интересно, какCP/Mживёт на Спектруме. 

                  * * *

  CP/M помещается в адресном пространстве
8080 (и Z80 ) следующим образом: 
   - с адреса#0000  точка выхода из прог─
раммы, потом основной вызовCP/M по адресу
#0005, далее  небольшая область переменных
(подробнее можно почитать тут:
http://koapp.narod.ru/
tehlit/system/dos/cpm/cpm.htm );
   - с адреса #0100  загружается  текущая
исполняемая программа;
   - впритык к концу адресного пространст─
ва  располагается сам кодCP/M. Он состоит
из диспетчера функцийDOS (BDOS), драйвера
под конкретный компьютер(BIOS) и буферов;
   - ниже  могут  лежать резидентные прог─
раммы.

Vadim даёт пример для Profi CP/M: 

┌──────────────────────┐ FFFFH
│       Область        │ вершина памяти
│   Concurrent BIOS    │ (64K)
├──────────────────────┤ F800H
│    Буфера DOS при    │ Интерфейс CBIOS
│   обмене с дисками   │  <<<<<<<<<<
├──────────────────────┤ F400H
│  Область расширения  │ дисковые таблицы
│         BIOS         │      (DPB)
├──────────────────────┤ F000H
│  Диспетчер функций   │ Расширение BIOS
│         DOS          │
├──────────────────────┤ DOSTOP - этот
│      COMMAND.COM     │ адрес хранится
│ Интерпретатор команд │ по адресу 6
├──────────────────────┤ XXXXH =
│Transient Program Area│ = DOSTOP-ODOOH
│   (TPA) - область    │   (примерно)
│ транзитных программ, │
│т.е. задач типа *.com.│
│ Её объём в PROFI-DOS │
│ равен примерно 58KB. │
│На Profi в 4000H-7FFFH│
│      лежит окно      │
│проецирования страниц.│
├──────────────────────┤ 0100H
│                      │ Адрес старта
│                      │ программ типа com
└──────────────────────┘ 0000H
                         Точка рестарта
                         (выход в ОС)

Максагор даёт пример для ATM Turbo CP/M: 

 - #0000-#OOFF:SPA (область системных па─
раметров)
 - #0100-#DЗFF:TPA (область COM-программ)
 - #D400-#DCO5:CCP (интерпретатор команд─
ной строки, независим от железа,на котором
запускается)
 - #DCOб-#E9FF: BDOS  (диспетчер  функций
DOS, независим от железа,на котором запус─
кается)
 - #EAOO-#F7FF:BIOS  (стандартная керналь
низкоуровневых "железозависимых" функций в
начале, а  в конце - таблицы настроек фай─
ловой  системы логических устройств DPB, а
также (с #F000 до #F7FF) зарезервированное
место для карт заполнения устройств
 - #F800-#FFFF: System  Monitor - монитор
наиболее низкоуровневых системных функций,
куда  обращаются  "железозависимые функции
BIOS. Представляет  собой  керналь функций
по  прямому доступу к низкоуровневым драй─
верам  физических  устройств ввода-вывода,
драйверу экранной консоли, а в конце - ве─
ктор  назначенных  физических устройств на
конкретные буквы дисков, а также описатели
низкоуровневых  форматов подключенных уст─
ройств.

  Теоретически можно верхнюю часть (BDOS
иBIOS) спрятать в теневой памяти,если по 
адресу5будет что-то посложнееJP DOSTOP.
Но так никто не делает - во многом потому,
что  некоторые  программы смотрят число по
адресу 6,чтобы  узнать  размер свободной 
памяти (и ошибаются, потому  что  не знают
про резиденты).А некоторые даже начинаются
с криминальногоLD HL,(6): LD SP,HL.Впро─ 
чем, их можно патчить при загрузке или ис─
пользоватьRST...

   В отличие  от многих наших клонов, фир─
менный  Спектрум позволял без всяких дора─ 
боток отключать ПЗУ  и подменять его внеш─ 
ней памятью, подключаемой через слот. Про─ 
блема  только  в том, что ряд программ под 
CP/M требует32KОЗУ, что  пересекается  с
48K экраном.Эта проблема решается на 128K. 
А на +3 можно отключить ПЗУ даже без внеш─ 
них устройств. 
   Про наличиеCP/Mдля ZX81 ничего не из─
вестно, да  и про Микродрайв история умал─ 
чивает. ПоэтомуCP/Mу нас начинается сра─ 
внительно  поздно. Зато у нас их МНОГО! :) 
Во  многом потому, что было огромное коли─ 
чество  разнообразных дисковых интерфейсов 
(например, тут перечислено34штуки: 
http://problemkaputt.de/zxdocs.htm )
и клонов Спектрума с разными апгрейдами. 

                 1985 год

   Опубликована  схема  расширения  памяти
48K  на  одной микросхеме, в статье описан 
"CP/M режим":http://
8bit.yarek.pl/upgrade/zx.eniac/index.html
   Неизвестно,под какой дисковый интерфейс
планировался этотCP/M и был ли он реально
написан. Возможно,это были просто фантазии
автора(кто автор? Troller? Чех ли вообще?)
по мотивам схемы расширения памяти фирмен─
ного  48K, продававшейся  через  журнал ZX
Computing в1984 году. 

              1986-1987 годы

   В Португалии пишетсяCP/M для дискового
интерфейса  FDD 3000 . Известна  версия со
следующими копирайтами (http://
timex.comboios.info/PT/tmxtechcpm.html ):
CP/M* Versio para o Timex FDD 3000
Versio de distribuicio premilimar:86.01.17
Copyright por:
TMX PORTUGAL
APARTADO 2
MONTE DA CAPARICA
PORTUGAL
* - CP/M e uma marca registada da
Digital Research
   По всей видимости, использовался видео─
режим  512x192  на Timex'е, чтобы выводить
80 символов в строке.

   В 1986  году в Польше фирма Mera-Elwro
выпускает компьютер Elwro 800 Junior, пре─
дназначенный  для  использования в школах.
"Комплектовался внешним блоком из двух ди─ 
сководов, для  работы с которыми использо─ 
валась операционная системаCP/J- модифи─ 
кацияCP/M.Компьютеры  можно было объеди─ 
нить в локальную сетьJUNET." Есть большая
вероятность, что это был перемаркированный
Timex. 

                 1987 год
                    v      v
   В Чехословакии Jiri Lamac выпустил уст─
ройство LEC Memory Extension.
  "A   plug-in   memory  system  for  48K
machines  and  clones. Three modifications
were available: 80K, 272K and 528K memory.
  Jiri  wrote his own ROM called LEC ROM.
It  fixes  some  well-known  bugs  in  the
original  ROM, delivers a better de-token─
ized  BASIC  editor and a few commands for
copying data between RAM banks.This ROM is
optional, asCP/Mand custom format progr─ 
ams work with the original ROM as well.
  This  add-on  came with a software tape
(CP/M 2.2 for the LEC Memory Extension)."
http://www.worldofspectrum.org/
infoseek.cgi?regexp=^LEC+Memory+Extension$
&pub=^Jiri+Lamac$

   Появился также дисковый интерфейс Aerco
FD-68 Floppy Disc Drive с операционной си─ 
стемойRP/M:
  "The  FD-68  interface is 4 inches tall
and  6  inches  wide  with  a through edge
connector for adding other peripherals. It
had   the  capability  of  having  a  256K
RAMdisk  (in  64K chunks) onboard, and had
CP/M  capability if you purchased an extra
eprom.  Adding   256K   to  the  interface
required  an  additional  power supply and
some  re-wiring  of the board to add a new
circuit for the power supply."
http://cs.wikipedia.org/wiki/Aerco_FD-68
http://www.vintagecomputer.net/ciscЗб7/
Family%2OComputing%2OMarch%201987%20
Machine%2OSpecifics.pdf

   В Португалии  разработан  Timex 3256 со
встроеннымCP/M . Он не был выпущен на ры─
нок  или выпущен в малом числе экземпляров
(известен только один экземпляр).

                 1988 год

   Для   ZX Spectrum +3 (1987)   появился
Spectrum CP/M Plus:
http://www.worldofspectrum.org/
infoseekid.cgi?id=0009420
   Машина имела встроенный 3-дюймовый (без
1/2) дисковод и порт отключения ПЗУ.

   В Румынии  Vasile Prodan разработал ко─
мпьютер Cobra(COmputer BRAsov). Его прои─
зводили ITCI Brasov Romania (город Брашов)
и Elektronenrechnerfabrik.
ОЗУ: 64 КБ или 80 КБ (для версии с CP/M)
Контроллер дисковода
Операционная система:
- Sinclair BASIC
- OPUS
- CP/M 2.2+
http://speccy.info/Cobra_(компьютер)

   Известно  также  о схеме Sinsoft(Pavel
Troller s Cisarem) в конце 80-х:http://
retrocip.cz/uplne-alternativni-spectrum/
   Будто бы была схема, позволяющая запус─
тить CP/M (возможно, именно она упомянута
выше  под 1985  годом), а Sinsoft написал
SINDOS (из которой произошлаMDOS ). 

                 1989 год

   В ГДР  около1989 года  институт  AdW -
ZKI  (Academy  of  Science  of  the  GDR, 
Central   Institute  for  Cybernetics  and
Information Processing) выпустил компьютер
KuBбЧ, на  котором можно было использовать 
CP/M (см. статью utz в ACNews #60 ).

                 1990 год

   В журнале "Радио" 1990-07 нас. 79 опу─
бликована  реклама программирования ПЗУ, в
том   числе   компьютеров,  совместимых  с
"ZX-Spectrum", и  ПЗУ  их  ДОС (КООПЕРАТИВ 
"КАПЛЯ" - Рязань), та же фирма продаёт ко─ 
мплект  для  сборки  контроллера дисковода
дляCP/M на ВГ93 или 8272. Связаться с ни─
ми в Рязани не удалось.

              1990-1991 годы

   В1990 или 1991 году в Бресте был напи─
сан CP/M  для компьютера "Байт-01" (копи─
райт"1990 ЦЕРИКОПИК SOFT" ). Этот компью─
тер позволял выводить80 символов в строке
без  каких-либо доработок, потому что была
встроенная  схема 512x192, как на Timex'е.
Проблема  с датировкой в следующем: первая
версия компьютера "Байт" вышла в1989 (БПО
СВТ, Брест), но у неё  дисковода  не было. 
Компьютер  "Байт-01"  с дисководом вышел в
1992  (БЭМЗ).  В  журнале  "Радио" 1992-07
на с. 26  в таблице есть компьютер "Байт"
(Брест),с КНГМД,но безCP/M. Видимо,в 1990
году был только прототип, а в1992 запуще─
но серийное производство.

              1991-1992 годы

   В1992 году  в Румынии выпущен CIP-04 -
клон  +3  с256K ОЗУ. Там  имелся какой-то
CP/M.
   Возможно, такой же был в других румынс─
ких клонах - HC2000 и TIM-S+.

   НПП "ЭКСПОПРИБОР" (Обнинск) опубликовал
в журнале "Радио" 7-92 нас.64 рекламу ко─
нтроллера  диска "ДЕМИУРГ" сCP/M'ом - для
"Синклера-48". 

   В1992 году в Москве CP/M был адаптиро─
ван  под  Beta 128 Disk Interface  для ATM
Turbo  и Profi (оба компьютера появились в 
1991  году  и  сразу  явно  с  прицелом на
CP/M - имеются специальные графические ре─
жимы).CP/M для  Profi грузится с дискеты,
аCP/M для ATM Turbo встроен в ПЗУ.
Максагор> 
  Ядро   (CCP+BDOS+BIOS+Monitor)  системы
действительно хранится в ПЗУ, но потом оно
копируется  в  ОЗУ  и целиком используется
там (так что возможно уже в процессе рабо─
ты изменять ядро, подгружать пользователь─
ские   уровни,  перехватывать  рестарты  и
проч.), а в ПЗУ остаются только низкоуров─
невые  драйвера дисков и консоли. При этом
и  саму ПЗУ, просто через внесение измене─
ний  в  настройки диспетчера памяти (ибо в
ПЗУ  он  настраивается только один раз при
первичном входе в CP/M) можно подменить на
страницу ОЗУ со своей копией драйверов.
   Содержимое  ПЗУ  ATM Turbo  могло также
грузиться с дискеты или даже с ленты, если
вместо  большого ПЗУ установить только ма─
ленький2KB загрузчик.
Максагор> 
  Такая же схема подмены была реализована
и в ATM-turbo 2 (v6.xx).В последней версии
TURBO 2+ (v7.xx),уже от фирмы МикроАРТ, от
данной схемы подмены ПЗУ в связи с удешев─
лением  микросхем ПЗУ и большей их доступ─
ности  отказались  и  в последних  версиях
платы изъяли.
   В рекламе1991 года  CP/M ещё не упоми─
нается.CP/M  для  ATM Turbo,  как и ПЗУ в
целом и ряд утилит, в том числе нортонооб─
разный X-Commander, реализовал  Роман Хва─
тов(XVR - PRODUCT). С помощью утилиты на─ 
стройки CP/M  для  ATM Turbo поддерживает
разные форматы дисков, но по умолчанию там
разметка отTR-DOS. В комплекте к настрой─
щику прилагаются текстовые файлы с разными
описателями для настройки флоппика на дис─
киCP/M от Роботрона, Корвета, Профи и др.
Плюс можно самостоятельно создавать описа─
тели под иные форматы.
   В архиве исходников от МикроАрта (авто─
ров ATM Turbo ) обнаружена документация от
советского  компьютера  СМ18001979 года -
видимо,CP/M брали именно оттуда (ср. ниже
про "Кворум" ).

Vadim> 
   В  свое  время  при выборе операционной
системы  для  своего творения разработчики 
Профи  остановились на МикроДОС, т. к. она 
выглядит более прилично, чем различные ва─ 
рианты CP/M V2.2 (Корвет, АТМ и др.) и ус─ 
тановить её значительно проще.Точно не из─ 
вестно, с  какой платформы была перенесена 
система,сейчас,наверное, это уже не важно, 
главное  то, что  к 1992  году МикроДОС на 
Профи заработал.Видимо,в честь изначально─ 
го названия компьютера (Profi ZX-Spectrum) 
систему переименовали в SP-DOS. 
  ...
   Это операционная система МикроДОС, раз─
работанная в 1984 г. Международным Научно- 
Исследовательским Институтом Проблем Упра─ 
вления. 
   Различные  версии системных дисков,под─
писанные как CBIOS xx.yy,- это её варианты 
и доработки с различным окружением. 
   Основным  отличием МикроДОС от CP/M 2.2
является другая структура BIOS и драйверов 
устройств.В целях совместимости с CP/M 2.2 
BIOS этой системы эмулируется. Кроме того, 
МикроДОС  может  перенаправлять  (!) ввод/ 
вывод  с консоли из/в файл. Также расширен 
модуль  BDOS, в  частности, поддерживаются 
некоторые функции системы CP/M 3. 
  ...
   В 1992 году  появилась новая разработка
- Concurrent BIOS - изжившая многие недос─ 
татки предыдущего BIOS'а. В дальнейшем со─ 
вершенствование  шло именно в этом ключе - 
т.е. развитие модуля BIOS и драйверов, мо─ 
дуль BDOS совершенно не менялся. 
  ...
   Слово  "Concurrent"  в  названии видимо
было выбрано по аналогии с названиями сис─ 
тем фирмы Digital Research: Concurrent DOS 
и  Concurrent  DOS/86. Первая версия CBIOS 
была написана Крестьяниковым А.А. (KiiA) в 
1992 году. Впоследствии появились и следу─ 
ющие версии,сейчас же в состав PQ-DOS вхо─ 
дит версия 4.6. 
   CBIOS осуществляет вызов драйверов,под─
программ  в  страницах, вызов обработчиков 
прерываний, хранение  некоторых параметров 
системы. Структура модуля CBIOS почти пол─ 
ностью соответствует БСВВ системы МикроДОС 
- т.к.изначально на Профи была установлена 
именно эта система. 

   Камиль  Каримов  (Екатеринбург), он  же
Caro, сделал версию CP/M-80 для 48K клона 
"Кворум БК-04" со специальным контроллером 
дисковода.

Caro> 
   Когда  в  1991 году я получил предложе─
ние  от  фирмы "Кворум" разработать модель 
Спектрум-совместимого бытового компьютера, 
была  поставлена задача заложить в эту мо─ 
дель возможность работы с дисковым накопи─ 
телем. И  поскольку  к тому времени у меня 
уже был опыт работы с компьютерами "Робот─ 
рон 1715" и "Корвет", в  которых  дисковой 
ОС была именно CP/M-80, то она и была выб─ 
рана в качестве ОС для "Кворума". 
   Для  работы  с этой системой необходимо
было   обеспечить  отключение  из  нулевой 
страницы  памяти ПЗУ и переключение видео- 
памяти с адреса 4000h как можно выше в ад─ 
ресном пространстве Z80. 
   Для  этого в системном разьеме два кон─
такта были зарезервированы под сигналы от─ 
ключения  ПЗУ  и переключения видео-памяти 
на  адрес 0C000h. В схеме "Кворум БК-04" и 
"Кворум 64" специального  порта для управ─ 
ления  этими  сигналами  не предусмотрено, 
поскольку  такой  порт (с адресом 00h) был 
заложен в разработанном в том же 1991 году 
контроллере  дисковода  (который затем был 
несколько раз модернизирован). 
   В  прошивке  этих и последующих моделей
"Кворума" была встроена  процедура началь─ 
ной загрузки с дискет  ОС  CP/M-80. Формат 
дисков был заложен такой же,как и в "Робо─ 
трон 1715" и "Корвет" - двухсторонний диск 
с 80 дорожками  и 5 секторами по 1 KB каж─ 
дый, всего 800 KB на диске. 
    Загрузчик вызывается по нажатию клави─
ши <NMI> - это справедливо  для всех моде─ 
лей "Кворум". 

   К1992  году (по Sinclair User Sep'92 )
CP/M  уже  был  и  на питерском компьютере
Hobbit. 

              1992-1993 годы

  MOA CP/M  под  Scorpion (копирайт 1992,
но  компьютер  и  описание  вышли только в
1993 ):
  "Работает на Скорпионах, Каях и совмес─
тимых.Экран стандартный,64 символа в стро─
ке.Дискеты по физическому формату совпада─
ют с ТРДОСными,из среды ТРДОС выглядят как
диски  с единственным файлом boot.B . Есть
рамдиск C: на 160 кб.
  Прилагается утилитка, позволяющая наст─
роить  любой драйв на любой диск от другой
CP/M машины. Крайне тормозной вывод на эк─
ран (печаталка из TLW2),поэтому работать в
ней  тяжко. 47616 (#BAOO) байт TPA (память
под программу)."
CP/M 2.2 OPERATING SYSTEM.
Short Description.
(c) Dobretskov Valery, Lithuania, 1993.

   В1992 году АТМ ("Ассоциация творческой
молодёжи")   развалилась   на   фирмы  АТМ
("Ассоциация  техники и микроэлектроники")
и МикроАРТ. Об этом можно почитать в хелпе
к Honey Commander.
   Поскольку  все  права на ПЗУ остались у
авторов  платы (МикроАРТ), фирма АТМ адап─
тировала для своего АТМ2 операционную сис─
темуMSX-DOS с компьютера MSX.
   В  отличие  от  обычногоCP/M,  MSX-DOS 
разрешает  файлы  с длиной, не кратной128
байт. А формат диска там -FAT12.
   При  этом  в  схеме  компьютера ATM2 (и
практически идентичного Turbo 2 от  Микро─
АРТа ) уже изначально был заложен контрол─ 
лер  жёсткого  диска  по  стандартуIDE. К
1993 году жёсткий диск уже точно работал.

   В 1992 - 1993  гг.  Михаил  Марковский
(KLUG) из Москвы сделалKlug CP/M для кло─ 
нов 128K с доработкой.
  CP/M 2.2 for ZX Spectrum 128 & Sinclair
PROFI.
  CP/M BIOS by Michael Markowsky.
   "Требует доработки компутера,чтобы под─
ключать  ОЗУ  с  адреса 0 и включать порты 
ТР-ДОС  на  прямой доступ из ОЗУ. На Профи 
работает без переделок, т.к.доработка а-ля 
Профи, т.е. надо сделать порт #dffd и один 
бит  из  него (4-й). Экран стандартный, 64 
символа в строке. Диски 800 кб с килобайт─ 
ными секторами,стартует по тому же принци─ 
пу, что  Исдос. Есть рамдиск E:. На ZX-128 
рамдиск  48  кб, на  Профи  880  кб. 51968 
(#CBOO) байт TPA.У меня есть её исходники, 
после  минимальных переделок на Скорпе за─ 
работало." 
   В   описании   есть   схема   доработки
Pentagon 128 для подмены ПЗУ по портуDFFD 
(по маске%XXX1XXXX ).

                 1994 год

   Andrew Strikes Code  и Alexander Shafir
(Днепропетровск) сделали ASC CP/M, по-ви─
димому, для "Львовского варианта" с какой-
то схемой расширения.
   Известно о работе этой версии на компь─
ютере  "Орель БК-08"  со схемой расширения
до256К "LSY-Computer" от Barmaley_m:
  "Режим эмуляции ПЗУ (некоторые страницы
расширения >128K используются для хранения
образа  бейсика-48, бейсика-128  и тр-дос,
чем достигается полная совместимость прог─
рамм, которые  не работают с Bogobasic). В
этой  же  схеме - две теневые страницы ОЗУ
вместо одной и работа с ASC CP/M.Также для
CP/M - драйвер  клавиатуры  Орели, с очень
большим набором дополнительных функций."
http://
zx-pk.ru/threads/3173-orel-bk-08.html?
p=88812&viewfull=1#post88812

   Михаил Марковский выпустил новые версии
KLUG CP/M.
  "Вот доработки 1994-1995 года:
   BIOS Ver 2.11
режим прерываний IM1 вместо IM2
   BIOS Ver 2.2
начальная  диагностика, поддержка  8255  и
LPrint III
   BIOS Ver 2.3
Дисководы A,B,C - физические,D отображает─
ся на A (phantom disk). Начальная проверка
на присутствие физических дисководов. Рас─
ширена  начальная  диагностика. В  консоли
добавлены ESC+'j' и ESC+7Fh. При печати на
принтере осуществляется перекодировка (та─
кая же,как и для вывода на консоль). Время
вывода  каждого знака на экран уменьшено в
среднем на 470 тактов (стало в полтора ра─
за быстрее).(фантомный диск D:используется
при копировании на одном дисководе. Напри─
мер, если вы хотите скопировать файл с од─
ного диска на другой, а дисковод y вас то─
лько один (A:),то можно сказать копиpyющей
программе,чтобы она копировала с A: на D:.
При  этом  система будет периодически про─
сить сменить  в дисководе A: диск-источник
и диск-приемник)."
   Внутри  сохранившейся версии содержатся
тексты:
ESL, Kharkov 1997 
KLUG CPM support v0.1 

                 1995 год

   Около1995 года для словацкого дисково─
го   интерфейса  MBO2 (1992)  адаптирован
CPM22QED:
  "CP/M 2.2. compatibile  software for ZX
Spectrum 128K with MBO2 interface."
   На  этом  дисковом  интерфейсе можно не
только  переключать странички в нижних16K
(как на LEC ), но и копировать черезDMA.

   В1995 году  Камиль Каримов (Caro) раз─
работал ZXCPM  с  базовым адресом #6000 -
для 128K без доработок.
Caro> 
    ZXCPM я сделал так, для прикола, чтобы
желающие  могли  опробовать эту систему на 
Спектрумах с TRDOS-контроллером без возмо─ 
жности  отключения ПЗУ из нулевой страницы 
памяти. 
   Кстати, в  исходниках  некоторых  прог─
рамм, разработанных для CP/M-80, я видел в 
начальных  настройках возможность задавать 
не  0-ой базовый адрес ОЗУ. Это меня и на─ 
толкнуло на мысль  скомпилировать  систему 
под адрес 6000h. 

Адреса: 
   BASE -  6000h
   TPA  -  6100h
   CCP  - 0D900h
   BDOS - 0E100h
   BIOS - 0F000h
Объём области TPA = 8000h 
7-я страница ОЗУ - экран + драйверы 

   В1995 году  в CP/M для Profi появилась
поддержка IDE HDD.
Vadim> 
   МикроДОС 5.30 сентябрь'95 - февраль'96.
АвторПисьменный Д.Г.
   Версия  BIOS  почему-то  перенесена  на
ДОС,хотя тот как был версии 2.6, так и ос─ 
тался. Основное  отличие - коды BDOS выне─ 
сены  в страничку, но область для загрузки 
программ не увеличена. BDOS  совершенно не 
изменился - не  исправлена ни одна из оши─ 
бок  и нет никаких новых функций, все сде─ 
лано в обход BDOS. 
   Драйвер  HDD  с разбивкой на логические
диски, но  одновременно могут быть подклю─ 
чены только два диска. Подключение внешней 
командой - очень  неудобно, но  в  обычной 
МикроДОС лучше не сделать. 

                 1996 год

Vadim> 
   Profi CP/M V3.30 сентябрь'96 г. -
по  сравнению с МикроДОС увеличено количе─ 
ство команд. 

              1997-1998 годы

   В 1997  году для компьютера Sam Coupe'
(1989) тоже адаптированCPM22QED. 

Vadim> 
   ProfiDOS V3.40 февраль'97 г.
   Модуль CCP убран из системы,вместо него
адаптирован  более совершенный command.com 
из  MSX-DOS  (MSX-DOS, кстати, написал Tim 
Paterson - автор  ОС, положенной  в основу 
первой  версии MS-DOS). BDOS вынесен в от─ 
дельную страничку. 
   Новые  драйверы  флоппи  дисков - более
корректные и более быстрые. Система управ─ 
ления  памятью. Обработчик  ошибок с более 
осмысленными текстами, программы могут ус─ 
танавливать свой  собственный  обработчик. 
   Новый  системный  загрузчик - команды в
CONFIG.SYS. 
   Новые  функции BDOS - управления расши─
ренной памятью, инсталляция оболочек, под─ 
держка времени на уровне ДОС. CopyK в этой 
системе  работать  отказался (в силу того, 
что он некорректно устанавливался). 

   ProfiDOS V3.50 октябрь'97.
   Новый  BIOS V5.0,  прогрессивная  схема
загрузки и размещения драйверов; поддержка 
палитры на уровне  BIOS; новый  обработчик 
ошибок; совершенно  изменен алгоритм обра─ 
щения БДОС к драйверу диска; изъяты ненуж─ 
ные (никогда не использовавшиеся) процеду─ 
ры: поддержка КОИ-7,прерывание ^D и прочие 
атавизмы.Новые драйверы HDD,FDD и E-диска. 

   DOS V4.0 сентябрь'98.
   Принято  решение о переходе  на  формат
записи, совместимый  с PC (FAT). С декабря 
по  начало  марта - методом последователь─ 
ного  улучшения переписаны почти все функ─ 
ции  модуля BDOS V3.50  на новые (с учётом 
нового  логического формата - FAT); Добав─ 
лены новые файловые функции, совместимые с 
MSX-DOS и MS-DOS (26h, 27h, 29h), значите─ 
льно  упрощающие  работу  с файлами, часть 
этих  функций заимствована из MSX-DOS. Мо─ 
дифицированы  почти все операции BDOS (не─ 
которые пришлось "выправлять", т.к. в Мик─ 
роДОС они были реализованы неверно!, неко─ 
торые функции были расширены и пр.). Вход─ 
ные и выходные параметры операций БДОС бы─ 
ли сверены по трем документам: руководство 
по  MS-DOS V3.30, MSX-DOS 1.0  и  описание 
"настоящей" CP/M V2.2. 
   От  МикроДОС  там  совершенно ничего не
осталось! 

   В  конце  марта  реализована  поддержка
подкаталогов,но не совсем корректно - мно─ 
го багов. 
   С апреля по сентябрь - никаких дальней─
ших разработок (торможение). 
   Сентябрь-октябрь - нормальная поддержка
подкаталогов,новый алгоритм работы системы 
- "процессы". Появилась возможность запус─ 
кать  любую программу из любой с возвратом 
в предыдущую  копию (с сохранением состоя─ 
ния)!!! Запускаемые  программы теперь выг─ 
лядят  как  обычные подпрограммы (аналогия 
полная)по отношению к "родительской" прог─ 
рамме.Кардинально переработан command.com. 
   Вследствие  нового формата диска и спо─
соба  обращения опять новые драйверы HDD и 
FDD.  Эмулятор  системы  ROM-BIOS, драйвер 
MS(PC)-MOUSE, ну, и всё остальное... 

              1998-1999 годы

   FKO  выпустил  свой"CP/M for Scorpion"
(по-видимому, на  основеZDOS - свободного
CP/M ):
  "Работает  на компутерах с Cache16k или
на Скорпионах.Нужна подпрограмма чтения из
порта  по адресу #ЗFFЗ в ПЗУ ТРДОС (или не
нужна,не помню уже).Экран или стандартный,
или  расширенный 512х192 монохром (85 сим─
волов в строке).Рамдиска нет.Диски A: и B:
по умолчанию настроены на стандарт MOA, C:
на ATM, D: на Профи. Своего диска загрузо─
чного  формата  не  имеет, запускается как
программа  из  среды ТРДОС. 55808 байт TPA
(#D900 байт). Исходники имеются."
  "Вот первая, наверное, заглюченная,вер─
сия CP/M для скорпа, с моим биосом :-) Оно
даже  работает! Я турбопаскакал запустил и
протащился :-) По крайней мере,в редакторе
от нажатия кнопки ENTER и до появления ку─
рсора  на новой строке проходит очень мало
времени, почти незаметно. В MOAшной версии
4 секунды :-( ) !
  Ну, и  свободной памяти на ~12 килобайт
больше. CCP и BDOS начинаются c Е200h,BIOS
с F800h - точно так, как в Профи.
  WARNING  ! Система  работает  только  с
дисками от MOAшной CP/M !!!
  ...
  ТОРМОЗА  ПРИ  РАБОТЕ С ДИСКОМ ОГРОМНЫЕ.
БОЛЬШЕ,ЧЕМ У МОА ! Но это, наверное,попра─
вимо. Всё должно работать на скорпах,каях,
петерсах  и  совместимых, при условии, что
в пзу  TR-DOS  по  адресу #ЗFFЗ  находятся
команды IN A,(C):RET."
http://code-zx.zxnet-archive.ru/id/511

          ...Прошло много лет...

   В  2015   году  Savelij13  адаптировал
MSX-DOS2  для  ATMЗ. Показывал её в работе 
несколько  раз, но не распространяет, пока
не реализуетFATЗ2 вместо FAT12 :)
   В2016 году Vadim сделал новый CP/M для
Profi - PQDOS, с  некоторыми возможностями 
из MSX-DOS2. 

             To be continued!



Другие статьи номера:

Помощь - об оболочке: произошли некоторые изменения в кнопках.

Предисловие - от авторов: Прошедшие два года были очень насыщенными.

Комьюнити - ZX Spectrum: Как это было в Рязани (1980-е).

Комьюнити - ZX Spectrum: Как это было в Рязани (1991-1993).

Комьюнити - ZX Spectrum: Как это было в Рязани (1993-1995).

Комьюнити - ZX Spectrum: Как это было в Рязани (1995-1997).

Комьюнити - сценеры шутят.

Код - этюды: вызов процедур по списку адресов.

Код - 3D демы на ZX Spectrum: история развития 3д движков.

Код - 3D движок: оптимизация на прообразе 3D Construction Kit.

Код - 3D движок: фрагменты.

Код - Посекторный движок для 3D-шутера от Destr.

Код - 3D скролл на ZX Spectrum (часть 1).

Код - 3D скролл на ZX Spectrum: реализация (часть 2).

Графика - графические редакторы: Старый софт от Alone Coder'а.

Графика - палитра: Палитровые эффекты в играх.

Музыка - биперные движки: Двоичная модуляция (часть 1).

Музыка - биперные движки: Двоичная модуляция (часть 1).

Системки - история операционной системы CP/M для Спектрума (часть 1).

Системки - история операционной системы CP/M для Спектрума: ограничения (часть 2).

Системки - NedoLang: Начало - самый простой процедурный язык (часть 1).

Системки - NedoLang: Путь к самокомпиляции (часть 2).

Системки - NedoLang: Проклятие языка Си (часть 3).

Системки - NedoLang: Памяти под самокомпиляцию не хватало (часть 4).

Системки - NedoLang: ускорение (часть 5).

Системки - NedoLang: Куда плыть дальше (часть 6).

Металлолом - Знакомьтесь, ATM-turbo 3! ATM-turbo 3 (v8.0) - что это такое и с чем его едят.

Металлолом - Из истории Betadisk'а: Дисковый интерфейс от Technology Research был.

Дикий ум - Компрессия: Первые компрессоры графики на Speccy (часть 1).

Дикий ум - Компрессия: Фичи с эвристикой, Потоковая декомпрессия, Сжатие музыки (часть 2).

Игрушки - От редакции: 2017-й год вышел очень богатым на события.

Игрушки - интервью с автором игры Mickey the Basic game (Sergio).

Игрушки - квест "Неожиданное Путешествие" - взгляд изнутри.

Игрушки - Nomad: интервью с автором скролл-шутера Nomad (Hippiman).

Игрушки - Скроллинг в Evo SDK.

Игрушки - Hints & Tips: Mickey, Nomad.

Мыльница - Errata: ошибки в Info Guide #11, ACNews #65.

Письма - отзывы о журнале от: raver, destr, sirx, survivor, Ellvis, Utz и Николая Амосова.

Об авторах - Авторы журнала.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Реклама - Реклама от Алексея Жабина.
Система - Описание программ : ZX-ASM3.0, Universal XAS Converter v2.1, Format Utility v2.01, Commander DOS v1.9, Super Catalog v1.12, Text Designer v1.0, The Dizzy Editor v1.0, Digital Studio for Covox, Alfasoft Music Crasher v2.13. Драйвер печати шрифтов , созданных в Mach v2.4.
Тайник - Egg-Head, Fivteens, Storm Lord, The Neverending Story II, Defender of the earth, Turrican I, Darius, Viaje, Bit the dust.
Смайлик - Разговор двух американских пилотов.
Сплошные приколы - Приключения Буратино.

В этот день...   31 марта