From bb725d6f8223dd7de831c3b692e8c4531e9d01af Mon Sep 17 00:00:00 2001 From: Zihao Yu Date: Tue, 20 Feb 2024 14:53:20 +0800 Subject: [PATCH] kernels,demo,donut: only clear screen before drawing * Originally, if it need too much computation in a slow platform, clearing screen before computation will only show the donut during a short time. --- kernels/demo/src/donut/donut.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/kernels/demo/src/donut/donut.c b/kernels/demo/src/donut/donut.c index fe3d281..0326d62 100644 --- a/kernels/demo/src/donut/donut.c +++ b/kernels/demo/src/donut/donut.c @@ -31,8 +31,6 @@ void donut(void) { int sA = 1024, cA = 0, sB = 1024, cB = 0, _; while(1) { - screen_clear(); - memset(b, 32, 1760); // text buffer memset(z, 127, 1760); // z buffer int sj = 0, cj = 1024; @@ -63,6 +61,10 @@ void donut(void) { } R(9, 7, cj, sj) // rotate j } + R(5, 7, cA, sA); + R(5, 8, cB, sB); + + screen_clear(); int y = 0, x = 0; for (int k = 0; 1761 > k; k++) { if (k % 80) { @@ -73,8 +75,6 @@ void donut(void) { x = 1; } } - R(5, 7, cA, sA); - R(5, 8, cB, sB); screen_refresh(); usleep(100000);