ユーザ用ツール


reference:テキストスクリーン入出力

テキストスクリーン入出力

CLS
CLS スクリーンID

テキストスクリーンを消去する

引数

スクリーンID

消去するテキストスクリーンのID:0~4
・省略時は4。

CLS
CLS 1

COLOR [スクリーンID,]色コード

文字の描画色を設定する

・この命令を実行すると、以後PRINT文、TPRINT文、INPUT文等で表示する文字の色が変化する。

引数

スクリーンID

描画色を指定するテキストスクリーンのID:0~4
・省略時は4。

色コード

文字の描画色
・ARGB各8ビットの色コード。
※色コードの詳細はGCOLORを参照

COLOR #C_WHITE
COLOR 1,#C_RED
COLOR RGB(128,192,64,64)

COLOR([スクリーンID])

文字の描画色を取得する

・現在の文字描画色を取得する。

引数

スクリーンID

描画色を取得するテキストスクリーンのID:0~4
・省略時は4。

C=COLOR()
C1=COLOR(1)

LOCATE [座標X],[座標Y]
LOCATE スクリーンID,[座標X],[座標Y]

テキストスクリーンへの文字表示座標を指定する

・この命令を実行すると、以後PRINT文、TPRINT文、INPUT文等で表示する文字の表示座標が変化する。

引数

スクリーンID

表示座標を指定するテキストスクリーンのID:0~4
・省略時は4。

座標X, 座標Y

・文字を表示させる座標を指定する。
・表示できる文字数はTSCREENで設定するスクリーンサイズに依存する。
・XまたはYを省略すると、それぞれ以前のX,Y座標を維持する。

LOCATE 20,15
LOCATE ,10
LOCATE 1,10,0

LOCATE [スクリーンID] OUT 座標X,座標Y

文字表示座標を取得する

・現在の文字表示座標を取得する。

引数

スクリーンID

表示座標を指定するテキストスクリーンのID:0~4
・省略時は4。

返値

座標X, 座標Y

・現在の文字表示座標を取得する。

LOCATE OUT X,Y
LOCATE 1 OUT X1,Y1

PRINT [式[;または,式…]]

コンソールの文字表示

・式を省略すると改行のみ行う。
・省略形として、?と書いても良い。
・PRINTはスクリーン4に表示を行う。
・TPRINTは表示先のスクリーンを指定できる。

引数

・表示する変数、文字列変数、数値、文字列。

;(セミコロン)

表示の最後に改行しない

,(カンマ)

・表示後に改行せず、空白文字を表示する。

PRINT "RESULT(X,Y)=";DX*4+1,DY+1

TPRINT スクリーンID[,式[;または,式…]]

テキストスクリーンへの文字表示

・式を省略すると改行のみ行う。
・省略形として、T?と書いても良い。
・PRINTと異なりTPRINTは表示先のスクリーンを指定できる。

引数

スクリーンID

文字を表示するスクリーンのID:0~4

・表示する変数、文字列変数、数値、文字列。
・四則演算等や関数による計算式も記述可(計算結果が表示される)。

;(セミコロン)

表示後に改行せず、次の表示を密着させる

,(カンマ)

・表示後に改行せず、次の表示を一定間隔開ける。

TPRINT 1,CHR$(&HEA01);CHR$(&HEA02);

ATTR [スクリーンID,]水平反転,垂直反転,回転
ATTR [スクリーンID,]表示属性

テキストスクリーンに表示する文字の属性を設定する

・この命令を実行すると、以後PRINT文、TPRINT文、INPUT文等で表示する文字の表示属性が変化する。

引数

スクリーンID

文字表示属性を指定するテキストスクリーンのID:0~4
・省略時は4。

水平反転

・1で表示文字を左右に反転させる。
・0で反転しない。

垂直反転

・1で表示文字を上下に反転させる。
・0で反転しない。

回転

・0,1,2,3でそれぞれ文字を0°,90°,180°,270°回転させる。

表示属性

・水平反転、垂直反転、回転をまとめてビット値で設定する。

b00 ↑90度単位の回転(b00とb01の2ビットで指定)
b01
b02 水平反転(0=OFF、1=ON)
b03 垂直反転(0=OFF、1=ON)

ATTR 0,0,1:PRINT "ABC" 
ATTR 2,8:TPRINT 2,"XYZ" 

ATTR [スクリーンID] OUT 水平反転,垂直反転,回転
ATTR( [スクリーンID])

テキストスクリーンの表示文字属性を取得する

引数

スクリーンID

文字表示属性を取得するテキストスクリーンのID:0~4
・省略時は4。

返値

水平反転

・1で表示文字を左右に反転させる。
・0で反転しない。

垂直反転

・1で表示文字を上下に反転させる。
・0で反転しない。

回転

・0,1,2,3でそれぞれ文字を0°,90°,180°,270°回転させる。

表示属性

・水平反転、垂直反転、回転をまとめてビット値で取得する。

b00 ↑90度単位の回転(b00とb01の2ビットで指定)
b01
b02 水平反転(0=OFF、1=ON)
b03 垂直反転(0=OFF、1=ON)

ATTR OUT HREV,VREV,ROT
A2=ATTR(2)

SCROLL [スクリーンID,]文字数X,文字数Y

テキストスクリーンの表示内容をスクロールさせる

・テキストスクリーンの内容を文字単位で全体にずらす。
・スクロールの結果スクリーン外に押し出された文字は消える。

引数

スクリーンID

スクロールするテキストスクリーンのID:0~4
・省略時は4。

文字数X

横方向のスクロール文字数
・正の値で左方向、負の値で右方向にスクロールする。

文字数Y

縦方向のスクロール文字数
・正の値で上方向、負の値で下方向にスクロールする。

SCROLL 5,7
SCROLL 1,-1,0

CHKCHR([スクリーンID,]座標X,Y)

テキストスクリーンに表示されている文字の文字コードを調べる

引数

スクリーンID

スクロールするテキストスクリーンのID:0~4
・省略時は4。

座標X,Y

文字単位の座標

返値

指定座標に表示されている文字の文字コード
・文字が表示されていない場合はゼロが返る。

CODE=CHKCHR(0,0)
CODE=CHKCHR(1,10,10)

CHKCHR [スクリーンID,]座標X,Y OUT 文字コード,表示属性

テキストスクリーンに表示されている文字の文字コードと表示属性を調べる

引数

スクリーンID

スクロールするテキストスクリーンのID:0~4
・省略時は4。

座標X,Y

文字単位の座標

返値

文字コード

指定座標に表示されている文字の文字コード
・文字が表示されていない場合はゼロが返る。

表示属性

指定座標に設定されている表示属性
・ATTR命令を参照。

CHKCHR 0,0 OUT CH,AT
CHKCHR 1,10,10 OUT CH,AT

CHKCHR(スクリーンID,座標X,Y,座標変換フラグ)

テキストスクリーンに表示されている文字の文字コードを調べる

引数

スクリーンID

スクロールするテキストスクリーンのID:0~4

座標X,Y

文字コードを調べる座標
・次の座標変換フラグの値により座標の意味が変わる。

座標変換フラグ

座標X,Yの座標系を指定するフラグ
・0の場合、文字単位の座標と解釈する(LOCATEの座標と同じ)。
・1の場合、ディスプレイ座標と解釈する(TOFS等と同じ)。
・ディスプレイ座標の場合、LMATRIXの影響は考慮されない。

返値

指定座標に表示されている文字の文字コード
・文字が表示されていない場合はゼロが返る。

CODE=CHKCHR(1,10,10,0)
CODE=CHKCHR(1,200,120,1)

CHKCHR スクリーンID,座標X,Y,座標変換フラグ OUT 文字コード,表示属性

テキストスクリーンに表示されている文字の文字コードと表示属性を調べる

引数

スクリーンID

スクロールするテキストスクリーンのID:0~4

座標X,Y

文字コードを調べる座標
・次の座標変換フラグの値により座標の意味が変わる。

座標変換フラグ

座標X,Yの座標系を指定するフラグ
・0の場合、文字単位の座標と解釈する(LOCATEの座標と同じ)。
・1の場合、スクリーン座標と解釈する(TOFS等と同じ)。
・スクリーン座標の場合、LMATRIXの影響は考慮されない。

返値

文字コード

指定座標に表示されている文字の文字コード
・文字が表示されていない場合はゼロが返る。

表示属性

指定座標に設定されている表示属性
・ATTR命令を参照。

CHKCHR 1,10,10,0 OUT CH,AT
CHKCHR 1,200,120,1 OUT CH,AT

INPUT ["ガイド文字列";]変数[,変数2…]

キーボードから数値または文字列を入力する

・ENTERキーが入力されるまで入力待ち。
・入力数が不足時「?Redo from start」を表示し再入力。
・他のテキストスクリーン命令と異なり、テキストスクリーンは4で固定。

引数

ガイド文字列

入力用のガイドメッセージ(省略可能)
・ガイド文字列後の;を,(カンマ)にすると?が表示されない。
・;を使うときのみガイド文字列には文字列変数も使用可能。

変数

入力を受け取る変数(数値または文字列変数)
・変数を複数指定する場合,(カンマ)で区切る。

INPUT "なまえとねんれいは";NM$,AG

LINPUT ["ガイド文字列";]文字列変数

キーボードから文字列の取得

・INPUT命令では入力できない「,」等も受け付ける。
・ENTERキーが入力されるまで入力待ち。
・他のテキストスクリーン命令と異なり、テキストスクリーンは4で固定。

引数

ガイド文字列

入力用のガイドメッセージ(省略可能)

文字列変数

1行分の入力を受け取る文字列変数

LINPUT "ADDRESS:";ADR$

INKEY$()
INKEY$(コントローラー入力除外フラグ)

キーボードから入力された文字を1文字取得する

・キーボードからの入力がない場合でも、入力待ちをしない。
・先行キー入力があった場合、一番古い入力から1文字ずつ返す。

引数

コントローラー入力除外フラグ

・0を指定すると、コントローラーの一部ボタン入力をキー入力に見立てて返す。
・1を指定すると、コントローラー入力を無視する。
・省略時は0。

コントローラー入力と文字との対応は次の通り

十字ボタン右 CHR$(&H1C)
十字ボタン左 CHR$(&H1D)
十字ボタン上 CHR$(&H1E)
十字ボタン下 CHR$(&H1F)
Aボタン CHR$(&H0D)
Yボタン CHR$(&H08)

戻り

・キーボードから入力された文字を1文字ずつ返す。
・入力がない場合空文字列""が戻る。
・特殊キーは次のような文字を返す 。

Esc CHR$(&H1B)
Tab CHR$(&H09)
BackSpace CHR$(&H08)
Enter CHR$(&H0D)
Insert CHR$(&H1A)
Delete CHR$(&H10)
Home CHR$(&H02)
End CHR$(&H03)
PageUp CHR$(&H11)
PageDown CHR$(&H12)
CHR$(&H1C)
CHR$(&H1D)
CHR$(&H1E)
CHR$(&H1F)

C$=INKEY$()
KBONLY$=INKEY$(1)

TSCREEN フォント種類[,文字サイズ]

コンソール(テキストスクリーン4)の広さと表示に使用するフォントの設定を行う

・幅と高さは画面サイズを文字サイズで割った物が設定される 。

引数

フォント種類

表示に用いるフォントの種類:8~64(8の倍数)
・24以上を指定すると、ユーザー定義文字のみ表示されるようになる。

文字サイズ

文字の表示サイズ:8~64

TSCREEN 8

TSCREEN スクリーンID,フォント種類,文字サイズ[,幅,高さ]
TSCREEN スクリーンID,フォント種類,幅,高さ

テキストスクリーンの広さと表示に使用するフォントの設定を行う

引数

スクリーンID

設定するテキストスクリーンのID:0~4

フォント種類

表示に用いるフォントの種類:8~64(8の倍数)
・24以上を指定すると、ユーザー定義文字のみ表示されるようになる。

文字サイズ

文字の表示サイズ8~64

幅, 高さ

テキストスクリーンの幅と高さを文字単位で指定する
・幅×高さが32768まで指定可能。
・幅、高さを省略した場合、または0を指定した場合、現在の画面サイズを文字サイズで割った物が設定される。

TSCREEN 1,16,16,100,100

TSCREEN [スクリーンID] OUT フォント種類,文字サイズ,幅,高さ

テキストスクリーンの広さと表示に使用するフォントを取得する

引数

スクリーンID

消去するテキストスクリーンのID:0~4
・省略時は4。

返値

フォント種類

表示に用いるフォントの種類:8~64

文字サイズ

文字の表示サイズ:8~64

幅, 高さ

テキストスクリーンの幅と高さ

TSCREEN OUT FONT,SIZE,W,H
TSCREEN 1 OUT FONT,SIZE,W,H

TPAGE [スクリーンID,]グラフィックページ,参照原点X,参照原点Y

ユーザー定義文字の参照グラフィックページを設定する

・ユーザー定義文字の絵を参照するグラフィックページと、参照原点を設定する。
・ユーザー定義文字は文字コード&HE800から&HF7FFまでの4096文字で、この範囲の文字はTPAGEで設定した場所をフォントとして参照する。
・ユーザー定義文字ではない通常文字は参照グラフィックページや参照原点を変更できない。
・文字を表示してからTPAGEを呼び出すと、表示済みの文字にも影響が出る。

引数

スクリーンID

設定するテキストスクリーンのID:0~4
・省略時は4。

グラフィックページ

参照するグラフィックページ:-1~5

参照原点X, 参照原点Y

グラフィックページ内の参照原点座標
・ユーザー定義文字は、参照原点から64x64文字を並べた範囲を参照する。
・フォント種類が8の場合512x512ピクセル、16の場合1024x1024ピクセル、32の場合2048x2048ピクセルとなる。

TPAGE [スクリーンID] OUT グラフィックページ,参照原点X,参照原点Y

ユーザー定義文字の参照グラフィックページを取得する

引数

スクリーンID

参照情報を取得するテキストスクリーンのID:0~4
・省略時は4。

グラフィックページ

参照するグラフィックページ

参照原点X,参照原点Y

グラフィックページ内の参照原点座標

TCOLOR スクリーンID,色コード

テキストスクリーン全体に乗算する色を設定する

・COLORが文字単位で色を設定するのに対し、TCOLORはテキストスクリーン全体に指定色を乗算する事で、全体の色味を変更する。

引数

スクリーンID

設定するテキストスクリーンのID:0~4

色コード

設定する描画色
・ARGB各8ビットの色コード ※GCOLORを参照。

TCOLOR(スクリーンID)

テキストスクリーンの全体に乗算する色を取得する

引数

スクリーンID

色を取得するテキストスクリーンのID:0~4

返値

指定テキストスクリーンに設定されている描画色

TLAYER スクリーンID,レイヤーID

テキストスクリーンの所属レイヤーを設定する

引数

スクリーンID

設定するテキストスクリーンのID:0~4

レイヤーID

スクリーンを所属させるレイヤーのID:0~7

TLAYER(スクリーンID)

テキストスクリーンの所属レイヤーを取得する

引数

スクリーンID

レイヤーIDを取得するテキストスクリーンのID:0~4

返値

スクリーンが所属しているレイヤーID

TPUT スクリーンID,X,Y,文字コード[,表示属性]
TPUT スクリーンID,X,Y,文字列[,表示属性]

テキストスクリーンの指定座標に文字を一文字書く

引数

スクリーンID

文字を書き込むテキストスクリーンのID:0~4

X,Y

文字を書き込む座標

文字コード

書き込む文字の文字コード:0~65535
・フォントが存在しない文字コードを指定すると×が表示される 。

文字列

書き込む文字を格納した文字列
・先頭の文字を書き込む。

表示属性

文字の表示属性
・ATTRで設定する表示属性と同じ。
・省略時はATTRで設定した表示属性を使用する。

TFILL スクリーンID,始点X,始点Y,終点X,終点Y,文字コード[,表示属性]
TFILL スクリーンID,始点X,始点Y,終点X,終点Y,文字列[,表示属性]

テキストスクリーンの指定範囲を指定文字・文字列で埋める

引数

スクリーンID

文字を書き込むテキストスクリーンのID:0~4

始点X, 始点Y, 終点X, 終点Y

文字を書き込む範囲
・左上が始点X,始点Y、右下が終点X,終点Yで囲われた四角形の範囲。

文字コード

書き込む文字の文字コード:0~65535
・フォントが存在しない文字コードを指定すると×が表示される 。

文字列

書き込む文字を格納した文字列
・文字列内の文字を左上から右方向、右端まで行ったら一段下がって左端から右方向、と埋めていく。

表示属性

文字の表示属性
・ATTRで設定する表示属性と同じ。
・省略時はATTRで設定した表示属性を使用する。

TFILL 0,2,2,10,5,&HE810,#A_REVV
TFILL 0,2,6,11,10,"ABC" 

THOME スクリーンID,ホーム座標X,ホーム座標Y

テキストスクリーンのホーム座標(座標基準点)を設定する

ホーム座標はTOFS命令の座標基準点、TROT(回転)やTSCALE(スケーリング)の中心点として使用する

引数

スクリーンID

設定するテキストスクリーンのID:0~4

ホーム座標X,ホーム座標Y

設定するホーム座標の座標
・ハードウェアの仕様により、実数値を設定すると参照フォント画像が1ピクセルずれる事がある。

THOME スクリーンID OUT ホーム座標X,ホーム座標Y

テキストスクリーンのホーム座標を取得する

引数

スクリーンID

取得するテキストスクリーンのID:0~4

返値

ホーム座標X,ホーム座標Y

ホーム座標の座標

TOFS スクリーンID,X,Y[,Z]

テキストスクリーンの表示座標を設定する

・THOMEとTOFSの関係は、「THOMEで設定したテキストスクリーン上の座標を、TOFSで設定した画面上の座標に持って行く」と考えれば良い。

引数

スクリーンID

設定するテキストスクリーンのID:0~4

X,Y

設定する表示座標
・ハードウェアの仕様により、実数値を設定すると参照フォント画像が1ピクセルずれる事がある。

Z

表示優先度:-4095~4095
・小さいほど手前に表示される。

TOFS スクリーンID OUT X,Y[,Z]

テキストスクリーンの表示座標を取得する

引数

スクリーンID

取得するテキストスクリーンのID:0~4

返値

X,Y

表示座標座標

Z

表示優先度

TROT スクリーンID,角度

テキストスクリーンの回転角を設定する

・THOMEで設定したホームポジションを中心に回転する。

引数

スクリーンID

設定するテキストスクリーンのID:0~4

角度

回転角(度)
・ハードウェアの仕様により、設定角度により参照フォント画像が1ピクセルずれる事がある。

TROT(スクリーンID)

テキストスクリーンの回転角を取得する

引数

スクリーンID

取得するテキストスクリーンのID:0~4

返値

回転角

TSCALE スクリーンID,倍率X,倍率Y

テキストスクリーンの拡大・縮小を行う

・THOMEで設定したホームポジションを中心に拡大・縮小する。
・1.0より大きな値で拡大(2.0で2倍)、1.0より小さな値で縮小(0.5で半分)。

引数

スクリーンID

設定するテキストスクリーンのID:0~4

倍率X,倍率Y

拡大縮小の倍率を横(X)と縦(Y)に設定する
・ハードウェアの仕様により、設定値により参照フォント画像が1ピクセルずれる事がある。

TSCALE スクリーンID OUT 倍率X,倍率Y

テキストスクリーンの拡大・縮小倍率を取得する

引数

スクリーンID

取得するテキストスクリーンのID:0~4

倍率X,倍率Y

現在設定されている拡大・縮小倍率

TSHOW スクリーンID

テキストスクリーンを表示する

引数

スクリーンID

表示するスクリーンID:0~4

TSHOW(スクリーンID)

テキストスクリーンの表示状況を取得する

引数

スクリーンID

取得するスクリーンID:0~4

返値

テキストスクリーンが表示されていれば1、されていなければ0を返す

THIDE スクリーンID

テキストスクリーンを隠す

引数

スクリーンID

表示を隠すスクリーンID:0~4

THIDE(スクリーンID)

テキストスクリーンの表示状況を取得する

引数

スクリーンID

取得するスクリーンID:0~4

返値

テキストスクリーンが表示されていれば0、されていなければ1を返す

TBLEND スクリーンID,合成方法

テキストスクリーンの合成方法を設定する

引数

スクリーンID

合成方法を設定するテキストスクリーンのID:0~4

合成方法

設定する合成方法:0~1
・0で通常合成、1で加算合成。

TBLEND(スクリーンID)

テキストスクリーンの合成方法を取得する

引数

スクリーンID

合成方法を取得するテキストスクリーンのID:0~4

返値

設定されている合成方法
・0で通常合成、1で加算合成。

TANIM スクリーンID,アニメ対象,データ配列[,ループ]

テキストスクリーンにアニメを設定する(配列で指定)

テキストスクリーンアニメ共通仕様

・アニメは値を設定して指定時間分待つという動作。
・アニメ開始はTANIMを実行した次フレームから。
・対象要素ごとに最大32個のデータを受け付ける。
・時間にマイナス値を指定すると直前の値から線形補間を行う。

引数

テキストスクリーンID

アニメーションを設定するテキストスクリーンのID:0~4

アニメ対象

変化させる要素を管理する数値または文字列

0 "XY" XY座標
1 "Z" Z座標
2 "R" 回転角度
3 "S" 倍率XY
4 "C" 表示色
5 "V" 変数(テキストスクリーン内部変数7の値)

・文字列の末尾に"+"を付けるか、数値に8を加えるとアニメーション開始時点からの相対値となる。
・SPANIMで使用できる"I","UV"は指定しても無視される。

データ配列

アニメデータが格納された1次元数値配列

ループ

ループ回数:1~
・0を指定することで無限ループとなる。
・省略時は1。

データ配列

・アニメデータは数値配列に次の順で用意(最大32個まで)。
・時間1,項目1,[項目2,] 時間2,項目1,[項目2,]…。

DIM PANIM[ 6 ]
PANIM[0]=-60 'frame(-60=smooth)
PANIM[1]=200 'offset X,Y
PANIM[2]=100
PANIM[3]=-30 'frame
PANIM[4]=50 'offset
PANIM[5]=20
TANIM 0,"XY",PANIM

TANIM スクリーンID,アニメ対象,"@ラベル文字列"[,ループ]

テキストスクリーンにアニメを設定する(DATA命令で指定)

引数

スクリーンID

アニメーションを設定するテキストスクリーンのID:0~4

アニメ対象

変化させる要素を管理する数値または文字列

0 "XY" XY座標
1 "Z" Z座標
2 "R" 回転角度
3 "S" 倍率XY
4 "C" 表示色
5 "V" 変数(テキストスクリーン変数7の値)

・文字列の末尾に"+"を付けるか、数値に8を加えるとアニメーション開始時点からの相対値となる。
・SPANIMで使用できる"I","UV"は指定しても無視される。

@ラベル文字列

・アニメデータが格納されたDATA命令の先頭ラベル。
・@ラベル名を""でくくって文字列として指定(または文字変数)。

ループ

ループ回数:1~
・0を指定することで無限ループとなる。
・省略時は1。

データ

アニメデータはDATA命令に次の順で用意

DATA キーフレーム数(最大32)
DATA 時間1,項目1[,項目2]
DATA 時間2,項目1[,項目2]
 :

@MOVDATA
DATA 2 'counter
DATA -60,200,100 'frame,offset
DATA -30,50,20 'frame,offset
TANIM 0,"XY",@MOVDATA

TANIM スクリーンID,アニメ対象,時間1,項目1[,項目2][,時間2,項目1[,項目2]]…[,ループ]

テキストスクリーンにアニメを設定する(直接引数として指定)

引数

スクリーンID

アニメーションを設定するテキストスクリーンのID:0~4

アニメ対象

変化させる要素を管理する数値または文字列

0 "XY" XY座標
1 "Z" Z座標
2 "R" 回転角度
3 "S" 倍率XY
4 "C" 表示色
5 "V" 変数(テキストスクリーン変数7の値)
6 "UV" UV座標(定義元画像座標)
7 "I" 定義番号

・文字列の末尾に"+"を付けるか、数値に8を加えるとアニメーション開始時点からの相対値となる。
・SPANIMで使用できる"I","UV"は指定しても無視される。

時間,項目

・アニメデータそのもの(必要な数分並べる、最大32個)。

ループ

ループ回数:1~
・0を指定することで無限ループとなる。
・省略時は1。

TANIM 0,"XY",-60,200,100,-30,50,20

TANIM スクリーンID,アニメーション定義番号

テキストスクリーンにアニメを設定する(アニメーション定義番号で指定)

引数

スクリーンID

アニメーションを設定するテキストスクリーンのID:0~4

アニメーション定義番号

ANIMDEF命令で定義済みの定義番号: 0~1023

ANIMDEF 0,"XY",-60,100,0
TANIM 0,0

TANIM [スクリーンID]

テキストスクリーンに設定されているアニメをクリアする

引数

スクリーンID

アニメーションをクリアするテキストスクリーンのID:0~4
・省略時は全スクリーンのアニメをクリアする 。

TANIM 0
TANIM

TSTOP [スクリーンID]

テキストスクリーンのアニメーションを停止させる

引数

スクリーンID

対象のテキストスクリーンのID:0~4
・省略時は全テキストスクリーンのアニメーションを停止させる。

TSTOP

TSTART [スクリーンID]

テキストスクリーンのアニメーションを開始させる

引数

スクリーンID

対象のテキストスクリーンのID:0~4
・省略時は全テキストスクリーンのアニメーションを開始させる。

TSTART

TCHK(スクリーンID)

テキストスクリーンのアニメーション状態を取得する

引数

スクリーンID

対象のテキストスクリーンのID:0~4

返値

b00 XY座標 1 #CHKXY
b01 Z座標 2 #CHKZ
b02 回転 4 #CHKR
b03 倍率XY 8 #CHKS
b04 表示色 16 #CHKC
b05 変数 32 #CHKV

ビットごとに対象割り当て(すべて0の時アニメ停止中)

ST=TCHK(0)
'|b00|#CHKXY|
'|b01|#CHKZ|
'|b02|#CHKR|
'|b03|#CHKS|
'|b04|#CHKC|
'|b05|#CHKV|

TVAR スクリーンID,変数キー,値
TVAR スクリーンID,変数キー

テキストスクリーン変数への書き込み

・プログラム実行開始時、ACLS呼び出し時にクリアされる。

引数

スクリーンID

対象のテキストスクリーンのID:0~4

変数キー

テキストスクリーン変数の名前
・文字列または整数を名前として付ける事ができる。

内部変数に登録する値
・数値または文字列を登録する事ができる。

・省略時は変数キーに結びついた値を削除する。

TVAR 0,7,1
TVAR 0,"NAME","VALUE" 
TVAR 0,"NAME" '値の削除

TVAR(スクリーンID,変数キー)

テキストスクリーン変数を取得する

引数

スクリーンID

対象のテキストスクリーンのID:0~4

内部変数番号

テキストスクリーン変数の名前
・文字列または整数を名前として付ける事ができる。

返値

TVARで設定した値
・TVARで値を設定していない場合は、整数の0が返る。

V=TVAR(0,0)

TVAR スクリーンID[,変数キー]

テキストスクリーン変数を削除する

引数

スクリーンID

対象のスクリーンID:0~4

変数キー

削除するテキストスクリーン変数の名前
・文字列または整数を名前として付ける事ができる。
・省略時は指定スクリーン内のすべてのテキストスクリーン変数を削除する。

TVAR 0,7
TVAR 0,"NAME" 

TCOPY コピー先スクリーンID[,コピー元スクリーンID],始点X,始点Y,終点X,終点Y,転送先X,転送先Y

テキストスクリーン内のキャラクタ情報をコピーする

引数

コピー先スクリーンID

コピー先のテキストスクリーンID:0~4

コピー先スクリーンID

コピー元のテキストスクリーンID:0~4

・省略時はコピー先スクリーンと同じスクリーンが指定される。

始点X,Y,終点X,Y

コピー元の始点座標と終点座標

転送先X,Y

コピー先の始点座標

TCOPY 4,0,0,9,9,10,10
TCOPY 4,1,0,0,9,9,10,10

TSAVE 読み出しスクリーンID,[X,Y,幅,高さ,]転送先配列

テキストスクリーンのキャラクタ情報を配列へコピーする

・配列内のデータ構成はTARRAYを参照。

引数

読み出しスクリーンID

キャラクタ情報を取り出すテキストスクリーンID:0~4

X,Y,幅,高さ

コピー元範囲の始点X,Y座標,幅,高さ
・省略時はテキストスクリーン全体を指定した事になる。

転送先配列

キャラクタ情報を格納する数値配列変数

・配列の要素が不足する場合、1次元配列に限り自動追加される。

DIM WORK%[]
TSAVE 4,WORK%

TLOAD 書き込みスクリーンID,[X,Y,幅,高さ,]転送元配列

配列からテキストスクリーンにキャラクタ情報をコピーする

・配列内のデータ構成はTARRAYを参照。

引数

書き込みスクリーンID

キャラクタ情報を書き込むテキストスクリーンID:0~4

X,Y,幅,高さ

書き込み範囲の始点X,Y座標,幅,高さ
・省略時はテキストスクリーン全体を指定した事になる。

画像配列

キャラクタ情報が格納された数値配列

DIM WORK%[]
TLOAD 4,WORK%

TARRAY(スクリーンID)

テキストスクリーンの内容を表す整数配列を取得する

・テキストスクリーンの文字、属性、色を整数型2次元配列として直接読み書きが可能。
・書き込んだ結果を反映するにはTUPDATEを使用する。

引数

スクリーンID

配列を取得する対象スクリーンのID:0~4

返値

対象スクリーンの内容を表す整数型2次元配列
・配列サイズは[スクリーン高さ, スクリーン幅x2]。
・1文字は2要素で表され、1要素目は上位16ビットに表示属性、下位16ビットに文字コード、2要素目は表示色が入る。

T=TARRAY(0)
T[0,0]=&HE810
PRINT HEX$(T[0,0])

TUPDATE スクリーンID [,始点X,始点Y,終点X,終点Y]

TARRAYによる書き込み内容を表示に反映させる

・通常のテキストスクリーン命令では内部でTUPDATE相当の処理を行っているため、文字表示命令実行後にTUPDATEを使用しても何の効果もない。
・TUPDATEを使用しなくても、更新座標付近に他の文字表示命令で書き込みを行うと自動的に反映が行われる。

引数

スクリーンID

反映を行うスクリーンのID:0~4

始点X,始点Y,終点X,終点Y

反映を行いたい四角形領域の始点と終点座標
・省略するとスクリーン全体を更新する。

T=TARRAY(0)
T[0,0]=&HE811
T[0,1]=#C_RED
TUPDATE 0

TFUNC スクリーンID,"@ラベル"
TFUNC スクリーンID,"ユーザー定義命令名"

テキストスクリーンごとにコールバック処理を割り当てる

・コールバック処理が必要な上級者向けの命令。
・GOSUBでジャンプしてきてほしいラベルか、実行してほしいDEF命令名のどちらかを指定できる。
・CALL TEXT により全テキストスクリーンのコールバック処理を一度に実行する。
・コールバック先ではCALLIDX()関数で管理番号を取得できる。

引数

スクリーンID

対象のテキストスクリーンID:0~4

@ラベル

呼び出される処理先のラベル

ユーザー定義命令名

呼び出されるユーザー定義命令の名前

TFUNC 0,"@PROG" 
TFUNC 1,"USERDEF" 

TFUNC スクリーンID

テキストスクリーンに割り当てたコールバック処理をクリアする

引数

スクリーンID

クリア対象のテキストスクリーンID:0~4

TFUNC 0

TCOORD スクリーンID,変換元座標X,Y[,モード] OUT 変換結果座標X,Y

ディスプレイ座標と、テキストスクリーン上座標との変換を行う

引数

スクリーンID

スクロールするテキストスクリーンのID:0~4

座標X,Y

文字コードを調べる座標
・次のモードの値により座標の意味が変わる。

モード

座標変換方法を指定する:0~2

0 テキストスクリーン上の座標(ドット単位)をディスプレイ座標に変換
1 ディスプレイ座標をテキストスクリーン上の文字単位座標に変換
2 ディスプレイ座標をテキストスクリーン上のドット単位座標に変換

・省略時は0。
・ディスプレイ座標を使用する場合、LMATRIXの影響は考慮されない。

返値

変換結果座標X,Y

変換結果の座標値
・モードの値により返ってくる座標の意味も変わる。

TCOORD 1,10,10,0 OUT DX,DY
GPSET DX,DY,#C_WHITE

TCOORD 1,100,50,1 OUT CX,CY
LOCATE CX,CY:?"A" 

TCOORD 1,100,50,2 OUT SX,SY

reference/テキストスクリーン入出力.txt · 最終更新: 2023/12/07 15:51 (外部編集)

ページ用ツール