文字をこぼすX68000
インターネット黎明のころ、パソコン通信のBBSへの書き込みした方からその当時どんな雰囲気だったかを聞きます。
X68000の割り込み優先順位の高い処理の中で割り込みレベルを落とさないままにしていると、RS-232C経由の受信データをこぼしてしまうと悲しんでいる書き込みです。シリアル通信での受信データも割り込み処理で受け取っているからのようですが、そんなに厳しい処理なのでしょうか。
X68000に搭載されているシリアル通信LSIでは、FIFOが3バイトしかないため、レベルの高い割り込み処理で割り込みレベルを変更しないまま重めの処理をしてしまうとダメで、割り込みレベルを変更するといった配慮が必要なようです。
X68000のゲーム中でシリアル通信が必要なのはデバッグ時に使うくらいで稀のようです。しかし、ゲームにおいて1/60秒に一度のCRTC V-DISP割り込みと、15KHz程度になったりするCRTC H-SYNC割り込み、任意のラスターでトリガがかけられるラスター割り込み等が画面処理上必要になることがあり、CRTC V-DISP割り込みの処理開始時にMFPのレジスタ操作と割り込みレベルを落とす処理が必要になることが多いそうです。
Windowsのパソコンではシリアル通信用とし16550 UART (Universal Asynchronous Receiver / Transmitter)というLSIが搭載されるようになり、チップ内に16バイトのFIFOが内蔵されているようです。さらに大きなFIFOが内蔵されたLSIもあるようですが、現在はほとんどのパソコンからRS-232Cコネクタはなくなっており、シリアル通信が必要な場合はUSB RS232Cシリアル変換ケーブルなどを用いるようになっていて、シリアルデータ送受信はケーブル内のCPUが良きに計らってくれるようになっています。
用語
・X68000の割り込み
X68000は多数の割り込みデバイスが接続されており、各チップの割り込みは以下のような接続がされている。
・MFP
Motorola MC68901 Multi Function Peripheral。パラレルインタフェース、シリアルインターフェース、タイマ、割り込みコントローラという機能を持つ多機能のMC68000周辺LSI。画面関係の割り込みや電源関係、FM音源の割り込み、キーボードの送受信までを担っており、ゲーム等では割り込みマスクレジスタの制御などでアクセスすることが多い。
・SCC
Zilog Z8530 Serial Communication Controller。2チャンネルのシリアル通信ができるLSIで、X68000ではそれぞれRS-232Cとマウスの通信に使用されている。
Konamiのサウンド用チップで同じ名前のものがあるが、そちらはSound Creative Chip。
株式会社瑞起より、X68000を復活させた「X68000 Z LIMITED EDITION EARLY ACCESS KIT」のクラウドファンディングが12月3日より開始。2023年1月28日まで実施中です。
X68000Z https://www.zuiki.co.jp/x68000z/
クラウドファンディング https://kibidango.com/2285
インターネット黎明のころの草の根BBSももりこみつつ、いろんなエピソードをつめこんだ「ちょっと偏ったインターネット老人会へようこそ」を同人誌として頒布します。
参加予定イベント
12月31日 V-43a コミックマーケット 101
同人サークル BLACK FTZやってます twitter @black_ftz
この記事が気に入ったらサポートをしてみませんか?