もっと6502
6502は前にも出しましたが、他にも入手しています。
マーキングは「6502A」としかありませんが、ロゴからSynertekのSY6502Aと思われます。1980年製、末尾に「A」が付いているので2MHz版ですね。
もう一つはリコー製のRP65C02Gです。製造年は不明です。
CMOS版の65C02は命令が拡張されているというので調達してみたものです。
マイクロプロセッサ・マイクロコントローラ等です。
6502は前にも出しましたが、他にも入手しています。
マーキングは「6502A」としかありませんが、ロゴからSynertekのSY6502Aと思われます。1980年製、末尾に「A」が付いているので2MHz版ですね。
もう一つはリコー製のRP65C02Gです。製造年は不明です。
CMOS版の65C02は命令が拡張されているというので調達してみたものです。
6502を拡張したのがこのG65SC816です。
プラスチックDIPの4MHz版、1987年製のようです。
データシートに65SC802と65SC816の2種併記されていますが、65SC802は6502とピンコンパチでメモリ空間は64kB、65SC816の方はマルチプレクスバスになってメモリ空間が16MBに拡張されています。
予告どおり富士通のMB8861, MB8870です。
MB8861はMotorola MC6800の相当品ですが、いくつか独自の命令が追加されています。これは1979年製のようですね。
パッケージは中央に大きな円と下側に溝のある富士通独特の特徴あるスタイルです。今回は国内調達したのであまり心配はないのですが、海外からだとこのパッケージは(ニセモノの可能性が低いということで)安心材料の一つといえそうです。
さて、追加された命令の詳細を知りたいところなのですが、富士通のデバイスはデータシートの入手が難しいことが多く、このMB8861も入手できていません。ハード的にはMC6800と差し替え可能ということで、「リンク」に挙げたサイトの情報と実験をもとに動かしていきます。
AKI-ROMがなぜかもう1枚出てきちゃいました。
こちらにはDC-DCが搭載されていない他、左下のスイッチやZIFソケットからも別の個体であることがわかります。
2枚作った理由は...、例によって使いたいときに行方不明だったからでしょうね。
秋月のキットとしては高価な部類に入るのでよほど急いで必要だったのでしょう。となると、Flash EEPROMを飛ばしてしまったP/I-P55TP4Nの復活の時かもしれません。数万円のマザーボードの修復のためとなればそう高いとは感じないでしょうから。
せっかく発見したのですが2つもいらないし、今はTL866Aを使っています。
68編に引き続き80編をお送りします。
8080系とZ80系の区別は『I/O』誌の記事を参考にしました。i8080/μPD8080AF, μPD8080A, i8085の判別法は一般的なものがあれば利用するつもりでしたが、見当たらなかったのでデータシートを元に独自に書いたものです。
現在のCPUではその種類や対応する命令の範囲などを取得する命令(例えばx86系のCPUID命令)がありますが、以前は微妙な挙動の違いなどから判別していました。
自作のUniversal Monitorのソースコードを例に解説してみます。
まずは昨日目処が立ったと書いたMC6800系からです。
該当部分のソースは次のようになっています。
前からずっと探していたモノを遂に入手できました。
Panafacom MN1613A、初期の16ビットマイコンです。
このシリーズはどれも入手困難なので贅沢は言えないのですが、一応MN1611かMN1613を優先して探していました。
まずMN1610は+12V, +5V, -3Vの3電源、MN1610Aも+5V, -3Vの2電源を要求します。MN1613AはMN1613とピン数が異なる上にデータシートが見当たらず、半導体コレクション展示会場くらいしか情報がありません。MN1617も資料が無い上にパッケージがQFPしかありません。
以前ディスコン半導体を扱う商社にこの両者の見積もりを依頼したこともあるのですが、価格以前に入手不能との回答でした。
Universal Monitor Z8の基本機能が現在対応している全プロセッサで使用可能になりました。
前回はコマンドの概要のみを書きましたが、今回はコマンドラインの形式も書いておきます。
コマンドは原則1文字ですが、PI
などのように2文字のものも一部あります。
<addr>,<offset>といった数値パラメータは16進表記で必要以上の桁数を入力した場合は末尾が使用されます。
英字の大文字小文字は区別されません。
コマンドとパラメータの間・パラメータとカンマの間には空白を入れても構いません。ただし行入力バッファは短いので注意してください。