„ЋђЋѓ€… „ђ“‡њџ !

   ЏаҐ¤« Ј Ґ¬ ў иҐ¬г ў­Ё¬ ­Ёо ­ Ў®а Ё­д®а¬ жЁ®­­ле ¬ вҐаЁ «®ў:

   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Ж`