Lemuroid 1.3.0 and tilt support

In the last few weeks I’ve come to realize a very hard truth: two thumbs are sometimes not enough to play games on a touchscreen. The first attempts to artificially manipulate my genome failed, so I decided to opt for a different strategy: leveraging hardware sensors.

This sounds nice on paper, but the real challenge is defining a good UX which solves all the usability problem sensors have (many implementations out there fail here).

  • How do we make sure sensors are both accurate and fast?
  • How do we guarantee they are used only when actually needed?
  • Which retro control are we going map to sensors?
  • How do we determine a good rest position?
  • How can we avoid forcing the user into an uncomfortable position to please the gyroscope?

Luckily Google answers the first question with virtual sensors (TYPE_GAME_ROTATION_VECTOR), providing a nice fusion algorithm on data coming from accelerometer and gyroscope, with great results on a modern device.

Users are given complete control, they can just enable it by double tapping on an analog stick which will start moving on its own following the device tilt. The rest position is computed from the first measurements and the difference with the following ones is used to drive motion.

To disable sensors, a single tap on the active stick is enough and it will go back to being a simple touch control. You can now lie on the couch and start again.

With just a bit of practice I found the accuracy of the inputs methods comparable, but with a bonus finger at your disposal and maybe a bit more of fun! You can check the video if you don’t believe my words.

This feature is already available in Lemuroid 1.3.0 (out on GooglePlay) along with improved layouts for every console. Try it out and feel free to let me know what you think!

Ok, this is great, but what about $FEATURE? A sneak peek: Lemuroid 1.4.0 is in beta with game pad bindings and external PlayStation BIOS support.

Cheers!

Lemuroid 1.1.1

screenshot

The first stable version of Lemuroid was released about a month ago, but I’m not done with it just yet. You guys have been amazing and provided a lot of feedback, which was distilled into version 1.1.1, released just a few days ago.

For starters we have a few new systems:

  • Sony PlayStation (PSX) (with multidisk support in .pbp format)
  • Atari 2600 (A26)
  • Sega Game Gear (GG)

Then we have some new features:

  • Labels on buttons (this was probably the most wanted feature :D)
  • Improved detection for iso/pbp files
  • Virtual buttons no longer overlap with touchscreen on NDS
  • Added a virtual button which simulates microphone noise on NDS

And to finish, I also exposed a few core options such as:

  • Game Boy colorization palette and LCD blur
  • Video filters and color correction for various systems
  • Frameskip for PSX and NDS

As always, you can find the source code on Github or grab it from Google Play.

Enjoy!

Welcome Lemuroid!

This year brought the first stable release of my new pet project: Libretro Emulator for Android, or in short… Lemuroid!

It’s a very simple to use, nice looking, native, Android friendly application which leverages Libretro to emulate all your favourite consoles:

  • Nintendo (NES)
  • Super Nintendo (SNES)
  • Game Boy (GB)
  • Game Boy Color (GBC)
  • Game Boy Advance (GBA)
  • Sega Genesis (aka Megadrive)
  • Sega Master System (SMS)
  • Nintendo 64 (N64)
  • PlayStation Portable (PSP)
  • Arcade (FinalBurn Neo)
  • Nintendo DS (NDS)

Lemuroid scans your roms directory to detect compatible games, automatically downloads covers and lets you play with customized touch controls or an external gamepad. It supports autosave, save states and screen simulation shaders (CRT or LCD) to replicate some of the original feeling.

You can find the source code on Github and install it from Google Play.

Many thanks to all the testers that went through alpha and beta, you have been amazing!

Enjoy!

Here's crt-live-coding!

Hello again my friends, on this very hot day I want to share with you something cool! It’s a cool-retro-term fork specifically designed for music live coding.

It combines many of the graphical effects of CRT with a supercollider based music visualization. You can basically run any cli application commanding a supercollider backend and literally see music.

crt-live-coding is using FoxDot (which is amazing) and vim as a text editor.

Since a picture is worth a thousand words, and a video is worth a thousand pictures here’s me playing with it:

This is still a very early release, but if you want to try it out you can find the source code on github:

https://github.com/Swordfish90/crt-live-coding

Enjoy!

Cool-Retro-Term 1.1.1 is out!

release_screenshot2

Hi fellow readers,

in the last few months I’ve been working very hard to give CRT some of the love it deserves, and I’m very proud to announce you this new major release!

The most important changes include:

  • Two years of upstream (qtermwidget) terminal fixes
  • Big performance improvements (and lowered resource consumption)
  • New shiny (literally) frame
  • System fonts support
  • Countless under-the-hood improvements and fixes

On the packaging side (many thank to https://github.com/probonopd) we also have CRT AppImages, which are easy to install on any Linux distribution; Ubuntu users will have to wait a bit more, but a proper snap package is on the way (thanks to https://github.com/kz6fittycent).

You can grab the latest AppImage and dmg files from here:

https://github.com/Swordfish90/cool-retro-term/releases/tag/1.1.1

Have fun!