Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!wuarchive!uunet!cbmvax!daveh From: daveh@cbmvax.commodore.com (Dave Haynie) Newsgroups: comp.sys.amiga.hardware Subject: Re: How does an expansion board control DTACK*? Message-ID: <21304@cbmvax.commodore.com> Date: 6 May 91 21:09:50 GMT References: Reply-To: daveh@cbmvax.commodore.com (Dave Haynie) Organization: Commodore, West Chester, PA Lines: 47 In article johnf@ssl.berkeley.edu (John Flanagan) writes: > The problem is that GARY seems to be in control of DTACK*. GARY does in fact control DTACK*. We think of it as the way things are supposed to behave, not as a problem :-) >I've pored over the A500 schematics and the 1.3 Hardware Reference Manual, Neither of which are the right books for hardware design, you should get the "A500/A2000 Technical Reference Manual", which can be ordered somehow from Commodore. >and have come to the conclusion that I need to have my board let GARY >know that it is not yet ready for DTACK* to go out, and that this is >probably accomplished through the use of XRDY and/or OVR*, which are >available from the expansion interface. Exactly! > My first guess was to lower XRDY until I'm ready for DTACK*, >and hope that GARY will generate DTACK when I let up on XRDY. Well, that is what XRDY does. First of all, you need to generate XRDY very quickly for it to work, in about 35ns if memory serves. Secondly, you'll probably get a glitch on DTACK* anyway, since for expansion memory, GARY generates DTACK* from AS* alone. That's no problem, though, since the 68000 (or anyone else monitoring DTACK*) can only look at DTACK* by sampling it on falling edges of the 7MHz clock after 68000 state S4. Any DTACK* glitch generated this way will be over in S2 or so. Finally, make sure you only generate XRDY (or OVR*) for your own devices. There is no way you can alter the timing of DTACK* for any other device in the system. >Now I'm thinking that maybe I should pull OVR* (override) down, >and generate DTACK* myself. You could do that, too. OVR* needs to go in 60ns or so from AS*, a little easier to generate than XRDY. You'll still get a glitch on DTACK*, which again won't be a problem. And as with XRDY, you can only generate OVR* for your own device. >John Flanagan Center for EUV Astrophysics -- Dave Haynie Commodore-Amiga (Amiga 3000) "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: hazy BIX: hazy "That's me in the corner, that's me in the spotlight" -R.E.M.