Slowdown accuracy for cv1k games on MAME is almost perfect

This is the main shmups forum. Chat about shmups in here - keep it on-topic please!
el_rika
Posts: 346
Joined: Sun Oct 30, 2016 8:44 pm

Re: Slowdown accuracy for cv1k games on MAME is almost perfe

Post by el_rika »

Wow, this is unfortunate. It is probably an oversight from mame devs for this version.
Try an older version. If i get to a laptop these days, i'll try it as well.
User avatar
bcass
Posts: 2645
Joined: Wed Mar 30, 2005 11:10 am

Re: Slowdown accuracy for cv1k games on MAME is almost perfe

Post by bcass »

It turns out I was using quite an old version of GroovyMAME. Using the latest build allows saving of blitter and cpu options. However I have a question about this old post:
el_rika wrote:After you set a certain CPU value with the slider, go one step back to Game/Machine Information tab, and there the % value you set, will be shown in the actual Mhz.
Where in the Windows version of GroovyMAME is that information (Mhz value) shown?
el_rika
Posts: 346
Joined: Sun Oct 30, 2016 8:44 pm

Re: Slowdown accuracy for cv1k games on MAME is almost perfe

Post by el_rika »

In the same TAB menu where Sliders, Blitter, Cheats, etc, are.
Maybe the newer version changed the name of the option, could be Game Information or Machine Information, or something similar.
el_rika
Posts: 346
Joined: Sun Oct 30, 2016 8:44 pm

Re: Slowdown accuracy for cv1k games on MAME is almost perfe

Post by el_rika »

Sdoj

Expert mode, all ships:

Cpu 40.0 mhz / Blitter 57% (use 42.0 mhz for older than 0.192 mame v.)

https://vimeo.com/655433052

Will update soon with better, longer gameplay portions.

This game has toned down blending effects for green and blue ships shot/laser, so they don't slow down the game very differently from the red (like in Daifukkatsu BL for example). Edit: actually Blue slows down the game less than Red and Green.
It's possible that a few spots slow down a bit more here, but the game is so brutal that it's very very hard to tell, as good players usually let slightly less bullets fill the screen.

All the speciffic spastic slow-down is there, all bosses patterns slow-down trigger as it should, the ones only created by using shot as well, all boss/mid boss appearences [blitter heavy] slow down effects are as they should.


Shot/Laser modes definitelly need higher Cpu and tad less Blitter. The game plays very close to pcb with:

41.8 mhz / 56% Blitter (43.5 mhz for older mame)
(as i observed earlier, the pcb exibits a bit more slowdown in A shot environment).

57% blitter seems to be a tad too slow in some instances (mid-boss entrance, heavy successive explosions), though just right in others, but atm i'm staying at 56, which seems more consistent.


I will update with relevant vids as soon as time allows me.

Edit: For FBNeo use:
- 42% cpu / 59 blitter (Expert)
- 43.2% cpu/ 57 blitter (Shot)
Last edited by el_rika on Tue Aug 30, 2022 10:40 am, edited 2 times in total.
User avatar
Tatsuya79
Posts: 149
Joined: Tue Jan 07, 2014 10:29 am

Re: Slowdown accuracy for cv1k games on MAME is almost perfe

Post by Tatsuya79 »

Run ahead is working now with FBNeo for cv1k.

In retroarch use single instance as it's the recommended method. You can remove 2 frames for most games (all I tested at least).
The most recent games run over 80fps while stressing up the buttons in the worst scenario here on a Ryzen 5600X.

It should work in the upcoming FBN git compilation, stand-alone and retroarch.
User avatar
Skykid
Posts: 17646
Joined: Sun Nov 18, 2007 2:16 pm
Location: Planet Dust Asia

Re: Slowdown accuracy for cv1k games on MAME is almost perfe

Post by Skykid »

Just a bump:

Using a pi4B overclocked to 2100 with FBNEO currently, and CV1K games run astoundingly well with some small passable exceptions. Just wondering about the following:

PGM titles don’t have any CPU/Blitter settings I can find online. Retroarch defaults to 100% CPU for these, and in my opinion (could be wrong) they seem a tad fast. Was just wondering if anyone knows anything more about settings for these.

And, re: Mushihimesama and Mushi Futari, El_Rika has CPU/Blitter settings for Maniac and Ultra for these games, but I can’t find anything for the normal modes. With Maniac settings on, it definitely helps as the lower CPU generates more slowdown, but I’m not convinced it’s accurate from memory. Does anyone have any ideas about this. EDIT: And Pink Sweets too!

It would be good to keep profiles for different modes so we don’t need to change the settings when swapping between characters on Deathsmiles etc, but I’m not sure that’s possible atm.
Always outnumbered, never outgunned - No zuo no die

User avatar
Lander
Posts: 848
Joined: Tue Oct 18, 2022 11:15 pm
Location: Area 1 Mostly

Re: Slowdown accuracy for cv1k games on MAME is almost perfe

Post by Lander »

Good bump!
Tatsuya79 wrote:Run ahead is working now with FBNeo for cv1k.

In retroarch use single instance as it's the recommended method. You can remove 2 frames for most games (all I tested at least).
The most recent games run over 80fps while stressing up the buttons in the worst scenario here on a Ryzen 5600X.

It should work in the upcoming FBN git compilation, stand-alone and retroarch.
Thank you for posting this. I've been trying to dial in proper runahead for my arcade library, and single instance was the key to avoiding stutter on every input in the heftier Cave titles. There's some audio crackling during slowdown as tradeoff on my 5950X, seemingly irrespective of buffer size, but it's worth it.

As an aside, it's interesting that second-process is what causes the stutter. I assumed that was down to CV1K being computationally expensive to emulate or difficult to parallelize, but becoming a non-issue if run internally implies a bottleneck in shuttling memory across the process boundary.

I'm not very knowledgeable on the hardware side - is CV1K known for having particularly large amounts of memory? I guess it could also be an audio emulation performance thing, since separate-process is implied to emulate that separately to avoid crackle, but it seems oddly specific to this set of Cave games.
User avatar
Keade
Posts: 384
Joined: Mon Jul 16, 2007 8:44 pm

Re: Slowdown accuracy for cv1k games on MAME is almost perfe

Post by Keade »

Those of you who are able to compile your own MAME binaries might be interested in giving a try at this: https://github.com/mamedev/mame/pull/10849.
To test it requires to compile your own binaries, because the code is currently under review (in the form of a pull request). If it passes the code review process it may be in for MAME 0.252 or a later release.
I have given it a try but I don't know the games well enough to rate that arcade-perfect feeling :mrgreen:
User avatar
Udderdude
Posts: 6266
Joined: Thu Feb 16, 2006 7:55 am
Location: Canada
Contact:

Re: Slowdown accuracy for cv1k games on MAME is almost perfe

Post by Udderdude »

I had heard about that (and RTed it on Twitter lol) but didn't know how long it would be until it made it into MAME. Guess I didn't have to wait long.
Unfortunately most of the slowdown in the games I've looked at seems more driven by CPU than Blitter, but Blitter is definitely also a factor.

Using CPU underclock is not an awful replacement for proper wait state insertion, but it will definitely not be accurate.
So, this is still not a 100% solution, and you will still need to underclock the CPU. But progress is progress.
Post Reply