kazzo互換tunaでcnrom(mapper 3)を吸い出せない

 BAKUTENDOさんの情報を参考にkazzo互換のtunaを作りました。老眼に手半田はきついです。組み立て後に全然動かない(0xffのデータだけ返ってくる)ので回路を一本一本調べたらやっぱりブリッジがありました。それを治すとmapper0はちゃんと吸い出せる。

 でもmapper3が吸い出せない。手元にあるのはグラディウス、スターソルジャー、テトリス。使っていたcnrom.adは下記の通り。

board <- {
	mappernum = 3,
	cpu_rom = {
		size_base = 0x8000, size_max = 0x8000
		banksize = 0x8000
	},
	ppu_rom= {
		size_base = 0x8000, size_max = 0x8000,
		banksize = 0x2000
	},
	ppu_ramfind = false, vram_mirrorfind = true
};
function cpu_dump(d, pagesize, banksize)
{
	cpu_read(d, 0x8000, 0x4000);
	cpu_read(d, 0xc000, 0x4000);
}
function ppu_dump(d, pagesize, banksize)
{
	for(local i = 0; i < pagesize; i++){
		cpu_write(d, 0x8000, i);
		ppu_read(d, 0, banksize);
	}
}

 webの検索では、cnrom.adで吸い出せたというものしか見つけることができない。でも自分の環境ではプログラムROMは吸い出せている(CRCがwebの情報と一致)けどキャラクターROMはダメ。エミュレータで起動してみると、ゲームは動いているけれどもちゃんと(w)キャラクターが化ける。
 mapper3のバンク切り替えの仕組みをきちんと理解していなかったということもあるし、anagoのスクリプトの仕様もよくわからない。キャラクターROMのバンク切り替えを自動でしてくれるくらいに思っていたので、ソフトウェアの問題なのかハードウェアの問題なのか切り分けができず悩みました。まだどこかにブリッジやハンダ不良があるかもしれないとか。
 吸い出したバイナリを見てみると0x8000~と同じデータが0xc000~に出てきている。これはバンク切り替えができていないですね。mapper3のバンク切り替え周りの回路は下記のような感じとのこと。ここらへんの信号を見ることにする。

 anagoにはtuna_canという簡易デバッガがついているのでビルドして実行。writeやdumpが個別にできるんですね。これは良い。単発でwriteができる。オシロをつないで書き込み時のD4やD5を見るとROMSELが来たあとにデータが変化しているんです。本来Highのデータwriteなのにレベル的にHighとLowの中間(自分の環境では)Low寄りが見える。カートリッジを外してみるとちゃんとHighで安定。あーこれはプルアップが足らないの?と最初は思ったけど、ROMSELが来てからレベルが落ちるのでコンフリクトですね。

 A11、A12に正しいアドレスがいくためにはD4とD5に正しいデータが出てくるアドレスにwriteしないと書き込みのデータとROMから出てくるデータとが衝突しちゃうと。cnrom.adが何か自動でやってくれるわけではないとそういうことですね。

電気書院の読み放題サービス

 電気書院の読み放題サービスが始まりました。プレオープン記念ということで60日間無料ですので使ってみました。「電験1・2種」のサブスクリプションを契約。すでに所有している本もありますが(koboで買っているので当然ながら)一括管理できるものではないです。

 ブラウザベースで読むことができるものなのですが、うちでは常用に耐えないことが判明しました。ページをしばらく捲っていると突然不安定になります。表示がされなく(真っ白の空白ページに)なったり、なにかバツマークのついたアイコンがページ中央に表示されたりします。ページを戻ったり進んだりすると表示されたり、されなかったり。そのうちにchromeが固まります。タスクマネージャからchromeを殺して再起動しても状況は変わらず。PCの再起動が必要です。おま環かもしれませんけどね。

IPv4アドレスを設定しないとIX2105をNetMeisterに登録できない

 我が家はURの賃貸マンションなのでBB-EASTというプロバイダを利用しています。IPv6をサポートしているので実家とのVPN接続にはIPv6で対向を指定したIX2215を使っています。IX2215を選択したのはCiscoライクでオークションで安く入手できたから。昔(もう10年以上前)仕事でそこそこ使ったことあるのはCiscoとYAMAHAだけなんですよ。Ciscoは高いしファーム入手できないし、YAMAHAも意外と高い。IXシリーズは人気ないのでしょうか、安いですよね。
 v6で対向指定している理由は、BB-EASTはv4ではプライベートアドレスしか貰えないのでVPN的には難しそうだから。v6ならグルーバルアドレスだからDDNSで簡単簡単。

 実家とのVPN速度は100Mbps程度しか出ていないので大きなIX2215ではなくもっと小さいものが欲しかったところ、IX2105を入手できましたので手元で設定を始めました。そうするとNetMeisterにちゃんと登録できない。

ix2105(config)# sh nm inf
NetMeister Client:
Result : Success (20000)
Last Request: 2023/0x/xx 11:04:08
Next Request: 2023/0X/xx 14:53:01 (remain 358388 sec)
Information:
IPv4 Address:
IPv4 Domain :
IPv6 Address: xxxx
IPv6 Domain : xxxx.v6.nmddns.jp
Interval : 168 hour
API-GW:
gpid : xxxx
stid : xxxx
htid : xxxx
Interval : 0 sec
Next Request: 2023/0X/xx 11:25:21 (remain 328 sec)
Status : Unregistered
MQTT:
Interval : 0 sec
Status : Disconnected

 NetMeisterのサイトだとDDNSは登録されているけれども装置としては登録されていない。そういえばIX2215を設定しているときにも同じ状態になったような気がする。VPN設定には問題ない感じで自宅と実家にIX2215を配置したら簡単に(VPNとして)疎通取れたし、装置としても登録されていたのでスルーしていました。

 ログにはNMC.046: Communication failure: CONNECT (update)とでている。検索しても有益な情報には出会えません。v6をまだ良くわかってなくて(IX2105は既設IX2215の内側に居るから)NDプロキシのときのフィルタルールとかが間違っているのか自信が持てず絞り込めない。IX2105(Version 10.2.42)で起こっているのでこれもちょっと違う。以前に起きたような気もするIX2215もVersion 10.7.18なので違うんじゃないかな。

 しばらく検索しててもわからないのでパケットダンプしました。DNSにapi.nw-meister.jpのAとかdeviceif.nw-meister.jpのAAAAとかを要求して通信してるんですよ。なのでinterfaceにv4アドレスを振ってみたらあっさり解決。v6だけだとだめなんですね。v4だけでいけるかは試してないです。

Synology Virtual MachineへUbuntuインストール時に固まる

 SynologyのNASにVirtual Machineという仮想マシンを作成する機能があるのですが、Ubuntuインストール時に固まります。環境はDS220+、DSM 6.2.4-25556 Update 7、Virtual Machine Manager 2.5.3-9760、使ったイメージはubuntu-22.04.2-live-server-amd64.iso。

 ここの人の情報通り、ビデオカードの設定においてvmvgaがデフォルトですがvgaにすることで正常にインストールできました。

WordPressをアップデートできなかった

 WordPress6.2が利用可能です。今すぐ更新してくださいっていうので、更新しようとするとダウンロードでコケる。SuiteXだとphpのsys_temp_dirの容量制限があるらしく、php.iniを編集して sys_temp_dirをユーザ管理のディレクトリに一時的に変更してアップデートしろとのこと。php.iniの編集は専用のweb UIで編集できます。それで編集しましたけれど反映されないですねぇ。記述が誤っているのか、apacheの再起動かなんかが必要なのかがわからないです。apacheの再起動は共用のサーバだからできないですよね、きっと。そうするとphp.iniを動的に読み込む仕組みがなんかあるんですかね。

 こういうの仕事でやっていたのは10年以上前だから今一つ自信ない。通常はapacheを再起動するんですよね?。SuiteXだとどうするんでしょうか。ちょっとすぐにはわからなかったのですが、なんとかできました。使っているphpが5.6のモジュールタイプでした。用意されているphp.iniの編集UIではCGIタイプのものしかないので設定変更ができてなかったのですね(5.6のCGIタイプを編集してました)。まずphpのバージョンを7.4に変更してphp.iniでsys_temp_dirを編集してアップデートできました。

auひかり解約時日割り請求

 今、URの賃貸マンションに住んでいるんです。私の住んでいるところでは、インターネット回線の利用はBB-EASTかauひかり系が利用でき、フレッツ系はダメです。フレッツの設備は入っていなくて、新たに入れることもできないのです。BB-EASTは月額1925円と安いのですが、グローバルアドレスを振ってくれないのでauひかり系にしたいとは思うのですが、月額4000円くらいになります。

 マンションにはauひかり系の営業が年に何回か説明会に来るのですが、工事費なし、契約期間なしで月額3025円というのがあったので契約したのですが、いざ開通すると速度が15Mbpsくらいなんです。それはないよなぁと思って別のPCやスマホとか他のノードで試してもやっぱりそのくらいなんです。これはダメなのでその日に解約の電話を入れたときに初めて16Mbpsの速度制限コースだというのを知りました。いやぁ、安いものにはやっぱり理由があるんですね。

 説明会のちらしには速度についての記述はいっさいないので、解約時に16Mbpsまでのコースだというのを聞いたときには騙された感がかなりあったのですが、開通前に郵送された書類には都市機構16M(R)という契約プランだと書いてありました。ちゃんと見てなかったよ…。でもちらしには速度やコース名の16Mというのはいっさい書かれてないんですよね。「都市機構 特別プラン」とは書いてある。今回は契約前にあらかじめwebで調べることをしなかったので、仕方ないかなぁ。

 解約時には登録料の3000円と日割りに利用料がかかるという説明でした。請求書が来ると登録料3000円、モデム利用料400円、基本使用料2450円となっています。問い合わせたら日割りではなく1ヶ月分の請求とのこと。なんだかなぁ…。

pixel6でWiFiのときドラクエウォークが動かない(つづき)

 BUFFALOのルータを買いました。WAN側のMTUが設定できるので1454にしてパケットダンプ。DFが付いていない大きなパケットが内側から来るのできちんとフラグメントして外へ送っています。けれどサーバから応答がない。サーバがパケットを再構築してくれないんでしょうか。そんなことあるのか…

 スマホでMTUはやっぱり変えられそうにないので、これで終了ですね。Android12になってWiFiとモバイルの切り替えがめんどくさくなったので、家ではウォークやらなければいいのかな。

pixel6でWiFiのときドラクエウォークが動かない

 スマホをZenFone5(ZE620KL)からPixel6に変えたら、ドラクエウォークが自宅のWiFi接続のときにネットワークタイムアウトしてしまうんですよ。他のアプリケーションは問題なし。iPhone SEのドラクエウォークは問題なく動作。自宅のWiFiはTP-LinkのDECO M5。MTUが怪しいですがM5はMTUの設定ができない。androidもrootがないとMTUの設定はできない感じですね。どうしてrootないとダメなんでしょう。

 MTUで間違いなければルータ買わないといけなさそうなのでパケットダンプしようかと思ったけれど、10Mのシェアードハブは捨ててしまってからだいぶ経つ。ポートミラーなんてCISCOのスイッチで10年以上前にしたのが最後ですよ。アマゾンでポートミラーできるハブを探すと、今は安いんですね。驚きました。TP-Linkのが安いですがM5の動作を不安に感じているのでNETGEARにすることに。5ポートは納期がかかりそうなのでGS308Eを購入。

 ダンプしてみるとiPhoneのときにはICMP(Destnation unreachable, Flagmentation needed)が返ってくるんです。それでちゃんとそれに従って小さくしたパケットを送ってるんですよね。でもPixel6のときにはICMPが返ってこない。返りの経路でなんかあるのか、でもiPhoneのときには返ってくるのになんでかなーと思ってたら、このICMPの原因になるPixel6の大きめパケットにはDFフラグがついてないのに気が付きました(iPhoneにはDFが付いています)。経路のルータがフラグメントしてくれてないんでしょうか。こちらでできることはなさそうなので、やはりルータを買わなければいけなさそうです…

SuiteからSuiteX V2へ移行

SuiteX V2へ移行しました。

adminでFTPしてもメールデータが見られませんね。Suiteのころは全ユーザのメールディレクトリが見られたので、バックアップも簡単でした。SuiteのメールデータをSuiteXのメールディレクトリへ戻せそうにないです。