[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ZipGS and the annunciator ports...any connection?
I'm a bit late coming into this thread - been rather busy lately.
Scott Alfter <scott@alfter.DIESPAMMERSDIE.us> wrote:
> If I use AN0 and AN1 on a ZipGS-equipped machine to control other hardware,
> is that going to have some effect on the ZipGS's operation? Since all of
> the ZipGS's configuration is done through software, was the means by which
> it's configured ever documented by anybody? If the accelerator kicks in
> while software is communicating with 1-Wire devices, it'll produce invalid
> results, so I need to make sure that doesn't happen.
I have a printed summary of the soft switches which control the ZipGS,
sent to me by Zip Technologies back in the early 1990s.
I don't have time to scan it at the moment, but here is a very quick
summary:
The ZipGS uses I/O locations $C058 through $C05F. Some of these are
write-only, others are read/write.
This corresponds to all of the annunciators, so any code which controls
the ZipGS will have the side effect of tweaking several of the
annunciators.
The critical one is $C05A: Writing a value of $5x to this location four
times in a row will unlock the ZipGS, allowing its other registers to be
accessed. Writing $Ax four times will lock the ZipGS.
If you don't want the ZipGS configuration software to hit your
annunciator outputs, then you must avoid AN1. You're probably also at
risk of AN0 and AN2 being modified, depending on which configuration
registers get accessed. The ZipGS software is unlikely to access AN3,
but that is used by Double Hi-res Graphics mode, so it could be
interfered with anyway.
Annunciator I/O accesses by applications won't affect the ZipGS, unless
they happen to write $5x four times in a row to $C05A.
The full list (if unlocked):
$C058 write only: reset ZipGS to defaults.
$C059 read status and read/write some mode settings
$C05A read speed, write to lock/unlock
$C05B read status, write to set ZipGS to "current system speed"
$C05C read/write slot-specific delays
$C05D read bank, write speed
$C05E read tag data with side effects
$C05F read tag data
--
David Empson
dempson@actrix.gen.nz