X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?p=xscreensaver;a=blobdiff_plain;f=hacks%2Fanalogtv.c;h=31fe02f3b1f8bc8655aa5eb9e62b6a47375f5a2f;hp=487b2efd50eff2f7241e4f0afdcd93e97a66e9b2;hb=bc7b7a8eb122206d239ec0e693676bcce31be1aa;hpb=ffd8c0873576a9e3065696a624dce6b766b77062 diff --git a/hacks/analogtv.c b/hacks/analogtv.c index 487b2efd..31fe02f3 100644 --- a/hacks/analogtv.c +++ b/hacks/analogtv.c @@ -852,7 +852,7 @@ void analogtv_setup_sync(analogtv_input *input, int do_cb, int do_ssavi) { int i,lineno,vsync; - char *sig; + signed char *sig; int synclevel = do_ssavi ? ANALOGTV_WHITE_LEVEL : ANALOGTV_SYNC_LEVEL; @@ -1566,6 +1566,9 @@ analogtv_draw(analogtv *it) #endif XSync(it->dpy,0); + + /* Small delay to avoid hogging the CPU. */ + usleep (10000); } analogtv_input * @@ -1720,9 +1723,9 @@ void analogtv_add_signal(analogtv *it, analogtv_reception *rec) double *ps=it->rx_signal; double *pe=it->rx_signal + ANALOGTV_SIGNAL_LEN; double *p=ps; - char *ss=&inp->signal[0][0]; - char *se=&inp->signal[0][0] + ANALOGTV_SIGNAL_LEN; - char *s=ss + ((unsigned)rec->ofs % ANALOGTV_SIGNAL_LEN); + signed char *ss=&inp->signal[0][0]; + signed char *se=&inp->signal[0][0] + ANALOGTV_SIGNAL_LEN; + signed char *s=ss + ((unsigned)rec->ofs % ANALOGTV_SIGNAL_LEN); int i; int ec=it->channel_change_cycles; double level=rec->level;