fx-JP900 のイースターエッグ - 診断機能

  修正 2015/06/20
追記修正 2018/03/01

akatuki様によるブログ:高機能電卓の情報の記事、素晴らしい!「CLASSWIZ」の記事 にて、コメント欄に sentaro様が fx-JP900 のイースターエッグのヒントを書き込まれました。面白いので、色々と調べた結果を紹介します。

実は、かなり以前にカシオ関数電卓 fx-373ES のイースターエッグ(診断モード)の出し方が、動画で紹介されていました。ここでもおなじみの藤堂様による投稿です。私は全く知りませんでした。⇒ オヒ!の伝殿堂3:計算機情報





fx-JP900 / JP700 / JP500 の診断モード
fx-JP900
今回見つけた fx-JP900 のイースターエッグです。基本は、 [SHIFT]+[7] を同時押ししたまま [ON] を押します。この操作は電源が入っている、入っていないに関わらず有効です。これは、最近のカシオのスタンダード関数電卓でほぼ共通のようです。

診断モードに入って何もしないと、診断モードを抜けて通常の計算モードに移行します。診断モードに入った後、タイムアウトする前に [8] を押すか、[9] を押すかで、走るルーチンが異なります。

なお、JP700、JP500 にも適用できることを確認しました。[2018/01/28 追記]



先ず、[8] を押した時の処理をみてみます。
操作画面出力
0[SHIFT]+[7]+[ON]診断モードに入る
1[8]キーマトリックスの試験
2表示されたキーを押す表示が反転する
38つ全てのキーを順不同で押す全ての表示が反転する
4全てのキーを押した後、太陽電池への光を遮蔽するBattery MODEL OK!
5遮蔽を外すSolar MODEL OK!
6[AC]計算モードへ移行

[0] キーから始まる一番下の横一列、6つのキーのキーマトリックスは、[-] キーに繋がるかたちになっているのが興味深いです。

キーマトリックス試験での表示;
[1]KI1K01[SHIFT]KI8K01
[5]KI2K02[9]KI3K03
[ ) ]KI4K04[log]KI6K05
[logab]KI7K06[0]KI5K07

[logab] キーは、fx-JP900 では [SHIFT] - [(-)] なのですが、[SHIFT] 付きや抜きで押しても反転しません。正解は [x] キーでした。実は、fx-995ES や fx-993ES のキー配置を見ると、[x] キーの位置には [logab] のキーがあることを発見! このテストルーチンが昔から存在していて、そのまま流用したのでしょう(バグ?)。概ね左下から右上までのキーマトリクスのチェックを行っているようです。

次に、[9] を押した時の処理です。[ON]を押せばいつでも診断モードがら抜けられます。
操作画面出力
0[SHIFT]+[7]+[OK]診断モードに入る
1[9]8888888888888888

   8.888888889x
1015
2[SHIFT]インジケータと全ドット点灯
3[SHIFT]インジケータと全ドット消灯
4[SHIFT]インジケータ点灯、ドットが交互(千鳥格子状)に点灯
5[SHIFT]インジケータ消灯、ドットは反転
6[SHIFT]ファームウェハのバージョン表示
・fx-JP500: CY-241 Ver B
・fx-JP700: CY-242 Ver A
・fx-JP900: CY-243 Ver A
管理人所有機の結果。JP500 だけがVer B になっているのが興味深い.
7[MENU][AC] で分岐
 - [MENU] を押した時  8 へジャンプ
 - [AC] を押した時 10へジャンプ [2018/03/01 修正]
8  [MENU]チェックサム、メモリチェック
9  [AC]シリアル番号を表示 [2018/03/01 修正]
10[AC]00 と表示 ([AC] のキーチェック?)
11[SHIFT]01と表示、他のキーは受け付けない
12[ALPHA]02と表示、他のキーは受け付けない
13[上矢印]03と表示、他のキーは受け付けない
14[右矢印]04と表示、他のキーは受け付けない
15[MENU/SETUP]05と表示、他のキーは受け付けない
16[OPTN]06と表示、他のキーは受け付けない
17[CALC]07と表示、他のキーは受け付けない
18[左矢印]08と表示、他のキーは受け付けない
19[下矢印]09と表示、他のキーは受け付けない
20[積分]10と表示、他のキーは受け付けない
21[x]11と表示、他のキーは受け付けない
22[分数] ~ [ln] まで順に押す12, 13, 14, 15, 16, 17 と順に表示、他のキーは受け付けない
23[(-)] ~ [Ans] まで順に押す18 から 48まで順に表示、他のキーは受け付けない
24[=]コントラスト調整画面
25[AC]TEST OK

Reset All
Press AC
26[AC]診断モードから計算モードへ移行
※ [ON] を押せばいつでも診断モードが中断

動作がおかしい時に、メーカーでは先ずこのチェックを行うのでしょう。異常時にどのような表示になるのかは分かりません。これも興味ありますが、さすがに壊すつもりはありません(^^;)




関連ページ:
- fx-995ES / fx-993ES / fx-991ES のイースターエッグ - 自己診断機能
- fx-991MS のイースターエッグ - 診断機能
- fx-991W のイースターエッグ - 診断機能

- fx-5800P のイースターエッグ - 診断機能
- fx-9860GII のイースターエッグ - 診断機能
- fx-CG20 のイースタエッグ - 診断機能
- fx-CG50 のイースタエッグ - 診断機能




応援クリックをお願いします。励みになるので...

人気ブログランキングへ





keywords: fx-JP900fx-5800Pfx-9860GII関数電卓

リンク集 | ブログ内マップ
関連記事

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

fx-5800P【プログラミング入門】:言語仕様

更新 2017/10/03
追記 2018/02/26

Casio Basic入門 連載中


 一般にプログラムの基本構成は、

  ・入力
  ・データ処理
  ・出力
  ・記録(データ保存)


と、単純だ。

従って、それぞれの基本構成に必要な命令やコマンドを覚えると、とりあえず動くプログラムを書けるようになる。そして、動くプログラムができれば、それを改造したり、機能を追加したりすることで、ストレスなくプログラミングを覚えられると思う。


fx-5800P【プログラミング入門】:プログラム作成から実行までの操作

で、たった1行で、とりあえず動くプログラムが書けた。これに、色々と追加していけば、それらしいプログラムになる。少なくとも、非常に簡単な手順でプログラムを作れることは、お分かり頂けたと思う。

手軽さが電卓プログラムの1つの特徴と言える。


プログラム電卓は、一言でいえば、
電卓以上、パソコン未満。

プログラムを作れば、電卓以上のことが出来るが、パソコンほどのことは出来ない。しかし必要な時にポケットからサッと出して、パッと使えるので、パソコンよりも気楽に手軽に使える。そのような目的では、十分実用的なプログラムを作れるので、利用価値が高いと思う。

プログラム電卓に搭載されるプログラミング言語は、それほど強力なものではない。
電卓の機種によって搭載言語の仕様が異なることが多く、一概には言えないが、プログラムを作るための最低限の機能が搭載されていると思って良い。

逆に言えば、機能が少なく覚えることが少ないため、
  • プログラミング経験者には、簡単にプログラムを作れる
  • プログラミング初心者には、入門に良い
と言える。

プログラミングを覚えるための良い方法については、様々な方が色々な論を展開している。個人的な経験に基づけば、

・作りたいプログラムがあること
・最も簡単で低機能の、しかし取りあえず完成したプログラムがあること
・取りあえずのプログラムを、自分の望むように改造する

つまり、必要性或いはモチベーションがあれば、必要なことから勉強してゆけるし、頭の中に定着しやすい。如何であろうか?



最近のカシオのプログラム電卓では、Casio Basic が搭載されていて、Casio Basic は機種間での互換性が非常に高い。

最近のカシオのプログラム電卓:
  • fx-5800P
  • fx-9860GII
  • fx-CG10
  • fx-CG20
  • fx-FD10 Pro
  • fx-CG50

それでは、fx-5800Pについて少し詳しくみてみる。


0.fx-5800P専用プログラミング言語の特徴

先ずは、この電卓が搭載しているプログラミング言語について、私が特徴だと思う点を挙げる。

新世代 Casio Basic
2006年発売の fx-5800P には、それまでの機種の搭載言語とは大きく異なる。Basic 風だったものが、まともな Basic になったのだ。実際に使い込めば分かるのだが、この点意外に見落とされている。いわゆる構造化プログラミングが可能になっており、さらにキーコード取得の Getkey と柔軟な Locate コマンドが搭載されたことが、まともなBasicになったと言える要因だ。この新世代 Basic の記法は、最近の一般的な Basic でほぼそのまま使える。つまり、プログラミング経験者なら少ないストレスで実用的なプログラミングが出来る。これから Basic を習得しようとする人には、覚えたことが一般の Baisc に活かせる。新世代 Casio Basic 搭載が、fx-5800P の最大の特徴だ。 

バランスの良い設計
作ったプログラムを実行するために、プログラムモード(PROGモード)に入る必要が無い。通常の電卓のモード(COMPモード)から、[FILE] キーを押せばプログラムリストが現れ、そこから実行できる。この手軽さは良い。今のところこの機能があるプログラム電卓は fx-5800P と fx-FD10 Pro のみだ。その他のグラフ関数電卓は、プログラム実行のためにはプログラムモードに入る必要がある。プログラムを強制終了させると、プログラム編集画面になることから、知らずにプログラムを変更してしまう事故の可能性がつきまとう。
また、旧来の機種で搭載されていた入力/出力命令は、古くからのユーザーの利便性に考慮して、新世代 Casio Basic にも残されているが、fx-5800P と fx-9860GII (およびその他のグラフ関数電卓)では、細かい動作仕様が異なっている。グラフ関数電卓に搭載されている旧来の命令の仕様は、非常に使いづらく、旧来の命令をこれ以上使うなと言っているようである。一方で、fx-5800P は使い勝手の良い仕様にチューニングされている。
fx-5800P はハードウェアとCasio Basic のバランスがよく考えられている。

変数
最初から用意されている変数は、電卓内の保存されている全てのプログラムで共有される。究極のグローバル変数仕様と言える。一般にグローバル変数は弊害多いように言われるが、電卓プログラムに関して言えば、異なるプログラムで変数を共有できるメリットも有る。

文字列処理
fx-5800Pは、文字列変数が用意されていないので、文字や文字列の処理ができない。数値計算用の関数電卓の延長線にあるための割り切った仕様なのだろう。

最近のCASIOの関数電卓全般に言えることだが、3桁区切りの表記ができない。桁数の大きな数字をパッと認識しづらいのはとても不便だ。安い金融電卓などには搭載されている機能なので、ハイエンドと言える関数電卓で3桁区切りが無いのは理解しがたい。そこで、ミリ(m)やキロ(K)といった記号で表記する機能を使うか、6.02x1023 といった指数表示を使うしかない。プログラム上で、3桁区切りの実現は可能だが、文字列処理コマンド無しでは面倒なので、今のところプログラムに実装していない。
[2015/04/10 追記]
2015年2月から順次発売開始となった fx-JP500 / 700 / 900 では、ようやく3桁区切り記号が戻ってきた。fx-5800P の後継機種でも3桁区切り記号の実装が期待される。

記録(データ保存)
記録(データ保存)の機能は、ほとんど無い。ソースコード(=プログラムの記述のこと)のみが電卓本体記録・保存できるだけだ。パソコンなどにソースコードを保存することは出来ない。ソースコードをバックアップするには、専用ケーブル(別売り)を用いてfx-5800P同志をリンクして、プログラム単位でコピーするのことは出来る。究極のスタンドアローン仕様だ。

この仕様はなんとかして欲しい。私は、ソースコードと色々な説明を書き込んでエクセルファイルに保存している。

素因数分解_改造版ソース 
(fx-5800P用、素因数分解計算のソース)

[2018/02/26 追記]
有志の個人 (takumako様) が fx-5800P をPCリンクするツールを公開なさった。
ついに fx-5800P がPCリンク可能になった

配列変数
配列変数を使うと、変数の数は実質無制限になる。プログラム中で変数領域の確保と解放ができる。変数領域は最大28500バイトのプログラム領域から切り出す仕様だ。変数名は Z[ ] に固定されている。

電卓のプログラムでそれほど多くの変数を使うことは、あまり無いだろう。しかしZ[インデックス数 ]といった使い方のできる配列は、異なる処理の記述を共通化できるので、ソースコードの記述量の節約に役立つ。但し配列変数へのアクセスは通常変数の4倍程度と遅い。

配列変数へのアクセス速度があまりに遅いので、高速化が必要なプログラムでは、配列変数へのアクセスの回数を極力減らすような工夫を行っている。

良いユーザーインターフェースを作る可能性
fx-5800Pは16桁x4行の液晶ディスプレイが搭載されている。GetkeyコマンドとLocateコマンドにより、電卓としては広い画面を活かして、使いやすいユーザーインターフェースを実現できる点が、最大の特徴だと思う。これには、新世代 Casio Basic の仕様が不可欠でもある。


1.入力

fx-5800Pでは、入力の方法が2種類準備されている。

・ 旧来の入力命令
・ Getkeyコマンド

※ Getkeyモードは、非常に有用だと思う。

 ⇒ 旧来の入力命令?の使いこなしは、Casio Basic入門38 から
 ⇒ ?命令からGetkey コマンドへの導入は、Casio Basic入門43 から
 ⇒ Getkey と Locate の使いこなしは、Casio Basic入門3 から


1) 旧来の命令「?」(入力)命令

この入力命令が実行されると、

・入力を待つ
・[EXE]キーが押されることで入力が確定される


と言う動作を行う。

[EXE]キーで確定されるまでは、関数電卓として搭載されている殆どすべての計算を行えることは、入力命令の最大の特徴だと思う。サイン、コサイン、ルート、対数、指数、数値積分、総和(Σ)....などなど、1行で記述できる計算ならは何でも使える。そして[EXE]キーを押すと、その計算結果が確定され、入力が終了する。プログラムの用途によっては、非常に強力な機能を何の苦労もなく使えるわけだ。

入力命令は、[EXE]キーによる確定が必要なので、逆に確定キーを押すのが煩わしい時には、Getkeyを使う。

但し、fx-9860GII などのグラフ関数電卓では、fx-5800P とは細かい動作が異なり、非常に使いにくいことがある。fx-5800P はうまくチューニングされていて、とても使いやすくなっている点で、fx-5800P が他のグラフ関数電卓よりも優れている。


2) Basic コマンド:Getkeyコマンド

Getkey は、プログラム実行中にどのキーが押されたかを知るためのコマンドだ。電卓の付いている全てのキー(但し[AC]キーは除く)を区別して、それが押されたことが分かる。

If Getkey=34: Then
<何かの処理>
IfEnd


と書くと、「キーコード34のキーが押されたら、(直ちに)<何かの処理>を実行しろ」という処理を意味する。ここで (直ちに) というのがミソ。[EXE]キーによる確定は不要だ。

ところで、34のキーとは [DEL]キーだ。[DEL]キーには、キーコード34が割り振られているわけだ。[AC]キーを除き、全てのキー、例えば矢印キーなどが押されたことを検出できる。

メニューから項目を選択させるような処理には、メニュー番号を押せばスグにその処理へ移行して欲しい。矢印キーの上下左右のキーを押して表示を変えるような目的では、なおさら直ちに反応しなければ意味がない。このような時は、Getkey が有効になる。

但し、キーコードを取得するには、キーが押された時に Getkey コマンドが実行される必要がある。そこで、ループ構造の中で Getkey が繰り返し実行されるようにプログラムを記述すれば良い。


2.データ処理

データ処理と言う言葉は非常に漠然としているが、ここでは、入力されたデータを元に望む出力を得るための処理とする。データ処理はプログラムの核となる部分だ。

ここに新世代 Casio Basic の存在意味がある。fx-5800P の Casio Basic には、必要最低限な機能が揃っている。当ブログでは、実用的なプログラムやちょっとしたアクションゲームを作れる事を紹介している。その程度の機能はあると言うことだ。

具体的な機能の一部を紹介する。

条件分岐
If ~ Then ~ Else ~ IfEnd
 二者択一で、処理内容を変える時に使う。
 取説には書いていないが、If での条件判定に変数を使う時、変数がゼロの時は偽(FALSE)で、それ以外は真(TRUE)となる。

※ fx-5800Pには、多方向分岐コマンド(switch や select など)が無いのが残念だ。
多方向分岐の代わりに、If文のElseの中に新たにIf文を入れ子にする方法を使うが、Else If という記法が可能なので、可読性を確保できる。

⇒命令
 If [条件]:Then [処理]:IfEnd

 と同等の処理を行う際、

 [条件]⇒[処理]

 と記述できる。この命令の最大の利点は、その処理速度にある。If 文の2倍程度速い。非力な fx-5800P では非常に有用。


ジャンプ
Goto / Lbl
 予め記述したラベルまでジャンプする。

Isz と Dsz
 指定した変数がゼロになった時、ジャンプする。ジャンプ先は、次の次の処理。
 ISZ C とすると、変数C を1増やしてから、Cがゼロかどうかの判定を行う。
 DSZ Cは、変数Cを1減らしてから判定する。
 これらの命令の最大の利点は、その処理速度にある。単純なインクリメントやデクリメントで高速化が可能だ。


繰り返し処理(ループ)
For ~ To ~ Step ~ Next 
 カウンタを増やしながら処理を繰り返して処理をする。
 Forの後にカウンタ変数の初期値設定。
 Toの後にカウンタ変数の終了値設定。
 Stepの後にカウンタ増分を設定。Step設定がなければ増分は1。

Do ~ LpWhile
 繰り返しループの最後で、繰り返し継続判定を行う。
 LpWhileでの繰り返し継続判定に変数を使う時、変数がゼロの時は偽(FALSE)で、それ以外は真(TRUE)となる。

While ~ WhileEnd
 繰り返しループの最初で、繰り返し継続判定を行う。
 Whileでの繰り返し継続判定に変数を使う時、変数がゼロの時は偽(FALSE)で、それ以外は真(TRUE)となる。


制御系
Prog
 サブルーチンを呼び出す。引数や戻り値はない。VisualBasicのプロシージャに相当する。

Break
 繰り返し処理コマンドと併用して、強制的に繰り返しを中止する。

Return
 サブルーチンを終了させ、呼出元へ制御を戻す。

Stop
 プログラムを強制終了させる。


論理演算
And / Or / Not
 論理積 (And)、論理和 (Or)、真偽の否定 (Not)
 Xor は搭載されていないが、必要なら論理演算の組み合わせでカバーできる。
 

関数電卓独特の処理
Deg / Rad / Gra
 角度単位を、度、ラジアン、グラジアンのいずれかする設定

Dec / Hex / Bin / Oct / signed / unsigned
 n進数の基数を設定、負数をとるかどうかを設定

各種関数
 電卓に内蔵されている多彩な関数を使える。
 Int( )、Frac( )、log( ) などが特に有用だ。文字列処理機能の無い fx-5800P で数値の桁数を知るには log( ) を活用できる。

行列計算
 取扱説明書のプログラミングの章には明記されていないが、プログラムで行列が使える。

統計計算
 リスト操作、回帰計算のコマンドを使える。統計処理のプログラムには、一からアルゴリズムを考えずに使えて有用だ。


3.出力

fx-5800Pの出力機能は、画面への表示のみが用意されている。外部装置への出力はできない。但し
例外的に、fx-5800P同志の通信機能(別売りのリンクケーブルを使用)を使って、プログラムソースのコピーはできる。


出力(表示)
(出力命令)
 この記号の直前の文字列や変数の値、計算式の結果を表示する。旧来の命令で、使いやすいが制限もある。

Locate
数値、文字列、変数の値、計算式の結果の、先頭文字の位置を指定する。
※ 計算式の結果を位置指定に使う機能は、状況に応じて表示位置を変えることができるので、非常に役立つ。

Cls
 Clear Screen、画面全体の表示を消す。


関数電卓独特の処理
EngOff / EngOn
 数値の表示の際 f、p、n、μ、m、K、M、G、T、P などの記号を使うかどうかの設定
但し、EngOn とした時、Locate で表示する数値が上記の記号を使わない桁数の時、自動的に末尾にスペース1個が付加されるので、プログラミング時には要注意!

Norm
 指数表示をするかどうかの桁数を設定する。Norm2 としておけば10桁まで表示可能。

ab/c、d/c
 計算結果を仮分数か帯分数で表示する設定。プログラムではあまり使わないだろう。

Sci
 数値を表示する際、有効数字の桁数を設定。これによって数値そのものは変化しない。

Fix
 数値を表示する際、小数点以下の桁数を設定。これによって数値そのものは変化しない。

Rnd(
 変数に格納されている数値を、小数点桁数設定(FIX)の設定に従って丸める。


4.記録(データ保存)

fx-5800Pには、記録(データ保存)機能が準備されていない。例外的にプログラムソースを同型機同志でコピーすることができる。なお、関数電卓の機能として、計算に使うための自作公式を保存できうるが、保存された公式をプログラム内で使えない仕様になっている。


以上、簡単にfx-5800P専用プログラミング言語を俯瞰した。




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


   

 

keywords: fx-5800P言語仕様プログラミング入門プログラム関数電卓

リンク集 | ブログ内マップ
関連記事

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

fx-5800P プログラムのバックアップ

fx-5800P
e-Gadget


2014/09/27 更新
2018/02/26 追記


2台目の fx-5800p と専用の通信ケーブルを買ってしまいました。

11ヶ月前に買った fx-5800p のカバーのヒンジがまた壊れてしまいました。満員電車で押された時に壊れたようです。接着剤で修復するつもりですが、脆弱な作りには困ったものです。

fx-5800p には電源ロック機能が無いので、カバー無しだと、カバンやポケットに入れて持ち運ぶには不都合を感じます。通勤で東京の満員電車を利用する特殊な事情もあるのでしょうが、そのうち電卓の機能まで影響を受けることが心配になります。

と言うのも、これまでに fx-5800p で作ったプログラムのうち、幾つかは仕事で日常的に使っていて、それがが使えなくなると結構困ったことになります。使いこなすことで、自作のプログラムへの依存度が高くなってしまっているとも言えます。

作ったプログラムを電子データとして保存し、何かの時にそれを電卓に簡単に戻す必要性を、これまで以上に感じました。
CASIOが現在販売しているプログラム電卓の上位機種では、パソコンやメモリカードにプログラムを電子データで保存したり読み出したりすることが出来ますが、fx-5800pでは、それができません。

[2018/02/26 追記]
ついに fx-5800P がPCリンク可能になった をご参考に!


ここしばらくは、公私ともに忙しくしているため、プログラムを触る時間を殆どとれずにいますが、以前作ったプログラムは毎日のように使っています。上位機種を購入することも考えましたが、プログラムをfx-5800pから移植する余裕はありません。

fx-5800p や 上位機種の fx-CG10/20、fx-9860G II、fx-FD10 proなどの価格動向は、定期的に調べていて、これらの購入も考えましたが、目的とコストのバランスを考えて、結局2台目の fx-5800P を買うことにしました。

今年の6月以来、これらの電卓の価格は低めで推移してきていますが、価格.comAmazonを見ていると、最近は価格の上昇傾向が出てきています。

現在はAmazon¥6,518 が最安値に近いが、通信ケーブルが見つかりません。そこで手近なヨドバシカメラに行ってみると、¥7,170でした。交渉するとAmazonと同じ値段にしてもらえたので、通信ケーブルと一緒に購入しました。通信ケーブル:SB-62¥2,700でした。fx-5800p の購入を検討なさっているなら、今は良いタイミングかも知れません。


通信ケーブル:SB-62は、袋に入っているだけで、梱包にはお金がかかっていません。

専用通信ケーブル 


fx-5800p を通信ケーブルで繋ぎ、一方を受信モードにしておき、他方を送信モードにすると、プログラムの転送ができます。全てのプログラムの一括転送に加えて、プログラムファイルを選んで転送することも可能です。

データ転送 


これで、一安心です。

先ずは、コストパフォーマンスの高い fx-5800p を使ってみて、その後もし使い込んでオリジナルで有用なプログラムが貯まってきたら、2台目と通信ケーブルを買うというのもアリのように思います。

一方で、fx-9860G II は、fx-5800p とほぼ同じ CasioBasicを使えるので、これを最初から頑張って買うのも選択肢です。但し、最初から fx-5800p 2台分の費用になります。個人的には1万円超えと言うのは、チョット抵抗がありますね。



壊れたヒンジ部の補修については、うまくできたら紹介しようと思います。
[2018/02/26 追記]
fx-5800P 破損ヒンジの交換、ついでにリニューアル で紹介しました。


ところで試しに、素因数分解プログラムを同時に走らせてみたところ、どうも新しい方が、時間がかかることを見つけてしまいました。同じハードウェアに、同じ設定で、プログラムをごっそり転送したので、処理速度に差が現れた理由は、まだ不明です。





応援クリックをお願いします。励みになるので...

人気ブログランキングへ


FC2ブログランキングへ


keywords: fx-5800Pプログラム関数電卓バックアップ

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



関連記事

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

Casio Basic の勧め

.
追記 2018年02月26日

Casio Basic は、最近の カシオ 製プログラム電卓(プログラム関数電卓やグラフ関数電卓)に搭載されているプログラミング言語で、意外に高機能なので実用的なプログラムが作れます。科学技術計算目的以外にも実用的なプログラムを作れます。私自身、技術計算以外のために作った自作プログラムをほぼ毎日使い、技術計算プログラムはたまに使う程度です。

カシオのプログラム電卓で新世代 Casio Basic を勧めたくなるには、幾つかの理由があります。

新世代 Casio Basic でのプログラミングは敷居が低いこと、初心者にも覚えやすいこと、プログラミング経験者はスグに使えること、Casio Basic が意外に構造化プログラミング可能な高機能言語であることなどが、その理由に挙げられます。


目 次
  1. プログラミングは特殊技能なのか?
  2. 新世代 Casio Basic とは?
  3. Casio Basic 搭載機種の選定
  4. Casio Basic の習得は容易
  5. fx-5800P の勧め
  6. Casio Basic を勧める背景
  7. fx-5800P の利点と弱点
  8. Casio Basic の使いこなし


プログラミングは特殊技能なのか?

プログラミングは、理系や文系、男女差、年齢や経験などとは無関係に習得可能なことはよく知られており、IT企業ではごく普通に文系出身のSEやプログラマが活躍しています。特に Casio Basic は覚えることが少なく、簡単なので、誰でも電卓プログラミングが出来ると思います。

参考:
<トップへ戻る>

新世代 Casio Basic とは?

実際にCasio Basic を使いながら、取扱説明書には記載のない機能や仕様が分かってくると、以下に挙げる4機種に搭載されている Casio Basic が意外によくできていることが明かになってきました。

1) fx-CG50    (カラーグラフ関数電卓)
2) fx-CG20      (カラーグラフ関数電卓)
3) fx-FD10 pro   (プログラム関数電卓 - 土木測量向け)

4) fx-9860GII   (グラフ関数電卓)
5) fx-9860G   (OS 2.0 以降、グラフ関数電卓) 
6) fx-5800P      (プログラム関数電卓)


これらに搭載されている言語は、私は 新世代 Casio Basic と呼び、それ以前の言語と区別しています。

新世代 Casio Basic は、簡単に言えば、Getkey コマンドと 柔軟な Locate コマンドがあり、条件判定は基本的に 0 で偽、0 以外で真で、その上で構造化プログラミングが可能です。
  • Getkey[AC] キー以外の全てのキーに異なるキーコードが割り当てられ、押したキーをリアルタイムで判定できるコマンド。
  • Locate: パラメータに、即値以外に変数、式、コマンドを指定して位置を柔軟に指定して出力するコマンド。
  • 条件判定を 0 で偽、0 以外で真とできること
  • 構造化プログラミングGoto に頼らずにプログラムの制御を記述し、可読性の高いブロック構造でプログラミングする方法。
プログラミング経験者(特にPCでのプログラミング経験者)なら、新世代 Casio Basic は違和感なく使えます。

旧来の命令
新世代 Casio Basic には、以前のプログラム電卓に搭載されていた旧来の命令も搭載されています。カシオによれは従来のユーザーの利便性を考慮して旧来の命令を残しているとのことです。最近、この旧来の命令を使いこなして、どの程度のプログラムを作れるのか色々と試して、それを反映させたエントリーを Casio Basic入門38から連載を始めています。使いこなしを検討してみると、確かに一定レベルの実用プログラムを比較的楽に作れることが分かります。

旧来の命令は表記はシンプルでも、多彩な機能を持っています。プログラミング経験の少ない人でも簡単に使えて便利です。しかし、旧来の命令が機能が多彩であることが、逆にプログラミングの自由度を減らしているとも言えます。この旧来の命令では実現できないプログラムを作るには、Basicコマンドを積極的に使えばよいのです。旧来の多彩な命令と Basic コマンドを併せて使いこなすことで、自由度が高く、実用的なプログラミングが可能になります。

<トップへ戻る>

Casio Basic 搭載機種の選定

上記製品の中でも、特に fx-5800P は最も安価であり、さらにハードウェアとソフトウェアのバランスが良いため、実用に最も適していると思うので、私は愛用しています。fx-9860GII も Casio Basic プログラミングを楽しむために使っていますが、日常には実用性の高い fx-5800P を多用しています。fx-CG20 も入手してみると fx-9860GII の Casio Basicの移植性が高いことは確認済みです (グラフィックスの一部コマンドやカラー対応の部分に手を入れる必要があります)。fx-CG50 の Casio Basicプログラミングは fx-CG20 と完全互換です。

fx-CG50、fx-CG20、fx-9860GII、fx-5800P について簡単にまとめています;

- fx-CG50: fx-CG50 の概要

- fx-CG20: fx-CG20 の概要

- fx-9860GII: fx-9860GII USB POWER GRAPHIC 2

- fx-5800P: 本記事は主に fx-5800Pの勧め になっています

- Casio Basic - 機種間の互換性

- Casio プログラム電卓の価格動向


fx-CG50、fx-CG20 と fx-9860GII は、グラフィックス機能があり、高機能、高価格の製品(実売9千円台~2.5万円程度)で、これらの中で比較的安価な fx-9860GII は、処理速度が速い点が魅力です。さらに、fx-9860GII は Casio SDK (Casio 純正の開発環境)を使えば、パソコン上で C言語を使ってプログラムを作り、それを電卓に転送して Add-in プログラムとして利用できます。C言語で作った Add-in プログラムは、Casio Basicに比べてかなり高速動作し、Casio Basic では無理な処理も可能です。

fx-5800P
グラフィックス機能の無い fx-5800Pは、処理速度が相対的に低いものの、価格が圧倒的に安く(実売6~8千円程度)、関数電卓としてもプログラム電卓としてもバランスが取れた使いやすい機種です。

fx-5800P には プログラムリストを 通常の電卓モード (Comp モード) で呼び出して使えますが、fx-9860GII ではプログラムリストを表示するには一旦プログラムモードに入る必要があります。Casio Basicで作ったプログラムを日常的に使う場合は fx-5800P の方が利便性が高いことは、使ってみて分かります。fx-5800P と fx-9860GII を実際に使い比べてみると、日常使いには、バランスの良い fx-5800P が優れていると思います。

fx-9860GII
但し、プログラムの高速性やグラフィックス処理を重要と考えるなら、fx-9860GII も選択肢に入れるべきです。もし使いたい Add-in プログラムがあれば fx-9860GII が正しい選択肢となります。
例えば、当ブログで紹介している C.Basic (Casio Basic の上位互換、開発中) は fx-9860GII のアドインとして提供しているので、これが使いたいなら fx-9860GII がお勧めです。

fx-FD10 Pro
fx-FD10 Pro は、屋外使用を想定した堅牢な作りが特徴です。私自身が実機を持っていないので、取扱説明書から得られる内容から判断すると、上記の fx-5800P の使いやすさを備えていますが、実売1万6千円以上するが、Add-in プログラムが使えず Casio Basic のみが使えるので、fx-5800P と fx-9860GII の間にある機種だと感じます。従って、Casio Basic を使うのであれば、敢えて fx-FD10 Pro を選ぶよりも fx-5800P にするか、Casio Basic の上位互換の C.Basic が使える fx-9860GII を選択すべきだと思います。

fx-CG20 / CG10
fx-CG20 / CG10 は、カラー液晶が特徴で、内蔵の関数計算も高速化されています。但し、主に液晶への表示やメモリアクセス処理速度が fx-9860GII よりも遅く、Casio Basic プログラムの処理速度は fx-9860GII よりも遅くなります。さらに、オーバークロック・ツールを用いると fx-9860GII が fx-CG20 / CG10 の5倍以上高速になります。高精細カラー液晶の表示が必要だと考えるなら fx-CG20 / CG10 が良いのですが、それ以外の私なりの評価は、総合的に fx-9860GII の方が優れていると思います。

fx-CG50
fx-CG50 は、デザインや寸法が異なる以外は fx-CG20 / CG10 とほぼ同じ機能を持っていて、処理速度が向上しています。
 
 
<トップへ戻る>

Casio Basic の習得は容易

過去にPCでプログラミング経験があれば、Casio Basic はスグに使えると思います。私自身も過去にPCでのプログラミング経験があり、fx-5800P を買ってすぐにプログラミングができました。但し細かなところは取扱説明書に書かれていないので、自分で色々と調べました。その結果が当ブログです。

プログラミング経験があれは、当ブログの「Casio Basic コマンドリファレンス」、「Casio Basic入門」、「逆引き Casio Basic」を参考にすれば、すぐに使いこなせると思います。[2017/01/03 追記修正]

これからプログラミングをやってみようと思われる方の場合、新世代 Casio Basic を覚えることはPCで使う Basic 習得に有効だと思います。上で紹介した機種の中で特に fx-5800P は、ハードウェア的には最も非力ですが、最も安価で入手しやすく、さらに使いやすいので、学習用に向いています。僭越ながら、当ブログの Casio Basic 入門をほぼ理解できれば、Visual Basic の習得の敷居はかなり下がると思います。

Casio Basic のコマンドは、殆どが他のBasic と同じなので、覚えたことが将来無駄になりません。さらに必要最小限度の機能まで絞り込まれているので、覚えることが少いことが初心者向きの理由です。この点をもう少し説明してみます。

一般にプログラムを作る際、実現したい機能には無数の方法があります。無数の方法から適切な方法を選び出すことが、プログラミングの主な作業になるのですが、それは初級者には逆に習得の妨げとなります。Casio Basic は機能が少ないので、選択肢が限られます。従って、プログラミングの方法の選択で悩むことなく、必要なことを覚えやすいと言えます。色々なプログラムを作れば、効果的な反復学習になるわけです。

またコマンドが絞り込まれているので、アルゴリズムの工夫や計算式の応用で対応することになり、これも学習に向いていると考える理由の1つです。

機能が限定されていても、実用的なプログラムやゲームが作れることは、当ブログで紹介しています。実際にこれらのプログラムを作りながら、新世代 Casio Basic の良さに気付いたのです。実際に使ってみないと分からないものです。

<トップへ戻る>

fx-5800P の勧め

電卓でプログラミングを始めてみようと思う方には、私は fx-5800P を勧めます。

1.関数電卓としての fx-5800P
fx-5800Pは、関数電卓として見た場合、十分な機能を実現しています。プログラム機能の無い fx-995ES とほぼ同等の機能と操作性が有り、fx-5800P は高機能関数電卓と位置づけられます。カシオの関数電卓は電源を切ると、計算履歴もメモリの内容も全て消去されます。一方 fx-5800P は電源を切っても全てメモリに保存されたままです。これが関数電卓として fx-5800P を推奨する最大の理由です。

2.携帯型コンピュータとしての fx-5800P
携帯型コンピュータとして見た場合、手軽に実用プログラムを作れるので、パソコンでは真似のできない圧倒的な携帯性が最大の利点です。搭載されている Casio Basic は、ちょっとしたアクションゲームも作れます。実際に、fx-5800P のハードウェアの能力と Casio Basic の機能を確かめる目的で、「もぐら叩き」を作ってみました。結構遊べることが分ったので、冒頭で 『意外に良くできている』 と書きました。

3.Casio Basic
fx-5800Pに搭載されているCasio Basicは、グラフ関数電卓 fx-9860GII や fx-CG20 さらに 土木測量向けプログラム電卓 fx-FD10 pro に搭載されている Casio Basic と比べて、グラフィック機能や文字列処理、外部との通信機能を使うコマンドが省略されていますが、それ以外の機能は同じです。そして、fx-5800Pで作った Caso Basic プログラムは、上位機種への移植性が高いことは確認済みです。

<トップへ戻る>

Casio Basic を勧める背景

新世代 Casio Basic 搭載のプログラム電卓を勧めるには、いくつかの背景があります。

1. パソコンと同様な機能を求めない
パソコンでできることはパソコンでやれば良い。それをわざわざ電卓でプログラムを作る必要はありません。


2. サッと取り出し、パッと使える
必要な場所で、必要なタイミングで、上着やかばんのポケットからサッと出して、スグ使うのはパソコンでは絶対に出来ません。プログラムを作るだけで自分専用のオリジナル関数電卓が手に入ります。今や電卓は誰でも1台は持っている文房具です。プログラムを書くことで自分専用の機能にカスタマイズした文房具が手に入ります。


3. プログラムを簡単に作れる
ゲーム繰返し技術計算金融計算その他お金の計算単位や年月の換算時差計算 など作っておくと便利なプログラムが多くあります。自分に必要なプログラムを予め作っておくと、プログラム電卓のメリットは絶大です。

関数電卓の各種関数キーが[SHIFT]キーなどと併用しないと使えない(裏機能などと言われます)のは、2ステップキータッチが必要で効率が悪いとの評価基準があります(関数電卓マニアの部屋)。学生への関数電卓選びのガイダンスとしては、教育的配慮を斟酌すれば、私も100%同意するところです。しかし、この主張を金科玉条の如く受け売りする気になれないのも正直なところです。

実際に何度もキーを叩いて繰り返し計算を行う際には、プログラムを作ったり、数式記憶機能を使えば良いわけです。

道具は相応しい目的で正しく使えば良い。幸なことにfxー5800Pは、今や新品でも6000円程度で買えるので、2000円から3000円で関数電卓を買う変わりに、プログラム関数電卓を買うメリットを十分に感じる人は非常に多く居るはずです。ここでは、簡単なプログラミング・スキルがあれば良く、幸いなことにBasicを搭載しています。


4. 上位機へのプログラム互換性
高価で高機能なグラフ関数電卓や土木測量専業電卓への移植性が高いことは重要です。

fx-5800Pのハードウェア仕様に依存した部分を除けば、互換性、移植性が高いので、1からプログラムを作り直す手間はありません。上位機種を入手して、そこへfx-5800P のプログラムを容易に移植できるのは、Casio Basicの大きな利点です。

なお、カシオのグラフ電卓には、C、Lua、Python といった言語の開発環境(公式や非公式を含む)もあり、Casio Basic のプログラムを移植せずに別の言語でプログラミングする選択肢もあります。

fx-5800P の Casio Basicプログラムの fx-9860GII や fx-CG20 への移植をいくつか行いましたが、機種のハードウェアに依存するコマンド (GetkeyLocate)、旧来の命令 (出力命令 ◢ 、" "、入力命令 ? など) の動作の違いに適切に対処し、配列変数を行列やリストに置き換えれば、他の Basic コマンド類は互換性があります。


5. グラフ機能の優先度は低い
パソコンでできることはパソコンを利用する...と考えれば、プログラム電卓にグラフ機能は必ずしも必要ではないと思います。グラフィックスを利用したプログラムを電卓で使いたい場合は fx-9860GII のようなグラフ関数電卓を利用でき、Windows プログラミングよりは Casio Basic の方がプログラミングは遙かに楽です。

ゲームではなく、実用面からグラフ描画機能が欲しいと言う場合もあるでしょう。例えば、実験をしながらグラフを書くのは大変重要なことです。しかしそのために、プログラム電卓でわざわざプログラムを書く必要はあるでしょうか?
パソコンでエクセルを使えば、簡単にグラフを書けます。報告書、レポート、論文を書くのに最近ではエクセルのグラフが普通に使われているわけで、それなら最初からエクセルを使えば良いと思います。

私は、実用を強く意識して fx-5800P を使っていますが、グラフ機能がことさら必要だと思うことは殆どありません。本当に必要なら fx-9860GII などのグラフ関数電卓で、ブラフ表示をプログラミング可能です。しかし、正直に言えば グラフ機能の無い fx-5800P で十分に実用的なプログラムを作って、利用できます。

敢えて言えば、適材適所でしょう。そして Casio Basic 搭載機のなかでも fx-5800P は、プログラム利用の利便性が高く、小型軽量で、グラフ関数電卓よりもプログラム入力が格段に楽で、電池の持ちも長く、ハードウェアとソフトウェアのバランスが良いことは間違いありません。処理速度の遅い fx-5800P でも工夫次第で実用プログラムを作成できるので、プログラミング自体も楽しくなってきます。当ブログでは、その工夫について多く取り上げています。


6. 最も簡単にプログラミングできる携帯機器
Casio Basicを使うのなら、電卓本体のみでプログラミングできるので、いつでもどこでもプログラムを作れます。そして自分だけの付加機能を、恐らく最も簡単に追加できる携帯機器がプログラム電卓です。オリジナルプログラムを作りそれを使う楽しみと利便性があります。

<トップへ戻る>

fx-5800P の利点と弱点

fx-5800P は、新世代Casio Basic を搭載している点に最大の価値があり、同時に関数電卓としても使いやすい点が評価できます。関数電卓としてみた場合は、グラフ関数電卓 fx-9860GII よりも fx-5800P の方が必要な機能へのアクセスが速いので、使いやすいでしょう。しかしプログラミング時の使いやすさの点では fx-5800P が最も優れています。

fx-5800P のもう1つの利点は価格で、他の機種に比べて圧倒的に安価です。

要するに fx-5800P は、非常にバランスの良い製品と言えます。

fx-5800P に対する唯一にして最大の弱点は、プログラムコードのバックアップややりとりをパソコンとの間で行えるPCリンク機能が用意されていない点にあります。少なくとも fx-5800P 同志のプログラムデータのやりとりはできるので、外付けの3Pin - USB アダプタと対応ソフトウェアを発売して頂ければ実現するはずです。カシオ製でなく、サードパーティーでも良いのです。

PCとリンクしてプログラムを転送する機能の実現は、是非ともお願いしたい。

私の場合は仕事などで実用プログラムを作って、毎日のように使っていますので、電子データのバックアップ機能がどうしても欲しくなり、2台目の fx-5800p と専用通信ケーブル (SB-62)を購入しバックアップしています。なお、グラフ関数電卓を購入すれは、通信ケーブル(SB-62)は付属しているので、fx-5800P のために新たに購入する必要はありません。

[2017/08/18 追記] 最近はグラフ関数電卓に 3Pin ケーブルが付属していません。別途購入する必要があります。

[2017/09/28 追記] 2017年10月から国内販売される fx-CG50 には 3Pinケーブルが付属します。

[2018/02/26 追記] ついに fx-5800P のPCリンクが可能になりました ⇒ こちらの記事


<トップへ戻る>

Casio Basic の使いこなし

fx-5800P 搭載の Casio Basic は、使いこなしてみて初めてその価値が分かると思います。PCで一定以上のプログラミング経験があれば、この新世代 Casio Basicが構造化BASIC であることがすぐに分かると思います。カシオ自身がこの Casio Basic に関する情報発信を殆ど行っていないので、当ブログでは Casio Basic の使いこなしについて、異なる3つの切り口で紹介しています。

CasioBasic入門 / 目次
じっくりと読みながらプログラムを入力して Casio Basicの使いこなしやプログラムの作り方を修得する。題材のプログラムは、ある程度の完成度があり、実用的に使えるレベルになっている(と思う...)。

CasioBasic コマンドリファレンス 目次
Casio Basic のコマンドや命令を、出来るだけ詳しく調べた結果に基づいて解説している(抜けが無いことを祈るばかり...)。

逆引き Casio Basic 目次
Casio Basic で何か実現したいこと、やりたいことに対して、ピンポイントで実現方法、サンプルプログラム、考え方を紹介している(思いついたことから順次拡充中...)。

<トップへ戻る>



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





keywords: fx-5800PCasioBasicプログラム関数電卓

リンク集 | ブログ内マップ
関連記事

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

fx-5800P が大好き、だけど..

2017/11/11
追記 2018/02/25
最後に追記あり

I love fx-5800P still, but...

これは大声の独り言...

4年前に fx-5800P で Casio Basic の面白さに目覚めた。プアなハードウェアに結構使える言語、これを最大に活かすのが面白い。自分の研究メモ代わりにこのブログを始めた。

そのうち、グラフ関数電卓に移植し始めた。fx-5800P で動くなら、グラフ関数電卓でもサクサク動く。気がついたら、fx-9860GII が2台、fx-CG20、fx-9860GII SD、fx-CG50 が手元にある。

それでも fx-5800P が普段使いだ。理由はいくつかある。先ず使いやすい。グラフ関数電卓は、関数電卓としては使いにくい。fx-5800P の方が断然良い。もう一つの重要な理由はプログラムだ。まだグラフ関数電卓に移植していないプログラムが沢山ある。fx-5800P でしか使えない。小さく薄いので、カバンや上着のポケットに入れて持ち歩きやすいのも大切だ。

今、2番目のお気に入りは fx-CG50。これは、fx-9860GII 代わりに使える後継機種で、デザインが良い。当然 fx-5800P のプログラムは全て移植可能だ。だからこれも持ち歩いている。

ところが、である...

fx-5800P のプログラムを移植するには、全て手で入力しているわけだが、これが結構大変だ。昨日も1つのプログラム (サブルーチン2つ) を移植するのに、結局90分もかかった。かなり疲れた...

Casio Basic入門に掲載しているプログラムを打ち込む読者の気持ちも同じだろう。一旦移植してしまえば、fx-CG50 はカラー表示してより使いやすくなる。でも、まだまだ移植したいプログラムがある。先は長い...



[2018/02/25 追記]
ついにfx-5800P のPCリンクが実現した。チョットした電子工作が必要だが、試す価値はありそう。
 ついに fx-5800P がPCリンク可能になった

さらに、PCに保存したプログラムを編集したり、PCでプログラムが作れるようになった。PCでプログラムを編集・作成する時は fx-5800P の隠し機能を活かして、より多くの変数が使えるようになった。
 fx-5800P Casio Basic をPCでコーディング - CcEditor


fx-5800P のもう一つの弱点は、ヒンジが壊れやすくてスグにハードカバーが取れてしまうことだ。
カシオの部品として交換用ヒンジが家電量販店で安く(ナント¥81で !!) 入手できた。さらに部品のハードカバーとラベルを一緒に入手して (総額¥486 !!)、 fx-5800P がニューアル! リニューアルした fx-5800P にさらに愛着を感じます。
 fx-5800P の破損ヒンジの交換、ついでにリニューアル






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








keywords: fx-5800Pfx-CG50、CasioBasic、プログラム関数電卓

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



関連記事

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

fx-5800P の破損ヒンジの交換、ついでにリニューアル

2018/02/24
追記 2018/02/25

fx-5800P の破損ヒンジ交換

fx-5800P の大きな弱点の1つがハードカバーのヒンジが容易に壊れる点だ。
fx-5800P:ヒンジ破損でカバーが取れた

そこで、接着剤で破損拡大の予防を試みた。
fx-5800P カバーヒンジ破損の対策
破損拡大の予防効果はあり、クラックを補修後2年ほど延命したものの、結局壊れてしまった。

そこで、きちんと完璧に修理するためにヒンジ交換を行いたいのだが、一時期部品として入手が難しかった。

私が知る範囲では、カシオの部品としてヒンジと金属のスプリングピンを購入して修理した具体的で分かり易い事例が以下のページで紹介されている。

Motoruu Instruments:fx-5800P のヒンジを直す 修理

この記事は 2012年10月のものた。5年以上経過し状況が変わり、部品をかなり安く購入でき、修理できたので改めて紹介しようと思う。



交換部品としてのヒンジを入手

手元には、ヒンジが壊れてカバーが取れた fx-5800P が2台ある。そこで今回は、予備1個を含めて3個の部品を購入した。

現状では、4つのピンを含めたヒンジ部材として入手できる。
ヨドバシカメラでは、カシオからの取り寄せ部品の扱いで購入可能だった。なお部品仕入れの場合は、発注後にキャンセルできないので、ヒンジにスプリングピン4本が含まれているかどうかを何度か確認してもらった。

部品名カシオ部品コード番号単価 (消費税込み)数量 小計
ヒンジ / HINGE (WITH PIN)9482 2881 ¥813¥243

届いたヒンジは、4本のスプリングピンが刺さって1体になっていた。

ヒンジ新品2 ピン付きヒンジ

ヒンジは少し曲げたくらいでは簡単に割れないので、ヒンジをたわませて取り付ける。私が試した範囲では、先に本字をたわませてハードカバーに取り付けてから電卓本体に取り付けると、うまくいった。ちなみにヒンジには "CP+10%GF" と刻印があり、調べてみるとポリカーボネート+10%グラスファイバの意味だと分かった。

なお、ヒンジには左右があり、突起がある方をハードカバー側にして取り付ける。

ヒンジ取り付けの方向 

たかだか¥81(税込み)で完璧に修理できるので、お勧めだ!




fx-5800P のリニューアル

ついでに、細かいキズが入ったり摺り切れたカバーを新品にすれば気分が良い。
...ということで、ヒンジに加えて以下の部品も一緒に入手した。ヨドバシカメラで注文し約一週間の納期だった。

部品名カシオ部品コード番号単価 (消費税込み)数量 小計
ヒンジ / HINGE (WITH PIN)9482 2881¥813¥243
ハードカバー / H-COVER-GY344AY1025 8683¥2433¥729
ラベル / LABEL-A-GY344AYO1026 7871¥1623¥486



合計¥1458

ハードカバー新品の裏側処理 ハードカバーを部品として入手すると、簡単な取扱説明のラベル(粘着剤付き)を貼り付ける範囲に処理が施されていて、一旦貼ったラベルが取れにくくなっている。

このままだと、埃や汚れが付着し易く、さらに取れにくいことは容易に想像できる。また本来あるべきラベルが無いのはリニューアルとして不完全だ。そこで、ラベルも一緒に入手した。








ハードカバー新品1 ハードカバー新品3
ハードカバーは1個づつビニール袋に入っており、さらに緩衝材入りの箱に入っている。輸送中の損傷しない配慮は極めて日本的配慮だと思う。

ステッカー新品1 ステッカー新品2
ラベルは注文した3枚が段ボールに挟まれて保護されている。輸送中に曲がったり破損しない配慮だ。

ヒンジの修理だけでなくハードカバーが新品になるので、新品のような fx-5800P にリニューアルできる。

完全修理 

たかだか ¥486 で、fx-5800P がリニューアルできた。気分一新で fx-5800P をさらに愛着を持って使えるのは良いことだと思う。

ヒンジ修理のついでにリニューアル(税込み¥486)はお勧めできる!


ところで、家電量販店 (ヨドバシカメラ) で部品購入したので、部品にもかかわらず値引きされた価格だった。一般店でカシオから部品仕入れして貰った場合は下記の価格になると思われる。
 ・ヒンジ (スプリングピン4個付き):¥100 (単価)
 ・ハードカバー:¥300 (単価)
 ・ラベル:¥200 (単価)
それでも、¥100 でヒンジ交換、¥600 でリニューアルできるのは、お得ではないだろうか?



[2018/02/25 追記]
今回入手したヒンジ部品が、ひょっとして改善されたものかどうか?気になった。
fx-5800P:ヒンジ破損でカバーが取れた で原因の1つとして挙げている残念な設計は解消していない。つまりハードカバーをひっくり返すと、本体裏面の足の突起とカバーが接触しない構造のままだった。寸法上の設計変更はなされていないことが分かる。

次に、素材の改善の可能性があるかも知れない。スプリングピンによる応力への耐性が向上している可能性だ。ヒンジに刻印されている CP+10%GF は以前から変わっていないので、あまり期待できない。しかし、しばらく様子を見て簡単に破損しないようなら、改善の可能性ありということだ。




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






keywords: fx-5800PCasioBasic、データリンク、CcLinker

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


関連記事

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

fx-5800Pは良いプログラム関数電卓なのか?

2015/02/01 追記
2018/02/24 追記


最近、検索キーワード「fx-5800P」で当ブログへ来られる方が増えてきております。そこで、fx-5800P がどういうものか、簡単に紹介したいと思います。


一言で言えば、とてもバランスがとれた 日常使いに向いていて、作ったプログラムが使いやすいプログラム関数電卓です。フィールドエンジニア必携と言えますが、技術計算以外にも実用プログラムを作れるので、事務系や営業系でも役立ちます。


Casio Basic を搭載していて、プログラミングがとても楽なので、プログラミング経験者にはスグにオリジナルプログラムを作れます。
さらに、これからプログラミングを覚えようと言う方の学習用としても優れています。Casio Basicはカシオ独自のプログラミング言語ですが、基本的にはパソコンで使うBASICと共通する部分が殆どなので、パソコンでのプログラミングへの移行も楽です。

Casio Basicを搭載しているのは、グラフ関数電卓 fx-9860GII や fx-CG20に加えて、最近登場した土木測量向けの fx-FD10があります。但し、これらは実売で1万円~2万5千円程度と高価です。Casio Basicを搭載している最も手頃なものが、fx-5800P で、実売で6千円台半ばから7千円台程度です(一時期は最安値¥6,140と言うこともありましたが...)。

[2015/02/01 追記]
最近、fx-5800P の実売価格が¥6,000 前半から¥5,000台へ下がってきています。また fx-9860GII 並行輸入品も¥8,000円台全般へ値下がりしており、入手すやすくなっています。そこで、価格動向を調べています。
 ⇒ Casio プログラム電卓の価格動向

fx-5800P は、Casio Basicのプログラミング機能を考えた時のコストパフォーマンスがとても優れています。

※参考:fx-5800P搭載 Casio Basic のプログラミング入門、コマンドリファレンスを連載中 ⇒ Casio Basic入門 - 目次

(以上 2014/10/04 修正)

1.良いところ (pros)
1) 小型・軽量・薄型
重量150gで、シャツの胸ポケット、上着のポケットに収まるサイズ。163mm x 82mm で厚さ15mm。

2) 省電力
単4電池で、公称1年稼働。但し、購入時に付属していた「入れ組み」用電池(Panasonicのアルカリ電池)で、激しく使用して4ヶ月でLow Batteryの表示が出ました。
※激しく使用: 毎日30~1時間使用に加えて、数時間連続計算を何十回と繰り返したりする

3) 処理速度
・ 関数電卓としては、 fx-955ES よりも高速で、使いやすい。最上位の関数電卓と言える。
・ プログラム電卓としては、簡単なアクションゲームなら、ロジックの工夫次第でそこそこのものが作れる程度には速い。
・ アクションゲーム以外の実用プログラムなら、全く問題を感じない処理速度

4) プログラミング言語
・ CasioBasic搭載: 行番号の無い、いわゆる構造化BASIC。数百行のプログラムを効率的に書ける。
・ Getkey (リアルタイムのキーコード取得)やLocate コマンドが、実用プログラム作成を容易にする
・ CasioBasic独自の命令が、ステップ数の少ないロジック構成を実現し、処理速度の高速化に寄与する (例えば、Dsz、Isz、⇒ 命令など、fx-502P、fx-602P の流れを汲む命令)
・ プログラム領域が28KB程度で、プログラム数は無制限
・ 変数は26個(A~Z)、但し配列変数を用いると、プログラム領域から変数領域を切り出してさらに多くの変数を使える

5) 見やすい液晶ディスプレイ
・ 黒液晶で、見やすいフォントを採用
・ 16桁 X 4行 は意外に使える

6) キーの印刷が見やすい
・ 最近のカシオの関数電卓に共通するが、キーの印刷が見やすい


2.悪いところ (cons)
1) PCリンクの手段が無い
・プログラムのバックアップ手段としては、もう1台の fx-5800P に専用接続ケーブルで転送する方法のみ
 [2018/02/24 追記]
 fx-5800P とPCのリンクがついに実現 ⇒ こちら




2) プログラム実行速度
・ カシオのグラフ電卓 fx-9860G II や fc-CG20 に比べると処理速度がかなり遅い
・ 文字列処理の機能がない
・ 配列変数は、インデックスが自然数(0を使えない)
・ グラフィックス処理の機能がない

3) 360度フリップタイプのハードカバーのヒンジが弱く壊れやすい
 [2018/02/24 追記]
 壊れたヒンジは、愚品として購入して修理できる ⇒ こちら




6~7千円をどう考えるかですが、1台持っていても損は無いと思います。




応援クリックをお願いします。励みになるので...

人気ブログランキングへ


FC2ブログランキングへ

 

keywords: fx-5800Pプログラム関数電卓

リンク集 | ブログ内マップ
関連記事

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

fx-260 Sollar II のイースタエッグ

  2018/02/20

fx-260_Solar_II.png1行液晶、第1世代 の古い設計のまま、外装だけを fx-JP900 や fx-CG50 とほぼ同じデザインにリニューアルしたのが、fx-260 Solar II です。海外では 2017年に発売されたもので、国内では未発売です。同じ機能の fx-260A が国内でも発売されていましたが、現在は製造中止になっています。

なお、第1世代の設計というのは、例えば 30 と先に入力してから [sin] を押すような関数後置式の入力を行い、表示が1行のタイプです。リニューアルとは言え、新発売の関数電卓が第1世代のタイプというのは珍しいと思います。

そこで、fx-260 Solar II のイースターエッグ - 自己診断機能をまとめてみます。


左から fx-CG50、fx-JP900、fx-260 Solar II
Casio New Design


自己診断機能を開始させるキーの組み合わせと診断モードに入る隠しキーは、第3世代の fx-991ES、fx-993ES、fx-995ES と同じで、診断モードでは液晶表示チェックとキー入力チェックを行います。但し液晶がドットマトリックスではなく8セグメントなので、表示診断の詳細は異なります。


自己診断モード

診断モードに入るには、[SHIFT]+[7] を同時押ししたまま [ON]を押します。この操作は電源が入っている、入っていないに関わらず有効で、最近のカシオのスタンダード関数電卓でほぼ共通です。

診断モードに入ると、左端に AC と表示されます。
ここで何もしないと、診断モードを抜けて通常の計算モードに移行します。この表示がされた後、タイムアウトする前に [9] を押すと診断ル-チンが始まります。

その後は以下のように推移します。どの段階でも [ON] を押せば診断モードが中断し、計算モードになります。

操作画面出力
[SHIFT]+[7]+[ON]診断モードに入る、左端に AC と表示
1[9]液晶のインジケータと全セグメントON
2[SHIFT]液晶のインジケータと全セグメントOFF
3[SHIFT]偶数位置のインジケータとセグメントの半分がON
4[SHIFT]上記がOFF、残りのインジケータとセグメントがON
5[SHIFT] 010 P010 AC と表示
ファームウェアバージョン表示か?
6[AC]00 と表示
7[SHIFT]01と表示、他のキーは受け付けない
8[MODE]02と表示、他のキーは受け付けない
9[x-2]03と表示、他のキーは受け付けない
10[log]04と表示、他のキーは受け付けない
11[ln]05と表示、他のキーは受け付けない
12[ab/c]06と表示、他のキーは受け付けない
13[°’ '']07と表示、他のキーは受け付けない
14[hyp]08と表示、他のキーは受け付けない
15[sin]09と表示、他のキーは受け付けない
16[cos]10と表示、他のキーは受け付けない
17[tan]11と表示、他のキーは受け付けない
18[+/-] から [MR] まで左から右へ順に押す12, 13, 14, 15, 16, 17 と順に表示、他のキーは受け付けない
19[7] から [AC] まで左から右へ順に押す18 から 22 まで順に表示、他のキーは受け付けない
20[4] から [÷] まで左から右へ順に押す23 から 27 まで順に表示、他のキーは受け付けない
21[1] から [ー] まで左から右へ順に押す28 から 32 まで順に表示、他のキーは受け付けない
22[0] から [=] まで左から右へ順に押す33 から 36 まで順に表示、他のキーは受け付けない
23[M+]Good    AC と表示
23[AC] 他何かキーを押す診断モード終了、計算モードへ移行

なお、ステップ5で  010 P010 AC と表示されている状態で、
 - [0] を押すと、右端のインジケータ SD が点灯、
 - [1] を 押すと、- - 09 -1 - AC と表示
となり、さらに [AC] を押すと ステップ 6 に戻る



関連ページ:
- fx-JP900 のイースターエッグ - 診断機能
- fx-995ES / fx-993ES / fx-991ES の診断機能
- fx-991MS のイースターエッグ - 診断機能
- fx-991W のイースターエッグ - 診断機能

- fx-5800P のイースターエッグ - 診断機能
- fx-9860GII のイースターエッグ - 診断機能
- fx-CG20 のイースタエッグ - 診断機能
- fx-CG50 のイースタエッグ - 診断機能




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








keywords: fx-260 Solar II関数電卓

リンク集 | ブログ内マップ
関連記事

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

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 プログラミングのための役立ちツール




最新版のダウンロード

   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


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



関連記事

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

新しい "カシオのカタチ" の広がり - Casio fx-260 Solar II

追記 2018/02/17

fx-260 Solar II のデザイン

fx-260_Solar_II.png 
とね日記でこの電卓が紹介されたのをみて、興味を持った。

なんと、fx-JP900 や fx-CG50 とほぼ同じデザインだ。ただその一点で購入した。海外では 2017年発売だが、日本では未発売のモデルだ。Amazon Japan で入手できたのでポチッとした。

関数電卓としては3世代前の古いタイプで、30 と入力してから [sin] を押す方式で、表示は1行しかない。この機種は、既に国内で製造中止になった fx-260A と同じ機能で、デザインのみが刷新されたもの。関数電卓マニア での fx-260A の評価は低い。

Casio Basic がメインテーマの当ブログで紹介するのは、こんな古い設計の電卓をデザインだけリニューアルして発売したことに興味を持ったからだ。

関数電卓の設計としては非常に古い第1世代のもので、カシオは国内では既に発売していない、しかし、リニューアルして海外で売り出す意図はどこにあるのか?私が勝手に言っている"新しいカシオのカタチ" がこんな形で広がりを見せるのは、とても興味深い。

液晶表示タイプのカシオ関数電卓の進化について、私は以下のように考えている。

  世 代表示行数入力方式出力方式代表的機種 (管理人所有機種)
第1世代1行表示
置数後に関数入力

置数と計算結果fx-260 Solar II
FX-502P, FX-602P
 
第2世代2行表示数式通り入力入力表示行と結果出力行を分けるfx-991s, fx-991W, fx-991MS
FX-603P, fx-4500P
 
第3世代複数行表示数式通り自然入力数学自然表示 (積分や総和記号入力も)fx-991ES, fx993ES, fx-995ES
fx-5800P, fx-9860Gシリーズ
 
第4世代高精細
複数行表示
数式通り自然入力数学自然表示 (積分や総和記号入力も)fx-JP900, fx-JP700, fx-JP500
fx-CG50
※ "新しいカシオのカタチ" 適用機種は赤文字で示した。

ハードカバーと裏面が白のもの、左から fx-CG50、fx-JP900、fx-260 Solar II
Casio New Design 

前面パネルまで同じもの、左から fx-CG50、fx-JP900、fx-700JP、fx-500JP、fx-260 Solar II
New_Casio_Design 

第1世代の fx-260 Solar II は小型で薄型、軽量なので、ワイシャツの胸ポケットにすっぽり収まる。普段はせいぜい四則演算くらいしか使わず、実験や工作中にチョット関数計算をしたいという需要は結構あるのだろう。私も工具箱に放り込んでいる。アメリカ価格 $8.99、実売はおそらく半値に近いとすれば、販売台数が見込めるのではないか?

カシオは、新しいデザインをマーケティングに利用したいのだろうか?
使用部材を一定数以上確保するために、新デザインでリニューアルしたのだろうか?
今後一般電卓にも同じデザインが適用されるのだろうか?


プログラム関数電卓への広がりを期待する

プログラム関数電卓といえば、fx-5800P が唯一の製造機種だ。今後の展開が楽しみだ。fx-5800P に "新しいカシオのカタチ" を適用し、以下のチョットした機能が追加されたらうれしい。

▶ 同様の分離型のハードカバーを適用 (ヒンジ破損の解消)
▶ 高精細度液晶を搭載
 ・ Casio Basic で21桁x7行テキスト表示 (fx-FD10 Pro準拠で良い) [2018/02/17 追記]
▶ 3桁区切り機能を搭載


最低この程度が実現したら、間違い無く買いだと思う。

[2018/02/17 追記]
fx-FD10 Pro の Casio Basic は fx-9860Gシリーズのサブセット版になっていて、グラフィックス機能のないテキストベース出力のみになっている。fx-5800P の後継はこれで良いと思う。fx-JP900 や グラフ関数電卓の MENU画面は、アイコンを並べた形式で共通点がある。以前から fx-FD10 Pro は fx-5800P 後継機のテスト版ではないかと思っており、新しいデザインの展開が始まったことから、いよいよ fx-5800P の後継機への期待が高まってくる。





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






keywords: fx-5800PCasioBasic、データリンク、CcLinker

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



関連記事

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

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

やす (Krtyski)

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


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

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

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

おもしろい・役に立つならクリックしてください。励みになります。
にほんブログ村 IT技術ブログ 開発言語へ
にほんブログ村


人気ブログランキングへ


FC2ブログランキングへ


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

リンク
月別アーカイブ
Sitemap

全ての記事を表示する

RSSリンクの表示
最新トラックバック
ブロとも申請フォーム

この人とブロともになる

QRコード
QR