I have incorporated Andre's information into the list of Basic
differences(below). This leaves 2 questions unanswered.
1) Does the CBM-II have control codes that are not common to all
Commodore computers and that are not in the list below?
2) Does the CBM-II have extra space between lines in text mode like the
8032?
-------------------------------------------------------------------------------
Commodore Basic Differences
Original PET
Arrays are limited to 256 elements.
GOTO cannot have a space.
RND(0) repeats the same number; use RND(TI).
Text mode upper and lower case letters are exchanged.
The zero at 1024 is saved as part of the program. Other versions cannot
relocate these programs, they must be loaded at 1024. If that is not
possible, replace the "00 04 00" at the beginning of the program file
with "01 04".
PET/CBM
CHR$(14) and CHR$(142) are only supported in Basic 4.0;
POKE 59468,14 for text mode, POKE 59468,12 for graphic mode.
PET's with a CRTC usually have extra space between lines in text mode.
To remove the extra space, PRINT CHR$(142);:POKE 59468,14.
Character 92 is a backslash.
Characters 96-127 are the same as 32-63.
Basic programs must have a load address of 1025.
CBM-II
BANK can be done as POKE 599,bank.
FRE(x) gives the free memory in bank x.
TI is not the jiffy clock; use VAL(TI$).
Characters 96-127 are the same as 32-63.
C64
FRE(0) gives negative values above 32767; use FRE(0)-65536*(FRE(0)<0).
4064
Sprites are disabled. To enable, POKE 646,PEEK(646) OR 128.
C128
BANK can be done as POKE 981,bank.
SYS m,a,x,y,s is only in C128; use SYS m.
General
To avoid differences in line wrap and blank line insertion,
do not print to or past the last column on the screen.
Basic 4.0 and above can set a screen window.
To cancel, print two consecutive HOME characters.
Colors of the same intensity look the same on a monochrome monitor.
Commands That Reference Memory Locations
PEEK POKE SYS USR WAIT
Commands Not In All Versions (Do not use as variables.)
APPEND CIRCLE DO FAST LOOP RECORD SCRATCH TRAP
AUTO COLLECT DOPEN FETCH MONITOR RENAME SLEEP TROFF
BACKUP COLLISION DRAW FILTER MOVSPR RENUMBER SLOW TRON
BANK COLOR DS GO TO OFF RESUME SOUND UNTIL
BEGIN CONCAT DS$ GRAPHIC PAINT RGR SPRCOLOR USING
BEND COPY DSAVE GSHAPE PEN RLUM SPRDEF VOL
BLOAD DCLEAR DVERIFY HEADER PLAY RREG SPRITE WHILE
BOOT DCLOSE EL HELP POINTER RSPCOLOR SPRSAV WIDTH
BOX DEC ELSE HEX$ POT RSPPOS SSHAPE WINDOW
BSAVE DELETE ENVELOPE INSTR PUDEF RSPRITE STASH XOR
BUMP DIRECTORY ER JOY QUIT RWINDOW SWAP
CATALOG DISPOSE ERR$ KEY RCLR SCALE TEMPO
CHAR DLOAD EXIT LOCATE RDOT SCNCLR THEN
Control Codes Not The Same In All Versions
2 underline 31 blue
5 white 129 orange/d purple
7 bell 130 underline off/flash
8 lock 132 bottom right/flash off
9 unlock/tab 133 F1
11 unlock 134 F3 149 brown/d yellow/insert line
12 lock 135 F5/bell 150 l red/yl-grn/erase end
14 text 136 F7 151 d gray/d cyan/pink
15 flash/top left 137 F2/set tab 152 m gray/bl-grn
21 delete line 138 F4 153 l green/l blue
22 erase start 139 F6 154 l blue/d blue
24 set tab 140 F8 155 l gray/l green/escape
27 escape 142 graphics 156 purple
28 red 143 flash off 158 yellow
30 green 144 black 159 cyan
Colors Arranged By Intensity (With Default Background Color)
VIC20 C64/C128 40 Column Plus4/C16
--------- ------------------ -----------------------
black black(4064) black
red, blue blue(C64), brown brown, d blue
red, d gray(C128) red, green
purple purple, orange purple, blue, orange
m gray, l blue
green green, l red yl-grn, bl-grn, l green
cyan cyan, l gray cyan, pink, l blue
yellow yellow, l green
(white) white(SX64) (white), yellow
Line Draw Characters To Use For Uniform Line Thickness
Line Draw Character PET/CBM-II/VIC20 Plus4/C16/C64/C128
--------------------- ---------------- ------------------
left vertical bar 165 165 or 180
center vertical bar 221 221 or 194
right vertical bar 167 167 or 170
top horizontal bar 163 183
center horizontal bar 192 192 or 195
bottom horizontal bar 164 175
Memory Available For Basic Programs
C16 12287 bytes
VIC 20 3583-28159 bytes
PET/CBM 3071-31743 bytes
C64 38911 bytes
Plus4 60671 bytes
CBM-II 61437 bytes + 65534-162812 for variables
C128 122365 bytes
-
This message was sent through the cbm-hackers mailing list.
To unsubscribe: echo unsubscribe | mail cbm-hackers-request@dot.tml.hut.fi.
Archive generated by hypermail 2.1.1.