L3/S1 BASICメモ

L3やS1BASICでよく使うステートメントで何度も調べてしまう情報を整理しました

CLEAR命令

【S1】CLEAR 文字列領域, 機械語領域先頭番地
数値変数を0,文字列変数をヌル,配列を初期化
 文字列領域はデフォルトで4094バイト,最大45054バイトまで指定可能
指定した機械語先頭番地~&HCFFFが機械語領域として指定される
 デフォルトは&HCFFFで機械語領域は確保されない
 指定した機械語領域を全て開放する場合は&HD000を指定

【L3】CLEAR 文字列領域, BASICで使用するメモリ上限番地
数値変数を0,文字列変数をヌルで初期化
 文字列領域はデフォルトで300バイト
BASICで使用するメモリ上限はデフォルトで&H7FFF
文字列領域AとBASIC上限番地Bの関係でB-Aの値
 40字モード&80字ノーマルモード &H4567
 80字モードハイレゾモード &H494F

NEWON命令

システムモードを切り替えて再起動する
【S1】NEWON n ← nを0~3のモード番号で指定する
 デフォルトはNEWON 0
 n=0 グラフィック使用でノンインタレースモード
 n=1 グラフィック未使用でノンインタレースモード
 n=2 グラフィック使用でインタレースモード
 n=3 グラフィック未使用でインタレースモード

【L3】NEWON n ← nを各ビットの重みを加えて0~255で指定する
Bit0: オン=*BASICモード , オフ = TERMモード
Bit1: オン=*インタレースモード(SCREEN,,0), オフ=ノンインタレースモード(SCREEN,,1)
Bit2: オン=80文字モード(WIDTH80) , オフ=*40文字モード(WIDTH40)
Bit3: オン=ノーマルモード(SCREEN0), オフ=*ハイレゾモード(SCREEN1)
Bit4: オン=PFキー表示あり(CONSOLE0,24,1),  オフ=*PFキー表示なし(CONSOLE,0,25,0)
Bit5: オン=ターミナル半2重, オフ=ターミナル全2重
Bit6: オン=ターミナル7Bit, オフ=ターミナル8Bit
Bit7: オン=プリンタにカタカナをひらがなに変換, オフ=*変換なし

 

SCREEN命令

画面モードとページ設定を行う
【S1】SCREEN [<解像度モード>] [,[<ページ>] [ ,<モード>]
解像度モード
 n=0 320*200ドット、 n=1 *640*200ドット
ページ設定 (省略で現在のページ番号)
 n=0 表示ページ0, 描画ページ0
 n=1 表示ページ1, 描画ページ1
 n=2 表示ページ0, 描画ページ1
 n=3 表示ページ1, 描画ページ0
モード設定
 n=0 インタレースモード, テキスト画面スクロール
 n=1 *ノンインタレースモード, テキスト画面スクロール
 n=2 インタレースモード, テキスト画面、グラフィック画面スクロール
 n=3 ノンインタレースモード, テキスト画面、グラフィック画面スクロール
 
【L3】SCREEN [<解像度モード>] [,[<ページ>] [, <インタレースモード>]
解像度モード
 n=0 ノーマルモード、 n=1 *ハイレゾモード
ページ設定
 マルチページを使用するとき指定したページ番号を表示(1~16)
インタレースモード設定
 n=0 インタレースモード、 n=1 ノンインタレースモード
 

その他メモ

TERMの終了はCRTL+D