CPU実験室

誰も見向きもしない古いCPUをいじって動かしてみようというプロジェクトです

起動不調

 
8085基板の不調で、同じアドレスラッチを使っているuPD7810基板から一時的に74573を借りようとこちらもしばらくぶりに電源を入れました。
 
ところがこちらも動きが何か怪しい・・・・実は完成直後から判っていたのですが電源ONでモニタが最初に起動するとき、数回~十数回に1回の割合で画面出力がアスタリスク1個「*」で止まってフリーズしたり、逆に延々と「*」を出力し続けて止まらなくなる現象がありました。頻度が低いのですが、起こり始めると以降電源切り入りしても毎回発生しリセットでは復旧しません。
 
今やってみると25回くらい電源OFF/ONで最後の1行のように「*」1個で固まって再現しました。
 
イメージ 1
  
こういう症状の原因を突き止めるのは普通は結構大変なのですが、正常起動したときモニタのワーキングエリア(CPU内蔵のSRAM領域FF00-FFFF)をダンプしてみました
 
イメージ 2
 
 
内蔵RAMの底のほうにあるゴミのようなデータはスタックなのですが、どうも使われている領域がおかしい。
ROMモニタの先頭でスタックポインタの初期値としてFFF0をロードしています。
なのでそこから1減算したFFEFからアドレスの先頭に向ってスタックが伸びていかないといけないのですがダンプを見る限りではFFFEから積まれているようです
 
 
イメージ 3
 
 
あ、またやらかしてますね・・・