INT 10H . AH , . BX, CX, DX, SI BP. .
AH=00: . . p c INT 10H. . AL :
00 40 25 -
01 40 25 16-
02 80 25 -
03 80 25 16-
04 320 200 4-
05 320 200 -
06 640 200 -
07 80 25 -
08 - 0A PCjr
0D 320 200 16- (EGA)
0E 640 200 16- (EGA)
0F 640 350 - (EGA)
10 640 350 64- (EGA)
EGA (Enhanced Graphics Adapter) - . 16-
MOV AH,00;
MOV AL,03; 80 25
INT 10H; BIOS
, , BIOS INT 11H. AX , 5 4 :
01 40 25 -
10 80 25 -
11 80 25 - -
, , AX INT 11H . AH=01: . ASCII-. ' . INT . p . INT 10H, : 4-0 CH , 4-0 CL - . - p : 0 13 EGA p 0 7 . :
MOV AH,01;
MOV CH,00;
MOV CL,13;
INT 10H; BIOS
. - , , 04/08, 03/10 .. , . 12/13 ( ) 6/7 ( ) .
|
|
AH=02: . c - c . 0, 0 3 80 . AH 02, BH DX :
MOV AH,02;
MOV BH,00; 0
MOV DH,;
MOV DL,;
INT 10H; BIOS
AH=03: . ( ), p , :
MOV AH,03;
MOV BH,00; 0
INT 10H; BIOS
ϳ DH , DL- . CH c, CL -.
AH=04: . p.
AH=05: . 0 3. 40 25 8 ( 0 7), 80 25 - 4 ( 0 3).
MOV AH,05;
MOV AL,;
INT 10H; BIOS
AH=06: . , . , , . .
06 . AL 00 , . AL . , . :
MOV AX,0601H;
MOV BH,07;: , -
MOV CX,0000; 00,00
MOV DX,184FH; 24,79 ( )
INT 10H; BIOS
- AL. BH , , .. CX DX - . :
1. ROW () 0 .
2. .
3. , (CMP ROW,22).
4. , ROW (INC ROW) .
5. , , ROW .
AH=07: . . AH 07, p 06 .
|
|
AH=08: / . , , :
MOV AH,08; ./.
MOV BH,00; 0 ( .)
INT 10H; BIOS
AL , AH - . . 00 ASCII-. c, .
AH=09: / . , .. :
MOV AH,09;
MOV AL,;
MOV BH,; (..)
MOV BL,;
MOV CX,;
INT 10H; BIOS
AL . CX . . . ' "" :
MOV AH,09;
MOV AL,03H; ( )
MOV BH,00; 0 (. )
MOV BL,0F0H;,
MOV CX,05;'
INT 10H; BIOS
( ) . , CX 01 AL ' . CX , LOOP. , ( 02).
BL . 7 0, , 7 1, XOR.
AH=0A: . 0A 09 , 0A :
MOV AH,0AH;
MOV AL,;
MOV BH,; ( )
MOV CX,;
INT 10H; BIOS
DOS INT 21H .
AH=0E: . , . AH 0E, p AL , ( ) BL - BH. ( 07H), (08H), (0AH) (0DH) , . , c, .
AH=0F: . AL (. AH=00), p AH - (20, 40 80), BH - .
AH=13: ( AT). ' AT :
MOV AH,13H;
MOV AL,;0, 1, 2 3
MOV BH,;
|
|
LEA BP,; ES:BP
MOV CX,;
MOV DX,;
INT 10H; BIOS
:
0 - ;
1 - ;
2 - , ;
3 - , .
2. .
Բ
- - (pixel). (CGA) :
1. ( ROM) 100 160 ( ). 16 , "". Motorola 6845 CRT. : .3D4 3D5.
2. 200 320 . ( ).
3. 200 640 . 16 ', - (BW) . 8 (.. ). , - .
, ROM 128 ASCII-. INT 1FH 1 ', 128 . (8 ). ³ , , p.
, 0 3:
::C1 C0:C1 C0:C1 C0:C1 C0:
ϳ: 0 1 2 3
- , 0 3. 4 , 4 : 00, 01, 10 11. p 00 16 01, 10, 11 . p :
C1 C0 0 1
0 0
0 1
1 0
1 1
INT 10H. , , , 0, : , , . , 10101010, . - 1, : , , . , 00011011, , , . BIOS INT 10H AH=00 INT 10H . AH=11 INT 10H . - AH : AH=00: . AH 04 p AL :
MOV AH,00;
MOV AL,04; 320200
INT 10H
. 9.
AH=0BH: . BH BL: BH=00 p BL. 1 16 o 0 F;
|
|
BH=01 BL (0 1):
MOV AH,0BH;
MOV BH,01;
MOV BL,00; 0 (, , .)
INT 10H; BIOS
, , , . . AH=0BH , , 0 , .
AH=0CH: . 0C AH ( ). , 320200 DX ( 0 199), CX - ( 0 319). AL ( 0 3):
MOV AH,0CH;
MOV AL,;
MOV CX,;
MOV DX,;
INT 10H; BIOS
AH=0DH: . . DX ( 0 199), CX - ( 0 319). AH 0D. AL.
11
1. " " " "
2. PSP
3.
1. " " " "
, , , , .
, , , , .
2. PSP
(PSP) 256 ( 100) ' COM- EXE-, . PSP :
00 INT 20H (.CD20).
02 ' 0. , 512K 8000 80000.
04 .
05 DOS.
OA .
OE Ctrl/Break.
12 .
16 .
2C ASCIIZ .
50 DOS (INT 21H RETF).
5C 1, (FCB1).
6C 2, (FCB2); , FCB1 .
80-FF (DTA).
DTA
PSP .80 - . , . , ( ). "", ' . DTA:
1. . , CALCIT.EXE CALCIT [return]. ϳ , DOS PSP , .80 .000D. , CALCIT, " ". Return , . , .0D. , .80 81 000D.
2. . , ( ' ), , COLOR BY, COLOR "BY" . , .80, DOS :
80:03 20 42 59 0D
ֳ 3, , "BY" .
3. ' . DEL ( ) . , , DEL B:CALCIT.OBJ [return], PSP, .5C .80, :
|
|
5C: 02 43 41 4C 43 49 54 20 20 4F 42 4A
C A L C I T O B J
80: 0D 20 42 3A 43 41 4C 43 49 54 2E 4F 42 4A 0D B: C A L C I T. 0 B J
5C, FCB, ' , , CALCIT.OBJ, ' . (02=B ). CALCIT , ' , , OBJ. , :
progname A:FILEA,B:FILEB
DOS FCB FILEA 5C FCB FILEB .6C. 80 ( ) - 16, (.20) A:FILEA,B:FILEB (OD).
PSP , PSP . DTA COM- .80 SI :
MOV SI,80H; DTA
CMP BYTE PTR [SI],0; ?
JE EXIT
EXE- , PSP. , DS ES PSP, ES DS:
MOV AX,DSEG
MOV DS,AX
MOV SAVEPSP,ES
ϳ PSP:
MOV SI,SAVEPSP
CMP BYTE PTR [SI+ 80H],0; ?
JE EXIT
DOS 3.0 INT 62H, BX PSP, PSP.
3.
. , PSP 2c ( ﳺ ), , .
, , , config.sys autoexec.bat. , :
db PATH=C:\Windows,0
db PROMPT=$p$g,0
, , .
12
BIOS
³ BIOS , IBM PC. , , .
BIOS, VIDEO DISPLAY DATA AREA 49H, , . , . , , . ³ BIOS , CRT_MODE_SET CRT_PALETTE . ( 61H), BIOS . , BIOS ' .
, BIOS. CURSOR_POSN. , . CRT 6845 . BIOS , ' . 40- , .
BIOS . ' , , . M1 BIOS. VIDEO_IO AH . 䳿, EQUIP_FLAG.
Գ IBM BIOS , , , . BIOS , . , BIOS , , BIOS . ³ 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, , 䳿, .