Re: SPI on the User Port ... Mode Hang-Ups.
- From: BruceMcF <agila61@xxxxxxxxxxxx>
- Date: Tue, 29 Jan 2008 01:51:22 -0800 (PST)
On Jan 29, 1:31 am, Jim Brain <br...@xxxxxxxxxx> wrote:
I was thinking about others that might want to use it. They would be
hard pressed to give up their RS232 port for this, unless someone
patched all the SW to use the alternate solution.
But if they have a serial cart, or a PC pretending to be a 1541, or an
Ethernet cart, or they have a cardreader on a PC/Linux box on the net
and use an MMC based sneakernet.
I am not sure that it can do anything but interfere with a User-Port
serial port, but on the other hand it *would* be an interface that
could access a serial port running faster than 9600, so there would be
a rationale for patching the most important software.
I'm struggling to think of anyway to share the two serial shift
registers between an SPI interface and a RS-232C interface, but I
don't see it, and sharing the SPI interface with an SPI UART is so
much more straightforward and has substantially higher bandwidth.
Instead, I think the way to share an RS-232C interface on the User
Port with an SPI backplane is to put a serial shift register in a cart
with a control register, and put the backplane on an expansion cart.
Mind you, this is just notional. I can see playing around with the
User Port, but probably not getting around to an expansion car.
But anyway, use the system clock and an 8-clock counter to drive the
SPI bus for 1Mbs. Its the same flash-ram internal and same female DB-9
connectors for homebrew SPI dongles. Since most of the parts are
normally for 16MHz, 33MHz or higher speeds, it would still be
massively under spec for them, but there'd have to be some provision
to stretch out the clock for Sony PS1 controllers.
For normal parts, there is a loop somewhere pulling out (or pumping
in)
LDY #0
- LDA (V),Y
STA SPI_DATA
INY
BNE -
and there is more than eight clocks between STA SPI_DATA, so except
for one extra byte at the beginning of a transaction for the UART
register, mode and R/W, its like writing to a UART wired into the
expansion cart.
So ultimately:
Dirty cheap, way slow, hacky interface: Daniel Dallman's 9600 BPS with
one female DB-9 connector, hacked driver to access the SPI by free
standing bit banding when the serial port is "closed", and integrated
into the RS-232C routines when the serial port is "open".
Still cheap, native CIA SPI: hog the whole User-Port, internal flash
ram and 3 SPI connectors. Hardware support for Mode 0, and native Mode
3.
Notional: SPI cartridge
Notional^2 ... 8MHz SPI datapump, with origin and/or destination
addresses, write a count from 1 to 8 in the pump primer, and DMA
acquires and/or fills that 1 to 8 bytes of data (if I understand
correctly that only taking acquiring 8 clocks in a transaction saves a
lot of grief).
.
- Follow-Ups:
- Re: SPI on the User Port ... Mode Hang-Ups.
- From: Jim Brain
- Re: SPI on the User Port ... Mode Hang-Ups.
- References:
- SPI on the User Port ... Mode Hang-Ups.
- From: BruceMcF
- Re: SPI on the User Port ... Mode Hang-Ups.
- From: Jim Brain
- Re: SPI on the User Port ... Mode Hang-Ups.
- From: BruceMcF
- Re: SPI on the User Port ... Mode Hang-Ups.
- From: Jim Brain
- Re: SPI on the User Port ... Mode Hang-Ups.
- From: BruceMcF
- Re: SPI on the User Port ... Mode Hang-Ups.
- From: Jim Brain
- Re: SPI on the User Port ... Mode Hang-Ups.
- From: BruceMcF
- Re: SPI on the User Port ... Mode Hang-Ups.
- From: Jim Brain
- SPI on the User Port ... Mode Hang-Ups.
- Prev by Date: Re: vic 2 patent
- Next by Date: Re: AMX Mouse anyone?
- Previous by thread: Re: SPI on the User Port ... Mode Hang-Ups.
- Next by thread: Re: SPI on the User Port ... Mode Hang-Ups.
- Index(es):
Relevant Pages
|
Loading