Welcome to the Sokoban game
===========================

Sokoban is a PD-game where you have to
push objects through a maze until they
are all on the dumps. But, as you might
have guessed, this isn't always that
easy:

* You can only push.
* You have only strength to move one
  object.
* The maze doesn't give you much room
  to manoeuvre.
* Other objects tend to act as movable
  walls.

The final goal of the game is to master
all 85 levels. After that you are no
longer a rookie, you will become Master
of the Sokoban game.


What's in the package?
----------------------

Let me give you a birdseye view of the
files in the package:

* this text:
  * sokoban.txt
    You're reading it.

* the programs:
  * sokoban.com
    The full Sokoban version for the HP
    95LX (11 Kbytes).
  * pc-sok.com
    The full Sokoban version for your
    MS-DOS pc.
  * mini-sok.com
    The mini Sokoban version for the HP
    95LX (9 Kbytes).
  * level.exe
    Shows all levels to you on your pc.

* the sources:
  * sokoban.h
  * sokoban.c
  * sok-code.c


The Programs
------------

The full version for your HP 95LX keeps
track of your performances in
"c:\_dat\sokoban.cnf". It allows you to
modify the characters that are used in
the game and it allows you to maintain
the table of your performances.

Of course, this last feature allows you
to cheat, but then you only would
become a phoney master. A real master
never cheats! The reason for this
feature is twofold:

* If somebody else solves a level for
  you, you can undo the level (a real
  master doesn't take the credit of
  somebody else).

* You might have another Sokoban
  version that you are playing. I don't
  think that if you have completed a
  level on the other version, you have
  to do it also on this version.

Before I forget, you get out of the
setup menu by hitting any other key not
listed on the menu.

The pc version is almost identical to
the full HP 95LX version. Only some
minor differences exist. Probably the
most important one is that the setup
file "sokoban.cnf" is stored in the
current directory. You might prefer to
do "mode 40" before running
"pc-sok.com" (and of course "mode 80"
afterwards).

The mini version for the HP 95LX is
stripped of all actions regarding the
setup and it doesn't track your
performances.

The level program is a bonus and it
shows you all levels. It is intended to
run on your pc.


The Sources
-----------

Well, what do I have to say on this?
Probably that it is for your private
use only. After you've modified it, you
may not distribute the version any
further without my permission.

If you compile "sokoban.c", you can
specify several macros:
* MINI_SOKOBAN
  Then you get the mini version.
* MesSDOS
  Then you get the MS-DOS version.
* If you specify none, you will get the
  full HP 95LX version.

You shouldn't change "sok-code.c" by
hand. Write a small program (like
"level.exe") that dump all levels of
"sok-code.c" in a readable form. Then
edit that readable form and write a
program that writes back the readable
form to "sok-code.c".

Finally, since the memory of the HP
95LX is limited and expensive, I
removed all formatted I/O and have done
all I/O at the lowest possible level.
It makes a big difference.


Known Bugs
----------

I'm happy to report that there are no known bugs.


Version History
---------------

In version 1.1 only some improvements
were made:
* I've added a "done" indicator after
  the level. This is very handy if you
  do the levels criss-cross. This
  indicator is absent in the mini
  version.
* In the light of the previous point
  I've made the setup option available
  during the game. So during the game
  you can peek and see what levels you
  still have to do. Again, this is not
  present in the mini version.
* I've used a different rule to
  determine the next level.
* I've found the way how to make the
  cursor invisible and visible again.
* Since I'm now using the tiny machine
  model, I've been able to convert the
  EXE files into COM files. A further
  advantage is that the files are a
  little bit smaller.
* I've used pklite to compress all
  executable files.


Maintainance
------------

Hm..., well, if you send bug reports to
me, I promiss to correct them if I can.
But my time is a little bit limited. If
someone out there is willing, to take
over this task (and become coauthor),
please contact me!


Public Domain
-------------

This software is public domain. You are
allowed to use it and distribute it. If
you distribute it, you must distribute
the entire and unchanged package
"sokoban.zip" and you may not ask any
money for the package.


Disclaimer
----------

I've tried to make the package bug
free, but of course, I can't guarantee
it. Furthermore, I've run a virus
scanner over my disk and it reported no
viruses. In any case you run the
programs on your own risk. The package
is provided "as is" and I shall not be
liable for any errors or for incidental
or consequential damages in connection
with this package.


Copyright
---------

The package is copyrighted (in 1992)
by:
* Hans de Vreught
  hdev@dutiba.twi.tudelft.nl
  The Netherlands
The Sokoban game itself is not mine.


Other Versions
--------------

There exist many Sokoban versions on
the various ftp sites. Personally, I
think the Mac version is the best one,
and second is the X version, a real
beauty as well (both versions make
clever use of a mouse). Furthermore,
there also exists a version called
Garbage, that runs on the HP 48S and 
HP 48SX. A small number of levels are a
little bit different.
