 ------------------------------------------------------------------------------

                        Hi MemberOfTheDemoScene,


  You may wonder what this is for. Either you've already discoverd that
  this production only runs under Windows95 or you at least now you know it.

  I want to write something about why and how I wrote this production. Because
  noone asked me anything about it until now I'm not going to call this doc a
  FAQ.  However, I like reading FAQ's and therefore I do it in this style.
  It's a little bit longer than I intended to write it, however, I think it's
  still interesting to read.


 ------------------------------------------------------------------------------

  Q: This fucking intro won't run on my machine.

  A: Well, I can give you a couple of hints but no warrrenty. There shouldn't
     normally be no problem to run this if you have:

       1. A Pentium.. I think it'll run on a 75, but a 90 will definitely
          be enough. You should also have some memory. I think 16MB are enough.
          The Intro will run with fewer, but it wouldn't be fun to watch
          an intro where the databuffers are in the virtual memory.
       2. Windows 95
       3. DirectX 2.0 or higher
       4. a soundcard with properly configured MIDI output.
          (Wavetable suggested, but it will run on any board..
          If you use old soundblaster or compatible don't expect to
          enjoy the music...  )

     If it hangs or even don't start your windows95 configuration is
     fucked up and you should reinstall it.

     I'll spread a one disk version of DirectX at the partyplace.
     If you want to have the complete DirectX SDK come to my table and
     we'll see what I can do for you.

 ------------------------------------------------------------------------------

  Q: This fucking intro crashes on my machine...

  A: There's still a bug in the Intro. Pascal wrote the entire 3d-engine
     and I'm unable to understand his source (his words: comments are
     for beginners). I wasn't able to find the bug nor I was able to
     find the cause. If it hangs press enter to terminate the program
     and start again.

                       This bug is dedicated to pascal!

     However, any exception will be logged to a file called CTSERR.LOG
     in your root directory. It would be nice if you could send me this
     file. I'm still searching this bug because we have the same problems
     in our demo Toasted.

 ------------------------------------------------------------------------------

  Q: Why does $eeN port the old Lasse Rein Bng Intro to windows95?

  A: Well, I read a lot of stuff in the comp.sys.ibm.pc.demos newsgroup
     why it would be never possible to write a demo/intro under windows95.
     (Same applies for DEMO.GER (fido echo in germany))

     The most funny sentence I read was: "Ask a windows programmer why it
     would be impossible". Since I earn my money writing windows95 software,
     I always wondered why noone tried to write an intro. After the release
     of DirectX 2.0 I spend a whole day downloading this stuff, reading
     all those documents and began coding the 1996 version.

     My humble oppinion about windows95: It's a nice environment to work
     with. There are a lot of cool programs and with the release of
     DirectX it's now possible to do all the stuff we do under DOS even
     for non win95 profis.

     Do you think the new generation of computer-freaks will use the
     command prompt to start programs, know how to tweak the configuration
     to make demos/intros runable? I think in the next few years only
     hardcore freaks will know how to do this.

     It's making me sad to think that our productions will be only enjoyed
     by such a small audience. Therefore it's nessesary to take a look at
     the new technology and make viewing an intro as easy as possible.

     This is the best way to make new folks interested into the scene.

 ------------------------------------------------------------------------------

  Q: Win95 sucks! It eats all your processor power, restricts you,
     doesn't let you access your hardware, blah blah blah...

  A: Wow! You have to be a real windows95 specialist to know all these facts.
     I guess you are a great coder. Hey, I guess you write the best-selling
     applications. You even write books in your freetime. I'm so honoured
     that you spend your worthy time to read this crap. Please let me kiss
     your shoes...


     Is it really so restricted? Does it really makes everything slow?

      I ask you: Which programming language do you use?
      Visual Basic? ...

     I guessed it, you lamer. Think before your speak. Know what you
     write. Don't write such bullshit only because you've read it somewhere.
     Know what you're talking about.

     Windows95 restricts you. That's true. But there's nothing that can't
     be changed. You still have to know your environment. You can get all
     the processor power available on your system..

     Use SetThreadPriority (THREAD_PRIORITY_TIME_CRITICAL) and your
     program will run fast as light. Even the disk-cache will freeze.

     Use the 16-bit Lock/Unlock functions. Shut down the whole windows stuff
     and make everything on your own. You can access everything this way!

     Write VXD-drivers and make your program enter the highest level of
     system-control. You can fucking do everyting you want to do.

               THERE IS NO RESTRICTION THAT CAN'T BE DISABLED!

             THERE IS NOTHING THAT CAN'T BE DONE UNDER WINDOWS95.

     Ok, you lamers, I never wanna read such crap about windows95 again.
     If you can't do something under windows95 you simply don't know enough,
     about it, ok? Stop writing such crap and play games.

     Isn't this intro proof enough?

 ------------------------------------------------------------------------------

  Q: I looked the intro and discoverd that there are only little changes.
     Why did you use the old code? Are you lazy?

  A: The goal of this production was to show you that windows95 is a
     usable platform to write intros. To make it comparable to the dos
     version I tried to make as few changes as possible. I only changed
     the parts which really disturbed me (for example the ugly font).
     And.. yes.. I was a little bit lazy...

 ------------------------------------------------------------------------------

  Q: I noticed, that you use MIDI-Music instead of XM. Why?

  A: At first MIDI is the native windows music format. I tried to rewrite
     the MXM-Player to work under windows but discoverd, that one thing
     would make it very hard: You can't write interrrupt-handlers if you
     don't put your code into a VXD. I was not in the mood to learn how
     to write VXD's, so I asked DOJ to make a nice MIDI-score.

     One advantage of MIDI is, that if you have a midi-driver installed
     you can hear the music on every soundcard in the world (or on any
     synthesizer if you have one). I know that the sound of the OPL-Chips
     is crap, but it's still better than nothing.

     I tested the MIDI-output on my old soundblaster pro and if you think
     that the sound sucks I absolutely agree to you. The OPL2/3 simply doesn't
     have enough voices, the instruments are terrible and the driver is buggy.
     If your ears hurt buy a wavetable-card or turn off your amplifier.

     By the way, my first version ran with a third party music-library called
     SEAL. SEAL is a great library. It playes lot's of music formats under
     DOS, extended DOS, LINUX and several Windows platforms. Unfortunately
     the syncing of the SEAL Library is not usable for Intros/Demos.

 ------------------------------------------------------------------------------

  Q: Did you use Direct3D for the 3d-parts?

  A: No, why should I. The 3d-engine from lasse rein bng is a good one,
     and I don't know why I shouldn't use it. If you don't have hardware
     acceleration for 3d Direct3D is painfull slow. And the capabilities
     are very limited. Writing your own 3d-engine is way more flexible.

 ------------------------------------------------------------------------------

  Q: About 400K for an intro? Isn't this a little bit too long for an Intro?

  A: Yes. That's true. However, if you zip the file you'll notice that the
     compressed version of this intro is ca. 64k in size. I don't have any
     executable packer for windows, and I don't feel like writing one.
     (to be exact, I tried to get information about the Portable Executable
     file-format, but unless I'm not getting a good description of it I
     won't start working on it).

     And after I decided, that I'll release this produciton even if it doesn't
     fit into 64k I added some more diagnostic and debugging code to make
     my work easier. There's still a lot of this stuff in the program (for
     example my private exception handler).

     This anser is quite a bit historic now. I've added so many stuff (the
     rotating 'R' animation in the vector part for example) and deleted the
     whole compression because time is running out for the deadline. I'll
     fix this later and make a smaller EXE (i swear!)

     By the way, there's one thing I really don't understand. Why in the heck
     do we have a size-limit for demos/intros executables and data-files?

     Wouldn't it be better to limit the size of the archive? This would take
     the burden of writing compressors/decompressors for data. We can read
     and write zips, but I noticed that many groups can't. A limited
     archive size would also speed up the demos because decompression still
     takes some time.

 ------------------------------------------------------------------------------

  Q: Will you continue to write Windows95 Intros/Demos?

  A: I'm not sure. Maybe. It was fun to write this production and show some
     guys that Windows is not as bad as they think. However, writing DOS-stuff
     is still better because win95 intros break several traditional
     Intro-rules and I can't contribute to competitions. And of course it's
     more fun to write dos-intros.

     However, if I find enough time I'll might write another production
     like this.

 ------------------------------------------------------------------------------

  Q: Will you give us any informations how to code under windows 95?

  A: Yes, DOJ told me, that I should release a kind of SDK which will
     help you over the first steps. My windows Demo system is very easy
     to use, but there are still some bugs in it, and there are many
     intro specific routines inside.

     After all, it'll bring you a window onto the screen, lets you change
     the palette and display your images just like in good old DOS.

     And of cause the midi-player will be included (for those who don't
     want to read the helpfiles!)

 ------------------------------------------------------------------------------

  Q: The technical aspects: Was it hard or easy?

  A: It was a easy. After writing a simple wrapper application that
     does nothing but displaying a window, handling the basic functions and
     such stuff I plugged in the DirectX.

     Letting DirectX blit to the video-display is easy. It's a little
     bit like VBE 2.0. You can get a pointer to the video-memory (or a
     pointer to a off-screen buffer if you wish). Write to it and blit
     the data with one single call to the display. Since most video-cards
     support windows acceleration this is way faster than under
     dos (even considering the overhead of going through a DLL).

     There were some other problems I had to fight with. This intro contains
     several self-modifying code, and windows protects its code-segments
     against write operations. I have to thank Chris Hecker for help. He
     showed me how I can disable this protection. (guess what? Windows has a
     function for this stuff...) By the way, Chris is a cool dude.. He knows
     a lot of interesting things and I really enjoy reading his messages.

     Another aspect was the difficulty to create a fast high-resolution
     timer. Windows has functions for this, but the resolution of the
     timer depends on the system. I synced the whole intro to the playback-
     position of the midi-score. This is the reason why the intro won't run
     if you have no midi-playback device.

 ------------------------------------------------------------------------------

  Q: Pascal has left Cubic Team. Will there be no more 'quality productions'
     from Cubic Team?

  A: God! Of cause we'll continue writing good (and maybe even better) stuff.
     Pascal has left us after assembly and he got good reasons to do it. After
     the assembly we agreed that this would be the last production we did
     with him. There are still some serious financial differences between us.
     I hope that we'll ever get our fair amount of price-fee from the 2nd
     place of the assembly demo-competition.

     Pascal is still one of the best coders I know, but code isn't everything.
     You can write a fucking good production with simple code. Who isn't bored
     watching the xxxth object-show at competitions. Isn't it refreshing to
     see something that's funny and really rocks?

 ------------------------------------------------------------------------------

  Q: I'm a little bit fuzzy on the Cubic Team & $eeN thing. Who is who?

  A: This is a long story. Cubic Team is a demogroup founded around
     Pascal, DOJ and Hook. There were still some other members around
     I don't remember exactly. Pascal started writing the Cubic Player and
     they felt like doing a demo or intro. They wrote the VEX Intro and
     some other stuff.

     In november '95 Scholar and me (Submissive) joined them for
     the Lasse Rein Bng project. Since it wasn't distinct wether we
     should join completely we still used our name $eeN.

     As always when you work with some cool dudes you develop some kind of
     friendship. We continued working with Cubic Team and released a
     couple of funny things at the summer encounter '96. Our greatest success
     was the 2nd place at the Assembly '96 demo-competition.  This day it was
     obvious, that we'll continue to work together as long as possible.
     However, Cubic Team and $eeN is a well known name and we don't
     feel like changing it.

     At assembly Climax / Amable asked me why we wouldn't join Cubic
     Team. I told him we've more or less done, but the name will still
     be used. It's like the name "De Beukeler und L" (a cake-company).
     Cubic Team and $eeN sound's better than Cubic Team alone.. (By the
     way, I agree to pascal that the name Cubic Team as a demogroup name
     sucks, but who cares about names?).

 ------------------------------------------------------------------------------

  Q: Wanna contact you.. How's your address/email

  A: SUBMiSSiVE:             snailmail:

                               Nils Pipenbrinck
                               Havighorster Redder 17
                               22115 Hamburg
                               Germany

                             email:

                                100121.2450@compuserve.com

     Scholar                 snailmail

                               Andr Peters
                               Hattinger Stieg 4
                               22419 Hamburg
                               Germany

                             email:

                                seap2011@hp00.rz.tu-harburg.de

 ------------------------------------------------------------------------------

 Ok, enough written. My fingers hurt, and there's still a cup of coffee in
 the machine. While I'm going to get me a coffee you can watch the intro again,
 ok?



  Regards,

        SUBMiSSiVE (Cubic Team and $eeN)
        (ever wondered what my name stands for?)



 Personal Greetings from SUBMiSSiVE (in alphabetical order):


  Alpha                 for a great time at ASM'96 (Swapping socks is fun!)

  Abyss                 for beeing a funny guy, fistfucking partner and
                        the most organized organizer at ASM'96

  Amphita Design        for doing all the colors in the demo, making the cool
                        start picture and for good talk about design-questions!

  Crash(Polka Brothers) for good time at the Party 5 (and 6)

  Climax                for cool chat and nice email-contact

  Coma                  I like your style. Keep on working.

  DOJ                   for cool talk, work, and cola-drinking

  Dr. Dobbs Journal     for beeing the only computer magazin worth it's money

  Fredel                for having weired ideas.

  Hansen                for having good evenings.
                        (Du hast die Nase eines Bauern!)

  Holsten               for having terrible hangovers after drinking.

  JJ                    my funny brother

  Lamers                for still showing me tori, chrome-faces and ducks :)

  Lufthansa             for beeing a good air-travel company. (No, this
                        is not a bomb, it's a computer-monitor, and it
                        won't explode in the plane. Trust me!)

  Mefis                 for nice chat at Summer Encounter '96

  MFX                   for writing a good demo which name I don't
                        know (The one with the cow).

  Microsoft             for writing Windows95. (Hey, the GlobalRealloc-bug
                        isn't funny. And how in the hell should I format
                        a disk using the win32 API?)

  Michael Abrash        for writing good but outdated books. You're one of
                        the top ten coders for me.

  Mike Oldfield         for making great music all the years.

  My Boss               for being a good boss

  My Coffee Machine     for making the worlds best coffee.

  My girlfriend         for having good days all the years.

  Orange                for creating a new type of demos/intros and being
                        a trendsetter. Hey! I still don't agree to the
                        crap pascal wrote into our intro. Have you read the
                        excuse note in toasted? I wish you'll be a trendsetter
                        again. Make new intros. Make OTHER Intros.

  Pascal                for making the jump into the scene easy. for working
                        together in the last year..

  Purge                 for writing Ich kann Euch sehen. Damm, I love this
                        one. It rocks.

  Psychic Link          for making great stuff. You're one of my favorites

  Roberto               for knowing a lot about graphics 'n stuff.

  Sagan                 for nice email-chat.

  Scholar               for fucking long telephone-sessions

  Shiva                 for having a good time at mekka '96

  Somebody              for always beeing happy when receiving a letter

  TheDemoScene          for always giving me motivation to waste my time at
                        my computer. Always making me wonder how they did it.,
                        Always pushing the limit. Making me creative.

  Tran&Daredevil        for writing PmodeW (the bug in 1.23 is a good one.
                        It always makes me smile if my computer reboots :)

  Watcom                for writing the worlds best C compiler

  Westwood Studios      for writing Command and Conquer (one of the few games I like to play)













