HDimage: added script to create HDimage, added new games
Note: LadderTP uses wrong DAT file at the moment!
This commit is contained in:
parent
d2eec82805
commit
f090e4cc67
Binary file not shown.
76
HDimage/makeimage.sh
Executable file
76
HDimage/makeimage.sh
Executable file
@ -0,0 +1,76 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
imagefile=./VT100games-HD.img
|
||||||
|
|
||||||
|
filelist="
|
||||||
|
2048/2048.COM
|
||||||
|
Backgammon/backgmmn.com
|
||||||
|
Battleships/bs.com
|
||||||
|
Blocks/BLOCKS.COM
|
||||||
|
CatChum/CATCHUM.COM
|
||||||
|
CatChum/CATCHUM.DAT
|
||||||
|
cpmtris/cpmtris.com
|
||||||
|
FindThatMine/ftm.com
|
||||||
|
Ladder/LADDER.COM
|
||||||
|
Ladder/LADDER.DAT
|
||||||
|
MazezaM/mazezam.com
|
||||||
|
Pac/pac.com
|
||||||
|
Quatris/QUATRIS.COM
|
||||||
|
Quatris/QUATRIS.SCO
|
||||||
|
RobotChase/chase.com
|
||||||
|
Robots/ROBOTS.COM
|
||||||
|
Rogue/rogue.com
|
||||||
|
Snake/SNAKE.COM
|
||||||
|
Sokoban/sokoban.com
|
||||||
|
Sokoban/soklevls.dat
|
||||||
|
Worm/worm.com
|
||||||
|
"
|
||||||
|
|
||||||
|
dirlist="
|
||||||
|
2048 Backgammon Battleships Blocks CatChum cpmtris FindThatMine
|
||||||
|
Ladder LadderTP MazezaM Pac Quatris RobotChase Robots
|
||||||
|
Rogue Snake Sokoban Worm
|
||||||
|
"
|
||||||
|
|
||||||
|
wanderer="
|
||||||
|
screen.*
|
||||||
|
wanderer.com
|
||||||
|
wanderer.doc
|
||||||
|
"
|
||||||
|
|
||||||
|
[ ! -d u0 ] && mkdir u0
|
||||||
|
[ ! -d u1 ] && mkdir u1
|
||||||
|
|
||||||
|
rm -f u0/* u1/*
|
||||||
|
|
||||||
|
for i in ${filelist}; do
|
||||||
|
target=`basename $i`
|
||||||
|
cp -v ../$i u0/${target^^}
|
||||||
|
done
|
||||||
|
for i in ${wanderer}; do cp -v ../Wanderer/$i u1; done
|
||||||
|
cp -v ../LadderTP/LADDER.COM u0/TLADDER.COM
|
||||||
|
cp -v ../LadderTP/LADDER.DAT u0/TLADDER.DAT
|
||||||
|
for i in u1/*; do
|
||||||
|
target=`basename $i`
|
||||||
|
mv $i u1/${target^^}
|
||||||
|
done
|
||||||
|
|
||||||
|
for i in ${dirlist}; do
|
||||||
|
pandoc -f markdown -t plain -s ../$i/README.md -o u0/${i^^}.DOC
|
||||||
|
done
|
||||||
|
|
||||||
|
cd u0
|
||||||
|
mv BACKGAMMON.DOC BACKGMMN.DOC
|
||||||
|
mv BATTLESHIPS.DOC BS.DOC
|
||||||
|
mv ROBOTCHASE.DOC CHASE.DOC
|
||||||
|
mv FINDTHATMINE.DOC FTM.DOC
|
||||||
|
mv LADDERTP.DOC TLADDER.DOC
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
mkfs.cpm -fz80pack-hd $imagefile
|
||||||
|
cpmcp -f z80pack-hd $imagefile u0/* 0:
|
||||||
|
cpmcp -f z80pack-hd $imagefile u1/* 1:
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo "Fertig!"
|
||||||
|
|
Binary file not shown.
51
HDimage/u0/2048.DOC
Normal file
51
HDimage/u0/2048.DOC
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
|
||||||
|
|
||||||
|
2048
|
||||||
|
|
||||||
|
|
||||||
|
Join the numbers and get to the 2048 tile.
|
||||||
|
|
||||||
|
- Based on 2048 created by Gabriele Cirulli.
|
||||||
|
- Based on the console version for GNU/Linux by Maurits van der Schee
|
||||||
|
- Ported to Z80 and CP/M by Marco Maccaferri macca@maccasoft.com
|
||||||
|
|
||||||
|
Original Repository: https://github.com/maccasoft/z80-apps
|
||||||
|
|
||||||
|
In this version some minimal changes were applied: * On startup,
|
||||||
|
clearing the screen will be performed by the standard VT100 ^[2J. * The
|
||||||
|
"arrow symbols" below the playfield are symbolized by <>^v, as the
|
||||||
|
symbols used before actually are control characters that most VT100
|
||||||
|
terminals do not display. * The newer version without the undocumented
|
||||||
|
opcode is used.
|
||||||
|
|
||||||
|
|
||||||
|
Commands
|
||||||
|
|
||||||
|
Use the arrow keys to move the tiles.
|
||||||
|
|
||||||
|
When two tiles with the same number touch, they merge into one.
|
||||||
|
|
||||||
|
- w, s, a, d - Alternate keys (up, down, left, right)
|
||||||
|
- CTRL-E, CTRL-X, CTRL-S, CTRL-D - Wordstar-compatible control keys
|
||||||
|
|
||||||
|
|
||||||
|
Compile:
|
||||||
|
|
||||||
|
If using TASM, the command is: TASM -80 -b 2048.ASM 2048.COM
|
||||||
|
|
||||||
|
The "Micro Z80 Assembler" was used to assemble 2048.COM on Linux. It is
|
||||||
|
provided in the directory uz80as, just compile it using make.
|
||||||
|
|
||||||
|
The command for assembling 2048 is: uz80as 2048.ASM 2048.COM.
|
||||||
|
|
||||||
|
uz80as can be found here: https://github.com/jorgicor/uz80as The uz80as
|
||||||
|
directory here is taken from the RomWBW source tree.
|
||||||
|
|
||||||
|
|
||||||
|
License:
|
||||||
|
|
||||||
|
From original repository:
|
||||||
|
|
||||||
|
Unless otherwise specified all programs are distributed with the GNU
|
||||||
|
GPL-V3 license, images, design files and other artwork are distributed
|
||||||
|
under the Creative Commons Attribution-ShareAlike 3.0 license.
|
@ -1,31 +0,0 @@
|
|||||||
# 2048
|
|
||||||
|
|
||||||
Join the numbers and get to the 2048 tile.
|
|
||||||
|
|
||||||
* Based on 2048 created by Gabriele Cirulli.
|
|
||||||
* Based on the console version for GNU/Linux by Maurits van der Schee
|
|
||||||
* Ported to Z80 and CP/M by Marco Maccaferri <macca@maccasoft.com>
|
|
||||||
|
|
||||||
Original Repository: https://github.com/maccasoft/z80-apps
|
|
||||||
|
|
||||||
## Commands
|
|
||||||
|
|
||||||
Use the arrow keys to move the tiles.
|
|
||||||
|
|
||||||
When two tiles with the same number touch, they merge into one.
|
|
||||||
|
|
||||||
* w, s, a, d - Alternate keys (up, down, left, right)
|
|
||||||
* CTRL-E, CTRL-X, CTRL-S, CTRL-D - Wordstar-compatible control keys
|
|
||||||
|
|
||||||
## Compile:
|
|
||||||
|
|
||||||
TASM -80 -b 2048.ASM 2048.COM
|
|
||||||
|
|
||||||
## License:
|
|
||||||
|
|
||||||
From original repository:
|
|
||||||
|
|
||||||
Unless otherwise specified all programs are distributed with the
|
|
||||||
GNU GPL-V3 license, images, design files and other artwork are
|
|
||||||
distributed under the Creative Commons Attribution-ShareAlike 3.0 license.
|
|
||||||
|
|
73
HDimage/u0/BACKGMMN.DOC
Normal file
73
HDimage/u0/BACKGMMN.DOC
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
|
||||||
|
|
||||||
|
GAMMON IV (VT100 ANSI EDITION)
|
||||||
|
|
||||||
|
|
||||||
|
By: David C. Oshel 1219 Harding Ave. Ames, Iowa 50010
|
||||||
|
|
||||||
|
This is a patched version of "Gammon IV, Version 2.0, April 1, 1986", a
|
||||||
|
full-screen backgammon for CP/M.
|
||||||
|
|
||||||
|
I patched the game to use VT100 compatible escape sequences (including
|
||||||
|
ANSI color).
|
||||||
|
|
||||||
|
Therefore, I removed most of the "user patch area" and hardcoded the
|
||||||
|
VT100 sequences in the C code, replaced the asm code of gotoxy() with C
|
||||||
|
code and removed the Kaypro graphics routines (and the "G(raphics"
|
||||||
|
command) as it is not needed for my VT100 version.
|
||||||
|
|
||||||
|
BACKGMMN.COM is the compiled and ready-to-run game.
|
||||||
|
|
||||||
|
Have fun playing!
|
||||||
|
|
||||||
|
Anna Christina Naß acn@acn.wtf
|
||||||
|
|
||||||
|
|
||||||
|
Compiling the game
|
||||||
|
|
||||||
|
See Compiler/Compiling.md for information on compiling the game on CP/M.
|
||||||
|
|
||||||
|
|
||||||
|
From the original Version 2.0 READ.ME:
|
||||||
|
|
||||||
|
Improvements for Version 2.0 include:
|
||||||
|
|
||||||
|
a) Several bugs and poltergeists, especially in the Arrange command,
|
||||||
|
have been completely exorcised. No bugs have been found in the Play
|
||||||
|
command for months; but, as before, Gammon IV will not invariably
|
||||||
|
recognize a forced move, either in your play or in its own. Gammon
|
||||||
|
IV knows and obeys all other official rules of backgammon.
|
||||||
|
|
||||||
|
b) There are no "hidden" commands anymore. All commands are now shown
|
||||||
|
in the command lines, including X(pert.
|
||||||
|
|
||||||
|
c) Input error handling now documents the BAR, HOME and HELP commands,
|
||||||
|
so first-time players do not need to read anything else in order to
|
||||||
|
play the game successfully. The X(pert mode dispenses with these
|
||||||
|
messages, so X(pert actually does mean expert, now!
|
||||||
|
|
||||||
|
d) The "break" command is Control-C again, instead of ESCAPE. It was
|
||||||
|
all too easy to hit ESC instead of 1 on the Kaypro keyboard, leading
|
||||||
|
to an inadvertently paused game.
|
||||||
|
|
||||||
|
e) The sanction against cheating (your opponent became Torve) has been
|
||||||
|
removed.
|
||||||
|
|
||||||
|
f) If the cube is doubled during the opening rolloff to see who goes
|
||||||
|
first, and the cube value reaches 8, additional pairs on the dice
|
||||||
|
have no further effect. The cube's opening value will not go
|
||||||
|
above 8.
|
||||||
|
|
||||||
|
The computer's three styles of play have not been changed. Judging from
|
||||||
|
the feedback I've received, Gammon IV plays acceptably well at the
|
||||||
|
current levels. All information needed to re-compile the program is
|
||||||
|
included in the BACKGMMN.C file, including the details of C/80 3.1
|
||||||
|
configuration. The compile and link steps are governed by BACKGMMN.SUB.
|
||||||
|
|
||||||
|
This program is in the public domain, so distribute it freely.
|
||||||
|
|
||||||
|
Enjoy!
|
||||||
|
|
||||||
|
David C. Oshel
|
||||||
|
1219 Harding Ave.
|
||||||
|
Ames, Iowa 50010
|
@ -1,64 +0,0 @@
|
|||||||
# Gammon IV (VT100 ANSI edition)
|
|
||||||
|
|
||||||
This is a patched version of "Gammon IV, Version 2.0, April 1, 1986", a
|
|
||||||
full-screen backgammon for CP/M.
|
|
||||||
|
|
||||||
The difference is, that this version outputs VT100 compatible Escape sequences
|
|
||||||
(including color) to make this game work on my RC2014 Z80 CP/M machine using
|
|
||||||
a VT100 compatible VGA terminal module.
|
|
||||||
|
|
||||||
Therefore, I removed most of the "user patch area" and hardcoded the VT100
|
|
||||||
sequences in the C code. I also removed the asm code of gotoxy() and replaced
|
|
||||||
it with C code - at least on my 8 MHz Z80 it runs fast enough.
|
|
||||||
Also, I removed the Kaypro graphics routines and the "G(raphics" command, as
|
|
||||||
it is not needed for my VT100 version.
|
|
||||||
|
|
||||||
BACKGMMN.COM is the compiled and ready-to-run object file.
|
|
||||||
|
|
||||||
Have fun playing!
|
|
||||||
|
|
||||||
Anna Christina Naß <acn@acn.wtf>
|
|
||||||
|
|
||||||
## From the original Version 2.0 READ.ME:
|
|
||||||
|
|
||||||
Improvements for Version 2.0 include:
|
|
||||||
|
|
||||||
a) Several bugs and poltergeists, especially in the Arrange command, have
|
|
||||||
been completely exorcised. No bugs have been found in the Play command for
|
|
||||||
months; but, as before, Gammon IV will not invariably recognize a forced move,
|
|
||||||
either in your play or in its own. Gammon IV knows and obeys all other
|
|
||||||
official rules of backgammon.
|
|
||||||
|
|
||||||
b) There are no "hidden" commands anymore. All commands are now shown in
|
|
||||||
the command lines, including X(pert.
|
|
||||||
|
|
||||||
c) Input error handling now documents the BAR, HOME and HELP commands, so
|
|
||||||
first-time players do not need to read anything else in order to play the
|
|
||||||
game successfully. The X(pert mode dispenses with these messages, so X(pert
|
|
||||||
actually does mean expert, now!
|
|
||||||
|
|
||||||
d) The "break" command is Control-C again, instead of ESCAPE. It was all
|
|
||||||
too easy to hit ESC instead of 1 on the Kaypro keyboard, leading to an
|
|
||||||
inadvertently paused game.
|
|
||||||
|
|
||||||
e) The sanction against cheating (your opponent became Torve) has been
|
|
||||||
removed.
|
|
||||||
|
|
||||||
f) If the cube is doubled during the opening rolloff to see who goes first,
|
|
||||||
and the cube value reaches 8, additional pairs on the dice have no further
|
|
||||||
effect. The cube's opening value will not go above 8.
|
|
||||||
|
|
||||||
The computer's three styles of play have not been changed. Judging from the
|
|
||||||
feedback I've received, Gammon IV plays acceptably well at the current levels.
|
|
||||||
All information needed to re-compile the program is included in the
|
|
||||||
BACKGMMN.C file, including the details of C/80 3.1 configuration.
|
|
||||||
The compile and link steps are governed by BACKGMMN.SUB.
|
|
||||||
|
|
||||||
This program is in the public domain, so distribute it freely.
|
|
||||||
|
|
||||||
Enjoy!
|
|
||||||
|
|
||||||
David C. Oshel
|
|
||||||
1219 Harding Ave.
|
|
||||||
Ames, Iowa 50010
|
|
||||||
|
|
@ -1,4 +1,7 @@
|
|||||||
# Blocks
|
|
||||||
|
|
||||||
|
BLOCKS
|
||||||
|
|
||||||
|
|
||||||
This is a clone (more or less) of SameGame, a tile-matching puzzle video
|
This is a clone (more or less) of SameGame, a tile-matching puzzle video
|
||||||
game, originally released under the name Chain Shot! in 1985 by Kuniaki
|
game, originally released under the name Chain Shot! in 1985 by Kuniaki
|
||||||
@ -9,14 +12,15 @@ The goal of the game is to remove all the blocks of the board.
|
|||||||
Copyright (c) 1999-2018 Miguel García / FloppySoftware
|
Copyright (c) 1999-2018 Miguel García / FloppySoftware
|
||||||
|
|
||||||
The game has been modified for VT100 compatibility (insted of VT52) and
|
The game has been modified for VT100 compatibility (insted of VT52) and
|
||||||
got some color by me (Anna Christina Naß <acn@acn.wtf>.
|
got some color by me (Anna Christina Naß acn@acn.wtf.
|
||||||
|
|
||||||
Original Repository: https://github.com/MiguelVis/RetroProjects
|
Original Repository: https://github.com/MiguelVis/RetroProjects Website:
|
||||||
Website: http://www.floppysoftware.es/blocks.html?path=cpm_projects|blocks
|
http://www.floppysoftware.es/blocks.html?path=cpm_projects|blocks
|
||||||
|
|
||||||
The file BLOCKS.COM is the compiled game file.
|
The file BLOCKS.COM is the compiled game file.
|
||||||
|
|
||||||
## The Game
|
|
||||||
|
The Game
|
||||||
|
|
||||||
Move the cursor using the numpad keys:
|
Move the cursor using the numpad keys:
|
||||||
|
|
||||||
@ -30,33 +34,34 @@ Then select a blocks using 7 and remove the blocks using 9.
|
|||||||
|
|
||||||
You can select just one block, or a group of blocks of the same type
|
You can select just one block, or a group of blocks of the same type
|
||||||
|
|
||||||
If you are in the normal mode, you can place all the blocks against a side
|
If you are in the normal mode, you can place all the blocks against a
|
||||||
(top, bottom, left or right).
|
side (top, bottom, left or right). Select the side using the E, S, D or
|
||||||
Select the side using the E, S, D or X key.
|
X key.
|
||||||
|
|
||||||
If you are in the automatic mode, the blocks rows will be placed on the
|
If you are in the automatic mode, the blocks rows will be placed on the
|
||||||
bottom side of the board, and the columns will be placed on the middle of
|
bottom side of the board, and the columns will be placed on the middle
|
||||||
the board.
|
of the board.
|
||||||
|
|
||||||
The special block **X**, multiplies that result by 10.
|
The special block X, multiplies that result by 10.
|
||||||
|
|
||||||
## Compile:
|
|
||||||
|
|
||||||
To compile, use MESCC, "Mike's Enhanced Small C Compiler".
|
Compile:
|
||||||
See: http://www.floppysoftware.es/mescc.html?path=cpm_projects|mescc
|
|
||||||
|
|
||||||
In the directory mescc, I provide the files neccessary to compile Blocks,
|
To compile, use MESCC, "Mike's Enhanced Small C Compiler". See:
|
||||||
using:
|
http://www.floppysoftware.es/mescc.html?path=cpm_projects|mescc
|
||||||
|
|
||||||
|
In the directory mescc, I provide the files neccessary to compile
|
||||||
|
Blocks, using:
|
||||||
|
|
||||||
CC BLOCKS
|
CC BLOCKS
|
||||||
CCOPT BLOCKS
|
CCOPT BLOCKS
|
||||||
ZSM BLOCKS
|
ZSM BLOCKS
|
||||||
HEXTOCOM BLOCKS
|
HEXTOCOM BLOCKS
|
||||||
|
|
||||||
Note that only the really neccessary files are provided - see the link above
|
Note that only the really neccessary files are provided - see the link
|
||||||
for the full MESCC compiler and source code!
|
above for the full MESCC compiler and source code!
|
||||||
|
|
||||||
## License:
|
|
||||||
|
License:
|
||||||
|
|
||||||
GPL Version 2, see copying.txt - valid for MESCC and Blocks.
|
GPL Version 2, see copying.txt - valid for MESCC and Blocks.
|
||||||
|
|
74
HDimage/u0/BS.DOC
Normal file
74
HDimage/u0/BS.DOC
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
|
||||||
|
|
||||||
|
BATTLESHIPS
|
||||||
|
|
||||||
|
|
||||||
|
CP/M port of the Unix game.
|
||||||
|
|
||||||
|
Copyright: * bs.c - original author: Bruce Holloway * salvo option by:
|
||||||
|
Chuck A DeGaul * with improved user interface, autoconfiguration and
|
||||||
|
code cleanup * by Eric S. Raymond esr@snark.thyrsus.com * v1.2 with
|
||||||
|
color support and minor portability fixes, November 1990 * v2.0
|
||||||
|
featuring strict ANSI/POSIX conformance, November 1993. * v2.1 for
|
||||||
|
Linux, October 1994. * Slipstreamed in fixes to make it gcc -Wall clean,
|
||||||
|
May '95. * fairly seriously hacked for Hitech C and CP/M, rjm 95/8/14
|
||||||
|
|
||||||
|
I found it as part of the ZCN repository:
|
||||||
|
https://github.com/jamesots/zcn
|
||||||
|
|
||||||
|
The C source has been modified for VT100 compatibility and some minor
|
||||||
|
changes have been made by me (Anna Christina Naß acn@acn.wtf.
|
||||||
|
|
||||||
|
bs.com is the compiled binary.
|
||||||
|
|
||||||
|
See the *.txt files for more information.
|
||||||
|
|
||||||
|
|
||||||
|
Modes
|
||||||
|
|
||||||
|
- -b selects a "blitz" variant
|
||||||
|
- -s selects a "salvo" variant
|
||||||
|
- -c permits ships to be placed adjacently
|
||||||
|
|
||||||
|
The "blitz" variant allows a side to shoot for as long as it continues
|
||||||
|
to score hits.
|
||||||
|
|
||||||
|
The "salvo" game allows a player one shot per turn for each of his/her
|
||||||
|
ships still afloat. This puts a premium scoring hits early and knocking
|
||||||
|
out some ships and also makes much harder the situation where you face a
|
||||||
|
superior force with only your PT-boat.
|
||||||
|
|
||||||
|
|
||||||
|
Keys
|
||||||
|
|
||||||
|
To position your ships: move the cursor to a spot, then type the first
|
||||||
|
letter of a ship (using CAPITAL letters) type to select it, then type a
|
||||||
|
direction ([hjkl] or [4862]), indicating how the ship should be pointed.
|
||||||
|
You may also type a ship letter followed by
|
||||||
|
r' to position it randomly, or typeR' to place all remaining ships
|
||||||
|
randomly.
|
||||||
|
|
||||||
|
Navigation and aiming keys:
|
||||||
|
|
||||||
|
yz k u 7 8 9
|
||||||
|
\|/ \|/
|
||||||
|
h-+-l 4-+-6
|
||||||
|
/|\ /|\
|
||||||
|
b j n 1 2 3
|
||||||
|
|
||||||
|
Key Action Key Action
|
||||||
|
------- -------------------------- ----------- --------------------------
|
||||||
|
h / 4 move left y / z / 7 move up+left
|
||||||
|
l / 6 move right b / 1 move down+left
|
||||||
|
j / 2 move down u / 9 move up+right
|
||||||
|
k / 8 move up n / 3 move down+right
|
||||||
|
r place this ship randomly R place all ships randomly
|
||||||
|
^L screen redraw Q quit game
|
||||||
|
|
||||||
|
|
||||||
|
Compiling
|
||||||
|
|
||||||
|
HiTech C has been used to compile it, but it needs a lot of free memory
|
||||||
|
(TPA).
|
||||||
|
|
||||||
|
For compiling, I used the command c bs.c in CP/M.
|
@ -1,69 +0,0 @@
|
|||||||
# Battleships
|
|
||||||
|
|
||||||
CP/M port of the Unix game.
|
|
||||||
|
|
||||||
Copyright:
|
|
||||||
* bs.c - original author: Bruce Holloway
|
|
||||||
* salvo option by: Chuck A DeGaul
|
|
||||||
* with improved user interface, autoconfiguration and code cleanup
|
|
||||||
* by Eric S. Raymond <esr@snark.thyrsus.com>
|
|
||||||
* v1.2 with color support and minor portability fixes, November 1990
|
|
||||||
* v2.0 featuring strict ANSI/POSIX conformance, November 1993.
|
|
||||||
* v2.1 for Linux, October 1994.
|
|
||||||
* Slipstreamed in fixes to make it gcc -Wall clean, May '95.
|
|
||||||
* fairly seriously hacked for Hitech C and CP/M, rjm 95/8/14
|
|
||||||
|
|
||||||
I found it as part of the ZCN repository: https://github.com/jamesots/zcn
|
|
||||||
|
|
||||||
The C source has been modified for VT100 compatibility and some minor
|
|
||||||
changes have been made by me (Anna Christina Naß <acn@acn.wtf>.
|
|
||||||
|
|
||||||
bs.com is the compiled binary.
|
|
||||||
|
|
||||||
## Modes
|
|
||||||
|
|
||||||
* -b selects a "blitz" variant
|
|
||||||
* -s selects a "salvo" variant
|
|
||||||
* -c permits ships to be placed adjacently
|
|
||||||
|
|
||||||
The "blitz" variant allows a side to shoot for as long as
|
|
||||||
it continues to score hits.
|
|
||||||
|
|
||||||
The "salvo" game allows a player one shot per turn for
|
|
||||||
each of his/her ships still afloat. This puts a premium
|
|
||||||
scoring hits early and knocking out some ships and also
|
|
||||||
makes much harder the situation where you face a superior
|
|
||||||
force with only your PT-boat.
|
|
||||||
|
|
||||||
## Keys
|
|
||||||
|
|
||||||
To position your ships: move the cursor to a spot, then type the first
|
|
||||||
letter of a ship (using CAPITAL letters) type to select it, then type a
|
|
||||||
direction ([hjkl] or [4862]),
|
|
||||||
indicating how the ship should be pointed.
|
|
||||||
You may also type a ship letter followed by r to position it randomly,
|
|
||||||
or type `R' to place all remaining ships randomly.
|
|
||||||
|
|
||||||
Navigation and aiming keys:
|
|
||||||
|
|
||||||
yz k u 7 8 9
|
|
||||||
\|/ \|/
|
|
||||||
h-+-l 4-+-6
|
|
||||||
/|\ /|\
|
|
||||||
b j n 1 2 3
|
|
||||||
|
|
||||||
| Key | Action | Key | Action |
|
|
||||||
| ----- | ------------------------ | --------- | ------------------------ |
|
|
||||||
| h / 4 | move left | y / z / 7 | move up+left |
|
|
||||||
| l / 6 | move right | b / 1 | move down+left |
|
|
||||||
| j / 2 | move down | u / 9 | move up+right |
|
|
||||||
| k / 8 | move up | n / 3 | move down+right |
|
|
||||||
| r | place this ship randomly | R | place all ships randomly |
|
|
||||||
| ^L | screen redraw | Q | quit game |
|
|
||||||
|
|
||||||
## Compiling
|
|
||||||
|
|
||||||
HiTech C has been used to compile it, but it needs a lot of free memory (TPA).
|
|
||||||
|
|
||||||
For compiling, I used the command c bs.c in CP/M.
|
|
||||||
|
|
@ -1,18 +1,21 @@
|
|||||||
# CatChum
|
|
||||||
|
|
||||||
CatChum was originally written for the CP/M operating system and the game
|
|
||||||
came bundled with Kaypro computers. It is copyrighted by:
|
CATCHUM
|
||||||
|
|
||||||
|
|
||||||
|
CatChum was originally written for the CP/M operating system and the
|
||||||
|
game came bundled with Kaypro computers. It is copyrighted by:
|
||||||
|
|
||||||
Yahoo Software
|
Yahoo Software
|
||||||
10970 Ashton Ave, Suite 312
|
10970 Ashton Ave, Suite 312
|
||||||
Los Angeles, CA
|
Los Angeles, CA
|
||||||
|
|
||||||
For information on the game, see:
|
For information on the game, see: Wikipedia
|
||||||
[Wikipedia](https://en.wikipedia.org/wiki/CatChum)
|
|
||||||
|
|
||||||
This version is adapted to VT100 ANSI escape sequences.
|
This version is adapted to VT100 ANSI escape sequences.
|
||||||
|
|
||||||
## Note
|
|
||||||
|
Note
|
||||||
|
|
||||||
It seems to me that CATCONF.COM uses some kind of "wrong" VT100
|
It seems to me that CATCONF.COM uses some kind of "wrong" VT100
|
||||||
sequences, as my terminal does not like them - the output looks wrong.
|
sequences, as my terminal does not like them - the output looks wrong.
|
||||||
@ -22,7 +25,8 @@ RC2014 VGA VT100 terminal.
|
|||||||
|
|
||||||
So don't change it using CATCONF.COM :)
|
So don't change it using CATCONF.COM :)
|
||||||
|
|
||||||
## Usage
|
|
||||||
|
Usage
|
||||||
|
|
||||||
The gameplay is like Pac-Man :)
|
The gameplay is like Pac-Man :)
|
||||||
|
|
||||||
@ -30,4 +34,3 @@ Use the keys 8 (up), 4 (left), 6 (right) and 2 (down) to control your
|
|||||||
character (the C/c).
|
character (the C/c).
|
||||||
|
|
||||||
Have fun!
|
Have fun!
|
||||||
|
|
BIN
HDimage/u0/CHASE.COM
Normal file
BIN
HDimage/u0/CHASE.COM
Normal file
Binary file not shown.
50
HDimage/u0/CHASE.DOC
Normal file
50
HDimage/u0/CHASE.DOC
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
|
||||||
|
|
||||||
|
ROBOT CHASE
|
||||||
|
|
||||||
|
|
||||||
|
Copyright 2020 Andrew Pamment
|
||||||
|
|
||||||
|
Based on the game "CHASE" appearing in the book "More BASIC Computer
|
||||||
|
Games" by David Ahl.
|
||||||
|
|
||||||
|
The original files can be found here:
|
||||||
|
http://members.iinet.net.au/~apamment/CPM/
|
||||||
|
|
||||||
|
|
||||||
|
The game
|
||||||
|
|
||||||
|
You are trapped in a maze of high voltage power fences and posts. There
|
||||||
|
are also killer robots trying to destroy you.
|
||||||
|
|
||||||
|
Your only hope is to lure the robots into a fence or each other to
|
||||||
|
destroy them.
|
||||||
|
|
||||||
|
If things get hopeless, you can do a mega jump, but you could end up
|
||||||
|
anywhere, including on top of a power fence or a robot!
|
||||||
|
|
||||||
|
|
||||||
|
Keys
|
||||||
|
|
||||||
|
Use the numpad to move, even diagonally. Use J to jump and 0 to pass a
|
||||||
|
round.
|
||||||
|
|
||||||
|
7 8 9 J - Jump
|
||||||
|
\ | / 0 - Pass
|
||||||
|
4 - * - 6
|
||||||
|
/ | \
|
||||||
|
1 2 3 Q - Quit
|
||||||
|
|
||||||
|
* - You
|
||||||
|
X - High Voltage Line
|
||||||
|
+ - Killer Robot
|
||||||
|
|
||||||
|
|
||||||
|
Compiling
|
||||||
|
|
||||||
|
Robot Chase is written in C for the ZXCC compiler which can be found in
|
||||||
|
z88dk.
|
||||||
|
|
||||||
|
Use this command line (tested in Linux) to compile:
|
||||||
|
|
||||||
|
zcc +cpm -lm -lndos -O3 -o CHASE.COM chase.c ansi.c
|
51
HDimage/u0/CPMTRIS.DOC
Normal file
51
HDimage/u0/CPMTRIS.DOC
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
|
||||||
|
|
||||||
|
CPMTRIS
|
||||||
|
|
||||||
|
|
||||||
|
A Tetris clone for Z80-based CP/M machines (c) 1996,1999 Russell Marks,
|
||||||
|
GPLv2
|
||||||
|
|
||||||
|
Originally part of the ZCN repository: https://github.com/jamesots/zcn
|
||||||
|
|
||||||
|
I modified cpmtris so that "vt100" and "8 MHz" are the default values.
|
||||||
|
|
||||||
|
cpmtris.com is the assembled binary that uses these settings.
|
||||||
|
|
||||||
|
See README.orig for full documentation.
|
||||||
|
|
||||||
|
|
||||||
|
Commands
|
||||||
|
|
||||||
|
Action Key
|
||||||
|
------------ -----
|
||||||
|
Rotate s
|
||||||
|
Left/Right k/l
|
||||||
|
Drop d
|
||||||
|
|
||||||
|
|
||||||
|
Command-Line Options
|
||||||
|
|
||||||
|
cpmtris [termtype [mhz*10]]
|
||||||
|
|
||||||
|
termtype specifies the terminal type:
|
||||||
|
|
||||||
|
Type Terminal
|
||||||
|
------ -----------------------------
|
||||||
|
0 as defined in patch area
|
||||||
|
1 VT100 (default)
|
||||||
|
2 VT52 (PCW, +3, etc.)
|
||||||
|
3 ZCN (this is auto-detected)
|
||||||
|
4 VC404
|
||||||
|
|
||||||
|
mhz*10 defines the speed of the machine "times 10", e.g. for a 3.5 MHz
|
||||||
|
machine, use "35" or for 8 MHz (default) use "80".
|
||||||
|
|
||||||
|
E.g.: cpmtris 1 80 for a VT100 8 MHz machine, which is the default.
|
||||||
|
|
||||||
|
|
||||||
|
ZMAC
|
||||||
|
|
||||||
|
The ZMAC Z80 macro assembler, which is used for cpmtris, is also
|
||||||
|
available in the zmac/ folder. When assembling cpmtris using the
|
||||||
|
Makefile, zmac is used (but needs to be compiled first)
|
@ -1,41 +0,0 @@
|
|||||||
# cpmtris
|
|
||||||
|
|
||||||
A Tetris clone for Z80-based CP/M machines
|
|
||||||
(c) 1996,1999 Russell Marks, GPLv2
|
|
||||||
|
|
||||||
Originally part of the ZCN repository: https://github.com/jamesots/zcn
|
|
||||||
|
|
||||||
I modified cpmtris so that "vt100" and "8 MHz" are the default values.
|
|
||||||
|
|
||||||
cpmtris.com is the assembled binary that uses these settings.
|
|
||||||
|
|
||||||
See CPMTRIS.DOC for full documentation.
|
|
||||||
|
|
||||||
## Commands
|
|
||||||
|
|
||||||
| Action | Key |
|
|
||||||
| ---------- | --- |
|
|
||||||
| Rotate | s |
|
|
||||||
| Left/Right | k/l |
|
|
||||||
| Drop | d |
|
|
||||||
|
|
||||||
## Command-Line Options
|
|
||||||
|
|
||||||
cpmtris [termtype [mhz*10]]
|
|
||||||
|
|
||||||
termtype specifies the terminal type:
|
|
||||||
|
|
||||||
| Type | Terminal |
|
|
||||||
| ---- | --------------------------- |
|
|
||||||
| 0 | as defined in patch area |
|
|
||||||
| 1 | VT100 (default) |
|
|
||||||
| 2 | VT52 (PCW, +3, etc.) |
|
|
||||||
| 3 | ZCN (this is auto-detected) |
|
|
||||||
| 4 | VC404 |
|
|
||||||
|
|
||||||
mhz*10 defines the speed of the machine "times 10", e.g. for a
|
|
||||||
3.5 MHz machine, use "35" or for 8 MHz (default) use "80".
|
|
||||||
|
|
||||||
E.g.: cpmtris 1 80 for a VT100 8 MHz machine, which is the default.
|
|
||||||
|
|
||||||
|
|
BIN
HDimage/u0/FTM.COM
Normal file
BIN
HDimage/u0/FTM.COM
Normal file
Binary file not shown.
86
HDimage/u0/FTM.DOC
Normal file
86
HDimage/u0/FTM.DOC
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
|
||||||
|
|
||||||
|
FIND THAT MINE!
|
||||||
|
|
||||||
|
|
||||||
|
A MineSweeper clon game for CP/M
|
||||||
|
|
||||||
|
VT100 color version by Anna Christina Naß acn@acn.wtf
|
||||||
|
|
||||||
|
Based on v2.0 - 07 April 2020.
|
||||||
|
|
||||||
|
Copyright (c) 2012-2020 Miguel Garcia / FloppySoftware, Spain.
|
||||||
|
|
||||||
|
The original repository can be found here:
|
||||||
|
https://github.com/MiguelVis/ftm
|
||||||
|
|
||||||
|
|
||||||
|
Introduction
|
||||||
|
|
||||||
|
This is a clone (yes, one more!) of MineSweeper for CP/M with supported
|
||||||
|
CRTs, derived from the plain CP/M version (and itself from the Amstrad
|
||||||
|
PCW & Samaruc GUI version).
|
||||||
|
|
||||||
|
It should run in any version of the CP/M operating system and a Z80 CPU.
|
||||||
|
|
||||||
|
This version is patched to work with a VT100 terminal only and it uses
|
||||||
|
color ANSI codes.
|
||||||
|
|
||||||
|
|
||||||
|
The game
|
||||||
|
|
||||||
|
The aim of the game is to find all the mines on the board, putting a
|
||||||
|
flag on them and uncovering the other squares.
|
||||||
|
|
||||||
|
If you uncover a mine, you lose the game.
|
||||||
|
|
||||||
|
There are three different levels: * Level 1 : 08 x 08 squares, 08 mines
|
||||||
|
* Level 2 : 08 x 12 squares, 12 mines * Level 3 : 08 x 16 squares, 16
|
||||||
|
mines
|
||||||
|
|
||||||
|
|
||||||
|
How to play
|
||||||
|
|
||||||
|
In the board, a number on a square means the quantity of mines around
|
||||||
|
it.
|
||||||
|
|
||||||
|
To uncover a square, you must enter a command telling its position as
|
||||||
|
row and column - ie:
|
||||||
|
|
||||||
|
1C
|
||||||
|
|
||||||
|
To put or remove a flag on a square, you must append a F character to
|
||||||
|
the command - ie:
|
||||||
|
|
||||||
|
3DF
|
||||||
|
|
||||||
|
|
||||||
|
Technical notes
|
||||||
|
|
||||||
|
To compile, use MESCC, "Mike's Enhanced Small C Compiler". All files
|
||||||
|
neccessary (and only these) to compile the game are included. The
|
||||||
|
complete package of MESCC can be found in its repository:
|
||||||
|
|
||||||
|
https://github.com/MiguelVis/mescc
|
||||||
|
|
||||||
|
Compile it using:
|
||||||
|
|
||||||
|
CC FTM
|
||||||
|
CCOPT FTM
|
||||||
|
ZSM FTM
|
||||||
|
HEXTOCOM FTM
|
||||||
|
|
||||||
|
The game uses Codepage 437 border characters as default, if your
|
||||||
|
terminal cannot display these, remove #define CP437 from FTM.C and
|
||||||
|
recompile it.
|
||||||
|
|
||||||
|
|
||||||
|
License
|
||||||
|
|
||||||
|
This software is copyright of Miguel Garcia / FloppySoftware, Spain. All
|
||||||
|
rights reserved.
|
||||||
|
|
||||||
|
This program is freeware, and it's licensed under the GNU General Public
|
||||||
|
License.
|
||||||
|
|
||||||
|
See the license file for more details.
|
@ -1,4 +1,7 @@
|
|||||||
# Ladder
|
|
||||||
|
|
||||||
|
LADDER
|
||||||
|
|
||||||
|
|
||||||
Ladder was originally written for the CP/M operating system and the game
|
Ladder was originally written for the CP/M operating system and the game
|
||||||
came bundled with Kaypro computers. It is copyrighted by:
|
came bundled with Kaypro computers. It is copyrighted by:
|
||||||
@ -7,18 +10,17 @@ came bundled with Kaypro computers. It is copyrighted by:
|
|||||||
10970 Ashton Ave, Suite 312
|
10970 Ashton Ave, Suite 312
|
||||||
Los Angeles, CA
|
Los Angeles, CA
|
||||||
|
|
||||||
For information on the game, see:
|
For information on the game, see: Wikipedia
|
||||||
[Wikipedia](https://en.wikipedia.org/wiki/Ladder_(video_game))
|
|
||||||
|
|
||||||
This version is adapted to VT100 ANSI escape sequences.
|
This version is adapted to VT100 ANSI escape sequences.
|
||||||
|
|
||||||
## Note
|
|
||||||
|
|
||||||
It seems to me that LADCONF.COM uses some kind of "wrong" VT100 sequences,
|
Note
|
||||||
as my terminal does not like them - the output looks wrong.
|
|
||||||
|
It seems to me that LADCONF.COM uses some kind of "wrong" VT100
|
||||||
|
sequences, as my terminal does not like them - the output looks wrong.
|
||||||
|
|
||||||
This LADDER.DAT has been changed slightly by Marco Maccaferri to make it
|
This LADDER.DAT has been changed slightly by Marco Maccaferri to make it
|
||||||
work with my RC2014 VGA VT100 terminal.
|
work with my RC2014 VGA VT100 terminal.
|
||||||
|
|
||||||
So don't change it using LADCONF.COM :)
|
So don't change it using LADCONF.COM :)
|
||||||
|
|
BIN
HDimage/u0/MAZEZAM.COM
Normal file
BIN
HDimage/u0/MAZEZAM.COM
Normal file
Binary file not shown.
97
HDimage/u0/MAZEZAM.DOC
Normal file
97
HDimage/u0/MAZEZAM.DOC
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
|
||||||
|
|
||||||
|
MAZEZAM
|
||||||
|
|
||||||
|
|
||||||
|
MazezaM is a puzzle game for CP/M.
|
||||||
|
|
||||||
|
- Copyright (C) 2002 Malcolm Tyrrell tyrrelmr@cs.tcd.ie
|
||||||
|
- CP/M version (C) 2004-2008 Ventzislav Tzvetkov (drHirudo) (for VT52
|
||||||
|
terminals)
|
||||||
|
- z88dk version by Stefano Bodrato (www.z88dk.org)
|
||||||
|
- VT100 adaption (C) 2020 Anna Christina Naß acn@acn.wtf
|
||||||
|
|
||||||
|
Licensed under the GPL.
|
||||||
|
|
||||||
|
You can find the VT52 version of this game, and also for other
|
||||||
|
platforms, here: http://hirudov.com/
|
||||||
|
|
||||||
|
|
||||||
|
The game
|
||||||
|
|
||||||
|
MazezaM (pronounced "may-zam") is a simple puzzle game. You enter the
|
||||||
|
mazezam on the left and you have to get to the exit on the right by
|
||||||
|
pushing rows of blocks left and right.
|
||||||
|
|
||||||
|
In the game = represents a brick, # represents a block, P is the Player
|
||||||
|
and O is a door. Good Luck.
|
||||||
|
|
||||||
|
|
||||||
|
Keys
|
||||||
|
|
||||||
|
I changed the keys to 8, 6, 4, 2 on the numpad, but W, A, S, D will also
|
||||||
|
work. Use R to restart a level (at the cost of one live).
|
||||||
|
|
||||||
|
|
||||||
|
About the game, by drHirudo
|
||||||
|
|
||||||
|
To the best of my knowledge MazezaM's specific game logic is original.
|
||||||
|
Unfortunately, there are so many puzzles out there that it is impossible
|
||||||
|
for me to be sure. If you are aware of a prior instance of the idea,
|
||||||
|
please get in touch. If possible, include a link which I can add to my
|
||||||
|
web page.
|
||||||
|
|
||||||
|
The idea for MazezaM came to me while recalling an Oric-1 type-in game
|
||||||
|
called "Fall Guy" (from the book "Sixty Programs for the Oric-1" by
|
||||||
|
Robert Erskine, Humphrey Walwyn, Paul Stanley and Michael Bews). The
|
||||||
|
game play is a reminiscent of the game Sokoban (Thinking Rabbit, Inc)
|
||||||
|
and also bears a resemblance to "sliding block" or "sliding piece"
|
||||||
|
puzzles where wooden shapes are moved around in order to get a (usually
|
||||||
|
larger) shape from one side of the puzzle to the other. The name
|
||||||
|
"MazezaM" was suggested by Robert Byrne.
|
||||||
|
|
||||||
|
|
||||||
|
Compiling
|
||||||
|
|
||||||
|
MazezaM is written in C for the ZXCC compiler which can be found in
|
||||||
|
z88dk.
|
||||||
|
|
||||||
|
Use this command line (tested in Linux) to compile:
|
||||||
|
|
||||||
|
zcc +cpm -lndos -o MAZEZAM.COM mazezam.c -O3
|
||||||
|
|
||||||
|
|
||||||
|
New Levels Wanted:
|
||||||
|
|
||||||
|
If you like this game and are good at designing levels, I encourage you
|
||||||
|
to create levels and send them to any of the authors for include in
|
||||||
|
further versions. Credit of course will be given.
|
||||||
|
|
||||||
|
|
||||||
|
Other versions and games my drHirudo
|
||||||
|
|
||||||
|
Original Sinclair and Java games - Copyright (C) 2002 Malcolm Tyrrell
|
||||||
|
http://www.cs.tcd.ie/Malcolm.Tyrrell/
|
||||||
|
|
||||||
|
Amiga Version Copyright (C) 2003-2004 Ventzislav Tzvetkov
|
||||||
|
http://hirudov.com/
|
||||||
|
|
||||||
|
Gameboy Version Copyright (C) 2003-2004 Ventzislav Tzvetkov
|
||||||
|
http://hirudov.com/ Developed using GBDK v2.1.0-1 and Wzonka-Lad
|
||||||
|
1.03.00.
|
||||||
|
|
||||||
|
Oric Atmos Version Copyright (C) 2004 Ventzislav Tzvetkov
|
||||||
|
http://hirudov.com/
|
||||||
|
|
||||||
|
Apple II Version Copyright (C) 2004 Ventzislav Tzvetkov
|
||||||
|
http://hirudov.com/
|
||||||
|
|
||||||
|
Commodore 64 Version Copyright (C) 2004 Ventzislav Tzvetkov
|
||||||
|
http://hirudov.com/
|
||||||
|
|
||||||
|
SNES version Copyright (C) 2004-2006 Ventzislav Tzvetkov
|
||||||
|
http://hirudov.com/
|
||||||
|
|
||||||
|
CP/M version Copyright (C) 2004-2008 Ventzislav Tzvetkov
|
||||||
|
http://hirudov.com/ Compiled using Z88DK on AmigaOS 4. Tested under
|
||||||
|
DOSBox and MYZ80 emulator.
|
BIN
HDimage/u0/PAC.COM
Normal file
BIN
HDimage/u0/PAC.COM
Normal file
Binary file not shown.
39
HDimage/u0/PAC.DOC
Normal file
39
HDimage/u0/PAC.DOC
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
|
||||||
|
|
||||||
|
PAC
|
||||||
|
|
||||||
|
|
||||||
|
Copyright 2020 Andrew Pamment
|
||||||
|
|
||||||
|
A CP/M Pac-Man clone
|
||||||
|
|
||||||
|
The original files can be found here:
|
||||||
|
http://members.iinet.net.au/~apamment/CPM/
|
||||||
|
|
||||||
|
Only slight modifications have been made by Anna Christina Naß
|
||||||
|
acn@acn.wtf
|
||||||
|
|
||||||
|
See LICENSE for license.
|
||||||
|
|
||||||
|
|
||||||
|
Keys
|
||||||
|
|
||||||
|
Use the numpad to move the Pac, or use the keys W, A, S, D
|
||||||
|
|
||||||
|
8
|
||||||
|
|
|
||||||
|
4 - * - 6
|
||||||
|
|
|
||||||
|
2 Q - Quit
|
||||||
|
|
||||||
|
|
||||||
|
Compiling
|
||||||
|
|
||||||
|
Robot Chase is written in C for the ZXCC compiler which can be found in
|
||||||
|
z88dk.
|
||||||
|
|
||||||
|
Use this command line (tested in Linux) to compile:
|
||||||
|
|
||||||
|
zcc +cpm -lm -lndos -O3 -o PAC.COM pac.c ansi.c
|
||||||
|
|
||||||
|
Or just use the Makefile :)
|
11
HDimage/u0/QUATRIS.DOC
Normal file
11
HDimage/u0/QUATRIS.DOC
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
|
||||||
|
|
||||||
|
QUATRIS
|
||||||
|
|
||||||
|
|
||||||
|
This is a Tetris clone which has been adapted to VT100 escape sequences
|
||||||
|
(via PDTINS.COM).
|
||||||
|
|
||||||
|
The game is by: Steven B. Perkins 1227 Spring Ridge Dr. Sandy, UT 84094
|
||||||
|
|
||||||
|
See QUATRIS.TXT for more information.
|
@ -1,79 +0,0 @@
|
|||||||
|
|
||||||
Quatris 2.0
|
|
||||||
The Games of Shapes
|
|
||||||
|
|
||||||
|
|
||||||
Quatris is a game of placing shapes strategically as they fall
|
|
||||||
into place. Each shape can be thought of as 4 small squares linked
|
|
||||||
together. Thus the name Quatris. These shapes are sometimes refered
|
|
||||||
to as tetrominoes. The game is similar to the commercial game Tetris.
|
|
||||||
This adaptation of the theme is for CP/M. It is written in Turbo
|
|
||||||
Pascal, and thus requires a Z80 or compatible CPU. The source code is
|
|
||||||
available for a modest fee, and can be ported to MS-DOS with little
|
|
||||||
trouble.
|
|
||||||
|
|
||||||
The game controls are mostly numbers. The game screen lists the
|
|
||||||
controls, so play is simple. Strategy is complex however. The main
|
|
||||||
object is to completely fill whole rows with blocks. When this
|
|
||||||
happens, the row vanishes, and the end of the game is postponed.
|
|
||||||
Points are accumulated as each shape drops. You get more points for
|
|
||||||
placing the shape faster, so use the space bar to drop it into place
|
|
||||||
as soon as it is properly positioned. You get more points at harder
|
|
||||||
(lower) levels as the action speeds up. It may be strategic to begin
|
|
||||||
at a higher level, or to advance while playing. The level auto-
|
|
||||||
matically advances, if not high enough already, after a certain number
|
|
||||||
of rows have been filled. An option to preview the next shape is
|
|
||||||
available, but it does slightly lower your points.
|
|
||||||
|
|
||||||
The .COM file is initially set up for a Kaypro/Televideo/ADM type
|
|
||||||
terminal. The public domain program PDTINS by Carson Wilson is
|
|
||||||
included to allow this to be changed if needed. My thanks to him for
|
|
||||||
this program. In the unlikely event that a compatible terminal is not
|
|
||||||
on the PDTINS menu, you only need to worry about clear screen and
|
|
||||||
cursor addressing. Look for 01A hex for clear screen, and <ESC>=rc
|
|
||||||
for cursor addressing in the distributed .COM file. The crt init (and
|
|
||||||
exit) sequence can be used to turn the cursor off (and back on) if it
|
|
||||||
bothers you. With DDT, the strings would begin (length first) at 016B
|
|
||||||
hex (off) and 017B hex (on). Add your strings, with appropriate
|
|
||||||
lengths, to enable this feature.
|
|
||||||
|
|
||||||
The game is configured to run best on a 4 MHz machine. This too
|
|
||||||
can be changed. To try a different value (lower values make the game
|
|
||||||
more challenging) include the value on the command line, example:
|
|
||||||
|
|
||||||
A>QUATRIS 3MHZ<RET>
|
|
||||||
|
|
||||||
To enter your system speed permanently as the default, requires DDT or
|
|
||||||
some other patch utility. The value is at location 0124 hex.
|
|
||||||
|
|
||||||
A high scores file is maintained for the top ten scores. This
|
|
||||||
encourages competition and makes the game more enjoyable, even if you
|
|
||||||
only try to better your own high score. My high score is about 6500.
|
|
||||||
To see the high scores without playing just enter the command:
|
|
||||||
|
|
||||||
A>QUATRIS SCORE<RET>
|
|
||||||
|
|
||||||
The game can be exited early if desired. In case of supervisor
|
|
||||||
surveillance, or if you need to pause for some reason (ahem), there is
|
|
||||||
a key which clears the screen and leaves a bogus "A>" prompt. Hit
|
|
||||||
any key to resume where you left off, or hit ESC at the false prompt
|
|
||||||
to quietly exit to CP/M (your score is not recorded in this case).
|
|
||||||
|
|
||||||
This software and documentation is copyright 1989 by Steven B.
|
|
||||||
Perkins. You are free to use, copy, and distribute it as long as it
|
|
||||||
is not for profit. Contact me if other arrangements are desired.
|
|
||||||
|
|
||||||
I believe the CP/M world can use more support. There really are
|
|
||||||
a lot of us out here! Any comments about this game, or monetary
|
|
||||||
encouragement towards further efforts and upgrades can be sent to the
|
|
||||||
address below. I also frequent Z-Node 45: (713)937-8886 and you can
|
|
||||||
leave messages for me there. A donation of $10 or more makes you an
|
|
||||||
official supported user. If you send such a donation and a floppy
|
|
||||||
disk, you will receive the source code, the latest version, and another
|
|
||||||
game and utility to try. Have fun, and keep supporting CP/M and the Z-
|
|
||||||
system.
|
|
||||||
|
|
||||||
|
|
||||||
Address: Steven B. Perkins
|
|
||||||
1227 Spring Ridge Dr.
|
|
||||||
Sandy, UT 84094
|
|
@ -1,24 +0,0 @@
|
|||||||
CP/M VT100 games HD image for z80pack
|
|
||||||
-------------------------------------
|
|
||||||
|
|
||||||
This HD image provides all VT100 CP/M games from my Git repository:
|
|
||||||
https://git.imzadi.de/acn/vt100-games
|
|
||||||
|
|
||||||
Also, the Backgammon game from https://git.imzadi.de/acn/vt100-games
|
|
||||||
can be found here.
|
|
||||||
|
|
||||||
Its purpose is to be a single hard disk image with all games at one
|
|
||||||
place :)
|
|
||||||
|
|
||||||
To achieve this goal and not overwhelm the directory, only the compiled
|
|
||||||
or assembled .COM file of the games together with a documentation TXT
|
|
||||||
file (and neccessary data files) are placed here.
|
|
||||||
The source files, installation files and other documentation files
|
|
||||||
are not found here.
|
|
||||||
|
|
||||||
These files can be found in the repositories mentioned above.
|
|
||||||
|
|
||||||
Have fun!
|
|
||||||
|
|
||||||
Anna Christina Naß
|
|
||||||
<acn@acn.wtf>
|
|
58
HDimage/u0/ROBOTS.DOC
Normal file
58
HDimage/u0/ROBOTS.DOC
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
|
||||||
|
|
||||||
|
ROBOTS
|
||||||
|
|
||||||
|
|
||||||
|
Robots is a turn-based game for CP/M.
|
||||||
|
|
||||||
|
It's based on ROBOTS, a BSD game (but no source code was taken from it).
|
||||||
|
|
||||||
|
The objetive of the robots is only one: to kill you.
|
||||||
|
|
||||||
|
The only thing you can do, is to try to escape from them. But use the
|
||||||
|
teletransportation with care: you have only a few teletransport tickets!
|
||||||
|
|
||||||
|
The robots will die if they collide between them or crash against
|
||||||
|
something.
|
||||||
|
|
||||||
|
That's your only opportunity to win the robots.
|
||||||
|
|
||||||
|
Good luck!
|
||||||
|
|
||||||
|
Copyright (c) 2015 Miguel García / FloppySoftware
|
||||||
|
|
||||||
|
A 'clear screen' function (VT100) has been added by me (Anna Christina
|
||||||
|
Naß acn@acn.wtf.
|
||||||
|
|
||||||
|
Original Repository: https://github.com/MiguelVis/RetroProjects Website:
|
||||||
|
http://www.floppysoftware.es/robots.html?path=cpm_projects|robots
|
||||||
|
|
||||||
|
The file ROBOTS.COM is the compiled game file.
|
||||||
|
|
||||||
|
|
||||||
|
Commands
|
||||||
|
|
||||||
|
Move the player .P. using the numpad numbers as shown on the screen.
|
||||||
|
Press T for teletransportation and Q for quit.
|
||||||
|
|
||||||
|
|
||||||
|
Compile:
|
||||||
|
|
||||||
|
To compile, use MESCC, "Mike's Enhanced Small C Compiler". See:
|
||||||
|
http://www.floppysoftware.es/mescc.html?path=cpm_projects|mescc
|
||||||
|
|
||||||
|
In the directory mescc, I provide the files neccessary to compile
|
||||||
|
Robots, using:
|
||||||
|
|
||||||
|
CC ROBOTS
|
||||||
|
CCOPT ROBOTS
|
||||||
|
ZSM ROBOTS
|
||||||
|
HEXTOCOM ROBOTS
|
||||||
|
|
||||||
|
Note that only the really neccessary files are provided - see the link
|
||||||
|
above for the full MESCC compiler and source code!
|
||||||
|
|
||||||
|
|
||||||
|
License:
|
||||||
|
|
||||||
|
GPL Version 2, see copying.txt - valid for MESCC and Robots.
|
@ -1,67 +0,0 @@
|
|||||||
ROBOTS
|
|
||||||
------
|
|
||||||
|
|
||||||
A GAME FOR CP/M-80 & CP/M-86.
|
|
||||||
|
|
||||||
v1.00 - 19 Mar 2015.
|
|
||||||
|
|
||||||
R () : : ()
|
|
||||||
R O B O T S \ [0_0] /
|
|
||||||
B x-+-:-+-x
|
|
||||||
R O B O T S |___|
|
|
||||||
T / \
|
|
||||||
S \ /
|
|
||||||
|
|
||||||
(c) 2015 Miguel Garcia / FloppySoftware
|
|
||||||
www.floppysoftware.es
|
|
||||||
cpm-connections.blogspot.com
|
|
||||||
floppysoftware@gmail.com
|
|
||||||
|
|
||||||
|
|
||||||
THE GAME
|
|
||||||
--------
|
|
||||||
|
|
||||||
Robots is a turn-based game for CP/M-80 & CP/M-86.
|
|
||||||
|
|
||||||
Based on ROBOTS, a BSD game (but no source code was taken from it).
|
|
||||||
|
|
||||||
The objetive of the robots is only one: to kill you.
|
|
||||||
|
|
||||||
The only thing you can do, is to try to escape from them. But use the
|
|
||||||
teletransportation with care: you have only a few teletransport tickets!
|
|
||||||
|
|
||||||
The robots will die if they collide between them or crash against something.
|
|
||||||
|
|
||||||
That's your only opportunity to win the robots.
|
|
||||||
|
|
||||||
Good luck!
|
|
||||||
|
|
||||||
|
|
||||||
GAME FILES
|
|
||||||
----------
|
|
||||||
|
|
||||||
ROBOTS .COM -- Game for CP/M-80.
|
|
||||||
ROBOTS .CMD -- Game for CP/M-86.
|
|
||||||
ROBOTS .C -- Source code for MESCC & DR-C.
|
|
||||||
ROBOTS .TXT -- This help file.
|
|
||||||
COPYING .TXT -- GNU General Public License.
|
|
||||||
|
|
||||||
|
|
||||||
TECHNICAL NOTES
|
|
||||||
---------------
|
|
||||||
|
|
||||||
This program was developed using MESCC (Mike's Enhanced Small C Compiler - my
|
|
||||||
own version of Small C) for the CP/M-80 version, and Digital Research C for
|
|
||||||
the CP/M-86 version.
|
|
||||||
|
|
||||||
See ROBOTS.C for more details.
|
|
||||||
|
|
||||||
|
|
||||||
COPYRIGHT AND LEGAL NOTES
|
|
||||||
-------------------------
|
|
||||||
|
|
||||||
This program is copyright of FLOPPY SOFTWARE from VALENCIA, SPAIN, and is
|
|
||||||
distributed under the GNU GENERAL PUBLIC LICENSE.
|
|
||||||
|
|
||||||
Read the COPYING.TXT text file for more details.
|
|
||||||
|
|
@ -1,170 +1,13 @@
|
|||||||
Command letters:
|
|
||||||
|
|
||||||
> go downstairs: must be on stairs '%'
|
ROGUE
|
||||||
< go upstairs: must have amulet of Funidoog ',' and be on stairs
|
|
||||||
. rest a while
|
|
||||||
i inventory: list all items being carried
|
ROGUE was written Nov 1984 thru Feb 1985 by David Goodenough.
|
||||||
e eat some food
|
|
||||||
s search for traps & secret doors
|
I made the changes for VT100 escape sequences according to QTERM.PAT.
|
||||||
c call an item something
|
|
||||||
d drop an item
|
The original files can be found in the file rogue17cpm.zip.
|
||||||
q quaff a potion
|
|
||||||
r read a scroll
|
ROGUE.COM is the executable file and ROGUE.DOC contains the help for all
|
||||||
z zap a wand
|
commands.
|
||||||
p point a wand in a particular direction
|
|
||||||
w weild a weapon
|
|
||||||
t throw a weapon in a particular direction (see weapons below)
|
|
||||||
W wear a suit of armour
|
|
||||||
Q quit the game
|
|
||||||
S save the game for later
|
|
||||||
P put on a ring
|
|
||||||
R remove a ring
|
|
||||||
^R reprint the last message
|
|
||||||
^L redraw the screen
|
|
||||||
h move one position left
|
|
||||||
j move down
|
|
||||||
k move up
|
|
||||||
l move right
|
|
||||||
y move up & left
|
|
||||||
u move up & right
|
|
||||||
b move down & left
|
|
||||||
n move down & right
|
|
||||||
H, J, K, L, Y, U, B, N run in the given direction till something is found
|
|
||||||
|
|
||||||
certain commands can be done repeatedly, e.g. 10l will move 10 spaces right,
|
|
||||||
or 5s will search five times, the maximum repetition count is 255 (guess who's
|
|
||||||
using a byte counter!!) - command letters don't get echoed, as the effect they
|
|
||||||
have usually shows up in some other way.
|
|
||||||
|
|
||||||
Things on screen:
|
|
||||||
|
|
||||||
solid rock (empty space)
|
|
||||||
. room interior
|
|
||||||
- | room walls
|
|
||||||
+ door
|
|
||||||
# corridor
|
|
||||||
^ trap
|
|
||||||
% stairs
|
|
||||||
? scroll
|
|
||||||
! potion
|
|
||||||
/ wand
|
|
||||||
= ring
|
|
||||||
) weapon
|
|
||||||
] armour
|
|
||||||
* gold
|
|
||||||
: food
|
|
||||||
, the Amulet of Funidoog
|
|
||||||
A-Z monsters -
|
|
||||||
A giant ant
|
|
||||||
B bat
|
|
||||||
C centaur
|
|
||||||
D dragon
|
|
||||||
E floating eye
|
|
||||||
F violet fungus
|
|
||||||
G giant
|
|
||||||
H hobgoblin
|
|
||||||
I invisible stalker (if you can see them)
|
|
||||||
J jackal
|
|
||||||
K kobold
|
|
||||||
L leprachaun
|
|
||||||
M mimic (when it's not pretending to be something else)
|
|
||||||
N nymph
|
|
||||||
O orc
|
|
||||||
P purple worm
|
|
||||||
Q quasit
|
|
||||||
R rust monster
|
|
||||||
S skeleton
|
|
||||||
T troll
|
|
||||||
U umber hulk
|
|
||||||
V vampire
|
|
||||||
W wraith
|
|
||||||
X xorn
|
|
||||||
Y yeti
|
|
||||||
Z zombie
|
|
||||||
|
|
||||||
Anything that can be picked up (scrolls et. seq.) gets picked up when moved
|
|
||||||
on top of, to fight a monster, either point a wand at it, throw a weapon
|
|
||||||
at it, or to fight it hand to hand, attempt to move on top of it.
|
|
||||||
|
|
||||||
Weapons fall into four classes:
|
|
||||||
1. two handed sword, long sword, mace: these are best weilded when going
|
|
||||||
into hand to hand combat;
|
|
||||||
2. short bow, crossbow, sling: these are best weilded when class 3
|
|
||||||
weapons are to be thrown;
|
|
||||||
3. arrow, crossbow bolt, rock: these are best thrown at monsters some
|
|
||||||
distance away, best results will be obtained if the approprate
|
|
||||||
class 2 weapon is weilded when throwing class 3 weapons;
|
|
||||||
4. spear, dagger, dart: these are best thrown as class 3, however no
|
|
||||||
special weapon need be weilded to throw these.
|
|
||||||
|
|
||||||
When throwing a weapon or pointing a wand, the direction should be specified
|
|
||||||
as for moving, so to point a wand to the left type in 'ph', and give the
|
|
||||||
letter from the inventory when asked what to zap, similarly to throw something
|
|
||||||
down, type 'tj', and the inventory letter, etc. etc. etc.
|
|
||||||
|
|
||||||
The general idea of the game is to find the Amulet of Funidoog, which will be
|
|
||||||
found somewhere below level 20, and escape from the dungeon with it: once it
|
|
||||||
has been picked up, the '<' command to go upstairs works.
|
|
||||||
|
|
||||||
This game has it's roots in AD&D (The T.S.R. fantasy role playing game), but
|
|
||||||
intimate knowledge of AD&D is not necessary to play Rogue (though it can be
|
|
||||||
a help). Rogue was originally written in C, and released on Berkley UNIX
|
|
||||||
systems - the only major part missing is the wizards password (which is a
|
|
||||||
massive cheat anyway). By and large, damages that monsters do, armour classes
|
|
||||||
of monsters, probabilities of hitting in combat, and other such variables are
|
|
||||||
lifted directly from AD&D, as they were for the Berkley version.
|
|
||||||
|
|
||||||
A few (hopefully helpful) comments: use the rest command copiously - it
|
|
||||||
allows you to regain hit points lost in combat; traps generally only show
|
|
||||||
up when you stand on them, unless you are searching - on the subject of
|
|
||||||
searching, don't get too depressed if you seem to have explored everywhere
|
|
||||||
and you can't find the stairs: search along the walls of the rooms you have
|
|
||||||
found ('s' command, do it typically 10 times for each '-' or '|' in the
|
|
||||||
wall). Note also that some of the monsters get very vicious: dragons can
|
|
||||||
breath on you, rust monsters weaken metal armour, leprachauns will steal your
|
|
||||||
gold, invisible stalkers are just that (invisible), mimics tend to look like
|
|
||||||
other things: scrolls, armour, stairs - anything that isn't a monster, etc,
|
|
||||||
etc, etc; there are cursed items (rings, armour, weapons) which can be quite
|
|
||||||
hard to get rid of - unless you have a scroll of remove curse... Regarding
|
|
||||||
the various weapons: Two handed swords are the best weapons in class 1 The
|
|
||||||
crossbow is the best in classes 2/3, and the spear is the best in class 4.
|
|
||||||
Regarding armour class: the lower it is, the better for you. Regarding your
|
|
||||||
strength / hit points / experience / gold: the higher the better (There must
|
|
||||||
be some reason why armour class works backwards...). Logically (?) the
|
|
||||||
monsters get harder to kill the deeper you get into the dungeon - Dragons &
|
|
||||||
Purple worms (probably the meanest pair in the game) are often best left
|
|
||||||
alone if you find them asleep, because it isn't worth taking a chance on
|
|
||||||
getting bumped off by one of them: by the time you meet those two monsters
|
|
||||||
you'll be pretty close to the amulet, and once you have it, the best
|
|
||||||
thing to do is to high tail it back up through the dungeon to about level 17.
|
|
||||||
On the other hand DON'T rush down: explore each level to find all the magic
|
|
||||||
and monsters you can: killing monsters is how you get experience, and the
|
|
||||||
more experience you have, the better you'll do in a fight; in addition a good
|
|
||||||
arsenal of magic items can make the difference between winning & losing a
|
|
||||||
fight. On the lower levels rooms become dark: this limits your area of vision
|
|
||||||
as shown by the area of '.'s around you, however there are wands & scrolls
|
|
||||||
which can alleviate this problem (to a point at least). I'll leave it for you
|
|
||||||
to find out what all the scrolls, rings, etc do, to begin with you'll be using
|
|
||||||
all the scrolls of identify as soon as they get found. Note that potion
|
|
||||||
colours (and wand metals and ring gems) change from game to game, so don't
|
|
||||||
assume that just because a potion of healing is orange in this game, it will
|
|
||||||
be orange in the next (that would be too easy!!).
|
|
||||||
|
|
||||||
Patching for different terminals.
|
|
||||||
|
|
||||||
As delivered, this runs on Televideo compatible terminals (including Liberty
|
|
||||||
Freedom, ADM31, Wyse 50, Wyse 60, and Commodore 128 in CP/M mode). Two special
|
|
||||||
abilities must be present, clear screen and move cursor; and clear to end of
|
|
||||||
line will be used if it exists, however ROGUE knows how to get by without it.
|
|
||||||
The patch area is right at the start of the program. Since most of the
|
|
||||||
patchable stuff I write is designed to use the same patch overlay there is a
|
|
||||||
lot of patching possible that is not applicable to ROGUE. However, once you
|
|
||||||
have the 1/2 K patch overlay it becomes trivial to patch new programs to work
|
|
||||||
for you. Included is a file QTERM.PAT which goes into detail on how to do the
|
|
||||||
patching. It should be noted that ROGUE.COM is not the same size as QTERM.COM:
|
|
||||||
the value for the SAVE command will be:
|
|
||||||
|
|
||||||
SAVE 89 ROGUENEW.COM
|
|
||||||
|
|
||||||
In all other respects, QTERM.PAT explains how to patch ROGUE for your system.
|
|
||||||
|
|
||||||
|
BIN
HDimage/u0/SNAKE.COM
Normal file
BIN
HDimage/u0/SNAKE.COM
Normal file
Binary file not shown.
53
HDimage/u0/SNAKE.DOC
Normal file
53
HDimage/u0/SNAKE.DOC
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
|
||||||
|
|
||||||
|
SNAKE
|
||||||
|
|
||||||
|
|
||||||
|
Snake game for CP/M and VT100/ANSI terminal
|
||||||
|
|
||||||
|
- First version (C) 2018, Karl A. Brokstad (www.z80.no)
|
||||||
|
|
||||||
|
- Turbo Pascal conversion and other mods with permission (C) 2018,
|
||||||
|
linker3000 (linker3000-at-gmail-dot-com)
|
||||||
|
|
||||||
|
Version history:
|
||||||
|
|
||||||
|
- V1.2acn: 25-Jun-2020 Changed keys to 2/4/6/8 and H/J/K/L and clear
|
||||||
|
ANSI attributes on exit
|
||||||
|
|
||||||
|
- V1.2T: 21-Jul-2019 Corrected Y boundary max in putFood.
|
||||||
|
|
||||||
|
- V1.1T: 14-Oct-2018 Command line switch -m (monochrome) suppresses
|
||||||
|
all colour codes Version numbering detached from Karl A. Brokstad's
|
||||||
|
original
|
||||||
|
|
||||||
|
- V23N: 24-Sep-2018 First public release Game map used for collision
|
||||||
|
detection and food position generation - this takes out several long
|
||||||
|
loops.
|
||||||
|
|
||||||
|
Original GitHub repository: https://github.com/linker3000/Z80-Board The
|
||||||
|
first version can be found here: https://z80.no/projects/Pascal.html
|
||||||
|
|
||||||
|
|
||||||
|
License
|
||||||
|
|
||||||
|
GPL v2, see the file COPYING
|
||||||
|
|
||||||
|
|
||||||
|
Instructions
|
||||||
|
|
||||||
|
|
||||||
|
Compiling
|
||||||
|
|
||||||
|
To compile SNAKE, just use Turbo Pascal from the TP/ directory. It's TP
|
||||||
|
3.0A for CP/M-80, only without the demo source code.
|
||||||
|
|
||||||
|
- Copy the TP files together with the SNAKE.PAS files to one disk
|
||||||
|
- The terminal definition is already set to ANSI and the speed is set
|
||||||
|
to 8 MHz (for a standard RC2014), so running TINST is not needed
|
||||||
|
- Run Turbo Pascal using TURBO
|
||||||
|
- Set the compiler options to "compile -> Com-file" (press O, C, Q)
|
||||||
|
- Compile SNAKE.PAS: press C (Compile), then enter snake as Work file
|
||||||
|
name.
|
||||||
|
|
||||||
|
This should result in a SNAKE.COM file.
|
63
HDimage/u0/SOKOBAN.DOC
Normal file
63
HDimage/u0/SOKOBAN.DOC
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
|
||||||
|
|
||||||
|
SOKOBAN
|
||||||
|
|
||||||
|
|
||||||
|
CP/M port of a Unix curses clone of sokoban
|
||||||
|
|
||||||
|
I found it as part of the ZCN repository:
|
||||||
|
https://github.com/jamesots/zcn
|
||||||
|
|
||||||
|
The C source has been modified for VT100 compatibility, and some unused
|
||||||
|
variables have been removed :)
|
||||||
|
|
||||||
|
sokoban.com is the compiled binary.
|
||||||
|
|
||||||
|
To run it, the files sokoban.com and soklevls.dat are needed The help
|
||||||
|
file, sokoban.hlp, is not used in this version. You find the contents
|
||||||
|
below.
|
||||||
|
|
||||||
|
See the readme.* files for more information.
|
||||||
|
|
||||||
|
|
||||||
|
Commands
|
||||||
|
|
||||||
|
Key Action Key Action Key Action
|
||||||
|
------- --------------------- -------- ------------------------- ----- ---------------------
|
||||||
|
h move/push left H run/push left ^H run left to object
|
||||||
|
l move/push right L run/push right ^L run right to object
|
||||||
|
j move/push down J run/push down ^J run down to object
|
||||||
|
k move/push up K run/push up ^K run up to object
|
||||||
|
u undo last move/push U undo all
|
||||||
|
c / s temporary save ^U / r reset to temporary save
|
||||||
|
^R Refresh screen q quit
|
||||||
|
|
||||||
|
|
||||||
|
The game
|
||||||
|
|
||||||
|
Characters on screen are:
|
||||||
|
|
||||||
|
Symbol Meaning Symbol Meanging
|
||||||
|
-------- ---------------------------- -------- ---------------------------
|
||||||
|
@@ player ++ player on saving position
|
||||||
|
.. saving position for packet $$ packets
|
||||||
|
** saved packet ## wall
|
||||||
|
|
||||||
|
Your goal is to move all packets to the saving position by pushing them.
|
||||||
|
|
||||||
|
As you could see you can make a temporary save. This is useful if you
|
||||||
|
think that all the moves/pushes you have made are correct, but you don't
|
||||||
|
know how to go on. In this case you can temporary save (using the c
|
||||||
|
command). If you then get stucked you need not undo all (using U), you
|
||||||
|
can reset to you temporary save.
|
||||||
|
|
||||||
|
If you have restored a saved game, a temporary save is automatically
|
||||||
|
made at the start.
|
||||||
|
|
||||||
|
|
||||||
|
Compiling
|
||||||
|
|
||||||
|
HiTech C has been used to compile it, it is placed in the directory
|
||||||
|
HitechC.
|
||||||
|
|
||||||
|
To compile Sokoban, I used the command c -O sokoban.c in CP/M.
|
@ -1,56 +0,0 @@
|
|||||||
# Sokoban
|
|
||||||
|
|
||||||
CP/M port of a Unix curses clone of sokoban
|
|
||||||
|
|
||||||
I found it as part of the ZCN repository: https://github.com/jamesots/zcn
|
|
||||||
|
|
||||||
The C source has been modified for VT100 compatibility, and some unused
|
|
||||||
variables have been removed :)
|
|
||||||
|
|
||||||
sokoban.com is the compiled binary.
|
|
||||||
|
|
||||||
To run it, the files sokoban.com and soklevls.dat are needed
|
|
||||||
The help file, sokoban.hlp, is not used in this version.
|
|
||||||
You find the contents below.
|
|
||||||
|
|
||||||
See the readme.* files for more information.
|
|
||||||
|
|
||||||
## Commands
|
|
||||||
|
|
||||||
| Key | Action | Key | Action | Key | Action |
|
|
||||||
| --- | ------------------- | ---- | -------------- | --- | ---------------- |
|
|
||||||
| h | move/push left | H | run/push left | ^H | run left to obj |
|
|
||||||
| l | move/push right | L | run/push right | ^L | run right to obj |
|
|
||||||
| j | move/push down | J | run/push down | ^J | run down to obj |
|
|
||||||
| k | move/push up | K | run/push up | ^K | run up to obj |
|
|
||||||
| u | undo last move/push | U | undo all | | |
|
|
||||||
| c/s | temporary save | ^U/r | reset to temporary save | | |
|
|
||||||
| ^R | Refresh screen | q | quit | | |
|
|
||||||
|
|
||||||
## The game
|
|
||||||
|
|
||||||
Characters on screen are:
|
|
||||||
|
|
||||||
| Symbol | Meaning | Symbol | Meanging |
|
|
||||||
| ------ | -------------------------- | ------ | -------------------------- |
|
|
||||||
| @@ | player | ++ | player on saving position |
|
|
||||||
| .. | saving position for packet | $$ | packets |
|
|
||||||
| ** | saved packet | ## | wall |
|
|
||||||
|
|
||||||
Your goal is to move all packets to the saving position by pushing them.
|
|
||||||
|
|
||||||
As you could see you can make a temporary save. This is useful if you think
|
|
||||||
that all the moves/pushes you have made are correct, but you don't know how
|
|
||||||
to go on. In this case you can temporary save (using the c command). If you
|
|
||||||
then get stucked you need not undo all (using U), you can reset to you
|
|
||||||
temporary save.
|
|
||||||
|
|
||||||
If you have restored a saved game, a temporary save is automatically made
|
|
||||||
at the start.
|
|
||||||
|
|
||||||
## Compiling
|
|
||||||
|
|
||||||
HiTech C has been used to compile it, it is placed in the directory HitechC.
|
|
||||||
|
|
||||||
To compile Sokoban, I used the command c -O sokoban.c in CP/M.
|
|
||||||
|
|
BIN
HDimage/u0/TLADDER.COM
Normal file
BIN
HDimage/u0/TLADDER.COM
Normal file
Binary file not shown.
BIN
HDimage/u0/TLADDER.DAT
Normal file
BIN
HDimage/u0/TLADDER.DAT
Normal file
Binary file not shown.
117
HDimage/u0/TLADDER.DOC
Normal file
117
HDimage/u0/TLADDER.DOC
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
|
||||||
|
|
||||||
|
LADDER
|
||||||
|
|
||||||
|
|
||||||
|
The classic CP/M game Ladder reverse engineered in Turbo Pascal.
|
||||||
|
|
||||||
|
Original GitHub repository: https://github.com/mecparts/Ladder
|
||||||
|
|
||||||
|
Additional information and compiled version by Anna Christina Naß
|
||||||
|
acn@acn.wtf
|
||||||
|
|
||||||
|
I've added a compiled LADDER.COM file for just playing the game (on a
|
||||||
|
VT100 terminal at about 8 MHz, eg. a RC2014), and added more information
|
||||||
|
on compiling the game.
|
||||||
|
|
||||||
|
|
||||||
|
Keys
|
||||||
|
|
||||||
|
The file LADDER.DAT is the configuration file that holds the key
|
||||||
|
definitions. These can be changed by using LADCONF.COM (the terminal
|
||||||
|
definition in LADCONF is not used! This LADDER uses the Turbo Pascal
|
||||||
|
terminal definitions).
|
||||||
|
|
||||||
|
The default keys in this LADDER.DAT are:
|
||||||
|
|
||||||
|
Up = 8 Down = 2 Left = 4 Right = 6
|
||||||
|
Jump = Space Stop = Other
|
||||||
|
|
||||||
|
(Jump and Stop are not configurable)
|
||||||
|
|
||||||
|
Also, "bell" sound is enabled and "wise crack marks" are disabled.
|
||||||
|
|
||||||
|
|
||||||
|
Compiling notes from Anna:
|
||||||
|
|
||||||
|
To compile LADDER, just use Turbo Pascal from the TP/ directory. It's TP
|
||||||
|
3.0A for CP/M-80, only without the demo source code.
|
||||||
|
|
||||||
|
- Copy the TP files together with the LADDER files to one disk
|
||||||
|
- The terminal definition is already set to ANSI and the speed is set
|
||||||
|
to 8 MHz (for a standard RC2014), so running TINST is not needed
|
||||||
|
- Run Turbo Pascal using TURBO
|
||||||
|
- Set the compiler options to "compile -> Com-file" (press O, C, Q)
|
||||||
|
- Compile LADDER.PAS: press C (Compile), then enter ladder as Work
|
||||||
|
file name.
|
||||||
|
|
||||||
|
This should result in a LADDER.COM file.
|
||||||
|
|
||||||
|
The rest of this file is mostly the README from the original repository.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
ORIGINAL README CONTENT:
|
||||||
|
|
||||||
|
|
||||||
|
About
|
||||||
|
|
||||||
|
This is a rewrite in Turbo Pascal of the classic CP/M game "Ladder",
|
||||||
|
originally written by Yahoo Software (not Yahoo!).
|
||||||
|
|
||||||
|
Ladder is an ASCII character based platform arcade game similar to
|
||||||
|
Donkey Kong. You travel through levels with platforms and ladders where
|
||||||
|
rocks fall down from the top while you collect statues before reaching
|
||||||
|
the exit.
|
||||||
|
|
||||||
|
Back in 1999 Stephen Ostermiller made a version of Ladder in Java.
|
||||||
|
Later, Mats Engstrom of SmallRoomLabs started another version in of
|
||||||
|
Ladder in golang. Between my own memories of playing the original game
|
||||||
|
on a Kaypro, and Stephen Ostermiller's and Mats Engstrom's code, I was
|
||||||
|
able to come up with this version.
|
||||||
|
|
||||||
|
This version will use the original LADCONF.COM configuration program and
|
||||||
|
LADDER.DAT configuration file. Since this version is a Turbo Pascal
|
||||||
|
program, the terminal configuration portion of LADCONF isn't used,
|
||||||
|
though it still does set up the movement keys, sound and back chatter
|
||||||
|
options.
|
||||||
|
|
||||||
|
|
||||||
|
Compiling the game
|
||||||
|
|
||||||
|
You'd need Turbo Pascal, of course. You'll also need to edit
|
||||||
|
LADCONST.PAS to set the cursor on and off sequences for your terminal.
|
||||||
|
LADDER.PAS is the main part of the program. I've successfully compiled
|
||||||
|
this on a 58K CP/M system, so available RAM isn't a particularly
|
||||||
|
critical limitation.
|
||||||
|
|
||||||
|
Once you've compiled LADDER.COM, copy LADCONF.COM to the same user area.
|
||||||
|
If you don't have a LADDER.DAT file, when you run LADDER the first time
|
||||||
|
it'll automatically load LADCONF to set up the movement keys and
|
||||||
|
options, then transfer you back to LADDER.
|
||||||
|
|
||||||
|
|
||||||
|
Limitations
|
||||||
|
|
||||||
|
At the moment, once you've successfully completed the 7th distinct level
|
||||||
|
(Gang Land), the program just cycles through all 7 seven levels over and
|
||||||
|
over again until the bonus time becomes too short to actually finish a
|
||||||
|
level. If anyone knows what the original program actually did (I never
|
||||||
|
managed to get anywhere near to completing the original game), let me
|
||||||
|
know and I'll see what I can do.
|
||||||
|
|
||||||
|
The Delay(ms) call in Turbo Pascal only works for a Z80 running at up to
|
||||||
|
32MHz (and TINST will only allow you to specify a value of up to 20MHZ
|
||||||
|
if I recall correctly). So if you're trying to run this on a system with
|
||||||
|
an effective clock speed of greater than 32MHz, you're going to have to
|
||||||
|
come up with another mechanism. That's not an insurmountable roadblock
|
||||||
|
though; on my 144MHz-Z80-equivalent RunCPM box running on a Teensy 4.0,
|
||||||
|
I patched the Turbo Pascal runtime to make a call to a BDOS extension I
|
||||||
|
created to call the Arduino's delay() function. Works like a charm. If
|
||||||
|
your system includes any kind of millisecond counter you can read,
|
||||||
|
that's a good spot to start looking.
|
||||||
|
|
||||||
|
|
||||||
|
References
|
||||||
|
|
||||||
|
Original Ladder game Ladder in Java Ladder in golang
|
@ -1,26 +1,28 @@
|
|||||||
# Worm
|
|
||||||
|
|
||||||
|
WORM
|
||||||
|
|
||||||
|
|
||||||
I have no information on the author or copyright of this game.
|
I have no information on the author or copyright of this game.
|
||||||
|
|
||||||
It is like "Snake", but the worm is only moving when a key is pressed.
|
It is like "Snake", but the worm is only moving when a key is pressed.
|
||||||
|
|
||||||
The goal of the game is to survive as long as possible - as the worm
|
The goal of the game is to survive as long as possible - as the worm
|
||||||
will get longer and longer after eating a number.
|
will get longer and longer after eating a number.
|
||||||
|
|
||||||
## Controls
|
|
||||||
|
Controls
|
||||||
|
|
||||||
Use the number keys 2, 4, 6 and 8 to control the worm.
|
Use the number keys 2, 4, 6 and 8 to control the worm.
|
||||||
|
|
||||||
The german description of the game is:
|
The german description of the game is:
|
||||||
|
|
||||||
WORM ist ein Spiel, bei dem ein Buchstabenwurm mittels der
|
WORM ist ein Spiel, bei dem ein Buchstabenwurm mittels der ^
|
||||||
Pfeiltasten bzw. Zifferntasten (siehe Bild) ueber das Spiel-
|
Pfeiltasten bzw. Zifferntasten (siehe Bild) ueber das Spiel- I
|
||||||
feld bewegt werden kann. Jedesmal wenn der Wurm eine Zahl
|
feld bewegt werden kann. Jedesmal wenn der Wurm eine Zahl
|
||||||
frisst, waechst er um ein Stueck in die Laenge.
|
frisst, waechst er um ein Stueck in die Laenge. 8
|
||||||
Das Ziel des Spiels ist es, den Wurm moeglichst lang zu mae-
|
Das Ziel des Spiels ist es, den Wurm moeglichst lang zu mae- <- 4 6 ->
|
||||||
sten. Dabei darf er aber in seiner Gier weder sich selbst
|
sten. Dabei darf er aber in seiner Gier weder sich selbst 2
|
||||||
noch die Umrandung anknabbern!
|
noch die Umrandung anknabbern!
|
||||||
|
I
|
||||||
Viel Spass !
|
Viel Spass ! v
|
||||||
|
|
||||||
|
|
@ -1,26 +0,0 @@
|
|||||||
This is version 2.2 of wanderer. I've jumped the version numbers out
|
|
||||||
of my original sequence so that they now match the same version numbers
|
|
||||||
as used by Steven Shipway.
|
|
||||||
|
|
||||||
You will need WANDERER.LBR to be able to fully use this, however the
|
|
||||||
version of WANDERER in this .LBR is the one to use - it has a couple
|
|
||||||
of bug fixes: the old version can't solve screen 31, and can't get
|
|
||||||
the monster on screen 37. Basically, all you need from the earlier
|
|
||||||
one are the screens, replace any other files with those from this
|
|
||||||
.LBR. Also replace SCREEN.050 from the old one, as this was a special
|
|
||||||
"end marker" screen, that job has now been taken over by SCREEN.061
|
|
||||||
|
|
||||||
Happy wandering :-)
|
|
||||||
|
|
||||||
|
|
||||||
.UUCP: .....!harvard!xait!lakart!pallio!dg
|
|
||||||
Internet: dg%pallio.uucp@cfisun.cfi.com
|
|
||||||
GEnie: D.GOODENOUGH
|
|
||||||
Q-link: Delta G
|
|
||||||
BBS's David Goodenough on all
|
|
||||||
|
|
||||||
(617) 965-7046
|
|
||||||
(617) 825-3135
|
|
||||||
(617) 329-8528
|
|
||||||
(617) 329-4237
|
|
||||||
|
|
@ -1,42 +0,0 @@
|
|||||||
WANDERER
|
|
||||||
========
|
|
||||||
|
|
||||||
As delivered this will run on any Televideo compatible screen,
|
|
||||||
including Commodore C128 in CP/M mode; Wyse 50's; Wyse 60's;
|
|
||||||
Kaypro's; Liberty Freedom 110's, 200's and Turbo 1's; ADM3A;
|
|
||||||
and ADM31. I've included a file QTERM.PAT that talks a lot
|
|
||||||
about patching other stuff. You will see that the patch area
|
|
||||||
is a lot bigger than it needs to be, but that is because it
|
|
||||||
uses the same patch overlay as QTERM, ROGUE, etc. The two
|
|
||||||
patches needed to make WANDERER go are: clear screen and moveto.
|
|
||||||
I'd suggest just putting those two in, and setting the terminal
|
|
||||||
capability byte to zero, to nuke out everything else. ALSO NOTE
|
|
||||||
the save command will be:
|
|
||||||
|
|
||||||
A>SAVE 36 WANDERER.COM
|
|
||||||
|
|
||||||
as wanderer is a bit smaller than QTERM.
|
|
||||||
|
|
||||||
|
|
||||||
I have included all the screens that have been released so far: 1 - 49.
|
|
||||||
SCREEN.050 is present, but only contains a single period: '.' This is
|
|
||||||
to tell wanderer that after screen 49 there aren't any more. However,
|
|
||||||
if you try to jump to (say) screen 76, it won't detect the overrun, and
|
|
||||||
you'll get a rather unpleasant message from wanderer. Oh well .....
|
|
||||||
|
|
||||||
|
|
||||||
If you have any questions, suggestions, flames, comments, bug reports
|
|
||||||
or screens to be released, I can be reached at:
|
|
||||||
|
|
||||||
Q-link Delta G
|
|
||||||
.UUCP .....!harvard!xait!lakart!pallio!dg
|
|
||||||
Internet dg%pallio.uucp@cfisun.cfi.com
|
|
||||||
GEnie D.Goodenough
|
|
||||||
BBS's David Goodenough on all of them:
|
|
||||||
|
|
||||||
(617) 288-6477
|
|
||||||
(617) 825-3135
|
|
||||||
(617) 329-4237
|
|
||||||
(617) 329-8528
|
|
||||||
(617) 965-7046
|
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user