MUP: Difference between revisions
No edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/alpha/alpha68k.cpp alpha/alpha68k] == | ||
''' sbasebal and clone ''' - MCU simulation is incomplete (calculated pitcher launching speed). See driver for notes. | ''' sbasebal and clone ''' - MCU simulation is incomplete (calculated pitcher launching speed). See driver for notes. | ||
''' skysoldr and clone ''' - MCU simulation is incomplete (unemulated boss time out behaviour). | ''' skysoldr and clone ''' - MCU simulation is incomplete (unemulated boss time out behaviour). | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/alpha/meijinsn.cpp meijinsn]== | ||
' | Protection simulation isn't right, there is a problem on the selection screen, it's usually not possible to choose tsume shogi (3 difficulty levels). | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/atari/atarig42.cpp atari/atarig42] == | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/atari/atarig42.cpp atarig42] == | |||
''' roadriot, roadrioto''' - ASIC65 for Road Riot not quite perfect. | ''' roadriot, roadrioto''' - ASIC65 for Road Riot not quite perfect. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/atari/atarigt.cpp atarigt] == | == [http://github.com/mamedev/mame/blob/master/src/mame/atari/atarigt.cpp atari/atarigt] == | ||
''' primrage and clones ''' - 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 and clones ''' - 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://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/cvs/cvs.cpp cvs/cvs] == | ||
''' raiders and clone ''' - Protection is patched out instead of simulated. | ''' raiders and clone ''' - Protection is patched out instead of simulated. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/dynax/ddenlovr.cpp dynax/ddenlovr] == | ||
''' quiz365, quiz365t ''' - Needs better simulation of the protection device. | ''' quiz365, quiz365t ''' - Needs better simulation of the protection device. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/funworld/funworld.cpp funworld] == | == [http://github.com/mamedev/mame/blob/master/src/mame/funworld/funworld.cpp funworld/funworld] == | ||
''' mongolnw, soccernw ''' - Need to hook the missing microcontroller (TSC87C52-16CB) to emulate this game properly. | ''' mongolnw, soccernw ''' - Need to hook the missing microcontroller (TSC87C52-16CB) to emulate this game properly. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/igs/goldstar.cpp igs/goldstar] == | ||
''' flt7_50 and clones ''' - DS2401 protection not completely emulated. | ''' flt7_50 and clones ''' - DS2401 protection not completely emulated. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/igs/igs017.cpp igs/igs017] == | ||
''' lhzb2, slqz2 ''' - IGS022 protection needs more work. | ''' lhzb2, slqz2 ''' - IGS022 protection needs more work. | ||
Line 69: | Line 40: | ||
''' tjsb ''' - Fails the bonus round protection check (if enabled via DSW), see e.g. demo mode. | ''' tjsb ''' - Fails the bonus round protection check (if enabled via DSW), see e.g. demo mode. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/jaleco/jalmah.cpp jalmah] == | == [http://github.com/mamedev/mame/blob/master/src/mame/igs/pgm.cpp igs/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://github.com/mamedev/mame/blob/master/src/mame/jaleco/jalmah.cpp jaleco/jalmah] == | |||
''' daireika, mjzoomin, urashima ''' - unfinished m68k snippets. | ''' daireika, mjzoomin, urashima ''' - unfinished m68k snippets. | ||
''' kakumei2 ''' - Uses protected RNG. | ''' kakumei2 ''' - Uses protected RNG. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/konami/konamigx.cpp konamigx] == | == [http://github.com/mamedev/mame/blob/master/src/mame/kaneko/snowbros.cpp kaneko/snowbros] == | ||
''' yutnori ''' - Protection seems to handle sound. | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/konami/chqflag.cpp konami/chqflag] == | |||
Opponent car-to-car collisions direction are wrong. | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/konami/konamigx.cpp konami/konamigx] == | |||
''' salmndr2 and clones, sexyparo and clones ''' - ESC protection emulation incomplete (ships in attract mode). | ''' salmndr2 and clones, sexyparo and clones ''' - ESC protection emulation incomplete (ships in attract mode). | ||
''' winspike and clones ''' - Incomplete simulation of the protection provided by a Xilinx FPGA. | ''' winspike and clones ''' - Incomplete simulation of the protection provided by a Xilinx FPGA. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/konami/mainevt.cpp konami/mainevt] == | ||
Protection has been | ''' 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/konami/nemesis.cpp konami/nemesis] == | |||
''' gradiusb, twinbeeb ''' - Bubble System MCU is imperfectly simulated. | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/merit/merit.cpp merit/merit] == | |||
''' couple and clones ''' - Currently need a kludge because of not understood CRT-209 modules hookup. | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/midcoin/wink.cpp midcoin/wink] == | |||
''' wink, winka ''' - Protection module has been reverse engineered but it's still missing something. | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/midway/williams.cpp midway/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. | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/misc/alinvade.cpp misc/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://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/misc/astrcorp.cpp misc/astrcorp] == | ||
''' | ''' astoneag, dinodino, hacher, winbingo, zulu ''' - ROM overlay protection is patched for now, need proper implementation. | ||
''' magibomb, magibombe ''' - Protection isn't emulated but they seem to mostly run. | |||
''' | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/misc/coinmstr.cpp misc/coinmstr] == | ||
''' quizmstr ''' - | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/misc/magtouch.cpp misc/magtouch] == | ||
Protection has been patched out. Needs proper emulation. | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/misc/mil4000.cpp mil4000] == | == [http://github.com/mamedev/mame/blob/master/src/mame/misc/mil4000.cpp misc/mil4000] == | ||
''' chewheel ''' - MCU is only partially simulated. | ''' chewheel ''' - MCU is only partially simulated. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/misc/skylncr.cpp misc/skylncr] == | ||
''' | ''' leadera ''' - A protection check is patched out instead of emulated. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/misc/vamphalf.cpp misc/vamphalf] == | |||
''' wivernwg and clones ''' - They give a protection error after a certain number of plays / coins. | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/namco/namcond1.cpp namcond1] == | == [http://github.com/mamedev/mame/blob/master/src/mame/namco/namcond1.cpp namco/namcond1] == | ||
''' abcheck ''' - | ''' abcheck ''' - | ||
''' ncv2, ncv2j ''' - MCU emulation is imperfect. | ''' ncv2, ncv2j ''' - MCU emulation is imperfect. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/namco/namcos10.cpp namcos10] == | == [http://github.com/mamedev/mame/blob/master/src/mame/namco/namcos10.cpp namco/namcos10] == | ||
''' gunbalina, ptblank3 ''' - Decryption algorithm not found yet. | ''' gunbalina, ptblank3 ''' - Decryption algorithm not found yet. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/neogeo/neogeo.cpp neogeo/neogeo] == | ||
''' | ''' sbp ''' - Patches protection, but some problems still remain. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/nichibutsu/clshroad.cpp nichibutsu/clshroad] == | |||
''' firebatl ''' - Protection, possibly provided by the Z4 device at A8. | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/nichibutsu/galivan.cpp nichibutsu/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. | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/nintendo/snesb.cpp nintendo/snesb] == | ||
' | Most games use an MCU which isn't emulated yet. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/nmk/ddealer.cpp nmk/ddealer] == | ||
Undumped MCU, currently simulated. | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/nmk/nmk16.cpp nmk16] == | == [http://github.com/mamedev/mame/blob/master/src/mame/nmk/nmk16.cpp nmk/nmk16] == | ||
''' hachamf, tdragon1 ''' - MCU simulation not hooked up. | ''' hachamf, tdragon1 ''' - MCU simulation not hooked up. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/pacman/pacman.cpp pacman] == | == [http://github.com/mamedev/mame/blob/master/src/mame/pacman/pacman.cpp pacman/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://github.com/mamedev/mame/blob/master/src/mame/pc/pcat_dyn.cpp pcat_dyn] == | == [http://github.com/mamedev/mame/blob/master/src/mame/pc/pcat_dyn.cpp pc/pcat_dyn] == | ||
''' toursol ''' - The protection has been patched out instead of emulated. | ''' toursol ''' - The protection has been patched out instead of emulated. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/sega/segas16a.cpp sega/segas16a] == | ||
''' | ''' dumpmtmt ''' - i8751 MCU dump needed: the MCU clearly does more than what's simulated. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/seta/speedatk.cpp seta/speedatk] == | |||
IOX device is only simulated. | |||
== [http://github.com/mamedev/mame/blob/master/src/mame/stern/mazerbla.cpp stern/mazerbla] == | |||
''' mazerbla and clone ''' - They use a custom video controller which isn't fully understood. | |||
''' | == [http://github.com/mamedev/mame/blob/master/src/mame/suna/goindol.cpp suna/goindol] == | ||
''' goindol, goindolk, goindolu ''' - Currently protection is simulated with ROM patches. | |||
''' | == [http://github.com/mamedev/mame/blob/master/src/mame/sunelectronics/markham.cpp sunelectronics/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/taito/msisaac.cpp taito/msisaac] == | ||
''' msisaac ''' - Missing M68705 MCU dump. | |||
==[http://github.com/mamedev/mame/blob/master/src/mame/taito/qix.cpp qix]== | ==[http://github.com/mamedev/mame/blob/master/src/mame/taito/qix.cpp qix]== | ||
''' kram3 ''' - Incompletely understood encryption. | ''' kram3 ''' - Incompletely understood encryption. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/taito/tsamurai.cpp taito/tsamurai] == | ||
''' vsgongf ''' - | ''' vsgongf ''' - | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/upl/ninjakd2.cpp upl/ninjakd2] == | ||
''' | ''' robokid and clones ''' - Random crashes probably related to protection. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/valadon/bagman.cpp valadon/bagman] == | ||
''' | ''' bagmans3 ''' - There's extra code at 0x5f98 - 0x5fa5 that reads a value from $ed01. It's not clear what lives there. | ||
== [http://github.com/mamedev/mame/blob/master/src/mame/ | == [http://github.com/mamedev/mame/blob/master/src/mame/vsystem/gstriker.cpp vsystem/gstriker] == | ||
''' | ''' twcup94 and clones ''' - MCU simulation isn't complete. MCU should be dumped. |
Revision as of 08:12, 15 September 2023
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.
alpha/alpha68k
sbasebal and clone - MCU simulation is incomplete (calculated pitcher launching speed). See driver for notes.
skysoldr and clone - MCU simulation is incomplete (unemulated boss time out behaviour).
meijinsn
Protection simulation isn't right, there is a problem on the selection screen, it's usually not possible to choose tsume shogi (3 difficulty levels).
atari/atarig42
roadriot, roadrioto - ASIC65 for Road Riot not quite perfect.
atari/atarigt
primrage and clones - 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.
cvs/cvs
raiders and clone - Protection is patched out instead of simulated.
dynax/ddenlovr
quiz365, quiz365t - Needs better simulation of the protection device.
funworld/funworld
mongolnw, soccernw - Need to hook the missing microcontroller (TSC87C52-16CB) to emulate this game properly.
igs/goldstar
flt7_50 and clones - DS2401 protection not completely emulated.
igs/igs017
lhzb2, slqz2 - IGS022 protection needs more work.
mgdh - Game ID check is patched out.
spkrform - Poker game enabling forced with a patch.
tjsb - Fails the bonus round protection check (if enabled via DSW), see e.g. demo mode.
igs/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.
jaleco/jalmah
daireika, mjzoomin, urashima - unfinished m68k snippets.
kakumei2 - Uses protected RNG.
kaneko/snowbros
yutnori - Protection seems to handle sound.
konami/chqflag
Opponent car-to-car collisions direction are wrong.
konami/konamigx
salmndr2 and clones, sexyparo and clones - ESC protection emulation incomplete (ships in attract mode).
winspike and clones - Incomplete simulation of the protection provided by a Xilinx FPGA.
konami/mainevt
devstors and clones - Has player-trench collision detection issues, player isn't supposed to go through them.
konami/nemesis
gradiusb, twinbeeb - Bubble System MCU is imperfectly simulated.
merit/merit
couple and clones - Currently need a kludge because of not understood CRT-209 modules hookup.
midcoin/wink
wink, winka - Protection module has been reverse engineered but it's still missing something.
midway/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.
misc/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.
misc/astrcorp
astoneag, dinodino, hacher, winbingo, zulu - ROM overlay protection is patched for now, need proper implementation.
magibomb, magibombe - Protection isn't emulated but they seem to mostly run.
misc/coinmstr
quizmstr -
misc/magtouch
Protection has been patched out. Needs proper emulation.
misc/mil4000
chewheel - MCU is only partially simulated.
misc/skylncr
leadera - A protection check is patched out instead of emulated.
misc/vamphalf
wivernwg and clones - They give a protection error after a certain number of plays / coins.
namco/namcond1
abcheck -
ncv2, ncv2j - MCU emulation is imperfect.
namco/namcos10
gunbalina, ptblank3 - Decryption algorithm not found yet.
neogeo/neogeo
sbp - Patches protection, but some problems still remain.
nichibutsu/clshroad
firebatl - Protection, possibly provided by the Z4 device at A8.
nichibutsu/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.
nintendo/snesb
Most games use an MCU which isn't emulated yet.
nmk/ddealer
Undumped MCU, currently simulated.
nmk/nmk16
hachamf, tdragon1 - MCU simulation not hooked up.
pacman/pacman
alibaba, alibabab - Mistery items in Ali Baba don't work correctly because of protection.
pc/pcat_dyn
toursol - The protection has been patched out instead of emulated.
sega/segas16a
dumpmtmt - i8751 MCU dump needed: the MCU clearly does more than what's simulated.
seta/speedatk
IOX device is only simulated.
stern/mazerbla
mazerbla and clone - They use a custom video controller which isn't fully understood.
suna/goindol
goindol, goindolk, goindolu - Currently protection is simulated with ROM patches.
sunelectronics/markham
banbam, pettanp - Protection MCU.. seems to be a data (or code?) ROM for it tho.
taito/msisaac
msisaac - Missing M68705 MCU dump.
qix
kram3 - Incompletely understood encryption.
taito/tsamurai
vsgongf -
upl/ninjakd2
robokid and clones - Random crashes probably related to protection.
valadon/bagman
bagmans3 - There's extra code at 0x5f98 - 0x5fa5 that reads a value from $ed01. It's not clear what lives there.
vsystem/gstriker
twcup94 and clones - MCU simulation isn't complete. MCU should be dumped.