=============================================================================== アドイン版 Casio Basic Interpreter (& Compiler) ver 2.x ベータ版 copyright(c)2015-2023 by sentaro21 e-mail sentaro21@pm.matrix.jp =============================================================================== 更新履歴 =============================================================================== v2.47β 2023.12,10- ベータ版(インタプリタのみ) (build02) 2023.12.11 ・C.Basicコマンド専用カタログ機能からヒストリーを起動して]EXIT]でカタログに戻らない不具合を修正しました。 ・メインメモリ上のプログラムでLoad(コマンドを使った場合、フォルダ内のファイルにアクセスできない不具合を修正しました。 ・ファイル表示の反転カーソル位置がずれていたのを修正しました。(FX版のみ) (build01) 2023.12.10 ・C.Basicコマンド専用カタログ機能を追加しました。([Shift]+[5]で起動します) ・ファイルモードと変数表示のミニフォント表示に対応しました。(FX版、エディタのフォントサイズ変更と共通です) ・?コマンドのミニフォント表示に対応しました。(FX版) (書式)?([@][x][,y][,width][,"空白キャラクタ"][,入力桁数][,R]) (例)?(@30,40,5,">",5)A   現在のVRAMのピクセル座標(X=30,Y=40)の位置でAの値をミニフォントで表示して入力待ちになります。空白は">"で埋められます。 ・非対応のコマンド(内部コード0x7Fxx)でフリーズする不具合を修正しました。 ・エラー表示を変更しました。"Missing WhileEnd" and "Missing Switch" 等(ErrorCode_List.txtを参照してください) ・GIIモデル以外の隠しRAMの初期化機能を無効にしました。 ・BeepコマンドがACキーで中断できるようにしました。 ・行列とリストの初期化でRGB()HSV()HSL()コマンドが最初にある場合にエラーになっていた不具合を修正しました。(1.45エンバグ) (例){RGB(255,0,255),123,456} ・Load(コマンドで4096バイトを超えるファイルが4096バイトしか読み込めなかった不具合を修正しました。(CG版のみ) ・LocateコマンドやText等の描画指定を括弧で記述することで数式指定できるようになりました。 (書式1)Locate x,y,Value/Strings[,N/O/R/V] (書式2)Locate x,y,Value/Strings[,(描画指定)]  N:0 'normal  O:1 'or  R:2 'reverse  V:3 'reverse or (例)Locate 2,3,"ABC",(2)    Locate 2,3,"ABC",(R) ' R=2  どちらも  Locate 2,3,"ABC",R  と同じです。 ・FkeyMenuの描画指定を括弧で記述することで数式指定できるようになりました。 (書式1)FKeyMenu( n[〜m], "文字列"/アイコン番号 [,C/M/N/R/I/S/U/L [,アイコン色 [,アイコン背景色]]] ) (書式2)FKeyMenu( n[〜m], "文字列"/アイコン番号 [,(描画指定) [,アイコン色 [,アイコン背景色]]] )  基本描画指定における数値(0〜4)   C:( 0)消去します。   N:( 1)ノーマル白アイコン。(省略可)   R:( 2)右下が欠けた黒アイコン   I:( 3)四角い黒アイコン   S:( 4)縁取りのある黒アイコン  以下の修飾は基本描画指定値に足して指定します。   U:( 16)文字列を1ドット上側に表示。   L:( 32)表示範囲を左右2ドット広げます。   M:( 64)マスク処理します。   m:(128)枠だけマスク処理します。(FX版のみ) (例)FKeyMenu (1, "string",NULM) FKeyMenu (1, "string",(1+16+32+64))     上記の2つは同じ結果になります。 v2.46β 2023.10,23- ベータ版(インタプリタのみ) (build03) 2023.10.26 ・メインメモリのお気に入り機能において大文字と小文字しか違わない同名ファイルの不具合を修正しました。 ・TicksWaitのカウントが1多かったのを修正しました。 (修正前)TicksWait 4 が TicksWait 5 と同じでした。 ・同梱ソースファイルの不備でビルドできない不具合を修正しました。 ・フォルダ位置に復帰できなくなっていた不具合を修正しました。(build01 エンバグ) (build02) 2023.10.25 ・ファイルリストにおいてフォルダ上にカーソルがあるときに新規ファイルを作成する場合にカレントフォルダに作成されるようにしました。 ・ファイルを上書き保存する場合、以前のファイルよりもサイズが大きい場合は上書き保存するように書き込み方法を変更しました。(GIIIモデルのみ。)  (ファイルサイズが小さくなる場合は以前のファイルを消去してから新規保存します。) (build01) 2023.10.23 ・初回起動時に[CBasic]フォルダを作成しそこをデフォルトの保存フォルダとするようにしました。(GIIIモデルのみ。) ・整数モード時のFor〜Nextの制御変数の終値が互換でなかったのを修正しました。 ・文字列の長さを制限した場合にそれ以上の長さの文字列の代入に失敗する不具合を修正しました。  (長さ-1が最大格納文字数になります。) ・Pol()Rect()関数において、MatBaseが0の場合にListAns[0]ListAns[1]に答えが返らない不具合を修正しました。 ・ENG表示の丸め処理を修正しました。 ・RefとRref関数を使用すると固まる不具合を修正しました。 ・C.Basicコマンド入力で入力できなかったコマンドを追加修正しました。 v2.45β 2020.2.10- ベータ版(インタプリタのみ) (build20) 2020.5.21 ・フランス語版マニュアルの修正をLephenixnoir様にしていただきました。 ・If~ElseIf間の飛越キャッシュの不具合を修正しました。 ・Syetem()コマンドでOSのマイナーバージョンが取得できるようになりました。 (書式)System(-22) (build19) 2020.5.20 ・Try〜TryEndコマンドからBreakで脱出した場合、それ以後、[AC]中断もAcBreakも効かなくなる不具合を修正しました。 ・ReadGraph/WriteGraph/DotGet/DotPutコマンドを現在のVRAMに作用するように仕様変更しました。 ・描画対象VRAMを退避されているテキストVRAM領域とグラフィックスVRAM領域に変更するScreen.Vコマンドを追加しました。 (書式)Screen.V  デフォルトのVRAMに戻します。 (書式)Screen.VT  テキストVRAMの退避領域を描画対象にします。 (書式)Screen.VG  グラフィックスVRAMの退避領域を描画対象にします。 ・System(-1)での機種判定にfx-9860GIIIを追加しました。  0:fx-9860G 1:fx-9860G Slim 2:fx-9860GII(SH3) 3:fx-9860GII(SH4A) 4:Graph35+EII(SH4A) 5:fx-9860GIII(SH4A) 6:fx-9750GIII(SH4A) ・やす(Krtyski)様作成のSystem()コマンドサンプルプログラム(fx-9750GIII対応版)をアップデートしました。(System_sampleフォルダ) (build18) 2020.4.28 ・エディタのカーソル位置記憶がプログラム実行終了後にリセットされていいた不具合を修正しました。(build12でのエンバグです。) ・行列表示を修正しました。 ・セット・アップで隠しメモリのOn/Offは確認ポップアップを出すようにしました。 (build17) 2020.4.24 ・CPLXの行列表示が異常に遅かったのを修正し、3列から4列表示に変更しました。 ・プログラム開始時に?入力でアルファモードになっていた不具合を修正しました。(build16でのエンバグです。) ・隠しメモリの初期化を修正しました。 (build16) 2020.4.16 ・自動インデント機能でのSwitch〜Case〜SwitchEndの自動整形を改善しました。 ・ElseIfコマンドの直後にコメントがある場合、次のコマンドがIfの場合に終了していた不具合を修正しました。 ・行列の初期化後に文字列から文字列への代入で代入されない不具合を再修正しました。 (コピーされない例) ClrMat   "ABC"->Str 1   Str 1->Str 3 ・Seqコマンドで刻み値が少数の場合に終値に到達しないことがある不具合を修正しました。 ・CPLXモード以外で虚数を使うと無限ループになる不具合を修正しました。(build15でのエンバグです。) ・省略乗算の不具合を修正しました。(build15でのエンバグです。) ・System(-1)での機種判定にfx-9860GIIIを追加しました。  0:fx-9860G 1:fx-9860G Slim 2:fx-9860GII(SH3) 3:fx-9860GII(SH4A) 4:Graph35+EII(SH4A) 5:fx-9860GIII(SH4A) ・やす(Krtyski)様作成のSystem()コマンドサンプルプログラム(fx-9860GIII対応版)をアップデートしました。(System_sampleフォルダ) (build16) 2020.4. ・ElseIfコマンドの直後にコメントがある場合、次のコマンドがIfの場合に終了していた不具合を修正しました。 ・CPLXモード以外で虚数を使うと無限ループになる不具合を修正しました。(build15でのエンバグです。) ・エディタで英小文字がヒストリーに残る不具合を修正しました。 (build15.) 2020.3.22 ・インデックス開始値が0の場合に要素数が64を超えるListの初期化が出来なかった不具合を修正しました。 ・ファイルモードで検索文字列が空の場合に[F4]がCOPYになる不具合を修正しました。 (build15) 2020.3.20 ・Colon様のサポートにより関数メモリの実装を開始しました。 ・デフォルトのインデックス開始値が0の場合にListの自動確保が出来なかった不具合を修正しました。 ・ファンクションメモリー(Fn)のStore/Recall/SEEのSEEをEditに変更しました。 (build14) 2020.3.14 ・ファンクションメモリー(Fn)のStore/Recall/SEEのSEEで[F5](Edit)を追加し編集可能になりました。 ・ファンクションメモリー(Fn)のStore/Recall/SEEの不具合を修正しました。 (build13) 2020.3.10 ・ファンクションメモリー(Fn)およびグラフメモリー(Y)をデフォルトで数式評価とし、  文字列関数内および文字列に続く場合は文字列として評価するように変更しました。  (数式評価)   fn1->A   fn1(123)->A   Locate fn1   Locate fn1(123)  (文字列評価)   fn2->Str 2   "123"+fn1->Str 1   Locate "123"+fn1   StrJoin(fn1,Str 1) ・文字列から文字列への代入で代入されない不具合を修正しました。 (fn3にコピーされない例)   ClrMat   "123"->fn1   "ABC"->Str 1   Str 1->fn3 ・ファンクションメモリー(Fn)のStore/Recall/SEEを追加しました。  (※エディタではクリップボードの内容がストア対象です。1行入力では1行全体がストア対象になります。) ・F_Start/F_End/F_pitchを独立変数に変更しました。 ・?コマンドで文字列が表示される場合にアスキーコードにデコードしないように修正しました。 (build12.) 2020.3.4 ・GraphYとfnの確保数と文字列の長さをStr変数と同等に変更しました。 ・GraphYの格納仕様を6バイトのプレフィックス付きに変更しました。 (行列への直アクセス以外は以前と変更ありません。) (build12) 2020.3.2 ・エディタでファイルモードの切替でファイルリストが更新されない不具合を修正しました。 ・System()コマンドでメインメモリに保存されるC.Basicのシステムファイルを取得できるようになりました。  (インデックス開始値は0で固定です。) (例)System(10000,1)  @CBASIC/Cbasicの内容をListAnsに取得します。 (例)System(10000,2)  @CBASIC/Cbasic2の内容をListAnsに取得します。 ・やす(Krtyski)様作成のSystem()コマンドサンプルプログラムを同梱しました。(System_sampleフォルダ) (build11) 2020.3.1 ・Screen#、Screen%を連続実行するとエラーになる不具合を修正しました。 ・Screen#、Screen%からListAnsに転送した場合の不具合を修正しました。 (例)Screen#0,0→List Ans ・ファイルモードの検索機能を改善しました。  アルファベットキーを押すと検索窓が開き検索モードになります。  検索窓では左右移動等、通常の入力が可能です。  検索窓を解除するには[EXIT]を押してください。  カーソル上下、[EXE] [F1](EXE) [F2](EDIT) [F3](NEW)キーは検索窓を閉じること無く実行できます。 (build10) 2020.2.28 ・ファイルモードでアルファベットキーによるダイレクト選択時に[SHIFT]、[ALPHA]、小文字や数字が指定が出来るようになりました。  [F4](A<>a):大文字小文字切り替えです。  [F5](CHAR)  [F5](→):フォルダ/ファイルサーチを切り替えます。  [DEL]:一文字戻ります。  [AC]:全部消します。  [EXIT]:元に戻ります。  [X^2]:〜  [^]:' or ^  [(-)]:@ (build09) 2020.2.26 ・ファイルモードでアルファベットキーによるダイレクト選択時に2文字以上の指定が出来るようになりました。  [DEL]:一文字戻ります。  [AC]:全部消します。 ・ファンクションメモリー(Fn)およびグラフメモリー(Y)に引数が無い場合は文字列として評価するようにしました。 ・インデントの必要なコマンド(If,Else..)の直前で改行した場合にインデントが余分に付加される不具合を修正しました。 ・””コマンドの実行速度が遅かった不具合を修正しました。 (build06) 2020.2.21 ・エミュレータの判定方法をハードウェアID判定に変更しました。 (build03) 2020.2.15 ・ラベルの検索時にコメントでの'#に続くオプションの設定が変更されてしまう不具合を修正しました。 (build02)  2020.2.12 ・VarPtr()コマンドで行列/List/Vctを指定した場合、その添字が常に実数評価されていた不具合を修正しました。 ・FKeyMenuコマンドにカラー引数があってもエラーにならないように修正しました。 (build01)  2020.2.10 ・SortA()/SortD()コマンドに文字配列のソートを追加しました。 (例)SortA($Mat A)  Mat Aの文字列が昇順にソートされます。 ・ReadMe、マニュアル更新しました。 ・行列画面で53以降の拡張領域の一覧表示をサポートしました。 [←]:26戻ります。 [→]:26進みます。 ・FkeyMenu(コマンドを拡張しました。 (書式)FKeyMenu( n[〜m], "文字列"/アイコン番号 [,C/M/N/R/I/S/U/L [,アイコン色 [,アイコン背景色]]] )  ※ "アイコン色" はデフォルトで黒い部分の色指定です。  ※ "アイコン背景色" はデフォルトで白い部分の色指定です。  ※ 3 番目以降の引数は省略可能です。引数を省略した場合でも”,"は必要です。 (書式)FKeyMenu( n[〜m], "文字列"/アイコン番号 [,C/M/N/R/I/S/U/L [,アイコン色 [,アイコン背景色]]] )  ※ 3番目以降の引数は省略可能です。引数を省略した場合でも”,"は必要です。  3番目のオプションは順不同です。  C:消去します。  M:マスク処理します。  m:枠だけマスク処理します。  N:ノーマル白アイコン。(省略可)  R:右下が欠けた黒アイコン  I:四角い黒アイコン  S:縁取りのある黒アイコン  U:文字列を1ドット上側に表示。  L:表示範囲を左右2ドット広げます。 (例)FKeyMenu (1, "string" ) (例)FKeyMenu (2〜3, "longstring",R) (例)FKeyMenu (4〜5, "longstring",I) ・やす(Krtyski)様 & CalcLoverHK様 & Colon様作成のFKeyMenu(コマンドのサンプルプログラムを同梱しました。(C.Basic_sample\FKeyMenu_sample) ・エディタで[SHIFT]を押したときに編集可能空きエリアのサイズをステータスエリアに表示するようにしました。 ・System()コマンドにエミュレータ判定を追加しました。 (書式)System(-7)  実機では0、エミュレータでは1が返ります。 ・DBL#モードにおいて、一時停止と変数表示での虚数表示がされていたのを修正しました。 ・変数表示をINT%,DBL#,CPLXで独立させました。 v2.44β 2020.1.24 ベータ版(インタプリタのみ) (build06) ・ストレージ/SDへのPictファイルのセーブが出来なくなっていた不具合を修正しました。(2.28でのエンバグ) ・デフォルトで確保できるStr文字変数の数を999に増やしました。 ・行列のインデックス開始値が0の場合、'#Str、'#Fn等等で設定した数より1多く確保される不具合を修正しました。 ・セットアップのカレントフォルダの切り替えを修正しました。 ・Fix指定で少数桁を含む桁数が16桁以上にならないようにしました。 ・'#Str、'#Fn等の引数指定で数値以外の数式が可能になりました。  (例)#Str ,N+1,A*10 ・IsExist(でワイルドカードでファイルを検索した場合、返り値がおかしかったのを修正しました。 (例)IsExist("*.bmp")  ファイルが存在する場合、ファイル数を返す。  ファイルが存在しない場合、0を返す。 ・変数表示画面を一部修正しました。 ・ファイル名入力時の保存先選択画面を修正しました。 ・行列/List/Vct選択に[SHIFT]+[F1][F2][F3]を追加しました。 ・一行入力時に[ALPHA]+[(-)]で"%"が入力できなかった不具合を修正しました。 ・バージョン表記を再アップに対応して一部変更しました。 v2.43β 2020.1.20 ベータ版(インタプリタのみ) ・Versionコマンドで返す値が242のままだったので修正しました。 2020.1.11 ・メモリモード(ストレージメモリ/メインメモリ)を切り替える時に同じモードには移行できないように修正しました。 ・セットアップの"Force Return"を指定していた場合、[SHIFT]+[F6]でデバッグモードに入れない不具合を修正しました。 ・拡張変数へのAliasはエラーになるようにしました。 v2.42β 2020.1.6 ベータ版(インタプリタのみ) ・MLコマンドで画面外に描画範囲がある場合の不具合を修正しました。 ・積分計算式がエラーになる場合の処理を修正しました。 ・積分計算の初期精度を有効6桁とし結果を丸めないように変更しました。 v2.41β 2019.12.29 ベータ版(インタプリタのみ) ・積分の下限が上限より大きい場合の結果の符号を修正しました。 ・積分計算で変数Xが変更される不具合を修正しました。 2019.12.28 ベータ版(インタプリタのみ) ・"Graph(X,Y)=("コマンドでTを引数に持つListに乗算を施した場合、動作しなかった不具合を修正しました。 (例)Graph(X,Y)=(2*{1T,2T},3*{3T,4T}) ・"ExitDM PopUp"がオンの場合、デバッグモードから抜けて再度実行した場合、ポップアップが出なくなる不具合を修正しました。 ・インデント機能を有効にした場合、プログラムの最後にゴミが付くことがある不具合を修正しました。 ・ガウス-クロンロッド求積法に基づく積分機能を追加しました。(UCFのacapde氏のプログラムを実装しました。) https://community.casiocalc.org/topic/7637-cbasic-international-release/page-14#entry62978 (書式)∫( f(x), 下限, 上限 [,許容誤差])  [,許容誤差] 1以上の値の場合は有効桁数指定です。デフォルトは10になっています。 (例)∫(2X^2+3X+4,1,5) 結果は 134.6666667 (例)∫(sin X*cos X,0,1) 結果は 0.354036091 (例)∫(cos ln X,0,1)    "Not met Accuracy"エラー (例)∫(cos ln X,0,1,5) 結果は 0.5 v2.40β 2019.11.29 ベータ版(インタプリタのみ) ・サブプログラムの読み込み方法をプログラムの開始時ではなく実行時に変更しました。 (Progコマンドの引数に文字変数指定する場合でも事前に記述しておく必要はありません。) ・文字列内にエスケープ文字と改行が入る場合の処理を修正しました。 ・文字列に改行を含める場合、"\n"を使えるようにしました。 ・エディタでカーソル位置を記憶できる最大ファイル数を7から16に増やしました。 ・エラーメッセージを改訂しました。 ・BeepコマンドにListを引数として使えるようになりました。 (書式)Beep 周波数のList,長さのList (例){1000,2000,3000}->List 5    {250,500,250}-?List 7    Beep List 5,List 7 v2.39β 2019.11.29 ベータ版(インタプリタのみ) ・Help機能が有効なときにデバッグモードから[EXIT]で解除されない不具合を修正しました。 ・DrawGraphコマンドでListを引数にする場合の不具合を修正しました。 ・エラーメッセージの"Withot"を"w/o"に変更しました。 v2.38β 2019.11.21 ベータ版(インタプリタのみ) ・ファイル一覧でピリオド”.”が含まれるファイルの並び順を修正しました。 ・エディタで上部のステータスバーが表示されている時に6行目でPasteした場合に画面が下にずれる不具合を修正しました。 ・エディタで記憶されたカーソル位置がファイル終端よりも後ろにあった場合に入力できなくなる不具合を修正しました。 ・ストレージメモリに置かれた2KBサイズのPictの読み込みを改善しました。 v2.37β 2019.11.19 ベータ版(インタプリタのみ) ・メインメモリへのStoPictでファイルサイズが2080バイト(正しくは2068バイト)になっていた不具合を修正しました。 ・StoPictの保存先がストレージモードの場合、動作しなくなっていた不具合を修正しました。 ・インデントで保存時に空白を除去する-Save設定時にコメント内の空白も削除していた不具合を修正しました。 ・Listに付けられた名前が8文字の場合、文字変数へのコピーで異常になることがあった不具合を修正しました。 v2.36β 2019.11.14 ベータ版(インタプリタのみ) ・Progコマンドのサブプログラム名に文字列変数が使えるようになりました。 (文字変数指定する場合はそのサブプログラムはメインプログラム内で使用するか記述しておく必要があります。) (例)  "Test"->Str 1  Prog Str 1  Stop  prog "Test" // 実行されないが必要 2019.11.13 ・エディタでのミニフォント時のカーソル表示を改善しました。 v2.35β 2019.11.12 ベータ版(インタプリタのみ) ・行列エディタからのClip&Pasteがメモリ不足で動作しなくなっていた不具合を修正しました。(1.88でのエンバグ) ・文字列を指定したSaveコマンドでファイルサイズが+1になる不具合を修正しました。 (例)Load "test.txt"->Str 1    Save("test.txt"),Str 1 "test.txt"のファイルサイズが1バイト増えてしまう。 v2.34β 2019.11.10 ベータ版(インタプリタのみ) ・エディタで編集後、ファイルリストに戻って再度ファイルを開いた場合、カーソル位置が同じ箇所に来るようにしました。  (最大7ファイルまで対応します。) ・Help機能が有効の場合、プログラム中断後にサブルーチンが無効になってしまう不具合を修正しました。 v2.33β 2019.11.3 ベータ版(インタプリタのみ) ・標準フォントのエディタのクリップモードから[SHIFT]でキャンセルした場合にカーソル位置がおかしくなる不具合を修正しました。 ・[SHIFT]+[F3]+[F5]の16進ダンプモードで[F2]/[F3]を押した時に固まる不具合を修正しました。 v2.32β 2019.10.27 ベータ版(インタプリタのみ) ・Help機能において1バイトコマンドが表示されなかった不具合を修正しました。(2.20でのエンバグです。) ・[SHIFT]+[ALPHA]ロックが[EXE]改行したら解除される不具合を修正しました。 ・[ALPHA]+[(-)]で%が入力できるようにしました。 v2.31β 2019.10.17 ベータ版(インタプリタのみ) ・?コマンドでMat/List/Vctへの初期化入力ができなくなっていた不具合を修正しました。(2.29でのエンバグです。) 2019.10.16 ・行列/List/Vctのの初期化を繰り返すとメモリ不足になる不具合を修正しました。 2019.10.15 ・[DEL]後に画面外までカーソル移動すると、UNDO実行時にカーソル位置が戻らない不具合を修正しました。 ・[PASET]後のUNDOでプログラムサイズが変更されてなかった不具合を修正しました。 2019.10.13 ・エディタにUNDO機能を追加しました。DELの後、[ALPHA]+[DEL]で削除前の状態に戻ります。(戻れるのは1ステップのみ) ・行列/List/Vctのの初期化でAnsメモリを使わないように効率化しました。 v2.30β 2019.10.8 ベータ版(インタプリタのみ) ・?コマンドに@オプション付加で現在使われている画面で使えるようになりました。 (例)?@(5,5,5)->A  Locate座標(5,5)から5カラム分の範囲で入力出来ます。 v2.29β 2019.9.25 ベータ版(インタプリタのみ) ・旧コマンドのList1〜6がセットアップの"EditListChar"で変更されなかった不具合を修正しました。 ・Listのコピーで旧コマンドのList1〜6が機能しなかった不具合を修正しました。 (例) List 1->List2 ・行列とリストの読み込みが最大2倍速になりました。 (例){1,2,3}->List 1 (例) [[1,2,3][4.5,6]]->Mat A ・SH3機でキー入力を改善しました。 ・セットアップの"EDIT TopLine"を"HideStatLine"に名称変更しました。 v2.28β 2019.9.10 ベータ版(インタプリタのみ) ・プログラム終了時に[F2]を押すと直接編集画面に戻れる機能を追加しました。 ・プログラムファイルを保存する場合にファイルサイズが増減していた不具合を修正しました。 ・エミュレータで電圧読み出しがシステムエラーになる不具合を修正しました。 ・OSバージョンが古い場合にFkeyMenu(コマンドでのアイコン読み出しでシステムエラーになる不具合を修正しました。 ・Isz/Dszに続くNext/WhileEnd/LpWhileの動作を2.26に戻しました。 ・UCFのCalcLoverHK氏にManual_EN.txtを修正していただきました。 v2.27β 2019.9.8 ベータ版(インタプリタのみ) ・Isz/Dszに続くNext/WhileEnd/LpWhileの動作を修正しました。 ・fx-Manager PLUS Subscription for Graph 35+E IIでキー入力が固まる不具合を修正しました。 ・オプション付きの?コマンドで値が入力されない不具合を修正しました。 (例)?(16,4,4,"_",4)->A v2.26β 2019.9.5 ベータ版(インタプリタのみ) ・エディタのClip&Paste後のカーソル位置を修正しました。 ・ミニフォントの一部(0xE69E、0xE6A5,0xE6A6)が純正非互換だったのを修正しました。 ・”文字列”コマンドで21文字ちょうどの場合に21文字目が表示されない不具合を修正しました。 ・WaitTicksコマンド実効後にAnsが書き換えられる不具合を修正しました。 ・MenuコマンドでOS画面に戻る[MENU]キーが効かなくなっていた不具合を修正しました。 ・Max Mem ModeがONの場合、バージョン表示のメモリ残量表示が正しくなかった不具合を修正しました。 v2.25β 2019.9.4 ベータ版(インタプリタのみ) ・サブプログラムの読み込みに失敗していた不具合を修正しました。 ・MOD(コマンドの引数が両方とも負数の場合に結果が違っていた不具合を修正しました。 (誤) MOD(-5,-5)->5  MOD(-5,-1)->1 (正) MOD(-5,-5)->0  MOD(-5,-1)->0 ・プログラム実行中断時にサブルーチン編集でメモリ不足になることがある不具合を修正しました。 ・Plotコマンド後のX,Y変数への自動代入が描画範囲外でも代入されていたのを修正しました。 v2.24β 2019.8.29 ベータ版(インタプリタのみ) ・バッテリ電圧を3桁整数値で返すBatteryStatusコマンドを追加しました。 [VARS]-[F3](extd)-[F6](BatteryStatus) (例)BatteryStatus  返り値が516の場合、電圧は5.16Vとなります。  ※全機種対応です。 ・バッテリ電圧をセットアップページでのバージョン表示の下部に表示するようにしました。 ・メインメモリが空の場合、[F6]-[F6]-[F4](->SMEM)でストレージモードに移行できない不具合を修正しました。 ・LoadコマンドでStr変数へのロードが出来なかった不具合を修正しました。 (例)Load "Sample.txt"->Str 1 ・9860G Slimにおいて88MHz以上にオーバークロックした場合のキー入力を改善しました。 ・9860G SlimでのGetkeyおいて「HELP]キーの返すコードを11にしました。[LIGHT]は21です。 ・CSVファイルの編集をサポートしました。(お試し版です)  [F2](edit) ・プレーンテキストファイルの編集をサポートしました。(お試し版です)  [SHIFT]+[X^2] (extended) v2.23β 2019.8.19 ベータ版(インタプリタのみ) ・For〜Nextの制御変数(DBLまたはINT)が動作モードで固定されていたのを修正しました。 (例)'#CBDBL For 1->I% To 6 Disp I% Next ・4ビット行列の数値を符号無しに変更しました。従来の符号付き-8〜7は符号無しの0〜15となります。 v2.22β 2019.8.16 ベータ版(インタプリタのみ) ・DBL/CPLXモードのInt÷コマンドのバグを修正しました。 (誤)-5 Int÷3->2 (正)-5 Int÷3->1 2019.8.15 ベータ版(インタプリタのみ) ・整数モードのMOD(コマンドのバグを修正しました。 (誤)MOD(-5,3)->5 (正)MOD(-5,3)->1 ・メインメモリ上のプログラムでインデント機能を使った場合、プログラムの最後にゴミが出る不具合を修正しました。 v2.21β 2019.8.7 ベータ版(インタプリタのみ) ・ViewWindow変数を個別に指定した場合の"Range Error"を修正しました。 :Graph 35+E IIの隠しメモリ使用可能サイズを128KBから約188KBに変更しました。(2.10以降) ・SDKのエミュレータで初期化後の起動ができなくなっていた不具合を修正しました。 v2.20β 2019.8.5 ベータ版(インタプリタのみ) ・プログラムの新規作成で同名ファイルのプログラムがすでに存在していた場合の不具合を修正しました。 2019.8.4 ベータ版(インタプリタのみ) ・エディタにインデント機能を追加しました。  [EXE]を押した場合、現在の行の先頭にあるインデント(空白)を次の行にも継続します。 ・セットアップの設定で、プログラム読み込み時にインデントを自動的に付加します。(Edit Indent+)  すでにインデント付加されているプログラムは付加されません。  また保存時にインデントを含む空白削除する事もできます。(=CasioBasic準拠ソースに変換します。)  以下のコマンドでインデントが付加されます。   If-Else-ElseIf-IfEnd   For-To-Step-Next   While-WhileEnd   Do-LpWhile   Switch-SwithEnd ・旧コマンドのList1を使用したDim List1が機能しなかった不具合を修正しました。 v2.10β 2019.7.22 ベータ版(インタプリタのみ) ・Graph(X,Y)=の描画でエンバグしていたのを修正しました。  2019.7.20 ・Graph 35+E IIに対応しました。  ただし、隠しメモリは256KBから128KBに半減します。それ以外の仕様は同じです。 ・Graph 35+E IIではフォルダが2階層以上作成できるので、初期ルートフォルダを変更できるようにしました。  セットアップでルートもしくはカレントフォルダにルートフォルダを設定出来ます。  (注)従来FX機では常にルート限定です。 ・フォルダのリネームに対応しました。 ・プログラムをメインメモリから実行した場合、Save/Loadコマンドで正常なアクセスが出来なかった不具合を修正しました。 ・PlotコマンドとLineコマンドの連携が上手くいっていなかった不具合を修正しました。 ・Tを引数指定したGraph(X,Y)=の描画を再修正しました。 v2.00β 2019.6.15 ベータ版(インタプリタのみ) ・例外処理コマンドのTry〜Except〜TryEndコマンドを追加しIsError()は廃止しました。 (書式)Try <プログラム> (書式)Except エラーコード1 <エラ−1の場合の処理> (書式)Except エラーコード2 <エラ−2の場合の処理> (書式)TryEnd  <プログラム>にエラーが無ければTryEnd後に処理が移ります。  エラー1が発生した場合、<エラ−1の場合の処理>を実行後、TryEnd後に処理が移ります。  エラー2が発生した場合、<エラ−2の場合の処理>を実行後、TryEnd後に処理が移ります。  エラー3が発生した場合、対応するExceptが無いので、エラーポップアップが出ます。 (書式)Except  引数のないExceptはすべてのエラーに対応します。 (例)Try 3*4+    Except 1    "Syntax Error"    TryEnd  ”3*4+”が文法が間違えているのでSyntaxErrorの番号=1に対応する"Syntax Error"が実行されます。 (例)Try 3*4/0    Except 1    "Syntax Error"    Except 40    "Divide by Zero"    TryEnd  ”3*4/0”が0での除算エラー=40に対応する"Divide by Zero"が実行されます。 (例)Try 3*4/0    Except 1    "Syntax Error"    Except    "Error"    TryEnd  エラーに対応するExceptがない場合は、引数のないExceptはすべてのエラーに対応するので"Error"が実行されます。 サンプルプログラムはCBasic_sample/Try_Exceptにあります。 エラーコードはErrorCode_List.txtを参照してください。 ・0x0C(Disps)以外の0x01〜0x2Fのコードの後に改行が続く場合でも改行が省略されていた不具合を修正しました。 v1.99.5β 2019.5.29 ベータ版(インタプリタのみ) ・ファイルリストで[.]キーを押した場合に”〜”を先頭文字とするファイルに移動するようにしました。 ・ファイルリストで[EXP(x10)]キーを押した場合にフォルダリストの先頭に移動するようにしました。 v1.99.4β 2019.5.26 ベータ版(インタプリタのみ) ・Tを引数指定したGraph(X,Y)=の描画を修正しました。 ・ファイルリストで[.]キーを押した場合にフォルダリストの先頭に移動するようにしました。 v1.99.3β 2019.5.18 ベータ版(インタプリタのみ) ・Help表示がONの場合に一時停止から[EXIT]でデバッグモードを解除できない不具合を修正しました。 v1.99.2β 2019.5.17 ベータ版(インタプリタのみ) ・サブプログラムで一時中断して[EXIT]でエディタに戻らず終了してしまう不具合を修正しました。(1.98のエンバグです。) v1.99.1β 2019.5.16 ・Max Mem ModeがONの時にお気に入り切り替えが出来てなかった不具合を修正しました。 ・メインメモリからストレージ/SDへの移動時のファイルリストの表示順を変更しました。 ・行列とListが一時停止後に変数を一時停止表示したときの不具合を修正しました。(1.99エンバグ) v1.99β 2019.5.14 ・行列とListが一時停止後の表示が消去される不具合を修正しました。 ・一時停止コマンドのテキスト変換を改行コード付きに仕様変更しました。 (従来=純正互換)Disps (新仕様)Disps+[CR]+[LF] ・お気に入りをストレージメモリとSDおよびメインメモリ(Main Memory)で独立させました。それぞれ7つ登録できます。 ・ストレージメモリとメインメモリ(Main Memory)間の移動を2キーで出来るようにしました。  [SHIFT]-[F5]でストレージモードが切り替わります。 ・一時中断してから編集すると[EXIT]でデバッグモードが解除されない不具合を修正しました。(まだバグが残ってました。) ・Monochromeライブラリ系コマンドの_Recangleと_Polygonに拡大縮小と回転処理を同時に加えるオプションを追加しました。 (書式)_Rectangle X1, Y1, X2, Y2, border_width, border_color, Color[,確率][,回転角度][,回転中心座標X][,回転中心座標Y][,拡大率] (書式)_Polygon X座標のint行列へのポインタ, Y座標のint行列へのポインタ, 頂点数, Color[,確率][,回転角度][,回転中心座標X][,回転中心座標Y][,拡大率]  [回転中心座標X][回転中心座標Y]を省略した場合は自動的に描画画像の中心が指定されます。 ・_ ・Monochromeライブラリ系コマンドの楕円描画コマンドの_Elips、_FillElipsにおいて回転された楕円の描画をサポートしました。 (書式)_Elips X, Y, Rwidth, Rheight, Color[,確率/透過率] [,回転角(度)] (書式)_FillElips X, Y, Rwidth, Rheight, Color[,確率/透過率] [,回転角(度)] (例)_Elips 60,30,60,30,1,,45  座標(60,30)を中心に横罫60ドット、縦径30ドットの楕円を45度傾けて描画します。 (使用例)"C.Basic_sample/ML_sample"にあるサンプルプログラムを参照してください。 ・MCS表記をMain Memory表記に統一しました。 v1.98β 2019.5.7 ベータ版(インタプリタのみ) ・隠しメモリ使用時に外部フォントが壊れることがある不具合を修正しました。 2019.5.6 ・C.Basic起動時に外部フォントが有効にならない不具合を修正しました。 ・?コマンドで文字列を入力する場合にメモリエラーになる不具合を修正しました。 2019.5.4 ・外部フォントを有効にする”SetFont 1”コマンドで、 外部フォントが有効に設定されていなかった場合、ポップアップを出すようにしました。 ・ループスタックの最大値を変更しました。  (for~Next : 最大 4 level から 7)  (While~WhileEnd : 最大 6 level から 7)  (Do=LpWhile : 最大 6 level から 7)  (Switch~SwithEnd: 最大 4 level から 7) ・Switch〜SwitchEnd内からのGoto脱出でスタッククリア出来てなかったのを修正しました。 ・ファイル名の大文字と小文字を動作時に区別しないように仕様変更しました。(メインメモリ(Main Memory)は除く) ・大文字と小文字の相互Renameが可能になりました。 (例)ABC.bmp" -> "abc.bmp" ・ファイル入力時のカーソル初期位置を拡張子の前になるようにしました。 ・デバッグモード解除のカーソル位置を修正しました。 ・デバッグモード解除確認ポップアップでデバッグモードが解除されない不具合を修正しました。 v1.97β 2019.4.27 ベータ版(インタプリタのみ) ・EngOnにおけるFixとSciの非互換性を修正しました。 (例)EngOn:Sci 3   1.23456789e12->12.3M ・Save、Load(コマンドの引数に行列/List以外の変数も指定できるようになりました。 (例)Save "TEST",A (例)Load "TEST",Str 1 ・Helpファイルを更新しました。 v1.96β 2019.4.21 ベータ版(インタプリタのみ) ・エディタのコマンド入力時にHelp表示出来る機能を追加しました。セットアップで設定します。  zip内のHELPフォルダに有る~~HELP1.txt/~~HELP1.g1mファイルがHelpファイルです。              ルートフォルダかプログラムと同じフォルダに入れてください。 ・nCr/nPrを追加しました。 ・テキストからg1mへの変換でファイル名表示が異常になる不具合を修正しました。 ・外部フォントが読み込まれない不具合を修正しました。 ・PICT/CAPTファイルのデフォルト保存フォルダを"PICT","CAPT"とすべて大文字にしました。 ・ファイルモードのフォルダ状態が保存されなかった不具合を修正しました。 ・メインメモリ(Main Memory)のフリーエリアが残っているのに保存ができない不具合を修正しました。 ・List1〜List6が使えなかった不具合を修正しました。 ・1ビットと4ビット行列において要素アドレスの取得がおかしかったのを修正しました。 ・行列とListの連続演算で不具合があったのを修正しました。 ・StrShiftでマイナス引数の場合、結果が違っていたのを修正しました。 (例)StrShift("1234567", -2)->" 12345" ・グラフ描画コマンドを一部修正しました。 v1.95β 2019.2.17 ベータ版(インタプリタのみ) ・フランス語版マニュアルを同梱しました。(Planet-CasioのLephenixnoir氏に翻訳していただきました。) ・Fillコマンドの2番めの引数が数字のみの場合に正常動作していなかった不具合を修正しました。 (例) Fill(123,1)  Fill(123,List 1)と同じ結果になるはずがなっていませんでした。 v1.94β 2019.2.3 ベータ版(インタプリタのみ) ・サブプログラムを頻繁に呼び出すプログラムで[AC]ブレークが効かない不具合を修正しました。 ・For〜Next、While~WhileEnd、Do~LpWhileで=>コマンドの次にNext/WhileEnd/LpWhileがある場合のループ終了時の動作を修正しました。 ・Locate/TextコマンドでList n[0]のサブ名を表示できない不具合を修正しました。 ・?->fn1,?->Y1の入力がエラーになっていた不具合を修正しました。 v1.93β 2019.1.26 ベータ版(インタプリタのみ) ・ローカル変数にアンダーバーで始まる拡張変数を指定した場合の不具合を修正しました。 ・サブプログラム内の"=>"コマンドの判定式の結果でAns変数が書き換えられる不具合を修正しました。 v1.92β 2019.1.18 ベータ版(インタプリタのみ) ・初回起動時にデフォルトで隠しRAMを使用するようにしました。(SH4Aのみ) ・4次元以上の逆行列の結果が正しくない場合のある不具合を修正しました。 (正しくない例)[[0,0,0,1][27,9,3,1][216,36,6,1][512,54,8,1]]^(-1) ・複素数モードで60進数入力が動作しなかった不具合を修正しました。 ・Textコマンドで右端に描画した場合、左端に折返していたのを修正しました。 ・ループ内のGotoコマンドがループが繰り返す前に実行された場合の不具合を修正しました。 v1.91β 2019.1.2 ベータ版(インタプリタのみ) ・サブルーチンの呼び出しがループ内にあり、サブルーチン内のループ内以外でのGotoコマンドの不具合を修正しました。 2018.12.31 ・Gotoコマンドでオプション無しにループ外にジャンプできるようになりました。(お試し実装です。)  (1.90による(-)オプションは無効になりました。) v1.90β 2018.12.30 ベータ版(インタプリタのみ) ・表示形式指定のSciが異常になっていた不具合を修正しました。(1.84でエンバグ) 2018.12.29 ・Gotoコマンドでループ外にジャンプできるようになりました。(お試し実装です。) (書式)Goto (-)ラベル名  (-)はマイナス符号です。 (例) Lbl A While 1 Goto (-)A WhileEnd ・ベクトル(Vct)の初期化で行と列が選択できるようになりました。 ・ベクトル(Vct)の間接指定が動作していなかった不具合を修正しました。 v1.89β 2018.12.27 ベータ版(インタプリタのみ) ・ルートフォルダのBMPファイルにアクセスできなくなっていた不具合を修正しました。 2018.12.26 ・エディタのミニフォントモードで[ALPHA]-[F4](A<>a)でアルファモードが解除される不具合を修正しました。 2018.12.19 ・Renameにおいて8文字以上のファイル名になったときにファイルが無くなる不具合を修正しました。 2018.12.16 ・逆行列の結果が正しくない場合のある不具合を修正しました。 (正しくない例)[[0,0,1][9,3,1][36,6,1]]^(-1) 2018.12.11 ・Seq(コマンドで変数の値が不正な場合、コマンド評価時にエラーが出ていたのを修正しました。 (例)Xが-1の場合、    Seq( sqrt(X),X,1,5)でコマンド評価時にエラーになっていました。 2018.12.9 ・シリアルコマンドを[EXIT]で中断出来るオプションを追加しました。 (書式)Send( 変数[,ボーレート][,EXIT有効]) (書式)Recv( 変数[,ボーレート][,EXIT有効]) (書式)OpneComport38K[,ボーレート][,転送モード][,EXIT有効] [ボーレート値]:0=300, 1=600, 2=1200, 3=2400, 4=4800, 5=9600, 6=19200, 7=38400(デフォルト), 8=57600, 9=115200 baud [転送モード] 0:バイナリ転送モード  1:データ形式自動判別モード(デフォルト) [EXIT有効] 0:無効  1:有効 (例)Send(A,,1) (例)Recv(A,,1)  [EXIT]で中断できます。 v1.88β 2018.11.26 ベータ版(インタプリタのみ) ・現在の空きメモリ量を取得するSystem(-5)を追加しました。 (例)System(-5) v1.88β 2018.11.25 ・文字列の255文字までの制限を無くしました。上限はメモリ制限のみとなります。 (例)'#Str ,30,1000  Str 1〜Str 30まで999文字までの長さで文字列処理できます。は[ALPHA]+[X^2] ・行列の再確保でアドレス指定した場合、それまで確保されていた同じ行列が消去されなかった不具合を修正しました。 ・ルートフォルダで表示するファイルの拡張子に.binを追加しました。  表示するファイル(g1m,txt,bmp,bin) ・サブフォルダではすべてのファイルを表示します。 ・ファイルのCopy/Renameの制限を緩めました。  bin等のファイルでもCopy/Renameが可能です。 ・Mat/List/Vct一覧画面でListFileが2以上の場合にリスト表示がおかしかったのを修正しました。 ・Str、Graph(Y)、fn変数の確保で実体となる行列の要素数が減っていたのを修正しました。 (例)"CDE"->Str 5  Str 1,Str 2,Str 3,Str 4,Str 5が確保されます。 (例)"ABC"->Str 1  Str 1だけになっていました。 ・Stack Errorが発生したときに[EXIT]を複数回押さないとエディタに戻れない不具合を修正しました。 v1.87β 2018.11.15 ベータ版(インタプリタのみ) ・Str、Graph(Y)、fn変数の確保方法を変更しました。  併せてデフォルトの最大確保数をそれぞれ20から127まで増量しました。 (例)"ABC"->Str 1  Str 1だけ確保されます。 (例)"CDE"->Str 5  Str 1,Str 2,Str 3,Str 4,Str 5が確保されます。 ・fn変数の実体になるデフォルト行列をz(小文字)に変更しました。  Str変数のデフォルト  :<r>  Graph(Y)変数のデフォルト:θ  fn変数のデフォルト   :z ・ClrVct 変数名が動作しなかった不具合を修正しました。 2018.11.12 ・ClrVctが動作しなかった不具合を修正しました。 ・Graph(Y)とfnの引数の動作を修正しました。 (誤)"X+5"->fn1    fn1(X=7)で返る値は(1)+5 (正)"X+5"->fn1    fn1(X=7)で返る値は(7+5) ・StrShift(が非互換だったのを修正しました。 ・StrSrc(コマンドの検索開始位置が文字列長以上の場合に0が返らない不具合を修正しました。 ・StrMid(コマンドで第二引数が0のときに返る文字列がNULL文字列になっていなかった不具合を修正しました。 ・StrLen(,StrCmp(,StrSrc(.Exp(コマンドの乗算省略が出来てなかった不具合を修正しました。 ・Mat/List/Vct表示においてListのAns/r/Thetaの表示を修正しました。 ・Listの閉じカッコの"}"を省略した場合の不具合を修正しました。 ・Listのラベル名に文字変数が使えなかった不具合を修正しました。 ・複素数でのAnd,Or,Not演算が間違っていたのを修正しました。 ・1以下の実数のAnd、Orが非互換だったのを修正しました。 (誤)0.1 And 0.2 -> 0 (正)0.1 And 0.2 -> 1 ・BGPictで指定Pictファイルが1024バイト未満のときに空白で埋めるようにしました。 v1.86β 2018.11.4 ・BmpLoad(コマンドのVRAMへのロードで右端処理が8ドット単位になっていたのを修正しました。 ・Mat/List/Vct表示においてVctの編集画面での表示を修正しました。 ・ListのFileをサポートしました。(※隠しRAM使用時のみ使用できます。) (例)File 2  2つめのファイルリストを使用します。  純正とは違って52個ずつのファイルとなります。  内部実装はFile 1のList 53がFile 2のList 1になります。  事前にセットアップで必要なFile数を確保してください。 (例)File 0  Mat/List/Vct表示で通し連番リストで使用します。 ・不等号および積分のGraphをサポートしました。(※単一グラフの描画のみです。) v1.85β 2018.11.3 ベータ版(インタプリタのみ) ・Trnコマンドをエンバグしていたのを修正しました。 ・StrRotateコマンドの回転方向が逆だったのを修正しました。 v1.85β 2018.10.25 ベータ版(インタプリタのみ) ・fx-9860G Slimに対応しました。 (GetkeyコマンドおよびバックライトをSlim対応しました。) ・System(-1)での機種判定にSlimを追加しました。  9860G:0 Slim:1 9860GII(SH3):2 9860GII(SH4A):3 ・ClrVctがSprintf(に自動変換されてしまう不具合を修正しました。  併せて、"DotGet("の中間コードの自動変換も停止しました。  (これにより従来バージョン互換のための中間コードの自動修正はすべて無くなります。) v1.84β 2018.10.21 ベータ版(インタプリタのみ) ・System(-1)での機種判定を間違えていたのを修正しました。 (誤)9860G:1 9860GII(SH3):3 9860GII(SH4A):2 (正)9860G:0 9860GII(SH3):2 9860GII(SH4A):3 ・Trnコマンドを含む数式でメモリエラーになることのある不具合を修正しました。 v1.84β 2018.10.16 ベータ版(インタプリタのみ) ・エディタでプログラム最後尾へのジャンプが出来ない場合があった不具合を修正しました。 v1.84β 2018.10.10 ベータ版(インタプリタのみ) ・[AC]キーのSTOP判定を減らしました。  結果、Break On時でもBreak Offとほぼ変わらない速度となりました。 (SH3 ) 10%ほど速くなります。 (SH4A) 2〜3%ほど速くなります。 ・Listの自動確保を修正しました。 ・Graph(Y)とfnのXを引数に持つ場合の動作を修正しました。 (誤)"X+5"->fn1    fn1(7)で返る値は(X+5)*7 (正)"X+5"->fn1    fn1(7)で返る値は(7+5) v1.83β 2018.10.5 ベータ版(インタプリタのみ) ・Send(、Recieve(コマンドにおけるシリアルポートのクローズ処理を修正しました。 ・アンダーバーより始まる変数を最大26個から52個に増量しました。 ・Aliasコマンドで使用数が超えた場合の不具合を修正しました。  Aliasコマンドで別名使用できる数は以下のとおりです。  -変数 64個 (アンダーバーで始まる変数を含みます。)  -行列/Vct 26個  -ラベル 26個 ・Trnコマンドの引数の式評価を修正しました。 (誤)Trn Mat A+Mat B -> Trn (Mat A+Mat B) (正)Trn Mat A+Mat B -> (Trn Mat A)+Mat B ・複素数の行列表示を横2だったのを横3に変更しました。 ・以下のベクトルコマンドを追加しました。  Vct  DotP(  CrossP(  Angle(  UnitV(  Norm(  ClrVct (※Vct A〜ZのベクトルはMatと独立した領域を使用します。θ、r、Ans、小文字以降は共通となります。) ・行列一覧では[VARS]でVct表示への切り替えとなります。 ・逆行列と行列の二乗計算およびべき乗計算に対応しました。 ・ClrListのみの場合、小文字行列(List 27〜52)が消去されていた不具合を修正しました。  修正後はList 1〜26の消去となります。 ・Orange(Red),Green,Blueのカラーコマンドをエラーにならないようにしました。 v1.82β 2018.8.27 ベータ版(インタプリタのみ) ・整数モードにおいてAns変数を行列の要素で使用した場合エラーになっていた不具合を修正しました。 v1.82β 2018.8.19 ・再帰プログラムでスタックエラーが出た時に[EXIT]を何度も押さないと終了しなかった不具合を修正しました。 ・Graph Y=コマンドにおいて純正同様に数式を””で囲まなくても良くなりました。 ・Cls/ViewWindowコマンド後もテキストモードの場合は"Done"表示しないように修正しました。 ・エディタの置換において、ファンクションキーが残っていた不具合を修正しました。 ・エディタの置換において、[F4](ALL)と[F5](ALL+)において[AC]中断で置換モードが終了していた不具合を修正しました。 ・[F2]-[F3]行列確保においてbit選択の数値入力で4が受け付けられなかった不具合を修正しました。 ・V-WinのXscale、Yscaleに負の値を設定した場合、絶対値になるように修正しました。 ・セットアップの時刻設定で秒設定がMin表記となっていた間違いを修正しました。 ・V-Win設定でエラーになったときの[F4][F5]ファンクションメニュー表示を消去しました。 ・エディタの検索/置換で文字列無しの場合に[AC]を押すとファンクションメニューがリセットされていたのを修正しました。 ・””出力の仕様をデフォルトでFX/CGシリーズ仕様に変更し、  ””出力仕様をfx-5800P互換モードとFX/CG互換モードの切り替えをするオプションコマンドを追加しました。 (書式)'#58  fx-5800P互換出力になります。 (書式)'#98  fx-9860G/CGシリーズ互換出力になります。 ・C.Baisic入力モードでの1行入力時に[F3](COMMAND)と[OPTN]/[VARS]/[SHIFT]+[VARS]を切り替えると元の画面に戻らなくなる不具合を修正しました。 ・Listのラベルで8文字未満のラベルの場合に認識されてなかった不具合を修正しました。 ・行列一覧画面で[ALPHA]+[アルファベット][Theta][r]、[SHIFT]+[(-)](Ans)、[X,Theta,T]でジャンプ出来るようになりました。 ・行列値を求めるDetコマンドを追加しました。 ・CHAR選択での上下スクロール矢印表示を改善しました。 ・エディタの検索実行中に[F2]で検索画面に戻っていた不具合を修正し、[F6]に再度検索画面に戻る(Retry)機能を新設しました。 ・エディタのデバッグモード時に[SHIFT]+[EXIT]で実行してしまう不具合を修正しました。 ・デバッグモードから再開する時に画面が復帰しない事がある不具合を修正しました。 ・2進数と16進数の0b0,0b1,0b2,0x1,0x2,0x3のテキスト変換がエスケープ扱いになっていたのを修正しました。 ・V-Win設定画面からV-MEMへのアクセスを追加しました。 ・V-Win設定でTθmaxとTθptch のデフォルト値が違っていたのを修正しました。 ・Tθptchへの代入値が0の場合にエラーになるようにしました。 ・エディタの入力モードがC.Basicモードの場合に[F6](G<>T)が使えなくなってしまったのを修正しました。 ・C.Basicモードのコマンド入力ポップアップとコマンド入力履歴にスクロールインジケーターの上下矢印を追加しました。 ・プログラムをデバッグモードで起動したとき、[EXIT]でデバッグモードを抜けた後にファンクションキーが正常動作しなかった不具合を修正しました。 ・デバッグモードから抜ける場合の確認ポップアップを追加しました。(セットアップで設定します。) ・セットアップのFix/Sci/Normの桁数指定で[EXIT]で抜けた場合に設定されてしまう不具合を修正しました。 v1.81β 2018.7.7 ベータ版(インタプリタのみ) ・Listのラベルで8文字未満のラベルの場合に認識されてなかった不具合を修正しました。 ・行列値を求めるDetコマンドを追加しました。 ・行列一覧画面で[ALPHA]+[アルファベット][Theta][r]、[SHIFT]+[(-)](Ans)、[X,Theta,T]でジャンプ出来るようになりました。 ・CHAR選択での上下スクロール矢印表示を改善しました。 ・エディタの検索実行中に[F2]で検索画面に戻っていた不具合を修正し、[F6]に再度検索画面に戻る(Retry)機能を新設しました。 ・エディタのデバッグモード時に[SHIFT]+[EXIT]で実行してしまう不具合を修正しました。 ・デバッグモードから再開する時に画面が復帰しない事がある不具合を修正しました。   ・2進数と16進数の0b0,0b1,0b2,0x1,0x2,0x3のテキスト変換がエスケープ扱いになっていたのを修正しました。 ・V-Win設定画面からV-MEMへのアクセスを追加しました。 ・V-Win設定でTθmaxとTθptch のデフォルト値が違っていたのを修正しました。 ・Tθptchへの代入値が0の場合にエラーになるようにしました。 ・エディタの入力モードがC.Basicモードの場合に[F6](G<>T)が使えなくなってしまったのを修正しました。 ・C.Basicモードのコマンド入力ポップアップとコマンド入力履歴にスクロールインジケーターの上下矢印を追加しました。 ・プログラムをデバッグモードで起動したとき、[EXIT]でデバッグモードを抜けた後にファンクションキーが正常動作しなかった不具合を修正しました。 ・デバッグモードから抜ける場合の確認ポップアップを追加しました。(セットアップで設定します。) ・セットアップのFix/Sci/Normの桁数指定で[EXIT]で抜けた場合に設定されてしまう不具合を修正しました。 v1.80β 2018.6.22 ベータ版(インタプリタのみ) ・メインメモリへのコピー後にファイルリストが異常になることがある不具合を修正しました。 ・AT DebugModeがオフの場合、[AC]Breakによる一時停止から再び動作してしまう不具合を修正しました。 ・新規起動時のデフォルト設定を一部変更しました。 AT DebugMode :On  RefreshCtl DD:Off  Pict Mode :Main memory 2018.6.21 ・a0,a1,a2,b0,b1,b2,c0,c1,c2,x1,x2,x3,y1,y2,y3,n1,n2,Q1,Q3,f1,f2,f3,f4,f5,f6  以上の特殊変数と同じ形式の行列省略形がテキスト変換時に特殊変数扱いになってしまっていたのを修正しました。  特殊変数と重なる行列省略形の添字はエスケープされます。  a0(特殊変数) → a0  a0(行列省略形) → a\0  x3(特殊変数) → x3  x3(行列省略形) → x\3 2018.6.19 ・Augment(コマンドでメモリエラーになることがあるのを修正しました。 ・a0,a1,a2,anStart,b0,b1,b2,bnStart,c0,c1,c2,cnStartを自動的に拡張変数として使用するようにしました。 (※Aliasでの変数割当があればそれが優先します。) 2018.6.17 ・(-)の式評価順序を純正に合わせました。 (※従来は一番上の評価順位でしたが、純正同様のtypeC関数と同じ順位に変更しました。) ・サブプログラムのReturnで[AC]中断になったた場合に中断処理が出来てなかった不具合を修正しました。 ・Listの初期化で要素の[1]〜[9]までの自動確保においてゼロ初期化が足りなかったのを修正しました。 (※1.77で初期化し過ぎていたのを修正したときのエンバグです。) ・Min(、Max(、SortA/Dを複素数を含む場合、絶対値で大小判定する純正互換仕様に変更しました。 ・複素数モードにおけるLCM(コマンドの不具合を修正しました。 ・Listのラベルに対応しました。  要素の開始が1の場合(デフォルト)では、純正と同じく、 (書式)"LABEL"->List 1[0]  要素の開始が0の場合は、 (書式)"LABEL"->List 1[-1]  でラベル設定ができます。 (書式)List 1[0]->Str 1 (書式)List 1[-1]->Str 1  ラベル名を文字列として取得することも出来ます。 ・StoV-Win/RclV-Winコマンドで引数に6の指定が出来なかった不具合を修正しました。 v1.79β 2018.6.11 ベータ版(インタプリタのみ) ・エディタのClipモードで[DEL]キーが動作してなかった不具合を修正しました。 ・メインメモリ(Main Memory)のプログラムファイルを使用できるようになりました。  セットアップでメインメモリを選択すると、ファイルの保存先、ファイル操作はメインメモリのプログラムファイルが対象になります。  ファイルの保存時やコピー時はMain Memoryからストレージ/SD、ストレージ/SDからMain Memoryへと保存先を変更することが可能です。  ストレージ/SDメモリモードのときに、[F1](Main Memory)を選択するとコピー先、保存先がMain Memoryになります。  Main Memoryモードのときに[F2](g1m)を選択するとコピー先、保存先がストレージ/SDメモリになります。 ・メインメモリ(Main Memory)のPICTファイルを純正互換仕様で使用できるようになりました。 ・CAPTファイルは純正同様にメインメモリ(Main Memory)のみ対応に仕様変更しました。 ・List->Matコマンドが動作しなくなっていた不具合を修正しました。 ・複素数導入の0.50よりDBLモードにおいてIf、While、Doコマンドにおいて条件判定が整数判定に戻っていたのを修正しました。 ・行列をアドレス指定で再割当てした場合、割当先データが変更されてしまうことがあったのを修正しました。 (※アドレス指定で確保した行列は一覧表示で*マークが付きます。) ・外部フォントの使用をコマンドで設定出来るようになりました。 (※セットアップでEnableExFontをOnにした状況で設定が有効になります。) (※セットアップでEnableExFontをOffにしている状況ではOffのままで有効にはなりません。) (書式)SetFont 0  このコマンド以降、外部フォントを使用出来なくなります。 (書式)SetFont 1  このコマンド以降、外部フォントが使用できるようになります。 ・System変数でヒープ領域サイズとOSバージョンを取得できるようになりました。  System(-2)はOSのバージョンが3桁整数値で返ります。バージョン2.09では209が返ります。  System(-1)は機種判定が返ります。  9860G:0 9860GII(SH3):2 9860GII(SH4A):3 v1.78β 2018.5.29 ベータ版(インタプリタのみ) ・エディタで[F1](Jump)モードの時、[SHIFT]+[F6](CHAR)で連続入力モードにした場合、エディタが無反応になる不具合を修正しました。 ・複素数モードにおいて、MatおよびListの要素に複素数を含む場合にエラーになっていた不具合を修正しました。 ・単位行列を生成するIdentityコマンドを追加しました。 ・DrawGraphで描画したグラフが、一時停止や終了時に消えてしまっていた不具合を修正しました。 ・複素数モードにおいて、Notが論理Notではなくビット反転演算になっていた不具合を修正しました。 ・複素数モードにおいて、RanList#/RanNorm#/RanBin#の返り値が複素数Listにならなかった不具合を修正しました。 ・複素数モードにおいて、Int÷の結果が実数値になっていたのを修正しました。 ・複素数モードにおいて、整数引数に複素数を含む数式がある場合に文法エラーになっていた不具合を修正しました。 ・SortA、SortDコマンドにおいて1未満の実数値でソートされていなかった不具合を修正しました。 ・SortA、SortDコマンドの複数引数におけるソートの仕様が非互換だったのを修正しました。  今までは引数に指定されたすべてのListが個別にソートされていました。  修正後は、第一引数で指定されるListのソートにリンクして二番目以降のListがソートされます。 v1.77β 2018.5.21 ベータ版(インタプリタのみ) ・エディタの[SHIFT]-[F5]の16進ダンプ表示を大文字小文字切り替えに変更しました。 (※16進ダンプ表示は[SHIFT]+[F3](V-WIN)-[F5]に新設しました。) ・エディタの[SHIFT]+[F6]をデバッグモード以外は[CHAR]選択に変更しました。 ・複素数(16バイト)のPoke、Peekに対応しました。 (例)Peek(&A).C (例)Poke(&A).C,123+456i ・行列の再確保で初期化し過ぎていたのを修正しました。 (例){10,1}->Dim Mat A.B -1->Mat A {1,1}->Dim Dim Mat B.B(&Mat A) [[1]]->Mat B.B  Mat Bは、  [[1][-1][-1][-1][-1][-1][-1][-1][-1][-1]]  となるはずですが、  実際はこうなってました。  [[1][0][0][0][0][0][0][0][-1][-1]] ・?()オプションにおいて値が0の場合に表示されなかった不具合と虚数入力でシステムエラーになっていた不具合を修正しました。 ・数式後に区切り文字が無いとエラーにするようにしました。 v1.76β 2018.5.13 ベータ版(インタプリタのみ) ・複素数に対応しました。 ・1行入力においてクリップボードを有効にしました。 ・1行入力開始時の大文字/小文字アイコンの表示切り替えが出来てなかったのを修正しました。 ・Getkey1/2において、SDKのキーコードを取得することが出来るようになりました。 (書式)Getkey@1 (書式)Getkey@2  [@]オプション追加でSDKのキーコードが返ります。 ・要素が4ビットの行列を追加しました。 (※8ビット以上の行列とは違い、{m.n}と{X,Y}が逆になっている1ビット行列仕様です。)  型指定は、NibbleのNで指定します。 (書式){16,8}->Dim Mat A.N ・リスト一覧画面でリスト表示名がおかしくなる不具合を修正しました。 ・リストのクリップボード対応をしました。 ・[F5]からの行列確保が常にDBLになっていた不具合を修正しました。 ・SysCallの入力値でエラーが起きた場合にはコマンド実行前にエラーになるようにしました。 ・Sigma、Seqコマンド実行で[AC]キーを有効にしました。 ・行列を文字列で初期化する場合に2つ目の文字列先頭に空白がある場合に空白が無効になっていた不具合を修正しました。 ・小文字モードのとき、[F5](CHAR)から大文字を入力しても小文字になってしまう不具合を修正しました。 ・sinの引数がpiの整数倍になる時に結果がゼロにならないのを改善しました。  cosも同様に修正しました。 (例)sin pi (例)cos (pi/2) ・小数点以下指定で丸めるRndFixに有効桁指定で丸めるSciオプションを追加しました。 (書式)RndFix(数式、Sci 桁数) (例)RndFix(1.23456789e-123,Sci 5)  1.2346e-123が返ります。 v1.75β 2018.4.8 ベータ版(インタプリタのみ) ・メモリ管理方法を変更しました。 (起動時に全ヒープ領域をC.Basic用として確保し、適宜エリア分割して使用します。) ・ファイルモードで[SHIFT]を押した時に現在使用できる空きメモリ量を表示するようにしました。 (空きメモリはプログラム、行列、Pictで分割使用されます。) ・外部フォントを使用しないモードをセットアップに追加しました。(フリーエリアが4KB増えます。) ・メモリを最大使用できるモードをセットアップに追加しました。 (ファイルリスト表示のためのバッファを開放し、空きメモリを最大限増やします。) (副作用として毎回ファイルリストの再読み込みが発生します。) ・32KBを越える所へのGotoの動作が出来なかった不具合を修正しました。  併せて64KBを越える所を含むループやジャンプが出来なかった不具合を修正しました。 (※プログラムの動作に関わるポインタを16ビットから32ビットに拡張しました。) ・Save Loadコマンドのファイル名に文字列変数が使えるようにしました。 v1.74β 2018.4.1 ベータ版(インタプリタのみ) ・64KB以上のプログラムファイルに対応しました。 ・Fix 0の表示非互換性を修正しました。 ・オプション付きの?(コマンドでファンクション表示エリアの8行目も入力出来るようになりました。 ・オプション付きの?コマンドで7行目の入力で改行される不具合を修正しました。 ・[MENU]でコマンド入力履歴を表示させた後、[AC]で画面が復帰しない不具合を修正しました。 ・行列のドットエディタ表示時に電源を切ると、カーソルが残る不具合を修正しました。 ・Peek,Pokeコマンドでの指定アドレスのミスアラインメントによるエラーをArgument ERRからAddress align ERRに変更しました。 ・バージョンを返すVersionシステム変数を追加しました。 (書式) Version [SHIFT]+[MENU](SETUP)-[F6]-[F6]-[F6]-[F6]-[F5](Version) ・StrSplitコマンドで2バイト文字が含まれていた場合に正常動作しなかった不具合を修正しました。 v1.73β 2018.3.16 ベータ版(インタプリタのみ) ・空白を行頭だけではなく、コマンド間、数式内の空白も許可するようにしました。 ・If、While、Doコマンドにおいて条件判定が整数判定になっていたのを修正しました。 ・エディタの、カーソル移動、スクロール速度が従来比20%アップしました。 ・一括コメント化で2行目から選択したにも関わらず1行目もコメント化される不具合を修正しました。 ・エディタで改行の次の行が改行だけの場合に下移動すると一行飛び越してしまう不具合を修正しました。 ・バイナリモードでの編集後に保存できない不具合を修正しました。 ・行列のエレメントジャンプ[Goto]において飛び先が一つずれていたのを修正しました。 ・行列編集時に横の要素数が9以上ある場合に9つ目が表示されていた不具合を修正しました。 ・[EXIT]ポップアップから抜ける条件を[EXIT]と[AC]キーに限定しました。 ・キャラクター選択の[F6]のアイコン表示を修正しました。 ・g1mからテキスト変換時にカナ文字以降(0xFFE0〜)を変換ミスしていたのを修正しました。 ・[AC]無効化状態で、TocksWait実行時に[AC]を押すとコマンドが終了してしまう不具合を修正しました。 ・高分解能タイマーTicks%がカウントダウンになっていた不具合を修正しました。 ・RanNorm#コマンドのアイコン表示を間違えていたのを修正しました。 ・_PixelTestコマンドにおいて、現在のVRAM以外にもテキストVRAMとグラフィックスVRAMを選択出来るようになりました。 (例)_PixelTest(10,20,T)  テキストVRAMの(10,20)のカラー値を読み取ります。 (例)_PixelTest(10,20,G)  グラフィックスVRAMの(10,20)のカラー値を読み取ります。 ・SysCallの引数の数を12まで増やしました。 (書式)SysCall( システムコール番号 [,引数1][,引数2][,引数3][,引数4][,引数5][,引数6][,引数7][,引数8][,引数9][,引数10][,引数11][,引数12] ) ・フォントが揃っていない場合に外部フォントの読み込みが出来てなかった不具合を修正しました。 ・GetFont,GetMiniFont,コマンドで現在の外部フォント導入状況を取得できるようになりました。 (書式)GetFont() (書式)GetMiniFont()  返り値は整数値でbit2が外部カナ 、bit1が外部外字 、bit0が外部Asciiフォントとなります。 (例)標準サイズの外部カナフォントのみ導入されている場合。  GetFont()は4が返ります。  GetMiniFont()は0が返ります。 (例)ミニフォントのAsciiフォントと外字フォントのみ導入されている場合。  GetFont()は0が返ります。  GetMiniFont()は3が返ります。 v1.72β 2018.3.3 ベータ版(インタプリタのみ) ・0x 0bで始まる16進数、2進数表記のテキスト->g1m変換に失敗していたのを修正しました。 (例)0x1000  x1がコマンドのx1に変換されてました。 2018.2.25 ・コメントとIfコマンド、Swithコマンドがそれぞれ32個を超えると飛越先に不具合が出ていたのを修正しました。 ・引数無しのGosubに返り値がある場合に代入に失敗していた不具合を修正しました。 (例)) Gosub A->B    Disp B    Stop    Lbl A    Return 1 v1.71β 2018.2.21 ベータ版(インタプリタのみ) ・文字のASCIIコードを取得するStrAsc(コマンドを追加しました。 [Shift]+[VARS](PRGM)-[F6]-[F6]-[F3](ExStr)-[F6]-[F6]-[F2](StrAsc) (例)StrAsc("Ascii")  文字列先頭の'A'のASCII文字コード65(0x41)が返ります。 ・StrLen(、StrCmp(、StrSrc(コマンドにおいて閉じ括弧を読み飛ばしすぎていた不具合を修正しました。 (例)(10-StrLen("ABC"))*2  正しい値は(10-3)*2で14になるはずが、閉じ括弧が一つ飛ばされて(10-StrLen("ABC")*2と解釈されて4となっていました。 2018.2.18 ・アンダーバーより始まる拡張変数名やラベル名がテキストからの変換でコマンド名に変換されてしまうのを修正しました。 ・外字/カナ文字表示でシステムエラーになることがある不具合を修正しました。 ・タイマー変数のTicksと%に高分解能1/32768sタイマーを追加しました。(※SH4A版のみの拡張です。)  コマンド後に%を付けると分解能が1/32768sになります。 (例)Ticks% (例)Ticks%Wait (例)%% (例)%%Wait ・プログラム実行の時間計測機能で高分解能1/32768sタイマーを選択できるようになりました。(セットアップで設定します。)  小数点以下4桁まで計測できます。(※SH4A版のみの拡張です。) v1.70β 2018.2.10 ベータ版(インタプリタのみ) ・[AC]キーによるBreakの有効無効をプログラム内で出来るようにしました。 (例)'#Break0 // [AC]キー無効 (例)'#Break1 // [AC]キー有効(デフォルト) ・エディタで[SHIFT]+[3]を押すとGetKeyコマンドのキーコードを入力する機能を追加しました。 2018.2.2 ・外部フォントファイルにて外部フォントを導入出来るようになりました。(詳細はマニュアルを参照して下さい) ・エディタのフォントを外部フォントに切り替えられるようにしました。セットアップより変更できます。 ・Prog〜Returnにおいて、Returnコマンドでの返り値が無効になる不具合を修正しました。 ・セットアップの設定がプログラムで変更されないようにする設定を追加しました。  SetupRecoverの項目で純正CasioBasic互換設定をプログラム終了後に復帰するかどうかを設定します。  影響を受ける設定は純正互換の以下の設定になります。   Angle   DrawType   Coord   Grid   Axes   Label   Derivative  Plot/LineColor   Sketch Line  Display Fix/Sci/Norm/Eng  これ以外のC.Basicで拡張された設定はプログラムで変更されても実行後に元の設定に復帰します。 ・Menuコマンドのタイトル&項目テキスト表示で特殊文字を使うと表示文字数が短くなっていた不具合を修正しました。 ・Ticks(%)のタイマー変数への代入で内部時計を変更しないようにしました。 (例)0->Ticks  従来は内部時計も00:00:00に初期化されていましたが、C.Basicのタイマー変数だけを0にリセットします。  この仕様変更により時計の変更はDATE、TIMEコマンドのみとなります。 ・LblもAlias機能が使えるようになりました。併せてAliasVarのコマンド名称をAliasに改訂いたします。 (例)Alias A=_ABCD (例)Alias Mat A=_ABCD (例)Alias Lbl A=_ABCD ・GetKey1/2実行中は時間計測を一時停止するように仕様変更しました。  セットアップにて計測の一時停止または計測のリセット&リスタートを選択できます。  関連コマンドとして (書式)'#GetKeyC  デフォルトの計測の一時停止、継続モードです。 (書式)'#GetKeyR  GetKey1/2実行後に計時がリセット&リスタートします。 ・行列の初期化において、すでに確保された行列領域を再初期化する場合に0クリアしないようにすることが出来るようになりました。 (ただし、最初に行列で使用する最大領域を確保しておく必要があります。) (書式){12,20}->Dim Dim Mat A (例)[[1,2,3]][4,5,6]]->Mat A    {2,2}->Dim Dim Mat A  Mat Aの内容は[[1,2][3,4]]となります。 ・StrSrc(コマンドにおいて、検索開始位置を指定した場合に結果が一つズレていたのを修正しました。 v1.65β 2018.1.15 ベータ版(インタプリタのみ) ・行列エディタで、[OPTN]切り替えでリスト表示の時にAns,,<θ>が表示されなかった不具合を修正しました。 ・Normコマンドが正常に動作してなかった不具合を修正しました。 2018.1.10 ・スタンダードモードでの入力においてStrLwrコマンドの入力が出来なかった不具合を修正しました。 2018.1.6 ・エディタの置換において、置換文字列の範囲が一文字短くなっていたのを修正しました。 2017.12.14 ・["文字列","文字列","文字列",..]->Mat A 形式の文字列初期化において、  スペースが続く場合に誤変換していた不具合を修正しました。 ・CLIP&PASTEの選択範囲の一斉コメント化、非コメント化が出来るようになりました。  「SHIFT]-[8](CLIP) [F5] or [F6] ・BmpLoadコマンドで直にVRAMにロード出来るようになりました。 (例)BmpLoad("TEST"),10,5  (10,5)座標よりTEST.bmpファイルをロードします。 ・BmpSaveコマンドで直にVRAMからセーブ出来るようになりました。 (例)BmpSave "TEST",10,20,100,60 (10,20)座標より(100,60)座標までの範囲を1ビットBMPファイル"TEST.bmp"としてセーブします。  指定可能な座標値は(0,0)-(127,63)の範囲です。 ・PopUpWin(コマンドオプション追加です ・画面退避のみ ポップアップしません。 (書式)PopUpWin(0) ・退避した画面の復帰のみ。 (書式)PopUpWin(9)  画面退避バッファはシステムと共通なので、退避後にポップアップが出るとバッファが上書きされ元に戻らなくなりますので注意して下さい。 ・ListとMat@の変数名指定に(を使うことで数式が使えるようになりました。 (例)List (A+1) Aが1の場合はList 2を指定したことになります。 (例)Mat@(A+1) Aが1の場合はMat 2、つまりMat Bを指定したことになります。 2017.12.10 ・エディタのミニフォントモードのパフォーマンスを向上させました。 ・For〜Nextの制御変数のエラーチェックを厳しくしました。 (実数モードで整数変数を制御変数に使うとエラーになります。) ・CLIP&PASTEの選択範囲とカーソル位置がずれていたのを修正しました。 ・[EXIT]をキーを離すまで効かないように変更しました。 ・PopUpWin(コマンドを拡張しました。関数としての実装に変更になります。数式の中で使えます。 (書式)PopUpWin( n )  従来の仕様です。n行分のポップアップを表示させます。表示のみです。 ・exit ポップアップ。 (書式)PopUpWin(11,"メッセージ1行目"[,"メッセージ2行目"])  返り値は常に1です。コマンド終了時に画面が復帰します。 ・Yes No ポップアップ。 (書式)PopUpWin(10,"メッセージ1行目"[,"メッセージ2行目"])  返り値が[Yes]:1 [No]:0となります。コマンド終了時に画面が復帰します。 ・FkeyMenu(にシステム内蔵ファンクションキーを表示できるようにしました。 (例)FkeyMenu(1,42)  テキスト画面の一番左側のファンクションメニューエリアに白抜きのEDITが描画されます。 ・中断再開時の[EXE][F1]キーの入力が継続しないようにしました。 ・?拡張コマンドの動作をEXEキー押下で終了するように変更しました。 ・セットアップの左右キーで最初と最後に移動するようにしました。 ・コメントがあった場合の非互換性を修正しました。 ・?拡張コマンドの入力文字数制限が機能していなかったのを修正しました。 v1.64β 2017.11.19 ベータ版(インタプリタのみ) ・マルチバイト文字を含むコマンドの表示の最後が欠けていたのを修正しました。 ・List->Mat(コマンドのバグを修正しました v1.64β 2017.10.29 ベータ版(インタプリタのみ) ・CATALOGキーが効かなくなる不具合を修正しました。 2017.10.20 ・v1.55β以降で拡張した?コマンドのオプションパラメータに入力桁数を追加しました。 (書式)?([x][,y][,width][,"空白キャラクタ"][,入力桁数][,R])  このオプションを付けると直前のカーソル位置から改行されません。入力プロンプトの"?"も表示されません。  各パラメータは省略できます。 (例)"A="?()->A  "A="に続いて入力待ちになります。 (例)"A="?(,,,,,R)->A  "A="に続いて反転表示で入力待ちになります。 (例)"A="?(,,8,,,R)->A  "A="に続いて反転入力待ちになります。入力範囲は8桁分のみです。それを超える入力では横スクロールします。 (例)?(3,4,5,">",5)A  X=3,Y=4の位置でAの値を表示して入力待ちになります。入力範囲と入力桁ともに5桁のみ、空白は">"で埋められます。 (例)?(3,4,5,,5,R)A  X=3,Y=4の位置でAの値を反転表示して入力待ちになります。入力範囲と入力桁ともに5桁のみです。 2017.10.14 ・エディタのサーチにおいて次の検索をする場合に[EXE]キーが純正非互換動作になっていたのを修正しました。 ・エディタのSkipで1行が長い場合に止まる不具合を修正しました。 2017.10.9 ・エディタの行番号を画面上の物理的な行ではなく改行までを1行とする論理行に変更しました。 ・行列名の指定を数値で出来るように拡張しました。  行列のアクセスは純正同様にMat+英1文字以外に、Listと同じく数値で指定できるようになりました。  (θ、r、Ansは数値指定できません。)  Mat A = Mat 1  Mat B = Mat 2  Mat C = Mat 3  Mat Z = Mat 26  Mat a = Mat 27  Mat z = Mat 52  さらに"@"を付けると行列名を変数で指定することも出来ます。  (コマンド入力方式がスタンダードモードでは[OPTN][F5]で"@"を入力できます。)  (例)3->A   Mat @A (Mat Cと同じです)  Listの拡張で行列も同様に最大1040まで拡張されます。(Ver.1.61以降)  この拡張により従来のバージョンでの小文字名の行列はList 1〜26ではなくList 27〜52に変更になります。  Mat A〜ZとList 1〜26は互いに独立した領域に確保されます。  小文字以降の行列はリストと共用するために27以降の行列=小文字行列はリストと同じ領域を使用します。(Ver.1.64以降)  53以降の行列は数値のみ指定できます。 Mat 1 = Mat A ( List 1 と同じではありません。) Mat 2 = Mat B ( List 2 と同じではありません。) Mat 3 = Mat C ( List 3 と同じではありません。) Mat 26 = Mat Z ( List 26 と同じではありません。) Mat 27 = Mat a ( List 27 と同じです。 ) Mat 28 = Mat b ( List 28 と同じです。 ) Mat 29 = Mat c ( List 29 と同じです。 ) Mat 52 = Mat z ( List 52 と同じです。 ) Mat 100 = List 100 Mat 1000 = List 1000  Mat a[5, 1] = Mat 27[5,1] = List 27[5]  Mat b[5, 1] = Mat 28[5,1] = List 28[5]  Mat c[5, 1] = Mat 29[5,1] = List 29[5]  Mat z[5, 1] = Mat 52[5,1] = List 52[5]  List 53[5] = Mat 53[5, 1]  List 100[5] = Mat 100[5, 1]  List 1000[5] = Mat 1000[5, 1]  (例)100->A   Mat @A (Mat 100、List 100と同じです) ・乱数の初期値を変数で指定できるようになりました。 (書式)Ran# #初期値  (例)Ran# #12345  (例)Ran# #A ・Monochromeライブラリ系コマンドに拡大縮小と回転処理を同時に加えてビットマップ表示する"_BmpZoomRotate"コマンドを追加しました。 (Planet-CasioよりNinestars氏がMonochromeライブラリに機能追加したプログラムを利用させて頂いています) (書式)_BmpZoomRotate &Mat , x, y, width, height [,横拡大幅] [,縦拡大幅] [,回転角(度)] [,color][,確率]  (例) _BmpZoomRotate &Mat A, 0, 0, 20, 10, 1.5, 2.5, 90  (例)_BmpZoomRotate &Mat A, 0, 0, 20, 10, %150, %250 , 15, 4, %50 ・Monochromeライブラリ系コマンドのスクロールコマンドが範囲指定可能になりました。 (書式)_Hscroll スクロール量 [,x1,y1,x2,y2] (書式)_Vscroll スクロール量 [,x1,y1,x2,y2] (例)_Hscroll 1,32,16,47,95  (32,16)-(47,95)のエリア内を右向きにスクロールします。 (例)_Vscroll -1,5,10,100,40  (5,10)-(100,40)のエリア内を上向きにスクロールします。 v1.63β 2017.9.26 ベータ版(インタプリタのみ) ・サブプログラムがプログラムの最後にある場合の純正非互換性を修正しました。 ・””文字列表示の7行目の処理を修正しました。 2017.9.6 ・ファイル名に特殊文字がある場合に表示できない不具合を修正しました。 (カナ文字は使えません。自動的に”〜”に変換されます。) 2017.8.20 ・シリアル通信をサポートしました。(純正と同名コマンドですが純正との互換はありません。) (書式)Send( 変数[,ボーレート]) (書式)Recv( 変数[,ボーレート]) (書式)Send38K 変数[,転送バイト数] (書式)Receive38k 変数[,転送バイト数] (書式)OpneComport38K[,ボーレート][,転送モード] (書式)CloseComport38K 転送できるデータは変数、行列、リストとなります。 転送元と転送先でデータの型を合わせる必要があります。 Send38K/Receive38kはOpneComport38Kにて[転送モード]に0を指定するとバイナリデータの転送になります。 [ボーレート値]:0=300, 1=600, 2=1200, 3=2400, 4=4800, 5=9600, 6=19200, 7=38400(デフォルト), 8=57600, 9=115200 baud [転送モード] 0:バイナリ転送モード  1:データ形式自動判別モード(デフォルト) Send(とRecv(はコマンド単独で転送出来ますが、Send38K/Receive38kはOpneComport38K/CloseComport38Kが必要です。 (例)Send(A) (例)Recv(A) (例)Send(Mat A) (例)Recv(Mat A) (例)OpneComport38K,9,0    Send38K List 1    CloseComport38K (例)OpneComport38K,9,0    Receive38k List 1    CloseComport38K .1.60より試験的実装していたエディタの行番号表示の不具合を修正しました。 v1.62β 2017.8.14 ベータ版(インタプリタのみ) ・セットアップ画面での日付時刻表示が関係ないところに表示されることのある不具合を修正しました。 ・プログラム実行中の中断でエディタに戻らずにファイルリストに戻る設定を加えました。  セットアップから設定出来ます。 ・コマンド入力時ににコマンド使用履歴が表示できるようになりました。  [MENU]キーを押すと過去32個分のコマンドが表示されます。  さらにカーソル[←][→]を押すと使用頻度の高い順に並び替えて表示されます。 ・行列編集でドット編集の出来るモードを追加しました。  行列を表示している状態で[OPTN]キーを押すとドットエディタになります。  行列の各要素の値が0の場合とそれ以外でドットの白黒が決まります。 ・行列のデータをクリップボードにコピー&ペーストが可能になりました。  行列編集モード時に[SHIFT]+[8](CLIP)でコピー、[SHIFT]+[9]でペースト出来ます。 (C.Basic)形式なのでエディタにて行列データをペースト出来ます。 ・BMP形式の読み書きに対応しました。(1ビット、モノクロのみ) (例)BmpSave "TEST",Mat A  行列AのデータをBMP形式で"TEST.bmp"に保存します。 (例)BmpLoad("TEST")->Mat A  "TEST.bmp"のデータを行列Aに読み込みます。 ・DrawMatコマンドを追加しました。(従来のDotPutコマンドのMLコマンド仕様です。) (書式)DrawMat Mat A[px,py], x, y, width, height [,横拡大幅][,縦拡大幅][,color][,確率] (例) DrawMat Mat A, 0, 0, 128, 64 (例) DrawMat Mat A[10,5], 0, 0, 40, 30, %150, %250 , 4, %50 ・Captureファイルをサポートしました。ストレージメモリ上への読み書きが出来ます。最大99までのファイルが利用できます。 (例)StoCapt 20 (例)RclCapt 20 ・Pictファイルのファイルサイズを2KBから1KBに半減しました。 ・StrRepl(コマンドを追加しました。 (書式)StrRepl(文字列, 検索文字列, 置換文字列 [,検索開始位置]) (例)StrRepl("Hello World","World","Earth") -> "Hello Earth" (例)StrRepl("abcabc","ab","ff",3) = "abcffc" (例)StrRepl("abcabc","ab","ff") = "ffcffc" ・Matエディタで任意の行列を選択する場合、Baseが0の場合、0が選択できない不具合を修正しました。 ・割り込み動作時に[MENU]キーでOSに戻ることを無効にしました。(カーソル点滅時等) v1.61β 2017.8.2 ベータ版(インタプリタのみ) ・隠しRAM使用時に99までのPictファイルと1040までのListを使うことが出来ます。セットアップで指定します。 ・ListとMatの一文字短縮表示が出来るようになりました。セットアップでLとMの反転文字とボールド体が選択できます。 ・Monochromeライブラリ系コマンドの"_Circle"コマンドに角度指定と頂点指定を追加しました。 ・Monochromeライブラリ系コマンドの"_Circle"コマンドに角度指定と頂点指定を追加しました。 (書式)_Circle x,y,半径,color[,確率][,幅][,角度初期値][,角度終了値][,頂点数] (例) _Circle 64,32,20,4,0.5,3 3x3ドットで50%の確率で円を描画します。 (例) _Circle 64,32,20,1,,3,0,90 3x3ドットで下端より左回りに90度分の円弧を描画します (例)_Circle 64,32,20,1,,,0,360,5 五角形を描画します。 (例) _Circle 64,32,20,1,,,20,380,5 頂点の位置を20度ずらした五角形を描画します。 ・Monochromeライブラリ系コマンドに図形の内部の黒ドット数をカウントする"_Test"コマンドオプションを追加しました。 (サポートコマンド) _Point _Line _Rectangle _Circle _Polygon  サポートコマンドの前に"_Test"を付けると機能します。 (例)_Test_Rectangle 0,0,127,63  (0,0)-(127,63)エリアにおける黒ドットの数を返します。 (例)_Test_Circle 62,32,20 (例)_Test_Point 10,10,5 (例)_Test_Line 10,10,100,30 ・Monochromeライブラリ系コマンドに拡大縮小、回転処理を加えてビットマップ表示する"_BmpZoom"と"_BmpRotate"コマンドを追加しました。 (Planet-CasioよりNinestars氏がMonochromeライブラリに機能追加したプログラムを利用させて頂いています) (書式) _BmpZoom &Mat , x, y, width, height [,横拡大幅] [,縦拡大幅] [,color][,確率] (書式)_BmpRotate &Mat , x, y, width, height, 回転角(度) [,color][,確率] (例)_BmpZoom &Mat A, 0, 0, 20, 10, 1.5, 2.5 (例)_BmpZoom &Mat A, 0, 0, 20, 10, %150, %250 , 4, %50 (例)_BmpRotate &Mat A, 0, 0, 20, 10, 45 ・Getkeyコマンドに複数キー同時読み込みの"M"オプションを追加しました。結果はリスト形式で返ります。 (例)GetkeyM->List 1 [EXE]と[F1]を同時押しした場合、 {79,31}が返ります。 ・リスト同志の比較コマンド"ListCmp("を追加しました。  リストとリスト、リストと値の比較ができます。 (例)ListCmp({1,2,3},{1,2,3})  1が返ります。 (例) ListCmp({1,2,3},{1,3})  0が返ります。 (例) ListCmp({1,2,3},{1,3,2})  0が返ります。 (例) ListCmp({1,2,3},2)  1が返ります。 (例) ListCmp({1,2,3},4)  0が返ります。 ・リストを並べ替えるSortA(,SortD(コマンドが数式の中でも使えるようになりました。 v1.60β 2017.7.26 ベータ版(インタプリタのみ) ・任意の進数変換コマンドとしてStrBase( コマンドを追加しました。 (書式) StrBase( N進数文字列, 変換前の進数N, 変換後の進数M) 進数の範囲は2〜64までです。    使用キャラクタは{ 0-9 A-Z a-z } N進数の文字列からM進数の文字列に変換します。 (例) StrBase("579",15,12) -> "873" StrBase("100",13,10) -> "169" StrBase("123",16,3) -> "101210" StrBase("43981",10,16) -> "ABCD" StrBase("12A345AFZ",36,10) -> "2999794422815" StrBase("AZaz",62,10) -> "2520113" ・"Graph Y=" で コマンド前のラインスタイルが設定できなかったバグを修正しました。 ・_PixelTest( が行頭にあった場合に動作しなかったバグを修正しました。 ・Monochromeライブラリ系コマンドの描画色に2x2ドット柄を追加しました。  Colorの値:10 11   12   13   14 (1ドット描画)  Colorの値:20   21   22   23   24 (2x2ドット描画)       □□  ■□  ■□  ■■  ■■       □□ □□ □■ ■□ ■■ (例)_FillCircle 64,32,30,21 ・Monochromeライブラリ系コマンドの描画色にランダムカラーを追加しました。  Colorの値に4を指定した場合、Colorに続くパラメータは黒ドットとなる確率(0〜1)を指定できます。 (例) _Rectangle 0,0,127,63,0,0,4,0.5  画面全体が半分の確率でランダムに黒ドットで埋まります。 (例) _Rectangle 0,0,127,63,0,0,4,0.1  画面全体が10%の確率でランダムに黒ドットで埋まります。 (例)_FillCircle 64,32,30,4,0.5  円の内側が50%の確率で黒ドットで埋められます。 (例) _FillCircle #0,0,3,4,0.5  円の内側が半分の確率でランダムに黒ドットで埋まります。 ・Monochromeライブラリ系コマンドの"_Line"コマンドにおいて線の太さ指定を追加しました。 (書式)_Line x1,y1,x2,y2,color[,確率][,幅] (例)_Line 0,0,127,63,1,,10  画面を斜めに10ドットの太さの直線が描かれます。 v1.59β 2017.7.19 ベータ版(インタプリタのみ) ・エディタの検索に置換機能を追加しました。検索入力時に[F2]を押すと置換文字列入力が出来ます。  置換には確認しながら置換[F2]と一気に置換するモード[F4]があります。 ・フォルダ上にカーソルがある状態から新規ファイルを作成することが出来るようになりました。 ・クリップ選択から検索に文字列が入力できなくなっていた不具合を修正しました。 ・StrInv(が上手く動作しなかったバグを修正しました。 v1.58β 2017.7.15 ベータ版(インタプリタのみ) ・ミニフォント表示のエディタが使えるようになりました。 ・実行中断時にデバッグモードにならない設定を追加しました。 ・ファイルモードの[DEL]でフォルダの削除も出来るようになりました。 ・新規ファイルでDELキーを連続した場合にWで埋められファイル異常になるバグを修正しました。 ・Progコマンドにおいてサブフォルダのファイルの読み込みが出来なくなっていたバグを修正しました。(ver.1.00ベータ5でエンバグ) v1.57β 2017.7.8 ベータ版(インタプリタのみ) ・エディタ画面の最上部一行をエディタとして使う設定を加えました。Setupから設定します。 ・カット&ペースト画面で削除だけをするボタンを追加しました。 ・エディタ終了時の強制自動保存に対応しました。Setupで設定します。 ・If〜Then〜IfEndにおいてThenが無くてもエラーにしないようにしました。 ・Screenコマンドに画面全体を反転するRオプションを追加しました。"Screen"+"R" (例)ScreenR ・論理座標系から物理座標を求めるScreenコマンドの"#"オプションを追加しました。  結果はListAnsに返ります。 (使い方) Screen#X,Y[,Xmin][,Xmax][,Ymin][,Ymax] (例)Screen#1,1,-6.3,6.3,-3.1,3.1   ListAns{74,22} ・物理座標系から論理座標を求めるScreenコマンドの"%"オプションを追加しました。  結果はListAnsに返ります。 (使い方) Screen%X,Y[,Xmin][,Xmax][,Ymin][,Ymax] (例)Screen%74,22,-6.3,6.3,-3.1,3.1   ListAns{1,1} ・Monochromeライブラリ系のコマンドを論理座標で使うことのできる"#"オプションを追加しました。 support ML command, _Point _Pixel _PixelTest( _Line _Rect _Horizontal _Vertical _Circle _FillCircle _Elips _FillElips _ElipsInRct _FElipsInRct (例) ViewWindow -6.3,6.3,0,-3.1,3.1,0 Screen.G _Circle #0.5,1.2,1.2.1 ・繰り返し文字列を返すStrChar(コマンドを追加しました。 (例)StrChar("ABC",5)  文字列、"ABCABCABCABCABC"が得られます。 ・文字列を真ん中に埋め込むStrCentr(を追加しました。 (使い方)StrCenter("文字列",長さ[,"周辺を埋めるキャラクタ"]) (例) StrCenter("Test",8)  文字列、" Test "が得られます。 (例) StrCenter("Test",8,"*")  文字列、"**Test**"が得られます。 ・16進数と2進数の文字列に変換するHex(とBin(コマンドを追加しました。 (例)Hex(12345)->Str 1  "3039"がStr 1に入ります。  数値に戻すは、 (例) Exp("0X"+Str 1)->A  2進数では、 (例)Bin(12345)->Str 1  "11000000111001"がStr 1に入ります。 (例)Exp("0B"+Str 1)->A ・リストが1〜52まで使えるようになりました。 ・ファイルモードでフォルダ作成[MK.F]キーを追加しました。  [[RN.F]は将来的な実装となります。 v1.56β 2017.6.30 ベータ版(インタプリタのみ) ・LCD描画のリフレッシュコントロールにおいて、RefrshTime値に0を指定することで画面更新しなくなる設定を追加しました。  セットアップ、およびコマンドで指定可能です。 (例)RefrshCtrl 2    RefrshTime 0  テキスト、グラフィックス全ての描画コマンドでコマンド実行直後での画面が更新されなくなります。 ・1/128秒単位で時間待ちをするTicksWaitコマンドを追加しました。  (TicksとWaitコマンドの連続合わせ技です。関連してコマンド入力キーアサインを一部変更しました。) (例)TicksWait 128  1秒間待ちます。 (例)TicksWait -128  前回のTicksWaitコマンド実行時より1秒間待ちます。すでに1秒を越えていた場合は待ち時間無しで次の処理に移ります。 (例)TicksWait -4  前回のTicksWaitコマンド実行時より4/128秒待ちます。ループ内にこのコマンドを一つ記述するだけで毎秒32回のループが作れます。 v1.55β 2017.6.11 ベータ版(インタプリタのみ) ・?コマンドにオプションパラメータを追加しました。  このオプションを付けると直前のカーソル位置から改行されません。入力プロンプトの"?"も表示されません。 (書式)?([x][,y][,width][,"空白キャラクタ"][,R])  各パラメータは省略できます。 (例)"A="?()->A  "A="に続いて入力待ちになります。 (例)"A="?(,,,,R)->A  "A="に続いて反転表示で入力待ちになります。 (例)"A="?(,,8,,R)->A  "A="に続いて反転入力待ちになります。入力範囲は8桁分のみです。それを超える入力では横スクロールします。 (例)?(3,4,5,">")A  X=3,Y=4の位置でAの値を表示して入力待ちになります。入力範囲は5桁分のみ、空白は">"で埋められます。 (例)?(3,4,5,,R)A  X=3,Y=4の位置でAの値を反転表示して入力待ちになります。入力範囲は5桁分のみ、それを超える入力では横スクロールします。 ・AxesOnにおいてグラフの目盛りが描画されないことがある不具合を修正しました。 v1.54β 2017.6.3 ベータ版(インタプリタのみ) ・実数時の行列の乗算が整数演算になっていたバグを修正しました。 ・Plotコマンド2つとLineコマンドでライン描画されなかった不具合を修正しました。 ・PictファイルをHeap(隠しRAM)エリアで使用する場合、保存時にストレージメモリに保存する設定(セットアップ)とコマンドオプションを追加しました。 (例)Pict #20  ヒープ(隠しRAM)領域とストレージメモリに同時に保存します。 ・PictファイルをHeap(隠しRAM)エリアで使用する場合、保存時にストレージメモリに同時に保存する設定を追加しました。 ・テキストから変換時にプログレスバーを表示するようにしました。 v1.53β 2017.5.27 ベータ版(インタプリタのみ) ・StrRightコマンドのバグを修正しました。 (例)StrRight("12345",0)  この結果はヌルストリングになるはずが"5"になっていました。 ・List演算時にacosがcosになっていたバグを修正しました。 ・Grpah Y=コマンドでYn変数が使えなかった不具合を修正しました。 (例)"sin X"->Y1    Graph Y=Y1 ・文字列内にエスケープ文字でクォーテーションマークが使用されている場合、テキスト変換がおかしくなる不具合を修正しました。 (これはfx-CG10/20でもおかしくなるようです。) ・Lblコマンドでラベル名に英小文字が使用できるようになりました。 v1.52β 2017.5.16 ベータ版(インタプリタのみ) ・LocateやTextコマンドにおいて””ダブルクォーテーションが閉じていない場合、以降のプログラムが文字列扱いになってしまう不具合を修正しました。 ・RanNorm#(とRanBin#(関数を追加しました。 v1.51β 2017.5.11 ベータ版(インタプリタのみ) ・ファンクションキーのアイコンをシステムのアイコンに変更しました。 ・GCD(とLCM(関数を追加しました。 v1.5β 2017.5.7 ベータ版(インタプリタのみ) ・純正同様のコマンド入力をサポートしました。セットアップにてC.Basic(fx-5800P)方式とStandard(fx-9860G)方式を選択できます。  入力可能なコマンドはCommand_List.txtを参照して下さい。 ・行列コマンドとして*Row,*Row+,Row+コマンドをサポートしました。 v1.42β 2017.4.30 ベータ版(インタプリタのみ) ・Lbl名にrとθが使えなかったのを修正しました。 ・メインとサブプログラムで同じLbl名を使っていた場合、飛び先が不正になる不具合を修正しました。 ・?->Aコマンドで未入力で[EXE]を押した場合にフリーズすることがあったのを修正しました。 ・Listを含む演算でスカラーが後に来る場合のバグを修正しました。 (例)List 1 + 5 -> List 2 v1.41β 2017.4.22 ベータ版(インタプリタのみ) ・隠しRAM使用時に、Mat行列&ListをC.Basic起動時に初期化しない設定を加えました。(要セットアップ設定)  その場合、C.Basicを終了して他の機能、アドインを使用後、再度C.Basicを起動した場合に前回終了時点でのMat行列&Listが復活します。  (他のアドインが隠しRAMを使用していない場合) ・MENUコマンドにおいて数字キーによる入力が出来なかったのを修正しました。 v1.4β 2017.4.16 ベータ版(インタプリタのみ) ・純正仕様の行列の乗算をサポートしました。  Mat行列を配列とみなしたMat配列同士の乗算は、小文字Mat行列を使うことでList同士の乗算にすることで可能です。(Listは実体が小文字Matと同じため) (例)Mat a × Mat b  行列乗算 (例)List 1 × List 2  配列乗算 v1.31β 2017.4.15 ベータ版(インタプリタのみ) ・Listの要素を一つずつ増やしていく再確保仕様を純正互換に修正しました。 ・整数モードにおけるビット演算の[ not ]が論理演算の[ Not ]のままだったのを修正しました。 ・Stopコマンドでプログラム終了時にDone表示が出なかったことのを修正しました。 v1.3β 2017.4.10 ベータ版(インタプリタのみ) ・ And , Or , Xor が論理演算ではなくビット演算になっていたために純正非互換だったのを修正しました。  この変更でビット演算が出来なくなったので、ビット演算子として純正のBASEモードで使う[ and , or , xor, not ]を追加しました。 ・”文字列”が横幅ちょうど21文字で終わった場合に(余分に?)改行されてなかった非互換性を修正しました。 ・Menuコマンド実行中に[MENU]キーでメインメニューに戻ってしまう非互換性を修正しました。 ・StrMidコマンドにおいて、3つめのパラメータを省略した場合にシステムエラーになる不具合を修正しました。 v1.2β 2017.3.17 ベータ版(インタプリタのみ) ・リストの四則演算の延長で配列(行列)の演算が一部可能になりました。  純正行列と互換のあるのは行列同士の加減算、および行列とスカラー演算のみとなります。 (例)Mat A + Mat B (例)Mat A * B + Int Mat C ・BG-None、BG-Pictコマンドの互換性を改善しました。 ・テキストソースからの変換においてExp(-)の変換ミスを修正しました。 (誤)Exp(-)9 -> Exp(-)9 (正)Exp(-)9 -> e-9 ・Getkey1,Getkey2コマンドで[MENU]キーでメインメニューに戻ってしまっていたのを純正Getkeyと同じく戻らないようにしました。 v1.1β 2017.3.11 ベータ2版(インタプリタのみ) ・整数モードのリスト機能に対応しました。 ・Mat行列表示時に[OPTN]キーでリスト表示に変わります。[VARS]キーで文字列表示&入力が出来るようになりました。 ・#'CBINT、#'CBDBLがプログラム中で複数使われた場合に機能しない不具合を修正しました。 ・”Char”が含まれる文字列のテキスト変換ミスを修正しました。 ・Pictをヒープ領域に設定している時に、カレントディレクトリもしくはPictフォルダに同じNoのPict画像ファイルが存在する場合は自動的に読み込むようにしました。  PictをS.Mem領域に設定している場合にはカレントドライブのPictフォルダしかアクセスしません。 (例)Pict10.g1mファイルがカレントディレクトリもしくはPictフォルダに存在すれば、Pict10を最初にアクセスした時にその画像がヒープのPict領域に自動的に読み込まれます。    存在しない場合はメモリエラーとなります。                画像が存在した場合は、次回のPict10アクセスからはヒープアクセスのみとなります。 ・ファイルリスト画面にてPictファイルで[EXE]を押すと画像の確認ができます。 ・For〜Nextコマンドにおいて初期値が終値を超えている場合にループ内を通過してしまう非互換性を修正しました。 2017.3.5 ベータ1版(インタプリタのみ) ・リスト機能をサポートしました。 ・サポートコマンド  List Ans  {1,2,3,4,5}->List 1  10->Dim List 1  Dim List 1  Seq( X^2, X, 1, 10, 2 )->List 2  Augment(List1,List2)->List3  Mat>List( Mat A, 2) -> List 1  List>Mat( List 1, List 2,..) -> List 9  Fill(3,List1)  Min(List1)  Max(List1)  Mean(List 1)  SortA(List1)  SortB(List1)  Sum List1  Prod List1  Sigma(数式、制御変数、初期値、終値、刻み) ・リストを含む演算(四則演算と関数演算)をサポートしています。  サポート済 A + List 1[B-1] * List 2[C+1]  サポート済 A + List 1 + A - B * Cos C * List 2  サポート済 Sin List 1 + Cos List 2 * log List 3 ・DrawStatコマンドとGraph(X,Y)=(コマンドを一部サポートしました。  関連コマンドとして、  BG-None、BG-Pict、G-Connect、G-Plot  S-Gph1、S-Gph2、S-Gph3、DrawOn、DrawOff、Scatter、xyLine、Square、Cross、Dot  コマンドの追加と、  TθMin  TθMax  TθPtch  これらのViewWindow設定変数の読み書きに対応しました。 ・ファイルのDeleteコマンド追加しました。 (例)Delete "TEST.txt"  "TEST.txt"を削除します。 (例)Delete "TEST.txt"、1  削除前に確認します。 ・デバッグモード時に、[F1] (JUMP) ジャンプサブメニュー[F6]スキップダウンが動作しなかったのを修正しました。 ・For〜Nextコマンドにおいて制御変数の終値が超過していたのを修正しました。 ・Ansの値が常に式の結果になっていたところを(→)代入がある場合はAnsを更新しない純正仕様に合わせました。 ・行頭のスペースにおいて、If〜ThenコマンドのThenの前がスペースの場合にエラーになる不具合を修正しました。 ・一行内にループ構造があるとで[AC]ブレークが効かない不具合を修正しました。 (例)While GetKey<>31:WhileEnd ・サブプログラム内でStopコマンドで終了しない不具合を修正しました。 ・文字列変数に使われるデフォルト行列をs(小文字)から追加変数ののrに変更しました。 ・全体の実行速度を遅くするウエイト機能を追加しました。セットアップおよびWaitコマンドで設定します。  セットアップで設定した場合は全部のプログラムが影響を受けます。  個々のプログラムで調整したい場合はWaitコマンドを使用します。  (例)Wait 100   ウエイト値に100を設定します。   SH3機でもSH4機でも同じ程度の速度低下となっています。   ウエイト値、10で約1/2,100前後で速度1/10になります。(速度低下の程度はプログラムによって異なります。) v1.00β 2017.2.3 ベータ7版(インタプリタのみ) ・既定の変数を違う変数名でもアクセスできるようにしました。  AliasVarコマンドを追加しました。  このコマンドを使うことで最大10個までエイリアス変数を利用できます。  置き換え使用可能な変数名は[CHAR]で選択できる一文字キャラクターのみです。  変数名、行列名ともに同時に変更されます。  同一変数に違う変数名を割り当てた場合は、後に実行されたAliasVarコマンドの変数名が有効になります。 (例)AliasVar A=α    α+100→α  AliasVarコマンド実行後は、変数Aをαとして使用できます。  αの実体はAなので  A+100→Aと同じです。 2017.2.1 ベータ6版(インタプリタのみ) ・変数名としてrとθを追加サポートしました。グローバル変数だけでなく、ローカル変数としても使えます。  さらに行列名としても追加しているので、θ1、θ5等の数字添字型変数(Mat行列の省略形)も使えます。 ・数式における分数表記(ラインモード)を追加しました。 2017.1.29 ベータ5a版(インタプリタのみ) ・SD版においてファイルリスト画面の移動が遅くなる不具合に対処しました。 2017.1.28 ベータ5版(インタプリタのみ) ・テキストファイルから実行/編集した場合は、テキストファイルのみ変更されるように仕様変更しました。  その場合、CasioBasic標準ファイル形式(g1m)を同時に保存するかどうかの設定をセットアップより選択できます。 ・上記の仕様変更によりサブプログラムも含めすべてテキストファイルだけでのC.Basic運用が出来るようになりました。 2017.1.26 ベータ4版(インタプリタのみ) ・テキストファイルのコピー及びリネームの不具合を修正しました。 ・””ダブルクォーテーションに囲まれた文字列が複数行に渡る場合に、特殊文字が規定通りにテキスト変換できない不具合を修正しました。 ・CasioBasic仕様の描画系コマンドにおいて、コマンド名の直後に"@"アットマークを付けると描画モードがテキストモードやグラフィックモードに関わらず現在のVRAMに描画するようにしました。 (例)Locate 2,2,"String"    Text @16,1,"TextString"  Textコマンドは現在のVRAM=テキストVRAMに描画します。 ・FkeyMenu(、ReadGraph(、WriteGraphコマンドの描画対象を現在のVRAMに変更しました。 ・Getkeyコマンドで、[3]キーを押したまま[1]キーを押すと[1]になってしまう非互換性を修正しました。 ・キースキャンコマンドとしてKeyRow(コマンドを追加しました。     返り値対応ビット(2進数)     bit6 bit5 bit4 bit3 bit2 bit1   Row--------------------------------------Row   09  F1 F2 F3 F4 F5 F6 09   08  SHIFT OPTN VARS MENU ← ↑ 08   07  ALPHA ^2 ^ EXIT ↓ → 07   06  XTT log ln sin cos tan 06   05  ab/c F<>D ( ) , → 05   04  7 8 9 DEL 04   03  4 5 6 x div 03   02  1 2 3 + - 02   01  0 . EXP (-) EXE 01   Row--------------------------------------Row (例)KeyRow(9)   F4とF6を同時に押した場合は、bit3とbit1が1になり、返り値としては   2^3 + 2^1 = 10 が返ります。 ・Menuコマンド(純正互換)を追加サポートしました。 v1.00β 2017.1.25 ベータ3版(インタプリタのみ) ・StrLeft(コマンドが使えなくなっていた不具合を修正しました。 ・ScreenG→Screen.G マニュアル&サンプルプログラムの間違いを修正しました。 2017.1.21 ・4Gバイト以上のSD使用時に空容量表示がおかしかったのを修正しました。 2017.1.20 ・SD版において、実行/編集対象ファイルをSD上で使えるようになりました。  セットアップより指定して下さい。(SD版のみSD指定可) 2017.1.19 ・Textコマンドで描画されるフォントの上端1ドットラインが描画されてしまう非互換性を修正しました。 (SDKのPrintMini表示仕様になっていました。) 2017.1.18 ・_Verticalがバグっていたのを修正しました。 ・OS2.09において最初のプログラム実行時にシステムエラーが出ることがあったのを修正しました。 2017.1.17 ・小文字の行列の省略形( a[1] 、a2等)が使えなかったのを修正しました。 ・文字列変数のStrにおいて、インデックス開始値が0の場合にはStr 0が使えるようになりました。 (例)'#Mat 0    "String"→Str 0 ・行列のインデックス開始値を返す"MatBase("関数を追加しました。 (例)'#Mat 0    10→Mat A    MatBase( Mat A ) 0が返ります。 ・"ElemSize("、"RowSize("、"ColSize(" コマンドがテキスト変換できなかった不具合を修正しました。 ・"DotPut("および、"Sprintf("コマンドが純正コマンドと重複していたので中間コード変更しました。 DotPut( = DotP : 0xF94B -> 0xF74B Sprintf( = Vct : 0xF73E -> 0xF743  今回のバージョンでは、ソースを読み込んだ時点で自動的にコード変更されるので以前のバージョンで作成したソースはそのまま実行、編集できます。  "DotTrim(" および"DotGet("も自動変更に対応します。 ・fx-9860Gシリーズの超高速グラフィックスライブラリのMonochromeLibをサポートしました。  https://wiki.planet-casio.com/fr/MonochromeLib  _ClrVram  _ClrScreen  _DispVram  _Pixel  _Point  _PixelTest(  _Line  _Horizontal  _Vertical  _Rectangle  _Polygon  _FillPolygon  _Circle  _FillCircle  _Elips  _FillElips  _ElipsInRct  _FElipsInRct  _Hscroll  _Vscroll  _Bmp  _Bmp8  _Bmp16  CasioBasicのグラフィックスコマンド仕様とは独立したハードに密着した別系統のコマンドとなります。  これらのコマンドは現在のVRAMを操作するだけなので描画結果を表示するにはPutoDispDD等のコマンドでLCD転送(画面更新)をする必要があります。  コマンドの使い方はマニュアルを参照して下さい。 v0.99v 2017.1.11 テスト版(インタプリタのみ) ・A0〜A9表記の変数の実体となる行列が確保されてない場合には自動的に確保するようにしました。 (例)A1+123→B5  もし、Mat AおよびMat Bが確保されていない場合は、変数がアクセスされた時点で  9→Dim A  9→Dim B  と同じ初期化が自動的に実行され、A1〜A9およびB1〜B9までが使えます。 (例)'#Mat 0  A1+123→B5  の場合、もし、Mat AおよびMat Bが確保されていない場合は、  10→Dim A  10→Dim B  と同じ初期化が自動的に実行され、A0〜A9およびB0〜B9までが使えます。 (例)'#Mat 0  2→Dim B  A1+123→B5  の場合は、  10→Dim A  Mat Aのみ初期化され、Mat Bは再確保されないのでB5にアクセスした時点でエラーになります。  この場合はA0〜A9およびB0〜B1までが使えます。 2017.1.9 テスト版(インタプリタのみ) ・行列のアクセス方法として、変数に直に数字を添字として記述することが出来るようにしてみました。  Mat A[1,1]をA[1]と表記する形のさらなる省略形です。ただし添字は数字の0〜9のみです。  A[1,1]→A[1]→A1  A[2,1]→A[2]→A2  A[3,1]→A[3]→A3  A[4,1]→A[4]→A4  A[5,1]→A[5]→A5  A[6,1]→A[6]→A6  A[7,1]→A[7]→A7  A[8,1]→A[8]→A8  A[9,1]→A[9]→A9 (例)'#Mat 1  10→Dim A  10→A1  20→A2 A1+A2  添字に0が使えるのは行列インデックスの初期値を0に指定している場合のみです。  A[0,0]→A[0]→A0  A[1,0]→A[1]→A1  A[2,0]→A[2]→A2  A[3,0]→A[3]→A3  A[4,0]→A[4]→A4  A[5,0]→A[5]→A5  A[6,0]→A[6]→A6  A[7,0]→A[7]→A7  A[8,0]→A[8]→A8  A[9,0]→A[9]→A9 (例)'#Mat 0 10→Dim A  10→A0  20→A1 A0+A1 v0.99u 2017.1.7 テスト版(インタプリタのみ) ・テキストファイル(*.txt)からの読み込みでファイル名に".txt"が残るバグを修正しました。 ・[OPTN][VARS][PRGM]コマンド選択でのカーソル←→でグループ移動させるようにしました。 v0.99t 2017.1.1 テスト版(インタプリタのみ) ・DATEの曜日計算(ツェラーの公式)をミスしていたのを修正しました。 2016.12.31 ・セットアップでのDATE/TIME表示を逐次更新するようにしました。 2016.12.26 ・内蔵RTCの日付時刻の設定及び読出コマンドとしてDATE,TIMEを追加しました。  文字列型の変数形式となります。 (セットアップからも設定できます) (例)"2016/12/26"→DATE (例)DATE  2016/12/26 MON  と表示されます。曜日は自動計算されます。 (例)"23:59:59"→TIME (例)TIME  23:59:59  と表示されます。 ・エディタ等におけるコマンドメニュー入力においてコマンドをグループ分けしてカーソル←→でショートカット出来るようにしました。  STD : 基本的なコマンド  GR : グラフィック系コマンド  FN : 関数系コマンド  STR : 文字列系コマンド  EX : 拡張コマンド 2016.12.22 ・文字列処理バッファサイズを128バイトから256バイトに倍増しました。 ・テキストファイルへ変換する場合に確保されるバッファサイズを元ソースサイズの1.5倍から2倍に増やしました。 ・編集可能な1プログラムのサイズが約32KBまでだった制限を最大62KBまでに変更しました。 v0.99s 2016.12.16 テスト版(インタプリタのみ) ・引数ありのGosubが動作しなかったのを修正しました。 2016.12.15 ・整数モードでSprintfの実数表示が出来なかったバグを修正しました。 (例)Sprintf("A=%3.2f",#12.345) ・Sprintf、Locate、Textでの#プレフィックスの実数式評価で、  整数モードでも変数は整数変数のままになります。 (変更前)  式評価は実数で行われるために整数変数には%指定を付ける必要があります。 (変更後)  式評価は実数式として行われますが、変数は整数変数のまま扱われます。%を付ける必要はありません。 2016.12.14 ・エディタ編集後のファイル名入力時に隠れる画面が編集ファイルと無関係な画面になる不具合を修正しました。 2016.12.13 ・実数モードで#プレフィックスを付けた場合に動作しなかったバグを修正しました。 (例)#123.56+100 ・Dispコマンドを追加しました。 (例)Disp A  ▲一時停止コマンドと同様の数値&文字列表示コマンドですが、表示毎に改行され一時停止すること無くプログラムは続行されます。 ・RefreshCtrl コマンドの中間コードが誤っていたので修正しました。 RefreshCtrl = DotG : 0xF7F9 -> 0xF7F8 ・純正コマンド"Dot" "DotG"と中間コードが重なっていた"DotTrim(" および"DotGet("コマンドの中間コードを変更しました。 DotGet( = DotG : 0xF73F -> 0xF73E DotTrim( = Dot : 0xF74F -> 0xF73D v0.99r 2016.7.24 テスト版(インタプリタのみ) ・隠しRAM使用時、隠しRAM領域を使い切った場合に、ヒープ領域から領域確保できるようにしました。 2016.7.21 ・隠しRAM使用時、行列を確保できない場合の処理に不具合があったのを修正しました。 2016.7.20 ・隠しRAMをプログラムとMat行列領域で使用するようにしました。  プログラム領域、行列領域合計で256KBの割当になります。  ファイルリストバッファはヒープ領域固定となります。 ・リスト表示の上部にストレージメモリのフリーエリアとファイルリスト数を表示するようにしました。  ストレージメモリはプログラムの保存、およびコピー、リネーム等で減っていきますので、残り少なくなったら最適化が必要になります。 ・ClrMatで行列全部の消去が出来なかったのを修正しました。 ・Int関数がIntg関数になっていたので、Intg関数を追加して、Int関数を修正しました。 v0.99q 2016.7.3 テスト版(インタプリタのみ) ・デバッグモードにおいてプログラムの再開、トレース実行する場合に画面が復帰しないことがあった不具合を修正しました。 2016.6.25 ・アドレス演算子&の追加により、Mat行列の文字列化は$のみに変更しました。 ・SysCallとCallコマンドをSysCall(),Call()のように関数コマンドとしました。 (書式)SysCall( システムコール番号 [,引数1][,引数2][,引数3][,引数4] ) (例)SysCall( 0x763,A,B,C,D )→R  A→R4レジスタ、A→R5レジスタ、A→R6レジスタ、A→R7レジスタ、システムコール0x30を呼び出し返り値がRに入ります。  システムコール0x30はSDKのBdisp_DrawLineVRAMと同じです。 (書式)Call(マシン語アドレス [,引数1][,引数2][,引数3][,引数4] ) (例)Call( 0x8802F000,A,B,C,D )→R  A→R4レジスタ、A→R5レジスタ、A→R6レジスタ、A→R7レジスタ、0x8802F000番地にあるマシン語プログラムを呼び出し返り値がRに入ります。 2016.6.18 ・ENGモードで負数の場合、動作しなかったのを修正しました。 ・ENGモードの拡張で3桁区切り表示に対応しました。  セットアップで[F4](Eng)を押すと、ENGオフ、ENGオン(/E)、3桁区切り(/3)と切り替わります。  コマンドで3桁区切りを指定するには、EngOn直後に数字の3を付けて、  EngOn3  以後3桁区切り出力になります。  その時のENGの返す値は3になります。(ENGオフ:0 ENGオン:1 3桁区切り:3) ・数値をC.Basic書式で文字列化するStr()コマンドを追加しました。  Sprintf()コマンドはC言語仕様での書式出力となりますが、Str()ではC.Basic設定(Fix,Sci,Norm,ENG等)によって出力書式が決定されます。 (例)Str(-123.4567)→Str 1 -123.4567を文字列化"-123.4567"して文字列変数Str 1に代入します。 ・変数リスト表示で16進数表示に対応しました。  整数変数はそのまま16進数表示になりますが、実数変数はその値が整数32ビット範囲に収まる場合のみ16進数表示にできます。 ・マシン語を直接扱うためのコマンドとしてPeek(、Poke(、Call、SysCall、  変数とソースアドレスを返すVarPtr(、ProgPtr(コマンド、  C言語同様のアドレス演算子&、間接演算子*をサポートしました。 (例)Peek(0x8802E000).B→A% (例)*(0x8802E000).B→A%  0x8802E000番地の内容をバイト(1バイト)で読み出し、整数変数A%に代入します。 (例)Peek(0x8802E000).W→A%  0x8802E000番地の内容をワード(2バイト)で読み出し、整数変数A%に代入します。 (例)Peek(0x8802E000).L→A%  0x8802E000番地の内容をロングワード(4バイト)で読み出し、整数変数A%に代入します。 (例)Peek(0x8802E000).F→A  0x8802E000番地の内容を倍精度実数(8バイト)で読み出し、変数Aに代入します。 (例)Poke(0x8802E000).B,A% (例)A%→Poke(0x8802E000).B (例)A%→*(0x8802E000).B  整数変数A%の値を、0x8802E000番地にバイト(1バイト)書き込みします。 (例)Poke(0x8802E000).W,A%  整数変数A%の値を、0x8802E000番地にワード(2バイト)書き込みします。 (例)Poke(0x8802E000).L,A%  整数変数A%の値を、0x8802E000番地にロングワード(4バイト)書き込みします。 (例)Poke(0x8802E000).F,A  実数変数Aの値を、0x8802E000番地に倍精度実数(8バイト)書き込みします。 (例)Call 0x8802F000,A,B,C,D  A→R4レジスタ、A→R5レジスタ、A→R6レジスタ、A→R7レジスタ、0x8802F000番地にあるマシン語プログラムを呼び出します。 (例)SysCall 0x30,A,B,C,D  A→R4レジスタ、A→R5レジスタ、A→R6レジスタ、A→R7レジスタ、システムコール0x30を呼び出します。  システムコール0x30はSDKのBdisp_DrawLineVRAMと同じです。画面にラインを描きます。 (例)VarPtr(A%) (例)&A%  整数変数A%の変数のアドレスが返ります。 (例)VarPtr(Mat A) (例)&Mat A  行列Aの先頭アドレスが返ります。 (例)VarPtr(Mat A[20,10])  行列A[20,10]の値が格納されているアドレスが返ります。 (例)Poke VarPtr(A%),B% (例)*(&B%)→*(&A%)  B%→A%と同じです。 (例)ProgPtr()  現在のプログラムが格納されているアドレスを返します。 v0.99p 2016.5.25 テスト版(インタプリタのみ) ・純正CasioBasic互換仕様のパスワードに対応しました。  新規ファイル名の入力時に[F1]でパスワード入力できます。  ファイルリストモードで[SHIFT]+[F4]でパスワードの設定/解除が出来ます。  パスワードの設定されたファイルは、実行時は何も影響ありませんが、編集時およびデバッグ時はパスワード入力が必要となります。 v0.99o 2016.5.21 テスト版(インタプリタのみ) ・ファンクションメニュー描画コマンドFkeyMenu(をテキスト画面にも使えるようにしました。  描画オプションの項目でTを指定すればテキスト画面描画となります。 (例)FkeyMenu(1,"ABC",T)  テキスト画面の一番左側のファンクションメニューエリアにABCが描画されます。 (例)FkeyMenu(6,"ABC",TR)  テキスト画面の一番右側のファンクションメニューエリアにABCが反転モードで描画されます。 (例)FkeyMenu(6,"",TC)  テキスト画面の一番右側のファンクションメニューエリアを消去します。 ・行列ごとに確保時にインデックスベースを設定することが出来るようにしました。  行列確保時に末尾に0をつけると0ベース、1を付けると1ベースとなるので、デフォルトのベース設定を変更すること無く個別設定が出来ます。 (例){128,64}→Mat A.P0  0ベースの行列を確保します。インデックスの範囲は[0,0]-[127,63] (例){128,64}→Mat A.P1  1ベースの行列を確保します。インデックスの範囲は[1,1]-[128,64] 2016.5.20 ・行列にVRAMを割り当てる場合は、常にインデックスは0から始まりサイズを{128,64}固定としました。  さらに、テキストVRAM保存領域とグラフィックVRAM保存領域を行列に割り当てることができるようになりました。  (例){128,64}→Dim Mat T.vT   テキストVRAM保存エリアをMat Tに割り当てます。インデックスのとる値は0〜127、0〜63となります。   現在のVRAMがグラフィックVRAMの場合、Mat Tに演算処理してScreen.TコマンドでVRAMをテキスト画面にするとMat Tの内容がVRAMに転送されます。  (例){128,64}→Dim Mat G.vG   グラフィックVRAM保存エリアをMat Gに割り当てます。インデックスのとる値は0〜127、0〜63となります。   現在のVRAMがテキストVRAMの場合、Mat Tに演算処理してScreen.GコマンドでVRAMをグラフィック画面にするとMat Gの内容がVRAMに転送されます。   表示をするにはPutDispDDコマンドを使用して下さい。 ・GetKey3でキー入力が上手くいかない不具合があったのを修正しました。 2016.5.19 ・画面のリフレッシュをマニュアル設定できるようになりました。セットアップとコマンドで設定できます。  Off:リフレッシュコントロール無し。表示においては純正互換仕様です。  Grp:グラフィックコマンドのみリフレッシュコントロール有り。ClrText,Locate,Text,LocateYX、””は無しで以前のバージョン互換です。  All:すべての描画コマンドがリフレッシュコントロールされた表示となります。必要に応じてPutDispDDコマンドが必須となります。  Time:リフレッシュコントール時間を設定します。n/128秒単位で画面更新します。デフォルトは3で約1/42秒での更新となっています。 ・画面のリフレッシュをコマンドで設定できるRefrshCtrlとRefrshTimeコマンドを追加しました。 (例)RefrshCtrl 0  リフレッシュコントロール無し。Off (例)RefrshCtrl 1  リフレッシュコントロール有り。Grpモードに設定します。 (例)RefrshCtrl 2  すべてのリフレッシュコントロール有り。Allモードに設定します (例)RefrshTime 5  リフレッシュコントール時間を5に設定します。  RefreshCtrlとRefrshTimeコマンドは式の中で使うと現在の値を返します。 ・入力時のアルファベットの大文字小文字切り替えを初期化しないようにしました。起動時に大文字に設定される他は初期化されることがありません。。 ・エディタのサーチ機能において、前回の検索文字列が再度表示されるように変更しました。[AC]でクリアできます。 ・Save/Loadコマンドのファイル名の拡張子は任意に設定できます。省略した場合は[.bin]になります。 v0.99n 2016.5.15 テスト版(インタプリタのみ) ・Returnコマンドにて返り値指定が出来るようになりました。 (例)Return 式  式の値がAnsに入ります。 ・0xまたは0Xで始まる16進定数が使えなくなっていた不具合を修正しました。 ・文字列で行列を初期化する場合に空白と改行をスキップ出来なかった不具合を修正しました。 2016.5.14 ・Screenコマンドを追加しました。  VRAMへ直アクセスする場合に、  Screen.tまたはScreen.TでテキストVRAM、  Screen.gまたはScreen.GでグラフィックVRAMが描画対象になります。  またScreen nでnの値が0の場合はテキストVRAM、1の場合はグラフィックVRAMとなります。  Screen単独で使うと描画対象が(テキストVRAM⇔グラフィックVRAM)切り替わります。  式の中でScreenを使うと現在のアクセス対象VRAM(0:テキストVRAM、1:グラフィックVRAM)が返ります。 ・セットアップにて隠しRAMを使用するかどうか設定ができます。  (現状ではファイルバッファのみの使用ですが将来的にはプログラムファイル等でも使用予定です。) 2016.5.12 ・Rename,Copyするとファイルが純正仕様から外れていたのを修正しました。(v0.99n以前は問題ありません。) 2016.5.11 ・グラフ式(Yn)から文字列メモリー(Str n)への変換を文字列のコピー構文でも可能にしてましたが純正と仕様が違ってしまったために純正仕様に戻しました。 (例)Y1→Str 1  これは純正同様にエラーになります。 ・グラフ式(Yn)メモリーは式として評価するので返り値は数値になります。(純正仕様) (例)Y1→A 2016.5.10 ・隠しメモリ領域を使うファイルバッファ関連で致命的バグがあったのを修正しました。 ・強制画面書き換えコマンドとしてPutDispDDコマンドを追加しました。 2016.5.9 ・サブフォルダに移動する場合にリストの一番上にサブフォルダの先頭ファイルが来るようにしました。 ・お気に入りリストのプログラムがカレントフォルダ以外にある場合はフォルダ名から表示されるようにしました。(但し先頭5文字までです。) ・今回より、隠しメモリ領域にファイルリストのバッファを移動してみました。(fx-9860GII以降)  これによりフォルダ移動を繰り返してもヒープメモリの断片化は発生しなくなります。 2016.5.8 ・Engコマンドを純正CasioBasic同様のEngモード切り替えとしました。  Engモードの状態を知るには(Eng)で読み出せます。  返り値0:EngOff  返り値1:EngOn ・Getkey1、Getkey2がプログラムの最後に来た時にコマンドが二回繰り返される不具合を修正しました。 ・お気に入りの最大数を超えた場合のエラーメッセージをFull Favoritesに変更しました。 2016.5.7 ・お気に入りリストがフォルダに対応しました。フォルダ移動してもお気に入りリストが消えることがありません。  サブフォルダからルートへの移動は[SHIFT]+[EXIT](QUIT)ですが、カーソルがリストの先頭にある場合は[EXIT]でルートに移動するように変更しました。 ・ファイルネーム入力時ににフォルダを指定すると別のフォルダ内のファイルにアクセスできます。  フォルダ区切り文字は"/"もしくは"\"(バックスラッシュ)になります。 (例)Prog "/SUB/SAMPLE" (例)Save "/SUB/TEST",Mat A (例)Load("SUB/TEST")→Mat A ・ファンクションメニュー描画コマンドFkeyMenu(を追加しました。 (例)FkeyMenu(1,"ABC")  一番左側のファンクションメニューエリアにABCが描画されます。 (例)FkeyMenu(6,"ABC",R)  一番右側のファンクションメニューエリアにABCが反転モードで描画されます。 (例)FkeyMenu(6,"",C)  一番右側のファンクションメニューエリアを消去します。 ・If〜ElseIfの動作を修正しました。 ・テキスト変換が[EXE]キーでも動作していたのを修正しました。 ・小文字行列名が整数モードで使えなかったのを修正しました。 ・お気に入りの最大数を超えた場合のエラーメッセージをFavorites Fullに変更しました。 ・今回のバージョンより設定保存ファイルが変更になりますので以前のバージョンまでとは設定ファイルの互換性が無くなります。 v0.99m 2016.5.4 テスト版(インタプリタのみ) ・Exp>Str()コマンドをグラフ式(Yn)から文字列メモリー(Str n)への変換だけですが実装しました。 (例)Exp>Str(Y1, Str 1)  尚、グラフ式(Yn)から文字列メモリー(Str n)への変換は、文字列のコピー構文でも可能です。 (例)Y1→Str 1 ・行列への代入で、行列が確保されていなかった場合はNo Matrix array に変更しました。 2016.5.2 ・Circle,F-LineのXorモードでの描画に不具合があったのを修正しました。 ・行列名における要素の型のデフォルト指定(Mat B, Mat C, Mat D, Mat W, Mat I, Mat L)を廃止しました。  デフォルトでは実数モードではすべて実数行列、整数モードではすべて整数行列となります。 ・キャラクタ入力でアルファベットのミニキャラクタ(F5)のTextコマンド対応文字が表示されなかった不具合を修正しました。 v0.99l 2016.4.16 テスト版(インタプリタのみ) ・?入力コマンドにおいて#や%のサフィックスがエラーになっていたのを修正しました。 2016.4.13 ・ストレージメモリにファイルが無い状態で不具合があったのを修正しました。 2016.4.10 ・ °(deg) r (rad) g (gra)の角度単位入力を追加しました。 ・60進数の入出力に対応しました。 (例)12°34°56.78°→A  Aの値は12.582438888889となります。 (例)A >DMS  画面右詰めで「12°34′56.78″」表示されます。  純正CasioBasicでは表示のみの変換に対してC.Basicでは文字列への変換が出来ます。 (例)A >DMS→Str 1  Str 1 に「12°34′56.78″」が入ります。 *角度単位入力の「°(deg)」と60進数の区切り「°」はキャラクタが違います。 v0.99k 2016.4.3 テスト版(インタプリタのみ) ・実数表示で正の指数値で(+)表示されてなかったのを修正しました。 ・負数の実数表示で指数桁が表示しきれなかった不具合を修正しました。 ・タイマー変数Ticksへの代入が出来なかったのを修正しました。 2016.3.27 ・エディタのジャンプ機能の任意行へのジャンプ([F1][F3])で現在の行番号を表示するようにしました。 v0.99j 2016.3.18 テスト版(インタプリタのみ) ・エディタにジャンプ機能を追加しました。  それによりファンクションキーアサインを一部変更しました。  -[F1] (TOP) ファイル先頭にジャンプします。  -[F2] (BTM) ファイル末尾にジャンプします。  ↓↓↓↓↓↓↓↓  -[F1] (JUMP) ジャンプサブメニューを表示します。   [F1] (TOP) ファイル先頭にジャンプします。   [F2] (BTM) ファイル末尾にジャンプします。    [F3] (GOTO) ファイルの任意の行にジャンプします。    [F5] (Skip↑) (セットアップで設定された)ページ数だけスキップアップします。    [F6] (Skip↓) (セットアップで設定された)ページ数だけスキップダウンします。  -[F2] (SRC) 文字列サーチモードに入ります。 ・ジャンプ機能に任意のページ数スキップする機能を加えたのでPageUp/Down機能を一部変更です。  [SHIFT]+{UP]  1ページ(6行)だけPageUpします。  [SHIFT]+[DOWN] 1ページ(6行)だけPageDownします。 ・[AC]キーでのブレークした時のポップアップから再開可能になりました。 [F1][EXE]キーで再開できます。 v0.99i 2016.3.15 テスト版(インタプリタのみ) ・エディタのRollUp/Down機能をPageUp/Down機能に名称変更しました。 ・セットアップにて改ページ数を1ページ(6ライン)単位で自由に設定可能になりました。  [SHIFT]+{UP]  指定ページ数PageUpします。  [SHIFT]+[DOWN] 指定ページ数PageDownします。 v0.99h 2016.3.12 テスト版(インタプリタのみ) ・ファイルリスト読み込み時にポップアップ&右上ビジーマーカー表示を追加しました。 ・エディタでファイルの現在位置を示すガイドマーカーを右端に追加しました。 ・エディタの検索の最後でフリーズすることがあるバグを修正しました。 ・エディタでRollUp,RollDown機能追加しました。  [SHIFT]+{UP]  50行程RollUpします。  [SHIFT]+[DOWN] 50行程RollDownします。 ・カッコ同士の乗算と関数の組み合わせがエラーになっていたバグを修正しました。 (例) (1+2)(3+4)^3 ・グラフ表示で画面外に出てしまうグラフが描画されないバグを修正しました。 v0.99g 2016.3.5 テスト版(インタプリタのみ) ・fx-5800P同様の配列初期化コマンドが使えるようになりました。 (例)100→Dim Z  {100,1}→Dim Mat Z  と同じになります。 (例)0→Dim Z  ClrMat Zと同じです。  テキストからの変換ではfx-5800P同様に  100→DimZ  と記述してもOkです。 ・プログラム読み込み時にメモリが足りないエラー&サブルーチンが見つからない場合のエラー処理が上手くいってなかったのを修正しました。 v0.99f 2016.3.2 テスト版(インタプリタのみ) ・変数一覧表示にて通常グローバル変数とローカル変数を区別することが出来るようになりました。  ローカル変数は=が反転キャラクター表示されます。 ・数式でのMat行列の表記において、Matを省略することが出来るようになりました。 (例)A[X]+B[Y]→X[Z]  Mat A[X,1]+Mat B[Y,1]→X[Z,1]と同じになります。 v0.99e 2016.2.29 テスト版(インタプリタのみ) ・Basic→テキスト変換時に一時出力命令は"Disps"に変換されますが改行はされないので、改行(CR,LF)を追加するようにしました。  ただし、一時出力命令の次が改行の場合は改行(CR,LF)を追加しません。 ・テキスト→Basic変換時に、コマンド後に空白が必要なコマンドがありますが、空白が無くても変換できるようになりました。  すべてのコマンドには対応していません。次のコマンドのみ空白無し変換に対応です。 Then Abs sin sinh Else Int cos cosh Default Frac tan tanh Save Log sin^-1 sinh^-1 Plot ln cos^-1 cosh^-1 Prog Sqrt tan^-1 tanh^-1 ・テキスト変換の兼ね合いでDoコマンドと間違えてしまうためにDotPut,DotGet,DotLifeの各コマンド名をdotPut,dotGet,dotLifeに変更していたのを元に戻しました。 ・お気に入りリストの一番下から上に移動できなくなっていたのを修正しました。 v0.99d 2016.2.27 テスト版(インタプリタのみ) ・テキストファイルからC.Basicソースファイルへの変換に対応しました。  拡張子(.txt)のテキストファイルをストレージメモリ上に置くとファイルリストに表示されてG1Mファイル同様に扱うことが出来ます。  BasicソースファイルのG1Mファイルは拡張子は表示されませんが、テキストファイルは拡張子(.txt)まで表示されます。  G1Mファイルと同様にそのまま編集、実行することが可能です。(変換時間が入るので少し時間がかかります。)  ファイルの変換のみの場合はファイルモードで[F6]+[F1]で変換を開始します。  テキストファイルの場合はG1Mに、G1Mファイルの場合はテキストファイルに相互変換します。  コマンドの変換規則はfx-CG20およびfx-FD10Proに準拠しています。 ・テキスト変換の兼ね合いでDoコマンドと間違えてしまうためにDotPut,DotGet,DotLifeの各コマンド名をdotPut,dotGet,dotLifeに変更しました。 v0.99c 2016.2.13 テスト版(インタプリタのみ) ・行列の要素の初期値として0が選択できるようになりました。  セットアップもしくはコメント欄での記述で行列の始まりを選択できます。 (例)#Mat 1   従来通り1から始まります。 (例)#Mat 0   {3,2}→Dim Mat A  確保される行列は A[0,0]〜A[2,1]となります。  同時に画面座標も0まで有効になります。これで全画面が描画対象エリアとなります (例)Pxlon 0,0 ・行列の型(1ビット、バイト、ワード、ロングワード、実数)が行列確保後に任意に変更できるようになりました。 (例)[[1,2,3,4][5,6,7,8]]→Mat A.B    Mat A→Dim Mat A.W  バイト型のMat A行列をワード型に変更できます。  要素数は変更後の型サイズに応じて変化します。  [[0x12,0x34][0x56,0x78]]→Mat A.W  と同じ結果になります。 (注意)1ビット型行列からの変更、また1ビット型行列への変更は行と列が反転します。  これは1ビット型行列はX,Y型で実装しているために通常のm,n型行列とは転置行列の関係になります。  {128,64}→Dim Mat A.P  LCD画面のバッファとして確保します。  Mat A→Dim Mat A.B  バイト型行列に変更すると、  要素サイズは{64,16}になります。 v0.99b 2016.2.9 テスト版(インタプリタのみ) ・デバッグモードを拡張しました。  ファイルモードの[SHIFT]+[F6]でデバッグモードに入ります。  [F1]:カーソル位置よりプログラムを再開します。従来のContと同じです。  [F2]:カーソル位置よりトレース実行。コマンド実行後、即エディタ画面に戻ります。  [F3]:カーソル位置よりトレース+ステップオーバー。サブルーチンは一気に実行されます。ステップ実行後、即エディタ画面に戻ります。  [F4]:カーソル位置よりステップアウト。サブルーチンの終了まで一気に実行します。ステップ実行後、即エディタ画面に戻ります。  [F5]:エディタリスト表示とプログラム実行画面の切替をします。切替後も実行画面が維持されるので実行画面そのまま[F1]-[F4]のデバッグ動作が可能です。  [F6]:デバッグメニューとエディタメニューを切り替えます。実行画面(グラフィック/テキスト)の場合はファンクションメニュー表示をします。 グラフィック画面とテキスト画面の切替は[SHIFT]+[F6]です。 ・エラーが起きた場合の処理を変更しました。  従来はプログラム実行をすべて中止してエディタに戻っていたのを、実行中断してデバッグモードでエディタに戻るようにしました。  エラー箇所を修正後、中断箇所よりプログラムに復帰することが可能になりました。 ・ACBreakコマンドに機能追加しました。  直後にStopコマンドを付けることで、ACBreakStopとなりますが、  これ以降に実行されるACBreakコマンドをすべてキャンセルします。  セットアップでのキャンセルと同じです。 ・バックライトコマンドを追加しました。バックライト装備のfx-9860GIIのみ対応となります。 (書式)Backlight n  n=0 バックライト消灯  n=1 バックライト点灯  n=2 バックライト反転 (書式)Backlight  バックライトの状態を返します。 v0.99a 2016.2.7 テスト版(インタプリタのみ) ・Sprintf、Locate、Textでの#プリフィックスは実数式評価としました。  整数モードでは常に整数値しか得られないので、#プリフィックスを付けた式では実数式評価で実数値が返ります。  整数モードでしか意味は無いのですが整数モードにおけるSprintfやLocate、Textコマンドで実数値を扱うことが出来ます。 (例)Locate 1,1,123+0.456  整数モードでは整数値に丸められて123となってしまうのですが、 (例)Locate 1,1,#123+0.456  #プリフィックスを付けると実数で123.456と表示されます。  式評価は実数で行われるために整数変数には%指定を付ける必要があります。 ・SH4A版のfx-9860GIIのGetkeyコマンドにてGetkey1〜2と同様に[SHIFT]+[OPTN]でのバックライト制御が可能になりました。  SH3版は以前よりバックライト制御が可能です。  [SHIFT]+[AC]での電源OFFには未対応です。 ・一定時間キー入力待ちをするGetkey3追加しました。  Getkey1系のコマンドではなくGetkey系のコマンドとなります。 (例)Getkey3(128)  コマンド実行時のタイマーを基準として128Ticksカウント(=1秒)のウエイト期間中にキー入力があれば最後に押されたキーコードが返ります。 (例)Getkey3(128,A)  Aをタイマーの初期値として現在のタイマー値が128Ticksカウント経つまでキー待ちをします。 v0.99 2016.2.5 テスト版(インタプリタのみ) ・プログラムをステップ実行するデバッグモードを追加しました。  ファイルモードの[SHIFT]+[F6]でデバッグモードに入ります。  [AC]での一時中断もしくはACBreakコマンドで中断した後もデバッグモードになります。  [F1]:プログラムを再開します。従来のContと同じです。  [F2]:ステップ実行となります。ステップ実行後、即エディタ画面に戻ります。  [F6]:プログラム中断前の画面(グラフィック/テキスト)を表示します。 グラフィック画面とテキスト画面の切替は[SHIFT]+[F6]です。 ・Str文字変数の実体となるMat行列を任意指定できるようになりました。  Str変数を使う前にコメント欄での記述となります。 (例)'#Str A  Str変数をMat Aとして確保します。  {20,65}→Dim Mat A.B  と同じです。 (例)'#Str B,30,256  Str変数をMat Bとして30個、255文字まで可能な変数として確保します。 ・1/128sのタイマー変数として%に加えてTicksを追加しました。機能的には全く同じです。 v0.98 2016.2.3 テスト版(インタプリタのみ) ・カナ文字+記号文字のtextコマンド表示に対応しました。  キャラクタ選択画面で[OPTN]を押すとTextコマンドで表示される文字になります。 ・Mat行列の文字列扱いで&に加えて$も使用できるようになりました。 (例)$Mat A[1] &Mat A[2] ・CasioBasic互換の文字列関数として、 + 文字列同士の連結 StrJoin( StrLen StrCmp( StrSrc( StrLeft( StrRight( StrMid( Exp( StrUpr( StrDwr( StrInv( StrShift( StrRotate( Str 1-20  を追加しました。  純正仕様とほぼ互換ですが若干の差異があります。  Str 1-20はMat行列のs(小文字)を暗黙的に使用します。  Str文字列の初期化は何も指定なければ次のようにMat s行列の初期化が自動的に行われます。  {20,65}→Dim Mat s  ということで、  Str 3は$Mat s[3]または&Mat s[3]と同義となります。  Str文字列はデフォルトで20まで、格納可能文字列数は1バイト文字で64文字までとなりますが、  事前に  {30,256}→Dim Mat s  というような初期化をしておけばStr文字列は1-30まで使え、格納可能文字列は255文字までとなります。  fx-9860GIIで使われる文字は1バイト文字と2バイト文字があり、  一部の関数と記号、特殊文字、カナ文字が2バイト文字となりますので、  内部では1バイトと2バイト文字が混在する状態となりますが、文字関数での扱いは純正同様にすべて1文字扱いとなります。  文字列が格納された行列に直接アクセスする場合は文字の位置に注意して下さい。 ・Exp(は以前のEval(と同じなのでEval(を削除しました。 ・追加の文字列関数としてC言語仕様のSprintf(を追加しました。 (仕様)Sprintf( "書式指定子" , 引数1[ ,引数2 , 引数3]) (例)Sprintf("A=%4d B=%3.2f",%A,#B)→Str 1   A=1234,B=45.678の場合、  Str 1に代入される文字列は  "A=1234 B=45.68"  となります。  書式指定はC言語でのsprintfと互換というかそのままC言語仕様となります。 引数は3つまで指定することが出来、整数/実数/文字列が指定可能です。  %プリフィックスで整数指定、#プリフィックスで実数指定となります。 プリフィックスを省略した場合はその時点での実行モード(実数/整数)となります。 書式指定と引数の対応のエラーチェックは無いので、Sprintf(コマンドでエラーが起きた場合はリセットか再起動となる可能性があります。 v0.97a 2016.1.25 テスト版(インタプリタのみ) ・サブプログラムが多くなると(15以上)何も出来なくなるバグを修正しました。  同時に開けるサブプログラム数を15から30に増やしました。 ・行列のサイズを取得する関数を追加しました。 ・ElemSize(  1要素のサイズ(ビット)を返します。 (例) ElemSize( Mat A ) ・ColSize(  {m,n}のm,行サイズを返します。 ・RowSize(  {m,n}のn,列サイズを返します。 v0.97 2016.1.24 テスト版(インタプリタのみ) ・Mat行列への文字列の代入、初期化対応しました。 (例)["ABC","TEST","1+3+5"]→Mat A  バイト型のMat A[3,6]行列を自動的に確保してそれぞれの要素に文字列を配置します。  Mat A[1,1]="ABC"  Mat A[2,1]="TEST"  Mat A[3,1]="1+3+5"  となります。  文字列対応コマンドで"ABC"にアクセスするには&Mat A、もしくは&Mat A[1],もしくは&Mat A[1,1]となります。  "1+3+5"をアクセスするには&Mat A[3],もしくは&Mat A[3,1]となります。 (例)Locate 1,1,&Mat A  Locate 1,1,"ABC"と同じです。 (例)Locate 1,1,&Mat A[3,3]  Locate 1,1,"3+5"と同じです。 現バージョンでの文字列対応コマンドです。””の代わりに&Mat形式で使用します。 ・”” (例)&Mat A[1]   "ABC"と同じです。 ・? (例)?→&Mat A  行列Mat Aに文字列を入力します。確保している要素数で文字数が制限されます。 ・Locate ・Text ・LocateYX ・Eval( (例)Eval("1+2+3")→6 (例)Eval(&Mat[3,3])→8 文字列を数式として評価、値を返します。 ・ACBreakコマンドを追加しました。  プログラム中で[AC]での一時中止と同じ結果となります。  セットアップにてACBreakコマンドの有効/無効の切り替えが出来ます。  無効(off)にした場合はスルーされてプログラムの実行に何も影響を及ぼしません。 ・ファイルモードでCopy機能を追加しました。  選択されたファイルを別のファイル名でコピーします。同名の場合は何もしません。  ファンクションキー不足のためにファンクションキーの割当を一部変更しました。 v0.96 2016.1.22 テスト版(インタプリタのみ) ・C.Basicソースファイルからテキストファイルへの変換に対応しました。  ファイルモードで[SHIFT]+[F6]で変換を開始します。 v0.95a 2016.1.20 テスト版(インタプリタのみ) ・IsExist(コマンド追加しました。  指定されたファイルが存在しない場合は0が返り値となります。  ファイルが存在する場合はファイルサイズが返り値となります。 (例)IsExist("TEST")  "TEST.bin"が存在すればファイルサイズが、存在しなければ0となります。 v0.95 2016.1.19 テスト版(インタプリタのみ) ・全小文字変数がローカル変数扱いだったのをローカル変数にする変数を任意指定できるように変更しました。  デフォルトでは小文字変数はすべてグローバル変数となりますが、  プログラム内でLocalコマンドで変数指定するとその変数はそのプログラム内だけで使われるローカル変数となります。 (例)Local x,y,x  ローカル変数としてx,y,zを指定します。              指定できるのは小文字変数のみで最大10個まで指定できます。  またこの変数の順で引数付きProgでローカル変数に代入されます。 (例)サブプログラム"TEST"内で、    Local x,y,x  (記述する位置はサブプログラム内であればどこでも可です。)    Prog "TEST",123,456,N  サブプログラム"TEST"の実行時に、ローカル変数としてx,y,zが確保され、  123→x、456→y、N→z、それ以外はグローバル変数となります。 ローカル変数が使えるようになったことで再帰プログラムも可能になりましたが、 現状ではメモリ制限でネスト30層程度までとなっています。 v0.94 2016.1.16 テスト版(インタプリタのみ) ・Save/Loadコマンド追加しました。 (例)Save "TEST",Mat A (例)Load("TEST")→Mat A  Mat A行列の内容を保存、読み込みます。  ファイル名は8文字まで、拡張子は[.bin]固定です。  現状、アクセスできるのは行列データのみとなります。  保存形式はヘッダ無し、内部バイナリーデータそのままのデータファイルとなります。 (例)Save "TEST",Mat A[5,1]  Mat A[5,1]より最後まで保存します。 (例)Load("TEST",16)→Mat A[10,1]  保存されたデータの16バイト目のデータからMat A[10,1]に読み込みます ・Prog "〜"コマンドで引数を記述することが出来るようになりました。  その変更に伴い、小文字変数はすべてローカル変数扱いとなります。  引数の一番目はa、二番目はb、以下zまでのローカル変数に自動的に代入されます。 (例)Prog "TEST",123,456,N  サブプログラム"TEST"の実行時には、  123→a、456→b、N→c、d〜zは不定値となります。 ・Gosubコマンド追加しました。 (例)Gosub A  Label Aから始まるプログラムを実行しReturnコマンドで復帰します。 (例)Gosub A,123,456  引数もProgコマンド同様に使えますが、同じプログラム内なので大域変数と同じ扱いです。 v0.93 2016.1.10 テスト版(インタプリタのみ) ・Dot系コマンドのエラー処理が甘かったのを修正しました。 ・1ビットバイナリー型行列を追加しました。  行列確保時に[.P]および[.p]を付けると1ビット行列になります。  1要素の取る値は0と1だけとなります。  C.Basicで指定できる行列の要素指定をまとめると、  デフォルトで行列名のアルファベットが  C,Bは(8ビット)バイト行列となります。値の範囲は(-128〜127)です。  D,Wは(16ビット)ワード行列(-32768〜32767)  I,Lは(32ビット)ロング行列(-2147483648〜2147483647)  また、行列確保時にサフィックス指定するとデフォルトに優先して要素指定できます。  [.P]または[.p]で(1ビット)バイナリー行列  [.B]または[.b]で(8ビット)バイト行列  [.W]または[.w]で(16ビット)ワード行列  [.L]または[.l]で(32ビット)ロング行列  [.F]または[.f]で(64ビット)倍精度実数行列 ・Fillコマンドを追加しました。  C.Basicでは、123→Mat A の形式でサポートしていた行列の全要素に同じ数値を代入する機能ですが、  純正CasioBasicに標準装備のコマンドがありますので追加しました。 (例)Fill(123,Mat A) ・Trnコマンドを追加しました。 転置行列に変換します。  純正CasioBasicとは違い、行列そのものを転置変換します。  (例)Trn Mat A 行列Aを転置変換します。  さらに、1ビット行列は画面のVRAMと同じ構成となるので、  [.V]または[.v]指定するとVRAMを127行x63列の行列に割り当てて読み書き出来るようにしてみました。(暫定機能)  (例){127,63}→Dim Mat G.V   Mat Gにアクセスすることでその時点でのVRAMを直接読み書きできますが表示系コマンドではないので、   画面表示する場合は、コマンド実行後に強制表示させる必要があります。  (例){127,63}→Mat G.V Text 1,1,"" // グラフィック画面選択(他のグラフィックコマンドでも可) 1→Mat G[63,31] Text 1,1,"" // グラフィック画面強制表示(他のグラフィックコマンドでも可) グラフィック画面の真ん中に点を打ちます。 PxlOn 31,63と同じです。  (例){127,63}→Mat G.V Locate 1,1,"" // テキスト画面選択(他のテキスト系コマンドでも可) 1→Mat G[63,31] Locate 1,1,"" // テキスト画面強制表示(他のテキスト系コマンドでも可) テキスト画面の真ん中に点が打てます。 v0.92 2016.1.4 テスト版(インタプリタのみ) ・ElseIfがIfの入れ子構造の中で使われた場合に期待した動作にならないバグを修正しました。 ・行頭の空白の読み飛ばしが上手く行かないところがあったのを修正しました。 v0.91 2016.1.3 テスト版(インタプリタのみ) ・ファイル名を変更した時、および新規ファイルを作成した時にファイルリストで違うファイル名を示していたのを修正しました。 ・(テスト機能)Mat行列エディタにおいて2進数、16進数での表示ができるようになりました。  行列編集モードで[F5]を押すと2進数表示、[F6]で16進数表示になります。  10進数表示に戻すには再度[F5][F6]を押します。  ただし、2進数表示はバイト(1バイト)とワードタイプ(2バイト)の行列までです。 v0.90a 2016.1.1 テスト版(インタプリタのみ) ・数値またはファイル名入力時にフリーズすることがあったのを修正しました。 v0.90 2015.12.31 テスト版(インタプリタのみ) ・定数値において、C言語同様のプレフィックス(0Xまたは0B)を付けると32ビットまでの16進数、2進数表記が使用出来るようになりました。 (例)0XFF,0B1010011 ・Mat行列初期化コマンド[[ ]]において、改行&空白を入れることが可能になりました。 (例)  [[0B11001100,   0B00110011,   0B11001100,   0B00110011,  ]]→Mat A.B ・ファイルの書き換えや削除、リネームしない場合はファイルリストを再読み込みしないようにしました。  ファイルが変更されない場合のファイルリスト表示で必要以上に待たされることが無くなります。 v0.89 2015.12.27 テスト版(インタプリタのみ) ・行頭に空白を入れてもエラーにならないようにしました。  インデントを付けて見易く出来ます。 ・ElseIfコマンドを追加しました。 (例) If A:Then Locate 1,1,"A" ElseIf B:Then Locate 1,2,"B" EndIf ・Ifに対応するIfEndが無い場合にエラーとするかどうかをセットアップで選択出来ます。  セットアップでチェックをOnにすれば実行時に対応するIfEndが無いIfコマンドの箇所でエラーになります。 ・Switchコマンドを追加しました。C言語同様フォールスルー可です。ただしDefaultは最後でないと期待した動作になりません。  新規コマンドはSwitch、Case、Default、SwitchEndとなります。Breakは従来コマンドです。 (例) Switch A: Case 1:Locate 1,1,"A" Break Case 2:Locate 1,2,"B" Case 3:Locate 1,3,"C" Break Default Break SwitchEnd v0.88 2015.12.24 テスト版(インタプリタのみ) ・カナ文字を使うとエディタがフリーズするバグを修正しました。 ・キャラクタ連続入力モードで1文字目が入力されなかったのを修正しました。 ・プログラム内でタイム変数%を変更した場合にプログラムの時間計測(TimeDsp)が不正確になるのを修正しました。 ・Locateコマンドの表示指定を追加しました。  コマンドの最後に[,R]で反転表示となります。 (例)Locate 1,2,"Test",R   "Test"がグラフィック座標(1,2)に反転表示で表示されます。 ・Textコマンドの表示指定を追加しました。  コマンドの最後に[,R]で反転表示、[,O]でOr表示、[,V]で反転Or表示となります。  [.N] Normal  [.R] Reverse  [,O] Or  [,V] reVerse or (例)Text 20,80,"Test",R   "Test"がグラフィック座標(80,20)に反転表示で表示されます。 ・グラフィック画面にLocateと同じ文字表示をするLocateYXコマンドを追加しました。  座標指定はTextコマンドと同じくY座標が先になります。  コマンドの最後に[,R]で反転表示となります。 (例)LocateYX 20,80,"Test",R   "Test"がグラフィック座標(80,20)に反転表示で表示されます。 ・グラフィック画面のビットマップデータをビット単位で読み取るReadGraph(コマンドを追加しました。 (書式1)ReadGraph(px1,py1,px2,py2)→Mat A   グラフィック画面の(px1,py1)-(px2,py2)の範囲をMat A行列(強制的にバイト指定)に取り込みます。   行列は事前に確保しておく必要はありません。自動的に適切な行列サイズで確保します。   WriteGraphコマンドでそのまま使えるデータとなります。 ・ビットマップデータを表示するWriteGraphコマンドを追加しました。  ビットマップデータは予めMat行列に入力しておきます。 (書式1)WriteGraph x,y,dx,dy,Mat A ,P1[,P2]   グラフィック画面の座標(x,y)より幅dx、高さdyの範囲にMat Aのデータを描画します。   P1はデータの表示前加工指定で[,N]でそのまま加工無し、[,R]で反転、[,M]でメッシュ加工、   P2は指定無しでオーバーライト表示、[,A]でAnd表示、[,O]でOr表示、[,X]でXor表示となります。 (例)[[1,2,4,8,16,32,64,128]]→Mat A   WriteGraph 80,20, 8,8, Mat A, N   グラフィック画面の座標(80,20)より斜めの線[/]が描画されます。 (書式1)WriteGraph x,y,dx,dy,Mat A[m,n] ,P1[,P2]   グラフィック画面の座標(x,y)より幅dx、高さdyの範囲にMat Aの[m,n]からのデータを描画します。 (例)[[16,32,64,128][128,64,32,16]]→Mat A   WriteGraph 80,20, 4,4, Mat A[1,1], N   WriteGraph 80,24, 4,4, Mat A[2,1], N   グラフィック画面の座標(80,20)より[<]の図形が描画されます。   WriteGraph 80,20, 4,8, Mat A, N   でも同じ結果となります。 ビットマップデータは8ビット単位で左上が基準になります。 v0.87b 2015.12.20 テスト版(インタプリタのみ) ・エディタ等でのキーリピート時間の設定が出来るようになりました。  セットアップから指定できます。  Key 1st time: 25ms〜1000ms (デフォルト値 500ms)   リピート開始までの時間 (25ms単位)  Key Rep time: 25ms〜500ms (デフォルト値 125ms)   リピート継続時間 (25ms単位) ・変数表示を区別しやすいように整数変数に%を付けました。 v0.87a 2015.12.19 テスト版(インタプリタのみ) ・新コマンドでの細かなバグ修正しました。 v0.87 2015.12.18 テスト版(インタプリタのみ) ・エディタでG<>T切り替えを[SHIFT]-[F6]に実装しました。そのために検索[SRC]キーの割当が[F5]に移動しました。 ・RectおよびFillRectコマンドを追加しました。Dot系コマンドと同じ実座標指定となります。  (例)Rect 1,1,127,63    画面いっぱいに枠を描きます。  (例)FillRect 1,1,127,63    画面を塗り潰します。 ・グラフィックコマンドの末尾に[,C]を加えると消去します。[,X]で反転します。  (例)FLine 1,1,30,20,C  対象コマンドは、Line,FLine,Vertical,Horizontal,Circle,Rect,FillRectとなります。 ・StoPict/RclPictコマンドを内部ヒープメモリで動作するモードを追加しました。  セットアップにてストレージメモリとの切り替え動作になります。  Pictファイルの互換が無くなる代わりに速度向上しました。  Basic動作上の互換性は確保されていますので、CasioBasicのソースはそのままで動きます。 v0.86 2015.12.15 テスト版(インタプリタのみ) CasioBasic準拠のMat行列の個別初期化に対応しました。 (例)[[1,2,3][4,5,6]]→Mat A v0.85 2015.12.15 テスト版(インタプリタのみ) 1/128秒単位でカウントされる時間計測用の%変数への初期化が出来るようになりました。 (例)0→% v0.84 2015.12.14 テスト版(インタプリタのみ) キャラクタ選択画面で連続入力モードを追加しました。 [SHIFT]もしくは[F1]〜[F6]を二度押しすることで連続入力モードになります。 v0.83b 2015.12.13 テスト版(インタプリタのみ) SDKのコンパイルをSPEEDオプション指定に変更しました。 v0.83比で5%程度高速化しました。 v0.83 2015.12.12 テスト版(インタプリタのみ) コマンド入力「CMD」画面でファンクションキーに「=>」を追加しました。 比較演算子は[SHIFT]キーを押すと6種類全部出てきます。 「’」(コメント)の直後が「’」(コメント)の場合を 「’」(コメント)の直後が「/」の場合に変更しました。 「’/」以降はコメントではなくコマンドとして実行します。 C.Basic動作時にのみ実行するコマンドを記述できます。 「=>」コマンドが「true/false」の「false」で終了した場合の処理を修正しました。 v0.82 2015.12.11 テスト版(インタプリタのみ) 8文字のファイル名で保存やリネームするとファイルが壊れていたのを修正しました。 RanInt#関数のバグを修正しました。 ストレージメモリの空き少ない場合に保存やリネームをしようとした場合、 既存のファイルを保護するために”Not enough SMEM”エラーメッセージを出すようにしました。 エラーが出た場合はストレージメモリの最適化処理が必要です。 「’」(コメント)の直後が「’」(コメント)の場合、 「’’」以降はコメントではなくコマンドとして実行します。 C.Basic動作時にのみ実行するコマンドを記述できます。 ライフゲーム専用コマンド、DotLife(コマンドを追加しました。 (例)DotLife( Mat A, x1,y1,x2,y2)→Mat B  Mat Aの座標(x1,y1)-(x2,y2)の範囲をライフゲーム演算してMat Bに格納します。  Mat AとMat Bは同じサイズの行列である必要があります。  コマンド実行後に(x1,y1)-(x2,y2)の範囲よりもセルが広がった場合、その矩形範囲より±1の座標が整数変数に自動的に入ります。  整数変数L : 左端座標-1  整数変数R : 右端座標+1  整数変数T : 上端座標-1  整数変数B : 下端座標+1 v0.81 2015.12.9 テスト版(インタプリタのみ) ’(コメント)の飛越先をキャッシュするようにして高速化しました。 コメントが短い場合は効果が出ない場合があります。 v0.80 2015.12.5 テスト版(インタプリタのみ) インタプリタを符号無から符号有ベースに変更しました。その結果、多少高速化しました。 それプラス、式評価の見直しで単純な式(2項までの式)を高速化しました。 複雑な式では遅くなる場合もあります。 Ifコマンドの飛越先をキャッシュするようにして高速化しました。 飛越先が短い場合は効果が出ない場合があります。 v0.74 2015.11.29 テスト版(インタプリタのみ) アイコン文字を変更しました。 一行の文字数が画面範囲以上になった場合にカーソル移動がバグるのを修正しました。 (例)DotTrim(px1,py1,px2,py2)→Mat A  グラフィック画面からトリミング入力の場合に  0ではないデータの矩形領域の右上X,Yの座標が+1ずれていたのを修正しました。 v0.73 2015.11.18 テスト版(インタプリタのみ) 文字&数値入力時の[A<>a][CHAR]ファンクションキーの位置を調整しました。 エディタの検索で直前にクリップ機能で範囲指定していればその範囲を検索文字列として検索します。 DotG(→DotGet( DotP(→DotPut( コマンドの名称変更しました。 DotPut(コマンドの動作異常を修正しました。 新たにDotTrim( コマンドを追加しました。 (例)DotTrim(Mat A, x1,y1,x2,y2)→Mat B Mat行列内の[X1,y1]-[x2,y2]範囲の0ではないデータの矩形領域をトリミングしてMat B行列にコピーします。 コピーする行列が確保されてない場合は新たに確保されます。 (例)DotTrim(px1,py1,px2,py2)→Mat A グラフィック画面からトリミング入力、 グラフィックの(px1,py1)-(px2,py2)の範囲のドットが打たれている矩形領域をMat A行列にコピーします。 どちらの場合も、矩形領域サイズ(Mat行列の確保サイズ)はX,Y変数に自動的に入ります。 0ではないデータの矩形領域の右上X,Y座標は小文字変数x,yに自動的に入ります。 v0.72 2015.11.17 テスト版(インタプリタのみ) 2バイトコマンド系文字列のサーチが上手くいかなかったバグを修正しました。 キーバッファをクリアしてから入力するGetkey2を追加しました。 SH3機での入力が上手くいかない場合はGetkey1の代わりにGetkey2を使用してください。 v0.71 2015.11.16 テスト版(インタプリタのみ) Continueモードのバグを修正しました。 エディタでサーチ機能を追加しました。 使用方法はCasioBasic互換です。 v0.70 2015.11.15 テスト版(インタプリタのみ) サブプログラムが読み込めない時のエラー処理を強化しました。 読み込めなかったプログラム名、およびエラー箇所をエディタで示します。 Continueモード追加しました。 [AC]Breakでストップした後、エディタの[F6]がContメニューに変わります。 ストップしたところ、または任意の箇所よりプログラムを再開できます。 v0.66 2015.11.14 テスト版(インタプリタのみ) Getkey1およびオーバーライトモードのバグを修正しました。 Eng,Norm,Fix,Sciの読み出し対応しました。 Engモードは変数Engで取得できます。 返り値0:EngOff 返り値1:EngOn Norm、Fix、Sci はそれぞれ引数に負数を指定すると現在の設定値を返します。 ()は必要はないです。 現在の設定がNorm1の場合の返り値は、 Norm (-1)で1 Fix (-1)では-1 Sci (-1)では-1 現在の設定が Fix 8の場合は、 Norm (-1)で-1 Fix (-1)では 8 Sci (-1)では-1 という風になります。 v0.65 2015.11.14 テスト版(インタプリタのみ) Mat行列の表示&編集モードの縦横逆表示に対応しました。 行列(m,n)および行列(x,y)表示の切り替えを追加しました。 ?コマンドのバグ修正しました。 v0.64 2015.11.13 テスト版(インタプリタのみ) 変数およびMat行列の表示&編集モードに全要素の一括初期化を追加しました。 Getkeyのキーが押されるまで待つ版、Getkey1を新規追加しました。 SDKのGetKeyと同じですがキーコードはCasioBasicのGetkey互換です。 v0.63 2015.11.12 テスト版(インタプリタのみ) DotP( Mat A[x,y], x1,y1, x2,y2)→Mat B Mat A行列の[x,y]を始点として、Mat Bの[x1,y1]-[x2,y2]の範囲にコピーします。 Mat Bがコピー範囲が収まる広さを確保していない場合は、Mat Bに収まる範囲でコピーします。 グラフィック画面への転送は行いません。 DotP( Mat A[x,y], x1,y1, x2,y2) Mat A行列の(x,y)の要素を始点として、画面上の(px1,py1)-(px2,py2)の範囲に点を打ちます。 DotG( px1,py1, px2,py2)→Mat A[x,y] 画面上の(px1,py1)-(px2,py2)の範囲をMat A[x,y]を始点として取り込みます。 指定範囲よりも行列が足りない場合は行列サイズまで取り込みます。 行列確保で1要素のバイト数を個別に指定できるようにしました。 {127,63}→Dim Mat A.b のように最後に[.b]または[.B]を付けるとバイト行列になります。 同様に、 [.w]または[.W]でワード行列 [.l]または[.L]でロング行列 [.f]または[.F]で倍精度実数行列 実数モードでは実数行列が基本で整数モードでは4バイトロング整数が基本ですが これで自由なバイト構成でMat行列を確保できます。 v0.62 2015.11.11 テスト版(インタプリタのみ) 整数変数は%、倍精度変数は#を付けると精度指定でアクセスできます。 A%→A# 整数変数のAより倍精度変数Aにコピーします。 倍精度値を整数値に変換する場合、範囲に収まらない場合は0になります。 整数の初期化で整数、倍精度、個別に指定できるようになりました。 0→A~Zの形式に加えて、 0→A~Z# 倍精度変数を初期化します。 0→A~Z% 整数変数を初期化します。 Mat行列の全要素の初期化に対応しました。 0→Mat A Mat A行列の全要素を0で初期化します。 左辺は任意の値で初期化できます。 DotP(コマンドを追加しました。 DotP( Mat A, x,y, px1,py1, px2,py2) Mat A行列の(x,y)の要素を始点として、画面上の(px1,py1)-(px2,py2)の範囲に点を打ちます。 v0.61 2015.11.10 テスト版(インタプリタのみ) Locate,Text文字列バッファオーバーフローをしないようにしました。 1/128sのタイマーを%変数に割り当てました(暫定) 同じ要素数、バイトサイズのMat行列同士のコピー(だけ)を追加しました。 v0.60 2015.11.9 テスト版(インタプリタのみ) 整数版と統合しました。 実数版との切り替えはSetupから設定するか、 プログラムのコメントで '#CBINT または '#CBint と記述するとそれ以降のプログラムは整数モードで動きます。 通常の実数モードに戻すには '#CBASIC または '#CBasic と記述します。 通常変数はそれぞれのモードで独立しています。 ただし、Mat行列は共通です。 お気に入りモードの上下移動、およびMat行列の表示&編集モードを追加しました。 v0.50 2015.11.7 テスト版(インタプリタのみ) fx-5800P準拠のお気に入りモード追加しました。 それに伴い、設定&変数の保存に対応しました。 メインメモリに自動保存されます。 ファイル表示をオリジナルの表示形式に合わせました。 v0.42 2015.11.3 テスト版(インタプリタのみ) Mat行列のバイト構成を一部変更しました。 行列名のアルファベットが C,Bは1バイト行列となります。(-128〜127)です。 D,Wは2バイト行列です。(-32768〜32767) I,Lは4バイト行列です。(-2147483648〜2147483647) それ以外は従来同様実数行列です。 大文字小文字入力での表示を変更しました。 ファイル表示リスト順でフォルダは最後尾に表示するようにしました。 v0.41 2015.11.1 テスト版(インタプリタのみ) カタカナ対応しました。 v0.40 2015.10.31 テスト版(インタプリタのみ) 入力ルーチンを2バイト対応しました。?や変数値入力で2バイト関数が使えます。 CATALOGキーが使えなくなっていたのを修正しました。 グラフ表示が1ドットずれていたのを修正しました。 v0.36 2015.10.27 テスト版(インタプリタのみ) プログラム開始時にグラフィック画面が消去されていたのを修正しました。 v0.35 2015.10.25 テスト版(インタプリタのみ) fx-5800P互換コマンド入力でのファンクションキー部分追加しました。 v0.34 2015.10.25 テスト版(インタプリタのみ) サブルーチン内でのエラー&ブレークでエディタ画面に上手く戻れないのを修正しました。             ファイル名入力でのデフォルト入力をALPHAモードにしました。 v0.33 2015.10.24 テスト版(インタプリタのみ) ENGモード追加しました。             MOD()関数のバグ修正しました。 エディタのCopy&Pasteモードのプログラムを走らせた後におかしくなる不具合修正しました。 v0.32 2015.10.20 テスト版(インタプリタのみ) エディタのカーソル移動をCasioBasic準拠にしました。 エディタのカーソル形状がALPHAモードで変わらなかったバグを修正しました。 v0.30 2015.10.18 テスト版(インタプリタのみ) ファイルのRenameに対応しました。 エディタにCopy&Paste追加しました エディタにfx-5800P準拠のコマンド選択画面を追加しました。 v0.21 2015.10.17 テスト版(インタプリタのみ) Plotコマンドのみだと画面表示されないバグ解消(^^; Plotコマンドプログラム終了時の動作改善。 RclPictで11以上が動作しなかったバグの修正。 指数のみ(e10等)形式入力対応。 表示形式のNorm1,Norm2対応。 (Norm 0〜15のうち1と2はCasioBasic互換、それ以外は有効桁指定。デフォルトはNorm1。) ?Aコマンド修正しました。 v0.20 2015.10.16 テスト版(インタプリタのみ) Plotコマンドの修正。 Circleコマンド修正。 数値表示修正&桁数指定。(Fix,Sci,Rndコマンド追加) エディタでキャラクタ選択画面追加。 その他、細かな修正。 v0.10 2015.10.12 テスト版(インタプリタのみ)