misc. > アタリ仕様ジョイスティック研究 > 機器側の仕様 > PC-6001系列(Vcc:pin5, GND:pin9) > 東芝 パソピア(1983)

東芝 パソピア(1983)

ハードウェア概要

パソピアは1981年に東芝から発売されたZ80ベースのパソコン。1983年に登場した性能強化版のパソピア7は、27色同時発色[1]、6chシンセサイザーとライバル機種と比べて高性能な機種であったが、売れ行きはいま一つだったとされる。

コントローラ端子はパソピア7登場時に拡張カートリッジ[2]の形で提供された。BASICでのサポートはパソピア7のみであるが、カートリッジの規格はパソピア、パソピア7共通であり、パソピアでもジョイスティックを利用可能である。

コントローラ端子の特徴

本カートリッジはコントローラ端子を2つもっている。パソピアにおいて特徴的なのは、当機は拡張カートリッジスロットを最大7つまで拡張可能であり、そのすべてにジョイスティックアダプタを取り付ければコントローラ端子を14まで増やすことが可能である[3]

ピンアウトは以下の通りであり、PC-6001の端子を入力専用にしたような構成となっている。

pin#

Function

1

Digital in

2

Digital in

3

Digital in

4

Digital in

5

VCC

6

Digital in

7

Digital in

8

GND

9

GND

ハードウェア実装

実際にカートリッジを入手した上で分解し、結線を確認した。その回路図を以下に示す。(2025/8/16追記 8255のWR信号付近のダイオードの向きが逆だったので修正)

/static/images/atari/pasopia.png

端子の制御には8255が利用されている。端子1のピン1~4、6、7は8255のPB0~PB5に、端子2のピン1~4、6、7は8255のPC0~PC5に、それぞれプルアップ回路を介して接続されている。また、基板上には16ピンのICを実装するためのスペースがあり、8255のPA0~PA5、PA7はこのスペース(ICのピン)につながっている。

パソピアのブログ勝つ快感。の著者であるzak氏よりTwitterにて教えていただいたが、ジャンパ線を削除して代わりに74LS367を載せるとPC-6001相当になるとのこと。

制御方法

コントローラの読み取り方法は以下の通りである。

  1. I/Oアドレス$1BにてスロットID(1~7)を指定する。本体内蔵のスロットであれば1であるスロットIDの指定は不要

  2. I/Oアドレス$19にて端子1の、$1Aにて端子2の入力値を得る。ビット0~5がそれぞれピン1~4,6,7に対応している。なお、H=1、L=0である。[4]

ICを追加してPC-6001相当にした場合は、PA0~5、7と両端子のピンとの関係は以下の通りとなる。おそらくPA0はI/Oアドレス$18に書き込むことで信号が出力される。

8255 Pin#

Function

PA0

Controller 1 Pin6

PA1

Controller 1 Pin7

PA2

Controller 2 Pin6

PA3

Controller 2 Pin7

PA4

Controller 1 Pin8

PA5

Controller 2 Pin8

PA7

Disconnect PA0~3 when PA7=H

ジョイスティックを接続する際は接続する端子に対応したPA4又はPA5をLにする[5]と共に、PA7をHにしてPA0〜3を回路から切り離す。つまり、この改造をした場合の制御は以下の通りとなる。

(2025/8/16追記)

  1. I/Oアドレス$1BにてスロットID(1~7)を指定する。

  2. I/Oアドレス$1Bに8Bhを書き込む。これにより、i8255のポートAが出力、ポートB、Cが入力に設定される[6]

  3. I/Oアドレス$18に書き込みを行い、対応するコントローラのピン端子に信号出力を行う。なお、ピン6や7を入力端子として使う場合は対応するPA0~PA3をHにする必要がある(端子1、2のピン6、7計4つのピンの全てを読み取りにするのであれば、PA7をHにするだけでも良い)。また、ジョイスティックを接続する場合は対応するPA4、5をLにする必要がある。例えば、端子1にMSXジョイスティックを、端子2にPC-6051タブレットを接続するのであれば、$18への書き込みは11XX0XX0bとなる(Xは端子2の出力内容に応じて1、0のどちらにもなる。PA6は1、0のどちらでもよい)。両端子共にジョイスティックを接続するのであれば、書き込む内容は111100X0b、又はXXXX00X1bである(Xは1、0のどちらでもいい)。

  4. 読み取りをI/Oアドレス$19、$1Aで行う。

このように、信号出力できるよう改造した場合、読み取りのみを行う場合であってもPAから信号出力を1回は行う必要があるため、既存のジョイスティック対応ソフトが正しく動作しなくなる可能性がある。

(追記終わり)


コメント(0)


Note

本サイトのハイパーリンクの一部は、オリジナルのサイトが閉鎖してしまったため"Internet archive Wayback Machine"へのリンクとなっています。そのようなリンクにはアイコン[archive]を付与しています。

本サイトはCookieを使用しています。本サイトにおけるCookieは以下の三種類のみであり、Cookieの内容に基づいてサイトの表示を変更する以外の用途には用いておりません。