Repair & Schematics
Sega Mega-Tech Arcade

Master System Boot (Sega Mega-Tech)

23min

There is only really one main stage of boot on the Sega Mega-Tech and that is to get the system operational after reading the BIOS from the SMS and running the top menu, and reading the game from the Mega Drive system and running that on the second monitor.

The main focus on Master System Boot is:

  • BIOS (IC20 M27C256)
  • Z80 SMS CPU (IC17)
  • Z80 SMS RAM (IC27 IC28 MB8464A)
  • SMS 2 VDP (IC14 315-5346)
  • SMS VDP (IC16 315-5246)
  • SMS VDP RAM (IC1 HM65256BLSP-10)
  • SMS VDP RAM (IC2 315-5330)
  • I/O Expander (IC7 CXD1095)
  • 315-5348 (IC30 PAL16L8BCN)
  • 315-5347 (IC31 PAL16L8BCN)

All of these and a few more parts are needed for successful boot.

The most common cause of the failed video out is BIOS, Z80 or IO Expanders.

Successful Boot

For detecting boot, you can check if you have the top menu on screen. If you do and the INSERT COIN is flashing between that and PUSH SELECT OR ENTER BUTTON. If it is, you have a fully running SMS sub-system operating the top menu.

Document image
īģŋ

NOTE: By default at boot. the time doesn't count up, sits at 00'00"

Detecting Boot (Z80 !WAIT Pin)

The first part of the board you should look at bringing up / testing is the Menu BIOS.

There is sometimes a daughterboard containing a Z80, RAM and some ROM. It's job is to bring up the game list on the second monitor. It handles game selection, coinage, time keeping and so on.

This daughterboard is based on Sega Master System.

Daughter Board (Sega Mega-Tech)
Daughter Board (Sega Mega-Tech)
īģŋ

The board has the Z80 CPU, and everything else appears to be used to simply output diagnostic information over the DB port, so is not necessary for operation.

You can remove the Z80 and install it directly in the socket below where the daughterboard connected, to have it directly on the main motherboard, like so.

Z80 Menu BIOS (Sega Mega-Tech)
Z80 Menu BIOS (Sega Mega-Tech)
īģŋ

The simplest way to test boot is monitor the !WAIT pin of the Z80 (IC17).

The !WAIT pin:

  • Loading / Reading BIOS: Pulses low for about 1 second
  • Fully Booted: DC 5V high
  • Corrupt RAM/BIOS: Pulses low constantly
  • Crashed: DC low

NOTE: The !WAIT can also go high but crash later and remain high

Typically loading of the BIOS takes just over a second from pulsing !WAIT pin to DC high and game load / main menu shows.

Z80 Activity Pins

If you are seeing a failed boot, you can observe the rest of the pins to see what pins or traces may be faulty.

Below are the expected behaviours of the pins.

Pin

Loading

Fully Booted

Crashed

CLK

3.58MHz 5V Clock

3.58MHz 5V Clock

3.58MHz 5V Clock

Address Pins

Pulsing repetitive 3.6V

Pulsing repetitive 3.6V

DC Low

Data Pins

Pulsing repetitive 3.6V

Pulsing repetitive 3.6V

DC 2V

!REFRESH

Pulsing random 5V

Pulsing random 5V

DC High 3.6V

!M1

Pulsing repetitive 3.6V

Pulsing repetitive 3.6V

DC High 3.6V

!RESET

DC High 5V

DC High 5V

DC High 5V

!BUSRQ

DC High 5V

DC High 5V

DC High 5V

!WAIT

Pulsing low every 16.67us

DC High 5V

DC Low

!BUSAK

DC High 3.6V

DC High 3.6V

DC High 3.6V

!WRITE

Pulsing random 5V

Pulsing random 5V

DC High 5V

!READ

Pulsing repetitive 3.6V

Pulsing repetitive 3.6V

DC Low

!IOREQ

Pulsing random 3.6V

Pulsing random 3.6V

DC 3.6V

!MREQ

Pulsing repetitive 3.6V

Pulsing repetitive 3.6V

DC Low

!HALT

DC 3.6V

DC 3.6V

DC 3.6V

!NMI

DC 5V

DC 5V

DC 5V

!INT

Pulse low every 59.93Hz

Pulse low every 59.93Hz

DC Low

Document image
īģŋ

Also the Z80 SMS RAM (IC27 IC28 MB8464A), BIOS (IC20 M27C256) and SMS 2 VDP (IC14 315-5346) all have 3.6V pulsing going on while running, and flat DC when crashed.

Checking ICs

Z80 (SMS CPU IC17) can be tested using a Z80 tester, or perhaps chuck it in a known working console such as a Neo Geo AES to fully test it.

BIOS (M27C256B-12F6 IC20) can be placed into an EEPROM reader to read it out and compare its CRC value to a known BIOS file.

SMS RAM (MB8464A IC27 / IC28) can be checked by installing it into a known working Mega Drive 1.

SMS 2 VDP (PAL16L8BCN / 315-5346 IC14) are much harder to test, almost impossible, and the best option is to swap them between a working Mega-Tech to prove them. You can find dumps of their code here.

SMS VDP (315-5246 IC16) can be checked by installing it into a working SMS.

SMS VDP RAM (315-5330 IC2) is Pseudo RAM that cannot be easily checked except placing it into a working Mega-Tech. Apparently you can find 315-5330 in some Master Systems however I have personally never found one in a Master System.

I/O Expander (CXD1095 IC7) can only be checked by oscilloscope or swapping with the alternative Mega Drive I/O expander (IC24) on the same Mega Tech board presuming the second one works. These chips are still available on the market to purchase.

PLAs (PAL16L8BCN IC30 / IC31) are much harder to test, almost impossible, and the best option is to swap them between a working Mega-Tech to prove them. You can find dumps of their code here. Often a failed IC30/31 leads to black screen with actual CSYNC pulses working, and the Mega Drive being brought out of reset

System Clocks

Make sure you have working clock signals by probing with an oscilloscope the 10.7386MHz and 53.693MHz crystals.

10.7386MHz Crystal
10.7386MHz Crystal
īģŋ
53.693MHz Crystal
53.693MHz Crystal
īģŋ

I/O Expanders

After this I would check your I/O expanders for general activity (pulsing 5V). The important thing is that you see activity on the pins, not necessarily the actual data being sent.

However, activity on the pins can happen even when it is faulty. I have seen in on multipe, they always seem to have activity even if dead. You could more accurately look at the pinout and probe both inputs and outputs to see if the input pins toggle in and then come out of the associated outputs.

The CXD1095 is an off the shelf port extender. The BIOS and Z80 can access two of them, to handle inputs and drive outputs. If these are bad you will get a black screen.

Often it is simplest just to swap them with a new / known working one to test.

Also excessive heat coming from them is another sign of fault, although they also fail without any heat sometimes too (if they have already burned out).

I/O Expander (IC7)
I/O Expander (IC7)
īģŋ

The I/O expanders are CXD1095Q.

CXD1095D Pinout
CXD1095D Pinout
īģŋ

You should see !RESET pin high, and Dx and Ax pins pulsing with data for example. This is a good sign the chips are generally functional.

If you see no activity, but !RESET is high, then the I/O Expander could be faulty.

!Write and !Read pulse like the Z80 and should be pulsing all the time.

!CS should be high.

If !RESET is low, the chips are held in reset so the reset circuit needs to be fixed first (I suspect its related to the PLD IC14 to the top left of the IC7 I/O Expander.

Checking For Screen Output

If all the above checks are ok, you can probe the CN9 connector (RGB2) for the top Menu screen.

This is TTL level RGBs (5V logic). When disconnected the Sync and RGB pins are just below 5V, and when connected to a receiver drop to around 2.2-2.5V.

RGB Video Output
RGB Video Output
īģŋ

The video output has RGB output, using CSYNC as the VSYNC/HSYNC timing.

The RGB is standard, so is CSYNC.

CSYNC is basically a combined HSYNC and VSYNC signal.

HSYNC is small pulses every 16.63us

CSYNC (HSYNC Timing)
CSYNC (HSYNC Timing)
īģŋ

The full frame is 59.9Hz refresh rate.

CSYNC (Full Frame)
CSYNC (Full Frame)
īģŋ

The VSYNC is signalled by three long low pulses of 64us (instead of the usual 4.8us).

CSYNC (VSYNC Timing)
CSYNC (VSYNC Timing)
īģŋ

The RGB data is the same (5V TTL logic).

SMS VDP

The Video Display Processor from the Sega Master System is the 315-5246. It works alongside a custom Sega 315-5330 and some SRAM.

It is worth checking all your connections between the three chips and the Z80 are all good.

VDP Pinout
VDP Pinout
īģŋ

Issues / Diagnostics

Below are some common causes and fixes to issues.

No Screen

If you get nothing at all on the CSYNC or RGB pins on CN9, check your VDP (315-5246) as this needs nothing else but itself and the system clocks and power rail to generate a CSYNC signal.

Black Screen

A common issue if you get a valid CSYNC outputting 59.91Hz, but the RGB pins are all close to 0V giving a black screen, is a bad IO Expander (CXD1095 IC7).

Also a bad IO Expander on IC24 (to read game cartridges) can cause the system not to boot. Remove it completely and do not replace it until you get to the Menu screen. The Menu screen will boot without IC24, but it may not boot if you have a bad one installed.

It can also be any of the items listed at the top of this article as they all need to work to get past black screen. However I have noted over 80% of the time it has been the IO Expanders being the issue.

White Red Bars

This is a common sign your SMS VDP RAM (IC1 HM65256BLSP-10) is bad.

Less common is the SMS VDP (IC16 315-5246) or SMS VDP RAM (IC2 315-5330)

Document image
īģŋ

Often as a quick test you can sometimes use a hot air station to warm up the RAM chip quite a bit and then try and power on. If it is faulty sometimes it changes from white and red bars to some corrupt data.

Warm IC1, bad RAM
Warm IC1, bad RAM
īģŋ

Graphic Glitches

Almost all graphic glitches are caused by:

  • SMS VDP (IC16 315-5246)
  • SMS VDP RAM (IC1 HM65256BLSP-10)
  • SMS VDP RAM (IC2 315-5330)
  • Traces between any of these or the Z80 broken
Graphics Glitches
Graphics Glitches
īģŋ

Colors Wrong

Color wrong (yellow background on menu for example) and block glitches are issues with the I/O Expander (IC7 CXD1095) usually, or shorting of pins causes this.

Game Titles Junbled / Wrong

If you get the game titles showing, but wrong. With things like SEGA in or repeating letters or jargon, it is the Mega Drives Z80 or RAM address/data pins or bad Z80/RAM, or traces from there to their destination.

Visual Glitches

Glitches that make the menu screen glitch visually, but do not stop the games running or the flashing text on the menu screen, are almost always caused by the SMS 2 VDP, the 315-5330 or its RAM.

System Crashes

If the system itself crashes including the menu, this is typically the SMS BIOS, Z80 or RAM.

Dipping 5V Rail

If you 5V rail is unstable it can cause issues of many kinds, including random system freezing. Monitor it with an oscilloscope to check it for clean stable 5V with no more than 300mV of ripple.

SMS 2 VDP

The Master System 2 Video Display Processor is programmed onto a Programmable Logic Array (PLA) chip, which is like a baby FPGA in a way. It is responsible for the processing of the menu screen data and if it is faulty it can cause the menu to crash.

A simply test to prove this and simulate a fault is shorting pretty much any pin on the 315-5346 temporarily to ground will cause the top menu screen to stay on but crash (go to fixed screen no INSERT COIN motion).