OS-9 LEVEL I V01.00.00
HARDWARE
OS-9 Level I supports the following hardware:
- CC: Tandy Color Computer 1, 2 with Disk Extended Color BASIC 1.0 or 1.1 and 64KB of RAM.
- DragonData Dragon 32 and 64
- EXORSR / Motorola Exorcisor
- MM19
- GIMIX / Gmx
- SWTC / Swtpc
- S09 / SwtMem
- SSB / Smoke
- PERCOM / Percom
- CMS9609 / CMS
- CMS9619 / CMS
- HELIX / Helix
- ELEKTRA / Elekt AAA Chicago CPU
- DIGALOG / Diglog Digalog CPU
- SAT96 / Sat-96 board
SOFTWARE
OS-9 Level I came packaged as 2 x 5.25“ Single-Sided Double-Density floppies.
The OS-9 package includes several different software systems together:
- A Kernel to manage the system and provide shared services
- A user Shell environment with procedures, redirections, pipelines, and job controls.
- A Time-sharing package for true multi-user capabilities.
- Maintenance and Administration tools for System Managers.
- Disk Operating System (DOS) style commands to manage disk contents.
- An Editor / Assembler / Debugger package for both Disk Extended Color BASIC and OS-9 program development.
BOOT DISK
- “*/BAS” - Boots OS-9 from Disk Extended Color BASIC 1.0.
- “0x820x81/BIN” - Tests the RPM speed of your floppy drives.
See also “Getting Started with OS-9” chapter 3 “Starting up OS-9” pp.7-9
BOOT TRACK
The second floppy or “System Master” disk is formatted with a customized OS-9 RBF file system with a Disk Extended Color BASIC 1.1-compatible boot on sectors 1-15 of track 34.
The boot track includes the following code, data, and modules:
- DOS command 'OS' signature
- DOS command jump vector
- REL - relocation code to move the OS-9 kernel from $2600 to up $F000 (later $EF00 for the CoCo 3)
- OS9 - part one of the OS-9 kernel
- vectors
- OS9p2 - part two of the OS-9 kernel
- Init - initial configuration information for this boot
- Boot - the module to load OS9Boot from disk and transfer control to it.
OS9BOOT
Once the kernel initializes, it reads the RBF file system on disk to locate the OS9Boot file, load it into memory, and initialize all of the modules within.
The following modules are in the /D0/OS9Boot file:
- CCDisk device driver
- D0 device descriptor for Standard disk drive 0
- D1 device descriptor for Additional Disk Drive 1
- D2 device descriptor for Additional Disk Drive 2
- D3 device descriptor for Additional Disk Drive 3
- CCIO device driver
- TERM device descriptor for Video/keyboar device for standard 32 column display
- IOMan system
- RBF file manager
- SCF file manager
- SysGo system
- Clock system
- Shell - usually added to OS9Boot to cache it in memory from startup onward.
- RS232 device driver
- T1 device descriptor for Terminal port using the standard RS-232 serial port
- PRINTER device driver
- P device descriptor for Printer port using the standard RS-232 serial port
- PipeMan file manager
- Piper device driver
- Pipe device descriptor Allows use of the OS-9 pipe facility
CMDS
With OS-9 up and running there is typically a startup file to run the Setime command and then the Shell itself presents its OS9: prompt for you to run OS-9 commands
The following commands are in /D0/CMDS/ directory:
- Asm filename [opt][>list] - Standard OS-9 Assembler
- Attr filename [permissions] - Examine or change the security permissions of a file
- Backup [e][s][-v][dev][dev] - Copies all data from one device to another
- Binex filename1 filename2 - Converts binary file to S-record file
- Build filename - Builds short text files from standard input
- cmp filename1 filename2 - File comparison utility
- Cobbler devname - Creates OS-9 bootstrap file from current boot
- Copy pathname pathname [-s] - copies data from one file to a second file
- Date [t] - Specifies current system time and date
- dcheck [-opts] devname - checks disk file structure
- debug - Assembly language debugger
- Del [-x] filename […] - Deletes the specified file(s)
- Deldir directory name - Deletes all files in a directory and the directory itself
- Dir [e][x][dir or path] - Displays formatted list of the file names in a directory
- Display <hex>[…] - Displays converted characters to standard output
- dsave [-opts][dev][pathname] - Generates procedure file to copy all files in a directory system
- Dump [filename or devname] - Formatted file dump utility
- Echo text - Echoes entered text to standard output
- Edit [filename [filename]] - Standard OS-9 text editor
- Exbin filename1 filename2 - Converts S-record file to a binary file
- Format devname - Initializes an OS-9 diskette
- Free [devname] - Displays number of free sectors on a device
- Ident filename [-opts] - Displays header information of OS-9 memory modules
- Link memory module name - Link to a memory module
- List filename […] - List the contents of text files
- Load pathname - Loads modules into memory
- Login - Login procedure for timesharing systems
- Makdir pathname or dirname - Creates a new directory file
- Mdir [e] - Displays the present memory module directory
- Merge [filename][…] - Copies multiple input files to standard output
- Mfree - Displays the amount of free RAM memory
- OS9gen devname [-s] - Creates and links an OS-9 bootstrap file
- Printerr - Prints full text error messages
- Procs [e] - Displays a list of processes running in the system
- pwd - Prints the current data directory path
- pxd - Prints the current execution directory path
- Rename filename new filename - Gives the file or directory a new name
- Save filename modname […] - Saves memory module onto a file
- Setime [yy/mm/dd/hh:mm:ss] - Sets and actives the system clock
- Shell arglist - OS-9 command interpreter
- Sleep tick count - Puts the process to sleep for a number of clock ticks
- Tee path or devname […] - Copies standard input to multiple outputs
- Tmode [.pathname][params] - Displays or changes the operating parameters of the terminal
- Tsmon [devname] - Monitors the terminals in timesharing systems
- Unlink modname […] - Unlinks modules from memory
- Verify [u] - Verifys[sic] and updates the module header and CRC value
- Xmode devname [params] - Displays or changes the parameters of and[sic] SCF type device
See also: the “OS-9 Commands” manual.
ACCOUNTS
OS-9 is a multi-user / multi-programming / multi-tasking system.
Account information is kept in /SYS/password in the following format:
- Username
- up to 32-characters.
- may include spaces.
- If empty, any name will match
- Password
- up to 32-characters.
- may include spaces.
- If empty, no password .
- User index (ID) number
- from 0-65535.
- 0 is superuser.
- Used by file system and processes to identify the owner.
- The system manager should assign a unique ID to each potential user.
- Initial process (CPU time) priority
- 1-255.
- Pathlist of initial execution path
- usually /D0/CMDS
- Pathlist of initial data path
- The specific user's directory.
- Name of the initial program to execute
- usually Shell.
- Don't use shell command lines, such as Dir or Dcheck, as initial program names.
Example Password file:
,,0,128,/D0/CMDS,.,SHELL USER1,,1,128,.,.,SHELL USER2,,2,128,.,.,SHELL USER3,,3,128,.,.,SHELL USER4,,4,128,.,.,SHELL
See also:
- OS-9 Commands 2.4 “The File Security System” pp.22-24
- OS-9 Commands 3.9 “Editing startup for Timesharing Systems” p.44
- OS-9 Commands “Login” pp.93-95
BACKUPS
The floppy disk formatting used by Disk Extended Color BASIC and OS-9 are not the same.
Disk Extended BASIC provides a DSKINI and BACKUP to backup DECB-formatted floppies such as the OS9 Level I Boot disk.
OS-9 contains a FORMAT and BACKUP command to backup OS-9 formatted floppies such as the OS-9 Level I System Master disk.
See also: “Getting Started with OS-9” manual, chapter 4 “Formatting Disks and Making Backups” pp.11-16
MONITORING
The Free command allows you to monitor the free space of each disk.
The Mfree command allows you to monitor the free space in RAM.
The Procs command allows you to see the running processes / programs on the system.
SECURITY
The attr command allows you to see and modify (if you are the appropriate user) the security permissions of the OS-9 files and directories.
The permissions shown, in order, are:
- d for directories
- s for shareable files that may be loaded and used by multiple users at once
- pe whether or not everyone can execute the file
- pw whether or not everyone can write to the file
- pr whether or not everyone can read the file
- e whether or not the owner can execute the file
- w whether or not the owner can write to the file
- r whether or not the owner can read the file
A - (dash) in any position means that permission has not been granted.
Owners are described in the Login command.
The Verify command allows you to check the integrity of OS-9 modules.
TROUBLESHOOTING
The Printerr command loads in additional information and description for the OS-9 numeric error codes.
DOCUMENTATION
OS-9 Level I shipped with 4 well-written introduction and reference manuals:
- Getting Started with OS-9 gets you started booting, making backups in case of emergency, and introductory info.
- OS-9 Commands gets you much more in-depth information on using the Shell and details each of the commands supplied with OS-9
- OS-9 Program Development covers the Edit tool to write assembly source code, the Asm tool to assemble the source code into binaries to run, and the Debug tool used to diagnose code errors.
- OS-9 Technical Information provides the key reference to the internals of OS-9, the RBF disk format, and the System Calls provided by the kernel needed to use the full power of OS-9 in your Assembly language programs.
Dale Puckett and Peter Dibble wrote The Rainbow Guide to OS-9 which shares everything you need to know to get well started as an OS-9 user and developer.
The Rainbow Magazine, and several OS-9 specific newsletters provide many more tools and tricks for OS-9.
HELPING USERS
The Tandy / Radio Shack Color Computer Discord hosts the Operating Systems channel category, including the #os-9 channel where you can ask questions and talk about the OS-9 operating system.