2. Amiga 搖桿¶
2.1. 引腳排列¶
2.1.1. Amiga 4 搖桿並行埠擴充套件¶
並行埠引腳
引腳 |
含義 |
引腳 |
含義 |
|---|---|---|---|
2 |
上1 |
6 |
上2 |
3 |
下1 |
7 |
下2 |
4 |
左1 |
8 |
左2 |
5 |
右1 |
9 |
右2 |
13 |
開火1 |
11 |
開火2 |
19 |
地線1 |
18 |
地線2 |
2.1.2. Amiga 數字搖桿¶
引腳 |
含義 |
|---|---|
1 |
上 |
2 |
下 |
3 |
左 |
4 |
右 |
5 |
n/c |
6 |
開火按鈕 |
7 |
+5V (50mA) |
8 |
地線 |
9 |
拇指按鈕 |
2.1.3. Amiga 滑鼠¶
引腳 |
含義 |
|---|---|
1 |
V 脈衝 |
2 |
H 脈衝 |
3 |
VQ 脈衝 |
4 |
HQ 脈衝 |
5 |
中間按鈕 |
6 |
左鍵 |
7 |
+5V (50mA) |
8 |
地線 |
9 |
右鍵 |
2.1.4. Amiga 模擬搖桿¶
引腳 |
含義 |
|---|---|
1 |
頂部按鈕 |
2 |
頂部2 按鈕 |
3 |
觸發按鈕 |
4 |
拇指按鈕 |
5 |
模擬 X |
6 |
n/c |
7 |
+5V (50mA) |
8 |
地線 |
9 |
模擬 Y |
2.1.5. Amiga 光筆¶
引腳 |
含義 |
|---|---|
1 |
n/c |
2 |
n/c |
3 |
n/c |
4 |
n/c |
5 |
觸控按鈕 |
6 |
/光束觸發器 |
7 |
+5V (50mA) |
8 |
地線 |
9 |
筆按鈕 |
2.2. 暫存器地址¶
2.2.1. JOY0DAT/JOY1DAT¶
名稱 |
修訂 |
地址 |
型別 |
晶片 |
描述 |
|---|---|---|---|---|---|
JOY0DAT |
00A |
R |
Denise |
搖桿-滑鼠 0 資料(左垂直,水平) |
|
JOY1DAT |
00C |
R |
Denise |
R |
這些地址各自讀取一個 16 位暫存器。 這些暫存器又從 MDAT 序列流載入,並在 SCLK 的上升沿時鐘輸入。 MLD 輸出用於並行載入外部並行轉序列轉換器。 依次載入來自兩個遊戲控制器埠的 4 個正交輸入(總共 8 個),以及 LISA 新增的 8 個雜項控制位,這些位可以在 LISAID 的高 8 位中讀取。
暫存器位如下
滑鼠計數器用法(引腳 1,3 = Y 時鐘,引腳 2,4 = X 時鐘)
位 # |
15 |
14 |
13 |
12 |
11 |
10 |
09 |
08 |
07 |
06 |
05 |
04 |
03 |
02 |
01 |
00 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
JOY0DAT |
Y7 |
Y6 |
Y5 |
Y4 |
Y3 |
Y2 |
Y1 |
Y0 |
X7 |
X6 |
X5 |
X4 |
X3 |
X2 |
X1 |
X0 |
JOY1DAT |
Y7 |
Y6 |
Y5 |
Y4 |
Y3 |
Y2 |
Y1 |
Y0 |
X7 |
X6 |
X5 |
X4 |
X3 |
X2 |
X1 |
X0 |
0 = 左控制器對,1 = 右控制器對。(總共 4 個計數器)。 下面顯示了左右地址的位用法。 每個 6 位計數器 (Y7-Y2, X7-X2) 由來自滑鼠序列流的 2 個訊號時鐘控制。 從收到的第一個位開始
序列
位名稱
描述
0
M0H
JOY0DAT 水平時鐘
1
M0HQ
JOY0DAT 水平時鐘(正交)
2
M0V
JOY0DAT 垂直時鐘
3
M0VQ
JOY0DAT 垂直時鐘(正交)
4
M1V
JOY1DAT 水平時鐘
5
M1VQ
JOY1DAT 水平時鐘(正交)
6
M1V
JOY1DAT 垂直時鐘
7
M1VQ
JOY1DAT 垂直時鐘(正交)
可以讀取每個計數器的位 1 和 0 (Y1-Y0, X1-X0) 以確定相關輸入訊號對的狀態。 這允許這些引腳兼作搖桿開關輸入。 搖桿開關的閉合可以按如下方式解碼
方向
引腳#
計數器位
向前
1
Y1 異或 Y0(位 #09 異或位 #08)
左
3
Y1
向後
2
X1 異或 X0(位 #01 異或位 #00)
右
4
X1
2.2.2. JOYTEST¶
名稱 |
修訂 |
地址 |
型別 |
晶片 |
描述 |
|---|---|---|---|---|---|
JOYTEST |
036 |
W |
Denise |
一次寫入所有 4 個搖桿-滑鼠計數器。 |
滑鼠計數器寫入測試資料
位 # |
15 |
14 |
13 |
12 |
11 |
10 |
09 |
08 |
07 |
06 |
05 |
04 |
03 |
02 |
01 |
00 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
JOYxDAT |
Y7 |
Y6 |
Y5 |
Y4 |
Y3 |
Y2 |
xx |
xx |
X7 |
X6 |
X5 |
X4 |
X3 |
X2 |
xx |
xx |
JOYxDAT |
Y7 |
Y6 |
Y5 |
Y4 |
Y3 |
Y2 |
xx |
xx |
X7 |
X6 |
X5 |
X4 |
X3 |
X2 |
xx |
xx |
2.2.3. POT0DAT/POT1DAT¶
名稱 |
修訂 |
地址 |
型別 |
晶片 |
描述 |
|---|---|---|---|---|---|
POT0DAT |
h |
012 |
R |
Paula |
電位計計數器資料左對(垂直,水平) |
POT1DAT |
h |
014 |
R |
Paula |
電位計計數器資料右對(垂直,水平) |
這些地址各自讀取一對 8 位電位計計數器。(總共 4 個計數器)。 下面顯示了兩個地址的位分配。 計數器由來自 2 個控制器聯結器(左右)的訊號停止,每個聯結器有 2 個引腳。
位 # |
15 |
14 |
13 |
12 |
11 |
10 |
09 |
08 |
07 |
06 |
05 |
04 |
03 |
02 |
01 |
00 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
右 |
Y7 |
Y6 |
Y5 |
Y4 |
Y3 |
Y2 |
Y1 |
Y0 |
X7 |
X6 |
X5 |
X4 |
X3 |
X2 |
X1 |
X0 |
左 |
Y7 |
Y6 |
Y5 |
Y4 |
Y3 |
Y2 |
Y1 |
Y0 |
X7 |
X6 |
X5 |
X4 |
X3 |
X2 |
X1 |
X0 |
聯結器
PAULA
位置。
方向。
符號
引腳
引腳
右
Y
RX
9
33
右
X
RX
5
32
左
Y
LY
9
36
左
X
LX
5
35
使用正常的(NTSC 或 PAL)水平線速率,電位計將在一個幀時間內提供具有大約 500k 歐姆的滿量程 (FF) 讀數。 使用成比例的更快水平線時間,計數器將成比例地更快計數。 在進行可變光束顯示時應注意這一點。
2.2.4. POTGO¶
名稱 |
修訂 |
地址 |
型別 |
晶片 |
描述 |
|---|---|---|---|---|---|
POTGO |
034 |
W |
Paula |
電位計埠(4 位)雙向和資料,以及電位計計數器啟動。 |
2.2.5. POTINP¶
名稱 |
修訂 |
地址 |
型別 |
晶片 |
描述 |
|---|---|---|---|---|---|
POTINP |
016 |
R |
Paula |
電位計引腳資料讀取 |
此暫存器控制一個 4 位雙向 I/O 埠,該埠與上述 4 個電位計計數器共享相同的 4 個引腳。
位 #
功能
描述
15
OUTRY
Paula 引腳 33 的輸出使能
14
DATRY
I/O 資料 Paula 引腳 33
13
OUTRX
Paula 引腳 32 的輸出使能
12
DATRX
I/O 資料 Paula 引腳 32
11
OUTLY
Paula 引腳 36 的輸出使能
10
DATLY
I/O 資料 Paula 引腳 36
09
OUTLX
Paula 引腳 35 的輸出使能
08
DATLX
I/O 資料 Paula 引腳 35
07-01
X
未使用
00
啟動
啟動電位計(轉儲電容器,啟動計數器)