[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Drivers for SVA Apple Disk Controller



mjmahon@aol.com (Michael J. Mahon) writes:
>Typically, a card will enable its ROM in the C800.CFFF space when
>a DEVICE SELECT address is referenced--that is, an address in the
>C0sX space, where s = slot + 8.  For slot 7, the "0" DEVICE SELECT
>address is C0F0.  Generally a read is sufficient, and harmless (in terms
>of changing the state of the device).

That is actually atypical. Most cards enable the IOSTB space (C800..CFFE)
when they receive an IOSEL access (CnXX). Furthermore, you have to turn
off any other cards access by touching address CFFF. I would use:

]CALL -151
*CFFF				turn off all cards IOSTB space
*1000<Cn00.CnFF			read IOSEL space and enable IOSTB space
*1800<C800.CFFF			read IOSTB space

You shouldn't need to mess with the C006/7 switches as they are normally
in the correct state.

You will probably find that 1000.10FF matches part of the 1800.1FFF space
or alternatively the last 256 bytes of the IOSTB space are rubbish (instead
of decoding CFFF many cards decode CFxx and bank switch those 256 bytes
into the IOSEL space). If you want to burn a new ROM you will need to work
out how these two memory images are combined.

P.S. Make sure you do not have your //e in 80 column mode when you do
this.
--
David Wilson  School of IT & CS, Uni of Wollongong, Australia