Demo (computer programming)
Encyclopedia
A demo is a non-interactive
Interactivity
In the fields of information science, communication, and industrial design, there is debate over the meaning of interactivity. In the "contingency view" of interactivity, there are three levels:...

 multimedia presentation
Multimedia
Multimedia is media and content that uses a combination of different content forms. The term can be used as a noun or as an adjective describing a medium as having multiple content forms. The term is used in contrast to media which use only rudimentary computer display such as text-only, or...

 made within the computer subculture
Subculture
In sociology, anthropology and cultural studies, a subculture is a group of people with a culture which differentiates them from the larger culture to which they belong.- Definition :...

 known as the demoscene
Demoscene
The demoscene is a computer art subculture that specializes in producing demos, which are non-interactive audio-visual presentations that run in real-time on a computer...

. Demogroup
Demogroup
Demogroups are teams of demosceners, who make computer based audio-visual works of art known as demos. Demogroups form a subculture collectively known as the demoscene....

s create demos to demonstrate their abilities in programming, music
Music
Music is an art form whose medium is sound and silence. Its common elements are pitch , rhythm , dynamics, and the sonic qualities of timbre and texture...

, drawing
Drawing
Drawing is a form of visual art that makes use of any number of drawing instruments to mark a two-dimensional medium. Common instruments include graphite pencils, pen and ink, inked brushes, wax color pencils, crayons, charcoal, chalk, pastels, markers, styluses, and various metals .An artist who...

, and 3D modeling
3D modeling
In 3D computer graphics, 3D modeling is the process of developing a mathematical representation of any three-dimensional surface of object via specialized software. The product is called a 3D model...

. The key difference between a classical animation and a demo is that the display of a demo is computed in real time
Real-time computing
In computer science, real-time computing , or reactive computing, is the study of hardware and software systems that are subject to a "real-time constraint"— e.g. operational deadlines from event to system response. Real-time programs must guarantee response within strict time constraints...

, making computing power considerations the biggest challenge. Demos are mostly composed of 3D animations mixed with 2D
2D computer graphics
2D computer graphics is the computer-based generation of digital images—mostly from two-dimensional models and by techniques specific to them...

 effects
Demo effect
Demo effects are computer-based real-time visual effects found in demos created by the demoscene.The main purpose of demo effects in demos is to show off the skills of the programmer...

 and full screen effect
Full screen effect
A full screen effect is a graphics technique that is applied to the entire screen, usually in postprocessing stage...

s.

The boot block demos of the 1980s
1980s
File:1980s decade montage.png|thumb|400px|From left, clockwise: The first Space Shuttle, Columbia, lifted off in 1981; American President Ronald Reagan and Soviet leader Mikhail Gorbachev eased tensions between the two superpowers, leading to the end of the Cold War; The Fall of the Berlin Wall in...

, demos that were created to fit within the small (generally 512 to 4096 bytes) first block of the floppy disk
Floppy disk
A floppy disk is a disk storage medium composed of a disk of thin and flexible magnetic storage medium, sealed in a rectangular plastic carrier lined with fabric that removes dust particles...

 that was to be loaded into RAM, were typically created so that software crackers
Software cracking
Software cracking is the modification of software to remove or disable features which are considered undesirable by the person cracking the software, usually related to protection methods: copy protection, trial/demo version, serial number, hardware key, date checks, CD check or software annoyances...

 could boast of their accomplishment prior to the loading of the game. What began as a type of electronic graffiti
Graffiti
Graffiti is the name for images or lettering scratched, scrawled, painted or marked in any manner on property....

 on cracked software became an art form
Art
Art is the product or process of deliberately arranging items in a way that influences and affects one or more of the senses, emotions, and intellect....

 unto itself. The demoscene
Demoscene
The demoscene is a computer art subculture that specializes in producing demos, which are non-interactive audio-visual presentations that run in real-time on a computer...

 both produced and inspired many techniques used by video games and 3D rendering
3D rendering
3D rendering is the 3D computer graphics process of automatically converting 3D wire frame models into 2D images with 3D photorealistic effects on a computer.-Rendering methods:...

 applications today - for instance, light bloom, among others.

Comparisons

Wired News
Wired News
Wired News is an online technology news website, formerly known as HotWired, that split off from Wired magazine when the magazine was purchased by Condé Nast Publishing in the 1990s. Wired News was owned by Lycos not long after the split, until Condé Nast purchased Wired News on July 11, 2006...

 has frequently described demos as "digital graffiti
Graffiti
Graffiti is the name for images or lettering scratched, scrawled, painted or marked in any manner on property....

", emphasizing the underground nature of the demoscene as well as the way demos are used to proclaim the authoring "gang's" superiority.

Digitalcraft has described demos as "digital origami
Origami
is the traditional Japanese art of paper folding, which started in the 17th century AD at the latest and was popularized outside Japan in the mid-1900s. It has since then evolved into a modern art form...

", referring to the creation of aesthetically pleasing works by overcoming strict technical restrictions.

Platforms

There are demos available for a great variety of computing platforms. Currently, most new demos are native-code
Machine code
Machine code or machine language is a system of impartible instructions executed directly by a computer's central processing unit. Each instruction performs a very specific task, typically either an operation on a unit of data Machine code or machine language is a system of impartible instructions...

 programs designed to run on PCs
IBM PC
The IBM Personal Computer, commonly known as the IBM PC, is the original version and progenitor of the IBM PC compatible hardware platform. It is IBM model number 5150, and was introduced on August 12, 1981...

 under the Microsoft Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 operating system, but demos are still actively being made for many other machines including old and new computers, consoles and mobile devices such as PDA
Personal digital assistant
A personal digital assistant , also known as a palmtop computer, or personal data assistant, is a mobile device that functions as a personal information manager. Current PDAs often have the ability to connect to the Internet...

s, mobile phone
Mobile phone
A mobile phone is a device which can make and receive telephone calls over a radio link whilst moving around a wide geographic area. It does so by connecting to a cellular network provided by a mobile network operator...

s and pocket calculators.

The main historical platforms include Commodore 64
Commodore 64
The Commodore 64 is an 8-bit home computer introduced by Commodore International in January 1982.Volume production started in the spring of 1982, with machines being released on to the market in August at a price of US$595...

, ZX Spectrum
ZX Spectrum
The ZX Spectrum is an 8-bit personal home computer released in the United Kingdom in 1982 by Sinclair Research Ltd...

, Atari ST
Atari ST
The Atari ST is a home/personal computer that was released by Atari Corporation in 1985 and commercially available from that summer into the early 1990s. The "ST" officially stands for "Sixteen/Thirty-two", which referred to the Motorola 68000's 16-bit external bus and 32-bit internals...

 and Commodore Amiga, and demo competitions for these platforms are still relatively common at today's demo parties. There are even demos running on such diverse platforms as VIC-20
Commodore VIC-20
The VIC-20 is an 8-bit home computer which was sold by Commodore Business Machines. The VIC-20 was announced in 1980, roughly three years after Commodore's first personal computer, the PET...

, Commodore Plus/4
Commodore Plus/4
The Commodore Plus/4 was a home computer released by Commodore International in 1984. The "Plus/4" name refers to the four-application ROM resident office suite ; it was billed as "the productivity computer with software built-in"...

, Atari 8-bit, Atari 2600
Atari 2600
The Atari 2600 is a video game console released in October 1977 by Atari, Inc. It is credited with popularizing the use of microprocessor-based hardware and cartridges containing game code, instead of having non-microprocessor dedicated hardware with all games built in...

, Amstrad CPC
Amstrad CPC
The Amstrad CPC is a series of 8-bit home computers produced by Amstrad between 1984 and 1990. It was designed to compete in the mid-1980s home computer market dominated by the Commodore 64 and the Sinclair ZX Spectrum, where it successfully established itself primarily in the United Kingdom,...

, Macintosh, Game Boy
Game Boy
The , is an 8-bit handheld video game device developed and manufactured by Nintendo. It was released in Japan on , in North America in , and in Europe on...

, GP32
GP32
The GP32 is a handheld game console developed by the Korean company Game Park. It was released on November 23, 2001, in South Korea only.- Overview :The GP32 is based on a 133 MHz ARM CPU and 8 MB of RAM...

 and PlayStation
PlayStation
The is a 32-bit fifth-generation video game console first released by Sony Computer Entertainment in Japan on December 3, .The PlayStation was the first of the PlayStation series of consoles and handheld game devices. The PlayStation 2 was the console's successor in 2000...

.

Unlike mainstream retrocomputing
Retrocomputing
Retrocomputing is the use of early computer hardware and software today. Retrocomputing is usually classed as a hobby and recreation rather than a practical application of technology; enthusiasts often collect rare and valuable hardware and software for sentimental reasons...

, the activity of creating demos for old computers is more commonly associated with technical challenge than nostalgic feelings. The accomplishment of new and groundbreaking things is a major driving force on the demoscene, and the limits of various pieces of "obsolete" hardware are still being pushed forward by several groups. Even many PC-oriented democoders do some programming on more restricted platforms in order to get in touch with ways of democoding that are no longer available on modern PCs.

In the 1990s, it was still quite common for different platforms to have more or less separate demoscenes. When users of different platforms participated in a single event, it was considered obvious to split the competition categories for each supported platform (e.g. having separate demo and intro competitions for the PC and the Amiga). Nowadays, the availability of decent emulator
Emulator
In computing, an emulator is hardware or software or both that duplicates the functions of a first computer system in a different second computer system, so that the behavior of the second system closely resembles the behavior of the first system...

s and video captures have brought the different scenes closer together.

Alternative platforms include BASIC
BASIC
BASIC is a family of general-purpose, high-level programming languages whose design philosophy emphasizes ease of use - the name is an acronym from Beginner's All-purpose Symbolic Instruction Code....

 interpreters, Java applets, Java ME
Java Platform, Micro Edition
Java Platform, Micro Edition, or Java ME, is a Java platform designed for embedded systems . Target devices range from industrial controls to mobile phones and set-top boxes...

, Macromedia Flash, JavaScript
JavaScript
JavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles....

, PHP
PHP
PHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...

 and even Microsoft Office
Microsoft Office
Microsoft Office is a non-free commercial office suite of inter-related desktop applications, servers and services for the Microsoft Windows and Mac OS X operating systems, introduced by Microsoft in August 1, 1989. Initially a marketing term for a bundled set of applications, the first version of...

. Software platform restrictions like this, however, have not earned the respect from the majority of demosceners.

History

In the 1980s, a lot of personal computer game
Personal computer game
A PC game, also known as a computer game, is a video game played on a personal computer, rather than on a video game console or arcade machine...

s were released for early equipment like the Commodore 64
Commodore 64
The Commodore 64 is an 8-bit home computer introduced by Commodore International in January 1982.Volume production started in the spring of 1982, with machines being released on to the market in August at a price of US$595...

, ZX Spectrum
ZX Spectrum
The ZX Spectrum is an 8-bit personal home computer released in the United Kingdom in 1982 by Sinclair Research Ltd...

, Atari ST
Atari ST
The Atari ST is a home/personal computer that was released by Atari Corporation in 1985 and commercially available from that summer into the early 1990s. The "ST" officially stands for "Sixteen/Thirty-two", which referred to the Motorola 68000's 16-bit external bus and 32-bit internals...

 and Commodore Amiga, including Copy protection to prevent unauthorised copies. Some cracker groups started to release those games with the protection removed.

Initially, small demos were shown before the actual game, including music, animations and marquees with greetings which should represent the releasing group. The quality of these demos was quickly considered as a figurehead of the group. Intros increased in quality, often touching the limits of the computer's abilities. The cracker groups started a severe competition for being the first in releasing cracked copies of games.

At that moment, levering out copy protection decreased in importance for some artists inside the scene. They felt that programming ambitious Intros was more challenging. While publishers improved their copy protections, the quality of Intros increased as well. Often, the fame of well-known groups was based on their spectacular Intros.

The introduction of 16-bit and 32-bit computer systems like the Amiga and the Atari ST
Atari ST
The Atari ST is a home/personal computer that was released by Atari Corporation in 1985 and commercially available from that summer into the early 1990s. The "ST" officially stands for "Sixteen/Thirty-two", which referred to the Motorola 68000's 16-bit external bus and 32-bit internals...

 resulted in a new distribution of work inside the groups, since the hardware allowed new possibilities. The creation of Intros was divided in programming, music and graphics. Intros were often spread on Disk magazine
Disk magazine
A disk magazine, colloquially known as a diskmag, is a magazine that is distributed in electronic form to be read using computers. These had some popularity in the 1980s and 1990s as periodicals distributed on floppy disk, hence their name...

s.

At the end of the 1980s, pirate copies increasingly became an issue for the software industry. The development of games for certain platforms was stopped entirely due to insuffient profit, some claimed that the cracker scene being responsible for the doom of the Amiga platform. Some Amiga games were released by crackers before they were released commercially. Authorities started to apply pressure on individuals and whole groups in the scene.

This led to the release of stand-alone demos computer art without the illegal distribution of computer games. With the increasing use of the Internet, the separation was complete. Cracked copies of computer games were available online for the masses with the crack attached. Often, greetings were only attached in a text file, while the demoscene separately distributed their work.

Size restrictions

Small file sizes have been an integral feature of certain types of demos from the very beginning, when software crackers
Software cracking
Software cracking is the modification of software to remove or disable features which are considered undesirable by the person cracking the software, usually related to protection methods: copy protection, trial/demo version, serial number, hardware key, date checks, CD check or software annoyances...

 needed to squeeze a crack intro into a very small leftover area of a floppy disk
Floppy disk
A floppy disk is a disk storage medium composed of a disk of thin and flexible magnetic storage medium, sealed in a rectangular plastic carrier lined with fabric that removes dust particles...

 or RAM. It was also important for BBS
Bulletin board system
A Bulletin Board System, or BBS, is a computer system running software that allows users to connect and log in to the system using a terminal program. Once logged in, a user can perform functions such as uploading and downloading software and data, reading news and bulletins, and exchanging...

 advertisement intros to be relatively small, since they were typically included in every file downloaded from the BBS.

Sometimes even the platform itself dictated some size restrictions: the size of the boot sector
Boot sector
A boot sector or boot block is a region of a hard disk, floppy disk, optical disc, or other data storage device that contains machine code to be loaded into random-access memory by a computer system's built-in firmware...

 of a floppy disk
Floppy disk
A floppy disk is a disk storage medium composed of a disk of thin and flexible magnetic storage medium, sealed in a rectangular plastic carrier lined with fabric that removes dust particles...

 (generally 512 to 4096 bytes) was also the maximum size of a boot block demo. The common 64-kilobyte size limit for intros, on the other hand, was the segment size in the 16-bit
16-bit
-16-bit architecture:The HP BPC, introduced in 1975, was the world's first 16-bit microprocessor. Prominent 16-bit processors include the PDP-11, Intel 8086, Intel 80286 and the WDC 65C816. The Intel 8088 was program-compatible with the Intel 8086, and was 16-bit in that its registers were 16...

 x86 architecture
X86 architecture
The term x86 refers to a family of instruction set architectures based on the Intel 8086 CPU. The 8086 was launched in 1978 as a fully 16-bit extension of Intel's 8-bit based 8080 microprocessor and also introduced segmentation to overcome the 16-bit addressing barrier of such designs...

 and also the maximum size of an MS-DOS
MS-DOS
MS-DOS is an operating system for x86-based personal computers. It was the most commonly used member of the DOS family of operating systems, and was the main operating system for IBM PC compatible personal computers during the 1980s to the mid 1990s, until it was gradually superseded by operating...

-based .COM executable
COM file
In many computer operating systems, a COM file is a type of executable file; the name is derived from the file name extension .COM. Originally, the term stood for "Command file", a text file containing commands to be issued to the operating system , on many of the Digital Equipment Corporation mini...

.

In later times, the practical need for very small demos had diminished, but the willingness to compete in squeezing much into little space had not disappeared. It was therefore necessary to introduce artificial size restrictions in order to challenge the authors. In modern demoscene events, there are demo competitions with relatively loose size restrictions, and intro competitions with quite strict limits of 64 kilobytes or less.

Because of the strict size limits, intros show off the programmer's ability to squeeze much into little space, often by generating graphic and sound data rather than just reading it from a datafile. Because of the extremely low size limit, 4K intros used to lack sound, or had extremely low quality music. As technology progresses, however, 4K sound synthesis has become a new frontier in the demoscene. 4K still isn't the lowest border for demosceners: some demoparties organize 1K, 256 byte, 64 byte or even 32 byte intro competitions. While creating a 4K might not require low-level programming knowledge anymore, sub-1K competitions require the demo coder to be skilled in both assembly programming and algorithmic optimization. (For comparison: The size of this section of article is over 2 kilobytes.)

Procedural generation
Procedural generation
Procedural generation is a widely used term in the production of media; it refers to content generated algorithmically rather than manually. Often, this means creating content on the fly rather than prior to distribution...

 techniques developed for small intros have worked their way into mainstream gaming such as Will Wright's recently released game Spore
Spore (2008 video game)
Spore is a multi-genre single-player god game developed by Maxis and designed by Will Wright. The game was released for the Microsoft Windows and Macintosh operating systems in September 2008 as Spore...

.

Demo types

There are several categories into which demos are informally classified. The most common way to classify demos is by platform or size class, but the purpose, content or style of a demo can also matter.

Intros

An intro originally referred to an endless demo where all the action happened on a single graphical screen, often to promote a BBS or a game crack. Nowadays it can refer to any demo written within a strict size limit, such as 4 kB or 64 kB. Also, any demos written for announcement purposes (such as demo party invitation) are typically called intros regardless of the actual size.

Many demosceners reserve the term "demo" exclusively for "non-intros", that is, full-length demos that compete in demo competitions rather than intro competitions. However, the current trend of squeezing a "whole demo" within a strict intro-like size limit has decreased this kind of division.

Most demo parties have at least one intro competition, where the rules are nearly the same as in the main demo competition, with the exception of the size limit of the executable file. The most common intro types are the 64K intro
64k intro
A 64k intro is a demo where the size of the executable file is limited to 65536 bytes. At demo parties there is a category for this kind of demos, where the one that gives the best impression wins....

and the 4K intro, where the size of the executable file is limited to 65536 and 4096 bytes, respectively.

Some intro types defined by their content rather than size may also have their own names. Crack intros or cracktros, attached to a cracked game, are perhaps the oldest category of intros. Invtros (or invitros) are demos or intros which serve as invitations to demo parties. A birthtro (or borntro) can announce a new demo group, while a memtro can announce a new group member, and a jointro can recruit others. For "real life" events, there have been wedtros to announce weddings and even babytros (also called birthtros) to announce the birth of a child of a demo scener.

The term dentro, much less common than demo and intro, can either mean a demo in between an intro and a full-length demo in size, or a short preview of an upcoming demo.

Megademos

A megademo is a demo that consists of >1MB data. A 880K Amiga standard disk plus the packing advantage has a size of 1MB, which qualifies as a megademo. The first Trackmo and megademo was "Antitrax 2010 Megademo" (1987) by Antitrax 2010, on the Amiga computer. Megademos are quite uncommon on today's demoscene.

The term megademo was often used on 8-bit computers, where 1MB of data would be unusual or impossible, to describe a multi-load
Multi-load
Multi-load is a term used to describe multi-part games that were developed for 8-bit computers, such as the ZX Spectrum, Atari and Commodore 64....

 demo in several parts, larger than a typical demo. For example, Shock Megademo on the ZX Spectrum
ZX Spectrum
The ZX Spectrum is an 8-bit personal home computer released in the United Kingdom in 1982 by Sinclair Research Ltd...

 was closer to 100 kilobytes in size.

Trackmos

Since the early 1990s, the predominant demo format has been the trackmo, in which visual effects follow a set timeline, synchronized to a continuous soundtrack, much like a music video. The word "track" also refers to the data tracks of a floppy disk, and therefore, to be called a trackmo in the original sense, the demo should run from a diskette and use a custom-made trackloader to read data from it. The first trackmos included "Enigma" (1991) by Phenomena and "Mental Hangover" (1990) by Scoopex, both on the Amiga.

Classification by platform

There are demos for a great variety of software and hardware platforms, and the platform is still the most important way for classifying demos. For instance, a demo designed to run on PC
IBM PC
The IBM Personal Computer, commonly known as the IBM PC, is the original version and progenitor of the IBM PC compatible hardware platform. It is IBM model number 5150, and was introduced on August 12, 1981...

 is a PC demo, and one written for Amiga is an Amiga demo.

It is also common to combine several related platforms into a larger group which may also have its own combined competitions. For example, a mobile demo is a demo written for a small hand-held device such as a hand-held phone, a PDA or a pocket calculator, whereas an 8-bit demo is made for an 8-bit machine (typically an old home computer). A related term, oldskool demo, may either refer to a demo running on an "oldskool" platform (such as an 8- or 16-bit computer of the 1980s) or to a demo that is "old-fashioned" in its design choices and aesthetics
Aesthetics
Aesthetics is a branch of philosophy dealing with the nature of beauty, art, and taste, and with the creation and appreciation of beauty. It is more scientifically defined as the study of sensory or sensori-emotional values, sometimes called judgments of sentiment and taste...

.

Styles and genres

It is also quite common to classify demos by style and content rather than technology. Story demos, for example, are based on a story line, while ravedemos share the musical and visual aesthetics of rave parties. The most experimental, unusual and controversial demos are often referred to as art demos or abstract demos. Many groups have a distinctive style of their own, and sometimes a demo can be described by referring to a well-known group cultivating a similar style, e.g. mfx
Mfx
Mfx is a Finnish demogroup. They were closely tied with Kewlers and shared members with this group; after Kewlers' farewell to the scene a lot of Kewlers members stayed active in mfx...

 style
or Melon
Melon Dezign
Melon Dezign was an Amiga demo group founded in Denmark on October 21, 1991 by Seen and Paleface . Originally, they were a subgroup of Crystal, where they at first exclusively created intros for cracked games...

 style
.

Demo elements

Demos consist of program code, graphics and music, which are traditionally considered the three main elements of a demo and associated with the coder, graphician and musician, respectively. The overall design is also considered very important, although most groups lack specialized designers.

Program code

Demos are executable programs, and the program code created by the coder is still considered a very important element of a demo. Although there are programs known as demomaker
Demomaker
Demomakers are multimedia authoring programs used in creating real-time rendered non-interactive audiovisual shows known as demos. Demomakers have usually been developed by demoscene groups for their internal use, but many of them are also publicly available with no cost.Excluding the early...

s
or demotools that allow the creation of technically decent demos without coder involvement, demo groups not using any code of their own are still widely frowned upon. It is not customary to release the source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

 for a demo for various reasons although a handful of notable demos have had their source code released.

Programming languages

Earliest demos were typically made in machine code monitor
Machine code monitor
A machine code monitor is software built into or separately available for various computers, allowing the user to enter commands to view and change memory locations on the machine, with options to load and save memory contents from/to secondary storage.Machine code monitors became something of a...

s, the same programs that were used by the crackers to crack copy protections. The next step was the transition from monitors to assemblers.

Higher-level programming languages, such as C and C++, started to gradually take over assembly programming in the demos of the 1990s, when cycle-level timing was no longer considered as important as before and compilers were beginning to be able to produce code comparable to hand-coded assembly. The transition to higher-level languages originated in the PC scene.

Nowadays, demos programmed in pure assembly are rare on the PC (except for the extreme size-restricted categories), but assembly is still widely considered the only relevant choice for democoding on eight-bit platforms such as the Commodore 64.

Visual effects

Snippets of program code performing visual tricks, collectively called effects, have always been an integral part of demos. Effects are often used to show off the programmer's skills, although they're seldom used as stand-alone content elements any more. See demo effect
Demo effect
Demo effects are computer-based real-time visual effects found in demos created by the demoscene.The main purpose of demo effects in demos is to show off the skills of the programmer...

.

Compression

Executable compression
Executable compression
Executable compression is any means of compressing an executable file and combining the compressed data with decompression code into a single executable. When this compressed executable is executed, the decompression code recreates the original code from the compressed code before executing it...

 has been used in demos since the very beginning: pirated software needed to be packed into a compact and easily spreadable format, which often required some kind of compression for both the software itself and the attached intro. Early demos often had multiple parts which were separately decompressed into memory during the short pauses between parts.

The demos and intros for modern platforms are compressed either by general-purpose executable compressors (such as UPX
UPX
UPX, the Ultimate Packer for eXecutables, is a free and open source executable packer supporting a number of file formats from different operating systems.- Compression :...

) or programs specifically designed for the compression of small intros. The decompressor stubs integrated in 4K
4K
4K or 4-K may refer to:* 4K resolution, a digital film resolution standard* A temperature of 4 kelvins* 4000 * 4096 = 4 × 1024* As a category in demoscene compos* 4K disk sector size* Askari Aviation IATA code...

 intros are often well under 200 bytes in size. Some Windows-based 4K intros may even wrap themselves inside DOS-based .COM
COM file
In many computer operating systems, a COM file is a type of executable file; the name is derived from the file name extension .COM. Originally, the term stood for "Command file", a text file containing commands to be issued to the operating system , on many of the Digital Equipment Corporation mini...

executable
Executable
In computing, an executable file causes a computer "to perform indicated tasks according to encoded instructions," as opposed to a data file that must be parsed by a program to be meaningful. These instructions are traditionally machine code instructions for a physical CPU...

s in order to eliminate the header
Header (information technology)
In information technology, header refers to supplemental data placed at the beginning of a block of data being stored or transmitted. In data transmission, the data following the header are sometimes called the payload or body....

 bytes. Decompression facilities provided by the operating system may also be used.

Procedural generation

Many size-restricted intros use procedural techniques to generate content
Procedural generation
Procedural generation is a widely used term in the production of media; it refers to content generated algorithmically rather than manually. Often, this means creating content on the fly rather than prior to distribution...

 such as textures, 3D objects and music. Some of the ideas were pioneered by The Black Lotus in their PC intros such as Jizz and Stash. Nowadays, the achievements of the Farbrausch
Farbrausch
Farbrausch, or Farb-rausch, is a German group of demomakers who made themselves particularly famous in the demoscene in December 2000 with a 64k intro called "fr-08: .the .product". "Farbrausch" literally translates to "rave of color", "color rush" or "color frenzy" in English...

 group are well-known.

Procedural generation is often disguised as compression in order to increase the amusement value. See, for example, the end scrollers of The Product by Farbrausch
Farbrausch
Farbrausch, or Farb-rausch, is a German group of demomakers who made themselves particularly famous in the demoscene in December 2000 with a 64k intro called "fr-08: .the .product". "Farbrausch" literally translates to "rave of color", "color rush" or "color frenzy" in English...

 and Zoom3 by AND.

Video modes

Demos written for older platforms often use hand-tailored video modes rather than standard ones. Some examples:
  • FLI (Flexible Line Interpretation)
    Commodore 64 demos
    The Commodore 64 demos are demonstrations of what can be done to push the limits of the Commodore 64 computer, made by programmers, musicians and artists....

     makes more colorful pictures possible on the C-64 by diminishing the size of the "character chunk". IFLI (Interlaced FLI) swaps between two FLI pictures between screen refreshes, enhancing both resolution and color palette.
  • The display areas in most home computers were surrounded by borders, which could often be removed with special undocumented tricks. The removal of borders made it possible to implement full-screen graphics images and demo effects.
  • Mode X
    Mode X
    Mode X is an alternative video graphics display mode of the IBM VGA graphics hardware that was popularized by Michael Abrash, first published in July 1991 in Dr...

     was commonly used in VGA-based MS-DOS demos, allowing resolutions up to 360x480 in 256 colors along with decent double-buffering. Pseudo-truecolor was an 18-bit color mode based on separate red, green and blue scanlines in Mode X.


Drawing 2D art for newly invented graphics modes often require sceners to first write graphics editors of their own.

Music

Music is considered essential to demos. The lack of music is generally tolerated only in the most restricted intro categories (4096 bytes or less).

The music in the earliest cracktros and demos was often ripped
Ripping
Ripping is the process of copying audio or video content to a hard disk, typically from removable media. The word is used to refer to all forms of media. Despite the name, neither the media nor the data is damaged after extraction....

 from games. However, some of the groups of the time started to create demo music of their own quite early, and some groups, such as Vibrants and Maniacs of Noise, even specialized in music.

"Oldskool" demo songs are typically chiptune
Chiptune
A chiptune, also known as chip music, is synthesized electronic music often produced with the sound chips of vintage computers and video game consoles, as well as with other methods such as emulation. In the early 1980s, personal computers became cheaper and more accessible than they had previously...

s similar to the video game music of the 1980s. The chiptune style was also used in several Amiga and PC intros of the 1990s due to their smaller size and memory limitations.

The use of sample-based trackers greatly affected the styles of demo music, making it possible to closely imitate techno music and many other genres of electronica
Electronica
Electronica includes a wide range of contemporary electronic music designed for a wide range of uses, including foreground listening, some forms of dancing, and background music for other activities; however, unlike electronic dance music, it is not specifically made for dancing...

. Even today, most of demo music is electronic music, even though the use of streaming formats allows the use of virtually any music in the soundtrack.

Many demo groups have written music editors of their own. Well-known examples include the classical PC trackers Scream Tracker
Scream Tracker
Scream Tracker is a tracker . It was created by Psi of Finland's Future Crew It was coded in C and assembly language. The first popular version of Scream Tracker, version 2.2, was published in 1990...

 and FastTracker by Future Crew
Future Crew
Future Crew is a now-defunct Finnish demogroup who created PC demos and software, active mostly between 1992 and 1994.-History:The group was founded in 1986 by PSI as a Commodore 64 group, before moving to the PC demoscene in 1988; other members included, over time, Trug, Wildfire, Pixel, ICE,...

 and Triton
Triton (demogroup)
- History :Triton's first demo, Crystal Dream, was released in the summer of 1992 and won the PC demo competition at the Hackerence V demo party. Their second and last demo, Crystal Dream 2, was released June 1993 and won the demo competition at The Computer Crossroads 1993 party in Gothenburg...

 respectively, and the modular synthesizer Buzz
Jeskola Buzz
Jeskola Buzz is a freeware modular software music studio environment designed to run on Microsoft Windows via Microsoft .NET. It is centered around a modular plugin-based machine view and a multiple pattern sequencer tracker .Buzz consists of a plugin architecture that allows the audio to be routed...

 by Jeskola. Nowadays, most demo musicians use music sequencer
Music sequencer
The music sequencer is a device or computer software to record, edit, play back the music, by handling note and performance information in several forms, typically :...

s and other professional tools for creating demo music.

In most demos, the music is played back by a stock player routine such as a module player
Module file
Module files are a family of music file formats originating from the MOD file format on Amiga systems used in late 1980s...

, MP3
MP3
MPEG-1 or MPEG-2 Audio Layer III, more commonly referred to as MP3, is a patented digital audio encoding format using a form of lossy data compression...

/Vorbis
Vorbis
Vorbis is a free software / open source project headed by the Xiph.Org Foundation . The project produces an audio format specification and software implementation for lossy audio compression...

 player or a routine specific to a music editor. Specialized players are also rather common, particularly in size-restricted intros. Modern 4K and 64K intros often contain a software synthesizer
Software synthesizer
A software synthesizer, also known as a softsynth is a computer program or plug-in for digital audio generation. Computer software which can create sounds or music is not new, but advances in processing speed are allowing softsynths to accomplish the same tasks that previously required dedicated...

 which may even have been written with a specific song in mind.

Graphics

In demoscene parlance, graphics or GFX typically only includes the work of the graphician - that is, still images, textures, 3D scenes, 3D objects and color schemes. Effects and other code-related visualization is usually not regarded as graphics.

The traditional form of graphics art in demos is pixel art
Pixel art
Pixel art is a form of digital art, created through the use of raster graphics software, where images are edited on the pixel level. Graphics in most old computer and video games, graphing calculator games, and many mobile phone games are mostly pixel art.- History :The term pixel art was first...

, which has been made with dedicated editors or commercial graphics software such as Deluxe Paint
Deluxe Paint
Deluxe Paint is a bitmap graphics editor series originally created by Dan Silva for Electronic Arts .The original version was created for the Commodore Amiga and was released in November 1985...

. The still images in modern PC demos are usually made with industry-standard software such as Adobe Photoshop
Adobe Photoshop
Adobe Photoshop is a graphics editing program developed and published by Adobe Systems Incorporated.Adobe's 2003 "Creative Suite" rebranding led to Adobe Photoshop 8's renaming to Adobe Photoshop CS. Thus, Adobe Photoshop CS5 is the 12th major release of Adobe Photoshop...

.

The technical skills of an artist were often stressed far more than originality or imagination, which gave birth to many graphics-related clichés in the demoscene art of the 1990s. Sci-fi and fantasy themes with dragons, swords and spaceships were very common, as were images of women, both clothed and naked.

The earliest 3D objects and scenes in demos were often very simplistic and were constructed by the coder, often without any modeler-like software whatsoever. Nowadays, many demos have several complex 3D scenes but lack still art entirely.

In the mid-1990s, many groups had advanced 3D routines capable of dealing with complex objects but lacked members skilled or interested in 3D modeling. This lead many demos to only have simple procedural objects such as tori
Torus
In geometry, a torus is a surface of revolution generated by revolving a circle in three dimensional space about an axis coplanar with the circle...

 or example file objects such as ducks and teapot
Utah teapot
The Utah teapot or Newell teapot is a 3D computer model which has become a standard reference object in the computer graphics community. It is a mathematical model of an ordinary teapot of fairly simple shape, which appears solid, cylindrical and partially convex...

s. The use of these stock objects is the origin of a lot of insider humor within the demoscene.

Design

Design, in its broadest sense, refers to everything that combines the separate elements of a demo into a consistent whole, down from the low-level synchronization of soundtrack and visuals to the overall choices in concept, structure and narrative.

Melon Dezign
Melon Dezign
Melon Dezign was an Amiga demo group founded in Denmark on October 21, 1991 by Seen and Paleface . Originally, they were a subgroup of Crystal, where they at first exclusively created intros for cracked games...

, active on the Amiga in the early 1990s, is known as one of the first groups that paid a considerable attention to design aspects.

Traditional recurring elements

While the demoscene itself is already a long-running phenomenon, to this day, a lot of demos have common elements which are reiterated in most modern demos as well.

Greetings

It is traditionally standard in demos for the creators to send greeting
Greeting
Greeting is an act of communication in which human beings intentionally make their presence known to each other, to show attention to, and to suggest a type of relationship or social status between individuals or groups of people coming in contact with each other...

s (or greetz) and well-wishes to other demoscene groups, typically of the same platform. While these were often used in scrollers in the early days, in current, graphically more complex demos, greets are usually presented through a demo effect, such as mapping the group names onto objects or using particle systems to fill the letters of the groupname. Being greeted in a demo is usually considered an honor, especially when the demo is high-quality. While there's no rule on whom one should greet, tradition dictates that groups send greetings to other groups who they consider their friends. Other groups, usually newcomers to the demoscene who don't have sufficient contacts, prefer to greet groups whose works they consider influential or high-quality. Some groups occasionally send greetings to individual people.

Greetings sometimes include "fuckings", in which the creators can explain their dismay about another group's productions or behavior. Fuckings were more common in the early days of the demoscene, but are quite rare nowadays, and mostly used for comedic effect only. Perhaps the most famous "fucking" in a demo appeared in Nexus 7 by Andromeda, in which a voxel
Voxel
A voxel is a volume element, representing a value on a regular grid in three dimensional space. This is analogous to a pixel, which represents 2D image data in a bitmap...

 scroller said "The infinite Andromeda sends fuckings to -Lord Helmet- of Spaceballs for being a pathetic figure and a pityful liar!"

Credits

It is very important in a demo to display a list of names of people who made the demo. These are also usually presented through a graphical effect, but some groups prefer a cinematic approach and present the credits during the opening scene as movie-like overlays, or have them as an end scroller. Credits in demos, however, rarely feature the creators' real names, opting to use for their handles instead.

Memelike elements

There are a few recurring elements in demos, which - sometimes due to the technicalities of demomaking, but sometimes because of a certain trend in the scene - tend to reappear over the years.
  • When 3D was first introduced to the demoscene, good 3D artists were so few and far between that people were somewhat forced to use existing stock 3D models found bundled to 3D software. This caused a recurring phenomenon of ducks, teapots
    Utah teapot
    The Utah teapot or Newell teapot is a 3D computer model which has become a standard reference object in the computer graphics community. It is a mathematical model of an ordinary teapot of fairly simple shape, which appears solid, cylindrical and partially convex...

     and faces (3D Studio
    3d studio
    3d studio can refer to:* A studio location where 3D work is created* 3ds Max, an animation software package previously named 3D Studio Max* Any 3D animation studio such as 3ds Max, Blender 3D, Cinema 4D, Lightwave, Maya, Houdini, or XSI...

    ), or dolphins (Lightwave
    LightWave
    LightWave 3D is a high end computer graphics program developed by NewTek. The latest release of LightWave runs on Windows and Mac OS X.- Overview:...

    ) in demos. While nowadays graphics artists are using 3D on a very common basis, these objects sometimes still appear as an amusing retro-reference in demos.
  • With the introduction of the Internet, demoscene forums (most prominently Pouët) have spawned a considerable number of injokes and insider humor, which eventually appear in demos.

Specific platforms

  • Amiga demos
    Amiga demos
    Amiga demos are demos created for the Commodore Amiga home computer.A "demo" is a demonstration of the multimedia capabilities of a computer . There was intense rivalry during the 1990s among the best programmers, graphic artists and computer musicians to continually outdo each other's demos...

  • Apple IIgs demos
    Apple IIgs demos
    The Apple IIgs demoscene goes back to the days of the original Apple II series in the 1980s, when software crackers would put "signature screens" at the beginnings of games of which they had broken the copy protection....

  • Atari demos
    Atari demos
    Atari demos generally refer to demos created for the Atari ST home computer.- History :The Atari Demo Scene can probably be traced back to a group called "The Exceptions" who created a series of music demos in 1987. In 1988 the Atari Demo scene gathered further momentum with the release of the...

     (Atari ST)
  • Commodore 64 demos
    Commodore 64 demos
    The Commodore 64 demos are demonstrations of what can be done to push the limits of the Commodore 64 computer, made by programmers, musicians and artists....

  • Commodore VIC-20 demos
    Commodore VIC-20 demos
    Commodore VIC-20 demos are demos written for the Commodore VIC-20 home computer.On many classic 8-bit platforms, such as the Commodore 64 and the ZX Spectrum, the organized activity of democoding was started by crack intros, a side product of software cracking...

  • Text mode demos
    Text mode demos
    Text mode demos are real-time calculated computer animations which make use of the native text graphic mode common on the IBM PC compatibles. The text mode demo scene is one of many different facets of the demoscene....

  • ZX Spectrum demos
    ZX Spectrum demos
    ZX Spectrum demos are demos made for the ZX Spectrum and compatible computers. The demo scene on the Spectrum can probably be traced back to Castor Cracking Group, The Lords and a few other groups and individuals back in 1986...

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK