似たような処理をする2つのサブルーチンA、Bを作るとき、AをコピペしてBを作るのはよくある事ですが、遷移先ラベル名を変更し忘れると…
;************************************
; 処理A
;************************************
PROC_A:
(何らかの処理)
JP PROC_A900 ;処理結果によって最終処理に飛ぶ
(略)
PROC_A900: ;最終処理
(フラグセットなどの処理)
RET ;処理Aを終了
;************************************
; 処理B(処理Aと似たことをする)
;************************************
PROC_B:
(何らかの処理)
JP PROC_A900 ;処理結果によって最終処理に飛ぶ
(略)
PROC_B900: ;最終処理
(フラグセットなどの処理)
RET ;処理Bを終了
単なるバグは、ウンコードじゃないのでは?
バグを見つけて orz とかなっても、この糞コードが!!! と怒ったりはしないでしょ。