ShootTheCore

DoDonPachi Dai-Ou-Jou PCB Repair

 PCB Repair Logs, Repair Logs  Comments Off on DoDonPachi Dai-Ou-Jou PCB Repair
Sep 162024
 

In for repair is a DoDonPachi Dai-Ou-Jou (DDP DOJ) arcade board by Cave. It boots up fine but the backgrounds and most of the text are missing.

DDP DOJ runs on the IGS Poly Game Master (PGM) hardware. Although DDP DOJ was never officially released as a PGM cartridge, the game was easily dumped from the original stand-alone boards and can then be loaded onto a PGM cartridge.

According to the MAME driver for the PGM, two ROMs are involved in drawing the backgrounds – a BIOS ROM and an asset ROM.

In MAME, I overwrote the “pgm_t01s.rom” BIOS ROM file with all “FF” but the game still booted up and played fine. Overwriting the “cave_t04401w064.u19” file with all “FF” replicated the real board’s behavior in MAME.

This implied that the mask ROM located at U19 was only reading out “FF”. Probing the address and data lines of that mask ROM on the running board confirmed it – the Address lines would signal properly but the Data lines pretty much always read High.

I desoldered both the U18 BIOS ROM and U19 asset ROM chip and attempted to dump them both as a 29F1610 flash chip since that part has the same pinout. The 29F1610 is a 16 Mbit part that matches the 16 Mbit BIOS but is only one-quarter of the 64 Mbit total stored in the background asset ROM. But even with only one-quarter of the background ROM dumped I’d be able to see if data is reading out of the ROM properly.

The BIOS ROM successfully reads out data but the background asset ROM only reads out FF – looks like the background ROM is toast.

Now for a dilemma – what to do about replacing a dead DDP DOJ background asset mask ROM? The original part is a MX23C3210 mask ROM. There is not a programmable off-the-shelf part with 64 Mbit capacity and the same 5V voltage that the PGM hardware uses that also matches the pinout and footprint of the original mask ROM.

I did prototype a solution that I will describe at the end of this post, but for now I’ll skip to the end of the repair and say that the owner of this board sourced a dead donor PCB of the same game. I was able to successfully transplant the BIOS and art asset mask ROMs from the donor to this PCB and it worked correctly afterwards – a successful repair.

Stepping back to earlier though, while the owner searched for a parts donor, I reached out to colleagues on both the Arcade Projects forums and on Discord for advice for replacing the dead 64 Mbit asset mask ROM. One consideration was to use four 29F1610 16 Mbit flash chips with a 74LS08 TTL chip to drive the Chip Enable lines. A second consideration was to use two 27C322 32Mbit EPROMs – that’s what the PGM cartridge conversions of DDP DOJ use. The drawback to both of these approaches is that the substitute chips would take up a lot more physical space than the original mask ROM so attaching them to the board would be challenging.

A third consideration that I proceeded to prototype with was to adapt an Intel DA28F640 flash chip. The DA28F640 is 64 MBit capacity, 5.0V compatible and programmable but it has a completely different pinout and footprint. I’d never created my own circuit board before, and this seemed like a great opportunity to learn KiCad. Over a few evenings, I referenced data sheets, took measurements, and produced an adapter board.

By the time the production adapter boards arrived, the game had already been fixed with the mask ROM from a donor PCB so my adapter is untested for now. Hopefully I’ll get a chance to try it with a different repair.

Here are the data sheets of the parts involved in this repair, along with the KiCad project files for the flash adapter PCB. If you use this adapter for a repair, please let me know if it works for you!

MX23C3210 mask ROM datasheet
Intel 28F640 pin assignments datasheet
Intel physical footprint datasheet
Flash Footprint Adapter KiCad files (Currently Untested)

Seibu Kaihatsu SPI

 Encyclopedia  Comments Off on Seibu Kaihatsu SPI
Apr 182024
 
Last Updated: 4/18/2024
Article Credit: ShootTheCore, Ikotsu, rtw, Trap15, ekorz, twistedsymphony, channelmaniac

The Seibu Kaihatsu SPI platform was offered in two configurations:

  • Two Board – Main Board and cartridge ROM Board
    • Region locked: Main Board must match country of cartridge ROM Board. This protection can be bypassed – see “Protection Mechanisms” below.
    • Optional Stereo audio.
  • Single Board
    • Only runs the one game that was loaded onto it at the factory.
    • Offered with two different audio setups- Yamaha YM-271-F or dual OKI MSM6295
    • Mono audio only.

This article will address the two configurations separately.

Two-Board Configuration: Main Board

The SPI main board contains all the processing logic to run the game. It was released with two revisions, both of which can run the same ROM game cartridges. The marking on the board for each revision is:

  • (C)1995 SXX2C-MAIN V2.0
  • (C)1998 SXX2D-MAIN V2.1

Stereo sound output is available on the two-board SPI configuration through the CN1 connection header. Everten sells a nice add-on board that adapts the CN1 header to standard RCA stereo audio ports.
https://shewfly.com/products/seibu-kaihatsu-spi-stereo-board-by-everten
https://www.candycabclub.com/product/everten_spi

The video and audio quality is said to be better with the SXX2C-MAIN V2.0 revision.
Source: https://shmups.system11.org/viewtopic.php?t=43308

The SPI system has onboard flash memory used for both region lockout and to store part of the game. The V2.0 board restricts write access to the flash memory by a jumper labeled JP072. The V2.1 board does not have any flash write access restriction jumper.

When swapping game cartridges, you will need to change the jumper (V2.0 only), install the new cart, power on, wait for the game to write to the flash memory (the message “NOW UPDATING. PLEASE WAIT A MOMENT.” will be displayed), power down and flip the jumper back (V2.0 only). Even after flashing, the ROM cartridge must stay attached for the game to operate.

Notable ICs

ICFunctionPCB Label
AM386DX/DXL-25 – OR –
Intel NG80386DX25
25.0 Mhz Main CPUU0169
Zilog Z84C0008PEC7.15909 Mhz Audio CPUU1122
Yamaha YM271-FAudio Processor and Flash AccessU1020
Yamaha YAC513-MAudio DACU1068
Intel E28F008SA – OR –
Sharp LH28F008
8 MBit FlashROMU1053, U1054
SEI400Graphics RenderingU048
SEI600Graphics RenderingU0154

Two Board Configuration – ROM Cartridge Board

Cartridge boards include DIP socket EPROMs, SMD mask ROMs, SRAM and a custom decryption IC – see Protection Mechanisms below. It is not possible to reliably convert one SPI game cart to another at this time, although it is possible to upgrade the same game to a different version (ie Viper Phase One to Viper Phase One NV).

ROM Board model numbers

  • SXX2C ROM SUB
  • SXX2C ROM SUB2
  • SXX2C ROM SUB4
  • SXX2C ROM SUB8
  • SXX2C ROM SUB10

Common Issues and Quirks

CHECKSUM ERROR or HARDWARE ERROR (credit: rtw & Trap15 and channelmaniac)

The two-board SPI platform stores part of the game inside onboard flash storage. The flash storage is also initialized from the factory with a country code. If the country code stored in the first byte of u1053 flash on the mainboard does not match the country code stored in the last byte of the PRG0 EPROM on the ROM cart then you will see the message CHECKSUM ERROR XXXX or HARDWARE ERROR XXXX during the flash process where XX is a two or four digit error code.

It is possible to desolder the u1053 flash chip from the main board to reprogram it with a new code. A list of the country codes is in the opening comments of the MAME driver.

Alternatively, Trap15 developed a software solution named SPI Revive that can rewrite the country code on the mainboard by swapping the PRG0 EPROM on a Raiden Fighters or Raiden Fighters 2 cart. If SPI Revive is unable to change the country code then the u1053 flash chip should be replaced.

SPI Revive: https://bitbucket.org/trap15/spi_revive/src/master/

Source: https://shmups.system11.org/viewtopic.php?t=62636

There have also been cases where the flash chips are holding the correct country code data but the board isn’t reading that data correctly. The Yamaha YM271-F sound chip controls access to the flash storage, so check the connections and traces on it.

Reflowing the solder on all of the large SMD ICs is recommended for HARDWARE ERROR and CHECKSUM ERROR messages if the earlier methods of writing the country code do not resolve the problem.
Credit: ChannelManiac

Boot Failure or Vertical Lines (jailbars) through graphics (credit: twistedsymphony)

It is common for the large SMD ICs to have pins separate from the PCB due to board flexing.

If an SPI board fails to boot at all on a known-good ROM cartridge, try reflowing the solder on each SMD IC, starting with the 386 Main CPU – it seems particularly susceptible to this issue.

If an SPI board has vertical lines running through the graphics, reflow the solder on the two SEI400 and SEI600 graphics rendering ICs.

Single Board Variants

In some regions, Seibu Kaihatsu released some of their games on cost-reduced, all-in-one single boards. These boards are “locked” to the game they ship with, do not have stereo output available, and in some cases use lower-quality dual OKI MSM6295 ICs for audio instead of the Yamaha YM271-F IC that the two-board SPI platform utilized.

  • SYS386I -Raiden Fighters 2 Operation Hell Dive 2000 (AMD 386 CPU and dual OKI MSM6295 Audio)
  • SYS386F – E-Jan Sakurasou (Intel 386 CPU and Yamaha Audio)
  • SYS386H – Raiden Fighters Jet 2000 (AMD 386 CPU and dual OKI MSM6295 Audio)
  • SXX2F – E-Jan Sakurasou (Intel 386 CPU and Yamaha Audio)
  • SXX2G – Raiden Fighters Jet (AMD 386 CPU and Yamaha Audio)

The SPI hardware and games was never bootlegged or cloned by another company.

Daughterboards

The SPI platform only utilized one daughterboard – the SXX2C Mahjong adapter used with E-Jan Sakurasou.

Capacitor List – V2.0 and V2.1 (credit: ekorz)

LocationCapacitanceVoltageDiameter (mm)
C123470 uF26 V10
C051470 uF16 V10
C01210 uF16 V5
C091110 uF16 V5
C092110 uF16 V5
C092610 uF16 V5
C12710 uF16 V5
C121610 uF16 V5
C12110 uF16 V5
C096100 uF25 V6.3
C129100 uF16 V6.3
C1210100 uF16 V6.3
C1214100 uF16 V6.3
C122100 uF16 V6.3
C1215100 uF16 V6.3
C124100 uF16 V6.3
C1217100 uF16 V6.3
C125100 uF16 V6.3
C1219100 uF16 V6.3

Film / Ceramic Resistors – Optional

LocationCapacitanceLead spacing (mm)
C0920182K5
C0923182K5
C0927392K5
C008392K5
C0924222K5
C0913222K5

ROM Details (credit: MAME, twistedsymphony)

Due to the variety of ROM boards used across the SPI games, consult the MAME Driver for game-specific ROM assignments.

The DIP EPROMs can be replaced with a 27C040 EPROM. Replacement of a faulty SMD Mask ROM with an SMD flash might be possible depending on which mask ROM it is.

Protection Mechanisms

Sprite data is encrypted differently for each game and paired to a specific sprite data decryption IC on the cartridge board. This proved to be an effective deterrent against cartridge game conversions and bootlegging.

Schematics & Datasheets

Schematics for the SPI hardware are not available.

Additional Resources

MAME SPI Driverhttps://github.com/mamedev/mame/blob/master/src/mame/seibu/seibuspi.cpp
Trap15: SPI Revivehttps://bitbucket.org/trap15/spi_revive/src/master/
Ikotsu: Raiden Fighter Jet – Seibu SPIhttp://ikotsu.blogspot.com/2010/01/raiden-fighter-jet-seibu-spi-jet.html
Everten SPI Stereo Boardhttps://shewfly.com/products/seibu-kaihatsu-spi-stereo-board-by-everten

https://www.candycabclub.com/product/everten_spi
World of Arcades: Changing SPI region codeshttp://www.world-of-arcades.net/seibu_spi/

Sega System 16B

 Encyclopedia  Comments Off on Sega System 16B
Apr 132024
 
Last Updated: 4/17/2024
Article Credit: ShootTheCore, Furrtech, cpsystem3,Eduardo Cruz, ExodusEmulator, Caius, Frank_fjs, twistedsymphony, Jotego

Main Board

The Sega System 16B main board contains all the processing logic to run the game. The Sega part number for it is 171-5347.

Note that these boards are NOT JAMMA pinout and need an adapter to be properly connected to a JAMMA harness.

Depending on the protection scheme used for the particular game, the Main CPU may utilize encryption, the Sound CPU may utilize encryption, and an MCU may or may not be present – see Protection Measures below for more details.

Notable ICs

ICFunctionLocation
Hitachi FD1094 CPU (encrypted)
Signetics SCN68000C8N64 68000 CPU (unencrypted)
10.0 Mhz Main CPUC9
NEC MC-8123B CPU (encrypted)
Zilog Z8040004PSC Z80 CPU (unencrypted)
4.0 Mhz Audio CPUD15
Yamaha YM2151FM AudioD12
Yamaha YM3012Audio DAC for the YM2151D18
NEC D7759CAudio Speech SynthD16
Sega 315-5195Memory MappingD4
Sega 315-5196Sprite GenerationI4
Sega 315-5197Tilemap GenerationI18
Intel i8751MCU (Copy Protection)B2

ROM Board (credit: ExodusEmulator)

There are four variants of the ROM board used with System 16B:

  • 171-3538: ROMs only. Support for 32K/64K ROMs
  • 171-5521: Banking register added to the middle. Support for 512K/1M/2M ROMs
  • 171-5704: Jumper pins added to control banking. 512K/1M ROMs
  • 171-5797: Adds Sega 315-5250 68000/Z80 mapping interface and an additional banking register. 512K/1M ROMs

Source: ExodusEmulator

Daughter Boards (credit: ExodusEmulator)

There are two daughter boards used with some System 16B games for additional control IO:

  • 171-5437 / 834-6180: Trackball input
  • 834-6523: 4 Player input

Source: ExodusEmulator

Board Variants

The Sega System 16B board was identical between regions for the full lifecycle of the hardware. However, it was heavily bootlegged and thus there is a wide variety of cloned boards. Compared to the original games, cloned boards may have differences in graphics, sound, gameplay and speed. The bootlegs look dramatically different from the Sega originals and are easy to distinguish from the real thing.

Common Issues and Quirks

System16B boards are NOT JAMMA pinout and need an adapter to be properly connected to a JAMMA harness.

System16B boards draw more power than average, so adjust your arcade PSU accordingly when swapping one into your cabinet or SuperGun.

It is common for the battery in the Main CPU or Sound CPU to die if they are encrypted, causing the game to either not boot or not have sound respectively. See “Copy Protection” below for details and resolution.

It is common for the TL084 OpAmp located at D19 to fail, resulting in faint or garbled audio output. Replacement parts are easy to source.

Capacitor List (credit: Frank_fjs)

LocationCapacitanceVoltagePart No.
C2470 uF16 VECA-1CM471B
C3470 uF16 VECA-1CM471B
C4470 uF16 VECA-1CM471B
C61 uF50 VECA-2VM010B
C71 uF50 VECA-2VM010B
C81 uF50 VECA-2VM010B
C91 uF50 VECA-2VM010B
C10470 uF16 VECA-1CM471B
C16470 uF16 VECA-1CM471B
C1110 uF16 VECA-1CM100B
C1210 uF16 VECA-1CM100B
C13220 uF16 V647-URS1C221MPD1TA
C14100 uF16 VECA-1CM101B
C15100 uF16 VECA-1CM101B
C1947 uF16 VECA-1CM470B
C622.2 uF50 VECA-2AM2R2B
C632.2 uF50 VECA-2AM2R2B
C212.2 uF50 VECA-2AM2R2B
C222.2 uF50 VECA-2AM2R2B
C34220 uF16 V647-URS1C221MPD1TA
C350.1 F5.5 V80-FYD0H104ZF or 80-FG0H104ZF

ROM Details (credit: MAME)

Due to the variety of ROM boards used across the System16B games, consult the MAME Driver for game-specific ROM assignments.

When replacing a mask ROM with an EPROM, consult this reference chart by twistedsymphony:

Protection Mechanisms

Sega implemented four different protection mechanisms to prevent arcade operators from swapping one System 16B game to another by installing a new set of ROM chips. Games may implement one or more of these protection mechanisms:

  • 68000 Main CPU Encryption
  • Z80 Sound CPU Encryption
  • Intel i875 Memory Control Unit
  • ROM Board variants

Main CPU Encryption (credit: Eduardo Cruz)

Some games encrypt the 68000 code executed by the Main CPU. Those games use a Hitachi FD1094 CPU, which is a Motorolla 68000 clone with a RAM-based decryption key that matches up with the encryption key used on Main CPU ROMs. If the battery that maintains the RAM storing the decryption key dies then the key is lost and the main CPU will crash at boot – the game will sit at a black screen at boot (“suicide”).

If the battery hasn’t died yet, it can be replaced while maintaining the onboard decryption key if power is maintained to the supply pins with a bench PSU while the old battery is desoldered and a new battery is soldered in.

If the battery has died, you have two options:

Source: Eduardo Cruz

Sound CPU Encryption

Similar to the Main CPU, some games utilize an NEC MC-8123B CPU with an onboard decryption key maintained by battery-backed RAM, paired with encrypted Sound CPU code in the ROMs. If the battery inside the CPU dies, the decryption key is lost, the Sound CPU will crash at boot, and the game won’t have sound.

Solutions are identical to an encrypted Main CPU – if the battery hasn’t died yet, it can be replaced by removing the cover, powering the battery leads from a bench PSU, and soldering in a fresh battery. If the battery has died, swap the NEC CPU out for a standard 4.0 Mhz Z80 CPU, swap the Sound CPU ROMs out for decrypted equivalent EPROMs, and the game’s sound should then function again.

Source: Eduardo Cruz

Intel i875 Memory Control Unit (MCU) Protection

Some games utilized an Intel i875 MCU (or clone) that sits between the CPUs and specifically encrypted ROMs that “scrambles” the memory addressing such that a game won’t function without a matching ROM set and MCU.

Decrypted ROM sets for every System 16B game are available so that the MCU socket can be left empty on the board, and the encrypted mask ROMs can be swapped with decrypted EPROMs to get a fully-functional game.

ROM Board Variants

As mentioned above, Sega utilized four different ROM board variants with the System 16B hardware across the game library. Assuming that no other protection mechanisms were in place, an arcade operator still wouldn’t be able to change one System 16B game over to another one by swapping ROMs unless the same ROM board was used with both games.

MAME documents the ROM board and configuration settings (if applicable) on the ROM board for each game.

Schematics & Datasheets

Original Sega schematics are available for System 16B, but there seem to be discrepancies between them and the real hardware.

Sega System 16B Schematics

Charles MacDonald wrote up extensive documentation on System 16B’s operations.

Charles MacDonald System 16B Hardware Notes

Jotego authored an FPGA core for System 16B and created a set of schematics for the 315-5195 custom IC in the process.

Jotego 315-5195 Schematics (Link)
Jotego 315-5195 Schematics (PDF)

Additional Resources

MAME Sega System 16B Driverhttps://github.com/mamedev/mame/blob/master/src/mame/sega/segas16b.cpp
Eduardo Cruz: Deconstructing Sega’s System 16 Securityhttps://arcadehacker.blogspot.com/2019/10/deconstructing-sega-system16-security-part1.html

https://arcadehacker.blogspot.com/2020/04/deconstructing-segas-system-16-security-part2.html
Eduardo Cruz: Sega System 16 / 18 / 24 / X Security Programming Guidehttp://arcadehacker.blogspot.com/2018/12/sega-system16-security-programming-guide.html

https://github.com/ArcadeHacker/ArcadeHacker_Sega_Hitachi
Exodus Emulatorhttp://techdocs.exodusemulator.com/Arcade/SegaSystem16/index.html
SOLID-orange – Twistedsymphony’s Projectshttp://solid-orange.com/
Jotego System 16B FPGA Corehttps://github.com/jotego/jtcores/tree/master/cores/s16b

Cave CV1000

 Encyclopedia  Comments Off on Cave CV1000
Apr 132024
 
Last Updated: 4/17/2024
Article Credit: ShootTheCore, rtw, buffi, Arcade Otaku Wiki, Alamone, System11, DragonMinded

Overview

The Cave CV1000 PCB has three major revisions: Early CV1000B, Later CV1000-B and CV1000-D.

  • Early CV1000-B
    • Gold plated JAMMA connector
    • 9 Pin connection header mounted on the right side with some boards.
      It is unused with the released games but theoretically could have been used to link two boards together via serial communication since the connector is identical to the serial connector on PC motherboards.
    • P2 connection pin header in the center of the board populated.
  • Later CV1000-B
    • Tin plated JAMMA connector
    • 9 Pin connection header and P2 connection header unpopulated.
  • CV1000-D
    • Tin plated JAMMA Connector
    • Battery for the real-time clock removed
    • SDRAM doubled from 64Mb to 128Mb

The battery in the upper-right corner of the CV1000-B PCB is used to maintain the real-time clock for book keeping purposes. High scores and game settings are stored in the RTC EPROM. The game “Ibara” also displays a clock in one level of the game that matches the board’s clock setting. CV1000-D removed the RTC and battery, so high scores and game settings are stored in NAND instead of EPROM.

Notable ICs

ICFunctionSilkscreen Label
Hitachi SH3Main CPUU5
Yamaha YMZ770AudioU22
Altera Cyclone EP1C12F324C8Graphics RenderingU8
Altera CA011CPLD used for address decoding of the U2 flash, YMZ770 audio and RTC 9701.U13
RTC 9701 (CV1000-B)Real-Time Clock with embedded EPROM for saving board settings and high scoresU10
AD8061Color amplifier for the Red, Green and Blue outputU14, U15, U16

Board Variants

CV1000-D reproductions from Chinese sellers began surfacing in early 2024. These reproduction boards can be distinguished from Cave originals with the following characteristics:

  • The JAMMA connector is gold plated. Although early CV1000-B boards also had gold plating on the JAMMA connector, all original CV1000-D boards had tin plating.
  • Via “pinholes” are not visible on the back of the reproduced board.
  • A Cave serial number sticker is not present.
  • Some of the reproduction boards do not have the P4 header in the center of the board populated.

At this time, it is believed that the reproduction boards run the games identically to the Cave original hardware. The major IC parts (CPU, Graphics FPGA, Audio, etc) are the same.

Board Re-initialization (credit: MAME)

Some games (such as Mushihimesama and Espgaluda II) do not have a high score reset function. Any CV1000 can be reinitialized to the factory default high score and board settings with the following procedure:

  • During boot, hold P1 Right+A+B+C and P2 Left+A+B+C until the startup checks are complete.

Common Issues and Quirks

CV1000 boards draw less power than your average PCB. Be sure to adjust your arcade PSU down when swapping in one of these boards so you don’t inadvertently over-volt the board!

Leaking Large Capacitor

The large capacitor labeled C109 in the upper-left corner that filters power for the sound amplifier often leaks. The part is rated for 2200 uF at 25 V.

Part number MAL216099606E3 has the same dimensions as the original part, while UCX1E222MNS1GS has the same footprint, but a lower height and a more supportive base. Source: System11

Color Amplifier Degradation (credit: System11)

The Red, Green and Blue color amplifiers located at U14, U15 and U16 respectively can degrade over many hours of use, resulting in a pale or incorrectly tinted display. Replacing the AD8061 color amplifier ICs with fresh parts should resolve the issue. Also note that the Service Menu has a brightness adjustment setting that may need to be changed afterwards.

Flash Deterioration (credit: Buffi)

The flash chip at U2 is known to suffer from data corruption, causing glitching in the graphics. The chip model is Samsung K9F1G08U0. The CV1000 does a manufacturer check at startup to make sure the flash chip is a K9F1G08U0, and will reboot if it is not. Buffi worked out a way to remove these checks, allowing the U2 flash chip to be replaced with an equivalent from another manufacturer.
https://github.com/buffis/cv1k_research/tree/main/U2_Replacement

Alamone worked out a way to fix graphics issues from deteriorating flash by comparing CV1000 U2 dumps and generating relocated NAND blocks:
https://github.com/alamone/u2_compare

Stuck Control Inputs

CV1000 uses three sets of twin resistor banks and individual 130nF ceramic capacitors as ESD protection between each player control input and the signal pins 176-208 on the SH3 CPU. If a resistor array becomes damaged then a control input may be “stuck” – always on or always off. It’s also possible for an ESD charge to make it through the ESD protection and fry the input line on SH3 CPU – the only resolution then is to replace the entire CPU. You can check the game’s reading of the control inputs in the Service Menu.

  • Resistor Array with 101 marking – replacement part number: 742C163101JP
  • Resistor Array with 103 marking – replacement part number: 742C163103JP

CPU Stuck in a Boot Loop – Nothing on Screen (credit: DragonMinded)

If the CPU is stuck in a boot loop, the LED at L6 will pulse every second to a darker color. Ensure that the 32.768 Khz crystal located at X2 is intact and functioning.

Source: https://gamerepair.info/hardware/37_cave_cv1000

Board Does Not Boot at All (credit: Buffi)

If the EPM7032AE CPLD at location U13 fails then the board will not start up. Buffi has devised a replacement bitstream that can be programmed onto a replacement CPLD to revive the board.
https://www.arcade-projects.com/threads/u13-replacement-for-cave-cv-1000-pcb-repair.17007/
https://github.com/buffis/cv1k_research/tree/main/U13_Research

Protection Mechanisms

Game resources are stored on flash chips located at U2, U4, U23 and U24. The U2 and U4 chips can be accessed by the on-board JTAG connector, but U23 and U24 are not on the JTAG bus and can only be rewritten if the chips are physically desoldered and removed from the board.

The U2 flash is a Samsung K9F1G08U0. The games check the flash ID at boot and if it doesn’t match the expected flash model then the game reboots.

Capacitor List

LocationCapacitanceVoltageTypePart No.
C1092200 uF25 VRadialMAL216099606E3
C121100 uF6.3 VRadial
C11439 uF16 VRadial
C12239 uF16 VRadial
C11339 uF16 VRadial
C131100 uF6.3 VRadial
C132100 uF6.3 VRadial
C13339 uF16 VRadial
C139100 uF6.3 VRadial
C140100 uF6.3 VRadial
C14139 uF16 VRadial
C951000 uF16 VRadial
C102100 uF6.3 VRadial
C103100 uF6.3 VRadial
C143100 uF6.3 VRadial

ROM Details (credit: rtw World of Arcades)

ICFunctionSilkscreen Label
MX 29LV160BB (Early boards)
Spansion S29JL03SH70TF102 (Later boards)
Main CPU Code, FPGA bitstream sourceU4
Samsung K9F1G08U0MGraphics AssetsU2
MBM 29DL321 (CV-1000B)
MT 46V16M16 (CV-1000D)
Sound AssetsU23
MBM 29DL321 (CV-1000B)
MT 46V16M16 (CV-1000D)
Sound AssetsU24

Source: rtw World of Arcades

Schematics & Datasheets

Original Cave schematics are unavailable for CV1000.

Buffi collected datasheets on the components used in CV1000.

Additional Resources

MAME CV1000 Driverhttps://github.com/mamedev/mame/blob/master/src/mame/cave/cv1k.cpp
Buffi CV1000 Researchhttps://github.com/buffis/cv1k_research
Buffi CV1000 Blitter Researchhttps://buffis.com/research/cv1000-blitter-research/
Buffi CV1000 Replacing U2 with another NAND Flashhttps://github.com/buffis/cv1k_research/tree/main/U2_Replacement
Buffi CV1000 U13 Reverse Engineering and construction of a compatible bitstreamhttps://github.com/buffis/cv1k_research/tree/main/U13_Research
Buffi Espgaluda 2 Repair of Bad U2 NAND Using JTAGhttps://www.arcade-projects.com/threads/espgaluda-2-cv1000-repair-of-bad-u2-nand-using-jtag.19108/
Buffi Research into CV1000 Blitter performance and behaviorhttps://buffis.com/research/cv1000-blitter-research/
Buffi CV1000 CPU Slowdown investigatedhttps://buffis.com/research/cv1000-cpu-slowdown-investigated/
Buffi More CV1000 Researchhttps://buffis.com/research/more-cv1000-research-now-featuring-clipping/
rtw World of Arcadeshttp://www.world-of-arcades.net/Cave/Hardware_SH3/Hardware.htm
System 11 Blog: Cave CV1000 Color ProblemsOffline – Archived on 12/11/2023
Arcade Otaku: Cave CV1000https://wiki.arcadeotaku.com/w/CAVE_CV1000
Gamerepair.infohttps://gamerepair.info/hardware/37_cave_cv1000
Nicole Express: A Last Gasp of 2Dhttps://nicole.express/2022/games-made-in-a-cave.html
Cave CV1000 PCB Serial Number Codes Explainedhttps://cave-stg.com/forum/index.php?topic=1754.0

Irem M92

 Encyclopedia  Comments Off on Irem M92
Apr 132024
 
Last Updated: 4/19/2024
Article Credit: ShootTheCore, wickerwaka, ekorz, System11, Apocalypse

Main Board

The Main Board is largely identical across all Irem M92 games. It is labeled either M92-A-A or M92-A-B.

Early boards have less Object RAM (16K) installed at locations IC43 & IC44 than later boards (64K) – selectable by jumper J2 – but all M92 games are confirmed to function correctly with the 16K board. Thus, the difference in RAM was likely determined by parts cost at the time of manufacture.

Notable ICs

ICFunctionSilkscreen LabelLocation
NEC D71036L V33Main CPUH8
Nanao GA20Sound FX SamplesIC32 GA20B6
Nanao GA21SRAM DMA and Address Generation for GA22IC42 GA21M7
Nanao GA22Graphics RenderingIC63 GA22M10
YM2151FM Sound ChipIC33C6
YM3014Sound D/A ConverterIC208 YM3014C5

Secondary Board

The Secondary Board layout varies across the M92 games.

The Sound CPU resides on the secondary board and utilizes an encryption mechanism – see “Copy Protection” below.

GameBoard ModelSound CPU ModelNotes
Blade Master / Cross BladesM92-B-A
M92-D-A
Dream Soccer 94
GunForceM92-B-A
GunForce II / GeoStorm
HookM92-D-A
In The Hunt / Kaitei DaisensouM92-E-B
Lethal Thunder / Thunder BlasterM92-C-B
Major Title 2 / The Irem Skins GameM92-B-FOnly M92 game to utilize an EPROM for saving scores.
Mystic Riders / Gun HokiM92-B-B
Ninja Baseball Bat Man / Yakyuu Kakutou League-ManM92-F-A
M92-Z-C
Perfect Soldiers / Superior Soldiers
R-Type LeoM92-C-N
Undercover CopsM92-E-B

Notable ICs

ICFunctionSilkscreen Label
Nanao 08J27261A1 V35Sound CPUIC10
Nanao GA23ROM Addressing (Assumed)IC23 08J27504A1

Board Variants

M92 boards manufactured for the Korean region have several noticeable differences from boards manufactured for other territories:

  • The green silkscreen is a lighter shade of green.
  • The JAMMA connector does not have a key notch.
  • SRAM ICs on M92 boards for other regions are manufactured by NEC whereas on the Korean boards they are manufactured by Hyundai and Goldstar.
  • The amplifier heatsink is physically smaller, and is colored silver rather than black.
  • One or both boards may be missing markings for the board type on the silkscreen.
  • A metal serial number tag is not present in the upper-right corner of the A Board.

There are also single-board bootlegs of several M92. They are much smaller than original M92 boards and thus are easily distinguished. Compared to the original games, bootlegs often omit animation frames, shorten the music tracks and gameplay slows down more frequently.

Common Issues and Quirks

  • The factory-installed capacitors are colored green or brown. The ELNA brand brown-colored capacitors are notorious for leaking and should be replaced ASAP.
  • Video output is darker than average with this hardware.

Protection Mechanisms

The Nanao 08J27261A1 V35 Sound CPU on the B Board enforces a security scheme where each game’s sound CPU code is encrypted in ROM and then decrypted by a key specific to the model of CPU. Thus, if the game ROMs are swapped to another game without decrypting the sound CPU code of the new game and re-encrypting the code to match the encryption scheme of the old game, the sound CPU will crash and the game won’t have sound.

Changing jumpers J1 and J6 adjacent to the Sound CPU from “S” to “N” disables the decryption mechanism and allows the CPU to run decrypted Sound CPU code directly.

Capacitor List (credit: System11)

Main Board

LocationCapacitanceVoltagePart No.
C2011 uF50 VECA-2EM010
C202470 uF25 VECA-1EM471
C203220 uF10 VECA-1AM221B
C20422 uF25 VECA-1EM220I
C209100 uF25 VECA-1EM101
C2101 uF50 VECA-2EM010
C21347 uF16 VECA-1CM470I
C2151 uF50 VECA-2EM010
C2161 uF50 VECA-2EM010
C2171 uF50 VECA-2EM010
C2181 uF50 VECA-2EM010
C2191 uF50 VECA-2EM010
C236100 uF25 VECA-1EM101

Resistor List (credit: fuzzbuddy)

  • R201 – 1KOhm
  • R203 – 100KOhm
  • R205 – 4.7KOhm
  • R208 – 4.7KOhm
  • R209 – 2.7KOhm
  • R211 – 10KOhm
  • R213 – 10KOhm

ROM Details (credit: MAME Source, ekorz)

LabelLocationEPROM Part No.Function
H0B Board27C020 (256kb)Main CPU
L0B Board27C020 (256kb)Main CPU
H1B Board27C020 (256kb)Main CPU
L1B Board27C020 (256kb)Main CPU
SH0B Board27C512 (64kb)Sound CPU
SL0B Board27C512 (64kb)Sound CPU
C0B Board27C040 (512kb)Background Tiles
C1B Board27C040 (512kb)Background Tiles
C2B Board27C040 (512kb)Background Tiles
C3B Board27C040 (512kb)Background Tiles
000B Board27C080 (1024kb)Sprites
010B Board27C080 (1024kb)Sprites
020B Board27C080 (1024kb)Sprites
030B Board27C080 (1024kb)Sprites
DAB Board27C040 (512kb)Audio Samples

Schematics (credit: wickerwaka)

Original Irem schematics are unavailable for M92.
wickerwaka developed a MiSTer FPGA core for the Irem M92 platform, and generated the following schematics (Source):

Additional Resources

MAME M92 Driver Source Codehttps://github.com/libretro/mame2016-libretro/blob/master/src/mame/drivers/m92.cpp
wickerwaka MiSTer FPGA Sourcehttps://github.com/wickerwaka/Arcade-IremM92_MiSTer/tree/main
System 11 Blog – Irem Games and Leaking CapacitorsWebsite is offline – PDF Archived on August 2017