Screen Graphics 64

From C64-Wiki
Jump to: navigation, search
Screen Graphics 64
Cover
Developer Roy Wainwright
Company Abacus Software
Publisher Adamsoft, Abacus Software
Release 1983
Licence Full version
Platform C64
Genre BASIC Expansion
Operation Icon tastatur.png
Media Icon kassette.png Icon disk525.png
Language(s) Language:english
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]

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 used 3 paintbrushes A (color 1-16) , B (101-116) and C (201-216). This table is similair to the C64 color table, but not like the color adress for the POKE command (normally from 0-15) in CBM-BASIC!

Function Keys[edit]

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]

Hires/Multicolor Commands[edit]

  • HIRES sc, bc - setup HiRes screen with screen color sc and border color bc
  • MULTI sc, bc - setup multicolor screen
  • TIC x, y, c - tic mark the screen edges with x (0-319) and y (0-199)
  • DOT x, y, c - plot a single point
  • DRAW x1, y1, x2, y2, c - plot a line
  • BOX x1, y1, x2, y2, c - plot a box
  • CIRCLE x, y, r, c - plot a circle with radius r
  • CHAR g, x, y, c, "string" - display graphic text characters with textstyle g (1-4)
  • BLOCK x1, y1, x2, y2, c - block fill
  • MODE a - set plot mode with a (0 = normal; 1 = erase; 2 = reverse)
  • FILL x,y,c[,a] - fill an aera with e (0-2; not in multicolor!)
  • PIXEL(x,y) - function which tests for point on/off

Screen Control Commands[edit]

  • DUMP"filename"[,device] - save graphice display
  • GREAD"filename"[,device] - load graphice display
  • NORM - switch screen to normal text screen
  • GRAPH - switch screen to graphic screen

Sprite Commands[edit]

  • COPY sp, linenumber - copy sprite sp (0-15) from line number (first line with defintion by command BIT, COLORS, HEX, SDATA
  • SPRITE 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, mc3
  • OFF n - turn off sprite n (1-8)
  • PLACE n, sx, xy - move sprite n (1-8) to position x, y

Sprite Picture Definitions[edit]

  • 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 multicolors
  • SDATA"val,val,val,..." - alternate data definition requires 63 values (0 - 255)

Memory Map[edit]

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 

Links[edit]