107 To discover the exact end of memory, use this routine (it's a tad slow): 10 RAMTOP = 106: TOP = PEEK(RAMTOP) 20 BYTE = TOP * 256: TEST = 255 - PE EK(BYTE): POKE BYTE,TEST 30 IF PEEK(BYTE) = TEST THEN TOP = T OP +1: POKE BYTE, 255 - TEST 40 GOTO 20 50 PRINT "MEMORY ENDS AT "; BYTE One caution: BASIC cannot always handle setting up a display list and display memory for GRAPHICS 7 and GRAPHICS 8 when you modify this location by less than 4K (16 pages; 4096 bytes). Some bizarre results may occur if you use PEEK(106) - 8 in these modes, for example. Use a minimum of 4K (PEEK(106) - 16) to avoid trouble. This may explain why some people have difficulties with player/missile graphics in the hi-res (high resolution; GR.7 and GR.8) modes. See location 54279 ($D407). Another alternative to reserving memory in high RAM is to save an area below MEMLO, location 743 ($2E7: below your BASIC program). See also MEMTOP, locations 741, 742 ($2E5, $2E6). 107 6B BUFCNT Buffer count: the screen editor current logical line size counter. 108,109 6C,6D BUFSTR Editor low byte (AM). Display editor GETCH routine pointer (location 62867 for entry; $F593). Temporary storage; returns the character pointed to by BUFCNT above. 110 6E BITMSK Bit mask used in bit mapping routines by the OS display handler at locations 64235 to 64305 ($FAEB to $FB31). Also used as a display handler temporary storage register. 111 6F SHFAMT Pixel justification: the amount to shift the right justified pixel data on output or the amount to shift the input data to right justify it. Prior to the justification process, this value is always the same as that in 672 ($2A0). 112,113 70,71 ROWAC ROWAC and COLAC (below) are both working accumulators for the control of row and column point plotting and the increment and decrement functions. 114,115 72,73 COLAC Controls column point plotting.