Changeset 925a21e in mainline for uspace/dist/src/c/demos/tetris/screen.h
- Timestamp:
- 2011-09-24T14:20:29Z (13 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 5bf76c1
- Parents:
- 867e2555 (diff), 1ab4aca (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
uspace/dist/src/c/demos/tetris/screen.h
r867e2555 r925a21e 1 1 /* 2 * Copyright (c) 20 06 Josef Cejka2 * Copyright (c) 2011 Martin Decky 3 3 * All rights reserved. 4 4 * … … 27 27 */ 28 28 29 /** @addtogroup kbdgen 30 * @brief HelenOS generic uspace keyboard handler. 31 * @ingroup kbd 29 /** Attributations 30 * 31 * screen.h 8.1 (Berkeley) 5/31/93 32 * NetBSD: screen.h,v 1.2 1995/04/22 07:42:42 cgd 33 * OpenBSD: screen.h,v 1.5 2003/06/03 03:01:41 millert 34 * 35 * Based upon BSD Tetris 36 * 37 * Copyright (c) 1992, 1993 38 * The Regents of the University of California. 39 * Distributed under BSD license. 40 * 41 * This code is derived from software contributed to Berkeley by 42 * Chris Torek and Darren F. Provine. 43 * 44 */ 45 46 /** @addtogroup tetris 32 47 * @{ 33 48 */ … … 35 50 */ 36 51 37 #ifndef __KEYBUFFER_H__ 38 #define __KEYBUFFER_H__ 52 /* 53 * putpad() is for padded strings with count = 1. 54 */ 55 #define putpad(s) tputs(s, 1, put) 39 56 40 57 #include <sys/types.h> 41 58 #include <io/console.h> 59 #include <async.h> 42 60 #include <bool.h> 43 61 44 /** Size of buffer for pressed keys */ 45 #define KEYBUFFER_SIZE 128 62 typedef struct { 63 sysarg_t ws_row; 64 sysarg_t ws_col; 65 } winsize_t; 46 66 47 typedef struct { 48 kbd_event_t fifo[KEYBUFFER_SIZE]; 49 size_t head; 50 size_t tail; 51 size_t items; 52 } keybuffer_t; 67 extern console_ctrl_t *console; 68 extern winsize_t winsize; 53 69 54 extern void keybuffer_free(keybuffer_t *); 55 extern void keybuffer_init(keybuffer_t *); 56 extern size_t keybuffer_available(keybuffer_t *); 57 extern bool keybuffer_empty(keybuffer_t *); 58 extern void keybuffer_push(keybuffer_t *, const kbd_event_t *); 59 extern bool keybuffer_pop(keybuffer_t *, kbd_event_t *); 70 extern void moveto(sysarg_t r, sysarg_t c); 71 extern void clear_screen(void); 60 72 61 #endif 73 extern int put(int); 74 extern void scr_clear(void); 75 extern void scr_end(void); 76 extern void scr_init(void); 77 extern void scr_msg(char *, bool); 78 extern void scr_set(void); 79 extern void scr_update(void); 62 80 63 /** 64 * @} 81 extern void tsleep(void); 82 extern int tgetchar(void); 83 extern int twait(void); 84 85 /** @} 65 86 */
Note:
See TracChangeset
for help on using the changeset viewer.