妄想メモです。断りなしに随時更新します。
課題
- MGSELは日本語表示においてMSXViewのスモールフォント(8×12px)に対応しているのだが、特定のスロットに配置されていないと認識ができないバグがある
- このバグを解消したいのだが、MGSELのソースコードは作者のAinさんですら消失されており、ソースコードによる修正は困難である
上のスクリーンショットは、「MSXViewのROMカートリッジがスロットのいずれかに差さっているのでMSXViewフォントが利用可能な状態として認識はされているが、実際には使用する処理に何等かのバグがあって日本語表示に失敗している画面」です。
そもそもMSXViewのフォントが使用できない環境では、MGSELはMSXの標準漢字ROMをフォントとして日本語表示を行うためです。
仮説
#MGSDRV MGSELで、MSXViewのROMカートリッジがスロット2で非対応の件。探索処理のバグなのかそもそもスロット1専用で組まれているのか分からないのですが、パッチを当てたプログラムを保存するのでなくこんな感じのずるい対処療法の外部コマンドを作って実行することは可能なんでしょうか!?😅 https://t.co/fUb34ZIOXn pic.twitter.com/7D88Pa4lhU
— Takashi Kobayashi (@nf_ban) 2025年1月25日
なぜパッチを適用したプログラムではなくまどろっこしい方法で解決したいかと言うと…
- MGSELはソースコードが完全に消失しており改修ができないので、リコンパイルすることが極めて困難である
- パッチを適用したプログラムが便利だからと言って第三者経由でネットへ放流されて欲しくない(海外ではMultiMenteの改造品が流通しています)
識者の見解
私の所では基本スロット1,2,3で正常動作しました🔥。コード見てみましたが探索処理は全ての基本・拡張スロットにきちんと処理しているように見えます。但し、探索後の処理に問題があり、拡張スロットは0のみ使用可能、1,2,3は使用不可のようです💦。
— ピーガー伝説➋代 (@AOldfJaHcEmvAWC) 2025年1月26日
スロット2で動かないという現象はMSXViewの最初の区画がバンク0以外になってしまっているからではないでしょうか??事前にMSXViewの0x6000に0を書いてからMGSELを起動すればいいのかも??
— ピーガー伝説➋代 (@AOldfJaHcEmvAWC) 2025年1月26日
情報ありがとうございます。🫡スロット探索後の処理に問題があって、基本スロットだけが有効に…なのですか。MSXViewのカートリッジはプログラムが入っていないはずなので自身の初期化は起きず、アプリケーションが初期化する必要がある…ってことはスロット探索方法にも不足がありそうですね。
— Takashi Kobayashi (@nf_ban) 2025年1月26日