home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
COMMODOR
/
SUPERBAS.ARC
/
SUPERBAS.DOC
(
.txt
)
next >
Wrap
Commodore BASIC
|
2000-06-30
|
4KB
|
148 lines
100 LIST
110 *****COMMAND SUMMARY SUPERBASIC-2***
120 :
130 <DENOTES VARIABLE> : [ OPTIONAL]
140 :
150 HELP :PRINT ALL SUPERBASIC COMMANDS
160 HELP* :PRINT ALL BASIC COMMANDS
170 :
180 KEY :SETUP DEFAULT FUNCTION KEY DEFINITIONS- WIPED BY RESTORE.
190 :
200 LISTINGS SCROLL UP AND DOWN WITH CURSORS
201 :
205 ON ERROR EDITOR DROPS YOU BACK ONTO LINE AT POSITION OF ERROR
210 :
220 :SUPERBASIC-2 WILL RIDE RESET
230 BASIC :RETURN TO BASIC
240 :
250 THERE ARE CONCERNS ABOUT TOKENIZATION-IS S.BASIC=BASIC--TRY KEYWORD ABBREVI
260 :
270 SPACES ARE DELETED BETWEEN COMMANDS WHEN EDITED.
271 :
272 LOGO :PAUSE LISTING--- CTRL:RESUME LISTING
280 :
290 FIND <EXP> :W/QUOTES LOOK FOR STRING--W/O QUOTES LOOK FOR KEYWORD.
300 :
310 AUTO[<START>,<INCREMENT>] : AUTO LINE NUMBERING: DEFAULT IS 10,10
320 SHIFT RETURN TO KILL AUTO
330 :
340 RENUM[<START>,<INCREMENT>] :RENUMBER PROGRAM : DEFAULT IS 10,10
350 :
360 DEL<RANGE> :DELETE RANGE OF LINE NUMBERS.
370 :
380 TRACE : PROGRAM TRACE ON
390 TRACE OFF: PROGRAM TRACE OFF
400 :
410 DUMP: DUMP SCALAR VARIABLES.
420 :
430 MERGE : MERGE PROGRAM FROM TAPE.
440 MERGE*"<FILE>",8: MERGE PROGRAM FROM DISK
450 :
460 MATRIX: DUMP MATRIX(ARRAY) VARIABLES
470 :
480 LETTER: (null) INTO UPPER/LOWER CASE MODE =CTRL N=CHR$(14)
490 LOCK : DISABLE CHAR SET SWITCH =CTRL I= CHR$(8)
500 :
510 MEM :DISPLAY MEMORY USAGE.
520 :
530 FRAC(<VAR>) :RETURN FRACTIONAL PART-NUMBERS AFTER DECIMAL POINT
540 :
550 ROUND(<VAR>[,<PLACES>]) :ROUND VARIABLE [TO X PLACES]
560 :
570 HEX$(<NUMBER>) :RETURNS VALUE OF NUMBER IN HEXIDECIMAL AS STRING
580 :
590 DEC(<HEX$>) :RETURNS VALUE OF HEX$ IN DECIMAL
600 :
610 ODD (<NUMBER>) : RETURNS TRUE(-1)IF NUMBER IS ODD-FALSE(0) IF EVEN
620 :
630 SET <X>,<Y> :SET A POINT ON TEXT SCREEN AT X,Y: X=0-49:Y=0-79 (1/2 CHARACTER
640 DOESNT RETURN OUT OF RANGE
650 RESET <X>,<Y> : TURN OFF POINT AT X,Y
660 POINT(<X>,<Y>) :TRUE(-1) IF POINT SET--FALSE (0) IF RESET OR NOT SET
670 :
680 HPLOT <NUM>[,<COLOR>]: CREATES PLOT AT CURSOR:RANGE IS 0-511:COLOR=0-15
690 VPLOT <NUM>[,<COLOR>]: CREATES PLOT AT CURSOR:RANGE IS 0-255:COLOR=0-15
700 BOTH WILL RETURN ILLEGAL QUANTITY, BUT MAY LEGALLY PRINT OFF SCREEN
710 DEPENDING ON CURSOR POSITION.
720 :
730 ELSE : IF..THEN..ELSE
740 :
750 ********ERROR TRAPPING*********
760 ON ERROR GOTO <LINE>: PUT IN ERROR HANDLER: EL=ERROR LINE EC=ERROR CODE
770 PARTIAL LIST OF ERROR CODES
780 :0=NOERROR:1=FORMULA TOO COMPLEX:2=FILE OPEN:3=FILE NOT OPEN
790 :5=DEVICE NOT PRESENT:10=NEXT W/O FOR:11=SYNTAX ERROR:12=RETURN W/O GOSUB
800 :13=OUT OF DATA:14=ILLEGAL QUANTITY:15=OVERFLOW:17=UNDEFINED STATEMENT
810 :19=REDIMMED ARRAY:20=DIV BY 0:22=TYPE MISMATCH:24=STRING TOO LONG
820 :REDO FROM START AND EXTRA IGNORED STILL (null) TO SCREEN-SEE LINEINPUT.
825 RESUME :RETRY LINE EL---(null) BACK AND REXECUTE CODE.
830 IFECTHEN....ELSE....
840 :
850 BORDER<X>: SET BORDER COLOR
860 GROUND<X>: SET SCREEN COLOR
870 CURSOR<X>: SET CURSOR COLOR
880 :
890 EXEC(<STRING>): EXECUTE STRING ("GO TO 200"):"GOOD FOR INPUTS W/O BREAKS?"
900 :
910 INPUTLINE<STR>: INPUTS UP TO TWO SCREEN LINES:NO QUESTION MARK:
920 INPUTFORM<STR> : INPUTS UP TO 2 SCREEN LINES-HAS CURSOR-LIMITS ENTRY NICELY
930 :LEAVES CURSOR AT END OF INPUT:ACCEPTS ,; ETC.
940 :
950 RESTORE<LINE>: RESTORE DATA READ POINTER TO <LINE>
960 :
970 ON <X> RESTORE : YOU USUALLY NEED GOTO W/ON
980 :
990 STRING$(<NUM>,<STRING>): RETURNS STRING CONCATINATED <NUM> TIMES
1000 DONT CONFUSE W/ STR$(<NUM>)
1010 :
1020 SWAP <A>,<B> : SWAP VALUES OF<A>AND<B>
1030 :
1040 SEC(<SECONDS>): WAIT <SECONDS> SECONDS
1050 PAUSE(<TIME>) : WAIT <TIME>
1060 :
1070 EVAL (<STRING>): CALCULATE STRING EXP:VAL("3*4")=3 :EVAL("3*4")=12
1080 :
1090 VOLUME<A>: EQUAL TO POKE 54296,<A>
1100 PLAY<A>,<B>,<C>: PLAY VOICE <A> IN NOTE <B> FOR <C> DURATION
1120 ADSR<VOICE>,<ATTACK>,<DECAY>,<SUSTAIN>,<RELEASE>
1130 :
1140 VARPTR(<X>): RETURNS MEMORY LOCATION OF VARIABLE <X>
1150 :
1160 DOKE<Y>,<X>: DOUBLE POKE TO LOC <Y>&(Y+1):
1170 DEEK(<Y>): DOUBLE PEEK TO<Y>&(Y+1)
1180 :
1190 HIMEM <Y>: SET TOP OF MEMORY TO Y =DOKE55,Y
1200 :
1210 PRINT@<X>: PRINT AT LOCATION <X> 0-1000:LOWER RIGHT-LOWER LEFT
1220 :
1230 HARDCOPY : TEXT SCREEN DUMP TO PRINTER.
1240 :
1250 CALL<X> : =SYS<X>
1260 :
1270 **YOU MUST USE THESE DISK COMMANDS!!! LOAD"<FILE>",8 DOES NOT WORK!!*******
1280 :
1290 @ OR > :READ ERROR CHANNEL
1300 @<EXP> OR ><EXP> :SEND <EXP> TO DISK N0:NAME,ID // S:BOB
1310 ^ : LOAD & RUN
1320 / :LOAD
1330 _ :SAVE
1340 *************************************************************************
1350 MYSTERY COMMANDS---
1360 MAX :ZOKET MAXIMUM UIT VARIABELENLJIST
1370 MIN :ZOKET MINIMUM UIT VARIABELENLJIST
1380 :
1390 DISPOSE :FAST GARBAGE COLLECT("?")-TAKES NO PARAMETERS
1400 :
1410 COKE<A>,<B>,<C>
1420 CEEK
1430 :
1440 SPACE<A>,<B>,<C>,<D>: SOMETHING TO PUT C SPACES ON SCREEN AT COORDS.
1450 :
1460 USING :SOME KIND OF PRINT FORMAT.--PRINTUSING
1470 :
1480 INSTR :"INPUT STRING?"
1490 :
1500 OFF:TURN PLAY OFF"?"
1530 :
1540 PLEASE UPDATE THIS LIST IF YOU CAN!!