home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Datafile PD-CD 3
/
PDCD_3.iso
/
games
/
gamesuite
/
!Amnesia
/
AmsHelp
/
OverView
< prev
next >
Wrap
Text File
|
1995-01-29
|
3KB
|
81 lines
Amnesia - Version 1.10
======================
Overview
--------
Amnesia is a module which is part of a set of modules designed to speed up
the process of game writing. At the basic level it provides memory
management for the programmer where blocks of memory can be allocated,
extended and released. Amnesia also provides a structure for handling tables
of objects. An explanation follows later in this document.
The module may be used under the following conditions:
------------------------------------------------------
(1) The module may be freely included in commercial or non-commercial
software with no liability for royalty payments.
(2) My copyright notice and contact address should not be removed from the
module.
(3) The module is supplied as is, and no liabilty can be accepted for damage
or loss resulting from the use or misuse of the software.
The Module
----------
Amnesia supplies a set of memory allocation routines which should serve for
most purposes. It also contains versatile object handling routines. As far
as Amnesia is concerned an object is a small chunk of memory, usually 40
bytes or so. An object is very general in Amnesia, but will usually have the
following properties:
• It will represent a sprite on the screen, be it a moving ball, a missile
or bullet, the player, stars in the background, scrolling text etc.
• The object will usually be plotted by the module FastSpr.
• The object may perform a wide variety of actions. It may move about, be
animated, perform an action after a certain time, produce other objects etc.
• It may be collision checked with a number of other objects.
A table is the space allocated for a number of objects. All objects in the
table are the same length, but they need not have the same properties. For
example, aliens and explosions could be in the same table.
Collision checking
------------------
The module will collision check objects as instructed by the user. It has a
notion of the size of an object (which it will deduce from the sprite file if
necessary) and will usually check if the bounding boxes (rectangles which
completely enclose the relevant sprite) overlap. The objects are then
pointed out to the user who can deal with them.
Coordinates
-----------
The module uses the same coordinates as FastSpr, but shifted left 12 places
(ie multiplied by 4096). FastSpr uses memory-like coordinates. The top left
of the screen is (0,0), and the bottom right of a mode 13 screen would be
(320,256). Therefore to Amnesia the bottom right of the screen is
(320<<12,256<<12).
Versatility
-----------
All properties of an object can be disabled by the user. The use of the
first eight bytes of an object is fixed, but the rest is up to you. If the
features listed above are enabled, the module expects the first few words of
an object to be in a standard form.
Support
-------
Enquiries, bug reports and requests for help should be sent by post to Andy
Southgate, at 14 Madingley Road, Cambridge until 10/95, and thereafter to 5
Longview, Sutton, Cambs.