free software resistance
the cost of computing freedom is eternal vigilance
### asciimnt.py
*original date:* sep 2010
*originally posted:* sep 2024
this was originally written for basic in 2008.
```
#!/usr/bin/env python
#ascii mint
#2008 mennonite
#ported to python 2009
#public domain
def color(f, b):
n = "0"
if f > 7: n = "1" ; f = f - 8
if f == 1: f = 4
elif f == 4: f = 1
if f==3: f = 6
elif f == 6: f = 3
if b > 7: b = b - 8
if b == 1: b = 4
elif b == 4: b = 1
if b == 3: b = 6
elif b == 6: b = 3
print "\x1b[" + n + ";" + str(30+f) + ";" + str(40+b) + "m\x08",
def locate(l, c):
print "\x1b[" + str(l) + ";" + str(c) + "H",
def cls():
print "\x1b[2J\x1b[1;1H",
from math import sin, cos
print "\x1b[?25l",
cls()
for radius in range(1, 200, 10):
x, xc = 320, 0
y, yc = 240, 0
c, b, = 0, -3.14
col, row = 0, 0
while b <= 3.14:
b = float(b) + (3.14 / 2 ** 5)
c = c + .00157
xc = cos(b + c)
yc = sin(b + c)
col = x + xc * radius
row = y + yc * radius
col = int(float(col) / 8)
row = int(float(row) / 16 - 2)
if col in range(3, 78): locate(row, col - 1)
if col in range(3, 78): color(0, (int(abs(b * 100)) % 2) * 11 + 4)
if col in range(3, 78): print "\x08" + chr(32) * (2 + radius % 2),
locate (24, 1) ; color(7, 0) ; print "\x1b[?25h",
```
license: 0-clause bsd
```
# 2008, 2019, 2010 mn
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
```
=> https://freesoftwareresistance.neocities.org