Strip comments and inline ids onto h*

This commit is contained in:
James Gregory 2013-12-30 15:11:04 +11:00
commit 0f5f617adb
362 changed files with 2519 additions and 6694 deletions

View file

@ -10,16 +10,9 @@
<meta name="vspubdate" content="07/01/97" />
<meta name="vscategory" content="Web and Software Development: Game Development,Web and Software Development: Graphics and Multimedia Development" />
<title>Michael Abrash's Graphics Programming Black Book Special Edition: Mode X 256-Color Animation</title><!-- HEADER -->
<!-- Empty Reference Subhead -->
<!--ISBN=1576101746//-->
<!--TITLE=Michael Abrash's Graphics Programming Black Book Special Edition//-->
<!--AUTHOR=Michael Abrash//-->
<!--PUBLISHER=The Coriolis Group, Inc.//-->
<title>Michael Abrash's Graphics Programming Black Book Special Edition: Mode X 256-Color Animation</title>
<meta name="chapter" content="49" />
<meta name="pages" content="922-924" />
<!--UNASSIGNED1//-->
<!--UNASSIGNED2//-->
</head>
<body>
@ -39,7 +32,7 @@
<p>It would be handy to have a function that, given a base image and mask, generates the four image and mask alignments and fills in the <b>MaskedImage</b> structure. Listing 49.3, together with the include file in Listing 49.4 and the system memory-to-display memory block-copy routine in Listing 48.4 (in the previous chapter) does just that. It would be faster if Listing 49.3 were in assembly language, but there&rsquo;s no reason to think that generating aligned images needs to be particularly fast; in such cases, I prefer to use C, for reasons of coding speed, fewer bugs, and maintainability.</p>
<p><b>LISTING 49.3 L49-3.C</b></p><!-- CODE //-->
<p><b>LISTING 49.3 L49-3.C</b></p>
<pre>
/* Generates all four possible mode X image/mask alignments, stores image
alignments in display memory, allocates memory for and generates mask
@ -107,9 +100,9 @@ unsigned int CreateAlignedMaskedImage(MaskedImage * ImageToSet,
}
return DispMemOffset - DispMemStart;
}
</pre><!-- END CODE //-->
</pre>
<p><b>LISTING 49.4 MASKIM.H</b></p><!-- CODE //-->
<p><b>LISTING 49.4 MASKIM.H</b></p>
<pre>
/* MASKIM.H: structures used for storing and manipulating masked
images */
@ -128,9 +121,9 @@ typedef struct {
structs for four possible destination
image alignments */
} MaskedImage;
</pre><!-- END CODE //-->
</pre>
<h4 align="left"><a id="Heading5"></a>Notes on Masked Copying</h4>
<h4 align="left" id="Heading5">Notes on Masked Copying</h4>
<p>Listings 49.1 and 49.2, like all Mode X code I&rsquo;ve presented, perform no clipping, because clipping code would complicate the listings too much. While clipping can be implemented directly in the low-level Mode X routines (at the beginning of Listing 49.1, for instance), another, potentially simpler approach would be to perform clipping at a higher level, modifying the coordinates and dimensions passed to low-level routines such as Listings 49.1 and 49.2 as necessary to accomplish the desired clipping. It is for precisely this reason that the low-level Mode X routines support programmable start coordinates in the source images, rather than assuming (0,0); likewise for the distinction between the width of the image and the width of the area of the image to draw.</p>
@ -161,10 +154,6 @@ typedef struct {
<div align="center">
Graphics Programming Black Book &copy; 2001 Michael Abrash
</div><!-- all of the reference materials (books) have the footer and subfoot reveresed -->
<!-- reference_subfoot = footer -->
<!-- reference_footer = subfoot -->
<!-- BEGIN SUB FOOTER -->
<!-- END FOOTER -->
</div>
</body>
</html>