Author Topic: BlackBerry OS7 Port  (Read 8436 times)

Offline theflipperking

  • byte
  • *
  • Posts: 3
    • View Profile
BlackBerry OS7 Port
« on: September 28, 2011, 11:22:51 am »
Any hints on where to even start looking at the feasibility (effort, time, etc.) of porting for BB OS 7?

Offline EgonOlsen

  • Administrator
  • quad
  • *****
  • Posts: 11770
    • View Profile
    • http://www.jpct.net
Re: BlackBerry OS7 Port
« Reply #1 on: September 28, 2011, 08:20:15 pm »
Does BB OS 7 has an OpenGL binding for Java?

Offline Nemetz

  • int
  • **
  • Posts: 53
    • View Profile
Re: BlackBerry OS7 Port
« Reply #2 on: September 29, 2011, 05:03:16 pm »

Offline theflipperking

  • byte
  • *
  • Posts: 3
    • View Profile
Re: BlackBerry OS7 Port
« Reply #3 on: December 08, 2011, 09:40:39 pm »
BlackBerry OS 7 has Java bindings for Open GL ES 2.0. Then new OS 7 devices to be released will have hardware accelerated graphics.

We are already using jPCT-AE (and Bones) for our Android apps, and would like to do the same with BlackBerry devices.

Does anyone have any ideas on how to proceed with this? There are currently no other 3d engine/frameworks for BlackBerry and we prefer to stay as close to jPCT as possible.

Offline EgonOlsen

  • Administrator
  • quad
  • *****
  • Posts: 11770
    • View Profile
    • http://www.jpct.net
Re: BlackBerry OS7 Port
« Reply #4 on: December 08, 2011, 10:37:02 pm »
Does it have support for ES 1.0 and 1.1 as well, i.e. does it come with interfaces for javax.microedition.khronos.opengles.GL10 and javax.microedition.khronos.opengles.GL11?

jPCT-AE doesn't use many Android specific classes. It uses (of course) the OpenGL related stuff, Bitmap and Drawable and similar for the textures, FloatMath, Matrix and maybe a few others. As long as the BlackBerry SDK offers the usual Java classes like Android does, it might be possible to create a thin layer between jPCT-AE and BlackBerry that implements all the classes/methods needed on top of the BlackBerry API but following the Android signature. That's what i did with the JOGL support for the desktop version for example. jPCT (desktop version!) is lwjgl-based. To support JOGL, i simply implemented all the stuff that i use from lwjgl on top of JOGL.

Maybe something similar is possible here too...

It there any API reference to look at without downloading the SDK?
« Last Edit: December 08, 2011, 10:38:33 pm by EgonOlsen »

Offline theflipperking

  • byte
  • *
  • Posts: 3
    • View Profile
Re: BlackBerry OS7 Port
« Reply #5 on: December 22, 2011, 09:06:39 am »
Thanks for your reply.

The api  docs are available here
http://www.blackberry.com/developers/docs/7.1.0api/index.html?javax/microedition/khronos/opengles/GL.html
You can find GL10, GL11 and their extensions and GL20 info in the links to the sub-interfaces on the same page.

For the wrapper, do you mean create the Android specific java classes as wrappers over the BlackBerry classes? Can you elaborate more on this type of solution?


Offline EgonOlsen

  • Administrator
  • quad
  • *****
  • Posts: 11770
    • View Profile
    • http://www.jpct.net
Re: BlackBerry OS7 Port
« Reply #6 on: December 22, 2011, 02:02:13 pm »
Yes, that's what i mean. That should be pretty easy for the most part. Here's a brief overview of all(?) android specific classes that jPCT-AE uses. Of course, it uses only a subset of method from most of them. I can post these in more detail, if you are interested. The OpenGL ES 1.x interfaces are the same thing, so there should be nothing to port in that regard.

Classes that have to be reimplemented on BlackBerry, at least partially:

android.opengl.GLES20 (has to be fully implemented, but isn't much more than a simple pass through class)

android.util.FloatMath
android.util.Log
android.opengl.Matrix

android.graphics.Bitmap
android.graphics.BitmapFactory
android.graphics.Canvas
android.graphics.drawable.Drawable

android.content.res.AssetManager
android.content.res.Resources

android.os.Build (just make sure that Build.VERSION.SDK_INT != Build.VERSION_CODES.FROYO)

Classes that might be needed for some functionality, but almost everything should work without them:

android.opengl.ETC1Util
android.graphics.Matrix


..and most likely not needed:

android.opengl.GLSurfaceView (only setEGLContextClientVersion(2) used to enable ES 2.0 and only in the AAConfigChooser).

If these classes/it's required methods are reimplemented and bundled into a jar that will by deployed together with the jpct-ae.jar, it should actually work assuming that what jPCT-AE does OpenGL-wise is compatible with BlackBerry...but it actually should be....

Offline EgonOlsen

  • Administrator
  • quad
  • *****
  • Posts: 11770
    • View Profile
    • http://www.jpct.net
Re: BlackBerry OS7 Port
« Reply #7 on: December 22, 2011, 02:06:52 pm »
I've just noticed that java.util and java.lang on BlackBerry seem to be a bit on the Java 1.1 side...which is pretty sad. At least some basic stuff like Map/HashMap, List/ArrayList and such will be needed in addition. Maybe there's some third party library that already provides those?

Offline BlemmaDreams

  • byte
  • *
  • Posts: 6
    • View Profile
Re: BlackBerry OS7 Port
« Reply #8 on: February 08, 2012, 09:23:26 pm »
Hi everybody.

although the topic is a bit different (Tablet OS Application Development), RIM has developed a library for porting android applications to the playbook tablet.

https://bdsc.webapps.blackberry.com/android/tool/

I also found another set of tools

https://bdsc.webapps.blackberry.com/devzone/platforms/

Offline EgonOlsen

  • Administrator
  • quad
  • *****
  • Posts: 11770
    • View Profile
    • http://www.jpct.net
Re: BlackBerry OS7 Port
« Reply #9 on: March 21, 2012, 11:46:10 pm »
...thanks to RIM's generosity...this is jPCT-AE/Aralia (the first free 3d engine for a soon discontinued platform...)


Offline zammbi

  • float
  • ****
  • Posts: 360
    • View Profile
Re: BlackBerry OS7 Port
« Reply #10 on: March 22, 2012, 04:23:07 am »
You completed a blackberry port? Awesome.

Quote
for a soon discontinued platform.
Is it really?

Offline EgonOlsen

  • Administrator
  • quad
  • *****
  • Posts: 11770
    • View Profile
    • http://www.jpct.net
Re: BlackBerry OS7 Port
« Reply #11 on: March 22, 2012, 03:18:31 pm »
You completed a blackberry port? Awesome.
Yes. Do you want to write some Cricket App for BlackBerry...???

Quote
for a soon discontinued platform.
Is it really?
Not BlackBerry itself but the current line of operating systems and with them, support for J2ME will be dropped and replaced by an Android "emulator" and some HTML5/Javascript-stuff.

Offline zammbi

  • float
  • ****
  • Posts: 360
    • View Profile
Re: BlackBerry OS7 Port
« Reply #12 on: March 22, 2012, 09:48:17 pm »
Quote
Do you want to write some Cricket App for BlackBerry...
Naw :P

Quote
Not BlackBerry itself but the current line of operating systems and with them, support for J2ME will be dropped and replaced by an Android "emulator" and some HTML5/Javascript-stuff.
Ah right. I'm sure it still will be around for quite a while still. Anyone tried that android emulator and JPCT?

Offline EgonOlsen

  • Administrator
  • quad
  • *****
  • Posts: 11770
    • View Profile
    • http://www.jpct.net
Re: BlackBerry OS7 Port
« Reply #13 on: March 22, 2012, 10:00:39 pm »

Offline EgonOlsen

  • Administrator
  • quad
  • *****
  • Posts: 11770
    • View Profile
    • http://www.jpct.net
Re: BlackBerry OS7 Port
« Reply #14 on: March 22, 2012, 10:52:33 pm »
A little video showing a comparison between jPCT-AE and jPCT-AE/Aralia. Sorry for the low image quality, but i couldn't do any better with my equipment.

http://www.youtube.com/watch?v=zvMdFBwmc2Y