CPC Microsystems 6502 Single Board Computer

The CPC Microsystems SBC-65 is a 6502-based single board computer which is AXY platform compliant. The AXY platform is a standard 6502 microcomputer system specification that is being developed by a group of homebrew computer enthusiasts. It includes hardware and system and application software.
 

 
more pictures

CPC SBC-65 Specifications

AXY  Platform - minimal configuration

The AXY platform is a very simple 6502-based platform, with very simple standards that should allow loosely compatible machines to be constructed and expanded as more hardware is added. There are two operating systems: a simple command line interface driven monitor program known as R-SYS and a small real-time OS, as yet un-named, although "JAXY" is a firm favourite as it appeals to our puerile sense of humour, like R-SYS. The system message "booting up Jaxy" is too good not to use and is even better than "booting upi R-SYS" ;-). The SBC-65 shown above can run R-SYS as a stand-alone system, and uses the 6522 PIT as a timer to generate the NMI or indeed INT signal to run the RTOS. More cards are planned, allowing the system to be expanded with the aid of a backplane (similar to VME backplane) as follows: Memory decode has been kept simple and is basically divided into 8 blocks of 8 kBytes. This allows a single 74LS138 to decode the top three address lines into the 8 blocks. A 74LS139 decodes two of these blocks into 4 sub-blocks of 2kBytes each. This leads to the following memory map:
 
 
Address Range Comment SBC-65 Usage
0000 - 1FFF RAM1a 0000 - 07FF 6116
RAM1b 0800 - 9FFF 6116
RAM1c 1000 - 17FF to backplane
RAM1d 1800 - 1FFF to backplane
2000 - 3FFF RAM2 to backplane
4000 - 5FFF RAM3 to backplane
6000 - 7FFF RAM4 to backplane
8000 - 9FFF RAM5 to backplane
A000 - BFFF I/O1 A000 - A7FF ACIA @ A000
I/O2 A800 - AFFF VIA @ A800
I/O3 B000 - B7FF Service Port @ B000
I/O4 B800 - BFFF to backplane
C000 - DFFF ROM 2 to backplane
E000 - FFFF ROM 1 2764/2864
The service port is a debug port which is simply a 74LS373 (or LS573) octal latch, feeding 8 LED's. This allows simple debugging to be performed at a level lower than the serial port. The simplest ROMable program can be a three instruction loop to display a pattern on the service port in order to help bring the board up:

        LDA #$A5
LOOP:   STA $B000
        JMP LOOP

I used this to verify board operation. Obviously I had to link this at E000 and set the reset vector to E000 as well. The service port also played a major role in debugging and getting the ACIA working. Since the serial port is now working the service port's role is mainly to strobe a "Knight Rider" style pattern so I can see things are running okay.

 Here's a nice screen shot snapped from my old Sparcstation IPX in which you can see the boot screen of the SBC-65, with the R-SYS prompt. This is running through the serial port, /dev/ttyb,  using tip. In the background is a simple C source file that boots up and prints the prompt. This is not actually the source that's running you may notice. Also note how the terminal heading has the title "Rabbi 2000 R-SYS Development" - this is because I just run the same terminal window for both the 6502 stuff and the Rabbit 2000 projects - they both plug into /dev/ttyb. This is mainly due to the fact that I have so far only made up one serial cable for the Sun box.

That's all for now folks. Pretty soon, this page will become may more pages and be better organised, but I didn't want to put in loads of "under construction" messages, and at the same time I wanted to get something on-line.