View Full Version : For all the Z80 fans

03-11-2012, 12:05 PM
I'm playing around with the idea of stacks of Gadget Gangster boards where all the prop pins on a board can be placed in HiZ. Effectively this disables the board, and it means that one propeller can talk to all sorts of boards. Previously this concept hasn't been all that useful as anything that deselects a TV or VGA display will blank the screen.

However, the touchscreen has its own internal ram, so once a picture has been sent to the touchscreen, the prop can go off and talk to other boards without the display blanking.

So I'm thinking of adding a Z80 co-processor board.

Why? Well partly just to see how few parts it might take. Partly as a demonstration of how co-processors might work in general. And partly because I think it might still work a little bit faster than the best Z80 emulation we have.

The circuit has a few extra chips to completely isolate the pins - even pullups need to be isolated, so there are some 244 chips and a 74HC4316. Also, while a minimalist design can have less parts, I think at a minimum it does need a keyboard, TV or VGA display and an SD card.

But I think the true Z80 core can be done with one ram chip, one Z80, three latches, one 138 decoder and a 245 bidirectional buffer.

The idea would be that the propeller would disable the Z80 with a busrq, fill the ram, then issue a reset and set the Z80 going. A cog would run the clock, which could be useful for changing the speed of games (so you can *cough* win).

If this ran CP/M, it could be customised so that instead of I/O working with an 8255 or a UART, instead it reads and writes from some circular buffers in high ram. The propeller would take over the ram periodically and read and write from the buffers.

The board's number is GP2 so wherever GP2 appears on the schematic, if this is L the board is selected and if H then everything in and out of this board would be HiZ. I might need to think about the clock a bit more, there may be an argument for a local clock on the board.

I'll see how the layout goes, maybe one could fit a couple of Z80+ram chips on the board?

Toby Seckshund
03-11-2012, 12:32 PM

I never got around to finnishing my bolting Z80 to a Prop thoughts (nothing new there). I was going to use the initial tristates of the Z80 from its /RST (I think) to pre-load the RAM, and after that use the /BUSRQ. For the clocking I was going to use a counter so that the best speed could be built up to (6MHz @ 3.3 Volts from a 10MHz CMOS ???). By using the Prop's output pin "ORing", on the clock feed, the Z80 could be halted whilst tricky bits were done.

I have been messing around with these, in a way of learning something that could be transfered across -


User Name
03-11-2012, 09:06 PM

I often entertain the thought of doing a similar thing, but with a 33 MHz CMOS 6502 from Western Design Center. The difference here is that you are likely to get your project done.

Your track record of making daily progress until a project is finished is simply amazing!