6809 Second Processor
An Second Processor for the BBC/Master containing a Motorola 6809.
The 6809 client MOS provides the basic system required to communicate with the host computer. The BBC MOS entry block is implemented by using the BA/BS signals to remap the hardware vectors to from &FFF0 to &FEF0.
MOS API Calls
Programs communicate with the kernal and MOS via an entry block at &FFC0-&FFFF. Parameters are passed in the A, X and Y registers.
On entry, A, X, Y contain values to pass to system call On exit, A, X, Y contain returned data If an error occurs, then...
&FFF7 - OS_CLI
On entry: On exit: X=>command string A=Return value
&FFF4 - OS_BYTE
On entry: On exit A=function A=preserved X=first parameter X=returned word Y=second parameter Y=returned word DIV 256 Cy=returned carry flag
&FFF1 - OS_WORD
On entry: On exit: A=function Control block updated X=>control block X=returned line length for OSWORD 0
&FFEE - OS_WRCH
On entry: On exit: A=character A=preserved
&FFEC - OS_WRCR
On entry: On exit: A=13
&FFE7 - OS_NEWL
On entry: On exit: R1=13
&FFE3 - OS_ASCI
On entry: On exit: A=character A=preserved
&FFE0 - OS_RDCH
On entry: On exit: A=character Cy=carry flag
&FFDD - OS_FILE
On entry: On exit: A=function A=result X=>control block X=preserved
&FFDA - OS_ARGS
On entry: On exit: A=function A=result Y=handle Y=preserved X=>data X=preserved data updated
&FFD7 - OS_BPUT
On entry: On exit: A=byte A=preserved Y=handle Y=preserved
&FFD4 - OS_BGET
On entry: On exit: A=byte Y=handle Y=preserved Cy=carry flag
&FFD1 - OS_GBPB
On entry: On exit: A=function X=>control block A=preserved Cy=carry flag
&FFCE - OS_FIND
On entry: On exit: A=function A=handle X=>string or Y=>handle
See also
External links
- 6809 CoPro information at mdfs.net
- Johan Heusevelt's 6809 CoPro
- Matchbox coprocessor
Jgharston 16:53, 6 November 2009 (UTC)