e-Gadget 開設4周年

2017/10/30

当ブログ e-Gadget は、2017年10月29日で4周年を迎えました。

2016年10月29日までの当ブログへの来訪者が累計 65,000人を超えました。この1年で 22,000人増加、毎日平均 60人増加の計算になります。ページビューは 216,000 を超えました。1年前から 67,000 の増加、毎日平均 183 増加した計算です。

Access4周年 
(開設以来、2017年10月29非までのアクセス履歴)


"取扱説明書では分からないCasio Basic 使いこなし" といったマイナーなワンテーマブログですが、当ブログをご覧になる方が一定のペースで増えていることは、大きな励ましになっています。一度気に入って頂くと、何度も訪問頂いているのだと考えられます。ありがたいことです。

Casio Basic なら e-Gadget と少しづつ認知されてきたのだと思います。今後も期待を裏切らないブログであり続けるので、ごひいきにお願い致します。


今後も
・プログラムライブラリ
・Casio Basic入門
・Casio Basic コマンドリファレンス
・逆引き Casio Basic 
がメインストリームになります。

加えて、
・C.Basic - 高速アドインCasio Basic
・インサイド Casio Basic
も充実するように進めたいと思っています。

常にトップに表示する e-Gadget Potal ページは、当ブログの大まかな目次になっています。
個別具体的に、当ブログの記事を探す時は、e-Gadget 全記事の検索 を調べてください。


最後に、当ブログを長年サポート頂いている sentaro 様に最大の感謝を伝えたいと思います。
また、具体的な話題を提供頂いている ツル様、とね様 や過去にコメント頂いた皆様、そして当ブログを定期的にご覧頂いている皆様にもお礼を申し上げます。



当ブログのリピータの方には、比較的年配の方も多いと思います。そこで4周年記念として、管理人が作成したデスクトップアプリをプレゼント致します。

中高年向けアラーム時計 - MyClock
邪魔にならないデジタル時計 (アラーム付き)

管理人は押しも押されぬ中高年のオヤジです。PC画面の細かい文字が読みにくて困ることもあります。特に目を使い続けた夕方には壊滅的ダメージを受けます。でも時間管理はビジネスマンの基本。そこで、デスクトップで邪魔にならないが文字の大きな時計、そして約束の時間を忘れないためにアラーム時刻を視覚的に力一杯知らせるアラーム時計がどうしても欲しくなりました。

ネットで探しても、どうもしっくりくるものが無い。ならば自分で作った方が早い、ということで作ったものです。

それが、中高年が作った中高年のためにアラーム時計です。



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


 

関連記事

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

Casio Basic入門53

Casio Basic入門
<目次>

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

追記修正 2017/10/25


 4. CasioBasicを使ってみる(続き)

Chapter 9 - 初級

前回: Casio Basic入門52 を見る


◆ Chapter 9 の目標: 簡単な換算プログラム - 入力ボックスの活用


Chapter 9-3 
fx-5800P での3桁区切り表示を高速化する

前回作った3桁区切りできる複利計算プログラムを再掲します。

・サブルーチン: 3DIGIT
・メインルーチン: COMPINT2

ファイル名: 3DIGIT

Z=0⇒Retuen
Int(log(Z))+1→D
D-3Int(D÷3)→F

For 1→I To D
Int(Z÷10^(D-I))→C
Locate X+I-1,Y,C
Z-C10^(D-I)→Z
If I-3Int(I÷3)=F
Then Isz X
I<D⇒Locate X+I-1,Y,","
IfEnd
Next



ファイル名: COMPINT2
Locate 1,1,"1-C:"
Locate 1,2,"2-R:"
Locate 10,2,"3-Y:"
Locate 1,3,"TOTAL"
Locate 1,4,"MONTH"


0→B:0→R:0→N:0→T:0→M

Do

0→K:Do
Getkey→K
LpWhile K=0
K=73⇒Break

If K=35
Then
5→X:1→Y:8→D:1→E
Locate X,Y,"      " (スペース11個)
Prog "INP":Z→B
Prog "3DIGIT"
Else If K=36
Then
5→X:2→Y:4→D:1→E
Prog "INP":Z→R
Else If K=37
Then
14→X:2→Y:3→D:1→E
Prog "INP":Z→N
IfEnd:IfEnd
IfEnd

If BRN:Then
Int(B(1+R÷100)^(N))→T
Locate 7,3,"     " (スペース10個)
T→Z:7→X:3→Y
Prog "3DIGIT"
Int(T÷N÷12)→M
Locate 7,4,"     " (スペース10個)
M→Z:7→X:4→Y
Prog "3DIGIT"

IfEnd

LpWhile
 1
Cls
Locate 7,2,"BYE!"





前回のプログラムと高速化の試み

以下のように、3桁区切りで表示ができましたが、

8digit_input 

左から右へ、パラパラと表示されて時間がかかります。

今回のプログラムで一番動作時間がかかるのは、Locate コマンドです。そして、For ループで Locate が何度も実行されているので、表示に時間がかかると考えています。このプログラムでは、例えば 12345678 を表示するには Locate を10回実行しています。

そこで、表示を高速化するには、Locate が実行される回数を減らせば良いことになります。

私が最初に考えたのは、例えば 1234567812,345,678 として表示するために Locate を使って、

1) 12 を表示
2) ,(コンマ)を表示
3) 345 を表示
4) ,(コンマ)を表示
5) 678 を表示


つまり、Locate 実行の回数が10回から5回へ半減しますので、良さそうです。実際に作ってみると、問題がありました。

それは、例えば 139096 を3桁区切りにすると 139,096 となるべきところ、そうはならないバグです。文字列を使えない fx-5800P で数値を出力する時に避けられない問題でした [2017/11/06 校正]

上の考え方だと

1) 139 を表示⇒問題なし
2) ,(コンマ)を表示⇒問題なし
3) 096 を表示⇒
問題発生


Locate コマンドで 数値 096 を表示すると 96 になってしまいます。
つまり、3桁区切りの表示が 139,96 と妙なことになります。

fx-5800P Casio Basic では文字列を扱うコマンドが無いので、096 を一旦文字列に変換して Locate で表示することができません。
ただし、この問題は簡単に解決できます。096 は、3桁でなくて2桁なので、3桁未満の時は文字 "0" を先に表示してから3桁未満の数値を表示すれば良いだけです。

あるいは、先に文字列 "000" を表示した上に 必要な桁から2桁か2桁の数値を上書きする方法もあります。 
過去の Casio Basic 入門でも、この方法は使っています。

但しこれらの方法では、ある所定の数値の場合に Locate の実行回数を減らすことができずい、本質的な解決策とはならない中途半端な方法だと考えました。

そんなわけで、表示に時間がかかるものの、ロジックとしては素直でコンパクトな前回のプログラムを紹介したわけです。




3桁表示の高速化

sentaro 様から面白いロジックをご提案頂き、それを紹介したいと思います。これは、3桁区切りをチョット巧妙に実現するものです。そのロジックやプログラムの実装方法は初級というよりも中級に入るかも知れません。

例えば 12345678 を表示する前に、コンマが入るところに 0 を入れた数値を作って、

1203450678

として、一旦この数値を Locate で表示します。

次に、コンマが入るところの 0,(コンマ)で上書きして(Locate コマンド使用)、

12,345,678

とすれば良い...といった考え方です。私には思いつかなかった面白いものです。

この8桁の数値を3桁区切り表示する時の Locate 実行回数は3回になって、激減します(前回のプログラムだと10回実行)。

このロジックだと、上で問題が発生した 139096 の場合は、一旦 1390096 に変換して、この数値を Locate で表示。続いてコンマが入るべき 0 の位置に Locate, (コンマ)を上書きするので、

139,096

と正しく表示されます。

なかなかよく考えられたロジックですね。

前回作ったプログラムでは、Locate を7回実行するところ、2回で済むので、表示が大いに高速化されます。




新ロジックの実装

そこで、3桁区切り表示を行うサブルーチン 3DIGIT3DIGIT2 とします。
メインルーチンは、COMPINT2COMPINT3 にします。


プログラムを以下に示します。

・サブルーチン: 3DIGIT2
・メインルーチン: COMPINT3

ファイル名: 3DIGIT2

Z=0⇒Retuen
Int(log(Z))+1→K
(K≥4)+(K≥7)+(K≥10)→I
Frac(Z÷1
x103)×1x103→U
Int(Frac(Z÷1x106)×1x103)→V
Int(Frac(Z÷1x109)×1x103)→W
Int(Z÷1x109)→D

If K≤8:Than
Locate X,Y,1x108×W+1x104×V+U
I≥1⇒Locate X+K-2-(I=1),Y,","
I≥2⇒Locate X+K-6,Y,","
Else
Locate X+K-6+(I≥3),Y,1x107+1x104×V+W
Locate X,Y,1x104×D+W
Locate X+K-2+(I≥3),Y,","
Locate X+K-6+(I≥3),Y,","
I≥3⇒Locate X+K-9,Y,","
IfEnd



変数の説明
入力値: Z
X座標: X
Y座標: Y


ワーク変数 U:下3桁
ワーク変数 V:中3桁
ワーク変数 W:上3桁
ワーク変数 D:最上位1桁
ワーク変数 K数値の桁数
ワーク変数 I:三桁区切り文字の数


ここで、解説を2つだけ...


青文字の( ) の部分

この ( ) は、0か1かの値になります。( ) の中が正しいなら(真ならば)1、正しくなければ(偽ならば)0になります。この性質をうまく使って計算式に中で利用しています。


赤文字 x104 の表記

これは [x10x] キーを押して入力します。


メインルーチンは、呼び出すサブルーチン名を変更するだけ...

ファイル名: COMPINT3
Locate 1,1,"1-C:"
Locate 1,2,"2-R:"
Locate 10,2,"3-Y:"
Locate 1,3,"TOTAL"
Locate 1,4,"MONTH"


0→B:0→R:0→N:0→T:0→M

Do

0→K:Do
Getkey→K
LpWhile K=0
K=73⇒Break

If K=35
Then
5→X:1→Y:8→D:1→E
Locate X,Y,"      " (スペース11個)
Prog "INP":Z→B
Prog "3DIGIT2"
Else If K=36
Then
5→X:2→Y:4→D:1→E
Prog "INP":Z→R
Else If K=37
Then
14→X:2→Y:3→D:1→E
Prog "INP":Z→N
IfEnd:IfEnd
IfEnd

If BRN:Then
Int(B(1+R÷100)^(N))→T
Locate 7,3,"     " (スペース10個)
T→Z:7→X:3→Y
Prog "3DIGIT2"
Int(T÷N÷12)→M
Locate 7,4,"     " (スペース10個)
M→Z:7→X:4→Y
Prog "3DIGIT2"
IfEnd

LpWhile
 1
Cls
Locate 7,2,"BYE!"



3桁区切りでの表示が劇的に速くなりました。
コードを眺めて、プログラムの巧妙さを楽しんでください。



fx-5800P の Casio Basic には文字列処理の機能がありませんが、工夫次第で色々と実現できるわけで、逆に言えば Casio Basic がそれだけ高機能だとも言えますね。



つづく...

Casio Basic入門54Casio Basic入門G01 / 目次



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


 




keywords: fx-5800PCasioBasic、入力ボックス, プログラミング入門プログラム関数電卓

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




関連記事

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

プログラムライブラリ - マスターマインド Ver. 4 - モノクロ版

プログラムライブラリ
<目次>

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

2017/10/23
バグ修正 2017/10/24

MASIOV4M (マスターマインド) モノクロ版- fx-9860GII、fx-CG20 / fx-CG50

著作権者

ツル
[当ブログ読者]



対応機種

Casio fx-9860GII、fx-CG20 / fx-CG50 (fx-FD10 Pro でも使えると思われます)



MASIOV4M について

Master Mind for Casio Calculator ⇒ Master Mind + Casio ⇒ MASIO と作者により銘々
既に公開している Ver. 3 をより本来の マスターマインドに近づける感じにした最終版 

Ver. 4 でモノクロ版なので、MASIO + V4M ⇒ MASIOV4M

Ver. 3 については、ゲーム ~ マスターマインド (fx-9860GII) 参照



ゲームの遊び方

(Ver3からの変更点)
  • 左下から入力始め、右上へ進行
  • 判定を、白丸・黒丸以外にも、HBの下に数字を表示
  • Normal ModeとEasy Modoとを追加。SHIFTキーで切替え
  • Normal Modeでは、(ー)で回答表示すると、そのゲームでの♢獲得はなし。 次のゲームへ進む。
  • Normal Modeでは、6トライ以内に正解の場合、♢2個獲得。10トライ以内に正解の場合、♢1個獲得。
  • ♢の合計が10個になると、祝画面表示が見られる。
  • Easy Modeでは、正解で♢10個獲得でき、祝画面が見られる。
  • メイン画面左上に、現時点で獲得できる♢数を表示。
  • メイン画面に、Normal ModeではN。Eazy ModeではE を表示 (現在のモードがわかる)
  • いつでも、EXITキーにて終了可能。
  • p・表示は、[・] キーで現時点の獲得♢(prize)数を左上に表示

ゲーム画面

正解 (4 Hit) した時



◇=10 の時のお祝い画面




プログラムファイル

▶ Ver. 4: MASIOV4M.g1m ファイル (fx-9860GII) のダウンロード

▶ Ver. 5: MASIOV5M.g1m ファイル (fx-9860GII) のダウンロード





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


 


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

関連記事

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

Casio Basic: Cls

Casio Basic
コマンドリファレンス

Casio fx-5800P、fx-9860GII、fx-CG20、fx-CG50 で確認をとっています。Casio fx-FD10 Pro では互換性はあると考えられますが、実機で確認していないので「可能性」としてご覧ください。
訂正 2017/10/22



fx-5800P / fx-9860GII / fx-CG20 / fx-CG50
Cls / ClrText

◆ 概 要: テキスト画面を消去する。

◆ 書 式: Cls (fx-5800P) / ClrText (fx-9860GII, fx-CG20/CG50)

◆ 引 数:なし

◆ 戻り値:なし


fx-5800P と fx-9860GII や fx-CG20/50 では Cls コマンドの機能が異なる。

<fx-5800P >
Cls は画面全体 (テキスト画面全体) を消去する。同時に内部カーソル行を1行目にリセットする。

<fx-9860GII / fx-CG20/50>
  • fx-9860GII や fx-CG20/CG50 の Cls は、グラフィックス画面の消去を行う。
  • fx-9860GII や fx-CG20/CG50 は、出力先にグラフィックス画面とテキスト画面の2つを持つ。
テキスト画面の消去には ClrText を使う。fx-5800P の Cls と同様に、テキスト画面の消去と同時に、内部カーソル行を1行目にリセットする。
グラフィックス画面の消去には、Cls  と ClrGraph が用意されていて、これらは動作の詳細が異なる。ClrGraph は単にグラフィックス画面の消去するだけでなく、座標系をデフォルトの論理座標に設定し、さらに目盛間隔を 1 に設定する。Cls は座標系や目盛間隔の設定変更を行わず、単にグラフィックス画面を消去する。



< fx-5800P の Cls と fx-9860GII や fx-CG20/50 の ClrText の動作 >
内部カーソル行リセットは、以下のプログラムから確認できる。

""
"LINE"◢
Cls
"LINE"◢


これを実行すると、"" により内部カーソル行は2行目になるので、2行目に

LINE

と表示され、プログラムが一時停止する。[EXE] キーでプログラムを再開すると、Cls が実行される際に内部カーソル行が1行目にリセットされる。従って、次は1行目に

LINE

と表示される。


< fx-9860GII や fx-CG20/50 の Cls の動作 >
以下のプログラムで、テキスト画面での Cls と ClrText のテスト、そしてグラフィックス画面での Cls のテストを行います。

Locate 1,2,"bra-bra-bra"
Locate 1,3,"Cls Test"
"Hit any number key"?→A
Cls
"Cls does NOT delete text."
"Press [EXE] key"◢
""
""
"Try ClrText test"
""
"bra-bra-bra"
"Hit [EXE] key"◢
ClrText
"It works!"
""
"Internal cursor reset back to the 1st line."
"Hit [EXE] key"◢

ViewWindow 0,126,0,0,62,0
PlotOn 10,10
Text 1,1,"Dot drawn by PlotOn 10,10"
Text 7,1,"Cls test"
Text 13,1,"Press [EXE]"◢
Cls
Text 1,1,"It works!"
Text 7,1,"Try again"◢
PlotOn 10,10
Text 13,1,"Dot drawn again at same position!"


テキスト画面では、Cls で消去できないこと、ClrText は消去と同時に内部カーソルが1行目にリセットされることが分かります。
さらに、グラフィックス画面で、Cls を実行すると、画面消去されますが、座標系設定の変更は行われないことが分かります。




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


 


keywords: fx-5800PCasioBasicClsプログラミング入門プログラム関数電卓

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

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

Casio Basicコマンドリファレンス

Casio Basic
コマンドリファレンス

Casio fx-5800P と fx-9860GII、fx-CG20、fx-CG50 で確認をとっています。Casio fx-FD10 Pro では互換性はあると考えられますが、実機で確認していないので「可能性」としてご覧ください。
※随時拡充してゆきます
最終:2017/10/20


目 次


◆ 入力
      ? 
      Getkey

◆ 出力
     
      "  "

◆ 代入
     

◆ 画面表示
      Locate
      Cls
      ClrText



◆ 条件分岐
      If文: If ~ Then (~ Else) ~ IfEnd

◆ ジャンプ
      Goto / Lbl
      Dsz命令
      Isz命令
      ⇒命令

◆ ループ(繰り返し)
      Lbl / Goto
      Do文 (Do ~ LpWhile)
      While文 (While ~ WhileEnd)
      For文 (For ~ To (~ Step) ~ Next)

◆ 関係演算
  = / ≠ / > / ≧ / < / ≦

◆ 論理演算
  Or / And / Not (/Xor)

配列変数 (fx-5800Pのみ)

◆ リスト
  List [  ]

◆ 行列計算 

◆ 実行制御
  Prog
  Break
  Return
  Stop

◆ 各種関数
  Int / Frac
  
log()

◆ 計算結果の出力設定 
  EngOn / EngOff / Eng
  Norm 

グラフィックスコマンド [fx-9860GII / fx-CG20 / fx-CG50]
  ※ 探索集のグラフィックスコマンドをまとめたもの
  ※ コマンドリファレンス作成中




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


 


keywords: fx-5800PCasioBasicプログラミング入門プログラム関数電卓

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

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

楽屋裏 - カシオ グラフ関数電卓 fx-CG50 が2017年春登場

楽 屋 裏
e-Gadget


2017/01/16
続報 (1) 2017/01/21
続報 (2) 2017/07/02
続報 (3) 2017/07/03
追記 2017/08/08
追記 2017/09/26
追記 2017/10/20


[2017/08/08 追記]:fx-CG50 を入手して調べました ⇒ fx-CG50 の概要

[2017/09/26 追記]:2017年10月20日、fx-CG50 が国内発売 ⇒ 楽屋裏 - fx-CG50 ついに国内発売 


2017年春に、カシオから北米向けにグラフ関数電卓 PRIZM fx-CG50 が発売予定とのアナウンスがあったと、sentaro様 から情報を頂きました

カシオアメリカの発表

・学生の数学教育向けを強調
・3Dグラフ機能の強化
・カタログ機能の進化
・教科書スタイルのディスプレイ
・より直線的 (tapered) な筐体デザイン
・メーカー希望小売価格 99.99 ドル (実売はもっと安いだろう)

なんだか詳細はさっぱり分からない表現が多いですね。

これを受けて、カシオフリーク達はアドイン機能が無くなるのではないかと、おおいに心配しています。
そして、Casio Basic は相変わらず遅いまま、との推測もあります。

CHEMETECH の記事
 Universal Casio Forum の記事
 cordwalr US の記事

但し、アドインが無くなるとは公式には発表されていません。カタログ機能との言及がありますが、fx-9860GII や fx-CG10/20 では、Casio Basic のコマンドを一覧する機能なので、Casio Basic は搭載されるでしょうが、アドインが無くなるという話では無いかも知れません...

海外のコミュニティーで、アドイン無くすな!とこれだけ声が大きいのを、カシオ殿は是非冷静にくみ取って頂きたいと思います。アドインがあるから、これだけ普及したという考えもあります。

一方で、今後の携帯プログラミングは、ニンテンドー3DS  の一人勝ちとなるのでしょうか?
強力で高速な BASIC (プチコン) が使えるので、プログラム電卓でのプログラミング が出来なくなれば、これからは 3DS へ民族の大移動があるかも知れませんね。

いずれにせよ、しばらくは注目です!



=== 続報 (1) [2017/01/21] ===

その後、CHEMETECH で外観や画面の画像が出てきました。

CHEMETECH の記事

元ネタは CASIO の学校向け計算機のページ のようです。
fx-JP900 と似た外装で、角の丸い長方形です。これが Tapered (直線的) と言われたものなんですね。

画面のサンプルもありました

残念ながら、メニュー画面がありません。Add-In があるかどうかすぐ分かるんですけど...

但し、上の画面のサンプル のコメントに以下の記述がありました。
Those new main menu icons tell me (real) add-in support is most likely gone.
(それらの新しいアイコンメニューアイコンから、(本当の)アドインサポートは、ほぼ無くなったようだ。)

う~む、そうなんだろうか?


=== 続報 (2) [2017/07/02] ===

fx-CG50 はアドインプログラムを扱えることが判明しました (sentaro様からの情報)
TI Planet の情報

国内発売の情報はまだないが、欧米での発売が始まり品薄状態です。
このような中、ブログ友達の とね様 がアメリカ在住のご友人経由で早速 fx-CG50 を入手されたとのことです。

とね日記 - 最新のグラフ電卓 fx-CG50 (2017)

私も海外の知人経由での入手を検討中。sentaro様は セカイモン (eBay) で注文されたとのこと。今のところ並行輸入で入手するしかありません。


=== 続報 (3) [2017/07/03] ===

eBay の日本語サイトでは fx-CG50 が無く、英語のサイト (eBay.com) で送料込みで割合安い新品の fx-CG50 が有ったので注文しました。以前から利用していた PayPal を支払いに使うと安全なので 今回も PayPal を利用しました。届いたら、Casio Basic プログラミングの視点から評価記事を書こうと思います。

評価記事はこちら ⇒ Casio fx-CG50 の概要 [2017/1020 追記]


=== 続報 (4) [2017/07/03] ===

日本のカシオのサイトを見ると fx-CG20 が生産終了 となっています。fx-CG50 の国内投入がいつになるかの問題のようです。

カシオの fx-CG20 のサイト

[2017/10/20 追記]
fx-CG50 は、欧米発売から約6ヶ月半後の 2017/10/20 に国内発売となったわけです。以前 fx-CG10 の北米発売から fx-CG20 の国内発売まで1年近く時間差があったのに比べて早い投入になりました。
なお、fx-CG20 はしばらく流通在庫があるでしょうが、fx-CG20 は余程安くなければ、購入するメリットは無いと言えます。


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


 




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

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

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

番外編 - Win10 Creators Update後のY! mobile 603HWによる障害

番外編 - Win10 Creators Update後の603HWによる障害
e-Gadget

2017/05/21
追記 2017/08/02
制限モードについて追記 2017/10/14

これまでモバイル通信のために Y! Mobile Pocket WiFI 305ZT を使ってきました。
来月で2年縛りの契約が終了することから、Y! Mobileから電話があり、新機種と新契約 (3年縛り) への切替の勧誘がありました。この勧誘電話で切替えると1万円の値引きがあり、その他の話を聞いた限りでは 305ZT の契約よりも良さそうなので、切替えました。

Win10 Creators Update後、603HW を原因とした Windows 自体の障害が確認されたので、急ぎ公開します。なおこの障害は、いずれ解消される可能性はありますので、現時点 (2017/05/21)での情報としてお読みください。

先ずは、603HW の非常に簡単なレビューから...
603HW 
603HW は 305ZT と縦横はほぼ同じサイズで、厚みと重量は小さくなっています。305ZTにほぼピッタリサイズのポーチに入れて持ち歩いていたのですが、同じポーチに収まっています。

Y! mobile の Pocket WiFi は、機種ごとに契約内容がほぼ決まっているので、以下では機種名だけの表現をしますが、その機種用の契約内容を含んでいるものとします。


私の使用環境では、
  • 通信速度は期待外れ
  • 帯域制限は大きく改善
と言っておきます。速度が期待外れとは言っても、YouTubeやその他の動画配信はストレスなく楽しめるので、私にはマイナス点はありません。一方で帯域制限の大幅改善は、私には非常にポイントが高いと言え、今のところは切り替えて良かったと思っています。

Y! Mobile の 603HW のページ

現時点(2017-05-21)では、モバイルルーターとしては best effort で最も通信速度が速いようです。
実際に回線速度計測を行ってみると (SPEEDTEST)、状況や時間帯で大きく異なるものの、最高値としては、
  • 下り: 100.4 Mbps
  • 上り: 11.48 Mbps
と、確かにかなり速い結果です (東京・多摩地区)。なんと、305ZT の実測の最高値とさほど変わわないのが面白いところです。

しかし平均的には、
  • 下り: 50 Mbps 程度
  • 上り: 7 Mbps 程度
で、これも 305ZT の平均と変わらない感じです。

最大 612 Gbps と謳っているだけに、速度を追求するには期待外れかも知れません。

一方、帯域制限については 603HWの契約は 305ZT の契約よりも大きく改善しています。
  • 3日で10GB を超えると 1 Mbps程度に低下とのこと(未確認)、305ZT では 3 GB制限でした
  • 1ヶ月で7 GB、但しアドバンスオプション契約をすると、アドバンスモードでは手続き無しで無制限になる
です。

私自身の日常的な使い方で 3日で 3 Gbps を超えることはよくあったのですが、10 GBを超えことは殆どありませんでした。つまり、3日で 10 GB での帯域制限は、とても大きな改善と言えます。WiMax に追従したものと思われますが、有り難い改善です。また3日での帯域制限がかかった際の実行速度は、305ZTの契約ではYouTubeなどの動画は無理だったのに対して、603HWでは問題無く動画が楽しめる程度の帯域は確保してくれています [契約開始から2017/08/02までの状況] 。

1ヶ月で 7GB の制限は、305ZT でも無料で解除できたのですが、0.5 GBごとに手続きをする煩わしさがありました。一方、今回の 603HW は手続き無しで無制限に使えるので、利便性が大幅に向上しました。これも大きな改善です。

なお、この1ヶ月の通信量無制限は、アドバンスモード (AXGP) のエリア内でのみ適用となり、今のところ東京、名古屋、大阪を中心とした人口の多いエリアに限定されています。しかし、端末やWebでの設定により標準モード(LTE)にいつでも切替えて使え、このエリアはかなり広いため圏外の心配が殆どありません (通信量は1月7GBで帯域制限がかかるのは要注意)。

[2017/08/02 追記]
しばらく使ううち、標準モードでしか繋がらない地域で動画を見る時は、docomo契約のスマホ (これも1月7GB制限) からテザリングして使うのが得策かも知れないと考え、7GB制限がかかる標準モードを使わずにdocomoのテザリングを併用する運用に切り替えています。うっかり者の私には、アドバンスモードへの切り替え忘れの心配がなくなる点がポイント。
===== 追記終わり =====

注意すべきなのは、標準モードでは1ヶ月 7 GB の制限が発生するので、アドバンスモードへ戻すのを忘れてはいけません。

ネットで多くの情報が得られますが、実際の通信速度が 305ZT と大差ないという話は、今のところ見かけません。

[2017/10/14 追記]
My ymobile にログイン ⇒ [データ通信量の管理] ⇒ [ご利用状況の確認] で表示される 「ご利用状況」で、
・ステータス:通常速度
・現在の設定:制限モード
となっています。

アドバンスオプションを追加した契約にしているので、1月7GBを超えても、手続き無しかつ無償で低速度化しません。ところが、「制限モード」とあるので、気になって Y! Mobile に問い合わせをしたところ、ネットワーク設定をアドバンスモードにして、1月7GBの制限を実質解除している時に「制限モード」と表示されるのだそうです。正しい表記なわけです。

「制限モード」に対して「快適モード」は、有償で「快適モード」にした時にそのように表示されるようです。
===== 追記終わり =====




さて本題です。今回の障害は、以下の2つの条件が揃った時に、Windows 10 64bit HOME が起動しなくなると言うものです。
  • Windows 10 Creators Update を行ったOS
  • 603HW のドライバをインストール
但し、Creators Update は1つ前のバージョン (1607)に戻せて、戻した場合はこの障害は発生しません。

この問題を回避する方法は以下2つ;
  • Windows 10 Creators Updateを行わない。
  • Windows 10 Creators Update 後 ドライバをインストールせずUSB接続での通信を行わない。但し、無線LANでは問題なく使え、USBで繋ぐと通信は行えないが充電機能は使えます。
この問題の原因の1つであるドライバは、603HW をUSB接続通信で使うためだけにインストールするものです。Webでの設定画面を表示するのは、USB接続しなくても無線LAN接続で可能です。


USB接続の通信は、LANよりも少し速くなること、603HWとPCの間が有線なのでセキュリティー上のリスクが少し減ること、といった利点はあります。しかし、仮にPCの USB3 ポートに繋いだとしても、実際問題として480 Mbps (USB2 の上限速度) を超える通信速度は出ないでしょうから、USB2 接続でも実際は問題なく、USB接続通信の速度上のメリットを享受することはほぼ無いでしょう。 従って、Windows 10 Creators Update 後に ドライバインストールさえ行わなければ、実質的な問題な無いと言えます。


なお、Windows 10 1067 では、603HWとPCを初めてUSB接続すると、自動的にインストールされます。

Creators Update後は、USB接続しても自動的にインストールされません。エクスプローラを立ち上げて、603HWを初めてUSB接続すると、603HWがドライブとして一旦表示され、それをダブルクリックするとドライバがインスト-ルされます。

User's Manual には、自動インストールされない時に、上記の手動インストールをするように説明がありますが、Creators Update後は要注意です。

なお、Y! Mobile のチャットサポートで、この障害について尋ねたところ、まだ障害としてデータベースには登録されおらず、ドライバの更新の予定は無いとのこと。但し、この障害については上申してくれるととのことで、障害の詳細を報告しました。

ドライバの更新をしてくれるか、或いは上記のような回避方法の公開にとどまるのか、そのあたりは Windows 10 の今後のアップデートの提供状況にもよるでしょうから、気長に状況を注視しようと思います。

Creators Update や、元に戻すのはそれなりに時間のかかるので、私同様の無駄な時間を浪費しないために、公開します。



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


 



keywords: モバイル通信、305ZT、通信端末、Y!mobile

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

続きを読む

関連記事

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

fx-CG50 のイースタエッグ - 自己診断機能

  ▶ CASIO電卓の自己診断機能 - 目次


 2017/10/10

fx-CG50 のイースターエッグ/自己診断機能を紹介する。

fx-9860GII の自己診断を開始する方法と同じキー操作 (キーの名前は異なる) なので、類推から簡単に見つかった。


fx-CG50 の診断モード

fx-CG50 注意! 
自己診断機能の中には、データリセット (データ消去) するメニューを含んでいるので、万一に備えて自己診断機能を使う前に、必ずバックアップをしておくことを勧める。

診断モードに入るには、先ず電源OFFの状態で、[OPTN]+[x10x] を同時押しながら、[AC/ON] を長押しする。

すると、
=DIAGNOSTIC MODE=
Factory Use Only!
Press : [EXIT]


と表示されるので、タイムアウトする前に [F1] を押す。ここで何もしないでタイムアウトすると、電卓裏の RESTART ボタンを押した時と同じようにリスタートし、初期設定を求められる。

タイムアウトする前に [F1] を押すと、以下のダイアログが表示される。

=DIAGNOSTIC MODE=
Factory Use Only!
Delete all data?
   Yes  :  [9]
   No   :  [EXIT]


ここで、[EXIT] を押すと、リスタートする。[9] を押すと、工場モードに入ります。

[CY810AY MAIN]   111
 1.PATTERN   5.SERVICE
 2.FUNC     6.Send-Rec
 3.TEST      7.Rec-Send
 4.VRSION     0.RESET
 +.VER&SUM   -.CLEAR
 X.OFF
     QUIT  : [EXIT]

このメニューで、[X] (X.OFF) を押すと単に電源オフになり、次回電源オンで通常モードで起動する。

1.PATTERN を実行する。画面の指示に沿って操作すると、最初にキーチェック、OS Ver / ROM /RAM チェック、ディスプレイチェック ([EXE] で次に進む) と進み、さらに外部機器を使う診断と思われるチェックが続く。画面の指示に従って進む。最後に

Press [EXE] to OFF

     and

Later ON the power.


と表示され、ここで [EXE] で単に電源オフになる。

2.FUNC を実行すると、全てのキーのチェック、OS Ver / ROM / RAMチェック、ディスプレイチェック、と上記同様のチェックが続き、最初のメニューに戻る。

3.TEST を実行すると、MANUAL TEST として、LCD、KEY、ROM、RAM、DETCT、TRANS、CURRENT、OTHERS の項目をチェックできる。OTHERS TEST の バッテリーテストは、[AC] でメニューに戻る。

4.VRSION を実行すると、ROM VERSION を表示する。

5.SERVICE を実行するとサービスIDが表示される。

6.Send-Rec7.Rec-Send は、3Pin ケーブルでの送受信チェック。外部機器が必要だと思われる。

0.RESET を実行するとリスタートする。

+.VER&SUM を実行すると、ROM VERSION (OSバージョン) の表示、ROM テストを行える。

-.CLEAR要注意! メモリ・リセットが行われ、保存データやプログラムが消去される。

X.OFF を実行すると、電源オフ。









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


 

 
keywords: fx-CG50グラフ関数電卓、イースタエッグ、診断機能

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

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

Casio Basic のバージョンとバグ

2015/06/19
追記: 2015/06/20
追記: 2015/06/21
追記: 2017/10/10


先日、OS Ver 2.00 の fx-9860GII で Casio Basic を走らせる機会がありました。このプログラムは OS 2.04 では正常動作しているものです。すると、以下の記述でエラーが出ました。

E=0⇒Locate 14,2,"(-):Stop"

この fx-9860GII の OS を Ver 2.00 から 2.04 へバージョンアップしてみると、エラーが消えました。

Ver 2.04 から 2.00 に戻せないので、詳細の確認は出来ていませんが、おそらく ' : ' (区切りコード)が、字句解析で失敗して文字列の一部として認識されずに、区切りコードとして認識されたことがエラーの原因ではないかと推察されます(未確認 確認済み)。

sentaro様によれば、fx-9860G の OS Ver 1.04 や CFX-9850GC PLUS の OS Ver 1.04 でもエラーが出るのを確認されたとのことです。つまり、OS Ver 2.00 以前では、このエラーが発生するようで、最新の Ver 2.04 でバグが解消されていると分かります。

Ver 2.01 はどうなのかも今は不明です。
[2015/06/20 追記]
sentaro様から頂いた情報では、fx-9860G の OS を Ver 2.01 にして確認したところ、表示する文字列に : (区切りコード)が含まれる場合エラーが出るとのことです。文字列から ' : ' を外してみるとエラーが出なくなることから、区切り文字の字句解析に失敗しているようです。 
=====


最新OS は機種により異なります。

- fx-CG20 / fx-CG10: Ver 2.00 [更新日:2014/04/09]
- fx-980GII: Ver 2.04       [更新日:2014/04/16]
- fx-9860G: Ver 2.01       [更新日:2011/06/03]

同じ OS バージョン番号なら、Casio Basic も同じかどうか、まだ未確認です。

もし、OS バージョンと Casio Basic バージョンが同じならば、fx-CG20 / 10 の OS 2.00 では上記のエラーが発生することになります。
エラーが発生しなければ、OS バージョンと Casio Basic バージョンは別ということになります。
このあたりは、今は未確認ですが、興味があります。

コメント欄で情報を頂ければ、記事に反映させて頂きたいと思います。

何か必要性がなければ、OS は最新にしておくと、Casio Basic のバグも解消されているようです。

[2015/06/21 追記]
コメント欄にて、sentaro様から情報を頂きました。ありがとうございます。fx-CG10 PRISM は、OS Ver2.00 ですが、今回のエラーは発生しないとのことです。機種毎に OS がバージョンアップされますが、おそらくそのタイミングで バグフィックスされているようです。

なお、今回は Locate コマンドに指定する文字列でエラーが発生しましたが、旧来の入力命令 " " については、エラーにならないとのことです。Basic コマンドとしての Locate を実装した初期段階でこのバグが入り込んだと考えられます。そして、今は解消しています。
=====


2006 年発売の fx-5800P のCasio Basic は一貫して同じなのか、それとも少しずつバージョンアップしているのか、興味のあるところです。fx-5800P のシリアルナンバー/製造ロットが、イースターエッグで確認できると、面白いですね。

fx-5800P のROMに書き込まれているであろうシリアル番号をチェックするためのキーの組み合わせを知りたいところです。今のところまだ見つかっていません。

[2017/10/10 追記]
fx-5800P のROMバージョンを調べる方法が見つかっています。
fx-5800P のイースタエッグ - 自己診断機能

シリアル番号はここでは管理されていないようですが、Casio Basic はROMバージョンに依存すると思われるので、何か問題が見つかった際には、ROMバージョンと共に調べることはできそうです。



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


 


関連記事

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

ゲーム ~ マスターマインド (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)
Online Counter
現在の閲覧者数:
プロフィール

やす (Krtyski)

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


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

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

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


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

リンク
月別アーカイブ
Sitemap

全ての記事を表示する

ブロとも申請フォーム

この人とブロともになる

QRコード
QR