2019-07-16 23:56 — asano
カテゴリー:
6502を拡張したのがこのG65SC816です。
プラスチックDIPの4MHz版、1987年製のようです。
データシートに65SC802と65SC816の2種併記されていますが、65SC802は6502とピンコンパチでメモリ空間は64kB、65SC816の方はマルチプレクスバスになってメモリ空間が16MBに拡張されています。
マルチプレクスバスでは通常アドレス下位とデータがマルチプレクスされますが、これはD0/A16~D7/A23とアドレス上位と兼用になっています。このおかげで65SC816でもピン配置は6502と似通ったものになっており、1820-2151を試してみましたのような下駄も作れそうです。
ソフトウェア的にもかなりの拡張がなされています。
6502ではPC以外のレジスタはどれも8ビット(アキュムレータAが8ビットなのはともかく、スタックポインタSPまで8ビットなのは...)なのが特徴でしたが、どれも16ビットに拡張されました。65SC816ではさらに8ビットのバンクレジスタを使って24ビットのアドレスを作っています。
アドレッシングモードも単に24ビットアドレスに対応しただけでなく、スタック相対などが追加されています。
リセット時はエミュレーションモードになり6502同等の動作をします。65SC802なら単純に挿し替えてもそのまま動いたのではないかと思います。
ネイティブモードに切り替えれば16ビットレジスタが使えるようになります。データ長を8ビットにするか16ビットにするか、インデックスレジスタを8ビットするか16ビットするかは、フラグによって決まります。6502で加減算をバイナリで行なうかBCDで行なうかをフラグで切り替えていたのと似ています。ただフラグによって命令長が変化する場合もあるので要注意です。
裏側を見ると台湾製であることがわかります。
「L1470A」の方は残念ながら不明です。
現在6502ボードを作り始めていて、この65SC816と兼用にするか下駄対応を考えています。近いうちに動かせるかもしれません。
コメントを追加