Shopping cart

Your shopping cart is empty.

User Menu

Important Message

COVID-19 UPDATE: Shipping is affected by the UK lockdown starting 23rd March 2020. I am still shipping worldwide but will no longer go to the post office. All mod kits will be posted as standard large letter. Install service returns are posted via tracked & signed courier. Many thanks

Sega Master System Controller Pause Button Install Guide

WORK IN PROGRESS. DO NOT RELY ON THIS INFORMATION.

This install guide will show you how to install a pause button inside the Master System controllers and the logic circuit inside the console.

To understand how this works it is important to understand logic gates.

Logic Gate Truth Tables

OR Gate

A B Q
0 0 0
1 0 1
0 1 1
1 1 1

AND Gate

A B Q
0 0 0
1 0 0
0 1 0
1 1 1

NOR Gate

A B Q
0 0 1
1 0 0
0 1 0
1 1 0

'B' and 'A' are inputs and 'Q' is the output. The state of 'A' and 'B' determines the state of 'Q'.

In the case of the Master System controller, '0' (logic low) represents a grounded state and '1' (logic high) represents a +5V connection.

The controller buttons work by grounding the contacts when pressed. So the unpressed buttons on the controller; Up, Down, Left, Right, A, and B are all a 1 (logic high) to begin.

Because there are no extra buttons on the controller, two buttons are used to simulate the extra pause button. A and B can not be used because together they serve an obvious function within games, the same applies to Down and Left, Up and Right, etc. For this reason the button combination Up and Down, or Left and Right can be used. These are known as impossible button combinations. The impossible button combination Up and Down might be a better option to use because on a platform game heavy system, Up and Down are probably used less often than Left and Right, therefore there may be less chance of accidentally triggering a pause due to a worn out controller D-Pad which could accidentally actuate both Left and Right during normal play. For this reason, Up and Down will be used in this guide.

To "press" the button combination Up and Down, a tactile On/Off switch can be used (now called button 'Z' in this guide).

The switch (Z) needs one side connecting to the controller pads for Up and Down respectively, and the opposite side of the switch (Z) connecting to Ground.

(IMAGE OF CONTROL PAD CIRCUIT WITH LABELS AND BUTTON DIAGRAM TO GO HERE)

When 'Z' is pressed, the Up and Down controller pads are grounded.

If these two signals from the controller for Up and Down are fed into a logic OR Gate, the output of the OR Gate can be used to ground the Master System console's physical pause button.

(IMAGE OF LOGIC GATE CHIP AND CONSOLE PAUSE BUTTON HERE)

Look at the Truth Table for the OR Gate.

If Up and Down are logic high by default due to how the controller buttons work, the output of the OR Gate is also logic high which is the pause button's normal state.

  B (UP) A (DOWN) Q (Master Pause)
  0 0 0
  0 1 1
  1 0 1
Default 1 1 1

When 'Z' is pressed, Up and Down become logic low and the output of the OR Gate becomes logic low which will ground the console's pause button and pause the game.

  B (UP) A (DOWN) Q (Master Pause)
'Z' Pressed 0 0 0
  0 1 1
  1 0 1
Default 1 1 1

The reason why an OR Gate is used is because the OR Gate will only allow a logic low output on one condition, when both inputs are logic low. If not for this, the logic gate would change when using the D-Pad Up and D-Pad down on their own.

OR Gate

  B (UP) A (DOWN) Q (Master Pause)
'Z' Pressed 0 0 0
D-Pad Up Pressed 0 1 1
D-Pad Down Pressed 1 0 1
Default 1 1 1

AND Gate

  B (UP) A (DOWN) Q (Master Pause)
'Z' Pressed 0 0 0
D-Pad Up Pressed 0 1 0
D-Pad Down Pressed 1 0 0
Default 1 1 1

Back to the controller.

Button Z is connected to both Up and Down on the D-Pad, because of this, when Up is pressed and grounded it will also ground the Down button because they are both connected to a common point at button Z, this will in turn cause the output of the logic gate to become active low and pause the game. To prevent this from happening, the two connections to button 'Z' need isolating from each other. This is achieved by using resistors. 27kOhm is popularly used which is low enough to ground the +5V connected buttons, Up and Down, respectively when Z is pressed. But because there are now two resistors in series between Up and Down, connected at the common point of 'Z', it means the total resistance of 54kOhm between them is high enough to prevent them from grounding each other when pressed individually during normal game play.

(IMAGE TO GO HERE SHOWING RESISTORS AND CONNECTIONS BETWEEN UP, DOWN AND Z)

Two Controller / Two Pause Buttons

Idea 1: Use separate logic gates for each controller and hook their combined outputs to the pause button

The two outputs of the OR Gates will only match and cause a pause when both Z buttons are pressed on both controllers at the same time. The console's pause button will be receiving both a +5V connection and also be grounded at the same time.

  Z 1B 1A 1Q 2B 2A 2Q
Controller 1 1 (Default) 1 1 1      
Controller 2 1 (Default)       1 1 1
Controller 1 0 (Pressed) 0 0 0      
Controller 2 1 (Default)       1 1 1
Controller 1 1 (Default) 1 1 1      
Controller 2 0 (Pressed)       0 0 1
Controller 1 0 (Pressed) 0 0 0      
Controller 2 0 (Pressed)       0 0 0

Idea 2: Hook two controllers up to the same OR Gate

This will make the logic of the truth table correct for pausing the game with separate controllers independently. But it will also hook up both controllers together. This will mean that when Up is pressed on one controller D-Pad, it will also control the up for the second controller. In two player games this will not be ideal.

Idea 3: Hook the outputs of two separate OR Gates into a third OR Gate?

Controller 1 Up and Down are fed into an OR Gate, Controller 2 Up and Down are fed into a second OR Gate, the outputs of these two OR Gates are fed into the third OR Gate. The output of this OR Gate is then connected to the master pause button. This will fully isolate the two controllers inputs.

    OR Gate 1 OR Gate 2 Outputs 1Q and 2Q feed inputs 3A and 3B. OR Gate 3
    IN OUT IN OUT IN OUT
  Pause Button (Z) 1A 1B 1Q 2A 2B 2Q 3A 3B 3Q
Controller 1 1 (Default) 1 1 1       1   1
Controller 2 1 (Default)       1 1 1   1
Controller 1 0 (Pressed) 0 0 0       0   1
Controller 2 1 (Default)       1 1 1   1
Controller 1 1 (Default) 1 1 1       1   1
Controller 2 0 (Pressed)       0 0 0   0
Controller 1 0 (Pressed) 0 0 0       0   0
Controller 2 0 (Pressed)       0 0 0   0

As you can see from the logic table of the three OR Gates, there is no configuration that will achieve a reset when only one Z button is pressed. Pause with two controllers is not possible with just the pure logic from OR Gates.

Idea 4: Hook the outputs of two separate OR Gates into a AND Gate

The same as the previous example, but instead of feeding the outputs of the two OR Gates into a third OR Gate, the outputs are fed into an AND Gate.

    OR Gate 1 OR Gate 2 Outputs 1Q and 2Q feed inputs A and B. AND Gate
    IN OUT IN OUT IN OUT
  Pause Button (Z) 1A 1B 1Q 2A 2B 2Q A B Q
Controller 1 1 (Default) 1 1 1       1   1
Controller 2 1 (Default)       1 1 1   1
Controller 1 0 (Pressed) 0 0 0       0   0
Controller 2 1 (Default)       1 1 1   1
Controller 1 1 (Default) 1 1 1       1   0
Controller 2 0 (Pressed)       0 0 0   0
Controller 1 0 (Pressed) 0 0 0       0   0
Controller 2 0 (Pressed)       0 0 0   0

Now the logic of the outputs is exactly what is needed to achieve pause with two controllers. But this now uses multiple chips.

Idea 5: Hook the outputs of two separate NOR Gates into a third NOR Gate?

    NOR Gate 1 NOR Gate 2 Outputs 1Q and 2Q feed inputs 3A and 3B. NOR Gate
    IN OUT IN OUT IN OUT
  Pause Button (Z) 1A 1B 1Q 2A 2B 2Q 3A 3B 3Q
Controller 1 1 (Default) 1 1 0       0   1
Controller 2 1 (Default)       1 1 0   0
Controller 1 0 (Pressed) 0 0 1       1   0
Controller 2 1 (Default)       1 1 0   0
Controller 1 1 (Default) 1 1 0       0   0
Controller 2 0 (Pressed)       0 0 1   1
Controller 1 0 (Pressed) 0 0 1       1   0
Controller 2 0 (Pressed)       0 0 1   1

Again this logic is perfect for controlling the master pause button and it only uses 1 chip to accomplish this.

Ideas 4 and 5 need testing before a working PCB can be designed.

WORK IN PROGRESS. DO NOT RELY ON THIS INFORMATION.