Skip to content

mseelye/scottfree-ncurses

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ScottFree-ncurses - ScottFree Revision 1.14b for ncurses environments

Source: https://github.com/mseelye/scottfree-ncurses
This rework by: Mark Seelye [email protected]
Original: "ScottFree release 1.14b" for DOS, by Alan Cox
Copyright:
Scott Free, A Scott Adams game driver in C.
Release 1.14b (PC), (c) 1993,1994,1995 Swansea University Computer Society.
Port to ncurses Release 0.1, (c) 2020 Mark Seelye
Distributed under the GNU software license
License: GNU GPL, version 2 - see GPL-2.0.md

Credits and Thanks

  • Original SCOTT.c/SCOTT.h source from "ScottFree release 1.14b" for DOS, by Alan Cox. From ifarchive.org
  • Mike Taylor's fixes for the definition notes from his ScottKit project.
  • Jason Compton, who made a great Scott Adams-format game called "Ghost King" that inspired me to play around with Scott Adams Interpreters
  • "Ghost King" is available in the /games directory.
  • ALL the games in the /games directory belong to the authors who created them. I do not claim to have authored any of them, and I provide them here for the sake of convenience. I believe almost all of these came from ifarchive.org

Goals for this Project

Before working on scottfree64 for the Commodore 64, I did a quick port to ncurses. I know there are other ncurses ports out there, but I thought I'd put mine out there too. As with scottfree64, I wanted to make as few changes to the original SCOTT.C/SCOTT.H as possible, so there are no optimizations here.

Some Notes

  • You will need the ncurses development libraries installed to build this.
  • If you exit the program abnormally it may make your terminal wonky, try stty sane
  • I've tested this with Windows MSys(xterm), Mac, and Ubuntu 16.04.

Enough, how do I play?

With ncurses libraries installed, gcc, and make - you should be able to build this. It will put scottfree-ncurses(.exe) in the out directory.

  • build: make
  • run: ./out/scottfree-ncurses [optional arguments] games/[game dat file] [optional saved game]
  • Example run: ./out/scottfree-ncurses -i -d games/ghostking.dat yorick
    Where -i and -d are optional switches, ghostking.dat is the playable game file to load, and yorick is the optional saved game.

The options available in this build are the same as the original ScottFree 1.14b:

  • -h Shows help similar to this README.
  • -y Use "you are" mode.
  • -s Use "scottlight" mode for light/darkness messages.
  • -i Use "I am" mode. (Default behavior, expected by most Adams-format games)
  • -d Debug. Shows detailed loading progress and data about the gamefile during the load.
  • -p Use old or "prehistoric" lamp behavior.

Games

Again, all of the games in the games directory belong to the original authors. Provided here for the sake of convenience.

Ghost King by Jason Compton

  • Ghost King by Jason Compton "Your father is dead and you're sure your uncle is responsible. You tried to tell your mother so. Instead of believing you, she married him. Now you're going to uncover the truth and set things right..."

Scott Adams Classic Adventures (SACA)

Scott Adams later Adventures (plus a sample game)

Scott Adams later Adventures Marvel(TM) Adventures (Questprobe series)

These Scott Adams original text Adventure games are still copyrighted by Scott Adams and are not Public Domain. They may be freely downloaded and enjoyed though. Please refer to the original shares at ifarchive.org Look for AdamsGames.zip

The 11 Mysterious Adventures by Brian Howarth:

(c) 1981,82,83. All games written by Brian Howarth. #5-7 co-written by Wherner Barnes, #8 and #11 co-written by Cliff J. Ogden.

All of the commercially published Scott Adams-format games available in TRS-80 .dat format are expected to work on this build of ScottFree. Some modern games which play at the boundaries of the Adams specification may fail on this build due to memory limitations or other quirks.

DAT files / ifarchive.org

DAT Is a format used by some of the Scott Adams game kits and players. You can find a lot of them on sites like:
http://ifarchive.org/indexes/if-archiveXscott-adamsXgames.html

Building from source

You need to have ncurses installed. This varies from platform to platform how to do it. You also need gcc (or some other gcc compatible C compiler, clang etc.), and GUN make.

$ make
mkdir -p out
*** Building src/scottfree-ncurses.c
gcc -o out/scottfree-ncurses src/scottfree-ncurses.c src/scottfree.h -Wall -lncurses
*** Building complete

Tools and Stuff

ncurses

At this point I can't recall what I did to get ncurses installed on my MSys2/Mingw64 environment. You might want to start with pacman -S ncurses and/or pacman -S ncurses-devel.
For Ubuntu and Mac, I'm fairly certain I also just used apt-get and brew. I'll check and update these docs at some point.

gcc

Any gcc compiler should do fine, I have only really tested this with gcc and clang though.

make

I use GNU Make 4.3 in my Windows MSys2 environment, GNU Make 4.1 in my Ubuntu environment, and GNU Make 3.8.1 on my MacBook Pro.

Various

The Makefile also makes use of various shell commands like echo, rm, and mkdir. Hopefully these are available in your build environment.

About

ScottFree-ncurses, a quick reworking of ScottFree Revision 1.14b to run in ncurses

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published