LWJGL Forum

Programming => Lightweight Java Gaming Library => Topic started by: polskyman on September 29, 2006, 16:38:45

Title: MS JVM compatibility
Post by: polskyman on September 29, 2006, 16:38:45
Hi everybody,

I would like to know how to make LWJGL compatible with MS JVM.
has someone ever managed to do it ?
thank you to help me on this concern of compatibility.
Title: MS JVM compatibility
Post by: Matzon on September 29, 2006, 17:28:57
you can't. MS VM is Java 1.1.4, we require 1.4 at least
Title: MS JVM compatibility
Post by: polskyman on September 29, 2006, 17:46:41
Ok but would it be possible to make it compatible with MS JVM ?
thanks
Title: hmmmmmm...
Post by: Fool Running on September 29, 2006, 20:38:15
Its not worth going all the way back to Java v1.1 if its possible at all (I don't know if it does JNI at all or not).
I wouldn't hold my breath for MS JVM support because I don't think it will ever come. :D
Its almost like trying to get new programs to run on Windows 3.1  :lol:
Title: MS JVM compatibility
Post by: polskyman on September 29, 2006, 22:59:24
You should know a lot of person use MS java because they have windows NT.
being compatible with MS JVM is important and yes it support native JNI
Title: MS JVM compatibility
Post by: wolf_m on October 01, 2006, 15:45:48
But who would ever play games on an old Windows NT 4.0? It's just not the OS for games. That's like especially supporting Windows Server 2003 - there's no point to it.

Windows XP is an NT family member. So... Why support old versions?

Besides, supporting Microsofts very weird behavior considering Java 'back in the days' is weird itself. Remember the lawsuits?

QuoteYou should know a lot of person use MS java because they have windows NT.
Not for OpenGL games, I suppose. And it's only common in business contexts. The outdated ones, I have to say.
Quote
being compatible with MS JVM is important
I don't want to start a flamewar, but that's totally wrong. The MS JVM is something that hopefully dies soon.
Title: MS JVM compatibility
Post by: darkprophet on October 01, 2006, 21:51:24
errr, JNI is 1.4+, the MS JVM cannot do JNI...

DP
Title: MS JVM compatibility
Post by: aldacron on October 02, 2006, 02:21:55
Quote from: "darkprophet"errr, JNI is 1.4+, the MS JVM cannot do JNI...

Not so. JNI has been around since the beginning, though I don't think it was actually referred to as JNI until Java 1.1. I've got an old book by Laura Lemay that was published before Java 1.1 was released and it talks about "native methods". A 1.2 book I have talks about new capabilities in that version of the JNI. So it's been around a while.

The MS VM, as I recall, supports an alternative MS-specific native call interface. I can't remember what it is called or any of the details about it, but I believe it was supported in addition to the JNI. It's been a long while since I worked with 1.1 or the MS VM.

@polskyman - supporting the MS VM is fruitless today. You would be really limiting yourself to a very small number of users, limiting what you can do technologically, and getting little return for the effort. It's not worth it.
Title: MS JVM compatibility
Post by: the2bears on October 02, 2006, 05:11:47
Quote from: "polskyman"You should know a lot of person use MS java because they have windows NT.
being compatible with MS JVM is important and yes it support native JNI

What numbers or statistics do you have to back this up?  I would think that there would be very few people using it.  Less, much less, than 1%?

Bill
Title: MS JVM compatibility
Post by: Matzon on October 02, 2006, 05:29:26
tbh, a fair deal of old installations - win9x, me, nt, xp all use the ms jvm 1.1.4. I dont have any numbers but I do know its high enough that we have to keep our casual games working in an 1.1.4 environment. That said, LWJGL cannot be made to work on ms jvm, because of the lack of NIO.
Title: MS JVM compatibility
Post by: oNyx on October 02, 2006, 08:34:36
http://en.wikipedia.org/wiki/Java_Native_Interface#Microsoft.27s_RNI

So totally not worth it. It would be like starting again with the very first alpha.

Well, lwjgl is opensource... so you could gather a handfull of people and some years later you have something sorta nice.

Alternatively you can either rely on 1.4+ being installed, bundle the jre, embedd the jre or compile it natively (jet/gcj).
Title: MS JVM compatibility
Post by: polskyman on October 02, 2006, 11:55:57
the problem is that in business a lot of people have the MS JVM.
that is true. and maybe 20 % of java PC have the MS JVM.
it would be so good if LWJGL had this option because I do not understand the aboslute need of java NIO for LWJGL ...
where can I find the source code of LWJGL ?
thanks
Title: MS JVM compatibility
Post by: wolf_m on October 02, 2006, 14:52:06
You can find the source at SourceForge's SVN repo (https://sourceforge.net/svn/?group_id=58488).

You really want to convert stuff? You're scary ;)
Title: MS JVM compatibility
Post by: Evil-Devil on October 02, 2006, 15:10:29
As i allready said in ICQ. Don't rely on M$ JVM. Use Sun's instead. You would reach far more ppl when not relying on M$ JVM.
Title: MS JVM compatibility
Post by: polskyman on October 02, 2006, 21:36:10
I need this to be compatible to MS JVM in addition to Sun.
I offer 1000 € to the person making this conversion.
anyone interested contact me.
Title: MS JVM compatibility
Post by: wolf_m on October 02, 2006, 23:19:06
Don't misunderstand this, I don't want to be picky or something, but...

If you gave me 10 € per hour, I'd have to get it done in 100 hours. That's 10 days as a single person with 10 hours per day. How do you know that this is the amount of time one would need to convert it?

Besides, if you want stuff to run especially on NT4, why not take a solution that is made for it? I suppose there are a lot of .NET solutions out there that use DirectX, you're far better off with that. Or you take SDL and write your app in C, what's the big deal? You just have to compile your app for each platform specifically then. SDL supports roughly the same platforms as LWJGL and some more:
Quote
http://www.libsdl.org/faq.php?action=listentries&category=1

Q:   What platforms are supported?
A:   The current version supports Linux, Windows, BeOS, MacOS, MacOS X, FreeBSD, OpenBSD, BSD/OS, Solaris, IRIX, and QNX.

The code contains support for Windows CE, AmigaOS, Dreamcast, Atari, NetBSD, AIX, OSF/Tru64, RISC OS, and SymbianOS, but these are not yet officially supported.

If you want multiplatform support as it was thought to be considering LWJGL, there's no other choice but Sun Java.
Title: MS JVM compatibility
Post by: polskyman on October 03, 2006, 02:24:19
I chose LWJGL because it is java. I will not move to SDL in C.
I am sure that it could be possible to make the LWJGL works with MS JVM now I may ask the originators of LWJGL to know if it is easy to do.
Title: MS JVM compatibility
Post by: Matzon on October 03, 2006, 04:59:57
first of all, it's not known if it _is_ possible. Theoretically, I suppose it is. However you would have to do a huge abount of work.
You would have to recreate the whole window and input subsystem in RNI. Furthermore you would have to devise your own NIO solution using RNI or use arrays instead.
Now assuming all of this is possible, you're still faced an RNI implementation that may or may not be crappy and broken - and you'll get no support from microsoft.

Unless you have a _very_ specific need or customer, I would suggest you forget about the MS JVM, at least if you want to use LWJGL.