APPENDIX EIGHT So let's analyze the DL for GRAPHICS 2 that we printed above: 112 These three instructions print 112 24 blank scan lines at the top 112 of the screen 71 GR.2 with LMS instruction added 112 Address of the first line of screen data 158 158 * 256 + 112 = 40560 7 Display the rest of the data in 7 GR.2, so we have a total of 7 ten GR.2 lines, or 10 * 16 = 7 160 scan lines used. 7 7 7 7 7 66 GR.0 with LMS instruction added 96 Address of the text window at bottom 159 159 * 256 + 96 = 40800 2 GR.0 for text window, so we have 2 a total of four lines 2 65 Jump and wait for vertical blank 88 Address of display list itself 158 158 * 256 + 88 = 40536 (return to the top of this list) Now examine the list for GR.2 + 16. You can see that it adds two 7's to replace the GR.0 lines at the bottom of the screen. A little math shows us that the screen in both cases has a total of 192 scan lines. That's an important number; if you want your screen to come out properly, you must insure that you get as close to this figure as possible; otherwise you'll end up with blank lines at the bottom of your screen, or worse -- in the display itself. You will find the value 112 in every Atari display list. The three of them are used to bring the display to a readable location on your set. Try replacing one or more of them with a zero to see what happens without them. The jump instructions are also used to skip across a 1K boundary, since the DL itself cannot cross a 1K boundary without such a jump. Also, DL data cannot cross a 4K boundary, so you must use an LMS instruction before crossing one. The critical factor in designing your own display list is to make sure that the data and the scan lines match. This may require you to manipulate your data so that you have the proper number of bytes per line so that the display appears correctly on the screen. Here are the