Strip comments and inline ids onto h*
This commit is contained in:
parent
1997a7846d
commit
0f5f617adb
362 changed files with 2519 additions and 6694 deletions
25
49-03.html
25
49-03.html
|
|
@ -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’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’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 © 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>
|
||||
|
|
|
|||
Loading…
Reference in a new issue