自己の責任においてご利用下さい。
-- sd2rip.lzh -- Download(2004.09.03/17,601bytes)
割り込みレベル変更位置がおかしかったのでちょっと修正しますた。
-- sd2xml.lzh -- Download(2004.09.03/2,115bytes)
あっちに書き足すほどでもないんでここで。
資料になりそうな部分は多分ありません。
各方面からのリクエスト多数に付き「Spindizzy II」の解析を始めたのが2003年の1月。その間、住居がダンボールに占拠されて寝る場所が無くなったり何だかんだで早8ヶ月。
解析はディスク中のファイルを確認す多段階で放ったらかしにした段階で中断。これまでにやったhoot化の知識も忘却の彼方。
解析再開するにあたってどうしたものか?と小一時間悩んだ挙句「何も考えずに一からやり直そう」と行き当たりばったり作戦決行。
……一日もかからずに音が鳴った。コレだから駄目プログラムはやめられない。
PI.様からご指摘頂いた方法で実験。
opm_timer_isr:
movem.l d0-d7/a0-a6,-(a7)
move.b #$14,$e90001
move.b $e90003,d0
move.b #$3f,$e90003
tst.b $e9a001
@@:
tst.b $e90003
bmi @b
lsr.b #1,d0
bcc @f
move.w d0,-(sp)
bsr timer_a_handler
move.w (sp)+,d0
@@:
lsr.b #1,d0
bcc @f
bsr timer_b_handler
@@:
movem.l (a7)+,d0-d7/a0-a6
rte
てなサンプルコードを頂いたので実験してみますた。結果は……、演奏モタリまくりのLFO抜けまくり。なんでやねん?
やはり元が別デバイスの割り込みを無理やり単一デバイスでやりくりするのは無理があるのか?と思って昔の方法に戻す。
……割り込み処理がデッドロックしてる。なんでやねんその2?
ナイトアームズはちゃんと動いてるのにこっちは何故?と双方の違いを小一時間調べることに。
先生!!LFO割り込みの方が
ori.w #$0700.sr
のまま割り込みレベルを元に戻してやがりません。……解決。
てな感じでイマイチ盛り上がり欠けたまま今回はこの辺でオサラバ。