|Original author(s)||Tim Paterson|
|Developer(s)||Seattle Computer Products, Microsoft, Digital Research, IBM, Toshiba|
|Written in||MS-DOS: x86 assembly language|
|Operating system||86-DOS, MS-DOS, PC DOS, FlexOS, 4690 OS, PTS-DOS, SISNE plus, Windows, DR DOS|
sys is a command used in many operating system command-line shells and also in Microsoft BASIC.
SYS is an external command of Seattle Computer Products 86-DOS, Microsoft MS-DOS, IBM PC DOS, Digital Research FlexOS, IBM/Toshiba 4690 OS, PTS-DOS, Itautec/Scopus Tecnologia SISNE plus, and Microsoft Windows 9x operating systems. It is used to make an already formatted medium bootable. It will install a boot sector capable of booting the operating system into the first logical sector of the volume. Further, it will copy the principal DOS system files, that is, the DOS-BIOS (IO.SYS or IBMBIO.COM) and the DOS kernel (MSDOS.SYS or IBMDOS.COM) into the root directory of the target. Due to restrictions in the implementation of the boot loaders in the boot sector and DOS' IO system, these two files must reside in the first two directory entries and be stored at the beginning of the data area under MS-DOS and PC DOS. Depending on version, the whole files or only a varying number of sectors of the DOS-BIOS (down to only three sectors in modern issues of DOS) will have to be stored in one consecutive part. SYS will try to physically rearrange other files on the medium in order to make room for these files in their required locations. This is why SYS needs to bypass the filesystem driver in the running operating system. Other DOS derivatives such as DR-DOS do not have any such restrictions imposed by the design of the boot loaders, therefore under these systems, SYS will install a DR-DOS boot sector, which is capable of mounting the filesystem, and can then simply copy the two system files into the root directory of the target. SYS will also copy the command line shell (COMMAND.COM) into the root directory. The command can be applied to hard drives and floppy disks to repair or create a boot sector.
Although an article on Microsoft's website says the
SYS command was introduced in MS-DOS version 2.0, this is incorrect. SYS actually existed in 86-DOS 0.3 already. According to The MS-DOS Encyclopedia, the command was licensed to IBM as part of the first version of MS-DOS, and as such it was part of MS-DOS/PC DOS from the very beginning (IBM PC DOS 1.0 and MS-DOS 1.25).
DR DOS 6.0 includes an implementation of the
The command syntax is:
SYS [drive1:][path] drive2:
[drive1:][path]– The location of the system files
drive2:– The drive to which the files will be copied
SYS is also a command in Microsoft BASIC used to execute a machine language program in memory. The command took the form
SYS n where n is a memory location where the executable code starts. Home computer platforms typically publicised dozens of entry points to built-in routines (such as Commodore's KERNAL) that were used by programmers and users to access functionality not easily accessible through BASIC.