Amelinium 1.0.0 - web browser AND mail client for classic Amiga
===============================================================
Support author on patreon:
http://juen.in/support
Always new version here: http://juen.in
A browser AND a mail client. The archive holds two programs that share one
rendering engine, so a message with HTML and CSS looks the same in your inbox
as a page does in the browser:
Amelinium - the web browser
Emalinium - the mail client (POP3 / IMAP / SMTP). It is not a plain-text
reader: a message is laid out by the SAME engine as a web page,
so HTML mail arrives with its CSS 3 - tables, colours, inline
images, TrueType text - instead of a wall of tags. Settings
live in S:Emalinium.prefs.
Requirements:
- bsdsocket.library v4+ (works with IMPBOX bsdsocket.library!)
- AmiSSL v5 for HTTPS support (without that still http:// sites works fine)
!! HTTPS is encrypted but the server's CERTIFICATE IS NOT VERIFIED - we do not
check who is on the other end. Treat it as protection against passive
eavesdropping, not against an attacker who can redirect your traffic. The
same applies to Emalinium's mail passwords.
Included builds:
- Amelinium - 68000 (works on all Amigas, slowest)
- Amelinium_020 - 68020+
- Amelinium_040 - 68040+
- Amelinium_060 - 68060+ (fastest, recommended for RTG)
- Amelinium_low - AmigaOS 1.3 (Kickstart 34+). No images, no downloads and
NO MENU BAR - so no settings, bookmarks, tabs or About.
- Amelinium_020_JS - 68020+ with built-in JavaScript
- Amelinium_040_JS - 68040+ with built-in JavaScript
- Amelinium_060_JS - 68060+ with built-in JavaScript
- Emalinium - the mail client (any 68020+)
CSS coverage, measured against Chrome rather than claimed:
- CSS 1 100% of 53 properties
- CSS 2.1 100% of 88 properties
- CSS 3 100% of 107 properties
- together 99% of 195 (the missing piece is the @font-face at-rule, so a
page that ships its icons as a downloadable font shows none)
- HTML 4.01 87% of its elements told apart from an unknown one
- HTML5 78%
Those are the same numbers the start page shows. They count the VOCABULARY:
every property is implemented and rendered, not merely parsed. They do NOT
mean any given page looks identical to Chrome - text is set in
metric-compatible fonts, so lines wrap in their own places.
Known issues:
- JavaScript: in the _JS builds. DOM scripting and much of jQuery work;
heavy frameworks (e.g. Google's Closure) still do not
- rotate() / skew() / matrix() are parsed but not drawn (translate() and
scale() are)
- Some pages may still render incorrectly - please report them
- Slow on 68000, usable on 68030+ (faster from cache)
Command line:
Amelinium [URL] [options]
-screen WxH[xD] open an own screen of that size, skipping the mode
requester - e.g. `-screen 1024x768x24` on an RTG card or
`-screen 1280x512` on AGA. Picks the deepest mode the size
offers when D is left out. This is the quickest way to a
usable window on a big screen.
-aga 640x512 8-bitplane PAL screen, no requester
-wb open on the Workbench screen
-js run page scripts everywhere, ignoring the per-site list.
By default scripts are OFF until you allow a site, because
one advertising bundle can exhaust the machine's memory.
-proxy-host H
-proxy-port P send everything through an HTTP proxy
-debug write v2_*.txt diagnostics beside the program. Slow - it
is for reporting a bug, not for daily use.
-timing phase timings only, without the dumps
The same settings are available from the icon's Tool Types: URL, PROXYHOST,
PROXYPORT, AGA, WB, DEBUG.
Keyboard shortcuts:
- Up/Down - scroll
- Shift+Up/Down - page scroll
- Space - page down
- Backspace - page up
- Home/End - top / bottom of page
- Amiga = / - - zoom in / out (also on the Page menu)
- Esc - stop loading / stop a runaway script / close
- F5 - reload
- Amiga-C/X/V - copy / cut / paste the URL
- Amiga-T / W - new tab / close tab (also on the Tabs menu)
- Ctrl+click - open link in a background tab
- Middle-click - open link in a background tab (3-button mouse)
- Shift+click - open link in a new tab and go there
- Amiga-B / F - back / forward
- Amiga-H - home page
- Amiga-G - go to the address in the bar
- Amiga-S - save this page
- Amiga-/ - find on page
- Amiga-. - random page
- Amiga-? - about
Pictures:
GIF, JPEG, PNG, BMP and ICO are decoded on the Amiga, by the browser
itself. Decoded pictures are cached on disk, so a second visit paints
them without decoding again.
!! SVG, WebP and AVIF cannot be decoded here - there is no code on this
machine that reads them. Those go out to a PUBLIC RASTERISER
(images.weserv.nl), which converts them to PNG and sends that back. The
address of the picture therefore leaves your machine and reaches a third
party, which is worth knowing: it is the price of seeing an icon set that
a modern site ships as SVG. Everything else is fetched straight from the
site. Turning images off in the Settings menu stops both.
Fonts:
Amelinium reads TrueType fonts ITSELF - it opens the .ttf file, reads the
glyph outlines and rasterises them with its own scanline renderer. That
path needs no FPU, no maths libraries and no external library at all, so
TrueType text works on every Amiga from a plain 68000 upwards. It is on by
default whenever the font files are present; the TT button turns it off.
The AA button switches edge smoothing, which needs a truecolor screen -
on a palette screen there is nothing to blend with, so the button is greyed.
Acknowledgments:
Liberation Fonts (Red Hat, SIL OFL 1.1) - metric-compatible Arial /
Times / Courier replacements.
DejaVu Sans (DejaVu Fonts project, Bitstream Vera license) - used
when CSS names Verdana or Tahoma; matches their wider metrics
where Liberation Sans (Arial-metric) would be too narrow.
AmiSSL by Oliver Roberts - TLS for HTTPS.
stb_image (public domain) - PNG/GIF decoding.
TJpgDec by ChaN (BSD-style, 2021) - tiny JPEG decoder with
scale-on-decode (1/2, 1/4, 1/8). http://elm-chan.org/fsw/tjpgd/
Replaces stb_image for JPEG - same input, half the RAM and
much faster on oversized photo thumbnails.
Amiga Core Fonts for the Web (Amiga Information Center, 2000) -
bitmap fallback when TT is unavailable. |