続ORANGE-ESPerでPCEmulator (FabGL)

ESP32-DevKitCについて、秋月で買ってきた。
通販のほうはだいぶ遅延が短くなってきた。
Amazonで買ったESP32-WROVERが乗っているものを、秋月のESP32-WROVER-Eが乗っているものに換装する。

書き込もうとすると
A fatal error occurred: MD5 of file does not match data in flash!
のエラーが。
単体で書き込むとうまくいくようなので、単体で書き込むが、今度は起動しない。
どういうことか調べているうちに、そういえばGPIO12がプルアップされているとBASICが起動されるらしいことを思い出す。
SDカード周りでGPIO12を使用しているので、microSD カードモジュールを眺めてみるとチップ抵抗が乗っている。
導通チェッカやテスタを使って確認して該当するチップ抵抗を見つけ取り外してみると、書き込みができるようになって起動もできるようになった。

ついでに気になったところがあったので確かめてみる。
SDカード周りでソースの修正を行ったが、使用されているESP32の種類に合わせて自動判定してくれるので、修正の必要はない場合があるようだ。
自動判定に任せればソースの修正箇所は減らせるが、モノによっては自動判定がうまくいかず明示的に指定の必要があるようだ。
Amazonで買ったほうは最初SDカードを認識せず明示的に指定したが、うまくいかないときに修正してみるのが良いかもしれない。

 

カテゴリー: ESP32, FabGL, ORANGE-ESPer, 電子工作 | コメントする

ORANGE-ESPerでPCEmulator (FabGL)

何気にFabGLについてググってみたら、PCEmulatorというものが追加されていた。
なんとESP32でMS-DOS,FreeDOS,Windows 3.0などが動くらしい。
早速動かしてみようと思ったが、どうもPSRAMというものが必要らしく、ESP32-WROOM-32ではなくESP32-WROVERが必要で、また、それに合わせてSDカード周りの配線も若干違うらしい。

ということで早速部品をそろえる。
ORANGE-ESPer 組立てキット(モニター版)とESP32-WROVERが乗った ESP32-DevKitCを取り寄せる。
ESP32-DevKitCは秋月で買いたかったが、通販だと1週間ぐらい遅延しているらしいので、amazonで購入することにした。

ところがである。
amazonのサイトではESP32-WROVER-IB DevKitC ESP-32となっているが、実際届いたのはESP32-WROVERであった。

写真と違うし。
技適マークついているが、一応総務省のページで番号を検索して正しいことは確認した。

さて部品が届いて作ってみることにする。
もろもろの情報は、PCEmulator (FabGL)を参考にした。

SDカード周りは、MISOとMOSIで使えるGPIOが違うのでそれに合わせて配線を変える必要がある。
基板のパターンをカットしてもよいのだが、黒基板でパターンがわかりづらいし、なるべく簡単に済ませたいので、microSD カードモジュールの取り付けで工夫することにする。

幸いGPIO12,35はすぐそばにパターンが伸びているのでそれを使わせてもらう。
他は普通に組み立てていけばOK

あとはPCEmulatorを書き込めばOKなのだが、件のサイトに書かれていないところで注意点がある。
まず、SDカード周りが変わっているので、それに合わせて一部ソースを書き換える。
FabGL/mountSDCard()をもとに以下のように変更。

// if (!FileBrowser::mountSDCard(false, "/SD", 8))
if (!FileBrowser::mountSDCard(false, "/SD", 8, 16 * 1024, 35, 12))
ibox.message("Error!", "This app requires a SD-CARD!", nullptr, nullptr);

変更内容としてはGPIOのアサインの変更なのだが、途中のパラメータが省略できないのでallocationUnitSizeのデフォルト値も入れてある。

次に、NTPサーバから時刻取得をするところであるが、そのままでは日本時間ではないので直してやる。

 
void updateDateTime()
{
  // Set timezone
  //setenv("TZ", "CET-1CEST,M3.5.0,M10.5.0/3", 1);
  setenv("TZ", "JST-9", 1);
  tzset();

 

また、無線LANをステルス設定しているとSSIDが一覧に出てこず指定できないので、ソースで直接指定する。

 
            if (ibox.textInput("WiFi Configuration", "Insert WiFi password", psw, 31, "Cancel", "OK", true) == InputResult::Enter) {
              // user pressed OK, connect to WiFi...
              //preferences.putString("SSID", WiFi.SSID(s).c_str());
              preferences.putString("SSID", "任意のSSID");
              preferences.putString("WiFiPsw", psw);

これで一覧で何を選んでも指定したSSIDに接続されるようになる。
本当は一覧から選ばなかったときにSSIDを入力できるようにしたかったがうまく思いつかなかったので、直接書き込むことにした。

ソースを編集して保存して書き込むと無事起動。
無線LANにつながり時刻を取得。
いろいろ試してみる。

さて、ワンセグTVのおまけ機能では画面がずれて表示され、さらに画面の位置が調整できないので別のモニタあで試す。


FreeDOSやMS-DOSなどあるがやはりここはWindows3.0を試してみる。
白黒画面だがWindowsが動くことじたいびっくりである。
3.0だしさすがにもっさりしてるが、それでもこの小さなデバイスで動いているのは当時からしたら考えられなかっただろうな。

懐かしいといっても自分はWindows3.1からなのだが、ゲームで遊んでみる。

リバーシだが、白が先手ってのは違和感あるな。
昔はよくソリティアで遊んだものだが、たまにしかクリアできなかった。

Windowsもだが、DOSも動くのでいろいろ遊んでみたいところだ。
GW-BASICも入っていて、サンプルプログラムを動かしてみたら、グラフィックや音も出せるっぽいので結構遊べそうだ。
音に関しては若干問題ありそうだったが。

カテゴリー: ESP32, FabGL, ORANGE-ESPer, 電子工作 | コメントする

ドメイン移管を行いました

ドメイン移管を行いました。
多分大丈夫だと思いますが、設定の変更など行っているのでしばらく様子見とさせてください。

サイトへの接続については5日ぐらいまでには安定しました。
しかし、zer〇kara.c〇mへの問い合わせの返事はなかなか来ず。
何度か催促したところ、17日になってようやく返事が。
要約すると、

日本語わかるやつがいない
金は要らないから他所に行け

というもの。
いや、zer〇kara.c〇mってバリバリの日本語のサイトやん。
なんで日本語出来るやつおらんねん。
2020年6月にロサンゼルスに移転して、カスタマーサポート体制の充実と新サービスの提供するんじゃなかったのか。
全然ダメになってるじゃねーか。
もう何年も前から問い合わせを放置したりしてて、末期だよな。
変なTシャツとかは売ってるみたいだけど。

ちなみに8年前に何があったかというと、
ドメイン更新の数日前に、更新の案内が来て、継続の連絡を行ったにもかかわらず、ドメインの期限切れになってしばらくnazo-fjt.comにつながらなくなった。
どことも知れないサイトに飛ばされ、自分宛のメールもいくつか行方知れずになった。

この後、こちらから解約届を出さない限り自動更新されるようにしたと言っていたが、今回は更新の連絡がないまま期限切れになってしまった。
サイトにも自動更新について書かれているのに、更新されずに期限切れにされてしまった。

他にも、更新料のカードへの請求が全然行われなくて、何があったか問い合わせたが放置され、翌年にようやく返事があったと思ったら、まとめて2年分の費用を請求された。

ドメイン移管はもともと考えていて、2つほど選択肢を検討していたが、とにかく移管することにした。
ドメインをどこに持っていくかだが、やはりサーバーとドメインは別にした方がよさそうだとの結論に達し、ドメイン移管の手続きに入った。

ドメイン移管は移管元での手続きもあるからすんなり進まない可能性もあったけど、こっちからも催促したおかげか、何とかできたようだ。
ついでに以前から考えていたドメインについても取得。
さてこちらはどう使おうかな。

カテゴリー: ひとりごと | タグ: | コメントする

サイトへの接続が不安定となり、申し訳ありません

zer〇kara.c〇mがやらかした(8年ぶり2度目)ため、サイトへの接続が不安定となっています。
ご迷惑をおかけして申し訳ありません。
復旧はDNS次第なのでわかりません

今日は出社のため、ロクに対応できませんでした。
テレワークだったら、仕事片手間にこっちの対応できたのに(ダメじゃん)
といっても、DNSの更新を待つしかないからどうしようもないのですけどね。

詳細は落ち着いてから休みの日にでも。

カテゴリー: 未分類 | タグ: | コメントする

HP200LXとモバイルギアMC-K1

もうだいぶ前になるが、モバイルギアMC-K1を手に入れた。
そしてHP 200LXも手に入れた。

モバイルギアは「初心者のためのモバイルギア徹底活用講座」を元にDOS化した。
200LXはHP100LX/HP200LX設定ガイド経由でJKIT-FREEを入手。
LXの現在2009を参考に日本語化とMSIMEの導入を行った。
件のサイトではWindows95のインストール用のCDからMSIMEに関するファイルを取り出す方法が書いてあり、自分もその方法でやろうとヤフオクでインストールCDをゲットしたが、そのあとにWindows95がインストールされたHDDがあったことを思い出してHDDから必要なファイルを取り出して作った。
そして環境ができた後にCDが届いた。
インストール済みのPCやHDDがあるのなら、\Windows\command配下に必要なファイルがあるのでそこからコピー。
辞書ファイルは~.DOSではなく~.DICになっているのでそれに合わせて設定をなおす。
cabファイルからインストールされる時に拡張子が変更されているようだ。

これで小型のMS-DOSマシンができたわけだが、さてどうやって遊ぼうか。
ちなみに200LXはディスプレイの調子が今一つ。
もう一台ずつほしいところだがどうしたものか。

さて200LXにはシリアルポートがついており、2mmピッチのピンソケットがあればシリアルポート用のケーブルが作れるが、モバイルギアは専用のコネクタでレベル変換が必要になる。
コネクタのピンアサインとレベル変換の回路についてはRS232Cケーブルの製作を参考にしたが、問題はコネクタである。
サイズを測りピンのピッチは0.8mmであることが分かったので、秋月電子で超薄型ピッチ変換基板 FPC50P 0.8mmピッチを購入。
この薄型基板を加工して試験的に作ってみた。

サイズは写真の通りで、基板をカットして、半田付け部分はユニバーサル基板の残材を使って補強。コネクタに挿す部分は下敷きをカットしたもので補強、セロテープで厚さの調整を行った。
両面テープとエポキシ樹脂系の接着剤で固定
あくまで簡易的なものなので、少し接触が甘く抜けやすいので注意。

回路についてだが、電圧を計ってみたところ電源は5V出てるが信号は3V前後だった。
ロジックは3.3V系で電源は5Vだから件のサイトの回路図やオリジナルの回路ではシャントレギュレータで3.3Vを生成してたのか。
なるべく簡単に作れないかと思い、秋月電子で部品を物色していたところ、3.3Vで使えるRS232CドライバICを見つけた。
合わせてよさげなものを見繕う。
RS232CインターフェースIC SP3243ECA
低ドロップアウト電圧レギュレータ 3.3V300mA SOT-23 AP7333
Dサブ9P基板(小)
SOT23変換基板 裏面パターン付 金フラッシュ
SSOP28ピン(0.65mm)DIP変換基板
ドライバICや電源レギュレータに必要な外付けのコンデンサはピッチ変換基板に実装することで、配線の手間を節約。
特にレギュレータの方は、SOT23変換基板の裏にパターンがありそれがちょうどいい塩梅だった。

実装したところ。

実験的に作ったものなので、こんなものかな。
回路は次の通り。

データシートの図面を貼り合わせて落書き追加。
保護用の抵抗は390Ωにしてあるのは、無くてもいいかなと思ったが一応つけておこうかなとも思った結果、抵抗値を減らしたものになった。
ちなみにその抵抗は変換基板の下に実装してある。

実際に使ってみる。

接続した状態。
つないだだけでは電源は来ていないので、DOSからポートをONにする。

MGCOMというモバイルギア用のフリーソフトがあるので、それでポートを活性化。
すると、レベル変換器の電源がONになる。

別途手に入れたモデムをつないで動作の確認。
モバイルギア用にカスタマイズされたHTERM4MGでATコマンドを打ってみる。

NO CARRIERとなっているのはATDT03177と打ったから。
打ったコマンドの上にレスポンスが上書きされたようだ。
とのかくちゃんと動いたが、実際のところ使い道はあるのだろうか。

カテゴリー: HP200LX, モバイルギア, 電子工作 | コメントする

国会図書館で見かけた奴

今日も今日とて国会図書館に行く。
ここ何ヶ月か、ほぼ毎週土曜日は国会図書館に行っている。

さて、そんな今日の午後、閲覧申込をして本が届くまでのあいだ、端末で検索結果を眺めながら思案にふけっているときであった。

パシャ

・・・

パシャ

・・・・・・

パシャ、パシャ

やかましいわ。
どうやらスマホで本の写真を撮っているようであった。

国会図書館に限らず図書館ってたいてい撮影禁止のはず。
あまりにも頻繁にシャッター音がしてやかましいわ気が散るわで職員にチクることにした。

インフォメーションカウンターから席にもどりつつ、職員が「今も撮影してますね」と言って注意しに向かった先は、全然違う人。
そっちじゃねぇ、こっちだよ、ってか他にもいたのかよ、撮影してるやつ。

こっちとしては、音がやかましかっただけなのだが、本を撮影すること自体アウトなのでこういう時は職員から注意してもらうのがよいな。

カテゴリー: ひとりごと | コメントする

ポケコンジャーナルの連載記事と『カシオポケコンで学ぶ情報技術基礎』

本日も国会図書館に行ってみる。

カシオ製のポケコンについて引き続き情報収集。
『カシオポケコンで学ぶ情報技術基礎』(コロナ社)を借りて読んでいたら、なんか見覚えがあるような。
家に帰ってからコピーを見比べる。
ポケコンジャーナルに連載されていた「ポケコン・バイブル塾」の記事と『カシオポケコンで学ぶ情報技術基礎』の3章・ポケコン制御がほとんど一緒じゃねーか。

ほしいところだけ複写してもらっているから全部確認できたわけじゃないけど、コピーしてもらった範囲では一緒だった。

本日借りた本とポケコンジャーナルの連載19,20の執筆者の名前は別。
別名?それとも別人?
連載30では同じ人になってるが、実際はいつからだ?
ポケコンジャーナルの号数まで控えてなかったけど、国会図書館オンラインの申込履歴から推察すると、該当部分はポケコンジャーナルのほうが先っぽいが。
どうゆうこと?

カテゴリー: Z-1, ひとりごと, ポケコン | コメントする

CASIO Z-1にプリンタをつないでみた

先日作成した2.5mmの3極プラグのシリアルケーブルだが、ポケコン→PCへの転送は問題ないが、PC→ポケコンへの転送がうまくいったりうまくいかなかったりする。
どうも接触が悪いらしい。
幸い、30ピンコネクタにもシリアルのピンが出ているのでそこにつなげるアダプタを作ることにする。
ついでに、プリンタをつなげられるようにすることにした。

国会図書館でポケコンジャーナルを確認して、93年2月号にプリンタインターフェースの記事があったのでそれを参考にする。
ちなみに『Z1/FX890P活用研究』という本もチェックしたいと思ったが、どうやら国会図書館にないらしい。

28ピン、29ピンの信号名が逆になっていて、信号名が逆なのか、番号が逆なのか迷ったが、『カシオポケコンによる機械制御実習』で見た30ピンコネクタからI/Oを取り出す回路を見て信号名が逆だと判断した。
しかし、信号のタイミングを考えると番号の方が逆のようにも感じるし、どっちなんだろう。

シリアルとプリンタインターフェース。
本当はFT232RL USBシリアル変換モジュールキットを取り付けようと思ったけど、プリンタだけ使いたいとき、モジュールにUSBをつながないで信号線だけつながっている状態になるのが嫌だったので、信号だけピンヘッダに出すようにした。

しかし、今どきセントロニクスインターフェースのプリンタなんて入手しづらい現状で需要あるかしら。
ヤフオクなんかで何とかプリンタを手に入れることはできるかもだけど。

ハーフピッチのピンヘッダの部分。

ピンヘッダの部分は、ハーフピッチの基板を使用。
ポリウレタン線を使って配線し、低頭ネジを使って固定。

実際にプリンタにつないでみたところ。
F.COMメニューやBASICのLLISTで印刷してみる。


ちなみにリストは、エミュレータを動かすのに必要なROMの内容を転送するプログラム

ほかにLPRINTも試してみる。

LPRINTも印刷できた。
今回もMSXのプリンタで試したけど、他のプリンタでも多分大丈夫だろう。
暇があったら確認してみるか。

最後にシリアルポートの確認。

ポケコン→PCへの転送も、PC→ポケコンへの転送も両方問題なく出来るのを確認。

カテゴリー: Z-1, ポケコン, 電子工作 | コメントする

CASIOのZ-1を手に入れた

一体いつから──── CASIO製も打ち止めと錯覚していた?

打ち止めとは言ったものの、CASIOの16Bitポケコンも興味があったのでヤフオクで手に入れた。
ヤフオクで出品者はZ-1GRとうたって出品していたけど、どう見てもZ-1だ。
まあいいけど。
ちなみにCASIO製のポケコンは今回初めて手にした。

いざ届いて、電池を入れて電源ONするも何も表示されず。
コントラスト調整しても表示されない。
想定の範囲内である。

ばらして中身を見てみることにする。
事前にググってばらし方を確認していたが、確かにネジが多い。
しかも固い。
精密ドライバでは太刀打ちできなかった。
あと、DCジャックの上にバネがあるので気を付けないとならない。

ばらすためには半田ごても必要。
ブザーの線を外したり、シールド用の銅箔を外したり。

CPUを拝んでみる。
若干ピンボケしているが、80L188というもの。

ばらして基板を観察。
写真じゃわかりにくいけど、電解コンデンサの半田がどうもサビているような。
あと、バックアップ用のリチウム電池の金具が当たるところに腐食が。

腐食した部分を何となく磨いて、電解コンデンサを交換。
220μF10Vの小型のもの1個と、10μF16Vの小型が物2個交換。
小型のものを使わないと、ケースに収まらなくなるので注意。

チップタンタルコンデンサかな、これも交換しようかと思ったけど、すぐに手に入りそうなかったので、これはそのまま。
電解コンデンサでもよかったのかな?

交換後、仮組をして電源を入れたところ無事電源が入った。

さて、電源が入るようになったところで、今度はメモリ増設をおこなう。
こちらも増設を行ったブログの記事があるので、それを参考にする。
まずは、元の状態。
M5M5256が使われていた。はて最近見かけたような

元あったRAMを取り外して、数年以上前に秋月で買っていたRAMを取り付ける。
このRAM、何のために買ったんだっけ。何故か使われずにいた。
RAMを取り付け追加のコンデンサも取り付ける。

取り付けたら再度仮組をしてALL RESETボタンを押す。
メモリが認識されて256KBと表示されている。

リセットの他、「SYSTEM *」コマンドを実行してRAMチェックを行う。
エラーが表示されたら半田付け不良の可能性があるので、修正する。
うまくいけばCHECK OKと表示されるが、ちょっと時間がかかるので心臓に悪い。

問題なければ組み立てを行うが、バネや裏面のスイッチなどの部品があるので注意。
ネジを閉めるのも結構力がいるので、後で取り付け忘れた部品が見つかると結構へこむorz
何度も開け閉めするものではないな。

他にも、PCとの転送ケーブルもつくる。
2.5mmの3極プラグにケーブルつないで、USB-シリアル変換を取り付けるようにした。

プラグのケースの径が太くて、Z-1のケースの凹みのところに入らずにうまくPCとつながらなかったので、樹脂を少し切ったところで奥まで入るようになった。

さて、これで一通り準備はできたもののどうやって遊べばよいのやら。
PC-Gシリーズと比べても情報が少ないような・・・

カテゴリー: Z-1, ポケコン, 電子工作 | コメントする

カレー屋で見かけたヴァカ者ども

昼休み、カレー屋に行く。
カウンター席について間もなく、斜め後方からやかましい声が。
夜の居酒屋のテンションで、笑い声も「ギャハハハ」という擬音そのままの感じで。
そう広くない店とはいえ、端と端の対角線上にいるのに話の内容が聞こえるほどの大声でしゃべっていた。
対面の人と話すのにそんなバカでかい声を出す必要があるのか。
ふと見ると、マスクをしていない様子だったが、コロナ云々マスク云々以前にマナーの問題だな。
こういう人間は何とかして滅んでほしい。

 

カテゴリー: ひとりごと | コメントする