wasp-os/wasp/demo.py

66 lines
1.4 KiB
Python

# SPDX-License-Identifier: LGPL-3.0-or-later
# Copyright (C) 2020 Daniel Thompson
#
# Logo demo for PineTime
#
# This demo is simply an alternating sweep of the Pine64 and
# MicroPython logos. It cycles through a variety of colours
# and swaps between the logos every 5 images (so make sure
# len(colors) is not a multiple of 5 ;-) ).
#
import watch, logo, time, gc
colors = (
0xffff,
0xf800, # red
0xffff,
0xffe0, # yellow
0xffff,
0x07e0, # green
0xffff,
0x07ff, # cyan
0xffff,
0x001f, # blue
0xffff,
0xf81f, # magenta
)
def textdemo():
watch.display.fill(0)
draw = watch.drawable
draw.string("The quick brown", 12, 24)
draw.string("fox jumped over", 12, 48)
draw.string("the lazy dog.", 12, 72)
time.sleep(2)
draw.string("0123456789", 12, 120)
draw.string('!"£$%^&*()', 12, 144)
time.sleep(3)
def run():
l = logo.pine64
i = 0
watch.display.poweron()
watch.backlight.set(2)
while True:
for c in colors:
if i == 2:
textdemo()
if i < 5:
i += 1
else:
i = 0
if l == logo.pine64:
l = logo.micropython
else:
l = logo.pine64
watch.display.fill(0)
watch.drawable.rleblit(l, fg=c)
time.sleep(2)
gc.collect()