<!--
****************************************************************************
- * Copyright 2018-2020,2021 Thomas E. Dickey *
+ * Copyright 2018-2021,2023 Thomas E. Dickey *
* Copyright 2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: scr_dump.5,v 1.22 2023/06/17 17:50:37 tom Exp @
+ * @Id: scr_dump.5,v 1.41 2023/12/23 16:27:25 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>scr_dump 5 2023-06-17 ncurses 6.4 File formats</TITLE>
+<TITLE>scr_dump 5 2023-12-23 ncurses 6.4 File formats</TITLE>
<link rel="author" href="mailto:bug-ncurses@gnu.org">
</HEAD>
<BODY>
-<H1 class="no-header">scr_dump 5 2023-06-17 ncurses 6.4 File formats</H1>
+<H1 class="no-header">scr_dump 5 2023-12-23 ncurses 6.4 File formats</H1>
<PRE>
<STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG> File formats <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>
</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
- scr_dump - format of curses screen-dumps.
+ scr_dump - <EM>curses</EM> screen dump
</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>o</STRONG> The ncurses6 <STRONG>getwin</STRONG> reads the legacy screen dumps from ncurses5.
-</PRE><H3><a name="h3-ncurses5-_legacy_">ncurses5 (legacy)</a></H3><PRE>
- The screen-dump feature was added to ncurses in June 1995. While there
+</PRE><H3><a name="h3-ncurses5-_Legacy_">ncurses5 (Legacy)</a></H3><PRE>
+ The screen-dump feature was added to <EM>ncurses</EM> in June 1995. While there
were fixes and improvements in succeeding years, the basic scheme was
unchanged:
- <STRONG>o</STRONG> The <STRONG>WINDOW</STRONG> structure was written in binary form.
+ <STRONG>o</STRONG> The <EM>WINDOW</EM> structure was written in binary form.
- <STRONG>o</STRONG> The <STRONG>WINDOW</STRONG> structure refers to lines of data, which were written as
- an array of binary data following the <STRONG>WINDOW</STRONG>.
+ <STRONG>o</STRONG> The <EM>WINDOW</EM> structure refers to lines of data, which were written as
+ an array of binary data following the <EM>WINDOW</EM>.
<STRONG>o</STRONG> When <STRONG>getwin</STRONG> restored the window, it would keep track of offsets
- into the array of line-data and adjust the <STRONG>WINDOW</STRONG> structure which
+ into the array of line-data and adjust the <EM>WINDOW</EM> structure which
was read back into memory.
- This is similar to Unix SystemV, but does not write a "magic number" to
- identify the file format.
+ This is similar to Unix System V, but does not write a "magic number"
+ to identify the file format.
</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
<STRONG>o</STRONG> Shading is used to identify <EM>X/Open</EM> <EM>Enhanced</EM> <EM>Curses</EM> material,
relating to interfaces included to provide enhanced capabilities
for applications originally written to be compiled on systems
- based on the UNIX operating system. Therefore, the features
+ based on the Unix operating system. Therefore, the features
described may not be present on systems that conform to <STRONG>XPG4</STRONG> <STRONG>or</STRONG>
<STRONG>to</STRONG> <STRONG>earlier</STRONG> <STRONG>XPG</STRONG> <STRONG>releases</STRONG>. The relevant reference pages may
provide additional or more specific portability warnings about
<STRONG>or</STRONG> <STRONG>to</STRONG> <STRONG>earlier</STRONG> <STRONG>XPG</STRONG> <STRONG>releases</STRONG>, for clarity.
-</PRE><H3><a name="h3-Unix-SystemV">Unix SystemV</a></H3><PRE>
- Unix SystemV curses identified the file format by writing a "magic
- number" at the beginning of the dump. The <STRONG>WINDOW</STRONG> data and the lines of
+</PRE><H3><a name="h3-Unix-System-V">Unix System V</a></H3><PRE>
+ Unix System V curses identified the file format by writing a "magic
+ number" at the beginning of the dump. The <EM>WINDOW</EM> data and the lines of
text follow, all in binary form.
The Solaris curses source has these definitions:
That is, the feature was likely introduced in SVr2 (1984), and improved
in SVr3 (1987). The Solaris curses source has no magic number for SVr4
- (1989). Other operating systems (AIX and HPUX) use a magic number
+ (1989). Other operating systems (AIX and HP-UX) use a magic number
which would correspond to this definition:
/* curses screen dump magic number */
big-endian hardware, the magic number is written with the high-order
byte first, e.g.,
- 01 35
+ \001\035
- After the magic number, the <STRONG>WINDOW</STRONG> structure and line-data are written
+ After the magic number, the <EM>WINDOW</EM> structure and line-data are written
in binary format. While the magic number used by the Unix systems can
be seen using <STRONG>od(1)</STRONG>, none of the Unix systems documents the format used
for screen-dumps.
<STRONG>o</STRONG> AIX (51817 bytes)
- <STRONG>o</STRONG> HPUX (90093 bytes)
+ <STRONG>o</STRONG> HP-UX (90093 bytes)
<STRONG>o</STRONG> Solaris 10 (13273 bytes)
- <STRONG>o</STRONG> ncurses5 (12888 bytes)
+ <STRONG>o</STRONG> <EM>ncurses</EM>5 (12888 bytes)
</PRE><H3><a name="h3-Solaris">Solaris</a></H3><PRE>
</PRE><H3><a name="h3-PDCurses">PDCurses</a></H3><PRE>
PDCurses added support for screen dumps in version 2.7 (2005). Like
- Unix SystemV and ncurses5, it writes the <STRONG>WINDOW</STRONG> structure in binary,
+ Unix System V and ncurses5, it writes the <EM>WINDOW</EM> structure in binary,
but begins the file with its three-byte identifier "PDC", followed by a
one-byte version, e.g.,
<STRONG>o</STRONG> the curses shared library major and minor versions as the first two
bytes (e.g., 7 and 1),
- <STRONG>o</STRONG> followed by a binary dump of the <STRONG>WINDOW</STRONG>,
+ <STRONG>o</STRONG> followed by a binary dump of the <EM>WINDOW</EM>,
- <STRONG>o</STRONG> some data for wide-characters referenced by the <STRONG>WINDOW</STRONG> structure,
+ <STRONG>o</STRONG> some data for wide-characters referenced by the <EM>WINDOW</EM> structure,
and
<STRONG>o</STRONG> finally, lines as done by other implementations.
-</PRE><H2><a name="h2-EXAMPLE">EXAMPLE</a></H2><PRE>
+</PRE><H2><a name="h2-EXAMPLES">EXAMPLES</a></H2><PRE>
Given a simple program which writes text to the screen (and for the
sake of example, limiting the screen-size to 10x20):
ensure they are not overlooked.
<STRONG>o</STRONG> Attributes are written in escaped curly braces, e.g., "\{BOLD}",
- and may include a color-pair (C1 or C2 in this example).
+ and may include a color pair (C1 or C2 in this example).
<STRONG>o</STRONG> The parameters in the header are written out only if they are
nonzero. When reading back, order does not matter.
0002371
-</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
- <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>.
-
-
</PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
Thomas E. Dickey
- extended screen-dump format for ncurses 6.0 (2015)
+ extended screen-dump format for <EM>ncurses</EM> 6.0 (2015)
Eric S. Raymond
- screen dump feature in ncurses 1.9.2d (1995)
+ screen dump feature in <EM>ncurses</EM> 1.9.2d (1995)
+
+
+</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
+ <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
-ncurses 6.4 2023-06-17 <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>
+ncurses 6.4 2023-12-23 <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>
</PRE>
<div class="nav">
<ul>
<li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
<ul>
<li><a href="#h3-ncurses6">ncurses6</a></li>
-<li><a href="#h3-ncurses5-_legacy_">ncurses5 (legacy)</a></li>
+<li><a href="#h3-ncurses5-_Legacy_">ncurses5 (Legacy)</a></li>
</ul>
</li>
<li><a href="#h2-PORTABILITY">PORTABILITY</a>
<ul>
<li><a href="#h3-X_Open-Curses">X/Open Curses</a></li>
-<li><a href="#h3-Unix-SystemV">Unix SystemV</a></li>
+<li><a href="#h3-Unix-System-V">Unix System V</a></li>
<li><a href="#h3-Solaris">Solaris</a></li>
<li><a href="#h3-PDCurses">PDCurses</a></li>
<li><a href="#h3-NetBSD">NetBSD</a></li>
</ul>
</li>
-<li><a href="#h2-EXAMPLE">EXAMPLE</a></li>
-<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
+<li><a href="#h2-EXAMPLES">EXAMPLES</a></li>
<li><a href="#h2-AUTHORS">AUTHORS</a></li>
+<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
</ul>
</div>
</BODY>