[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Mix LGR and Text?
Jorge Chamorro Bieling wrote:
> memory-mapped, but i can not figure out how did you manage to know when
> it's vsync-time on an a2, a2+ ? I'm telling you because I tried this
> long time (20 years ?) ago on an a2 with the mouse card's "vbl"
> interrupts. The other way I thought it could be done (but never tried)
> was finding the vsync signal in the video generator circuit (page 151,
> red book, it is one of c13's inputs) and tie it to a game-connector's
> switch-n input to be able to poll it reading c06n.
Don Lancaster documented just such a modification in his Enhancing the
Apple II, volume 1.
Bob Bishop discovered the "floating bus" technique, reading the video
values hanging around on the data bus, which Lancaster documented in
his Enhancing the Apple II/IIe, volume 2. Some hardware expansion cards
can load down the bus enough that the value goes away.
> Also, being such a time-critical loop, if not interrupt-driven, there's
> not much you can do while in-the-loop, or the whole thing stops being
> in-sync... ?
It depends on what you are trying to do. Lancaster showed a good
technique for getting an absolute lock on the bus-sniffing "Vaporlock"
by carefully choosing hidden hi-res video values on successive scans to
get a byte-exact lock in one video field. He also showed if you look at
just the VBL value, it takes multiple video fields with careful timing
to zero in on the transition, because the width of the VBL transition
is pretty large.
Afterward, you have to exactly count cycles to maintain the lock; this
is where it gets very near Atari-2600 style programming. Depending on
the requirements, one might be able to deal with a certain amount of
jitter or drift. That's one reason this wasn't widely used.