1.04 / 27-12-2022
BigPEmu can run every game in the Jaguar's retail cartridge library.
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.
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.
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!
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.
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.
Featuring support for analog controllers (both via external bank switching and the ADC), driving controllers, rotary controllers, and Team Tap.
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.
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.
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.
Native fast forwarding capability, which can be assigned to any input.
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)
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.
Windows: Nothing reported
Added -devmode as a command line option. Don’t get too excited, this isn’t opening up full developer build functionality just yet. (and the option will be auto-enabled in proper developer builds) It does enable a developer menu, though, and some additional developer-oriented key binds.
Added a « Local EEPROM » option to the new developer menu at CJ Reboot’s request.
Added a « Save Window Position » option to the new developer menu at CJ Reboot’s request.
Added an « Always on Top » option to the new developer menu at CJ Reboot’s request.
Added a new set of developer input binds, which are only accessible when using -devmode. Most of these new binds were added at 42Bastian’s request.
Now picking through individual device/state changes instead of just refreshing all input devices when a DEVNODES_CHANGED-type message is received. Fixes input disruptions on machines where something is causing DEVNODES_CHANGED spam.
Fixed a problem when recording a movie with the « Increment on Save » setting enabled. Thanks to Doug Engel for finding this bug!
Fixed a crash when entering the Zero 5 sound options screen.
Every issue which was submitted through the Bug Report form on the website has now been resolved. Thanks to everyone who contributed! If you submitted something which still isn’t resolved in this build, let me know.
Fix for some emulator state overrides not sticking when launching software via command line.
Added interlaced display support. This is definitely not working the way it works on hardware, but it addresses the test case that Doug Engel was kind enough to send over.
Added a "force horizontal overscan" option.
Added an option to force Jaguar GD emulation, which enables bank switching even in ROM images smaller than 6MB.
Added -localdata as a command line option.
Changed the first visible column default. (applies to both NTSC and PAL)
Fix for a 16-bit DAC write bug. (fixes one-sided audio in Super Burnout)
Fix for a problem on the Blitter's SRCSHADE data path. Thanks to Doug Engel for reporting the BattleSphere bug which led to this fix.
Fix for OP sometimes running over HDE, thanks to CJ Reboot for reporting the associated bug.
Fix for input bindings sometimes not being picked up from per-game config files. This bug could also potentially cause game-specific bindings to "stick" and infect the global config bindings.
Added variable-sized EEPROM support, thanks to Reboot for providing some test cases. 512 byte and 2KB EEPROM settings are picked up from the MRQ file if it exists, otherwise any number of EEPROM address bits can be specified via the -eeprombits command line option.
Added JaguarGD bank switching support.
Fix for exception-handled M68K reads in unmapped address space.
Fix for Blitter not correctly wrapping cyan/red on add when ADDDSEL is set, thanks to ScatoLOGIC for reporting the BattleSphere bug which led to this fix.
Fix for Blitter not starting on the correct bit when block width is less than pixel size and phrase mode is not enabled, thanks to ScatoLOGIC for reporting the BattleSphere bug which led to this fix.
Going in for a major surgery tomorrow (2022/12/06), so expect that I’ll be mostly unavailable and that there won’t be any emulator updates for at least a couple of weeks.