MediaWiki:Sitenotice:
2024-03-02: The wiki ran out of disk space, so things were not working. This has been resolved by adding another 5GB of quota ;-) Thanks to Tim Lindner for reporting the issues.
2020-05-17: If a page gives you an error about some revision not being found, just EDIT the page and the old page should appear in the editor. If it does, just SAVE that and the page should be restored. OS-9 Al (talk) 12:22, 17 May 2020 (CDT)
OS-9:Level 1 Boot
OS-9 Level 1 Boot
Disk Extended Color BASIC
1.0
Disk Extended Color BASIC 1.0 does not directly support the OS-9 boot track.
The OS9L1V1B.DSK contains two files: *.BAS and $82$81
- .BAS provides a menu to choose Boot or to test the floppy diskette drive.
If the disk test is chosen, the $82$81 is loaded from diskette into address $5000 and started to test the rotation speed of the floppy disk drive to verify it rotates close to 300 revolutions per minute.
If boot is chosen, then BASIC DATA statements are poked into address $5000 and started.
The boot code is very similar to the DOS command added for Disk Extended Color BASIC 1.1.
The user is then prompted to place the OS9L1V1M.DSK master diskette in the floppy disk drive and press a key to continue.
1.1
Place the OS9L1V1M.DSK master disk into the floppy diskette drive, type DOS, press ENTER, and OS-9 begins to boot.
Boot Track
The *.BAS machine code or the DOS command loads track 34, sectors 1-18 from the the OS9L1V1M.DSK diskette into RAM at address $2600.
If the first two bytes of the boot track are 'OS' then the DOS command reads the 16-bit address loaded into $2602 and transfers control to the code there.
Between the OS signature, start address, and the beginning of code are the bytes of the OS9 Boot banner shown on the screen.
The boot track contains:
- OS Signature bytes 'OS'
- Start address
- OS9 Boot banner text
- RELocate code
- OS9 kernel module part 1
- MPU vectors
- OS9 kernel part 2
- Init module
- Boot module
RELocate
OS9
The first module of the OS-9 kernel provides core service tables, cold start code, interrupt handlers, module linking and CRC verification, and other essential functions.
Vectors
This block of data is designed to load into RAM to initialize the address of the 6809 MPU vectors.
OS9p2
The second module of the OS-9 kernel provides additional memory and process management along with additional core functions.
Init
The init module is a small set of configuration data for the OS-9 system such as the first process to start, usually SysGo, the default storage device name such as /D0 or /DD, the initial terminal device name such as /TERM and the name of the Boot module.
Boot
The boot module provides hardware-specific code to read the OS-9 RBF disk storage layout, find the OS9Boot file, and begin loading it into memory to initialize each module found in it.
OS9Boot
The OS9Boot file is a collection support modules to provide services to the OS-9 applications run by the user.
- CCDisk - driver for WD17x3 floppy disk drives
- CCIO - driver for the Color Computer console I/O
- Clock - system module for time tracking and task switching
- D0 - a device descripter for floppy disk drive 0
- D1 - a device descripter for floppy disk drive 1
- D2 - a device descripter for floppy disk drive 2
- D3 - a device descripter for floppy disk drive 3
- IOMan - the I/O manager service module handling pathlist management for the kernel
- PipeMan - the Pipe file manager providing interprocess pipe handling
- Piper - the Pipe driver providing interprocess pipe handling
- Pipe - the Pipe device descripter providing interprocess pipe handling
- PRINTER - the printer driver for serial printers attached to the built-in serial port
- P - the printer device descripter for serial printers attached to the built-in serial port
- RBF - the Random Block File manager for block-oriented storage devices
- RS232 - the RS-232 serial port driver for terminals or modems attached to the built in serial port
- SCF - the Sequencial Character File manager for character-by-character devices
- Shell - the default command interpreter
- SysGo - the system startup module to spawn the console shell on the default disk and terminal device
- T1 - the device descripter for a terminal attached to the built-in serial port
- TERM - the default Color Computer console device descripter
SysGo
The SysGo module starts the initial console shell and waits in the background for it to exit, and restart it if this happens.
Shell
The user command line module providing file system navigation and I/O stream redirection.
Startup
An initial shell procedure to load and run the setime module to prompt for the current date and time.
Bootstrap complete
The system is ready to use once the OS9: prompt appears.