Amiga.org
Amiga computer related discussion => Amiga Software Issues and Discussion => Topic started by: tonyw on November 25, 2002, 10:41:27 AM
-
If and when AOS 5 ever happens, we will get intent and the Tao JVM (which runs like lightning). However, until then, would a port of a JVM be A Good Thing?
I ask because the Kaffe JVM already has an Amiga port (68k) and could be ported to AOS4 without too much trouble. I realise that Kaffe is not the be all and end all of JVMs, but then neither is Personal Java (what we'll get from Tao's JVM).
IB 2.3 has a Javascript interpreter, I believe, so is a JVM worth the trouble?
Yes, I am volunteering. I have the tools here, but little experience in Java itself, so it won't be trivial. But even if it takes some months to get it going on AOS 4, it might be worth it.
What thoughts?
tony
-
I have 4 years of experience in Java Programming. May I help you?
-
@tonyw
The more tools whe get for OS4 the better, no.
I hope everything will run along smothly if you decide to take on this project.
:-)
-
Well, I for one would welcome a proper Java implementation for AmigaOS. I use Java quite a lot, as it is the programming language I need for university work. Already I have been forced write: a simulator for a round-robin scheduler, a simulator for a cached virtual file handler, the logic core and file-IO of a monopoly game, and the server portion of a network MUD game. And every time I've needed to do something with the code, I've had to take the 20+ minute hike down to the university. Java for Amiga is something I've wanted for a long time. :-)
The Tao JVM is currently scheduled for the unspecified future, so I wouldn't worry about it making your work redundant too soon.
Kay
-
IB 2.3 has a Javascript interpreter, I believe, so is a JVM worth the trouble?
Whats this got to do with Java? The two are completely different things :-)
Yes, I am volunteering. I have the tools here, but little experience in Java itself, so it won't be trivial. But even if it takes some months to get it going on AOS 4, it might be worth it.
I reckon you should go for it!
It might be a good idea to see if you can port the latest version of Kaffe though - i'm not sure when the AmigaOS port was last updated.
-
Thanks, Occie. I don't know whether I'll take on the task yet. I've had a look at the archive and there is a lot of code with machine-dependent stuff like CPU register sets, etc. Also there is a lot of (68k) assembler code in there. I think the best bet would be to get it going in 68k emulation first, then go for the PPC native version. (It's one of the JVMs in C, others are written in Java or C++). I remember getting it going many years ago on the Ami.
I'l take it on if it can do some good for the platform. But unless there is some expression of interest, I won't bother. Frankly, I'm not sure that it's worth it.
tony
Edit for gnarly:
The latest version is 1.0.7, posted in July this year, so it's fairly recent.
-
I don't think the latest amiga version of Kaffe is/was
the 1.0.7 I think it was 1.0.3 (at least that was working on the amiga, and 1.0.3 was only so-so at that time).
unfortunately I think kaffe needs ixemul so currently
a OS4 native version looks slim.
and I would also suggest going for the PPC version
directly if you can (the ixemul reason) since otherwise you are still stuck with doing that later on and it won't be easier then (albeit you will have learned a lot about kaffe by then :-) )
if you are also thinking about making a awt kinda thing there is several open-source projects that deals with that kind of things.
-
Just a thought, if there is a version available for Linux-PPC, might it be an idea to port that, rather than the m68k version?
-
1) The 1.0.7 tarball contains all the versions.
2) Yes, there is a Linux PPC version in the tarball, as well as the AmigaOS version, and all the others.
I think that it would be easier to port an AmigaOS version to AOS 4 than a Linux PPC version, even with the ixemul library problem. I think 68k emul is the way to start. Later I could take parts of the Linux PPC version for the PPC native version (if it gets that far).
But still I have to wonder, could anyone use it? How much of Kay's Uni work can she do on a limited VM? To quote Kaffe.org,
"Kaffe is not the best Java virtual machine for developing Java applications, as it lacks much in the way of documentation, compatibility, debugging/ profiling support, etc. If you are learning Java, or are looking for a complete Java development environment, you will probably be best served by using a "real" Java development environment (such as the JDK) . . ."
Kaffe probably won't enable you (or me) to access the online bank. You'll need the full metal jacket version for that.
tony
-
I think that it would be easier to port an AmigaOS version to AOS 4 than a Linux PPC version, even with the ixemul library problem. I think 68k emul is the way to start. Later I could take parts of the Linux PPC version for the PPC native version (if it gets that far).
It occurs to me that there really isnt a lot of point in going down this route - surely the AOS68k version should work anyway seeing as AOS4 is supposed to be binary compatible? Or is ixemul known to be AOS4 incompatible?
If you are going to do a port, surely a straight PPC one would be a much better place to start?
But still I have to wonder, could anyone use it? How much of Kay's Uni work can she do on a limited VM?
I see your point - but then maybe a limited VM is better than no VM at all?
P.S. - I dont need Java to access my online bank ;-)
-
> But still I have to wonder, could anyone use it? How much of Kay's Uni work can she do on a limited VM?
Make that: "How much work can HE do". "Kay" (as well as the variants "Kai" and "Kaj") is a male name in scandinavian countries (and in the "Lexx" series :-)). You're not the first to make the mistake, though, I still have nightmares after the letter from Vulcan addressed to "Ms. Kay Are Ulvestad". :nervous:
Anyway, to answer your question, I don't rightly know. How limited is the Kaffe VM? Most of the stuff I've done is command line based, so the GUI libraries wouldn't be all that essential to me. Besides, I guess that once there is a basic implementation, things can be added later on. And, as gnarly pointed out, a limited VM is better than no VM at all.
Kay
-
@tonyw
"If and when AOS 5 ever happens, we will get intent and the Tao JVM (which runs like lightning). However, until then, would a port of a JVM be A Good Thing?"
Sounds like a pretty monumental task. I'd be inclined to contact Ben Herman's directly and solicit his feedback. I have heard that a PPC-native version of Tao's engine is already available so that would be the next logical step to consider rather than reinventing the wheel.
Are you itching to do a port of a JVM in particular or simply something worthwhile? There are definitely a lot of alternative projects. How about considering Navigator? If nothing else it would be valuable to do some profiling to assess the feasibility.
-
A port of intent/DE would be a lot better, as that's the way they're going sooner or later. I agree with ne_one, you should get in touch with Hyperion or Amiga about this.
-
I wouldn't bother with Kaffe, as you can get the sourcecode for Java from Sun for the real thing. I downloaded it lately and - trust me - it's huge.
Nevertheless, I want a port too. Being a software developper I'd have a go, but it's really a team effort.
I'm sure having an up-to-date JVM on AOS4 would open many doors for Amiga.
The Tao VM is fine for handhelds, but it's just not enough for the desktop, so porting of the J2SE would be important.
Have fun,
Santa
-
@Kay: Sorry, old son, it's your avatar that looks feminine.
ne_one et al: No, I'm not looking for a big job. I know from 30+ years' programming experience how much work it would be to port the whole Sun implementation to a new platform.
However, the Kaffe implementation already exists, already runs on a 68k Amiga and might run on an AmigaOne out of the box. It might even be doable (NB: not 'easy') to make an AOS4 PPC-native version if the 68k version is a success.
And it would be a useful bootstrap for porting other, more thorough implementations to AOS4, like those written in Java.
Like most *nix ports, it relies on ixemul to work, the code itself is not changed from one platform to another. So there are a couple of challenges there, and it might give me something to do for the Kommunity.
(I can see myself in a couple of decades, in a nursing home with my old AmigaTwo laptop, shooing away the nurse because build #29158 is nearly complete)
tony
-
I just read an interesting tidbit on ann.lu that Genesi is getting Alan Havemose to port a JVM to MorphOS.
Anyone have any additional details on this?
-
>I just read an interesting tidbit on ann.lu that
>Genesi is getting Alan Havemose to port a JVM to
>MorphOS.
>Anyone have any additional details on this?
http://www.amiga-news.de/archiv02/020417_interview_bb_pt.shtml (http://www.amiga-news.de/archiv02/020417_interview_bb_pt.shtml)
"I would like to also mention that Dr. Allan Havemose
is also part of our team. Allan, who just became a
proud father for the first time (14 April 2002), was
the Software Engineering Director at CBM with
responsibility for the Amiga operating systems OS
2.1, OS 3.0 and OS 3.1 on the A1200, A3000, A4000,
AmigaCD, and various other platforms. As you know,
Allan was more recently involved with Gateway's
effort to resurrect the Amiga. Allan is developing the
Java Virtual Machine for the Pegasos/eclipsis and
will work also on the Linux side of our efforts. He
brings professional product development and
product management to our team. "
-
ne_one wrote:
I just read an interesting tidbit on ann.lu that Genesi is getting Alan Havemose to port a JVM to MorphOS.
Anyone have any additional details on this?
As for the version of the JVM and who all is working on this with Alan, no clue. I haven't been able to get a word in to the MorphOS camp in ages. I guess all the questions and requests I made kind of pushed me away. I'm curious though, why has there never been a good clear picture of MorphOS in action (a.k.a. screengrab)? I'd also like to hear what their plans are for alternate processors as well, but that doesn't look likely.
Personal opinion, I like Olaf Barthel's stance on ixemul: "if a program requires ixemul.library to run, something is wrong".
:pint:
-
@Kent
"As for the version of the JVM and who all is working on this with Alan, no clue. I haven't been able to get a word in to the MorphOS camp in ages."
Quite a coup to get him on board. Dave Haynie is apparently doing some consulting for Hyperion. I wonder what Mike Sinz and all the other lads are up to? Still with Scala perhaps.
"I'm curious though, why has there never been a good clear picture of MorphOS in action (a.k.a. screengrab)?"
Good point. Surely someone should be able to share these publicly.
"I'd also like to hear what their plans are for alternate processors as well, but that doesn't look likely."
In the MorphOS primer they indicated that x86 is out of the question. Too bad... this would have provided a bit more incentive for Hyperion to do the same.
-
ne_one wrote:
Quite a coup to get him on board. Dave Haynie is apparently doing some consulting for Hyperion. I wonder what Mike Sinz and all the other lads are up to? Still with Scala perhaps.
Alan is definately an OS genious considering all of the components he worked up for OS3.0. I haven't seen any confirmation other than rumor with Dave Haynie and Hyperion though, would be a good thing (tm). No clue what Mike Sinz is doing though, haven't heard from him in ages.
:pint:
-
What thoughts?
I say go for it! It would be great to have Java on AmigaOS4.
-
@Kent
"I haven't seen any confirmation other than rumor with Dave Haynie and Hyperion though, would be a good thing (tm)."
This was actually mentioned in the Boing Attitude interview with Ben Hermans that appeared here as a news item earlier today.
Was the article removed for some reason?
-
OK, it seems no one is officially working on a JVM at the moment, so I'll proceed. My aim at the moment (to be modified if and when necessary) is:
1) Get the kaffe sources and expand (done)
2) Compile for 68k AOS (3.9). This is not as easy as it sounds, because the kaffe build is supposed to run under a Linux/Unix environment, with all the shell script files, etc. I am not a Unix expert and I might just throw away all the auto configure stuff and start from scratch with hand-coded makefiles.
3) Run test suite (supplied) and check build.
When it reaches this stage, it ought to be portable (read: re-compilable) to AOS 4, assuming ixemul can be ported. If someone else were to port ixemul, that would be grand.
4) (The real work) remove dependencies on ixemul and make kaffe stand-alone. This may not be feasible with the classic Exec (multiple threads problem).
We'll see how we go. I don't have a fast access website, so any output from this exercise will have to be hosted by someone.
tony