Probably stupid question - Java ME - semi OT

i’ve been lookin into dealing with this java shonk business to make games
for mobile devices, using netbeans and all the bells and whistles of the
java me game development addons, seems its all a little restrictive, like i
am beng forced to make a game in the java way, which imho will make any game
i do with java ME just another shonky java game… so is there any sort of
SDL binding for this Java ME things… i’m not sure cos of the size
restrictions and differing specs of handheld devices, or if anyone knows of
any other libraies / add ons for java ME, dunno, i’ve been attempting to
read up alot on producing stuff with java ME and will no doubt soon possibly
actually bother porting one of my games over from SDL, so any advice,
guidance or experience most welcomed :wink:

The mobile devices (mobile phones and the like) do not accept native bindings for additional libraries, so SDL is right out.

Now, if someone wanted to port over the SDL library itself to Java, then you could use such an SDL class, entirely in Java, and that would work, but I doubt anyone would do that.

Basically, Java games are Java games, mobile phones and such only run Java games, it’s that simple, they have to be written in pure Java.

Neil White wrote:> i’ve been lookin into dealing with this java shonk business to make

games for mobile devices, using netbeans and all the bells and whistles
of the java me game development addons, seems its all a little
restrictive, like i am beng forced to make a game in the java way, which
imho will make any game i do with java ME just another shonky java
game… so is there any sort of SDL binding for this Java ME things… i’m
not sure cos of the size restrictions and differing specs of handheld
devices, or if anyone knows of any other libraies / add ons for java ME,
dunno, i’ve been attempting to read up alot on producing stuff with java
ME and will no doubt soon possibly actually bother porting one of my
games over from SDL, so any advice, guidance or experience most welcomed :wink:



SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


Forest ‘LordHavoc’ Hale
Author of DarkPlaces Quake1 engine and mod
http://icculus.org/twilight/darkplaces/
Address: 94340 Horton Road Blachly OR 97412
Phone/Fax: 541-925-4130

The mobile devices (mobile phones and the like) do not accept native bindings for additional libraries, so SDL is right out.

Basically, Java games are Java games, mobile phones and such only run Java games, it’s that simple, they have to be written in pure Java.

Replace “mobile devices” and “mobile phones” with "J2ME-based mobile phones."
There is also BREW, which is a C/C++ based platform and API used on many
handsets (most of Verizon’s, for example). As well as Symbian OS,
Windows Mobile and PalmOS (or… whatever they’re doing these days).
And don’t forget iPhones and Android.

Android is Java-based, but not J2ME-based. Google will soon provide a
development kit for creating libraries that Java apps can run under-the-hood.
If I recall correctly – Sam was also at the talk where I learned
this, but was not distracted by a baby, like I was :slight_smile: – if your game or
app is doing a lot of complex math (for example) you can create a C-based
library that does the hard work, and your Java app can utilize it.
It will be a while before they allow 100% native apps, however.

For some perspective:

At my last job we created J2ME games which were then ported to BREW.
We had a set of tools that converted Java syntax to C++ syntax.
We had a memory management layer in C++ that handled garbage collection in the
same way J2ME did.

And we had a nice API (for graphics, sound, events, and a DOM-based
display; great for text dialogs and menus) which was written atop J2ME
and then ported to BREW. (So what we really did was write a game
against this API in J2ME, and then ‘push a button’ (run an ant script)
and it produced either a J2ME or a BREW build, depending on the target
handset. The API and build system also provided a way of dealing with
different assets based on the handset capabilities (memory, screen
size, features/bugs, etc.), which allowed MOST of the porting-related
headaches to be kept at the API layer.)

So really, we didn’t write “J2ME ‘shonk’ using NetBeans”, we wrote much
simpler and easy to maintain code on top of an API that did all of the
hard and annoying work for us (mostly related to porting and dealing
with handset limitations and bugs).

Oh, also, right before the company imploded and moved out of the mobile
market, we had ‘push a button and get an iPhone version’. Truly the
holy grail. sigh

Personally, I never want to touch BREW or J2ME again, so I’m doing
web development again. :wink: I might go back to mobile game development in
a few years once everyone’s using Android and/or iPhone and/or some other
sane development environment. So… good luck. Hhehehehe.

-bill!On Sun, Nov 16, 2008 at 08:22:16AM -0800, Forest Hale wrote:

The mobile devices (mobile phones and the like) do not accept native
bindings for additional libraries, so SDL is right out.

Basically, Java games are Java games, mobile phones and such only run
Java games, it’s that simple, they have to be written in pure Java.

Replace “mobile devices” and “mobile phones” with "J2ME-based mobile
phones."
There is also BREW, which is a C/C++ based platform and API used on many
handsets (most of Verizon’s, for example). As well as Symbian OS,
Windows Mobile and PalmOS (or… whatever they’re doing these days).
And don’t forget iPhones and Android.

Android is Java-based, but not J2ME-based. Google will soon provide a
development kit for creating libraries that Java apps can run
under-the-hood.
If I recall correctly – Sam was also at the talk where I learned
this, but was not distracted by a baby, like I was :slight_smile: – if your game or
app is doing a lot of complex math (for example) you can create a C-based
library that does the hard work, and your Java app can utilize it.
It will be a while before they allow 100% native apps, however.

For some perspective:

At my last job we created J2ME games which were then ported to BREW.
We had a set of tools that converted Java syntax to C++ syntax.
We had a memory management layer in C++ that handled garbage collection in
the
same way J2ME did.

And we had a nice API (for graphics, sound, events, and a DOM-based
display; great for text dialogs and menus) which was written atop J2ME
and then ported to BREW. (So what we really did was write a game
against this API in J2ME, and then ‘push a button’ (run an ant script)
and it produced either a J2ME or a BREW build, depending on the target
handset. The API and build system also provided a way of dealing with
different assets based on the handset capabilities (memory, screen
size, features/bugs, etc.), which allowed MOST of the porting-related
headaches to be kept at the API layer.)

So really, we didn’t write “J2ME ‘shonk’ using NetBeans”, we wrote much
simpler and easy to maintain code on top of an API that did all of the
hard and annoying work for us (mostly related to porting and dealing
with handset limitations and bugs).

Oh, also, right before the company imploded and moved out of the mobile
market, we had ‘push a button and get an iPhone version’. Truly the
holy grail. sigh

Personally, I never want to touch BREW or J2ME again, so I’m doing
web development again. :wink: I might go back to mobile game development in
a few years once everyone’s using Android and/or iPhone and/or some other
sane development environment. So… good luck. Hhehehehe.

-bill!

thanks :slight_smile: all as i suspected :slight_smile: luckally i’m only pharting about amusing
myself i dont actually have to deal with any of this java cr at p, have been
looking at android as well, i just wanna port one of my games to run on
mobiles cos i am somekinda masochistik geek :slight_smile: never has the word shonk
been used to better effect than when describing developing java apps.

bye!On Sun, Nov 16, 2008 at 6:17 PM, Bill Kendrick wrote:

On Sun, Nov 16, 2008 at 08:22:16AM -0800, Forest Hale wrote:

Hi,

I really find very funny how people bitch about Java. The language has
pluses and minus, and for some
people it seems to have more minus than pluses, but it also reminds me of
old time discussions,
between asm and higher level languages or between C and C++.

Maybe I am becoming too old for such issues, but I for one like the confort
that managed languages
give us nowadays. And with Microsoft pushing XNA, they will become more used
on game development.

And yes I do know that J2ME isn’t perfect, but don’t blame the platform for
the bugs created by the JVM
vendors, or are you blaming C and C++ for the vendors inability to sometimes
adhere to the standard as
well?

What about programming in Symbian C++ with its wonderfull C++ dialect?–
Paulo

On Mon, Nov 17, 2008 at 12:47 PM, Neil White wrote:

On Sun, Nov 16, 2008 at 6:17 PM, Bill Kendrick wrote:

On Sun, Nov 16, 2008 at 08:22:16AM -0800, Forest Hale wrote:

The mobile devices (mobile phones and the like) do not accept native
bindings for additional libraries, so SDL is right out.

Basically, Java games are Java games, mobile phones and such only run
Java games, it’s that simple, they have to be written in pure Java.

Replace “mobile devices” and “mobile phones” with "J2ME-based mobile
phones."
There is also BREW, which is a C/C++ based platform and API used on many
handsets (most of Verizon’s, for example). As well as Symbian OS,
Windows Mobile and PalmOS (or… whatever they’re doing these days).
And don’t forget iPhones and Android.

Android is Java-based, but not J2ME-based. Google will soon provide a
development kit for creating libraries that Java apps can run
under-the-hood.
If I recall correctly – Sam was also at the talk where I learned
this, but was not distracted by a baby, like I was :slight_smile: – if your game or
app is doing a lot of complex math (for example) you can create a C-based
library that does the hard work, and your Java app can utilize it.
It will be a while before they allow 100% native apps, however.

For some perspective:

At my last job we created J2ME games which were then ported to BREW.
We had a set of tools that converted Java syntax to C++ syntax.
We had a memory management layer in C++ that handled garbage collection in
the
same way J2ME did.

And we had a nice API (for graphics, sound, events, and a DOM-based
display; great for text dialogs and menus) which was written atop J2ME
and then ported to BREW. (So what we really did was write a game
against this API in J2ME, and then ‘push a button’ (run an ant script)
and it produced either a J2ME or a BREW build, depending on the target
handset. The API and build system also provided a way of dealing with
different assets based on the handset capabilities (memory, screen
size, features/bugs, etc.), which allowed MOST of the porting-related
headaches to be kept at the API layer.)

So really, we didn’t write “J2ME ‘shonk’ using NetBeans”, we wrote much
simpler and easy to maintain code on top of an API that did all of the
hard and annoying work for us (mostly related to porting and dealing
with handset limitations and bugs).

Oh, also, right before the company imploded and moved out of the mobile
market, we had ‘push a button and get an iPhone version’. Truly the
holy grail. sigh

Personally, I never want to touch BREW or J2ME again, so I’m doing
web development again. :wink: I might go back to mobile game development in
a few years once everyone’s using Android and/or iPhone and/or some other
sane development environment. So… good luck. Hhehehehe.

-bill!

thanks :slight_smile: all as i suspected :slight_smile: luckally i’m only pharting about amusing
myself i dont actually have to deal with any of this java cr at p, have been
looking at android as well, i just wanna port one of my games to run on
mobiles cos i am somekinda masochistik geek :slight_smile: never has the word shonk
been used to better effect than when describing developing java apps.

bye!


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org

And yes I do know that J2ME isn’t perfect, but don’t blame the platform for the bugs created by the JVM
vendors, or are you blaming C and C++ for the vendors inability to sometimes adhere to the standard as
well?

Well, considering that the C++ standard itself is filled with confusing ambiguities, it’s hard to blame the vendors. It’s just not a good language to work with.
http://yosefk.com/c++fqa/>From: Paulo Pinto

Subject: Re: [SDL] probably stupid question - Java ME - semi OT

And yes I do know that J2ME isn’t perfect, but don’t blame the platform
for the bugs created by the JVM
vendors, or are you blaming C and C++ for the vendors inability to
sometimes adhere to the standard as
well?

Well, considering that the C++ standard itself is filled with confusing
ambiguities, it’s hard to blame the vendors. It’s just not a good language
to work with.
http://yosefk.com/c++fqa/

OK can we stop this thread now before i get in trouble for starting random
flame wars ;-)On Mon, Nov 17, 2008 at 5:42 PM, Mason Wheeler wrote:

From: Paulo Pinto
Subject: Re: [SDL] probably stupid question - Java ME - semi OT

When you’re dealing with the platform on a daily basis at work,
the OEM’s JVM bugs are the pain of J2ME. :wink:

And note that I mentioned BREW (a C/C++ based platform) was a pile of
crap, too. One of my favorite bugs: one one phone, drawing a line that
wasn’t completely vertical or horizontal would result in a red line,
no matter what color you ASKED it to draw in. (Apparently noone ran ANY
kind of test suite on these devices. Then expected developers to make
sure everything worked perfectly, which meant: use as little of the BREW
API as possible; write code you shouldn’t have to (like a line drawing algo);
#ifdef the crap out of your code, based on the target handset you’re
building for.

Way off topic, sorry.

-bill!On Mon, Nov 17, 2008 at 04:05:11PM +0100, Paulo Pinto wrote:

And yes I do know that J2ME isn’t perfect, but don’t blame the platform
for the bugs created by the JVM
vendors, or are you blaming C and C++ for the vendors inability to
sometimes adhere to the standard as
well?

And yes I do know that J2ME isn’t perfect, but don’t blame the
platform
for the bugs created by the JVM
vendors, or are you blaming C and C++ for the vendors inability to
sometimes adhere to the standard as
well?

we can difinitvly say javaME and Javabased MID’s are rubbish because they
dont have SDL :wink:

ok really shut up now, i’m sure i should be doing something construtive and
not ripping into javaOn Tue, Nov 18, 2008 at 8:45 AM, Bill Kendrick wrote:

On Mon, Nov 17, 2008 at 04:05:11PM +0100, Paulo Pinto wrote:

ok really shut up now, i’m sure i should be doing something construtive and
not ripping into java

Let’s port SDL to C++! :wink:

ducksOn Tue, Nov 18, 2008 at 4:19 AM, Neil White wrote:


http://pphaneuf.livejournal.com/