Closed tablacus closed 10 months ago
ご迷惑をおかけしております。申し訳ございません。 DSの出力に関してはちょっと変更があったかと思います。確認をさせていただきます。
こちらでも環境を作らせていただいて確認をしました。 これからテストコードを書いてテストを行っていきます。
回避策を発見しました。
SUB.ASM
のORG指定を前回のORGの第2引数と同じ対応にしたところ正常にアセンブルできるようになりました。
ORG $$+OFFSET,$$ ;$DEPHASE
SUB.ASMの最後の方です。
アドレスを揃えるのにALIGN
が便利そうなので使ってみたのですが88INTVEC.ASM
でALIGN
の後のDS
が期待通りには動作しませんでした。
こちらも同じ個所が原因のような気がします。
旧
AT_TABLE:
DS INTAD-AT_TABLE
新
ALIGN 256
ありがとうございます。現象の確認はできているのですが、テスト用に使うコードをうまく作れなくて困っていました。調査していただいた結果を参考にさせていただきながら引き続き調査を行いたいと思います。
おかげさまで上手くテストコードが書けました。引き続き調査を行います。
プログラムの修正が完了しました。年内にリリース予定です。
修正版をリリースしました。
ALIGNも正常に動作することを確認しました。 ますます便利に使えます。 対応ありがとうございました。
ご確認ありがとうございます。バグレポートをいただきまして大変助かりました。 今後AILZ80ASMに大きな修正が入るときには、LSX-Dodgersのアセンブル結果が一致しているか確認させていただきます。現在は手動確認ですので漏れが発生する可能性があるのですが、時間が出来ましたらリリース時に自動でチェックできるようにしたいと思っております。
AILZ80ASMはORGの第2引数を用いることで入り組んだコードをすっきりとしたLSTに出力できるので非常に助かっております。 また、OFFSETを活用できればますます便利に使える予感がします。
いつも便利に使わせてもらっています。 AILZ80ASM version 1.0.12.0でDSが期待通りにならなくなっている場合があったので報告します。
ソースは https://github.com/tablacus/LSX-Dodgers のPC-8801mkIISR版になります。
ASM_AILS80ASM_88.BAT
でアセンブルしています。こちらの画像は該当部分で左がAILZ80ASM version 1.0.0.0で右がAILZ80ASM version 1.0.12.0です。 この
DS INTAD-AT_TABLE
の部分のDS
が右側で期待通りになっていない部分です。INITAD
は0EE00H
でAT_TABLE
は0EDE3H
なので一番左のカウンタが増えると期待しているのですが右側では001FEA
のままです。X1/turbo/Z版 と MZ-700/1500版 ではほぼ同じ要領で
DS
を使っているのですが期待通りに動作しています。 そういう訳でPC-8801mkIISR版だけこちらのバグでこうなっているのかも知れません。 すみませんが、調べていただけると嬉しいです。