device.c 756行目あたり
case 0x73: /* FM SOUND CARTRIDGE */ case 0xA3: if(sr_mode) { Value= ym2203_ReadStatus(); } break;
if(sr_mode) じゃなくて、機種で判別しないといけないような。。
これだと、機種がSRでも、旧機種互換モードで動いているときは、条件が成立せず、スルーしてしまう。。
if(P6Version ==2 || P6Version ==4) かな。。
あ、でも、FMカートリッジが刺さっているときは?
FM音源ない機種でも、FM音源を拡張するカートリッジ。。。そういえば、カートリッジが刺さっているかどうかを判別する変数ないぞ。。(汗)
いずれにしても、このままだと、Valueが初期化されないまま、return で返却するという経路が残ることになりますね。。。(汗)
あと、P6Version が機種なんですが、将来的には、マジックナンバーを廃止した方がいいですね。。
PC60 0 PC60M2 1 PC60SR 2 PC66 3 PC66SR 4
でよいかな?
自分でも、ときどき間違い欠けたりするらしい。。。(汗)