Skip to content


Folders and files

Last commit message
Last commit date

Latest commit



22 Commits

Repository files navigation


An ANSI/ASCII art renderer

This is a basic ANSI/ASCII art renderer with a simulated baud rate delay.

Script will choose art at random from available art packs or extract art files. Rendering time is based on a faux baud rate delay.

config.example is kept in github with default settings, on first run this is copied to .pyANS in the users home directory.

Edit your settings in the config file located at $HOME/.pyANS

ansi_store = ./libraries

baud = 57600
bits = 10
cols = 80
cp = cp437
ansi_delay = 3

arclist = zip
anslist = ans,asc,ice

debug = False


  • A valid config file
  • zlib, lzma support on the host system depending on the archives on debian based systems this is probably # apt-get install zlib1g and liblzma5


Only zip archives are supported and are subject to the limitations of the core zipfile python library

The python zipfile library does not support Imploding/Shrinking compression type, these were the first round of implentations in PKzip shortly after the Arcwars. This artifically limits what is available to pyANS. The good news however is the problematic archives are only a small subset of pack releases.

sixteencolors-archive stats (2202-04)

   3454 deflate
     49 Imploding
      3 Shrinking
    967 store

pyANS should skip problematic packs when detected, see pack_info folder for a full list of packs with unsupported compression methods

You can however repack these with the deflate or store method for use with pyANS

You may attempt to use pack_info/ (AT YOUR OWN RISK) but please make sure you have appropriate backups, it will unpack and repack the files to in the libraries directory, these zips will use store compression.

pyans pack convertor v0.01-alpha - sairuk

Looking for unsupported files in ../libraries
Found 2 files for processing
Processing ../libraries/
Repacking ../libraries/ as ../libraries/
OK, backing up ../libraries/ to ../libraries_unsupported/
Processing ../libraries/
Repacking ../libraries/ as ../libraries/
OK, backing up ../libraries/ to ../libraries_unsupported/

Please never upload converted packs to any official archives, original releases/metadata is important for preservation. These are intended for personal use only with pyANS


Option Desc
ansi_store path where the artpacks/artfiles are stored
baud/bits/cols used to calculate the fake rate delay
cp the code page used to render the artfile
ansi_delay the delay between each artfile
arclist comma separated whitelist of zipfile library compatible archive extensions to process
anslist comma separated whitelist of artfile extensions to process


  1. clone
  2. copy config.example to ~/.pyANS
  3. copy artpacks archives into the libraries folder
  4. run python

pyANS Demo on CentOS

sairuk : // : @sairukau



ANSI art renderer







No releases published


No packages published