MUP: Difference between revisions

From MAMEDEV Wiki
No edit summary
No edit summary
(48 intermediate revisions by 3 users not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__
This page is designed to allow for a quick look over all the drivers with a GAME_UNEMULATED_PROTECTION flag (but still working) by giving, as much as possible, an idea on the amount of effort needed to fix them.
This page is designed to allow for a quick look over all the drivers with a MACHINE_UNEMULATED_PROTECTION flag (but still working) by giving, as much as possible, an idea on the amount of effort needed to fix them.


== [http://mamedev.org/source/src/mame/drivers/alpha68k.c.html alpha68k] ==
''' sbasebal ''' - MCU simulation is incomplete. See driver for notes.


''' sstingry ''' - Super Stingray MCU irq controls timer speed, needs the MCU to be hooked up.
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/alinvade.cpp alinvade] ==
16 bytes are protected in the c*** range (see notes on top of the driver. Game seems to work fine even without protection simulation, though.


== [http://mamedev.org/source/src/mame/drivers/atarig42.c.html atarig42] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/alpha68k.cpp alpha68k] ==
''' sbasebal and clone ''' - MCU simulation is incomplete (calculated pitcher launching speed). See driver for notes.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/atarig42.cpp atarig42] ==
''' roadriot, roadrioto''' - ASIC65 for Road Riot not quite perfect.
''' roadriot, roadrioto''' - ASIC65 for Road Riot not quite perfect.


== [http://mamedev.org/source/src/mame/drivers/atarigt.c.html atarigt] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/atarigt.cpp atarigt] ==
''' primrage, primrage20 ''' - Are pretty close, but not quite perfect. There are some sprite offsetting issues still and I'm not 100% sure the gameplay is all there.  
''' primrage, primrage20 ''' - Are pretty close, but not quite perfect. There are some sprite offsetting issues still and I'm not 100% sure the gameplay is all there.  


''' tmek and clones ''' - Are interesting. We have a prototype version that plays well, but has no matching sound ROMs so you don't get sound. Then we have a non-prototype version that doesn't play correctly, but has fine sound. In theory, it might be possible to see the decrypted data in the prototype version and understand the process, but not much work has happened here.
''' tmek and clones ''' - Are interesting. We have a prototype version that plays well, but has no matching sound ROMs so you don't get sound. Then we have a non-prototype version that doesn't play correctly, but has fine sound. In theory, it might be possible to see the decrypted data in the prototype version and understand the process, but not much work has happened here.


== [http://mamedev.org/source/src/mame/drivers/cdi.c.html cdi] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/chqflag.cpp chqflag] ==
General CDI emulation suffers from incomplete simulation of the SLAVE and CDIC MCUs.  Decapping would help.
Opponent car-to-car collisions direction are wrong.
''' quizrd12, quizrd17, quizrd22 '' - The protection has been beaten, but a decap of the MCU would permit real protection emulation.


== [http://mamedev.org/source/src/mame/drivers/coinmstr.c.html coinmstr] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/clshroad.cpp clshroad] ==
''' firebatl ''' - Protection, possibly provided by the Z4 device at A8.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/coinmstr.cpp coinmstr] ==
''' quizmstr ''' -
''' quizmstr ''' -


== [http://mamedev.org/source/src/mame/drivers/ddenlovr.c.html ddenlovr] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/cvs.cpp cvs] ==
''' raiders and clone ''' - Protection is patched out instead of simulated.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/ddenlovr.cpp ddenlovr] ==
''' quiz365, quiz365t ''' - Needs better simulation of the protection device.
''' quiz365, quiz365t ''' - Needs better simulation of the protection device.


== [http://mamedev.org/source/src/mame/drivers/dec0.c.html dec0] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/equites.cpp equites] ==
''' birdtry ''' - Better simulation / dump of the i8751 MCU.


== [http://mamedev.org/source/src/mame/drivers/dec32.c.html deco32] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/funworld.cpp funworld] ==
''' fghthist and clones ''' - Simulation of the protection device is incomplete.
''' mongolnw, soccernw ''' - Need to hook the missing microcontroller (TSC87C52-16CB) to emulate this game properly.


== [http://mamedev.org/source/src/mame/drivers/flstory.c.html flstory] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/galivan.cpp galivan] ==
''' onna34ra, onna34ro, rumba ''' - Better simulation / dump of the M68705 MCU.
 
== [http://mamedev.org/source/src/mame/drivers/galivan.c.html galivan] ==
''' ninjemak and clones ''' - Likely missing MCU emulation/simulation for displaying text layer for Ninja Emaki. There is no text displayed when you enter Service Mode when there should be.
''' ninjemak and clones ''' - Likely missing MCU emulation/simulation for displaying text layer for Ninja Emaki. There is no text displayed when you enter Service Mode when there should be.


== [http://mamedev.org/source/src/mame/drivers/goindol.c.html goindol] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/goindol.cpp goindol] ==
''' goindol, goindolk, goindolu ''' - Currently protection is simulated with rom patches.
''' goindol, goindolk, goindolu ''' - Currently protection is simulated with rom patches.


== [http://mamedev.org/source/src/mame/drivers/goldnpkr.c.html goldnpkr] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/gstriker.cpp gstriker] ==
''' falcnwlda ''' - Epoxy block.
''' twcup94, twcup94a ''' - MCU simulation isn't complete. MCU should be dumped.


== [http://mamedev.org/source/src/mame/drivers/gsword.c.html gsword] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/gsword.cpp gsword] ==
''' josvolly ''' - Missing MCU dump.
''' josvolly ''' - Missing MCU dump.


== [http://mamedev.org/source/src/mame/drivers/igs017.c.html igs017] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/igs017.cpp igs017] ==
''' tjsb ''' - Protection is worked around, needs simulation.
''' tjsb ''' - Protection is worked around, needs simulation.


== [http://mamedev.org/source/src/mame/drivers/konamigx.c.html konamigx] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/jalmah.cpp jalmah] ==
''' salmndr2, salamndr2a ''' - ESC protection emulation incomplete (ships in attract mode).
''' daireika, mjzoomin, urashima ''' - unfinished m68k snippets.
 
''' kakumei2 ''' - Uses protected RNG.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/konamigx.cpp konamigx] ==
''' salmndr2 and clones, sexyparo and clones ''' - ESC protection emulation incomplete (ships in attract mode).


''' winspike, winspikej ''' - Incomplete simulation of the protection provided by a Xilinx FPGA.
''' winspike, winspikej ''' - Incomplete simulation of the protection provided by a Xilinx FPGA.


== [http://mamedev.org/source/src/mame/drivers/lordgun.c.html lordgun] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/magtouch.cpp magtouch] ==
''' lordgun ''' - Protection emulation instead of patching the roms.
Protection has been patched out. Needs proper emulation.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/mainevt.cpp mainevt] ==
''' devstors and clones ''' - Has player-trench collision detection issues, player isn't supposed to go through them.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/markham.cpp markham] ==
''' banbam, pettanp ''' - Protection MCU.. seems to be a data (or code?) ROM for it tho.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/mazerbla.cpp mazerbla] ==
''' mazerbla and clone ''' - They use a custom video controller which isn't fully understood.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/merit.cpp merit] ==
''' couple and clones ''' - Currently need a kludge because of undumped CRT-209 modules.


== [http://mamedev.org/source/src/mame/drivers/merit.c.html merit] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/mil4000.cpp mil4000] ==
''' couple, couplei, couplep ''' -
''' chewheel ''' - MCU is only partially simulated.


== [http://mamedev.org/source/src/mame/drivers/msisaac.c.html msisaac] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/msisaac.cpp msisaac] ==
''' msisaac ''' - Missing M68705 MCU dump.
''' msisaac ''' - Missing M68705 MCU dump.


== [http://mamedev.org/source/src/mame/drivers/mpu4.c.html mpu4] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/namcond1.cpp namcond1] ==
Protection PAL "characteriser" isn't emulated properly.
''' abcheck ''' -


== [http://mamedev.org/source/src/mame/drivers/namcond1.c.html namcond1] ==
''' ncv2, ncv2j ''' - MCU emulation is imperfect.
''' ncv2, ncv2j ''' -


== [http://mamedev.org/source/src/mame/drivers/namcos23.c.html namcos23] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/nemesis.cpp nemesis] ==
''' gradiusb, twinbeeb ''' - Bubble System MCU is imperfectly simulated.


== [http://mamedev.org/source/src/mame/drivers/nmk16.c.html nmk16] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/ninjakd2.cpp ninjakd2] ==
''' hachamf ''' - MCU simulation *might* be wrong/incorrect.
''' robokid and clones ''' - Random crashes probably related to protection.


== [http://mamedev.org/source/src/mame/drivers/pacman.c.html pacman] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/nmk16.cpp nmk16] ==
''' hachamf, tdragon1 ''' - MCU simulation not hooked up.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/pacman.cpp pacman] ==
''' alibaba, alibabab ''' - Mistery items in Ali Baba don't work correctly because of protection.
''' alibaba, alibabab ''' - Mistery items in Ali Baba don't work correctly because of protection.


== [http://mamedev.org/source/src/mame/drivers/segas16a.c.html segas16a] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/pcat_dyn.cpp pcat_dyn] ==
''' dumpmtmt, quartet, quarteta ''' - i8751 MCU dumps needed: the MCUs clearly do more than what we are simulating.
''' toursol ''' - The protection has been patched out instead of emulated.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/pgm.cpp pgm] ==
''' drgw3 and clones ''' - DMA protection device non completely emulated (DMA mode transfering 68k code to RAM is not emulated).
 
''' dwpc''' - Missing proper ARM internal ROM dump, currently hacked, needs reset before working.
 
''' kov, kov115, kov100, kovplus, kovplusa, kovsgqyz, kovsgqyza, kovsgqyzb ''' - Arm is simulated, rom can be extracted and emulated.
 
''' olds, olds100, olds100a ''' - Somewhat playable, but protection simulation isn't perfect yet.


== [http://mamedev.org/source/src/mame/drivers/seta.c.html seta] ==
==[http://github.com/mamedev/mame/blob/master/src/mame/drivers/qix.cpp qix]==
''' crazyfgt ''' -
''' kram3 ''' - Incompletely understood encryption.


== [http://mamedev.org/source/src/mame/drivers/strnskil.c.html strnskil] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/segas16a.cpp segas16a] ==
''' banbam, pettanp ''' - Protection MCU.. seems to be a data (or code?) ROM for it tho.
''' dumpmtmt ''' - i8751 MCU dump needed: the MCU clearly does more than what's simulated.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/seta.cpp seta] ==
''' crazyfgt ''' - A protection check at boot is patched out instead of emulated.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/snowbros.cpp snowbros] ==
''' yutnori ''' - Protection seems to handle sound.
 
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/tsamurai.cpp tsamurai] ==
''' vsgongf ''' -


== [http://mamedev.org/source/src/mame/drivers/targeth.c.html targeth] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/vamphalf.cpp vamphalf] ==
''' targeth, targetha ''' - Needs DS5002FP MCU with external battery ram (32k).
''' wivernwg and clones ''' - They give a protection error after a certain number of plays / coins.


== [http://mamedev.org/source/src/mame/drivers/tmnt.c.html tmnt] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/williams.cpp williams] ==
''' glfgreat, glfgreatj ''' -
''' mayday and clones ''' - These games have an unemulated protection chip of some sort which is hacked around in /machine/williams.cpp "mayday_protection_r" function.


== [http://mamedev.org/source/src/mame/drivers/wink.c.html wink] ==
== [http://github.com/mamedev/mame/blob/master/src/mame/drivers/wink.cpp wink] ==
''' wink, winka ''' - Protection module has been reverse engineered but it's still missing something.
''' wink, winka ''' - Protection module has been reverse engineered but it's still missing something.

Revision as of 05:26, 13 August 2020

This page is designed to allow for a quick look over all the drivers with a MACHINE_UNEMULATED_PROTECTION flag (but still working) by giving, as much as possible, an idea on the amount of effort needed to fix them.


alinvade

16 bytes are protected in the c*** range (see notes on top of the driver. Game seems to work fine even without protection simulation, though.

alpha68k

sbasebal and clone - MCU simulation is incomplete (calculated pitcher launching speed). See driver for notes.

atarig42

roadriot, roadrioto - ASIC65 for Road Riot not quite perfect.

atarigt

primrage, primrage20 - Are pretty close, but not quite perfect. There are some sprite offsetting issues still and I'm not 100% sure the gameplay is all there.

tmek and clones - Are interesting. We have a prototype version that plays well, but has no matching sound ROMs so you don't get sound. Then we have a non-prototype version that doesn't play correctly, but has fine sound. In theory, it might be possible to see the decrypted data in the prototype version and understand the process, but not much work has happened here.

chqflag

Opponent car-to-car collisions direction are wrong.

clshroad

firebatl - Protection, possibly provided by the Z4 device at A8.

coinmstr

quizmstr -

cvs

raiders and clone - Protection is patched out instead of simulated.

ddenlovr

quiz365, quiz365t - Needs better simulation of the protection device.

equites

funworld

mongolnw, soccernw - Need to hook the missing microcontroller (TSC87C52-16CB) to emulate this game properly.

galivan

ninjemak and clones - Likely missing MCU emulation/simulation for displaying text layer for Ninja Emaki. There is no text displayed when you enter Service Mode when there should be.

goindol

goindol, goindolk, goindolu - Currently protection is simulated with rom patches.

gstriker

twcup94, twcup94a - MCU simulation isn't complete. MCU should be dumped.

gsword

josvolly - Missing MCU dump.

igs017

tjsb - Protection is worked around, needs simulation.

jalmah

daireika, mjzoomin, urashima - unfinished m68k snippets.

kakumei2 - Uses protected RNG.

konamigx

salmndr2 and clones, sexyparo and clones - ESC protection emulation incomplete (ships in attract mode).

winspike, winspikej - Incomplete simulation of the protection provided by a Xilinx FPGA.

magtouch

Protection has been patched out. Needs proper emulation.

mainevt

devstors and clones - Has player-trench collision detection issues, player isn't supposed to go through them.

markham

banbam, pettanp - Protection MCU.. seems to be a data (or code?) ROM for it tho.

mazerbla

mazerbla and clone - They use a custom video controller which isn't fully understood.

merit

couple and clones - Currently need a kludge because of undumped CRT-209 modules.

mil4000

chewheel - MCU is only partially simulated.

msisaac

msisaac - Missing M68705 MCU dump.

namcond1

abcheck -

ncv2, ncv2j - MCU emulation is imperfect.

nemesis

gradiusb, twinbeeb - Bubble System MCU is imperfectly simulated.

ninjakd2

robokid and clones - Random crashes probably related to protection.

nmk16

hachamf, tdragon1 - MCU simulation not hooked up.

pacman

alibaba, alibabab - Mistery items in Ali Baba don't work correctly because of protection.

pcat_dyn

toursol - The protection has been patched out instead of emulated.

pgm

drgw3 and clones - DMA protection device non completely emulated (DMA mode transfering 68k code to RAM is not emulated).

dwpc - Missing proper ARM internal ROM dump, currently hacked, needs reset before working.

kov, kov115, kov100, kovplus, kovplusa, kovsgqyz, kovsgqyza, kovsgqyzb - Arm is simulated, rom can be extracted and emulated.

olds, olds100, olds100a - Somewhat playable, but protection simulation isn't perfect yet.

qix

kram3 - Incompletely understood encryption.

segas16a

dumpmtmt - i8751 MCU dump needed: the MCU clearly does more than what's simulated.

seta

crazyfgt - A protection check at boot is patched out instead of emulated.

snowbros

yutnori - Protection seems to handle sound.

tsamurai

vsgongf -

vamphalf

wivernwg and clones - They give a protection error after a certain number of plays / coins.

williams

mayday and clones - These games have an unemulated protection chip of some sort which is hacked around in /machine/williams.cpp "mayday_protection_r" function.

wink

wink, winka - Protection module has been reverse engineered but it's still missing something.