[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [MiNT] XaAES sources for FreeMiNT 1.16.3
> No, I say again, all VDI calls are done if the raw msg appears.
> At this point its trying to drawing on the screen with direct memory writes.
> Why that chokes on aranym? I have no clue. Unless the pointer from
> xbois(2) is returned incorrectly, thus causing the bus error?
Well, I'm not sure what settings you are using for ARAnyM, but in
general you should not expect to be able to write to the screen
directly.
If you are running ARAnyM with the OpenGL VDI driver, there's simply
no way whatsoever to get a direct memory write to show up on the
screen. If using the SDL VDI driver, it would be possible but very
unlikely to be supported (since it would require the entire screen to
be updated at intervals, rather than the modified rectangles the VDI
keeps track of (or perhaps it just updates them directly after every
drawing operation, I don't remember) now).
I don't recall if I kept the address of the screen "secret" for the
RageII driver, but that is quite likely. Due to the nature of the PCI
interface used, direct access would often end up being _very_ slow, or
even to hang forever on an '040. There was only a single 4 kbyte page
available to access at a time, with a bus error handler used to swap
to new areas of the card when you touched some other part of the
screen. That made it a very bad idea to touch more than one page of
the screen in a single instruction on the '040...
I had to do some really "interesting" things to keep the speed up for
background saves and colour image blits (keeping such things in
off-screen space on the card, without the knowledge of the rest of the
system ;-).
/Johan