
                 _   __                       __  ____           __
                / | / /__ _   _____  _____   /  |/  (_)___  ____/ /
               /  |/ / _ \ | / / _ \/ ___/  / /|_/ / / __ \/ __  /
              / /|  /  __/ |/ /  __/ /     / /  / / / / / / /_/ /
             /_/ |_/\___/|___/\___/_/     /_/  /_/_/_/ /_/\__,_/

                           ________
                          / ____/ /_  ____ _____  _____
                         / /   / __ \/ __ `/ __ \/ ___/
                        / /___/ / / / /_/ / /_/ (__  )
                        \____/_/ /_/\__,_/\____/____/

              Copyright (c) 1991,1998 Markus F.X.J. Oberhumer
            http://wildsau.idv.uni-linz.ac.at/mfx/nostalgia.html


What is Never Mind Chaos ?
==========================

Never Mind Chaos aka NMC is an editor for saved games of the once
very popular Dungeon Master and Chaos Strikes Back.

NMC is exclusively available for the Atari ST ;-)

This is the source code release. For more information about NMC
read the docs that ship with the compiled program.


Why a source code release ?
===========================

AFAIK Never Mind Chaos is the only editor for the Atari ST that
allows you to change character attributes. This is due to the fact
that Dungeon Master and Chaos Strikes Back use partly encrypted game
save files and additionally store some nasty checksums - it was really
hard to reverse-engineer these routines back in the late '80s.

Since the binaray release of NMC I've received quite a number of
requests for the source code, mostly from people trying to write
a savegame editor for the PC. Some of them also plan to include
support for Atari and Amiga savegames as well - very nice.

So finally I've taken the time to package up the sources.


Quick guide
===========

NMC is written in GFA Basic 3.5 with some small assembler routines for
encryption, checksums and graphics support.

The assembler routines and other data like graphics and fonts
are included in the Basic program via INLINE statements.

The most interesting information is probably the savegame loading/saving
stuff. Look into the following:

  - the assembler source inline/never_mc.s implements one crypt
    and four checksum functions

  - the module crypt in the Basic source contains the access functions


What now ?
==========

I'd be happy to translate this into a small C library which allows
encryption/decryption of various savegames, possibly adding support
for PC & Amiga versions.

Feel free to contact me if you are writing an editor and are interested
into such a library - all Dungeon Master enthusiats should really join
forces here.

Other feedback is welcome as well, but I require that you have some
GFA Basic and 68000 assembly knowledge if you ask technical questions.

And finally don't forget to give credits - see below.


Copyright
=========

Never Mind Chaos is Copyright (C) 1991, 1998 Markus Franz Xaver
Johannes Oberhumer <markus.oberhumer@jk.uni-linz.ac.at>

This software is provided 'as-is', without any express or implied
warranty.  In no event will the author be held liable for any damages
arising from the use of this software.

Permission is granted to anyone to use this software for any purpose,
and to redistribute it freely, subject to the following restrictions:

  1. The origin of this software must not be misrepresented; you must not
     claim that you wrote the original software. If you use this software
     or any information resulting from this software in a product, an
     acknowledgment in the product documentation and a link to the
     Never Mind Chaos homepage is required.
  2. Altered source versions must be plainly marked as such, and must not be
     misrepresented as being the original software.
  3. This notice may not be removed or altered from any source distribution.


Have fun,
Markus

