[comp.sys.atari.8bit] DLI etc

slackey@bbn.com (Stan Lackey) (12/28/88)

I have finally done my first DLI <yawn> so what's the big deal?
Well - I first did the following.  I changed the display stuff at
some point on the screen, to change the color registers and the character
set, and relied on the built in vertical blank routine to change them
back for the top half of the screen again.  Well, it seems like
CRITIC gets set a lot more than I expected, as there was a lot of
flicker on the to half.  So, I made an addition to the first stage
VBI to set the character set and colors back all the time.

I still get some flicker (it seems to miss either interrupt from time
to time, say once every 10 seconds)!

Is this a reality in the Atari, or did I not set something up right?

-Stan

brett@sylvester.umd.edu (Brett S Bourbin) (01/06/89)

In article <33887@bbn.COM> slackey@BBN.COM (Stan Lackey) writes:
>I have finally done my first DLI <yawn> so what's the big deal?
>Well - I first did the following.  I changed the display stuff at
>some point on the screen, to change the color registers and the character
>set, and relied on the built in vertical blank routine to change them
>back for the top half of the screen again.  Well, it seems like
>CRITIC gets set a lot more than I expected, as there was a lot of
>flicker on the to half.  So, I made an addition to the first stage
>VBI to set the character set and colors back all the time.
>

Well, like you said, the VBI CRITIC flag is there for a reason.  It is
needed for the OS I/O routines.  Stealing the first stage VBI and doing some
hardware poking, then vectoring to the second stage is your best bet.  Just
remember that during the horizontal blank (DLI), you only have enough time
to change one or two registers after the WSYNC.

The _Big Deal_ about DLI's is what you can do with them.  Sure, everyone
today can change the colors of the screen midway down and change the
character set pointer.  But the DLI is more than that.  I have used the DLI
in the past to simulate a 3-D scrolling maze, where the VBI created a custom
DLI each time the player moved.

I also have created a "virtual sprite" system with the use of the DLI which
allows many, many more sprites than the 4 hardware limit.

Just some food for thought.




--Brett S Bourbin
 __  __   _  __  _  Instructional Computing Programs -- Univ of Maryland
|  ||  | / ||  || \
|  ||  ||  ||  ||  |  INTERNET: brett@SYLVESTER.UMD.EDU
|  ||  ||  ||  ||  |            bbourbin@UMD5.UMD.EDU
 \_||_/ |__||__||__|       BIX: brettb
    College Park        BITNET: bbourbin@UMDD