Help me test MAME with "fixed" CV1K Blitter code
Help me test MAME with "fixed" CV1K Blitter code
Hey, so I've been doing some fun research on how the CV1K blitter works recently, see following posts:
- https://buffis.com/research/cv1000-blitter-research/
- https://buffis.com/research/more-cv1000 ... -clipping/
I did my best to make adjustment for the MAME driver to have it behave similar to the actual hardware, but need people to test it out to see if there's anything weird here, or if it seems good to you.
This only change here is for the Blitter logic, which means that CPU slowdown (which is the majority of CV1K slowdown) is not changed here.
To help out:
- Grab the modified binary at: http://site.buffis.com/mame/ and test it on CV1K games
Alternatively build it yourself from: https://github.com/buffis/mamefork
- See if this seems more accurate to actual PCBs compared to regular MAME, and if theres any weird things happening.
IMPORTANT
CPU slowdown is still the majority of slowdown, so I'd recommend experimenting with CPU% slider in combination with this (try 50% or 60% or something, I dunno). Its not an accurate representation of CPU slowdown, but it will be closer than nothing.
- https://buffis.com/research/cv1000-blitter-research/
- https://buffis.com/research/more-cv1000 ... -clipping/
I did my best to make adjustment for the MAME driver to have it behave similar to the actual hardware, but need people to test it out to see if there's anything weird here, or if it seems good to you.
This only change here is for the Blitter logic, which means that CPU slowdown (which is the majority of CV1K slowdown) is not changed here.
To help out:
- Grab the modified binary at: http://site.buffis.com/mame/ and test it on CV1K games
Alternatively build it yourself from: https://github.com/buffis/mamefork
- See if this seems more accurate to actual PCBs compared to regular MAME, and if theres any weird things happening.
IMPORTANT
CPU slowdown is still the majority of slowdown, so I'd recommend experimenting with CPU% slider in combination with this (try 50% or 60% or something, I dunno). Its not an accurate representation of CPU slowdown, but it will be closer than nothing.
Re: Help me test MAME with "fixed" CV1K Blitter code
It's hard to say for certain how accurate it is without having the gameplay be shown side-by-side with PCB footage, but it already feels a lot better to play. I don't have much experience with many cv1k games, but I like MMP a lot and playing it again in MAME (with 50% CPU) felt better than I remember. Will have to put some video's comparing it to the PCB hopefully soon just to confirm it isn't placebo.
Eitherway, huge thanks for this improvement!
Eitherway, huge thanks for this improvement!
Re: Help me test MAME with "fixed" CV1K Blitter code
Very cool, I hope this gets into the official MAME build with the correct CPU speed as a default setting once more knowledgeable folks (aka superplayers) has chimed in.
| My games - http://www.emphatic.se | (Click) I have YEN stickers for sale
RegalSin wrote:Street Fighters. We need to aviod them when we activate time accellerator.
Re: Help me test MAME with "fixed" CV1K Blitter code
Very cool stuff, would revolutionize CV1K in Mame and it's been a long time coming.
I've been trying some SDOJ Expert at 37% CPU and so far it seems very close to the PCB footage I've been using to learn the game with.
I've been trying some SDOJ Expert at 37% CPU and so far it seems very close to the PCB footage I've been using to learn the game with.
Re: Help me test MAME with "fixed" CV1K Blitter code
Glad it feels better. Comparing with pcb behavior is useful, but its also good to just test this with games in general to make sure nothing stands out as completely incorrect due to bugs.Meriscan wrote:It's hard to say for certain how accurate it is without having the gameplay be shown side-by-side with PCB footage, but it already feels a lot better to play. I don't have much experience with many cv1k games, but I like MMP a lot and playing it again in MAME (with 50% CPU) felt better than I remember. Will have to put some video's comparing it to the PCB hopefully soon just to confirm it isn't placebo.
Eitherway, huge thanks for this improvement!
PCB comparisons will still not match 100% due to CPU slowdown not being accurately emulated yet.
I’d expect it to be likely to be accepted into mame, since its closer to hardware than the current implementation in the cv1k driver. It might take a while though. Its a somewhat complex piece or code to review and verify, and i dont really know what mames processes around this is, since i dont typically file pull requests to them.emphatic wrote:Very cool, I hope this gets into the official MAME build with the correct CPU speed as a default setting once more knowledgeable folks (aka superplayers) has chimed in.
”Correct cpu speed” is not a thing though, and not something that belongs in mame with current implementation.
Tuning the CPU underclock can work as somewhat of an approximation of the actual pcb behavior, but theres not going to be an exact value thats best. With the Blitter slider (that this code removes) it was way worse though. The Blitter delay code prior to this had pretty much nothing to do with how things work on pcbs, so tuning it to specific values made no sense really.
That said, until proper wait state support is implemented for the cpu, picking some cpu value that feels mostly right is probably close-ish at least.
Very nice to hear! I’m very happy that high level players like you are testing this. Thats extremely helpful.Jaimers wrote:Very cool stuff, would revolutionize CV1K in Mame and it's been a long time coming.
I've been trying some SDOJ Expert at 37% CPU and so far it seems very close to the PCB footage I've been using to learn the game with.
-
ShootTheCore
- Posts: 52
- Joined: Wed Jan 18, 2017 12:20 am
Re: Help me test MAME with "fixed" CV1K Blitter code
I've been trying out various CV1000 games with the new build daily for the last two weeks or so, and I haven't picked up on any obvious issues. I've set the CPU slider at 50% on every game so far and the "feel" is definitely better than it was with the legacy blitter code.
Re: Help me test MAME with "fixed" CV1K Blitter code
This is now merged into mame, so will go into next release.
Still good to test it more though. Seems to work well for me
https://github.com/mamedev/mame/commit/ ... 4259f745ea
Still good to test it more though. Seems to work well for me
https://github.com/mamedev/mame/commit/ ... 4259f745ea
Re: Help me test MAME with "fixed" CV1K Blitter code
Congrats to the MAME team and all of us who get to play these games closer to the original - because of your efforts. Pat yourself on the back, man.
| My games - http://www.emphatic.se | (Click) I have YEN stickers for sale
RegalSin wrote:Street Fighters. We need to aviod them when we activate time accellerator.
Re: Help me test MAME with "fixed" CV1K Blitter code
This is now included in MAME 0.254
-
- Posts: 1228
- Joined: Tue Mar 12, 2019 5:18 pm
Re: Help me test MAME with "fixed" CV1K Blitter code
Thanks! You still need to particularly tweak the CPU slider, right?
Re: Help me test MAME with "fixed" CV1K Blitter code
Buffi's code has been ported to FBNeo, nightlies are there: https://github.com/finalburnneo/FBNeo/r ... tag/latest
It's in retroarch too.
I tested it with mushi futari black and run ahead 2 frames, it was pretty cool.
I'm not sure about the slowdowns on some parts like the flying islands before the 1st stage dino boss;
it seemed a bit too slow but maybe I was shooting using Palm making it worse.
It's in retroarch too.
I tested it with mushi futari black and run ahead 2 frames, it was pretty cool.
I'm not sure about the slowdowns on some parts like the flying islands before the 1st stage dino boss;
it seemed a bit too slow but maybe I was shooting using Palm making it worse.
Re: Help me test MAME with "fixed" CV1K Blitter code
That section can hsve pretty chunky slowdown on pcb too. See about 54 sec intoTatsuya79 wrote:Buffi's code has been ported to FBNeo, nightlies are there: https://github.com/finalburnneo/FBNeo/r ... tag/latest
It's in retroarch too.
I tested it with mushi futari black and run ahead 2 frames, it was pretty cool.
I'm not sure about the slowdowns on some parts like the flying islands before the 1st stage dino boss;
it seemed a bit too slow but maybe I was shooting using Palm making it worse.
https://youtu.be/dddz8fgfkdU
Re: Help me test MAME with "fixed" CV1K Blitter code
Ah yes it's happening more in this video around 1mn45s than the other one I checked before.
It seems good.
Then I'm not sure about the cpu clock to use in the different games, trying 50% for them all atm.
It seems good.
Then I'm not sure about the cpu clock to use in the different games, trying 50% for them all atm.
Re: Help me test MAME with "fixed" CV1K Blitter code
Yeah best not to overthink cpu tbh.