MC6847
カテゴリー:
またちょっと古いICが出てきました。
MotorolaのMC6847P VDG(Video Display Generator)です。
これはNTSCテレビにキャラクタやグラフィック表示をするためのもの、NECのPC-6001シリーズに使われていました。類似のモノだとMSXなどに採用されたTexas InstrumentsのTMS9918シリーズが有名ですね。
またちょっと古いICが出てきました。
MotorolaのMC6847P VDG(Video Display Generator)です。
これはNTSCテレビにキャラクタやグラフィック表示をするためのもの、NECのPC-6001シリーズに使われていました。類似のモノだとMSXなどに採用されたTexas InstrumentsのTMS9918シリーズが有名ですね。
一応今回をもってSC61860 & SC62015のシリーズは最後となります。
前回予告したようにテストデータ作成についてです。
ASにはtestsディレクトリ以下にソース(*.asm)と期待値(*.ori)を配置しておいてmake test
を実行すると自動テストを行なう機能があります。特にSC62015のようなアドレッシングモードの複雑なものでは新たなモード追加の際に以前のものを壊すリスクがそれなりにあるので、追加のたびに全モードをテストできることは重要です。
で、このテスト用データの作成なのですが......
網羅性の高いテストソースの作成はそれだけで大きなテーマではありますが今回はそこには触れません。
もう一方の期待値のファイルはソースをハンドアセンブルするだけなのですが、(バイナリファイルなこともあり)意外に面倒なものです。
今回は予告通り、SC61860の公式ドキュメントを教えていただいてちょっと修正した件を書きたいと思います。
その1のコメントとしてenakaさんより教えていただいたSC61860のドキュメント、正確にはPC-1350の機械語のドキュメントですが、CPU SC61860の記述がメインになっています。PC-1350も持っているので残りも興味深いのですが、今はあくまでもCPUのマニュアルとして読むことにします。
そもそもこのSC61860というCPU、当初は仕様は非公開だったはずです。PC-1250の時代だと思いますが実機の動作から解析された方がいて、わかってしまったのならということで後から情報が出てきたという経緯だったとどこかで読んだような。今回参考にしている『ポケコン・マシン語ブック』の前の『ポケコン・マシン語入門』だった気がするのですが、残念ながらこの本が行方不明でして確認できていません。今度永田町に読みに行こうかな。
ということで『ポケコン・マシン語ブック』とシャープの資料を比較してみたところ、ちょっとした相違点はあるものの大きな違いはありませんでした。
SC61860対応ができたので、続いてSC62015の対応を進めます。
SC62015はSC61860から一転かなり厄介です。ニーモニック数が少ないのに対し、アドレッシングモードが複雑だからです。
ASはアーキテクチャ共通の動作としてソースの1行をラベル部・ニーモニック部・オペランド部に分割し、さらにニーモニック部によって各デコードルーチンに分岐してくれます。IM6100のようにこのフォーマットが特殊な場合はちょっと面倒ですが、そうでなければお任せにすることができます。
一方でオペランドのパースは自分で書かなくてはなりません。
SC61860のオペランドは定数のみで、定数式の評価ルーチンは用意されているのでほぼ呼び出すだけですみました。
先月、古い友人と食事をしたのですが、そこで話題になったものの一つにシャープのポケコンのCPUがあります。
PC-1261, PC-1350などに使われたSC61860と、PC-E500シリーズに使われたSC62015です。
その後、そういえばASは対応してたかな? と思って確認したところどちらも未対応でした。
するとまた対応作業してみたくなってしまい、資料を探し始めたのですが......
この辺りのアセンブラは最後に弄ってから既に30年以上経過しています。『I/O』『The BASIC』『ポケコンジャーナル』あたりに掲載されていたと思うのですが、目次の公開されていたI/Oはともかく他はどの号に掲載なのか探すのは結構大変です。
そんな中『ポケコン・マシン語ブック』がかろうじて出てきました。SC61860の命令表はこれに記載されていますが、PC-E500発売前のものなのでSC62015は当然載っていません。
先日図面ファイルを買ったと書きました。以前のものが使用不能になったわけでもないのに何で急に買ったかというと......
キングジムの公式ショップで「テプラ風メジャー」のプレゼントキャンペーンをやっていたからなのです。普段この手のものは興味が無いことが多いのですが、これは我慢できませんでした......
ということで図面ファイルと少なくなっていたテプラテープ数本と一緒に届いたのがコレ、箱までテープそっくりにできていました。
最初一緒に買ったテープと見間違え、入れ忘れられたのか、それともプレゼント条件を満たしていなかったのか、などと考えてしまったほどです。よく見るとちゃんと「MEASURE」と書いてありました。
とりあえず出してみます。
ZZ86のマニュアルと一緒にこんなものも発見されていました。
タイトルから想像するにカシオ計算機のV-900なるBASIC搭載機があって、それ用のマニュアルのようなものなのでしょう。
聞いた記憶の無い機種なので検索してみたところ、カシオ公式サイトの「カシオの歴史」のところで「V-900」の名前を見つけました。1970年代のところに以下の記述があります。
1978(昭和53)年7月
パーソナルコンピュータ「V-900」販売開始(出荷8月)
1978年7月ということはPC-8001より約1年、MZ-80Kよりも数か月早い発売ですね。
残念ながら写真は見つかりませんでした。一体どんな形態のマシンだったのでしょう?