fx-9860GII への移植 - 厄介な 旧来の命令

2015/01/12 追記
2017/06/29 更新


fx-5800P から fx-9860GII への移植

5800と9860、外観 
fx-9860GIIfx-5800P


これまで、fx-5800P のCasio Basicで作ったプログラムを fx-9860GII へ移植してきて、留意点がだいたい分かってきました。以下の項目以外は、ほぼコンパチと思ってよさそうです。


1) Getkey
キーコードはハードウェア依存するのでキーコードさえ変更すれば、Getkey コマンド自体の動作は同じなので移植に問題なし。
 ⇒ Casio Basic コマンドリファレンス - Getkey

2) Locate
Locate コマンドの動作は同じで fx-5800P からそのまま移植可能。fx-9860GII が持つ広い画面に合わせて最適化する場合は、引数を変更すれば良い。
 ⇒ Casio Basic コマンドリファレンス - Locate

3) Cls
fx-5800P 搭載 Casio Basic の Cls は、fx-9860GII では ClrText に相当する。機能は全く同じ。内部カーソル行のリセット機能まで同じ。
 ⇒ Casio Basic コマンドリファレンス - Cls


4) 配列変数
fx-5800P 搭載 Casio Basic の配列変数は、fx-9860GII の Caso Basicには含まれていないため、代わりに行列を使えば良い。


5) ◢ (出力)命令
出力動作後、一時停止状態の際、- DISP - と表示される。その表示行は完全に占拠されるためプログラムで使えなくなる。今のところ - DISP - の表示を止める方法が見つかっていない。fx-5800P で 命令を使った画面構成は、fx-9860GIIでは崩れてしまう。画面構成を壊したくないなら、 命令を使わずに Locate を使い、さらに以下のような [EXE] キー待ちのコード(2行)加えると、 命令と同様に一時停止し  [EXE] キーでプログラムを先に進めるようにできる。

Locate X,Y,"HogeHoge"
Do
LpWhile Getkey≠31



6) " " (出力)命令
fx-9860GII 搭載 Casio Basic の " " (出力)命令は、fx-5800P とは別物といって良く、私はプログラムでは使えないと思う。
以下の2行のコードを、fx-5800P と fx-9860GII の両方で走らすと、その違いが分かるだろう。

Locate 10,1,"RIGHT"
"LEFT"


fx-5800P での出力は、
LEFT     RIGHT

fx-9860GIIでの出力は
LEFT

上の2行のコードの1行目と2行目を入れ替えれば、fx-5800P と fx-9860GII は同じ表示結果になる。

fx-9860II 搭載の Casio Basic の " " (出力)命令は、チョット我が強く、1行丸々自分のために占拠する。◢ (出力)命令も1行丸々占拠するので、このあたりは同じ。fx-9860GII の Casio Basic はマイナーバージョンアップしており、その際に旧来の命令の仕様が変わったと思われる。

[追記]: CFX-9850GC (PLUS は付かない)、PRIZM fx-CG10 (fx-CG20と同じのUS版) でも fx-9860GII と同じ動作とのこと。従って、fx-5800P だけが独自のチューニングを行っていると思われる。


7) ?→ (入力)命令
我の強い " "(出力)命令の性格を引きづり、fx-9860GII では使いにくいものになっている。
上記の" "(入力)命令の違いを示すコードと同様にして、以下を fx-5800P と fx-9860GII で動作させると、違いが分かる。

Locate 10,1,"RIGHT"
"INPUT"?→A


fx-5800Pでの出力は、
INPUT?   RIGHT
[入力桁]

fx-9860GIIでの出力は、
INPUT?
「入力桁]

RIGHT が出力される前提で書いた fx-5800P のコードは、そのまま fx-9860GII では使えない。
RIGHT 表示を右側に残して INPUT? と表示させ、1行下が入力行となるのがfx-5800P の動作だが、fx-9860GII では頑固な " " 出力に占拠された1行目に RIGHT を表示させた状態で入力させることは不可能(と思います)。


8) ?(入力)命令
fx-5800P では、?記号単独で入力命令として使えるが、fx-9860GII ではこれが使えない。

fx-5800P では、以下のコードが書ける。

"INPUT"?A

すると、予め A に代入されている値が表示される。これの良いところは、プログラムを使っていて A の値を変更する必要が無い場合は、数値入力せずに [EXE] キーを押すだけで入力が確定するので、入力の手間が省ける。

fx-9860GII では?に続いて → (代入命令) が必要であり、必ず数値入力をしないと [EXE] で確定できない。

'INPUT"?→A

なお fx-5800P でも上記 8) で示したように、この記法は可能であり、?(入力)命令に柔軟性がある。fx-FD10 Pro でもこの記法が可能なようである。


9) 関数
関数の ( ) の扱いが変更されている。fx-5800P では関数の後に ( が必要なので入力時に ( が自動的に付加される。fx-9860GII では入力時に ( が付かず代わりにスペースが入るように変更されている。但し ( ) を付けても問題なく動作するので fx-5800P からの移植性には影響しない。

しかし、fx-9860GII では関数入力時に ( が自動的に付かないので、計算の優先度については、より注意が必要。例えば、

fx-5800P での

Int(log(X)+1)→G ・・・(1)

は、fx-9860GII でそのまま使える。

fx-5800P で Int を入力すると Int( と表示されますが、fx-9860GII では Int + [スペース] と表示され、以下のように ( ) なしでの記述が可能で、エラー無しに動作する。

log X

sin X

Int log X +1→G ・・・(2)
 
(1) と 式 (2) は異なる結果を与えることに注意が必要だ。

式 (2) は、Int(log X)+1→G と同じだ。

式(1)と(2) が異なる結果を与える原因は、Int 関数が及ぶ範囲が異なっているためだ。つまり  fx-9860GII で関数を使う際には、計算の優先度と順序をよく考えてなくてはいけない。入力時に ( ) を付けなくて良い仕様は、数式通り入力の機能を Casio Basic にそのまま適用したことによると推察されるが、プログラミングの立場から見れば改悪だと思う。fx-5800P の括弧付きの仕様に戻すべきだ。[2017/06/29 更新]

(1)と同じ計算結果を得るためには、(2)を

Int (log X +1)→G

と変更する必要がある。



fx-5800P から fx-9860GII に Casio Basic プログラムを移植する際、同一の動作をしない命令/コマンドをリストアップしたが、その中でも fx-9860GII 搭載 Caso Basic の " " (出力)命令は、完全互換の動作にするには、旧来の命令を使わずに Basic コマンドのみで互換動作を実現すればなんとかなりますが、fx-5800P からの移植の際に大幅にコードを書き直さなければならないケースがあります (経験済みです)。

これで苦労するくらいなら、" " (出力)命令を使わず、当ブログオリジナルの汎用サブルーチンである 入力ボックス 2.1G (fx-9860GII 専用) を使って入力部分を書き直す方が楽になることもあり(経験済み)、お勧めです。[2017/06/29 更新]

fx-5800P 搭載 Casio Basic は旧来の入出力命令とBasic準拠命令の折り合いがまだ良いのですが、fx-9860GII 搭載のマイナーバージョンアップした Casio Basic は旧来の入出力命令が使いにくくなっています。

旧来の入出力命令は fx-5800P でも柔軟だとは言えないのですが、fx-9860GII でさらに柔軟性が損なわれています。Casio Basic プログラムを書く時は、旧来の入出力命令を使わない方が良いのではないかと、私は思います。

Caso Basic進化に伴って旧来の命令を軽視する方向性が心配されますが、一方で 最新機種 fx-FD10 Pro では、単独の?(入力)命令が復活しています(マニュアルを読む限り)。旧来から慣れ親しんだ命令を多用するユーザーが多いのかも知れず、そのユーザーの利便性に配慮した復活かも知れません。

Basic準拠のコマンドについては、If 文、Do / While / For 文、その他制御命令や、電卓の表示方法を指定する ENG / Norm / FIX コマンドなど互換性はあるようです。



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


 



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

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


関連記事

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

番外編 - Fire 7 (2017 Newモデル) の評価

番外編 - Fire 7 (2017 Newモデル)の評価
e-Gadget

2017/06/09
追記 2017/06/23

Fire7.jpg
 Amazon のタブレット Fire 7 (2017 New モデル) を発売前に予約し、発売当日から使っています。

既に色々な評価記事が公開されていますが、実機を使って気付いた点を、多くの記事に書かれていないことを含めて簡単にまとめてみます。


私の目的にはベストマッチの実質¥3,990のタブレット ★★★★★

事前に色々なサイトで調べた感じだと性能は高くないが、価格に最大の価値がある製品と理解していました。

定価が ¥8,980、Prime会員なら ¥4,000 の値引き。注文後に送られてきた¥4,000 引きの確認メールの中で、Prime Video ¥990 分のクーポンが期間限定で付与されることが分かりました (何かビデオを購入すると自動的に適用される)。つまりハードウェア購入価格が ¥4,980 になり、クーポンを使うならそれを含めて実質 ¥3,990

この製品はそもそもAmazonの販促ツールの位置づけだから、こんな値付けができるわけで、ハードウェアのみの販売では採算の取れない価格でしょう。

私の目的にはベストヒットで、おそらく同じような方も多くいらっしゃると思うので、私の使い方を紹介しておきます。
  • Prime Video の利用がメイン。主に英語の勉強のために英語の映画やTV番組を視聴。ダウンロードできるものは 自宅の無線LANに繋いでダウンロードしておく。
  • Prime Video でストリーム配信しかない作品も十分楽しみたい。au や Y! mobile のモバイルWiFI端末をパケット実質無制限の契約で利用すれば、ストリーミングでも十分に実用的。通勤や移動などの限られた時間で視聴するから、3日で10GB の帯域制限に至ることはない。仮に3日で 10GB を超えても、場所と時間帯が悪くなければ、動画の視聴は可能 (私は、Y! mibile の 603HW でアドバンスオプションを利用)。
  • Amazon Music も利用していて、国内では入手しにくい Jazz をメインに無料で楽しんでいます。
  • Kindle 本や電子書籍を利用したことが無いので、ボチボチと利用し始めています。
  • ネットテレビなどの動画を YouTube で視聴
  • ネットサーフで、簡単な情報検索
なお、YouTubeの動画が見られないと書いたサイト(海外の英語サイトも含め)もありましたが、Amazonアプリストアから YouTubeアプリを入手できるし、YouTubeアプリをインストールしなくてもブラウザから見られます。また、SilkブラウザでGoogleを検索エンジンに設定可能ですが、国内外のサイトでは Googleが使えないという記述が多くあります。

ネットの情報と実際が違っています。いったいどうなっているのでしょう? 画面上は設定できても実際は設定できていないということでしょうか? あるいは変化や改善が速くためにネット情報が既に古くなっているのでしょうか?いずれにせよ、国内外のサイトやブログの情報を頭から信じるのではなく、自分で触って確認する方が良いと思います。[2017/6/23 追記]

Fire 7 は、Amazonのサービスを楽しむのが基本で、他にあまり欲張らなければ、コスト以上のものが得られると感じています。従って、5つです。


Amazon のカスタマーレビューに書き込めない

2016/06/09 時点の話ですが、カスタマーレビューへの書き込みができないようです。発売初期ロット不良でも気にしているのか、買わずに推測や希望的観測の書き込み、買わずにこき下ろす書き込みなどを嫌ってのことなのか、その理由がよくわかりません。

[2017/06/11 追記]
6/10 に書き込みができるようになっていました。


1度にアプリ1つ

アプリストアから入手した Facebook や Skype のような重いアプリを起動した状態で、YouTube動画を再生すると、一旦停止しれしばらくして早送りのように追いつくといった、プロセッサのパワー不足の症状が現れます。軽いアプリだとあまり問題を感じません。

そこで、重いアプリは1度に1つづつ使えば、処理能力が低くても問題になりません。


1-Click注文

Amazonのサービス専用端末という性格の Fire 7 であるが、原則1-Click 注文を強いる仕様になっていることに気がつきました。カートに入れ、内容を確認して決済ボタンを押す場合と異なり、うっかり間違って決済してしまうリスクが大幅に増えるのは間違いありません。

1-Click注文以外の選択肢も用意すべき。


セキュリティーアプリは必要ではないか?

Fire 7 (2017 Newモデル) には、セキュリティーアプリが最初からインストールされていないことが気になっています。インターネットブラウザ (Silk ブラウザ) やメールアプリ (私は g-mail を登録して利用) がプリインストールされているのだから、セキュリティーアプリは必須ではないかと思います。

そこで、Amazonアプリストアから30日間無料のウィルスバスターモバイル (トレンドマイクロ)をインストールしました。おそらく有効化して使うことになると思います。


Amazon アプリストア と Google Play

Fire OS は、Android の上に Amazon専用のインターフェース (ランチャー) を被せた感じになっています。そしてアプリは Amazon アプリストアからインストールする仕様です。Amazon によりアプリは検査されているとのことです。一方で、Amazonアプリストアに登録されているアプリは、Google Play の登録数よりもかなり少ないようです。

Google Play からアプリをインストールさせる方法を紹介しているサイトもありますが、どこの誰が作ったか分からないアプリに管理者権限を渡すようなことは危険なので、私は賛成できません。

また、Fire OS 利用者は Android 利用者よりも遙かに少ないこと、Amazonが全て検査していることから、危険を犯してGoogle Play で入手するアプリよりは安全と考えます。アプリに悪意のあるコードが含まれていて、Amazonで勝手に買い物をされるのは御免です (個人的見解です)。


意外なコンテンツがプリインストール

現時点では、おそらくどなたのサイトにも書かれていないと思いますが、Kindle本の辞書3冊がプリインストールされていました。
  • Oxford Dictionary of English
  • デジタル大辞泉
  • プログレッシブ英和中辞典
チョット意外です。「検索」機能を使えば見出し語検索ができます。


Kindleメールアドレス - パーソナル・ドキュメントサービス

出荷時に Fire 7 にアカウント登録がされています。併せて、kindle.comドメインのメールアドレスが割り当てられています。

これが何なのか分からなかったのですが、調べてみると文書を添付したメールを外部からこのアドレスに送れば、Kindle形式に変換して Fire 7 に取り込めることが分かりました。なかなか便利な機能だと思います。

これは、「Kindle パーソナル・ドキュメントサービス」というものです。Kindle形式に変換できるファイルフォーマットがいくつかありますが、TXT / RTF ファイル、PDFファイル、DOC / DOCX ファイル(Wordファイル) あたりを使えるのは、助かります。


Fire 7(Newモデル)用 事故保証プラン (3年・落下・水濡れ等の保証付き)

バッテリーの劣化も自然故障と共に保証対象に含み、落下や水濡れ事故も保証されるとあったので、3年保証を購入した (¥2,380)。
製品詳細ページには以下のように書かれています。
  • バッテリーの劣化を含む自然故障に加え、商品の落下・水濡れ等の事故も対象とした安心なプランです。
  • 保証対象内の故障が発生した場合はすぐに代替品を発送するため、故障品の修理をお待ちいただく必要はありません。
  • 保証対象内の場合は、別途費用をいただくことはございません。
  • 保証開始日から60日以内のキャンセルであれば、全額返金します。(ただし、本保証に基づく代替品への交換が行われていない場合に限ります)
  • 専用のコールセンター【24時間年中無休】で交換の受付を行います。
  • 予約販売期間中の保証開始日は端末発送日となります。端末の発送より前に保証書及び保証期間が記載されたEmailが送付されることがありますが、端末が発送されるまで保証は開始されず保証期間が短縮されることはありませんのでご安心ください。
本体価格に比べると割高に思えるが、保証期間の3年以内に確実にバッテリーは劣化するので、バッテリーの交換費用を考えれば妥当な価格だと思います。


Amazon Fire 7(Newモデル)用カバー ブラック

Fire7_Cover.jpg Amazon純正のカバーを本体と一緒に注文。¥2,690 は本体価格に比べて高いと思ったが、ファブリック地の外装はとても落ち着いて良い感じです。対角線で一定角度だけ曲がる3角形のフリップは、縦でも横でもスタンドになって、よく出来ています。
 
問題は耐久性がどの程度あるのか?ですが、まぁ使ってみないと分かりません。


Micro SDカード - SanDisk 32GB

MicroSD.jpg余った Micro SDカードが無かったので、あまり考えず以下の文言に釣られて、ポチッとしました。
【Made for Amazon認定取得】 SanDisk 32GB microSDHCカード (スピードクラス Class10, UHS-I, 最大転送速度: 48MB/s)

今回はAmazonで ¥2,690 でしたが、カバーと同様に割高な感じもします。まぁ他にも使えるので良いことにしました。値引き¥4,000とクーポン¥990が、カバーとSDカードに化けた感じです。

さて、Prime Video の最高画質は1時間分が約 0.5GB なので、32GBメモリだとサックリ60時間分くらい。まとめてダウンロードしでも視聴後に削除して使えば32GBで十分です。スマホではこのようにして利用していたので、面倒と思うこともありません。


Kindle版エクスプローラ - ES ファイルエクスプローラ  [2017/06/15 追記]

ES File Explorer

そもそも Android システムのファイル構成がよく分かっていなかったので、スマホは適当に使っていました。ファイルやフォルダの構造が分かり易く閲覧できる良いファイル管理アプリに出会えていなかったのも理由でした。

Amazon アプリストアのイーティリティーのカテゴリを見ていて、良さそうなファイル管理アプリがあったので使ってみたら、結構使いやすそうなので、インスールしたのが ES ファイルエクスプローラ です。

このアプリのおかげで、ファイル / フォルダ構造が少し分かってきました。そして、上記のパーソナル・ドキュメントサービスを利用したり、PCとUSB接続したりして、Fire 7 にファイルを転送して整理する際に役立ちます。

気に入ったのでスマホにもインスt-ルして使い始めました。


Fire OS が Ver 5.4.0.0 にアップデート [2017/06/23追記]

購入時の Fire OS は Ver 5.3.3.0 でしたが、OSアップデートのプッシュ配信があり Ver 5.4.0.0 が公開されました。これで、何が変わったのかまだよく分かりません。細かなバグ修正や改善かも知れませんが、5.3.3.0 から 5.3.4.0 ではなくて、5.4.x.x へのアップデートなので、マイナーアップデートとは言え小数点1桁目の変化にはそれなりに理由がありそうです。何か分かれば追記します。


Amazonキャンペーン [2017/06/23 追記]

何やら触っているうちに、Amazonキャンペーンというアプリが紛れ込んでしまいました。特に役立つと思われる情報もなく、ただ宣伝を繰り返すだけのものに感じます。電源ON時やスリープからの復帰時に、Amazonキャンペーンの表示が現れるので、極めてうっとおしい。アンインストールしようとしても [設定] - [アプリとゲーム] から普通にアンインストールできないのもいやらしい。

一旦、ホームでAmazonキャンペーンのアイコンをクリックして起動後、 マークのメニューから[設定] - [ロック画面のキャンペーン情報] の項目をオフにすれば、ロック画面のうっとおしい表示が消えました。

Amazonサービスの拡販ツールとしての激安タブレットだとは分かっているが、うるさく、しつこく、下品にAmazonサービスを宣伝する Amazonキャンペーンは、押し売り間の少ない FIre 7 の'良いところをぶち壊しにしてくれます。よろしくないですね。




なにか有れば追記します。





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


keywords: Amazon、Fire 7(2017)、タブレット、Prime、Kindle

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

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

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

やす (Krtyski)

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


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

プログラム電卓を実際に使って気づいたこと、自作プログラム、電卓での Casio Basic, C.Basic そして Casio Python プログラミングについて書いています。

なお管理人はカシオ計算機の関係者ではありません。いつでもどこでもプログラミングができるプログラム電卓が好きな1ユーザーです。


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

リンク
月別アーカイブ
Sitemap

全ての記事を表示する

ブロとも申請フォーム

この人とブロともになる

QRコード
QR