The PCPI AppliCard


Picture of AppliCards
AppliCard mini-manual
Theory of Operation
Support...
* New SIO expansion board!
* Expansion Connector pin-outs
Author's Credentials

Description:

The PCPI AppliCard (also known as the MicroPro StarCard or Franklin ACE-80 CPU) is a co-processor accessory card that fits in one of the standard expansion slots of an Apple ][, ][+, //e, or IIgs computer and runs the CP/M operating system.

The AppliCard contains a Zilog Z80 CPU running at a clock speed of either 4 or 6 MHz, 64K of DRAM, a bootstrap EPROM, logic and buffers to interface it with the Apple ][, and may optionally include a Z80 CTC (counter-timer chip). Depending on the revision level of the board there may also be two dual-row header (male) connectors on the board, one with 10 pins, the other with 50 pins. These connectors are for RAM expansion and serial I/O boards which ``piggy-back'' onto the AppliCard.

The board was produced by Personal Computer Products, Inc. in the early 1980's and was the fastest CP/M computer of its day. It often was bundled with MicroPro's ``WordStar'' word processor and was known as the ``StarCard.'' Franklin Computer Corporation also offered the card for CP/M compatibility in their Apple ][+ clones, calling it the ``ACE-80 CPU.''

The AppliCard itself was designed by Ray Klein and Winthrop L. (``Wink'') Saville III. Saville wrote the 6502-resident command processor, the Z80 CBIOS and the 6502 device drivers needed to interface the AppliCard with all the other peripherals that could be installed in an Apple ][. At one point in the CBIOS source, the AppliCard is referred to as ``the K & S Z80 board.''

Recent communications with Ray Klein revealed that there was an Apple /// native version of the AppliCard, but by the time the first prototypes were finished, the commercial life of the AppliCard design was just about over.

Ray still has the working prototype he and Wink built for a proposed Apple //c version of the AppliCard. It was based on their Apple /// design, but was a separate box that plugged into the external floppy-drive port.

The above paragraph was true up until about 9 March 1997. After talking with Ed Sevarese (CEO of PCPI), Ray sent the schematics for all Z80 AppliCard products, the Apple ///-cum-Apple //c prototype and a couple of blank AppliCards and Klein Associates SIO boards to me. WOW!

A brief review of the schematics showed that revision 02 and earlier boards had some timing and interrupt problems that were fixed with the revision 03 boards. When I mentioned this to Ray, he dug up a copy of the revision 02 schematics, indicated the changes and will be sending them to me. I'll try to make the information available to all who request it. If your AppliCard bears the legend "PCPI 001-0001-03" on the solder side of the board, you have a revision 03 board.

To be continued...


PCPI AppliCard Theory of Operation

The PCPI AppliCard and the Apple ][ computer in which it is installed form a true distributed processing system. That is, the AppliCard and its Apple ][ host communicate only over a set of I/O ports. They do not share memory or any other system resource.

The 64K of DRAM on the AppliCard holds the Z80 CBIOS and the CP/M operating system. All user programs are loaded into this RAM for execution by the Z80 CPU.

As the host system, the Apple ][ provides necessary system services for the AppliCard such as console I/O, other character I/O and handling of disk drives.

The Z80 CBIOS communicates with a 6502 command processor which runs continuously on the Apple ][ host. This command processor constantly polls one of the AppliCard's I/O locations, looking for a command byte from the Z80 CBIOS.

So long as there is no I/O to be done, the AppliCard and the host run independently of one another. When I/O is required, the Z80 CBIOS writes a command byte, followed by appropriate arguments and data, to its host output port. The particular command byte may indicate a function performed directly by the resident command processor, or it may be passed to additional device drivers.

Device drivers are responsible for actually controlling the physical devices present in the Apple ][ and making them available for use by the AppliCard. Nearly any peripheral device may be used from the AppliCard system, provided there is an appropriate device driver.

Depending on the command, the 6502 command processor (or device driver) may return data to the Z80 CBIOS.

To be continued...


Expanding the AppliCard System

Disk images (Apple 5.25-inch) with AppliCard software.
AppliCard files at Oakland....

There are a number of after-market and third-party device drivers available to let you use just about any device you wish with the AppliCard. With few exceptions, if it fits in your Apple, the AppliCard can make use of it.

The cheapest and easiest hardware upgrade for the AppliCard is to install a Z80 CTC in the empty 28-pin socket, if your card currently has no CTC in it. What good would it do? Well, it would allow the 6502 to interrupt the AppliCard when necessary--although that would require some re-writing of the CBIOS and 6502 command processor.

Another alternative would be using the Z80 CTC as a Real-Time Clock.

There were also RAM expansion boards available. These ``AppliDisk'' cards were available in 64K or 128K sizes. Two AppliDisk cards could be stacked for a total 256K of additional RAM. This ram was used as a RAMDisk. At one time, there were plans to implement a banked OS using some of this RAM, but these plans do not appear to have materialized.

A very rare bird indeed is the so-called ``Klein SIO board.'' This board allowed the AppliCard to have 2 RS232 serial I/O channels that were local to the Z80 CPU--eliminating the overhead of having to communicate with a serial card in the Apple ][. The Klein SIO used the on-board CTC (described above) to generate the bit rates for the Z80 SIO chip.

*NEW* Ray Klein told me that he has a number of blank printed-circuit boards for his AppliCard SIO available for a ``nominal'' price (as he put it). You can contact him via the link above for more information

* The author of this document has recently designed his own SIO expansion board. Although inspired by the Klein SIO board, this has a couple of improvements. Whereas the Klein SIO derived bit rates from the the system clock, this SIO board includes its own crystal oscillator so the bit rates are far more accurate.

Future plans include adding a real-time clock/ram chip to the SIO board for an all-in-one BBS-capable add-on.


My AppliCard Credentials

I've been an AppliCard user since 1984 (truly since 1987), so what I have to say here comes from using the card nearly every day for seven years.

I've also been fortunate to have had the opportunity to work with some of the low-level device driver code. It's a masterpiece of elegance. True, the console driver could use some work, and I've been hacking at it, but it's quite a lot of complex code and I haven't been able to devote myself entirely to it.

I haven't found any software that wouldn't run on the AppliCard (except machine-specific stuff, of course). I even have one running with a Corvus flat-cable Apple ][ hard disk in an Apple ][+ with the CP/M partition installed on a ProDOS volume.

It's truly a fantastic machine.


Return to Apple CP/M
Return to The Seven League Systems' CardZ180
Return to Small Computer Systems
Return to John D. Baker's WWWA Home Page

© 1995 John D. Baker, jdbaker@NoSpAm!blkbox.com
Transmission of this document, in whole or in part, via the Microsoft Network requires license. License is available to Microsoft Corporation for an annual fee of US$15,000 plus US$5.00 per machine connected to the Microsoft Network. Appearance of this document on any machine so connected constitutes agreement to these terms. ``Appearance'' means that this document has been transferred to local storage of said connected machine, regardless of whether its contents are rendered on a display device. Please send notice of violation of this licence agreement to John D. Baker.