Disabled FB to fix half of screen being cut off. Kinda redundant with GLideN64 coming very soon, but I don't like broken things.
(No idea if disabling FB breaks anything, though.)
I had avoided this in the past since it seemed unstable. But with @Frank-74's changes, the game now seems stable with CF=1, and it runs at 60fps with occasional dips instead of all over the place with dips into the teens as it does with CF=2.
There may be side effects of CF=1, but I haven't encountered any yet. In the meantime, it makes the game much smoother. Some of the framerate dips I was getting with CF=2 were absurd. Also, self mod methods for Star Twins, the Japanese region version, have been changed to match other regions.
Alphabetical Order
The English alphabet starts with the letter a and finishes with the
letter z. We always write the alphabet in the same order:
a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-z
A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z
This order is called "alphabetical order". We often write lists in
alphabetical order. For example, to write a list of countries in
alphabetical order, we start with countries that begin with the letter
A, then with countries that begin with B, and so on. For example:
Australia
Brazil
Canada
The game currently has FAT and Audio Sync both enabled, which IMO is a bad idea because it makes the game's framerate erratic."
I tried it with
Sync Audio=0
and i didn't notice anything bad...
Sync Audio, enabled or disabled I didn't see an difference in frame rate on my PC....
Changed to Counter Factor 1 for all regions. Improves poly tearing, but might potentially cause timing issues.
Added Dsound-SyncAudio=1, forcing the game to use Jabo's audio synch option, removing slight popping that the PJ64 audio synch failed to fix.
Changed AiCountPerBytes to 625 for PAL to align with other regions. Could cause issues. Haven't tested with PAL version.
Game doesn't appear to need it except when using certain plugins. Some VI\AI tweaking might possible make this game smoother, but I can't be bothered testing because this is possibly the worst N64 game I have ever played. So much potential crushed under so much bullcrap.
Glide64's LOD is broken. Dunno why it was enabled for Conker, since it just makes the texture quality worse and bugs his shadow plus some other issues.
Nightmare Creatures runs at 60fps with CF=1, but the game runs too fast and has some odd behavior. (Menu selection is difficult, camera bounce during opening cutscene, odd movement sometimes) CF=2 fixes this but unfortunately gives framerates between 15-30fps. Setting VI to 2200 fixes the jerky animations.
This is one very odd game. I suspect it's still not running right based on Youtube footage, but it's less broken now.
The US and PAL versions behave quite differently when it comes to refusing to boot randomly. The ideal VI should be around 1500, but the closest I can get seems around 1800 for PAL and 2050 for US. US version runs faster - significantly so in certain levels. However, this could be related to the PAL conversion - although I doubt it.
This fixes the game not reliably booting with Counter Factor=1. 1500\530 gets better results with some games, such as Resident Evil 2 - but clearly not this one.
This commit. I hate it. In order to cure the game's extreme speed, I kept lowing the VI, and it's now running at 15fps. But the ingame clock seems to match 1:1 close enough for most purposes. Game needs RSP Audio Signal to boot, interestingly.
These new values are based on the ones that got very good results on Resident Evil 2 with FAT enabled - 1500\530. They mostly play nice with Azimer's, except for Gauntlet Legend. There is sometimes mild crackle with Jabo, but Azimer's tends to cure that.
Infernal Machine (U) now crackles in menus but sounds lovely ingame. Fair enough compromise, IMO. I disabled various self mod methods since they don't seem to be needed.
That Rush 2049 sure does have some lovely MusyX tracks. Turning down the overbearing SFX volume really drives home how good they are.
I also set Hydro Thunder to CF1. Game is much smoother. Timers and boat handling seem fine.
Okay, so it turns out that the (U) version of Infernal Machine *hates* the settings that provide good audio for the (E) version. (I have no clue why I didn't notice this until now.) After a lot of dicking around, I found that AI=540 provided a usable compromise, where the sound is in synch and doesn't crackle like crazy. The problem is that the main menu music is now too fast. None of the other Factor 5 games behave this way.
In an ideal world the (U) version would be placed into a refrigerator and have a small atomic device detonated next to it. Until PJ64 gets proper audio synch or Azimer does something magical, I don't see that version working properly.
This fix isn't quite satisfactory, but with 2200\875, the last 30 seconds or so of the intro have no sound effects, only music. (A bug that could affect other FMVs throughout the game in theory.) 1500\530 has a wee bit of pop and crackle, but the FMVs now work correctly.
-Disable 32 bit engine for CBFD (E); fixes glitching graphics
-Set VI to 2200 and AI to 500 for smoother gameplay
-Added entry for CBFD Debug Version
-Changed "Conker's Bad Fur Day (ECTS)" to "Conker's Bad Fur Day (U) (ECTS Demo)"
-Added Plugin Notes for CBFD Debug and ECTS
-Make Jabo's D3D config consistent between every version (clear frame, culling, emulate clear, etc...)
The Project64 recompiler is mostly to get games running at full speed for playability, but this is not a game, and implementing memory address range prediction in the recompiler to prevent missing the branch weighs would possibly not be worth it for a demo which should run fast enough with the interpreter.
With these changes, games such as RE2 now use Fixed Audio timing with appropriate VI\AI values, and now have near-perfect audio that will no longer bug out randomly, due to low framerates, or when loading save-states. Infernal Machine no longer has crackling audio. San Francisco Rush 2049 seems improved. Rogue Squadron\Naboo have fixed sound. Tarzan, Rugrats, and other games using Factor 5 tech were adjusted. Some ran fine on vanilla settings for some reason.
I disabled "Start Changed" for Naboo and Infernal Machine, since having it enabled causes significant stuttering in some menus.
FYI, MORT is the name of the speech codec used by Factor 5 games.
I decided on VI=2200 and AI=785 for most titles because those values hit a sweet spot between stopping crackle and keeping sound in synch. (Some games were happy with AI=400.) Some further tweaking might provide better results.
Changing to CF1 fixes the jeep handling and some nasty stuttering.
Disabling Fast SP fixed some crashes with recompiler. Also seems to fix environment flicker?
Plus some other tweaks.
The game seems stable on a custom build (with the Factor 5 hack) with CPU recompiler and cxd4 RSP interpreter during testing except for the end of levels, when Indy's Trading Post causes the game to crash without Interpreter. The game appears to be far more stable in PJ64 than mupen64plus, however the game's audio timings are off, and the sound crackles. But I was able to drive Indy's jeep round in circles for 15 minutes without a single lockup.