アドイン Casio Basic - トップページ

C:Basic - アドイン Casio Basic
<Top Page>

内容の更新や修正を随時行います.

初版 2015/12/18
更新 2019/10/08


[2019/10/08] C.Basic for FX が Ver 2.30 beta にアップデート
- ?コマンドがグラフィックス画面で使える版

  • ?コマンドに@オプション付加で現在使われている画面で使えるようになりました。
    (例)?@(5,5,5)->A
     Locate座標(5,5)から5カラム分の範囲で入力出来ます。

[2019/10/08] C.Basic for CG が Ver 1.30 beta にアップデート 
⇒ 詳しくは専用ページへ



<目 次>
 - C:Basicとは?
 - 最新バージョンのダウンロード
 - C.Basic のインストール
 - C.Basic の使い方とコマンドリファレンスなど
 - チューンアップツール・アドイン
 - C.BasicC:Basic の潜在能力 - サンプルプログラム
 - C.Basic 英語版Webマニュアル 
[作成中]

  C.Basic for FX はこのページでサポートします
  C.Basic for CG は以下のページでサポートします
  -
C.Basic for CG アルファ版公開 (旧版)
  -
C.Basic for CG アルファ版公開 - Part 2 (旧版)
  -
C.Basic for CG アルファ版公開 - Part 3 (旧版)
  - C.Basic for CG ベータ版公開 - Part 1



C:Basic とは?


C:Basic は Casio Basic で楽にコーデイングしたものを高速動作させようというコンセプトでスタートした Casio Basic 上位互換を目指したプログラミング環境で、アドインプログラムとして提供するものです。

fx-9860G 以降の Casio グラフ電卓で動作し、純正 Casio Basic プログラムとの互換動作を目指し、さらに純正コマンドの機能を拡張したり、新規コマンドを追加しています。


C:BasicC.Basic
C:Basic は2つの要素を含み、インタープリタ動作するものを C.Basic (ドット1つ)、コンパイラ機能によりさらに高速化するものを C:Basic (ドット2つ) と呼びます。現在は C.Basic のみを提供中、その後 C:Basic を提供予定です。
C.Basic は当初 fx-9860G および fx-9860GII で動作するものから開発が始まりましたが、最近になって 高精細カラー液晶を搭載した fx-CG10 / CG20 および fx-CG50 で動作するものも提供しています。前者の fx-9860Gシリーズ専用版を C.Basic for FX、後者の fx-CFシリーズ専用版を C.Basic for CG と呼んでいます。

C.Basic for FX は国内外でユーザーに鍛えられてきて、Ver 2.00 以降からようやく正式版としてリリースされました。
一方、C.Basic for CG はアルファ版として提供してきましたが、Ver 1.00 以降からベータ版としてリリースされました。
純正Casio Basic と C.Basic / C:Basic について
純正Casio Basic は、言語機能がシンプルで電卓に直接入力して気楽に使えるのが最大の特徴です。限られたハードウェアリソースしか持たない電卓でのプログラミング環境として、最低必要限の機能を有しています。PC上の開発言語と同じことを Casio Basic に要求するのはそもそも考え違いでしょう。

とは言っても Casio Basic は "構造化プログラミング" の考え方でプログラミング可能なので、実用的なプログラムを効率的に作成可能です。ここでいう "構造化プログラミング" は、Donald Knuth, "Structured Programming with goto statement" ACM Comuting Surveys (CSUR) Volume 6 Issue 4, Dec. 1974  (リンク) で主張されている実用的な構造化プログラミングに近いものです。教条主義に陥いることなく、とにかくプログラムソースが分かり易く、バグが出にくく、改造や機能追加が楽なコーディングの方針としてCasio Basicに適用でき有用です。当ブログでは、構造化プログラミングの考え方で、Casio Basicの使いこなしを紹介しています。
Casio Basic は楽に記述できる反面、計算量の大きな処理を行ったり、ビットマップをグラフィックスで描かせると、とても時間がかかります。C.Basic (現行インタープリタ版)は、Casio Basic とほぼソースレベル互換でありながら10~20倍のスピードで実行できます。C:Basic (将来のコンパイラ版) は、予備実験の結果、さらに C.Basic (インタープリタ) の10倍の程度の処理速度になりそうです。
C:Basic プロジェクトは、sentaro様 (本アドインの作者、海外では sentaro21)、Colon様 (システムコールなどOSの深いところまで探索し本質的なところで開発に寄与頂いている), Krtyski (開発のコミュニケーションの場を提供する当ブログの管理人、海外でも Krtyski)、さらに国内外の有志のユーザーの皆様により推進しています。

  ⇒ C:Basic プロジェクト



▋ C.Basic 最新バージョン

 ▶ C.Basic for FX (fx-9860Gシリーズ用ベータ版)
  ⇒ C.Basic for FX Ver 2.30 beta (fx-9860G シリーズ、Slim対応)
   ・ C.Basic for FX の入手 (少し前のバージョンも入手できます)

 ▶
C.Basic for CG (fx-CGシリーズ用アルファバージョン)
  ⇒ C.Basic for CG Ver 1.30 beta (fx-CGシリーズ対応版)
   ・C.Basic for CG の入手 (少し前のバージョンも入手できます)

注意: 万一に備えて、電卓内のプログラムやデータをバックアップしておくことを勧めます。



C.Basicのインストール

  C.Basic for FX
ダウンロードしたZIPファイルに含まれている CBASIC.g1a を fx-9860G シリーズのストレージメモリに転送します。転送には PCリンクソフト FA-124を用い、電卓とPCをUSBケーブルで接続します。併せてFontフォルダと FontEditフォルダをストレージメモリに転送し、HELPフォルダにある ~~HELP1.g1m をストレージメモリに転送します。
  C.Basic for CG
ダウンロードしたZIPファイルに含まれている CBCGxxx.g3a (xxxはバージョンを示す) を fx-CGシリーズのストレージメモリに転送します。転送には、USBケーブルで接続し Windows標準のエクスプローラでファイルやフォルダを操作します。併せて@FontフォルダとFontEditフォルダをストレージメモリに転送し、HELPフォルダにある ~~HELP1.h1m と ~~HELP3.g3m をストレージメモリいに転送します。

 詳しくは、C.Basicのインストール を参照。




C.Basicの使い方とコマンドリファレンスなど

   C.Basic for FX

   C.Basic for CG以上のドキュメントは、ダウンロードしたZIPファイルに含まれています。



 チューンアップツール - アドイン

電卓内部のクロックを調整して高速動作させるチューンアップツールを C.Basic と一緒に使うと、さらに高速化が可能です。
このプログラムの評判については、下記参照ください;
- @ Unversal Casio Forum
- @ CEMETECH
- @ TI-Planet

管理人は2年以上使っていますが、今のところ問題は起きていません。安全対策がよく考えられていて、おそらく電卓を壊すことは無いでしょう。但し、念のため電卓のデータバックアップは行って下さい。

機種毎に用意されています。

- fx-9860G、fx-9860GII USB POWER GRAPHIC(前期バージョン SH3採用品): Ftune Ver 1.10
- fx-9860GII USB POWER GRAPHIC 2(後期初期 SH4採用品): Ftune2 Ver 1.11
- fx-CG10 / CG20: Ptune2 Ver 1.11 / Ptune2 Ver 1.20※2
- fx-CG50: Prune3 Ver 0.21


※    違う機種のものを利用しないよう注意してください。
※2  Ptune2 Ver 1.20 は、必ずアップデートする必要はありませんが、Ver 1.11 を fx-CG10 / CG20 で利用中に
  C.Basic for CG の起動異常がみられる時や、設定の最適化が面倒な場合にお使いください。

充電池のご紹介
チューンアップすると消費電力が大幅に増えて、1日で電池が空になることもあります。そこで充電池が経済的です。カシオのグラフ関数電卓は、単4アルカリ電池(1.5V) と 単4ニッケル水素充電池(1.2V) が使える。そこでニッケル水素充電池と充電器のお勧めをまとめました。⇒ こちら



C.Basic と C:Basic の潜在能力 - サンプルプログラム

サンプルプログラムを使って、C.BasicC:Basic の潜在能力を見てみましょう。.

ライフゲーム (Conway's Game of Life) - 高速グラフィック描画

C.Basic は純正 Casio Basic の上位互換であり、拡張コマンドや言語機能があります。

高速なビットマッププログラムを純正Casio Basic で作ろうと考えるのは無謀なことだと言えます。しかし C.Basic を使えば、例えばライフゲームを楽しめます。



- ダウンロード: ライフゲーム Ver 0.74

これには、C.Basic Ver 0.63 以降のバージョンが必要です。.


以下の動画では、Ftune2 を使って クロックを 236MHz にチューンしています。
.
=====

コンパイラ版の C:Basic をシミュレートするため、ライフゲーム の繰り返し処理部分を、ネイティブコードの特別なコマンド "DotLife" に置き換えて実行したのが以下の動画です。 

・ダウンロード: ライフゲーム Ver 0.84



ご覧のように非常に高速で、517世代までの時間を測ると約10倍高速化しています。将来のコンパイラ版 C:Basic では、これよりも速くなるはずです。

ライフゲームの詳しい説明


2D迷路

以下のような画面全体のグラフィックス描画は、純正Casio Basicではとても時間がかかります。これを C.Basic で走らせると極めて短時間で描画が完了します。

Maze1 

2D迷路プログラムの詳しい説明とダウンロード


3D迷路ゲーム

3D_Maze 

左側の迷路マップの描画は、C.Basic を使うことで極めて高速化できます。右側の3D表示はポリライン処理により純正Casio Basic でも3D描画が軽くなるよう工夫されています。このプログラムでは、C.Basic の独自拡張機能を使いながら 純正 Casio Basicでも動作可能なようになっているのが特徴です。

3D迷路ゲームの詳しい説明とダウンロード


アクションゲーム - DRAGON



これは、C.Basic 独自拡張機能を活用したサンプルプログラムで、高速で多彩なビットマップ処理機能をうまく活用しています。
ゲームとしても飽きないチューニングがされています。このプログラムのソースは、C.Basic 独自拡張機能の理解に役立ちます。

アクションゲーム - DRAGON の詳しい説明とダウンロード


シューティングゲーム - AlienCG

AlianCG1.png AlianCG3.png 

C.Basic の独自コマンドを使い、高精細カラー液晶を活かして、全画面表示、独自フォント、高速グラフィック描画が可能になる例です。
シューティングゲーム - AlienCG のダウンロード


カラー表示確認ツール - RGB

RGB5a_CC2.png RGB5a_QH.png 

C.Basic の独自コマンドを使い、高精細カラー液晶を活かして、全画面表示、バッテリーモニタアイコン表示、16bit RGBカラー表示 (テキストとグラフィックス)、テキストのスクロール表示、QRコード表示が可能になる例です。但し、fx-CG50搭載のカラー液晶は見る角度で色合いが異なって見える廉価版液晶であり、さらに24bit(フル)カラーではなくて16bitカラー表示なので、設定したRGB値に対して実際の液晶上のカラー表示を確認するためのツールです。 
カラー表示確認ツール - RGB の詳しい説明とダウンロード


日本語表示プログラム - YearConv

YC_cb4f YC_cb9f 

fx-CGシリーズ内蔵の GBフォントを用いて日本語風表示を可能にする例です。エディタ画面ではミニフォントが使えてソースコードの視認性が向上し、ソースコードで漢字フォントを表示してプログラミングできる例でもあります。
日本語表示プログラム - Year Conv の説明とダウンロード




Top に戻る


応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


 


keywords: fx-9860GIICasioBasic、プログラミング入門グラフィックスプログラム関数電卓

リンク集 | ブログ内マップ



テーマ : プログラム関数電卓
ジャンル : コンピュータ

C.Basic for CG ベータ版がリリース Part 1 (Ver 1.00α以降)

アドイン版 Casio Basic - C.Basic for CG ベータ版 - Part 1
<トップページ>

誤字脱字・記載ミスや分かりにくい表現は随時追記・修正します

更新:2019/10/08


[2019/10/08] C.Basic for CG が Ver 1.30 beta にアップデート
- ?コマンドがグラフィックス画面で使える版

  • ?コマンドに@オプション付加で現在使われている画面で使えるようになりました。
    (例)?@(5,5,5)->A
     Locate座標(5,5)から5カラム分の範囲で入力出来ます。


ついにアルファ版からベータ版になりました!

C.Basic for CG 開発が始動 - Part 3 (Ver 0.86アルファ版まで)
 
 の続きです



はじめに - Part 1 - C.Basic for CG ベータ版 (Ver 1.00β以降)

完成度の高い fx-CG50 が登場し、この機種で走る アドイン版 Casio Basic - C.Basic for CG がアルファ版がリリースされ国内外のユーザーの皆様のご協力でアップデートが繰り返され、ようやく安定してきたのでベータ版になりました。

作者の sentaro様を皆で応援し、作者とユーザーの情報交換を継続するために、ベータ版の Part 1 を作りました。



目 次

現行ベータ版について

最新版のダウンロードとインストール


操作法・コマンドの説明・更新履歴など

C.Basic for CG プログラミングのための役立ちツール
 

C.Basic for CG を活かしたプログラム 

 お勧めの充電池と充電器   

チューンアップツール - Ptune3



現行ベータ版について
C.Basic for CG は、ベータ版 (お試し版) です。現行バージョンは安定してきましたが、まだ未完成と考えて下さい。バグの可能性があります。作者 (sentaro様) に連絡して応援する...というのが当ブログのスタンスです。

<目次に戻る>


最新版のダウンロードとインストール

   C.Basic for CG Ver 1.30 (ベータ版)
  • 解凍して得られる CBCGxxx.g3a ファイルを fx-CG20 / CG50 のストレージメモリに転送してアップデート完了!
  • 詳しいインストール方法はこちら 
  • 取扱説明書:同梱テキストファイルを参照。但し以下でも同じものが確認できます。マニュアルのデバッグも進行中です
  • 過去のバージョンは こちら
   C.Basicのインストール
<目次に戻る>


操作法・コマンドの説明・更新履歴など
<目次に戻る>



C.Basic for CG プログラミングのための役立ちツール

  RGB指定による色確認プログラム - RGB
fx-CG20 / CG50 搭載のカラー液晶は見る角度が少し変わるだけで色合いが大きく変化する。そこで実際に RGB値を入力したときの実際の色合いを確認するためのツールを作成した。C.Basic for CG の様々独自コマンドや拡張コマンドを使っていて、バッテリーアイコン表示、アドインプログラムのように見える全画面表示(上部のステータスバーがない)、OS内蔵のファンクションメニュー利用、ポップアップウィンドウの表示、入力ボックス機能、長大な文字列を扱う文字列処理 (ヘルプ機能)、実用的な速度スクロールバーを動かせる高速グラフィックコマンド (ヘルプ機能)、QRコードのビットマップ表示、などを実現できる C.Basic for CG の機能デモンストレーションにもなっている。
   RGB4b_Graphics_Mode 
  ⇒ 説明とダウンロード

  OS内蔵ファンクションキー探索プログラム - SysFunc3
fx-CGシリーズやfx-9860Gシリーズには、ファンクションメニューの画像データがOSに内蔵されている。この内蔵データをプログラムで利用するにC.Basicには独自コマンド FKeyMenu( があり、各画像に対応した番号を渡すとその画像が表示できる。そこでOS内蔵のこの番号を調べるツールを作成した。アドインプログラムのような全画面表示(fx-CGシリーズのみ、fx-9860Gシリーズは元々全画面表示)、ファンクションメニュー表示、入力ボックス機能、ミニフォント表示など、C.Basic の独自コマンドや拡張コマンドの機能を使う簡単なサンプルプログラムにもなっている。なお、C.Basic for FX 版も作成した。
   SysFunc3_1  SysFunc3FX_1 
   ※ fx-CGシリーズで全画面表示をすると、より広いエリアを使えることが分かる。
  ⇒ 説明とダウンロード


  随時、追加・追記します。


<目次に戻る>


C.Basic for CG を活かしたプログラム

 ▶昔懐かしいインベーダーゲーム - Alien 
C.Basic for CG の独自コマンドや拡張コマンドを使えば、高速グラフィックス、独自フォントの利用、アドインプログラムのような全画面表示が可能になり、昔のアーケードゲームと同等レベルのゲームが実現できる。
   AlianCG3.png  
  ⇒ ダウンロード



 ▶ 日本語版 "あの人の歳はいくつ?" - 西暦・和暦換算 YearConve
C.Basic for CG では、fx-CGシリーズに内蔵されている GBフォントを呼び出して漢字、ひらがな、カタカナを表示できる。令和の御代替わりを言祝ぎ、漢字やかなを表示した実用プログラムを作成した。
   YC_cb4f 
  ⇒ 説明とダウンロード


  随時、追加・追記します。

<目次に戻る>



応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 



keywords: fx-CG50、fx-CG20CasioBasic、プログラム関数電卓、C.Basic、C:Basic

リンク集 | ブログ内マップ


テーマ : プログラム関数電卓
ジャンル : コンピュータ

C.Basicのインストール

C:Basic - アドイン Casio Basic
<トップページ>

内容の更新や修正を随時行います.

2016/03/27
更新 2019/09/01


C.Basic の使い方



C.Basicのインストール

C.Basic の初めてのインストールや最新バージョンへのアップデートを行う時、ダウンロードした C.Basic のプログラムファイルを グラフ関数電卓に転送する。

fx-9860Gシリーズに転送する場合は、電卓に同梱されている PCリンクソフト FA-124A とUSBケーブルを使う。そして、アドインプログラムである C.Basic for FX のプログラムファイル (CBASIC.g1a) を、一旦 FA-124A に登録した後(読み込んだ後)、FA-124A上の操作で PC へ転送すれば良い。

fx-CG20 や fx-CG50 に転送する場合は、同梱されているUSBケーブルでPCと電卓を接続すると、電卓はPCの外部ドライブとして認識される。そして、アドインプログラムである C.Basic for CG のプログラムファイル (CBCGxxx.g3a、xxxはバージョンを示す3桁の数字) を エクスプローラを使って外部ドライブである電卓にコピーすれば良い。但しコピー先は外部ドライブのルート (ストレージ領域)である。

- C.Basic をダウンロードする

fx-9860Gシリーズ用 - C.Basic for FX のインストール

- fx-CG20 / fx-CG50用 - C.Basic for CG のインストール
    ・ fx-CG20 / fx-CG50をPCとリンクして CbasicCG.g3a をコピーする

- メモリを最適化する




C.Basicをダウンロードする

最初に、最新バージョンをダウンロードし、適当なフォルダに解凍して保存する。C.Basic for FX は、拡張子が G1A の CBASIC.G1A ファイルが プログラムファイルだ。C.Basic for CG は、拡張子が G3A の CBCGxxx.g3a (xxx はバージョンを示す3桁の数字) がプログラムファイルだ。

▲Top に戻る


fx-9860Gシリーズ用 - C.Basic for FX のインストール

FA-124A をインストールする

FA-124Aの日本語マニュアルを併せてインストールするには、fx-9860GII に添付されているCDから言語に「日本語」を選んでインストールする。

▲Top に戻る


C.Basic を FA-124A に登録する

FA-124A を起動する

FA-124A を起動する。右ペインのツールバーに電卓のボタンが選択された状態になっている。
電卓のボタンにマウスを持ってくると、Main とポップアップされる。これは、メインメモリが選択されたことを示す。

fa124_01

左ペインが電卓内のファイルの状況を示し、右ペインがPCにあるファイルの状況を示す。今は右ペインに注目する。

fx-9860GII には、メインメモリとストレージメモリの2種類が内蔵されている。それに会わせて、FA-124A ではメインメモリとストレージメモリを切り替えて管理するようになっていて、起動した直後はメインメモリが選択されている。

アドインプログラムである C.Basic はストレージメモリに転送して使うので、ダウンロードした C.Basic はストレージメモリへ転送する必要がある。従って、起動時に メインメモリの状況を表示している FA-124A を、ストレージメモリの状況を示すように切り替える必要があるわけだ。 


 FA-124A でストレージメモリに切り替える

右ペインで、メインメモリの電卓ボタンの右にあるストレージメモリのボタンをクリックすると、ストレージメモリの状況を示す画面に切り替わる。

fa124_02


 C.Basic を FA-124A へインポート(Import)する

右ペインに表示されている "Default" でマウスを右クリックして、メニューから "Import"をクリックする。

fa124_03

ここで現れる Insert CASIO File ダイアログで、

・ ファイルの場所(I): で CBASIC.G1A ファイルを保存したフォルダを選び、
・ ファイルの種類(T): で G1A File(*.g1a) を選び、
CBASIC.G1A を選んで、[開く(O)] ボタンをクリック。

FA124A_Select 

右ペインに、CBASIC.g1a が追加されていることを確認する。

fa124_04

次に、ヘルプファイルを転送する。ヘルプファイル ~~HELP1.G1M は、CBASIC.G1M ファイルを保存したフォルダにあるHELPフォルダの中にある。そこで、上と同様の手順で、~~HELP1.G1M ファイルをFA124にインポートする。

fa124_05

残るは、FONTフォルダとFONTEDITフォルダのインポートだ。

フォルダは上と同じようにインポートできない。FA-124の右ペインで一旦フォルダを作る必要がある。
Default にカーソルを移動 (マウスでクリック) し、右から4つめの New Folder ボタンをクリックする。

fa124_06

するとフォルダ名を入力するダイアログが表示されるので、そこで FONT と入力し [OK] クリックする。

fa124_07

これで、FONTフォルダが作成される。

fa124_08

同じようにして、FONTEDITフォルダを作成する。

fa124_09

最後に、フォルダの中にあるファイルをインポートする。手順は CBASIC.G1M や ~~HELP1.G1M をインポートした時と同様で、インポート先フォルダが Default ではなくて FONT フォルダや FONTEDITフォルダになるところが異なる。

FONTフォルダで右クリックして Import を選ぶ。

fa124_10

ファイル選択画面 (Insert CASIO File) で、ファイルの種類を All Files (*.*) とする。

fa124_11

多くのビットマップファイルがあるが、これらを全てインポートする。そこで、どれか1つのビットマップファイルをクリックしてから、[Ctrl] + [A] を押して、全てのビットマップファイルが選択されるようにする。

fa124_12

この状態で、[開く(O)] をクリックすると、

fa124_13

FONTフォルダに複数のビットマップファイルが無事インポートされた。

FONTフォルダへのインポートと同様に、FONTEDIT フォルダにファイルをインポートする。
全てのファイルを選び、

fa124_14

[開く(O)] クリックで、FONTEDITフォルダに全てのファイルがインポートされる。

fa124_15

これで、C.Basic for FX で転送が必要なファイルとフォルダの準備ができた。

fa124_16

▲Top に戻る


C.Basic を fx-9860GII に転送する

fx-9860GII を FA-124A に接続する

fx-9860GII と PC をUSBケーブルで接続すると、fx-9860GII の画面に コネクションモードの選択画面 (Select Connection Mode) が現れる。

SelectConnectionMode 

ここで、[F1] (DataTrans) を押し、次にFA-124A のペイン (今度はペイン) に並んでいるボタンの左端にある "Connect" ボタンをクリックすると、

fa124_17

接続プロセスの進行状況が表示された後、fx-9860GII が FA-124A に接続される。

接続が完了すると、ペインに "User1" の表示が現れる。

fa124_18


C.Basic を転送する

既に Import して 右ペインにある CBASIC.g1a にマウスカーソルを合わせてドラッグして、ペインの User1 へドロップする (ドラッグ&ドロップ)。

fa124_19

すると、転送が始まる...

fa124_transfer

初めてインストールした場合は、ペインの User1 をクリックして展開して、CBASIC.g1a が有れば、転送が成功している。

fa124_20

同じようにして、右ペインにある FONT フォルダを左ペインの User1 にドラッグ&ドロップして転送する。

fa124_20

最後に、FONTEDITフォルダも転送する。

fa124_21

これで、C.Basic for FX の転送が完了。


なお、転送作業の間に、FA-124と電卓のリンクが突然切れ、電卓の画面で

Memory Full
  Press:[EXIT]

と表示されることがある。これは電卓側のストレージメモリの残りが少なくなった時に現れるエラーだ。
ストレージの残りがまだ十分にあるのに、このエラーが発生する時は、電卓メモリの最適化を行えば良い。

[MENU] - "MEMORY" - [F5] (Optimization)

最適化を行ったのち、再度電卓とPCを FA-124で接続し、転送作業をやり直せば良い。


C.Basic for FX をアップデートする際、もしストレージメモリの残りが CBASIC.G1M のファイルサイズよりも少ない時は、一旦電卓上で [MENU] - "memory" - [F2] (Storage Memory) と操作し、CBASIC.g1a を削除し、さらに最適化を行う。その後 CBASIC.g1a を転送するとうまくゆく。

▲Topに戻る


転送を確認する

fx-9860GII で [MENU] キーを押して、MAIN MENU を表示してC.Basic アイコンが有ることを確認し、

MAIN_MENU_CBasic 

C.Basic アイコンを選んで [EXE] キーを押して、C.Basic を起動する。

起動すると、File List 画面になるので、そこで [SHIFT][MENU](SET UP) とキー操作すると、C.Basic のセットアップメニューが表示される。

CBasic_Setup 

一番下の行にあるファンクションメニューで、[F6](Ver.) を押して C.Basic のバージョンを表示し、正しいバージョンがインストールされていることを確認する。

Version_FX  

▲Top に戻る


fx-CG20 / fx-CG50 用 - C.Basic for CG のインストール

fx-CG20 / fx-CG50 をPCとリンクして CBCGxxx.g3a をコピーする

製品に同梱されているPCリンク用 USBケーブルを使って、電卓とPCを接続すると、電卓が外部ドライブとして認識されるので、エクスプローラでそのドライブを開くと、電卓内部のファイル構造が表示される。 

PCLink_PCDisp 
拡張子 g3a のファイルが幾つかあるが、これがアドインプログラムのファイルだ。ここに以下をコピーすれば良い。
 - CBCGxxx.g3a (xxx はバージョンを示す)
 - ~~HELP1.g1m (ヘルプファイル、ダウンロードファイル内の Helpフォルダにある)
 - ~~HELP3.g3m (ヘルプファイル、ダウンロードファイル内の Helpフォルダにある)
 - @Font フォルダ
 - FontEdit フォルダ


電卓を起動し [MENU] キーを押し、メニューに C.Basic for CG のアイコンがあることを確認。
MENU_CG  

CBasicCG アイコンにカーソルを移動し起動すると、
CBasicCG_FileList 

ファイルリストが表示されたら [SHIFT] [MENU] (SET UP) とキー入力すると セットアップ画面になる。
CBasicCG_SetUp 

[F6] (VERSION)  を押すと、バージョン情報が現れる。
VersionDisplay  

導入したバージョンが正しいことを確認できれば、インストール成功。

▲Top に戻る


メモリを最適化する

C.Basic 本体や、C.Basic で使う Casio Basic プログラムファイルは、いずれもストレージメモリに格納して使う。メモリへの書き込みを繰り返すと、ファイルの断片化が進んで実際に使えるメモリ容量が減ってしまうので、定期的にメモリの最適化作業を行う必要がある。そこで、C.Basic 本体を転送するタイミングでのメモリの最適化を勧める。

[MENU] キーを押して、MAIN MENU から Memory アイコンを選び、

MENU_Memory CG50_MENU_MemoryManager 

[EXE] キーで、Memory Manager を起動する。

MemoryManager CG50_MemoryManager 

ここで、[F5] (F5: Optimization) を押して、メモリの最適化を実行する。

Top に戻る





応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: fx-9860GIICasioBasic、プログラミング入門グラフィックスプログラム関数電卓

リンク集 | ブログ内マップ





テーマ : プログラム関数電卓
ジャンル : コンピュータ

fx-CG20 / CG50 用お勧めの充電池と充電器

アドイン版 Casio Basic - お勧めの充電池と充電器
<トップページ>


追記 2018/08/14
更新 2019/06/17

fx-CG20 や fx-CG50 用アドイン版Casio Basic, C.Basic for CG は、 高速動作が特徴の1つ。最近のバージョンでは、自動的に適度なオーバークロックをする機能がある。また、fx-CG20 用の Ptune2 や fx-CG50 用の Ptune3 というオーバークロックによりチューンアップするアドインもあり、カリカリにチューンできる。
ところが、オーバークロックで大幅にチューンアップすると、電力消費が激しくなる。fx-CG50 は fx-CG20 の半分程度に電力消費が抑えられているが、それでも一日使えば電池が空になる。オーバークロックはそれだけ激しく電力を消費する。

fx-CG20 / CG50 は、アルカリ乾電池 (1.5V) か ニッケル水素充電池 (1.2V) の使用を標準としているが、ニッケル水素充電池が間違い無く経済的だ。




お勧めの単四形充電池

 アマループ (Amazon Basic OEMエネループ) 最小容量750mAh 約1000回使用

一番のお勧めがコレだ。
Amazon Basic ブランドの OEMエネループ (アマループ) のなかで、最小容量750mAh、約1000回使用を愛用している。8本入りで¥1,500弱.

fx-CG20 / CG50 に添付されている Panasonic アルカリ単4電池の Amazon平均価格の約2倍の単価だが、再充電して何回か使えばしっかり元がとれる。

もともとエネループは三洋電機の製品で、開発製造は三洋エナジートワイセルで行っていた。三洋電機がPanasonicに買収された時、富士通の子会社FDKに売却され、その子会社としてFDKトワイセルに社名が変わり今もエネループを開発製造していて、ここでアマループが製造されている。つまりアマループは国産のエネループと同じ製造ラインで作られているのが大きな安心感に繋がる。仕様上、アマループとエネループの容量は同じだが、アマループの使用回数はエネループより少ない。

なお、1年程度使ったアマループで容量を測ると 800mAh 程度、3年程度使ったもので容量を測ると 750mAh 程度なので、仕様である最小容量750 mAh は、余裕のある控えめな仕様と言え、3年程度は仕様通り使えることが分かる。 


アマループ (Amazon Basic OEMエネループ) 高容量800mAh 約1000回使用

[2019/06/17 更新]
アマループには、最小容量800mAh、約500回使用という高容量タイプもあり、こちらのほうが安い今はこの方が高価になっている。

充放電を繰り返すと容量が劣化し、劣化が大きいほど使用回数が少なくなる。

この製品は仕様上の容量が 50 mAh 大きくその分1回の充電での使用時間が長くなる。その代わり充電可能な回数が犠牲になって約半分になっている。

上のお勧めよりもこの製品は安い高い。オーバークロック動作も含めて fx-CG20 / CG50 で使う場合は、この製品の方が実際に長時間使えるかも知れない。でも十分かもしれない。

この製品を実際に使ったことがないので、実用性を確保しつつより経済的なオプションとして、 カタログ上の50mAhだけ多い容量が電流喰らいのオーバークロック利用で使用時間がどの程度長くなるのか分からない。いずれ検証してみたいと思う。

[2019/06/17 追記] お勧めできるかどうかは保留する。実使用時間の検証と併せて、いずれ評価を決めたい。今のところは上の標準タイプをお勧めとしておく。


充電式エボルタ ハイエンドモデル 最小950mAh 約300回使用

オーバードライブで最大級にチューンアップして fx-CG20 / CG50 を長時間使う場合は、1回の充電での使用時間を経済性よりも優先させたい。

その場合は、Panasonic の充電式エボルタ、ハイエンドモデル 最小容量 950mAh、約300回使用 が最強だ。



なお、色々なニッケル水素充電池を比較評価した記事で参考になりそうなものを紹介する。
 充電池はどれを買うのがお得かガチ検証した ~ 単三形2000mAh級ニッケル水素充電池編

この記事をより深く理解するためには、以下の記事が役立つ。
ニッケル水素電池 (Ni-MH) の充放電特性



お勧めの電池ケース

8個買って4個は持ち歩くのが基本で、長期出張時は上で紹介した充電式エボルタを追加して持ち歩くか、充電器を持って行く。横に繋げられるのがポイント。

 



お勧めの充電器

エネループ / アマループと充電式エボルタともに使えて、電池1本でも充電できて、電池1個ごとに充電状態を確認できるものがお勧め。

PSPOWER製 NT 1000

一番のお勧めがコレ!ACアダプタは100~240V対応なので、海外でも使える。
PSPOWER NT 1000電池ごとに、急速充電、放電後充電、リフレッシュ、充電電流を設定でき、容量、電圧、容量の測定値の表示ができる。

 
Panasonic製 BQ-CC55

上の NT 1000 が高価だと感じる場合は、急速充電、スマート充電(最適充電) ができるコレがお勧め。

スタンダードタイプの単4形充電式エボルタ4本も付属してこの価格は、結構安いと思う。



応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 



keywords: fx-CG20 fx-CG50C.Basic充電池充電器

リンク集 | ブログ内マップ


テーマ : プログラム関数電卓
ジャンル : コンピュータ

C.Basic for CG 開発が始動 - Part 3 (Ver 0.56α以降)

アドイン版 Casio Basic - C.Basic for CG - Part 3
<トップページ>

誤字脱字・記載ミスや分かりにくい表現は随時追記・修正します

更新:2019/06/08


[2019/06/15] C.Basic for CG が Ver 1.00 beta にアップデート ⇒ 最新版はここから
        


C.Basic for CG 開発が始動 - Part 2 (Ver 0.55αまで)
 
 の続きです



はじめに - Part 3 - C.Basic for CG (Ver 0.56α から Ver 0.65α まで)
  Ver 1.00 beta 以降はこちらへ移動

完成度の高い fx-CG50 が登場し、この機種で走る アドイン版 Casio Basic - C.Basic for CG が公開され、次々と新機能が追加され、かなり使いやすくなっています。C.Basic for CG で追加された機能のうち fx-9860Gシリーズに適用可能なものは、C.Basic for FX にも追加されています。

現在はアルファ版です。作者の sentaro様を皆で応援し、作者とユーザーの情報交換を継続するために、Part 3 を作りました。



目 次

現行アルファバージョンについて

最新版のダウンロード - Part 3


操作法・コマンドの説明・更新履歴など

C.Basic for CG プログラミングのための役立ちツール
 

C.Basic for CG で楽しめるプログラム 

 お勧めの充電池と充電器   





現行アルファバージョンについて
C.Basic for CG は、現在アルファ版 (初期お試し版) です。現行バージョンは、まだ未完成と考えて下さい。バグの可能性もあるので、作者 (sentaro様) に連絡して応援する...というのが当ブログのスタンスです。

<目次に戻る>


最新版のダウンロード - Part 3

   C.Basic for CG Ver 0.86 (アルファ版)
  • 解凍して得られる CBASICCG.g3a ファイルを fx-CG20 / CG50 のストレージメモリに転送してアップデート完了!
  • 詳しいインストール方法はこちら 
  • 取扱説明書:同梱テキストファイルを参照。但し以下でも同じものが確認できます。マニュアルのデバッグも進行中です
  • 過去のバージョンは こちら
<目次に戻る>


操作法・コマンドの説明・更新履歴など
<目次に戻る>



C.Basic for CG プログラミングのための役立ちツール

  随時、追加・追記します。


<目次に戻る>


C.Basic for CG で楽しめるプログラム

昔懐かしいインベーダーゲーム 


  随時、追加・追記します。

<目次に戻る>



応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 



keywords: fx-CG50、fx-CG20CasioBasic、プログラム関数電卓、C.Basic、C:Basic

リンク集 | ブログ内マップ



テーマ : プログラム関数電卓
ジャンル : コンピュータ

C:Basic プロジェクト

アドイン版 Casio Basic
<トップページ>

誤字脱字・記載ミスや分かりにくい表現は随時追記・修正します

動画追加 2015/11/15
改訂 2015/12/06
追記修正 2017/12/17
更新 2019/05/29


※ 最新バージョンは <トップページ>からダウンロードできます. 


C:Basic とは?

コーディングが楽な Casio Basic を使って、高速なプログラムを作りたい...
そんな望みに応えるために、Casio Basic が高速で動作する環境をアドインで提供する試みが C:Basic プロジェクトです。

C:Basic = アドインCasio Basic インタープリタ & コンパイラ

現在のところ、インタープリタ C.Basic (ドット1個) の開発段階です。C.BasicC:Basic の一部です。


1. 高速動作
グラフ関数電卓 fx-9860GII の 純正 Casio Basic のグラフィックス描画はとても遅く、127×63 ドットの画面を点で埋めるには、かなり待たされます。また、計算量の多いプログラムも、かなり遅くなります。純正 Casio Basic のプログラムソースをそのまま高速動作できるのが C.Basic / C:Basic です。

2. Casio Basic の上位互換の言語仕様
純正 Casio Basic のソースがそのまま使えることを基本に、より便利になるような機能や高速化を実現するような独自機能を追加しています。特にグラフィックスは、純正 Casio Basic コマンドの高速化に加えて、独自コマンドによる高速化も図っています。

3. 電卓で完結する開発環境
プログラムの作成・編集の全てを電卓上で行えて、パソコン不要の開発環境です。C.Basic / C:Basic はアドインとして提供されます。純正 Casio Basic のエディタよりも使いやすく、純正にはないデバッグ機能 (Ver 0.99以降) もあり、かなり高機能なエディタを備えています。さらに、プログラムファイルリストのお気に入り機能があり、fx-5800P に備わっている利便性を fx-9860G シリーズや fx-CGシリーズで実現しています。

4. 対応機種も拡張
fx-9860Gシリーズ用の C.Basic for FX だけでなく、fx-CGシリーズ用の C.Basic for CG もあります。



▋ プロジェクトメンバー
  • 設計&作成: sentaro様
  • サンプルプログラム作成&テスト: 管理人(私)、他有志
  • 開発支援メンバー: Colon様、ガノー様、ツル様、iron2様、他国内外のC.Basicユーザー




応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: fx-9860GIICasioBasic、プログラミング入門グラフィックスプログラム関数電卓

リンク集 | ブログ内マップ



テーマ : プログラム関数電卓
ジャンル : コンピュータ

C.Basic for CG 開発が始動 - Part 2 (Ver 0.38α以降)

アドイン版 Casio Basic - C.Basic for CG - Part 2
<トップページ>

誤字脱字・記載ミスや分かりにくい表現は随時追記・修正します

2018/02/18
更新 2018/07/31

[2018/07/31] C.Basic for CG Ver 0.55α がマイナーアップデート

C.Basic for CG 開発が始動 - Part 1 (Ver 0.37αまで)
 
 の続きです

 
Ver 0.56α 以降は、Part 3 に移行しました





はじめに - Part 2 - C.Basic for CG (Ver 0.38α以降)

完成度の高い fx-CG50 が登場し、この機種で走る アドイン版 Casio Basic - C.Basic for CG が公開され、次々と新機能が追加され、かなり使いやすくなっています。C.Basic for CG で追加された機能のうち fx-9860Gシリーズに適用可能なものは、C.Basic for FX にも追加されています。

現在はアルファ版です。作者の sentaro様を皆で応援し、作者とユーザーの情報交換を継続するために、Part 2 を作りました。



目 次

現行アルファバージョンについて

最新版のダウンロード - Part 2


操作法・コマンドの説明・更新履歴など

C.Basic for CG プログラミングのための役立ちツール




現行アルファバージョンについて
C.Basic for CG は、現在アルファ版 (初期お試し版) です。現行バージョンは、まだ未完成と考えて下さい。バグの可能性もあるので、作者 (sentaro様) に連絡して応援する...というのが当ブログのスタンスです。

<目次に戻る>


最新版のダウンロード - 現在は Ver 0.56α 以降にアップデートされています ⇒ Part 3

   C.Basic for CG Ver 0.55α(アルファ)版
  • 解凍して得られる CBASICCG.g3a ファイルを fx-CG20 / CG50 のストレージメモリに転送してアップデート完了!
  • 詳しいインストール方法はこちら 
  • 取扱説明書:同梱テキストファイルを参照。但し以下でも同じものを参照できます。マニュアルのデバッグも進行中です。
<目次に戻る>


操作法・コマンドの説明・更新履歴など
<目次に戻る>


C.Basic for CG プログラミングのための役立ちツール

RGB指定による色確認プログラム - Check RBG Color (Ver 1.4c / 1.5a)
 [2018/03/25] マイナーアップデート  (C.Basic for CG Ver 0.44α 以降が理想的です)
  ・ 有る条件下で、[▲] / [▼] を押してもRGB値が変わらない不具合を修正
  ・[▲] / [▼] 長押しでのRGB値連続変化を高速化しました。

 ※ C.Basic for CG で作成(アドインではありません)
 ※ C.Basic for CG Ver 0.34α 以降を使用のこと
  ダウンロード: RBG4c.zip / RGB5a.zip
  C.Basic for CGRGB( コマンドで実際の色を調べる
  プログラムの説明:プログラムライブラリ - RGB指定による色確認プログラム

  ※ 24bit Color バージョンの Ver 1.4c の画面
  RGB4c_Txt_Mode.png  RGB4c_Grph.png

  16 bit Color バージョンの Ver 1.5a の画面
  RGB5a_Txt_Mode.png  RGB5a_Grph.png


OS内蔵ファンクションキー探索プログラム - Check System F-Key

 ※ C.Basic for CG で作成(アドインではありません)
   [2017/12/09 アップデート] 本プログラム自体で、システムファンクションを利用
  ダウンロード Ver1.1: SysFunc.g3m   (ファンクション文字に文字列を利用)
   ダウンロード Ver1.2: SysFunc2.g3m (システムファンクション番号利用)
  C.Basic for CGFKeyMenu( コマンドで呼び出せるSystem Function Key# を調べる
  1. 画面左下に システムファンクションキーを表示する
  2. カーソルキーで システムファンクションキー#をスキャンする
   - カーソルキーの長押しで連続スキャン
   - 左右 / キー (◀▶) で1づつ Step スキャン
   - 上下 / キー (▲▼) で50刻みの Skip スキャン
  3. [F4](Input)[EXE] キーで数値の入力
  4. [F5](Help) で使い方説明
   SysFunc 
   Ver 1.1、ファンクションメニューに文字列を利用

   SysFunc2
   Ver 1.2、ファンションメニューに、システムファンクション番号を利用

   C.Basic for FX 用 (fx-9860Gシリーズ用) に移植しました SysFunc2.g1m 






応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 


keywords: fx-CG50、fx-CG20CasioBasic、プログラム関数電卓、C.Basic、C:Basic

リンク集 | ブログ内マップ


テーマ : プログラム関数電卓
ジャンル : コンピュータ

C:Basic - Top Page

C:Basic - Add-In Casio Basic

Update and correction may be made at any time without notice.

1st: 18th Dec. 2015
Updated: 1st Mar. 2018

About C:Basic

C:Basic is an upper comatible Casio Basic which is provided as an Add-In for Casio fx-9860GII USB POWER GRAPHIC 2 (SH4A CPU model). The C:Basic will provide fast interpreter and compiler version. At this moment only interpreter is ready as alpha version., so we call the interpreter version as C.Basic (single dot).

Casio original Casio Basic is a minimal programming language working in limited hardware of calculator, but it's a practical language allowing us to enjoy 'Structured Programming'. Old fans of Programmable calc and poket computer who used to enjoy Basic programming well know that the old Basic requires line number. Unlike such old Basic, current Casio Basic can be categorized as new Generration, so we define current Casio Basic is Caso Basic New Generation. The Casio Basic is very easy-to-use language and you can create programs on your calc only, no PC is required.

You can also create Add-In programs which can be built on your PC with C language SDK and the Add-In runs much faster than the original Casio Basic. Comparing with Add-In, the Casio Basic is very slow to compute complecated calculation with high comlexity and to draw bitmap graphics. In order to improve such weak point of original Casio Basic, we started development of C.Basic (interpreter first) which is compatible with Casio Basic. Currently it gives you much faster computing speed in factor of 10 or 20 than original Casio Basic. Now we know C:Basic (compiler version) is capable to run x10 or more fasterr than interpreter version of C.Basic.

The C:Basic Project is driven by sentaro21 (author of this Add-In), Krtyski (owner of this blog, testing, making sample programs, preparing User's Guide and Command Reference) and some fans of C.Basic.



▋ Latest Test Version of C.Basic
NOTE: This is still an alpha version, so it must includes bugs and there is a possibility to destroy data in your calc (in this case you may need to restart or reset your calc). So it's highly recommneded to make backup of your data before trying C.Basic.



Overclock Add-In: Ftune2

To enjoy fast operation, an over-clock Add-In,
Ftuen2 is recommended to use with C.Basic.
Review following pages for reputation of this program;
-
@ Unversal Casio Forum
-
@ CEMETECH
-
@ TI-Planet

I have used this Add-In over 1 year, there is no problem found so far. Ftuen2 has well considerred safwty features, so it unlikely damages your calc. But please make backup of data of your calc for sure.

Please download Ftune2 for Casio fx-9860GII POWER GRAPHIC 2 (SH4A model), not other editions.



Potential of C.Basic & C:Basic

Let me show you capability of C.Basic and C:Basic with sample program(s).

Conway's Game of Life

C.Basic is upper compatible with original Casio Basic, and has some extended commands and language functions.

If you want to make a fast bitmap graphics program with original Casio Basic, I can say it's reckless try. But with C.Basic you can enjoy programming of Conway's Game of Life as a good example.



- Download:
Game of Life Ver 0.73

To get this speeed, C.Basic Ver 0.83 or later version is requred.

- Download latest version of C.Basic:


In this video, clock is tuned up to 236MHz by Ftune2.

- Download:
Ftune2
   Please be careful to download an edition for Casio fx-9860GII USB POWER GRAPHIC 2 (SH4 model).

=====

To evalaute capability of C:Basic (compiler version), most frequently porcessd codes of Game of Live Ver 0.73 is replaced by a special command "DotLife" to make the codest run at native code speed. 



As you see, it's much faster in factor of 10 until getting to generation 517. Now we believe fully native code by C:Basic (compiler version) should acheive a bit faster computing speed than this case.



How to Use C.Basic

  Installtion of C.Basic
  Check C.Basic readme
  Check of C.Basic version
  Start up C.Basic
  Copy a program in Main Memory to Strage Memory to run in C.Basic
  Copy a program in Storage Memory to Main Memory to run in original Casio Basic
  Make a New program and Edit it
  Cut & Paste in program Editor
  Updating a program source of Prog01 to Prog02
  Setup function of C.Basic
  Run a program
  Use Favorite Program List function
  Refer and Initialze Variables
  Refer and Initialze Matrix/Array
  Refer and setup ViewWindow setting
  How to input commands



C.Basic Command Reference







▲Back to Top



テーマ : プログラム関数電卓
ジャンル : コンピュータ

C.Basic for CG 開発が始動

アドイン版 Casio Basic - C.Basic for CG
<トップページ>

誤字脱字・記載ミスや分かりにくい表現は随時追記・修正します

2017/11/20
最終更新 2018/02/18

C.Basic for CG Ver 0.38α 以降は Part 2 に移動しました

[2017/01/31] C.Basic for CG Ver 0.37α がマイナーアップデート


はじめに

完成度の高い fx-CG50 が登場し、この機種で走る アドイン版 Casio Basic - C.Basic for CG がついに公開されました。純正Casio Basic の g1m ファイルや g3m ファイル、そして C.Basic for FX (従来の fx-9860Gシリーズ版) の g1m ファイルも実行できるように進められています。

なお今のところアルファ版ですが、作者の sentaro様を皆で応援し、作者とユーザーの情報交換を行うために、このエントリーを作りました。

[2017/11/25 追記] fx-CG10 / CG20 は、面表示が遅すぎるために(特にグラフィックス画面)、プログラミング向きでなくあまり使っていなかったのは私だけでないと思います。ところが、C.Basic for CG が  fx-CG10 / CG20 に対応したことで、グラフィックス描画が超高速化したという喜びの声があります。fx-CG10 / CG20 を死蔵させていた方に朗報です。

[2017/11/27 追記] fx-CG10 / CG20 の動作全体を高速化させるチューンアップツール - Ptune2 を利用している場合、C.Basic for CG が起動できない、不安定になるという問題がありました。従来の Ptune2 (Ver 1.11) の設定を変更 (このコメントおよび以降の解消事例のコメント参照) すれば問題は解消できますが、もっと楽に殆ど何もせずに解消させるための Ptune2 Ver 1.20 が公開されました。ノーマルクロック時にC.Basic for CG を起動すると、主に自動的にクロックをfx-CG50 相当の 118MHz に上げ、その他の設定も変更するようになります。


目 次

最新版のダウンロード
  - 更新履歴 (概要) 
  - 現行アルファバージョンについて

動作確認されたプログラム

C.Basic for CG プログラミングのための役立ちツール




最新版のダウンロード - 現在は Ver 0.38α 以降にアップデートされています ⇒ Part 2

   C.Basic for CG Ver 0.36α(アルファ)版
  • インストール方法はこちら 
  • 取扱説明書:同梱テキストファイル参照。ReadmeCG_J.txt (C.Basic開発環境の使い方)、 ManualFX_J.txt (C.Bbasicコマンドリファレンス)、Command_List_CG.txt (C.Basic コマンド一覧と呼び出しキー操作) が含まれています。なお ManualFX_J.txtC.Basic for FX Ver 1.64β 同梱と同じもので、この記載仕様が当面の開発目標です。殆どのコマンドは実装済みですが、今はユーザーによるバグ出し作業中です。
更新履歴 (概要)
 Ver 0.37α (1/32768高分解能タイマー追加+短縮行列再初期化バグ修正版)
 ・A1、B2 形式の端出行列アクセスでの行列再確保の不具合を守勢しました。
  
 ・タイマー変数のTicksと%に高分解能 1/21768sタイマーを追加しました。コマンド後に%を付けると
  分解能が 1/32768s になります。
  (例) Ticks%
  (例) Ticks%Wait
  (例) %%
  (例) %%Wait
  
 ・プログラム実行の時間計測機能で高分解能1/32768sタイマーを選択できるようになりました。
  (セットアップで設定します。)
  小数点二か4桁まで計測できます。
  
 ・[F5](CHAR)^[F6] 外部フォント表示の選択で外字とカナに加えてASCII文字を加えました。
  
 ・エディタで[SHIFT]-[6]を押すとRGB(コマンドのカラーコードを入力する機能を追加しました。
 ・エディタで[SHIFT]-[3]を押すとGetkeyコマンドのキーコードを入力する機能を追加しました。
 ・[AC]キーによるBreakの有効無効をプログラム内で出来るようにしました。
  (例) "#Break0 // [AC]キー無効  
  (例) '#Break1 // [AC]キー有効 (デフォルト)
  

 Ver 0.36α (自由な名前でフォントSave/Load + FX版フォント追加+メモリリーク修正版)
 ・外部フォントの読み込みでバッファの解放が出来ていなかった不具合を修正しました。
  
 ・g1mモードでは標準フォントも従来のfxシリーズの標準フォント(6x8)で表示するように変更しました。
  (セットアップでEditextFontをオンにするとg1mモードではエディタの表示も重ら宇フォントに変わります)
  
 ・フォントファイルのセーブ/ロードにおいて任意のファイル名が津空けるようになりました。
  (書式) BmpLoad @GL"ファイル名"
  (書式) BmpLoad @GM"ファイル名"
  (書式) BmpLoad @KL"ファイル名"
  (書式) BmpLoad @KM"ファイル名"
  (書式) BmpLoad @AL"ファイル名"
  (書式) BmpLoad @AM"ファイル名"
  (例) BmpLoad @GL"MYFONTL"
   MyFONTL.bmpが外字標準フォントとして読み込まれます。
  (例) BmpLoad @GM"MYFONTM"
   MYFONTM.bmpが外字ミニフォントとして読み込まれます。
  
  (書式) BmpSave @GL"ファイル名"
  (書式) BmpSave @GM"ファイル名"
  (書式) BmpSave @KL"ファイル名"
  (書式) BmpSave @KM"ファイル名"
  (書式) BmpSave @AL"ファイル名"
  (書式) BmpSave @AM"ファイル名"
  (例) BmpSave @GL"MYFONTL"
   現在の外字標準フォントを"MYFONTL.bmp"としてセーブされます。
  (例) BmpSave @GM"MYFONTM"
   現在の外字ミニフォントを2MYFONTM.bmp"としてセーブします。
  

 Ver 0.35α (バグ修正、複数文字変数+Const拡張版)
 ・StrSrc( コマンドにおいて、検索開始位置を指定した場合に結果が1つづつズレていたのを修正しました。
  
 ・アンダーバーより始まる複数英数字名(8文字まで)の変数が使えるようになりました。
  従来の1文字変数とは独立したエリアに確保される変数ですがプログラム開始時には常に初期化されます。
  使える変数は26個までとなっています。実数変数と整数変数は別の値を保持できますが、
  同じ名前で同時に確保されます。
  [SHIFT]+[F1]の変数リストで[F1]を押す度に大文字変数、小文字変数、アンダーバー変数が表示されます。
  {例) '#CBDBL
  (例) 123.456->_ABC
  (例) _ABC+_ABC%->_RESULT
   ※ _RESULTの値は579.456となります。
  
 ・RowSize(、ColSize( が逆になっていたのを修正しました。
  (g1mおよびg3mファイルでは修正する必要はありません。テキストファイルで帆村している場合は、
   修正する必要があります。)
  
 ・変数を定数仕様限定にするConstコマンドを追加しました。[OPTN]-[F3](extd)-[F3](Const)
  代入時にConstを前置すると変数が定数として扱われ、以後代入できなくなります。
  (例) 123->Const A
  (例) 123->Const _ABC
  (例) 456->A
   同じプログラムで変数の値を変更しようとするとエラーになります。
  
 ・文字列分割するStrSplit( コマンドを追加しました。
   [SHIFT]-[VARS](PRGM)-[F6][F6]-[F3](ExStr)-[F6][F6]-[F1](StrSplit)
  (書式) StrSplit("文字列","区切り文字"[,開始位置])
   結果はMatAnsに文字列として返ります。
  (例) StrSplit("123,4567,89",",")
   MatAnsの結果は、["123","4567","89"] となり、ココの要素を読み出すには次のように
   アクセスできます。
   $Ans[1]="123"
   $Ans[2]="4567"
   $Ans[3]="89"
 ・変数の定数仕様追加にともなって、Swith~Case~SwitchEnd でのCaseの指定は変数指定も
  可能になりました。
  

 Ver 0.34α (セットアップ設定変更版)
 ・セットアップの設定がプログラムで変更されないようにする設定を追加しました。
  SetupRecoverの項目でオンオフで設定します。
  影響を受ける設定は純正互換の以下の設定になります。
   Angle
   DrawType
   Coord
   Grid
   Axes
   Label
   Derivative
   Plot/Line-Color
   Sketch Line
   Display Fix/Sci/Norm/Eng

  これ以外のC.Basicで拡張した設定はプログラムで変更されることはありません。
 ・Prog - Return において、Returnコマンドでの返り値が無効になる不具合を修正しました。
 ・ファイルリスト表示でステータスラインに現在日時を表示するようにしました。
  (リアルタイム表示ではなく何かアクションした時の更新になります。)
 ・外字のテキスト変換に失敗していたのを修正しました。
 ・フォントデータをセーブ、ロードするBmlLoad @/BmpAave @コマンドにおいて、
  フォントファイル番号を指定する場合に不具合が出ることがあったのを修正しました。
  

 Ver 0.33α (Getkey1/2計測リセット+楕円の回転+Paintコマンド追加版)
 ・ML系コマンドに_Paintを追加しました。[SHIFT][F4][(SKETCH)-[F3](ML)-[F6][F6][F6]-[F5](Paint)
   http://pm.matrix.jp/CB/CBASICCG033.zip
   こちらのPaintサンプルプログラムをほぼそっくりそのまま利用させて頂いています。
  (書式) _Paint x,y,Color[,確率/透過率]
  (例) _Paint 100,100,1
   座標(100,100)を始点にして描画色で塗りつぶします。
  (例) _Paint 100,100,0
   座標(100,100)を始点にして背景色で塗りつぶします。
  
 ・ML系コマンドの楕円描画コマンドの _Elips、_FillElipsにおいて回転された楕円の描画をサポートしました。
  (書式) _Elips X,Y,Rwidth,Rheight,Color[,確率/透過率][,回転角(度)]
  (書式) _Elips 100,100,80,40,1,,45
   座標(100,100)を中心に横径80ドット、縦径40ドットの楕円を45度傾けて描画します。
  
 ・Getkey1/2実行後に時間計測をリセットするように仕様変更しました。
 ・ReadmeCG_J.txt / ManualCG_J.txt を同梱しました。
 ・Getky1/2実行中は時間計測を一時停止するように仕様変更しました。
  セットアップにて計測の一時停止または計測のリセット&リスタートを選択できます。
  関連コマンドとして、
  (書式) '#GetKeyC
   デフォルトの計測一時停止、継続モードです。
  (書式) '#GetKeyR
   Getkey1/2実行後に計時がリセット&リスタートします。
 ・セットアップでステータスラインが表示されていなかったのを修正しました。
 ・Lbl もAlias機能が使えるようになりました。併せて AliasVarのコマンド名称をAliasに改訂致します。
  (例) Alias A = _ABCD
  (例) Alias Mat A=_ABCD
  (例) Alias Lbl A=_ABCD
 ・MenuコマンドにFX版互換表示を追加しました。コマンド直後に"@"を付けるとFX版互換表示になります。
  (書式) Menu @"<メニュータイトル>","<項目1>",<ラベル文字1>,"<項目2>",<ラベル文字2>[,"<項目n>",<ラベル文字n>...]
  
 ・Ticks (%) のタイマー変数への代入で内部時計を変更しないようにしました。
  (例) 0->Ticks
   従来は内部時計も 00:00:00に初期化されていましたが、C.Basicのタイマー変数だけを0にリセットします。
   この仕様変更により時計の変更は DATE、TIMEコマンドのみとなります。
  
 Ver 0.32α (Menuコマンド互換化+透過率改善版)
 ・MenuコマンドをCGシリーズの純正互換に変更しました。
  タイトルの色はMenuコマンド直前の色指定が有効になります。
  メニュー項目はPlot/Line-Colorの色設定が有効になります。
  メニュー背景はBacl-Colorで指定している色になります。
  
 ・BmpLoadの透過指定がバグっていたのを修正しました。
  透過率の指定は0~1の範囲の変数または100%までの整数指定に変更しました。
  (書式) BmpLoad("BMPファイル名"),X,Y,1,透過率 (0.0~1.0)
  (書式) VmpLoad("BMPファイル名"),X,Y,1,%透過率 (%0~%100)
   (X, Y)座標を始点として背景とヨウ化率で合成してロードします。
  (書式) BmpLoad("BMPファイル名"),X,Y,0,透過率
   (X, Y)座標を始点として背景だけにロードします。
  (例) BmpLoad("TEST"),100,50,1,%50
  (例) BmpLoad("TEST"),100,50,1,0.5
   (100, 50)座標よりTEST.bmpファイルを透過率10%でロードします。
  (例) BmpLoad("TEST"),100,50,0,%25
  (例) BmpLoad("TEST"),100,50,0,0.25
   (100, 50)座標よりTEST.bmpファイルを透過率25%で背景部分だけにロードします。
  
 ・ML系コマンドのパラメータのcolor指定において透過率指定を追加しました。
  コマンドの描画色と画面を透過率で合成して表示します。
  color指定地は5になっています。color指定のあるML系コマンドで使用できます。
  (書式) _Pixel x,y,5,透過率 (0.0~1.0)
  (書式) _Pixel x,y,5,%透過率 (%0~%100)
  (例) Red _Pixel x,y,5,%50
  (例) Red _Pixel x,y,5,0.5
   画面の色と50%赤を合成して描画を行います。
  
 ・Normコマンドが正常に動作していなかった不具合を修正しました。

 ・Str( コマンドの表記をToStr( に変更しました。
  従来プログラムで Str( を使用していても g1m/g3m形式の場合は何も修正する必要はありません。
  テキスト保存されている場合は内部形式への変換時に自動変換されます。
  再保存の時には ToStr( 表記に変わりますので、以前のC.Basicでテキスト形式で読み込ませると
  エラーになります。
  プログラムの保存はテキストだけでなく g1m/g3m形式での保存もお勧めします。
  
 ・Sprintf( コマンドのバグを修正しました。
  
 ・ML系コマンドの_Bmp表示系コマンドをCGモード対応しました。
  _Bmp
  _Bmp8
  _Bmp16
  _BmpZoom
  _BmpRotate
  _BmpZmRotate
  g3mモードではデフォルト16ビットカラー描画ですが、1ビット行列を指定すると
  1ビットマップの描画になります。
  

 Ver 0.31α (AliasVar拡張 & IsExist拡張版)
 ・1文字変数を任意の英数字名の別名で使えるようにAliasVarを拡張しました。
  アンダーバーより始まる変数名が使えます。
  変数の長さは8文字以内で英数字とアンダーバーが使えます。
  (例) AliasVar a=_abc_de
  (例) _abc_de+1->_abc_de
   小文字変数aを_abc_de表記で使えます。
 ・LiatとMatの表記を変更しようとした場合にシステム絵r-亜になっていた不具合を修正しました。
 ・ファイルリストにおいてストレージメモリの残量を表示できるようになりました。
 ・IsExistコマンドでファイルリストを取得できるようになりました。
  (書式) IsExist("*.拡張子")->ファイル数
   Mat Ans:拡張子が"bmp"のファイルがAns行列に作成されます。
   リストはアルファベット順にソートされます。
  (例) IsExist("*.bmp")->N
    $Mat Ans[3]
   リストの3番目のファイル名を文字列として表示します。
   N:ファイル数が返ります。
  (用例) BMPフォルダにある全てのBMPファイルのリスト表示するサンプルプログラム
   --------------------------------------------
   IsExist("/BMP/*.bmp")->N
   N=0⇒Stop
   For 1->I To N
   Disp $Mat Ans[I]
   Next

   --------------------------------------------
 ・Textコマンドのカラー指定に不具合があったのを修正しました。
 ・"#"をコメント色から外しました。


 Ver 0.30α (3品から音が出るかも試練版)
 ・Beepコマンドを追加しました。@SHIFT]+[VARS](PRGM)-[F6]-[F4](I/O)-[F6]-[F5](Beep)
  (書式) Beep 周波数,継続時間(ms)
   3Pin出力より指定周波数の矩形波を出力します。
  (例) Beep
   1KHzの矩形波を0.5秒間、3Pinより出力します。
  (例) Beep 440,1000
   440Hzの矩形波を1秒間、3Pinより出力します。
 ・Textコマンドの表示位置が順背英位置よりも1ドット右下にずれていたのを修正しました。
 ・ReadGraph( と DotGet( コマンドにおいて、行列の型指定で取得ビット数を1ビットか16ビットかを
  選択できるようになりました。
  (g1mモードでnデフォルトは1ビット、g3mモードでのデフォルトは16ビットになっています。)
  (例) ReadGraph(0,0,15,23)->Mat A
  (例) DotGet(0,0,15,23)->Mat A
   (0,0)-(15,23)の領域を16ビットカラーで行列Aに取り込みます。
  (例) ReadGraph(0,0,15,23)->Mat A.P
  (例) DotGet(0,0,15,23)->Mat A.P
   (0,0)-(15,23)お領域を1ビットモノクロで行列Aに取り込みます。
  
 ・スタンダード入力モードにおいてStrLwrコマンドの入力ができなかった不具合を修正しました。
 ・エディタの選択時のリバース表示を修正しました。
 ・外部フォント導入時に標準サイズフォントにおいてキャ作田-コード 0x00~0xFが表示されなかった不具合を
  修正しました。

 ・デフォルトの外部フォントをIPAフォントに変更しました。
  @LFONTK0 カタカナフォント(標準)
  @MDONTK0 カタカナフォント(ミニ)
  @LFONTK1 ひらがなフォント(標準)
  @MFONTK1 ひらがなフォント(ミニ)
  @LFONTG0 外字サンプルフォント(標準)
  @MDONTG0 外字サンプルフォントの(ミニ)
  使用例) NewYear
  

 Ver 0.29α (純正ASCIIフォント差し替え可能になった版)
 ・フォントデータのせー図が不安定だった不具合を修正しました。
 ・英数字のASCIIキャラクタのフォント差し替えができるようになりました。
  デフォルトでのファイル名はファ維持同様にそれぞれ、
  @LFONTA.bmp  (ASCII標準フォント)
  @MFONTA.bmp (ASCIIミニフォント)
  となっております。
  コードで 0x20~0x7Eまでの95キャラクタの差し替えが可能です。
  サンプルフォント(デフォルト、IMPACTを同梱しました。)
  
 ・フォントデータを読み出すGetFontにおいて、デフォルトの内蔵フォントを読み出す@オプションを
  追加しました。
  (書式) GetFont(@"フォントキャラ")->Mat A
  (書式) GetFontMini(@"フォントキャラ")->Mat A
  (例) GetFont(@"A")->Mat A
   内蔵フォント"A"のビットマップデータ(18x24)が1ビット行列A[18,24]に入力されます。
  
 ・エディタのフォントを外部フォントに切り替えられるようにしました。セットアップより変更できます。
 
 ・外部フォントの切替を行うための、BmpLoadにFontロードオプションを追加しました。
  外部フォントがそれ以降使用されます。
  (書式) BmpLoad @G[フォントファイル番号]
  (書式) BmpLoad @K[フォントファイル番号]
  (書式) BmpLoad @A[フォントファイル番号]
   フォントファイル番号は0~9が指定できます。
  (例) BmpLoad @A1
   @LFONTA1.bmp  (ASCII標準フォント)
   @MFONTA1.bmp (ASCIIミニフォント)
   のフォントファイルが外部ASCIIフォントとして読み込まれます。
   
 ・フォントファイルのせー図において0~9までのオプションを追加しました。
 ・BmpSaveにフォントデータのセーブ機能を追加しました。
  (書式) BmpSave @G[フォントファイル番号]
  (書式) BmpSave @K[フォントファイル番号]
  (書式) BmpSave @A[フォントファイル番号]
  (例) BmpSave @G2
   @LFONTG2.bmp  (外字標準フォント)
   @MFONTG2.bmp (外字ミニフォント)
   現在の外字フォントを外字フォント2としてセーブします。
  ※今回のバージョンアップではサンプルフォントその1として下記のフォントファイルを同梱しています。
   その 0 は標準のデフォルトフォントとなっております。これらは pFONTフォルダに入れておいてください。
   @LFONTA0.bmp  (ASCII標準フォント純正)
   @MFONTA0.bmp (ASCIIミニフォント純正)
   @LFONTA1.bmp  (ASCII標準フォントIMPACT)
   @MFONTA1.bmp (ASCIIミニフォントIMPACT)
   (例) プログラムでフォントを切り替えるには、下記1行だけでIMPACTに切り替わります。
    BmpLoad(@A1)
   (例) 元のフォントに戻すには、
    BmpLoad(@A0)
  
 ・Getkey1/2/3において、[SHIFT]+[OPTN]を[OPTN]と判定出来るようになりました。
 ・Plot/Line-Color直後のテキスト表示系コマンドが色変更の影響を受けていたのを修正しました。
 ・Menuコマンドで色指定がコマンド終了後にデフォルト=黒に戻る用意修正しました。

 Ver 0.28α (phontコマンド追加版)
 ・フォントデータの読み出しと設定を行う GetFont( とSetFont( を追加しました。
  (書式) GetFont(フォントコマンド)->Mat A
  (書式) GetFontMini(フォントコード)->Mat A
  (例) GetFont(0x41)->Mat A
   フォント!A!のビットマップデータ(18x24)が1ビット行列Mat A[18,24)に入力されます。
  (例) GetFontMini(0xFF80)->Mat A
   外字ミニフォントの一番目のビットマップデータ(16x24)が1ビット行列Mat A[16x24]に入力されます。
  [書式) SetFont フォントコード,Mat A
  (書式) SetFontMini フォントコード,Mat A
  (例) SetFont 0z41,Mat A
   Mat Aのフォントデータがフォント!A!のデータとして設定されます。
  (例) SetFontMini 0xFF80,Mat A
   Mat Aのフォントデータが外字ミニフォントの一番目のデータとして設定されます。
  
 ・BmpSaveにフォントデータのセーブ機能を追加しました。
  (書式) BmpSave @G
   カレントフォルダにファ外字フォント (標準、ミニ) をセーブします。
   ファイル名は@LFONTG.bmp (標準)
   ファイル名は@MFontG.bmp  (ミニ)
  (書式) BmpSave @K
   カレントフォルダにカナフォント (標準、ミニ) をセーブします。
   ファイル名は@LFONTK.bmp (標準)
   ファイル名は@MFONTL.bmp (ミニ)
  (書式) BmpSave @@G
  (書式) BmpSave @@K
   @Fontフォルダにセーブします。
  
 ・デフォルトフォントファイルを変更しました。
  @LFONTG.bmp  (外字標準フォント)
  @MFONTG.bmp (外字ミニフォント)
  @LFONTK.bmp  (カナ標準フォント)
  @MFONTK.bmp (カナミニフォント)
  
 ・大文字と小文字のRenameで元のファイルがまた消えてしまう不具合を修正しました。
 ・MLコマンドの_Hrizontal、_Vertical、_Polygon、_Rect(、_Elips(、_ElipsRect( において、
  前回MLコマンドのWidth指定が継続していたのを修正しました。
 ・BMPファイルのRenameとCopyに対応しました。
 ・ファイルモードでのBMPファイルの表示の不具合を修正しました。
 ・ReadGraph(、DotGet コマンドにおいて、g3mモードでも1ビットサイズの行列への取り込みが
  できるように修正しました。
  (例) ReadGraph(1,1,16,24)->Mat A.P
  (例) DoGet(1,1,16,24)->Mat A.P
 ・BmpSaveコマンドにおいて、g3mモードで1ビットサイズの保存が出来るようになりました。
  (例) BmpSave "TEST",Mat A
 ・RectおよびFillRectがFX版解像度対応のままになっていたのを修正しました。
 ・行列の初期化において、既に確保された行列領域を再初期化する場合に0栗あしないように
  することが出来るようになりました。
  (ただし、最初のその行列で仕様する最大領域を確保しておく必要があります。)
  (書式) {12,20}->Dim Dim Mat A
  (例) [[1,2,3][4,5,6]]->Mat A
    {2,2}->Dim Dim Mat A
   Mat A の内容は [[12][3,4]]となります。 
  

 Ver 0.27α (フル画面モード正式使用版)
 ・フル画面に正式対応しました。
  副作用として、C.Basic実行時の?コマンド入力時に左上のシフト状態のステータス表示が
  機能しなくなります。
 ・GetRGB( コマンドを追加しました。VRAMのカラー値をR、G、B に分解します。
  (書式) GetRGB(カラーコード)
   結果はList Ans に帰ります。
  (例) Get(65535)
   List Ans = {248,252,248}
   R = List Ans[1]
   G = List Ans[2]
   B = List Ans[3]
 ・Renameで元のファイルが残っていた不具合を修正しました。
 ・RenameとCopyで新しいファイルの箇所にカーソル移動が出来てなかった不具合を
  修正しました。
  

 Ver 0.26α (外字フォント対応版)
 ・カナ文字と外字フォントを外部のBMPファイルより導入できるようになりました。
  カレントフォルダに次の4つのファイルを置くとフォントが切り替わり、
  外字が使えるようになります。
   LFONTK.bmp  18x24ドット カナ文字フォント
   LFONTG.bmp  18x24ドット 外字フォント
   MFONTK.bmp  最大16x18ドット カナ文字ミニフォント
   MFONTG.bmp  最大16x18ドット 外字ミニフォント
   - フォルダを移動する度にそのフォルダにあるフォントファイルを読み込みます。
   - フォントファイルが存在しない場合は、@FONTフォルダに置かれたファイルを
    デフォルトとして使用します。
   - どこにもフォントファイルが存在しない場合はFX互換の内蔵フォントを使用します。
    フォントファイルのフォーマットは1ビットモノクロBMPファイルとなっています。
  - 標準サイズのフォントは18x24ドットのフォントが横に16個、縦に5つ並ぶフォント
   ファイルになっています。
  - ミニサイズのフォントはプロポーショナルフォントなので、フォントの1ドット上の
   1ラインを横幅検出ラインとし、フォントの上隅の1ドットを開始位置とします。
  - 横に16文字、縦に2行で32文字の外字が使えます。
 ・エディタの検索機能において、検索窓に入力後にコマンド入力ファンクションキーが
  表示されし続けていた不具合を修正しました。
 ・_ClrVramが背景色にクリアされていなかったのを修正しました。
 ・Str変数の増量が127で止まっていた不具合を修正しました。
 ・BatteryStatusコマンドを追加しました。[VAR]-[F3](Extd)-[F6](BatteryStatus)
  (書式) BatteryStatus
   左上隅のバッター-アイコンを表示します。
   数式で使用した場合はバッテリアイコンを表示して現在の転圧値 (V)x100 を返します。
 ・Clip&Paste後にカーソル位置が6行目で固定されていたのを修正しました。
  

 Ver 0.25α (フル画面拡張版)
 ・外枠を色指定できるようになりました。BackColorコマンドに@オプション追加です。
  (書式) BackColor @外枠色指定
  (例) BackColor @Black
  (例) BackColor @RGB(255,128,128)
 ・ML系コマンド仕様時にVRAMの全域を操作&表示対象にしました。
  Y座標系はマイナス方向に拡張して (-24) まで使用できます。
  この変更により、PutDispDD と _SiaspVram コマンドで転送エリアが異なります。
  PutDispDD:転送範囲 (0,0) - (383,191) 純正仕様です。
  _DispVram:転送範囲 (0,-24) - (383,191) 上部ステータスライン分を含みます。
 ・PutDispDD と _DispVram コマンドでLCDへの転送ラインを任意選択できるオプションを追加しました。
  (書式) PutDispDD@開始行,終了行
  (書式) _DispVram@開始行,終了行
   行の範囲は最上部(-24)から最下部(191)までとなります。
   どちらも同様の動作をします。
  (例) PutDispDD@0,23
   Locateでの1行目だけを転送します。
 ・ListとMat@の変数名指定に ( を使うことで数式が使えるようになりました。。
  (例) List (A+1)
   Aが1の場合はList 2を指定したことになります。
  (例) Mat@(A+1)
   Aが1の場合はMat 2、つまりMat Bを指定したことになります。
 ・Renameにおいてファイル名の大文字⇔小文字の変更のみをした場合、
  ファイルが消えてしまう不具合を修正しました。
 ・エディタのミニフォント表示において固定ピッチ表示を選択できるようになりました。
 ・Textコマンドにて固定ピッチ表示のオプションを追加しました。
  (書式) Text Y,X,"文字列" or数式 [.N/O/R/V][.F]
   最後にFオプション追加で固定ピッチになります。
  (例) Text 10,1,"Simple Text"..F
   固定ピッチ(12ドット間隔固定)でミニフォント表示されます。
  

 Ver 0.24α版
 ・テキスト画面にグラフィックス画面を重ねて表示することが出来るようになりました。
  Screenコマンドで設定できます。
  (書式) Screen.O (アルファベットのO)
   テキスト画面で実行するコマンドの背景色がグラフィックス画面になります。
   つまり、テキスト画面にグラフィックス画面が合成表示されます。
  (書式) Screen.N
   通常モードに戻ります。
 ・BmpLoadコマンドで直にVRAMにロードする場合、背景だけをロードしたり透過率を設定できるようになりまた。
  (書式) BmpLoad("BMPファイル名"),X,Y,1,透過率 (0~255)
   (X,Y)座標を始点として透過率 (最大255) でロードします。
  (書式) BmpLoad("BMPファル名"),X,Y,0,透過率 (0~255)
   (X,Y)座標を始点として背景だけにロードします。
  (例) BmpLoad("TEST"),100,50,1,128
   (100,50)座標よりTEST.bmpファイルを透過率10%でロードします。
  (例) BmpLoad("TEST"),100,50,0,64
   (100,50)座標よりTEST.bmpファイルを透過率25%で背景にロードします。
  (使用例)
   テキスト系プログラムの背景にTEST.bmp画像を合成表示するには、
   先ずグラフィックス画面(VRAM)にBMPをロードしておきます。
   ------------------------------
   Screen.G      // グラフィックス画面を選択
   BmpLoad("TEST")   // 画像をロードします
   Screen.O      // 新規オプションはセロでななくてオーです
   ClrText       // テキスト画面クリアで背景に画像が表示されます
   ------------------------------
   以後、テキスト画面の背景には常にグラフィックス画面が重なります。
  

 Ver 0.23α版
 ・BmpLoadコマンドで直にVRAM二ロード出来るようになりました。
  (例) BmpLoad("TEST"),100,50
   (100, 50) 座標よりTEST.bmpファイルをロードします。
   (添付サンプルプログラムを参照してください。)
 ・BmpSaveコマンドで直にVRAmからセーブ出来るようになりました。
  (例) BmpSave "TEST",100,50,200,90
  (100, 50) 座標より (200, 90) 座標までの範囲を24ビットフルカラーBMPファイル"TEST"としてセーブします。
  指定可能な座標置は (0,0) - (383,191)の範囲です。
  (フル画面の保存には1分異常かかる場合があります。)
 ・BMPファイルの読み込める最大サイズを256KNまで増量しました。
  CGシリーズの画面サイズの244ビットフルカラーBMPファイルを読み込めます。
 ・エディタのミニフォントモードのカーソルの幅を太くしました。
 ・Clip&Pasteのバッファ処理を改善 (エラー対策)
 ・Clip&Pasteで範囲指定された行をコメント化、コメント解除の機能を追加しました。
  範囲指定した後に[F5][F6]で機能します。
  

 Ver 0.22α版
 ・エディタのミニフォントモードのパフォーマンスを向上させました。
 ・複数行のペーストをした場合にカーソルが飛ぶ不具合を修正しました。
 ・For~Nextの制御変数のエラーチェックを厳しくしました。
  (実数モードで整数変数を制御変数に使うとエラーになります。)
 ・24ビットフルカラーBmpファイルの読み込みに一部対応しました。
  まだ、大きなファイルの読み込みは未対応です。約160KB以下のファイル限定です。
  (添付サンプルプログラムを参照してください。)
 ・行列編集モードの行列編集でドット編集の出来るモードをCG対応しました。
  表列を表示している状態で[OPTN]キーを押すとドットエディタになります。
  が、カラー値の変更は直接数理入力しか色変更方法がありません。
  

 Ver 0.21α版
 ・実数指数表示を修正しました。
  

 Ver 0.20α版
 ・SDK変更初版
  

 Ver 0.11α版
 ・Save、Loadコマンドのファイル名に文字列変数が使えるようになりました。
 ・カナ文字が表示できなくなっていたのを修正しました。
 ・CG20における自動オーバークロック基準を変更しました。
  ⇒ Ptune2 (fx-CG10/CG20専用)でPutDispのフレームレートが50fps以下の場合に自動オーバークロックします。
 ・MLコマンドの_Pointコマンドが動作しなかったのを修正しました。
 ・バッファーオーバーフロー修正
  

 Ver 0.10α版
 ・コピー&ペーストの不具合を修正しました。
 ・Pixel系コマンド後色が変わってしまっていたのを修正しました。
 ・整数モードにおけるPixel系コマンドでは描画範囲外になる時はエラーにならずに描画されないようにしました。
  

 Ver 0.09α版
 ・PopUpWin(コマンドを拡張しました。関数としての実装に変更になります。数式の中で使えます。
  ・(書式) PopUpWin( n )
   従来の使用です。n行分のポップアップを表示させます。表示のみです。
  ・exit ポップアップ
   (書式) PopUpWin(11,"メッセージ1行目"[,"メッセージ2行目"])
   返り値は常に1です。コマンド終了時に画面が復帰します。
  ・Yes No ポップアップ
   (書式) PopUpWin(10,"メッセージ1行目"[,"メッセージ2行目"])
   返り値が[Yes]:1 [No]:0となります。コマンド終了時に画面が復帰します。
  ・コピー&ペーストで使うバッファ領域の確保に不具合があったのを修正しました。
 ・PopUpWin(コマンドをさらに拡張しました。
  ・画面待避のみ ポップアップしません
   (書式) PopUpWin(0)
  ・待避した画面の復帰のみ
   (書式) PopUpWin(9)
   画面待避バッファはシステムと共通なので、待避壕にポップアップが出るとバッファが上書きされ
   元に戻らなくなるので注意してください。
  

 Ver 0.08α版
 ・?拡張コマンドの入力文字数制限が機能していなかったのを修正しました。
 ・ーDISP-表示とDone表示が通常表示に戻ってしまうのを修正しました。
 ・デバッグモードでテキスト表示が白になる不具合を修正しました。
 ・Locateコマンドの22ヶ溜めが描画される不具合を修正しました。
 ・コメントがあった場合の非互換性を修正しました。
 ・編集画面からファイルリストへ戻る時 [EXIT]キーを離すまで効かないように変更しました。
 ・コピー&ペーストの選択範囲とカーソル位置がずれているのを修正しました。
  

 Ver 0.07α版
 ・CG10/CG20でデフォルトクロックで起動した場合には自動的にCG50相当にオーバークロック
  するようにしました (58MHz->118MHz)。
 ・入力時に画面が壊れるのを修正しました。
 ・検索、Char選択画面がBack-Colorコマンドに影響されるのを修正しました。
 ・FkeyMenu(にシステム内蔵ファンクションを表示できるようにしました。
  (例) FkeyMenu(1,42)
  テキスト画面の1番左側のファンクションメニューエリアに白抜きEDITが描画されます。
 ・中断再開時の[EXE][F1]キーの入力が継続しないようにしました。
  

 Ver 0.06α版
 ・?拡張コマンドの動作をEXEキー押下で終了するように変更しました。
 ・ファンクションキー表示を修正しました。
 ・エディタ等がBack-Colorコマンドに影響されるのを修正しました。
  

 Ver 0.05α版
 ・ポップアップをシンプルに変更しました。
 ・カラー指定で While が使えるようになりました。
 ・べき乗の不具合を修正しました。
 ・CG10/CG20でのPictファイルの不具合を修正しました。
 ・ファンクションキー表示を修正しました。
 ・セットアップの左右キーで最初と最後に移動するようにしました。
  

 Ver 0.04α版
 ・Plotの移動単位を以下の設定の時だけPixelドットに合わせました。(純正非互換となります)
  ViewWindow 1,379,0,187,1,0
 ・g1mモードとg3mモードの切替をプログラム中で出来ます。
  (書式) '#G1M または '#g1m
  (書式) '#G3M または '#g3m
 ・g3mモードの場合にPlotの解像度をデフォルトで1x1ドットに変更できます。
  (書式) '#SketchThin または '#S-L-Thin
  デフォルトに戻すには
  (書式) '#SketchNormal または '#S-L-Normal
 ・Plotコマンドの前にSketchThinを付けると、それ以降のPlotで移動単位および描画が1ドットになります。
  (書式) SketchThin Plot
  (書式) SketchTHin PlotOn
  
 Ver 0.03α版
 ・g3mモードのViewWindowに対応しました。
  
 Ver 0,02α版
 ・CG10/20に対応しました。
  
 Ver 0.01α版
 - 公開初版


現行アルファバージョンについて
既に公開されている fx-9860Gシリーズ用 C.Basic FX Ver 1.64β をベースに fx-CG50 に対応させるべく開発開始した C.Basic for CG は、現在アルファ版 (初期お試し版) です。多くの機能の実装が終わっていますが不完全なものも残っています。動作確認も進んでおり、既にグラフィックス処理の大幅な高速化を楽しめます。

fx-CG20 にも対応したことで、これまで処理が遅くてあまり使えなかった 純正Casio Basicプログラムも非常に高速動作するので、fx-CG20 の利用価値が高まったと言えます。

現行バージョンでは、期待通りに動作しないものは、まだ未完成と考えて下さい。但しバグの可能性もあるので、作者 (sentaro様) に連絡して応援する...というのが当ブログのスタンスです。



動作確認されたプログラム

フラクタル - シダの葉
プログラムの説明とダウンロード (g3mファイル)
 高精細カラー液晶でのピクセル単位での描画が美しく、処理が大きく高速化される

BugTrace ゲーム [2017/11/22 追加]
プログラムの説明
C.Basic for CG 向けに修正したプログラムのダウンロード
◆ 
高精細液晶のピクセル単位での千鳥格子塗りつぶしの大幅高速化を楽しめる

プログラムライブラリ収録のプログラム
プログラムライブラリ収録プログラム (g1m / g3mファイル)
 主にテキストベースのプログラムだが、一部グラフィックス描画も含む

ライフゲーム
プログラムの説明とダウンロード
 fx-9860Gシリーズ用 C.Basic for FX プログラム (g1mファイル)

落ちゲー: ヨコリス
プログラムのダウンロード
 fx-9860Gシリーズ用 C.Basic for FX プログラム (g1mファイル)

アクションゲーム: ドラゴン
プログラムの説明とダウンロード
 fx-9860Gシリーズ等 C.Basic for FX プログラム (g1mファイル)

3D迷路
プログラムの説明とダウンロード
 fx-9860Gシリーズ用純正Casio Basic プログラム (g1mファイル)

もぐら叩き - カラー版
プログラムの説明とダウンロード
 fx-CG50用純正Casio Basic プログラム (g3mファイル)

マスターマインド Ver4 カラー版
プログラムの説明とダウンロード
 fx-CG50用 純正Casio Basic プログラム (g3mファイル)

マスターマインド Ver4 モノクロ版
プログラムの説明とダウンロード
 fx-9860Gシリーズ用純正Casio Basic プログラム (g1mファイル)



C.Basic for CG プログラミングのための役立ちツール

RGB指定による色確認プログラム - Check RBG Color (Ver 1.4c / 1.5a)
 [2018/02/25] アップデート
 ※ C.Basic for CG で作成(アドインではありません)
 ※ C.Basic for CG Ver 0.34α 以降を使用のこと
  ダウンロード: RBG4c.zip / RGB5a.zip
  C.Basic for CGRGB( コマンドで実際の色を調べる
  プログラムの説明:プログラムライブラリ - RGB指定による色確認プログラム

  RGB4b_2.png 

  RGB4b_3.png 


OS内蔵ファンクションキー探索プログラム - Check System F-Key

 ※ C.Basic for CG で作成(アドインではありません)
   [2017/12/09 アップデート] 本プログラム自体で、システムファンクションを利用
  ダウンロード Ver1.1: SysFunc.g3m   (ファンクション文字に文字列を利用)
   ダウンロード Ver1.2: SysFunc2.g3m (システムファンクション番号利用)
  C.Basic for CGFKeyMenu( コマンドで呼び出せるSystem Function Key# を調べる
  1. 画面左下に システムファンクションキーを表示する
  2. カーソルキーで システムファンクションキー#をスキャンする
   - カーソルキーの長押しで連続スキャン
   - 左右 / キー (??) で1づつ Step スキャン
   - 上下 / キー (▲▼) で50刻みの Skip スキャン
  3. [F4](Input)[EXE] キーで数値の入力
  4. [F5](Help) で使い方説明
   SysFunc 
   Ver 1.1、ファンクションメニューに文字列を利用

   SysFunc2
   Ver 1.2、ファンションメニューに、システムファンクション番号を利用

   C.Basic for FX 用 (fx-9860Gシリーズ用) に移植しました SysFunc2.g1m 





随時、追加・追記します。


応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ





keywords: fx-CG50、fx-CG20CasioBasic、プログラム関数電卓、C.Basic、C:Basic


リンク集 | ブログ内マップ



テーマ : プログラム関数電卓
ジャンル : コンピュータ

ゲーム ~ マスターマインド (C.Basic)

2017/10/09


グラフ関数電卓で遊べるゲーム:マスターマインド を C.Basic に移植する。


ツル様が作成した fx-9860GII 用のマスターマインドを紹介した。

ゲーム ~ マスターマインド (fx-9860GII)

これを sentaro様が C.Basic 用に移植されたので紹介する。

作者のツル様は、4桁入力後の判定時に、ブリンクさせるアニメに拘ってオリジナリティを演出している。ところが、Ftune2 のようなチューンアップツールで処理速度が向上するとアニメがきれいに表示されなくなる。加えて、ツル様オリジナルのマスターマインドはそのまま C.Basic で動作するが、処理速度が大幅に向上するのでせっかくのアニメがうまく表示されなくなる。

そこで、C.Basic の拡張機能であるウェイトコントロールコマンド (TicksWait) を使って、どのような設定でもオリジナルのアニメをきれいに表示させるための改変を行っている。

純正 Getkey のゲーム進行中に入力する時はループが回っていて、キースキャンの反応を早くするために C.Basic で拡張機能として導入されている Getkey3 (指定Wait機能付きGetkey) を用いて、Getkey3(U)⇒Break; (変数U はオリジナルから導入されているアニメ用ウェイト変数)として、キーウェイトしてキー入力されたら直ちにループを抜ける処理に置き換えることで、キーの反応を改善している。併せて消費電力の改善の効果も少しある。

C.Basic ~アドイン Casio Basic


プログラムのダウンロード

ツル様作成 マスターマインドの C.Basic 移植版 MASTMIN3 (fx-9860GII 用)
 (TicksWaitGetkey3 を用いたバージョン) 

ダウンロードしたファイル MASTMIN3.g1m ファイル転送ツール FA-124 を使って fx-9860GII のストレージメモリ転送後、C.Basic の Program List から実行する。



対応機種

◆ fx-9860GII




応援クリックをお願いします。励みになるので...
にほんブログ村 IT技術ブログ 開発言語へ


 

keywords: プログラム関数電卓、Casio Basic、ゲーム、マスターマインド、fx-9860GII、fx-CG20、fx-CG50

リンク集 | ブログ内マップ

テーマ : プログラム関数電卓
ジャンル : コンピュータ

最新記事
検索フォーム
最新コメント
カテゴリ
C# (3)
Visitors
Online Counter
現在の閲覧者数:
プロフィール

やす (Krtyski)

Author:やす (Krtyski)
since Oct 30, 2013


プログラム電卓は、プログラムを作って、使ってナンボ!

実際に触って気づいたこと、自作プログラム、電卓プログラミングについて書いています。

なお管理人はカシオ計算機の関係者ではなく、Casio Basicが面白いと感じる1ユーザーです。


写真: 「4駆で泥んこ遊び@オックスフォード郊外」

リンク
月別アーカイブ
Sitemap

全ての記事を表示する

ブロとも申請フォーム

この人とブロともになる

QRコード
QR