Normal quotes
This commit is contained in:
parent
5e10794a24
commit
18011c595a
352 changed files with 6040 additions and 6040 deletions
16
25-02.md
16
25-02.md
|
|
@ -6,11 +6,11 @@
|
|||
|
||||
; Program to illustrate operation of data rotate and bit mask
|
||||
; features of Graphics Controller. Draws 8x8 character at
|
||||
; specified location, using VGA’s 8x8 ROM font. Designed
|
||||
; specified location, using VGA's 8x8 ROM font. Designed
|
||||
; for use with modes 0Dh, 0Eh, 0Fh, 10h, and 12h.
|
||||
; By Michael Abrash.
|
||||
;
|
||||
stack segment para stack ‘STACK’
|
||||
stack segment para stack ‘STACK'
|
||||
db 512 dup(?)
|
||||
stack ends
|
||||
;
|
||||
|
|
@ -25,13 +25,13 @@
|
|||
; register index
|
||||
GC_BIT_MASK equ 8 ;GC bit mask register index
|
||||
;
|
||||
dseg segment para common ‘DATA’
|
||||
dseg segment para common ‘DATA'
|
||||
TEST_TEXT_ROW equ 69 ;row to display test text at
|
||||
TEST_TEXT_COL equ 17 ;column to display test text at
|
||||
TEST_TEXT_WIDTH equ 8 ;width of a character in pixels
|
||||
|
||||
TestString label byte
|
||||
db ‘Hello, world!’,0 ;test string to print.
|
||||
db ‘Hello, world!',0 ;test string to print.
|
||||
FontPointer dd ? ;font offset
|
||||
dseg ends
|
||||
;
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
out dx,ax
|
||||
endm
|
||||
;
|
||||
cseg segment para public ‘CODE’
|
||||
cseg segment para public ‘CODE'
|
||||
assume cs:cseg, ds:dseg
|
||||
start proc near
|
||||
mov ax,dseg
|
||||
|
|
@ -106,7 +106,7 @@
|
|||
; BX = row to draw text character at
|
||||
; CX = column to draw text character at
|
||||
;
|
||||
; Forces ALU function to “move”.
|
||||
; Forces ALU function to "move".
|
||||
;
|
||||
DrawChar proc near
|
||||
push ax
|
||||
|
|
@ -237,14 +237,14 @@
|
|||
|
||||
The bit mask can be used for much more than bit-aligned fonts. For
|
||||
example, the bit mask is useful for fast pixel drawing, such as that
|
||||
performed when drawing lines, as we’ll see in Chapter 35. It’s also
|
||||
performed when drawing lines, as we'll see in Chapter 35. It's also
|
||||
useful for drawing the edges of primitives, such as filled polygons,
|
||||
that potentially involve modifying some but not all of the pixels
|
||||
controlled by a single byte of display memory.
|
||||
|
||||
Basically, the bit mask is handy whenever only *some* of the eight
|
||||
pixels in a byte of display memory need to be changed, because it allows
|
||||
full use of the VGA’s four-way parallel processing capabilities for the
|
||||
full use of the VGA's four-way parallel processing capabilities for the
|
||||
pixels that are to be drawn, without interfering with the pixels that
|
||||
are to be left unchanged. The alternative would be plane-by-plane
|
||||
processing, which from a performance perspective would be undesirable
|
||||
|
|
|
|||
Loading…
Reference in a new issue