PC-6001用互換BASIC変更履歴
2014.5.20
Ver.0.3.2公開。
- グラフィック文字が入力できるように見えて実はできない不具合を修正。
- PLAY文のNコマンドが正しく動かない不具合を修正。
2014.5.19
Ver.0.3.1公開。
2014.5.18
Ver.0.3公開。
- スクリーンエディタ実装。
- 対応ROM内ルーチンが少し増えました。(0010h,11B8h,11DAh,1260h,12A9h,1DBBh,2576h,2583h,26C7h)
- 同梱のbdf2cgromに-asciiオプションを追加。
- Ver.0.2のバグを多数修正。
- PAGEキーでグラフィック画面を表示している時にSTOPキーを押してもテキスト画面に戻らない
- P6T形式のファイルでオートスタートが効かない場合がある
- プロンプトを表示するINPUT文で?Redo from startになると入力後エラーになる
- INPUT文で入力した文字列の頭とお尻のスペースがカットされない
- ファンクションキーをセットした時、後ろにゴミが付く場合がある
- 何かの値の後にすぐ続けて関数があると、前の値が無視される
- CONSOLE範囲外でのPRINT CHR$(&H1E);及びPRINT CHR$(&H1F);の挙動が違う (Ver.0.2で直したつもりが不完全だった)
- 行番号、How Many Pages?、PLAY文のMパラメータで、65536〜65539が0〜3とみなされる
- CONTした時、元のページに戻らない
- PRINT CHR$(10);で行頭に戻ってしまう
- CONSOLE実行直後にスクロール範囲より下でもカーソル位置がそのまま
- キー入力ルーチン(0FBCh,103Ah)でSTOPやESCが取得できない
- KEY 0,"..."がエラーにならない
- CONTに対する動作がいろいろおかしい場合がある
- PRINT SPC(0)で空白が256個出力される
- スクリーンモード3または4でスクロール範囲を1行にしてスクロールさせるとおかしくなる
- SQR()の結果が間違っている
- テキスト画面のLCOPYがおかしい
- たまにカーソル表示が画面に残る
- PRINT/INPUTで#の後のデバイス番号判定が不完全
- スクリーンモード3のPRINTでコンマを使った時の表示位置が間違っている
- サイズの異なる文字列同士の比較が正しくない場合がある
- 文字列と数字の大小比較がエラーにならない
- PAINTの塗り方が正しくない (fuzzballさん、ありがとうございます)
- CLOADで実際より短いファイル名を指定した時にもFoundになる
- DIM A(-1)などとすると暴走する
- END命令のたびにスタックを消費する
- IF...GOTOの後が数字でなくコマンドだった場合にエラーになる
- DATA...:コマンド と打ち込んだ場合の中間言語変換がおかしい
- DATA"...":がREADで読めない
- PRINT#-1によるテープ出力で、最後の改行が出力されない
2014.2.23
Ver.0.2公開。
- ダイレクトコマンドモード、プログラム入力機能実装。ただしラインエディタです。
- PLAY、LIST、LLISTを実装。これでとりあえず全コマンド実装。
- スクリーン3、4のLINE BFが実用的な速度になりました。
- エミュレータのパッチ機能が有効のままでも動くようにしました。パッチされるアドレスは使用せず。(PC6001V/VX=1CB4h-1CB5h PC6001VW=1CB4h iP6plus=10EAh)
- 対応ROM内ルーチンが少し増えました。(0020h,0F74h,116Dh,14A0h,1B60h,1BB3h,1BC5h,1CA6h,1DFBh,1EB3h,254Eh)
- エラーの判定条件がN60-BASICに少し近付きました。
- Ver.0.1のバグを多数修正。
- How Many Pages?時やINPUT命令でキー入力が変な時がある (Hashiさん、ありがとうございます)
- BASICの後ろにマシン語データが付加されている場合、変数を使用するとデータが破壊される (MORIYAさん、ありがとうございます)
- PC6001VWでINPUT文が正常に動かないことがある
- KEY命令で空文字列がセットできない
- スクリーンモード2のCOLOR命令の挙動が少し違う
- CONSOLE範囲外でのPRINT CHR$(&H1E)及びPRINT CHR$(&H1F)の挙動が違う
- LOG(X)が0<X<=1でおかしい
- 10 RUNのようなプログラムを実行すると、スタックを食い潰した末にプログラムを破壊してしまう
- How May Pages?でスペースを先頭に入れるとエラーになる
- GOTOなどで65530〜65535行を指定できてしまう
- LPOS()の括弧内が数値や文字列以外でもエラーにならない
- LOCATEで範囲外を指定した時の挙動がおかしい場合がある
- STICK()とSTRIG()で引数範囲の判定がおかしい
- 関数の左括弧の前にスペースが入るとエラーになってしまう
- -65535が1と同じ扱いになるべきでない命令で同じになっている
- 1ページ目をスクリーンモード3や4にできてしまう
- PAINTの塗り方が正しくない
2014.1.12
Ver.0.1公開。