James Moxham (Dr_Acula)
2014-01-05 11:24:24 UTC
I've been working on a touchscreen board, and while I have a board that
works with the propeller chip
I've got an idea that it can also be done with a Z80 chip.
The touchscreens are getting less - under $10 now with free shipping
http://www.ebay.com.au/itm/2-4-Inch-TFT-LCD-Module-Display-240-x-320-Screen-Touch-Panel-PCB-adapter-NEW-/301036501983?pt=AU_B_I_Electrical_Test_Equipment&hash=item46172c7bdf
Getting that pacman program working took a lot of coding, and while it is
very simple to put a picture on the screen, it is more complicated to move
sprites around. Data needs to be dumped out of two ram chips at 5-10Mhz and
in a 16 bit wide bus. Also the touchscreen needs to be polled regularly for
the finger position. The propeller is a good chip for this as it can do
several things at once, but I'd like to see it done with a Z80.
So - why not have several Z80 co-processor chips on a separate ECB board?
We can have one devoted to polling the touchscreen finger position, and
another dumping out sprites as fast as possible, so this frees up the main
Z80 for higher level tasks like the game logic. I have designed a generic
minimal Z80 co-processor circuit - see attached.
Lots of things are already on the ECB bus and the motherboard, eg power
supply, clock signal, and all the smart code to boot up a Z80, so no eprom
is needed. Only 5 chips. It seems a bit bad to only use 64k of a ram chip
with 512k but these chips are cheap, and that saves on decode logic. An
8255 handles the interface to the ECB bus and a bootstrap program can be
placed in the first 1024k of ram. There is another 8255 for general I/O. A
74688 decodes the port address and this uses 4 ports per Z80. Data transfer
is via a pseudo DMA via the lower 1024k of ram and via the 8255 chip.
I'm not sure where this will end up, but it might be possible to squeeze up
to 3 of these coprocessor circuits on a single ECB board.
Thoughts would be most appreciated.
Cheers, James Moxham
works with the propeller chip
I've got an idea that it can also be done with a Z80 chip.
The touchscreens are getting less - under $10 now with free shipping
http://www.ebay.com.au/itm/2-4-Inch-TFT-LCD-Module-Display-240-x-320-Screen-Touch-Panel-PCB-adapter-NEW-/301036501983?pt=AU_B_I_Electrical_Test_Equipment&hash=item46172c7bdf
Getting that pacman program working took a lot of coding, and while it is
very simple to put a picture on the screen, it is more complicated to move
sprites around. Data needs to be dumped out of two ram chips at 5-10Mhz and
in a 16 bit wide bus. Also the touchscreen needs to be polled regularly for
the finger position. The propeller is a good chip for this as it can do
several things at once, but I'd like to see it done with a Z80.
So - why not have several Z80 co-processor chips on a separate ECB board?
We can have one devoted to polling the touchscreen finger position, and
another dumping out sprites as fast as possible, so this frees up the main
Z80 for higher level tasks like the game logic. I have designed a generic
minimal Z80 co-processor circuit - see attached.
Lots of things are already on the ECB bus and the motherboard, eg power
supply, clock signal, and all the smart code to boot up a Z80, so no eprom
is needed. Only 5 chips. It seems a bit bad to only use 64k of a ram chip
with 512k but these chips are cheap, and that saves on decode logic. An
8255 handles the interface to the ECB bus and a bootstrap program can be
placed in the first 1024k of ram. There is another 8255 for general I/O. A
74688 decodes the port address and this uses 4 ports per Z80. Data transfer
is via a pseudo DMA via the lower 1024k of ram and via the 8255 chip.
I'm not sure where this will end up, but it might be possible to squeeze up
to 3 of these coprocessor circuits on a single ECB board.
Thoughts would be most appreciated.
Cheers, James Moxham
--
You received this message because you are subscribed to the Google Groups "N8VEM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to n8vem+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
To post to this group, send email to n8vem-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
Visit this group at http://groups.google.com/group/n8vem.
For more options, visit https://groups.google.com/groups/opt_out.
You received this message because you are subscribed to the Google Groups "N8VEM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to n8vem+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
To post to this group, send email to n8vem-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
Visit this group at http://groups.google.com/group/n8vem.
For more options, visit https://groups.google.com/groups/opt_out.