17 |
|
|
18 |
|
int imm_mode = 0; /* bundles are being delivered immediately */ |
19 |
|
|
20 |
– |
VIEW dvw; /* our current display view */ |
21 |
– |
|
20 |
|
char *progname; /* global argv[0] */ |
21 |
|
|
22 |
|
#define RDY_SRV 01 |
44 |
|
if (inp & DEV_SHUTDOWN) |
45 |
|
serv_request(DR_SHUTDOWN, 0, NULL); |
46 |
|
if (inp & DEV_REDRAW) { |
49 |
– |
beam_sync(); |
47 |
|
imm_mode = 1; /* preempt updates */ |
48 |
+ |
beam_sync(); |
49 |
|
} |
50 |
|
if (inp & DEV_WAIT) |
51 |
|
pause = 1; |
161 |
|
if ((err = setview(v)) != NULL) |
162 |
|
error(INTERNAL, err); |
163 |
|
dev_view(v); /* update display driver */ |
164 |
< |
beam_view(&dvw, v); /* update beam list */ |
165 |
< |
copystruct(&dvw, v); /* record new view */ |
164 |
> |
dev_flush(); /* update screen */ |
165 |
> |
beam_view(v); /* update beam list */ |
166 |
|
} |
167 |
|
|
168 |
|
|
203 |
|
case DS_STARTIMM: |
204 |
|
case DS_ENDIMM: |
205 |
|
imm_mode = msg.type==DS_STARTIMM; |
206 |
+ |
if (msg.type == DS_ENDIMM) |
207 |
+ |
dev_flush(); /* update display NOW */ |
208 |
|
/* fall through */ |
209 |
|
case DS_ACKNOW: |
210 |
|
case DS_SHUTDOWN: |