Back to home page

OSCL-LXR

 
 

    


0001 ~~~~~~~~~~~~~~~~~~~~~~~~~
0002 Amiga joystick extensions
0003 ~~~~~~~~~~~~~~~~~~~~~~~~~
0004 
0005 
0006 Amiga 4-joystick parport extension
0007 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0008 
0009 Parallel port pins:
0010 
0011 
0012 =====  ======== ====   ==========
0013 Pin    Meaning  Pin    Meaning
0014 =====  ======== ====   ==========
0015  2     Up1       6     Up2
0016  3     Down1     7     Down2
0017  4     Left1     8     Left2
0018  5     Right1    9     Right2
0019 13     Fire1    11     Fire2
0020 18     Gnd1     18     Gnd2
0021 =====  ======== ====   ==========
0022 
0023 Amiga digital joystick pinout
0024 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0025 
0026 === ============
0027 Pin Meaning
0028 === ============
0029 1   Up
0030 2   Down
0031 3   Left
0032 4   Right
0033 5   n/c
0034 6   Fire button
0035 7   +5V (50mA)
0036 8   Gnd
0037 9   Thumb button
0038 === ============
0039 
0040 Amiga mouse pinout
0041 ~~~~~~~~~~~~~~~~~~
0042 
0043 === ============
0044 Pin Meaning
0045 === ============
0046 1   V-pulse
0047 2   H-pulse
0048 3   VQ-pulse
0049 4   HQ-pulse
0050 5   Middle button
0051 6   Left button
0052 7   +5V (50mA)
0053 8   Gnd
0054 9   Right button
0055 === ============
0056 
0057 Amiga analog joystick pinout
0058 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0059 
0060 === ==============
0061 Pin Meaning
0062 === ==============
0063 1   Top button
0064 2   Top2 button
0065 3   Trigger button
0066 4   Thumb button
0067 5   Analog X
0068 6   n/c
0069 7   +5V (50mA)
0070 8   Gnd
0071 9   Analog Y
0072 === ==============
0073 
0074 Amiga lightpen pinout
0075 ~~~~~~~~~~~~~~~~~~~~~
0076 
0077 === =============
0078 Pin Meaning
0079 === =============
0080 1   n/c
0081 2   n/c
0082 3   n/c
0083 4   n/c
0084 5   Touch button
0085 6   /Beamtrigger
0086 7   +5V (50mA)
0087 8   Gnd
0088 9   Stylus button
0089 === =============
0090 
0091 -------------------------------------------------------------------------------
0092 
0093 ======== === ==== ==== ====== ========================================
0094 NAME     rev ADDR type chip   Description
0095 ======== === ==== ==== ====== ========================================
0096 JOY0DAT      00A   R   Denise Joystick-mouse 0 data (left vert, horiz)
0097 JOY1DAT      00C   R   Denise Joystick-mouse 1 data (right vert,horiz)
0098 ======== === ==== ==== ====== ========================================
0099 
0100         These addresses each read a 16 bit register. These in turn
0101         are loaded from the MDAT serial stream and are clocked in on
0102         the rising edge of SCLK. MLD output is used to parallel load
0103         the external parallel-to-serial converter.This in turn is
0104         loaded with the 4 quadrature inputs from each of two game
0105         controller ports (8 total) plus 8 miscellaneous control bits
0106         which are new for LISA and can be read in upper 8 bits of
0107         LISAID.
0108 
0109         Register bits are as follows:
0110 
0111         - Mouse counter usage (pins  1,3 =Yclock, pins 2,4 =Xclock)
0112 
0113 ======== === === === === === === === === ====== === === === === === === ===
0114     BIT#  15  14  13  12  11  10  09  08     07  06  05  04  03  02  01  00
0115 ======== === === === === === === === === ====== === === === === === === ===
0116 JOY0DAT   Y7  Y6  Y5  Y4  Y3  Y2  Y1  Y0     X7  X6  X5  X4  X3  X2  X1  X0
0117 JOY1DAT   Y7  Y6  Y5  Y4  Y3  Y2  Y1  Y0     X7  X6  X5  X4  X3  X2  X1  X0
0118 ======== === === === === === === === === ====== === === === === === === ===
0119 
0120         0=LEFT CONTROLLER PAIR, 1=RIGHT CONTROLLER PAIR.
0121         (4 counters total). The bit usage for both left and right
0122         addresses is shown below. Each 6 bit counter (Y7-Y2,X7-X2) is
0123         clocked by 2 of the signals input from the mouse serial
0124         stream. Starting with first bit received:
0125 
0126          +-------------------+-----------------------------------------+
0127          | Serial | Bit Name | Description                             |
0128          +========+==========+=========================================+
0129          |   0    | M0H      | JOY0DAT Horizontal Clock                |
0130          +--------+----------+-----------------------------------------+
0131          |   1    | M0HQ     | JOY0DAT Horizontal Clock (quadrature)   |
0132          +--------+----------+-----------------------------------------+
0133          |   2    | M0V      | JOY0DAT Vertical Clock                  |
0134          +--------+----------+-----------------------------------------+
0135          |   3    | M0VQ     | JOY0DAT Vertical Clock  (quadrature)    |
0136          +--------+----------+-----------------------------------------+
0137          |   4    | M1V      | JOY1DAT Horizontal Clock                |
0138          +--------+----------+-----------------------------------------+
0139          |   5    | M1VQ     | JOY1DAT Horizontal Clock (quadrature)   |
0140          +--------+----------+-----------------------------------------+
0141          |   6    | M1V      | JOY1DAT Vertical Clock                  |
0142          +--------+----------+-----------------------------------------+
0143          |   7    | M1VQ     | JOY1DAT Vertical Clock (quadrature)     |
0144          +--------+----------+-----------------------------------------+
0145 
0146          Bits 1 and 0 of each counter (Y1-Y0,X1-X0) may be
0147          read to determine the state of the related input signal pair.
0148          This allows these pins to double as joystick switch inputs.
0149          Joystick switch closures can be deciphered as follows:
0150 
0151          +------------+------+---------------------------------+
0152          | Directions | Pin# | Counter bits                    |
0153          +============+======+=================================+
0154          | Forward    |  1   | Y1 xor Y0 (BIT#09 xor BIT#08)   |
0155          +------------+------+---------------------------------+
0156          | Left       |  3   | Y1                              |
0157          +------------+------+---------------------------------+
0158          | Back       |  2   | X1 xor X0 (BIT#01 xor BIT#00)   |
0159          +------------+------+---------------------------------+
0160          | Right      |  4   | X1                              |
0161          +------------+------+---------------------------------+
0162 
0163 -------------------------------------------------------------------------------
0164 
0165 ========  === ==== ==== ====== =================================================
0166 NAME      rev ADDR type chip    Description
0167 ========  === ==== ==== ====== =================================================
0168 JOYTEST       036   W   Denise  Write to all 4  joystick-mouse counters at once.
0169 ========  === ==== ==== ====== =================================================
0170 
0171                   Mouse counter write test data:
0172 
0173 ========= === === === === === === === === ====== === === === === === === ===
0174      BIT#  15  14  13  12  11  10  09  08     07  06  05  04  03  02  01  00
0175 ========= === === === === === === === === ====== === === === === === === ===
0176   JOYxDAT  Y7  Y6  Y5  Y4  Y3  Y2  xx  xx     X7  X6  X5  X4  X3  X2  xx  xx
0177   JOYxDAT  Y7  Y6  Y5  Y4  Y3  Y2  xx  xx     X7  X6  X5  X4  X3  X2  xx  xx
0178 ========= === === === === === === === === ====== === === === === === === ===
0179 
0180 -------------------------------------------------------------------------------
0181 
0182 ======= === ==== ==== ====== ========================================
0183 NAME    rev ADDR type chip   Description
0184 ======= === ==== ==== ====== ========================================
0185 POT0DAT  h  012   R   Paula  Pot counter data left pair (vert, horiz)
0186 POT1DAT  h  014   R   Paula  Pot counter data right pair (vert,horiz)
0187 ======= === ==== ==== ====== ========================================
0188 
0189         These addresses each read a pair of 8 bit pot counters.
0190         (4 counters total). The bit assignment for both
0191         addresses is shown below. The counters are stopped by signals
0192         from 2 controller connectors (left-right) with 2 pins each.
0193 
0194 ====== === === === === === === === === ====== === === === === === === ===
0195   BIT#  15  14  13  12  11  10  09  08     07  06  05  04  03  02  01  00
0196 ====== === === === === === === === === ====== === === === === === === ===
0197  RIGHT  Y7  Y6  Y5  Y4  Y3  Y2  Y1  Y0     X7  X6  X5  X4  X3  X2  X1  X0
0198   LEFT  Y7  Y6  Y5  Y4  Y3  Y2  Y1  Y0     X7  X6  X5  X4  X3  X2  X1  X0
0199 ====== === === === === === === === === ====== === === === === === === ===
0200 
0201          +--------------------------+-------+
0202          | CONNECTORS               | PAULA |
0203          +-------+------+-----+-----+-------+
0204          | Loc.  | Dir. | Sym | pin | pin   |
0205          +=======+======+=====+=====+=======+
0206          | RIGHT | Y    | RX  | 9   | 33    |
0207          +-------+------+-----+-----+-------+
0208          | RIGHT | X    | RX  | 5   | 32    |
0209          +-------+------+-----+-----+-------+
0210          | LEFT  | Y    | LY  | 9   | 36    |
0211          +-------+------+-----+-----+-------+
0212          | LEFT  | X    | LX  | 5   | 35    |
0213          +-------+------+-----+-----+-------+
0214 
0215          With normal (NTSC or PAL) horiz. line rate, the pots will
0216          give a full scale (FF) reading with about 500kohms in one
0217          frame time. With proportionally faster horiz line times,
0218          the counters will count proportionally faster.
0219          This should be noted when doing variable beam displays.
0220 
0221 -------------------------------------------------------------------------------
0222 
0223 ====== === ==== ==== ====== ================================================
0224 NAME   rev ADDR type chip   Description
0225 ====== === ==== ==== ====== ================================================
0226 POTGO      034   W   Paula  Pot port (4 bit) bi-direction and data, and pot
0227                             counter start.
0228 ====== === ==== ==== ====== ================================================
0229 
0230 -------------------------------------------------------------------------------
0231 
0232 ====== === ==== ==== ====== ================================================
0233 NAME   rev ADDR type chip   Description
0234 ====== === ==== ==== ====== ================================================
0235 POTINP     016   R   Paula  Pot pin data read
0236 ====== === ==== ==== ====== ================================================
0237 
0238         This register controls a 4 bit bi-direction I/O port
0239         that shares the same 4 pins as the 4 pot counters above.
0240 
0241          +-------+----------+---------------------------------------------+
0242          | BIT#  | FUNCTION | DESCRIPTION                                 |
0243          +=======+==========+=============================================+
0244          | 15    | OUTRY    | Output enable for Paula pin 33              |
0245          +-------+----------+---------------------------------------------+
0246          | 14    | DATRY    | I/O data Paula pin 33                       |
0247          +-------+----------+---------------------------------------------+
0248          | 13    | OUTRX    | Output enable for Paula pin 32              |
0249          +-------+----------+---------------------------------------------+
0250          | 12    | DATRX    | I/O data Paula pin 32                       |
0251          +-------+----------+---------------------------------------------+
0252          | 11    | OUTLY    | Out put enable for Paula pin 36             |
0253          +-------+----------+---------------------------------------------+
0254          | 10    | DATLY    | I/O data Paula pin 36                       |
0255          +-------+----------+---------------------------------------------+
0256          | 09    | OUTLX    | Output enable for Paula pin 35              |
0257          +-------+----------+---------------------------------------------+
0258          | 08    | DATLX    | I/O data  Paula pin 35                      |
0259          +-------+----------+---------------------------------------------+
0260          | 07-01 |   X      | Not used                                    |
0261          +-------+----------+---------------------------------------------+
0262          | 00    | START    | Start pots (dump capacitors,start counters) |
0263          +-------+----------+---------------------------------------------+