Mercurial > emacs
comparison src/lisp.h @ 10550:8e536dd17a89
Add comments and `volatile' keyword to previous change.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Wed, 25 Jan 1995 08:55:43 +0000 |
parents | c57d8bad186b |
children | 79848fcf723b |
comparison
equal
deleted
inserted
replaced
10549:c57d8bad186b | 10550:8e536dd17a89 |
---|---|
489 Lisp_Object prefix_arg; | 489 Lisp_Object prefix_arg; |
490 Lisp_Object current_prefix_arg; | 490 Lisp_Object current_prefix_arg; |
491 Lisp_Object this_command_keys; | 491 Lisp_Object this_command_keys; |
492 Lisp_Object internal_last_event_frame; | 492 Lisp_Object internal_last_event_frame; |
493 Lisp_Object kbd_buffer_frame_or_window; | 493 Lisp_Object kbd_buffer_frame_or_window; |
494 | |
495 /* Circular buffer for pre-read keyboard input. */ | |
494 struct input_event *kbd_buffer; | 496 struct input_event *kbd_buffer; |
497 | |
498 /* Pointer to next available character in kbd_buffer. | |
499 If kbd_fetch_ptr == kbd_store_ptr, the buffer is empty. | |
500 This may be kbd_buffer + KBD_BUFFER_SIZE, meaning that the the | |
501 next available char is in kbd_buffer[0]. */ | |
495 struct input_event *kbd_fetch_ptr; | 502 struct input_event *kbd_fetch_ptr; |
496 struct input_event *kbd_store_ptr; | 503 |
504 /* Pointer to next place to store character in kbd_buffer. This | |
505 may be kbd_buffer + KBD_BUFFER_SIZE, meaning that the next | |
506 character should go in kbd_buffer[0]. */ | |
507 volatile struct input_event *kbd_store_ptr; | |
508 | |
509 /* The above pair of variables forms a "queue empty" flag. When we | |
510 enqueue a non-hook event, we increment kbd_store_ptr. When we | |
511 dequeue a non-hook event, we increment kbd_fetch_ptr. We say that | |
512 there is input available iff the two counters are not equal. | |
513 | |
514 Why not just have a flag set and cleared by the enqueuing and | |
515 dequeuing functions? Such a flag could be screwed up by interrupts | |
516 at inopportune times. */ | |
517 | |
497 int this_command_key_count; | 518 int this_command_key_count; |
498 int immediate_echo; | 519 int immediate_echo; |
499 int echo_after_prompt; | 520 int echo_after_prompt; |
500 char *echoptr; | 521 char *echoptr; |
501 char echobuf[300]; | 522 char echobuf[300]; |