MSX-DOS
From Wikipedia, the free encyclopedia
MSX-DOS Is a Disk operating system developed by Microsoft for the 8-bit home computer standard MSX, and is a cross between MS-DOS rev 1.0 and CP/M.
Contents |
[edit] MSX-DOS
MSX-DOS and the extended BASIC with floppy disk support were simultaniously developed by Microsoft for the developing home computer standard MSX to add disc capabilities to BASIC, and to give the system a cheaper software medium than Memory Cartridges, and a more powerful storage system than cassette tape. The standard BIOS of an unexpended MSX did not have any floppy disk support, so the additional floppy disk expansion system came with its own BIOS ROM (built-in on the disk controller) called the BDOS , it not only added floppy disk support commands to MSX BASIC but also a booting system, with which it was possible to boot a real disk operating system. In that case BDOS bypassed the BASIC ROMs so that the whole 64K of address space of the Z80 microprocessor inside the MSX computer could be used for the DOS or for other boot-able disks, for example disk based games. At the same time the original BIOS ROM's could still be accessed through a "memory bank switch" mechanism, so the DOS based software could still use BIOS calls to control the hardware and other software mechanisms the main ROM's supplied. Also, because of the BDOS rom basic file access capacity was available even without a command interpreter, by using the BASIC extended commands.
One major difference between MSX-DOS and MS-DOS was that MSX-DOS did not use the "boot sector" on the floppy to boot, but booted using the BDOS ROM routines, and used the media descriptor value from the first byte of FAT to determine file system parameters instead of from the bootsector. Also, because there could be more than one floppy disk controller in two or more cartridge slots, MSX-DOS could boot from several different floppy disk drives. This meant that it was possible to have both a 5¼" floppy disk drive and a 3½" disk drive, and you could boot from either one of them depending on which drive had a boot-able floppy in it.
[edit] Development history
At the time (1984) MSX-DOS was written, there was only one popular disk operating system for 8-bit Intel 8080 compatible microprocessors, which was the CP/M system, written by Digital Research. It was also often used with Z80 systems, because the Z80 used an extended 8080 architecture. Microsoft's own disk operating system was also inspired by CP/M. So to be able to run (slightly modified) CP/M software Microsoft decided to copy major parts of the CP/M BIOS, routines that CP/M system used to do specific disk operating tasks, such as opening files etc., but instead of adapting CP/M's CCP command processor, which was known for some user unfriendliness, they added a command interpreter (COMMAND.COM) inspired on its MS-DOS counterpart. They also decided to use a copy of their FAT12 file system instead of CP/M's own filing methods. This ensured that MSX-DOS floppy's could also be used on a MS-DOS machine, and that there would be used only one single formatting and filing system. That was an important decision, because CP/M disk were often not interchangeable between machines, because of different ways each system used to "format" their floppy disks. Microsoft also added a standard set of disk commands to MSX-DOS, that were compatible with MS-DOS but not with CP/M. Finally they converted their "Pipelineing" system from MS-DOS to MSX-DOS. The resulting DOS was a system that was much user friendlier than CP/M, but was (in principle) compatible with mayor CP/M software packages such as WordStar, Turbo Pascal and the "M80" assembler and "L80" linker.
[edit] Improved versions
The first version of MSX-DOS did not have subdirectories, but in 1988 it evolved to version 2, offering facilities such as subdirectories, memory management and environment strings. Later versions of MSX computers (MSX-2) added an internal real-time clock which MSX-DOS could use for time stamping files.