Links| Forums| Comments| Report news
Chat| Polls| Newsticker| Archive

[Login] [Register] [Forgot your password?]

< Next messagePrior message >
Anton Reinauer (E-Mail)

Status update: AmiZilla- and GTK-wrapper project
Ok, many people seem to think the AmiZilla project is dead, and with good reason, as there's been no information released in a long time. So I thought I'd put out an update, so people can see things are happening!

Ok, firstly, the NSPR (Netscape Portable Runtime) is basically functionally complete - this is a base Operating System abstraction layer (for things like TCP/IP etc). XPCOM (Cross Platform Component Object Model) seems to be mostly functioning - it allows different components in Mozilla to message each other, and access files on any platform, etc.

A couple of people have had the code compiling with these layers, producing an exe of around 500M in size (with debug info), which ran and exited cleanly, but requires an X11 server as a screen device! At the moment, we have switched from a static huge exe, to a library version (a2ixlibrary), but we haven't been able to do a complete build with this yet.

We're creating some helpful documentation on what files are needed, and how to compile an exe etc, along with some much needed info on how to set up a Cross-Compiling environment on Linux and Windows. This is very important, as unless you have a Dragon accelerator, you can't compile AmiZilla on a 68k-based Amiga, as they physically just don't have enough memory to compile it (you need 256-512M memory at least, and we won't even go into how long it takes to compile 200M of source code, on a 68k...)! It should be possible to compile it on an AmigaOne, or Pegasos though.

But more interesting, a couple of people are working on a GTK->MUI(Zune)/Reaction layer, primarily for the AmiZilla project, but it will be able to be used for other GTK apps too.

It's likely, we will be looking at getting Firefox running first (it's only a simple compiler switch, to compile either Firefox or Mozilla), then maybe the whole Mozilla suite if people want it (probably unnecessary though).

We're looking at getting it running on 68k/MUI first, and hopefully the 68k exe should run on AmigaOS4 and MorphOS as is.

Then we can look at MorphOS/OS4/AROS native ports. With a MorphOS port we may need a compile of the latest version of GCC ie: 3.x, to be able to compile AmiZilla though.

The GTK->MUI/Reaction layer will be done as a separate project, to make it easier to support multiple OSes (Amiga 3.x, OS4, MorphOS and AROS), but the initial target will be to get Firefox running on AmigaOS 3.x.

Also, an AROS bounty has been put up for a GTK->MUI(Zune) layer, so that it can then be easily ported to any other Amiga Operating System (if not already done). Also, the MorphZone bounty program is considering, either starting their own GTK->MUI wrapper bounty, or pointing it towards the AROS one.

The GTK layer will be done as two shared libs - glib.library and gtk.library.

So far, GTK->MUI seems fairly straightforward, as MUI is quite flexible, and fairly similar in structure to GTK- these both use an Object Model (ie: as in using objects like Windows, Buttons etc, not as in C++/Java Object-Orientated programming!), and GTK does not poke directly into it's data structures, but uses functions for object manipulation.

We've put together a basic working example using GTK calls, of initialising GTK (really an MUI call), opening a Window with a Button on it, closing the Window, and shutting the system (MUI) down. We've also compiled the GTK dev-kit examples helloworld and helloworld2, without any modification to their sources.

One minor problem is that MUI gives back a pointer when it's initialised, but GTK doesn't, so we'll have to save that pointer somehow, probably in per-app data, saved within the library structure itself.

At already screenshots have been published, showing the GTK-MUI wrapper under AmigaOS 3.1, AROS and MorphOS. Also demo code and compiled exes (68k) can be found there (Download, 33 KB).

GDK is an OS independent video abstraction layer for GTK - GTK makes it's calls to GDK, which then calls the underlying system (in Linux it's X-Windows). We haven't looked into it fully yet, but we shouldn't have to worry about GDK, as only GTK calls it, and Firefox shouldn't make any direct calls to it - and as we're replacing GTK calls with MUI/Reaction ones, GDK won't be called!

More of a challenge will be GLib- we're currently researching how much Firefox uses it, as some of GLib is very simple, and would just take a recompile, but other stuff like events, signals and threads could be more problematic, and may require replacing with Reaction/MUI calls.

More developers are always welcome to join us - the more resources we have, the quicker this will get done! :) To join the AmiZilla list, either send an e-mail or go to the website (but you need to create a Yahoo account to do it this way). Also, donations to help attract more developers, are most welcome too! :)

Anton Reinauer
AmiZilla project (snx)

[News message: 28. Jun. 2005, 09:17] [Comments: 0]
[Send via e-mail]  [Print version]  [ASCII version]
< Next messagePrior message >

Masthead | Privacy policy | Netiquette | Advertising | Contact
Copyright © 1998-2022 by - all rights reserved.