Super Expander 64
|Super Expander 64|
|Information||VIC-20 version also released|
The Super Expander 64 is a BASIC extension from Commodore for the C64, expanding BASIC V2 to give similar functionality found in BASIC 3.5. It includes 21 new BASIC commands and 11 functions allowing for easier graphics manipulation and programming such as HiRes, sprites, shapes, chars, split screen, etc., as well as for sound and input requests for keyboard, joystick, paddles or light pen.
The Super Expander does not modify the start screen, but it reduces the memory of the C64 to 30719 bytes free and uses 8 KByte RAM.
Commodore also released a version for the VIC-20.
Commands[edit | edit source]
Note: Programs developed with Super Expander 64 only run error free when using the Super Expander 64 cartridge.
The new commands and functions are:
Graphics: GRAPHIC, SCNCLR, COLOR, BOX, CIRCLE, DRAW, PAINT, LOCATE, SCALE; CHAR RCLR(), RDOT(), RGR() Sprites & Shapes: SSHAPE, GSHAPE, SPRSAV, SPRDEF, SPRITE, SPRCOL, MOVSPR, RSPCOL(), RSPPOS(), RSPR() COLINT, RBUMP() Inputs: KEY, RJOY(), RPOT(), RPEN() Music & Sound: TEMPO, TUNE, FILTER
Function Keys - KEY
The function keys call these BASIC commands:
Pressing the keyruns the BASIC command.
Here is an overview of the function key map using:
A function key can defined with:
KEY [<number of function key>,<string>]
- <number of function key>: 1 until 8
- <string>: for example
KEY 1,":RUN:"+CHR$(13) The BASIC command RUN is called and run onKEY 2,"" Deletes the key
Note: using CHR$(13) is the equivalent of an automatickey.
User Manual[edit | edit source]
- USER CONVENTIONS
- COMMAND SUMMARY
- 1. GETTING STARTED
- 2. TEXT and GRAPHIC
- 3. SPRITE GRAPHICS
- 4. GAME CONTROLS and FUNCTION KEYS
- 5. SOUND EFFECTS and MUSIC
- Appendix I: PROGRAMMING NOTES
- Appendix II: COMMAND REFERENCE GUIDE
- Appendix III: SAMPLE PROGRAMS
At the end of the user manual are some examples of BASIC programs by using Super Expander 64. This BASIC listings demonstrate the new programming features of the new BASIC commands:
- Listing 1: Logo of Commodore
- Listing 2: Exercise of Split Screen
- Listing 3: Polygons
- Listing 4: Arcs, Circumferences and Ellipsis
- Listing 5: Memorization and Resuming of Forms (Saving Shapes and Getting Shapes)
- Listing 6: Sketch and Coloration of Forms (Drawing and Painting Shapes)
- Listing 7: Animated Sprites (Floating Sprites)
- Listing 8: Demonstrations Joystick
- Listing 9: SUPER EXPANDER 64 Pong (a game by using paddles)
- Listing 10: Ripple Effect (Moire Pattern)
- Listing 11: Hypnotic sketch (Hypnotic Pattern)
Notes[edit | edit source]
- When using the datasette recorder all sprites must be switched off.
- The new BASIC commands have no new BASIC error message
- Stopping a BASIC program with
or through an error, the graphic mode switches to the text mode and automatic routines run until end. The screen mode isn't changed after the commands
- By restarting a BASIC program with the command
CONTautomatic routines aren't started, e.g. right graphic mode, running background music, sprite collision, etc.
- + the program holds and stops the automatic routines
- By using IF...THEN... "Super Expander 64" commands need first a : behind the command THEN!
Memory Map[edit | edit source]
The Super Expander 64 uses the following memory map $8000 - $9FFF (32768 - 40959) and reduces the free BASIC memory (8192 bytes are blocked from the cartridge).
Using the Commodore IEEE-488 interface the cartridge also uses 2048 more bytes, which start at the memory map $C000 (49152). If IEEE devices are used, the cartridge needs also 2048 bytes more, starting at the memory map $7800 (30720).
Hexadecimal | Decimal | Description ====================================================================================================================== $8000 | 32768 | stack for PAINT coordinates $8A00 | 35328 | using for 8 sprite data $8C00 | 35840 | color ram for HiRes pictures $9000 | 36864 | moved char ROM $A000 | 40960 | memory for HiRes pictures $C000 | 49152 | temporarily area for saves by using IEEE-488 interface and devices $C400 | 50176 | memory for modifying chars by the command CHAR and by using split screen with text $CC00 | 52224 | reserved for memory expansions until ($CFFF; 53247)
Links[edit | edit source]
- C64Games.de - Game No. 3174 Cartridge version (CRT)