A1ST キーボード補修2017年09月17日 16:05

A1STのキーボードの機器が悪くなった。
自業自得なんだけど、分解・組み上げを繰り返す間に自分で壊したみたい。
2、E、MのX2系列のキーが壊滅、1、9、DのX1系列のキーもかなり機器が悪い状態。

キーボード補修
こわしたのはフレキの基板への差し込み部分付近。
ちょうど赤線の辺りに折れ癖が付いていてそこで断線した模様。
ここを挟んで抵抗値が跳ね上がる(数十~数百KΩ)。
※X1、X2はCN11の15(7)、16ピン。ちょうど画像の1番下とその上のライン。

患部がわかっているので、今回はテクノペン(秋月電子)で補修してみることに。
断線が疑われる部分に厚めに塗って1日放置。
乾いたところで抵抗値を計ってみたところ、どうにも値が安定しない。

そこで、フレキの裏からプラスチック片(クリアファイルからカットしたもの)を接着し、折れ癖が付いた部分をまっすぐ伸びた形に補強してみた。
この補強+テクノペン補修が効いたみたいで、抵抗値は数Ωで安定した。

組み上げてみたところ、効かなかったキーや効きが悪かったキーも良く反応してくれている。

サロンdeねくすたぁ~ その32017年09月17日 15:52

遅い夏休み中。

部品がそろったので、「サロンdeねくすたあ~」のSDカードの電源部分を強化してみた。
3.3Vの定電圧レギュレーターを利用し、スロットからの5Vから新たに3.3Vを生成、直接SDカードスロットに供給してみた。
SDカードスロットの電源ラインは抵抗(R1)を介しているのでこれを取り外し(1608のチップ抵抗なので小さい!)、本来の電源供給を遮断。代わりに生成した3.3Vを投入。

結果、あっさりFlashAirの無線機能が機能するようになった。
ノーマルだとエラーが発生するディレクトリ変更も問題なく動作する。
よしよしと思いながら、ふと取り外した抵抗を計ってみると10Ω。

あれ?
回路図上はR1って1Ωじゃなかったっけ?
と、電源強化部分を取り外し、R1に手持ちの1Ω抵抗つけてみたらそれでもFlashAirは動作した。

動いたから、いいか。

Wizardry Bane of the Cosmic Forge2017年09月09日 23:46

次いでBane of the Cosmic Forge
PC-98版にはMMXペンティアムで起動しないというバグがある(0で除算しましたというエラー)。
PC-9801版+エミュレーター(Anex86)という構成のWizardryCollectionもインストールするPCの構成によっては同様のエラーが発生して起動しないという現象が起きる。
Corei7のマシンで現象を確認したので、ホストになるWindows機のCPUが早すぎるとダメなんだろうか?

回避方法は2つ
1・Annex86の設定でTimingタブのTimerとVsyncにチェックを入れる(値はデフォルトの1.000のまま)
2・WROOT.EXEの001F37h:BB0A→BB84

2の方法でexeにパッチ当てたらMMX搭載のPC-9821でもBCFが起動できるかな?
MMXの9821持ってないから試せない。

ちなみにWizardryCollectionには2種類のAnex86が入っている。
Wizardry1~5用の普通のPC98互換機エミュレーター
BCF、CDS用のAT互換機用のDOSで起動可能なよう改造されたPC98互換機エミュレーター

どちらもPC98版のWizardryを動かしているんだけれど、Wizardry1~5は起動にMS-DOSを必要としないのに対し、BCF、CDSはMS-DOSが必須となる。
しかし、WizardryCollection発売当時すでにPC-98版のMS-DOSを保持している人はごく少数だったはずだし、WizardryCollectionにMS-DOSを同梱するのもライセンス的に問題が出る。
(価格が1万くらい高くなる?)

そこで、AT互換機のDOSで起動できるようにエミュレーターを改造したと思われる。
エミュレーターを実行するのはWindows機で、起動用FDD作成すればDOS入りシステムディスクは作れる。そのディスクを起動ディスクとして使えばライセンス問題をクリアできるということなのだろう。
pc86x.sysとpc86x.comがモード切替用プログラムみたい。

15年前ならともかく、今頃こんなこと書いても誰の役にも立たない気がするけどメモということで。

MSX版Wizrdry1、2をTurboRで高速起動2017年08月27日 22:35

こちらも古い話を覚書。

MSX版のWizardry1及び2をTurboRで高速起動する方法。

1・MSX-DOS2でフォーマットしたディスクを用意する。
2・1のディスクをデュプリケイトディスクにする。
3・2のデュプリケイトディスクにシステムディスクの全ファイルとMSX-DOS2.SYS、COMMAND2.COMをコピーする。
4・作成したデュプリケイトディスクから起動する。

3はもとからTurbor対応なので関係なし。



Wizardry Crusaders of the Dark Savant2017年08月27日 22:05

CDS 9801版
ちょっと古い話だけど(いつもの事)忘れないように覚書。

PC-9801版のWizardry Crusaders of the Dark SavantはPentium機では起動しないというバグがある。
PC-9821版はこのバグが改善されているので、PentiumなPC-98(9821しかないはずだけど)ではPC-9821版を入手しないとゲームができない。

このバグの話、巷ではDOS/V版にあったバグがPC-9801版にも引き継がれていてPC-9821版で改善されたということになっているけど、厳密には間違い。
DOS/V版のPentiumで起動できないバグはPC-9801版ではしっかり修正されている。
では、なぜPC-9801番でもPentiumでゲームが起動しないかというと、これが9801版に特有の構成が原因だったりする。
DOS/V版、PC-9801版、PC-9821版3つのメインプログラム(DS.EXE)を比べると、PC-9801版のみプログラムが暗号化されている。
この暗号化はプログラムの実行時の最初にメモリ上で自己書き換えにより復号化される。
何故こんな事をしているのかと言えば、(想像だけど)コピー対策以外考えられない。
Crusaders of the Dark Savantはマニュアルプロテクト(ゲーム起動時にパスワードを入力するタイプ)の為、プログラムを少し書き換えてパスワード入力部分をスキップさせてしまえばプロテクトが簡単に無効になる。
※実際、Ultimate Wizardry Archivesに収録されている版はその手法でパッチ済みであり、パスワード入力しなくてもゲームが遊べるようになっている。
その書き換え場所を特定できなくするためにPC-9801版はプログラムを暗号化している(のであろう)。

で、Pentium機ではこの復号化に失敗する。

ゲーム発売当時、アスキーに申し出ればパッチを入手できたというのだけれど、このパッチは復号化したDS.EXEそのものではないかと想像している(今となっては手に入れる手段がないので確認できないけど)

ちなみに、PC-9801版のCrusaders of the Dark Savantが実行できる環境で、ゲーム起動→メモリ上でDS.EXEが復号化された時点でメモリダンプ→有効なヘッダ512バイトを付与するとPentium機でも実行可能なDS.EXEを生成することは可能。(先頭の画像は9801版をPentium133MHzの9821na13で起動したところ)

ただし、ヘッダの値はPC-9821版のDS.EXEを参考にしないと多分生成できないので、どのみちPentiumなPC-98でCrusaders of the Dark Savantをプレイするには9821版のCrusaders of the Dark Savantが必要という話。

そういえば、セーブデータのフォーマットははDOS/V版、PC-9801版、PC-9821版全て同じみたい。
データエディタであるCosmic Forge* Editorで普通に書き換え可能。
少なくとも、9801版のセーブを9821版で読み込んで続きをプレイなんてのは普通にできる。

この点、前作のBane of the Cosmic ForgeではDOS/V版、PC-9801版でセーブデータの互換性がなかった。(PC-9801版はCosmic Forge* Editorで書き換えできない

CDS 9821版
こっちは9821版。
写真だと判りにくいけど、256色だから絵がきれい。(右下コインの部分なんかが9801版(16色)と比べると違いが判る)