Author:
Award presentation:
Watch the Our Favorite Universe YouTube show for this entry:
To build:
make all
To use:
./prog columns lines
Try:
./try.sh
Judges’ remarks:
This program is definitely bigger on the inside than the outside. Can you find out where the volume of output comes from in the prog.c source code?
A fun challenge
Please checkout the fun challenge(s) for this winning entry.
Author’s remarks:
1963 Doctor Who title sequence
This is an ASCII animation resembling the 1963 Doctor Who title sequence.
How to run
./prog width height
The first argument after “./prog” should a positive integer that is smaller than your terminal width (in characters), and the next argument being positive integer smaller than your terminal height (in characters). Please do not enter a negative number.
It’s recommended that the width to be at least 120 characters and height to be at least 30 characters for a clearer animation. Also, the program assumes the terminal to be a “black background” and “white text” one, please flip the ASCII brightness map if you are using a terminal with a “light color background. and”dark color text”. Lastly, the terminal must support ANSI escape codes to work properly.
Overview
From 1963 to 1973, the title sequences in the BBC Sci-Fi show Doctor Who was made using a technique called “HowlRound” effect, which is done by pointing a camera to its output. This program simulates the “HowlRound” effect by first scanning a portion of the screen buffer, enlarging it and storing it into a temporary buffer same size as the screen buffer, then copy everything back into the screen buffer, resulting in a continuous video feedback.
Obfuscations and Features
- Box shaped formatting (possibly caused by a broken chameleon circuit)
- “while loop” instead of “for loop” for output and scanning buffers
- “for loop” instead of “while loop” for the animation’s main loop
- Uninitialized variable instead of
time(0)forsrand(t)seed (time(0)unusable during time travel flight) - “prog.c” does not appear bigger on the inside upon opening it
Warnings
- Flickering on the screen may not be suitable for people with photosensitive epilepsy
Portability
This code is tested on : - Ubuntu 24.04.3 LTS on Windows 10 x86_64 - Debian GNU/Linux 12 (BookWorm) x86_64
This code is NOT tested on : - TT capsule computer system
Inventory for 2025/jingp49
Primary files
- prog.c - entry source code
- Makefile - entry Makefile
- prog.orig.c - original source code
- try.sh - script to try entry
Secondary files
- 2025_jingp49.tar.bz2 - download entry tarball
- README.md - markdown source for this web page
- .entry.json - entry summary and manifest in JSON
- .gitignore - list of files that should not be committed under git
- .path - directory path from top level directory
- .date-range - copyright date range for this directory
- index.html - this web page
Jump to: top
