Apple ProDOS

Last updated
ProDOS 8
PRODOS402 catalog.png
A floppy disk catalog in ProDOS 8 v2.0.3
Developer Apple Computer
Written in Assembly language
OS family SOS
Working stateDiscontinued
Source model Closed source (but version 1.7) [1]
Initial releaseOctober 1983;40 years ago (1983-10)
Latest release 2.0.3 / May 6, 1993;30 years ago (1993-05-06)
Available in English
Platforms Apple II series of personal computers
Kernel type Monolithic kernel
Default
user interface
primarily text user interface
License Apple Software License Agreement
ProDOS 16
ProDOS16.png
ProDOS 16 v1.6 - running an earlier version of the Apple IIGS Finder
Developer Apple Computer
OS family SOS
Working stateDiscontinued
Source model Closed source
Initial releaseSeptember 1986;37 years ago (1986-09)
Latest release 1.6 / June 14, 1988;35 years ago (1988-06-14)
Available in English
Platforms Apple IIGS
Kernel type Monolithic kernel
License Apple Software License Agreement

ProDOS is the name of two similar operating systems for the Apple II series of personal computers. The original ProDOS, renamed ProDOS 8 in version 1.2, is the last official operating system usable by all 8-bit Apple II series computers, and was distributed from 1983 to 1993.[ citation needed ] The other, ProDOS 16, was a stop-gap solution for the 16-bit Apple IIGS that was replaced by GS/OS within two years. [2]

Contents

ProDOS was marketed by Apple as meaning Professional Disk Operating System, and became the most popular operating system for the Apple II series of computers 10 months after its release in January 1983. [3]

Background

ProDOS was released to address shortcomings in the earlier Apple operating system (called simply DOS), which was beginning to show its age.

Apple DOS only has built-in support for 5.25" floppy disks and requires patches to use peripheral devices such as hard disk drives and non-Disk-II floppy disk drives, including 3.5" floppy drives. ProDOS adds a standard method of accessing ROM-based drivers on expansion cards for disk devices, expands the maximum volume size from about 400 kilobytes to 32 megabytes, introduces support for hierarchical subdirectories (a vital feature for organizing a hard disk's storage space), and supports RAM disks on machines with 128 KB or more of memory. ProDOS addresses problems with handling hardware interrupts, and includes a well-defined and documented programming and expansion interface, which Apple DOS had always lacked. Although ProDOS also includes support for a real-time clock (RTC), this support went largely unused until the release of the Apple IIGS, the first in the Apple II series to include an RTC on board. Third-party clocks were available for the II Plus, IIe, and IIc, however.

ProDOS, unlike earlier Apple DOS versions, has its developmental roots in SOS, the operating system for the ill-fated Apple III computer released in 1980. Pre-release documentation for ProDOS (including early editions of Beneath Apple ProDOS) documented SOS error codes, notably one for switched disks, that ProDOS itself could never generate. Its disk format and programming interface are completely different from those of Apple DOS, and ProDOS cannot read or write DOS 3.3 disks except by means of a conversion utility; while the low-level track-and-sector format of DOS 3.3 disks was retained for 5.25-inch disks, the high-level arrangement of files and directories is completely different. For this reason, most machine-language programs that run under Apple DOS will not work under ProDOS. However, most BASIC programs work, though they sometimes require minor changes. A third-party program called DOS.MASTER enables users to have multiple virtual DOS 3.3 partitions on a larger ProDOS volume.

With the release of ProDOS came the end of support for Integer BASIC and the original Apple II model, which had long since been effectively supplanted by Applesoft BASIC and the Apple II Plus. Whereas DOS 3.3 always loads built-in support for BASIC programming, under ProDOS this job is given to a separate system program called BASIC.SYSTEM, which one launches to run and write Applesoft BASIC programs. BASIC itself continued to be built into the Apple ROMs; BASIC.SYSTEM is merely a command interpreter enhancement that allows BASIC programs to access ProDOS by means of the same "Control-D" text output they had used under DOS 3.3. BASIC.SYSTEM alone requires about as much memory as the whole of DOS 3.3. Since the ProDOS kernel itself is stowed away in the "Language Card" RAM, the usable amount of RAM for BASIC programmers remains the same under ProDOS as it had been under DOS 3.3.

Despite ProDOS's many advantages, many users and programmers resisted it for a time because of their investment in learning the ins and outs of Apple DOS and in Apple-DOS-based software and data formats. A contributing reason was that ProDOS allows only 15 characters in a filename compared to Apple DOS's 30. But Apple's integrated software package AppleWorks, released in 1984, proved a compelling reason to switch, and by the end of 1985 few new software products were being released for the older operating system. Apple IIs continued to be able to boot the older DOS (even the Apple IIGS can boot the older DOS floppies) but as 3.5" floppies and hard disks became more prevalent, most users spent the bulk of their time in ProDOS.

The Apple IIe, also released in 1983, was the first Apple II computer to have 64 KB of memory built in. For a while, Apple shipped both DOS 3.3 and ProDOS with new computers.

The original ProDOS was renamed ProDOS 8 when ProDOS 16 was released to support the 16-bit Apple IIGS computer, although ProDOS 16 (which was 8-bit at its core) was soon replaced by GS/OS.

Requirements

All editions of ProDOS require an Apple II series computer or compatible.

ProDOS 8 requires 64 KB of memory to run. The original ProDOS (8) 1.0 through 1.0.2 requires only 48 KB for the kernel, but nearly all programs, including the BASIC.SYSTEM needed to use Applesoft BASIC, require 64 KB, making a 48 KB system useless for ProDOS as a practical matter, and support for 48 KB machines was removed in version 1.1.

ProDOS 8 version 2.x requires a 65C02 or later (65802, 65816) CPU. ProDOS 8 2.x runs in 64 KB, but the utility programs on the system disk require 128 KB. Systems with a 6502 CPU instead of a 65C02 must use ProDOS 8 versions prior to version 2.0.

ProDOS 16 requires an Apple IIGS.

Unlicensed Apple II clones

With the release of ProDOS version 1.01 and higher, a check was added to see if it was running on an official Apple-manufactured computer. If the word "Apple" is found in the computer's ROM firmware, ProDOS will load up as normal. If anything else is found (e.g. "Golden", "Franklin", "Elite") ProDOS refuses to run, locking up at the boot splash screen. This measure was taken by Apple Computer to discourage use of unlicensed Apple II clones. It is still possible to run newer versions of ProDOS on clones; however, users have to apply a small byte patch to every successive version of ProDOS. Some users go as far as replacing their physical ROM chip(s) with an illegal copied version of Apple's own ROM; or, failing that, a custom patched ROM with "Apple" added in the name.

Disk support

ProDOS 8 natively supports Disk II-compatible floppy drives, a RAM drive of approximately 59 KB on computers having 128 KB or more RAM, and block devices whose controllers support the Pascal firmware protocol, a standardized method of accepting block reads and writes originally introduced for use with the UCSD p-System. This latter category includes 3.5" floppy drives and hard drives. Custom block device drivers can be hooked into the OS as well.

File system

ProDOS uses the same file system as the earlier Apple SOS for the Apple III. The SOS/ProDOS file system is native to Apple SOS, ProDOS 8, ProDOS 16, and GS/OS. Some classic Mac OS versions also come with a file system translator to handle this file system.

A volume is allocated in 512-byte blocks. (5.25" floppy disks are still formatted using 256-byte sectors, as this is the format required by the controller ROM to boot the disk. ProDOS simply treats pairs of 256-byte sectors as a single block on such drives.) A volume can have a capacity of up to 32 megabytes, and each file can be up to 16 megabytes. Each volume (floppy disk or hard drive partition) has a "volume name", a filename which is used as the base directory name; having two volumes with the same volume name can result in conflicts. If necessary, ProDOS searches all available drives to find a named volume. Subdirectories are supported, and the concept of a "prefix" (working directory or current path) was provided to make working with subdirectories easier.

File, directory, and volume names can be 1 to 15 characters, starting with a letter, then containing more letters, digits or periods. Each file entry also contains the 16-bit (2-byte) pointer to the block containing the beginning of the file (or its block index); a 16-bit block count; a 24-bit (3-byte) file size; an 8-bit (1-byte) filetype; a 16-bit auxiliary type (the meaning of which depends upon the filetype); creation and modification timestamps; and data related to how the file is stored on the volume. Sparse files are supported, but files are never "sparsified" by removing zero-filled blocks. The volume header contains similar information as relevant to volumes.

Directories (including the root directory) are sequentially indexed, with each block starting with the address of the previous block (or zero if none) and the subsequent block (or zero if none). The root directory on most disks is initialized to 4 blocks, allowing 51 entries (excluding the volume header). It never changes in size, except by manual intervention with special tools. Subdirectories begin at one block, and grow automatically as needed.

Normal files are progressively indexed. Single-block files (under 513 bytes) have no index block; the directory entry points directly to the block of file data. Files with between 2 and 256 blocks (513 bytes to 128 KB) of data have a single index block, to which the directory entry points, which contains a list of up to 256 data block addresses. Larger files have a master index block containing a list of up to 256 index block addresses. When the Apple IIGS was introduced, a new storage format was introduced for files with two forks, as was typical for IIGS system and program files; the directory entry points to an informational block that tells the computer the storage format of the two forks. These files cannot be read or written natively by ProDOS 8, though the volume itself remains compatible.

The volume has a bitmap of used blocks. Other than this, there is no central file allocation table.

A ProDOS 8 volume formatted by Apple's tools has a boot sector that supports booting both ProDOS and SOS depending on what computer it is booted on. Block 0 is the Apple II boot block and block 1 boots SOS. This allows a disk to be used to boot on either Apple II or Apple III computers by putting both operating system kernels in the top directory: the Apple II boot sector looks for the file PRODOS and the Apple III boot sector looks for the file SOS.KERNEL. [4] Third-party formatting utilities often did not provide the SOS boot block, and some would even mark block 1 available for user data.

ProDOS has no kernel support for other file systems. If necessary, a conversion utility on the main system disk is used to transfer files individually between ProDOS and older Apple DOS 3.3 disks. Because they use a different low-level disk format than DOS 3.3 and ProDOS, transferring data from DOS 3.2 disks to ProDOS is a two-step process using a DOS 3.3 disk as an intermediary (utilizing the DOS 3.3 utility MUFFIN or similar).

See also

Related Research Articles

<span class="mw-page-title-main">Apple II series</span> Computer series by Apple Computer, 1977–1993

The Apple II series is a family of home computers, one of the first highly successful mass-produced microcomputer products, designed primarily by Steve Wozniak, manufactured by Apple Computer, and launched in 1977 with the original Apple II.

<span class="mw-page-title-main">Apple III</span> Business-oriented personal computer made by Apple Computer

The Apple III is a business-oriented personal computer produced by Apple Computer and released in 1980. Running the Apple SOS operating system, it was intended as the successor to the Apple II series, but was largely considered a failure in the market. It was designed to provide key features business users wanted in a personal computer: a true typewriter-style upper/lowercase keyboard and an 80-column display.

A disk operating system (DOS) is a computer operating system that resides on and can use a disk storage device, such as a floppy disk, hard disk drive, or optical disc. A disk operating system provides a file system for organizing, reading, and writing files on the storage disk, and a means for loading and running programs stored on that disk. Strictly, this definition does not include any other functionality, so it does not apply to more complex OSes, such as Microsoft Windows, and is more appropriately used only for older generations of operating systems.

<span class="mw-page-title-main">ISO 9660</span> File system for CD-R and CD-ROM optical discs

ISO 9660 is a file system for optical disc media. The file system is an international standard available from the International Organization for Standardization (ISO). Since the specification is available for anybody to purchase, implementations have been written for many operating systems.

<span class="mw-page-title-main">TRS-80</span> 1977 microcomputer by Tandy Corporation

The TRS-80 Micro Computer System is a desktop microcomputer launched in 1977 and sold by Tandy Corporation through their Radio Shack stores. The name is an abbreviation of Tandy Radio Shack, Z80 [microprocessor]. It is one of the earliest mass-produced and mass-marketed retail home computers.

File Allocation Table (FAT) is a file system developed for personal computers and was the default filesystem for MS-DOS and Windows 9x operating systems. Originally developed in 1977 for use on floppy disks, it was adapted for use on hard disks and other devices. The increase in disk drives capacity required three major variants: FAT12, FAT16 and FAT32. FAT was replaced with NTFS as the default file system on Microsoft operating systems starting with Windows XP. Nevertheless, FAT continues to be used on flash and other solid-state memory cards and modules, many portable and embedded devices because of its compatibility and ease of implementation.

Hierarchical File System (HFS) is a proprietary file system developed by Apple Inc. for use in computer systems running Mac OS. Originally designed for use on floppy and hard disks, it can also be found on read-only media such as CD-ROMs. HFS is also referred to as Mac OS Standard, while its successor, HFS Plus, is also called Mac OS Extended.

<span class="mw-page-title-main">Apple IIGS</span> Apple II series 16-bit computer

The Apple IIGS, the fifth and most powerful of the Apple II family, is a 16-bit personal computer produced by Apple Computer. While featuring the Macintosh look and feel, and resolution and color similar to the Amiga and Atari ST, it remains compatible with earlier Apple II models. The "GS" in the name stands for "Graphics and Sound", referring to its enhanced multimedia hardware, especially its state-of-the-art audio.

Apple DOS is the family of disk operating systems for the Apple II series of microcomputers from late 1978 through early 1983. It was superseded by ProDOS in 1983. Apple DOS has three major releases: DOS 3.1, DOS 3.2, and DOS 3.3; each one of these three releases was followed by a second, minor "bug-fix" release, but only in the case of Apple DOS 3.2 did that minor release receive its own version number, Apple DOS 3.2.1. The best-known and most-used version is Apple DOS 3.3 in the 1980 and 1983 releases. Prior to the release of Apple DOS 3.1, Apple users had to rely on audio cassette tapes for data storage and retrieval.

<span class="mw-page-title-main">Apple SOS</span> Apple III operating system

The Sophisticated Operating System, or SOS, is the primary operating system of the Apple III computer. SOS was developed by Apple Computer and released in October 1980.

<span class="mw-page-title-main">Apple GS/OS</span> Apple IIGS operating system

GS/OS is an operating system developed by Apple Computer for its Apple IIGS personal computer. It provides facilities for accessing the file system, controlling input/output devices, loading and running program files, and a system allowing programs to handle interrupts and signals. It uses ProDOS as its primary filing system. GS/OS is a component of Apple IIGS System Software versions 4.0 through 6.0.1, and was the first true 16-bit operating system for the IIGS.

<span class="mw-page-title-main">Atari DOS</span>

Atari DOS is the disk operating system used with the Atari 8-bit family of computers. Operating system extensions loaded into memory were required in order for an Atari computer to manage files stored on a disk drive. These extensions to the operating system added the disk handler and other file management features.

<span class="mw-page-title-main">Rainbow 100</span> DEC microcomputer

The Rainbow 100 is a microcomputer introduced by Digital Equipment Corporation (DEC) in 1982. This desktop unit had a monitor similar to the VT220 and a dual-CPU box with both 4 MHz Zilog Z80 and 4.81 MHz Intel 8088 CPUs. The Rainbow 100 was a triple-use machine: VT100 mode, 8-bit CP/M mode, and CP/M-86 or MS-DOS mode using the 8088. It ultimately failed to in the marketplace which became dominated by the simpler IBM PC and its clones which established the industry standard as compatibility with CP/M became less important than IBM PC compatibility. Writer David Ahl called it a disastrous foray into the personal computer market. The Rainbow was launched along with the similarly packaged DEC Professional and DECmate II which were also not successful. The failure of DEC to gain a significant foothold in the high-volume PC market would be the beginning of the end of the computer hardware industry in New England, as nearly all computer companies located there were focused on minicomputers for large organizations, from DEC to Data General, Wang, Prime, Computervision, Honeywell, and Symbolics Inc.

<span class="mw-page-title-main">Disk II</span> Floppy disk drive for the Apple II computer

The Disk II Floppy Disk Subsystem, often rendered as Disk ][, is a 5 +14-inch floppy disk drive designed by Steve Wozniak at the recommendation of Mike Markkula, and manufactured by Apple Computer, Inc. It went on sale in June 1978 at a retail price of US$495 for pre-order; it was later sold for $595 including the controller card and cable. The Disk II was designed specifically for use with the Apple II personal computer family to replace the slower cassette tape storage. These floppy drives cannot be used with any Macintosh without an Apple IIe Card as doing so will damage the drive or the controller.

Apple II graphics debuted on the 1977 Apple II and was used throughout the Apple II line. They consist of a 16 color low resolution mode and a high resolution mode where visuals are dependent on artifact color. The Apple IIe added "double" versions of each of these, most prominently "double high resolution" with twice the horizontal resolution in 16 colors. Internally, Apple II graphics modes are idiosyncratic and do not simply use a linear frame buffer.

<span class="mw-page-title-main">SpartaDOS X</span> Disk operating system

SpartaDOS X is a disk operating system for the Atari 8-bit family of computers that closely resembles MS-DOS. It was developed and sold by ICD, Inc. in 1987-1993, and many years later picked up by the third-party community SpartaDOS X Upgrade Project, which still maintains the software.

<span class="mw-page-title-main">Macintosh External Disk Drive</span> External floppy disk drive by Apple

The Macintosh External Disk Drive is the original model in a series of external 3+12-inch floppy disk drives manufactured and sold by Apple Computer exclusively for the Macintosh series of computers introduced in January 1984. Later, Apple would unify their external drives to work cross-platform between the Macintosh and Apple II product lines, dropping the name "Macintosh" from the drives. Though Apple had been producing external floppy disk drives prior to 1984, they were exclusively developed for the Apple II, III and Lisa computers using the industry standard 5+14-inch flexible disk format. The Macintosh external drives were the first to widely introduce Sony's new 3+12-inch rigid disk standard commercially and throughout their product line. Apple produced only one external 3+12-inch drive exclusively for use with the Apple II series called the Apple UniDisk 3.5.

The original IBM Personal Computer and IBM PCjr included support for storing data and programs on compact cassette tape.

<span class="mw-page-title-main">Floppy disk variants</span> Types of floppy disk formats

The floppy disk is a data storage and transfer medium that was ubiquitous from the mid-1970s well into the 2000s. Besides the 3½-inch and 5¼-inch formats used in IBM PC compatible systems, or the 8-inch format that preceded them, many proprietary floppy disk formats were developed, either using a different disk design or special layout and encoding methods for the data held on the disk.

The FAT file system is a file system used on MS-DOS and Windows 9x family of operating systems. It continues to be used on mobile devices and embedded systems, and thus is a well suited file system for data exchange between computers and devices of almost any type and age from 1981 through the present.

References

  1. https://mirrors.apple2.org.za/ftp.apple.asimov.net/documentation/source_code/apple2_SRC_ProDOS17_1988.pdf
  2. Weyhrich, Steven (2001-07-07). "Chapter 15: DOS 3.3, ProDOS & Beyond". Apple II History. Archived from the original on 2008-09-17. Retrieved 2003-06-27.
  3. "History of DOS 3.3 and ProDOS". Archived from the original on 2013-06-06. Retrieved 2013-08-28.
  4. Weyhrich, Steven (2001-07-07). "Chapter 15: DOS 3.3, ProDOS & Beyond". Apple II History. Archived from the original on 2008-09-17. Retrieved 2003-06-27. Weyhrich source: Hunter, Skillman (February 1985). "Road Maps To Apple II Disks: DOS 3.3, CP/M, Pascal, and ProDOS". Call-A.P.P.L.E. Renton, Washington: Apple Pugetsound Program Library Exchange: 10–21. ISSN   8755-4909. OCLC   8898855.
Notes