scr_dump,  scr_restore, scr_init, scr_set - read (write) a
       curses screen from (to) a file


SYNOPSIS

       #include 

       int scr_dump(const char *filename);
       int scr_restore(const char *filename);
       int scr_init(const char *filename);
       int scr_set(const char *filename);


DESCRIPTION

       The scr_dump routine dumps the  current  contents  of  the
       virtual screen to the file filename.

       The  scr_restore  routine  sets  the virtual screen to the
       contents of filename, which must have been  written  using
       scr_dump.   The  next call to doupdate restores the screen
       to the way it looked in the dump file.

       The scr_init routine reads in the contents of filename and
       uses  them  to initialize the curses data structures about
       what the terminal currently has on  its  screen.   If  the
       data  is  determined  to  be  valid, curses bases its next
       update of the  screen  on  this  information  rather  than
       clearing  the  screen and starting from scratch.  scr_init
       is used after initscr or  a  system  [see  system(BA_LIB)]
       call  to  share  the screen with another process which has
       done a scr_dump  after  its  endwin  call.   The  data  is
       declared  invalid  if  the terminfo capabilities rmcup and
       nrrmc exist; also if the  terminal  has  been  written  to
       since the preceding scr_dump call.

       The  scr_set  routine  is a combination of scr_restore and
       scr_init.  It tells the program that  the  information  in
       filename is what is currently on the screen, and also what
       the program wants on the screen.  This can be  thought  of
       as a screen inheritance function.

       To  read (write) a window from (to) a file, use the getwin
       and putwin routines [see curs_util(3X)].


RETURN VALUE

       All routines return the integer ERR upon  failure  and  OK
       upon success.


NOTES

       Note  that  scr_init,  scr_set,  and  scr_restore  may  be
       macros.


PORTABILITY

       The XSI Curses standard, Issue 4,  describes  these  func-
       is also considered invalid "if the time-stamp of  the  tty
       is old" but don't define "old".


SEE ALSO

       curses(3X),       curs_initscr(3X),      curs_refresh(3X),
       curs_util(3X), system(3S)