Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE REQUEST] Cheat code support? #136

Open
N0th1ng2Do opened this issue Oct 20, 2024 · 4 comments
Open

[FEATURE REQUEST] Cheat code support? #136

N0th1ng2Do opened this issue Oct 20, 2024 · 4 comments
Labels
enhancement New feature or request

Comments

@N0th1ng2Do
Copy link

This emulator is looking great and im very excited to see how it progresses, just wanted to ask if adding support for cheat code usage (game genie, action replay or just standard changes in memory addresses) for the supported systems is possible and/or something you'd want to implement in the future?

@jsgroth jsgroth added the enhancement New feature or request label Oct 21, 2024
@jsgroth
Copy link
Owner

jsgroth commented Oct 21, 2024

Cheat support is not a very high priority for me because I personally don't use them very often, but it is something I'd like to support in the future!

I'd like to support whatever formats make sense for the different systems, e.g. Genesis seems to mostly use Kega Fusion's ROM/RAM patch format, NES seems to be mostly Game Genie codes, etc. The different cheat formats all seem to work pretty similarly, they just encode the memory overrides differently.

@Blackgrowl
Copy link

I'd like to recommend this suggestion, I am not into cheating myself but I know that some cheats may be more for enhancements than just plain cheats, for example, 60 FPS and Widescreen.

Though rare in Genesis, it may be more common in the future...Or perhaps a "Widescreen Hack" can be made for jgenesis? In which case I would need to make a new thread for that.

As long as jgenesis can accept GameShark and Action Replay codes both it should be fine I believe, no idea if Gecko is used.
There's a way to acquire cheat codes from a library too, Dolphin and DuckStation have something similar.

@jsgroth
Copy link
Owner

jsgroth commented Nov 25, 2024

Thanks for the input. I do get that use case - using a cheat code for an enhancement does make more sense than a ROM patch in cases where the enhancement only needs to modify a few bytes in the game code. I've used similar "cheats" for doing things like increasing a game's text speed when there's no in-game option for it.

A widescreen hack is possible as a future enhancement, though I suspect that it won't work well without hacking/patching games to account for the expanded viewport. Most games rewrite offscreen parts of the background either right before they scroll into view or right after they scroll out of view, and most games also pretty aggressively prune the sprite attribute table to remove sprites that are fully offscreen (since horizontally offscreen sprites still count towards per-scanline limits). Of course there's a chicken-and-egg situation here where no one is going to bother hacking games to better support widescreen if no emulators support it, so it might be worth implementing regardless.

@jsgroth
Copy link
Owner

jsgroth commented Nov 25, 2024

I opened #141 for the topic of a potential widescreen hack

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants