stringtranslate.com

MSX-DOS

MSX-DOS — устаревшая дисковая операционная система, разработанная дочерней компанией Microsoft в Японии для 8-разрядного стандарта домашних компьютеров MSX и представляющая собой нечто среднее между MS-DOS v1.25 и CP/M-80  v2.2.

MSX-DOS

MSX-DOS и расширенный BASIC с поддержкой 3½-дюймовых дискет были одновременно разработаны Microsoft и ASCII Corporation в качестве программного и аппаратного стандарта для стандарта домашних компьютеров MSX, чтобы добавить дисковые возможности к BASIC и предоставить системе более дешевый программный носитель, чем картриджи памяти , и более мощную систему хранения, чем кассетная лента . [1] Стандартный BIOS нерасширенного компьютера MSX не имел встроенной поддержки дисков, но предоставлял возможности для расширения диска, поэтому дополнительная система расширения дискеты поставлялась со своим собственным расширением BIOS ROM (встроенным в контроллер диска ), называемым BDOS .

Этот BIOS не только добавил команды поддержки гибких дисков в MSX BASIC , но и загрузочную систему, с помощью которой можно было загрузить настоящую дисковую операционную систему.

MSX-DOS была двоично совместима с CP/M-80 , что позволяло компьютеру MSX легко получать доступ к его обширной библиотеке программного обеспечения, доступного за очень небольшую по тем временам цену.

Обработка загрузки

После загрузки MSX-DOS система ищет на диске MSX-DOS файл COMMAND.COM и загружает его в память. [2] В этом случае BDOS обходила BASIC ROM, так что все 64 КБ адресного пространства микропроцессора Z80 внутри компьютера MSX можно было использовать для DOS или для других загрузочных дисков, например, для игр на дисках. В то же время исходные BIOS ROM все еще можно было получить через механизм « переключателя банка памяти », так что программное обеспечение на основе DOS все еще могло использовать вызовы BIOS для управления оборудованием и другими программными механизмами, предоставляемыми основными ROM. Кроме того, благодаря BDOS ROM, базовые возможности доступа к файлам были доступны даже без интерпретатора команд с использованием расширенных команд BASIC.

При первом запуске COMMAND.COM ищет необязательный пакетный файл с именем AUTOEXEC.BAT и, если он существует, выполняет указанные в нем команды. [3] Если MSX-DOS не вызывается и запускается Disk BASIC , вместо него будет выполнена программа BASIC с именем «AUTOEXEC.BAS», если она присутствует. [3]

Сходства и различия между MSX-DOS и MS-DOS

Команды

Ниже приведен список внутренних команд, поддерживаемых MSX-DOS. [4]

История развития

10 августа 1983 года Пол Аллен позвонил Тиму Патерсону , оригинальному автору 86-DOS и MS-DOS 1.x, и попросил его сделать « версию MS-DOS для Z80 » для стандарта MSX. [5] В то время Патерсон был занят тем, чтобы подготовить первый продукт своего стартапа Falcon Systems к запуску, поэтому он предложил несколько других разработчиков, но Аллен сказал, что уже просил. Аллен торопился, и никто другой не мог уложиться в его сроки. Аллен и Патерсон наконец согласились, и 17 августа они подписали соглашение о создании «MS-DOS 1.25 для Z80» за 100 000 долларов США и права для компании Патерсона на распространение MS-DOS 2.0 , 2.5 и 3.0 с аппаратным продуктом без роялти. [6]

Для Патерсона это был в основном процесс перевода. Он уже написал программу перевода языка ассемблера с Z80 на 8086 ( TRANS.COM ). В этом случае он вручную переводил в другом направлении. Поскольку MS-DOS 1.x был смоделирован по образцу API CP/M и мог запускать приложения CP/M, которые были переведены на уровне исходного кода на 8086, это означало, что MSX-DOS мог запускать программы CP/M напрямую. [6]

Для этого проекта Патерсон также написал эмулятор Z80 , работавший под управлением MS-DOS, что позволило бы ему выполнить весь проект разработки под MS-DOS. MSX-DOS, которую он писал, имела уровень системы ввода-вывода , который напрямую взаимодействовал со уровнем системы ввода-вывода машины MS-DOS, на которой запускалась эмуляция. Это давало MSX-DOS прямой доступ и контроль над форматом диска. Большая часть основного кода была управлением файлами, поэтому это было необходимо для его тестирования. [6]

К 2 октября 1983 года у него были Microsoft BASIC и макроассемблер Microsoft M80, работающие под управлением MSX-DOS. Несколько дней спустя он закончил кодирование COMMAND.COM. Он исправил некоторые ошибки и продемонстрировал MSX-DOS Полу Аллену 11 октября. Бета- тестовая версия была официально доставлена ​​26 октября 1983 года. Она включала пасхальное яйцо , которое печатало имя Патерсона. Имя было закодировано с помощью кода FAT, поэтому его нельзя было найти, просто выполнив поиск по файлу. После доставки бета-версии код был отправлен в ASCII в Японии. Они создали систему ввода-вывода для машины MSX. Этот код был разработан Джеем Судзуки. Он разгадал пасхальное яйцо и добавил к нему свое имя. [6]

У ASCII возникли проблемы с запуском MSX-DOS на реальной машине MSX. Они не предоставили Патерсону настоящую машину MSX, а вместо этого отправили его в Токио 28 января 1984 года, чтобы он помог им. Оказалось, что ASCII модифицировал код, не сказав об этом Патерсону, поэтому они работали не с одной и той же кодовой базой . Патерсон провел три дня в Токио, разбираясь с проблемами, и вернулся в Сиэтл. [6]

Крис Ларсон из Microsoft и Джей Судзуки посетили Патерсон в Сиэтле в конце февраля и начале марта 1984 года. Они привезли машину MSX с внутрисхемным эмулятором (ICE) для отладки. Они заставили все работать, и 23 апреля 1984 года Microsoft приняла поставку и сделала окончательный платеж за MSX-DOS для Патерсона. [6]

На момент написания MSX-DOS существовала только одна популярная дисковая операционная система для 8-битных микропроцессоров, совместимых с Intel 8080 , — система CP/M-80 компании Digital Research . Она также часто использовалась с системами Z80 , поскольку Z80 использовала расширенную архитектуру 8080. Собственная дисковая операционная система Microsoft также была вдохновлена ​​CP/M.

Чтобы иметь возможность запускать (слегка измененное) программное обеспечение CP/M, Microsoft решила реализовать функциональность, похожую на основные части CP/M BIOS, процедуры, которые системы CP/M использовали для выполнения определенных задач по работе с дисками, таких как открытие файлов и т. д. Вместо того, чтобы основывать командный процессор на CCP CP/M , который был известен некоторой недружелюбностью к пользователю, был использован интерпретатор командной строки (COMMAND.COM), основанный на его аналоге MS-DOS. Microsoft также выбрала собственную файловую систему FAT12 вместо методов файлов CP/M. Это гарантировало, что дискеты MSX-DOS можно было использовать на машине MS-DOS, и что использовалась только одна единая система форматирования и файлов. Это было важным решением, поскольку диски CP/M часто не были взаимозаменяемыми между машинами, несовместимые схемы форматирования дисков были фактором этого.

Microsoft также добавила стандартный набор дисковых команд в MSX-DOS, которые были совместимы с MS-DOS, но не с CP/M. Наконец, они преобразовали свою конвейерную систему из MS-DOS в MSX-DOS. Получившаяся DOS была системой, которая была намного удобнее для пользователя, чем CP/M, но была (в принципе) совместима с основными программными пакетами CP/M, такими как WordStar , Turbo Pascal и ассемблер "M80" и компоновщик "L80" .

Улучшенные версии

Команды

Следующие команды поддерживаются MSX-DOS версии 2. [7]

Кроме того, ASCII предоставил следующие инструменты MSX-DOS2. [8]

Смотрите также

Ссылки

  1. ^ https://www.msx.org/wiki/MSX-DOS/The_History_of_MSX-DOS История MSX-DOS
  2. ^ Руководство пользователя SVI MSX (M-246) 1985 (Операционная система Spectravideo MSX DOS Disk) Начало работы, раздел 2.1
  3. ^ ab "Глава 3 - MSX-DOS". Техническое руководство по MSX2. ASCII Corporation . 1987. Архивировано из оригинала 28.09.2019 . Получено 27.03.2020 .
  4. ^ MSX Техническая книга данных
  5. ^ Мейс, Скотт (1984-04-30). "Дисковод для ПК-младшего, обеспечивающий 256 Кбайт дополнительной оперативной памяти - Infoworld Magazine, стр. 15, том 6, выпуск 8, Фрамингем, Массачусетс". Wernerkai . Получено 16 мая 2015 г.
  6. ^ abcdef Патерсон, Тим (17 февраля 2014 г.). «История MSX-DOS». Джорито, Маггу, Джон Хассинк, Ресурсный центр MSX . Проверено 31 мая 2014 г.
  7. ^ MSX-DOS версия 2
  8. ^ MSX-DOS 2 Tools (Руководство пользователя) (на японском и английском языках). ASCII Corporation . 1989. Архивировано из оригинала 2020-05-09 . Получено 2020-03-27 .