怪奇現象が増殖して大混乱中

6803でうまく動いたプログラムをもとに6800のプログラムを作り直したところ、やっぱり端末が反応しない。端末のインタフェースは6803だと内蔵だが6800は6850だから、6850の初期設定を間違えている公算が強い。信号にテスタを当てたら6850のRTSがLを出力していない。原因がわからず、困り果ててモトローラのJBUGを見ると、あらら、マニュアルに「Hを出力する」と書いてある方法でLを出力している。次に掲載する資料は、上がマニュアルの説明、下がJBUGのソース。

MC6800_RTS2

MC6800_RTS1

これっておかしいでしょ? 絶対におかしいよね。で、マニュアルを無視してJBUGにならったところRTSが無事にLを出力。だからといってこれがマニュアルの誤植だとは断定できない。日立製作所のマニュアルも同じ説明をしているし、大昔の本「私だけのマイコン設計&製作」がマニュアル通りの方法でLを出力している(ようだ)。そして、次のような問題が発生。

JBUGにならったプログラムは、いったん正しく動作した。このROMをとっておいて次の段階へ進む。サブルーチンを若いアドレスへ移動し、エントリーポイントを後ろへ下げた。すると、ただそれだけで暴走。とりあえず元へ戻そうと思い、とっておいたROMへ差し替えたのに、これがまた暴走してしまう。この怪奇現象は、いったい何なんだ。これだけ次から次へと襲い掛かる大問題がいつか笑い話になるなんてことがあるのだろうか。

広告
カテゴリー: 6800 パーマリンク

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中