Z80 + Propeller Protoboard Combo = Work in Progress

Some time ago, I bought an eZ80F91A module from Zilog with hopes of integrating it with a Propeller. This is an eZ80 chip (a Z80 replacement) that includes 128K of flash EEPROM and 16K of RAM along with a bunch of peripherals. The module includes all the support circuitry plus 1MB of flash EEPROM and 512K of RAM along with an Ethernet interface. The thought was to use the Propeller as a display terminal and mass storage device (SD card). I made a piggyback board for the Protoboard so the eZ80F91A fits over the prototype area and the Propeller itself and, after a lot of work, got the basics working as follows:
The eZ80F91A interfaces to the Propeller via I/O pins 0-7. These include four lines for the console serial port (Tx, Rx, CTS, RTS) of which only Tx and Rx are currently used, two lines for eventual use of the I2C interface (SCL, SDA), a line to enable writing to the "boot block" area of the 1MB flash (not used yet), and a line to reset the eZ80 from the Propeller.
The piggyback board brings a variety of other lines to the Protoboard for connection including the SPI engine (for use with another SD card), the eZ80's 2nd serial port, and the eZ80's JTAG port (for debugging and downloading firmware).
The attached eZ80 code (eZ80-CPM) includes the initialization and BIOS routines along with two utility programs. There's a Kermit server that works over the console port and a utility that copies the contents of the "A" drive to either the "B" or "C" drives. The A drive is a 448K drive in the 512K RAM while the B and C drives are each 1/2 of the 1MB flash and are treated as read-only drives by CP/M. The A drive is initialized at reset to contain the two utility programs and is the default drive. The CP/M is a modified version of one posted by vegeneerring (www.vegeneering.com/eZ80_CPM/index.html).
The eZ80F91A Kermit Console is a modified version of OBC's propCOMM2VGA_PDOS VT100 emulator with the XModem downloader replaced by a Kermit downloader. It also has key F3 set up to reset the eZ80.
The KermitBasic archive is a modified version of DongleBasic that includes a RESET statement to reset the eZ80, a TERM statement for it to copy all eZ80 console I/O to the PropPlug port until ended with the Esc key. There's also a KSEND "<file>" statement that downloads the specified file and a SEND "<text>" statement for sending commands to the eZ80. This Basic is intended for use with a VT100 emulator on the PC.
Plans include adding BIOS support for the SD card attached to the eZ80's SPI engine and possibly a rewrite of the VT100 emulator for the Propeller.
Post Edited (Mike Green) : 3/13/2009 6:10:27 PM GMT
The eZ80F91A interfaces to the Propeller via I/O pins 0-7. These include four lines for the console serial port (Tx, Rx, CTS, RTS) of which only Tx and Rx are currently used, two lines for eventual use of the I2C interface (SCL, SDA), a line to enable writing to the "boot block" area of the 1MB flash (not used yet), and a line to reset the eZ80 from the Propeller.
The piggyback board brings a variety of other lines to the Protoboard for connection including the SPI engine (for use with another SD card), the eZ80's 2nd serial port, and the eZ80's JTAG port (for debugging and downloading firmware).
The attached eZ80 code (eZ80-CPM) includes the initialization and BIOS routines along with two utility programs. There's a Kermit server that works over the console port and a utility that copies the contents of the "A" drive to either the "B" or "C" drives. The A drive is a 448K drive in the 512K RAM while the B and C drives are each 1/2 of the 1MB flash and are treated as read-only drives by CP/M. The A drive is initialized at reset to contain the two utility programs and is the default drive. The CP/M is a modified version of one posted by vegeneerring (www.vegeneering.com/eZ80_CPM/index.html).
The eZ80F91A Kermit Console is a modified version of OBC's propCOMM2VGA_PDOS VT100 emulator with the XModem downloader replaced by a Kermit downloader. It also has key F3 set up to reset the eZ80.
The KermitBasic archive is a modified version of DongleBasic that includes a RESET statement to reset the eZ80, a TERM statement for it to copy all eZ80 console I/O to the PropPlug port until ended with the Esc key. There's also a KSEND "<file>" statement that downloads the specified file and a SEND "<text>" statement for sending commands to the eZ80. This Basic is intended for use with a VT100 emulator on the PC.
Plans include adding BIOS support for the SD card attached to the eZ80's SPI engine and possibly a rewrite of the VT100 emulator for the Propeller.
Post Edited (Mike Green) : 3/13/2009 6:10:27 PM GMT
Comments
Feel free to step as many toes as needed to get the VT100 emulator straightened out.
It was my first large project where I struck out on my own and contains a couple bizarre bugs.
(There's even a section of code to reset some bad values that kept cropping up. (A Microsofty fix))
Please keep us up to speed on your progress!
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Check out: Protoboard Introduction , Propeller Cookbook 1.4 & Software Index
Updates to the Cookbook are now posted to: Propeller.warrantyvoid.us
Got an SD card connected? - PropDOS
There's something funny going on when I try to use the Turbo Pascal editor. The proper lines get written to the display, then some of them get erased. I'm sure I'll get this sorted out eventually, but it's frustrating.
I've also attached the latest copy of the eZ80F91A EEPROM code with CP/M 2.2. The MMC/SD card support still doesn't work and I haven't figured out why yet, but the 448KB SRAM drive and two 448K flash EEPROM drives do work. I can edit, compile, and run both Turbo Pascal programs and SBasic programs.