2022年7月29日金曜日

緊急連絡 !? 電卓とは無関係です !!

 ここによると、2022/07/29 近傍で、大きな地震がありそうだとの推測を報告しております。

http://www.jishin-yohou.com/99_blank003006.html

もちろん、今日の地震予測は、まだ困難だと言われておりますから、占い程度の話、として受け止めてもいいのですが、
元首相が日中、暴漢により射殺されるといった凶悪な事件が起こるなど、何があるか判らない、不確実性の世の中であります。

頭の隅っこにでも入れておいたら、慌てる事もないのではないか、と。

2022年7月24日日曜日

fxーCG50の現状から考えていた

 昨今の岸田円安で、輸入品の価格が暴騰しており、高機能電卓の価格も鰻登り。猛暑の上、うなぎも食っていない内から「これはたまらん」とナケナシの財布を叩いて、海外版の fx-CG50 を緊急に購入した次第。

そんな具合で、暫くは fx-CG50 の newbie であります。HP Prime欲しかったのですが、30,000円近いので、よう手が出ません。御容赦戴きたく。

そこで、人様のTweetをネタに、色々と思う所を。まずは、以下のTweetから。

https://twitter.com/BlackcatKrnk/status/1548675041327747073

fx-CG50を買おうか迷っているけれど、OSとかのダウンロードって今から購入しても最新バージョンって入ってない…? PC環境がないから最新バージョン入れる必要あったら無理かも。あとアドイン(化学定数等)とかも初期で入ってなかったら使いたいのに使えない…

 そうでありました。海外版もファームが古い。
そして、世はまさにスマートフォン全盛、今日、PCを使う「餅ベーション」はありません。若い人はPC持っていなくとも、困ることはないのでしょう。
Officeでワープロ、表計算とか使う場面もあるでしょう。今日、MS Wordは公官庁でも広く利用されております。中には「文書改竄」の具としても。それは言いすぎかも知れませんが、そういった場面でもなければ、PCを積極的に使用しようとは思いますまい。
そんな具合で、高機能電卓のファーム更新も、できれば本体で完結できるのが望ましい。のであります。
実際、当方もWindows、暫く使っておりませんヨ、情けない。
ちなみに、当方が入手したfx-CG50には、周期律表のAddOnが準備されていて「ニホニウム」も表示できましたネ、このあたりは、そこそこ新しいみたい。
他方、高機能電卓を使いこなす、となれば、PC, Windows/Macでも持っておくのが「便利」ではあります。
ファーム更新は元より、プログラムなどを保存するのにも重宝します。更には、blogネタを書いて、公開するなど。
安っぽいもので十分です。Officeも要りません。面白いですヨ。
 

https://twitter.com/V_Mizui/status/1547190592387440640

 FX-CG50のプログラム言語が左辺値を右辺に対して代入する仕様になってるの不思議だし頻繁に間違える。

プログラミング言語、特にBASIC, pythonあたりから始めたりすると、そう思うのは当然の成り行きであります。
しかし、    fx-CG50は、出自が「電卓」なので、計算結果をメモリに保存する、というキーストロークで考えると、右辺変数に代入、という記述方式は仕方のない所ではあります。

https://twitter.com/DchzTb4WftPvlKG/status/1543007909659176960

今もってPB-100を愛用されているとは、物持ち良いなぁ、いや、そこではなかった。

PB-100とfx-CG50のLoop速度比較であります。
「35歳の年齢差を流れを考えると現行機種の負けです。」とは、カナシイ。
それだけ、当時のPB-100が「完成」された製品であった、という事を言いたかったのかも知れません。
他方、現行製品たるfx-CG50の実行速度の遅さを憂いている発言でもあるのですが、
同時に、fx-CG50のBASIC自体も大きく進歩しているので、単純な比較は出来ないものです。
Tweet主は、そこも押さえた上で上記の発言をされたのだと思うのですが、SH4という32bit processorを採用しているのであり、もっと早い実効速度を期待したい、という所でもあります。

fx-CG50は、カラー表示で、乾電池稼働する稀有の機体であります。実行速度がイマイチなのは、その辺りにも原因があるのですが、Sentaro様はSH4のClock up設定をするAdd Onを作られており、電池の消費を度外視すれば、更なる実行速度が稼げます。
更には、upythonでは、より実行速度が早いらしい。

一方で、upythonの機能は、残念ながら、BASICの様な機能を持っていない部分があります。
リアルタイム・キー入力が一つの例です。
また、複素数、統計計算などのBASICで利用可能な機能は、upython にて自前で作成しないとならない。

他のupythonグラフ電卓でも言える部分があるのですが、upython機能は、電卓のAPIを拡張する様には出来ておらず、独立したupython環境として、電卓のUser I/Fから分離する方向でインプリメントされております。
これが何を意味するのか ?

例えば、グラフ電卓では、数式を登録して、そのグラフを簡単な操作で描図出来ます。
しかし、その数式が簡単ではない場合、自前の「関数」としてプログラム作成、数式描図機能に盛り付けたい、と思うのは人情でありましょう。
upythonならば、自前の関数を定義して、グラフ描図機能で使ってみたくなりますよネ。
しかしながら、電卓環境とupython環境は別個のものなので、こうした利便は提供されておらんのであります、ハイ。

もちろん、BASICでも状況は大差ないですが、よりましなのは、グラフ描図機能を呼び出す事は可能であるのです。

2022年5月27日金曜日

久しぶりに店頭でfx-CG50をいじってきましたヨ

時間があったので、量販店の店頭で、fx-CG50をいじってきました。

店頭のデモ機には、当然の事ながらpythonやC:BASICは入っておりません。
そこで、本体に予めある CASIO BASIC による、Mandelbrot集合グラフィクスをやってみましたよ !

他のカラーグラフ電卓のグラフィクスがQVGA (320x240 pixels)に対して、fx-CG50の画面は379x187 pixels となっております (CASIO BASICのバヤイ)。
解像度は、かなり細かいのですが、CASIO BASICでpixel ハンドルを行おうとすると、つぎの制約がある様子。

  • BASIC インタプリターは、少々遅い
  •  ピクセルの色付け、固定の7色しか使えない

C:BASIC やpythonでは、こうした枷がないのですが、そこは店頭のデモ機ですから、制約を楽しみつつ、いじって来ました。

 CASIO BASICで点を描くには、いくつか命令がありますが、Plot 命令による点描では、3x3 pixelsの四角を描くらしい。
379x187 pixelの解像度を活かすには、1x1 pixelの点を打つ操作が欲しい所です (Flineによって出来る様子) が、大量の点を打つと、その分、遅くなりそうです。
実行速度との兼ね合いから、今回はPlot 命令によってプログラムを構成してみました。

作図領域にもよりますが、以下のプログラムではおよそ20分程度の時間が掛かった模様です。
店員サンの動きを気にしながら、気長に動かしてみて頂戴。
お暇なら使ってネ、私寂しいの ... (バーローッ)。
あーあ。こんなんだったら、買ってしまえばいいものを ... ゲルピンで、財布は軽い毎日。トホホ。

 
(Listだよん) 
ViewWindow -3.78,3.78,0,-1.86,1.86,0
CoordOff:GridOff:AxesOff:LabelOff

For 0->J To 186 Step 3
For 0->I To 378 Step 3

I(Xmax-Xmin)/378+Xmin->D
J(Ymax-Ymin)/186+Ymin->E
0->X
0->Y
1->C
While X^2+Y^2<=4 And C<14
X^2-Y^2+D->Z
2XY+E->Y
Z->X
C+1->C
WhileEnd

MOD(C,7)->C
C=0=>Black PlotOn D,E:
C=1=>Blue PlotOn D,E:
C=2=>Red PlotOn D,E:
C=3=>Magenta PlotOn D,E:
C=4=>Green PlotOn D,E:
C=5=>Cyan PlotOn D,E:
C=6=>Yellow PlotOn D,E:

Next
Next
 

2022年5月17日火曜日

プログラム作成、ゴーヂャスに行こう !

こんなTweetがありました。

https://twitter.com/louvre_ken/status/1517883336496013312

カシオさんのFX-CG50-N で
ポケコンレベルのゲームを作れるものですか?

当方の認識としては「ポケコン」つうと、BASICが稼働する製品で、既に製造されなくなって久しい。
おそらく、最初はSharpのPC-1210/1211 (4 bit CPU)から始まり、最後には、CASIOのZ-1 (16 bit CPU ; CMOS 8086)だったか、で幕を閉じた、そういう製品群だと思うのであります。

こうしたBASICポケコンが終焉して久しい今日ではあります。
上記のTweetの主は、どういった製品を指して「ポケコン」と称しているのだろうか ?

BASICポケコンが製造されなくなり、その後は、電子手帳、そしてPDA製品へ流れて行きます。PDAというと、当方などはHP-LXから始まり、Windows CEデバイス、Palm OSマシンなどを想起します。そして、民生品としては、携帯電話から、今日のスマートフォンへ至る道筋があります。
そういや、PDA全盛のころ、経産省あたりが音頭をとって「MBT」という名前のデバイスを策定していた、などという話がありました。MBT = Moble Bussiness Tools, です。Main Battle Tankではありません。今から思うと、かなり物騒な名称でした。

そして、今日ではスマートフォン全盛で、更に、ポケットに収まる大きさのPCなども製造されております。ドンキで販売されているNanote などは、その好例といえましょう。そうした、ポケットに収まるPCの事を、今日的にはポケコンと言っているのだろうか ?

昔の、BASICポケコンの事を指しているのだとすると、これはかなり偏屈であるのだらうか ? それは言い過ぎとしても、かなりノスタルジイではあります。
Tweetの主、かなり体作りに余念のない方らしく、かなりお若い様に思われます。当方の様にポンコツではありませんね。
そうした御仁がBASICポケコンの事を指しているとは思えず、色々と考えてしまったのです。

BASICポケコン、最後に出たのが、8086の製品でありましたが、それでも、DOSの様なモノは搭載されておりませんでした。そら、そうですネ。ストレージも、64KBとかでしたから。しかし、8086を採用しただけでも、十分に評価できるものでありました。

今日では、Arduinoベースのゲームデバイスを始め、さまざまなプログラマブルなガジェットが登場しております。

ref. カードサイズの携帯ゲーム機「Arduboy FX」が店頭入荷、250以上のゲームを搭載 - Akiba Watch
https://akiba-pc.watch.impress.co.jp/docs/news/news/1408350.html

「ポケコンレベルのゲーム」というのは、こうしたモノを指しているのだらうか ?
ArduBoy、PCで動作する開発環境によって、かなり高度なゲームプログラムが作成、公開されております。
ArduBoyのプロセッサは、ATmega32u4という8bit RISCで、16MHzで動作する模様。昔のBASICポケコンは、1MHz で動いたかどうか、でした(PC-1251あたりは、576kHzだったかしらん ?)。当時のZ80 BASICマシン、クロックが4MHz程度でしたネ。
ソコは時代の進歩ではあります。
ちなみに、PC-E500で32x32dot のMandebrotグラフィクスをBASICで動かした人の話では、20分くらいの時間が掛かったと言います。

海外では、TIの電卓などで、バイナリのゲームを作成するという事が広く行われていると言います。
そして、CASIO fx-CG50 でも、バイナリのAdd On を作成し、かなり高度なプログラムが開発されている模様です。
この文脈ならば「ポケコンレベルのゲーム」と言うのは、十分に説明がつきそうです。

fx-CG50では、Sentaro様がAdd Onを作成されていて、Clock Upから、C:BASICまで作成されております。この辺りは、親分のサイトでも積極的に情報発信されております。
Add On開発ツールによって、かなり高度なゲームプログラムは作成可能だといいます。可能性は大いに開かれております。

PC開発資源が十分に活用できる今日、プログラム開発も「ゴーヂャスに」行きたいものであります。

2022年4月19日火曜日

TI-84 plus CE python ed.が入手困難

 先頃まで、Amazon JPでも入手できた TI-84 plus CE python ed. ですが、入手された方は幸いだった、と言えそうです。

本家Amazon.comで調べてみますと、

https://www.amazon.com/TI-84-Python-Graphing-Calculator-Infinitely/dp/B01NC0GADQ?th=1

一部のカラバリでpythonが入手可能ですが、かなり限られている模様。

それもそのはずで、TIのページには、

https://education.ti.com/en/products/calculators/graphing-calculators/ti-84-plus-ce-python

「サプライチェーンの影響で流通量が減っております。スマソ」
みたいな事が出ている。

サプライチェーンの影響は世界的らしく、こんな話がありますネ。

ref. 中国のロックダウン、「iPhone」の生産の一部に影響が出始めている模様 - 気になる、記になる
https://taisy0.com/2022/04/11/155624.html

ref. 中国のロックダウンによるiPhoneなどの生産停止、Appleは早期の生産再開に向け中国政府と交渉中か - 気になる、記になる
https://taisy0.com/2022/04/16/155867.html

「世界の工場」中国が、今やロックダウンで世界的に影響が出ている。

高機能電卓の流通にも影響が出ていて、Raspberry Piなどのデバイスなども流通が激減しているらしく、
更には、Pomera DM250出ないのも、こうした事情があるからなのかも知れません。



2022年4月3日日曜日

電卓を使って、たまには計算を

最近、電卓を持っているというのに、なかなか計算する機会がない。コマッタ。アカンなぁ。

そういや、静止衛星の軌道、高度がどのあたりなのか、頭の体操という事で、簡単に計算してみましたヨ。

静止衛星ちうのは、およそ、常に頭の上にあってほしい、そんな人工衛星であります。
即ち、衛星の周回周期が、地球の自転周期と同じである事になります。

静止衛星の周回する軌道では、万有引力と向心力が釣り合う、そんな具合になります。

万有引力の値は、

f = G * M * m / (D^2)

向心力は、

f = m * (w^2) * D

で計算されます。

G ; 万有引力定数
M ; 地球の質量
m ; 人工天体の質量
D ; 人工天体の周回軌道の地心距離 = 地球半径 (R)+ 周回軌道の高度 (H)
w ; 人工天体の公転角速度 = 地球の自転角速度

但し、大雑把な計算をしようと、地球の形状を球とみなしております。
より正確には、若干扁平な楕円回転体と言われておりますが、今は頭の体操なので「細けぇこたぁいいんだよ」。

さて、上記の式より、

f = G * M * m / (D^2) = m * (w^2) * D

G*M/(w^2) = D^3

D = (G*M/(w^2)) ^ (1/3)

となります。

最近の高機能電卓では、いくつかの物理定数が収録されているものがありますが、必ずしも、上記の値が利用できるものではありません。

こうした定数で、憶えやすいものとしては、

+ 地表付近の重力加速度 g = 9.8 m/(s^2)
+ 地球の半径 R = 6400 km

があります。
上記の地球半径はおよその値ですが、もっと憶えやすい値として「赤道の長さが40,000km」というのがあります。
これを憶えておくと、地球半径 R = 40000/(2*π) = 6,366 km という値が得られます。

これらの値から、万有引力定数 G, 地球の質量 M を忘れてしまっても、G*M のおよその値が計算できます。
地表に置かれたモノには、万有引力が働きます。その大きさから、

f_a = G*M*m/(R^2) = m*g

という関係があり、

G*M = g*(R^2)

と計算されるからであります。

上記をまとめると、

D = (G*M/(w^2)) ^ (1/3)
  = (g*(R^2)/(w^2)) ^ (1/3)

となります。最後は、自転周期角速度 w ですが、地球の自転周期は 24時間じゃねぇの、と思ったら、正確にはそうではないのだと。コレは意外。
地球の自転周期は 23h56m04s と半端な値でした。

地球が太陽の周囲を回っている(公転)ため、
地球上の一点が、再び太陽へ向きを取るには、1周よりも少しだけ多くの角度を回る必要があります。
その回転に掛かる時間が24時間なので、地球が一回転する周期=自転周期は、それよりも少しだけ短くなるのだといいます。
公転周期は、ほぼ 365と1/4日 (閏年が加算されるため)ですから、一日で移動する公転角度は、360度÷365.25で与えられます。この分、余計に回転すると、ほぼ1日=24時間の長さですから、24h÷(1+1/365.25) を計算すると、上記の値に近い数字が得られる勘定です。

ここまで細かい数字を使っても、他の部分で精度が追求できるものではありませんから、自転周期 24hで計算を進めてしまいましょう。
自転周期を24hとすると、自転周期の角速度は、

w = 2π / (24*60*60)

です。

ここまでの情報を整理し、静止衛星の周回する高度をHとしておきます。

静止衛星の地心距離
  D = R+H = (g*(R^2)/(w^2)) ^ (1/3)  

  • 地球半径  R = 40000 / (2π) (km)
  • 地表付近の重力加速度 g = 9.8 (m)
  • 地球の自転角速度 w = 2π / (24*60*60) (sec) 

でした。これを電卓で計算すると、H+R = 42,190,825.5465 という数値が得られました。
これは地心距離なので、静止衛星の高度を求めると、

H = 35,824,627.8229 (m)

という具合。もちろん、以上の操作は概算を求めるものですから、実際の数値としては、35,800 km 程度となりますネ。

ref. 静止軌道 - Wikipedia
https://ja.wikipedia.org/wiki/%E9%9D%99%E6%AD%A2%E8%BB%8C%E9%81%93


2022年3月8日火曜日

「ポメラ DM250」は出るのか ?

ポメラ DM250 が出るらしいというウワサが流れております。

最初の情報は、つぎのtweetでした。

ref. https://twitter.com/futafi_namu/status/1488372271911608323

キングジムの技適情報を照会した所、DM250という製品の登録情報が発見された、との事です。

発売から5年を経たポメラ DM200の価格は下落しており、最終処分段階に達したと目されております。
このタイミングで、DM250という情報がもたらされた事で、ポメラユーザーにとっては、まさに「干天の慈雨」と、期待が寄せられている格好であります。

DM200は、蓋のヒンジ部分、開け締めに由来すると思しき、画面変色問題が少なからずあり、購入1年以内でも実費修理となるケースが報告されておりました。

多くのユーザーは気にせず購入した模様ですが、中には、この件が気になって、なかなか手が出なかった、という向きも居た模様。

DM200では、Gメール利用による「疑似クラウド保存」の機能が盛り付けられました。
これなどは、無線LANの機能がハードウェアに用意されているからこその機能でありましたが、
DM200のカーネルがLinuxであり、ネットワーク機能を盛り込める事から、クラウドストレーヂを利用する事自体は可能となっていた模様。

OS/GUIにAndroid OSを盛り付けるには、電池容量が少ない事から、独自の「ポメラShell」ともいうべきファームを取り付けた、と説明されております。

一方で、製品がAndroid PCベースで構成されていて、カーネルにLinuxを採用している事から、命知らず(?)がポメラShellを迂回する様にシステムを改変、X window systemを取り付け、モバイルLinux端末として利用するというハッキングが開発され、一部のマニヤは喜々として利用していたという話もあります。
DM200でデスクトップを動かす際の不自由さは、X GUIを採用するにああたってのポインティング・デバイスが用意されていない点でした。
これを解決するため、キー操作でポインタを擬似操作するクライアントを用意するなどの工夫が必要となっていたそうです。

DM200自体は、単体で十分に「熟成」した商品構成でした。
DM250という型番から、DM200の改善版ではないか、と見る向きもあり、従来のDM200に存在した画面変色問題が改善されたのではないか、と期待されておりますが、同時に、製品の性能・機能の大幅な向上は見込めないものかと推察されます。

DM200のGメールによる擬似クラウド保存機能は、無線のつながりがイマイチだったという報告もあり、この辺りを改善する程度の改良はありそうです。
DM250の技適情報をみると、測定した電波強度の数値が、DM200のそれと比較して若干大きいように思われれます。これは本体設計の見直しによる、画面変色問題への対応と、電波出力の改善、という側面があるのではないか、と期待したい。
あと、DM200のX GUIマニヤ向けに、ポインティング・デバイスの提供、ハードウェアの付加というのは考えやすいのかも知れません。
DM200より壊れにくくなれば、DM250は広く受け入れられる製品になる事が期待されます。

...

一方、DM200発売から5年以上を過ぎ、DM200が終売に近づきつつある今日、果たしてDM250が発売されるのか、という不安もあります。

DM250、出てくれるといいのですが。