PocketLauncher
==============
A WHDLoad game launcher for AmigaOS 2.0+. It scans your disks,
catalogs the slaves, and you launch them from a list with cover
images. Ideal for large collections (tested with 3000+ games).
Assumes you already use WHDLoad.
Runs on any 68000 or better - from a plain 68000 (A500/A600 with a
2.0+ ROM) up to the fastest 040/060. The binary is built for the
68000 with the full 2.0+ API, so there is no separate "020" build to
pick: the same file runs everywhere, and faster CPUs run it faster.
The best part: no libraries needed
----------------------------------
* A single binary, ~380 KB. Copy it and it runs - nothing to install.
* No MUI needed (iGame requires it), no datatypes, no guigfx, nothing
off disk.
* Plain 68000 compatible - no 020+ required.
Features
--------
* Smart auto-cataloging: reads the name embedded in the slave and the
igame.data (title, genre, year, players, chipset, arguments), and
tells games from demos on its own.
* Multiple sources at once (up to 16 folders/volumes), detects mounted
volumes and drops duplicates.
* Incremental Update Index: adds new slaves without re-scanning
everything.
* Integrity check: finds slaves that are missing (deleted or moved)
and cleans them from the database, but keeps the ones on an
unmounted volume, so you don't lose your DB if you unplug a CF.
* Low-RAM mode and an optimized fast-RAM mode.
* Native IFF cover images, no datatypes. Laced, progressive (hires)
and RTG. Multi-IFF: view every .iff in the game's folder, not just
one. Two scaling modes: fill and sharp (pixel-perfect).
* Built-in tooltype editor - edit the .info from the app without
opening IconEdit.
* Run at startup and optional fullscreen.
* Sortable table (title, platform, genre, year, players). Filter by
three combinable criteria: language, platform (OCS/ECS, AGA, CD32,
CDTV) and type (games, demos, mags, cracktros, apps), plus a title
search. Iconify to an AppIcon with global hotkeys.
* Favourites: mark games from the menu, show only your favourites
with one checkbox. Stored by drawer name, so they survive
re-indexing and even moving the collection to another volume.
* Filters are remembered between sessions (can be turned off).
* Improved window handling with PARTIAL resizing, minimum 640x200
(NTSC hires). All the extra width goes to the title column - 29
characters before, 61 on a 1024x768 RTG screen. Not a full RTG
experience yet: it has not been tested on a real RTG screen, the
dragged size is not remembered across a fullscreen toggle, and the
font is still 8-pixel topaz, so text stays small on a big desktop.
* Rename any game to whatever you like, and restore the original name
at any time. Renamed entries are marked in the list and the bottom
line shows what they were called. The original is never lost - it
stays in the database - and renaming survives re-indexing without
duplicating the entry.
* Public-domain packs that use the generic WHDLoad slaves are handled:
those slaves name the environment they need, not the game, so the
list used to show ten identical "Generic KickStarter 34.005" rows.
The drawer name is used instead. An igame.data title always wins.
* Extra cover folders: point it at an image pack and the covers are
added to every game, on top of whatever is next to the slave.
Nothing is copied - it uses the images where they are.
Install
-------
Unpack the LHA and run PocketLauncher. That's it - no assigns, no
libraries, no MUI.
Changelog
---------
v33.310 (2026-08-16)
* Cover image packs: three naming conventions are now recognised.
Packs that ship a `.run` script next to each image (the ones where
the image is named after the human title and looks nothing like
the slave) are read by following the path the script itself uses
to launch the game - 99.1% exact matches measured against a real
29,326-file pack. Plus the classic <game>_SCRn.iff and
<game>-N.iff / <game>.iff. All of them searched recursively.
* Covers are indexed once instead of probed on every row change. A
game with no cover used to cost up to 80 disk lookups per keypress
and now costs none. Re-indexing your games no longer re-walks the
cover folders.
* The cover box now takes the shape of the image instead of a fixed
aspect, so the black bars are gone. In PAL a landscape cover
filled 40% of the box; it now fills it completely. Never stretched,
never cropped.
* Favourites, with a filter checkbox and menu items to add/remove.
* The window can be resized - partially. The minimum is 640x200 so it
still fits an NTSC screen, and everything above that goes to the
title column. This is a step towards proper RTG support, not the
finished thing: untested on real RTG, the dragged size is lost on
a fullscreen toggle, and the font is still 8-pixel topaz.
* Rename games, with the original always recoverable. Survives
re-indexing.
* Generic WHDLoad slaves (Generic KickStarter, Workbench 1.3, Intro,
Disk1...) no longer fill the list with identical rows - the drawer
name is used. iGame titles still take priority.
* Fixed a crash on large collections: past 16,384 games in Low-RAM
mode the program died with a runtime error. A 16-bit counter that
wrapped around.
* The next release will add online auto-update. THIS ONE DOES NOT
HAVE IT.
* Language/platform/type filters are remembered between sessions.
* Image navigation: < > arrows plus an N/M counter, keyboard arrows
page through the images too, and the box tells you when it is
loading instead of just going grey.
* About shows the installed WHDLoad version - handy when a game
refuses to start because the slave wants a newer one.
* Almost 400 KB less memory. A buffer was being reserved for a list
this window does not have and never used. On a 2 MB machine that
roughly doubles how many games fit.
* Long scans can be aborted, show which folder they are on, and mark
the window busy while they work.
* A large batch of message and dialog fixes: several named buttons
that no longer exist, and several described internals instead of
saying what happened and what you can do about it.
v33.288 (2026-08-09)
* Now runs on a bare 68000, not just 68020+. Earlier releases
shipped a 68020 binary that crashed on a plain 68000 (A500/A600,
68EC000 accelerators). The launcher is now compiled for the 68000
with the full AmigaOS 2.0+ API - one binary for every machine, and
faster CPUs are not slowed down. Confirmed booting on real 68000
hardware.
* The boot/system volume (usually "System") now shows up in the
detected-volumes list under Sources. A display filter was hiding
it, so you could index it by typing the path but never saw it
offered - fixed.
* The "DB x.xx mb" status label no longer flickers while the window
sits idle. It was being repainted on every timer tick even when
the value hadn't changed; it now repaints only when the number
actually changes.
v33.286 (2026-07-31)
* RTG fix: on a graphics-card / RTG Workbench (Picasso96,
CyberGraphX - e.g. a 1920x1080 desktop) the launcher wrongly
refused to start with "screen too low", even though the screen is
plenty big. Those screens don't set the legacy ECS HIRES bit that
the resolution check demanded. It now accepts any screen 640 wide
or more regardless of that bit, and only requires the HIRES bit on
narrow (<640) screens - so RTG desktops work and native LoRes is
still correctly rejected. Native OCS/ECS/AGA modes are unaffected.
v33.285 (2026-07-30)
Memory-scaling pass so big collections index fully on real
fast-RAM machines.
* The game database is now held in a chunked pool (fixed 256-record
blocks) instead of one growing array. The old single array needed
an ever-larger contiguous block and walled indexing at ~3000
games / ~2 MB even on an 8 MB machine, because no single free
block was big enough. The chunked pool uses fast RAM in small
pieces, so all of it is usable - large collections now index to
completion.
* Header-count validation now guards both directions (a corrupt DB
whose count byte reads as a large or negative value is rejected
with a "rebuild via Sources > Index" message instead of loading
garbage rows).
* Auto low-RAM mode kicks in on the right thresholds (small
fast-RAM or low total), and the optimized fast-RAM path is used
when there's headroom.
v33.284 (2026-07-21)
Robustness pass from two independent audits, 14 verified fixes.
* The "Please insert volume X" requester no longer pops at boot or
when launching a game whose volume is dismounted (unplugged USB,
ejected disk) - DOS requesters are now suppressed launcher-wide.
* WHDLoad paths of 241-255 chars now launch (they used to truncate
at 240, leaving the game unlaunchable).
* Games on offline volumes are no longer pruned by "Check DB
integrity" (preserved until the volume returns).
* Fixed a crash on OS 2.0-3.0 when drawing thumbnails.
* DB game-count validation against file size (prevents blank rows
from a corrupt DB).
Built with MacumbaEditor - https://macumbaeditor.com
|