TASEmulators / BizHawk

BizHawk is a multi-system emulator written in C#. BizHawk provides nice features for casual gamers such as full screen, and joypad support in addition to full rerecording and debugging tools for all system cores.
http://tasvideos.org/BizHawk.html
Other
2.16k stars 381 forks source link

[Nymashock] Feature Request, 8MB MainRAM Setting #3431

Open MottZilla opened 1 year ago

MottZilla commented 1 year ago

I've been developing some hacks and homebrew for the PS1 and BizHawk's Nymashock PS1 core is popular in the community interested in these sorts of developments. Some other emulators have a toggle for switching between the standard 2MB and 8MB RAM settings. It would be greatly appreciated if someone could add the option to Nymashock.

Sorry if this was not the correct place to put a feature request.

Spikestuff commented 1 year ago

This is just basically asking for a devkit version of the emulator, as that's what the 8MB was used for. Technically inaccurate to that of a final console release, but was a thing for the devs of the original PlayStation.

If you want your homebrew to run, you really have to aim for the 2MB, otherwise that homebrew won't be able to run on actual hardware.

MottZilla commented 1 year ago

I'd like to clarify. The primary reason I'd like the 8MB option is for hacks of games like Castlevania Symphony of the Night. By having an additional 6 megabytes of RAM that is not used by the base game it would enable a lot of possibilities. This would also apply to every other PS1 game that someone might want to hack/mod.

It is possible to modify original hardware to have 8MB of RAM and has been done by multiple people. The MiSTer PSX core as well as other emulators like DuckStation and No$PSX have options to enable 8MB mode. The PS1 Kernel actually defaults to 8MB mode when setting the memory control registers so nothing special has to be done other than mapping 8MB of memory instead of 2MB.

I don't think this would be such a huge change to implement. It seems like it would just require allocating the extra memory and changing the address mask from 1FFFFF to 7FFFFF. I suppose other bits would need updates maybe like save states to save the larger amount of memory.

Please consider it. I do have a program that will detect the amount of memory available and it works properly in emulators that support the 8MB mode. I can provide it for testing. Thanks for your time.

YoshiRulz commented 1 year ago

Doesn't look like such a feature exists in Mednafen. Please direct this request upstream (they also have an IRC, not sure which is more active).

MottZilla commented 1 year ago

I have made the request on their forum. If I don't get a response I'll try IRC. Thanks for your help.