MC6847

2024-02-12 20:57 — asano

テーマ

またちょっと古いICが出てきました。


MotorolaのMC6847P VDG(Video Display Generator)です。

これはNTSCテレビにキャラクタやグラフィック表示をするためのもの、NECのPC-6001シリーズに使われていました。類似のモノだとMSXなどに採用されたTexas InstrumentsのTMS9918シリーズが有名ですね。

両者は表示モードの方向性など多くの相違点がありますが、最大の違いは表示用メモリの扱いでしょう。TMS9918系がCPU空間とは独立したメモリ空間を持ちDRAMコントローラ機能も内蔵しているのに対し、このMC6847はMPUのメモリ空間の一部を表示メモリとして使用します。そのためMPUとVDGからのアクセスを調停する何らかの回路が必要です。以前取り上げた74LS783はこの機能を持っていました。

SC61860 & SC62015 (その4)

2024-02-11 12:41 — asano
カテゴリー

一応今回をもってSC61860 & SC62015のシリーズは最後となります。

前回予告したようにテストデータ作成についてです。

ASにはtestsディレクトリ以下にソース(*.asm)と期待値(*.ori)を配置しておいてmake testを実行すると自動テストを行なう機能があります。特にSC62015のようなアドレッシングモードの複雑なものでは新たなモード追加の際に以前のものを壊すリスクがそれなりにあるので、追加のたびに全モードをテストできることは重要です。

で、このテスト用データの作成なのですが......

網羅性の高いテストソースの作成はそれだけで大きなテーマではありますが今回はそこには触れません。

もう一方の期待値のファイルはソースをハンドアセンブルするだけなのですが、(バイナリファイルなこともあり)意外に面倒なものです。

SC61860 & SC62015 (その3)

2024-02-10 17:51 — asano
カテゴリー

今回は予告通り、SC61860の公式ドキュメントを教えていただいてちょっと修正した件を書きたいと思います。

その1のコメントとしてenakaさんより教えていただいたSC61860のドキュメント、正確にはPC-1350の機械語のドキュメントですが、CPU SC61860の記述がメインになっています。PC-1350も持っているので残りも興味深いのですが、今はあくまでもCPUのマニュアルとして読むことにします。

そもそもこのSC61860というCPU、当初は仕様は非公開だったはずです。PC-1250の時代だと思いますが実機の動作から解析された方がいて、わかってしまったのならということで後から情報が出てきたという経緯だったとどこかで読んだような。今回参考にしている『ポケコン・マシン語ブック』の前の『ポケコン・マシン語入門』だった気がするのですが、残念ながらこの本が行方不明でして確認できていません。今度永田町に読みに行こうかな。

ということで『ポケコン・マシン語ブック』とシャープの資料を比較してみたところ、ちょっとした相違点はあるものの大きな違いはありませんでした。

SC61860 & SC62015 (その2)

2024-02-08 21:54 — asano
カテゴリー

SC61860対応ができたので、続いてSC62015の対応を進めます。

SC62015はSC61860から一転かなり厄介です。ニーモニック数が少ないのに対し、アドレッシングモードが複雑だからです。

ASはアーキテクチャ共通の動作としてソースの1行をラベル部・ニーモニック部・オペランド部に分割し、さらにニーモニック部によって各デコードルーチンに分岐してくれます。IM6100のようにこのフォーマットが特殊な場合はちょっと面倒ですが、そうでなければお任せにすることができます。

一方でオペランドのパースは自分で書かなくてはなりません。

SC61860のオペランドは定数のみで、定数式の評価ルーチンは用意されているのでほぼ呼び出すだけですみました。

SC61860 & SC62015 (その1)

2024-02-06 22:50 — asano
カテゴリー

先月、古い友人と食事をしたのですが、そこで話題になったものの一つにシャープのポケコンのCPUがあります。

PC-1261, PC-1350などに使われたSC61860と、PC-E500シリーズに使われたSC62015です。

その後、そういえばASは対応してたかな? と思って確認したところどちらも未対応でした。

するとまた対応作業してみたくなってしまい、資料を探し始めたのですが......

この辺りのアセンブラは最後に弄ってから既に30年以上経過しています。『I/O』『The BASIC』『ポケコンジャーナル』あたりに掲載されていたと思うのですが、目次の公開されていたI/Oはともかく他はどの号に掲載なのか探すのは結構大変です。

そんな中『ポケコン・マシン語ブック』がかろうじて出てきました。SC61860の命令表はこれに記載されていますが、PC-E500発売前のものなのでSC62015は当然載っていません。

テプラメジャー

2024-02-05 08:55 — asano

テーマ

カテゴリー

先日図面ファイルを買ったと書きました。以前のものが使用不能になったわけでもないのに何で急に買ったかというと......

キングジムの公式ショップで「テプラ風メジャー」のプレゼントキャンペーンをやっていたからなのです。普段この手のものは興味が無いことが多いのですが、これは我慢できませんでした......


ということで図面ファイルと少なくなっていたテプラテープ数本と一緒に届いたのがコレ、箱までテープそっくりにできていました。

最初一緒に買ったテープと見間違え、入れ忘れられたのか、それともプレゼント条件を満たしていなかったのか、などと考えてしまったほどです。よく見るとちゃんと「MEASURE」と書いてありました。

とりあえず出してみます。

最近のお買い物(2024/1)

2024-01-31 23:01 — asano

テーマ

カテゴリー

今年は元日から地震、翌日には航空機事故ととんでもない年明けでした。個人的にも、2024年の挨拶の書き方でうすうす気付いた方もいるかもしれませんが年末に不幸がありまして、さらに先週末からは盛大に腹を下してろくに食べられない日が何日も続きくという散々な状況でした。

悪いことはこれで出し切れて、残りの11ヶ月は平穏だといいのですが......

今月も目新しいものはあまりないですが、最近のお買い物です。

『BASIC言語解説書』

2024-02-04 21:35 — asano

テーマ

カテゴリー

ZZ86のマニュアルと一緒にこんなものも発見されていました。


タイトルから想像するにカシオ計算機のV-900なるBASIC搭載機があって、それ用のマニュアルのようなものなのでしょう。

聞いた記憶の無い機種なので検索してみたところ、カシオ公式サイトの「カシオの歴史」のところで「V-900」の名前を見つけました。1970年代のところに以下の記述があります。

1978(昭和53)年7月
パーソナルコンピュータ「V-900」販売開始(出荷8月)

1978年7月ということはPC-8001より約1年、MZ-80Kよりも数か月早い発売ですね。

残念ながら写真は見つかりませんでした。一体どんな形態のマシンだったのでしょう?

LED Flasher

2024-01-09 22:43 — asano

テーマ

カテゴリー

去年入手したLM3909、せっかくなので一番簡単なLED Flasherを組んでみました。


『初歩のラジオ』1981年1月号掲載のものをそのまま作ってみました。

とてもシンプルで、外付け部品は100μFの電解コンデンサとLEDのみです。

これに電源として1.5Vを加えると約1秒に1回LEDが光ります。デューティは低く光るのはほんの一瞬です。ちなみに電源電圧を上げると点滅周期が短くなります。