home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C!T ROM 5
/
ctrom5b.zip
/
ctrom5b
/
PROGRAM
/
DIVERSEN
/
SHWTXT12
/
SHOWTEXT.INS
< prev
next >
Wrap
Text File
|
1994-09-23
|
5KB
|
148 lines
SHOWTEXT PROGRAMMING LANGUAGE (version 1.2)
INSTRUCTION SET SUMMARY
(syntax only - additional documentation is in SHOWTEXT.DOC)
ALIAS %varname=var
ALIAS %varname=var,%varname=var
ARROW
ARROW OFF
ATTR color_attribute_byte_value
BEEP
BCOPY buf TO buf (row1,col1,row2,col2)
BCOPY buf TO buf (row1,col1,row2,col2) (row,col)
BFILL buf (row1,col1,row2,col2) val val
BFILL buf (row1,col1,row2,col2) ASCII val
BFILL buf (row1,col1,row2,col2) ATTR val
BSWAP buf TO buf (row1,col1,row2,col2)
BSWAP buf TO buf (row1,col1,row2,col2) (row,col)
BXOR buf (row1,col1,row2,col2) val
C@ row,col
CENTER MOUSE key
CHK
CLS
CLS foreground,background
COLOR foreground
COLOR foreground,background
COPY (source,destination) fade
CSR LIM
CSR LIM (row1,col1,row2,col2)
CSR OFF
CSR ON
CSR ON num TO num {num is the scan line 0 to 7}
DO ... LOOP
ERRORLEVEL dos_errorlevel_value
EXIT
EXITC
FOR var = val to val STEP val {used with NEXT instruction}
GOTO label
GOSUB label {used with RET instruction}
IF ... THEN ... ELSEIF ... ELSE ... ENDIF
IF BDIFF buf TO buf (row1,col1,row2,col2) (row,col) label
IF BSAME buf TO buf (row1,col1,row2,col2) (row,col) label
IF CLK (row1,col1,row2,col2) label
IF NOT CLK (row1,col1,row2,col2) label
IF CSR (row1,col1,row2,col2) label
IF NOT CSR (row1,col1,row2,col2) label
IF KEY key label
IF NOT KEY key label
IF Tn ticks label {n=0 to 15}
IF NOT Tn ticks label {n=0 to 15}
IF val label
IF NOT val label
INPUT TEXT (row,startcolumn,endcolumn,attribute)
INPUT TEXT CAPS (row,startcolumn,endcolumn,attribute)
INPUT var (row,startcolumn,endcolumn,attribute)
LEFT MOUSE key
MEM PEEK offset var
NEXT
NEXT var
NOCHK
ON INTKEYn key GOTO label {n=0 to 7}
ON INTKEYn key GOSUB label {n=0 to 7}
ON var GOTO label1,label2,label3,label4
ON var GOSUB label1,label2,label3,label4
P@ row,col
PCSR LIM
PCSR LIM (row1,col1,row2,col2)
PEEK buf (row,col) var var
PEEK buf (row,col) ASCII var
PEEK buf (row,col) ATTR var
PLAY "play text..."
POKE buf (row,col) val val
POKE buf (row,col) ASCII val
POKE buf (row,col) ATTR val
POP var {e.g. POP 0}
POP var-var {e.g. POP 0-255 or POP 255-0}
PORT IN port var
PRINT "text........."
PRINT "text.........";
PRINT CHAR(val)
PRINT CHAR(val);
PRINT var,format {characters in format= 1 to 9 L Z O Q }
PRINT var,format; {characters in format= 1 to 9 L Z O Q }
PUSH var {e.g. PUSH 0 or PUSH V0} letter V is optional
PUSH var-var {e.g. PUSH 0-255 or PUSH 255-0}
RESTART
RESTORE fade
RET {use with GOSUB}
RETURN {same as RET}
RIGHT MOUSE key
RST K
RST S {one value at a time}
RST Tn {n=0 to 15}
RST TS {resets all timerS}
SAVE
SCREENSAVER minutes {use minutes=0 to disable}
SCROLL DOWN (row1,col1,row2,col2)
SCROLL UP (row1,col1,row2,col2)
SELECT CASE ... CASE ... CASE ELSE ... END SELECT
system variables [info] {where info is Tn or ...}
[RND num TO num]
TTYPE "text......"
TTYPE "text......";
var=val
var++
var--
var=val+val
var=val-val
var=val*val
var=val/val
var=val&val {same as var=val AND val}
var=val@val {same as var=val OR val}
var=val#val {same as var=val XOR val}
VIRTUAL val
WAIT ticks
WAITKEY
WAITKEY ticks
WAITKEY ticks,label
WHILE ... WEND
WINDOW (row1,col1,row2,col2) window_type {use current colors}
XFLOAD "filename.txt"
XFSAVE "filename.txt"
$(buf,row,startcolumn,endcolumn) {used with PRINT,TTYPE,PLAY,XFLOAD,XFSAVE}
! can be used in place of the word PRINT { e.g. !"hello world" }
!! can be used in place of the word TTYPE { e.g. !!"bon jour monde" }
? can be used in place of the word INPUT { e.g. ?V1(1,15,25,31) }
Notes:
"key" is a specified key on the keyboard. note SHIFT CTRL ALT can be used
but not simultaneously.
"label" is a program label. the (:) is not specified here.
"num" is a number
"val" is either a number (0 to 255)
or a variable (V0 to V255)--------------> V(0) to V(255)
or an indexed variable (VV0 to VV255)---> V(V(0)) to V(V(255))
"var" is either a variable (V0 to V255) -----> V(0) to V(255)
or an indexed variable (VV0 to VV255)---> V(V(0)) to V(V(255))
Other required data fields can usually be numbers, variables
or indexed variables.
Variables can be of the following types: V7 %TEMP VV4 V%MISC