# User-configurable choices
# =========================
#
# These may not be freely internationalised - the values of the tokens,
# where strings, are compared directly inside the browser. Since the user
# should edit this through a dialogue, it is that dialogue's contents which
# should be internationalised. Changing the values here to foreign ones
# requires the code to be appropriately altered and recompiled.

# URLs
# ====
#
# HomePage         - The URL that the browser defaults to on loading.

HomePage:http://www.acorn.co.uk/browser/

# Page colours
# ============
#
# BackColour       - Background colour; 0xBBGGRR00 where RR GG BB are red, green,
#                    and blue values as two digit hex numbers from 0 to 255. It
#                    doesn't matter if the hex digits are upper or lower case. If
#                    the syntax is wrong, very unpredictable effects could occur.
# TextColour       - Text colour, defined as BackColour.
# LinkColour       - Link colour, defined as BackColour.
# UsedColour       - Used (followed) link colour, defined as BackColour.
# FollColour       - Colours links flash to when clicked on, before being
#                    followed.
# SeleColour       - Colours objects adopt or are bordered in if selected /
#                    highlighted.

BackColour:0xdddddd00
TextColour:0x00000000
LinkColour:0xff000000
UsedColour:0xbb008800
FollColour:0x0000ff00
SeleColour:0x00bb0000

# Tables
# ======
#
# SupportTables    - 'yes' or 'no', if 'yes' tables are handled, else table
#                    tags are ignored and the document is rendered in a linear
#                    fashion.
# MSIE4StyleTables - 'yes' or 'no', if 'yes' tables will be rendered in a manner
#                    similar to Microsoft(R) Internet Explorer(TM) 4. This will
#                    mostly affect widthing issues - e.g. a table specified to
#                    be 100% wide, but located inside an indented list, will
#                    be a different width with this turned on compared with when
#                    it is turned off.
# TableOuter       - Changes the way the outer border around tables is plotted.
#                    '2d', 'auto', '3d' or 'never', for always 2D, automatic
#                    selection depending on screen resolution and CELLSPACING,
#                    always 3D, or never plot the borders (but leave space for
#                    them to ensure page layouts relying on this still work).
# TableInner       - As TableOuter but for inner (i.e. cell) borders.

SupportTables:yes
MSIE4StyleTables:yes
TableOuter:auto
TableInner:auto

# JavaScript (JS), JavaScript builds only... (Visit URL 'about:')
# ===============================================================
#
# SupportJS        - 'yes' or 'no', if 'yes' then the JavaScript interpreter
#                    is enabled, else it is not and scripts etc. will not
#                    be executed.
# JSWatchdog       - 'yes' or 'no', if 'yes' then the watchdog (JS branch
#                    callback function) timer will be enabled. If a script is
#                    taking a long time to execute it will eventually prompt
#                    to see if it should continue, though at any time you can
#                    press Escape to abort the script in any case. If 'no',
#                    the script can run forever should you so wish - useful
#                    if you've a heavy processing script that you know will
#                    take a long time to complete.
# JSTimeout        - A number in centiseconds. If JSWatchdog is 'yes', this
#                    is the length of time the system waits before asking if
#                    the script should be aborted. If the watchdog timer is
#                    disabled this option is ignored anyway.

SupportJS:no
JSWatchdog:yes
JSTimeout:1000

# Font usage
# ==========
#
# FontSize         - Default font size, in 16ths of a point.
# TTAspect         - Aspect ratio for teletype style text (in %).
# SystemFont       - 'yes' or 'no', if 'yes' browser will only use system font on
#                    the page (fast and clear, but pretty ugly...).
# MinimumFontSize  - Between 1 and 7, normally 1. This is the smallest font size
#                    as specified by <font size="..."> in HTML that Browse will
#                    use. If you find that web pages use font sizes of 2 or 1 too
#                    much, making them hard to read, you can use this to alleviate
#                    the situation.
# Typeface1        - Typeface definitions. The syntax of these is fairly
# Typeface2          strict and slightly complex, so they should only
# Typeface3          be altered through a front-end dialogue in the
#                    browser.
# Encoding         - Default document character set encoding to use. This is as
#                    follows (these are Internet MIB numbers):
#
#                       3: US-ASCII
#                       4: ISO-8859-1 (Latin 1)
#                       5: ISO-8859-2
#                       6: ISO-8859-3
#                       7: ISO-8859-4
#                       8: ISO-8859-5
#                      10: ISO-8859-7
#                      11: ISO-8859-8
#                      12: ISO-8859-9
#                      13: ISO-8859-10
#                      16: ISO-8859-13
#                      17: SHIFT_JIS
#                      18: EUC-JP
#                      37: ISO-2022-KR
#                      38: EUC-KR
#                      39: ISO-2022-JP
#                      40: ISO-2022-JP-2
#                     104: ISO-2022-CN
#                     105: ISO-2022-CN-EXT
#                     106: UTF-8
#                    1001: ISO-10646-UCS-4
#                    1010: UNICODE-2-0
#                    2022: ISO-2022
#                    2025: CN-GB
#                    2026: CN-BIG5
#                    2027: MACINTOSH
#                    2084: KOI8-R
#                    2250: WINDOWS-1250
#                    2251: WINDOWS-1251
#                    2252: WINDOWS-1252
#                    4002: SAMI
#                    4006: CELTIC
#                    5001: X-ACORN-LATIN1

FontSize:205
TTAspect:90%
SystemFont:no
MinimumFontSize:1
Typeface1:fixed=Corpus.Medium:Corpus.Medium.Oblique:Corpus.Bold:Corpus.Bold.Oblique;
Typeface2:sans=Homerton.Medium:Homerton.Medium.Oblique:Homerton.Bold:Homerton.Bold.Oblique;serif
Typeface3:serif=Trinity.Medium:Trinity.Medium.Italic:Trinity.Bold:Trinity.Bold.Italic;sans
Encoding:2252

# Page display
# ============
#
# ShowForeground   - 'yes' or 'no', if 'yes' foreground images will be fetched
#                    as soon as they are encountered. Otherwise they will only
#                    load when the browser is asked to load them.
# ShowBackground   - 'yes' or 'no', if 'yes' background images will be displayed.
# UnderlineLinks   - 'yes' or 'no', if 'yes' link text will be underlined.
# UseSourceCols    - 'yes' or 'no', if 'yes' any document-specified colours will
#                    be used, else defaults will be used instead.

UnderlineLinks:yes
UseSourceCols:yes
ShowForeground:yes
ShowBackground:yes

# Page layout
# ===========
#
# LeftMargin       - Basic left hand page margin (before list indents etc.), in
#                    millipoints.
# RightMargin      - Similarly, the basic right hand page margin in millipoints.
# QuoteMargin      - Extra page margin for a <blockquote> section of text.
# Leading          - Line spacing in OS units (pronounced 'ledding'). Note that
#                    negative numbers are allowed but may produce redraw
#                    artifacts under some circumstances, so use with caution.
# LeftIndent       - Multiplier used to work out left hand indent of text for
#                    list items etc., in millipoints.

LeftMargin:3200
RightMargin:3200
QuoteMargin:19200
Leading:4
LeftIndent:38400

# Fetch controls
# ==============
#
# MaxImages        - Maximum number of images that may be simultaneously fetched.
#                    Must be between 1 and 255, though values over about 25 are
#                    more likely to degrade performance than improve it.
# SupportPJPEG     - 'os' for OS JPEG support only, so no PJPEGs. Still, saves
#                    memory. 'both' to use the OS for JPEGs it can handle, else
#                    use internal routines - you get PJPEGs and save memory for
#                    the majority of JPEGs. For speed, if there is lots of free
#                    memory, use 'interal' - this uses internal routines only, so
#                    there's no 'direct from JPEG' plotting going on but you do
#                    get fast plotting and good dithering of all JPEGs.
# SupportFrames    - If 'yes', frames support is enabled, else 'no' - frames
#                    will not be fetched, and no alternative other than that
#                    already present in the HTML will be presented.
# SupportObject    - If 'yes', OBJECT, EMBED and APPLET will be handled,
#                    else if 'no' they will be ignored (so any alternative
#                    HTML in an OBJECT tag, say, will always be shown).
# SupportJS        - Support JavaScript (in JavaScript capable builds only).
# PlugInControl    - Controls when Plug-Ins are started, relative to page
#                    loading - 'never' for never, 'viewed' for when the bit of
#                    page in which a Plug-In lies is viewed (i.e. redrawn for
#                    the first time), or 'asap' to start as soon as the HTML
#                    defining the Plug-In has been fetched.
# ClientPull       - If client pull (automatic fetching/refetching of pages)
#                    causes problems - e.g. you didn't have time to read the
#                    page you were on before something else loaded - then
#                    this can be used to turn off client pull. It is
#                    enabled if 'yes', disabled if 'no'.
# SeeFetches       - Controls whether or not a 'small fetch' window is shown
#                    for Plug-in data fetching. This lets you abrt data
#                    fetching if you want to, but can clutter up the screen
#                    with fetch windows. Set to 'yes' to show them, else 'no'.

MaxImages:2
SupportPJPEG:both
SupportFrames:yes
SupportObject:yes
SupportJS:no
PlugInControl:viewed
ClientPull:yes
SeeFetches:no

# Image garbage collection
# ========================
#
# CollectAfter     - If 'yes', garbage collection occurs after a new page
#                    fetch is completed (free memory etc. permitting). This may
#                    mean higher transient memory requirements of course. If
#                    'no', garbage collection occurs the moment a page is
#                    cleared ready for a new one to fetch. This will affect how
#                    high you might want to set UnusedImageLimit.
# FreeRAMLimit     - If free memory falls below this amount when a new image is
#                    to be created, the garbage collection system is run to try
#                    and get more RAM. The amount is specified in bytes.
#                    Only as many images as need to be deleted to maintain the
#                    required free memory, are deleted. So, use 0 for unlimited
#                    (UnusedImageLimit becomes the only constraint).
# UnusedImageLimit - If the number of images a browser is holding ready for
#                    garbage collection exceeds the value given here, get rid
#                    of an unused image - so this number of unused images will
#                    be reached and thereafter maintained, since for each image
#                    created, one pending garbage collection is removed. Use
#                    zero to effectively disable image garbage collection;
#                    images from a current page are discard the moment that
#                    browser window goes to a new location. Use -1 for
#                    unlimited (FreeRAMLimit becomes the only constraint).

CollectAfter:no
FreeRAMLimit:2097512
UnusedImageLimit:10

# Hotlist controls
# ================
#
# HotlistPath      - Hotlist default load path.
# HotlistSave      - Hotlist default save path.
#
# SaveHotlist      - 'always', 'once' or 'never'. For 'always', the hotlist is
#                    saved each time a URL is added. For 'once', the hotlist is
#                    only saved on browser shutdown (if it crashes, new additions
#                    would be lost; but there's less in-session disc accessing).
#                    If 'never', the hotlist is never saved. Useful for hotlists
#                    being accessed in a resource-only manner, but remember that
#                    any new additions last only for the duration of that
#                    browser session (so use this with caution).
# AddHotlist       - 'top' or 'bottom'. If 'top', new items are added to the top
#                    of the hotlist; else they are added to the bottom / end.
# HotlistType      - 'descriptions' or 'urls', which says it all. [unimplemented]
#
# AutoOpenDelay    - The delay in centiseconds before a directory will auto-open
#                    if a URL is held over it, or 0 to not do this at all.
# AutoScrollDelay  - The delay in centiseconds before the hotlist window will
#                    automatically scroll during a hotlist drag operation, if
#                    the pointer is within the scroll region.
# AutoScrollMargin - The distance in OS units from the hotlist window edge that
#                    the pointer must be within for autoscrolling to occur.

HotlistPath:Browse:Hotlist
HotlistSave:<Choices$Write>.WWW.Browse.Hotlist

SaveHotlist:always
AddHotlist:top
HotlistType:descriptions

AutoOpenDelay:50
AutoScrollDelay:50
AutoScrollMargin:32

# Global and local histories
# ==========================
#
# HistoryPath      - Global history default load path.
# HistorySave      - Global history default save path.
# ImageHistoryPath - Same as HistoryPath, for the image history (the small
#                    history that remembers how large images are, so if they
#                    appear in HTML without any specified size the browser
#                    knows what size to pick straight away).
# ImageHistorySave - As above, but for saving the image history.
#
# MaxSize          - Maximum history size, in K. 0 for no limit.
# ImageMaxSize     - Same as above, for the image history.
# ExpiryAge        - Maximum age of a history entry, in seconds. 0 for no limit.
# ImageExpiryAge   - Save as above, for the image history.
#
# ShowURLs         - 'yes' or 'no', if 'yes' the History menu will always only
#                    contain URLs. Otherwise it will hold page titles (where
#                    available).
# SaveHistory      - 'always', 'once' or 'never'. For 'always', the global
#                    history is saved every time a new URL is added. For 'once',
#                    it is only saved on browser exit (so new additions would
#                    be lost if the browser crashed). For 'never', the history
#                    is never saved to disc.
# SaveImageHistory - Same as above, for the image history.

HistoryPath:Browse:History
HistorySave:<Wimp$ScrapDir>.WWW.Browse.History
ImageHistoryPath:Browse:Images
ImageHistorySave:<Wimp$ScrapDir>.WWW.Browse.Images

MaxSize:0
ImageMaxSize:0
ExpiryAge:604800
ImageExpiryAge:1209600

ShowURLs:no
SaveHistory:once
SaveImageHistory:once

# Printing controls
# =================
#
# PrintCopies      - Default number of copies to print. Must be at least 1!
# PrintStart       - 'start' to print from the start of the web page, 'visible'
#                    to print from the top of the region visible in the browser
#                    window.
# PrintEnd         - 'end' to print to the end of the web page, 'visible' to
#                    print to the bottom of the region visible in the browser
#                    window, else a number greater than 0 for the number of pages
#                    to fill up after starting printing at the given start point.
# PrintReform      - 'yes' or 'no', if 'yes' the page will be reformatted to fit
#                    the paper size (else it is printed at a width determined by
#                    the browser window, which may mean it overflows the right
#                    hand edge of the paper or does not use the full page width).
#                    Reformatting can take quite a long time, hence this is
#                    optional. When using 'visible' for PrintStart or PrintEnd,
#                    this option is ignored and reformatting does not take place,
#                    as reformatting would change the visible region, if it was
#                    done in the window rather than internally for the printer.
# PrintOrient      - 'upright' or 'sideways', which pretty much says it all.
# PrintBack        - 'none' to print no backgrounds at all (plain or images),
#                    'tables' to print backgrounds in tables (plain only at
#                    present), or 'always' to print all backgrounds (plain in
#                    tables, images in the main page if the browser view
#                    options at the time are set to show background images).
# PrintBlack       - When printing, text in certain places may be plotted in
#                    black. To have all text in black, use 'all', or to have
#                    all text appearing in the colours as seen on the actual
#                    web page, use 'none'. Finally, you can specify that black
#                    text should be used for any part of the page where no
#                    background will be printed - for this, use 'bg'.
# PrintPlain       - 'yes' or 'no', if 'yes' then as soon as a print dialogue is
#                    opened for a browser any background images will be
#                    forcibly turned off (until the dialogue is closed).

PrintCopies:1
PrintStart:start
PrintEnd:end
PrintReform:yes
PrintOrient:upright
PrintBack:tables
PrintBlack:bg
PrintPlain:yes

# Toolbar controls
# ================
#
# URLbar           - 'yes' or 'no', if 'yes' new browser windows will have URL
#                    bars present.
# ButtonBar        - 'yes' or 'no', if 'yes' new browser windows will have button
#                    bars present.
# StatusBar        - 'yes' or 'no', if 'yes' new browser windows will have status
#                    bars present.
# MoveGadgets      - 'never', 'at end', or 'during' - gadgets in toolbars are
#                    never moved to fit inside the browser window, only moved at
#                    the end of a resize operation, or moved during a resize
#                    operation, respectively.

URLbar:yes
ButtonBar:yes
StatusBar:yes
MoveGadgets:during

# Window controls
# ===============
#
# Width            - Default browser window width, in OS units.
# Height           - Default browser window height, in OS units.
# OverrideX        - The X position to open the window at, or 0 for centred.
# OverrideY        - The Y position to open the window at, or 0 for centred.
#
# SolidResize      - 'yes', 'no' or 'always'. If 'yes' frame border resizes will
#                    be solid, unless the CMOS RAM window solid resize bit is
#                    clear. If 'no', frame border resizes will never be solid
#                    (a dashed outline shows what the window sizes are), or
#                    if 'always', the drag is always solid, regardless of CMOS
#                    RAM settings.
#
# FullScreen       - 'yes' or 'no', if 'yes' the window will open full screen,
#                    else it will open at the default page size.
# HScroll          - 'yes' or 'no', if 'yes' a horizontal scroll bar will be
#                    visible when Full Screen. Can also have 'auto', to
#                    add or remove scroll bars automatically, if the Wimp
#                    variant the browser runs on supports this. If the
#                    Wimp doesn't, this will work the same as 'yes'.
# VScroll          - 'yes' or 'no', if 'yes' a vertical scroll bar will be
#                    visible when Full Screen. As for HScroll, can also
#                    have 'auto' with the right Wimp.
#
# NoScrollBars     - An option for frames; if 'yes', frames will have no
#                    scrollbars. You can either then use DragToScroll to move
#                    the page, or if you prefer, some 3rd party alternative.
#                    To have normal scrollbar behaviour (i.e. do whatever the
#                    HTML says), set to 'no'.
# DragToScroll     - If 'yes', an 'inactive' bit of page may be used to scroll
#                    a page view. Otherwise, this is not allowed.
# ShowMayScroll    - If 'NoScrollBars' is set to 'yes', display an indicator
#                    in a frame when part of it is obscured (i.e. show that
#                    it may scroll).
#
# ToggleOnYOnly    - 'yes' or 'no', if 'yes' then a browser window's Toggle
#                    Size icon will only open the window to maximum size
#                    vertically. Otherwise it opens full width as well as
#                    full height. At any time, holding down Ctrl when clicking
#                    on the icon gives you the reverse behaviour.

Width:1236
Height:1364
OverrideX:0
OverrideY:0

SolidResize:always

FullScreen:no
HScroll:auto
VScroll:auto

NoScrollBars:no
DragToScroll:yes
ShowMayScroll:no

ToggleOnYOnly:no

# Reformatter controls
# ====================
#
# RefoWait         - 'yes' or 'no', if 'yes' the browser will wait for a time
#                    determined by 'RefoTime' (see below) before doing a page
#                    reformat - can be useful if frequent reformats when unsized
#                    images come in (for example) are proving annoying.
# RefoKeep         - 'yes' or 'no', if 'yes' the browser will attempt to keep
#                    the line displayed at the top of the visible portion of the
#                    page at the top, when the page reformats. Otherwise, the
#                    scroll position is not worried about when reformatting (so
#                    typically, the page scroll position jumps to the top).
#                    Note that the page may still jump briefly to the top anyway
#                    (see RefoHold below) and if the line at the top is in the
#                    middle of a paragraph of text, the reformatter may well
#                    track back a little and display the whole thing.
# RefoHold         - 'yes' or 'no', if 'no' the reformatter will attempt to
#                    match the y extent of the window to the last line in the
#                    page, which is normally desirable. When RefoKeep is set to
#                    'yes', though, this often means that the scroll position of
#                    the page will jump briefly to the top whilst the page is
#                    reformatted, until the line that the reformatter is trying
#                    to re-display is reached; the scroll position then jumps
#                    down to it. This flicker can be annoying. Setting RefoHold
#                    to 'yes' will stop the extent shrinking when the page is
#                    reformatted, but this can leave the scroll position down
#                    in the middle of nowhere whilst the reformatter deals
#                    with lines higher up.
# RefoTime         - If RefoWait is 'yes', the time in centiseconds between
#                    queued reformats (urgent reformats may force this earlier
#                    though - e.g. document fetch completed).

RefoWait:yes
RefoKeep:yes
RefoHold:no
RefoTime:500

# Input device controls
# =====================
#
# FixedPtr         - 'yes' or 'no', if 'yes' the pointer will change shape as it
#                    moves over certain objects on the page (e.g. a link).
#                    Otherwise it stays the standard pointer shape, over the page.
# HighlightLks     - 'yes' or 'no', if 'yes' links (and some other objects) will
#                    be highlighted as the pointer moves over them.
# KeyboardCtl      - 'yes' or 'no', if 'yes' links (and some other objects) will
#                    be selectable from the keyboard.

FixedPtr:no
HighlightLks:no
KeyboardCtl:no

# Multiuser environments and proxying
# ===================================
#
# Clone            - 'yes' or 'no', if 'yes' say we're Netscape(R) Navigator(TM)
#                    compatible.
# SendReferer      - 'never', 'always' or 'when http' - to send a Referer: header
#                    telling the remote server what page you just came from
#                    for page and image fetches. This is done for all protocols
#                    all the time with 'always', never sent with 'never' or only
#                    done for HTTP transfers if you choose 'when http'.
#
# UseProxy         - 'yes' or 'no', if 'yes' proxying will be used for HTTP
#                    fetches, so the value of the next two items is important.
#
# ProxyAddress     - The full base URL of the proxy server to use for HTTP
#                    fetching, including the protocol to use (http, ftp, etc.).
#
# UseProxyftp      - To proxy other protocols, add lines of the form
# UseProxygopher     "UseProxyxxx:yes" and "ProxyAddressxxx:xxx://this.host/",
# ProxyAddressftp    where "xxx" is the protocol (or scheme) name in lower case;
# etc.               such as 'ftp', 'gopher', or whatever. For example, to cache
#                    FTP fetches through a locally running copy of WebServe,
#                    add the lines "UseProxyftp:yes" and
#                    "ProxyAddressftp:http://127.0.0.1/" (yes, that should say
#                    'http' in as part of the proxy name, since WebServe only
#                    listens on that particular port - the address you should
#                    give will depend on the proxies you intend to use).
#
#                    To exclude specific hosts or domains from *any* proxying
#                    regardless of the protocol being used, add a line
#                    "ProxyExclusions:". This is followed by a comma separated
#                    list of domains or hosts - if the item starts with a full
#                    stop, it is considered a domain, else a host. For example,
#                    "ProxyExclusions:www.acorn.com,.ac.uk,www,.acorn.co.uk"
#                    would prevent cacheing for any URLs going to:
#
#                    * the host 'www.acorn.com' - e.g.
#                      'http://www.acorn.com/browser';
#                    * any host in the '.ac.uk' domain, for example
#                      'ftp://src.doc.ic.ac.uk/';
#                    * any host called just "www", such as in
#                      'http://www/my_site/index.html';
#                    * and finally, any host in the domain '.acorn.co.uk', e.g.
#                      'http://www.acorn.co.uk/', 'ftp://ftp.acorn.co.uk/'.
#
# StartProxy       - 'yes' or 'no', if 'yes' the proxy server (see Messages
#                    file) will be started if not already running. This is
#                    usually WebServe, and is usually used to provide local
#                    browser cacheing services.
#
# URIUsage         - Control usage of the URI handler, if present. Values are
#                    'never' (never use it), 'requests only' (process URI
#                    requests from the handler only, never send requests),
#                    'unknowns only' (broadcast unknown URI types, never handle
#                    requests), 'unknowns and requests' (broadcast unknown URI
#                    types and handle requests), or 'everything' (broadcast all
#                    URIs whether they can be dealt with in the core or not -
#                    and so always give a chance for other applications to step
#                    in at that point - and therefore, clearly, deal with any
#                    requests).
# Cookies          - Handling of cookies. Takes values 'reject', 'prompt' or
#                    'accept' to automatically reject all cookies, ask about
#                    each one, or automatically accept all cookies.

Clone:yes
SendReferer:always

UseProxy:yes
ProxyAddress:http://127.0.0.1/
UseProxyftp:no
ProxyAddressftp:http://127.0.0.1/
UseProxygopher:no
ProxyAddressgopher:http://127.0.0.1/

ProxyExclusions:

StartProxy:yes

URIUsage:unknowns and requests
Cookies:accept

# End
# ===
#
# If any items appear below, the Choices file being maintained wherever
# the browser is saving it to (e.g. <Choices$Write>) has become out of date
# compared with the default Choices file inside the browser's application
# directory. The items below have been added to that default Choices file,
# and so have been appended to this working copy as well.

