Replace invalid characters with HTML entities
— with — ’ with ’ + with + × with x ç with ç “ with “ ” with ” ‘ with ‘ • with • – with - µ with µ † with † Fix C++ θ with θ Yen symbol instead of times Fix broken apos Bullet again E-circumflex
This commit is contained in:
parent
9e52de9586
commit
500e7f5654
353 changed files with 5091 additions and 5091 deletions
224
index.html
224
index.html
|
|
@ -37,17 +37,17 @@
|
|||
<BR>
|
||||
<BR><DD><A HREF="01-01.html"><FONT SIZE="4"><B>Part I</B></FONT></A>
|
||||
<DL>
|
||||
<DD><A HREF="01-01.html#Heading1"><FONT SIZE="4"><B>Chapter 1—The Best Optimizer Is between Your Ears</B></FONT></A>
|
||||
<DD><A HREF="01-01.html#Heading1"><FONT SIZE="4"><B>Chapter 1—The Best Optimizer Is between Your Ears</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="01-01.html#Heading2">The Human Element of Code Optimization</A>
|
||||
<DD><A HREF="01-01.html#Heading3">Understanding High Performance</A>
|
||||
<DL>
|
||||
<DD><A HREF="01-01.html#Heading4">When Fast Isn’t Fast</A>
|
||||
<DD><A HREF="01-01.html#Heading4">When Fast Isn’t Fast</A>
|
||||
</DL>
|
||||
<DD><A HREF="01-02.html#Heading5">Rules for Building High-Performance Code</A>
|
||||
<DL>
|
||||
<DD><A HREF="01-02.html#Heading6">Know Where You’re Going</A>
|
||||
<DD><A HREF="01-02.html#Heading6">Know Where You’re Going</A>
|
||||
<DD><A HREF="01-02.html#Heading7">Make a Big Map</A>
|
||||
<DD><A HREF="01-02.html#Heading8">Make Lots of Little Maps</A>
|
||||
<DD><A HREF="01-03.html#Heading9">Know the Territory</A>
|
||||
|
|
@ -55,13 +55,13 @@
|
|||
<DD><A HREF="01-04.html#Heading11">Always Consider the Alternatives</A>
|
||||
<DD><A HREF="01-05.html#Heading12">Know How to Turn On the Juice</A>
|
||||
</DL>
|
||||
<DD><A HREF="01-06.html#Heading13">Where We’ve Been, What We’ve Seen</A>
|
||||
<DD><A HREF="01-06.html#Heading13">Where We’ve Been, What We’ve Seen</A>
|
||||
<DL>
|
||||
<DD><A HREF="01-06.html#Heading14">Where We’re Going</A>
|
||||
<DD><A HREF="01-06.html#Heading14">Where We’re Going</A>
|
||||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="02-01.html#Heading1"><FONT SIZE="4"><B>Chapter 2—A World Apart</B></FONT></A>
|
||||
<DD><A HREF="02-01.html#Heading1"><FONT SIZE="4"><B>Chapter 2—A World Apart</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="02-01.html#Heading2">The Unique Nature of Assembly Language Optimization</A>
|
||||
|
|
@ -78,7 +78,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="03-01.html#Heading1"><FONT SIZE="4"><B>Chapter 3—Assume Nothing</B></FONT></A>
|
||||
<DD><A HREF="03-01.html#Heading1"><FONT SIZE="4"><B>Chapter 3—Assume Nothing</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="03-01.html#Heading2">Understanding and Using the Zen Timer</A>
|
||||
|
|
@ -106,14 +106,14 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="04-01.html#Heading1"><FONT SIZE="4"><B>Chapter 4—In the Lair of the Cycle-Eaters</B></FONT></A>
|
||||
<DD><A HREF="04-01.html#Heading1"><FONT SIZE="4"><B>Chapter 4—In the Lair of the Cycle-Eaters</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="04-01.html#Heading2">How the PC Hardware Devours Code Performance</A>
|
||||
<DD><A HREF="04-01.html#Heading3">Cycle-Eaters</A>
|
||||
<DD><A HREF="04-01.html#Heading4">The Nature of Cycle-Eaters</A>
|
||||
<DL>
|
||||
<DD><A HREF="04-01.html#Heading5">The 8088’s Ancestral Cycle-Eaters</A>
|
||||
<DD><A HREF="04-01.html#Heading5">The 8088’s Ancestral Cycle-Eaters</A>
|
||||
</DL>
|
||||
<DD><A HREF="04-01.html#Heading6">The 8-Bit Bus Cycle-Eater</A>
|
||||
<DL>
|
||||
|
|
@ -144,7 +144,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="05-01.html#Heading1"><FONT SIZE="4"><B>Chapter 5—Crossing the Border</B></FONT></A>
|
||||
<DD><A HREF="05-01.html#Heading1"><FONT SIZE="4"><B>Chapter 5—Crossing the Border</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="05-01.html#Heading2">Searching Files with Restartable Blocks</A>
|
||||
|
|
@ -164,7 +164,7 @@
|
|||
<DD><A HREF="05-05.html#Heading10">Always Look Where Execution Is Going</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="06-01.html#Heading1"><FONT SIZE="4"><B>Chapter 6—Looking Past Face Value</B></FONT></A>
|
||||
<DD><A HREF="06-01.html#Heading1"><FONT SIZE="4"><B>Chapter 6—Looking Past Face Value</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="06-01.html#Heading2">How Machine Instructions May Do More Than You Think</A>
|
||||
|
|
@ -178,7 +178,7 @@
|
|||
<DD><A HREF="06-02.html#Heading6">Multiplication with LEA Using Non-Powers of Two</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="07-01.html#Heading1"><FONT SIZE="4"><B>Chapter 7—Local Optimization</B></FONT></A>
|
||||
<DD><A HREF="07-01.html#Heading1"><FONT SIZE="4"><B>Chapter 7—Local Optimization</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="07-01.html#Heading2">Optimizing Halfway between Algorithms and Cycle Counting</A>
|
||||
|
|
@ -193,19 +193,19 @@
|
|||
<DD><A HREF="07-03.html#Heading7">Unrolling Loops</A>
|
||||
<DL>
|
||||
<DD><A HREF="07-05.html#Heading8">Rotating and Shifting with Tables</A>
|
||||
<DD><A HREF="07-05.html#Heading9">NOT Flips Bits—Not Flags</A>
|
||||
<DD><A HREF="07-05.html#Heading9">NOT Flips Bits—Not Flags</A>
|
||||
<DD><A HREF="07-05.html#Heading10">Incrementing with and without Carry</A>
|
||||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="08-01.html#Heading1"><FONT SIZE="4"><B>Chapter 8—Speeding Up C with Assembly Language</B></FONT></A>
|
||||
<DD><A HREF="08-01.html#Heading1"><FONT SIZE="4"><B>Chapter 8—Speeding Up C with Assembly Language</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="08-01.html#Heading2">Jumping Languages When You Know It’ll Help</A>
|
||||
<DD><A HREF="08-01.html#Heading2">Jumping Languages When You Know It’ll Help</A>
|
||||
<DL>
|
||||
<DD><A HREF="08-01.html#Heading3">Billy, Don’t Be a Compiler</A>
|
||||
<DD><A HREF="08-01.html#Heading3">Billy, Don’t Be a Compiler</A>
|
||||
</DL>
|
||||
<DD><A HREF="08-01.html#Heading4">Don’t Call Your Functions on Me, Baby</A>
|
||||
<DD><A HREF="08-01.html#Heading4">Don’t Call Your Functions on Me, Baby</A>
|
||||
<DD><A HREF="08-02.html#Heading5">Stack Frames Slow So Much</A>
|
||||
<DD><A HREF="08-02.html#Heading6">Torn Between Two Segments</A>
|
||||
<DL>
|
||||
|
|
@ -217,7 +217,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="09-01.html#Heading1"><FONT SIZE="4"><B>Chapter 9—Hints My Readers Gave Me</B></FONT></A>
|
||||
<DD><A HREF="09-01.html#Heading1"><FONT SIZE="4"><B>Chapter 9—Hints My Readers Gave Me</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="09-01.html#Heading2">Optimization Odds and Ends from the Field</A>
|
||||
|
|
@ -235,7 +235,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="10-01.html#Heading1"><FONT SIZE="4"><B>Chapter 10—Patient Coding, Faster Code</B></FONT></A>
|
||||
<DD><A HREF="10-01.html#Heading1"><FONT SIZE="4"><B>Chapter 10—Patient Coding, Faster Code</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="10-01.html#Heading2">How Working Quickly Can Bring Execution to a Crawl</A>
|
||||
|
|
@ -252,7 +252,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="11-01.html#Heading1"><FONT SIZE="4"><B>Chapter 11—Pushing the 286 and 386</B></FONT></A>
|
||||
<DD><A HREF="11-01.html#Heading1"><FONT SIZE="4"><B>Chapter 11—Pushing the 286 and 386</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="11-01.html#Heading2">New Registers, New Instructions, New Timings, New Complications</A>
|
||||
|
|
@ -281,10 +281,10 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="12-01.html#Heading1"><FONT SIZE="4"><B>Chapter 12—Pushing the 486</B></FONT></A>
|
||||
<DD><A HREF="12-01.html#Heading1"><FONT SIZE="4"><B>Chapter 12—Pushing the 486</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="12-01.html#Heading2">It’s Not Just a Bigger 386</A>
|
||||
<DD><A HREF="12-01.html#Heading2">It’s Not Just a Bigger 386</A>
|
||||
<DL>
|
||||
<DD><A HREF="12-01.html#Heading3">Enter the 486</A>
|
||||
</DL>
|
||||
|
|
@ -303,7 +303,7 @@
|
|||
<DD><A HREF="12-04.html#Heading12">The Story Continues</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="13-01.html#Heading1"><FONT SIZE="4"><B>Chapter 13—Aiming the 486</B></FONT></A>
|
||||
<DD><A HREF="13-01.html#Heading1"><FONT SIZE="4"><B>Chapter 13—Aiming the 486</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="13-01.html#Heading2">Pipelines and Other Hazards of the High End</A>
|
||||
|
|
@ -316,7 +316,7 @@
|
|||
<DD><A HREF="13-04.html#Heading7">32-Bit Addressing Modes</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="14-01.html#Heading1"><FONT SIZE="4"><B>Chapter 14—Boyer-Moore String Searching</B></FONT></A>
|
||||
<DD><A HREF="14-01.html#Heading1"><FONT SIZE="4"><B>Chapter 14—Boyer-Moore String Searching</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="14-01.html#Heading2">Optimizing a Pretty Optimum Search Algorithm</A>
|
||||
|
|
@ -327,7 +327,7 @@
|
|||
<DD><A HREF="14-06.html#Heading7">Know What You Know</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="15-01.html#Heading1"><FONT SIZE="4"><B>Chapter 15—Linked Lists and plain Unintended Challenges</B></FONT></A>
|
||||
<DD><A HREF="15-01.html#Heading1"><FONT SIZE="4"><B>Chapter 15—Linked Lists and plain Unintended Challenges</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="15-01.html#Heading2">Unfamiliar Problems with Familiar Data Structures</A>
|
||||
|
|
@ -337,7 +337,7 @@
|
|||
<DD><A HREF="15-04.html#Heading6">Hi/Lo in 24 Bytes</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="16-01.html#Heading1"><FONT SIZE="4"><B>Chapter 16—There Ain’t No Such Thing as the Fastest Code</B></FONT></A>
|
||||
<DD><A HREF="16-01.html#Heading1"><FONT SIZE="4"><B>Chapter 16—There Ain’t No Such Thing as the Fastest Code</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="16-01.html#Heading2">Lessons Learned in the Pursuit of the Ultimate Word Counter</A>
|
||||
|
|
@ -362,17 +362,17 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="17-01.html#Heading1"><FONT SIZE="4"><B>Chapter 17—The Game of Life</B></FONT></A>
|
||||
<DD><A HREF="17-01.html#Heading1"><FONT SIZE="4"><B>Chapter 17—The Game of Life</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="17-01.html#Heading2">The Triumph of Algorithmic Optimization in a Cellular Automata Game</A>
|
||||
<DD><A HREF="17-01.html#Heading3">Conway’s Game</A>
|
||||
<DD><A HREF="17-01.html#Heading3">Conway’s Game</A>
|
||||
<DL>
|
||||
<DD><A HREF="17-01.html#Heading4">The Rules of the Game</A>
|
||||
</DL>
|
||||
<DD><A HREF="17-03.html#Heading5">Where Does the Time Go?</A>
|
||||
<DD><A HREF="17-03.html#Heading6">The Hazards and Advantages of Abstraction</A>
|
||||
<DD><A HREF="17-05.html#Heading7">Heavy-Duty C++ Optimization</A>
|
||||
<DD><A HREF="17-05.html#Heading7">Heavy-Duty C++ Optimization</A>
|
||||
<DD><A HREF="17-06.html#Heading8">Bringing In the Right Brain</A>
|
||||
<DL>
|
||||
<DD><A HREF="17-06.html#Heading9">Re-Examining the Task</A>
|
||||
|
|
@ -381,7 +381,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="18-01.html#Heading1"><FONT SIZE="4"><B>Chapter 18—It’s a plain Wonderful Life</B></FONT></A>
|
||||
<DD><A HREF="18-01.html#Heading1"><FONT SIZE="4"><B>Chapter 18—It’s a plain Wonderful Life</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="18-01.html#Heading2">Optimization beyond the Pale</A>
|
||||
|
|
@ -389,11 +389,11 @@
|
|||
<DD><A HREF="18-02.html#Heading4">Table-Driven Magic</A>
|
||||
<DD><A HREF="18-04.html#Heading5">Keeping Track of Change with a Change List</A>
|
||||
<DL>
|
||||
<DD><A HREF="18-05.html#Heading6">A Layperson’s Overview of QLIFE</A>
|
||||
<DD><A HREF="18-05.html#Heading6">A Layperson’s Overview of QLIFE</A>
|
||||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="19-01.html#Heading1"><FONT SIZE="4"><B>Chapter 19—Pentium: Not the Same Old Song</B></FONT></A>
|
||||
<DD><A HREF="19-01.html#Heading1"><FONT SIZE="4"><B>Chapter 19—Pentium: Not the Same Old Song</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="19-01.html#Heading2">Learning a Whole Different Set of Optimization Rules</A>
|
||||
|
|
@ -412,10 +412,10 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="20-01.html#Heading1"><FONT SIZE="4"><B>Chapter 20—Pentium Rules</B></FONT></A>
|
||||
<DD><A HREF="20-01.html#Heading1"><FONT SIZE="4"><B>Chapter 20—Pentium Rules</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="20-01.html#Heading2">How Your Carbon-Based Optimizer Can Put the “Super” in Superscalar</A>
|
||||
<DD><A HREF="20-01.html#Heading2">How Your Carbon-Based Optimizer Can Put the “Super” in Superscalar</A>
|
||||
<DD><A HREF="20-01.html#Heading3">An Instruction in Every Pipe</A>
|
||||
<DD><A HREF="20-02.html#Heading4">V-Pipe-Capable Instructions</A>
|
||||
<DD><A HREF="20-03.html#Heading5">Lockstep Execution</A>
|
||||
|
|
@ -425,7 +425,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="21-01.html#Heading1"><FONT SIZE="4"><B>Chapter 21—Unleashing the Pentium’s V-Pipe</B></FONT></A>
|
||||
<DD><A HREF="21-01.html#Heading1"><FONT SIZE="4"><B>Chapter 21—Unleashing the Pentium’s V-Pipe</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="21-01.html#Heading2">Focusing on Keeping Both Pentium Pipes Full</A>
|
||||
|
|
@ -434,17 +434,17 @@
|
|||
<DL>
|
||||
<DD><A HREF="21-02.html#Heading5">Exceptions to Register Contention</A>
|
||||
</DL>
|
||||
<DD><A HREF="21-02.html#Heading6">Who’s in First?</A>
|
||||
<DD><A HREF="21-02.html#Heading6">Who’s in First?</A>
|
||||
<DD><A HREF="21-03.html#Heading7">Pentium Optimization in Action</A>
|
||||
<DL>
|
||||
<DD><A HREF="21-05.html#Heading8">A Quick Note on the 386 and 486</A>
|
||||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="22-01.html#Heading1"><FONT SIZE="4"><B>Chapter 22—Zenning and the Flexible Mind</B></FONT></A>
|
||||
<DD><A HREF="22-01.html#Heading1"><FONT SIZE="4"><B>Chapter 22—Zenning and the Flexible Mind</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="22-01.html#Heading2">Taking a Spin through What You’ve Learned</A>
|
||||
<DD><A HREF="22-01.html#Heading2">Taking a Spin through What You’ve Learned</A>
|
||||
<DD><A HREF="22-01.html#Heading3">Zenning</A>
|
||||
</DL>
|
||||
</DL>
|
||||
|
|
@ -452,7 +452,7 @@
|
|||
<BR>
|
||||
<DD><A HREF="23-01.html"><FONT SIZE="4"><B>Part II</B></FONT></A>
|
||||
<DL>
|
||||
<DD><A HREF="23-01.html#Heading1"><FONT SIZE="4"><B>Chapter 23—Bones and Sinew</B></FONT></A>
|
||||
<DD><A HREF="23-01.html#Heading1"><FONT SIZE="4"><B>Chapter 23—Bones and Sinew</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="23-01.html#Heading2">At the Very Heart of Standard PC Graphics</A>
|
||||
|
|
@ -470,7 +470,7 @@
|
|||
<DD><A HREF="23-06.html#Heading12">The Macro Assembler</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="24-01.html#Heading1"><FONT SIZE="4"><B>Chapter 24—Parallel Processing with the VGA</B></FONT></A>
|
||||
<DD><A HREF="24-01.html#Heading1"><FONT SIZE="4"><B>Chapter 24—Parallel Processing with the VGA</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="24-01.html#Heading2">Taking on Graphics Memory Four Bytes at a Time</A>
|
||||
|
|
@ -478,13 +478,13 @@
|
|||
<DD><A HREF="24-03.html#Heading4">Notes on the ALU/Latch Demo Program</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="25-01.html#Heading1"><FONT SIZE="4"><B>Chapter 25—VGA Data Machinery</B></FONT></A>
|
||||
<DD><A HREF="25-01.html#Heading1"><FONT SIZE="4"><B>Chapter 25—VGA Data Machinery</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="25-01.html#Heading2">The Barrel Shifter, Bit Mask, and Set/Reset Mechanisms</A>
|
||||
<DD><A HREF="25-01.html#Heading3">VGA Data Rotation</A>
|
||||
<DD><A HREF="25-01.html#Heading4">The Bit Mask</A>
|
||||
<DD><A HREF="25-03.html#Heading5">The VGA’s Set/Reset Circuitry</A>
|
||||
<DD><A HREF="25-03.html#Heading5">The VGA’s Set/Reset Circuitry</A>
|
||||
<DL>
|
||||
<DD><A HREF="25-04.html#Heading6">Setting All Planes to a Single Color</A>
|
||||
<DD><A HREF="25-05.html#Heading7">Manipulating Planes Individually</A>
|
||||
|
|
@ -493,7 +493,7 @@
|
|||
<DD><A HREF="25-06.html#Heading9">A Brief Note on Word OUTs</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="26-01.html#Heading1"><FONT SIZE="4"><B>Chapter 26—VGA Write Mode 3</B></FONT></A>
|
||||
<DD><A HREF="26-01.html#Heading1"><FONT SIZE="4"><B>Chapter 26—VGA Write Mode 3</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="26-01.html#Heading2">The Write Mode That Grows on You</A>
|
||||
|
|
@ -501,31 +501,31 @@
|
|||
<DD><A HREF="26-03.html#Heading4">A Note on Preserving Register Bits</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="27-01.html#Heading1"><FONT SIZE="4"><B>Chapter 27—Yet Another VGA Write Mode</B></FONT></A>
|
||||
<DD><A HREF="27-01.html#Heading1"><FONT SIZE="4"><B>Chapter 27—Yet Another VGA Write Mode</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="27-01.html#Heading2">Write Mode 2, Chunky Bitmaps,and Text-Graphics Coexistence</A>
|
||||
<DD><A HREF="27-01.html#Heading3">Write Mode 2 and Set/Reset</A>
|
||||
<DL>
|
||||
<DD><A HREF="27-01.html#Heading4">A Byte’s Progress in Write Mode 2</A>
|
||||
<DD><A HREF="27-01.html#Heading4">A Byte’s Progress in Write Mode 2</A>
|
||||
<DD><A HREF="27-02.html#Heading5">Copying Chunky Bitmaps to VGA Memory Using Write Mode 2</A>
|
||||
<DD><A HREF="27-03.html#Heading6">Drawing Color-Patterned Lines Using Write Mode 2</A>
|
||||
</DL>
|
||||
<DD><A HREF="27-04.html#Heading7">When to Use Write Mode 2 and When to Use Set/Reset</A>
|
||||
<DD><A HREF="27-04.html#Heading8">Mode 13H—320×200 with 256 Colors</A>
|
||||
<DD><A HREF="27-04.html#Heading8">Mode 13H—320x200 with 256 Colors</A>
|
||||
<DD><A HREF="27-04.html#Heading9">Flipping Pages from Text to Graphics and Back</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="28-01.html#Heading1"><FONT SIZE="4"><B>Chapter 28—Reading VGA Memory</B></FONT></A>
|
||||
<DD><A HREF="28-01.html#Heading1"><FONT SIZE="4"><B>Chapter 28—Reading VGA Memory</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="28-01.html#Heading2">Read Modes 0 and 1, and the Color Don’t Care Register</A>
|
||||
<DD><A HREF="28-01.html#Heading2">Read Modes 0 and 1, and the Color Don’t Care Register</A>
|
||||
<DD><A HREF="28-01.html#Heading3">Read Mode 0</A>
|
||||
<DD><A HREF="28-03.html#Heading4">Read Mode 1</A>
|
||||
<DD><A HREF="28-04.html#Heading5">When all Planes “Don’t Care”</A>
|
||||
<DD><A HREF="28-04.html#Heading5">When all Planes “Don’t Care”</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="29-01.html#Heading1"><FONT SIZE="4"><B>Chapter 29—Saving Screens and Other VGA Mysteries</B></FONT></A>
|
||||
<DD><A HREF="29-01.html#Heading1"><FONT SIZE="4"><B>Chapter 29—Saving Screens and Other VGA Mysteries</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="29-01.html#Heading2">Useful Nuggets from the VGA Zen File</A>
|
||||
|
|
@ -536,14 +536,14 @@
|
|||
<DD><A HREF="29-06.html#Heading7">Modifying VGA Registers</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="30-01.html#Heading1"><FONT SIZE="4"><B>Chapter 30—Video Est Omnis Divisa</B></FONT></A>
|
||||
<DD><A HREF="30-01.html#Heading1"><FONT SIZE="4"><B>Chapter 30—Video Est Omnis Divisa</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="30-01.html#Heading2">The Joys and Galling Problems of Using Split Screens on the EGA and VGA</A>
|
||||
<DD><A HREF="30-01.html#Heading3">How the Split Screen Works</A>
|
||||
<DL>
|
||||
<DD><A HREF="30-01.html#Heading4">The Split Screen in Action</A>
|
||||
<DD><A HREF="30-03.html#Heading5">VGA and EGA Split-Screen Operation Don’t Mix</A>
|
||||
<DD><A HREF="30-03.html#Heading5">VGA and EGA Split-Screen Operation Don’t Mix</A>
|
||||
</DL>
|
||||
<DD><A HREF="30-03.html#Heading6">Setting the Split-Screen-Related Registers</A>
|
||||
<DD><A HREF="30-03.html#Heading7">The Problem with the EGA Split Screen</A>
|
||||
|
|
@ -556,10 +556,10 @@
|
|||
<DD><A HREF="30-07.html#Heading12">How Safe?</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="31-01.html#Heading1"><FONT SIZE="4"><B>Chapter 31—Higher 256-Color Resolution on the VGA</B></FONT></A>
|
||||
<DD><A HREF="31-01.html#Heading1"><FONT SIZE="4"><B>Chapter 31—Higher 256-Color Resolution on the VGA</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="31-01.html#Heading2">When Is 320×200 Really 320×400?</A>
|
||||
<DD><A HREF="31-01.html#Heading2">When Is 320x200 Really 320x400?</A>
|
||||
<DD><A HREF="31-01.html#Heading3">Why 320x200? Only IBM Knows for Sure</A>
|
||||
<DD><A HREF="31-01.html#Heading4">320x400 256-Color Mode</A>
|
||||
<DL>
|
||||
|
|
@ -570,21 +570,21 @@
|
|||
<DD><A HREF="31-05.html#Heading8">Something to Think About</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="32-01.html#Heading1"><FONT SIZE="4"><B>Chapter 32—Be It Resolved: 360×480</B></FONT></A>
|
||||
<DD><A HREF="32-01.html#Heading1"><FONT SIZE="4"><B>Chapter 32—Be It Resolved: 360x480</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="32-01.html#Heading2">Taking 256-Color Modes About as Far as the Standard VGA Can Take Them</A>
|
||||
<DD><A HREF="32-01.html#Heading3">Extended 256-Color Modes: What’s Not to Like?</A>
|
||||
<DD><A HREF="32-01.html#Heading3">Extended 256-Color Modes: What’s Not to Like?</A>
|
||||
<DD><A HREF="32-01.html#Heading4">360x480 256-Color Mode</A>
|
||||
<DD><A HREF="32-04.html#Heading5">How 360×480 256-Color Mode Works</A>
|
||||
<DD><A HREF="32-04.html#Heading5">How 360x480 256-Color Mode Works</A>
|
||||
<DL>
|
||||
<DD><A HREF="32-04.html#Heading6">480 Scan Lines per Screen: A Little Slower, But No Big Deal</A>
|
||||
<DD><A HREF="32-04.html#Heading7">360 Pixels per Scan Line: No Mean Feat</A>
|
||||
<DD><A HREF="32-05.html#Heading8">Accessing Display Memory in 360×480 256-Color Mode</A>
|
||||
<DD><A HREF="32-05.html#Heading8">Accessing Display Memory in 360x480 256-Color Mode</A>
|
||||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="33-01.html#Heading1"><FONT SIZE="4"><B>Chapter 33—Yogi Bear and Eurythmics Confront VGA Colors</B></FONT></A>
|
||||
<DD><A HREF="33-01.html#Heading1"><FONT SIZE="4"><B>Chapter 33—Yogi Bear and Eurythmics Confront VGA Colors</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="33-01.html#Heading2">The Basics of VGA Color Generation</A>
|
||||
|
|
@ -597,11 +597,11 @@
|
|||
<DD><A HREF="33-02.html#Heading8">Setting the Palette RAM</A>
|
||||
<DD><A HREF="33-03.html#Heading9">Setting the DAC</A>
|
||||
</DL>
|
||||
<DD><A HREF="33-03.html#Heading10">If You Can’t Call the BIOS, Who Ya Gonna Call?</A>
|
||||
<DD><A HREF="33-03.html#Heading10">If You Can’t Call the BIOS, Who Ya Gonna Call?</A>
|
||||
<DD><A HREF="33-03.html#Heading11">An Example of Setting the DAC</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="34-01.html#Heading1"><FONT SIZE="4"><B>Chapter 34—Changing Colors without Writing Pixels</B></FONT></A>
|
||||
<DD><A HREF="34-01.html#Heading1"><FONT SIZE="4"><B>Chapter 34—Changing Colors without Writing Pixels</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="34-01.html#Heading2">Special Effects through Realtime Manipulation of DAC Colors</A>
|
||||
|
|
@ -621,12 +621,12 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="35-01.html#Heading1"><FONT SIZE="4"><B>Chapter 35—Bresenham Is Fast, and Fast Is Good</B></FONT></A>
|
||||
<DD><A HREF="35-01.html#Heading1"><FONT SIZE="4"><B>Chapter 35—Bresenham Is Fast, and Fast Is Good</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="35-01.html#Heading2">Implementing and Optimizing Bresenham’s Line-Drawing Algorithm</A>
|
||||
<DD><A HREF="35-01.html#Heading2">Implementing and Optimizing Bresenham’s Line-Drawing Algorithm</A>
|
||||
<DD><A HREF="35-01.html#Heading3">The Task at Hand</A>
|
||||
<DD><A HREF="35-01.html#Heading4">Bresenham’s Line-Drawing Algorithm</A>
|
||||
<DD><A HREF="35-01.html#Heading4">Bresenham’s Line-Drawing Algorithm</A>
|
||||
<DL>
|
||||
<DD><A HREF="35-02.html#Heading5">Strengths and Weaknesses</A>
|
||||
</DL>
|
||||
|
|
@ -637,10 +637,10 @@
|
|||
<DD><A HREF="35-05.html#Heading9">Drawing Each Pixel</A>
|
||||
</DL>
|
||||
<DD><A HREF="35-06.html#Heading10">Comments on the C Implementation</A>
|
||||
<DD><A HREF="35-06.html#Heading11">Bresenham’s Algorithm in Assembly</A>
|
||||
<DD><A HREF="35-06.html#Heading11">Bresenham’s Algorithm in Assembly</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="36-01.html#Heading1"><FONT SIZE="4"><B>Chapter 36—The Good, the Bad, and the Run-Sliced</B></FONT></A>
|
||||
<DD><A HREF="36-01.html#Heading1"><FONT SIZE="4"><B>Chapter 36—The Good, the Bad, and the Run-Sliced</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="36-01.html#Heading2">Faster Bresenham Lines with Run-Length Slice Line Drawing</A>
|
||||
|
|
@ -649,7 +649,7 @@
|
|||
<DD><A HREF="36-03.html#Heading5">Run-Length Slice Details</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="37-01.html#Heading1"><FONT SIZE="4"><B>Chapter 37—Dead Cats and Lightning Lines</B></FONT></A>
|
||||
<DD><A HREF="37-01.html#Heading1"><FONT SIZE="4"><B>Chapter 37—Dead Cats and Lightning Lines</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="37-01.html#Heading2">Optimizing Run-Length Slice Line Drawing in a Major Way</A>
|
||||
|
|
@ -660,7 +660,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="38-01.html#Heading1"><FONT SIZE="4"><B>Chapter 38—The Polygon Primeval</B></FONT></A>
|
||||
<DD><A HREF="38-01.html#Heading1"><FONT SIZE="4"><B>Chapter 38—The Polygon Primeval</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="38-01.html#Heading2">Drawing Polygons Efficiently and Quickly</A>
|
||||
|
|
@ -673,7 +673,7 @@
|
|||
<DD><A HREF="38-04.html#Heading7">Oddball Cases</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="39-01.html#Heading1"><FONT SIZE="4"><B>Chapter 39—Fast Convex Polygons</B></FONT></A>
|
||||
<DD><A HREF="39-01.html#Heading1"><FONT SIZE="4"><B>Chapter 39—Fast Convex Polygons</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="39-01.html#Heading2">Filling Polygons in a Hurry</A>
|
||||
|
|
@ -689,7 +689,7 @@
|
|||
<DD><A HREF="39-04.html#Heading8">Faster Edge Tracing</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="40-01.html#Heading1"><FONT SIZE="4"><B>Chapter 40—Of Songs, Taxes, and the Simplicity of Complex Polygons</B></FONT></A>
|
||||
<DD><A HREF="40-01.html#Heading1"><FONT SIZE="4"><B>Chapter 40—Of Songs, Taxes, and the Simplicity of Complex Polygons</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="40-01.html#Heading2">Dealing with Irregular Polygonal Areas</A>
|
||||
|
|
@ -708,17 +708,17 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="41-01.html#Heading1"><FONT SIZE="4"><B>Chapter 41—Those Way-Down Polygon Nomenclature Blues</B></FONT></A>
|
||||
<DD><A HREF="41-01.html#Heading1"><FONT SIZE="4"><B>Chapter 41—Those Way-Down Polygon Nomenclature Blues</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="41-01.html#Heading2">Names Do Matter when You Conceptualize a Data Structure</A>
|
||||
<DD><A HREF="41-01.html#Heading3">Nomenclature in Action</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="42-01.html#Heading1"><FONT SIZE="4"><B>Chapter 42—Wu’ed in Haste; Fried, Stewed at Leisure</B></FONT></A>
|
||||
<DD><A HREF="42-01.html#Heading1"><FONT SIZE="4"><B>Chapter 42—Wu’ed in Haste; Fried, Stewed at Leisure</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="42-01.html#Heading2">Fast Antialiased Lines Using Wu’s Algorithm</A>
|
||||
<DD><A HREF="42-01.html#Heading2">Fast Antialiased Lines Using Wu’s Algorithm</A>
|
||||
<DD><A HREF="42-01.html#Heading3">Wu Antialiasing</A>
|
||||
<DD><A HREF="42-02.html#Heading4">Tracing and Intensity in One</A>
|
||||
<DD><A HREF="42-03.html#Heading5">Sample Wu Antialiasing</A>
|
||||
|
|
@ -727,7 +727,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="43-01.html#Heading1"><FONT SIZE="4"><B>Chapter 43—Bit-Plane Animation</B></FONT></A>
|
||||
<DD><A HREF="43-01.html#Heading1"><FONT SIZE="4"><B>Chapter 43—Bit-Plane Animation</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="43-01.html#Heading2">A Simple and Extremely Fast Animation Method for Limited Color</A>
|
||||
|
|
@ -741,7 +741,7 @@
|
|||
<DD><A HREF="43-06.html#Heading8">Beating the Odds in the Jaw-Dropping Contest</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="44-01.html#Heading1"><FONT SIZE="4"><B>Chapter 44—Split Screens Save the Page Flipped Day</B></FONT></A>
|
||||
<DD><A HREF="44-01.html#Heading1"><FONT SIZE="4"><B>Chapter 44—Split Screens Save the Page Flipped Day</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="44-01.html#Heading2">640x480 Page Flipped Animation in 64K...Almost</A>
|
||||
|
|
@ -758,11 +758,11 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="45-01.html#Heading1"><FONT SIZE="4"><B>Chapter 45—Dog Hair and Dirty Rectangles</B></FONT></A>
|
||||
<DD><A HREF="45-01.html#Heading1"><FONT SIZE="4"><B>Chapter 45—Dog Hair and Dirty Rectangles</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="45-01.html#Heading2">Different Angles on Animation</A>
|
||||
<DD><A HREF="45-01.html#Heading3">Plus ça Change</A>
|
||||
<DD><A HREF="45-01.html#Heading3">Plus ça Change</A>
|
||||
<DD><A HREF="45-01.html#Heading4">VGA Access Times</A>
|
||||
<DD><A HREF="45-02.html#Heading5">Dirty-Rectangle Animation</A>
|
||||
<DL>
|
||||
|
|
@ -773,7 +773,7 @@
|
|||
<DD><A HREF="45-06.html#Heading9">Another Interesting Twist on Page Flipping</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="46-01.html#Heading1"><FONT SIZE="4"><B>Chapter 46—Who Was that Masked Image?</B></FONT></A>
|
||||
<DD><A HREF="46-01.html#Heading1"><FONT SIZE="4"><B>Chapter 46—Who Was that Masked Image?</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="46-01.html#Heading2">Optimizing Dirty-Rectangle Animation</A>
|
||||
|
|
@ -788,20 +788,20 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="47-01.html#Heading1"><FONT SIZE="4"><B>Chapter 47—Mode X: 256-Color VGA Magic</B></FONT></A>
|
||||
<DD><A HREF="47-01.html#Heading1"><FONT SIZE="4"><B>Chapter 47—Mode X: 256-Color VGA Magic</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="47-01.html#Heading2">Introducing the VGA’s Undocumented “Animation-Optimal” Mode</A>
|
||||
<DD><A HREF="47-01.html#Heading2">Introducing the VGA’s Undocumented “Animation-Optimal” Mode</A>
|
||||
<DD><A HREF="47-01.html#Heading3">What Makes Mode X Special?</A>
|
||||
<DD><A HREF="47-02.html#Heading4">Selecting 320x240 256-Color Mode</A>
|
||||
<DD><A HREF="47-04.html#Heading5">Designing from a Mode X Perspective</A>
|
||||
<DD><A HREF="47-06.html#Heading6">Hardware Assist from an Unexpected Quarter</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="48-01.html#Heading1"><FONT SIZE="4"><B>Chapter 48—Mode X Marks the Latch</B></FONT></A>
|
||||
<DD><A HREF="48-01.html#Heading1"><FONT SIZE="4"><B>Chapter 48—Mode X Marks the Latch</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="48-01.html#Heading2">The Internals of Animation’s Best Video Display Mode</A>
|
||||
<DD><A HREF="48-01.html#Heading2">The Internals of Animation’s Best Video Display Mode</A>
|
||||
<DD><A HREF="48-03.html#Heading3">Allocating Memory in Mode X</A>
|
||||
<DD><A HREF="48-03.html#Heading4">Copying Pixel Blocks within Display Memory</A>
|
||||
<DL>
|
||||
|
|
@ -810,7 +810,7 @@
|
|||
<DD><A HREF="48-05.html#Heading6">Who Was that Masked Image Copier?</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="49-01.html#Heading1"><FONT SIZE="4"><B>Chapter 49—Mode X 256-Color Animation</B></FONT></A>
|
||||
<DD><A HREF="49-01.html#Heading1"><FONT SIZE="4"><B>Chapter 49—Mode X 256-Color Animation</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="49-01.html#Heading2">How to Make the VGA Really Get up and Dance</A>
|
||||
|
|
@ -824,7 +824,7 @@
|
|||
<DD><A HREF="49-05.html#Heading8">Works Fast, Looks Great</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="50-01.html#Heading1"><FONT SIZE="4"><B>Chapter 50—Adding a Dimension</B></FONT></A>
|
||||
<DD><A HREF="50-01.html#Heading1"><FONT SIZE="4"><B>Chapter 50—Adding a Dimension</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="50-01.html#Heading2">3-D Animation Using Mode X</A>
|
||||
|
|
@ -842,7 +842,7 @@
|
|||
<DD><A HREF="50-07.html#Heading10">An Ongoing Journey</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="51-01.html#Heading1"><FONT SIZE="4"><B>Chapter 51—Sneakers in Space</B></FONT></A>
|
||||
<DD><A HREF="51-01.html#Heading1"><FONT SIZE="4"><B>Chapter 51—Sneakers in Space</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="51-01.html#Heading2">Using Backface Removal to Eliminate Hidden Surfaces</A>
|
||||
|
|
@ -855,11 +855,11 @@
|
|||
<DD><A HREF="51-06.html#Heading7">Object Representation</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="52-01.html#Heading1"><FONT SIZE="4"><B>Chapter 52—Fast 3-D Animation: Meet X-Sharp</B></FONT></A>
|
||||
<DD><A HREF="52-01.html#Heading1"><FONT SIZE="4"><B>Chapter 52—Fast 3-D Animation: Meet X-Sharp</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="52-01.html#Heading2">The First Iteration of a Generalized 3-D Animation Package</A>
|
||||
<DD><A HREF="52-01.html#Heading3">This Chapter’s Demo Program</A>
|
||||
<DD><A HREF="52-01.html#Heading3">This Chapter’s Demo Program</A>
|
||||
<DD><A HREF="52-07.html#Heading4">A New Animation Framework: X-Sharp</A>
|
||||
<DD><A HREF="52-07.html#Heading5">Three Keys to Realtime Animation Performance</A>
|
||||
<DL>
|
||||
|
|
@ -868,7 +868,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="53-01.html#Heading1"><FONT SIZE="4"><B>Chapter 53—Raw Speed and More</B></FONT></A>
|
||||
<DD><A HREF="53-01.html#Heading1"><FONT SIZE="4"><B>Chapter 53—Raw Speed and More</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="53-01.html#Heading2">The Naked Truth About Speed in 3-D Animation</A>
|
||||
|
|
@ -880,7 +880,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="54-01.html#Heading1"><FONT SIZE="4"><B>Chapter 54—3-D Shading</B></FONT></A>
|
||||
<DD><A HREF="54-01.html#Heading1"><FONT SIZE="4"><B>Chapter 54—3-D Shading</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="54-01.html#Heading2">Putting Realistic Surfaces on Animated 3-D Objects</A>
|
||||
|
|
@ -895,17 +895,17 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="55-01.html#Heading1"><FONT SIZE="4"><B>Chapter 55—Color Modeling in 256-Color Mode</B></FONT></A>
|
||||
<DD><A HREF="55-01.html#Heading1"><FONT SIZE="4"><B>Chapter 55—Color Modeling in 256-Color Mode</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="55-01.html#Heading2">Pondering X-Sharp’s Color Model in an RGB State of Mind</A>
|
||||
<DD><A HREF="55-01.html#Heading2">Pondering X-Sharp’s Color Model in an RGB State of Mind</A>
|
||||
<DL>
|
||||
<DD><A HREF="55-01.html#Heading3">A Color Model</A>
|
||||
<DD><A HREF="55-03.html#Heading4">A Bonus from the BitMan</A>
|
||||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="56-01.html#Heading1"><FONT SIZE="4"><B>Chapter 56—Pooh and the Space Station</B></FONT></A>
|
||||
<DD><A HREF="56-01.html#Heading1"><FONT SIZE="4"><B>Chapter 56—Pooh and the Space Station</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="56-01.html#Heading2">Using Fast Texture Mapping to Place Pooh on a Polygon</A>
|
||||
|
|
@ -916,7 +916,7 @@
|
|||
<DD><A HREF="56-03.html#Heading5">Fast Texture Mapping: An Implementation</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="57-01.html#Heading1"><FONT SIZE="4"><B>Chapter 57—10,000 Freshly Sheared Sheep on the Screen</B></FONT></A>
|
||||
<DD><A HREF="57-01.html#Heading1"><FONT SIZE="4"><B>Chapter 57—10,000 Freshly Sheared Sheep on the Screen</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="57-01.html#Heading2">The Critical Role of Experience in Implementing Fast, Smooth Texture Mapping</A>
|
||||
|
|
@ -931,7 +931,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="58-01.html#Heading1"><FONT SIZE="4"><B>Chapter 58—Heinlein’s Crystal Ball, Spock’s Brain, and the 9-Cycle Dare</B></FONT></A>
|
||||
<DD><A HREF="58-01.html#Heading1"><FONT SIZE="4"><B>Chapter 58—Heinlein’s Crystal Ball, Spock’s Brain, and the 9-Cycle Dare</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="58-01.html#Heading2">Using the Whole-Brain Approach to Accelerate Texture Mapping</A>
|
||||
|
|
@ -940,14 +940,14 @@
|
|||
<DD><A HREF="58-01.html#Heading4">Left-Brain Optimization</A>
|
||||
<DD><A HREF="58-02.html#Heading5">A 90-Degree Shift in Perspective</A>
|
||||
</DL>
|
||||
<DD><A HREF="58-03.html#Heading6">That’s Nice—But it Sure as Heck Ain’t 9 Cycles</A>
|
||||
<DD><A HREF="58-03.html#Heading6">That’s Nice—But it Sure as Heck Ain’t 9 Cycles</A>
|
||||
<DL>
|
||||
<DD><A HREF="58-04.html#Heading7">Don’t Stop Thinking about Those Cycles</A>
|
||||
<DD><A HREF="58-04.html#Heading7">Don’t Stop Thinking about Those Cycles</A>
|
||||
</DL>
|
||||
<DD><A HREF="58-05.html#Heading8">Texture Mapping Notes</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="59-01.html#Heading1"><FONT SIZE="4"><B>Chapter 59—The Idea of BSP Trees</B></FONT></A>
|
||||
<DD><A HREF="59-01.html#Heading1"><FONT SIZE="4"><B>Chapter 59—The Idea of BSP Trees</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="59-01.html#Heading2">What BSP Trees Are and How to Walk Them</A>
|
||||
|
|
@ -971,7 +971,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="60-01.html#Heading1"><FONT SIZE="4"><B>Chapter 60—Compiling BSP Trees</B></FONT></A>
|
||||
<DD><A HREF="60-01.html#Heading1"><FONT SIZE="4"><B>Chapter 60—Compiling BSP Trees</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="60-01.html#Heading2">Taking BSP Trees from Concept to Reality</A>
|
||||
|
|
@ -985,7 +985,7 @@
|
|||
<DD><A HREF="60-04.html#Heading8">BSP Optimization: an Undiscovered Country</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="61-01.html#Heading1"><FONT SIZE="4"><B>Chapter 61—Frames of Reference</B></FONT></A>
|
||||
<DD><A HREF="61-01.html#Heading1"><FONT SIZE="4"><B>Chapter 61—Frames of Reference</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="61-01.html#Heading2">The Fundamentals of the Math behind 3-D Graphics</A>
|
||||
|
|
@ -1003,7 +1003,7 @@
|
|||
<DD><A HREF="61-04.html#Heading10">Rotation by Projection</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="62-01.html#Heading1"><FONT SIZE="4"><B>Chapter 62—One Story, Two Rules, and a BSP Renderer</B></FONT></A>
|
||||
<DD><A HREF="62-01.html#Heading1"><FONT SIZE="4"><B>Chapter 62—One Story, Two Rules, and a BSP Renderer</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="62-01.html#Heading2">Taking a Compiled BSP Tree from Logical to Visual Reality</A>
|
||||
|
|
@ -1021,11 +1021,11 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="63-01.html#Heading1"><FONT SIZE="4"><B>Chapter 63—Floating-Point for Real-Time 3-D</B></FONT></A>
|
||||
<DD><A HREF="63-01.html#Heading1"><FONT SIZE="4"><B>Chapter 63—Floating-Point for Real-Time 3-D</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="63-01.html#Heading2">Knowing When to Hurl Conventional Math Wisdom Out the Window</A>
|
||||
<DD><A HREF="63-01.html#Heading3">Not Your Father’s Floating-Point</A>
|
||||
<DD><A HREF="63-01.html#Heading3">Not Your Father’s Floating-Point</A>
|
||||
<DD><A HREF="63-01.html#Heading4">Pentium Floating-Point Optimization</A>
|
||||
<DL>
|
||||
<DD><A HREF="63-02.html#Heading5">Pipelining, Latency, and Throughput</A>
|
||||
|
|
@ -1039,7 +1039,7 @@
|
|||
<DD><A HREF="63-04.html#Heading12">A Farewell to 3-D Fixed-Point</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="64-01.html#Heading1"><FONT SIZE="4"><B>Chapter 64—Quake’s Visible-Surface Determination</B></FONT></A>
|
||||
<DD><A HREF="64-01.html#Heading1"><FONT SIZE="4"><B>Chapter 64—Quake’s Visible-Surface Determination</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="64-01.html#Heading2">The Challenge of Separating All Things Seen from All Things Unseen</A>
|
||||
|
|
@ -1065,10 +1065,10 @@
|
|||
<DD><A HREF="64-04.html#Heading18">References</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="65-01.html#Heading1"><FONT SIZE="4"><B>Chapter 65—3-D Clipping and Other Thoughts</B></FONT></A>
|
||||
<DD><A HREF="65-01.html#Heading1"><FONT SIZE="4"><B>Chapter 65—3-D Clipping and Other Thoughts</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="65-01.html#Heading2">Determining What’s Inside Your Field of View</A>
|
||||
<DD><A HREF="65-01.html#Heading2">Determining What’s Inside Your Field of View</A>
|
||||
<DD><A HREF="65-01.html#Heading3">3-D Clipping Basics</A>
|
||||
<DL>
|
||||
<DD><A HREF="65-02.html#Heading4">Intersecting a Line Segment with a Plane</A>
|
||||
|
|
@ -1082,7 +1082,7 @@
|
|||
<DD><A HREF="65-04.html#Heading9">Further Reading</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="66-01.html#Heading1"><FONT SIZE="4"><B>Chapter 66—Quake’s Hidden-Surface Removal</B></FONT></A>
|
||||
<DD><A HREF="66-01.html#Heading1"><FONT SIZE="4"><B>Chapter 66—Quake’s Hidden-Surface Removal</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="66-01.html#Heading2">Struggling with Z-Order Solutions to the Hidden Surface Problem</A>
|
||||
|
|
@ -1102,7 +1102,7 @@
|
|||
<DD><A HREF="66-04.html#Heading12">Decisions Deferred</A>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="67-01.html#Heading1"><FONT SIZE="4"><B>Chapter 67—Sorted Spans in Action</B></FONT></A>
|
||||
<DD><A HREF="67-01.html#Heading1"><FONT SIZE="4"><B>Chapter 67—Sorted Spans in Action</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="67-01.html#Heading2">Implementing Independent Span Sorting for Rendering without Overdraw</A>
|
||||
|
|
@ -1119,7 +1119,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="68-01.html#Heading1"><FONT SIZE="4"><B>Chapter 68—Quake’s Lighting Model</B></FONT></A>
|
||||
<DD><A HREF="68-01.html#Heading1"><FONT SIZE="4"><B>Chapter 68—Quake’s Lighting Model</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="68-01.html#Heading2">A Radically Different Approach to Lighting Polygons</A>
|
||||
|
|
@ -1141,7 +1141,7 @@
|
|||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="69-01.html#Heading1"><FONT SIZE="4"><B>Chapter 69—Surface Caching and Quake’s Triangle Models</B></FONT></A>
|
||||
<DD><A HREF="69-01.html#Heading1"><FONT SIZE="4"><B>Chapter 69—Surface Caching and Quake’s Triangle Models</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="69-01.html#Heading2">Probing Hardware-Assisted Surfaces and Fast Model Animation Without Sprites</A>
|
||||
|
|
@ -1154,18 +1154,18 @@
|
|||
<DL>
|
||||
<DD><A HREF="69-02.html#Heading7">Drawing Triangle Models Fast</A>
|
||||
<DD><A HREF="69-03.html#Heading8">Trading Subpixel Precision for Speed</A>
|
||||
<DD><A HREF="69-03.html#Heading9">An Idea that Didn’t Work</A>
|
||||
<DD><A HREF="69-03.html#Heading9">An Idea that Didn’t Work</A>
|
||||
<DD><A HREF="69-03.html#Heading10">An Idea that Did Work</A>
|
||||
<DD><A HREF="69-04.html#Heading11">More Ideas that Might Work</A>
|
||||
</DL>
|
||||
</DL>
|
||||
</B></FONT>
|
||||
<DD><A HREF="70-01.html#Heading1"><FONT SIZE="4"><B>Chapter 70—Quake: A Post-Mortem and a Glimpse into the Future</B></FONT></A>
|
||||
<DD><A HREF="70-01.html#Heading1"><FONT SIZE="4"><B>Chapter 70—Quake: A Post-Mortem and a Glimpse into the Future</B></FONT></A>
|
||||
<FONT SIZE="3"><B>
|
||||
<DL>
|
||||
<DD><A HREF="70-01.html#Heading2">Preprocessing the World</A>
|
||||
<DD><A HREF="70-02.html#Heading3">The Potentially Visible Set (PVS)</A>
|
||||
<DD><A HREF="70-03.html#Heading4">Passages: The Last-Minute Change that Didn’t Happen</A>
|
||||
<DD><A HREF="70-03.html#Heading4">Passages: The Last-Minute Change that Didn’t Happen</A>
|
||||
<DD><A HREF="70-03.html#Heading5">Drawing the World</A>
|
||||
<DD><A HREF="70-04.html#Heading6">Rasterization</A>
|
||||
<DL>
|
||||
|
|
|
|||
Loading…
Reference in a new issue