Skip to content

ELKSWeb 0.1 — experimental beta

Pre-release
Pre-release

Choose a tag to compare

@l00nix l00nix released this 17 Oct 03:41

ELKSWeb 0.1 — experimental beta

An original C graphical web browser for ELKS, built with the native IA16 toolchain and an 8088-compatible instruction target. Inspired by the ELKS graphical-browser discussion and MicroWeb; no MicroWeb C++ code or assets are included. Native ELKS networking and direct graphics avoid mTCP and Microwindows/Nano-X dependencies.

This is a public experimental prerelease. Testers and feedback are welcome. The unresolved cold-boot 86Box exit anomaly remains documented below.

What is included

  • Detected-mode selection before graphics: CGA 640×200, EGA 640×350 and VGA 640×480. All modes are monochrome in 0.1.
  • A stable application frame and incremental vertical scrolling.
  • HTTP/local HTML and text, links, history, forms, tables, GIF images and binary downloads.
  • Default local welcome/help HTML and a monochrome GIF logo.

The normal runtime package excludes offline website fixtures and webfrog/webnews launchers. Corresponding source and the optional generic ELKS/QEMU test image are separate downloads. The test image includes attributed fixed FrogFind samples; it is not an HP installer.

Standalone compiled executable

elksweb is the ready-to-run native ELKS executable (77,024 bytes), with its own .sha256 sidecar. It is the same tested executable as in the runtime archive; no compilation or emulator image is required to install it on an existing compatible ELKS system.

Copy it to /bin/elksweb and run chmod 755 /bin/elksweb. For a first installation, use the runtime archive to also install the default welcome page, GIF logo and required notices. The standalone executable can otherwise open a supplied HTTP URL or local page. The matching corresponding-source archive remains available alongside it. This executable runs under ELKS, not directly under DOS, Windows, macOS or modern Linux.

Downloads

Each archive has a .sha256 sidecar and an internal SHA256SUMS manifest. Install bin/elksweb as /bin/elksweb, share/welcome.htm as /root/welcome.htm and share/elksweb.gif as /root/elksweb.gif; retain the notices and follow the included README. A graphics-capable ELKS console and writable /tmp are required; HTTP needs configured ELKS networking.

Archive SHA256
ELKSWeb-0.1-runtime.tar.gz 67755c92124d14dcdce8cbca2b06a4302635d0ce639c59717386f4ccf3b01db0
ELKSWeb-0.1-source.tar.gz d224f1e12c3d6c29489728851d71a0e342506b8313cf3cb86343789d4d83afe4
ELKSWeb-0.1-test-image.tar.gz c48c01768feaddb3d320db6c277f2a1755d15061a96731171b1cc2e14e2d32f5

Source/documentation revision: 9f60c14793c69d282acc92358b94d4efc71e9483. The tested executable is unchanged: 77,024 bytes, SHA256 5c652079e7cc27884091c9e3b1730fea5d37fa3cbeb690535fed94af16dcfce2. This refresh changes documentation and packaging, not browser code or installed welcome assets.

How to install

No compiler is needed. Download on a modern computer, then transfer to an existing compatible ELKS system; GitHub requires HTTPS and ELKSWeb supports HTTP only.

  1. For a first installation, download ELKSWeb-0.1-runtime.tar.gz and its .sha256 sidecar. Verify and extract on the modern computer. Linux: sha256sum -c ELKSWeb-0.1-runtime.tar.gz.sha256; macOS: shasum -a 256 -c ELKSWeb-0.1-runtime.tar.gz.sha256. Windows: compare Get-FileHash output with the sidecar. Extract using tar -xzf ELKSWeb-0.1-runtime.tar.gz.
  2. Transfer bin/elksweb from the extracted package to /root/elksweb on ELKS. Transfer share/welcome.htm to /root/welcome.htm, share/elksweb.gif to /root/elksweb.gif, and share/logo-source.txt to /root/logo-src.txt. Retain all notices. Use a binary-safe transfer method.
  3. Exit any running browser. On ELKS as root, run:
cp /root/elksweb /bin/elksweb
chmod 755 /bin/elksweb
elksweb --version
elksweb

The version should report 0.1. Choose a detected mode; the local welcome page opens without networking. For online browsing, configure native ELKS networking first, then try elksweb http://68k.news/.

For an upgrade using only elksweb, verify its .sha256, transfer it to /root/elksweb, and use the same install commands. Save the previous binary first with cp /bin/elksweb /bin/ew-old. The standalone executable does not include the welcome page or logo; existing copies can remain in place.

On the tested HP 200LX ELKS 3.8 beta 1 setup, run export ELKSWEB_COOKED_KEYS=1 before launch.

Full installation guide: Windows/macOS/Linux checksums, file transfer, notices and troubleshooting.

Validation and limits

Native QEMU checks cover all three display modes, 39 fixture scenarios, 12 history/cancellation checks, and 54 exact incremental/full-redraw comparisons. Owner feedback confirms use on standard and DS HP 200LX systems. Exact-0.1 Windows 86Box welcome/scroll/normal-shell exit passed, including a working shell command afterward. However, the first cold-boot autorun exit produced a floppy BIOS initialization banner; its cause remains unresolved. The later pass does not close that QA gate. Exact-version live-site checks in 86Box also remain incomplete. No new blind preference vote or physical Intel 8088 certification is claimed.

HTTP only; no native TLS, CSS or JavaScript. JPEG/PNG dimensions inform layout but their pixels are not decoded. Fixed document/form limits and slow operations remain; speed and responsiveness are excluded from the first-beta decision.

Future enhancements

EGA/VGA colour GIF rendering is deferred beyond 0.1, while preserving monochrome CGA/HP support. Other possible work includes page-load efficiency, HTML/input improvements and broader hardware coverage. These are directions without promised dates; JPEG decoding remains outside the planned scope.

Full release notes · Validation scope · Future enhancements · 68k.news screenshot · Discussion announcement