*******************************************************************************
*                                                                             *
*   Demo:   Twistscroll        Type:    Amstrad CPC Emulator DSK File         *
*   Author: Odiesoft           Webpage: http://www.odiesoft.de                *
*   Size:   1 * 194816 Bytes   Date:    2. March 2003                         *
*   File:   Odiesoft Demos - Twistscroll (1993).dsk                           *
*                                                                             *
*******************************************************************************

Title: Twistscroll
Year:  1993


I've seen this effect in an Amiga demo (once again) on the Amiga of my brother.
I was really impressed by this idea and the way it was realized on the Amiga.
The twisting vertical scrolltext also had a third dimension, i. e. the
characters had depth. You were able to see the sides of the letters depending on
the way they were twisted.

I thought about how I could convert this demo to the CPC. But I wasn't able to
come up with a good idea for the 3D font. I had a general idea how I could
create a twisting scrolltext that wouldn't take up too much time. This was a
start, but somehow not really all that I wanted.

Anyway, I didn't start to write this program right away. I had others things to
do. But when we went to the BENG Euromeeting in Wuppertal, Germany in 1993 DSC
told the visitors that there will be a programming competition. So I started
creating this effect.

It turned out to be a little more complicated than I thought and thus I managed
only to create a twisting vertical scroll text. I didn't find the time to
include the vertical sinewaves into the scrolltext, but with the little I had
accomplished I won the first place anyway (probably due to a lack of
competition...).

I remember that I also created a scrolltext demo with a laughing skull and a
font designed by Rex of BENG during that meeting. And DSC came up with the ELMAR
permuting to LAMER animation, which I also realized at that meeting. Well I had
a busy stay in Wuppertal and still enough time to go on a trip through Wuppertal
to take a ride in the famous aerial railway and watch DSC and Alien try to stick
a lollypop in Mad Rams mouth while he was sleeping.

Oh yeah, and I remember how Crown started to sing Karaoke sometime late in the
night.... Such things stick with one for a lifetime!

I finished this demo back at home some weeks later. Rex and Catloc had come back
with me to my place and stayed there for one and a half weeks. So I was more
than busy keeping the spirits of those two guys up - and now I still owe Rex the
return visit, even after 9 years! (Maybe to the 10th anniversary of the
Euromeeting next year?)

The essential trick about this demo is, that I use the stack pointer as an
additional 16 bit register to make the conversion of the pre-calculated twist
into characters on the screen easier. Unfortunately handling interrupts gets a
little harder, when the Stack Pointer holds valid data and not the address for
the stack.

Therefore I had to disable all interrupts and create a special handler that
triggers the playing of the music every frame separately. Since the demo runs
with 25 frames a second this handler had to be called twice during the
calculation of one step. So that the music didn't sound weird the music handler
had to be started at (almost) the exact time each frame, regardless whether the
program was currently rendering a part of the scrolltext or waiting for a
keyboard input.

The bunny picture in the background was converted from some Amiga demo or
picture disc. Finding the colors that looked best with the limited color palette
of the CPC wasn't easy. Somehow I was hooked to pink and lavender - like in a
stupid Anne Geddes photograph.

Unfortunately it took another two years before the demo was finally published. I
had it lying on a disc with other unfinished or unpublished demos.

By that time I had started to study and I also had taken my first steps in this
wonderous thing called Internet. I was instantly absorbed into the possibilities
and power of the Internet - even though I was a little disappointed by how dull
most of it looked. In all those TV shows at that time you saw Avatars walking
through threedimensional worlds talking to one another and building virtual
worlds. In reality you had the gray background of the Netscape browser on your
screen and waited for connection and the slow download of stupid GIF animated
homepages.

But all the other programs like ftp, irc, newsgroups, etc. offered a small
glimpse of the possibilities lying ahead. I tried to use one of these
possibilities to find a suitable title screen for my Twistscroll demo.

The problem was, I already knew what image I wanted to use. Unfortunately I had
no clue what its name was (neither the name of the picture, nor the filename of
the image file), who had created it or where I could get it or information on
it. I had seen it some years ago in a Amiga demo, but my brother and I couldn't
find it anymore.

So I got the idea to use Archie to try to find the picture on one of the FTP
servers throughout the world. After an extensive search I actually discovered it
on the FTP server of the University of Stuttgart in an public image directory.

I converted the image to the CPC, put in the "The Twister" logo and a cheap
horizontal scroll text with the standard CPC system font. I also spiced up the
demo with better colors for CPC plus users and yet another cheat part (putting
cheat parts in my demos was some weird sort of sports of mine at that
time).

The so called "Jamiri picture" cheat part would come up randomly at every Nth
start of the program when the user pressed the space key to start the actual
Twistscroll demo. But you can also activate it by starting the Twistscroll demo
with the "J" key instead of the space bar.

The Jamiri picture is a scan of the title image from a comic book of the great
German cartoonist Jan Michael Richter (JaMiRi) who usually draws the comic
strips for the monthly University magazine "Unicum". His Jamiri character is
weird and witty and just a lovable little bugger. So putting this Jamiri picture
as a cheat part into my demo was my form of an hommage to this cartoonist!


*******************************************************************************
*                                                                             *
* This program can be distributed freely and without the need of a written    *
* of a written permission by Odiesoft, as long as it is distributed free of   *
* charge!                                                                     *
*                                                                             *
* If you had to pay for this, you've been ripped off!                         *
*                                                                             *
*******************************************************************************

