
Firefox for RISC OS
===================

10th October 2005
RISC OS Beta version 5 (Work in Progress)
unix@chocky.org


This Version
------------

This is a "work in progress" version, intended to show progress and
diagnose potential problems.  It may not be suitable for general
browsing use.  You have been warned.


About RISC OS Firefox
----------------------

Firefox was ported to RISC OS to fill the requirement for a comprehensive
browing solution.  Based upon the original Mozilla and Netscape work,
Firefox is potentially able to access almost any website, and is one of
the most widley used browsers in use.  Its open source nature means that
anyone inside or outside RISC OS development can update it.  These features
made it an ideal choice for porting to RISC OS.

Firefox was ported to RISC OS by Peter Naulls under the Unix Porting
Project (http://www.riscos.info/unix/) as part of a programme of bringing
Unix programs to RISC OS in order to fill gaps in the application space.
Firefox was only possible at all because it built upon work by the GCCSDK
team with GCC and UnixLib and current work by the project such as the ChoX11
library.   And of course, the many subscribers to the project who made it
financially viable.  Thanks for supporting the future of RISC OS.


About the Port
--------------

In order to indicate why Firefox is presently the way it is, it is important
to understand that, as it stands, it is essentially a direct port of the
vanilla Unix version.  Only some of it has been customised to make it RISC OS
friendly, with the focus on making it work at all.  Without going through this
phase, the port would have been all but impossible.  Future versions will of
course become more RISC OS friendly, with the integration you expect from
RISC OS applications.


Current Bugs/Oddities
---------------------

This is a list of things which are known to be either wrong or non-RISC OS
in nature in this version.

  Why is this browser called "Deer Park"?  This is the name given to the
  current development version of Firefox.  The RISC OS version is based upon
  the latest 1.5 Beta sources, and therefore is somewhat newer than the 1.0x
  version you would normally see on Windows and Linux.

  Icon bar icon - This version has an icon bar icon unlike previous
  versions to indicate it is running.  If you close the last window,
  the browser may or may not exit.  This will be fixed shortly.

  RISC OS menus - this version has partially functioning RISC OS menus.
  Menu implemention is complex, and will be improved soon. 

  Scollbars - Firefox has its own scrollbars as well as the RISC OS one.
  This will be properly integrated in future.

  Images - some types of images, notably table backgrounds are not
  displayed.  This is to mitigate an unresolved memory handling issue.

  RISC OS Firefox will not respond to the HTML filetype, or any attempt
  to drag things to it.  It employs file save diaglogues to access any
  local files.  This version, however, will respond to URI requests.

  RISC OS Fonts - whilst Firefox does indeed employ anti-aliased RISC OS
  fonts, characters are placed at pixel aligned positions to comply
  with assumptions made by the rendering engine.  This means they may
  look slightly odd in some instances.   Top-bit and UTF8 characters are
  displayed as question marks.  It is intended in future to use the same
  font engine as NetSurf.

  Speed - Firefox is relatively slow compared to other browsers,
  although every released version has shown speed improvements.  There
  are still more speed improvements planned to get as much speed as
  possible, with the ultimate aim for it to work smoothly on faster
  RISC OS machines.  It will of course never be as fast as native RISC OS
  browsers like NetSurf.

  Memory Usage - Firefox uses lots.  In order to avoid WimpSlot limitations,
  Firefox uses one or more dynamic areas for memory allocations on RiscPCs.
  On 32-bit systems, it uses the WimpSlot in normal fashion.  You will
  need around 30 MB free memory to start Firefox, and this can rise to
  64 MB or more during extended usage.  It will probably crash if it
  runs out of memory.

  Printing - there is no tested printing support.  It is possible
  to print via a postscript file, but I do not support this feature. 

  Plugin support - there is no RISC OS plugin support in this version.


Installing/Usage
----------------

Firefox requires SharedUnixLibrary and UnixHome.
See http://www.riscos.info/unix/usage.html on how to obtain these.

Firefox also requires Tinct: http://www.tinct.net/

Drag the !Firefox application to a location of your choice.

On a StrongARM RiscPC, Firefox can take up to 40 seconds to start up.  It
will take longer on the first run, as profile files are copied.  There is
no hourglass presently to indicate when it is done, so be patient. 

Firefox still has problems under RISC OS 3.7 and other systems with
10 character filename and 77 files per directory limiations - these are
currently being addressed.  However, if you wish to try it, the !Firefox
and !UnixHome applications will need to be placed in a raFS folder.  !Firefox
on these system will change the CSD to its application directory to avoid
certain filing system issues.

I believe that all other problems that previously prevented Firefox from
starting up have now been resolved, but it's possible a small number remain.


However, also ensure:

Firefox does *not* require !RiscXLib, however if you do have an
old version for another program such as !RiscX, it can set the HOME
variable which conflicts with !UnixHome.  The latest RiscXLib is available
from http://www.riscos.info/xlib/

Firefox may have problems starting if you move it.  In this case, delete
all the files under !UnixHome.home./mozilla.   You may also need to delete
this if you had problems with a previous version which would not start.

There's also been a great deal of speculation about what Firefox might
and might not be doing.  Much of it has been inaccurate.  Unless you've
looked at relevant code, please refrain: it is better to ask questions
on the UPP mailing list.


Getting Help
------------

I can only offer help to Unix Porting Project subscribers.  For the moment,
do not contact me if you have problems starting Firefox. I already have more
than enough information about the issue.

If you'd like to subscribe to the project, please visit:

http://www.riscos.info/unix/

I must insist on no feature requests at this time.  This will avoid me
becoming inundated with mail.


Bug Reporting
-------------

For the same reason, I must insist upon very stringent requirements for
reporting bugs.  Remember, for the most part, I'm very much aware of all
the present issues, and am working hard to try and improve them.  Responding
to reports of misfeatures or thing you'd like changed is not a good use
of my time.  Please refer to the earlier list for present issues.

At the present, I am only interested in repeatable crashes once Firefox
has started.  That is, a crash you can make happen at least twice, with a
specific set of instructions for causing it to occur.  If !Firefox.stderr
is not blank, then it is important you include that too, and finally, the
version of RISC OS you are using.  If I require further information, I will
ask, and please no "life stories".  I am not interested in stdout; don't
send it to me.

Only if your bug falls into this category and you have all this
information, then send your bug to unix@chocky.org.  Don't send it to the
mailing list.

This may sound harsh, but it is the only way I can properly manage what
is one of the largest RISC OS programs ever.


Conclusion
----------

Thanks again to all who contributed to this project.  I hope some
people may be encouraged to help fix smoe of the issues still present.
Happy browsing.


Release History
---------------

Beta 1

 - Initial RISC OS Release.


Beta 2

 - Noticeable speed improvements.
 - Update to latest CVS.


Beta 3

 - More speed ups
 - Fix of various minor problems that may prevent Firefox starting.
 - Update to Deer Park Alpha 2 from CVS.


Beta 4

 - Fix most of the remainder of start up problems.


Beta 5

 - Latest 1.5 beta 2 version.
 - Fix more start up problems.
 - Covert main menu to a RISC OS context menu
 - Add an icon bar icon, and stop it exiting on last window closed
   most of the time.
 - Respond to URI requests.

