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 teaching programmers the various techniques used to create tiny demoscene intros.''' While these techniques can be used for other applications (boot sectors, ROM, BIOS and firmware code, etc.), the information presented here is firmly oriented towards the demoscene. Practicality and common sense are sometimes thrown out the window just to shave a single byte. Consider yourself warned.
+
'''SizeCoding.org is a wiki dedicated to teaching programmers the various techniques used to create tiny demoscene intros.''' While these techniques can be used for other applications (boot sectors, ROM, BIOS and firmware code, etc.), the information presented here is firmly oriented towards [https://en.wikipedia.org/wiki/Demoscene the demoscene]. Practicality and common sense are sometimes thrown out the window just to shave a single byte. Consider yourself warned.
  
 
Here is the list of active platforms available on this wiki:
 
Here is the list of active platforms available on this wiki:

Revision as of 04:27, 8 June 2025

Welcome to SizeCoding.org!

SizeCoding.org is a wiki dedicated to teaching programmers the various techniques used to create tiny demoscene intros. While these techniques can be used for other applications (boot sectors, ROM, BIOS and firmware code, etc.), the information presented here is firmly oriented towards the demoscene. Practicality and common sense are sometimes thrown out the window just to shave a single byte. Consider yourself warned.

Here is the list of active platforms available on this wiki:

Oldschool 8-bit / 16-bit platforms:

  • Motorola 68000 - Commodore Amiga, Atari ST/Falcon/Jaguar, Spectrum QL, Sharp X68000, etc.
  • 6502 - Commodore 64, Atari XE/XL, Apple II, Atari Lynx, BBC Micro, etc.
  • Z80 - ZX Spectrum, Amstrad CPC, etc.
  • 6809 - Dragon 32/64, Tandy CoCo, Vectrex, etc.
  • PDP-11 - BK-0010 / BK-0011, etc.


As well as modern platforms like:

  • Fantasy consoles - Fantasy Consoles (TIC-80, PICO-8, MicroW8)
  • Windows - Sizecoding for Windows (1K and 4K intros).
  • Javascript - Sizecoding for Browsers / JavaScript
  • Linux - Sizecoding for Linux.
  • DOS - Sizecoding for X86 / DOS.
  • ARM - ARM-based platforms (RISC OS, Acorn Archimedes, Gameboy Advance, etc.)
  • RISC-V - RISC−V micro-processors.
  • Processing - Sizecoding using Processing
  • ReGIS - VT125, VT230, VT240/241 and more terminal display vector graphics language.
  • Bytebeat - Tiny music created from mathematical expressions.

By "very tiny programs", we usually mean programs that are 1024 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 an executable binary. 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 just 16 bytes [1] or even 8 bytes [2].