X68000用Xellent30とPOLYPHONの相性問題

X68000にXellent30(s/pro)とPOLYPHONを装着していると、ソフトによっては68030モードでPOLYPHONが認識されないことがありましたが、その原因が判明。
4
EXCEED. @TransAmGTA92

@KAPPY_2164 各種PCMボードを見つけると、 Message : 色情報データ(略) の前にその旨が表示されるので、物理的に見つけられていないようです。原因としては ・そもそも Xellen30 と POLYPHON の相性が悪い? ・POLYPHONの端子が酸化していて接触が悪い などが考えられます。 pic.twitter.com/bq6esQ7VIJ

2021-06-19 14:50:41
拡大
EXCEED. @TransAmGTA92

@KAPPY_2164 大昔の NCS-NET(公式サポートサイト)のログ(と付属DISKのログ)に公式な POLYPHON の検出方法が記載されていて、あれが元になっていますので、検出自体はどのアプリも同じアルゴリズムかと思います。あと、システムクロックとか上げてると、まずいかもしれないですね。

2021-06-19 17:13:41
あくぞう @akuzo2p

@TransAmGTA92 @KAPPY_2164 なるほど…@pipixvi とのやり取りを見返してみたら、2016年間の段階で『エクセレの030モードからポリフォンが認識できない』と言うやり取りがあって、その後どうしたのか覚えてない(笑)

2021-06-19 18:13:24
EXCEED. @TransAmGTA92

@akuzo2p @KAPPY_2164 @pipixvi ああ、なんかまずそう・・・ ・バスエラーをフックし、またはHuman-v2なら拡張DOSコールを用いるなどして、($EFF83C).wがリード可能かどうか検査。更に($EFF83C).bのリードがバスエラーであることを確認。これが通れば実装されているとみなす(ID#0)。 ・($EFF8BC)について同様に検査。(ID#1)

2021-06-19 18:28:48
EXCEED. @TransAmGTA92

@akuzo2p @KAPPY_2164 @pipixvi si.r v3.67 だと、 ・更に($EFF83C).bのリードがバスエラーであることを確認。 をやっていない。(おそらく故意)

2021-06-19 18:39:33
EXCEED. @TransAmGTA92

@KAPPY_2164 @akuzo2p @pipixvi おそらくですけど、Xellent30 の 030モードで、拡張I/O空間をアクセスする際のアドレスバス周りの信号処理の実装解釈が、純正000/030機と異なるんだと思います。

2021-06-19 18:50:02
EXCEED. @TransAmGTA92

寝たきり石油王の家で、Xellent30 で POLYPHON の認識に成功したらしいので、PCM8sb60 も修正しておかないと・・・(まだこういう細かいバグがある)

2021-07-10 19:51:06
あくぞう @akuzo2p

@TransAmGTA92 お!?認識に成功したんだ!!

2021-07-10 20:06:26
EXCEED. @TransAmGTA92

@akuzo2p えっと、メンション飛ばした記憶があるような、無いような気がしますが、 >更に($EFF83C).bのリードがバスエラーであることを確認。 を止めるだけです。理由はわかりませんが、Xellent30 だとバスエラーが発生しないようです。

2021-07-10 20:19:36
はう @Hau_oli

@TransAmGTA92 @akuzo2p それはXellent30の030モードは、バイトアクセス命令を指定しても実際の動作はワードアクセスをしてバイトを返しているためです。 $eff83c.bを指定しても$eff83d.bも一緒にアクセスしちゃうのでバスエラーは発生しないというわけ。

2021-07-10 21:32:36
あくぞう @akuzo2p

@Hau_oli @TransAmGTA92 !?そんな罠がw それはI/Oまわりだけなのでしょうか?

2021-07-10 23:21:06
はう @Hau_oli

@akuzo2p @TransAmGTA92 全域同じです。030モードでは厳密なバイトアクセスはできません

2021-07-10 23:31:24
はう @Hau_oli

@akuzo2p @TransAmGTA92 常にワードでアクセスするのはバス設計の簡略化のため。この話はどこかに載っているのかと思って資料見たけど、何だかどこにもないような。はて。

2021-07-10 23:45:44
TcbnErik / 立花@桑島技研 @kg68k

えっそれPSX16750でヤバない? と思ったらPSX側に対策が組み込まれているのですね。 twitter.com/Hau_oli/status… pic.twitter.com/KPm2ALveCZ

2021-07-10 23:50:10
拡大
はう @Hau_oli

@kg68k そうです。この話はどこかに文書化されているはずで、それでそうなっているのです。

2021-07-10 23:52:12
TcbnErik / 立花@桑島技研 @kg68k

@Hau_oli この挙動とかI/Oアドレス空間が16KBなのは、なにか理由があるのでしょうか?

2021-07-11 00:13:15
はう @Hau_oli

@kg68k 常にワードアクセスなのはバス設計の簡略化のためと聞いています。I/Oアドレス空間がっつり占有の話は特に聞かなかったです。

2021-07-11 00:23:57

System Information Extended Edition (Si 3.67 の後継バージョン)は下記にあります。

リンク GitHub Releases · kg68k/si-ee System Information Extended Edition. Contribute to kg68k/si-ee development by creating an account on GitHub.

サムネ用

KAPPY.🪤 @KAPPY_2164

POLYPHONから音出ないのだけど、POLYPHONのDAC使ったことなくて、そもそも正常なのかもわからんw まーきゅりーv4載ってるPROかXVIで起動してみるかのう pic.twitter.com/sbCGpwP1Yr

2021-06-19 13:19:00
拡大