Assembler






BIOS ,
.9.6. ,
, .
M1
BIOS. VIDEO_IO
AH .
,
EQUIP_FLAG.
 
IBM BIOS ,
, ,
. BIOS ,
. ,
BIOS , ,
BIOS .
BIOS
.
 
AH
-------------------------------------------------
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
-------------------------------------------------
 
. 9.4 BIOS
 
, BIOS,
,
EQUIP_FLAG,
. 5 4 1,
. ,
. IBM
, ,
.
,
, .
 
EQUIP_FLAG ,
BIOS.
BIOS ES 0B000H,
- 0B800H.
BIOS
, .
ES.
, , EQUIP_FLAG ,
,
. ,
, - 6845
, BIOS
. BIOS ADDR_6845
( AH = 0).

.
 
CURSOR_POSN ,
.
BIOS
.
, ,
,
.
 
IBM ,
,
. ,
, EQUIP_FLAG,
INT 10H AH = 0.

BIOS. BIOS
, .
. ,
,
.
( BIOS),
, ,
.
 
. IBM PC
- ,
. ,
.
,
,
.
, ,
, .
 
BIOS
. ,
.9.7.
80- . ,
, ,
BIOS
.
, ,
0B000H.
, .

,
. ,
BIOS, ,
, .
 
Microsoft (R) Macro Assembler Version 5.00 1/1/80 04:06:26
. 9.7 Page 1-1
 
 
PAGE ,132
TITLE . 9.7
0000 STACK SEGMENT STACK
0000 0040[ DW 64 DUP (?)
????
]
 
0080 STACK ENDS
0000 ABS0 SEGMENT AT 0
0410 ORG 410H
0410 EQUIP_FLAG LABEL BYTE ;
0410 ABS0 ENDS ;
 
 
0000 CODE SEGMENT
ASSUME CS:CODE,DS:ABS0
COLOR PROC FAR
0000 1E PUSH DS ;
0001 2B C0 SUB AX, AX
0003 50 PUSH AX
 
0004 8E D8 MOV DS, AX ; ABS0 DS
0006 80 26 0410 R CF AND EQUIP_FLAG, 11001111b ;
000B 80 0E 0410 R 20 OR EQUIP_FLAG, 00100000b ; ( 80*25)
0010 B8 0003 MOV AX, 3
0013 CD 10 INT 10H ;
0015 C3 RET ;
COLOR ENDP
0016 CODE ENDS
END
 
. 9.7