Mu/SquirrelJME Dual-Release

Mooey Quaaasmas!

Hi! We are pleased to announce the release of Mu and SquirrelJME!

Mu v(1/3*3) (by meepingsnesroms)
SquirrelJME 0.2.0 (by XerTheSquirrel)

Mu is the first Palm OS emulator capable of actually playing Palm games, it is currently capable of playing most 160×160 Palm OS 4 software perfectly, there are a few hardware abstraction glitches and sound FIFO inaccuracies but other than that the device works and the audio plays normally, this is with no hacks done to the OS. The main target is RetroArch so it runs on everything, an additional Qt port is available for desktop and Android with debug tools, but Qt itself is horribly broken on Android right now for multiple reasons.
– GitHub: @meepingsnesroms

SquirrelJME is a Java ME 8 Virtual Machine written purely in Java, which also intends to be compatible with J2ME! If you do not know what J2ME is, it is the Java of old flip phones which run MIDlets. In 2014 a new embedded Java standard was released and this is the standard which SquirrelJME is based on, meaning that it is easier to program and far more modern. This is a work in progress and not every single application will run (currently just basic applications), but support for more applications is coming in the future! Currently it runs on existing Java SE VMs so you will need a Desktop Java SE installed. SquirrelJME will see a port to RetroArch in the future as well, however that is still a few months away.
– GitHub: @XerTheSquirrel

Check them out here:

* https://github.com/meepingsnesroms/Mu
   * https://discord.gg/4fBHrHT
* https://github.com/XerTheSquirrel/SquirrelJME
   * https://multiphasicapps.net/uv/download.mkd
   * https://discord.gg/9PkMMKt

We hope that you enjoy them!

BeetleDC Libretro Progress Report – December 2018

It’s been a pretty busy end of the year for the BeetleDC core. Most of the work consisted in finalizing and improving support for Naomi and Atomiswave arcade ROMs.

Naomi / Atomiswave

Naomi GD-ROMs are now supported and this adds more than 120 Naomi games to the list of supported arcade games.
ROMs archived with 7zip as well as parent/split ROMs are now supported as well.
Another new feature is the use of per-game input descriptors: so instead of binding “Button 1” or “Axis 1”, you’ll have descriptive names such as “JUMP” or “STEERING WHEEL”. Not all games have input descriptors but more will be added in the future (and pull requests are welcome.)


In addition, many bugs have been fixed allowing many arcade games to now be fully playable: 18 Wheeler, Airline Pilot, Cosmic Smash, House of the Dead 2, Jambo Safari, Ninja Assault, Shooting Love, Virtual Athlete, Virtual On Oratorio Tangram and probably more.

Dreamcast

On the Dreamcast front, a recent but notable improvement is the automatic setting of the BIOS date and time at boot. So you should never see the date/time setting screen again. In the same area, a new core option allows to choose the BIOS language, so you don’t have to boot the BIOS to change it.
Using the Libretro disk control interface, disk swapping has been implemented. When asked by the game, you can now virtually eject the current disk and select a new one without restarting. Some multi-disk games require this feature such as D2 or Pop’n Music 3 and 4 append disks.

Another new feature for both console and arcade is the Synchronous Rendering core option. This option is only active with Threaded Rendering. When activated, it will pause the emulation thread instead of dropping a frame, which results in less dropped frames and thus a better and smoother frame rate.
Finally, Restart has been implemented so one can reset a game without having to restart the front-end.

 

Happy and Peaceful Holidays!

PlayStation Classic Boot Menu + RetroArch + 91 Cores, Christmas 2018 public BETA

LibRetro logo

PlayStation Classic Boot Menu + RetroArch Christmas 2018 public BETA

Due to the efforts from CompCom and other members of the ModMyClassic community we are happy to announce the pre-release of the new PlayStation Boot Menu + RetroArch for this year’s Christmas holidays!

Whilst this pre-release is a working beta of a future development of BleemSync, we felt that you guys should be able to give a try and have some fun with it over the holidays.

Included in this pre-release is the Boot-Menu by CompCom, RetroArch for the PlayStation Classic and an initial batch of 91 cores. (Emulators) Please note that this is a pre-release of an upcoming module and development! This means that we are expecting some issues and shouldn’t be considered as a final release. This includes all of the 91 cores listed for the console, we haven’t had time to fully test or polish the builds for the PlayStation Classic but the majority should work absolutely fine.

Because of this, we ask you that you please notify us of any issues you encounter in our PlayStation Classic support channel in our discord here. We thank you in advance for your feedback and we will work on making improvements/fixes based on any feedback given to us.

To download and read how to use please go to: https://modmyclassic.com/?page_id=1229 for the full instructions and links.

Everyone at ModMyClassic would also like to wish you a happy Christmas and happy holidays!

Introducing Kronos: a new Sega Saturn/ST-V emulator

Kronos is a fork of YabaSanshiro, which is itself a fork of Yabause. The project was started by François, his main goal was to have an emulator benefitting from YabaSanshiro improvements, while being friendly with x86_64 architecture and desktop computers.

Over time, several new features were added :

  • Sega ST-V emulation (the arcade version of the Sega Saturn)
  • Modern OpenGL Core support, it should now have a fair compatibility, even with intel GPUs, the minimum requirement is OpenGL 3.3 Core, and 4.2 if you want to benefit from gpu tesselation

Additional things to know :

  • It’s using a high performance SH2 cached interpreter, albeit different from the dynarecs used in YabaSanshiro, the CPU frequency requirement is still around 30% lower than an emulator using a classic SH2 interpreter like beetle-saturn
  • It’s compatible with beetle-saturn savefiles, there is even a core option to load them from the same path
  • It’s compatible with zipped cue+bin+wav isos, you don’t need to uncompress them or convert them to CHD
  • There are several core options to improve rendering (tesselation, upscaling, …)

Shining Force 3 on Sega Saturn :

Cotton 2 on Sega ST-V :

Things to do/fix :

  • Improve compatibility with non windows/linux platforms, in the case of MacOS X we’ll first need a retroarch with OpenGL 3.3 enabled
  • Improve input lag, we are 1 frame behind beetle-saturn at the moment
  • Add CHD support
  • Hook optional YabaSanshiro SH2 interpreters as core options, while they are not cross-platform, they could be interesting to further improve performances on their respective platforms (x86_32,arm,arm64)
  • Hook alternative input devices (lightgun, mouse, keyboard, …)
  • Fix the “toggling fullscreen/windowed” issue (it will result in a black screen if you do that while playing)
  • Fix game specific issues, detailed reports are welcome at https://github.com/FCare/Kronos/issues

There is a compatibility list available here

New Vulkan graphics enhancements features in Beetle PSX HW!

MDEC YUV filtering

PlayStation used a special unit called the MDEC to decode full motion videos instead of relying on software rendering (like the Saturn). These videos were encoded in YUV macroblocks and had to be converted from YCbCr to RGB so that the PSX can output the final image to the screen. A common issue with PlayStation emulators is that the chroma channel generally should be smoothed, but the PlayStation tend to leave it unfiltered.

There’s now a feature called ‘MDEC YUV smoothing’ which does filter the chroma channel. You can see the before/after screenshot above (video in question is the Resident Evil 1 intro) to see the kind of visual enhancement this brings to the picture.

SSAA (Super Sampled Anti Aliasing)


Some people prefer to play PlayStation1 games at native resolution and just applying a CRT shader at the end instead of running them at very high resolutions. However, there are some issues with that approach. 3D polygon graphics can tend to look very aliased and jagged and lacking in definition.

Alternatively, others like to crank the resolution up as high as possible. Both approaches have their pros and cons, but a definite disadvantage is that early 3D was very primitive so you might not want to see razor sharp angular polygons rendered at obscene resolutions, especially when a game relies a lot on pre-rendered backgrounds and other 2D elements. The Final Fantasy and Resident Evil games come to mind for one.

The option ‘Adaptive smoothing’ already exists and it attempts to distinguish 2D elements from 3D elements. It will smooth out the 2D elements but leave the 3D elements alone, resulting in a high resolution picture with the 2D elements not looking pixelated and ugly.

This new Vulkan-only option, SSAA, is a completely new approach. The image is rendered at the internal resolution you set it at (2x/4x/8x/16x, you name it). It then downsamples it at the final output stage back to a resolution somewhere in the ballpark of 240p. What you get is a low-resolution image with very clean anti-aliased 3D, kinda similar to the N64 actually which had native 8x multi sampled anti aliasing of some sort.

Certain CRT shaders expect a 240p-ish image to look their absolute best, so this option lends itself very well to that. It also can tend to look bit more coherent with mixed 2D and 3D in cases where adaptive smoothing fails.

Tip: We recommend you turn dithering off when using SSAA (Super Sampled Anti-Aliasing).

Example – Final Fantasy IX

Below you see SSAA in action with Final Fantasy IX on RetroArch. The first image is SSAA at 1x internal resolution. The second image is SSAA at 8x internal resolution. You can see how the downscaling does its magic in the second picture – it results in an image that almost looks like as if the polygon characters are part of the background itself.

Finally, a CRT shader is used – crt-royale-ntsc-320px.

Final Fantasy IX – SSAA at 1x internal resolution with CRT Royale
Final Fantasy IX – SSAA at 8x internal resolution with CRT Royale

Dithering for Vulkan

PlayStation and N64 output the final image at 16 bits per pixel. Since that isn’t a particularly wide colorspace, both systems used dithering in order to fake the illusion of a larger palette of colors. This combats color banding and wouldn’t be very noticeable at native resolutions on a CRT TV. On more powerful hardware and when emulated, the limitations of this approach become clear, and some would prefer either internally rendering the dithering at the internal resolution, or disabling it altogether.

Dithering was previously ignored by the Vulkan renderer and was always turned off, no matter what you configured. Now it will actually let you enable it. If dithering is enabled, the scanout image will be 16 bits per pixel. If it is disabled, the scanout image will be 32bits. We recommend that you turn dithering off if you are going to be using ‘SSAA’ (Super Sampled Anti Aliasing)