„ЋђЋѓ€… „ђ“‡њџ !
ЏаҐ¤« Ј Ґ¬ ў 襬㠢Ё¬ Ёо Ў®а Ёд®а¬ жЁ®ле ¬ вҐаЁ «®ў:
2BART1 - ЉЂЉ ‘Ћ‡„Ђ’њ TSR Ѓ…‡ PSP;
2BART2 - Ќ…‘ЉЋ‹њЉЋ ‘‹Ћ‚ Ћ ‚€„…ЋЂ„ЂЏ’…ђЂ•;
2BCOPY1 - ЉЂЉ ‘ЉЋЏ€ђЋ‚Ђ’њ ‡Ђ™€™…ЌЌ“ћ Ћ’ ЉЋЏ€ђЋ‚ЂЌ€џ „€‘Љ…’“;
Њ вҐаЁ «л Ї®¤Ј®в®ў«Ґл ў д®а¬ ⥠¤«п ҐЇ®б।б⢥®© ЇҐз вЁ
«оЎ®¬ гбва®©б⢥.
‘в вмЁ 2BART1, 2BART2 ЇаҐ¤ § зҐл ¤«п Їа®Ја ¬¬Ёбв®ў.
‘в вмп 2BCOPY1 ў®§¬®¦® Ўг¤Ґв ЁвҐаҐб Є Є ¤«п Їа®Ја ¬¬Ёбв®ў,
в Є Ё ¤«п Ї®«м§®ў ⥫Ґ© Џќ‚Њ.
Ќ…‘ЉЋ‹њЉЋ ‘‹Ћ‚ ЋЃ Ђ‚’ЋђЂ•.
Њ вҐаЁ «л Ї®¤Ј®в®ў«Ґл ЈагЇЇ®© ўв®а®ў, Є®в®алҐ §ў «Ё ᥡп
2B PROGRAMMERS GROUP. Њл ўбҐ ў Їа®и«®¬ а Ў®в «Ё
Ј®бЇаҐ¤ЇаЁпвЁЁ, ⥯Ґам ў б®ў¬Ґб⮬ ЇаҐ¤ЇаЁпвЁЁ "„€Ђ‹Ћѓ" ў
®в¤Ґ«Ґ нЄбЇҐавЁ§л Ё бҐавЁдЁЄ жЁЁ Їа®Ја ¬¬®Ј® ®ЎҐбЇҐзҐЁп. ‚
б®бв ў ЈагЇЇл ўе®¤пв ўлб®Є®Єў «ЁдЁжЁа®ў лҐ бЁб⥬лҐ
Їа®Ја ¬¬Ёбвл, § Ё¬ ўиЁҐбп а §а Ў®вЄ®© Ё ¤®а Ў®вЄ®©
®ЇҐа жЁ®ле бЁб⥬ ¤«п …‘ ќ‚Њ. ‚ бв®п饥 ўаҐ¬п ¬л
бЇҐжЁ «Ё§Ёа㥬бп ў ®Ў« бвЁ бЁб⥬ Є®¬ЇмовҐа®© ЎҐ§®Ї б®бвЁ,
бЁб⥬ § йЁвл ®в Є®ЇЁа®ў Ёп Ё а §а Ў®вЄЁ Їа®Ја ¬¬®Ј®
®ЎҐбЇҐзҐЁп ¤«п а §«Ёз®Ј® ®Ў®а㤮ў Ёп Џќ‚Њ.
ЉЂЉ HЂ‰’€ Ђ‚’ЋђЋ‚
’Ґ«Ґд®: 095-329-4611
’Ґ«Ґд Єб: 095-329-4711
E-mail: Vlad_Seregin, 2:5020/6 @FidoNet (JVD1BBS, 095-329-2192)
Ђ¤pҐб: Ј. Њ®бЄў , г«. џЈ®¤ п, 17
Ћв¤Ґ« ќЄбЇҐpвЁ§л Ё ‘ҐpвЁдЁЄ жЁЁ.
1
ѓђ“ЏЏЂ ЏђЋѓђЂЊЊ€‘’Ћ‚ 2B.
‘ЏЋ‘ЋЃ ‘Ћ‡„ЂЌ€џ TSR ЏђЋѓђЂЊЊ Ѓ…‡ PSP.
‚ ¤ ®© бв вмҐ а бб¬ ваЁў Ґвбп бЇ®б®Ў Ї®бв஥Ёп
१Ё¤Ґвле Їа®Ја ¬¬ - TSR (Terminate and Stay Resident),
Ї®§ў®«пойЁ© ЁбЇ®«м§®ў вм ®Ў« бвм PSP (Program Segment
Prefix) ¤«п а §¬ҐйҐЁп १Ё¤Ґв®Ј® Є®¤ Їа®Ја ¬¬л.
Ќ…‘ЉЋ‹њЉЋ ‘‹Ћ‚ Ћ TSR.
ЏаЁ а §а Ў®вЄҐ TSR - Їа®Ја ¬¬ бв ¤ авл¬Ё б।бвў ¬Ё
DOS ў Ї ¬пвЁ Ї®б«Ґ § ўҐаиҐЁп Їа®Ја ¬¬л ®бв Ґвбп PSP
а §¬Ґа®¬ 256 Ў ©в Ё«Ё Ї® Єа ©Ґ© ¬ҐаҐ ҐЈ® з бвм, Ґб«Ё
Їа®Ја ¬¬ ЁбЇ®«м§гҐв ®Ў« бвм FCB (File Control Block) Ё
Ї а ¬Ґва®ў ¤«п б®Ўб⢥ле 㦤. Њл а ббЄ ¦Ґ¬ ‚ ¬ ® бЇ®б®ЎҐ,
Ї®§ў®«по饬 Ї®«®бвмо ЁбЇ®«м§®ў вм ®Ў« бвм PSP ў ЁвҐаҐб е
१Ё¤Ґв®© Їа®Ја ¬¬л Ё ЇаЁўҐ¤Ґ¬ ЇаЁ¬Ґа в Є®© Їа®Ја ¬¬л.
„ л© бЇ®б®Ў Ўл« а §а Ў®в ўв®а ¬Ё ў з «Ґ 1989 Ј®¤ ,
Є®Ј¤ Ї®вॡ®ў «®бм § Јаг§Ёвм ¬®Ј® Єа®е®вле TSR -
Їа®Ја ¬¬, а §¬Ґа Є®в®але Ґ ЇаҐўли « PSP.
ЉЋ… —’Ћ Ћ Ќ…„ЋЉ“Њ…Ќ’€ђЋ‚ЂЌЌ›• ”“ЌЉ–€џ• DOS.
„«п Ї®Ё¬ Ёп ¬Ґе Ё§¬ а §а Ў®вЄЁ TSR ЎҐ§ PSP
Ґ®Ўе®¤Ё¬® ®§ Є®¬Ёвмбп б ҐЄ®в®ал¬Ё Ґ¤®Єг¬ҐвЁа®ў л¬Ё
дгЄжЁп¬Ё DOS Ё б д®а¬ в ¬Ё PSP Ё MCB - Memory Control
Block.
PSP - PROGRAM SEGMENT PREFIX.
PSP ўбҐЈ¤ бва®Ёвбп DOS ЇаЁ § ЇгбЄҐ «оЎ®© Їа®Ја ¬¬л Ё
ҐЇ®б।б⢥® ЇаҐ¤иҐбвўгҐв з «г Їа®Ја ¬¬л. ђ бᬮваЁ¬
д®а¬ в PSP.
‘Њ…™…Ќ€… ђЂ‡Њ…ђ ЋЏ€‘ЂЌ€…
00h 2 ЃЂ‰’Ђ ᮤҐа¦Ёв Є®¬ ¤г INT 20h, Є®в®а п
ЁбЇ®«м§гҐвбп ¤«п § ўҐаиҐЁп Їа®Ја ¬¬л
02h ‘‹Ћ‚Ћ ᥣ¬Ґвл© ¤аҐб бў®Ў®¤®© Ї ¬пвЁ,
б«Ґ¤го饩, § Ї ¬пвмо, ўл¤Ґ«Ґ®©
Їа®Ја ¬¬Ґ. ќв® ¬®¦Ґв Ўлвм «ЁЎ® ¤аҐб §
Ї ¬пвмо DOS ( ЇаЁ¬Ґа, A000h), «ЁЎ®
¤аҐб б«Ґ¤го饣® ¤®бвгЇ®Ј® MCB.
04h ЃЂ‰’ १Ґаў.
05h 5 ЃЂ‰’ ¤«Ёл© ўл§®ў ¤ЁбЇҐвзҐа дгЄжЁ© DOS.
‘®¤Ґа¦Ёв Є®¬ ¤г ¤«Ё®Ј® ЇҐаҐе®¤ Є
¤ЁбЇҐвзҐаг дгЄжЁ© DOS. €бЇ®«м§гҐвбп ў
Їа®Ја ¬¬ е, ®аЁҐвЁа®ў ле CP/M.
‘¬ҐйҐЁҐ ў Є®¬ ¤Ґ ¤«Ё®Ј® ЇҐаҐе®¤
ᮤҐа¦Ёв Є®«ЁзҐбвў® Ў ©в®ў, ¤®бвгЇле ў
ᥣ¬ҐвҐ Є®¤ Їа®Ја ¬¬л.
2
0Ah „‚.‘‹Ћ‚Ћ Є®ЇЁп ўҐЄв®а ЇаҐалў Ёп 22h, Ї®
Є®в®а®¬г гЇа ў«ҐЁҐ ЇҐаҐ¤ Ґвбп ¤«п
§ ўҐаиҐЁп Їа®Ја ¬¬л.
0Eh „‚.‘‹Ћ‚Ћ Є®ЇЁп ўҐЄв®а ЇаҐалў Ёп 23h, Ї®
Є®в®а®¬г гЇа ў«ҐЁҐ ЇҐаҐ¤ Ґвбп ЇаЁ
¦ вЁЁ CONTROL-BREAK Ё«Ё CONTROL-C.
12h „‚.‘‹Ћ‚Ћ Є®ЇЁп ўҐЄв®а ЇаҐалў Ёп 24h, Ї®
Є®в®а®¬г гЇа ў«ҐЁҐ ЇҐаҐ¤ Ґвбп ЇаЁ
®Ў а㦥ЁЁ ЄаЁвЁзҐбЄ®© ®иЁЎЄЁ.
16h ‘‹Ћ‚Ћ ᥣ¬Ґвл© ¤аҐб PSP தЁвҐ«мбЄ®Ј®
Їа®жҐбб ( ¤аҐб ⥪г饣® PSP ¤«п
Їа®жҐбб , г Є®в®а®Ј® Ґв தЁвҐ«п).
18h 20 ЃЂ‰’ FILE HANDLE TABLE. ‘®¤Ґа¦Ёв 20
®¤®Ў ©в®ўле Ё¤ҐЄб®ў ¤«п бЁб⥬®©
в Ў«Ёжл д ©«®ў. ЏҐаўлҐ Їпвм ўе®¤®ў
ЇаҐ¤ § зҐл ¤«п STDIN, STDOUT,STDERR,
AUXIO Ё LSTOUT.
2Ch ‘‹Ћ‚Ћ ᥣ¬Ґвл© ¤аҐб Ў«®Є баҐ¤л ¤«п
Їа®жҐбб .
2Eh „‚.‘‹Ћ‚Ћ ®Ў« бвм б®еа ҐЁп гЄ § ⥫п б⥪
Їа®жҐбб , Є®Ј¤ Їа®жҐбб ЁбЇ®«м§гҐв б⥪
DOS (в.Ґ. ᮤҐа¦Ё¬®Ґ SS:SP ЇҐаҐ¤
Ї®б«Ґ¤Ё¬ Ї®¤Є«о票Ґ¬ дгЄжЁЁ DOS б
Ї®¬®ймо INT 21h).
32h ‘‹Ћ‚Ћ ¬ ЄбЁ¬ «м®Ґ Є®«ЁзҐбвў® ўе®¤®ў ў FILE
HANDLE TABLE (Ї® 㬮«з Ёо 20).
34h „‚.‘‹Ћ‚Ћ ¤аҐб FILE HANDLE TABLE (бв ¤ ав®
гЄ §лў Ґв в Ў«Ёжг ў ⥪г饬 PSP).
38h 24 ЃЂ‰’Ђ १Ґаў.
50h 3 ЃЂ‰’Ђ Є®¬ ¤ INT 21h, § Є®в®а®© б«Ґ¤гҐв
Є®¬ ¤ far RET. €бЇ®«м§гҐвбп ¤«п
ўл§®ў ¤ЁбЇҐвзҐа дгЄжЁ© DOS.
53h 2 ЃЂ‰’Ђ १Ґаў.
55h 7 ЃЂ‰’ а биЁаҐЁҐ ЇҐаў®Ј® FCB.
5Ch 16 ЃЂ‰’ з «млҐ Ў ©вл ЇҐаў®Ј® Ґ®вЄалв®Ј®
FCB. ЋвЄалвЁҐ ¤ ®Ј® FCB ЇаЁўҐ¤Ґв Є
а §агиҐЁо ўв®а®Ј® FCB Ё Ў ©в б ¤«Ё®©
Є®¬ ¤®© бва®ЄЁ.
6Ch 16 ЃЂ‰’ з «млҐ Ў ©вл ўв®а®Ј® Ґ®вЄалв®Ј®
FCB. ЋвЄалвЁҐ ¤ ®Ј® FCB ЇаЁўҐ¤Ґв Є
а §агиҐЁо Є®¬ ¤®© бва®ЄЁ.
7ch „‚.‘‹Ћ‚Ћ १Ґаў.
80h 128 ЃЂ‰’ ®Ў« бвм DTA (Data Transfer Area) Ї®
㬮«з Ёо. ЏҐаҐЄалў Ґв Ў ©в б ¤«Ё®©
Є®¬ ¤®© бва®ЄЁ Ё ЎгдҐа Є®¬ ¤®©
бва®ЄЁ (127 Ў ©в®ў).
ђ §¬Ґа Ў«®Є - 256 Ў ©в.
3
MCB - MEMORY CONTROL BLOCK.
MCB пў«пҐвбп Ў«®Є®¬ DOS ®ЇЁблў ойЁ¬ Є ¦¤л©
а бЇаҐ¤Ґ«Ґл© гз бв®Є Ї ¬пвЁ. Љ Є Їа ўЁ«® MCB ўбҐЈ¤
бва®Ёвбп ЇҐаҐ¤ PSP ЁбЇ®«пҐ¬®© Їа®Ја ¬¬л. ђ бᬮваЁ¬ д®а¬ в
MCB.
‘Њ…™…Ќ€… ђЂ‡Њ…ђ ЋЏ€‘ЂЌ€…
00h ЃЂ‰’ вЁЇ Ў«®Є :
'M' (4Dh) - Їа®¬Ґ¦гв®зл© Ў«®Є;
'Z' (5Ah) - Ї®б«Ґ¤Ё© Ў«®Є.
01h ‘‹Ћ‚Ћ ᥣ¬Ґв ў« ¤Ґ«мж Ў«®Є , 0 - бў®Ў®¤л©
Ў«®Є.
03h ‘‹Ћ‚Ћ Є®«ЁзҐбвў® Ї а Ја д®ў ў Ў«®ЄҐ.
05h 11 ЃЂ‰’ १Ґаў.
ђ §¬Ґа Ў«®Є - 16 Ў ©в.
Ќ…„ЋЉ“Њ…Ќ’€ђЋ‚ЂЌЌ›… ”“ЌЉ–€€ DOS.
ђ бᬮваЁ¬ ⥯Ґам Ґ¤®Єг¬ҐвЁа®ў лҐ дгЄжЁЁ DOS,
Є®в®алҐ ЁбЇ®«м§говбп ¤«п Ї®бв஥Ёп TSR ЎҐ§ PSP.
“‘’ЂЌЋ‚€’њ ’…Љ“™€‰ PSP.
„ п дгЄжЁп гЄ §лў Ґв DOS, зв® ў Є зҐб⢥ ⥪г饣®
б«Ґ¤гҐв ЁбЇ®«м§®ў вм гЄ § л© PSP.
‚•Ћ„Ќ›… ЏЂђЂЊ…’ђ›:
AH = 50h
BX = ᥣ¬Ґвл© ¤аҐб ®ў®Ј® PSP.
‘Ћ‡„Ђ’њ ЏЋ„—€Ќ…ЌЌ›‰ PSP.
„ п дгЄжЁп вॡгҐв ®в DOS б®§¤ вм Ї®¤зЁҐл© PSP.
‚ ®в«ЁзЁЁ ®в дгЄжЁЁ 26h ¤ лҐ Ґ Є®ЇЁаговбп Ё§ ⥪г饣®
PSP, бва®пвбп § ®ў®.
‚•Ћ„Ќ›… ЏЂђЂЊ…’ђ›:
AH = 55h
BX = ᥣ¬Ґвл© ¤аҐб ¤«п Ї®бв஥Ёп ®ў®Ј® PSP.
SI = § 票Ґ, Є®в®а®Ґ вॡгҐвбп гбв ®ўЁвм ў Ї®«Ґ б®
ᬥ饨Ґ¬ 2 ў ®ў®¬ PSP.
4
ЏђЋ–…‘‘ ‡Ђ‚…ђ…Ќ€џ ђ…‡€„…Ќ’ЌЋ‰ ЏђЋѓђЂЊЊ›.
‘гй®бвм § ўҐа襨п १Ё¤Ґв®© Їа®Ја ¬¬л ЎҐ§ PSP
б®бв®Ёв ў б®§¤ ЁЁ ®ў®Ј® PSP Ё гЄ § ЁЁ DOS ЁбЇ®«м§®ў вм
нв®в PSP ў Є зҐб⢥ ЄвЁў®Ј®. ЏаЁ н⮬ б ¬ ⥪бв
१Ё¤Ґв®© з бвЁ ЇҐаҐ¬Ґй Ґвбп з «® бв а®Ј® PSP.
ђ бᬮваЁ¬ Ї®б«Ґ¤®ў ⥫м®бвм ¤Ґ©бвўЁ© ЇаЁ § ўҐа襨Ё
Їа®Ја ¬¬л.
1. Ћбў®Ў®¤Ёвм ENVIRONMENT, ¤аҐб Є®в®а®Ј® 室Ёвбп ў
PSP Ї® ᬥ饨о 2Ch. ‚®®ЎйҐ Ј®ў®ап, нв® ¤Ґ©бвўЁҐ Ґ бўп§ ®
б б®Ўб⢥® Їа®жҐбᮬ § ўҐа襨п १Ё¤Ґв®© Їа®Ја ¬¬л ЎҐ§
PSP Ё ४®¬Ґ¤гҐвбп ¤«п «оЎ®Ј® бЇ®б®Ў § ўҐа襨п
१Ё¤Ґвле Їа®Ја ¬¬.
2. €§¬ҐЁвм а §¬Ґа Ї ¬пвЁ, ЁбЇ®«м§гҐ¬л© Їа®Ја ¬¬®©,
гЄ § ў ў Є зҐб⢥ ®ў®Ј® а §¬Ґа ¤«Ёг १Ё¤Ґв®© з бвЁ
Їа®Ја ¬¬л ў Ї а Ја д е, ў Є зҐб⢥ ¤аҐб ¬®¤ЁдЁжЁа㥬®©
Ї ¬пвЁ - ᥣ¬Ґвл© ¤аҐб PSP. „«п ўлЇ®«ҐЁп ЁбЇ®«м§гҐвбп
дгЄжЁп DOS 4Ah. …б«Ё १Ё¤Ґв п з бвм зЁ Ґвбп б з «
Їа®Ја ¬¬л, в® ҐҐ б«Ґ¤гҐв б з « б®еа Ёвм, в.Є. ЇаЁ
®бў®Ў®¦¤ҐЁЁ Ї ¬пвЁ ў ⥫Ґ Їа®Ја ¬¬л Ўг¤Ґв Ї®бв஥ ®ўл©
MCB. ’ Є¦Ґ 楫Ґб®®Ўа §® § १ҐаўЁа®ў вм Ї®б«Ґ १Ё¤Ґв®©
з бвЁ гз бв®Є ¤«Ё®© 16 Ў ©в ¤«п MCB, зв®Ўл Ї®б«Ґ¤гойЁҐ
¤Ґ©бвўЁп Ґ гЁз⮦Ё«Ё ¤ «мҐ©иЁ© Є®¤ Їа®Ја ¬¬л.
3. ‚лзЁб«пҐвбп ᥣ¬Ґвл© ¤аҐб ¤«п Ї®бв஥Ёп ®ў®Ј®
PSP Ї® д®а¬г«Ґ <¤«Ё १Ё¤Ґв®© з бвЁ ў
Ї а Ја д е>+<ᥣ¬Ґвл© ¤аҐб бв а®Ј® PSP>+1 (а §¬Ґа MCB ў
Ї а Ја д е).
4. ‘ва®Ёвбп ®ўл© PSP Ї® ўлзЁб«Ґ®¬г ᥣ¬Ґв®¬г
¤аҐбг б ЁбЇ®«м§®ў ЁҐ¬ дгЄжЁЁ 55h. ‚ Є зҐб⢥ § 票п SI
ЎҐаҐвбп Ї®«Ґ ᮠᬥ饨Ґ¬ 2 ў бв ஬ PSP.
5. Љ®а४вЁагҐвбп ¤аҐб தЁвҐ«мбЄ®Ј® PSP ў ®ў®¬ PSP
Ї® ᬥ饨о 16h. ‡ 票Ґ ўлЎЁа Ґвбп Ё§ Ї®«п б в ЄЁ¬ ¦Ґ
ᬥ饨Ґ¬ Ё§ бв а®Ј® PSP.
6. Ќ®ўл© PSP гЄ §лў Ґвбп DOS ў Є зҐб⢥ ⥪г饣® б
ЁбЇ®«м§®ў ЁҐ¬ дгЄжЁЁ 50h.
7. Љ®а४вЁагҐвбп гЄ § ⥫м б®Ўб⢥ЁЄ Ї ¬пвЁ ў
®ў®¬ MCB Ї® ᬥ饨о 01h. MCB а бЇ®«®¦Ґ Ї® ᥣ¬Ґв®¬г
¤аҐбг а ў®¬г ᥣ¬Ґвг ®ў®Ј® PSP ¬Ёгб 1. ‡ 票Ґ
гЄ § ⥫п гбв ў«Ёў Ґвбп а ўл¬ бҐЈ¬Ґв®¬г ¤аҐбг ®ў®Ј®
PSP.
8. ђҐ§Ё¤Ґв п з бвм Їа®Ја ¬¬л ЇҐаҐбл« Ґвбп Ї® ¤аҐбг
ᥣ¬Ґв бв а®Ј® PSP ᮠᬥ饨Ґ¬ 0.
9. ‚лЇ®«повбп Ґ®Ўе®¤Ё¬лҐ ¤Ґ©бвўЁп ¤«п бва®©ЄЁ
१Ё¤Ґв®© з бвЁ. €е ¬®¦® в Є¦Ґ ўлЇ®«Ёвм § а ҐҐ.
10. Џа®Ја ¬¬ § ўҐаи Ґвбп ®Ўлзл¬ ®Ўа §®¬ Ї® дгЄжЁЁ
DOS 04Ch.
5
‘奬 вЁзҐбЄЁ нв®в ¬Ґв®¤ Ё§®Ўа ¦Ґ 3-е аЁбгЄ е.
ђЁбг®Є 1 Ї®Є §лў Ґв Ё§¬ҐҐЁҐ ў а бЇ®«®¦ҐЁЁ Ў«®Є®ў ў
Ї ¬пвЁ ЇаЁ ўлЇ®«ҐЁЁ дгЄжЁЁ DOS 4Ah.
ЪДДВДДДДДДДДДДДДДДДї ЪДДВДДДДДДДДДДДДДДДї
і і і і і і
і і MCB і Ъ> Ќ PSP <ї і і MCB і
і і і і தЁвҐ«п і і і і
і ГДДДДДДДДДДДДДДДґ і і і ГДДДДДДДДДДДДДДДґ
АД>і ⥪гйЁ© ГДДЩ і АД>і ⥪гйЁ© і
і PSP і АДДДДґ PSP і
ГДДДДДДДДДДДДДДДґ ГДДДДДДДДДДДДДДДі
і і ‚лЇ®«ҐЁҐ і ЏђЋѓђЂЊЊЂ і
і і дгЄжЁЁ ГДДДДДДДДДДДДДДДґ
і і DOS і ®ўл© і
і і 4Ah і MCB і
і і і бў®Ў®¤л© і
і ЏђЋѓђЂЊЊЂ і ГДДДДДДДДДДДДДДДґ
і і і і
і і і ЏђЋѓђЂЊЊЂ і
АДДДДДДДДДДДДДДДЩ АДДДДДДДДДДДДДДДЩ
ђЁб. 1.
ђЁбг®Є 2 Ї®Є §лў Ґв Ё§¬ҐҐЁҐ ў а бЇ®«®¦ҐЁЁ Ў«®Є®ў ў
Ї ¬пвЁ Ї®б«Ґ ўлЇ®«ҐЁп дгЄжЁЁ DOS 55h Ё ЇаЁ Є®а४樨
гЄ § ⥫Ґ©.
‚лЇ®«ҐЁҐ дгЄжЁЁ DOS 55h.
ЪДДВДДДДДДДДДДДДДДДї ЪДДВДДДДДДДДДДДДДДДї
і і і Ъ> Ќ PSP і і і
і і MCB і і தЁвҐ«п і і MCB і
і і і і і і і
і ГДДДДДДДДДДДДДДДґ і і ГДДДДДДДДДДДДДДДґ
АД>і ⥪гйЁ© ГДЩ АД>і ⥪гйЁ© і
і PSP і<ДДї і PSP і
і і і і і
ГДДДДДДДДДДДДДДДі і ГДДДДДДДДДДДДДДДі
і ЏђЋѓђЂЊЊЂ і і і ЏђЋѓђЂЊЊЂ і
ГДДДДДДДДДДДДДДДґ і ЪДДЕДДДДДДДДДДДДДДДґ
і ®ўл© і і Љ®а४жЁп і і ®ўл© і
і MCB і і гЄ § ⥫Ґ© і і MCB і
і бў®Ў®¤л© і і і і а бЇаҐ¤Ґ«Ґ і
ГДДДДДДДДДДДДДДДґ і і ГДДДДДДДДДДДДДДДґ
і ®ўл© ГДДДЩ АД>і ®ўл© і
і PSP і Ќ PSP <ДДДДґ PSP і
ГДДДДДДДДДДДДДДДґ தЁвҐ«п ГДДДДДДДДДДДДДДДґ
і ЏђЋѓђЂЊЊЂ і і ЏђЋѓђЂЊЊЂ і
АДДДДДДДДДДДДДДДЩ АДДДДДДДДДДДДДДДЩ
ђЁб. 2.
6
ђЁбг®Є 3 Ї®Є §лў Ґв Ё§¬ҐҐЁҐ ў а бЇ®«®¦ҐЁЁ Ў«®Є®ў ў
Ї ¬пвЁ Ї®б«Ґ ўлЇ®«ҐЁп дгЄжЁЁ DOS 50h.
‚лЇ®«ҐЁҐ дгЄжЁЁ DOS 50h.
ЪДДВДДДДДДДДДДДДДДДї
і і і
і і MCB і
і і і
і ГДДДДДДДДДДДДДДДґДДДДї
АД>і бв ал© і і
і PSP і ГДДДД> ‚бп нв ®Ў« бвм ¤®бвгЇ TSR.
ГДДДДДДДДДДДДДДДґ і
і ЏђЋѓђЂЊЊЂ і і
ЪДДЕДДДДДДДДДДДДДДДґДДДДЩ
і і ®ўл© і
і і MCB і
і і а бЇаҐ¤Ґ«Ґ і
і ГДДДДДДДДДДДДДДДґ
АД>і ⥪гйЁ© ГДДДДДДДД> Ќ PSP தЁвҐ«п.
і PSP і
ГДДДДДДДДДДДДДДДґ
і ЏђЋѓђЂЊЊЂ і
АДДДДДДДДДДДДДДДЩ
ђЁб. 3.
‘Ћ‚Њ…‘’€ЊЋ‘’њ.
„ л© ¬Ґв®¤ ®Їа®Ў®ў ў а §«Ёзле б®ў¬ҐбвЁ¬ле
®ЇҐа жЁ®ле б। е:
- MS/PC DOS 3.30;
- MS/PC DOS 4;
- MS DOS 5 beta release;
- DR DOS 3.41;
- DR DOS 5;
- б ЁбЇ®«м§®ў ЁҐ¬ § Јаг§зЁЄ LOADHI ®в бЁб⥬л QEMM
5.0;
- б ЁбЇ®«м§®ў ЁҐ¬ § Јаг§ЄЁ ў бв аиго Ї ¬пвм HILOAD DR
DOS 5.
7
Џђ€Њ…ђ ђ…‡€„…Ќ’ЌЋ‰ ЏђЋѓђЂЊЊ› Ѓ…‡ PSP.
„«п «гз襣® Ї®Ё¬ Ёп Ї®ап¤Є § ўҐа襨п १Ё¤Ґв®©
Їа®Ја ¬¬л ЎҐ§ PSP ЇаЁўҐ¤Ґ¬ ЇаЁ¬Ґа.
page 60,132
title NONPSP - ђҐ§Ё¤Ґв п Їа®Ја ¬¬ ЎҐ§ PSP
;==========================================================
;
; ЏаЁ¬Ґа Ї®бв஥Ёп १Ё¤Ґв®© Їа®Ја ¬¬л ЎҐ§ PSP
;
; Ђўв®абЄЁҐ Їа ў ѓђ“ЏЏ› ЏђЋѓђЂЊЊ€‘’Ћ‚ 2B
;
; џ§лЄ Їа®Ја ¬¬Ёа®ў Ёп: ЂбᥬЎ«Ґа
; ’а б«пв®а : MASM
;
;===========================================================
;
; б®®ЎйЁвм ва б«пв®аг ¤аҐб жЁо
;
assume cs:code,ds:code,es:nothing
;
; ®ЇаҐ¤Ґ«Ёвм ᥣ¬Ґв Є®¤
;
code segment para
;
subttl ђҐ§Ё¤Ґв п з бвм Їа®Ја ¬¬л
;
ResStart label byte ;®ЇаҐ¤Ґ«Ё¬ з «® Їа®Ја ¬¬л
’ҐЄбв १Ё¤Ґв®© з бвЁ.
ResEnd label byte ;Є®Ґж १Ё¤Ґв®© з бвЁ
ResLen equ ResEnd-ResStart ;а §¬Ґа १Ё¤Ґв®© з бвЁ ў
; Ў ©в е
ResSize equ (ResEnd-ResStart+15)/16 ;а §¬Ґа १Ё¤Ґв®©
; з бвЁ ў Ї а Ја д е
org ResStart+ResSize*16 ;¤«п ўла ўЁў Ёп
; Ја Ёжг Ї а Ја д
;
page
subttl €ЁжЁ «Ё§ жЁп १Ё¤Ґв®© Їа®Ја ¬¬л ЎҐ§ PSP
;
MCBLen equ 10h ;а §¬Ґа MCB
;
PSPMCB db MCBlen dup (0) ;१Ґаў п ®Ў« бвм ¤«п MCB
SavRes db ResLen dup (0) ;®Ў« бвм б®еа ҐЁп
; १Ё¤Ґв®© з бвЁ
;
PspOld dw 0 ;¤«п ¤аҐб бв а®Ј® PSP
PspNew dw 0 ;¤«п ¤аҐб ®ў®Ј® PSP
8
;
; б®®ЎйҐЁп
;
MsgInst label byte
db 0ah,0dh
db 'Џа®Ја ¬¬ гбв ®ў«Ґ '
db 0ah,0dh
db '$'
MsgNoInst label byte
db 0ah,0dh
db 'ЋиЁЎЄ . Џа®Ја ¬¬ Ґ гбв ®ў«Ґ '
db 0ah,0dh
db '$'
;=========================================================
;
; Їа®жҐ¤га ЁЁжЁ «Ё§ жЁЁ १Ё¤Ґв®© Їа®Ја ¬¬л ЎҐ§ PSP
;
;=========================================================
ini proc far
;
cld ;¤«п ®ЇҐа жЁ©
ЇҐаҐбл«ЄЁ
mov cs:PspOld,ds ;б®еа Ё¬ бв ал© PSP
;
; Ћбў®Ў®¦¤ҐЁҐ environment
;
mov ax,ds:[2ch] ; ¤аҐб ᥣ¬Ґв
mov es,ax ; environment
cmp ax,0 ;Ґбвм environment ?
je Go1 ; Ґв
mov ah,49h ;Є®¤ дгЄжЁЁ
int 21h ; ®бў®Ў®¤Ёвм
; Ї ¬пвм
jnc Go1 ;гбЇҐи®
jmp ErrorRet ;ҐгбЇҐи®
Go1:
mov word ptr ds:[2ch],0 ;гЄ ¦Ґ¬, зв® Ґв
; environment
push cs ;гбв ®ўЁ¬
pop es ; ES
push cs ;гбв ®ўЁ¬
pop ds ; DS
;
; § Ї®¬Ё¬ १Ё¤Ґвго з бвм
; в.Є. ® Ўг¤Ґв а §агиҐ ЇаЁ Ї®бв஥ЁЁ ®ўле PSP Ё MCB
;
mov si,Offset ResStart ;®вЄг¤
mov di,Offset SavRes ;Єг¤
mov cx,ResLen ;бЄ®«мЄ®
rep movsb ;ЇҐаҐи«Ґ¬
9
;
; ¬®¤ЁдЁжЁа㥬 а §¬Ґа Ї ¬п⨠⥪г饩 Їа®Ја ¬¬л ®в ᥣ¬Ґв
; PSP ¤«Ёг १Ё¤Ґв®© з бвЁ
; нв® ЇаЁўҐ¤Ґв Є Ї®бв஥Ёо ®ў®Ј® MCB ў ⥫Ґ Їа®Ја ¬¬л
;
mov ah,4ah ;¬®¤ЁдЁжЁа㥬 Ї ¬пвм
mov bx,ResSize ;а §¬Ґа १Ё¤Ґв®©
; з бвЁ
mov es,PspOld ;ᥣ¬Ґв бв а®Ј® PSP
int 21h ;ўлЇ®«Ё¬
jnc Go2 ;гбЇҐи®
jmp ErrorRet ;ҐгбЇҐи®
Go2:
;
; Ї®¤бзЁв Ґ¬ ᥣ¬Ґв Ї ¬пвЁ ¤«п ®ў®Ј® PSP
;
mov ax,ResSize ;¤«Ё १Ё¤Ґв®©
; з бвЁ ў Ї а Ја д е
add ax,PspOld ; Ї«об ᥣ¬Ґв
; бв а®Ј® PSP
add ax,MCBLen/16 ; Ї«об ¤«Ё MCB
mov PspNew,ax ;§ Ї®¬Ё¬ ᥣ¬Ґв
; ¤«п ®ў®Ј® PSP
;
; б®§¤ ¤Ё¬ ®ўл© PSP
;
mov es,PspOld ; ¤аҐб бв а®Ј® PSP
mov si,word ptr es:[02h] ; Є®Ґж Ї ¬пвЁ
mov ah,55h ;Ї®бва®Ё¬
; Ї®¤зЁҐл© PSP
mov dx,PspNew ;ᥣ¬Ґв ®ў®Ј® PSP
int 21h ;ўлЇ®«Ё¬
;
; бЄ®а४вЁа㥬 гЄ § ⥫м தЁвҐ«мбЄЁ© PSP ў ®ў®¬ PSP
;
mov es,PspOld ;ᥣ¬Ґв бв а®Ј® PSP
mov ax,word ptr es:[16h] ; ¤аҐб தЁвҐ«мбЄ®Ј®
; PSP
mov es,PspNew ;ᥣ¬Ґв ®ў®Ј® PSP
mov word ptr es:[16h],ax ;бЄ®а४вЁа㥬
;
; б®®ЎйЁ¬ DOS ® ®ў®¬ ЄвЁў®¬ PSP
;
mov bx,PspNew ;ᥣ¬Ґв ®ў®Ј® PSP
mov ah,50h ;дгЄжЁп гЄ § Ёп
; ®ў®Ј® PSP
int 21h ; ўлЇ®«Ё¬
10
;
; гЄ ¦Ґ¬ ЇаЁ ¤«Ґ¦®бвм Ї®«г祮© Ї ¬пвЁ ¤«п ®ў®Ј® PSP
;
mov ax,bx ;ᥣ¬Ґв ®ў®Ј® PSP
sub ax,1 ;ᥣ¬Ґв
; Ї®бв஥®Ј® MCB
mov es,ax ;==================
mov word ptr es:[01h],bx ;бЄ®а४вЁа㥬 ¤аҐб
; ў« ¤Ґ«мж Ї ¬пвЁ
;
; ЇҐаҐ¬ҐбвЁ¬ १Ё¤Ґвго з бвм бв ал© PSP
;
mov es,PspOld ; ¤аҐб бв а®Ј® PSP
mov cx,ResLen ;а §¬Ґа १Ё¤Ґв®©
; з бвЁ
mov di,0 ;Єг¤
mov si,Offset SavRes ;®вЄг¤
rep movsb ;ЇҐаҐ¬ҐбвЁ¬
push cs ;ў®ббв ®ўЁ¬
pop es ; ES
;
; “бЇҐил© ўл室 Ё§ Їа®Ја ¬¬л
;
PrgEnd:
mov ah,09h ; ўлўҐ¤Ґ¬ б®®ЎйҐЁҐ
mov dx,offset MsgInst ; ®Ў гбЇҐи®©
; гбв ®ўЄҐ
int 21h ;
mov ax,4c00h ;§ ўҐаиЁ¬ Їа®Ја ¬¬г
int 21h ; ®Ўлзл¬
; ®Ўа §®¬ б Є®¤®¬ 0
;
; ‚л室 Ё§ Їа®Ја ¬¬л Ї® ®иЁЎЄҐ
;
ErrorRet:
push cs ;гбв ®ўЁ¬ ¤аҐб жЁо
pop ds ; ¤ ле
mov ah,09h ; ўлўҐ¤Ґ¬ б®®ЎйҐЁҐ
mov dx,offset MsgNoInst ; ® ҐгбЇҐи®©
; гбв ®ўЄҐ
int 21h ;
mov ax,4c04h ;§ ўҐаиЁ¬ Їа®Ја ¬¬г
int 21h ; ®Ўлзл¬
; ®Ўа §®¬ б Є®¤®¬ 4
ini endp
;
code ends
;
; ‘’…Љ
;
stack segment stack
dw 512 dup(0)
stack ends
end ini
1
ѓђ“ЏЏЂ ЏђЋѓђЂЊЊ€‘’Ћ‚ 2B.
Ќ…‘ЉЋ‹њЉЋ ‘‹Ћ‚ Ћ ‚€„…ЋЂ„ЂЏ’…ђЂ•.
‚ ¤ ®© бв вмҐ а бб¬ ваЁў овбп ®б®ЎҐ®бвЁ а Ў®вл
१Ё¤Ґвле Їа®Ја ¬¬ ( ЇаЁ¬Ґа ¤а ©ўҐа®ў агббЄ®Ј® п§лЄ ) б
®б®ўл¬ Ё «мвҐа вЁўл¬ ўЁ¤Ґ® ¤ ЇвҐа®¬, ®ЇЁблў Ґвбп ¬Ґв®¤
Ё¤ҐвЁдЁЄ жЁЁ ®б®ў®Ј® Ё «мвҐа вЁў®Ј® ўЁ¤Ґ® ¤ ЇвҐа .
—’Ћ ’ЂЉЋ… Ћ‘ЌЋ‚ЌЋ‰ € Ђ‹њ’…ђЌЂ’€‚Ќ›‰ ‚€„…ЋЂ„ЂЏ’…ђ.
ЋЎлз® Џќ‚Њ ¬л а Ў®в Ґ¬ в®«мЄ® б ®¤Ё¬ ¤ЁбЇ«ҐҐ¬ Ё,
ᮮ⢥вб⢥®, б ®¤Ё¬ ўЁ¤Ґ® ¤ ЇвҐа®¬. Ћ¤ Є® ЇЇ а вга
Џќ‚Њ ¤®ЇгбЄ Ґв бв ¤ а⮥ Ї®¤Є«о票Ґ ¤®Ї®«ЁвҐ«м®Ј®
ўЁ¤Ґ® ¤ ЇвҐа Ё ¤ЁбЇ«Ґп. ’ Є®© ¤®Ї®«ЁвҐ«мл© ўЁ¤Ґ® ¤ ЇвҐа
§лў Ґвбп «мвҐа вЁўл¬. ЏаЁ н⮬ Ґ б«Ґ¤гҐв Їгв вм
«мвҐа вЁўлҐ ўЁ¤Ґ® ¤ ЇвҐал б Ґбв ¤ авл¬Ё
ўЁ¤Ґ® ¤ ЇвҐа ¬Ё. ЏҐаўлҐ Ї®¤¤Ґа¦Ёў овбп бв ¤ авл¬Ё
б।бвў ¬Ё BIOS, ўв®алҐ ЁбЇ®«м§говбп а §«Ёзл¬Ё
Їа®Ја ¬¬ ¬Ё (‘ЂЏђ Ё«Ё Ё§¤ ⥫мбЄЁҐ бЁб⥬л) б Ї®¬®ймо
Ґбв ¤ авле Їа®Ја ¬¬ле б।бвў. € зҐ Ј®ў®ап,
бв ¤ ав® Ї®¤Є«озҐл© ўЁ¤Ґ® ¤ ЇвҐа ўбҐЈ¤ ¬®¦® ЇҐаҐўҐбвЁ
ўлў®¤ ўбҐе б®®ЎйҐЁ© DOS Ё Їа®Ја ¬¬, Є®в®алҐ ¤«п ўлў®¤
ЁбЇ®«м§гов б।бвў BIOS.
ЌҐ ўбпЄЁҐ ўЁ¤л ўЁ¤Ґ® ¤ ЇвҐа®ў ¬®Јгв Ўлвм Ї®¤Є«озҐл
®¤®ўаҐ¬Ґ® Є Џќ‚Њ. ‚ в Ў«ЁжҐ 1 а бб¬ ваЁў овбп ¤®ЇгбвЁ¬лҐ
б®зҐв Ёп ўЁ¤Ґ® ¤ ЇвҐа®ў.
2
‘Ћ—…’ЂЌ€џ ‚€„…ЋЂ„ЂЏ’…ђЋ‚.
’ Ў«Ёж 1.
ЪДДДДДДДДДДДДДДВДДДВДДДВДДДВДДДДВДДДВДДДВДДДДВДДДДДДДДДДДДДї
і ‚Ё¤Ґ® ¤ ЇвҐа іMDAіCGAіEGAіMCGAіVGAіHGCіHGC+іHGC In Color і
ГДДДДДДДДДДДДДДЕДДДЕДДДЕДДДЕДДДДЕДДДЕДДДЕДДДДЕДДДДДДДДДДДДДґ
іMDA і - і + і + і + і + і - і - і - і
ГДДДДДДДДДДДДДДЕДДДЕДДДЕДДДЕДДДДЕДДДЕДДДЕДДДДЕДДДДДДДДДДДДДґ
іCGA і + і - і + і - і + і + і + і + і
ГДДДДДДДДДДДДДДЕДДДЕДДДЕДДДЕДДДДЕДДДЕДДДЕДДДДЕДДДДДДДДДДДДДґ
іEGA і + і + і - і - і - і + і + і + і
ГДДДДДДДДДДДДДДЕДДДЕДДДЕДДДЕДДДДЕДДДЕДДДЕДДДДЕДДДДДДДДДДДДДґ
іMCGA і + і - і - і - і + і + і + і + і
ГДДДДДДДДДДДДДДЕДДДЕДДДЕДДДЕДДДДЕДДДЕДДДЕДДДДЕДДДДДДДДДДДДДґ
іVGA і + і + і - і + і - і + і + і + і
ГДДДДДДДДДДДДДДЕДДДЕДДДЕДДДЕДДДДЕДДДЕДДДЕДДДДЕДДДДДДДДДДДДДґ
іHGC і - і + і + і + і + і - і - і - і
ГДДДДДДДДДДДДДДЕДДДЕДДДЕДДДЕДДДДЕДДДЕДДДЕДДДДЕДДДДДДДДДДДДДґ
іHGC+ і - і + і + і + і + і - і - і - і
ГДДДДДДДДДДДДДДЕДДДЕДДДЕДДДЕДДДДЕДДДЕДДДЕДДДДЕДДДДДДДДДДДДДґ
іHGC In Color і - і + і + і + і + і - і - і - і
АДДДДДДДДДДДДДДБДДДБДДДБДДДБДДДДБДДДБДДДБДДДДБДДДДДДДДДДДДДЩ
‘«Ґ¤гҐв ®в¬ҐвЁвм, зв® Є Џќ‚Њ Ґ ¬®¦Ґв Ўлвм Ї®¤Є«о祮
¤ў ўЁ¤Ґ® ¤ ЇвҐа , а Ў®в ойЁҐ ®¤®ўаҐ¬Ґ® ў 梥⮬ Ё«Ё
¬®®е஬®¬ ०Ё¬Ґ. …б«Ё ®¤Ё ўЁ¤Ґ® ¤ ЇвҐа а Ў®в Ґв ў
梥⮬ ०Ё¬Ґ, в® ¤агЈ®© ¤®«¦Ґ а Ў®в вм ў ¬®®е஬®¬
०Ё¬Ґ.
ђ бᬮваЁ¬ ⥯Ґам ®б®ЎҐ®бвЁ ®ЇаҐ¤Ґ«ҐЁп ⥪г饣®
ўЁ¤Ґ® ¤ ЇвҐа ЇаЁ а Ў®вҐ १Ё¤Ґв®© Їа®Ја ¬¬л.
‚€„…ЋЂ„ЂЏ’…ђ EGA.
„«п ®ЇаҐ¤Ґ«ҐЁп ЄвЁў®бвЁ ўЁ¤Ґ® ¤ ЇвҐа EGA ¤®бв в®з®
Їа®ўҐаЁвм ЎЁв ЄвЁў®бвЁ EGA ¤ ЇвҐа ў ®Ў« бвЁ ¤ ле BIOS.
ЏаЁ§ Є ЄвЁў®бвЁ ўЁ¤Ґ® ¤ ЇвҐа а бЇ®«®¦Ґ ў Ї®«Ґ Ї®
¤аҐбг 40h:87h. …б«Ё гбв ®ў«Ґ д« ¦®Є 08h, в® нв® § зЁв,
зв® ў ⥪гйЁ© ¬®¬Ґв ўЁ¤Ґ® ¤ ЇвҐа EGA Ґ ЄвЁўҐ, Ї®н⮬г
б«Ґ¤гҐв ®аЈ Ё§®ўлў вм а Ў®вг б гзҐв®¬ «мвҐа вЁў®Ј®
ўЁ¤Ґ® ¤ ЇвҐа . ЏаЁўҐ¤Ґ¬ да Ј¬Ґв Є®¤ ¤«п ®ЇаҐ¤Ґ«ҐЁп
ЄвЁў®бвЁ ўЁ¤Ґ® ¤ ЇвҐа EGA.
mov ax,40h ; ¤аҐб жЁп ¤ ле
mov es,ax ; BIOS
test byte ptr es:[87h],08h ;EGA ЄвЁўҐ ?
jz EgaAct ;EGA ЄвЁўҐ
jmp NonEga ;EGA Ґ ЄвЁўҐ
‘«Ґ¤гҐв ®в¬ҐвЁвм, зв® б।Ё ®ЎЁ«Ёп ўЁ¤Ґ® ¤ ЇвҐа®ў EGA
бгйҐбвўгов ўЁ¤Ґ® ¤ ЇвҐал, Ї®§ў®«пойЁҐ Їа®Ја ¬¬®
ЇҐаҐЄ«оз вмбп ў ०Ё¬ б®ў¬ҐбвЁ¬®бвЁ MDA Ё HGC. ЏаЁ н⮬ ®Ё
§ з бвго Є®а४вЁагов ¤аҐб ®Ўа Ў®взЁЄ INT 10h. Џ®н⮬г,
ЇҐаҐ¤ Їа®ўҐаЄ®© ЄвЁў®бвЁ ўЁ¤Ґ® ¤ ЇвҐа EGA, ¬л ४®¬Ґ¤гҐ¬
3
гЎҐ¤Ёвмбп, зв® EGA ¤® бЁе Ї®а бгйҐбвўгҐв ў 襩 Џќ‚Њ. ќв®
¬®¦® ᤥ« вм Їг⥬ бзЁвлў Ёп ЇҐаҐЄ«оз ⥫Ґ© EGA Ї® дгЄжЁЁ
INT 10h, AH=12h, BL=10h. ЏаЁўҐ¤Ґ¬ да Ј¬Ґв Є®¤ , ¤«п
ўлЇ®«ҐЁп нв®© дгЄжЁЁ.
mov ah,12h ;§ Їа®б
mov bl,10h ; ЇҐаҐЄ«оз ⥫Ґ©
int 10h ; ўл§ў вм INT 10h
cmp bl,10h ;дгЄжЁп ўлЇ®«Ґ ?
je NonEga ; EGA Ґ ЄвЁўҐ
jmp EgaAct ; EGA ЄвЁўҐ
‚€„…ЋЂ„ЂЏ’…ђ› VGA/MCGA.
‚Ё¤Ґ® ¤ ЇвҐал VGA Ё MCGA пў«повбп Ї®Є®«ҐЁҐ¬
ўЁ¤Ґ® ¤ ЇвҐа®ў, ®бЁа®ў ле ў Џќ‚Њ PS/2 дЁа¬л IBM. ‚
бв®п饥 ўаҐ¬п бгйҐбвўгҐв Ў®«м讥 Є®«ЁзҐбвў® ўЁ¤Ґ® ¤ ЇвҐа®ў
VGA. ‘।Ё Ёе Ґбвм ўЁ¤Ґ® ¤ ЇвҐал, Ї®¤¤Ґа¦Ёў ойЁҐ
а биЁаҐлҐ Ја дЁзҐбЄЁҐ Ё ⥪бв®ўлҐ аҐ¦Ё¬л.
—в®Ўл ®ЇаҐ¤Ґ«Ёвм ЄвЁў®бвм ўЁ¤Ґ® ¤ ЇвҐа VGA/MCGA
¤®бв в®з® ўлЇ®«Ёвм дгЄжЁо INT 10h, AX=1A00h. …б«Ё дгЄжЁп
®ЎҐбЇҐзҐ , в® ў ॣЁбвॠAL Ўг¤Ґв § 票Ґ 1Ah. ‚ н⮬
б«гз Ґ ў ॣЁбвॠBL ‚л Ї®«гзЁвҐ Є®¤ ®б®ў®Ј®, ў ॣЁбваҐ
BH - Є®¤ «мвҐа вЁў®Ј® ¤ЁбЇ«Ґп ў ⥪гйЁ© ¬®¬Ґв ўаҐ¬ҐЁ.
‚®§¬®¦л б«Ґ¤гойЁҐ Є®¤л:
00h - ®вбгвбвўгҐв;
01h - ¬®®е஬;
02h - CGA;
03h - १Ґаў;
04h - EGA б 梥вл¬ ¤ЁбЇ«ҐҐ¬;
05h - EGA б ¬®®еа®¬л¬ ¤ЁбЇ«ҐҐ¬;
06h - PGC б 梥вл¬ ¤ЁбЇ«ҐҐ¬;
07h - VGA б ¬®®еа®¬л¬ ¤ЁбЇ«ҐҐ¬;
08h - VGA б 梥вл¬ ¤ЁбЇ«ҐҐ¬;
09h - 0Ah - १Ґаў;
0Bh - MCGA б ¬®®еа®¬л¬ ¤ЁбЇ«ҐҐ¬;
0Ch - MCGA б 梥вл¬ ¤ЁбЇ«ҐҐ¬;
0Dh - FEh - १Ґаў;
-1 - ҐЁ§ўҐбвҐ.
’ ЄЁ¬ ®Ўа §®¬ Їа®жҐбб ®ЇаҐ¤Ґ«ҐЁп ЄвЁў®Ј®
ўЁ¤Ґ® ¤ ЇвҐа ¤«п Џќ‚Њ, ®Ў®а㤮ў ле ўЁ¤Ґ® ¤ ЇвҐа ¬Ё VGA,
Ґ ЇаҐ¤бв ў«пҐв ®б®Ўле Їа®Ў«Ґ¬.
4
ЏаЁўҐ¤Ґ¬ да Ј¬Ґв Є®¤ , ®ЇаҐ¤Ґ«пойЁ© ЄвЁў®бвм
ўЁ¤Ґ® ¤ ЇвҐа VGA/MCGA.
mov ax,1a00h ;бЇа®бЁ¬ Є®¤ ¤ЁбЇ«Ґп
int 10h ;ўлЇ®«Ё¬
cmp al,1ah ;Ї®¤бЁб⥬ ЄвЁў ?
jne NonSubst ;Ґв, ў®§¬®¦® ЇҐаҐЄ«о票Ґ
; ў ०Ё¬ ¤агЈ®Ј®
; ўЁ¤Ґ® ¤ ЇвҐа Ё«Ё
; Ї®¤бЁб⥬ ®бвгвбвўгҐв
cmp bl,07h ;VGA ?
je VgaAct ; ¤
cmp bl,08h ;VGA ?
je VgaAct ; ¤
cmp bl,0bh ;MCGA ?
je MCGAct ; ¤
cmp bl,0ch ;MCGA ?
je MCGAct ; ¤
jmp NonSubst ; Ґ ©¤Ґ VGA/MCGA
‘«Ґ¤гҐв ®в¬ҐвЁвм, зв® ўбҐ ॣЁбвал ўЁ¤Ґ® ¤ ЇвҐа VGA
¬®¦® Їа®зЁв вм. ’ ЄЁ¬ ®Ўа §®¬ १Ё¤Ґв п Їа®Ја ¬¬ ¬®¦Ґв
®ЇаҐ¤Ґ«Ёвм ०Ё¬ а Ў®вл ўЁ¤Ґ® ¤ ЇвҐа - Ја дЁзҐбЄЁ© Ё«Ё
⥪бв®ўл©. ќв® ¬®¦Ґв Ўлвм Ї®«Ґ§® ¤«п Їа®Ја ¬¬, Є®в®ал¬
вॡгҐвбп б®еа Ёвм ⥪г饥 б®бв®пЁҐ нЄа , Ё«Ё ¤«п
¤а ©ўҐа®ў агббЄ®Ј® п§лЄ , зв®Ўл ®ЇаҐ¤Ґ«Ёвм ०Ё¬ § Јаг§ЄЁ
§ Є®ЈҐҐа в®а . ‡ ЁҐ ०Ё¬ ўЁ¤Ґ® ¤ ЇвҐа Ї®§ў®«пҐв
¤а ©ўҐа ¬ агббЄ®Ј® п§лЄ Ї®¤¤Ґа¦Ёў вм бв аиЁҐ ०Ё¬л а Ў®вл
Ґбв ¤ авле ўЁ¤Ґ® ¤ ЇвҐа®ў VGA, Ґ ЇаЁўп§лў пбм Є ®¬Ґаг
ўЁ¤Ґ®аҐ¦Ё¬ . ЋЇаҐ¤Ґ«ҐЁҐ ⥪г饣® ०Ё¬ ®б®ў ® «Ё§Ґ
ᮤҐа¦Ё¬®Ј® ॣЁбва 06h GRAFICS CONTROLLER (Miscellaneous
Register). ђ §¬Ґа ЎгЄўл ¬®¦® г§ вм ў ®Ў« бвЁ ¤ ле BIOS
Ї® ¤аҐбг 40h:85h.
ЏаЁўҐ¤Ґ¬ да Ј¬Ґв Є®¤ ¤«п ®ЇаҐ¤Ґ«ҐЁп ०Ё¬ а Ў®вл
ўЁ¤Ґ® ¤ ЇвҐа VGA.
; Їа®зЁв Ґ¬ GC ॣЁбва 06h
mov dx,03ceh ; ¤аҐбл© Ї®ав
mov al,06h ;®¬Ґа ॣЁбва
out dx,al ;§ вॡ㥬 ॣЁбва
jmp short $+2
inc dx ;Ї®ав ¤ ле
in al,dx ;Їа®зЁв Ґ¬ ॣЁбва
; «Ё§ вЁЇ § Є®ЈҐҐа в®а
test al,01 ;Ја дЁзҐбЄЁ© ०Ё¬ ?
jz VgaTxt ;⥪бв®ўл© аҐ¦Ё¬
jmp VgaGraf ;Ја дЁзҐбЄЁ© ०Ё¬
5
‘ЏЋ‘ЋЃ ЋЏђ…„…‹…Ќ€џ ’€ЏЂ Ћ‘ЌЋ‚ЌЋѓЋ € Ђ‹њ’…ђЌЂ’€‚ЌЋѓЋ
‚€„…ЋЂ„ЂЏ’…ђЂ.
‚ ¤ ®¬ а §¤Ґ«Ґ ¬л а ббЄ ¦Ґ¬ ‚ ¬, Є Є ®ЇаҐ¤Ґ«Ёвм,
Є ЄЁҐ ўЁ¤Ґ® ¤ ЇвҐал гбв ®ў«Ґл Џќ‚Њ. ЏаҐ¤« Ј Ґ¬л© ¬Ґв®¤
Ї®§ў®«пҐв Ё¤ҐвЁдЁжЁа®ў вм ўЁ¤Ґ® ¤ ЇвҐал MDA, CGA, EGA,
MCGA, VGA, HGC, HGC+ Ё HGC In Color Ё б®ў¬ҐбвЁ¬лҐ б
HERCULES, Є®в®алҐ ¬л Ўг¤Ґ¬ §лў вм MGA.
ЏЋђџ„ЋЉ €„…Ќ’€”€ЉЂ–€€ ‚€„…ЋЂ„ЂЏ’…ђЋ‚.
ЏаЁўҐ¤Ґ¬ Ї®а冷Є, ў Є®в®а®¬ ‚ ¬ б«Ґ¤гҐв ўлЇ®«пвм
Ё¤ҐвЁдЁЄ жЁо ўЁ¤Ґ® ¤ ЇвҐа®ў.
1. Џа®ўҐаЁвм «ЁзЁҐ ўЁ¤Ґ®Ї®¤бЁб⥬л VGA/MCGA Ї®
дгЄжЁЁ INT 10h, AX=1A00h. …б«Ё Ї®¤бЁб⥬ ЄвЁў , в® Є®¤
®б®ў®Ј® Ё «мвҐа вЁў®Ј® ўЁ¤Ґ® ¤ ЇвҐа Ўг¤Ґв ЇҐаҐ¤ ў
ॣЁбва е BL Ё BH.
2. …б«Ё ў и ЈҐ 1 ®Ў а㦥 ¬®®еа®¬л© ¤ЁбЇ«Ґ©, в®
б«Ґ¤гҐв 㤮бв®ўҐаЁвмбп, Ґ пў«пҐвбп «Ё ® ¤ ЇвҐа®¬ вЁЇ
HERCULES. ЊҐв®¤ ®ЇаҐ¤Ґ«ҐЁп ўЁ¤Ґ® ¤ ЇвҐа®ў вЁЇ HERCULES
а бᬮваЁ¬ Ё¦Ґ.
3. …б«Ё дгЄжЁп и Ј 1 Ґ ўлЇ®«Ґ , в® б«Ґ¤гҐв
Їа®ўҐаЁвм «ЁзЁҐ ўЁ¤Ґ® ¤ ЇвҐа EGA Ї® дгЄжЁЁ INT 10h,
AH=12h, BL=10h.
4. …б«Ё ўЁ¤Ґ® ¤ ЇвҐа EGA ®Ў а㦥, в® б«Ґ¤гҐв
®ЇаҐ¤Ґ«Ёвм, а Ў®в Ґв EGA ў 梥⮬ Ё«Ё ¬®®е஬®¬ ०Ё¬Ґ.
ЊҐв®¤ ®ЇаҐ¤Ґ«ҐЁп ®б®ў «Ё§Ґ ЇҐаҐЄ«оз ⥫Ґ© Ї« вҐ
EGA, Ї®«гзҐле Ї® дгЄжЁЁ INT 10h, AH=12h, BL=10h ў ¬« ¤иЁе
зҐвлаҐе ЎЁв е ॣЁбва CL. Љ®¬ЎЁ жЁп ЇҐаҐЄ«оз ⥫Ґ©
б«Ґ¤гой п:
000X - ®Ўлзл© жўҐв®© ¤ЁбЇ«Ґ©;
001X - 梥⮩ ¤ЁбЇ«Ґ© б а биЁаҐл¬Ё ў®§¬®¦®бвп¬Ё;
010X - ¬®®еа®¬л© вҐа¬Ё «;
011X - ®Ўлзл© жўҐв®© ¤ЁбЇ«Ґ©;
100X - 梥⮩ ¤ЁбЇ«Ґ© б а биЁаҐл¬Ё ў®§¬®¦®бвп¬Ё;
101X - ¬®®еа®¬л© вҐа¬Ё «.
5. …б«Ё ўЁ¤Ґ® ¤ ЇвҐа EGA а Ў®в Ґв ў 梥⮬ ०Ё¬Ґ, в®
б«Ґ¤гҐв Їа®ўҐаЁвм, Ґ Ї®¤Є«озҐ «Ё ўЁ¤Ґ® ¤ ЇвҐа
MDA/HERCULES.
6. …б«Ё ўЁ¤Ґ® ¤ ЇвҐа EGA а Ў®в Ґв ў ¬®®е஬®¬ ०Ё¬Ґ,
в® б«Ґ¤гҐв Їа®ўҐаЁвм, Ґ Ї®¤Є«озҐ «Ё ўЁ¤Ґ® ¤ ЇвҐа CGA.
8. …б«Ё ўЁ¤Ґ® ¤ ЇвҐа EGA Ґ ®Ў а㦥, в® б«Ґ¤гҐв
Їа®ўҐаЁвм «ЁзЁҐ ўЁ¤Ґ® ¤ ЇвҐа®ў MDA/HERCULES Ё«Ё CGA. ‚лЎ®а
⥪г饣® ўЁ¤Ґ® ¤ ЇвҐа ЇаЁ ®¤®ўаҐ¬Ґ®¬ «ЁзЁЁ CGA Ё
MDA/HERCULES Їа®Ё§ў®¤Ёвбп ®б®ўҐ «Ё§ ўЁ¤Ґ®аҐ¦Ё¬ ў
®Ў« бвЁ ¤ ле BIOS Ї® ¤аҐбг 40h:49h. ‚Ё¤Ґ®аҐ¦Ё¬ 07h
гЄ §лў Ґв ЄвЁў®бвм ўЁ¤Ґ® ¤ ЇвҐа MDA/HERCULES.
6
Њ…’Ћ„ ЋЏђ…„…‹…Ќ€џ ‚€„…ЋЂ„ЂЏ’…ђЂ CGA.
‚Ё¤Ґ® ¤ ЇвҐа CGA ®ЇаҐ¤Ґ«пҐвбп Їг⥬ Їа®ўҐаЄЁ «ЁзЁп
6845 CHIP (CRT CONTROLLER) б Ё¤ҐЄбл¬ аҐЈЁбв஬ 3D4h. ЊҐв®¤
Їа®ўҐаЄЁ «ЁзЁп 6845 ®ЇЁб Ё¦Ґ.
Њ…’Ћ„ ЋЏђ…„…‹…Ќ€џ ‚€„…ЋЂ„ЂЏ’…ђЂ MDA/HERCULES.
Џа®ўҐаЄ «ЁзЁп ўЁ¤Ґ® ¤ ЇвҐа MDA Ё«Ё HERCULES,
в Є¦Ґ Ї®¤®Ўле Ё¬ ¤ ЇвҐа®ў ўлЇ®«пҐвбп ®б®ўҐ б«Ґ¤го饣®
«Ј®аЁв¬ .
1. Џа®ўҐапҐвбп «ЁзЁҐ 6845 CHIP (CRT CONTROLLER) б
Ё¤ҐЄбл¬ аҐЈЁбв஬ 3B4h.
2. ‘зЁвлў Ґвбп ᮤҐа¦Ё¬®Ґ Ї®ав 3BAh (б®бв®пЁҐ CRTC)
Ё Їа®ўҐапҐвбп, Ё§¬ҐпҐвбп «Ё ЎЁв 7 нв®Ј® Ї®ав (Ё¤ЁжЁагҐв
VERTICAL SYNC). …б«Ё Ґв, в® ўЁ¤Ґ® ¤ ЇвҐа Є« ббЁдЁжЁагҐвбп
Є Є MDA.
3. Ђ¤ ЇвҐал дЁа¬л HERCULES Ё¤ҐвЁдЁжЁаговбп ЎЁв ¬Ё 4-6
б®бв®пЁп CRTC:
000 - HGC;
001 - HGC+;
101 - InColor Card).
®б⠫쮥 - б®ў¬ҐбвЁ¬л© б HERCULES ¬®®еа®¬л© Ја дЁзҐбЁ©
¤ ЇвҐа - MGA.
‘«Ґ¤гҐв ®в¬ҐвЁвм, зв® Ё¤ҐвЁдЁЄ жЁп вЁЇ ўЁ¤Ґ® ¤ ЇвҐа
дЁа¬л HERCULES Ў §Ґ ЎЁв 4-6 ¬®¦Ґв Ўлвм Ґ¤®бв®ўҐа , в.Є.
¬®ЈЁҐ дЁа¬л а §а Ў®взЁЄЁ б®ў¬ҐбвЁ¬ле ўЁ¤Ґ® ¤ ЇвҐа®ў
ҐЇа ўЁ«м® гбв ў«Ёў ов нвЁ ЎЁвл.
ЏаЁўҐ¤Ґ¬ да Ј¬Ґв Є®¤ , Ё¤ҐвЁдЁжЁагойЁ© ўЁ¤Ґ® ¤ ЇвҐал
MDA/HERCULES/MGA.
mov dx,3B4h ; Їа®ўҐаЁвм «ЁзЁҐ 6845
; CHIP.
call Test_6845 ; Їа®жҐ¤га Їа®ўҐаЄЁ «ЁзЁп
; 6845
; CF=1 - 6845 Ґ ©¤Ґ
; CF=0 - 6845 ©¤Ґ
jc NonMdaHgc ;6845 CHIP ®вбгвбвўгҐв.
;Ґв MDA/HERCULES/MGA.
mov dx,3BAh ; бзЁв вм ॣЁбва б®бв®пЁп
in al,dx ; CRTC.
and al,80h ; Ё§®«Ёа®ў вм ЎЁв 7
; (VERTICAL SYNC).
mov ah,al ; Їа®ўҐаЁ¬, Ё§¬ҐпҐвбп «Ё
; ЎЁв 7.
mov cx,8000h ; Є®«ЁзҐбвў® Ї®ўв®а®ў.
TBIT7: in al,dx ; ॣЁбва б®бв®пЁп CRTC
and al,80h ; Ё§®«Ёа®ў вм ЎЁв 7
; (VERTICAL SYNC).
cmp ah,al ; ба ўЁ¬ § 票п
loope TBIT7 ; Ї®ўв®аЁ¬
7
je MDAFOUND ; ЇҐаҐе®¤, Ґб«Ё ЎЁв 7 Ґ
; Ё§¬ҐЁ«бп. ’®«мЄ® MDA
; ®ЇаҐ¤Ґ«Ё¬ вЁЇ ¤ ЇвҐа HERCULES.
in al,dx ; бзЁв вм б®бв®пЁҐ CRTC.
and al,70h ; Ё§®«Ёа®ў вм ЎЁвл 4-6.
jz HGCFOUND ; ЇҐаҐе®¤, Ґб«Ё нв® HGC.
cmp al,10h ; нв® HGC+?
je HGCPFOUND ; ¤ , ЇҐаҐе®¤.
cmp al,50h ; нв® InColor Card?
je HGCICFOUND ; ¤ , ЇҐаҐе®¤.
jmp MGAFOUND ; ¤ ЇвҐа, б®ў¬ҐбвЁ¬л© б
; HERCULES - MGA.
Њ…’Ћ„ ЋЏђ…„…‹…Ќ€џ ЌЂ‹€—€џ 6845 CHIP
6845 CHIP ЁбЇ®«м§гҐвбп ў ўЁ¤Ґ® ¤ ЇвҐа е MDA, CGA Ё
HERCULES ў Є зҐб⢥ CRT CONTROLLER. ’ҐеЁЄ ®ЇаҐ¤Ґ«ҐЁп
«ЁзЁп нв®© ¬ЁЄа®беҐ¬л § Є«оз Ґвбп ў ⮬, зв® ў ॣЁбва 15
CRT CONTROLLER (¬« ¤иЁ© Ў ©в ¬Ґбв®Ї®«®¦ҐЁп Єгаб®а )
§ ЇЁблў Ґвбп § 票Ґ, Є®в®а®Ґ § ⥬ бзЁвлў Ґвбп ®Ўа в®.
…б«Ё ў®§ўа 饮 § ЇЁб ®Ґ § 票Ґ, в® 6845 CHIP Ґбвм ў
Є®¬ЇмовҐаҐ.
ЏаЁўҐ¤Ґ¬ да Ј¬Ґв Є®¤ ¤«п ®ЇаҐ¤Ґ«ҐЁп 6845 CHIP.
‘зЁв Ґвбп, зв® ЇаЁ ўе®¤Ґ ў Їа®Ја ¬¬г ॣЁбва DX ᮤҐа¦Ёв
¤аҐб Ё¤ҐЄб®Ј® ॣЁбва 6845 CHIP ( 3D4h/3B4h ).
cli ; § ЇаҐвЁвм ЇаҐалў Ёп.
mov al,15 ; Ї®¤Ј®в®ўЁвмбп Є а Ў®вҐ б
; ॣЁбв஬ 15 CRTC.
out dx,al ; ЇҐаҐ¤ вм ®¬Ґа ॣЁбва
jmp short $+2
inc dx ; ॣЁбва ¤ ле
in al,dx ; бзЁв вм ⥪г饥 § 票Ґ
; ॣЁбва 15.
mov ah,al ; § Ї®¬Ёвм бзЁв ®Ґ
; § 票Ґ
mov al,66h ; § ЇЁб вм ў ॣЁбва 15
; вҐбв®ў®Ґ § 票Ґ.
out dx,al ; ЇҐаҐ¤ ¤Ё¬
jmp short $+2
mov cx,400h ; ¤®¦¤ вмбп, Ї®Є 6845 ўбҐ
; нв® ў®бЇаЁ¬Ґв.
W1: loop W1 ; ¦¤Ґ¬
in al,dx ; бзЁв вм вҐбв®ў®Ґ § 票Ґ.
xchg ah,al ; ў®ббв ®ўЁвм
; ЇҐаў® з «м®Ґ § 票Ґ
; ॣЁбва 15.
out dx,al ; ЇҐаҐ¤ ¤Ё¬
jmp short $+2
sti ; а §аҐиЁвм ЇаҐалў Ёп.
cmp ah,66h ; бзЁв ® вҐбв®ў®Ґ § 票Ґ?
je F6845 ; ¤ , 6845 ©¤Ґ.
jmp NF6845 ; 6845 Ґ ©¤Ґ
8
ЋЏ›’ Џђ€Њ…Ќ…Ќ€џ.
ЋЇЁб л© ¬Ґе Ё§¬ Ўл«, ў з бв®бвЁ, ЇаЁ¬ҐҐ ЇаЁ
а § а Ў®вЄҐ гЁўҐаб «м®Ј® ¤а ©ўҐа агббЄ®Ј® п§лЄ . Ђўв®ал
бв®Єг«Ёбм б ⥬ д Єв®¬, зв® Ё ®¤Ё Ё§ бгйҐбвў®ў иЁе
нв®в ¬®¬Ґв ¤а ©ўҐа®ў Ґ Ї®¤¤Ґа¦Ёў « а Ў®вг б «мвҐа вЁўл¬
ўЁ¤Ґ® ¤ ЇвҐа®¬ Ё Ґ ®ЎҐбЇҐбзЁў « а биЁаҐле ०Ё¬®ў VGA
ўЁ¤Ґ® ¤ ЇвҐа . ‹оЎ п Ї®ЇлвЄ ЇҐаҐ©вЁ «мвҐа вЁўл©
ўЁ¤Ґ® ¤ ЇвҐа ЇаЁў®¤Ё« Є балўг бЁеа®Ё§ жЁЁ. Ђўв®ал
ЁбЇ®«м§®ў «Ё Є®¬ЎЁ жЁЁ ўЁ¤Ґ® ¤ ЇвҐа®ў EGA/HGC Ё VGA/MGA.
ђ §а Ў®в л© ўв®а ¬Ё ¤а ©ўҐа Ї®¤¤Ґа¦Ёў Ґв ўбҐ ®ЇЁб лҐ
ўлиҐ Є®¬ЎЁ жЁЁ ўЁ¤Ґ® ¤ ЇвҐа®ў. Ћ ¬®¦Ґв § ЇгбЄ вмбп Є Є
¤а ©ўҐа Ё§ CONFIG.SYS Ё«Ё ЁбЇ®«м§®ў вмбп Є Є ®Ўлз п
Їа®Ја ¬¬ Ё § ЇгбЄ вмбп, ЇаЁ¬Ґа, Ё§ AUTOEXEC.BAT.
1
ѓђ“ЏЏЂ ЏђЋѓђЂЊЊ€‘’Ћ‚ 2B.
ЉЂЉ ‘ЉЋЏ€ђЋ‚Ђ’њ ‡Ђ™€™…ЌЌ“ћ Ћ’ ЉЋЏ€ђЋ‚ЂЌ€џ „€‘Љ…’“.
‘в вмп Ї®бўпйҐ «Ё§г д®а¬ в®ў § йЁйҐле ®в Є®ЇЁа®ў Ёп ¤ЁбЄҐв
Ё ў®§¬®¦л¬ ¬Ґв®¤ ¬ Ёе Є®ЇЁа®ў Ёп.
Ќ…‘ЉЋ‹њЉЋ ‘‹Ћ‚ Ћ ‡Ђ™€’… Ћ’ ЉЋЏ€ђЋ‚ЂЌ€џ.
‘ЁбвҐ¬л § йЁвл ®в Є®ЇЁа®ў Ёп ЇаҐ¤®вўа й ов ЁбЇ®«м§®ў ЁҐ
"ў®а®ў ле" Є®ЇЁ© Їа®Ја ¬¬®Ј® ®ЎҐбЇҐзҐЁп. ђ §а Ў®вЄ в ЄЁе бЁб⥬ ў
гб«®ўЁпе 襩 бва л, Є®Ј¤ ®Ја®¬лҐ в®«Їл Їа®Ја ¬¬Ёбв®ў бв६пвбп
ўбпзҐбЄЁ ўбЄалвм § йЁйҐлҐ Їа®Ја ¬¬л, пў«пҐвбп ¤Ґ«®¬ ¤®бв в®з®
б«®¦л¬ Ё вॡгҐв ®ЇаҐ¤Ґ«Ґ®© Єў «ЁдЁЄ жЁЁ Ё ®Їлв . ‚ бв®п饥 ўаҐ¬п
алЄҐ Їа®Ја ¬¬®Ј® ®ЎҐбЇҐзҐЁп б।бвў § йЁвл Ї®пўЁ«®бм ¬®Ј®
Їа®Ја ¬¬, ®ЎҐбЇҐзЁў ойЁе § йЁвг ®в Є®ЇЁа®ў Ёп. ‡ з бвго ४« ¬ нвЁе
Їа®Ја ¬¬ Ґ ᮮ⢥вбвўгҐв ¤Ґ©б⢨⥫мл¬ ў®§¬®¦®бвп¬. Ђўв®ал аҐиЁ«Ё
ЇаЁ®ЎйЁвмбп Є Є®Ј®а⥠Їа®Ја ¬¬Ёбв®ў, ўбЄалў ойЁе бЁбвҐ¬л § йЁвл ®в
Є®ЇЁа®ў Ёп. ЏаЁ н⮬ ¬л Ґ е®вЁ¬ ¤ЁбЄаҐ¤ЁвЁа®ў вм б ¬Ё бЁбвҐ¬л § йЁвл
®в Є®ЇЁа®ў Ёп, Їа®бв® е®вЁ¬ ЇаҐ¤®бвҐаҐзм ў®§¬®¦ле Ї®ЄгЇ ⥫Ґ© ®в
ЁбЇ®«м§®ў Ёп Ґб®ўҐаиҐле бЁб⥬ б ®¤®© бв®а®л, в Є¦Ґ ЇаЁў«Ґзм
®ўлҐ ®вап¤л ўлб®Є®Єў «ЁдЁжЁа®ў ле Їа®Ја ¬¬Ёбв®ў Є а §а Ў®вЄҐ бЁб⥬
§ йЁвл, Є®в®алҐ ¤Ґ©бвўЁвҐ«м® ўбҐ¬ ¬ ®зҐм г¦л.
‚ ®б®ў®¬ ўбҐ Їа®Ја ¬¬Ёбвл, § Ё¬ ойЁҐбп ўбЄалвЁҐ¬ § йЁв, Ё¤гв Ї®
ЇгвЁ ЇаҐ®¤®«ҐЁп бЁб⥬ § йЁвл ®в ®в« ¤зЁЄ®ў, зв®Ўл ўлЇ®«Ёвм
¬®¤ЁдЁЄ жЁо вҐе з б⥩ Їа®Ја ¬¬л, Є®в®алҐ ®вўҐз ов § Їа®ўҐаЄг
«ҐЈ «м®бвЁ Є®ЇЁЁ. ќв а Ў®в вॡгҐв ўлб®Є®© Єў «ЁдЁЄ жЁЁ. Њл Ї®и«Ё
ҐбЄ®«мЄ® ¤агЈЁ¬ Їг⥬. ‘Ёб⥬ § йЁвл ЇаҐ¤Ї®« Ј Ґв «ЁзЁҐ ¤ЁбЄҐвл,
§лў Ґ¬®© Є«о祢®©, Ё Ґ Є®ЇЁа㥬®© бв ¤ авл¬Ё б।бвў ¬Ё, в Є¦Ґ
бЇҐжЁ «мл¬Ё Їа®Ја ¬¬ ¬Ё Ё«Ё ЇЇ а вга®© ¤«п Є®ЇЁа®ў Ёп. Њл
Ёбб«Ґ¤®ў «Ё ¤ЁбЄҐвл бЁб⥬ § йЁвл Ё ¬®¦Ґ¬ ЇаҐ¤«®¦Ёвм бЇ®б®Ўл
Є®ЇЁа®ў Ёп § йЁйҐле ¤ЁбЄҐв б ЁбЇ®«м§®ў ЁҐ¬ Ї®¤агзле Їа®Ја ¬¬ле
б।бвў. ‚ ¬ Ї®вॡгҐвбп иЁа®Є® а бЇа®бва ҐлҐ Їа®Ја ¬¬л COPYWRIT
Ё§¤ Ёп ¬ ав 1987 Ё EXPLORER Ё§¤ Ёп ЇаҐ«м 1987.
Њл Ї®¤ўҐаЈ«Ё «Ё§г ҐбЄ®«мЄ® бЁб⥬л.
JAWS ўҐабЁп 4.0 1989 Ј®¤. Ђўв®а Њ «мЄ®ўЁз Ђ.Џ.
ЌЋ’Ђ ўҐабЁп 1.1 дҐўа «м 1990. Ђўв®а ‘в б ‹п襢. ‘Ёб⥬
а бЇа®бва пҐвбп ‘Џ ЌЋ‚€Ќ’…•.
SHIELD (Ё§ўҐбв в Є¦Ґ Ї®¤ §ў Ёп¬Ё ARMOUR, ЃђЋЌџ Ё ™€’). Џ®¤
§ў ЁҐ¬ SHIELD а бЇа®бва пҐвбп Є®®ЇҐа вЁў®¬ ќ‹€Ђ‘.
‘Ёб⥬ § йЁвл ЏЏ ®в Ґб ЄжЁ®Ёа®ў ®Ј® Є®ЇЁа®ў Ёп (Їа®Ја ¬¬
INST_FD) ўҐабЁп 2.1, ¬ © 1990. Џа®Ё§ў®¤ЁвҐ«м Ґ Ё§ўҐбвҐ. €§ўҐбв Ї®¤
§ў ЁҐ¬ PROTECT.
2
JAWS.
‘Ёб⥬ § йЁвл ®в Є®ЇЁа®ў Ёп JAWS г⢥ত Ґв, зв® б®§¤ лҐ Ґ©
¤ЁбЄҐвл Ґ Є®ЇЁаговбп Їа®Ја ¬¬®© COPYWRIT. ќв® г⢥তҐЁҐ Ґ
ᮮ⢥вбвўгҐв ¤Ґ©б⢨⥫м®бвЁ. Ђўв®а Їа®Ја ¬¬л § ЇЁблў Ґв ҐЄ®в®аго
Ёд®а¬ жЁо 0 Ї®ўҐае®бвм 42 жЁ«Ё¤а . Њл Ґ Ўг¤Ґ¬ а ббЄ §лў вм,
Є Є®© Ё¬Ґ® д®а¬ в Ё Є Є § ЇЁблў Ґвбп нв®в жЁ«Ё¤а, в.Є. ‚л ¬®¦ҐвҐ
§ ЇгбвЁвм Їа®Ја ¬¬г COPYWRIT Ё, гЄ § ў ¬ ЄбЁ¬ «мл© Є®ЇЁагҐ¬л© жЁ«Ё¤а
42, Ї®«гзЁвм а Ў®в®бЇ®б®Ўго Є®ЇЁо § йЁйҐ®© ¤ЁбЄҐвл. …бвҐб⢥®,
¤ЁбЄҐв «ҐЈЄ® Є®ЇЁагҐвбп б Ї®¬®ймо Ї« вл COPY II PC OPTION BOARD DELUXE
(ў ¤ «мҐ©иҐ¬ Ё§«®¦ҐЁЁ Ўг¤Ґ¬ §лў вм ¤«п Єа вЄ®бвЁ Їа®бв® OPTION
BOARD), Ґб«Ё ўл гЄ ¦ҐвҐ Є®ЇЁа®ў ЁҐ ¤® 42 жЁ«Ё¤а . ЏаЁ а Ў®вҐ б Ї« в®©
¤®бв в®з® б з « бЄ®ЇЁа®ў вм ¤ЁбЄҐвг ®Ўлз®© Їа®Ја ¬¬®© DISKCOPY,
§ ⥬ б Ї®¬®ймо Ї« вл бЄ®ЇЁа®ў вм 42 жЁ«Ё¤а.
ЌЋ’Ђ.
Ђўв®ал нв®© бЁб⥬л в Є¦Ґ аҐиЁ«Ё а бЇ®«®¦Ёвм Ёд®а¬ жЁо ® § йЁвҐ
Ё¦ҐҐа®¬ жЁ«Ё¤аҐ. ‚ ®в«ЁзЁҐ ®в бЁб⥬л JAWS ®Ё аҐиЁ«Ё
ЁбЇ®«м§®ў вм 41 жЁ«Ё¤а. Ћ¤ Є® Їа®Ја ¬¬ COPYWRIT в Є¦Ґ гбЇҐи®
Є®ЇЁагҐв нвг ¤ЁбЄҐвг. „ЁбЄҐв ҐбвҐб⢥® «ҐЈЄ® Є®ЇЁагҐвбп Ї« в®©
OPTION BOARD.
SHIELD.
Ђўв®ал бЁб⥬ SHIELD Ґ Ї®и«Ё Їа®в®аҐл¬ Їг⥬ ЁбЇ®«м§®ў Ёп
Ё¦ҐҐа®Ј® жЁ«Ё¤а . ЋЁ ЁбЇ®«м§®ў «Ё бў®Ў®¤®Ґ Їа®бва бвў® 0, 1 Ё
2 жЁ«Ё¤а е ¤«п а §¬ҐйҐЁп Є«о祢®© Ёд®а¬ жЁЁ. „ЁбЄҐв Ґ Є®ЇЁагҐвбп
Їап¬го Їа®Ја ¬¬®© COPIWRYT. Ћ¤ Є® Ї®б«Ґ Є®ЇЁа®ў Ёп Їа®Ја ¬¬®©
COPYWRIT ¤®бв в®з® Ґ¬®¦Є® Ї®¬®зм Їа®Ја ¬¬®© EXPLORER Ё ‚л Ё¬ҐҐвҐ
а Ў®в®бЇ®б®Ўго Є®ЇЁо. „ЁбЄҐв Ґ гбв®©зЁў Є Є®ЇЁа®ў Ёо Ї« в®© OPTION
BOARD. Њл ४®¬Ґ¤гҐ¬ ‚ ¬ ЇаЁ ЁбЇ®«м§®ў ЁЁ Ї« вл бЄ®ЇЁа®ў вм б з «
¤ЁбЄҐвг Їа®Ја ¬¬®© DISKCOPY, § ⥬ бЄ®ЇЁа®ў вм Ї« в®© жЁ«Ё¤ал 0-2.
„«п Ї®«г票п а Ў®в®бЇ®б®Ў®© Є®ЇЁЁ ¤ЁбЄҐвл Ї®б«Ґ Є®ЇЁа®ў Ёп
Їа®Ја ¬¬®© COPYWRIT ‚ ¬ б«Ґ¤гҐв ў®бЇ®«м§®ў вмбп Їа®Ја ¬¬®© EXPLORER. Њл
ЇаЁўҐ¤Ґ¬ Ї®и Ј®ўго ЁбвагЄжЁо Ї® а Ў®вҐ б Їа®Ја ¬¬®© EXPLORER ЇаЁ
Є®ЇЁа®ў ЁЁ ¤ЁбЄҐвл бЁб⥬л SHIELD.
“бв ®ўЁвҐ ®аЁЈЁ «мго ¤ЁбЄҐвг ў ЌѓЊ„.
‚л§®ўЁвҐ Їа®Ја ¬¬г EXPLORER.
ЏҐаҐ¤ ‚ ¬Ё Ї®пўЁвбп ЇҐаўл© нЄа .
Recover file a:
Read directory a:
Read layout a: <-ўлЎҐаЁвҐ ®¬Ґа ЌѓЊ„ Є« ўЁи ¬Ё +/-
Sides 2
Diskette type low density
Position 0.0.0
Analyze track brief <-ўлЎҐаЁвҐ ०Ё¬ brief Ё ¦¬ЁвҐ
ўў®¤.
3
ЏҐаҐ¤ ў ¬Ё Ї®пўЁвмбп ўв®а®© нЄа .
pos arc C H R N SC cluster flags
9 37.8 0 0 1 2 2
47 37.8 0 0 2 2 2
85 37.7 0 0 3 2 2
122 37.7 0 0 4 2 2
160 37.7 0 0 5 2 2
198 37.8 0 0 6 2 2
236 37.7 0 0 7 2 2
273 37.8 0 0 8 2 2
311 37.8 0 0 9 2 2
349 20.2 0 0 11 6 1 Sh <-гбв ®ўЁвҐ бо¤
Єгаб®а Ё ¦¬ЁвҐ
ўў®¤.
ЏҐаҐ¤ ў ¬Ё Ї®пўЁвмбп ᮤҐа¦Ё¬®Ґ ᥪв®а . ‘®еа ЁвҐ ҐЈ® ў ЎгдҐаҐ Ї®
Є®¬ ¤Ґ Ctrl-F1. ‡ ⥬ ўҐаЁвҐбм ЇаҐ¤л¤гйЁ© нЄа Є« ўЁиҐ© Esc.
“бв ®ўЁвҐ ¤ЁбЄҐвг, бЄ®ЇЁа®ў го Їа®Ја ¬¬®© COPYWRIT. Џ®ўв®аЁвҐ
¤Ґ©бвўЁп ¤«п нЄа 2. ‚®ббв ®ўЁвҐ ¤ лҐ Ё§ ЎгдҐа Ї® Є®¬ ¤Ґ Ctrl-
F2. ЏҐаҐ¤ ў ¬Ё Ї®пўЁвмбп Є авЁЄ , Ї®е®¦ п б«Ґ¤гойго, е®вп ҐЄ®в®а®Ґ
§ зҐЁп Ґ© ¬®Јгв Ўлвм ¤агЈЁ¬Ё.
ЫЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЫ
Ы цццццццццццццццццццццццццццццццццццццццццццццццццццццццццццццццц Ы
Ы цццццццццццццццццццццццццццццццццццццццццццццццццццццццццццццццц Ы
Ы цццццццццццццццццццццццццццццццццццццццццццццццццццццццццццццццц Ы
Ы цццццццццццццццццццццццццццццццццццццццццццццццццццццццццццццццц Ы
Ы К·N99999999999999999999999999999998 ††‡ш 2)Ѕ9999999 Ы
Ы 999999999999998 44?}f’ (I¤eЖ`