LinksBoks
=========
version 0.92 "Dr. Zoidberg edition"

(c) 2003-2004, ysbox <ysbox@online.fr>

Port of the Links Hacked Project (030709 release), by Sergey Karpov 
<karpov@sai.msu.ru>, a modified version of Links. Links is (c) 1999-2004 Mikulas 
Patocka, (c) 2000-2004 Karel Kulhavy, Petr Kulhavy, Martin Pergel.

The official LinksBoks site is: http://ysbox.online.fr/.
The official links-hacked site is: http://xray.sai.msu.ru/~karpov/links-hacked/
The official Links site is:
http://atrey.karlin.mff.cuni.cz/~clock/twibright/links/

-----------------------------------------------------------------------------
PLEASE READ THROUGH BOTH THIS FILE AND VERSION.TXT BEFORE CONTACTING ANYONE!!
-----------------------------------------------------------------------------


What is LinksBoks?
~~~~~~~~~~~~~~~~~~

It's a fully functional WWW browser that runs natively on your Xbox, entirely 
controllable with the regular Xbox controller, for those who don't want/know how 
to run Linux on their console.

Its rendering engine is not as powerful as IE's or Mozilla's (no it doesn't 
support CSS or the latest eyecandies), but it should be more than enough for 
your casual browsing.

LinksBoks is a straight port of the Links2 browser. The version I have chosen is 
Sergey Karpov's "hacked" version, which adds a number of neat features (tabbed 
browsing, options manager, etc., see the site above).


How do I install/configure it?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

If you have a binary version, just copy the contents of the archive somewhere on 
your hard drive and launch default.xbe.

If you have the source version, you can compile it by loading LinksBoks.sln in 
Visual Studio (you must have the XDK). It should hopefully compile out-of-the-
box. Then upload the resulting LinksBoks.xbe along with the Media directory 
somewhere on your Xbox hard and launch LinksBoks.xbe.

There is no configuration file to edit in order to make LinksBoks run the first 
time you try it. It should adapt automatically to your configuration:

- VIDEO CONFIGURATION: The program detects your video standard and choose an 
appropriate supported resolution (720x576@50Hz for PAL, 720x480@60Hz for NTSC 
and PAL-60). The HDTV modes (480p, 720p, 1080i) are supported but untested as I 
don't have the equipment. There are black margins to compensate overscan, which
can be adjusted (check out "Video calibration" in the Setup menu).

For HDTV users, be aware that LinksBoks will run in the highest available
resolution; it will try first 1080i, then 720p, then 480p, then fall back to
standard NTSC.  You can however skip certain resolutions, thus choosing the one
you want, either by disabling them globally in your original dashboard, or by
setting certain options in LinksBoks, located in the "User interface >
Xbox-specific options" section of the Options Manager.

- NETWORK CONFIGURATION: In order to browse the Web, you must have your network 
settings properly set up, especially the gateway and the DNS server(s). 
**LINKSBOKS DOES NOT CHANGE THOSE SETTINGS**. That means it will use the 
settings your dashboard has configured. So make sure you can access the Internet 
from your dashboard before running LinksBoks. If you are able to get RSS 
newsfeeds for example, you shouldn't have any problem with LinksBoks.

If you get "Host not found" messages, you probably have misconfigured your
gateway or DNS settings in your dashboard. Remember also that you have to
"share" your internet connection to make it available for the Xbox --look for
"Internet Connection Sharing" in the Windows online help to know how to do that.
After that, the gateway and DNS to put in your dashboard settings is the IP of
your PC.

The other option is to run a proxy server software on your PC (and tell
LinksBoks to use it instead of trying to contact Web servers directly, see "Some
tips" section below).


How do I use it ?
~~~~~~~~~~~~~~~~~

First, let's see the input modes: there are 2 main input modes in LinksBoks. You 
can toggle the input mode by using the BACK button on your controller (or 
clicking the left thumbstick).

NAVIGATION or MOUSE MODE:
-------------------------

This mode is used to navigate through menus, dialog 
boxes and (of course) Web pages. You should see a mouse pointer in this mode. 
The available controls in Navigation Mode are:
	o left thumbstick	Move the mouse pointer
	o A button		"left" (regular) click
	o X button		"right" click (contextual menus...)
	o B button		Mapped to the ESC key (cancel, show menu...)
	o Y button		Close current tab/dialog, exit Links
	o right thumbstick	Scroll page
	o Black button		Bookmark manager
	o White button		Go to URL dialog
	o Left/right triggers	Previous page/Next page
	o Directional pad	Mapped to arrow keys on the keyboard
				(usually to navigate between links)
	o START button		Mapped to the Return key
				(validate forms, dialogs, etc.)

TEXT INPUT MODE:
----------------

This mode is used to input text. Make sure you can input text 
before using this mode (LinksBoks does not automatically guess it yet).

The input method is quite different from the virtual keyboards you are used to. 
I know some of you will hate it. I chose it because it takes up minimal space on 
the screen, and while it'll be uncomfortable at first, you'll eventually get 
used to it soon and you'll be able to type text faster!

You can see 8 groups of characters at each corner of the screen. You have to 
direct the left thumbstick in the appropriate direction (you should see the key
mapping thingie move there), then press the A, B, X or Y button to get the 
character you want.

There are additional mappings in Text Input mode:
	o Black button		Show the keypad.
				The keypad is used to enter numbers. When in 
				keypad mode, use the A button to enter the 
				desired number, B for Backspace, X for Delete. 
				The d-pad and the START button keep their 
				mappings. Press the Black button again to exit 
				the keypad.
	o Left/right triggers	Hold to input majuscules or symbols.
	o Directional pad	Mapped to the arrow keys on the keyboard
				(navigate through text)
	o START button		Mapped to the Return key
				(validate forms, dialogs, etc.)
	

Ok, now how do I *really* use it?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

At the top of your screen you have the menu/tool bar. There are 5 icons by 
default, respectively Back/Forward/Reload/Bookmark Manager/Stop. The URL of the 
current page is also displayed. If you "click" on the bar (not on the icons), it
will change into a menu bar. There are several useful menu options, for example 
Setup>Options Manager (English menus) where you can tweak most of the browser's 
apparence and behavior.

You can open pages in new tabs (also sometimes called new windows), for example 
by "right-clicking" on a link and choosing the "Open in new window" option. When 
2 tabs or more are present, they are displayed on the bottom part of the screen, 
just above the status bar.


How do I edit my bookmarks?
~~~~~~~~~~~~~~~~~~~~~~~~~~~

When you start LinksBoks for the first time, there is no bookmarks file. Fire
up the Bookmark Manager by pressing the Black button. You can see several
default bookmarks are already present.

In order to have a bookmark file created, you must change this list of 
bookmarks, by adding/editing/removing/moving one of them. LinksBoks will then 
create a bookmark.html file in its directory. This is a HTML file, you can edit 
it with any text editor on your PC. This HTML file is parsed on startup, so make 
sure you understand its syntax or LinksBoks will not boot! (According to the 
comment in it, you shouldn't be editing it by hand anyway ;)


Other created files
~~~~~~~~~~~~~~~~~~~

LinksBoks will create a number of files in its working directory. You can safely 
delete these files, for example the cookies and globhist files in order to 
protect your privacy. They will be re-created when needed.


Some tips
~~~~~~~~~

- If the text is too small for you, you can change its size in the Options 
Manager, separately for the menus (Document > Html options > User font size)
and the document (User interface > Fonts and Colors > Menu > User font size)).
You can even change the menu's colors there, try it!

- If you're behind a proxy, you can configure it in the Options Manager too.
It's in "Network options > HTTP options > HTTP proxy"

- The embedded (experimental)Javascript engine has been reenabled, but it's
*disabled* by default. Enable it in Document > Javascript options.


Is browsing SSL-enabled using LinksBoks secure?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Starting from version 0.92, LinksBoks has support for SSL connections, using a
port of the OpenSSL library. You can therefore browse on https:// sites, and
the data between you and those servers is encrypted: nobody can eavesdrop on
what you're doing.

BUT! All this is worthless if we're not able to certify that we're actually
talking with the right server. That's what certificates are for: a Web client
must check that the certificate provided by the server is valid, and issued by
a trustworthy source, like VeriSign (...) or Thawte.

We're NOT doing these checks currently; so I cannot say you're perfectly safe
to connect to your bank or shopping sites using LinksBoks (although it's
nearly impossible to fake a well-known server).

Just so you know.


Last word, license, acknowledgements...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Congratulations, if you've read through this entire boring README file, you know 
all you need to know about LinksBoks! Happy browsing! :)

I hope you will have as much fun using it as I had porting it.

May I insist on the fact that:

  This program is free software; you can redistribute it and/or modify
  it under the terms of the GNU General Public License, version 2, as
  published by the Free Software Foundation.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

That means among other things you have to release the entire sources of your 
program under the GPL if it is based on LinksBoks or include it. Please respect 
that and be a good supporter of free software.

I apologize for any English errors you may have encountered in this file.

I'll finish by giving my many thanks to:

- the original Links authors at Twibright Labs for their great piece of
  software;
- Sergey Karpov for links-hacked;
- Sven Neumann for the DirectFB graphics driver on which I have based mine;
- Jakub "Jimmac" Steiner for his cute mouse pointer (which comes from Gnome);
- and of course the countless people who make the Xbox more than a regular
  console: they know who they are and you should too.