Skip to content
This repository has been archived by the owner on Dec 13, 2023. It is now read-only.

BittBoyJ2ME Bug Report/General Advice #6

Open
BryMD opened this issue Apr 15, 2021 · 11 comments
Open

BittBoyJ2ME Bug Report/General Advice #6

BryMD opened this issue Apr 15, 2021 · 11 comments

Comments

@BryMD
Copy link

BryMD commented Apr 15, 2021

Hi @pthalin , and everyone else :)

Testing game-compatibility with BittBoyJ2ME has been a wonderful, yet horrific, trip down memory lane. Here is a quick rundown of my experience as a concatenated bug report/general advice:

  1. Neither the numpad diagonals (obviously) nor the joystick action key (joystick center button) is available, so games requiring either of these will not be playable. Is the latter possible to implement? One of the shoulder buttons of the PocketGo maybe?

  2. The emulator seemingly does not loop music (neither at the menu nor in-game), so once the music has finished playing one time the game will be dead silent. Is this fixable?

  3. Games with 176 pixel width (176x220, 176x208, 176x204) render within the confines of the draw box. I love 176x220 games (in fact one of my images ranked number 1 for 10 years on Google Images for the search term '176x220'), but why are we not utilizing the entire screen real estate of the PocketGo (320x240)? This would require the screen rendering to be rotated to accomodate for 240x320 games though.

  4. Games with <220 height will show a small white rectangle (or rendering artefacts) at the bottom center. I assume this rectangle is part of how the emulator draws to screen. Is it possible to move the rectangle to the top of the screen, as the rectangle then would always be completely hidden by the overlaying game?

  5. Only bitmap ('2D') games are supported. M3G APIs have not been integrated, so no polygonal ('3D') games will run.

  6. Spaces in game file names are not supported, and will prevent the emulator from loading.

  7. The emulator has average-to-low game compatibility, much thanks to J2ME being such fractionated platform in the first place. Expect the majority of games to either have graphical glitches, sound/music not playing, not registering key input, freezing at load, or simply refusing to load at all. However, with enough patience, you'll end up with quite a respectable collection of compatible mobile games.

Keeping in mind that I'm quite picky when it comes to games, I'm attaching an image of the box art of my personal final 20 mobile games for reference.

Keep up the good work!

Sincerely,
BryMD

176x220

@pthalin
Copy link
Owner

pthalin commented Apr 15, 2021

Thanks for your thoroughly report. Unfortunately I have no plans to do any development any time soon on this project. Let hope someone else is up for a challenge :-)

@minexew
Copy link
Contributor

minexew commented Apr 16, 2021

@pthalin Thank you for your work on this project.
Would you elaborate a bit on why you based your port on MIDPath for Dingux, instead of the GP2X port which uses phoneME's MIDP? I'd expect the latter to have better compatibility, having been (originally) developed by Sun themselves.

@pthalin
Copy link
Owner

pthalin commented Apr 16, 2021

Poor research by me... I didn't find the source code for it when starting this.

@minexew
Copy link
Contributor

minexew commented Apr 16, 2021

Ah, I see. I was thinking of trying to resurrect some of that old code, it should actually build for ARM Linux quite easily.

@BryMD
Copy link
Author

BryMD commented Apr 17, 2021

@pthalin That's too bad :/ With a few minor tweaks the emulator has the potential to become really respectable. Simply adding support for the action key (joystick center button) will open up access to a wad of excellent mobile games I've otherwise deemed fully compatible with BittBoyJ2ME!

Do we know if support for the action key is even possible? I see the keymapping is located in 'configuration.cfg'. How did you locate the keycodes for the BittBoy/PocketGo-buttons? If you point me in the right direction, I might at least give this issue a go ;)

@minexew Is there possibly another J2ME emulator?! Thats AWESOME! :D

Sincerely,
BryMD

@pthalin
Copy link
Owner

pthalin commented Apr 17, 2021

I think button mapping will require recompile. It is in:
midpath/components/microbackend/org/thenesis/microbackend/ui/sdl/SDLBackend.java

I had to reinstall my computer so I don't even have the build tools at the moment :(

@pthalin
Copy link
Owner

pthalin commented Apr 17, 2021

Device Key Mapping

Key Bittboy PocketGo Q90 V90
         
A LCTRL LALT LALT LALT
B SPACE LCTRL LCTRL LCTRL
TA/X LALT LSHIFT LSHIFT LSHIFT
TB/Y LSHIFT SPACE SPACE SPACE
SELECT ESC ESC ESC ESC
START RETURN RETURN RETURN RETURN
R (MENU) RCTRL RCTRL RCTRL RCTRL
R1 - BSPACE BSPACE BSPACE
L1 - TAB TAB TAB
R2 - - - RSHIFT
L2 - - - RALT

@minexew
Copy link
Contributor

minexew commented Apr 17, 2021

@BryMD historically, there have been a bunch! Not all of them are a good fit for a small embedded device, although having Linux already helps a lot.

(Apologies for hijacking the thread a bit)

@BryMD
Copy link
Author

BryMD commented Apr 17, 2021

@pthalin If it requires any actual programming or recompilation, then it's out of my league sadly :/

@minexew The more the merrier :) Dude, followed your link, and seems you really know your stuff!! Is there any real chance of seeing an additional J2ME emulator on the MiyooCFW? :)

Sincerely,
BryMD

@MysteryMan3D
Copy link

Hey there, I like what you've done, but can you do me a big favor and add custom control configuration to the emulator? The Dark Knight Rises is unplayable on it right now because it requires the * and # keys. Thanks in advance.

@fhfelipefh
Copy link

@BryMD He is on MiyooCFW :)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants