home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
games
/
eg09303.zip
/
INFO.TXT
< prev
next >
Wrap
Text File
|
1989-06-25
|
6KB
|
133 lines
A LENGTH DISCOURSE ON FALLING OBJECTS WITH
TRANSLATIONAL AND ROTATIONAL MOTION
I guess that when you read about a computer game in
Newsweek, there must be something special about it; of course,
I'm talking about that Soviet falling-objects-with-translational-
and-rotational-motion game known as TETRIS. According to the
opening screen of Spectrum HoloByte's implementation of the game
for the Apple Macintosh family of personal computers,
TETRIS was invented by a 30-year-old Soviet
researcher named Alexey Pazhitnov who
currently works at the Computer Centre
(AcademySoft) of the USSR Academy of Sciences
in Moscow. The original programmer was 18-
year-old Vadim Gerasimov, a student studying
Computer Informatics at Moscow University.
Unfortunately (or fortunately, depending on your point of view)
for me, I don't own a Macintosh, but rather, I own an IBM PC-AT
compatible Toshiba Portable Personal Computer, so I sort of felt
left out of the fun of being able to play TETRIS.
Okay, before everyone starts trying to correct me, I knew
full well at that time that there are several implementations of
TETRIS around for the IBM Personal Computer family; one from
Spectrum HoloByte (which looks, to be honest, absolutely hideous
in its three color, low resolution display mode; I mean, I
realize that it's not Spectrum HoloByte's fault, but rather the
fault of the designers of the IBM Color Graphics Adapter), the
Son of TETRIS Project (an obscure program which I no almost
nothing about), and NYET, the public domain implementation by
David B. Howorth. In the included documentation for NYET 1.2,
Howorth professes:
I claim no credit for inventing this game;
that was apparently done by A. Pajitnov [sic]
and V. Gerasimov in the Soviet Union. They
called the game TETRIS. I wrote [NYET] ...
mainly for the hell of it, but I improved on
the original where I thought it needed it
(NYET has the ability to run on monochrome
screens, a running speed largely independent
of processor speed, and a more responsive
feel).
So where does egaint into play? Well, this TETRIS thing all
started for me when I was in the student union video arcade
getting quarters so I could do my laundry with these coin-
operated washers and dryers; while I was there I happened to see
this video game with a dense pack of what appeared to be
worshippers: it was the (yet another) arcade implementation of
TETRIS. After staying for about five minutes to catch the basic
gist of the game, I decided that it was probably a deceptively
easy program to write, and that perhaps I should try when I have
some free time.
No, I didn't start developing my variation on TETRIS just
yet: the above occurred around four months ago; TETRIS did not
seem like such a big deal to me, so I soon forgot about it.
However, my interest in TETRIS returned one night when,
while perusing the wares of a Bay Area bulletin board system
under a false identity, I came across NYET12.ARC and downloaded
it (it must have been a while ago if they had not yet converted
to the .ZIP format); later that night, getting into a discussion
concerning TETRIS and NYET with my two roommates, I somehow
weaseled my way into a challenge: implementing TETRIS in twelve
hours.
Well, in case you're interested, I lost the bet; it ended up
taking me around four days (given that I also needed to attend
classes--being that I'm in college--and also eat, sleep, work
out, and just plain have a social life) and two languages
(Microsoft C 5.1 at first and Turbo Pascal 4.0 later) to produce
aint 0.0 (actually, it only took me around twenty-four contiguous
hours, but who's counting?).
aint is a recursive acronym for "aint is not TETRIS," and
the program with that moniker was a text-only (like Son of TETRIS
and NYET) implementation. After several bug fixes and rewrites,
after getting comments from my friends and roommates, and after
distributing it in a very exclusive fashion, I decided that a
graphics implementation of aint was in order.
Actually, I more than just a graphics implementation of aint
in mind: rather, I had a truly portable version of aint, one
which would compile, with minimal changes, on different machines
with different display adapters in different graphics and text
modes.
Well, it wasn't too long before I dropped that crusade and
settled in for something more at hand: a version specifically
for what I had, that being a Toshiba T5100 with an Enhanced
Graphics Adapter with 256K memory.
Thus egaint ("enhanced graphics aint") was born, albeit
slow, flickery, and in four shades of orange. And from this
initial implementation, I have evolved to here (and let me tell
you, that was some evolution).