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

fx-5800P
e-Gadget


2014/9/27更新


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

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

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



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

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

ここしばらくは、公私ともに忙しくしているため、プログラムを触る時間を殆どとれずにいますが、以前作ったプログラムは毎日のように使っています。上位機種を購入することも考えましたが、プログラムを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万円超えと言うのは、チョット抵抗がありますね。



壊れたヒンジ部の補修については、うまくできたら紹介しようと思います。



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





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

人気ブログランキングへ


FC2ブログランキングへ


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

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



関連記事

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

コメントの投稿

非公開コメント

fx-5800Pの速度差

fx-5800Pの速度問題について気が付いた所ありますのでこちらにてコメントさせていただきます。

一年に一度も交換してなかった5800Pの電池ですが、ローバッテリーが出たので、電池交換のついで裏ぶたを開けてみた所、なんと外付けの発振子なるものが一つも見当たらないのですね。

以前から夏冬で速度が微妙に違っている気がしてましたが、これはもしやCR発振で動作しているかもしれません。

「Calculator Benchmark」でぐぐると一番上に出てくる電卓ベンチマークサイトで、
載っているfx-5800Pの結果は3分47秒。
うちのは4分5秒でしたので誤差とはいえないくらい違ってました。
FX-603P,fx-9860G/II/CG10等、手持ちのの結果はほぼ同等だったのでfx-5800Pは誤差といえない以上の個体差があることになりますね。

FX-602Pの時代はCR発振が当たり前で個体差が結構あった記憶ありましたけど、FX-603Pやfx-4800Pの世代では普通にセラロックが使われてて個体差による速度差はほとんどなかったはずです。
ので、これはこれでちょっとびっくりでした。
ま、今時の電卓はグラフ電卓以外はすべてCR発振っぽいので、fx-5800Pもその流れなのでしょうか。

あと、発売時期によって内蔵Casio Basicのバージョンが違ってて速度差が出ているという可能性もありますね。
fx-9860GではOSのバージョンが変わるごとに結構速度差が生じてました。
(先のベンチマークサイトでもOS1.0とOS2.0で倍くらい違っていたりします。)
fx-5800Pは内部バージョンを知る方法がわからないのでそのあたりはなんともいえないところなのですが。

ベンチマークやってみました

santato様

教えて頂いた サイトで、2台の fx-5800P のベンチマークをやってみました。


・古いfx-5800P: 3:58

・新いfx-5800P: 4:04

という結果でした。3回やってほぼ同じでした。

2台とも同じ部屋に置いていたので温度はほぼ同じです。

6秒(2.2%)違い。

サイトにある3:47より少し遅い結果ですが、santaroさんの結果とは大きく異なりました。


素因数分解をやってみました。
987654321 (= 3^2 x 3607 x 3803)

・古いfx-5800P: 2:41

・新いfx-5800P: 2:44

3秒(1.9%)違い。


2台の間では、ほぼ2%の違い。

但し、体感としては、はっきりと遅さを感じます。


CR発振の周波数は、温度依存性が大きいのでしょうか?
santaro様と私の結果で、考えられる環境要因の違いが温度くらいしか思いつかないからです。

以前Low Batteryのサインが出て、電池を交換したら全体的に速度アップした感覚があるのですが、電源電圧の影響があるとのではないかと疑っていました。

No title

>・古いfx-5800P: 3:58

>・新いfx-5800P: 4:04

新しい方がうちのと1秒差なのでほぼ同じですね。

fx-5800Pの発売は2006年くらいだったと思うので、管理人様のfx-5800Pは古い方が2007年ということなので初期の個体ですよね。
私が購入したときは3年くらい前でしたけど、管理人様の新しい方に近いみたいです。

となると、ベンチマークサイトの結果は管理人様の古い方から比べても5%くらい速いということになりますが、個体差にしては大きすぎる気もします。


>CR発振の周波数は、温度依存性が大きいのでしょうか?

CR発振は数%くらいは軽く変動しますからかなり変動率は大きいと思います。
0.1%程度しか変動しないセラロックに比べるとかなり安定度の違いがありますね。


>以前Low Batteryのサインが出て、電池を交換したら全体的に速度アップした感覚があるのですが、電源電圧の影響があるとのではないかと疑っていました。

うちの電卓の電池はすべてエネループにしてるせいか電圧変化での速度差というのは感じたことはなかったんですけど、CR発振ということであれば電圧の影響も確実に現れると思われます。
fx-5800Pは電池一本での動作なので昇圧したのちに安定化してるはずなので電池が元気な時は電圧変動はないはずですが、
電池が弱って供給力が不安定になってくるとの動作電圧もある程度低下する可能性はありですね。


あとは内蔵ソフトのバージョン違い等で速度差が出る可能性は、管理人様の二つの個体で動作が微妙に違うところがあればはっきりわかるのですが、内部の話なのでわかりにくいところですね。

同じ機種同士で新しいのが微妙に速くなってる分には何も問題ないですけど、新しいのに遅くなるのはちょっとあれですね。

fx-9860Gシリーズやfx-CG10/20みたいに何か速くする裏技とかないものなのでしょうかね(笑)

No title

あ…管理人様の古い方はわずか11ヶ月前なので一年前でしたね。大変失礼いたしました。

管理人様の二台はどちらも私のよりも新しいってことは、やはり個体差の範囲なのでしょうかね。

santaro様

fx-5800Pを初めて買ったのは2007年でした。殆ど関数電卓として使っていて、fx-993ESと併用していました。

電卓プログラミングと言えばFX-603Pを使っていて、チョット必要な時に気楽にプログラミングするなら、PCで作った方が楽で、fx-5800Pも似たようなものだろうと、勝手に思っていました。

それでも、幾つか日常的なプに使うプログラムを適当に作ったりしていました。

本当に適当でした。

で、そのfx-5800Pが盗難にあい、2013年に2台目を購入。

適当に作ったプログラムを入れ直す時、もうチョットまともなモノに書き直したくなり、真剣に電卓プログラミングに取り組んだことで、Casio Basic との本当の出会いだったわけです。

おっしゃる通り、現在の2台は、最近のロットです。

盗難に遭っていなければ、当ブログは存在しなかったことでしょう。

確かに、santaro様の5800Pとの差はあまり無いようです。CR発振だとすれば数%の誤差は当たり前とのこと、参考になります。

fx-5800Pは、本当になにも弄れないようですね。関数電卓に近い印象です。

片や、9860GII シリーズは弄ところがけっこあるようですね。

めでたく9860系のオーナーになったときは、高速化技をぜひたこもご伝授頂きたいです。

No title

>で、そのfx-5800Pが盗難にあい、2013年に2台目を購入。
>盗難に遭っていなければ、当ブログは存在しなかったことでしょう。

なんか不思議な縁というかなんというか、このブログが誕生したきっかけが盗難からというのがかなりすごいエピソードです。

それにしても、fx-5800Pを盗むって…全くとんでもない輩がいるものですね。


ところで、
fx-5800Pは前に消費電力を計測したことがあったのですが、
電源切った状態で約0.04mA、
電源を入れる時に約20mA以上、
そのまま表示するだけで約0.2mA、
プログラム実行時に約5mA、
電源を切る時に約10mA、
という感じで、
電源オンオフでのフラッシュROMの書き込みと読み込みがあるので通常よりも電力消費があります。
このせいで電池がそこそこ弱ると起動しないので、エネループのような最期の落ちが急な充電池では電池がなくなるとすぐに起動しない状態に陥ると思われるので電圧低下での速度変化があまり出なかったのではと推測しています。


>fx-5800Pは、本当になにも弄れないようですね。関数電卓に近い印象です。

FX-602Pあたりだと抵抗一本追加したら速度が倍とかあって結構面白かったんですけど、今時のハードなのでそういうこともなさそうですよね。


>片や、9860GII シリーズは弄ところがけっこあるようですね。

ハードをいじることが禁止されてないのでいじりがいはかなりありますね。

CPU的にはSH3はさほどいじれない印象ですが、SH4Aはメーカーからの情報は何も無いのに等しいのに有志の方々の解析情報があるのでいじれ過ぎて怖い位ですから、もうなんでもありです(笑)


>めでたく9860系のオーナーになったときは、高速化技をぜひたこもご伝授頂きたいです。

はい、私に分かる範囲であれば何でもサポートさせていただきます。

santaro 様

電流測定結果を拝見すると、マメに電源を切るよりも、放置してオートシャットオフにまかせた方が、電池の持ちがよさそうですね。

面白いことを教えて頂きました。


展示会で、ノートと一緒にほんの数秒間、ヨコにおいた瞬間、fx-5800P だけヤラレました。






Link機能について

貴ページを見てfx-5800Pに興味を持ち購入しました。
専用ケーブルが販売終了(?)で入手できなかったので、掲載していただいた写真からコネクタは2.5mmステレオプラグだと当りを付け、3線式シリアル転送であれば単純なクロス配線だろうということで2.5mmステレオケーブルを買ってきて配線をクロス接続にしたところ、問題なく通信できました。
信号の仕様は、Highレベルが約2.5Vのクロック同期式でした。
一般的な調歩式ではないので直接PCと通信させるのは難しいと思いますが、プロトコル自体は単純なので、適当なマイコンを用いてプロトコル変換をさせればPCと単純にデータ送受させる段階まではそれほどハードルは高くないと思います。
ただし、プログラムの転送は文字ではなく中間コードを使っていると思いますので、PC上でプログラムを入力し転送するレベルまで対応させようとすれば地道な作業が必要になりますが・・・。

Re: Link機能について

kikkawa様


> 貴ページを見てfx-5800Pに興味を持ち購入しました。

うれしいです。


> 専用ケーブルが販売終了(?)で入手できなかったので、掲載していただいた写真からコネクタは2.5mmステレオプラグだと当りを付け、3線式シリアル転送であれば単純なクロス配線だろうということで2.5mmステレオケーブルを買ってきて配線をクロス接続にしたところ、問題なく通信できました。
> 信号の仕様は、Highレベルが約2.5Vのクロック同期式でした。

貴重なご報告を頂き、ありがとうございます。


> 一般的な調歩式ではないので直接PCと通信させるのは難しいと思いますが、プロトコル自体は単純なので、適当なマイコンを用いてプロトコル変換をさせればPCと単純にデータ送受させる段階まではそれほどハードルは高くないと思います。
> ただし、プログラムの転送は文字ではなく中間コードを使っていると思いますので、PC上でプログラムを入力し転送するレベルまで対応させようとすれば地道な作業が必要になりますが・・・。

なるほど、中間コードの解読が肝心ということですね。

私は電子回路はサッパリ分からないので、誰かが続いて実現してくれないだろうか、と思うばかりです。




Re:Link機能について

kikkawa様、はじめまして!

>一般的な調歩式ではないので直接PCと通信させるのは難しいと思いますが、プロトコル自体は単純なので、適当なマイコンを用いてプロトコル変換をさせればPCと単純にデータ送受させる段階まではそれほどハードルは高くないと思います。

ぉお!すごいです!
fx-5800Pの外部へのリンクは現行ユーザーとして一番欲しい機能と言っても過言ではないので、すごくすご~く期待したいです(^^)


>ただし、プログラムの転送は文字ではなく中間コードを使っていると思いますので、PC上でプログラムを入力し転送するレベルまで対応させようとすれば地道な作業が必要になりますが・・・。

fx-5800Pを2台繋いだ状態でないとプログラム転送は機能しないかもですが、中間コードはもしかしたらfx-9860GIIシリーズと共通かもしれません。
こちらにfx-9860GシリーズのCasioBasic中間コード一覧表が掲載されています。
fx_calculators_SuperH_based.chm (20)
http://www.casiopeia.net/forum/downloads.php?view=detail&df_id=72

転送機能の解析は一筋縄ではいかないかもしれませんが、同じCasioBasicのグラフ電卓ともリンク出来ればCasioBasicネットワークが劇的に広がるので、何かお役に立てることがあれば出来る限りサポートさせていただきます(^^)

Re:Link機能について

やす様、sentaro様 コメントありがとうございます。

通信中の波形をオシロスコープで観測した結果を改めて書くと以下の通りです。

・通信中は2本の線それぞれ同時に矩形波が観測される。
 一方がクロック、もう一方がデータらしい。
 クロック側のタイミングが数マイクロ秒早い。

・クロックのマーク幅、スペース幅は共に65マイクロ秒程度で
 マーク・スペース比率は1:1、周波数換算では8kHz弱程度。

・データのマーク幅はおおよそ130マイクロ秒の倍数。
 クロックの1周期(マーク+スペース)に同期。

・データ線、クロック線は送受で入れ替る。(I2Cのように固定ではない)

> 私は電子回路はサッパリ分からないので、誰かが続いて実現してくれないだろうか、と思うばかりです。

私も電子回路はあまり得意ではありませんが、fx-5800Pの信号は単純な矩形波でアナログ的な処理は必要ないので電子回路は電圧調整くらいで済みそうです。
マイコンをつないでしまえば、あとすべてソフトウェアの領域です。
出来合いのマイコンボードを使えば電子工作も最小限で済みます。
マイコンに下記のようなプログラムを書いて仲介させれば、PCからはシリアルポート経由で通信する要領でfx-5800Pと通信できるようになります。

・受信時には規定のタイミングでクロック信号を出力(出力ポートを65マイクロ秒間隔でON/OFFさせる)しつつ、そのタイミングに合せてデータ線がONかOFFかを読み取り、PCに送信する

・送信時にはクロック信号を読み取り、クロック信号のタイミングとPCから送られてくる送信データの内容に合わせて、出力ポートをON/OFFする

まずは、通信プロトコルを解析して、まずはfx-5800PとPCの間で単純なプログラムの送受信ができるように。さらに中間コードを解析して、PC上でのプログラム入力、編集が行えるようにという手順になるかと思います。

Ardiunoなどを使えば電子工作の手間もそれほどかからないと思います。


> こちらにfx-9860GシリーズのCasioBasic中間コード一覧表が掲載されています。

中間コード一覧は全く同じでなかったとしてもメーカーのコード割当の傾向が分かるので参考になりありがたいです。
ただし、ダウンロードしてみましたが、ヘルプの項目は表示されるものの、項目の本文が表示されません。
sentaro様は中身の閲覧ができましたか?

また、プログラム受信までできるようになればプログラムがファイル化できるので、皆さんの力をお借りして解析を進めることができると思います。

Re: Re:Link機能について

kikkawa様

ヘルプファイルについて...

Win7以降は、デフォルトでヘルプファイルがブロックされる仕様になっているので、設定でブロックを解除すれば見えるようになると思います。

ヘルプファイル上で、右クリックしてプロパティーを表示⇒全般タブ→下にあるブロックを解除するにチェックを入れて反映させる

これで読めるようになると思いますので、ご確認ください。

Re:Re:Link機能について

kikkawa様、こんにちは!

>ただし、ダウンロードしてみましたが、ヘルプの項目は表示されるものの、項目の本文が表示されません。
>sentaro様は中身の閲覧ができましたか?

私も最初に開いた時には右側が表示されなかったのでちょっと?になってました(^^;

管理人様が書いてくださった対策でおそらく大丈夫だと思われますが、
http://media.taricorp.net/prizm/simon_chm/fxCG20_OPCODES.htm
(ちょっと内容が古いのですが)webページも存在していますので、chmファイルがNGな場合は参照されてみてください。

Re:Link機能について

皆さんこんばんは。

fx-5800Pの通信機能に興味を持ち、2台目を購入して通信させ解析を始めましたが、肝心のプロトコルが意外と複雑で、壁に当たりました。

kikkawaさんの確認された所までは辿り着きました。が、

>一般的な調歩式ではないので直接PCと通信させるのは難しいと思いますが、プロトコル自体は単純なので、適当なマイコンを用いてプロトコル変換をさせればPCと単純にデータ送受させる段階まではそれほどハードルは高くないと思います。

というプロトコルの部分について、データフォーマットを含めて、もう少しヒントが無いと先に進めなくなりました。(8bit単位のフォーマットではありませぬ)
最も単純なプログラムファイルを転送させても、通信内容は単純にならなかったので、どうしたものかと。

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

やす (Krtyski)

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


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

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

おもしろい・役に立つならクリックしてください。励みになります。

人気ブログランキングへ


FC2ブログランキングへ


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

リンク
月別アーカイブ
Sitemap

全ての記事を表示する

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

この人とブロともになる

QRコード
QR