top of page
loading_reduced.jpg

1.06 / 29-05-2023

BigPEmu

Accuracy

Performance

Features

average rating is 4.3 out of 5
average rating is 4.1 out of 5
average rating is 4 out of 5
competition

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

--1.06--

  • Made sure native rendering works even with a Screen Effect active. However, this isn't generally a recommended combination, as the effect will be sourcing from a native-resolution buffer instead of a Jaguar-resolution buffer. (post-Patreon build addition)

  • Added a -conout command line option. Under Windows, this spawns a console and directs log output here instead of to a file. (post-Patreon build addition)

  • The breadth of functionality encompassed by the scripting system is too vast to cover here, so I've made a video to highlight some of the features and explain how the existing scripts work.


Changes

  • New scripting system. In developer mode, scripts are auto-recompiled on startup. Developer options are also available to automatically detect script changes while the application is running. Compiled scripts must be enabled through a new Script Modules feature.

  • A new script is included which allows Cybermorph to render polygons/textures at the native resolution.

  • An option for adjusting MSAA has been added to the video settings. This is only relevant to things which use the native depth buffer, like the new Cybermorph script.

  • A new script is included which allows uncapping the framerate in Alien vs. Predator.

  • A new script is included which fixes flickering in the Brett Hull Hockey prototype.

  • A simplified CRT library along with a whole bunch of BigPEmu-specific API functionality is included in the scripting system via the Scripts/bigpcrt library.

  • Basic native DLL (CDECL) call functionality has been implemented in the scripting API, so that others can take the initiative to start implementing things like RetroAchievements as desired.

  • Added native mouse input support. (must be enabled in the input settings) Mouse movement and buttons can be bound to analog, rotary, and digital inputs interchangeably.

  • Some more work on debugger-enabled builds has been done behind the scenes, but this shouldn't affect anything user-facing just yet.

  • Even more terrible secrets have been added.

  • The breadth of functionality encompassed by the scripting system is too vast to cover here, so I'll probably be making a video to highlight some of the features, geared toward both users and developers. Check my social media or my Discord server for updates.

  • Please help me out with support on social media and Patreon! Things have continued to be rough on the health front lately, and I've found it's getting harder to use Twitter to reach my actual target audience, so I'm depending more on organic word of mouth to spread project news and hopefully bring in support.



--1.054--

  • Made some adjustments to the refresh rate warning logic introduced in the last version. The warning is inhibited when VSync is disabled (no, don’t do it!), and an option to disable the warning has been added.

  • VLM’s CD+G support is now working.

  • Refresh frequency can now be specified when selecting a display mode. (previously, the highest available was auto-selected)

  • The program will now warn you if you’re using a native display refresh rate which is lower than the Jaguar’s current display frequency. (50Hz for PAL, 60Hz for NTSC)

  • There’s now a warning under the Mount Images menu telling users to avoid setting a cartridge image with a disc image if the two were not designed to run together. Depending on the CD BIOS (and if one is set at all), this can cause a wide variety of problems, so don’t do it.

  • Fixed a Blitter issue which was introduced several versions ago. The issue could result in crashes, especially when running Fight for Life.

  • Fixed a problem with SUBQMOD, although there are no known instances where this fix changes any behavior in the retail library.

  • Fixed more unmapped read behavior which was preventing some homebrew from running correctly.

  • Fixed a Blitter negative base address issue.

  • Various other minor bug fixes. Thanks to all of the people who submitted bug reports through the web site!



--1.053--

  • VLM's CD+G support is now working.

  • Refresh frequency can now be specified when selecting a display mode. (previously, the highest available was auto-selected)

  • The program will now warn you if you're using a native display refresh rate which is lower than the Jaguar's current display frequency. (50Hz for PAL, 60Hz for NTSC)

  • There's now a warning under the Mount Images menu telling users to avoid setting a cartridge image with a disc image if the two they were not designed to run in together. Depending on the CD BIOS (and if one is set at all), this can cause a wide variety of problems, so don't do it.

  • Fixed a Blitter issue which was introduced several versions ago. The issue could result in crashes, especially when running Fight for Life.

  • Fixed a problem with SUBQMOD, although there are no known instances where this fix changes any behavior in the retail library.

  • Fixed more unmapped read behavior which was preventing some homebrew from running correctly.

  • Fixed a Blitter negative base address issue.

  • Various other minor bug fixes. Thanks to all of the people who submitted bug reports through the web site!



--1.052--

  • Added a « Sample Scale » option for the System Audio Disc.

  • I heard you like minor timing fixes, so I made some minor timing fixes to the minor timing fixes.

  • Minor timing fixes.



--1.05--

  • Jaguar CD support! This encompasses a whole bunch of new functionality. Thank you to Mycah Mattox for donating the Jaguar CD hardware, this hardware was essential for my research.

  • Added -nodevicechange and -fulldevrefresh as command line options.

  • Added -forceloadaddr and -forcerunaddr as command line options.

  • Added -setcfgprop and -setcfgpropcat as command line options.

  • Added -audiocapindex as a command line option, can be used when launching *VirtualDisc_SystemAudio as the ROM image via command line.

  • Added -physdevindex as a command line option, can be used when launching *VirtualDisc_SystemPath as the ROM image via command line.

  • Added another DirectInput workaround which may help prevent stuck analog controls on some machines. Thanks to neurocrash for spending a lot of time running tests for me on a machine where this was an issue!

  • Fixed a problem with depth writes in 32-bit mode, thanks to 42Bastian for providing a test case.

  • Fixed an issue with word strobes not being correctly scheduled until a write to SMODE/SCLK. (only relevant when running with no boot ROM set)

  • Fixed a timing problem with EEPROM reads.

  • Fixed scaling on monitors with a non-standard DPI.

  • When adding a new individual input trigger in the binds menu, the prompt mode now defaults to « specify hold and button » instead of just « specify button ». (in line with binding all inputs via « Set All »)

  • Lots of additional core emulation fixes which came along with CD support.

  • Implemented some intentional redundancy in the OpenGL video plugin’s state management, to guard against things like Discord’s video capture poking around in the context without cleaning up after itself.

  • With CD support wrapped up, I’m taking a short hiatus! I need to recouperate, generate some income, and prepare for the next phase of my cancer treatment. Please don’t inundate me with fix/feature requests via e-mail/Discord/etc. during this time. Instead, I ask that you use the less invasive Bug Report form on the web site. Thank you for your consideration!



--1.04--

  • 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.



--1.03--

  • Fix for some emulator state overrides not sticking when launching software via command line.



--1.02--

  • 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.



--1.01--

  • 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.



--1.00--

Initial Release

Show Previous Changes
bottom of page