stranno
Member
3DO/Jaguar emulator Phoenix already achieved great compatibility many years ago (around ~85%), but this new emulator, BugPEMu, is finally compatible with the full cartridge library. Jaguar CD emulation yet to be added.
Features
- Full compatibility.
BigPEmu can run every game in the Jaguar's retail cartridge library. - Fast.
The emulator runs the entire retail library (with default settings) at full speed on almost any x64-capable processor. Every Jaguar processor runs on a single native core (maintaining deterministic emulation) and doesn't rely on any dynamic recompilation (maintaining console compatibility), all the while maintaining extremely low system requirements. - Accurate.
It's the most accurate Jaguar emulator to-date, although there is still lots of room for improvement. I'm continually working toward achieving system-wide cycle-accurate timing. - Better than hardware.
Although the emulator defaults to settings which are catered toward compatibility and accuracy, it's capable of far more. Settings are exposed to overclock/underclock each of the Jaguar cores, as well as to adjust the speed and accuracy of other system components. BigPEmu enables you to play lots of Jaguar games at a full 60 frames per second for the first time ever! - Saved states and movies.
Everything is completely deterministic, just like real life. That's right, I went there. This means that all "randomness" is also controlled by a preserved seed. BigPEmu can record movies from nothing but controller inputs, and play them back with perfect accuracy. You can even interrupt a movie's playback and start playing yourself at any point. - Excessive presentation detail.
I've gone all-out on this one. There's native support for the Jaguar Game Drive's MRQ format in the cartridge browser (as well as box art sourced from PNG files), support for global and per-game backgrounds, and even support for controller overlays! Overlays are composited into the Jaguar controller on-the-fly, displayed on both the input binding screen and the helpful pop-up controller info display. - Extra device support.
Featuring support for analog controllers (both via external bank switching and the ADC), driving controllers, rotary controllers, and Team Tap. - Glorious shaders.
The emulator comes equipped with a powerful, fully customizable postprocessing system. The system supports any type of effect you can imagine, from applying smoothing filters to simulating CRT displays. - Native HDR support.
HDR displays are natively supported, complete with options to tune the output to the characteristics of your display and to force postprocessing effects to employ HDR buffers all the way through the post chain. This means postprocessing effects take full advantage of that increased color precision and push it all the way through to your eyeballs. CRT shaders reap all the benefits. At 4K with HDR color output, they are an amazing sight to behold. - Per-game profiles.
Mapping the Atari Jaguar controller to anything other than a telephone with wings can get a little complicated, so you might want to switch your controller mapping up for different games. You can do that! With per-game profiles, you can automatically load up a new input scheme (or any other emulator setting) each time you load a game. - Manipulate time.
Native fast forwarding capability, which can be assigned to any input. - Plugins.
Stock plugins cover support for video, audio, input, and networking across broadly compatible API's, with the potential to easily expand to any platform/interface. The OpenGL video plugin can scale all the way from its default incarnation (with support for effects, distance field fonts, etc.) down to fixed function OpenGL 1.0, meaning that the emulator can run on just about any GPU that can run GLQuake. (although the font would look pretty bad on some of them) - The usual.
Enjoy all of the emulator niceties you've come to expect in modern times. Automatic preservation of EEPROM, PAL support, custom boot ROM images, native support for multiple displays and different aspect ratios, custom display cropping, extremely customizable input, custom language support, and a whole lot more. - Full of terrible secrets.
No, really, it is. You'll never find them.
BigPEmu launched as an extremely full-featured emulator, but there's still a lot to do! Some of the big-ticket items which remain are:
- Jaguar CD support.
I need your help with this one! Jaguar CD units are way too expensive, at least right now, and I don't have one. Please consider donating if you can spare either the hardware or money for one. If you do have a hardware unit that you're willing to donate (no temporary loans, please, I don't want to be responsible for lost/damaged hardware), please contact me. Although I can make some progress by blindly emulating features used in existing software, the only path toward complete accuracy (and the emulation of features which may not be utilized in existing software) involves working with real hardware. - Jaguar VR support.
I'm planning on giving Jaguar VR the same treatment that I gave to Sega VR! As with Sega VR, I was able to create a nice implementation without having access to the hardware, but having the hardware would still help a lot and ensure a greater degree of authenticity. As above, if you have hardware that you'd be willing to part with, please contact me. - JagLink support.
After all, what use is anything if you can't Deathmatch on it? Once again, I could use some support on this one, as I need to buy a JagLink (or modern substitute) and another Jaguar if I want to go beyond the blind software implementation. - Greater accuracy.
Timing is still far from perfect in BigPEmu. There are some known quirks here and there, but the next big step toward even greater accuracy is full emulation of bus access and priorities. This is generally an expensive thing to do in software, so it will likely be paired with the next goal... - Make it even faster!
BigPEmu is already pretty well optimized, but there's still some low-hanging fruit to improve performance even more. This will enable BigPEmu to run on even older hardware, but perhaps more importantly, it will make room for the expensive options which move us closer to being cycle-accurate. - Developer builds.
Behind the scenes, BigPEmu already enjoys full integration with the Noesis debugger, and has a wide variety of other debugging and development features. However, I still need to clean some of these features up and prepare separate builds which are specifically catered toward Jaguar developers. - Flexible scripting.
Natively, BigPEmu has already implemented a complete interface for scriptable breakpoints, and uses a special technique to make breakpoints free on the RISC processors. My plan is to open this system up with script bindings, so you will be able to easily set breakpoints, poke RAM, and otherwise do anything you could want to do to the emulated system through easy-to-use script code. This will enable TAS, achievements, and many other things. - Ports.
BigPEmu is already extremely portable, and runs on at least 6 different console/desktop platforms. The framework it employs for this standalone release is also designed around portability, so I'm planning ports to Linux and macOS at a minimum. However, I don't actually have any machines running macOS at the moment, so that's a small blocker. - Murder all the bugs.
There are probably still a bunch of bugs that I don't know about, and you can help me find them.
BigPEmu
www.richwhitehouse.com