Age | Commit message (Collapse) | Author |
|
* console.h: Update all CONS_KEY_* macros to match other terminfo
definitions (like "linux", "screen", "gnome"). Add CONS_CHAR_*
macros for terminal graphic characters.
* display.c (struct attr): New member ALTCHAR to flag usage of
alternate character set.
(display_notice_filechange): Make static.
(handle_escape_bracket_m): Set ALTCHAR to 0 when resetting.
Support new modes 10 and 11 to disable and enable ALTCHAR.
(limit_cursor): New function, moved to global scope from ...
(handle_escape_bracket): ... here.
(linefeed): New function, moved to global scope from ...
(display_output_one): ... here.
(horizontal_tab): New function.
(handle_escape_bracket): Add alias \E[' to \E[G for VT100
compatibility. Add capability \E[a (horizontal cursor position
relative) for ECMA-48 compatibility. Add capabilities \E[I
(horizontal tab) and \E[Z (backward tabulation) for ECMA-48
compatibility. Move capabilities \E[s and \E[u to ...
(display_output_one): ... here as \E7 and \E8 for VT100
compatibility.
(altchar_to_ucs4): New function.
(display_output_one): Use altchar_to_ucs4 when in altchar mode.
Add \EM (reset) capability.
|
|
* console.c (new_node): Adjust size of display node.
* console.h: Add macros for color names. Add macros for intensity
names. Add new types conchar_t and conchar_attr_t, which
represent a console matrix cell and the attribute of one such
cell, resp. Add macros for keycodes.
(struct cons_display): Change type of _matrix member to conchar_t.
* display.c (struct attr): Rewrite, usiong cons_attr_t to hold the
attributes.
(handle_escape_bracket_m): Use new members of ATTR.
(display_flush_filechange): Send notification for changed matrix
before the notification for new cur_line. Fix types in length
calculation.
(conchar_memset): New function.
(user_create): Accept CHR and ATTR arguments. Fix calculation of
NPAGES. Use conchar_memset instead of wmemset.
(screen_fill): Fix type of ATTR argument. Use conchar_memset
instead of wmemset.
(screen_shift_left): Fix type of ATTR argument. Set attribute of
empty cells. Fix length calculation.
(screen_shift_right): Likewise.
(handle_escape_bracket): Set default parameter for HUP. Be more
ECMA-48 conform.
(display_output_one): Fix arguments in screen_fill invocation.
Set attribute for character output. Add <NEL> from ECMA-48.
(display_create): Use 50 lines for now. Set default colors, and
add new arguments to user_create invocation.
CVSi: ----------------------------------------------------------------------
|
|
* display.c (struct changes): Change type of WHICH from int to
unsigned int.
(display_flush_filechanges): Likewise for argument TYPE. Fix a
zillion bugs.
(display_record_filechange): Fix half a zillion bugs.
(screen_shift_left): Fix order of arguments. Just flag a normal
write change for the whole region, instead trying to be clever.
(screen_shift_right): Likewise.
|
|
* display.c (struct changes): New structure to temporarily hold
changes to the display.
(struct display): New member CHANGES.
(display_flush_filechange): New function.
(display_record_filechange): Likewise.
(screen_fill): Use display_record_filechange instead
display_notice_filechange.
(display_output_one): Likewise.
(screen_shift_left): Flush pending filechanges before scrolling.
(screen_shift_right): Likewise.
(display_output_one): Don't notice changes here ...
(display_output_some): ... but here.
* display.c (struct user_pager_info): Add members MEMOBJ_NPAGES
and MEMOBJ_PAGES to hold the allocated and returned pages.
(struct display): Remove member MEMOBJ_SIZE.
(pager_clear_user_data): Deallocate returned pages for this pager
object.
(pager_read_page): Add an assertion to check that we don't create
new pages for already allocated and returned pages.
(pager_write_page): Implement by just holding to the page and
storing its address in the pager object for later deallocation.
(pager_report_extent): Implement using new member MEMOBJ_NPAGES
rather than MEMOBJ_SIZE.
(user_create): Allocate extra storage for the returned pages in
UPI.
|
|
* Makefile (DIST_FILES): New target.
(MIGSTUBS): Likewise.
(OBJS): Add $(MIGSTUBS).
* ourfs_notify.defs: New file.
* console.c: Diddle order of typedefs.
(netfs_attempt_read): Clip AMT to bytes left to read before
calling display_read.
(netfs_S_file_notice_changes): New function.
* console.h: Include <stdint.h>, not <sys/types.h>.
Change all types from u_int32_t to uint32_t.
* display.c: Include <stddef.h> and "outfs_notify_U.h". Change
all u_int_32 types to uint32_t.
(struct modreq): New structure.
(struct display): New member filemod_reqs.
(free_modreqs): New function.
(display_notice_changes): Likewise.
(display_notice_filechange): Likewise.
(display_destroy): Free filemod_reqs member of DISPLAY.
(MATRIX_POS): Macro removed.
(screen_fill): Rewritten.
(screen_shift_left): New function.
(screen_shift_right): Likewise.
(screen_scroll_up): Function removed.
(screen_scroll_down): Likewise.
(screen_scroll_left): Likewise.
(screen_scroll_right): Likewise.
(handle_esc_bracket): Use new screen_* functions.
(display_output_one): Store old cursor and screen attributes, and
if they have been changed, send file change notifications.
* display.h: New prototype for display_notice_changes.
|
|
* console.c: Include <argz.h>. Do not include "console.h", but
inline it. New macro DEFAULT_ENCODING.
(struct cons): De-const-ify member ENCODING.
(mycons, cons): Remove global variables.
(vcons_lookup): Use default encoding if CONS->encoding is not set.
(new_node): Access CONS through VCONS. Adjust size of display
node.
(netfs_attempt_read): Truncate length to read before reading.
(netfs_S_io_map): New function.
(options): New global variable.
(parse_opt): New function.
(netfs_append_args): New function.
(main): New variable CONS to hold console structure. Rediddle
initialization to allocate memory for it, parse arguments, and
create the root node in correct order. Also call display_init.
* console.h: Rewritten with new meaning. It now describes the
public interface of the console.
* display.c: Include <assert.h>, <error.h>, <hurd.h>,
<hurd/pager.h> and "console.h".
(struct screen): Removed.
(struct cursor): Remove members X, Y and status.
(struct user_pager_info): New struct.
(struct display): Remove member SCREEN, add new members USER, UPI,
MEMOBJ and MEMOBJ_SIZE.
(pager_bucket): New global variable.
(display_get_filemap): New function.
(pager_clear_user_data): Likewise.
(pager_read_page): Likewise.
(pager_write_page): Likewise.
(pager_unlock_page): Likewise.
(pager_report_extent): Likewise.
(pager_dropweak): Likewise.
(service_paging_requests): Likewise.
(screen_init): Renamed to ...
(user_create): ... this new function and changed to allocate
memory object and map it for USER data in display structure.
(screen_deinit): Renamed to ...
(user_destroy): ... this new function and rewrote it.
(MATRIX_POS): New macro.
(screen_fill): Take DISPLAY argument instead SCREEN. Use
MATRIX_POS.
(screen_scroll_up): Likewise.
(screen_scroll_down): Likewise.
(screen_scroll_left): Likewise.
(screen_scroll_right): Likewise.
(handle_esc_bracket_hl): Take DISPLAY argument instead CURSOR.
(handle_esc_bracket): Access screen and cursor fields correctly.
(display_output_one): Likewise.
(display_getsize): Likewise.
(display_init): New function.
(display_create): New variables width, height, lines. Call
user_create, not screen_init. Call user_destroy, not
screen_deinit.
(display_destroy): Call user_destroy, not
screen_deinit.
(display_read): Reimplement using memory mapping.
* display.h: New prototypes for display_init and display_get_filemap.
|
|
* display.c (struct cursor): Change type of all members from int
to u_int32_t.
(screen_init): Initialize SCREEN->lines with 25 instead 200 for
now.
(screen_fill): Bring SCREEN->current_line into the calculation of
MATRIXP.
(screen_scroll_up): Likewise.
(screen_scroll_down): Likewise.
(screen_scroll_left): Likewise.
(screen_scroll_right): Likewise.
(display_output_one): Beautify code a bit.
(display_read): Add metadata to beginning of file.
* console.c (new_node): Increase size of display node to include
metadata.
|
|
* input.h: New file.
* input.c: Likewise.
* console.h: Likewise.
* console.c: Likewise.
* display.h: New development version.
* display.c: Likewise.
* Makefile (SRCS): Replace with files for new console server.
(LCLHDRS): Likewise.
(HURDLIBS): Likewise.
(OBJS): Likewise.
|
|
* display.h: New file.
* display.c: Likewise.
|