[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Request for Product
"Bill Garber" <willy46pa@comcast.net> writes:
>: Instead, the select lines should be switched: I/O Select,
>: Device Select, I/O Strobe. That will be enough to switch
>: almost all cards (execptions would be that do their own
>: slot decoding on board--a dubious practice).
>I believe only /DEVSEL is needed to be switched in.
>/IOSEL and /IOSTROBE are rendered inactive while /DEVSEL
>is High. So, therefore, with device select switched out,
>the card will not be accessed at all.
/DEVSEL is active (low) in the 16 byte area $C0Mx (M=slot+8) while
/IOSEL is active in the 256 byte area $CNxx (N=slot) and /IOSTB is
active from $C800..CFFF inclusive.
You do need to gate each of these three signals like so:
/DEVSEL1 = /DEVSEL + CARDSEL
/DEVSEL2 = /DEVSEL + /CARDSEL
/IOSEL1 = /IOSEL + CARDSEL
/IOSEL2 = /IOSEL + /CARDSEL
/IOSTB1 = /IOSTB + CARDSEL
/IOSTB2 = /IOSTB + /CARDSEL
eg
/IOSEL
/IOSEL1 | 0 1
----------+-----------------
CARDSEL=0 | 0 1
CARDSEL=1 | 1 1
Thus only one card will be activated and changing CARDSEL will change
which card it is.
There are cards that can share a slot at the same time without any switching.
The Z80 Softcard only uses /IOSEL (a write turns the card on or off).
The Stellation 6809 Mill card only uses /DEVSEL (works well in slot 3 of
a IIe).
I am sure that there are other cards that only use one or other of the
select lines.
--
David Wilson School of IT & CS, Uni of Wollongong, Australia