18c2ecf20Sopenharmony_ci~~~~~~~~~~~~~~~~~~~~~~~~~
28c2ecf20Sopenharmony_ciAmiga joystick extensions
38c2ecf20Sopenharmony_ci~~~~~~~~~~~~~~~~~~~~~~~~~
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ciAmiga 4-joystick parport extension
78c2ecf20Sopenharmony_ci~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ciParallel port pins:
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci=====  ======== ====   ==========
138c2ecf20Sopenharmony_ciPin    Meaning  Pin    Meaning
148c2ecf20Sopenharmony_ci=====  ======== ====   ==========
158c2ecf20Sopenharmony_ci 2     Up1	 6     Up2
168c2ecf20Sopenharmony_ci 3     Down1	 7     Down2
178c2ecf20Sopenharmony_ci 4     Left1	 8     Left2
188c2ecf20Sopenharmony_ci 5     Right1	 9     Right2
198c2ecf20Sopenharmony_ci13     Fire1	11     Fire2
208c2ecf20Sopenharmony_ci18     Gnd1	18     Gnd2
218c2ecf20Sopenharmony_ci=====  ======== ====   ==========
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ciAmiga digital joystick pinout
248c2ecf20Sopenharmony_ci~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
258c2ecf20Sopenharmony_ci
268c2ecf20Sopenharmony_ci=== ============
278c2ecf20Sopenharmony_ciPin Meaning
288c2ecf20Sopenharmony_ci=== ============
298c2ecf20Sopenharmony_ci1   Up
308c2ecf20Sopenharmony_ci2   Down
318c2ecf20Sopenharmony_ci3   Left
328c2ecf20Sopenharmony_ci4   Right
338c2ecf20Sopenharmony_ci5   n/c
348c2ecf20Sopenharmony_ci6   Fire button
358c2ecf20Sopenharmony_ci7   +5V (50mA)
368c2ecf20Sopenharmony_ci8   Gnd
378c2ecf20Sopenharmony_ci9   Thumb button
388c2ecf20Sopenharmony_ci=== ============
398c2ecf20Sopenharmony_ci
408c2ecf20Sopenharmony_ciAmiga mouse pinout
418c2ecf20Sopenharmony_ci~~~~~~~~~~~~~~~~~~
428c2ecf20Sopenharmony_ci
438c2ecf20Sopenharmony_ci=== ============
448c2ecf20Sopenharmony_ciPin Meaning
458c2ecf20Sopenharmony_ci=== ============
468c2ecf20Sopenharmony_ci1   V-pulse
478c2ecf20Sopenharmony_ci2   H-pulse
488c2ecf20Sopenharmony_ci3   VQ-pulse
498c2ecf20Sopenharmony_ci4   HQ-pulse
508c2ecf20Sopenharmony_ci5   Middle button
518c2ecf20Sopenharmony_ci6   Left button
528c2ecf20Sopenharmony_ci7   +5V (50mA)
538c2ecf20Sopenharmony_ci8   Gnd
548c2ecf20Sopenharmony_ci9   Right button
558c2ecf20Sopenharmony_ci=== ============
568c2ecf20Sopenharmony_ci
578c2ecf20Sopenharmony_ciAmiga analog joystick pinout
588c2ecf20Sopenharmony_ci~~~~~~~~~~~~~~~~~~~~~~~~~~~~
598c2ecf20Sopenharmony_ci
608c2ecf20Sopenharmony_ci=== ==============
618c2ecf20Sopenharmony_ciPin Meaning
628c2ecf20Sopenharmony_ci=== ==============
638c2ecf20Sopenharmony_ci1   Top button
648c2ecf20Sopenharmony_ci2   Top2 button
658c2ecf20Sopenharmony_ci3   Trigger button
668c2ecf20Sopenharmony_ci4   Thumb button
678c2ecf20Sopenharmony_ci5   Analog X
688c2ecf20Sopenharmony_ci6   n/c
698c2ecf20Sopenharmony_ci7   +5V (50mA)
708c2ecf20Sopenharmony_ci8   Gnd
718c2ecf20Sopenharmony_ci9   Analog Y
728c2ecf20Sopenharmony_ci=== ==============
738c2ecf20Sopenharmony_ci
748c2ecf20Sopenharmony_ciAmiga lightpen pinout
758c2ecf20Sopenharmony_ci~~~~~~~~~~~~~~~~~~~~~
768c2ecf20Sopenharmony_ci
778c2ecf20Sopenharmony_ci=== =============
788c2ecf20Sopenharmony_ciPin Meaning
798c2ecf20Sopenharmony_ci=== =============
808c2ecf20Sopenharmony_ci1   n/c
818c2ecf20Sopenharmony_ci2   n/c
828c2ecf20Sopenharmony_ci3   n/c
838c2ecf20Sopenharmony_ci4   n/c
848c2ecf20Sopenharmony_ci5   Touch button
858c2ecf20Sopenharmony_ci6   /Beamtrigger
868c2ecf20Sopenharmony_ci7   +5V (50mA)
878c2ecf20Sopenharmony_ci8   Gnd
888c2ecf20Sopenharmony_ci9   Stylus button
898c2ecf20Sopenharmony_ci=== =============
908c2ecf20Sopenharmony_ci
918c2ecf20Sopenharmony_ci-------------------------------------------------------------------------------
928c2ecf20Sopenharmony_ci
938c2ecf20Sopenharmony_ci======== === ==== ==== ====== ========================================
948c2ecf20Sopenharmony_ciNAME     rev ADDR type chip   Description
958c2ecf20Sopenharmony_ci======== === ==== ==== ====== ========================================
968c2ecf20Sopenharmony_ciJOY0DAT      00A   R   Denise Joystick-mouse 0 data (left vert, horiz)
978c2ecf20Sopenharmony_ciJOY1DAT      00C   R   Denise Joystick-mouse 1 data (right vert,horiz)
988c2ecf20Sopenharmony_ci======== === ==== ==== ====== ========================================
998c2ecf20Sopenharmony_ci
1008c2ecf20Sopenharmony_ci        These addresses each read a 16 bit register. These in turn
1018c2ecf20Sopenharmony_ci        are loaded from the MDAT serial stream and are clocked in on
1028c2ecf20Sopenharmony_ci        the rising edge of SCLK. MLD output is used to parallel load
1038c2ecf20Sopenharmony_ci        the external parallel-to-serial converter.This in turn is
1048c2ecf20Sopenharmony_ci        loaded with the 4 quadrature inputs from each of two game
1058c2ecf20Sopenharmony_ci        controller ports (8 total) plus 8 miscellaneous control bits
1068c2ecf20Sopenharmony_ci        which are new for LISA and can be read in upper 8 bits of
1078c2ecf20Sopenharmony_ci        LISAID.
1088c2ecf20Sopenharmony_ci
1098c2ecf20Sopenharmony_ci        Register bits are as follows:
1108c2ecf20Sopenharmony_ci
1118c2ecf20Sopenharmony_ci        - Mouse counter usage (pins  1,3 =Yclock, pins 2,4 =Xclock)
1128c2ecf20Sopenharmony_ci
1138c2ecf20Sopenharmony_ci======== === === === === === === === === ====== === === === === === === ===
1148c2ecf20Sopenharmony_ci    BIT#  15  14  13  12  11  10  09  08     07  06  05  04  03  02  01  00
1158c2ecf20Sopenharmony_ci======== === === === === === === === === ====== === === === === === === ===
1168c2ecf20Sopenharmony_ciJOY0DAT   Y7  Y6  Y5  Y4  Y3  Y2  Y1  Y0     X7  X6  X5  X4  X3  X2  X1  X0
1178c2ecf20Sopenharmony_ciJOY1DAT   Y7  Y6  Y5  Y4  Y3  Y2  Y1  Y0     X7  X6  X5  X4  X3  X2  X1  X0
1188c2ecf20Sopenharmony_ci======== === === === === === === === === ====== === === === === === === ===
1198c2ecf20Sopenharmony_ci
1208c2ecf20Sopenharmony_ci        0=LEFT CONTROLLER PAIR, 1=RIGHT CONTROLLER PAIR.
1218c2ecf20Sopenharmony_ci        (4 counters total). The bit usage for both left and right
1228c2ecf20Sopenharmony_ci        addresses is shown below. Each 6 bit counter (Y7-Y2,X7-X2) is
1238c2ecf20Sopenharmony_ci        clocked by 2 of the signals input from the mouse serial
1248c2ecf20Sopenharmony_ci        stream. Starting with first bit received:
1258c2ecf20Sopenharmony_ci
1268c2ecf20Sopenharmony_ci         +-------------------+-----------------------------------------+
1278c2ecf20Sopenharmony_ci         | Serial | Bit Name | Description                             |
1288c2ecf20Sopenharmony_ci         +========+==========+=========================================+
1298c2ecf20Sopenharmony_ci         |   0    | M0H      | JOY0DAT Horizontal Clock                |
1308c2ecf20Sopenharmony_ci         +--------+----------+-----------------------------------------+
1318c2ecf20Sopenharmony_ci         |   1    | M0HQ     | JOY0DAT Horizontal Clock (quadrature)   |
1328c2ecf20Sopenharmony_ci         +--------+----------+-----------------------------------------+
1338c2ecf20Sopenharmony_ci         |   2    | M0V      | JOY0DAT Vertical Clock                  |
1348c2ecf20Sopenharmony_ci         +--------+----------+-----------------------------------------+
1358c2ecf20Sopenharmony_ci         |   3    | M0VQ     | JOY0DAT Vertical Clock  (quadrature)    |
1368c2ecf20Sopenharmony_ci         +--------+----------+-----------------------------------------+
1378c2ecf20Sopenharmony_ci         |   4    | M1V      | JOY1DAT Horizontal Clock                |
1388c2ecf20Sopenharmony_ci         +--------+----------+-----------------------------------------+
1398c2ecf20Sopenharmony_ci         |   5    | M1VQ     | JOY1DAT Horizontal Clock (quadrature)   |
1408c2ecf20Sopenharmony_ci         +--------+----------+-----------------------------------------+
1418c2ecf20Sopenharmony_ci         |   6    | M1V      | JOY1DAT Vertical Clock                  |
1428c2ecf20Sopenharmony_ci         +--------+----------+-----------------------------------------+
1438c2ecf20Sopenharmony_ci         |   7    | M1VQ     | JOY1DAT Vertical Clock (quadrature)     |
1448c2ecf20Sopenharmony_ci         +--------+----------+-----------------------------------------+
1458c2ecf20Sopenharmony_ci
1468c2ecf20Sopenharmony_ci         Bits 1 and 0 of each counter (Y1-Y0,X1-X0) may be
1478c2ecf20Sopenharmony_ci         read to determine the state of the related input signal pair.
1488c2ecf20Sopenharmony_ci         This allows these pins to double as joystick switch inputs.
1498c2ecf20Sopenharmony_ci         Joystick switch closures can be deciphered as follows:
1508c2ecf20Sopenharmony_ci
1518c2ecf20Sopenharmony_ci         +------------+------+---------------------------------+
1528c2ecf20Sopenharmony_ci         | Directions | Pin# | Counter bits                    |
1538c2ecf20Sopenharmony_ci         +============+======+=================================+
1548c2ecf20Sopenharmony_ci         | Forward    |  1   | Y1 xor Y0 (BIT#09 xor BIT#08)   |
1558c2ecf20Sopenharmony_ci         +------------+------+---------------------------------+
1568c2ecf20Sopenharmony_ci         | Left       |  3   | Y1                              |
1578c2ecf20Sopenharmony_ci         +------------+------+---------------------------------+
1588c2ecf20Sopenharmony_ci         | Back       |  2   | X1 xor X0 (BIT#01 xor BIT#00)   |
1598c2ecf20Sopenharmony_ci         +------------+------+---------------------------------+
1608c2ecf20Sopenharmony_ci         | Right      |  4   | X1                              |
1618c2ecf20Sopenharmony_ci         +------------+------+---------------------------------+
1628c2ecf20Sopenharmony_ci
1638c2ecf20Sopenharmony_ci-------------------------------------------------------------------------------
1648c2ecf20Sopenharmony_ci
1658c2ecf20Sopenharmony_ci========  === ==== ==== ====== =================================================
1668c2ecf20Sopenharmony_ciNAME      rev ADDR type chip    Description
1678c2ecf20Sopenharmony_ci========  === ==== ==== ====== =================================================
1688c2ecf20Sopenharmony_ciJOYTEST       036   W   Denise  Write to all 4  joystick-mouse counters at once.
1698c2ecf20Sopenharmony_ci========  === ==== ==== ====== =================================================
1708c2ecf20Sopenharmony_ci
1718c2ecf20Sopenharmony_ci                  Mouse counter write test data:
1728c2ecf20Sopenharmony_ci
1738c2ecf20Sopenharmony_ci========= === === === === === === === === ====== === === === === === === ===
1748c2ecf20Sopenharmony_ci     BIT#  15  14  13  12  11  10  09  08     07  06  05  04  03  02  01  00
1758c2ecf20Sopenharmony_ci========= === === === === === === === === ====== === === === === === === ===
1768c2ecf20Sopenharmony_ci  JOYxDAT  Y7  Y6  Y5  Y4  Y3  Y2  xx  xx     X7  X6  X5  X4  X3  X2  xx  xx
1778c2ecf20Sopenharmony_ci  JOYxDAT  Y7  Y6  Y5  Y4  Y3  Y2  xx  xx     X7  X6  X5  X4  X3  X2  xx  xx
1788c2ecf20Sopenharmony_ci========= === === === === === === === === ====== === === === === === === ===
1798c2ecf20Sopenharmony_ci
1808c2ecf20Sopenharmony_ci-------------------------------------------------------------------------------
1818c2ecf20Sopenharmony_ci
1828c2ecf20Sopenharmony_ci======= === ==== ==== ====== ========================================
1838c2ecf20Sopenharmony_ciNAME    rev ADDR type chip   Description
1848c2ecf20Sopenharmony_ci======= === ==== ==== ====== ========================================
1858c2ecf20Sopenharmony_ciPOT0DAT  h  012   R   Paula  Pot counter data left pair (vert, horiz)
1868c2ecf20Sopenharmony_ciPOT1DAT  h  014   R   Paula  Pot counter data right pair (vert,horiz)
1878c2ecf20Sopenharmony_ci======= === ==== ==== ====== ========================================
1888c2ecf20Sopenharmony_ci
1898c2ecf20Sopenharmony_ci        These addresses each read a pair of 8 bit pot counters.
1908c2ecf20Sopenharmony_ci        (4 counters total). The bit assignment for both
1918c2ecf20Sopenharmony_ci        addresses is shown below. The counters are stopped by signals
1928c2ecf20Sopenharmony_ci        from 2 controller connectors (left-right) with 2 pins each.
1938c2ecf20Sopenharmony_ci
1948c2ecf20Sopenharmony_ci====== === === === === === === === === ====== === === === === === === ===
1958c2ecf20Sopenharmony_ci  BIT#  15  14  13  12  11  10  09  08     07  06  05  04  03  02  01  00
1968c2ecf20Sopenharmony_ci====== === === === === === === === === ====== === === === === === === ===
1978c2ecf20Sopenharmony_ci RIGHT  Y7  Y6  Y5  Y4  Y3  Y2  Y1  Y0     X7  X6  X5  X4  X3  X2  X1  X0
1988c2ecf20Sopenharmony_ci  LEFT  Y7  Y6  Y5  Y4  Y3  Y2  Y1  Y0     X7  X6  X5  X4  X3  X2  X1  X0
1998c2ecf20Sopenharmony_ci====== === === === === === === === === ====== === === === === === === ===
2008c2ecf20Sopenharmony_ci
2018c2ecf20Sopenharmony_ci         +--------------------------+-------+
2028c2ecf20Sopenharmony_ci         | CONNECTORS               | PAULA |
2038c2ecf20Sopenharmony_ci         +-------+------+-----+-----+-------+
2048c2ecf20Sopenharmony_ci         | Loc.  | Dir. | Sym | pin | pin   |
2058c2ecf20Sopenharmony_ci         +=======+======+=====+=====+=======+
2068c2ecf20Sopenharmony_ci         | RIGHT | Y    | RX  | 9   | 33    |
2078c2ecf20Sopenharmony_ci         +-------+------+-----+-----+-------+
2088c2ecf20Sopenharmony_ci         | RIGHT | X    | RX  | 5   | 32    |
2098c2ecf20Sopenharmony_ci         +-------+------+-----+-----+-------+
2108c2ecf20Sopenharmony_ci         | LEFT  | Y    | LY  | 9   | 36    |
2118c2ecf20Sopenharmony_ci         +-------+------+-----+-----+-------+
2128c2ecf20Sopenharmony_ci         | LEFT  | X    | LX  | 5   | 35    |
2138c2ecf20Sopenharmony_ci         +-------+------+-----+-----+-------+
2148c2ecf20Sopenharmony_ci
2158c2ecf20Sopenharmony_ci         With normal (NTSC or PAL) horiz. line rate, the pots will
2168c2ecf20Sopenharmony_ci         give a full scale (FF) reading with about 500kohms in one
2178c2ecf20Sopenharmony_ci         frame time. With proportionally faster horiz line times,
2188c2ecf20Sopenharmony_ci         the counters will count proportionally faster.
2198c2ecf20Sopenharmony_ci         This should be noted when doing variable beam displays.
2208c2ecf20Sopenharmony_ci
2218c2ecf20Sopenharmony_ci-------------------------------------------------------------------------------
2228c2ecf20Sopenharmony_ci
2238c2ecf20Sopenharmony_ci====== === ==== ==== ====== ================================================
2248c2ecf20Sopenharmony_ciNAME   rev ADDR type chip   Description
2258c2ecf20Sopenharmony_ci====== === ==== ==== ====== ================================================
2268c2ecf20Sopenharmony_ciPOTGO      034   W   Paula  Pot port (4 bit) bi-direction and data, and pot
2278c2ecf20Sopenharmony_ci			    counter start.
2288c2ecf20Sopenharmony_ci====== === ==== ==== ====== ================================================
2298c2ecf20Sopenharmony_ci
2308c2ecf20Sopenharmony_ci-------------------------------------------------------------------------------
2318c2ecf20Sopenharmony_ci
2328c2ecf20Sopenharmony_ci====== === ==== ==== ====== ================================================
2338c2ecf20Sopenharmony_ciNAME   rev ADDR type chip   Description
2348c2ecf20Sopenharmony_ci====== === ==== ==== ====== ================================================
2358c2ecf20Sopenharmony_ciPOTINP     016   R   Paula  Pot pin data read
2368c2ecf20Sopenharmony_ci====== === ==== ==== ====== ================================================
2378c2ecf20Sopenharmony_ci
2388c2ecf20Sopenharmony_ci        This register controls a 4 bit bi-direction I/O port
2398c2ecf20Sopenharmony_ci        that shares the same 4 pins as the 4 pot counters above.
2408c2ecf20Sopenharmony_ci
2418c2ecf20Sopenharmony_ci         +-------+----------+---------------------------------------------+
2428c2ecf20Sopenharmony_ci         | BIT#  | FUNCTION | DESCRIPTION                                 |
2438c2ecf20Sopenharmony_ci         +=======+==========+=============================================+
2448c2ecf20Sopenharmony_ci         | 15    | OUTRY    | Output enable for Paula pin 33              |
2458c2ecf20Sopenharmony_ci         +-------+----------+---------------------------------------------+
2468c2ecf20Sopenharmony_ci         | 14    | DATRY    | I/O data Paula pin 33                       |
2478c2ecf20Sopenharmony_ci         +-------+----------+---------------------------------------------+
2488c2ecf20Sopenharmony_ci         | 13    | OUTRX    | Output enable for Paula pin 32              |
2498c2ecf20Sopenharmony_ci         +-------+----------+---------------------------------------------+
2508c2ecf20Sopenharmony_ci         | 12    | DATRX    | I/O data Paula pin 32                       |
2518c2ecf20Sopenharmony_ci         +-------+----------+---------------------------------------------+
2528c2ecf20Sopenharmony_ci         | 11    | OUTLY    | Out put enable for Paula pin 36             |
2538c2ecf20Sopenharmony_ci         +-------+----------+---------------------------------------------+
2548c2ecf20Sopenharmony_ci         | 10    | DATLY    | I/O data Paula pin 36                       |
2558c2ecf20Sopenharmony_ci         +-------+----------+---------------------------------------------+
2568c2ecf20Sopenharmony_ci         | 09    | OUTLX    | Output enable for Paula pin 35              |
2578c2ecf20Sopenharmony_ci         +-------+----------+---------------------------------------------+
2588c2ecf20Sopenharmony_ci         | 08    | DATLX    | I/O data  Paula pin 35                      |
2598c2ecf20Sopenharmony_ci         +-------+----------+---------------------------------------------+
2608c2ecf20Sopenharmony_ci         | 07-01 |   X      | Not used                                    |
2618c2ecf20Sopenharmony_ci         +-------+----------+---------------------------------------------+
2628c2ecf20Sopenharmony_ci         | 00    | START    | Start pots (dump capacitors,start counters) |
2638c2ecf20Sopenharmony_ci         +-------+----------+---------------------------------------------+
264