MCAmiga - X-Phile Edition
=========================
A Norton Commander / Midnight Commander style two-panel file manager for the
whole Amiga family. It runs in a text window (or its own screen) and lets you
browse, copy, move, view, edit, compress and compare files entirely from the
keyboard, with optional mouse and drag-and-drop support.
This is MCAmiga - X-Phile Edition (version 1.1). The original project is by
alb42 and lives at https://github.com/alb42/MCAmiga. Licensed CC0 - see the
LICENSE file. The X-Phile Edition adds a pull-down menu bar, quick view,
directory history, sort/filter dialogs, a properties/protection editor,
fullscreen toggling, directory comparison and many smaller refinements on top
of the original.
Supported systems
=================
System CPU / ABI
------ ---------
AmigaOS 3.x m68k (68020+; a 68000 build also exists)
AmigaOS 4.x PowerPC
MorphOS 3.x PowerPC
AROS i386 (ABIv0), ARM RasPi 1-3 (ABIv0), x86-64 (ABIv1, NonSMP)
A secondary Linux build mode exists in the Lazarus project, but the program is
built around Amiga units and the text-mode RTL, so it is meaningfully usable
only on Amiga-family targets.
Requirements
============
- AmigaOS 3.x: 68020 CPU, 4 MB RAM (minimum).
- AmigaOS 4.x / MorphOS: PowerPC.
- AROS: i386, ARM (RasPi 1-3) or x86-64.
Needed assigns: ENV: and T:
Optional, for archives:
- lha and lzx commands in C: (for LHA/LZX read AND write).
On AROS the bundled lha is incompatible - use the xad path instead.
- An installed xadmaster.library to read many additional archive formats
(read-only).
Installing and starting
=======================
1. Copy the MCAmiga executable and its MCAmiga.info icon anywhere you like.
2. Double-click the icon from Workbench, or run MCAmiga from a Shell.
3. Optionally copy the shell helper scripts mc, mcview, mcdiff to C: and make
them executable (these are Amiga shell scripts, NOT POSIX):
protect c:mc swerd
After that you can simply type "mc" to launch the manager, "mcview <file>"
to open the viewer, or "mcdiff <a> <b>" to compare two files.
If the font looks too large, set the environment variable
FPC_VIDEO_BUILTINFONT to vga8 and restart:
echo vga8 >env:FPC_VIDEO_BUILTINFONT
To make it permanent, create the same variable in ENVARC:. You can also cycle
font sizes at runtime with Ctrl+F1.
Feature overview
================
- Dual-panel browsing of directories, devices/volumes/assigns, and archives.
- Three listing formats - Brief (names only), Full (name + size), Long
(name + size + date + protection flags).
- Three panel view modes - normal List, Info (shows details of the other
panel's selected item), and a directory Tree.
- File operations - copy, copy-as (to a typed name), move, rename, make
directory, delete (with or without confirmation), recursively over
multiple selected items.
- Flexible selection - by key, by range (Shift+Up/Down), and by wildcard
pattern (+ to select, - to deselect).
- Sorting - by name, extension, size or date, ascending or descending; via
hotkeys or a sort dialog.
- Per-panel file-name filter (e.g. #?.txt).
- Directory size scan to total up a folder's contents.
- Quick view - a fast, paged, full-window text peek without launching the
full viewer.
- Built-in text and hex viewer with search, search-again, jump-to-line /
address, word-wrap and a basic syntax highlighter for .ini / patch / diff
files.
- External viewer/editor support - up to two of each, configurable.
- Side-by-side file comparison (diff) using a Myers-algorithm engine.
- Directory comparison - marks files that differ or are missing between the
two panels, ready for a one-key copy.
- Archive support - browse/copy/move/rename/view/edit inside LHA and LZX
archives; read many more formats through xadmaster.library; pack selected
items to LHA/LZX; extract.
- Run executables directly (wait or don't-wait), with a configurable stack
size.
- File find - recursive, name and content search, with case-sensitivity
options.
- Quick name search - type the start of a name to jump to it.
- Properties dialog and protection-bit editor (hsparwed).
- Directory history - jump back to recently visited directories.
- MC-style pull-down menu across Left / File / Command / Options / Right.
- Fullscreen (own screen) <-> window toggle, font-size cycling, runtime
clock toggle.
- Mouse control and Workbench drag-and-drop (AppWindow / icon drop).
- Persistent settings saved back into the program icon's tooltypes.
- Optional logging for troubleshooting.
- Amiga-aware niceties - optional automatic handling of .info icon files
alongside their parent file, optional automatic drawer-icon creation,
configurable default Shell, CP437 / German-umlaut text rendering.
Complete keyboard reference
===========================
See in readme file inside archive or via F1 button in application
Archives
========
MCAmiga treats archives like directories - enter one with Enter and the panel
shows its contents.
- LHA / LZX - full read/write by shelling out to C:lha / C:lzx. Inside these
archives you can browse, copy, move, rename, view and edit.
- xadmaster.library - read-only access to the many formats xad supports
(browse, view and extract). When several handlers claim a file, the one
with the highest priority wins.
- Pack (Alt+F5) - compress the selected items into an LHA archive (LZX is
available from the Tools menu).
- Unpack (Alt+F6) - once you've entered an archive, select files and press
Alt+F6 to extract them to the destination panel. (Extracting whole
archives is also available from the Tools menu.)
If pressing Enter on a .lha/.lzx seems to do nothing, the required lha/lzx
command is probably missing from C: - MCAmiga surfaces this with a pop-up and
a log entry.
License and credits
===================
MCAmiga is multi-licensed: the application's own code is public domain, but it
bundles one third-party source file and links external Amiga libraries that
keep their own terms.
Credits
-------
- Original author: alb42 - https://github.com/alb42/MCAmiga
- Diff engine: Angus Johnson's TDiff (Myers algorithm), Diff.pas
- MCAmiga - X-Phile Edition (1.1) adds the additional features and tooling
described above.
Version history
===============
MCAmiga - X-Phile Edition 1.1
Additions on top of the 0.9 origin release:
- MC-style pull-down menu bar (F9 / Alt+F10): Left, File, Command, Options,
Right groups, with a live modifier-row bottom menu.
- Quick view (Alt+F3): full-window paged text preview with page X/Y count,
Home/End page jumps and a scrollbar.
- Directory history (Alt+F8) and a selectable-list dialog.
- Sort modes (Ctrl+F3 name, Ctrl+F4 ext, Ctrl+F5 size, Ctrl+F6 date) plus a
Sort order dialog; per-panel file-name Filter.
- Listing formats (Brief/Full/Long) and Info / Tree view modes.
- Properties dialog (Ctrl+P) and protection-bit editor (Ctrl+T).
- Directory comparison (Alt+F9); Pack (Alt+F5) and Unpack (Alt+F6) wiring.
- .info / hidden-file display toggles (Ctrl+F7, Ctrl+F8).
- Edit tooltypes (Ctrl+E); Save setup (Shift+F1) and Save tooltypes
(Shift+F2).
- Fullscreen <-> window toggle (Ctrl+W) preserving window position/size,
font-size cycling (Ctrl+F1), runtime clock toggle (Ctrl+F2).
- Richer in-program Help, command-line -fullscreen flag, optional debug log.
- AmigaOS 4 build fix and a reproducible multi-architecture build/packaging
path (m68000, m68020, AmigaOS 4 PPC, MorphOS PPC).
- Many smaller refinements and bug fixes.
1.0
- faster redrawing (define area of screen to update, new FPC feature, needs
latest FPC)
- clock with seconds (possible because of faster redrawing)
- RUNSTACK tooltype to set stack size for starting external programs
0.9 (origin of the X-Phile Edition)
- difference viewer in tools menu
- basic highlighter for ini, patch/diff files
- bugfix for start from WBDock2
- startup scripts to directly start the viewer/diffviewer from shell
- bugfix for file size
|