Screen Graphics 64
Screen Graphics 64 | ||
---|---|---|
Developer | Roy Wainwright | |
Company | Abacus Software | |
Publisher | Adamsoft, Abacus Software, CCI Software[1] | |
Release | 1983 | |
Licence | Full version | |
Platform | C64 | |
Genre | BASIC Expansion | |
Operation | ||
Media | ||
Language(s) | ||
Information |
Screen Graphics 64 is an extension software written by Roy Wainwright of Abacus Software. It adds 24 graphics commands to Commodore 64 BASIC. These include switching to high resolution and multicolour screens, sprite manipulation tools, and commands for drawing pixels, lines, boxes and circles.
The disk or tape contains the "Screen Graphics 64" interpreter, a demo program and a tutorial program and also a small manual book (about 25 sides).
Color table[edit | edit source]
Screen Graphics 64 used a modify color table for the color in the new commands:
Number | Color 1 | black 2 | white 3 | red 4 | cyan 5 | purple 6 | green 7 | blue 8 | yellow 9 | orange 10 | brown 11 | light red 12 | dark gray 13 | medium gray 14 | light green 15 | light blue 16 | light gray
The new commands can use 3 paintbrushes A (color 1-16) , B (101-116) and C (201-216). This table is similar to the C64 color table, but not like the color address for the POKE command (normally from 0-15) in CBM-BASIC.
Function Keys[edit | edit source]
The function keys called this functions of Screen Graphics 64:
- F2 - Save a graphic screen
- F4 - Load a graphic screen
- F5 - Switch to text screen (normal BASIC screen)
- F7 - Switch to graphic screen
Command Summary[edit | edit source]
Hires/Multicolor Commands[edit | edit source]
HIRES sc, bc
- setup HiRes screen with screen color sc and border color bcMULTI sc, bc
- setup multicolor screenTIC x, y, c
- tic mark the screen edges with x (0-319) and y (0-199)DOT x, y, c
- plot a single pointDRAW x1, y1, x2, y2, c
- plot a lineBOX x1, y1, x2, y2, c
- plot a boxCIRCLE x, y, r, c
- plot a circle with radius rCHAR g, x, y, c, "string"
- display graphic text characters with textstyle g (1-4)BLOCK x1, y1, x2, y2, c
- block fillMODE a
- set plot mode with a (0 = normal; 1 = erase; 2 = reverse)FILL x,y,c[,a]
- fill an area with e (0-2; not in multicolor!)PIXEL(x,y)
- function which tests for point on/off
Screen Control Commands[edit | edit source]
DUMP"filename"[,device]
- save graphics displayGREAD"filename"[,device]
- load graphics displayNORM
- switch screen to normal text screenGRAPH
- switch screen to graphic screen
Sprite Commands[edit | edit source]
COPY sp, linenumber
- copy sprite sp (0-15) from line number (first line with definition by command BIT, COLORS, HEX, SDATASPRITE n, sp, mc, pr, ex, ey, mc1, mc2, mc3
- turn on sprite with multicolor mode mc (0,1) priority pr (0,1), expanding ex and ey (0,1) and multicolors mc1, mc2, mc3OFF n
- turn off sprite n (1-8)PLACE n, sx, xy
- move sprite n (1-8) to position x, y
Sprite Picture Definitions[edit | edit source]
BIT"bbbbbbbbbbbbbbbbbbbbbbbb"
- single hires definition requires 21 lines with b (0 or 1)HEX"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh"
- alternate hires definition requires 21 lines with h (0 - F)COLORS"cccccccccccc"
- multicolor definition requires 21 lines with c (0 - 4) for the 4 multicolorsSDATA"val,val,val,..."
- alternate data definition requires 63 values (0 - 255)
Memory Map[edit | edit source]
The "Screen Graphics 64" BASIC expansion used the following memory map:
Decimal Hex Description 2048- 7424 S0800-S1DOO Screen Graphics 64 interpreter 7552-32767 SlD80-S7FFF Your BASIC program area 32768-33727 $8000-$83BF Sprite pattern area 33728-33791 $83CO-S83FF Graphics chip register save area 33792-34815 $8400-$87FF Graphic screen pointers 34816-35839 $8800-S8BFF Graphic screen color save 35840-36863 $8COO-$8FFF Area for BASIC screen 36894-40959 $9000-$9FFF Character ROM 40960-49151 SAOOO-SBFFF Bit mapping area 55296-56319 $D800-SDBFF Color memory dynamic area