命令概要

↑目次に戻る

DIRECTモード専用

DIRECTボタンを押した状態でのみ利用可能(プログラム内に書くとエラー)
CLEAR
NEW
LIST
RUN
CONT

変数と配列

変数や配列の定義および操作関係
DIM TMP%[10]
VAR A
INC NO
DEC NO
SWAP A,B
COPY TMP%,WRK%
SORT TMP%
RSORT TMP%
PUSH TMP%,123
V=POP(TMP%)
UNSHIFT TMP%,123
SHIFT(TMP%)
FILL TMP%,0

制御と分岐

比較、分岐、くりかえしなどの制御関係
GOTO @LABEL
GOSUB @LABEL
END
STOP
@LABEL
RETURN
IF NO==0 THEN NO=1 ELSE NO=2
IF NO==0 THEN NO=1 ELSEIF NO==2 THEN N=3
ON IX GOTO @LABEL
ON IX GOSUB @LABEL
IF IX==0 GOTO @LABEL
FOR IX=0 TO 9 STEP 1:NEXT
WHILE SW==0:WEND
REPEAT:UNTIL SW==0
BREAK
CONTINUE

高度な制御

ユーザー定義関数や拡張機器の制御関係
DEF SUB X,Y:END
DEF FUNC(X,Y):RETURN 0:END
DEF GETXY NO OUT X,Y:END
COMMON DEF SUB X,Y:END
CALL "LOCATE",X,Y
V=CALL("ASC","A")

データ操作・その他

データ読み込み、垂直同期、コメントなど補助的な要素
READ A,B$
DATA 123,"ABC" 
RESTORE @DTOP
OPTION STRICT
WAIT 60
VSYNC 1
' comment
KEY 1,"TEST" 
TMREAD OUT H,M,S
DTREAD OUT Y,M,D
F=CHKLABEL("@SUB",1)
F=CHKCALL("PRINT")
F=CHKVAR("SW")
DIALOG "MESSAGE" 
CLIPBOARD "SAMPLE" 
S$=CLIPBOARD()

コンソール入出力

テキスト画面への文字表示や文字列の入力関係
CLS
PRINT "A=";A;",B$=";B$
COLOR 15,0
LOCATE 0,0,0
ATTR 0
SCROLL VX,VY
C=CHKCHR(X,Y)
INPUT "NO:";NO
LINPUT "STR=";S$
K$=INKEY$()
FONTDEF
WIDTH 16
A=WIDTH()
CONSOLE

ファイル

一覧取得、ファイルへの読み書き関係
FILES
LOAD"SYS/PRG1:EX1TEXT" 
SAVE"TEST" 
RENAME "TEST","NEWTEST" 
DELETE "NEWTEST" 
EXEC"PRG1:STDLIB" 
USE 1
MKDIR "SUB" 
RMDIR "SUB" 
RENAME "TEST.PRG","SAMPLE.PRG" 
FCOPY "SUB/TEST13.PRG","../BACKUP/" 
DELETE "TEST.PRG" 

スクリーン制御

画面の表示モードや制御関係
XSCREEN H,V,ASP
VISIBLE CON,GRP,SP
BACKCOLOR RGB(0,0,0)
C=BACKCOLOR()
FADE RGB(255,64,64,64),60
C=FADE()
R=FADECHK()
ACLS

グラフィック描画

ピクセル単位で線や円や矩形などの描画関係
GPAGE VPG,WPG
GPAGE OUT VP,WP
GOFS OX,OY
GOFS OUT X,Y
GCOLOR RGB(255,255,255)
C=RGB(255,128,64)
RGBREAD C OUT R,G,B
GCLIP MODE,TX,TY,EX,EY 'MODE (0=V,1=W)
GPRIO Z
GCLS
C=GSPOIT(X,Y)
GPSET X,Y,C
GLINE TX,TY,EX,EY,C
GCIRCLE CX,CY,R,C
GBOX TX,TY,EX,EY,C
GFILL TX,TY,EX,EY,C
GPAINT X,Y,C
GCOPY PG,TX,TY,EX,EY,MD 'MD (0=OVERWRITE)
GSAVE PG,W%,FLG 'FLG (0=32bitCOLOR)
GSAVE PG,TX,TY,EX,EY,W%,FLG
GLOAD W%,FLG,MD
GLOAD X,Y,W,H,W%,FLG,MD
GLOAD W%,PAL%,MD
GTRI X1,Y1,X2,Y2,X3,Y3
GPUTCHR X,Y,ABC
GPUTCHR16 X,Y,ABC

スプライト

スプライトと呼ばれる自由に動かせる矩形画像表示関係
SPPAGE 3
P=SPPAGE()
SPCLIP TX,TY,EX,EY
SPDEF DEFNO,U,V,W,H,HX,HY,A
SPDEF "@DEFDT" 
SPDEF DEFNO OUT U,V,W,H,HX,HY,A
SPDEF "@DEFDT",OFS,UOFS,VOFS 
SPSET IX,DEFNO
SPSET IX,U,V,W,H,A
SPCLR IX
SPSHOW IX
SPHIDE IX
SPHOME IX,HX,HY
SPOFS IX,X,Y,Z
SPOFS IX OUT X,Y,Z
SPROT IX,A
SPROT IX OUT A
SPSCALE IX,SX,SY
SPSCALE IX OUT SX,SY
SPCOLOR IX,RGB(128,255,255,255)
SPCOLOR IX OUT C
SPCHR IX,DEFNO
SPCHR IX,U,V,W,H,A
SPCHR IX OUT U,V,W,H,A
SPCHR IX OUT DEFNO
SPLINK IX,PARENTIX
P=SPLINK (IX)
SPUNLINK IX
SPANIM IX,"XY+",-60,200,120,0
SPANIM IX,"XY+",W%,0
SPANIM IX,"XY+","@SPDAT" 
SPSTOP IX
SPSTART IX
A=SPCHK(IX)
SPVAR IX,VNO,123
SPVAR IX OUT V
SPCOL IX,SCALE,MASK
SPCOL IX,OX,OY,W,H,SCALE,MASK
SPCOLVEC IX,VX,VY
SW=SPHITSP(IX,IX2)
SW=SPHITRC(X,Y,W,H,MASK,VX,VY)
SPHITINFO OUT T,X1,Y1,VX1,VY1,X2,Y2,VX2,VY2
S=SPUSED(IX)
SPFUNC IX,@PROG

サウンド

サウンド関係
BEEP NO,PITCH,VOL,PAN

数学

三角関数や対数などの数学関係
VI=FNUM DIV FNUM2
VI=FNUM MOD FNUM2
VI=FNUM AND NUM
VI=FNUM OR NUM
VI=FNUM XOR NUM
VI=FNUM << NUM
VI=FNUM >> NUM
VI=FLOOR(FNUM)
VI=ROUND(FNUM)
VI=CEIL(FNUM)
V=ABS(NUM)
V=SGN(NUM)
V=MIN(NUM)
V=MAX(NUM)
V=RND(100)
VF=RNDF(100)
RANDOMIZE SEED
V=SQR(NUM)
V=EXP(NUM)
V=LOG(NUM)
V=POW(NUM,2)
V=PI()
V=RAD(NUM)
V=DEG(NUM)
V=SIN(NUM)
V=COS(NUM)
V=TAN(NUM)
V=ASIN(NUM)
V=ACOS(NUM)
V=ATAN(NUM)
V=ATAN(Y,X)
V=SINH(NUM)
V=COSH(NUM)
V=TANH(NUM)
V=CLASSIFY(NUM)

文字列操作

文字列の表示書式指定や抽出などの文字操作関係
V=ASC("A")
S$=CHR$ (&H41)
V=VAL("123")
S$=STR$(123)
S$=HEX$(123,4)
S$=BIN$(123,8)
S$=FORMAT$("%03D",NUM)
S$=FORMAT$("%8.2F",NUM)
V=LEN("ABCDE")
S$=MID$("ABCDE",2,1)
S$=LEFT$("ABCDE",2)
S$=RIGHT$("ABCDE",2)
V=INSTR("ABCDE",CD)
S$=SUBST$("ABCDE",2,"XY")

ソースコード操作

指定したSLOTへのプログラム読み書きなどの制御関係
PRGEDIT SLOT
S$=PRGGET$()
PRGSET "BEEP 2" 
PRGINS "' comment" 
PRGDEL
V=PRGSIZE(SLOT)
S$=PRGNAME$(SLOT)

エミュレータ関係

エミュレータ側のCPUへのアクセスやエミュレータの制御関係
N$=EMUMACHINENAME$()
EMUCPUINFO OUT N$,RC
V=EMUCPUNO()
EMUCPUNO 0
V=EMUSTATUS()
EMURUN &HA000
EMUSTOP
EMUJUMP &HC000
EMUTRACE
EMUSTEP
V=EMUMEM( &HD000 )
EMUMEM &HD000,&HA3
EMUDISASM &HAC00 OUT ASM$, LEN
V=EMUREGCNT()
N$=EMUREGNAME$(0)
V=EMUREGSIZE(0)
V=EMUREGSIZE("A")
V=EMUREGSIDE()
EMUREG REG
V=EMUREG(0)
V=EMUREG("A")
EMUREG 0,56
EMUREG "A",&HCC
EMUBKST OUT TYPE, NUMBER
EMUBP 0,&HFF00
EMUBC 0
EMUBL
EMURP 0,&H56AF,&HAA
EMURP 0 OUT &H1BD0,NUM
EMURC 0
EMURL
EMUWP 0,&H56AF,&HAA,&H40
EMUWP 0 OUT &HE300,NUM,VAL
EMUWC 0
EMUWL
EMUCLOCK 4000
V=EMUCLOCK()
EMURESET
EMUVOLUME 32768
V=EMUVOLUME()
EMUWINDOW 5
EMUCOLOR &HFFFFFF,&H000000,&H1F1F1F,75
EMUCOLOR OUT TX,BK,BD,AL
EMUSOFTKB TRUE
EMUCG ASC("A"),0,&HFE
V=EMUCG( ASC ("A"),0 )
EMUCGRESET
EMUJOY BTNID, KEYPA, KEYPB
EMUJOY BTNID OUT SW, KEYPA, KEYPB
EMUJOYCLR

GPIO制御関係(I2C/SPI含む)

外部入出力端子GPIO(及びI2C/SPI)制御関係
GPIOMODE 18,6
GPIOPUD 18,1
V=GPIOIN(18)
V=GPIOIN()
GPIOOUT 18,1
GPIOOUT &HC3
GPIOHWPWM 1,16
I2CSTART
I2CSTOP
R=I2CRESULT()
V=I2CRECV&H32)
V=I2CRECV8(&H32,0)
V=I2CRECV16(&H32,0)
I2CSEND &H32,0
I2CSEND8 &H32,0,25
I2CSEND16 &H32,0,&H2525
SPISTART 400000,3
SPISTOP
SPIRECV WORK%,256
SPISEND WORK%,256
SPISENDRECV WORK%,256

↑目次に戻る