Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
07116 Save/Restore Major Always Oct 17, 2018, 13:23 Dec 21, 2018, 01:41
Tester Tafoid View Status Public Platform MAME (Official Binary)
Assigned To galibert Resolution Fixed OS Windows Vista/7/8 (64-bit)
Status [?] Resolved Driver
Version 0.202 Fixed in Version 0.205 Build 64-bit
Fixed in Git Commit Github Pull Request #
Summary 07116: Numerous Drivers: Save State Breakage
Description A number of drivers are not properly saving state anymore when they used to work fine.
Steps To Reproduce I've attached a list of machines which throw a PNG difference when you compare a regular -str 20 run vs an -autosave -str 4/8/12/16/20 (essentially stopping and reloading 5 times). Most of these manifest in a reboot, and extra watchdog or bad rom data being detected in testing. The one I used to a test that reacted on the first -str increment (from -str 4 to -str 8) was PHOENIX.

To verify:
1. Ensure sta/phoenix/auto.sta does not exist
2. mame64 phoenix -autosave -str 4
3. mame64 phoenix -autosave -str 8

Normally, the machine will continue booting and displaying the demonstration scree/play. But, in this instance, the continuation of the -autosave causes the machine to start over.
Additional Information The breakage is related to emunum changes and other memory changes in this commit:
https://github.com/mamedev/mame/commit/a704ed7b1b121c3bcff52d49bff8372360fe907c

The list of detected breakage (with snapshot comparisons of -str 20 and -autosave -str 20 staggered) is:
1942.cpp - 1942
1942.cpp - 1942a
1942.cpp - 1942abl
1942.cpp - 1942b
1942.cpp - 1942h
1942.cpp - 1942p
1942.cpp - 1942w
20pacgal.cpp - 20pacgal
20pacgal.cpp - 20pacgalr0
20pacgal.cpp - 20pacgalr1
20pacgal.cpp - 20pacgalr2
20pacgal.cpp - 20pacgalr3
20pacgal.cpp - 20pacgalr4
8080bw.cpp - invmultis1a
8080bw.cpp - invmultis2a
albazg.cpp - yumefuda
aliens.cpp - aliens
aliens.cpp - aliens2
aliens.cpp - aliens3
aliens.cpp - aliensa
aliens.cpp - aliensj
aliens.cpp - aliensj2
aliens.cpp - aliensu
angelkds.cpp - angelkds
argus.cpp - argus
argus.cpp - valtric
asteroid.cpp - astdelux1
astrocde.cpp - profpac
atarisy2.cpp - paperboy
atarisy2.cpp - paperboyr1
atarisy2.cpp - paperboyr2
balsente.cpp - gimeabrk
balsente.cpp - grudge
balsente.cpp - grudgep
balsente.cpp - nametune
balsente.cpp - nametune2
balsente.cpp - nstocker
balsente.cpp - nstocker2
balsente.cpp - rescraid
balsente.cpp - rescraida
balsente.cpp - snakepit
balsente.cpp - snakepit2
balsente.cpp - triviabb
balsente.cpp - triviaes
balsente.cpp - triviag2
balsente.cpp - triviasp
balsente.cpp - triviayp
battlnts.cpp - thehustl
battlnts.cpp - thehustlj
bfm_sc1.cpp - sc1armad
bfm_sc1.cpp - sc1barcd
bfm_sc1.cpp - sc1barcda
bfm_sc1.cpp - sc1btbc
bfm_sc1.cpp - sc1calyp
bfm_sc1.cpp - sc1carro
bfm_sc1.cpp - sc1ccoin
bfm_sc1.cpp - sc1cdm
bfm_sc1.cpp - sc1cexpl
bfm_sc1.cpp - sc1chain
bfm_sc1.cpp - sc1china
bfm_sc1.cpp - sc1chinaa
bfm_sc1.cpp - sc1chinaap
bfm_sc1.cpp - sc1chinab
bfm_sc1.cpp - sc1chinabp
bfm_sc1.cpp - sc1chinap
bfm_sc1.cpp - sc1chqfl
bfm_sc1.cpp - sc1cl65a
bfm_sc1.cpp - sc1cl65ap
bfm_sc1.cpp - sc1cl65b
bfm_sc1.cpp - sc1cl65bp
bfm_sc1.cpp - sc1cl65cp
bfm_sc1.cpp - sc1clbdy
bfm_sc1.cpp - sc1clbdya
bfm_sc1.cpp - sc1clbrn
bfm_sc1.cpp - sc1clbsp
bfm_sc1.cpp - sc1clbtm
bfm_sc1.cpp - sc1clbtma
bfm_sc1.cpp - sc1clbw
bfm_sc1.cpp - sc1clbwa
bfm_sc1.cpp - sc1clbxp
bfm_sc1.cpp - sc1clbxpa
bfm_sc1.cpp - sc1clins
bfm_sc1.cpp - sc1clinsc
bfm_sc1.cpp - sc1clinsd
bfm_sc1.cpp - sc1count
bfm_sc1.cpp - sc1counta
bfm_sc1.cpp - sc1countap
bfm_sc1.cpp - sc1countp
bfm_sc1.cpp - sc1crzyc
bfm_sc1.cpp - sc1crzyca
bfm_sc1.cpp - sc1cscl
bfm_sc1.cpp - sc1cscla
bfm_sc1.cpp - sc1cshat
bfm_sc1.cpp - sc1cshata
bfm_sc1.cpp - sc1cshatb
bfm_sc1.cpp - sc1cshatc
bfm_sc1.cpp - sc1cshatf
bfm_sc1.cpp - sc1cshatg
bfm_sc1.cpp - sc1cshati
bfm_sc1.cpp - sc1cshcda
bfm_sc1.cpp - sc1cshin
bfm_sc1.cpp - sc1cshwz
bfm_sc1.cpp - sc1cshwzb
bfm_sc1.cpp - sc1cshwze
bfm_sc1.cpp - sc1cshwzf
bfm_sc1.cpp - sc1cwcl
bfm_sc1.cpp - sc1dago
bfm_sc1.cpp - sc1days
bfm_sc1.cpp - sc1daysa
bfm_sc1.cpp - sc1dblch
bfm_sc1.cpp - sc1disc
bfm_sc1.cpp - sc1dream
bfm_sc1.cpp - sc1driv
bfm_sc1.cpp - sc1driva
bfm_sc1.cpp - sc1drivb
bfm_sc1.cpp - sc1drivc
bfm_sc1.cpp - sc1funh
bfm_sc1.cpp - sc1funha
bfm_sc1.cpp - sc1gslam
bfm_sc1.cpp - sc1gtime
bfm_sc1.cpp - sc1happy
bfm_sc1.cpp - sc1hipt
bfm_sc1.cpp - sc1hipta
bfm_sc1.cpp - sc1kings
bfm_sc1.cpp - sc1linxa
bfm_sc1.cpp - sc1linxp
bfm_sc1.cpp - sc1lotus
bfm_sc1.cpp - sc1lotusa
bfm_sc1.cpp - sc1manha
bfm_sc1.cpp - sc1mast
bfm_sc1.cpp - sc1mist
bfm_sc1.cpp - sc1orac
bfm_sc1.cpp - sc1pwrl
bfm_sc1.cpp - sc1rain
bfm_sc1.cpp - sc1rose
bfm_sc1.cpp - sc1shan
bfm_sc1.cpp - sc1sir
bfm_sc1.cpp - sc1sirb
bfm_sc1.cpp - sc1spcta
bfm_sc1.cpp - sc1spit
bfm_sc1.cpp - sc1ster
bfm_sc1.cpp - sc1strk
bfm_sc1.cpp - sc1supfl
bfm_sc1.cpp - sc1tiara
bfm_sc1.cpp - sc1torna
bfm_sc1.cpp - sc1tri
bfm_sc1.cpp - sc1tria
bfm_sc1.cpp - sc1triap
bfm_sc1.cpp - sc1trib
bfm_sc1.cpp - sc1tribp
bfm_sc1.cpp - sc1typ
bfm_sc1.cpp - sc1typp
bfm_sc1.cpp - sc1ult
bfm_sc1.cpp - sc1vent
bfm_sc1.cpp - sc1voy
bfm_sc1.cpp - sc1voya
bfm_sc1.cpp - sc1vsd
bfm_sc1.cpp - sc1winfl
bfm_sc1.cpp - sc1winst
bfm_sc1.cpp - sc1winstp
bfm_sc1.cpp - sc1wof
bfm_sc1.cpp - sc1wofa
bfm_sc1.cpp - sc1wofb
bfm_sc1.cpp - sc1wud
bfm_sc1.cpp - sc1zep
bfm_sc2.cpp - sc2brkfs1p
bfm_sc2.cpp - sc2brkfs3
bfm_sc2.cpp - sc2brkfs4p
bfm_sc2.cpp - sc2brkfsm1
bfm_sc2.cpp - sc2brkfsm2
bfm_sc2.cpp - sc2casr1
bfm_sc2.cpp - sc2casr1p
bfm_sc2.cpp - sc2casr2
bfm_sc2.cpp - sc2casr2p
bfm_sc2.cpp - sc2casr3
bfm_sc2.cpp - sc2casr3p
bfm_sc2.cpp - sc2casr4
bfm_sc2.cpp - sc2casr4p
bfm_sc2.cpp - sc2casrp
bfm_sc2.cpp - sc2catms1
bfm_sc2.cpp - sc2catms1p
bfm_sc2.cpp - sc2catms2
bfm_sc2.cpp - sc2catms3
bfm_sc2.cpp - sc2cb7
bfm_sc2.cpp - sc2cb71
bfm_sc2.cpp - sc2cb72
bfm_sc2.cpp - sc2cb7p
bfm_sc2.cpp - sc2cexpl
bfm_sc2.cpp - sc2cexpla
bfm_sc2.cpp - sc2cexplb
bfm_sc2.cpp - sc2cexplc
bfm_sc2.cpp - sc2cexpld
bfm_sc2.cpp - sc2cexple
bfm_sc2.cpp - sc2cgc
bfm_sc2.cpp - sc2cgcas
bfm_sc2.cpp - sc2cgcas1
bfm_sc2.cpp - sc2cgcas1p
bfm_sc2.cpp - sc2cgcasp
bfm_sc2.cpp - sc2cmbtp
bfm_sc2.cpp - sc2cnile
bfm_sc2.cpp - sc2cnile1
bfm_sc2.cpp - sc2cnile2
bfm_sc2.cpp - sc2cnile2p
bfm_sc2.cpp - sc2cnilep
bfm_sc2.cpp - sc2copcl2
bfm_sc2.cpp - sc2copcl3p
bfm_sc2.cpp - sc2copcl6
bfm_sc2.cpp - sc2copcl6p
bfm_sc2.cpp - sc2copcl7
bfm_sc2.cpp - sc2copcl8
bfm_sc2.cpp - sc2copcl8p
bfm_sc2.cpp - sc2copclp
bfm_sc2.cpp - sc2copdc1
bfm_sc2.cpp - sc2copdc1p
bfm_sc2.cpp - sc2copdc2p
bfm_sc2.cpp - sc2copdc4p
bfm_sc2.cpp - sc2copdc5p
bfm_sc2.cpp - sc2copdcp
bfm_sc2.cpp - sc2cops
bfm_sc2.cpp - sc2cops1p
bfm_sc2.cpp - sc2cpe
bfm_sc2.cpp - sc2cpe1
bfm_sc2.cpp - sc2cpe1p
bfm_sc2.cpp - sc2cpe3
bfm_sc2.cpp - sc2cpe3p
bfm_sc2.cpp - sc2cpe4
bfm_sc2.cpp - sc2cpe4p
bfm_sc2.cpp - sc2cpg
bfm_sc2.cpp - sc2cpg1
bfm_sc2.cpp - sc2cpg1p
bfm_sc2.cpp - sc2cpg2
bfm_sc2.cpp - sc2cpg2p
bfm_sc2.cpp - sc2cpgp
bfm_sc2.cpp - sc2cshcl
bfm_sc2.cpp - sc2cshcl1p
bfm_sc2.cpp - sc2cshclp
bfm_sc2.cpp - sc2ctms21
bfm_sc2.cpp - sc2ctms21p
bfm_sc2.cpp - sc2ctms22
bfm_sc2.cpp - sc2ctms22p
bfm_sc2.cpp - sc2ctms23
bfm_sc2.cpp - sc2ctms23p
bfm_sc2.cpp - sc2cvega
bfm_sc2.cpp - sc2cvega1
bfm_sc2.cpp - sc2cvega2
bfm_sc2.cpp - sc2cvega2p
bfm_sc2.cpp - sc2cvega3
bfm_sc2.cpp - sc2cvega3p
bfm_sc2.cpp - sc2cvega4p
bfm_sc2.cpp - sc2dbl
bfm_sc2.cpp - sc2dbl1
bfm_sc2.cpp - sc2dblp
bfm_sc2.cpp - sc2dels
bfm_sc2.cpp - sc2dels1p
bfm_sc2.cpp - sc2dels2p
bfm_sc2.cpp - sc2dels3
bfm_sc2.cpp - sc2dels3p
bfm_sc2.cpp - sc2dels4
bfm_sc2.cpp - sc2dels4p
bfm_sc2.cpp - sc2dels5
bfm_sc2.cpp - sc2dels6
bfm_sc2.cpp - sc2dels7
bfm_sc2.cpp - sc2dels8
bfm_sc2.cpp - sc2dels9
bfm_sc2.cpp - sc2delsd
bfm_sc2.cpp - sc2delsp
bfm_sc2.cpp - sc2dick1
bfm_sc2.cpp - sc2dick2eu
bfm_sc2.cpp - sc2downt
bfm_sc2.cpp - sc2downt1
bfm_sc2.cpp - sc2downt2
bfm_sc2.cpp - sc2downt2p
bfm_sc2.cpp - sc2downt3
bfm_sc2.cpp - sc2downt3a
bfm_sc2.cpp - sc2downt3ap
bfm_sc2.cpp - sc2downt3p
bfm_sc2.cpp - sc2downt4
bfm_sc2.cpp - sc2downt4a
bfm_sc2.cpp - sc2downt4ap
bfm_sc2.cpp - sc2downt4p
bfm_sc2.cpp - sc2downt5
bfm_sc2.cpp - sc2downt6
bfm_sc2.cpp - sc2downt7
bfm_sc2.cpp - sc2downt8a
bfm_sc2.cpp - sc2downt8ap
bfm_sc2.cpp - sc2drwho
bfm_sc2.cpp - sc2drwho1
bfm_sc2.cpp - sc2drwho1p
bfm_sc2.cpp - sc2drwho2
bfm_sc2.cpp - sc2drwho2p
bfm_sc2.cpp - sc2drwho3
bfm_sc2.cpp - sc2drwho3p
bfm_sc2.cpp - sc2drwho4p
bfm_sc2.cpp - sc2drwho5
bfm_sc2.cpp - sc2drwho5p
bfm_sc2.cpp - sc2drwho6
bfm_sc2.cpp - sc2drwho6p
bfm_sc2.cpp - sc2drwho7
bfm_sc2.cpp - sc2drwho7p
bfm_sc2.cpp - sc2drwhodx
bfm_sc2.cpp - sc2drwhomz
bfm_sc2.cpp - sc2drwhop
bfm_sc2.cpp - sc2drwhou
bfm_sc2.cpp - sc2easy
bfm_sc2.cpp - sc2easy1
bfm_sc2.cpp - sc2easy1p
bfm_sc2.cpp - sc2eggs1
bfm_sc2.cpp - sc2eggs1p
bfm_sc2.cpp - sc2eggsp
bfm_sc2.cpp - sc2flaca
bfm_sc2.cpp - sc2flaca2p
bfm_sc2.cpp - sc2flacap
bfm_sc2.cpp - sc2focus
bfm_sc2.cpp - sc2foot1
bfm_sc2.cpp - sc2foot1p
bfm_sc2.cpp - sc2foot2
bfm_sc2.cpp - sc2footp
bfm_sc2.cpp - sc2gcclb
bfm_sc2.cpp - sc2gcclb1
bfm_sc2.cpp - sc2gcclb1p
bfm_sc2.cpp - sc2gcclb2
bfm_sc2.cpp - sc2gcclb2p
bfm_sc2.cpp - sc2gcclbp
bfm_sc2.cpp - sc2goldr
bfm_sc2.cpp - sc2goldr1
bfm_sc2.cpp - sc2goldrp
bfm_sc2.cpp - sc2groul
bfm_sc2.cpp - sc2gsclb
bfm_sc2.cpp - sc2gsclb1
bfm_sc2.cpp - sc2gsclb1p
bfm_sc2.cpp - sc2gsclb2
bfm_sc2.cpp - sc2gsclb2p
bfm_sc2.cpp - sc2gsclb3
bfm_sc2.cpp - sc2gsclb4
bfm_sc2.cpp - sc2gsclb4p
bfm_sc2.cpp - sc2gsclb5
bfm_sc2.cpp - sc2gsclb6
bfm_sc2.cpp - sc2gsclb6p
bfm_sc2.cpp - sc2gsclb7
bfm_sc2.cpp - sc2gsclbp
bfm_sc2.cpp - sc2gslam
bfm_sc2.cpp - sc2gslam1
bfm_sc2.cpp - sc2gtr
bfm_sc2.cpp - sc2heypr
bfm_sc2.cpp - sc2heyprp
bfm_sc2.cpp - sc2hifly
bfm_sc2.cpp - sc2hifly2
bfm_sc2.cpp - sc2hypr
bfm_sc2.cpp - sc2hypr1
bfm_sc2.cpp - sc2hypr1p
bfm_sc2.cpp - sc2hyprp
bfm_sc2.cpp - sc2inst
bfm_sc2.cpp - sc2inst1
bfm_sc2.cpp - sc2inst1p
bfm_sc2.cpp - sc2inst2
bfm_sc2.cpp - sc2inst2p
bfm_sc2.cpp - sc2inst3
bfm_sc2.cpp - sc2inst4
bfm_sc2.cpp - sc2inst4p
bfm_sc2.cpp - sc2inst5
bfm_sc2.cpp - sc2inst6
bfm_sc2.cpp - sc2instp
bfm_sc2.cpp - sc2kcclb
bfm_sc2.cpp - sc2kcclb1
bfm_sc2.cpp - sc2kcclb1p
bfm_sc2.cpp - sc2kcclbp
bfm_sc2.cpp - sc2maina
bfm_sc2.cpp - sc2majes
bfm_sc2.cpp - sc2majesp
bfm_sc2.cpp - sc2mam1
bfm_sc2.cpp - sc2mam1p
bfm_sc2.cpp - sc2mam2
bfm_sc2.cpp - sc2mam2p
bfm_sc2.cpp - sc2mam3p
bfm_sc2.cpp - sc2mam4
bfm_sc2.cpp - sc2mam4p
bfm_sc2.cpp - sc2mamcl1
bfm_sc2.cpp - sc2mamcl2p
bfm_sc2.cpp - sc2mamcl3
bfm_sc2.cpp - sc2mamclp
bfm_sc2.cpp - sc2mamp
bfm_sc2.cpp - sc2motd1
bfm_sc2.cpp - sc2motd1p
bfm_sc2.cpp - sc2motd2
bfm_sc2.cpp - sc2motd3
bfm_sc2.cpp - sc2motd3p
bfm_sc2.cpp - sc2motd4
bfm_sc2.cpp - sc2motd4p
bfm_sc2.cpp - sc2motd5
bfm_sc2.cpp - sc2motd5p
bfm_sc2.cpp - sc2motd6
bfm_sc2.cpp - sc2motd6p
bfm_sc2.cpp - sc2motd7
bfm_sc2.cpp - sc2motd8p
bfm_sc2.cpp - sc2motd9
bfm_sc2.cpp - sc2olgld
bfm_sc2.cpp - sc2olgld1
bfm_sc2.cpp - sc2olgld1p
bfm_sc2.cpp - sc2olgldp
bfm_sc2.cpp - sc2payr
bfm_sc2.cpp - sc2prem
bfm_sc2.cpp - sc2prom
bfm_sc2.cpp - sc2ptytm
bfm_sc2.cpp - sc2ptytm1
bfm_sc2.cpp - sc2relgm
bfm_sc2.cpp - sc2relgm1p
bfm_sc2.cpp - sc2relgmp
bfm_sc2.cpp - sc2scc
bfm_sc2.cpp - sc2showt1
bfm_sc2.cpp - sc2showt1p
bfm_sc2.cpp - sc2showt2
bfm_sc2.cpp - sc2showt3
bfm_sc2.cpp - sc2showt3p
bfm_sc2.cpp - sc2showt4
bfm_sc2.cpp - sc2showt4p
bfm_sc2.cpp - sc2sstar
bfm_sc2.cpp - sc2sstar3
bfm_sc2.cpp - sc2sstar3p
bfm_sc2.cpp - sc2sstarp
bfm_sc2.cpp - sc2suprz
bfm_sc2.cpp - sc2suprz1
bfm_sc2.cpp - sc2suprz1p
bfm_sc2.cpp - sc2suprz3
bfm_sc2.cpp - sc2suprzp
bfm_sc2.cpp - sc2town3p
bfm_sc2.cpp - sc2town4
bfm_sc2.cpp - sc2wembl
bfm_sc2.cpp - sc2wembl10
bfm_sc2.cpp - sc2wembl1p
bfm_sc2.cpp - sc2wembl2
bfm_sc2.cpp - sc2wembl2p
bfm_sc2.cpp - sc2wembl4p
bfm_sc2.cpp - sc2wembl5a
bfm_sc2.cpp - sc2wembl5ap
bfm_sc2.cpp - sc2wembl6ap
bfm_sc2.cpp - sc2wembl7a
bfm_sc2.cpp - sc2wembl7ap
bfm_sc2.cpp - sc2wembl8
bfm_sc2.cpp - sc2wembl9
bfm_sc2.cpp - sc2wemblm
bfm_sc2.cpp - sc2wemblp
bfm_sc2.cpp - sc2winst
bfm_sc2.cpp - sc2winstb
bfm_sc2.cpp - sc2winstbp
bfm_sc2.cpp - sc2winstd
bfm_sc2.cpp - sc2winstdp
bfm_sc2.cpp - sc2winste
bfm_sc2.cpp - sc2winstep
bfm_sc2.cpp - sc2winstf
bfm_sc2.cpp - sc2winstfp
bfm_sc2.cpp - sc2winstg
bfm_sc2.cpp - sc2winstp
bfm_sc2.cpp - sc2wwcl1
bfm_sc2.cpp - sc2wwclp
chaknpop.cpp - chaknpop
chinagat.cpp - chinagat
chinagat.cpp - saiyugou
chinagat.cpp - saiyugoub1
chinagat.cpp - saiyugoub2
chqflag.cpp - chqflag
chqflag.cpp - chqflagj
contra.cpp - contra
contra.cpp - contra1
contra.cpp - contrab
contra.cpp - contrabj
contra.cpp - contrabj1
contra.cpp - contrae
contra.cpp - contraj
contra.cpp - contraj1
contra.cpp - gryzor
contra.cpp - gryzor1
ddragon.cpp - ddragon
ddragon.cpp - ddragon2
ddragon.cpp - ddragon2b
ddragon.cpp - ddragon2u
ddragon.cpp - ddragonb
ddragon.cpp - ddragonb2
ddragon.cpp - ddragonba
ddragon.cpp - ddragonu
ddragon.cpp - ddragonua
ddragon.cpp - ddragonub
ddragon.cpp - ddragonw
ddragon.cpp - ddragonw1
dec8.cpp - csilver
dec8.cpp - csilverj
dec8.cpp - csilverja
dec8.cpp - garyoret
dkong.cpp - dkongx
dkong.cpp - dkongx11
dooyong.cpp - bluehawk
dooyong.cpp - bluehawkn
dooyong.cpp - gulfstrm
dooyong.cpp - gundl94
dooyong.cpp - primella
dooyong.cpp - sadari
dynax.cpp - mjcomv1
dynax.cpp - sprtmtch
firetrap.cpp - firetrap
firetrap.cpp - firetrapa
firetrap.cpp - firetrapbl
firetrap.cpp - firetrapj
fromance.cpp - natsuiro
funybubl.cpp - funybubl
funybubl.cpp - funybublc
gberet.cpp - mrgoemon
gei.cpp - gt103a1
gei.cpp - gt103ab
gei.cpp - gtsers10
gei.cpp - gtsers11
gei.cpp - gtsers11a
gei.cpp - gtsers8a
gei.cpp - gtsers9
gei.cpp - quiz211
gei.cpp - quizvid
gng.cpp - gng
gng.cpp - gnga
gng.cpp - gngbl
gng.cpp - gngc
gng.cpp - gngt
gng.cpp - makaimurc
gng.cpp - makaimurg
himesiki.cpp - androidp
homedata.cpp - mjjoship
homedata.cpp - reikaids
hvyunit.cpp - hvyunit
hvyunit.cpp - hvyunitu
jedi.cpp - jedi
lc80.cpp - lc80
lwings.cpp - avengers
lwings.cpp - avengers2
lwings.cpp - buraiken
m62.cpp - battroad
m62.cpp - ldrun4
m90.cpp - quizf1
mastboyo.cpp - mastboyo
mastboyo.cpp - mastboyoa
mazerbla.cpp - greatgun
merit.cpp - pitboss04
mhavoc.cpp - alphaone
mhavoc.cpp - mhavoc
mhavoc.cpp - mhavoc2
mhavoc.cpp - mhavocp
mhavoc.cpp - mhavocrv
midvunit.cpp - crusnwld
midzeus.cpp - invasnab
midzeus.cpp - invasnab3
midzeus.cpp - invasnab4
midzeus.cpp - thegrid
midzeus.cpp - thegrida
multfish.cpp - crzmon2
multfish.cpp - crzmon2_2
multfish.cpp - crzmon2_3
multfish.cpp - czmon_13
multfish.cpp - czmon_15
multfish.cpp - czmon_16
multfish.cpp - czmon_5
multfish.cpp - czmon_7
multfish.cpp - czmon_8
multfish.cpp - czmon_9
multfish.cpp - fcockt2
multfish.cpp - fcockt2_3
multfish.cpp - fcockt2_4
multfish.cpp - fcockt2_5
multfish.cpp - fcockt2_6
multfish.cpp - fcockt2_7
multfish.cpp - fcockt_10
multfish.cpp - fcockt_11
multfish.cpp - fcockt_12
multfish.cpp - fcockt_14
multfish.cpp - fcockt_3
multfish.cpp - fcockt_5
multfish.cpp - fcockt_6
multfish.cpp - fcockt_7
multfish.cpp - fcockt_8
multfish.cpp - fcockt_9
multfish.cpp - garage_4
multfish.cpp - garage_5
multfish.cpp - garage_6
multfish.cpp - garage_7
multfish.cpp - garage_9
multfish.cpp - gnome
multfish.cpp - gnome_10
multfish.cpp - gnome_11
multfish.cpp - gnome_12
multfish.cpp - gnome_2
multfish.cpp - gnome_3
multfish.cpp - gnome_4
multfish.cpp - gnome_5
multfish.cpp - gnome_7
multfish.cpp - gnome_9
multfish.cpp - goldfish
multfish.cpp - island
multfish.cpp - island2
multfish.cpp - island2_3
multfish.cpp - island2_4
multfish.cpp - island2_5
multfish.cpp - island2_6
multfish.cpp - island_2
multfish.cpp - keks
multfish.cpp - keks_2
multfish.cpp - keks_3
multfish.cpp - keks_4
multfish.cpp - keks_5
multfish.cpp - lhaunt_10
multfish.cpp - lhaunt_11
multfish.cpp - lhaunt_2
multfish.cpp - lhaunt_4
multfish.cpp - lhaunt_5
multfish.cpp - lhaunt_6
multfish.cpp - lhaunt_7
multfish.cpp - lhaunt_8
multfish.cpp - mfish_11
multfish.cpp - mfish_12
multfish.cpp - mfish_13
multfish.cpp - mfish_3
multfish.cpp - mfish_6
multfish.cpp - mfish_8
multfish.cpp - pirate2
multfish.cpp - pirate2_2
multfish.cpp - pirate2_3
multfish.cpp - pirate2_4
multfish.cpp - pirate_2
multfish.cpp - pirate_3
multfish.cpp - pirate_4
multfish.cpp - rclimb
multfish.cpp - rclimb_3
multfish.cpp - rclimb_4
multfish.cpp - rclimb_5
multfish.cpp - rclimb_7
multfish.cpp - resdnt
multfish.cpp - resdnt_2
multfish.cpp - resdnt_3
multfish.cpp - resdnt_6
multfish.cpp - resdnt_8
multfish.cpp - resdnt_9
multfish.cpp - rollfr_2
multfish.cpp - rollfr_3
multfish.cpp - rollfr_4
multfish.cpp - sweetl
multfish.cpp - sweetl2
multfish.cpp - sweetl2_2
multfish.cpp - sweetl2_3
multfish.cpp - sweetl2_4
multfish.cpp - sweetl_2
multfish.cpp - windjamr
multfish_boot.cpp - czmon_7a
multfish_boot.cpp - czmon_7b
multfish_boot.cpp - czmon_8a
multfish_boot.cpp - czmon_8b
multfish_boot.cpp - czmon_8c
multfish_boot.cpp - czmon_8d
multfish_boot.cpp - czmon_8e
multfish_boot.cpp - czmon_8f
multfish_boot.cpp - czmon_9a
multfish_boot.cpp - czmon_9b
multfish_boot.cpp - czmon_9c
multfish_boot.cpp - fcockt2_4a
multfish_boot.cpp - fcockt2_4b
multfish_boot.cpp - fcockt2_4c
multfish_boot.cpp - fcockt2_4d
multfish_boot.cpp - fcockt2_4e
multfish_boot.cpp - fcockt2_4f
multfish_boot.cpp - fcockt2a
multfish_boot.cpp - fcockt_6a
multfish_boot.cpp - fcockt_6b
multfish_boot.cpp - fcockt_6c
multfish_boot.cpp - fcockt_6d
multfish_boot.cpp - fcockt_7a
multfish_boot.cpp - fcockt_7b
multfish_boot.cpp - fcockt_7c
multfish_boot.cpp - fcockt_7d
multfish_boot.cpp - fcockt_7e
multfish_boot.cpp - fcockt_7f
multfish_boot.cpp - fcockt_7g
multfish_boot.cpp - fcockt_7h
multfish_boot.cpp - fcockt_8a
multfish_boot.cpp - fcockt_8b
multfish_boot.cpp - garage_4a
multfish_boot.cpp - garage_4b
multfish_boot.cpp - garage_4c
multfish_boot.cpp - garage_5a
multfish_boot.cpp - garage_5b
multfish_boot.cpp - garage_5c
multfish_boot.cpp - garage_5d
multfish_boot.cpp - garage_5e
multfish_boot.cpp - gnome_2a
multfish_boot.cpp - gnome_3a
multfish_boot.cpp - gnome_3b
multfish_boot.cpp - gnome_3c
multfish_boot.cpp - gnome_5a
multfish_boot.cpp - gnome_5b
multfish_boot.cpp - gnomea
multfish_boot.cpp - gnomeb
multfish_boot.cpp - gnomec
multfish_boot.cpp - gnomed
multfish_boot.cpp - gnomee
multfish_boot.cpp - island2_3a
multfish_boot.cpp - island2_4a
multfish_boot.cpp - island2a
multfish_boot.cpp - island2b
multfish_boot.cpp - island2c
multfish_boot.cpp - islanda
multfish_boot.cpp - islandb
multfish_boot.cpp - islandc
multfish_boot.cpp - keks_2a
multfish_boot.cpp - keks_2b
multfish_boot.cpp - keks_2c
multfish_boot.cpp - keks_2d
multfish_boot.cpp - keks_2e
multfish_boot.cpp - keks_2f
multfish_boot.cpp - keks_2g
multfish_boot.cpp - keks_3a
multfish_boot.cpp - keks_3b
multfish_boot.cpp - keksa
multfish_boot.cpp - keksb
multfish_boot.cpp - keksc
multfish_boot.cpp - lhaunt_4a
multfish_boot.cpp - lhaunt_5a
multfish_boot.cpp - lhaunt_6a
multfish_boot.cpp - lhaunt_6b
multfish_boot.cpp - lhaunt_6c
multfish_boot.cpp - lhaunt_6d
multfish_boot.cpp - lhaunt_6e
multfish_boot.cpp - lhaunt_6f
multfish_boot.cpp - mfish_12a
multfish_boot.cpp - mfish_3a
multfish_boot.cpp - pirate2_2a
multfish_boot.cpp - pirate2a
multfish_boot.cpp - pirate2b
multfish_boot.cpp - pirate2c
multfish_boot.cpp - pirate2d
multfish_boot.cpp - pirate2e
multfish_boot.cpp - pirate2f
multfish_boot.cpp - pirate2g
multfish_boot.cpp - pirate2h
multfish_boot.cpp - rclimb_3a
multfish_boot.cpp - rclimb_3b
multfish_boot.cpp - rclimb_3c
multfish_boot.cpp - rclimb_3d
multfish_boot.cpp - rclimb_3e
multfish_boot.cpp - resdnt_2a
multfish_boot.cpp - resdnt_2b
multfish_boot.cpp - resdnt_2c
multfish_boot.cpp - resdnt_2d
multfish_boot.cpp - resdnt_2e
multfish_boot.cpp - resdnt_2f
multfish_boot.cpp - resdnt_2g
multfish_boot.cpp - sweetl2_2a
multfish_boot.cpp - sweetl2_2b
multfish_boot.cpp - sweetl2_2c
multfish_boot.cpp - sweetl2_2d
multfish_boot.cpp - sweetla
multfish_boot.cpp - sweetlb
namcofl.cpp - finalapr
namcofl.cpp - finalaprj
namcofl.cpp - finalapro
namcos1.cpp - faceoff
namcos1.cpp - tankfrce4
namcos1.cpp - tankfrcej
namcos1.cpp - wldcourt
namcos86.cpp - genpeitd
ninjakd2.cpp - mnight
ninjakd2.cpp - mnightj
ninjakd2.cpp - omegaf
ninjakd2.cpp - omegafs
ninjakd2.cpp - robokid
ninjakd2.cpp - robokidj
ninjakd2.cpp - robokidj2
ninjakd2.cpp - robokidj3
ojankohs.cpp - ojanko2
ojankohs.cpp - ojankoy
onetwo.cpp - onetwo
onetwo.cpp - onetwoe
paradise.cpp - paradise
paradise.cpp - paradisea
paradise.cpp - paradisee
paradise.cpp - tgtbal96
paradise.cpp - tgtball
paradise.cpp - tgtballn
paradise.cpp - torus
pcktgal.cpp - pcktgal
pcktgal.cpp - pcktgal2
pcktgal.cpp - pcktgal2j
pcktgal.cpp - pcktgalb
pcktgal.cpp - spool3
pcktgal.cpp - spool3i
pengadvb.cpp - pengadvb
peplus.cpp - peivc006
phoenix.cpp - avefenix
phoenix.cpp - avefenixl
phoenix.cpp - avefenixrf
phoenix.cpp - condor
phoenix.cpp - condorn
phoenix.cpp - falcon
phoenix.cpp - falconz
phoenix.cpp - griffon
phoenix.cpp - griffono
phoenix.cpp - nextfase
phoenix.cpp - phoenix
phoenix.cpp - phoenix2
phoenix.cpp - phoenix3
phoenix.cpp - phoenixa
phoenix.cpp - phoenixass
phoenix.cpp - phoenixb
phoenix.cpp - phoenixc
phoenix.cpp - phoenixc2
phoenix.cpp - phoenixc3
phoenix.cpp - phoenixc4
phoenix.cpp - phoenixdal
phoenix.cpp - phoenixha
phoenix.cpp - phoenixi
phoenix.cpp - phoenixj
phoenix.cpp - phoenixs
phoenix.cpp - phoenixt
phoenix.cpp - pleiadsb2
phoenix.cpp - pleiadss
phoenix.cpp - vautour
phoenix.cpp - vautourz
phoenix.cpp - vautourza
plygonet.cpp - plygonet
polgar.cpp - mrisc
polgar.cpp - mrisc2
ppmast93.cpp - ppmast93
psion.cpp - psionlz64s
psychic5.cpp - bombsa
r2dx_v33.cpp - r2dx_v33
r2dx_v33.cpp - r2dx_v33_r2
raiden2.cpp - raiden2
raiden2.cpp - raiden2e
raiden2.cpp - raiden2ea
raiden2.cpp - raiden2eg
raiden2.cpp - raiden2eu
raiden2.cpp - raiden2eua
raiden2.cpp - raiden2f
raiden2.cpp - raiden2g
raiden2.cpp - raiden2hk
raiden2.cpp - raiden2i
raiden2.cpp - raiden2j
raiden2.cpp - raiden2k
raiden2.cpp - raiden2nl
raiden2.cpp - raiden2sw
raiden2.cpp - raiden2u
rockrage.cpp - rockragej
scramble.cpp - cavelon
segae.cpp - slapshtr
seibuspi.cpp - rdft2t
sg1000.cpp - sf7000
shootout.cpp - shootout
sidearms.cpp - dyger
sidearms.cpp - dygera
sidearms.cpp - sidearms
sidearms.cpp - sidearmsj
sidearms.cpp - sidearmsu
sidearms.cpp - sidearmsur1
sidearms.cpp - turtship
sidearms.cpp - turtshipj
sidearms.cpp - turtshipk
sidearms.cpp - turtshipkn
sidearms.cpp - turtshipko
simpsons.cpp - simpsons
simpsons.cpp - simpsons2p
simpsons.cpp - simpsons2p2
simpsons.cpp - simpsons2p3
simpsons.cpp - simpsons2pa
simpsons.cpp - simpsons2pj
simpsons.cpp - simpsons4pa
simpsons.cpp - simpsons4pe
srmp2.cpp - srmp3
srumbler.cpp - rushcrsh
srumbler.cpp - srumbler
srumbler.cpp - srumbler2
srumbler.cpp - srumbler3
superqix.cpp - perestro
superqix.cpp - perestrof
superwng.cpp - superwng
system1.cpp - gardia
system1.cpp - gardiab
system1.cpp - gardiaj
taitosj.cpp - timetunl
ti74.cpp - ti74
ti74.cpp - ti95
tryout.cpp - tryout
vendetta.cpp - vendetta
vendetta.cpp - vendetta2pd
vendetta.cpp - vendetta2peba
vendetta.cpp - vendetta2pp
vendetta.cpp - vendetta2pu
vendetta.cpp - vendetta2pun
vendetta.cpp - vendetta2pw
vendetta.cpp - vendettan
vendetta.cpp - vendettar
vendetta.cpp - vendettaun
vendetta.cpp - vendettaz
williams.cpp - alienar
williams.cpp - alienaru
williams.cpp - blaster
williams.cpp - blasterkit
williams.cpp - blastero
williams.cpp - bubbles
williams.cpp - bubblesp
williams.cpp - bubblesr
williams.cpp - inferno
williams.cpp - joust
williams.cpp - joust2
williams.cpp - joust2r1
williams.cpp - joustr
williams.cpp - joustwr
williams.cpp - mysticm
williams.cpp - mysticmp
williams.cpp - playball
williams.cpp - robotron
williams.cpp - robotron12
williams.cpp - robotron87
williams.cpp - robotrontd
williams.cpp - robotronyo
williams.cpp - sinistar
williams.cpp - sinistar1
williams.cpp - sinistar2
williams.cpp - spdball
williams.cpp - splat
williams.cpp - stargate
williams.cpp - tshoot
Github Commit
Flags
Regression Version 0.200
Affected Sets / Systems Numerous Drivers
Attached Files
png file icon phoenix-diff.png (10,815 bytes) Oct 17, 2018, 14:00 Uploaded by Tafoid
Phoenix-diff.png (example regression comparison)
Tafoid
? file icon bank_restore.diff (1,333 bytes) Dec 19, 2018, 10:57 Uploaded by Osso
hacked up patch
[Show Content]
Relationships
There are no relationship linked to this issue.
Notes
2
User avatar
No.15631
galibert
Developer
Oct 27, 2018, 09:49
phoenix is a base set_base vs. configure_entries issue, now fixed. Let's try the next one...
User avatar
No.15931
Osso
Moderator
Dec 19, 2018, 10:57
edited on: Dec 19, 2018, 10:59
I looked at superwng, which is an interesting case since it has only 2 banks and in a -str 20 run it only selects bank 0.
I tried hooking up a driver specific post_load to set the bank on every reload and, with great suprise, I discovered that it worked. With my very limited knowledge of the memory system, this seems to indicate that not only it isn't reloading the current entry, but that it lets it undefined (otherwise I can't understand how it could screw up with a game like superwng which only sets bank 0 for the first 20 seconds of run).
So I took the time to hack up a patch (attached) to restore emumem.cpp behaviour as close as possible to that before the commit mentioned in 'additional information' and sure enough it works. I tested it with 1942 also.
Maybe this small research can point at where to look for a real, forward moving solution.