jBoy

Rating: 
4.9
Your rating: None Average: 4.9 (10 votes)

Gameboy emulator for Sailfish OS

Put your *.gb roms to "/home/nemo/Documents/jboy_roms". The folder will be also created on first launch.
Some *.gbc roms can also be played with jBoy. Just rename them to *.gb and they can be started.

Features:
- Running most Gameboy roms
- Gamepad in theme colors or original color
- Option for emulation speed (5 Steps)
- Show FPS during emulation
- Option for original screen color or greyscale
- Logging on file (primary for bugfixing) to /home/nemo/Documents/jboy_log.txt
- Supporting MBC1, 2, 3 (with RTC) and 5
- Supporting up to 256 rombanks and 16 rambanks
- Original RAM saving when cart is using a battery (Creating *.sav file for *.gb file)
- Savefiles are (except RTC-Roms) compatible with other emulators
- Gameshark cheatcodes (Up to 25 per rom)
- Scale screen up to three times (Default size can also be set)
- Screenshots (saved in original resolution in "/home/nemo/Pictures/jboy_screenshots/%Timestamp%.png")
- Debugger (primary for bugfixing)
- Savestates (inclusive quicksave and -load)
- Sound support
- Link-Cable emulation

 

Do not run any software you don't own with jBoy.

 

https://flattr.com/profile/M1KE

 

Screenshots: 
Application versions: 
AttachmentSizeDate
harbour-jboy-0.8.1-1.armv7hl.rpm116.7 KB02/02/2016 - 21:04
harbour-jboy-0.8.5-1.armv7hl.rpm124.94 KB10/02/2016 - 15:05
harbour-jboy-0.8.7-1.armv7hl.rpm128.84 KB19/02/2016 - 22:24
harbour-jboy-0.8.7-3.armv7hl.rpm128.77 KB21/02/2016 - 21:21
harbour-jboy-0.9.7-1.armv7hl.rpm134.49 KB22/06/2016 - 14:01
harbour-jboy-0.9.8-1.armv7hl.rpm138.01 KB08/08/2016 - 23:49
harbour-jboy-0.9.8-1.i486.rpm135.58 KB08/08/2016 - 23:49
harbour-jboy-1.0.0-1.i486.rpm172.36 KB20/04/2017 - 22:23
harbour-jboy-1.0.0-1.armv7hl.rpm175.87 KB20/04/2017 - 22:23
Changelog: 

Changes in 0.8.5:

Added savestates
Added landscape mode
Timer bugs fixed

 

Changes in 0.8.7-1:

Fixed serial interrupts
Keyboard input (tested with a bluetooth keyboard)
Changes in gamepad
Fixed bugs

 

Changes in 0.8.7-3:

Fixed bugs

 

Changes in 0.9.7:

Sound support
Added Quicksave and -load
Added chooseable gestures (Swipe in gameboy lcd)
Bugfixing

 

Changes in 0.9.8:

Changes for Jolla C
Gamepadsize configurable
Fixed rombank change
Fixed window behaviour
Fixed isAutoRepeat for keyboards
Fixed interrupt at LYC write
Fixed scanline color when screen goes off

 

Changes in 1.0.0:

Linking cable emulation (network and local)
Improved performance
Fixes for SailfishOS 2.1
Improved sound and fixed channel 3
Added cover
Rendering option
Added slow motion
Added a few keyboard colors
Added landscape gamepadmode
French translation (Thanks to Quentin PAGÉS)

Comments

Skillmon's picture

I love this emulator. Thank you very much. I have 1 request. Could you please make saving faster? I mean in the save dialogue there is a remorse timer. It would be great if it would save when you leave tje save menu before the time is up. Would be like in other parts of SFOS and for me is expected behavior. I know tjere is quicksaving (awesome!) but this would be great!

DarkWhite's picture

Great app =) If only all TOHKBD2 keys would work. As Ingvix already said, only physical a control panel key (49) press does work. I followed the bug report steps and here is a log file contents (touchscreen keyboard options were inactive):
_______________________________________________

|LOG| jBoy log
|LOG| OPENED AT Sat Jul  9 16:52:08 2016

|LOG| JBOY-VERSION 0.9.7
_______________________________________________

|CHECK| #0001# 1048576 BYTE ALLOCATED
|CHECK| #0005# READ 32768 BYTE FROM SAV-FILE
|CHECK| #0003# ROM-Name: POKEMON RED
|CHECK| #0006# ROM+MBC3+RAM+BATTERY
|LOG| Eventkey pressed 49
|LOG| Eventkey released 49
|LOG| Eventkey pressed 49
|LOG| Eventkey released 49
|LOG| Eventkey pressed 16777235
|LOG| Eventkey released 16777235
|LOG| Eventkey pressed 16777237
|LOG| Eventkey released 16777237
|LOG| Eventkey pressed 16777234
|LOG| Eventkey released 16777234
|LOG| Eventkey pressed 16777236
|LOG| Eventkey released 16777236
|LOG| Eventkey pressed 32
|LOG| Eventkey released 32
|LOG| Eventkey pressed 16777220
|LOG| Eventkey released 16777220
|LOG| Eventkey pressed 79
|LOG| Eventkey released 79
|LOG| Eventkey pressed 76
|LOG| Eventkey released 76

______________________________________________

Using TOHKBD2 version 0.5.23 + Boston qmap fix (AltGr).

Ingvix's picture

A great update! Finally a sound support. I still find it odd though that I can configure TOHKBD but only button that actually works in game mode is the one dedicated for control bar.

M1KE___'s picture

I added some logging-parameters in 0.9.7 for TOHKBD - please can you try the following steps?

 

  • In Settings:
  1. Reset keyboard configuration
  2. Activate logging in settings
  3. Configure the complete keyboard new

 

  • Select any rom and press the previous configured keys one by one
  • Post the log here (located in /home/nemo/Documents/jboy_roms/jboy_log.txt) or send it to my mailadress (you can find it in the pulley-menu - About)

 

Thanks!

drcouzelis's picture

Thank you for this great emulator! So far I've used it to play through, in their entirety, Pokemon Red (20+ hours), Operation C (beat it with no cheats), ;) and Catrap. I'm playing through Hammerin' Harry, Kirby's Dreamland 2, Metroid 2, and Wario Land... It works great! :)

mrzapp's picture

This app works so well, the UI is great, all essential features are supported except for audio (personally don't care much, as I remember every sound in these games from my childhood) One of the very few apps to get an emulation UI exactly right, it's a breeze to play this on a touch screen

tamhou's picture

awesome app. one little idea: would it be possible to scale the picture bigger for the (few) tablet useres out there?

 

thanks anyway for this nice emulator...

 

 

 

V10lator's picture

Looks good. Anyway, here some bugs I found:

  • The Emulator won't set it's speed to anything more than the double of the original. Well, you can set it higher, but FPS wont go up nor will the game feel any quicker.
  • After some hours of gaming the gameboy screen flickers.
  • Some system popups slow the emulator down will they are shown, other are fluent (guess that's more a bug of SailfishOS).

Other than that: Are there any chances for you to open up the sources? Any plans to cooperate with EmuMaster ( http://talk.maemo.org/showthread.php?p=1400707 - they already have a GBA emu, so with jBoy all that would be left for GameBoy awesomeness would be GameBoy Color) ?

Crypto's picture

Amazing dude. thank you. best emulator for jolla

Ingvix's picture

TOHKBD still not working with the latest version. Oh well, can't have it all.

fravaccaro's picture

First of all, thanks for this, I'm having so much fun :)

I noticed a weird issue with savestates tho. They are correctly saved in the jboy_savestates but I cannot see them in the UI.

Steps to reproduce:
- Save a state.
- Go back.
- Go in the savestate menu again.
- No savestate snown.

M1KE___'s picture

Thanks, please try the update - it should fix this issue

cvp's picture

Nice work! Thanks!

one feature is missing, too

i love to play mario land. i hold Button B every time to run and push jump with it. but in this Emulator is it not possible because after pushing Button A , Button B stops working in this moment. Hope you understand me :) Cool was if its possible with one finger push both button to get this feature work.

Ingvix's picture

I can configure my tohkbd in settings but in game it doesn't have any effect. Also I don't seem to be able to open the control bar. No matter how long a hold the middle of the direction pad it won't appear like it use to. The landscape mode is pretty nice anyway.

M1KE___'s picture

I will have a look at that. I (sadly) have no tohkbd but I have an idea what could be the problem.

 

Please check if the new settings parameter "Open control bar" is set to something else than hold. Maybe I made a mistake in the default values.

Ingvix's picture

Previously it didn't work even though it was set to hold but after I changed it to tap twice and tried that, it worked, and then I changed it back to hold. Now it works with the holding too.

I tried the same trick with screen size change as it didn't work at first but after changed to hold and back to tap it also started working. Maybe there's similar problem with the keyboard but as it works a bit differently and not just back and forth, I can't really do the "workaround" to it. Like it's not actually activated by default even though it should.

M1KE___'s picture

Just uploaded the fixed version.

I think the tohkbd should work now.

Ingvix's picture

I don't see any new version.

If it's the same version number with the fix, then it's not working.

freedent's picture

Good job!

a_andreyev's picture

Thank you, M1KE!
Any link to git repo or something?

evk's picture

LSDJ isn't working for me. 4.8.0 doesn't start at all, same thing with 4.7.3.

M1KE___'s picture

Bug fixed, should start in newest version

evk's picture

Yes, works fine. Once there's sound it'll be great. (:

Ingvix's picture

Good start. A landscape mode with a gba-ish layout would work nicely and would probably be more comfortable with the phone. Assigning key values to the button would also be nice so I could use my TOHKBD to play.

EDIT: Usage of the directional buttons would probably do better if it would always take the newest pressed button. Now if I intend to change my direction, for example, from up to left, the up button needs to released before it starts taking the left button and with touchscreen they're often pressed at the same time if moving the finger without lifting it.

M1KE___'s picture

Thanks! I already thought about implementing a landscape-mode. May I will include it in the next version.

Also a keyboard-mode would be nice and not so difficult to include.
 

The idea with the directional keypad i don't understand complete. Normally it is possible to drag from one button to another. In example: I am holding the up-key, then I need to go left; When I move my finger without releasing the screen to the left key the up-key is released and left-key is pressed.

Or do you mean you have to use the directional keypad with two fingers at the same time?

Ingvix's picture

I mean I have such big thumb that it sometimes hits two directional button at the time when moving from one to another directional button. When that happens I'd prefer that the second pressed button would take action. Right now the second pressed button doesn't function until I have released the first one.

birdzhang's picture

Great! :)

muppeth's picture

Perfect start \o/ looking forward to sound and save implamantation.

You inspired me to create gameboy controller addon for jolla. When I'm back from holidays I'll start thinkering about it intensivly (will keep posted on TMO and TJC).

 

Thanks!

M1KE___'s picture

Thanks!

Savestate implementation is planned for next update (I am already coding it). Sound will take some time. I haven't found so much documentation/references about that.

Cool idea! Would be absolutely better than the touchscreen controls. I sent jBoy also to Jolla store, so there will be a even bigger user-base.

If you have a test-version/ideas don't hesitate to contact me for the implementation in jBoy.

ferlanero's picture

Great! At last a good plataform for gaming on Sailfish OS. Just trying to have some fun! :D