Difference between revisions of "Main Page"

From SizeCoding
Jump to: navigation, search
Line 1: Line 1:
 
== Welcome to SizeCoding.org! ==
 
== Welcome to SizeCoding.org! ==
  
'''SizeCoding.org is a wiki dedicated to the art of creating very tiny programs for the 80x86 family of CPUs.'''  By "very tiny programs", we mean programs that are '''256 bytes or less in size''', typically created by members of the demoscene as a show of programming skill.  The size of these tiny programs is measured by their total size in opcode bytes, and are usually presented as executable .COM files to be run in pure DOS, a DOS VM running inside another operating system, or an emulator that can run DOS such as DOSBox.  Despite their tiny size, these programs are able to produce amazing graphical displays, playable games, and sometimes music.  There are even some surprisingly effective programs in under 16 bytes, such as a maze generator in 10 bytes, and an "Enter the Matrix" screensaver in only 8 bytes.  
+
'''SizeCoding.org is a wiki dedicated to the art of creating very tiny programs for the 80x86 family of CPUs.'''  By "very tiny programs", we mean programs that are '''256 bytes or less in size''', typically created by members of the [https://en.wikipedia.org/wiki/Demoscene demoscene] as a show of programming skill.  The size of these tiny programs is measured by their total size in opcode bytes, and are usually presented as executable .COM files to be run in pure DOS, a DOS VM running inside another operating system, or an emulator that can run DOS such as DOSBox.  Despite their tiny size, these programs are able to produce amazing graphical displays, playable games, and sometimes music.  There are even some surprisingly effective programs in under 16 bytes, such as [https://trixter.oldskool.org/2012/12/17/maze-generation-in-thirteen-bytes/ a maze generator in 10 bytes], and an "Enter the Matrix" screensaver in only 8 bytes.  
  
The intent of this wiki is to teach x86 assembler programmers the various tricks and techniques used to create tiny demoscene intros.  While these techniques can be used for other applications (boot sectors, BIOS and firmware code, etc.), the information presented here is firmly oriented towards the demoscene.
+
The intent of this wiki is to teach x86 assembler programmers the various techniques used to create tiny demoscene intros.  While these techniques can be used for other applications (boot sectors, BIOS and firmware code, etc.), the information presented here is firmly oriented towards the demoscene.
  
 
This wiki is divided into the following major sections:
 
This wiki is divided into the following major sections:
Line 11: Line 11:
 
:[[Case Studies]] - Analysis of existing award-winning tiny programs, with comments on what choices were made and why.
 
:[[Case Studies]] - Analysis of existing award-winning tiny programs, with comments on what choices were made and why.
 
:[[Resources|Additional Resources]] - Discussion threads, competitions, repositories, and other external references that can aid you in your quest.
 
:[[Resources|Additional Resources]] - Discussion threads, competitions, repositories, and other external references that can aid you in your quest.
 
This wiki is still under construction, and is not yet open for business.
 

Revision as of 02:29, 7 August 2016

Welcome to SizeCoding.org!

SizeCoding.org is a wiki dedicated to the art of creating very tiny programs for the 80x86 family of CPUs. By "very tiny programs", we mean programs that are 256 bytes or less in size, typically created by members of the demoscene as a show of programming skill. The size of these tiny programs is measured by their total size in opcode bytes, and are usually presented as executable .COM files to be run in pure DOS, a DOS VM running inside another operating system, or an emulator that can run DOS such as DOSBox. Despite their tiny size, these programs are able to produce amazing graphical displays, playable games, and sometimes music. There are even some surprisingly effective programs in under 16 bytes, such as a maze generator in 10 bytes, and an "Enter the Matrix" screensaver in only 8 bytes.

The intent of this wiki is to teach x86 assembler programmers the various techniques used to create tiny demoscene intros. While these techniques can be used for other applications (boot sectors, BIOS and firmware code, etc.), the information presented here is firmly oriented towards the demoscene.

This wiki is divided into the following major sections:

Getting Started - What do you need to know before starting your first tinyprog?
Tips, Tricks, and Techniques - The meat of the wiki. Lists of small opcodes, default environment settings, size optimization basics, and a ton of random tips.
Case Studies - Analysis of existing award-winning tiny programs, with comments on what choices were made and why.
Additional Resources - Discussion threads, competitions, repositories, and other external references that can aid you in your quest.