                    Terminate & Stay Resident.


                       ⮩   ⢥
                    짮⥫         -     ᫮
                    "१⭠   ணࠬ",        
                    ஭      㢠     
                    饬.      -  -  ᮢ襭
                    ࠧ,  ᢥ⢥ ,  
                      类  砥,   㯭   
                    ⮣ ᬥ⭮.

                           .㭮, " 㬭,  㬭,
                                       㬭    १
                                       ணࠬ", Computer Press,
                                       #4 '92


         ⮩    ᮡ ᪠뢠   ⠪  TSR
, ⥬ ,  ⠪ 뢠.  筮  ⠪      ⠭
⢥ত,  㦭  ⠪  ⮫쪮  ⠪,      ါ.
  ᪠,  筮  ࠧ .

        , ⎨ ࠧ     ᫮⥩  ;).  DOS,  
ᮦ, ॥ࠡ쭠 (॥ࠡ쭠 (୮  室)
ணࠬ - ணࠬ,   ன      
६ 뢠 ᪮쪨 ᠬ,   ࠧ묨  
믮ﬨ,    뢠騬  ﭨ      㣠).   
      饭    㭪  DOS,  ᫨
-   㦥 믮. 襭 ⮣ ॡ 
 ࠧ襭 ⥬ ⥪.

          ८.    ⥩      ᮢ,
 ⎨ 뢠  ࠧࠡ⪥ popup-ணࠬ,  室
७ࠡ쭮 DOS,   筮 , 筮,  뢠.

        ⠪.  ணࠬ  ᢮  ⨢樨    
 .

        ࢮ -  ⨢     DOS',  ..    
  믮  㭪樨 .    ஢
 䫠 ⨢ DOS (InDOSFlag),   室   
ࠡ稪 ६,    室  -  ६.
  ⮣  䫠  頥    ES:BX  ᮢ  㭪  34h.
⢥,   맮 㦭 ⠢   ⥫ १. ᫨
 䫠 ࠢ 0,  ᬥ ⨢஢.

        ஥  -    室    ',      ࠢ  
⨢.  Idle-横 㭪樨 0Ch (  ᢥ,     
⮫쪮  ;) ) DOS 뢠 뢠 28h,  ண  
뢠 㭪樨 DOS > 0Ch.

         ࠧ,  諨  ⮬,   १⭠  
襩 ணࠬ ।⠢ ᮡ ᫥饥. ࠡ稪 Int 09h,
    ⨨  ⪥      䫠,    
쭥襬 㤥   ⮬,  뫠 ⪠ ⨢樨. 
䫠 ஢  ࠡ稪 Int 28h,  ,    室,
ந ⨢.  ⠪  ࠡ稪 Int 08h,  ஬
஬ ⮣ ஢ 䫠 ⨢ DOS.

        Src\TSR_1.Asm  -  ਬ  ணࠬ,  ॠ饩   ⠪
. ஬ ⮣,           .
祭   १,     १ࢨ  
אַ  ⥫ ணࠬ:

                jmp     Initialize

;               [ 直 ࠧ ࠡ稪 ]

Buffer          db      Size    dup     (?)

Initialize:

;               [  ᥣ ]

                mov     dx, OFFSET Initialize
                int     27h


           ᤥ  ᨢ...


                jmp     Initialize

;               [ 直 ࠧ ࠡ稪 ]

Buffer          LABEL   BYTE
Initialize:

;               [  ᥣ ]

                mov     dx, OFFSET Initialize + Size
                int     27h


         ஥ -  ᥣ 易⥫쭮  ࠭ ண
ࠡ稪 뢠 ⢮ ⤥ ६.  ࠢ,
 ᥣ,  ⎬ ⤠ ࠢ ஬ ࠡ稪. 
 ᮢ:

;               [  ᥣ ]

                db      0EAh    ;  쭥 jmp'
Old_Int_08h     dd      ?

        

;               [  ᥣ ]

                pushf
                db      09Ah    ;  쭥 call'
Old_Int_08h     dd      ?

;               [  ᥣ ]

                iret

         ࢮ 砥    ୥     ࠡ稪,
 ஬ ᫥ ࠡ⪨ ண ࠡ稪 ந  
 .

        ⠪, Src\TSR_1.Asm.   ୮  㧪  
  ࠡ稪 ⨯᭮ 뢠  2Fh.  
୮ ᪥ ந室 㧪  १    ,  
⮫쪮  ⮬ 砥, ᫨   墠⨫ ᢥ ᯮ㥬
  뢠  (  ⮬  砥            ࠢ   
⠭).   Alt-Space   ண  ॥ࠡ쭮
;) .

***>    ਬ砭:

        ஬ ⮣,    १,  ᯮ  㭪樨  DOS,
室 뢠 ⠪  ,    ॠ  ⥬  
᪨ 訡 (In 24h)   ⨥  Ctrl-Break  (Int  23h).
筥  ᫥.

         ⥬  뢠 23h      ﭨ
䫠 ஢ન  Ctrl-Break. ᫨ 䫠 襭, ஢ઠ 
 襭 ணࠬ ந室 ⮫쪮  맮  㭪権  DOS
00h..0Ch, ᫨  䫠  -   믮    㭪権.
⮬,  ᫨  ணࠬ    ᯮ   㭪権      0Ch,
筮 ࠭ ﭨ ⮣ 䫠,    ६
믮 ᪮ ᥪ樨,  ⮬ ⠭   祭
   ᨢ ﭨ.    ᤥ  ᯮ
ᮢ 㭪 33h:

In: AH = 33h
    AL = 00h -  ﭨ 䫠
               Out: DL = 00h - 襭
                       = 01h - ⠭
       = 01h -  ﭨ 䫠:
               DL = 00h - 
                  = 01h - ⠭
               Out: None

        ਮ    Int  23h  ⠪,  ⮡  
㪠뢠  Iret.

            ᪮  訡  (ਬ,   
࠭ 訡 饭  ) DOS 㦠    AX,  DI,
SI, BP ଠ    訡      Int  24h.  ⠭⭮
ॠ樥  ࠡ稪    뤠  ᮮ饭    訡  
।  롮   Abort/Retry/Fail/Ignore.   ᫥   祣   -
饭   㭪  DOS,    믮  ன  ந諠
訡,  ⢥⮬ 짮⥫  AL:

        00h - ஢ 訡
        01h -  
        02h - ࢠ 믮 ணࠬ  Ctrl-Break
        03h -  ⥪騩 맮  ⠭ ਧ 訡

        室騬   "⢥⮬"  03h.  ࠧ,
  ⨢樨  १    ⠭  ࠡ稪
Int 24h  :

        mov     al, 03h
        iret

        !        ॠ樨  ⬥  
஢ _⮫쪮_   ⨢樨 १,   室
 ᨢ ﭨ - ⠭.

<***

        㣮  ᯮ  ᥬ ⭮  ணࠬ
Norton Guide.  ,   ᥩ ᢮ ஢  
१ 䠪᪨ 㡨  ࠡ뢠 ࠪ᪨ , 
ᬮ  ,  墠뢠 ⮫쪮   뢠  -  28h  
16h.      ᯈ뢠    .  ᫨  
㬥 ࠧ  Src\TSR_1.Asm, 㬠,   ⠪ 㤭
㤥 ࠧ      Src\TSR_2.PLM.      PLM  ⠬
ਫ Src\AsmExamp\TSR_2.Asm,  ࠢ    稫  ᫥
ࠡ⪨ Src\TSR_2.PLM, ᮡ⢥,  PLM',  ⮬    祭
⠡. 砩 PLM!

           ண  ਢ  ᪮쪮  襭  
ᯫ뢠  -  Norton  Guide.        祢   -   
墠뢠  뢠.  Int  16h  뢠  
  ,  ࠪ᪨,  ,      ।   ᪫祭ﬨ,
ணࠬ.    㦥        ⠪      ஡  
뢠  뫮.

         ਬ    RShift-Space  㦠
(᫨  )  ୮ ᪥ ( ⮣ ᯮ
䨪⨢ 㭪 Int 16h  ᯥ樠 ⢥⮬). ࠢ,  
      ஥⭮   ᯥ譮     ७     ⪨
⨢஢ ;).  ஢  "ࠢ쭮"    ᪠,  
ਢ  ன  ;).

        ஠஢  ਬ,  ᪠: " , 
᭮!  祬   ਬ ⠪     TSR'  
ॡ ॥ࠡ쭮?!". ᮫⭮ ୮. ਬ १
 ॡ饣 ॥ࠡ쭮  墠뢠饣 ⮫쪮 Int 16h
- Src\TSR_3.PLM/Src\AsmExamp\TSR_3.Asm.     RShift-Enter
  ,    ୮  ᪥  -  㦠   (᫨   
).

         ᮬ  ⠢  १    
 PSP.  ⮣ 室 ᠬ 뤥 ᥡ  .

          ,  뤥  DOS',  ।
16-⨡⮢  - MCB - Memory Control Block:

Ŀ
Byte Signature       - "M" - ஬ 
Ĵ                     "Z" - ᫥   楯窥
Word OwnerID         -    
Ĵ
Word Size            -    ࠣ ( MSB)
Ĵ
Byteÿ
Byte Reserved
Byte
Ĵ
Byteÿ
Byte
Byte
Byte OwnerName       -   (ASCIIZ)
Byte
Byte
Byte
Byte
ʹ
 .. ÿ
 ..  BlockData
. .. ..

        ⠪, ⮡    १⮬  室  ᢮
᮪   ᭮ ணࠬ, 뤥   ᪮஢
㤠,   ⠢      MCB          .     
Src\TSR_4.PLM/Src\AsmExamp\TSR_4.Asm.  ਬ 墠뢠
Int  16h,        176  (!)          ⨨
RShift-Backspace .  ୮ ᪥, ᫨  ,
㦠.

        ,    饬-,  墠        १⢠.
ਬ   ⮬,      १,  ४⭮
뢮騥            ࠭        -        ଠ.
Src\VExample.PLM/Src\AsmExamp\VExample.Asm - 訥  ࠣ
(!__ணࠬ_!),  騥   .         ਢ
।  ࠬ஢   ⥪饣      ०   (   ⮬
७   ०      VGA).    Src\VExample.PLM     
஢ (,  ,    ࠪ୮ ;) ),
⮬    ⮬  .

                                                          //Scout

