X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?p=xscreensaver;a=blobdiff_plain;f=hacks%2Fm6502.c;h=81aa7df3cd885db74c6a7fed33fbe7dae51643cd;hp=7814912264ca4871c23d457592b54b4e48d0ac0e;hb=6afd6db0ae9396cd7ff897ade597cd5483f49b0e;hpb=dba664f31aa87285db4d76cf8c5e66335299703a diff --git a/hacks/m6502.c b/hacks/m6502.c index 78149122..81aa7df3 100644 --- a/hacks/m6502.c +++ b/hacks/m6502.c @@ -60,6 +60,7 @@ struct state { int which;/* the program to run*/ int demos;/* number of demos included */ struct timeval start_time; + int reset_p; }; static void @@ -234,7 +235,8 @@ m6502_draw (Display *dpy, Window window, void *closure) analogtv_draw(st->tv, 0.04, &reception, 1); te = get_time(st); - if (te > st->dt){ /* do something more interesting here XXX */ + if (st->reset_p || te > st->dt){ /* do something more interesting here XXX */ + st->reset_p = 0; for(x = 0; x < 32; x++) for(y = 0; y < 32; y++) st->pixels[x][y] = 0; @@ -279,6 +281,12 @@ m6502_reshape (Display *dpy, Window window, void *closure, static Bool m6502_event (Display *dpy, Window window, void *closure, XEvent *event) { + struct state *st = (struct state *) closure; + if (screenhack_event_helper (dpy, window, event)) + { + st->reset_p = 1; + return True; + } return False; }