Jag Adapter Pt1 Jag Decoder


home icon
jag_adap1

I've seen many posts over the years where people wished there was an adapter to play a 5200 or Intellivision, or Colecovision with a Jaguar controller (and why was it so hard for those companies to make a nice comfy keypad controller anyway?). Finally went and built one myself, and since all the hard work involved the Jag decoder, I combined all three adapters into one unit.

Good Points

Bad Points

If you decide to build this, there are some shortcuts that might help. As mentioned, if you build an adapter for just one system, you don't need to wire up the other two encoders. If you build just a 5200 adapter, you don't need external 5v or gnd connections, they're on the controller jack. Likewise, if you just build an intv adapter, you can replace the eight 74175 flip-flops with four 74174 ones (don't need inverting outputs). Finally if you build the adapter into the console, you won't need a cable or project box.

For all console pinouts and controller theory, here is a link (and a HUGE thank-you) to Deathskull Labs Archive


PARTS LIST:

(1) CD4060 Binary Counter IC 
(1) CD4052 Analog 2-Channel Mux IC
(8) 74HC175 Inverting/Noninverting D Flip-Flop ICs
(4) 1k resistors
(5) 10k resistors
(1) 27k resistor (3 10k resistors in series OK)
(1) 100uf electrolytic capacitor
(1) 10pf capacitor
(1) High-density 15-pin female D-sub connector


CIRCUIT:                         
                                        +
        5v---------Jag_pin7        5v----100uf-----gnd
        gnd--------Jag_pin9

                                           5v
                                  _________|____________
                5v               |        VCC           |
         _______|________        |                   1X0|--> to clk1+1k pulldown
        |      VCC       | 140hz |                   1X1|--> to clk2+1k pulldown
+--27k--|X1           Q11|-------|1Y                 1X2|--> to clk3+1k pulldown
|       |                |  70hz |                   1X3|--> to clk4+1k pulldown
+--10k--|X0    4060   Q12|-------|S0      4052          |
|       |                |  35hz |                   2X0|--> to Jag_pin4+10k pullup
+-10pf--|X2           Q13|-------|S1                 2X1|--> to Jag_pin3+10k pullup
        |    GND  RST    |       |                   2X2|--> to Jag_pin2+10k pullup
        |________________|  gnd--|2Y  /EN  VEE  GND  2X3|--> to Jag_pin1+10k pullup
              |    |             |______________________| 
             gnd  gnd                  |    |    |
                                      gnd  gnd  gnd


                5v    5v                                 5v    5v
           _____|_____|_____                        _____|_____|_____
          |    VCC  /RST    |                      |    VCC  /RST    |
Jag_pin11-|D1             Q1|---J_east   Jag_pin10-|D1             Q1|---J_A 
          |              /Q1|--/J_east             |              /Q1|--/J_A
          |                 |                      |                 |
Jag_pin12-|D2             Q2|---J_west    Jag_pin6-|D2             Q2|---J_pause
          |              /Q2|--/J_west             |              /Q2|--/J_pause
          |     74HC175     |                      |     74HC175     |
Jag_pin13-|D3             Q3|---J_south            |D3             Q3|
          |              /Q3|--/J_south            |              /Q3|
          |                 |                      |                 |
Jag_pin14-|D4             Q4|---J_north            |D4             Q4|
          |              /Q4|--/J_north            |              /Q4|
          |                 |                      |                 |
    clk2--|CLK    GND       |                clk2--|CLK    GND       |
          |_________________|                      |_________________|
                   |                                        |
                  gnd                                      gnd

                5v    5v                                 5v    5v
           _____|_____|_____                        _____|_____|_____
          |    VCC  /RST    |                      |    VCC  /RST    |
Jag_pin11-|D1             Q1|---J_1      Jag_pin10-|D1             Q1|---J_B 
          |              /Q1|--/J_1                |              /Q1|--/J_B
          |                 |                      |                 |
Jag_pin12-|D2             Q2|---J_4                |D2             Q2|
          |              /Q2|--/J_4                |              /Q2|
          |     74HC175     |                      |     74HC175     |
Jag_pin13-|D3             Q3|---J_7                |D3             Q3|
          |              /Q3|--/J_7                |              /Q3|
          |                 |                      |                 |
Jag_pin14-|D4             Q4|---J_*                |D4             Q4|
          |              /Q4|--/J_*                |              /Q4|
          |                 |                      |                 |
    clk4--|CLK    GND       |                clk4--|CLK    GND       |
          |_________________|                      |_________________|
                   |                                        |
                  gnd                                      gnd

                5v    5v                                 5v    5v
           _____|_____|_____                        _____|_____|_____
          |    VCC  /RST    |                      |    VCC  /RST    |
Jag_pin11-|D1             Q1|---J_2      Jag_pin10-|D1             Q1|---J_C 
          |              /Q1|--/J_2                |              /Q1|--/J_C
          |                 |                      |                 |
Jag_pin12-|D2             Q2|---J_5                |D2             Q2|
          |              /Q2|--/J_5                |              /Q2|
          |     74HC175     |                      |     74HC175     |
Jag_pin13-|D3             Q3|---J_8                |D3             Q3|
          |              /Q3|--/J_8                |              /Q3|
          |                 |                      |                 |
Jag_pin14-|D4             Q4|---J_0                |D4             Q4|
          |              /Q4|--/J_0                |              /Q4|
          |                 |                      |                 |
    clk3--|CLK    GND       |                clk3--|CLK    GND       |
          |_________________|                      |_________________|
                   |                                        |
                  gnd                                      gnd

                5v    5v                                 5v    5v
           _____|_____|_____                        _____|_____|_____
          |    VCC  /RST    |                      |    VCC  /RST    |
Jag_pin11-|D1             Q1|---J_3      Jag_pin10-|D1             Q1|---J_Option 
          |              /Q1|--/J_3                |              /Q1|--/J_Option
          |                 |                      |                 |
Jag_pin12-|D2             Q2|---J_6                |D2             Q2|
          |              /Q2|--/J_6                |              /Q2|
          |     74HC175     |                      |     74HC175     |
Jag_pin13-|D3             Q3|---J_9                |D3             Q3|
          |              /Q3|--/J_9                |              /Q3|
          |                 |                      |                 |
Jag_pin14-|D4             Q4|---J_#                |D4             Q4|
          |              /Q4|--/J_#                |              /Q4|
          |                 |                      |                 |
    clk1--|CLK    GND       |                clk1--|CLK    GND       |
          |_________________|                      |_________________|
                   |                                        |
                  gnd                                      gnd

HOW IT WORKS:

Whole lotta flip-flops going on. :)

The 4060 is a binary counter that can be wired up to oscillate. The RC values used make the three outputs shown have square wave frequencies of 140, 70, and 35 hz, each one is exactly 1/2 the frequency of the next. The 70 and 35 hz signals are hooked up to a 4052 2 channel analog mux. This makes the two mux outputs continously cycle through its four selections.

On channel 2, the four Jaguar pins (1,2,3,4) are pulled low one at a time, just like a jag console does. This causes the controller data to appear on Jag pins 6,10,11,12,13, and 14, which are connected to the inputs of the four sets of D flip-flops.

The first mux channel is used to connect up the 140hz signal to the clock inputs of one flip-flop set at a time. In the middle of each of the four mux states the 140hz signal produces a rising edge (how convenient!). So whatever data is on the six jag pins mentioned gets latched in until it's updated on the next cycle through.

To summarize, each jaguar controller button (including the dpad directions) gets decoded and stored in a flip-flop as a steady state value.

     clk1          clk2          clk3          clk4          clk1
      v             v             v             v             v
      v             v             v             v             v
       ______        ______        ______        ______        __
      |      |      |      |      |      |      |      |      |
      |      |      |      |      |      |      |      |      |   140hz
______|      |______|      |______|      |______|      |______| (FF clks)

              _____________               _____________
             |             |             |             |
             |             |             |             |           70hz
_____________|             |_____________|             |_______(mux sel 1)

                            ___________________________
                           |                           |
                           |                           |           35hz
___________________________|                           |_______(mux sel 0)

             |             |             |             |
   mux=00    |   mux=01    |   mux=10    |  mux=11     |  mux=00
             |             |             |             |

ASSEMBLY NOTES:

1. Radio Shack should be able to order you all the parts, if you can't find an electronic store nearby. Buy a cellphone while you're there :)

2. If you swap some clock lines, don't worry about it because the circuit is very symmetric. Just make a note of where every flip-flop signal comes out at, and wire up the pause signal after you find where the Fire_button_A signal is making its grand appearance.

3. You can wire this circuit many different ways and still have it work. For example one flip-flop could carry three signals, the other two, instead of doing four and one.

4. One thing that helped me was lining up flip-flops vertically on the board. One bare metal wire then connected up all the VCC and /RST connections. You can also make the D inputs leapfrog from chip to chip.

5. The 4016 analog switch outputs are bidirectional, so if one signal is on all four outputs, you can run a bare wire between pins 2,3,9,and 10 to easily solder them up.

6. I'd recommend choosing either an LS or HC logic family for the ICs. My colecovision supply was only putting out 4.5v on the 5v line and I needed to use LS175 flops, because the wimpy HC175 ones from ST wouldn't work. You probably won't have this issue.

Page 2: 5200 Encoder
Page 3: INTV Encoder
Page 4: CV Encoder
back to projects
IC PINOUTS FOR ALL CIRCUITS: 

4060
14-bit asynchronous binary counter with oscillator and reset input.
Q0,Q1,Q2 and Q10 outputs are missing.

    +---+--+---+
Q11 |1  +--+ 16| VCC
Q12 |2       15| Q9
Q13 |3       14| Q7
 Q5 |4       13| Q8
 Q4 |5  4060 12| RST
 Q6 |6       11| X1
 Q3 |7       10| X0
GND |8        9| X2
    +----------+

4052
8-to-2 line analog multiplexer/demultiplexer with dual power supply.
VEE supply may not be more positive than GND.

    +---+--+---+
1X0 |1  +--+ 16| VCC
1X2 |2       15| 2X2
 1Y |3       14| 2X1
1X3 |4       13| 2Y
1X1 |5  4052 12| 2X0
/EN |6       11| 2X3
VEE |7       10| S0
GND |8        9| S1
    +----------+

74175   
4-bit D flip-flop with complementary outputs and reset.

     +---+--+---+            +----+---+---*---+---+
/RST |1  +--+ 16| VCC        |/RST|CLK| D | Q |/Q |
  Q1 |2       15| Q4         +====+===+===*===+===+
 /Q1 |3       14| /Q4        |  0 | X | X | 0 | 1 |
  D1 |4   74  13| D4         |  1 | / | 0 | 0 | 1 |
  D2 |5  175  12| D3         |  1 | / | 1 | 1 | 0 |
 /Q2 |6       11| /Q3        |  1 |!/ | X | - | - |
  Q2 |7       10| Q3         +----+---+---*---+---+
 GND |8        9| CLK
     +----------+

74174 (if used for intv-only adapter)
6-bit D flip-flop with reset.

     +---+--+---+            +----+---+---*---+
/RST |1  +--+ 16| VCC        |/RST|CLK| D | Q |
  Q0 |2       15| Q6         +====+===+===*===+
  D0 |3       14| D5         |  0 | X | X | 0 |
  D1 |4   74  13| D4         |  1 | / | 0 | 0 |
  Q1 |5  174  12| Q4         |  1 | / | 1 | 1 |
  D2 |6       11| D3         |  1 |!/ | X | - |
  Q2 |7       10| Q3         +----+---+---*---+
 GND |8        9| CLK
     +----------+

4016 Quad analog switches.

     +---+--+---+
  1X |1  +--+ 14| VCC
  1Y |2       13| 1EN
  2Y |3       12| 4EN
  2X |4  4016 11| 4X
 2EN |5  4066 10| 4Y
 3EN |6        9| 3Y
 GND |7        8| 3X
     +----------+

7400 Quad Nand gate:

     +---+--+---+
  1A |1  +--+ 14| VCC
  1B |2       13| 4B
 /1Y |3       12| 4A
  2A |4  7400 11| /4Y
  2B |5       10| 3B
 /2Y |6        9| 3A
 GND |7        8| /3Y
     +----------+

7430

8-input NAND gate.

    +---+--+---+                 ________
  A |1  +--+ 14| VCC        /Y = ABCDEFGH
  B |2       13|
  C |3       12| H
  D |4  7430 11| G
  E |5       10|
  F |6        9|
GND |7        8| /Y
    +----------+
back icon next icon