Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия Следующая версия Следующая версия справа и слева | ||
msx:bdos [2022-04-05 09:23] GreyWolf [MSX BDOS] |
msx:bdos [2022-04-10 10:33] GreyWolf [MSX BDOS] |
||
---|---|---|---|
Строка 4: | Строка 4: | ||
~~TOC 1-3 wide~~ | ~~TOC 1-3 wide~~ | ||
- | %%BDOS%% — Basic Disk Operating System (базовая дисковая операционная система) | + | %%BDOS%% — Basic Disk Operating System (Базовая Дисковая Операционная Система) |
- | ''MSXDOS.SYS'' — это интерфейс между программой пользователя и дисковыми функциями ROM. Кроме дисковых функций он включает в себя и некоторые базовые функции ввода/вывода для работы с другими устройствами, в частности, с консолью. Часть этих функций выполняется при помощи обращений к [[msx:bios|MSX BIOS]], а часть выполняется непосредственно программами MSX-DOS Kernel, которое находится в памяти постоянно. Этими же функциями пользуется и ''COMMAND.COM''. | + | ''MSXDOS.SYS'' это интерфейс между программой пользователя и дисковыми функциями ROM. Кроме дисковых функций он включает в себя и некоторые базовые функции ввода/вывода для работы с другими устройствами, в частности, с консолью. Часть этих функций выполняется при помощи обращений к [[msx:bios|ROM MSX BIOS]], а часть выполняется непосредственно программами %%MSX-DOS Kernel%%, которые находятся в памяти постоянно. Этими же функциями пользуется и ''COMMAND.COM''. |
По большей части, вектор встроенных вызовов ''MSXDOS.SYS'' совместим с [[cp_m:|]], что позволяет запускать в [[msx:dos|]] программы, написанные для [[cp_m:|]] без изменений, но, кроме этого, ''MSXDOS.SYS'' включает в себя и некоторые дополнительные функции, которых в [[cp_m:|]] нет. В частности, работу с датами и временем. | По большей части, вектор встроенных вызовов ''MSXDOS.SYS'' совместим с [[cp_m:|]], что позволяет запускать в [[msx:dos|]] программы, написанные для [[cp_m:|]] без изменений, но, кроме этого, ''MSXDOS.SYS'' включает в себя и некоторые дополнительные функции, которых в [[cp_m:|]] нет. В частности, работу с датами и временем. | ||
Строка 12: | Строка 12: | ||
Вектор обращений к функциям ''MSXDOS.SYS'' занимает в оперативной памяти адреса 0x0000–0x0100 и совпадает с [[cp_m:|]], а сами исполняемые программы находятся в верхней области памяти. | Вектор обращений к функциям ''MSXDOS.SYS'' занимает в оперативной памяти адреса 0x0000–0x0100 и совпадает с [[cp_m:|]], а сами исполняемые программы находятся в верхней области памяти. | ||
- | Адреса ОЗУ между 0x0100 и верхней [[msx:bios#work_area|рабочей областью]] ''MSXDOS.SYS'' называются "транзитной областью" (TPA — transient program area) и предоставляются программам пользователя. | + | Адреса ОЗУ между 0x0100 и верхней [[msx:bios#work_area|рабочей областью]] ''MSXDOS.SYS'' называются "транзитной областью" (TPA — transient program area) и предоставляются программам пользователя. Подробнее от TPA написано [[msx:dos#tpa|здесь]]. |
Вектор переходов в [[msx:bios#work_area|рабочую область]], находящуюся на 3–й странице оперативной памяти (0x0С00–0xFFFF), удобен также и тем, что эта страница остаётся в RAM при межслотовых обращениях к [[msx:bios|BIOS]], [[msx:bios#sub-rom|SUB-ROM]] и [[msx:bios#disk-rom|DISK-ROM]], которые обычно находятся в нулевых страницах памяти других слотов. | Вектор переходов в [[msx:bios#work_area|рабочую область]], находящуюся на 3–й странице оперативной памяти (0x0С00–0xFFFF), удобен также и тем, что эта страница остаётся в RAM при межслотовых обращениях к [[msx:bios|BIOS]], [[msx:bios#sub-rom|SUB-ROM]] и [[msx:bios#disk-rom|DISK-ROM]], которые обычно находятся в нулевых страницах памяти других слотов. |