[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Apple II VGA Video Generator Card Project
Mark McDougall wrote:
Jorge Chamorro Bieling wrote:
You see it as: "Standard memory is cheaper, and there's a way to go
with it". And then you're right. still... hmmm I see the dual-ported
ram design as bright and clean, and the other as a pain to suffer
because the dual port ram happens to be so expensive.
I agree, the dual-port idea is much less painful. But that means large
(== expensive) FPGA or some external DPRAM which also increases the
minimum I/O count of your chosen device.
I don't know much about A2 hardware, but a colleague mentioned some
vague recollection he had about doing 'tricky' things with A2 graphics
timings to get 'special effects' (he couldn't give me anything more
concrete than that). I'm assuming he's talking about updating A2 video
RAM at strategic points in time to get undocumented behaviour...
He was talking about switching video display modes at precisely
timed points in the raster to allow arbitrary "mixing" of video
display modes on the screen.
If this is indeed the case, you're going to lose that capability if
you're 'screen-scraping' the A2 video RAM completely asynchronously. IIR
I do notice that Slot 7 has the VBLANK/VSYNC signal on it. But that my
not be enough...
All the video softswitch references can also be snooped on the
bus, so the issue is not knowing that they are occurring, but
synchronizing their effects to produce corresponding effects
on the VGA display. I agree that this will be difficult unless
the VGA raster is kept in sync with the Apple II raster, meaning
that the horizontal scan frequency is exactly twice the Apple
scan frequency, the vertical scan frequency is exactly the Apple
vertical frequency, and they are phase locked. Further, the
exact point of the softswitch changes will have to be marked
and used on two successive "replays" of each line.
This is an example of "painful compatibility" since is severely
restricts design choices to obtain the last .01% compatibility.
A synchronous scan doubler handles all these cases transparently.
FWIW, if you're going to stick a *large* FPGA on it, you may as well
include a cheap USB host chip, some (more) RAM and CF adapter. That way
you can make a multi-function card which does VGA, takes USB
keyboard/mouse, has extra RAM, and Compact Flash.
For all the talk about how difficult it would be to create an 8-bit
micro 'USB card', if you only want keyboard/mouse, it would be trivial
to get, say a Cypress USB host chip, and write firmware on the chip to
talk to a HID USB keyboard, emulate the A2 keyboard chip in the FPGA -
no A2 driver software necessary.
But that will require a "flying cable" from the card to the keyboard
connector, and a switch matrix emulation for machines prior to the
IIgs and an ADB emulation for the IIgs.
-michael
Music synthesis for 8-bit Apple II's!
Home page: http://members.aol.com/MJMahon/
"The wastebasket is our most important design
tool--and it is seriously underused."