[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[WitchTech 00774] Re: IL



エル%高岡@鯆です。

2001/04/04 02:18 頃に
  「[WitchTech 00771] IL」ということで

kobayashi さん
> 独自のILでメモリを
> sys_alloc_iram() (だっけか?)でとりあえず確保したはいいですが、
> SoundILと一緒に走らせると(BGMの)2曲目でドライバが音痴(^^;)になります。
> これって、サウンドドライバもsys_alloc_iram() を使っていて、
> 競合しているからですか?

そういうこともありえないことはないでしょうけど、手元にある5個の
IL ではそのようなことは発生していません。
( 自作分はすべて sys_alloc_iram を利用しています、人様の分は不明 )

ありえることは

0) IL を利用しているアプリケーションの問題
1) 独自 IL の問題
2) SoundIL の問題
3) WonderWitch (FreyaOS) の問題

といったところなんでしょうけど、症状からすると 0) と 1) がアヤシ
イですね。sys_alloc_iram() で確保したメモリアドレスの周辺を破壊
している可能性が高いと思います。

SoundIL の前後にロードした IL が sys_alloc_iram を行って得たポイ
ンタに対して前後にオーバーライトしてしまうと当然ながら SoundIL
の管理している情報を破壊し、その結果として再生内容に問題が発生し
ているのではないかと思えます。
# が、SoundIL の詳細が不明ですから、見当違いかもしれません。

独自 IL が sys_alloc_iram() を呼び出す前後に、保護用のメモリ領域
を sys_alloc_iram() で確保するだけの IL をロードしておいて、その
保護用のメモリ領域をテキトウな値で初期化しておき、問題の症状が出
ていた段階でダンプしてみて、IRAM 領域を破壊しないか、といった確
認をしてみてはどうでしょう?

他の IL との組み合わせでも問題がないかを確認したり、SoundIL と独
自 IL の初期化順序を変えて IRAM 上の相互の位置を交換するなどでも
症状の変化が見られるかもしれません。

そういった点を一通り確認してみてから 3) や 4) の問題性を考えてい
っても遅くはないと思います。

--
// El (K.Takaoka) ! saepro@din.or.jp 
// PGP : 7F61 E57E 972B 595D 14CD  EFA6 C055 7B61 13D4 F367


ML Archives