All Topics  
Demo (computer programming)

 
Demo (computer Programming)

   Email Print
   Bookmark   Link






 

Demo (computer programming)



 
 
A demo is a non-interactive multimedia presentation 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....
 known as the demoscene
Demoscene

The demoscene is a computer art subculture that specializes in producing Demo , which are non-interactive audio-visual presentations that run in Real-time computing on a computer....
. Demogroup
Demogroup

Demogroups are teams of demosceners, who make computer based audio-visual works of art known as Demo . 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 media is sound organized in time. Common elements of music are pitch , rhythm , dynamics , and the sonic qualities of timbre and texture ....
, drawing
Drawing

Drawing is a 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, charcoals, chalk, pastels, marker pens, stylus, or various metals like silverpoint....
, and 3D modeling
3D modeling

In 3D computer graphics, 3D modeling is the process of developing a Mathematics, wire frame model representation of any Three-dimensional space object via 3d computer graphics software....
. 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 is the study of Computer hardware and computer software systems that are subject to a "real-time constraint"?i.e., operational deadlines from event to system response....
, 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 Demo 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. These effects are often used in real-time applications such as: Video games, computer games, console games, or demoscene Demo ....
s.

The boot block demos of the 1980s, 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 data storage medium that is composed of a disk of thin, flexible magnetic storage medium encased in a square or rectangle plastic shell....
 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 protection methods: copy protection, trial/demo version, serial number, hardware key, date checks, No-CD crack or software annoyances like nag screens and adware....
 could boast of their accomplishment prior to the loading of the game.






Discussion
Ask a question about 'Demo (computer programming)'
Start a new discussion about 'Demo (computer programming)'
Answer questions from other users
Full Discussion Forum



Encyclopedia


A demo is a non-interactive multimedia presentation 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....
 known as the demoscene
Demoscene

The demoscene is a computer art subculture that specializes in producing Demo , which are non-interactive audio-visual presentations that run in Real-time computing on a computer....
. Demogroup
Demogroup

Demogroups are teams of demosceners, who make computer based audio-visual works of art known as Demo . 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 media is sound organized in time. Common elements of music are pitch , rhythm , dynamics , and the sonic qualities of timbre and texture ....
, drawing
Drawing

Drawing is a 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, charcoals, chalk, pastels, marker pens, stylus, or various metals like silverpoint....
, and 3D modeling
3D modeling

In 3D computer graphics, 3D modeling is the process of developing a Mathematics, wire frame model representation of any Three-dimensional space object via 3d computer graphics software....
. 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 is the study of Computer hardware and computer software systems that are subject to a "real-time constraint"?i.e., operational deadlines from event to system response....
, 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 Demo 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. These effects are often used in real-time applications such as: Video games, computer games, console games, or demoscene Demo ....
s.

The boot block demos of the 1980s, 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 data storage medium that is composed of a disk of thin, flexible magnetic storage medium encased in a square or rectangle plastic shell....
 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 protection methods: copy protection, trial/demo version, serial number, hardware key, date checks, No-CD crack or software annoyances like nag screens and adware....
 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. Graffiti is sometimes regarded as a form of art and other times regarded as unsightly damage or unwanted....
 on cracked software became an art form unto itself.

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....
 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. Graffiti is sometimes regarded as a form of art and other times regarded as unsightly damage or unwanted....
", emphasizing the underground nature of the demoscene as well as the way demos are used to proclaim the authoring "gang's" superiority.

has described demos as "digital origami
Origami

is the traditional Japanese art of paper folding. The goal of this art is to create a representation of an object using geometric folds and crease patterns preferably without the use of gluing or cutting the paper, and using only one piece of paper....
", referring to the creation of aesthetically pleasing works by overcoming strict technical restrictions.

Platforms

There are demos available for a great variety of platforms. Currently, most new demos are native-code programs 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 ....
 under the Microsoft Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
 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 is a handheld computer, also known as a palmtop computer. Newer PDAs also have both color screens and audio capabilities, enabling them to be used as mobile phones, , web browsers, or portable media players....
s, mobile phone
Mobile phone

A mobile phone is a long-range, electronic device used for mobile voice or data communication over a network of specialized base stations known as cell sites....
s and pocket calculators.

The most important historical platforms include Commodore 64
Commodore 64

The Commodore 64 is an 8-bit home computer released by Commodore International in August, 1982, at a price of United States dollar595. Preceded by the Commodore VIC-20 and Commodore MAX Machine, the C64 features 64 kilobytes of Random-access memory with sound and graphics performance that were superior to IBM-compatible computers of tha...
, ZX Spectrum
ZX Spectrum

The Sinclair ZX Spectrum is an 8-bit personal home computer released in the United Kingdom in 1982 by Sinclair Research Ltd. Referred to during development as the ZX81 Colour and ZX82, the machine was launched as the ZX Spectrum by Sinclair to highlight the machine's colour display, compared with the black-and-white of its predec...
, Atari ST
Atari ST

The Atari ST is a home computer/personal computer that was commercially available from 1985 to the early 1990s. It was released by Atari Corporation in 1985....
 and Commodore Amiga, and demo competitions for these platforms are still relatively common on 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 International. The VIC-20 was announced in 1980, roughly three years after Commodore's first personal computer, the Commodore 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 read-only memory 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. It is credited with popularizing the use of microprocessor-based hardware and cartridge containing game code, instead of having non-microprocessor dedicated console hardware with all games built in....
, Amstrad CPC
Amstrad CPC

The Amstrad CPC is a series of 8-bit home computers produced by Amstrad during the 1980s and early 1990s. "CPC" stands for 'Colour Personal Computer', although it was possible to purchase a CPC with a Green screen display as well as with the standard colour screen ....
, Macintosh, Game Boy
Game Boy

The is an 8-bit handheld game console developed and manufactured by Nintendo. It was released in Japan on , in North America in August , and in Europe in ....
, GP32
GP32

The GP32 is a hand held console built by the Korean company Game Park....
 and PlayStation
PlayStation

The PlayStation is a 32-bit history of video game consoles video game console released by Sony Computer Entertainment in December .The PlayStation was the first of the ubiquitous PlayStation ....
.

Unlike mainstream retrocomputing
Retrocomputing

Retrocomputing is a term used to describe the use of early computer computer hardware and computer 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 nostalgia purposes....
, 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

An emulator duplicates the functions of one system using a different system, so that the second system behaves like the first system. This focus on exact reproduction of external behavior is in contrast to some other forms of computer simulation, which can concern an abstract model of the system being simulated....
s and video captures have brought the different scenes closer together.

Alternative platforms include BASIC
BASIC

In computer programming, BASIC is a family of high-level programming languages. The Dartmouth BASIC was designed in 1964 by John George Kemeny and Thomas Eugene Kurtz at Dartmouth College in New Hampshire, United States to provide computer access to non-science students....
 interpreters, Java applets, Java ME
Java Platform, Micro Edition

In computing, the Java Platform, Micro Edition or Java ME is a specification of a subset of the Java platform aimed at providing a certified collection of Java Application Programming Interfaces for the development of software for tiny, small and resource-constrained devices....
, Macromedia Flash, JavaScript
JavaScript

JavaScript is a scripting language widely used for client-side web development. It was the originating Programming language dialect of the ECMAScript standard....
, PHP
PHP

PHP is a scripting language originally designed for producing dynamic web pages. It has evolved to include a command line interface capability and can be used in Standalone software Graphical user interface....
 and even Microsoft Office
Microsoft Office

Microsoft Office is a popular set of interrelated desktop applications, servers and services. Microsoft Office is collectively referred to as an office suite, for the Microsoft Windows and Mac OS X operating systems....
. Software platform restrictions like this, however, have not earned the respect from the majority of demosceners.

History

In the 1980s, a lot of games were released for early computers like Commodore 64
Commodore 64

The Commodore 64 is an 8-bit home computer released by Commodore International in August, 1982, at a price of United States dollar595. Preceded by the Commodore VIC-20 and Commodore MAX Machine, the C64 features 64 kilobytes of Random-access memory with sound and graphics performance that were superior to IBM-compatible computers of tha...
, ZX Spectrum
ZX Spectrum

The Sinclair ZX Spectrum is an 8-bit personal home computer released in the United Kingdom in 1982 by Sinclair Research Ltd. Referred to during development as the ZX81 Colour and ZX82, the machine was launched as the ZX Spectrum by Sinclair to highlight the machine's colour display, compared with the black-and-white of its predec...
, Atari ST
Atari ST

The Atari ST is a home computer/personal computer that was commercially available from 1985 to the early 1990s. It was released by Atari Corporation in 1985....
 and Commodore Amiga, including Copy protection
Copy protection

Copy protection, also known as content protection, copy prevention, or copy restriction, is a technology for preventing the reproduction of copyrighted software, movies, music, and other media....
 to prevent illegal copies. Some cracker groups started to release those games illegally 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 to be the main point 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 often based on their spectacular Intros.

The introduction of 16-bit computer systems like the Amiga and the Atari ST
Atari ST

The Atari ST is a home computer/personal computer that was commercially available from 1985 to the early 1990s. It was released by Atari Corporation in 1985....
 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, and also known by the portmanteau magazette , is a magazine that is distributed in electronics form to be read using computers....
s.

At the end of the 1980s, pirate copies increased to become a serious issue for software industry. The development of games for certain platforms was stopped entirely due to insuffient profit, some claimed the cracker scene being responsible for the doom of the Amiga plaform. Some Amiga games were released illegaly before they were released. Authorities started 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. Illegal 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 protection methods: copy protection, trial/demo version, serial number, hardware key, date checks, No-CD crack or software annoyances like nag screens and adware....
 needed to squeeze a crack intro into a very small leftover area of a floppy disk
Floppy disk

A floppy disk is a data storage medium that is composed of a disk of thin, flexible magnetic storage medium encased in a square or rectangle plastic shell....
 or RAM. It was also important for BBS
Bulletin board system

File:Monochrome-bbs.pngA Bulletin Board System, or BBS, is a computer system running list of BBS software that allows User to Telecommunication circuit and Logging to the system using a terminal program....
 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 is a disk_sector of a hard disk, floppy disk, or similar data storage device that contains code for booting computer programs stored in other parts of the disk....
 of a floppy disk
Floppy disk

A floppy disk is a data storage medium that is composed of a disk of thin, flexible magnetic storage medium encased in a square or rectangle plastic shell....
 (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 architectureThe HP 2100#Descendants and variants , 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....
 x86 architecture
X86 architecture

The generic term x86 refers to the most commercially successful instruction set architecture in the history of personal computing. It derived from the model numbers, ending in "86", of the first few processor generations Backward compatibility with the original Intel 8086....
 and also the maximum size of an MS-DOS
MS-DOS

MS-DOS is an operating system commercialized by Microsoft. It was the most commonly used member of the DOS family of operating systems and was the main operating system for personal computers during the 1980s....
-based .COM executable
COM file

In many computer operating systems, a COM file is a type of executable; 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 minicomputer and mainframe operating systems going...
.

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 or even 64 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, indicating the possibility to create 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 genre massive single-player online metaverse video game developed by Maxis and game design by Will Wright . It allows a player to control the development of a species from its beginnings as a unicellular organism, through development as an intelligent and Social animal creature, to interstellar exploration as a spaceflight cult...
.

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 and Commodore 64.Due to the limited memory of these computers, games were initially fairly simple, in order to keep the size of the program code as small as possible, as games would be loaded into memory in their entirety....
 demo in several parts, larger than a typical demo. For example, Shock Megademo on the ZX Spectrum
ZX Spectrum

The Sinclair ZX Spectrum is an 8-bit personal home computer released in the United Kingdom in 1982 by Sinclair Research Ltd. Referred to during development as the ZX81 Colour and ZX82, the machine was launched as the ZX Spectrum by Sinclair to highlight the machine's colour display, compared with the black-and-white of its predec...
 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 ....
 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 or esthetics is commonly known as the study of senses 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. Storydemos, 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 Finland demoscene. 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 demoscene 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 Demo #Intross for software cracking 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 demo . Demomakers have usually been developed by demoscene demogroup for their internal use, but many of them are also publicly available with no cost....
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 any collection of statements or declarations written in some human-readable computer programming language....
 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 address on the machine, with options to load and save memory contents from/to secondary storage....
s, the same programs that were used by the crackers to crack copy protections. The next step was the transition from monitors to assemblers
Assembly language

An assembly language is a low-level language for programming computers. It implements a symbolic representation of the numeric machine codes and other constants needed to program a particular CPU architecture....
.

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 Demo 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 Data compression an executable file and combining the compressed data with the decompression code it needs into a single executable....
 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 compression supporting a number of file formats from different operating systems....
) or programs specifically designed for the compression of small intros. The decompressor stubs integrated in 4K
4K

4K has several uses including:* A temperature of 4 kelvin* 4000_, the number* As a category in demoscene compos* 4K digital film standard resolutions, see List of common resolutions#Television.2Fmovies....
 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; 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 minicomputer and mainframe operating systems going...
executable
Executable

In computing, an executable causes a computer "to perform indicated tasks according to encoded instruction ," as opposed to a file that only contains data ....
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, indicating the possibility to create 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
The Black Lotus

The Black Lotus is a demogroup which was founded in 1989 by two Sweden sceners who went by the handles Dickhead and Rubberduck. The group expanded itself into two major sections — the Swedish section mainly produced releases on the Amiga, while the Netherlands section focused on the IBM PC....
 in their PC intros such as Jizz and Stash. Nowadays, the achievements of the Farbrausch
Farbrausch

Farbrausch, or Farb-rausch, is a Germany group of demogroup who made themselves particularly famous in the demoscene in December 2000 with a 64kilobyte intro called "fr-08: .the .product"....
 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 Germany group of demogroup who made themselves particularly famous in the demoscene in December 2000 with a 64kilobyte intro called "fr-08: .the .product"....
 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) 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 International Business Machines 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 or streaming media. Originally, the term is an acronym for "raster image processor" and referred specifically to ....
 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, or chip music, is music written in sound formats where all the sounds are synthesized in realtime by a computer or video game console sound chip, instead of using sample-based synthesis....
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 the lack of need for large and storage-consuming samples.

The use of sample-based tracker
Tracker

Tracker is the generic term for a class of software music sequencers which, in their purest form, allow the user to arrange sound samples stepwise on a timeline across several Monaural Channel ....
s 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 versatile multi-track digital sequencer created by Psi of Finland's Future Crew , legendary in the PC demoscene. It was coded in C and assembly language....
 and FastTracker by Future Crew
Future Crew

Future Crew is a now-defunct group of Finland computer coders and artists who created PC demo and software, active mostly between 1992 and 1994....
 and Triton
Triton (demogroup)

Triton was a demo group active in the PC demoscene from 1992 to about 1996....
 respectively, and the modular synthesizer Buzz
Jeskola Buzz

Jeskola Buzz is a proprietary software modular software music studio environment centered around a modular plugin-based machine view and a multiple pattern sequencer tracker ....
 by Jeskola. Nowadays, most demo musicians use music sequencer
Music sequencer

A music sequencer is software or hardware designed to create and manage computer-generated music.Originally, music sequencers did not include the ability to record audio....
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 related to the MOD file format on Amiga systems.Module files store several patterns or pages of music data in a form similar to that of a spreadsheet....
, MP3
MP3

MPEG-1 Audio Layer 3, more commonly referred to as MP3, is a digital audio Encoder format using a form of lossy data compression. It is a common audio format for consumer audio storage, as well as a de facto standard encoding for the transfer and playback of music on digital audio players....
/Vorbis
Vorbis

Vorbis is a free software and open source software, Lossy compression audio codec project headed by the Xiph.Org Foundation and intended to serve as a replacement for MP3....
 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 or virtual instrument is a computer program 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 as dedicated hardware....
 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....
, which has been made with dedicated editors or commercial graphics software such as Deluxe Paint
Deluxe Paint

Deluxe Paint is a bitmap graphics editor 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, or simply Photoshop, is a Graphics software developed and published by Adobe Systems. It is the current and primary Market dominance for commercial Raster graphics and manipulation, and is the flagship product of Adobe Systems....
.

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, naked or otherwise.

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, which does not touch the circle....
 or example file objects such as ducks and teapot
Utah teapot

The Utah teapot or Newell teapot is a 3D computer graphics model which has become a standard reference object in the computer graphics community....
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 demoscene 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 Demo #Intross for software cracking games....
, active on the Amiga in the early 1990s, is known as one of the first groups that paid a considerable attention on 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

Demogreetings
It is traditionally standard in demos for the creators to send greeting
Greeting

Greeting is a way for human beings to intentionally communicate awareness of each other's presence, 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 "fuckings" 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 3D computer graphics space. This is analogous to a pixel, which represents 2D computer graphics image data....
 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 graphics model which has become a standard reference object in the computer graphics community....
     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 Softimage XSI...
    ), or dolphins (Lightwave
    LightWave

    LightWave 3D is a high end computer graphics program developed by NewTek. The latest release of LightWave runs on Microsoft Windows and Mac OS X....
    ) 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
    Pouët

    Pou?t, or pouet.net, is one of the largest comprehensive on-line directories for the demoscene today. The site was established in 2000 by Laurent ?analogue? Raufaste and 2008 is maintained by the admin staff of Scene.org....
    ) have spawned a considerable amount of injokes and insider humor, which eventually appear in demos.


Specific platforms


  • Amiga demos
    Amiga demos

    Amiga demos are Demo s created for the Commodore International Amiga home computer.A "demo" is a demonstration of the multimedia capabilities of a computer ....
  • 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 ST)
  • Commodore 64 demos
    Commodore 64 demos

    [Image:Game Music 4.png|thumb|300px|Game Music IV on the Commodore 64 by Charles Deenen Image:CamelPark part9 bobbyborder1.pngImage:CamelPark_part9_bobbyborder11.png...
  • Commodore VIC-20 demos
    Commodore VIC-20 demos

    Commodore VIC-20 demos are demo 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....
  • ZX Spectrum demos
    ZX Spectrum demos

    ZX Spectrum demos are demo 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....
  • 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....


See also

  • Demoscene
    Demoscene

    The demoscene is a computer art subculture that specializes in producing Demo , which are non-interactive audio-visual presentations that run in Real-time computing on a computer....
  • List of demos by year