====== Source and licence ====== ===== Licence ===== Ember Reach is Copyright (C) 2026 Michael Slater. It is free software: you may copy, change and share it under the terms of the GNU General Public License, version 2 or (at your option) any later version (the file ''COPYING''). It comes with NO WARRANTY. If you share the programs, the source must be available too; it is in ''REACHS05.ZIP''. ===== Building ===== The source builds with Free Pascal 3.2.2. make # Linux: bin/reach, bin/ermaint, bin/reachcfg make windows # 64-bit Windows: bin-win/*.exe (needs the win64 cross units) sh dosbuild.sh # DOS: bin-dos/*.exe (needs the i8086 cross compiler) sh mkrelease.sh # all of the above, then the release zips in release/ The units in ''src/'': ^ Unit ^ What it does ^ | ''reach.pas'' | The door: menus and screens (with ''erview*.pas'' and ''erscr.pas'') | | ''ermaint.pas'' | Maintenance and test commands | | ''reachcfg.pas'' | The sysop's set-up program | | ''erdata.pas'' | The game's records and REACH.DAT | | ''ergen.pas'' | Making a galaxy and joining houses | | ''erturn.pas'' | The nightly turn: lane drift, movement, battles, landings, the Hollow, production, research, victory | | ''erai.pas'' | The computer houses | | ''erorders.pas'' | Orders, with the rules for what is allowed | | ''ersetup.pas'' | REACH.CFG, new games, news and the Hall of Fame | | ''erlock.pas'', ''ersess.pas'' | The game lock, so doors and maintenance never change the game at the same time | | ''doorkit.pas'' | The door kit: drop files, the connection and the console | The game files are byte-for-byte the same on every system: a 30-day computer game (''ermaint sim 6 30 99'') gives the same REACH.DAT on Linux, Windows and DOS. On DOS (i8086) ''Integer'' is 16 bits, so the code uses ''LongInt'' throughout, and never uses two random numbers in one expression. ===== Credits ===== * The door's console code (''doorkit.pas'') follows the design of ''dorkit.js'' from Synchronet BBS. Its line editor, ''ConGetStr'', is a translation of dorkit.js's ''getstr'' by Stephen Hurd (Deuce), under the GNU GPL. * Synchronet BBS by Rob Swindell and the Synchronet developers. * Free Pascal by the Free Pascal team.