1*4882a593Smuzhiyun~~~~~~~~~~~~~~~~~~~~~~~~~ 2*4882a593SmuzhiyunAmiga joystick extensions 3*4882a593Smuzhiyun~~~~~~~~~~~~~~~~~~~~~~~~~ 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunAmiga 4-joystick parport extension 7*4882a593Smuzhiyun~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunParallel port pins: 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun===== ======== ==== ========== 13*4882a593SmuzhiyunPin Meaning Pin Meaning 14*4882a593Smuzhiyun===== ======== ==== ========== 15*4882a593Smuzhiyun 2 Up1 6 Up2 16*4882a593Smuzhiyun 3 Down1 7 Down2 17*4882a593Smuzhiyun 4 Left1 8 Left2 18*4882a593Smuzhiyun 5 Right1 9 Right2 19*4882a593Smuzhiyun13 Fire1 11 Fire2 20*4882a593Smuzhiyun18 Gnd1 18 Gnd2 21*4882a593Smuzhiyun===== ======== ==== ========== 22*4882a593Smuzhiyun 23*4882a593SmuzhiyunAmiga digital joystick pinout 24*4882a593Smuzhiyun~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun=== ============ 27*4882a593SmuzhiyunPin Meaning 28*4882a593Smuzhiyun=== ============ 29*4882a593Smuzhiyun1 Up 30*4882a593Smuzhiyun2 Down 31*4882a593Smuzhiyun3 Left 32*4882a593Smuzhiyun4 Right 33*4882a593Smuzhiyun5 n/c 34*4882a593Smuzhiyun6 Fire button 35*4882a593Smuzhiyun7 +5V (50mA) 36*4882a593Smuzhiyun8 Gnd 37*4882a593Smuzhiyun9 Thumb button 38*4882a593Smuzhiyun=== ============ 39*4882a593Smuzhiyun 40*4882a593SmuzhiyunAmiga mouse pinout 41*4882a593Smuzhiyun~~~~~~~~~~~~~~~~~~ 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun=== ============ 44*4882a593SmuzhiyunPin Meaning 45*4882a593Smuzhiyun=== ============ 46*4882a593Smuzhiyun1 V-pulse 47*4882a593Smuzhiyun2 H-pulse 48*4882a593Smuzhiyun3 VQ-pulse 49*4882a593Smuzhiyun4 HQ-pulse 50*4882a593Smuzhiyun5 Middle button 51*4882a593Smuzhiyun6 Left button 52*4882a593Smuzhiyun7 +5V (50mA) 53*4882a593Smuzhiyun8 Gnd 54*4882a593Smuzhiyun9 Right button 55*4882a593Smuzhiyun=== ============ 56*4882a593Smuzhiyun 57*4882a593SmuzhiyunAmiga analog joystick pinout 58*4882a593Smuzhiyun~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 59*4882a593Smuzhiyun 60*4882a593Smuzhiyun=== ============== 61*4882a593SmuzhiyunPin Meaning 62*4882a593Smuzhiyun=== ============== 63*4882a593Smuzhiyun1 Top button 64*4882a593Smuzhiyun2 Top2 button 65*4882a593Smuzhiyun3 Trigger button 66*4882a593Smuzhiyun4 Thumb button 67*4882a593Smuzhiyun5 Analog X 68*4882a593Smuzhiyun6 n/c 69*4882a593Smuzhiyun7 +5V (50mA) 70*4882a593Smuzhiyun8 Gnd 71*4882a593Smuzhiyun9 Analog Y 72*4882a593Smuzhiyun=== ============== 73*4882a593Smuzhiyun 74*4882a593SmuzhiyunAmiga lightpen pinout 75*4882a593Smuzhiyun~~~~~~~~~~~~~~~~~~~~~ 76*4882a593Smuzhiyun 77*4882a593Smuzhiyun=== ============= 78*4882a593SmuzhiyunPin Meaning 79*4882a593Smuzhiyun=== ============= 80*4882a593Smuzhiyun1 n/c 81*4882a593Smuzhiyun2 n/c 82*4882a593Smuzhiyun3 n/c 83*4882a593Smuzhiyun4 n/c 84*4882a593Smuzhiyun5 Touch button 85*4882a593Smuzhiyun6 /Beamtrigger 86*4882a593Smuzhiyun7 +5V (50mA) 87*4882a593Smuzhiyun8 Gnd 88*4882a593Smuzhiyun9 Stylus button 89*4882a593Smuzhiyun=== ============= 90*4882a593Smuzhiyun 91*4882a593Smuzhiyun------------------------------------------------------------------------------- 92*4882a593Smuzhiyun 93*4882a593Smuzhiyun======== === ==== ==== ====== ======================================== 94*4882a593SmuzhiyunNAME rev ADDR type chip Description 95*4882a593Smuzhiyun======== === ==== ==== ====== ======================================== 96*4882a593SmuzhiyunJOY0DAT 00A R Denise Joystick-mouse 0 data (left vert, horiz) 97*4882a593SmuzhiyunJOY1DAT 00C R Denise Joystick-mouse 1 data (right vert,horiz) 98*4882a593Smuzhiyun======== === ==== ==== ====== ======================================== 99*4882a593Smuzhiyun 100*4882a593Smuzhiyun These addresses each read a 16 bit register. These in turn 101*4882a593Smuzhiyun are loaded from the MDAT serial stream and are clocked in on 102*4882a593Smuzhiyun the rising edge of SCLK. MLD output is used to parallel load 103*4882a593Smuzhiyun the external parallel-to-serial converter.This in turn is 104*4882a593Smuzhiyun loaded with the 4 quadrature inputs from each of two game 105*4882a593Smuzhiyun controller ports (8 total) plus 8 miscellaneous control bits 106*4882a593Smuzhiyun which are new for LISA and can be read in upper 8 bits of 107*4882a593Smuzhiyun LISAID. 108*4882a593Smuzhiyun 109*4882a593Smuzhiyun Register bits are as follows: 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun - Mouse counter usage (pins 1,3 =Yclock, pins 2,4 =Xclock) 112*4882a593Smuzhiyun 113*4882a593Smuzhiyun======== === === === === === === === === ====== === === === === === === === 114*4882a593Smuzhiyun BIT# 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 115*4882a593Smuzhiyun======== === === === === === === === === ====== === === === === === === === 116*4882a593SmuzhiyunJOY0DAT Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 X7 X6 X5 X4 X3 X2 X1 X0 117*4882a593SmuzhiyunJOY1DAT Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 X7 X6 X5 X4 X3 X2 X1 X0 118*4882a593Smuzhiyun======== === === === === === === === === ====== === === === === === === === 119*4882a593Smuzhiyun 120*4882a593Smuzhiyun 0=LEFT CONTROLLER PAIR, 1=RIGHT CONTROLLER PAIR. 121*4882a593Smuzhiyun (4 counters total). The bit usage for both left and right 122*4882a593Smuzhiyun addresses is shown below. Each 6 bit counter (Y7-Y2,X7-X2) is 123*4882a593Smuzhiyun clocked by 2 of the signals input from the mouse serial 124*4882a593Smuzhiyun stream. Starting with first bit received: 125*4882a593Smuzhiyun 126*4882a593Smuzhiyun +-------------------+-----------------------------------------+ 127*4882a593Smuzhiyun | Serial | Bit Name | Description | 128*4882a593Smuzhiyun +========+==========+=========================================+ 129*4882a593Smuzhiyun | 0 | M0H | JOY0DAT Horizontal Clock | 130*4882a593Smuzhiyun +--------+----------+-----------------------------------------+ 131*4882a593Smuzhiyun | 1 | M0HQ | JOY0DAT Horizontal Clock (quadrature) | 132*4882a593Smuzhiyun +--------+----------+-----------------------------------------+ 133*4882a593Smuzhiyun | 2 | M0V | JOY0DAT Vertical Clock | 134*4882a593Smuzhiyun +--------+----------+-----------------------------------------+ 135*4882a593Smuzhiyun | 3 | M0VQ | JOY0DAT Vertical Clock (quadrature) | 136*4882a593Smuzhiyun +--------+----------+-----------------------------------------+ 137*4882a593Smuzhiyun | 4 | M1V | JOY1DAT Horizontal Clock | 138*4882a593Smuzhiyun +--------+----------+-----------------------------------------+ 139*4882a593Smuzhiyun | 5 | M1VQ | JOY1DAT Horizontal Clock (quadrature) | 140*4882a593Smuzhiyun +--------+----------+-----------------------------------------+ 141*4882a593Smuzhiyun | 6 | M1V | JOY1DAT Vertical Clock | 142*4882a593Smuzhiyun +--------+----------+-----------------------------------------+ 143*4882a593Smuzhiyun | 7 | M1VQ | JOY1DAT Vertical Clock (quadrature) | 144*4882a593Smuzhiyun +--------+----------+-----------------------------------------+ 145*4882a593Smuzhiyun 146*4882a593Smuzhiyun Bits 1 and 0 of each counter (Y1-Y0,X1-X0) may be 147*4882a593Smuzhiyun read to determine the state of the related input signal pair. 148*4882a593Smuzhiyun This allows these pins to double as joystick switch inputs. 149*4882a593Smuzhiyun Joystick switch closures can be deciphered as follows: 150*4882a593Smuzhiyun 151*4882a593Smuzhiyun +------------+------+---------------------------------+ 152*4882a593Smuzhiyun | Directions | Pin# | Counter bits | 153*4882a593Smuzhiyun +============+======+=================================+ 154*4882a593Smuzhiyun | Forward | 1 | Y1 xor Y0 (BIT#09 xor BIT#08) | 155*4882a593Smuzhiyun +------------+------+---------------------------------+ 156*4882a593Smuzhiyun | Left | 3 | Y1 | 157*4882a593Smuzhiyun +------------+------+---------------------------------+ 158*4882a593Smuzhiyun | Back | 2 | X1 xor X0 (BIT#01 xor BIT#00) | 159*4882a593Smuzhiyun +------------+------+---------------------------------+ 160*4882a593Smuzhiyun | Right | 4 | X1 | 161*4882a593Smuzhiyun +------------+------+---------------------------------+ 162*4882a593Smuzhiyun 163*4882a593Smuzhiyun------------------------------------------------------------------------------- 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun======== === ==== ==== ====== ================================================= 166*4882a593SmuzhiyunNAME rev ADDR type chip Description 167*4882a593Smuzhiyun======== === ==== ==== ====== ================================================= 168*4882a593SmuzhiyunJOYTEST 036 W Denise Write to all 4 joystick-mouse counters at once. 169*4882a593Smuzhiyun======== === ==== ==== ====== ================================================= 170*4882a593Smuzhiyun 171*4882a593Smuzhiyun Mouse counter write test data: 172*4882a593Smuzhiyun 173*4882a593Smuzhiyun========= === === === === === === === === ====== === === === === === === === 174*4882a593Smuzhiyun BIT# 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 175*4882a593Smuzhiyun========= === === === === === === === === ====== === === === === === === === 176*4882a593Smuzhiyun JOYxDAT Y7 Y6 Y5 Y4 Y3 Y2 xx xx X7 X6 X5 X4 X3 X2 xx xx 177*4882a593Smuzhiyun JOYxDAT Y7 Y6 Y5 Y4 Y3 Y2 xx xx X7 X6 X5 X4 X3 X2 xx xx 178*4882a593Smuzhiyun========= === === === === === === === === ====== === === === === === === === 179*4882a593Smuzhiyun 180*4882a593Smuzhiyun------------------------------------------------------------------------------- 181*4882a593Smuzhiyun 182*4882a593Smuzhiyun======= === ==== ==== ====== ======================================== 183*4882a593SmuzhiyunNAME rev ADDR type chip Description 184*4882a593Smuzhiyun======= === ==== ==== ====== ======================================== 185*4882a593SmuzhiyunPOT0DAT h 012 R Paula Pot counter data left pair (vert, horiz) 186*4882a593SmuzhiyunPOT1DAT h 014 R Paula Pot counter data right pair (vert,horiz) 187*4882a593Smuzhiyun======= === ==== ==== ====== ======================================== 188*4882a593Smuzhiyun 189*4882a593Smuzhiyun These addresses each read a pair of 8 bit pot counters. 190*4882a593Smuzhiyun (4 counters total). The bit assignment for both 191*4882a593Smuzhiyun addresses is shown below. The counters are stopped by signals 192*4882a593Smuzhiyun from 2 controller connectors (left-right) with 2 pins each. 193*4882a593Smuzhiyun 194*4882a593Smuzhiyun====== === === === === === === === === ====== === === === === === === === 195*4882a593Smuzhiyun BIT# 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 196*4882a593Smuzhiyun====== === === === === === === === === ====== === === === === === === === 197*4882a593Smuzhiyun RIGHT Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 X7 X6 X5 X4 X3 X2 X1 X0 198*4882a593Smuzhiyun LEFT Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 X7 X6 X5 X4 X3 X2 X1 X0 199*4882a593Smuzhiyun====== === === === === === === === === ====== === === === === === === === 200*4882a593Smuzhiyun 201*4882a593Smuzhiyun +--------------------------+-------+ 202*4882a593Smuzhiyun | CONNECTORS | PAULA | 203*4882a593Smuzhiyun +-------+------+-----+-----+-------+ 204*4882a593Smuzhiyun | Loc. | Dir. | Sym | pin | pin | 205*4882a593Smuzhiyun +=======+======+=====+=====+=======+ 206*4882a593Smuzhiyun | RIGHT | Y | RX | 9 | 33 | 207*4882a593Smuzhiyun +-------+------+-----+-----+-------+ 208*4882a593Smuzhiyun | RIGHT | X | RX | 5 | 32 | 209*4882a593Smuzhiyun +-------+------+-----+-----+-------+ 210*4882a593Smuzhiyun | LEFT | Y | LY | 9 | 36 | 211*4882a593Smuzhiyun +-------+------+-----+-----+-------+ 212*4882a593Smuzhiyun | LEFT | X | LX | 5 | 35 | 213*4882a593Smuzhiyun +-------+------+-----+-----+-------+ 214*4882a593Smuzhiyun 215*4882a593Smuzhiyun With normal (NTSC or PAL) horiz. line rate, the pots will 216*4882a593Smuzhiyun give a full scale (FF) reading with about 500kohms in one 217*4882a593Smuzhiyun frame time. With proportionally faster horiz line times, 218*4882a593Smuzhiyun the counters will count proportionally faster. 219*4882a593Smuzhiyun This should be noted when doing variable beam displays. 220*4882a593Smuzhiyun 221*4882a593Smuzhiyun------------------------------------------------------------------------------- 222*4882a593Smuzhiyun 223*4882a593Smuzhiyun====== === ==== ==== ====== ================================================ 224*4882a593SmuzhiyunNAME rev ADDR type chip Description 225*4882a593Smuzhiyun====== === ==== ==== ====== ================================================ 226*4882a593SmuzhiyunPOTGO 034 W Paula Pot port (4 bit) bi-direction and data, and pot 227*4882a593Smuzhiyun counter start. 228*4882a593Smuzhiyun====== === ==== ==== ====== ================================================ 229*4882a593Smuzhiyun 230*4882a593Smuzhiyun------------------------------------------------------------------------------- 231*4882a593Smuzhiyun 232*4882a593Smuzhiyun====== === ==== ==== ====== ================================================ 233*4882a593SmuzhiyunNAME rev ADDR type chip Description 234*4882a593Smuzhiyun====== === ==== ==== ====== ================================================ 235*4882a593SmuzhiyunPOTINP 016 R Paula Pot pin data read 236*4882a593Smuzhiyun====== === ==== ==== ====== ================================================ 237*4882a593Smuzhiyun 238*4882a593Smuzhiyun This register controls a 4 bit bi-direction I/O port 239*4882a593Smuzhiyun that shares the same 4 pins as the 4 pot counters above. 240*4882a593Smuzhiyun 241*4882a593Smuzhiyun +-------+----------+---------------------------------------------+ 242*4882a593Smuzhiyun | BIT# | FUNCTION | DESCRIPTION | 243*4882a593Smuzhiyun +=======+==========+=============================================+ 244*4882a593Smuzhiyun | 15 | OUTRY | Output enable for Paula pin 33 | 245*4882a593Smuzhiyun +-------+----------+---------------------------------------------+ 246*4882a593Smuzhiyun | 14 | DATRY | I/O data Paula pin 33 | 247*4882a593Smuzhiyun +-------+----------+---------------------------------------------+ 248*4882a593Smuzhiyun | 13 | OUTRX | Output enable for Paula pin 32 | 249*4882a593Smuzhiyun +-------+----------+---------------------------------------------+ 250*4882a593Smuzhiyun | 12 | DATRX | I/O data Paula pin 32 | 251*4882a593Smuzhiyun +-------+----------+---------------------------------------------+ 252*4882a593Smuzhiyun | 11 | OUTLY | Out put enable for Paula pin 36 | 253*4882a593Smuzhiyun +-------+----------+---------------------------------------------+ 254*4882a593Smuzhiyun | 10 | DATLY | I/O data Paula pin 36 | 255*4882a593Smuzhiyun +-------+----------+---------------------------------------------+ 256*4882a593Smuzhiyun | 09 | OUTLX | Output enable for Paula pin 35 | 257*4882a593Smuzhiyun +-------+----------+---------------------------------------------+ 258*4882a593Smuzhiyun | 08 | DATLX | I/O data Paula pin 35 | 259*4882a593Smuzhiyun +-------+----------+---------------------------------------------+ 260*4882a593Smuzhiyun | 07-01 | X | Not used | 261*4882a593Smuzhiyun +-------+----------+---------------------------------------------+ 262*4882a593Smuzhiyun | 00 | START | Start pots (dump capacitors,start counters) | 263*4882a593Smuzhiyun +-------+----------+---------------------------------------------+ 264