A small demo program written in C that:
Any kind of rapidly updated graphics is impacted by the KC85/2's extremely limited graphics abilities:
Software-rendered character set: When the character output routine is called, the character's ASCII code is written both into a text buffer, and 8 bytes that make up the character's graphics are transferred from RAM to the frame buffer via the CPU.
No screen interrupts, i.e. no interrupts for a specific column/line or even the blanking interval
No sprites
Accesses to memory can be seen on the screen (as noise)

The toolflow is like this:
The waving text is pre-computed on a host using a C program that generates a sequence of images.
These images are dissected into 8x8 tiles by a Python script.
The images are reduced to storing offsets into the tile table, which means tiles can be re-used.
As this index is 8 bit, this also means that only 255 distinct tiles may be used.
Additionally, subsequent images are stored as deltas to the preceeding image, thus reducing the number of tiles that are re-written.
This data are output as a C file with inline assembly
This data are used by a C program that is subsequently compiled using SDCC (https://github.com/anchorz/sdcc-z1013-kc85)
The program is downloaded to the KC85/2 via cassette interface :)