РЕЗИДЕНТНЫЕ КОМАНДЫ
6.1 ERA[X:] AFN СТИРАНИЕ ФАЙЛОВ С ДИСКА
6.2. DIR[X:] [AFN] ВЫВОД КАТАЛОГА ДИСКА ИЛИ РЯДА ФАЙЛОВ
6.3. REN[X:] UFN1 = UFN2 ИМЯ ФАЙЛА UFN2 ЗАМЕНЯЕТСЯ НА ИМЯ UFN1
6.4. SAVE N [X:] UFN ЗАПИСЬ ИЗ TPA N СТРАНИЦ ПО 256 БАЙТ
НАЧИНАЯ С АДРЕСА 100H В ФАЙЛ С ИМЕНЕМ UFN
6.5. TYPE [X:] UFN ПЕЧАТЬ ФАЙЛА UFN В КОДАХ ASCII
6.6. USER N УСТАНОВКА НОМЕРА ПОЛЬЗОВАТЕЛЯ
Характеристики DOS
Загрузка DOS осуществляется при начальной загрузке СР/М [2]. После начальной загрузки память машины имеет следующую структуру:
Адрес | Содержание памяти |
0000h | область системных параметров (ОСП) |
0l00h | область программ |
адрес1 | 1 процессор консольных команд (СРР) |
адрес2 | система логического ввода/вывода (BDOS) система управления вводом/выводом |
адрес3 | система физического (BIOS) ввода/вывода |
- адресЗ+3 находится в слове по адресу 000lh;
- адрес2 находится в слове по адресу 0006h;
- адрес1 = адрес2 - 0806h.
DOS состоит из двух частей: системы логического ввода/вывода (BDOS) и системы физического ввода/вывода (BIOS). BDOS совместно с процессором консольных команд перезагружается в ОЗУ при выполнении процедуры "горячий старт". BIOS загружается при выполнении процедуры "начальная загрузка".
BDOS состоит из процедур обмена с диском и другими логическими устройствами и является аппаратно-независимой частью DOS.
Логические устройства имеют следующие имена: CON, RDR, PUN, LST и так далее.
Пользователь должен помнить, что:
- ввод/вывод на логическое устройство CON является вводом/выводом на консоль;
- ввод с логического устройства RDR является вводом с перфоленты;
- вывод на логическое устройство PUN является выводом на перфоленту;
- вывод на логическое устройство LST является выводом на печать.
BIOS зависит от конкретных аппаратных средств. BIOS содержит драйверы работы с физическими устройствами и обеспечивает выполнение процедур "горячий/холодный старт".
Область памяти, занимаемая BDOS, может быть использована программами пользователя, не работающими с периферийными устройствами (чисто процессорные задачи). Подобные программы в конце работы должны обратиться к процедуре "горячий старт" (переход к адресу 0000h), в результате чего с диска будут вновь загружены СРР и BDOS, и управление будет передано на командный уровень СРР.
Обращение к DOS. Входная и
Выходная информация.
Доступ к процедурам DOS из программ пользователя осуществляется с помощью передачи номера функции и параметров через единую точку входа. Безусловный переход на точку входа DOS стоит по адресу 0005h.
При обращении к DOS из программы пользователь должен подготовить следующую информацию:
- номер функции DOS в регистре С;
- параметры заданной функции а паре регистров DE при передаче адреса или в регистре Е при передаче однобайтного параметра.
При возврате в программу пользователя однобайтный результат возвращается в регистре А, двухбайтный результат - в паре регистров HL.
Кроме того на выходе из DOS содержимое регистров А и L, а также регистров В и H совпадает.
Перечень функций DOS с указанием их номеров приведен ниже:
0 - "горячий старт" (перезагрузка ССР в BDOS);
1 - ввод символа с консоли;
2 - вывод символа на консоль;
3 - ввод символа с логического устройства RDR;
4 - вывод символа на логическое устройство PUN;-
5 - вывод символа на логическое устройство LST;
6 - прямой ввод/выгод символа с консоли;
7 - получить байт назначения устройств (БНУ);
8 - установить байт назначения устройств (БНУ);
9 - вывод строки символов;
10 - чтение консольною буфера;
11 - опрос статуса консоли;
13 - сброс дисковод системы;
14 - активизация диска;
15 - открытие файла:
16 - закрытие файла;
17 - поиск первого;
18 - поиск следующего;
19 - стирание файла;
20 - последовательное чтение;
21 - последовательная запись;
22 - создание файла;
23 - переименование файла;
24 - получить вектор установленных дисков:
25 - получить номер активизированного диска;
26 - установить адрес буфера обмена;
28 - записать ключ защиты диска;
29 - получить вектор R/O для дисков;
30 - установить индикатор доступа файла;
32 - считать/установить номер пользователя;
33 - прямое чтение;
34 - прямая запись;
35 - вычислить размер файла;
36 - установить номер записи для прямого доступа;
37 - сбросить защиту записи;
40 - прямая запись на обнуленный блок.
Функции с номерами 12, 24, 27, 31, 38, 39 и больше 40 не используются. При обращении к функциям с перечисленными номерами управление передается в программу пользователя, состояние регистров не определено.