









                  ࠢ筨 ணࠬ

                ᮭ쭮 

                       IBM.







                     थ

                           .

                                                               5
      襭  ᫠, ਭ  ⮩ .                      5
                                                               6

    1. ⥬ .                                        11
       1.  ⥬ ᮢ.                           11
          奬 䥩  ਥ 8255.             11
        । ⨯ IBM PC.                                      13
        । ᨨ MS DOS.                                    14
        । ᫠  ⨯ ஢ ᯫ.                  14
        । ᫠  ⨯ ᪮ ⥫.                16
        । ᫠  ⨯ ਩ ன.              17
         ⢠ .                                    18
       2. ࠢ 뢠ﬨ.                              21
        ணࠬ஢ ஫ 뢠 8259.                 22
        /ࠧ襭 ⤥  뢠.            22
        Hᠭ ᮡ⢥ 뢠.                            23
          饬 뢠.                        26
       3. ࠢ ணࠬ.                               26
        樨  .                                        27
          ணࠬ  㣮.                             29
        ᯮ짮  䥩  짮⥫             31
        ணࠬ.
        ࠭ ணࠬ   ᫥ 襭.               32
        㧪   ணࠬ ૥.                       34
        ८ࠧ ணࠬ  ⨯ .EXE  ⨯ .COM.              36
    2.   .                                           39
       1. ⠭  ⥭ ⠩.                           39
        ணࠬ஢ 奬 ⠩ 8253/8254.                39
        ⠭/⥭ ६.                                     41
        ⠭/⥭ .                                        43
        ⠭/⥭ ᮢ ॠ쭮 ६.                     44
        প ணࠬ 権.                                45
        樨 ணࠬ஢  ६.                      46
        ࠢ ࠡ⮩  ॠ쭮 ६.                        47
         砩 ᥫ   奬 ⠩.       50
       2.  㪠.                                       51
        ணࠬ஢  㪠 76496 (⮫쪮 PCjr).        51
         ⮭.                                               53
         㪠 ६  㣨 ⢨ﬨ.            54
        㤮 .                                               55
          ⮭.                                       56
         ப ⮭, ६  㣨 ﬨ.    59
          室 ⮭.                             61
         㪮 䥪⮢.                                   62
        ६  ࠧ 㪮.                        64
    3. K.                                               65
       1. ࠢ ன.                               65
        ⪠  .                                    66
        ஢ઠ ᨬ  .                                   67
          ᨬ   뢮   ࠭.              68
              ࠭.                      70
        ਥ ᨬ  .                                   71
        祭 ப ᨬ.                                    71
        ஢ઠ/⠭  -४⥫.             73
        Hᠭ 楤      饣 祭.   75
        ९ணࠬ஢ 뢠 .                   77
       2.   ⤥ 蠬.                          80
        ᯮ짮   <BackSpace>,  <Enter>,  <Escape>       80
        <Tab>.
        ᯮ짮 -४⥫: <Shift>, <Ctrl>         80
        <Alt>.
        ᯮ짮 -४⥫: NumLock,  CapsLock,      81
        Ins  ScrollLock.
        ᯮ짮 ஢ ⥫쭮    -      82
         ६饭 .
        ᯮ짮 㭪樮 .                          83
        ९ணࠬ஢ ⤥ .                        84
         ம।  ⤥ .               85
         楤 ࠡ⪨ Ctrl-Break.                      86
        ९ணࠬ஢  PrtSc.                           87
       3:     ਬ.                     88
        ।। ᯮ짮 .                        89
         ⠡ ᪠-.                                   90
         ⠡  ASCII                                   90
          ᥢ䨪  ஥ ࠬ.              93
         ⠡ ७ .                            93
    4. 뢮  ନ.                                        95
       1. ࠢ 뢮  ନ.                       95
        ணࠬ஢ ஫ ᯫ 6845.                    96
        ⠭/஢ઠ ० ᯫ.                            98
        ⠭ ਡ⮢/梥⮢ ᨬ.                         102
        ⠭ 梥 ࠭ ࠭.                              108
        ⪠ /ᥣ ࠭.                                  109
        ४祭  ࠬ.                          110
       2. ࠢ ஬.                                 112
        ⠭   ᮫ .                      112
        ⭮⥫쭮 樮஢                        114
        祭  몫祭 .                              115
          .                                     116
        ⥭/࠭/⠭ 樨 .            118
         ୠ⨢ ⨯ .                       119
       3. 뢮 ᨬ  ࠭.                             120
        뢮  ࠭  ᨬ.                               120
        뢮 ப ᨬ  ࠭.                              125
        ⥭ ᨬ   ਡ⮢   樨.             127
         ᯥ樠 ᨬ.                               128
           ᠭ ᨬ.                         130
       4. 뢮 筮 䨪.                              132
        ⠭ 梥⮢  筮 䨪.                       133
        ᮢ 窨  ࠭ (஬, 梥⭮  PCjr).     137
        ᮢ 窨  ࠭ (EGA).                             140
        । 梥 窨 ࠭.                              146
        ᮢ   ࠭.                                   148
         ⥩ ࠭.                                  152
        ᪨ 뢮  ᯮ짮 ᨬ ᥢ䨪.   156
       5.  ࠭  ࠭.                             157
        ⨪ ᤢ ⥪⮢ ࠭.                        158
         ⥪⮢ ࠭ ਧ⠫쭮.                       159
        ४祭  ⥪⮢묨 ࠭栬.                    160
          ࠭栬 ⥪.                               163
    5. ᪮ ⥫.                                     165
       1. ࠢ । ᪠.                     165
        ⥭ ⠡ ࠧ饭 䠩.                            165
        । 㯭 ᪮ ࠭⢠.               168
        祭/⠭ ࠧ 䠩.                           169
        ⠭  ᫥  訡,  易    墠⪮      170
        ࠭⢠  ᪥
       2.   ⠫ ᪠.                           171
        ⥭/ ୥ ⠫.                         172
        /㤠 ⠫.                               175
        ⥭/ ⠫.                                176
        祭/⠭ ⥪饣 ⠫.                       177
        祭/⠭ ६    ᫥ 㯠      178
        䠩.
        ⠭  饭   䠩.                     179
        ⥭/ ⪨ ⮬.                                 180
       3. ⮢  ࠡ  䠩.                       182
        ⠭/஢ઠ ⥫  㬮砭.                  183
        /㤠 䠩.                                     184
        ⨥/⨥ 䠩.                                     187
        २ 䠩;   樨 䠩  ⠫.   191
        ⮢  䠩 .                             192
         ଠ樨  ப.                          196
       4. ⥭   䠩.                               197
        ணࠬ஢ ஫ H 765  奬 -      199
         㯠   8237.
        ⥭/ । ᥪ஢.                         206
          ᫥⥫ 䠩.                             208
        ⥭  ᫥⥫ 䠩.                           213
          䠩 אַ 㯠.                              217
        ⥭  䠩 אַ 㯠.                            221
        ஢ઠ  ᫥ 権 ⥭/.                223
        । ᪮ 訡  ⠭ ᫥ .      224
    6. ਭ.                                                 227
       1. ࠢ ࠡ⮩ ਭ.                         227
        樠    ਭ/ୠ  樠      228
        ਭ.
        ஢ઠ ⮣,  ਭ 易  設.                 229
          訡 ਭ   ⠭  ᫥ . 230
        ४祭    ᪮쪨 ਭࠬ.         232
       2. ⠭ ᯥ䨪権 .                       233
        ⠭ ⥪⮢  ᪮ ०.                 234
        ࠢ ﭨ  ப.                       235
        ࠢ  㬠.                                 236
        ࠢ  饩 .                    237
        ⠭ 権 ⠡樨.                                 238
          .                                     239
        ࠢ ⥩ ਭ஢ IBM.                        239
       3. 뫪   ਭ.                           241
        뢮 ⥪⮢  ᪨   ਭ.           242
        ࠢ ࠢ .                                   245
        ய樮쭠 .                                     247
         ᯥ樠 ᨬ.                                 248
        K஢ ࠭  ਭ ( ࠭).                 251
    7. /뢮.                                              255
       1.   ᫥⥫쭮 .                    255
        ணࠬ஢ 奬 UART 8250.                       255
        樠 ᫥⥫쭮 .                       256
        ⠭ ⥪饣 㭨樮 .                  259
        ।  㭨樮 .                 260
        樠  ࠢ .                          261
        । .                                             264
        祭 .                                            266
        뫪/祭       㭨樮      269
        뢠.
         ࠢ , ᯮ㥬  㭨樨.     271
       2.  ࠩ ன⢠.                        272
          ࠩ.                                 273
         ⥣ ன⢠.                               274
         ࠡ稪 뢠 ன⢠.                  275
          ࠩ ன⢠.                                278
        㦥   訡 ன⢠.                      279
       3. ᯮ짮 ᯥ樠 ன /뢮.    282
        ⥭/  ⭮ 䮭.                      283
        ⥭ 樨 ᢥ⮢ .                               284
        祭   १ ஢ .              286
        祭 ஢   ஢ .                 288

   ਫ.                                                       291
      ਫ .    ⭠ ᫠   -     291
       .
      ਫ . ⮢ 樨  ᨪ.                      294
      ਫ . ᭮ ᢥ  몥 ᥬ.           296
      ਫ .  祭 ᥬ 楤  ணࠬ     300
       ᨪ.
      ਫ . ᯮ짮 ࠩ ன⢠ ANSI.SYS.      302
      ਫ . H 権 ய 8088.           302
      ਫ . H 権 ய 80286.          305
      ਫ .  ᫮ IBM PC.                         308

           襭  ᫠, ਭ  ⮩ .

   ணࠬ   ᥬ   祣 筮  ᯮ-
ᮡ ।⠢ ᥫ  ᮢ, ᯮ㥬  ⮩ . H
  ணࠬ   몠 ᮪ ஢      
⥬ 樨  묨 ᫠     ᫥-
 ᪮㦥   .  ᫨  ⭮  ⮩ ⥣-
ਨ -  砨!       㦨 ࠢ⥫쭮
  ᯮᮡ ⢠  ⮩ ⨪,   
ࠧ  ணࠬ 㤥 ⢥ ࠭祭  -
⢠   ⨬ 頬.  ⮡    ⮬   
祭  ਫ.    ਫ   㦤  
⭠  ᫠,  ⠪  ᫥ ᯮ  
樨 .  ਫ   ஡ ࠧࠥ 
᫠    ᯮ짮  ⮢ .   ᫨    
㦤    ⮬ ⭮襭    ᫥-
騥 ࠢ:

   1.   㤮⢠   ணࠬ⮢,  ᫠  -
    묨,         ᫥ H (
   ⭠)  B ( ).   B  ᪠
   ᫥  ᥫ,   祢,    祭 -
    楯 ⮢.
   2.   㣮 ᪫祭 - ᫠  쬨    0000:0000.
    ⭠ ᫠,  騥 ᥣ  ᬥ饭 
   .  祭 ᭥  ਫ .
   3.  㬥  0  7 (  0  15),   0 ᮮ-
    襬  (..,    ⠭  0 = 1, 
    7 = 128).
   4. ࠦ  "ASCII 5" ⭮  ᨬ  5 
   ASCII.   砥,   ⭮     -
   祭 5,     ASCII  ᨬ 5     塠⭮
   楫, ।⠢饬 祭 5.
   5.  ᫠ 祭   ᪮, .  [2.1.3], -
     ४묨 뫪  㣨 ࠧ  .
   ਢ ਬ ࠧ㬥 " 2,  1, 㭪 3".
   [2.1.0]  ⭮  饬 㦤, 稭饬  ࠧ  1
    2.  㦨 ⭨  ⠪ 뫮,   ᥬ
   ⥪.     뫠   ⥬ ⠬ ,     
     ଠ   㯮⮬  ।.   ᭮
   祭 -  稭騬.  ᫨    祬  
   ,  ४ 뫪.
   6. K  ⥪ 祭 ⥪ ணࠬ,   ᥣ 뤥
    ⮬.

                             .

   ணࠬ    ६      ।-
 㯯.  K ᮦ,   㤠 ⢠ 
  ᪮쪮  ᯮᮡ  ६.   ᪮  㦠
ਨ  ணࠬ,   ⫠    ॡ  
ࠧ  ६, 祬  ᠭ.     ᭮  ᭮
  ணࠬ,      室    
,  ⠪    뫨 筮  த㬠   ᠬ
砫. H  ᪠    ⮬,    ᠬ
     ᯮᮡ ⮩   ६    
ணࠬ஢:  ଠ樨  設.  ᮢ ᨫ
 ⠭  ⮣ 䠪   騬 冷
饭   稭 ணࠬ⮢ - ⠢    
㪮⢠  ⥬  .
   筮 ᫥饥  ᫥ ⮣ -  , ᫥騥 
ନ, ஢ ⮯  뤠     㪮,
믠  ᥬ  .        㪮⢠ 
㤮,  樮 ⥬ MS DOS,   ணࠬ-
஢,  ⠪ ᠭ  ⤥ 奬, ᠭ -
饣  ன⢠   ,   ⥫  ,
   ᮤন 業  祪 ଠ樨, 
      ᮡ ⮭   ணࠬ.
   ᪮     ⮣᪮   (
ࠡ  ࠬ     ⪮ ),  
  ⢨⥫쭮  室, ⠪         
室 ᪠ ᭮  ᭮. H     -
稢     㦨 ॡ㥬 ଠ樨.   ᫨  
㦨 㦭 ,         筮
  ६, ⮡  ॡ㥬  䠪  ࠭
ᠭ  稭, , ᫨,  襬 , ॡ㥬
㪮⢮  ᠭ  몥 娫,     祬  
㩤  ॢ. ⥫     ,  ன
ᮡ࠭  ࠪ᪨  室, ࠧ  ଠ樥
㦭  ணࠬ⮢,  ᠭ  । ஢, -
     IBM PC  ࣠  ⠪  ᯮᮡ,
⮡    뫮 ᪠ 室 ଠ. H -
   -  ⠪ ?
   ⮬  ᮡࠫ    㪮⢠  ᠭ  
   ਢ  ணࠬ,     
ᥡ   ६ ( 600 - 800 ஢, ⮡  㯨
  ). ਠ ࣠  ᯮᮡ.  -,
  ࠧ   ⨯ 뢠  㤮,  ࠧ
⭮   ।  ᢮    㤮  
ࠧ  ⪨ 㭪, ⭮騥  । ணࠬ-
᪮ . Hਬ,      ࠧ , 饭
뢮   ᯫ, ⭮    ᮤন 㭪, -
騥  樮஢  ,    ,  
몫   ..
   -,  㭪 ࠧ    ( -
). 砫  ᪮쪮  楢,  뢠 ᭮ -
.   ⥬  ᬠਢ  㦤   窨  ७
ணࠬ஢   몥  ᮪  ஢, ணࠬ஢ 
।  ஢  - 뢠 BIOS  DOS,   ணࠬ஢  
 ஢ ᯮ⥫ 奬, ন ய-
.   K஬ ⮣,   ࠧ  稭   
࠭, 뢠 ᢥ  室    
ࠧ.     ᢥ 뢠    ᮤঠ   
 ᯮ짮 , ⮡   ᢮  祭 
  ࢮ ᬮ.
   㦤  ணࠬ஢  ᮪ ஢ 뢠  
  ஡  몥 ᮪ ஢.  楯樨 
ࠢ ⥯ ਬ   ᪠   C,  ਬ ਢ
 ᨪ.  ᨪ  ࠭    - ⮣,   
   ஝,  ⮬,    IBM PC
   ᢮ ᯮ殮   ⮬,  ᨪ 
Microsoft  ।⠢    ।⢠  ᯮ짮
⥩ 㤮 IBM  PC   ࠢ  㣨 몠
ணࠬ஢.    稭騥 ணࠬ  ᨪ 
ᯮ짮     ਢ  㦤.   ७
⥩  ᨪ ਢ  ணࠬ  設 몥,
  ਫ ,         ணࠬ. -
  ணࠬ    ⠪ ⮭ ,  
९ணࠬ஢   ᮧ ⥫ -
 ࠭  ஬ .
   ணࠬ஢  । ஢ 뢠  ᫥ 
 ஡, ᭮뢠  뢠 樮 ⥬.
   ணࠬ, 믮騥 㤭 ࠡ 
, ⠪    ६饭     ⥭ ⠫
᪠.   ணࠬ⮢  몥 ᥬ   ਬ-
 ணࠬ஢ ।  ஢ ਢ  몥 ᥬ-
.  H ⥯     ࠭஢  몮 ᮪
஢ ।⠢    뢠,    ࠬ⭮
ணࠬ த뢠 樨,    ᠬ ,
ਬ, ⥭ ᮫⭮  ᥪ  ᪠. ⮬ ଠ,
⭮   । ஢ ।⠢ 訩 ,  祬
    .  㦤 ⭮ ⮫-
    樮 ⥬ MS DOS, ᫨   ࠡ⠥   ⥬
CP/M-86  UCSD p-system,    ਤ ᪠ 㣮 㪮-
⢮.
   H,  ਬ  ணࠬ஢  ஢  뢠
  ஡    襭    ஢ 奬. 
஝  ᮢ⨬   IBM PC        ⥪,
᪮  ᭮   奬    Intel.  
奬 ⢫ १  /뢮,   
  ࠪ᪨     몥,  ᨪ. -
      ணࠬ 奬,   ⠩,
䥩  ਥ,  ஫  뢠, ஫ -
,  ஫  H (⥫    ᪠)  
奬 ࠢ 㭨樮 .  IBM  ४-
 ணࠬ஢  ⮬ ஢ ( ᮮࠦ,  ⠪
ணࠬ   ࠡ    ᫥  䨪  ),
᭮   ᭮ 㦨  設,   -
 ॠ 㣨 ᯮᮡ.
   H       ஢. 襭 
   ᨪ.  襭 㣨  ।ᬮ७
। 樮 ⥬.      ⠪ ᫮  
஢  (ਬ,   ᪮ 樨),      
 ᬮ७  -       ⮨ ⮣ , ᪮
  DOS 㦥 ᤥ  祭 .      設⢥
砥    ஢. ࠢ ࠧ ஢ 
ᮡ    㢨    몮 ᮪ ஢
 뢠 ,  ᢮  ।,   뢠 ࠡ  -
奬, 騬 楬 .
        㦠᭮ ⥬ ,  
⮫쪮  몠 ᮪ ஢,  ⠪  ᨪ  ᪠.
  ᫥⢨ ⮣,  ࠧ, ⭮騥  ।
  ஢ ᠭ    몥  ᥬ,   
࠭栬 ﭨ  . ⢨⥫쭮   
 쮭    砥 ᥬ. H  㬠-
,   㦭 ⮫쪮   ᫨    ᥬ
  ᮡࠥ  .  -,  ࠭஢, ⠪
  Turbo Pascal  Lattice C,   ᯮ짮 㭪-
樨 樮  ⥬,      । ஢. K஬
⮣,    楤  ஢    ᠬ 
ॠ  몠 ᮪ ஢. ⮡   ࠧ-
,   ᮤন  ਢ ਬ  ᥬ, 
ਫ   ⪮      ᥬ.  ᫨
   㤥 ᯮ짮 ਠ  ஢, -
⥫   ਠ    㡦  
  ࠡ  모 ᮪ ஢  祬    
 ஡  ࠡ  .
   ࠪ᪨  ࠧ ᮤন  ࠧ .  
ᥣ   ᪮쪮 ਢ ப.   ਢ 
⪨  ॠ樨 ᫮ 楤.  祭 । 
ᠬ⥫  ணࠬ.    ⮣, ⮡   
७묨 ਬࠬ, ,   設⢥  砥,  ⠢ 
ࠣ  ,   ,    頥  
⮩   . H     ਬ  ⥭
  ᠬ  ᨢ 襭 ஡.  ᭮    ਢ
ਬ஢ ⮨   ⮬, ⮡ ।⠢  ⮢ ண-
ࠬ  㫥,   ⮬, ⮡ 㪠   襭  -
 ஡, ⮡    㬠  ࠢ쭮 ࠢ-
. H ᫨  ,    אַ  ਢ
ࠧ  ணࠬ  ⢥  㭪樮쭮  ࠢ 窨 
⥬ ࠡ뢠   権, 㤮⢮ 襬 -
᪮ .  ᪮   ਬ  뫨 ஢७,  
㦨  筨 뫮   ⢨⥫쭮 ᪨
訡,    ⥭    ᫥  ⮣, 
  ணࠬ஢   ⥫ ࠪ᪨ 
㫥 IQ.
    ⮩ ,  , 祭 . H  ࠫ
  ࣮,  ᪮쪮  .  K஬ ⮣,   
 ਢ  ନ᪨  ᫮  ନ.
 ᪫祭 ன ଠ樨 쬠 ᯥ樠쭮 ᢮⢠,
ࠪ᪨  ⭮   ணࠬ஢  ଠ, -
㯭  㬥樨 IBM 祭  .  뫮  筮
४᭮ 墠 ,  ⮣ ꥬ  ⨣  1000 -
      ॢﬨ     㢨 .   ⮬  
⢨⥫쭮   ணࠬ᪨ 㦤 - ᪠,  ᫮-
 ணࠬ ࠢ ஫஬  H  ९ணࠬ஢-
   AT -  ਤ   孨᪨  㪮-
⢠ IBM  ᯥ樠 ᠭ  ந⥫ 奬.
H  99% ணࠬ  ॡ 㣮 ଠ樨    㤮
IBM PC, ஬ ᮤঠ饩      .    ᯮᮡ
襭   ஡ ᮡ࠭     ਢ ࠢ-
 ᨫ  ᫠  ஭  ⮣     室.  
祭  ⠪   ⠡  ASCII,  ६  믮
権      ଠ,   ⥬ ⮡  
㤮⢮   ⨯ ॡ  ࠢ.
    ⠪  ଠ樨,  饭  㬥樨
IBM, ⠪     ࠢ騥     
ணࠬ  뢮  ࠭   ࠧ  ᪮  㭪樨
ࠡ  䠩.    ࠧ  襭 ⨯-
   ணࠬ஢,   易   -
,  ᯮ    ᢮⢠, ⠪  ࠡ
  ॠ쭮 ६  ਧ⠫쭠 ப⪠.    ⠪
  ணࠬ ,   ᫨   뢠 訬
ᨫ,     ⮩ ⮣, ⮡ ணࠬ    .
 饬  饩  ணࠬ  -
  ⮤  ᥡ (祬 筮   ࠧ). K 砫-
,    訥   ଠ樨  ⠪    ६
२ ,     ६,    
ᤥ  ଠ樥 筮 .
   ਢ ⠪ ଠ  ⫨  ࠧ묨 ﬨ
IBM PC.  ᬮ७   ⠭⭮ IBM PC.   
  PCjr, XT  AT  ᥡ -ࠧ,  뢠
㠫   設.  ⭮ ࠧ ⬥⨬,  
  ᮢ襭   ᬠਢ ᢮⢠ AT   MS  DOS  3.0
ࠢ  ஭ 짮⥫᪨ ⥬.   
㦨  ⤥쭮 .   묨 ᪫祭ﬨ  -
ࠧ  ⠭   ⠭  IBM PC,    ᪠
⭮     ଠ쭮 ࠡ     .
  ⢥ ࠭祭.  ᠭ  ⮩ 
।  ᯮ짮 MS DOS 2.1   襩 ᨨ 
ᮮ⢥饩  ᨨ  ᮢ襭⢮  ᨪ  (BASICA).
짮⥫,       襤訥  MS DOS 2.1,   
ᯮ짮  २⢠ 設.
   ᫨  ⮩  -  ᮤন,    䠪 - ਠ
  -   ७ ,    .     ᮤন
⠪ ᪮쪮 ⥭ ਬ஢ ணࠬ   ⮢ , 
 ᮢ襭. H ᫨  㬠,  ⠪ ஬ ⢮
ଠ樨   ⠢  ०   ⥫쭮 
⮢    ,  ஡.  ᫨    㦨
- 㦠᭮,   孨  㡦  㬠  ⮬, -
쪮 㦥 뫠   , ᫨  ⮩   뫮. ᫥
⮣     쬮   : Brady Co., Simon &
Schuster,  General Reference Group, 1230 Avenue of the  Americas,
New York, NY 10020. ᫨  ᤥ ,   ⠭ 
   ணࠬ⮢,   ஥   ⮩
,  ᢥﬨ  ᫥ ᮧ IBM.

   筮 ணࠬ஢!
                                           Robert Jourdain




                     1. ⥬ .

    1.  ⥬ ᮢ.

        ᫥ 㧪   ஢ઠ
㤠  :    ⨯  IBM  PC  饭  ?... 
 ᨥ MS DOS?... ᪮쪮  ?...    -
室 㤮  ?   ᯮᮡ 祭
⮩ ଠ樨.  H  ᯮᮡ -   ⮬ 
짮⥫ (    ⢥?). H   
㯭  ଠ   ⠭ ४⥫    ⥬
.  H  ⠭  ᥣ ᮮ⢥ ॠ쭮. -
⮬   ᥣ ᯮ짮   -  -
   ॡ㥬 㤮    㦭 -
    BIOS.  ᪮ ⠭ ४⥫
 㦨 ࠢ 窮    祭 ॡ㥬 ଠ-
樨,   ࠧ 稭  㦤 奬,  ᮤঠ-
饩  ଠ - 奬 䥩  ਥ 8255.
   ணࠬ        㤮 ⮫쪮 
ᯮᮡ.        ⮢ /뢮,
ᮮ⢥饬   ᮥ   㤮  (筮 뢠
      65535  ᮢ ⮢).   
ணࠬ       祬  ᮢ
⨢  .   ⠡ ᮢ ⮢ ਢ  
[7.3.0]. H . 1-1      ।   -
樮 ⥬  ணࠬ.
   1.1.1   奬 䥩  ਥ 8255.

   奬  䥩  ਥ Intel 8255 - 襥 ,
 ண  稭, ⮡   ଠ  饬
㤮.  奬 ।祭   楫.  
ᮮ頥   ⠭  ४⥫    ⥬ .  
ਭ     .   ࠢ  冷
਩ ன,  奬 ⠩ 8253.  設
ᥬ⢠  IBM  PC  ⮫쪮 AT  ᯮ 奬  8255;  
࠭ ଠ  㤮    ᠬ ॠ쭮 -
   ᯥ樠쭮 奬  ᨬ ⠭.   AT
ᯮ    ⮢,    8255,  ࠡ  -
ன  ࠢ 奬 ⠩.
   奬 8255    ॣ, 뢠  
 A   C.   ⮢  60H  62H ⢥⢥-
.      ,    ⮫쪮   B.
 PC, ⠭  7  B   1  ଠ, ᮤ-
   A.  筮  PC ⠭  2 ।
ᮤন      ⮢    C,  ⠭  3
   ᠬ  XT. ন  ॣ஢ ᫥饥:

    A (60H)
         B  7=0
          0-7 PC,XT,PCjr,AT: 8- ᪠-  
         B  7=1  PC
          0    PC: 0 =  ⥫  ᪥
             1    PC:  ᯮ
           2-3    PC: ᫮    ⥬ 
           4-5    PC: ⨯ ᯫ (11 = ஬,
                      10 = 梥⭮ 80*25, 01 = 梥⭮ 40*25)
           6-7    PC: ᫮ ⥫  ᪥

    B (61H)
          0    PC,XT,PCjr: ࠢ  2 ⠩ 8253
             1    PC,XT,PCjr: 뢮  
             2    PC: 롮 ᮤন  C
                  PCjr: 1 = ᨬ ०, 0 = ᪨
             3    PC,PCjr: 1 =   몫祭
                  XT: 롮 ᮤন  C
             4    PC,XT: 0 = ࠧ襭 
                  PCjr: 1 =     
             5    PC,XT: 0 = ࠧ襭 訡 饫 ७
             6    PC,XT: 1 = ࠧ襭 ᮢ 
           5-6    PCjr: 롮  (00 = 8253, 01 = ,
                  10 = /뢮, 11 = 奬 76496)
             7    PC: 롮 ᮤন  A
                  PC,XT: ⢥ত 
    C (62H)
         B  2=1  PC   3=1  XT
       0-3    PC:   ४⥫ 2 -
                  樨 (   ७)
             0    PCjr: 1 =  ᨬ 
             1    XT: 1 =  . ᮯ
                  PCjr:   
             2    PCjr:   H
           2-3    XT: ᫮    ⥬ 
             3    PCjr: 0 = 128K 
             4    PC,PCjr:   
                  XT:  ᯮ
             5    PC,XT,PCjr: 室  2 8253
             6    PC,XT: 1 = ஢ઠ 訡 饫 ७
                  PCjr: 1 =   
             7    PC,XT: 1 = ஫ 訡 ⭮
                  PCjr: 0 =   ᮥ
         B  2=0  PC   3=0  XT
       0-3    PC:   ४⥫ 2 -
                  樨 ( ᯮ)
           0-1    XT: ⨯ ᯫ (11 = ஬,
                  10 = 梥⭮ 80*25, 01 = 梥⭮ 40*25)
           2-3    XT: ᫮ ⥫ H (00 = 1  ..)
           4-7    PC,XT:  ,    ⠭묨 ⠬

   ⬥⨬,   0    ⮢ ॣ ᮮ⢥  -
 ४⥫ "off".
   AT ࠭  ଠ    䨣樨    奬 MC146818
  Motorola,   ᠬ ॠ쭮 ६.     
 奬 8255,   ࠢ  奬 ⠩ 
ਥ     ᯮ   ᠬ   -
⮢.  奬  64 ॣ, ஭㬥஢  00  3FH.
  ⥭  ॣ  㦭 ᭠砫 ᫠       
ᮬ 70H,  ⥬      १    71H. 
ࠬ  䨣樨  㦤    ᫥  ࠭.
ਢ  ⮫쪮  ᢮:

   H ॣ               ᯮ짮
       10H             ⨯ ⥫ H
       12H             ⨯ ⥫ 䨪஢ ᪠
       14H             
       15H               ⥬  (訩 )
       16H               ⥬  (訩 )
       17H               (訩 )
       18H               (訩 )
       30H              ᢥ 1  (訩 )
       31H              ᢥ 1  (訩 )
   ᮪ ஢.

        ⢮ ਬ஢ 㯠  ⨬ -
⠬.  H ਢ ணࠬ  ᨪ, ⠭ ᫮
᪮ ⥫, ᮥ   IBM PC. ० 祬 -
     A,  7  B   ⠭-
  1.  ⢥,      祭 ⮣ 
  0 । 쭥襩 ࠡ⮩,   㤥 -
    ⠭  ࠡᯮᮡ  設   ਤ
몫  .  ᨪ   筮 ।⠢ ᥫ,
 㤭 ࠡ    楯窠  ⮢.   ணࠬ
    楫   255 (ᨬ쭮 祭,
஥  ਭ  )  쬨ᨬ 
ப.   ᫥  ⮣ ப 㭪 MID$   १
㦭   . ᭮ ⮢ 権  ᨪ -
  ਫ .

100 A = INP(&H61)            '砥 祭   B
110 A = A OR 128             '⠭  7
120 OUT &H61,A               '뫠     B
130 B = INP(&H60)            '砥 祭   A
140 A = A AND 128            '뢠  7
150 OUT &H61,A               '⠭ 祭  B
160 GOSUB 1000               '८ࠧ㥬   ப
170 NUMDISK$ = RIGHT$(B$,1)  '砥 㫥 
180 IF D$ = 1 THEN NUMDISK = 0: GOTO 230 ' ᪮
190 C$ = LEFT$(B$,2)         '६    ப
200 TALLEY = 0               '६  ᫠ ᪮
210 IF RIGHT$(C$,1) = "1" THEN TALLEY = 2 '६ 訩 
220 IF LEFT$(C$,1) = "1" THEN TALLEY = TALLEY + 1 ' 訩
230 TALLEY = TALLEY + 1      ' 稭  1,    0
                             '⥯  ᫮ ⥫
1000 '''ணࠬ ८ࠧ    ப
1010 B$ = ""                 ' ப
1020 FOR N = 7 TO 0 STEP -1  '஢ઠ । ⥯ 2
1030 Z = B - 2^N             '
1040 IF Z >= 0 THEN B = Z: B$ = B$+"1" ELSE B$ = B$+"0"
1050 NEXT                    '塞   
1060 RETURN                  ' 祭

   H ஢.

   ᥬୠ ணࠬ 砥 ᫮  ᪮ -
⥫ ⥬  ᯮᮡ,       襯ਢ  ਬ,  
  .  H,   뢠   ⠭
ࢮ砫쭮 祭   B.

   IN   AL,61H          ;砥 祭   B
   OR   AL,10000000B    ;⠭  7  1
   OUT  61H,AL          ;塞 
   IN   AL,60H          ;砥 祭   A
   MOV  CL,6            ;⮢  ᤢ AL
   SHR  AL,CL           ;ᤢ 2    6 権
   INC  AL              ;稭   1,    0
   MOV  NUM_DRIVES,AL   ;砥 ᫮ ⥫
   IN   AL,61H          ;⮢  ⠭  B
   AND  AL,01111111B    ;뢠  7
   OUT  61H,AL          ;⠭ 
   1.1.2 । ⨯ IBM PC.

    ஡ ᮢ⨬  ࠧ묨 ⨯ IBM PC.
  ⮣ ⮡ ணࠬ  ࠡ    IBM PC,  -
   ,  室  ⮡   ।-
  ⨯ 設,    㦥.   ଠ ᮤ-
  ஬        FFFFE  ROM-BIOS,
 ᯮ짮 ᫥ 祢 ᥫ.

             K                K
                PC                     FF
                XT                     FE
                PCjr                   FD
                AT                     FC

   ᮪ ஢.

    ᨪ   ᯮ짮 PEEK  ⥭ 祭:

100 DEF SEG = &HF000        '㪠뢠  孨 64K 
110 X = PEEK(&HFFFE)        '⠥ ன   
120 IF X = &HFD THEN ...    '... ⮣  PCjr

   H ஢.

    몥 ᥬ:

;--- । ⨯ :
   MOV  AX,0F000H           ;㪠뢠 ES  
   MOV  ES,AX               ;
   MOV  AL,ES:[0FFFEH]      ;砥 
   CMP  AL,0FDH             ; PCjr?
   JE   INITIALIZE_JR       ;室  樠
   1.1.3 । ᨨ MS DOS.

      ࠧ MS DOS   﫨   ,
   ⢥    ᠭ  ।
⥩ ணࠬ  ࠢ  ।騬 ﬨ. ⮡ 
࠭  ணࠬ 㤥 ࠡ    ᨥ MS DOS 
  ᯮ짮  ⮫쪮 㭪樨, 㯭  MS DOS 1.0.   
⥬ ।ᬮ७  뢠,  饥   ᨨ MS
DOS.     ᫮  ᯮ짮  ஢ન  믮
襩 ணࠬ.  쭮, ணࠬ    뤠
ᮮ饭  訡, ᮮ   㦭 㣠  MS DOS.

   । ஢.

   㭪  30H  뢠 21H 頥  ᨨ  MS  DOS.
訩  ᨨ (2    2.10)  頥   AL,  訩
  ᨨ (10  2.10) 頥  AH (  ,
 訩  .1 頥  祭  AH,   1H). AL 
ᮤঠ 0,  㪠뢠   MS DOS  祬 2.0.  
뢠  ᮤন  ॣ஢  BX  CX,   -
頥 祭 0.

;--- । ᨨ MS DOS:
   MOV   AH,30H            ; 㭪樨 祭 ᨨ
   INT   21H               ;  ᨨ
   CMP   AL,2              ;஢ઠ   2.
   JL    WRONG_DOS         ;᫨  2,  뤠 ᮮ饭
   1.1.4 । ᫠  ⨯ ஢ ᯫ.

   ணࠬ    室 ଠ  ⮬,  㤥
  ࠡ   ⥬    ஬  ஬,   梥⭮
᪮ ⮩   EGA,  ⠪  稨 ண .
  㭪  [4.1.6]  ᭥  । ࠢ    
  㣮.     㤮, ࠭騩  -
    ROM-BIOS    0040:0010  ᮮ頥  ⠭
४⥫ 1,    뢠       ⨢. 
ਭ樯   祭 11  ஬ , 10 - 
梥⭮  80*25, 01 -   梥⭮   40*25  00  EGA.
   稨 EGA   ⠭  ⫨묨  00,
 ᨬ  ⠭  ᮡ⢥ ४⥫. -
   ᭠砫 㣨 ।⢠ ⠭ 稥 EGA, 
⥬, ᫨  ,       BIOS  ।  
⨢  梥⭮  ஬ .   ஢ન  
EGA       0040:0087. ᫨  ࠢ 0, 
EGA .  ᫨   㫥,    3=0, EGA
 ⨢ ஬,     ࠢ 1,  ⨢ -
ன .
   K   EGA,  ஢ઠ  ஬  
梥⭮  ⢫  祭  ॣ -
  奬 6845 [4.1.1]  ᫥饣 ⥭ 祭
 ஢ન   ᮢ.   ஬  諨 0FH 
  3B4H, ⮡ 㪠  ॣ ,  ⥬  
   १  3B5H. ⢥騥  
梥⭮  3D4H  3D5H. K  ,   -
頥 祭 0FFH;  ᪮  祭  ᮤঠ
 ॣ,  筮 ⮩ ஢ન   祭.
      ,    ॡ
⢥  稨  EGA:  ᪮쪮        
  ⨯    ᮥ?  ।  ⨯  ᯫ
஢  1     0040:0087;      ⠭, 
ᮥ  ஬ ᯫ,    ࠢ  -  梥-
.  ᫨  ணࠬ  ᯮ 梥⭮ ᪨ ० 
350  ப,    ⠪ । ᮥ    ᯫ
IRGB   R'G'B'RGB,    ᫥  ॢ  ᮮ⢥
襭  梥⭮  ᯫ IBM.    ।  ⠭
 ४⥫   EGA.  ⠭  ४-
 頥  CL  饭  㭪樨 12H 뢠 10H.
窠   ⮢      0110  襭
梥⭮  ᯫ.    ᠬ 㭪 ᮮ頥  稥 
  EGA.   頥  BL,  ᮤঠ騩 0  64K, 1 - 
128, 2 -  192  3 -   256K  ᯫ.

   ᮪ ஢.

   ਢ ࠣ  । ⨯ ⥪饣   
०  ࠡ,   ⠪  ।   ⨯ ஢
  設:

100 '''। ⨢ 
110 DEF SEG = &H40         '㪠뢠    BIOS
120 X = PEEK(&H87)         '஢ઠ  稥 EGA
130 IF X = 0 THEN 200      'EGA ,  
140 IF X AND 8 = 0 THEN... '⨢  EGA
 .
 .
200 X = PEEK(&H10)         '⠥   㤮
210 Y = X AND 48           '뤥塞  4  5
220 IF Y = 48 THEN ...     '... ⮣ ஬ (00110000)
230 IF Y = 32 THEN ...     '... ⮣ 梥⭮ 80*25 (00100000)
240 IF Y = 16 THEN ...     '... ⮣ 梥⭮ 40*25 (00010000)

   騩  ਬ  ஢ 稥 ஬ ,  
⨢    EGA    梥⭠.     ਬ 
ᯮ짮  ஢ન  梥⭮  ᫨ ᯮ짮
 ⮢ &H3D4  &H3D5.

100 '''஢ઠ  ஬ 
110 OUT &H3B4,&HF          ' ॣ 
120 X = INP(&H3B5)         '⥭  ࠭ 祭
130 OUT &H3B5,100          '뫠  ॣ  祭
140 IF INP(&H3B5)<>100 THEN... '᫨   - ୥  
150 OUT &H3B5,X            '⠭ 祭 ॣ

   H ஢.

   ਢ ਬ ᮮ⢥ ਬࠬ  ᨪ.

;--- । ⨢ :
   MOV   AX,40H        ;㪠뢠 ES    BIOS
   MOV   ES,AX         ;
   MOV   AL,ES:[87H]   ;஢塞 稥 EGA
   CMP   AL,0          ;
   JE    NO_EGA        ;᫨ 0040:0087 = 0,  EGA 
   TEST  AL,00001000B  ;EGA , ஢塞  3
   JNZ   EGA_NOT_ACTIVE;᫨  3=1,  EGA ⨢
    .
    .
EGA_NOT_ACTIVE:
   MOV   AL,ES:[10H]   ;஢塞   ᯫ
   AND   AL,00110000B  ;뤥塞  4  5
   CMP   AL,48         ; ஬ ?
   JE    MONOCHROME    ;室 ᫨ 

   ।  稥 ஬  ஢ਬ ⠭ 
梥⭠  (⨢):

;--- ⠭  ⨢ 梥⭠ ?
   MOV   DX,3D4H       ;㪠뢠  ॣ  6845
   MOV   AL,0FH        ;訢 ॣ 
   OUT   DX,AL         ;㪠뢠  ॣ
   INC   DX            ;㪠뢠  ॣ 
   IN    AL,DX         ;砥 ⥪饥 祭
   XCNG  AH,AL         ;࠭塞 祭
   MOV   AL,100        ;⮢ 祭 100
   OUT   DX,AL         ;뫠 
   IN    AL,DX         ;뢠  ᭮
   CMP   AL,100        ;ࠢ 祭
   JNE   NO_CARD       ;室 ᫨  
   XCNG  AH,AL         ;  梥⭠ 
   OUT   DX,AL         ;⮣ ⠭ 祭
   1.1.5 । ᫠  ⨯ ᪮ ⥫.

   H    設  ஬ AT ( 㤥  㦤  )
ॣ 奬 8255 䥩   ਥ ᮤঠ -
  ⮬, ᪮쪮 H  設.   ਬ [1.1.1] -
     ଠ.   ଠ  । ⨯
᪠ ᮤন  ⠡ ࠧ饭 䠩 (FAT) ᪠, 
᫥  ᯮ짮 ᪮ ࠭⢠.    FAT
ᮤন   ᫥ :

      K                     ᪠

       FF            ஭, 8 ᥪ஢
       FE            ஭, 8 ᥪ஢
       FD            ஭, 9 ᥪ஢
       FC            ஭, 9 ᥪ஢
       F9            ஭, 15 ᥪ஢
       F8            䨪஢ 

    ⠡ ࠧ饭 䠩    䠩.   
 ⠭   㭪権 DOS   BIOS ।⢥ -
 । ᥪ ᪠.   㭪  [5.1.1]  ᮤন
 ଠ 室  宦  ⥭ FAT. K ,
樮  ⥬  ᯥ稢  㭪,    頥
䨪樮  ᪠.
    BIOS  뢠 ᫮  ⪨ ᪮  ⥬, ⠪
 ४⥫ ।祭 ⮫쪮   ᪮.  
  ᯮ짮 㪠 㭪 樮 ⥬ 
᪠ ⥫.   頥 祭 0CDH,   
 㯮 ,   ⥫  .  H 
஢    訥  訥  ⥫,    
  㤥 㦥 㪠 祭.
   AT 㭨  ⮬ ᫥,     ଠ   䨣樨
   ⨯ ⥫ ᯮ.   ଠ 
     ᮬ  71H,  ।⥫쭮  ᫠  
ॣ   70H.  H  ॣ ࠢ 10H.  ଠ-
  ࢮ  ⥫  ᮤন    7-4,   ஬ - 
 3-0.    楯窠 ⮢ 0000   -
 ⥫, 0001 -  ஭ ⥫  ⭮ 48
஦   ,  0010 -  ⥫ 让  (96 -
  ).  ଠ   䨪஢ ᪥ ᮤন  -
 12H.  ᭮  7-4  3-0 ᮮ⢥ ࢮ  -
 ⥫.  0000 㪠뢠  ⢨ ⥫.  㣨
15  祭 뢠    ⥫.
  ᫮; ᫨     -  稭 ॡ 
ଠ,   孨᪮ 㪮  AT.

   । ஢.

   㭪  1CH 뢠 21H 頥 ଠ  㪠
⥫.     ⥫  DL, 祬 0 = -
⥫    㬮砭, 1 = A,  ..   饭  DX  ᮤন
᫮ ஢  FAT, AL  -  ᫮  ᥪ஢   ,  CX -
᫮ ⮢  ᥪ.  DS:BX 㪠뢠  , ᮤঠ騩  
䨪樨 ᪠  FAT, ᮣ᭮ ਢ ⠡.   ᫥-
饬 ਬ । ⨯ ⥫ A:
;---। ⨯ ᪠
   MOV   AH,1CH        ;㭪 MS DOS
   MOV   DL,1          ;롮 ⥫ A
   INT   21H           ;祭 ଠ樨
   MOV   DL,[BX]       ;祭 ⨯ ⥫
   CMP   DL,0FDH       ;஭, 9 ᥪ஢?
   JE    DBL_9         ; ..

   BIOS AT  㭪, ᮮ 騥 ࠬ ⥫.
 㭪 8 뢠 13H.   頥 ᫮ ⥫ 
DL, ᨬ쭮 ᫮ ஭ ⥫  DH, ᨬ쭮 ᫮
ᥪ஢  CL  ஦  CH,      訡 ⥫ 
AH (. 㭪 [5.4.8]).
   㣠 㭪 BIOS AT 頥 ⨯ ⥫.   㭪
15H 뢠 13H,  ॡ  ⥫  DL.   AH
頥  ,  祬 0 =  ⥫,  1 =  ᪥  
㦥 , 2 = ᪥  㦥   3 =
䨪஢ .  砥 䨪஢ ᪠  CX:DX -
頥 ᫮ ᥪ஢  512 .
   1.1.6 । ᫠  ⨯ ਩ ன.

     ROM-BIOS  ஢   ᮥ  㤮,
ᮮ    १ ᢮ ஢ન  ॣ  .   
ॣ   , 稭   0040:0010. Hਢ
祭  ⮢ ⭮  ᥬ 設,   ७  -
⭮:
    0    ᫨ 1,   H
   1        XT,AT:1 =  . ᮯ (PC,PCjr: ᯮ.)
   2-3      11 =   64K (AT: ᯮ)
   4-5      ⨢  (11 = ஬,
            10 = 梥⭮ 80*25, 01 = 梥⭮ 40*25)
   6-7      ᫮ H (᫨  0 = 1)
   8        PCjr:0 =  DMA (PC,XT,AT: ᯮ)
   9-11     ᫮ ஢ 㭨樨
   12       1 =  ஢  (AT: ᯮ)
   13       PCjr: ਩ ਭ (PC,XT,AT: ᯮ.)
   14-15    ᫮ ᮥ ਭ஢

     ଠ ஢뢠 ਬ⨢. H -
 ,  ଠ  ᪮ ⥫ ।
 ⠬ 0  6-7. 祭 0   6-7 㪠뢠,   -
  ᪮ ⥫; ⮡ 㧭  ⢨ -
⥫  ஢  0.
   ᫮ ⮢ 㭨樨   祭    -
 BIOS. BIOS ⢮  2-   ࠭ 
ᮢ     COM  ⮢  (MS DOS ᯮ ⮫쪮
  ).   -  訩  ᮢ ⮢, ⭮-
  㯯 ⮢,      㭨-
樨.     稭   0040:0008.  COM1
ᮮ⢥  :0008,  COM2  - 000A. ᫨   ᮤন
0,  ᮮ⢥騩  .  ࠧ, ᫨ ᫮
  :0008 ⫨筮   ,     000A - 㫥, 
   㭨樨.
   AT  ࠭  ଠ  ਨ  ॣ  14H  奬
䨣樨. 砫   14H    ᮬ 70H,  ⥬
⠩ ᮤন ॣ १  71H.  祭 ⮢
⮣ ॣ:

    7-6   00 = 1 H, 01 = 2 H
        5-4   01 = 뢮  梥⭮ ᯫ, 40 ப
              10 = 뢮  梥⭮ ᯫ, 80 ப
              11 = 뢮  ஬ ᯫ
        3-2    ᯮ
          1   1 =  . ᮯ
          0   0 =  H, 1 =  H

   ᮪ ஢.

    ᨪ  㦭          
 BIOS.  ਫ  ᭥ 믮 ⮢ 権
 ᨪ.  ਢ ਬ  ஢ઠ  ᪮ -
⥫ ⨣ ஢મ ⭮  襣  ᭮
ॣ ( -  ⥫).
100 DEF SEG = 0          '㪠력   
110 X = PEEK(&H410)      '砥 訩  ॣ
120 IF X MOD 2 = 0 THEN 140 '  -  ⥫
130 PRINT " " '  ⥫
140 GOTO 160             '  ஬ ᮮ饭
150 PRINT "H ⥫"  '஥ ᮮ饭
160 ...                  'த...

   ஢ઠ  COM1:

100 DEF SEG = 40H        '㪠뢠    BIOS
110 PORT = PEEK(0) + 256*PEEK(1) '砥 ᫮  ᬥ饭 0
120 IF PORT = 0 THEN...  '...    COM1

   । ஢.

   뢠 11H BIOS 頥   㤮  AX.
H  室 祣   .   ਬ ।  ᫮
᪮ ⥫.

; ---祭 ᫠ ᪮ ⥫:
   INT   11H         ;砥  
   TEST  AL,0        ; ⥫?
   JZ    NO_DRIVES   ;室, ᫨ 
   AND   AL,1100000B ;뤥塞  5-6
   MOV   CL,5        ;⮢  ᤢ ॣ
   SHR   AL,CL       ;ᤢ ࠢ  5 ⮢
   INC   AL          ;塞 1, ..    1

   H ஢.

   ᥬୠ  ணࠬ  ࠡ⠥  ⠪  ,   ணࠬ 
ᨪ.    ਬ ⠥ ଠ  䨣樨    AT,
। ⠭  ⥬᪨ ᮯ:

   MOV   AL,14H      ; ॣ
   OUT   70H,AL      ;뫠 
   IN    AL,71H      ;⠥ ॣ
   TEST  AL,10B      ;஢塞  1
   JZ    NO_COPROCESSOR ;᫨  ⠭,  ᮯ 
   1.1.7  ⢠ .

   :  "쪮   ?",-     ᫠.
  ⢥   ᮮ  ४⥫, ⠭
  ⥬ ? 쪮 奬  ॠ쭮 ⠭
 設? , , ᪮쪮 ⠥  ᢮ , 
DOS    ᯮ짮  믮    ணࠬ?  設
  10     64K,  ४⥫  㪠-
뢠   稥 ⮫쪮 320K, ⠢     -
- ᯥ樠 楫.        ணࠬ 㧭,
᪮쪮   㯭 320K   ᯮ짮, 뢠,  
㣮 ணࠬ ᯥ祭   㦥 १ 
    ?
   ⢥      ᢮ ᯮᮡ.  PC 
XT ⠭  ४⥫       ⠭ १
 B 奬 䥩  ਥ 8255.   㭪 [1.1.1]
ᠭ   . BIOS  ࠭  塠 ६ 
  0040:0013,  ᮮ頥 ᫮    ᯮ㥬
.  PCjr  3   62H  ( C 奬 8255) ࠢ
,    設   64K .  AT   ᮡ
 ଠ  .    15H (訩)  16H (-
訩)  奬 ଠ樨  䨣樨  ᪮쪮 
⠭  ⥬   (    祭: 0100H -
  256K, 0200H -  512K  0280H  512K  128K    
७).   /뢮  AT ᮮ頥 ॣ-
ࠬ  17H  18H ( ६⮬ 512K).    ᢥ 1  
㯭 १ ॣ  30H    31H  (   ६⮬ 512K,
  15 ).  ᫨ AT  128K    ७,
 ⠭  7 ॣ  33.        ᭠砫
᫠  ॣ   70H,  ⥬  祭  
 71H.
       ணࠬ,    אַ   稥
 १ । ࢠ ᭮ ࠭⢠.  -
 쭠   16  ,  筮 -
  祩    16-⭮ ᥣ, ⮡
㡥,   16K  .  K  祩 
,     ⥭   砥 祭  233.   
஢ન    祩 ந쭮  ᫮, ⫨筮 
233  ࠧ   .  ᫨  ᫠ ᫠ -
頥 233,  ᮮ⢥騩   . H ਬ-
   ᯮᮡ  AT,   ⪥   
 㯠  ⢨  ஥  ࠡ⪠  饩
.   ⨪ AT ⮫쪮 ,     楫
  ⥬ ଠ  䨣樨.
     ﭭ    ﬨ  樮  ⥬,
ࠩࠬ ன, १묨 ணࠬ ࠡ⪨ 뢠-
  ࠢ騬  MS DOS.   ஢થ   
     ⨬     ᮤন  .
砫  ࠭ 祭, ࠭饥  㥬 祩,
⥬ ஢   ⠭ ࢮ砫쭮 祭.
      ஡. ᫨  楤   ६-
  ᢮ ,    ਢ  .  ⮬
 ஢ન  롨 ⠪ 祩   64K,   
㤥  ⥪⮬ 襩 楤.   ⮣  -
 ஢ । ணࠬ,   ஢  롥
祩  ᬥ饭 ࠢ ᬥ饭   ᥣ. H-
,  ᫨  ॣ  ᥣ ᮤন 13E2,    ᥣ
稭  ᬥ饭 13E2   ஬  64K-⭮  .
᪮  ணࠬ ஢ન   室  ⮬
,    ᭮  ஢  祭  3E2  
.     뢠 [1.2.2]    ᯮ  
䨪樨    -    뢠,    
ந室  ६ ஢ન.
   ।  ⢠  ॠ쭮 㯭  樮
⥬ ⠪ ॡ ண  䮪.  K ணࠬ 
ࠧ 砥 ࠢ,  DOS ⢮   㯭  ,
    ,  ᮤঠ  १ 
DOS ( ⮬᪨ १㦠, ᫨  뫠 -
஢).  ᪠ 㣮  ணࠬ  ⥪饩   ⮣,
⮡  ᤥ ணࠬ 室饩  짮⥫ᮩ -
⥬, 室 १ ணࠬ  ॡ㥬 ࠧ.  㭪-
 [1.3.1] ᠭ   ᤥ   㭪樨 4AH 뢠-
 21H.
     㭪   ᯮ짮  ७ ⢥-
  .  ᪮ ணࠬ ⢮  㯭  
 㧪,  ⠪ ७    . ᫨ 
஡  ᤥ  ,  㤥 ⠭  䫠  ७,  
ॣ AX   訡  8,   ॣ BX 㤥 -
饭  ᨬ쭮  ᫮ 㯭 16-  ࠣ䮢.   
ଠ  ࠧ  㦭.    뤠   ᫨誮
訬  祭   ॣ BX ( ᪠, F000H ࠣ䮢),  
⥬ 믮 뢠.     ⮬, ⮡ 믮
  㭪  ᠬ 砫 ணࠬ,  ॣ ES   
砫쭮 祭.

   ᮪ ஢.

     ᨪ  ᯮ  ⮫쪮 64K ( 
PEEK   POKE      ।  64K).   
 㯭   騩    頥 㭪樥 FRE.
 㭪  䨪⨢ 㬥,    ᫮
 ᨬ쭮 ப.  BYTES  =  FRE(x)  ।  BYTES ᫮
᢮ ⮢. BYTES = FRE(x$)    ᠬ.  H ப-
 㬥 㦤    । ⥬  -
  ᫮ ⮢.  ⨬,  ᫨ ࠧ  ࠡ祩  
⠭     CLEAR,  ⢮ ,
ᮮ頥  㭪樥  FRE  㤥   2.5  4    
- ॡ⥩ ࠡ祩  .
   ࠭ ᨪ  뢠 ࠭祭 64K  㬬
ꥬ   .  H ᠬ  ࠭祭 ⥬ ⢮
, ஥   ᯮ짮  樨.  ᫨ ⮣
࠭⢠  筮,   㭨⮦    㦭  
ப     樨  /N.   ⠪ ᯮ짮
 ⪨  ६.
   । ஢.

   뢠 12H BIOS ஢ ⠭ ४⥫  -
頥  AX ⢮      ⥬.   稭
   ⠭ ॣ஢ 奬 8255 ,   AT,
奬  䨣樨/ᮢ.   室  ॣ஢ .  
,    ⠭  ४⥫    ୮,  
࠭稢 ⮢୮ ⠪ 室.
    ।  ᫠  16-  ࠣ䮢,  㯭 
DOS, ᯮ 㭪 4AH 뢠 21H.  ES    
 祭,    :

;---। ᫠ ࠣ䮢 㯭  DOS
   MOV   AH,4AH        ;㪠뢠 㦭 㭪
   MOV   BX,0FFFFH     ;ॡ㥬 ᫨誮  
   INT   21H           ;BX ᮤন ᫮ 㯭 ࠣ䮢

   AT ᯮ 㭪 88H  뢠 15H  ஢ન 
७ ,     ᭮ ࠭-
   筮 ०  樨.  ,   
  ⬥⪮ 1 .   ⮬  ⥬  -
    512  640  , ⮡  㭪  ࠡ-
⠫.  ᫮   ७  頥 
AX.

   H ஢.

    ਬ ஢  ᫮      64K  
 64- ᥣ .  ᫨  㤥 ஢
訥 6  ,   ,   ,
稭    B000:0000 (, , A000:0000)  ,  稭  
F000:0000 (, , C000:0000).

;---஢ઠ   :
   CLI                  ;  뢠
   MOV   AX,CS          ;砥 祭  ᥣ
   AND   AX,0FFFH       ;뢠 訥 4 
   MOV   ES,AX          ;頥 㪠⥫  ES
   MOV   DI,0           ;DI ⠥ ᫮  
   MOV   CX,10          ;㤥 ஢ 10 
   MOV   BL,'X'         ; ஢ન ᯮ㥬 'X'
NEXT:
   MOV   DL,ES:[0]      ;࠭塞 祭 㥬 祩
   MOV   ES:[0],BL      ;頥 'X'   祩
   MOV   DH,ES:[0]      ;⠥ 㥬 祩
   MOV   ES:[0],DL      ;⠭ 祭
   CMP   DH,'X'         ;ᮢ  ⥬,  ᠫ?
   JNE   GO_AHEAD       ;᫨ ,   
   INC   DI             ;㢥稢 ᫮ 
GO_AHEAD:
   MOV   AX,ES          ;⮢ 㢥祭 㪠⥫
   ADD   AX,1000H       ;㪠뢠  ᫥騥 64K
   MOV   ES,AX          ;頥 㪠⥫  ES
   LOOP  NEXT           ;ࠡ뢠 ᫥騩 
   STI                  ;ࠧ蠥  뢠
                  2. ࠢ 뢠ﬨ.

   뢠   ⮢ 楤,    뢠
 믮 । .    ண-
ࠬ 뢠.   뢠 樨 -
ன,   ⥬ ,      ७.  
  맢 ᨣ 奬 ⠩, ᨣ   ਭ,
⨥     ⢮  㣨 稭. -
 뢠  न  ࠡ⮩ ணࠬ  -
祭. K 뢠 뢠,   ⠢ ᢮
ࠡ,  믮  뢠,  ⥬ 頥    ०
.  ⮣ ⮡     筮  㦭
 ணࠬ,  ⮣  (CS:IP)   ⥪,
  ॣ஬ 䫠.  ⥬  CS:IP 㦠  ண-
ࠬ ࠡ⪨ 뢠   ।  ࠢ. ணࠬ
ࠡ⪨  뢠  뢠 ࠩࠬ 뢠.  
ᥣ   樥  IRET  (    뢠),
 蠥 ,  뢠,   
祭 CS:IP  ॣ  䫠, ⥬ ᠬ  ணࠬ -
 த 믮  ⮣  ﭨ.
     㣮 ஭, ணࠬ 뢠  ᠬ  祣
 뢠.  H ᠬ    楤,  -
  訬 ணࠬ  믮 ⨭ ࠡ,  ⠪
 ਥ      뢮  ࠭. -
    ணࠬ ᮤঠ   襩  ணࠬ,   
樮 ⥬  堭  뢠    
  . ணࠬ 뢠  뢠  
㣠. Hਬ,  뢠  ࠡ⪨    DOS
ᯮ 뢠 ࠡ⪨    BIOS  -
祭 ᨬ   .  ⬥⨬,  ⭮ -
뢠    ࠢ   믮  ணࠬ
뢠.   ⮬      䫨⮢,  ⠪  
ணࠬ ࠡ⪨ 뢠 ࠭ 祭  ᯮ-
㥬  ॣ஢   ⥬  ⠭    室, ⥬
ᠬ  ⠢ ᫥ ⮣,    .
    ணࠬ 뢠 뢠 ࠬ.  K  
   .   ࢮ ᫮ ࠭ 祭 IP, 
 ஬ - CS.  訥 1024   ᮤঠ  -
, ⠪ ࠧ     256 ஢.  -
    뢠 ⠡楩 ஢.    뢠  0
稭  祩 0000:0000, 뢠  1 -  0000:0004, 2 - 
0000:0008  .. ᫨ ᬮ   , 稭  -
 0000:0020,   ᮤন  뢠 8H (뢠-
  ६ ⮪),   㦨 ⠬ A5FE00F0.    ,
 訩   ᫮  ᯮ  ᭠砫   冷 IP:CS,
  4-⭮ 祭 ॢ  F000:FEA5.     ⮢
 ணࠬ , 믮饩 뢠 8H. H . 1-2 -
 奬 믮 ணࠬ 뢠 21H.
   1.2.1 ணࠬ஢ ஫ 뢠 8259.

     ࠢ 묨 뢠ﬨ   ⨯ IBM  PC
ᯮ 奬  ணࠬ㥬  ஫ 뢠
Intel 8259. ᪮    ६  㯨 
 , 奬  奬  ਮ⮢.  8 ஢-
 ਮ⮢, ஬ AT,  ண  16,  饭   ᮮ-
騬 ஢  ᮪饭ﬨ  IRQ0  IRQ7 (
IRQ0  IRQ15),  砥   뢠.   ᨬ
ਮ ᮮ⢥ ஢  0.     8 ஢  AT
ࠡ뢠 ன 奬 8259;  ன  ஢
 ਮ  IRQ2    IRQ3.      뢠 0-7
ᮮ⢥ ࠬ 뢠  8H  0FH;  AT  
뢠 8-15 㦨 ࠬ   70H  77H. H -
 祭  뢠:

    뢠  浪 ਮ.

   IRQ 0     ⠩
       1     
       2      /뢮
          8   ॠ쭮 ६ (⮫쪮 AT)
          9  ணࠬ ॢ  IRQ2 (⮫쪮 AT)
         10  १
         11  १
         12  १
         13  . ᮯ (⮫쪮 AT)
         14  ஫ 䨪஢ ᪠ (⮫쪮 AT)
         15  १
       3     COM1 (COM2  AT)
       4     COM2 (  PCjr, COM1  AT)
       5     䨪஢  (LPT2  AT)
       6     ஫ ᪥
       7     LPT1

   뢠  ६ ⮪ [2.1.0]  ᨬ  ਮ,
᪮ ᫨  㤥  ﭭ  ,   묨
 ⥬ ᮢ. 뢠   [3.1.0] -
   ⨨    ᪠  ;   뢠 楯
ᮡ⨩,   筮 稢 ⥬,    -
頥      (㤠    ⥬   祭
ணࠬ묨 뢠ﬨ).
   奬 8259    ॣ,  ࠢ-
 ᥬ ﬨ   뢠.     
뢠  (IRR)  ⠭ ᮮ⢥騩 ,  
뢠 ᨣ  . ⥬ 奬 ⮬-
 ஢  ࠡ뢠  㣮 뢠.  ⮬ 
訢 ଠ ॣ 㦨  (ISR). ⥫-
  楯 ⢥砥  奬 ਮ⮢.  H, ।  맮
뢠,  ஢  ॣ  ᪨  뢠 (IMR), ⮡
㧭  ࠧ襭     뢠    ஢.
K ࠢ ணࠬ   ⮫쪮  ॣ ᪨ -
뢠  १  21H [1.2.2]   ॣ  뢠
१  20H [1.2.3].
   1.2.2 /ࠧ襭 ⤥  뢠.

   ணࠬ  ᥬ    뢠,
᫥  [1.2.1].  ᪨㥬 뢠; 㣨 -
 뢠, 騥     訡 (⠪ 
   )    ᪨஢.    稭
   뢠.  ࢮ 砥  뢠
    ⥬ ⮡ ᪠    뫠  믮
楫, ० 祬 設 ந - 㣮 ⢨.
Hਬ, 뢠      ⭮
뢠,   믮  뢠    
⮫쪮 .
     ஬  砥 ᪨ ⮫쪮 ।  
뢠.      । 뢠
  ⢮    ﬨ,  묨   ६.
Hਬ, 筮 ⠭  ६ 楤 /뢮 
 ᥡ   ࢠ ⥫ ᪮ 뢠-
.

   H ஢.

   믮 뢠      祭  䫠 뢠
( 9)  ॣ 䫠.  K   ࠢ 0,   ࠧ襭
 뢠,  ࠧ蠥 ᪠. K  ࠢ 1,  
  뢠  饭.  ⮡    뢠,
⠭  䫠  1, ᯮ  CLI.  ⪨
⮣  䫠  ⠭ 뢠 -  STI.  -
 ⪫祭 뢠     ⥫  ਮ.  뢠
६  ⮪ ந室 18.2 ࠧ  ᥪ㭤  ᫨  ⮬ -
뢠   祬        ६,  
뢠  뫨 饭,  譨    襭  
⥬ ६ 㤥 । ࠢ쭮.
    ,   設  ⮬᪨  頥 
뢠    맮  ணࠬ  뢠   ⮬᪨
ࠧ蠥   .  K   ᢮ ணࠬ -
뢠,      ணࠬ  樨 STI, ᫨ 
    뢠.  ⬥⨬ ⠪,  ᫨
  樥  CLI  ᫥ STI,   ਢ   ⠭
設, ⠪     㤥 ஦.
     ᪨஢  ।    뢠  㦭
  ᫠  ॡ㥬 楯 ⮢      ᮬ  21H,
 ᮮ⢥ ॣ  ᪨  뢠 (IMR).  
᪨    ன  奬 8259  AT (IRQ8-15)    
 A1H.  ⠭     ॣ,   ᮮ⢥
ࠬ 뢠,    ᪨஢.    ॣ
 ⮫쪮 뢠.  Hਢ ਬ  ᪮-
 뢠.  H   ॣ    ணࠬ,
 饭  ᪠ 㤥 饭  ᫥ 襭 ண-
ࠬ.

;---᪨஢ 6-  ॣ ᪨ 뢠
   MOV   AL,01000000B   ;᪨㥬  6
   OUT   21H,AL         ;뫠  ॣ ᪨ 뢠
    .
   MOV   AL,0           ;
   OUT   21H,AL         ;頥 IMR   ணࠬ
   1.2.3 Hᠭ ᮡ⢥ 뢠.

     ᪮쪮 稭  ᠭ ᮡ⢥  뢠-
. -, 設⢮  ⮢ 뢠, ᯥ稢
樮 ⥬,  ,   楤, -
   ணࠬ,        ᢮  
⥪.   Hਬ,   ணࠬ   ᯮ짮
楤, 뢮 ப   ࠭  ⨪쭮.   ⮣,
⮡        ணࠬ  ⢥  楤  
 ⠭    뢠,  ᠢ ணࠬ, 
⠭ १⭮   ᫥ 襭 [1.3.4].  
 ᯮ짮 INT 80H   WRITE_VERTICALLY ( -
,   맮 뢠 ᪮쪮 , 祬 맮 楤-
).
   ன 稭 ᠭ 뢠    ᯮ짮
-  ⤥쭮  ⭮ 뢠.    뢠
⮬᪨ 뢠    । ᫮.
    BIOS 樠  ⮣  뢠
⠪,   㪠뢠    楤,      祣 
 ( ᮤন   IRET).    ᢮
楤    뢠, ⮡  㪠뢠  .
   ⭮ 뢠 㤥  믮
  楤.     ⠪ 楤  뢠  ६
⮪ [2.1.0], ஥  ⮬᪨  뢠 18.2 ࠧ  -
㭤. 筮  뢠 ⮫쪮   ᮢ, 
      ,    .  ᫨
  ஢  ᮢ  㯠     ।-
  ६,      樨   ॠ쭮 ६.
㣨  -  ᠭ 楤 ࠡ⪨  Ctrl-Break
[3.2.8], PrtSC  [3.2.9]         訡  権
[7.2.5].  뢠 ਭ [6.3.1]  㭨樮  [7.1.8]
    ४   ﬨ -
/뢮  㣮 ࠡ⪮.
   H,     뢠, ஥  -
    楤  樮 ⥬, ᯮᮡ-
  訬 ணࠬ 㦤.   [1.2.4]    -
 뢠   뢠, ஥   -
஢ 騥 楤.

   । ஢.

   㭪  25H 뢠 21H ⠭  뢠 
㪠 .     ࠧ   ᫮.  襥 ᫮
ᮤন  祭 ᥣ (CS), 襥 ᮤন ᬥ饭 (IP).
⮡ ⠭ ,  㪠뢠騬      楤,
㦭   ᥣ 楤  DS,  ᬥ饭  DX  (᫥
浪 ਢ ਬ). ⥬   뢠-
   AL  맮 㭪.   楤 뢠  
  筮 樥 RET,  IRET. (IRET ⠫
 ⥪  ᫮,    ॣ  䫠,   ६  RET
頥    ⥪ ⮫쪮 .  ᫨   ⠥  ஢
⠪ 楤   楤,   IRET,  
௠  ⥪.) ⬥⨬,  㭪 25H ⮬᪨  -
頥  뢠     , ⮬
  ᭮,  । ண ந ⭮
뢠, ᯮ饥  .
;---⠭ 뢠
   PUSH  DS             ;࠭塞 DS
   MOV   DX,OFFSET ROUT ;ᬥ饭  楤  DX
   MOV   AX,SEG ROUT    ;ᥣ 楤
   MOV   DS,AX          ;頥  DS
   MOV   AH,25H         ;㭪 ⠭ 
   MOV   AL,60H         ; 
   INT   21H            ;塞 뢠
   POP   DS             ;⠭ DS

;---楤 뢠
ROUT  PROC  FAR
      PUSH  AX          ;࠭塞  塞 ॣ
       .
       .
      POP   AX          ;⠭ ॣ
      MOV   AL,20H      ;  ப  ᯮ짮
      OUT   20H,AL      ;⮫쪮   뢠
      IRET
ROUT  ENDP

           뢠  
 ᫥騥 2 窨 :

         MOV   AL,20H
         OUT   20H,AL

      ᮢ,  ᫠ (20H)        
ப. ᫨ ⭮  뢠  稢 ⨬ -
,   奬 8259   ଠ ॣ 㦨-
,  ⥬ ⮡ 뫠  ࠧ襭  ࠡ⪠  뢠  
  ஢ﬨ, 祬 ⮫쪮  ࠡ⠭.  ⢨  
ப   ਢ    ணࠬ, ⠪  뢠
      ᪮॥  ᥣ    ஦묨    
Ctrl-Alt-Del   ᯮ.  ⬥⨬,     
㦭   ஢ 뢠,    ७ﬨ
 뢠, ⠪  뢠 1CH, ஥ -
   뢠 ६ ⮪ [2.1.7].
   K ணࠬ 蠥,   ⠭  ਣ-
  뢠.   ⨢ 砥 ᫥ ண-
ࠬ  맢  뢠  । ࠢ  
  ,  ஬  襩  楤  㦥 .  㭪 35
뢠  21H 頥 ⥪饥 祭    뢠,
 祭 ᥣ  ES,  ᬥ饭  BX. । ⠭
᢮  뢠   ⥪饥 祭 ,  ᯮ
 㭪, ࠭   祭,    ⥬ ⠭  
 㭪樨 25H ( ) । 襭 ᢮ ணࠬ.
Hਬ:

;--- ᥣ :
   KEEP_CS  DW    0        ;࠭ ᥣ 塞 뢠
   KEEP_IP  DW    0        ;࠭ ᬥ饭 뢠
;--- 砫 ணࠬ
            MOV   AH,25H     ;㭪 祭 
            MOV   AL,1CH     ; 
            INT   21H        ;⥯ ᥣ  ES, ᬥ饭  BX
            MOV   KEEP_IP,BX ; ᬥ饭
            MOV   KEEP_CS,ES ; ᥣ
; ---  ணࠬ
            CLI
            PUSH  DS         ;DS 㤥 ࠧ襭
            MOV   DX,KEEP_IP ;⮢  ⠭
            MOV   AX,KEEP_CS ;
            MOV   DS,AX      ;⮢  ⠭
            MOV   AH,25H     ;㭪 ⠭ 
            MOV   AL,1CH     ; 
            INT   21H        ;⠭ 
            POP   DS         ;⠭ DS
            STI

      襪,  ᫥    ᠭ
뢠. ᫨  楤 뢠    
,   室 , ⮡ DS  ࠢ쭮 -
 (筮  뢠    ᯮ짮  ⥪  뢠饩
ணࠬ).  㣠 ⭮    ⮬,  
襭 ணࠬ    Ctrl-Break    뢠  㤥
⠭,  ᫨ ⮫쪮   ।ᬮ,  ⮡  ணࠬ
ॠ樨  Ctrl-Break 믮﫠  楤 [3.2.8].

   H ஢.

   ᠭ  㭪樨 MS  DOS       
  ᫮   祩 .  饭   
᫥  㬭    4. Hਬ, ⮡
  뢠 16H  ES:BX:

;---祭  뢠 16H
   SUB   AX,AX         ;⠭ ES  砫 
   MOV   ES,AX         ;
   MOV   DI,16H        ; 뢠  DI
   SHL   DI,1          ;㬭  2
   SHL   DI,1          ;㬭  2
   MOV   BX,ES:[DI]    ;६ 訩   BX
   MOV   AX,ES:[DI]+2  ;६ 訩   ES
   MOV   ES,AX         ;

   H ४ אַ ⠭  뢠, 室
㭪 DOS.   ⭮  筮 । 樮 -
⥬    ন ᪮쪮 ⠡ ஢ 뢠  
ॠ 䨧᪨  ⠡   ⥭ ⮫쪮 DOS.
   1.2.4   饬 뢠.

      ,    뢠      -
饬 뢠.   ⢥ ਬ ᬮਬ ணࠬ,
 ८ࠧ   ⨥     ।塞
짮⥫  ᨬ  ப (ம।  ).
 ணࠬ ᯮ 䠪,       -
  㯠 १ 㭪 0 뢠 16H BIOS [3.1.3].  
뢠     DOS  뢠  뢠 BIOS 
祭 ᨬ   .  ⮬ 室 -
஢  뢠 16H,  ⠪ ࠧ, ⮡  㦨
諠㬮  ம।, ᫥ 祣  ணࠬ 㤥
 ம।,  ᨬ   ⮣,  뢠
    ᯮ.
   K筮,  ஢ 뢠 BIOS  DOS ,  -
 BIOS ᯮ  ,  DOS 㯠  ⨭  
࠭祭  ࠧࠬ  ⢥   .  H    
 楤,   ।  / ᫥  ᮮ-
騬  뢠,    楤   뢠  
맮 뢠 DOS    BIOS.  Hਬ,   砥 뢠
16H,   㦭  楤  㪠   ஬ -
뢠  16H.  ਣ쭮  祭  16H ⥬ ६
७    -  ᯮ㥬 ,  ᪠,  60H.
H 楤  뢠  뢠  60H, ⮡ ᯮ짮-
  ਣ쭮 뢠 16H; ⮬  ணࠬ  -
 뢠 16H, ࠢ । 襩 楤, -
 ⥬ 뢠 ਣ쭮 뢠 16H,   -
襭  頥  ࠢ  襩 楤,    㦥
  頥     ணࠬ,   ண    맮
뢠 16H. ᫥ ⮣      ᤥ,    楤
 ᮤঠ  ,  , ⠪  ᫥ 맮  뢠-
 60H. H . 1-3  ࠬ ⮩ 楤.  -
 ᢮ 室 ⢨:

   1.   楤, 뢠 뢠 60H.
   2. ७  뢠  16H  60H.
   3.   16H, ⮡  㪠뢠   楤.
   4.  ணࠬ, ⠢  १⭮ [1.3.4].
    3. ࠢ ணࠬ.

   設⢮  ணࠬ  㦠   ,  ᪠,  
⥬ 㤠 樮 ⥬  襭. 모 -
 ஢ 筮   ୠ⨢. H  ணࠬ⮢ 
ᥬ  㣠     ࠧ -
  .   H ணࠬ   ࠩ  ன
 ࠩ 뢠         ࠭   
("१묨")    ᫥  襭  (  뢠
ᯥ稢 堭, ।⢮ ண ᫥騥 ணࠬ
     १ 楤ࠬ).     ணࠬ
室   ᥡ  ணࠬ.  H ᠬ  DOS
 ணࠬ 㧨      COMMAND.COM,
  ᯮ짮   ।⢮ 䥩  짮-
  믮  ⨯ COPY  DIR.
   ணࠬ     ଠ: .EXE  .COM. ணࠬ
ࢮ ⨯       64K,     ॡ ன
ࠡ⪨ । ⥬,  DOS 㧨   .   㣮 -
஭ COM ணࠬ  אַ   ⮬ ଠ,  㦥
 㧪  .  COM ணࠬ ᮡ   -
 ⨫.     , ⠢騩 ணࠬ, ।-
    䨪ᮬ ணࠬ ᥣ (PSP).    -
 ࠧ஬ 100H ,  ᮤন ଠ 室
DOS  ࠡ ணࠬ; PSP ⠪ ᯥ稢   䠩-
 権 /뢮 [5.3.5].   㧪 EXE 䠩  DS 
ES 㪠뢠  PSP.  COM 䠩 CS ⠪ ᭠砫 㪠뢠 
PSP.   ⬥⨬,  MS DOS 3.0  㭪,   頥
 ᥣ PSP.  㭪  62H 뢠 21H;  祣 
   室,   BX 頥  ࠣ.
      稭,  ன ᭮  PSP, ⮨ 
⮬,   ࢮ ᫮ ᮤন  뢠 DOS,  ஥
㤥 ਢ  襭 ணࠬ. K 믮 ᫥-
   RET ணࠬ,  祭  設 ⥪  㪠-
 稪   (ॣ  IP)   砫 PSP, ⠪ ࠧ
  襭  믮  ᫥   ணࠬ.
쭥襥 㦤 ⮣ ᬮ  㭪 [1.3.4]  [1.3.6].

    ࠢ ਢ 祭  PSP:

   饭           祭
     0H       DW            㭪樨 DOS 襭 ணࠬ
     2H       DW           ࠧ   ࠣ
     4H       DW           १
     6H       DD            맮 㭪樨 ᯠ DOS
     AH       DD            襭 (IP,CS)
     EH       DD            室  Ctrl-Break (IP,CS)
    12H       DD            室  ᪮ 訡
    16H     22        १
    2CH       DW            ࠣ ப ।
    2EH     46 ⮢      १
    5CH     16 ⮢       ࠬ஢ 1 (ଠ FCB)
    6CH     20 ⮢       ࠬ஢ 2 (ଠ FCB)
    80H    128 ⮢       DTA  㬮砭/砥
                            ப ணࠬ
   1.3.1 樨  .

   K MS DOS 㦠  ணࠬ,   頥  
  , ࠧ   COMMAND.COM  ⠭묨 ࠩ-
ࠬ ன  㣨 ⨫⠬,   १  -
.     ६    ணࠬ ⢥ ⮩
ணࠬ. ᫨ ணࠬ 㦭    ᮧ  -
,    ਡ ᫨    砥 
  ⥬  ॡ㥬        
殬  .   ।   ணࠬ  
 ணࠬ ᥢᥣ ⨯:

   ZSEG    SEGMENT
           ;
   ZSEG    ENDS

    ᥬ IBM PC ZSEG  㤥  ᫥  ᥣ⮬, ⠪ 
ᥣ ᯮ  䠢⭮ 浪.   㣨 ᥬ-
ࠬ 㦭 ⢨⥫쭮    ப   ணࠬ.
 ᠬ ணࠬ 筮  ⠢  MOV AX,ZSEG  AX
㤥 㪠뢠   ᢮ ᥣ   ணࠬ.
     室  㤥  ࠡ   ,   ணࠬ  
㤥 ।  稨  ,  ன  ᠬ  .
   㤥 ⠪ ࠡ  짮⥫᪮ ।,  
᪮쪮 ணࠬ     ᮡ     
ᮢ.   襭 ⮩ ஡ MS DOS   -
 640K ⥬   ⢮  ॡ ணࠬ
   ࠧ.   -   뢭
 ,    ᨬ  ࠧ  । ࠧ஬
㯭  ,  ⭮,       ᥣ-
 (64K). ᫨ ॡ  ᫨誮 让 ,  DOS 뤠
ᮮ饭  訡.   ४  ᪫-
. K஬ ⮣ MS DOS    ᢮,  १  
騥  .   ணࠬ  易 ᯮ짮  
।⢠,  㤮    ।ᬮ⥫쭮    . H
㭪樨 DOS ॡ, ⮡ 뫨 ᯮ짮 ।⢠  ࠢ
 DOS, ਬ,  襭  १⭮ ணࠬ [1.3.4]
 맮 㣮 ணࠬ   [1.3.2].
   ०  祬 ⢥ , 騩  (    
砫 ணࠬ  )     १  ࠧ ண-
ࠬ.  ⥬,  ᮧ , DOS ᮧ 16-  ࠢ-
騩   ,    ᯮ  ।⢥  ।
 .  5 ⮢ ⮣   ᫥饥 -
:

    0     ASCII 90 - ᫨ ᫥   楯窥, 
              ASCII 77.
    1-2  0 ᫨  ᢮
    3-4  ࠧ   16- ࠣ

   DOS 頥    楯窥.    ࢮ  -
   ७ ६.  祭 ⮩ ६ -
 DOS ।    ࢮ  ⢥  ,  
ଠ樨,  ᮤঠ饩  ,    ᫥騩 
 ..,    .  1-4. K ⮫쪮  砫 ᯮ짮-
  ⥬  ।  DOS,   易  ਤন-
 .  ᫨ ணࠬ  ᮤন ࠢ饣 ,
  楯窠  㤥 ࠧࢠ  DOS 筥 뤠  ᮮ饭  
訡.
   MS DOS ᯥ稢   㭪樨  । , 
 48H  4AH 뢠 21H.  㭪 48H ⢮  , 
49H - ᢮  .     㭪 ("SETBLOCK") -
  ࠧ , ⢥  ணࠬ;  㭪 
 ᯮ짮 ।    ⠫묨.  ᫥   믮
  ᯮ ⢮  ᢮   .   ணࠬ
  ᢮    ⢥     । 襭.
    㤥 㯭  ᫥饣  ᯮ짮-
.

   । ஢.

     㭪樨 ।  뢠 21H ᯮ
16-    砫  ,      .
   ᮮ⢥  ᥣ,    ண 稭 
(  ᥣ 稭  ᬥ饭 0  ᥣ).   
ࠧ ॠ   祩  砫   ࠢ ⮬ ,
㬭    16.  ,    㭪権,  BX  ᮤন
᫮ 16-  ࠧ    (ࠣ䮢),    
⢮  ᢮. ᫨ 㭪    믮-
,  ⠭  䫠  ७,     AX 頥 
訡, 騩 稭.    訡:

   7   ࠧ襭 ࠢ騩  
   8   筮   믮 㭪樨
   9      

㭪 ⢥  ᯮ  7  8,  ᢮ - 7
 9,   ६   㭪     ᯮ  
.   ᫥饬 ਬ ᭠砫 ⢮ , ࠧ஬  1024
.  ⮬ BX ᮤন  ॡ㥬  ᫮ 16- ࠣ-
䮢,     襭 ⮢    ࠢ  AX:0  (..
ᬥ饭 0  ᥣ   祭,  ᮤঠ騬  AX).  
  ਬ ᢮   ,   ॡ   -
襭 ணࠬ.      砥  祭  祭  AX
頥  ES. DOS ᫥  ࠧ஬     -
⢮ ࠣ䮢  ᢮.

;---⢥  ࠧ஬ 1024 
   MOV   AH,48H      ; 㭪樨
   MOV   BX,64       ;ॡ㥬 64 ࠣ
   INT   21H         ;⠥ ⢥ 
   JC    ERROR       ;ࠡ뢠 訡  砥 㤠
   MOV   BLOCK_SEG,AX; ࠭塞  
    .
;---᢮   
   MOV   AX,BLOCK_SEG ;砥 ⮢  
   MOV   ES,AX        ;頥   ES
   MOV   AH,49H       ; ॡ㥬 㭪樨
   INT   21H          ;᢮  
   H, ਢ ਬ ᯮ짮 㭪樨 4AH.  ES ᮤ-
  祭 ᥣ PSP, ..  ᠬ ࢮ  ,  
ண 㦥 ணࠬ.    祭 ᢠ ES 
 .   ᯮ짮 SETBLOCK   뢠 
㭪  ᠬ 砫  ணࠬ  (० 祬 ES 㤥 ),
 ࠭  砫쭮 祭  ᫥饣  ᯮ짮-
.
   BX ᮤন ॡ㥬  ࠧ     16- ࠣ.
 । ⮣ ࠧ   "⢥"
ᥣ   ணࠬ.    ஠ᥬ  IBM  PC ᥣ
ᯮ   䠢⭮ 浪, ⮬    
    ணࠬ,  ᫮,      -
த  "ZSEG".   㣨 ᥬ ⢨⥫쭮 頩 䨪-
⨢ ᥣ   ணࠬ. ணࠬ   -
 ⮣ ᥣ , ࠢ   ⮢ ᥣ⮬,  -
 ⢮ , ॡ㥬 ᠬ ணࠬ.    -
㧪 ணࠬ  ES  DS ᮤঠ  ࠣ ᠬ  砫
ணࠬ   䨪  ணࠬ  ᥣ;   COM 䠩 CS
⠪ 㪠뢠   ,   EXE 䠩   ⠪.
;---᢮  (ES  祭  )
   MOV   BX,ZSEG      ;砥 # ࠣ  ணࠬ + 1
   MOV   AX,ES        ;砥 # ࠣ 砫 ணࠬ
   SUB   BX,AX        ;塞 ࠧ ணࠬ  ࠣ
   MOV   AH,4AH       ; 㭪樨
   INT   21H          ;᢮ 
   JC    MEMORY_ERROR ;஢塞  訡

;---
   ZSEG      SEGMENT
   ZSEG      ENDS
   1.3.2   ணࠬ  㣮.

   MS  DOS ᯥ稢 㭪 EXEC ( 4BH 뢠  21H),
ॠ 맮   ணࠬ    㣮.  ࢠ ணࠬ
뢠 "த⥫",  㦠  ᪠ - "⮬".

   ᮪ ஢.

     ᨪ ᨨ 3.0   SHELL.    ⥫묨
࠭祭ﬨ     ᨪ᪮  ணࠬ 㧨 
믮  ணࠬ. ଠ ⮩  SHELL _ப.
K ப     ணࠬ   
ᮤঠ ஬  ࠬ,  筮 ᫥  
ணࠬ     ப.  ᫨  _ப   㪠, 
㦠    COMMAND.COM     樮
⥬.     믮   MS DOS,  
襭   ࠢ ᨪ᪮ ணࠬ,   -
 EXIT.
     ࠭祭   ᯮ짮  SHELL. ᫨ -
  ணࠬ    ० ࠡ ᯫ,      㤥
⮬᪨ ⠭  . । 㧪 ணࠬ-
  䠩   ,       ணࠬ,
 ⠥ १⭮  ᫥  襭.  㦤 鸞
㣨 ஡ ᮤন  㪮⢥  ᨪ.

   । ஢.

   㭪 4BH  ᫮, 祬 ⠫, ॡ  -
⮢⥫ 蠣:

   1. ⮢   , 㯭 ணࠬ.
   2.   ࠬ஢.
   3. ந ப,  ᮤঠ  ⥫,    ண-
ࠬ.
   4. ࠭ 祭 ॣ஢ SS  SP  ६.

   ᪮   㧪 ணࠬ MS DOS 뤥    -
㯭 ,  室  ᢮    . ᫨ 
᢮    ,   㤥   㧪  ன
ணࠬ.   [1.3.1] ᭥   ᤥ   㭪樨
SETBLOCK.   ᫥  ⮣   ᢮,    
  BX ॡ㥬 ᫮ 16- ࠣ䮢, ᫠ 4AH
 AH  믮 뢠 21H,  㯭 ணࠬ 
 ᫮ ࠣ䮢, ஥  ॡ.
      ࠬ஢,        㪠뢠  ES:BX  
14-   ,        ᫥-
 ଠ:

   DW   ᥣ  ப ।
   DD   ᥣ  ᬥ饭  ப
   DD   ᥣ  ᬥ饭 ࢮ FCB
   DD   ᥣ  ᬥ饭 ண FCB
   ப । -  ப,      ᯥ-
䨪権,  ᫥ MS DOS  믮 ணࠬ. -
  ப । ⠪ ,      㦨  ᪮-
 䠩  CONFIG.SYS.   Hਬ,    ப   饭
VERIFY  = ON.   筨 ப  ࢮ , 訢
 ᨬ ASCII 0, ⮬   ᫥騩  ..  ᫥-
 ⮬  ᫥  ᨬ ASCII 0. ப 
稭  ࠭ ࠣ (..      16 -
  ࠢ ).  맢 ⥬,  ᮮ⢥騩 室 
 ࠬ஢, 㪠뢠騩  ப,  ᮤন ⮫쪮 2--
  ᥣ⭮ 祭.     㦭, ᫨  ணࠬ
 ࠡ  ⮩    ப  ।,    ணࠬ "த-
⥫".   ⮬ 砥     ᨬ ASCII 0 
 2   ࠬ஢.
   騥  4     ࠬ஢ 㪠뢠    
ப  㦠  ணࠬ.  "K ப" -  ᨬ-
쭠 ப, । ᯮᮡ ࠡ ணࠬ.  -
 ணࠬ  DOS     த EDITOR  A:CHAPTER1\
NOTES.MS.  ⮬ 뢠 ।   ।  䠩
 ⠫ ⥫ A     .  K 
⠢  ப  EXEC,    ⮫-
 ᫥  ଠ樨,      㦠 ணࠬ.
।  ப   , ᮤঠ騩  ⮩
ப,     ᨬ <K> (ASCII 13).
   ᫥ 8 ⮢   ࠬ஢  㪠뢠  ࠢ騥
  䠩 (FCB).  FCB ᮤন ଠ      
䠩, 㪠    ப.   ᫨  뢠 䠩
,       8  ᨬ ASCII 0.    [5.3.5]
᭥,  ࠡ⠥ FCB. H稭  ᨨ MS DOS 2.0, ᯮ-
 FCB 易⥫쭮      ଠ FCB,
 ⮣ ᯮ     ਯ 䠩 (file
handler),    ன   䠩 ।⠢   
,   १ FCB (⠪ 㦤  [5.3.5]).
   H,   ந  ப    㪠 ⥫,
     䠩.   ப  㦠  ணࠬ.
DS:DX 㪠뢠   ப    믮 EXEC.  ப -
⠭⭠  ப ASCIIZ, ..  祣 ,  祬  ⠭⭠
ᯥ䨪  䠩,  蠥    ASCII 0.  Hਬ, 
   B:\NEWDATA\FILER.EXE<NUL>,  ᨬ <NUL> -
祭  ASCII 0.
   ᫥ ⮣   㪠 ଠ ⮢, ⠥
᫥ .  ᪮  ॣ   뢠-
 祩,   ࠭ ᥣ ⥪  㪠⥫ ⥪, 
⥬  ⮡     ⠭,  ࠢ  㤥
饭 맢襩 .    ࠭ ᮧ ६-
.  ᪮ 祭 ॣ DS ⠪ 㤥 ,  
६    ,       -
७  MOV AX,DSEG   MOV  DS,AX.  ᫥ ⮣  SS  SP
࠭,    0   AL,  롮 樨  "㧪  
" (EXEC  ᯮ  ⠪    ૥ [1.3.5]). ⥬
 4AH  AH  맮 뢠 21H.    -
饭  ணࠬ, 祬 ணࠬ "த⥫" 室  -
 ﭨ.  MS DOS ।⠢   ணࠬ
⮬ । த⥫   , ⠪ ࠧ  
।  訡  .   [7.2.5] ᭥    ᤥ.
 ᠥ ᠬ 㭪樨  ᪠,     訡
⠭  䫠 ७,  ॣ AX  ⮬ 砥  㤥
 1 -  ࠢ쭮  㭪樨, 2 - ᫨ 䠩 
,  5  -  ᪮ 訡, 8 -  墠⪥ , 10  -
᫨ ࠢ쭠 ப ।  11 - ᫨ ७ ଠ.
   ਢ ਬ - ⥩訩    ,   
祣    .   ⠢ 㫥   ࠬ஢   
ᮧ ப ।.   砥,  㦠 ணࠬ 
㤥  ।  ப   । 㤥 ⠪  ,
   뢠饩 ணࠬ.   ⮫쪮  -
  , ᮧ   (⮩)  ࠬ஢   -
 祭 SS  SP.

;--- ᥣ 
FILENAME     DB   'A:TRIAL.EXE',0  ;㦠 TRIAL.EXE
PARAMETERS   DW   7DUP(0)          ;㫥  ࠬ஢
KEEP_SS      DW   0                ;६  SS
KEEP_SP      DW   0                ;६  SP

;---। 
   MOV   BX,ZSEG          ; # ࠣ 
   MOV   AX,ES            ; # ࠣ 砫
   SUB   BX,AX            ;᫨ ࠧ ணࠬ
   MOV   AH,4AH           ; 㭪樨
   INT   21H              ;।
;---㪠뢠   ࠬ஢
   MOV   AX,SEG PARAMETERS      ; ES - ᥣ
   MOV   ES,AX                  ;
   MOV   BX,OFFSET PARAMETERS   ; BX - ᬥ饭
;---࠭  SS  SP
   MOV   KEEP_SS,SS       ;࠭塞 SS
   MOV   KEEP_SP,SP       ;࠭塞 SP
;---㪠뢠  ப  䠩
   MOV   DX,OFFSET FILENAME     ;ᬥ饭 -  DX
   MOV   AX,SEG FILENAME        ;ᥣ -  DS
   MOV   DS,AX                  ;
;---㧪 ணࠬ
   MOV   AH,4BH           ;㭪 EXEC
   MOV   AL,0             ;롨ࠥ "㧪  "
   INT   21H              ;᪠ 
;---᫥⢨, ⠭ ॣ
   MOV   AX,DSEG          ;⠭ DS
   MOV   DS,AX            ;
   MOV   SS,KEEP_SS       ;⠭ SS
   MOV   SP,KEEP_SP       ;⠭ SP

;---  ணࠬ ᮧ 䨪⨢ ᥣ
ZSEG     SEGMENT          ;. [1.3.1]
ZSEG     ENDS
   1.3.3 ᯮ짮  䥩  짮⥫  ண-
ࠬ.

   ணࠬ    ᢮ ᯮ殮   
䥩  짮⥫ DOS, ⠪   DIR  CHKDSK.  K
  ᯮ  ணࠬ, 㦠   ᪠
   COMMAND.COM.    ⠪  室   
  ᨫ   ணࠬ஢,   ᯥ譮  ॠ樨
ॡ 筮  ⢮    ⮩ ன  
 ணࠬ     ᫨  筮.

   ᮪ ஢.

   ᨪ  3.0  㧨   COMMAND.COM  
 SHELL.  SHELL 㦤  [1.3.2]. COMMAND.COM -
   㪠  䠩, ⮬   SHELL, 
砥  MS DOS.       ᯮ짮 
 ⨫ DOS,   䠩.     맢
ணࠬ   EXIT.

   । ஢.

    ⮬ 砥  ਬ, ਢ  [1.3.2] 㦭 
  ப.  筮  稭      ப,
⥬ ᫥ ᠬ  ப , ,  ASCII 13. 
।   COMMAND.COM   㪠 /C ।  ப
(. 㭪 "맮 筮    " 㪮⢠
 MS DOS).    ⠪ 㪠 ⥫,  ஬ -
 COMMAND.COM,  ⨢    ⥫   砫 
ப.   ⮡ 뢥 ⠫ ⥫ A:,  COMMAND.COM  
⮬ 室  ⥫ B:, 㦭 ப:

   COMMAND_LINE   DB   12,'B: /C DIR A:',13

   騩  祪  ⠭   ப 
 ࠬ஢, ᯮ㥬  ਬ [1.3.2]:

   LEA   BX,PARAMETERS            ;祭   -஢
   MOV   AX,OFFSET COMMAND_LINE   ;祭 ᬥ饭 . ப
   MOV   [BX]+2,AX                ;뫪  1- 2  
   MOV   AX,SEG COMMAND_LINE      ;祭 ᥣ . ப
   MOV   [BX]+4,AX                ;뫪  2- 2  
   1.3.4 ࠭ ணࠬ   ᫥ 襭.

   ணࠬ, ⠢ १묨   ,  㦨 
⢥ ⨫  㣨 ணࠬ. 筮 ⠪ ணࠬ -
 १ ᯮ㥬   뢠. MS DOS ᬠ-
  ⠪ ணࠬ   樮 ⥬,   
  㣨 ணࠬ,    㦥 ᫥-
.  ணࠬ 筮   ଥ COM,  -
  㭪 [1.3.6].  ணࠬ, ᠭ  ଥ EXE -
 १묨    㤭.
   襭  ணࠬ 뢠 27H ⠢  १⭮
 .  CS  㪠뢠   砫 PSP  ⮣, ⮡ 
㭪 ࠡ⠫ ࠢ쭮.  ணࠬ COM, CS ࠧ ⠭-
  ᮮ⢥騬  ࠧ,  ⮬    
ணࠬ  뢠 27H.   ணࠬ EXE , CS  ࢮ砫쭮
㪠뢠   , ᫥騩   PSP (.. 100H).  -
쭮 襭 EXE ணࠬ ᫥  RET  ⠫-
  ⥪      㤠 祭: PUSH DX / MOV
AX,0  / PUSH AX.  ᪮ DS ࢮ砫쭮 㪠뢠   砫
PSP,   祭  祭   ⥪ 稪  㪠-
뢠   ᬥ饭 0  PSP,    樠樨  뢠
 INT 20H. ⮬ INT  20H 믮,   ⠭-
 㭪  襭 ணࠬ  । ࠢ  DOS.
H . 1-5   .  ⮡ ⠢ 뢠 27H
ࠡ   EXE ணࠬ   27H  ன    PSP
( ᮤন 設   樨 INT),  ⥬ 
ணࠬ  RET.    ⨯ 䠩 ० 祬  믮-
 뢠 27H, DX   ᮤঠ ᬥ饭  ணࠬ-
, 뢠  砫 PSP.

   । ஢.

    뢠 ⠭   㭪樨 25H -
 21H,       [1.2.3]  (  ᯮ 
70H).   ,  ⮡ 楤 稢 IRET.   K஬
ᠬ 楤, ⠭ ணࠬ    -
, ஬ 樠樨  뢠, ᢮ DX  -
 ᬥ饭  楤  襭.   COM 䠩 
    INT 27H   ணࠬ.    EXE  䠩
    ࢮ  ᫮ PSP   ணࠬ
 ஬ RET.  ⮣ ⮡ 믮 楤, -
⢨ 㦥 ணࠬ  맢 INT 70H.
   ਢ ਬ   ⨯ 䠩 (COM  EXE).   
⠭  ⪠ FINISH  ⬥⪨  楤  뢠
(,   $    祭  稪     ⮩
窥).   COM 䠩 FINISH  ᬥ饭  砫 PSP,  
ॡ  뢠  27H.    EXE 䠩 ᬥ饭 -
   ࢮ , ᫥饣  PSP, ⮬   -
室 ਡ 100H, ⮡    砫 PSP. ⨬,
  ⨢  楤  砫 ணࠬ,     ᪫
⠭     १⭮  樨. 㣮 
䮪 ⮨  ᯮ짮 樨 MOVSB  뫪 
楤    ᯮ㥬    PSP, 稭  ᬥ饭
60H,  ᢮ 160  .
   砩 䠩 COM:
;--- 楤 뢠
BEGIN:     JMP   SHORT SET_UP  ;室  ⠭
ROUTINE    PROC  FAR
           PUSH  DS            ;࠭ ॣ஢
            .
      (楤)
            .
           POP   DS            ;⠭ ॣ஢
           IRET                ;  뢠
FINISH     EQU   $             ;⬥⪠  楤
ROUTINE    ENDP

;---⠭  뢠
SET_UP:    MOV   DX,OFFSET ROUTINE  ;ᬥ饭 楤  DX
           MOV   AL,70H             ;  뢠
           MOV   AH,25H             ;㭪 ⠭ 
           INT   21H                ;⠭ 
;---襭 ணࠬ, ⠢ १⭮
           LEA   DX,FINISH          ;।塞 ॡ. ᬥ饭
           INT   27H                ;襭

   砩 䠩 EXE:

;--- १⭠ 楤
           JMP   SHORT SET_UP   ;室  ⠭
ROUTINE    PROC  FAR
           PUSH  DS             ;࠭ ॣ஢
            .
       (楤)
            .
           POP   DS             ;⠭ ॣ஢
           IRET                 ;  뢠
FINISH     EQU   $              ;⬥⪠  楤
ROUTINE    ENDP

;---⠭  뢠
SET_UP:    MOV   DX,OFFSET ROUTINE  ;ᬥ饭 楤  DX
           MOV   AX,SEG ROUTINE     ;ᥣ 楤  DS
           MOV   DS,AX              ;
           MOV   AL,70H             ;  뢠
           MOV   AH,25H             ;㭪 ⠭ 
           INT   21H                ;⠭ 
;---襭 ணࠬ
           MOV   DX,FINISH+100H     ;塞 ᬥ饭 
           MOV   BYTE PTR ES:1,27H  ;뫠 27H  PSP
           RET                      ;蠥 楤

   㭪 31H 뢠 21H ࠡ⠥ 筮,  ᪫祭
⮣,   DX    ᮤঠ  ᫮ 16- ࠣ䮢,
ॡ㥬  楤  (᫥ ࠧ 楤,  稭  
砫 PSP - .   ਬ [1.3.1]).  २⢮ ⮩ 㭪樨
  ,   । த⥫᪮ ணࠬ  室,
騩 ଠ     楤.  ⥫᪠  ணࠬ
砥       㭪樨 4DH 뢠  21H.   K
室 㦤  [7.2.5].
   1.3.5 㧪   ணࠬ ૥.

   ૥ -   ணࠬ,    ᪥,  
६    ⥫ ணࠬ १⭮  .  K  ॡ
㭪,  믮塞  -  ૥,    㦠 
  ணࠬ 뢠   楤.   ૥
 㦠        , ४뢠 ।-
騩  .  Hਬ, ணࠬ     -
 楤 ஢,  ⥬  ४  楤ன -
樨 ⮢.   孨 ᯮ   .  H
  ⮫쪮   楤,    ᯮ -
ﭭ,   饭   ਢ  ⮬,  ண-
ࠬ 㤥 믮 ᫨誮 .

   । ஢.

   MS DOS ᯮ  㭪  EXEC    㧪  ૥. 
㭪,  4BH 뢠 21H, ᯮ ⠪  -
  ᪠  ணࠬ   㣮,  ᫨    0 
AL  [1.3.2].  ᫨  AL   3,  ⮣ 㤥  㦥
૥.  ⮬ 砥  ᮧ PSP, ⮬ ૥  -
   ᨬ ணࠬ.    楤  
㦠 ૥,  ।  ࠢ.
     ᯮᮡ ᯥ   ૥.   
ᯮ짮    ⥫ ணࠬ,   ᯥ樠쭮
⢥    ।  ணࠬ.  㭪樨
EXEC । ⮫쪮 ᥣ ,  ⢥ 樨, 㤠
㤥 㦥 ૥. K ૥ 㦠  ⥫ 
ணࠬ,   ணࠬ  ᫨   ࠣ,  㤠
㤥 㦠 ૥, ᠬ.  㣮 ஭,  㧪 
ᯥ樠쭮 ⢥  MS DOS ᯥ稢 ணࠬ  -
஬ ࠣ.
    ਢ ਬ  ᯮ  㧪  ⢥
.  ᪮ DOS ⢮ ணࠬ  㯭 , 
᭠砫 室 ᢮    㭪樨 4AH. 㭪-
  48H  ⢮    筮 让, ⮡    
ਭ ᠬ 让  ૥.   㭪 頥 -
  ᥣ   AX,    ࠣ ।  㤠
㤥 㦥 ૥,  ⠪       ૥ 㤥
뢠  ணࠬ.   㭪樨 ⠫쭮 㦤
 [1.3.1].
   K஬  3, 뫠   AL,   ⠭  ⮩
㭪樨   ࠬ. DS:DX  㪠뢠  ப, -
   䠩 ૥, 蠥 ⮬ ASCII 0.  H室
㪠뢠      䠩,   ७ .COM  .EXE,
᪮ DOS   砥  ⠥,    ணࠬ
䠩.
   H,  ES:BX  㪠뢠  4-  ࠬ஢,
 ᮤন (1) 2-  ࠣ, 㤠 㤥 -
  ૥   (2) 2- 䠪 ਢ離,    㤥
ᯮ짮  ਢ離  ᮢ    ૥ (ਢ離 -
  [1.3.6]).   ⢥  ࠣ  ᯮ짮
᫮,  頥  AX,   ࠣ ⢥ 
.   ਢ離    ᬥ饭,   ஬  
᫥  ॡ ਢ離 ࠬ஢  ૥. ᯮ-
  ࠣ, 㤠 㦠  ૥.  ᫥ ⮣ 
 ⠭, 맮 㭪  ૥ 㤥 㦥.  
    ૥  䠩,      뢠
 㭪, 㦠     ૥. ᫨  -
 ⠭ 䫠 ७,   뫠 訡    㤥 -
饭  AX.  K ࠢ 1, ᫨ 㪠   㭪樨, 2 -
᫨ 䠩  , 5 -  ᪮  訡  8 -  -
 筮 .
   ᫥  ⮣  ૥ 㦥  ,     -
       (far)  楤.    ᥣ 
   ⠭ ᫮ 㪠⥫, ।騩  
맮.  ⭠  㪠⥫  ࠢ ⥪饬 
ᥣ.   饭  ૥    ᫥  宦
ࠧ  ᥣ⠬    ૥   㬭 १
 16 (ॢ 稭  ࠣ䮢  ).   ਢ-
 ਬ   ६  OVERLAY_OFFSET    CODE_SEG 饭
  㣮  ࠢ쭮 ⠭ 㪠⥫.  -
, ५ ⥬    뢠  樥 CALL DWORD
PTR OVERLAY_OFFSET.
   ૥       ணࠬ   ᢮  ᥣ⠬
  ⥪,    ࠢ  ᯮ  ⥪ ᥣ
뢠饩  ணࠬ.   맮 ૥ 祭 ᥣ  
ᮡ⢥ ᥣ    饭  DS.

;---蠥 ணࠬ 䨪⨢ ᥣ⮬ (. [1.3.1]):
ZSEG         SEGMENT
ZSEG         ENDS

;--- ᥣ 
OVERLAY_SEG    DW    ?
OVERLAY_OFFSET DW    ?             ;ᬥ饭 ૥
CODE_SEG       DW    ?             ;ᥣ ૥ - 
PATH           DB    'A:OVERLAY.EXE' ;᫥  ᬥ饭
0BLOCK         DD    0             ;4-  ࠬ஢

;---᢮ 
   MOV   CODE_SEG,CS     ;ᮧ  CS
   MOV   AX,ES           ;㥬 祭 ᥣ PSP
   MOV   BX,ZSEG         ; ᥣ  ணࠬ
   SUB   BX,AX           ;塞 ࠧ
   MOV   AH,4AH          ; 㭪樨 SETBLOCK
   INT   21H             ;᢮ 
   JC    SETBLK_ERR      ;䫠 ७   訡
;---⢮   ૥
   MOV   BX,100H         ;⢮  ૥ 1000H 
   MOV   AH,48H          ;㭪 ⢥ 
   INT   21H             ;⥯ AX:0 㪠뢠  
   JC    ALLOCATION_ERR  ;䫠 ७   訡
   MOV   OVERLAY_SEG,AX  ;ᠥ  ᥣ ૥
;---᫥ ᬥ饭 ૥   ᥣ
   MOV   AX,CODE_SEG     ;⠥ 祭 ᥣ ૥
   MOV   BX,OVERLAY_SEG  ; 祭 ᥣ 
   SUB   BX,AX           ;BX ᮤন ᫮ ࠣ䮢
   MOV   CL,4            ;ᤢ  ᫮  4  
   SHL   BX,CL           ;⮡  稭  
   MOV   OVERLAY_OFFSET,BX  ; ᬥ饭
;---㧪 ࢮ ૥
   MOV   AX,SEG BLOCK    ;ES:BX 㪠뢠   ࠬ஢
   MOV   ES,AX           ;
   MOV   BX,OFFSET BLOCK ;
   MOV   AX,OVERLAY_SEG  ;頥  ᥣ ૥ 
   MOV   [BX],AX         ;ࢮ ᫮  ࠬ஢
   MOV   [BX]+2,AX       ;ᥣ ૥ - 䠪 ਢ離
   LEA   DX,PATH         ;DS:DX 㪠뢠    䠩
   MOV   AH,48H          ; 㭪樨 EXEC
   MOV   AL,3            ; 㧪 ૥
   INT   21H             ;㦠 ૥
   JC    LOAD_ERROR      ;䫠 ७   訡
;---⥯ ணࠬ  ᢮ 
    .
    .
   CALL  DWORD PTR OVERLAY_OFFSET  ;맮 ૥
    .     ;㦭 㪠뢠 DWORD PTR, ⠪  ૥ -
    .     ; 楤

;---ᬮ  ,  㤥  ૥
DSEG     SEGMENT     ; 筮, ⠭ ᥣ 
            .        ;᪠ ⥪ ᥣ (ᯮ
            .        ;⥪ 뢠饩 ணࠬ)
DSEG     ENDS

CSEG     SEGMENT     PARA PUBLIC 'CODE'
OVERLAY  PROC FAR      ;ᥣ "" 楤
         ASSUME CS:CSEG,DS:DSEG
         PUSH   DS     ;࠭ DS 뢠饩 ணࠬ
         MOV    AX,DSEG;⠭ DS ૥
         MOV    DS,AX
          .
          .
         POP    DS     ;⠭ DS  襭
         RET
OVERLAY  ENDP
CSEG     ENDS
         END
   1.3.6 ८ࠧ ணࠬ  ⨯ .EXE  ⨯ .COM.

   ணࠬ    ᥬ     ८ࠧ
᢮ ணࠬ  筮  ଠ  EXE  ଠ COM.   EXE
 , ᮤঠ騩 ଠ  ਢ離; DOS ਢ-
   ணࠬ   㧪.   㣮 ஭,
䠩  COM   ⠪ ,  ਢ離   ॡ  -
 ࠭ 㦥  ⮬  ,    ஬  㦠  ணࠬ
    設.  ⮩ 稭 䠩 EXE  襩
  768 ⮢    ᪥, 祬  COM  (
 㧪       ). 
COM ⠪ ॥ 㦠,  ᪮   ॡ ਢ離.
㣨 २   ,   ணࠬ ᫨誮 ᫮-
  ᫨誮 , ⮡   뫮 ८ࠧ  ⨯ COM.
   ਢ離 -   ⠭ ᮢ, 易  ᥣ-
  ॣ஬.   Hਬ, ணࠬ  㪠뢠    砫
  ᫥騬 :
   MOV   DX,OFFSET DATA_AREA
   MOV   AX,SEG DATA_AREA
   MOV   DS,AX
饭  DX 易   ⠭  ᥣ⭮ ॣ DS.  H
  祭  ਭ ᠬ DS? ணࠬ ॡ  -
 ,    ࠣ,   ஬ 㤥 ᯮ
DATA_AREA   ⮣,      㤥 㦥
ணࠬ -        ᨨ  MS  DOS,  ⠪  ⮣,
  १  ணࠬ  室    
.  ⮩ 稭  ६  ணࠬ  ⮫-
 ⠭  ᥣ 祭 १ ᬥ饭  ⭮-
⥫쭮 砫 ணࠬ.  ⥬,  DOS ⢫ ਢ-
, 祭 砫쭮  ணࠬ  ਡ  ᥣ-
  祭,  ᮫ ,  ॡ㥬   ᥣ⭮
ॣ. H . 1-6   ਢ離.
     COM   㦤  ਢ離, ᪮  ࠭  
⠪ ,   㦤  䨪樨 ᥣ.   ணࠬ
࠭ ⭮⥫쭮 砫  ᥣ,    -
  ⥪.   ⮩  稭    ணࠬ    ॢ
65535     ,  ᮮ⢥ ᨬ쭮  ᬥ饭,
஥     ᯮ㥬  奬  樨  (᪮
  ⮣   ⥪,  ॠ쭮 ࠭⢮
㯭         祬 65535 , 
⥪  ᥣ  室   뭥ᥭ  ࠭
64K ⭮ ).   䠩 COM  ᥣ ॣ 㪠-
  砫 PSP; ࠢ  䠩 EXE,  DS  ES 樠-
    ࠧ,    CS  㪠뢠   
᫥騩  PSP.
     ।⠢ ணࠬ   䠩 COM ॡ ᮡ-
 ᫥ ࠢ:

   1.  H ଫ ணࠬ     楤.   ⮣,
  ᠬ 砫 , த START,   ணࠬ-
 ஬ END START.
   2.   砫 ணࠬ  ORG 100H.  -
 㪠뢠 砫  (..  ⠭ 稪  ).
ணࠬ COM  稭    100H,      ⮬,
᫥騬   PSP, ᪮ CS 㪠뢠  砫 PSP,  ஥
ᯮ  100H  .  ⮣ ⮡  믮 
 㣮     100H  JMP.
   3.     ASSUME  ⠭ DS, ES   SS  ⠪
ࠧ, ⮡  ᮢ  祭    ᥣ,
ਬ, ASSUME CS:CSEG, DS:CSEG, ES:CSEG, SS:CSEG.
   4.   ணࠬ      ணࠬ,
  ,    ६蠭  .   稭 ண-
ࠬ    , ᪮ ஠ᥬ   뤠
ᮮ饭  訡  ࢮ  室,  ᫨  뫪 
䨪  ,    㦥.   室  
砫  ᯮ  ⢥ ࢮ  ணࠬ -
 JMP.
   5.   H  ᯮ짮 䨪 ᥣ⮢ ⨯  MOV  AX,SEG
NEW_DATA. 筮 㪠  ᬥ饭 ⪨.  ⭮,
㦭  ᪠  , ᯮ㥬  砫 ணࠬ  
⠭ ᥣ , MOV AX,DSEG / MOV DS,AX.
   6. ⥪ ᥣ    ᪠    砫쭮 .
⥫ ⥪ 樠  設 ᭮ ࠭-
 64K,  ᯮ㥬  ணࠬ  (,   ⥪ 
  ).  ணࠬ COM    ᤥ  祬
64K, SS  SP   .  ,   -
 ணࠬ 騪 뤠 ᮮ饭  訡, 㪠뢠饥,
 ᥣ ⥪ .  .
   7.  ணࠬ   樥 RET,  뢠
20H.   뢠  20H -  ⠭⭠ 㭪    襭
ணࠬ   ࠢ    DOS.   ணࠬ -
蠥  樥 RET,  ᠬ  ᯮ 뢠
20H.   ந室 ⮬,   設 ⥪ ࢮ砫쭮 -
ন 0.   믮 饩 樨 ணࠬ RET, 0
⠫   ⥪,  ७  稪    砫
PSP.  H室  ⮩ 祩 㭪 20H, 믮  ᫥-
  ணࠬ,  뢠  । ࠢ  DOS.
  砥,         ணࠬ 
 ⥪ DS  0 (PUSH DS / MOV AX,0 / PUSH AX),    ॡ
 EXE 䠩.

   ᫥ ⮣   ணࠬ  ᪮஢  ⠪ ࠧ, -
ᥬ     筮.  ⥬ ८ࠧ   
 COM c  ⨫ EXE2BIN, 饩  MS DOS. ᫨ 
ணࠬ, ஥ 騪 MYPROG.EXE,   -
  EXE2BIN MYPROG.   १    ணࠬ
䠩   MYPROG.BIN.     ⠭ ᫥ ⮣ ᤥ-
 - २   䠩    MYPROG.COM.     ⠪
ࠧ ᯮ짮  EXE2BIN MYPROG MYPROG.COM,  -
 䠩  ७ COM.

   H ஢.

     ਬ ᮤন  ⪠ ணࠬ, 
  ⠭ ४⥫ । ⢮ ⥫  
設  ⥬  뢮  ᮮ饭    ࠭.    㦨
ਬ஬  ⪮  ⨫  ⮣ ,    ଠ  COM
.
CSEG          SEGMENT
              ORG 100H
              ASSUME CS:CSEG, DS:CSEG, SS:CSEG
;---
START:        JMP  SHORT BEGIN  ;室  
MESSAGE1      DB   'The dip switches are set for $'
MESSAGE2      DB   'disk drive(s).$'
;--- ࢮ  ᮮ饭
BEGIN:        MOV  AH,9    ;㭪 9 뢠 21H - 뢮
              MOV  DX,OFFSET MESSAGE1  ;ப
              INT  21H     ;뢮 ப
              PUSH AX      ;࠭塞  㭪樨  饥
;---砥 ⠭ ४⥫   A 奬 8255
              IN   AL,61H  ;砥    B
              OR   AL,10000000B  ;⠭  7
              OUT  61H,AL        ;塞 
              IN   AL,60H        ;砥 ⠭ ४.
              AND  AL,11000000B  ;뤥塞 訥 2 
              MOV  CL,6          ;⮢  ᤢ AL ࠢ
              SHR  AL,CL         ;ᤢ 2   砫
              ADD  AL,49         ;塞 1, ⮡   1
                                 ; 48  ॢ  ASCII
              MOV  DL,AL         ;頥 १  DL
              MOV  AL,61H        ; ⠭  B
              AND  AL,01111111B  ;뢠  7
              OUT  61H,AL        ;頥 
;--- ᫠ ⥫
              MOV  AH,2          ;㭪 2 뢠 21H
              INT  21H           ;⠥ ᫮  DL
;--- ன  ᮮ饭
              POP  AX            ;६  㭪樨  ⥪
              MOV  DX,OFFSET MESSAGE2
              INT  21H           ;뢮 ப
              INT  20H           ;襭 ணࠬ
CSEG          ENDS
              END START




                       2.   .

    1. ⠭  ⥭ ⠩.

     IBM PC ᯮ 奬 ⠩ 8253 ( 8254)  
ᮣᮢ ᮢ  奬 ⥬ ᮢ.  ᫮ 横-
  ⥬ ᮢ ८ࠧ    ,   ᫥-
⥫쭮  ᮢ  뢠  । ६,
      ᫠  ஬⥫    
樨 㪠 । .   奬 8253  
 ᨬ ,     ணࠬ-
஢.
   奬 8253 ࠡ⠥  ᨬ   . 
ணࠬ 奬  ⥬ 頥  㣨 . 
ࠧ 8253     ॠ쭮  ६ -  ⠥
᢮   ᨬ  ⮣,   ந室   .
, ᨬ  ணࠬ㥬 ࢠ ⠢ ਡ-
⥫쭮 1/12 ᥪ㭤.    ࢠ ६    
 㦭 - 㣨  ।⢠.      ⮩ 稭
   㫥  奬 ⠩    
६, 室饩    BIOS.   -
  .  2-1.   筮 뢠 ⮬ -
 ⮪.  18.2 ࠧ    ᥪ㭤  室  0 ࠡ뢠
  뢠 (뢠 ⠩), ஥  
⠭      㢥稢  稪  ६ ⮪.
᫮  0  ᮮ⢥   12:00;   稪  ⨣
祭 ⭮ 24 ᠬ,  뢠  . 㣮
६    祭 ⮪   ।    ⥫
稪  18.2    ᥪ㭤.   稪 ६ ⮪ -
  設⢥ 権, 易  ६.
   2.1.1 ணࠬ஢ 奬 ⠩ 8253/8254.

   K     奬 ⠩ 8253 (8254   AT)
⮨   ॣ஢.    㯯   ॣ-
஢  ⢫ १  ;  ⮢  40H   42H
ᮮ⢥  0 -  2.    易   8- ॣ஬
/뢮,  뫠  ਭ   ⮣ -
.  K   ணࠬ஢,  १   뫠
塠⭮ 祭, 訩  ᭠砫.   ᫮ ।
 16- ॣ  (latch register),  ࠭ 
᫮   ண  頥  16- ॣ  -
.  ॣ 稪 ᫮  㬥蠥    ࠧ,
   ⥬ ᮢ ய᪠ १ .  K
祭 ⮣ ᫠  ⨣  ,     뤠 室
ᨣ  ⥬   ᮤন ॣ  ।-
  ॣ 稪,  ᫥  祣  .  
 ᫮  ॣ 稪, ⥬ ॥ .   -
 ᥣ ⨢:   砥   몫砥 . -
饥  祭   ॣ஢ 稪   ⠭ 
  ६,    .
   K    室   室 . 室
 뢮 , 騥  १ . H-
祭  ᨣ   ᨬ  ⨯ IBM PC:

   K 0 ᯮ ⥬묨 ᠬ ६ ⮪.  -
 BIOS     ⠪  ࠧ,  뤠 
ਡ⥫쭮  18.2 ࠧ  ᥪ㭤.  4- 稪   -
ᮢ ࠭      0040:006C (訩  -
 ).  K  樨 뢠 ⠩ (-
 8)     뢠  㢥稢   稪.
  ⭮  뢠, ⮬   ࠡ뢠  ᥣ,
ᨬ  ⮣, 祬    ,  ᫨ ⮫쪮 ࠧ襭
 뢠 (. 㦤  [1.2.2]).  室 
ᯮ ⠪  ᨭ஭樨  ᪮ 権,
⮬ ᫨    祭,   室 ⠭-
 ࢮ砫쭮 祭 । 饭  .

   K  1  ࠢ      設  ஬
PCjr, ⮬     ண.  室  ⮣ 
易   奬 אַ 㯠   [5.4.2]    -
 ⠢  奬  DMA     .  H PCjr
  1 㦨  ८ࠧ 室    
᫥⥫쭮  ࠫ . PCjr  ᯮ -
奬  אַ  㯠  , ⮬       ⮣
ண  १ ,  뢠  ⠩ -
஢.  K 1 ᯮ   ஢  -
ᮢ ᮢ ६  ⮪,    ⥬  ⮡   뫮 
祭 稪 ᫥ 襭 ᪮ 権.

   K  2 易  ஬⥫    ந
 אַ㣮    樨 㪠. ணࠬ
  訩 ஫   , 祬    ⠫묨.
 㪨   ஢  ६  㣨 ண-
ࠬ묨 ﬨ,   ᫮ 㪮 䥪   
⨣   ᯮ짮  .  K 2  
ᮥ   ஬⥫  ᯮ짮   ᨭ஭-
樨. H, 室   2 易   -
.      㤥 ஢     
 ᤥ । ⠭ 奬 䥩  -
ਥ 8255.
     室         ᮢ,
 । ᨣ   奬  ⥬  ᮢ  ,
뢠  ⠬ (gate),  砥  몫砥  ᨣ
 ᮢ.  ᥣ   ᨣ ᮢ   0 
1.  H    묨   2,   -
 ᯥ樠 樨  㪮.  뢠 -
  襣     ᮬ 61H,    -
஬ 奬 8255;  ⮣  ᭮ 뢠 .
 奬 㦤   [1.1.1].  ⬥⨬  -   室
  2 -  1  61H 易    ⠪   -
짮  樨 㪠. H .  2-2 ਢ ࠬ
奬 ⠩ 8253.
   奬  ⠩  ᯮ짮  ।⢥  
६ 権,    ।  뢠  㤮.    ᮢ
ந  1.19318   ࠧ  ᥪ㭤 (   AT,  
⥬   ॥, 奬 ⠩ 砥 ᨣ 
⮩  1.19 ).  ᪮ ᨬ쭮 ᫮, ஥ 
࠭  16 , ࠢ  65535   ᪮  ᫮ 
   ᮢ  ᮢ, ࠢ 18.2,  ᨬ -
 ࢠ  ᠬ ࠢ ਡ⥫쭮 1/12 ᥪ-
.   ⮬  設⢮ ६ 権 ᯮ  稪
६ ⮪ BIOS.   ६ ⠥ 祭 ६-
  ⮪  ࠢ   ࠭   祭
 । ᫠  ᮢ,  襤  ⮣ . -
樠 ᯮᮡ, ᠭ  [2.1.7],  ᯮ짮 -
稪 ६ ⮪  権  ॠ쭮 ६.
   8253 ।⠢ ࠧࠡ稪 㤮 6 ० ࠡ
   .  ணࠬ 筮 ࠭稢  쨬
०,    0   ᨭ஭樨,  ⠪    2
 ᨭ஭樨  樨 㪠.   ⮬ ०,  ⮫쪮
ॣ  砥 ᫮,    㦠  
ॣ  稪.  K 祭  稪 ⨣   -
   १㦠  稪  ..   祭
  室  祭,   祭   -
몫祭.  १    אַ㣮 , 
 ਣ   樨 㪠, ⠪   .
   8-  ॣ ࠢ ᯮᮡ 㧪 ᥫ 
.     ⮣ ॣ ࠢ 43H.  K -
 । ,      ணࠬ-
,   ०,  ⠪     ॣ -
    ।.   뢠 ⠪ 㤥   ᫮  
筮  BCD (筮஢ 筮) ଥ. 祭
⮢ ⮣ ॣ ⠪:
      0    ᫨ 0,  ,  BCD
       3-1     ०, 1 - 5 (000 - 101)
       5-4    ⨯ 樨:
                00 = । 祭 稪  
                01 = / ⮫쪮 訩 
                10 = / ⮫쪮 訩 
                11 = / 訩 , ⮬ 訩
       7-6     ணࠬ㥬 , 0 - 2 (00 -10)

   K  ,  ணࠬ஢ 奬 8253   -
  ᭮  蠣.  ᫥  ⮣  ⨩ 蠣 襭,
ணࠬ஢    稭 㭪樮஢ 
 ணࠬ.

   1.  ᫠     ॣ  (43H)  , ।⠢騩
楯  ⮢,    롨 ,    ⥭/,
० 樨   ।⠢ ᥫ.
   2.    2  ࠧ ᨣ  ᮢ, ⠭  1
 0   ᮬ 61H. (K  1 ⮣ ॣ ⠭
 1,   2 ࠢ .     0  -
権 ᨭ஭樨.)
   3. ᫨ 祭 稪   0  65535,   
AX,    諨 ᭠砫 訩,  ⥬ 訩     ॣ
/뢮  (40H - 42H).

   K 奬 8253 ࠡ ᥣ.   ⮩ 稭 ண-
ࠬ ᥣ  ⠭ 砫 ⠭ ॣ஢
8253 । 襭.  ⭮, ᫨  襭 ணࠬ-
   ,   㤥 த  ᫥  ⮣,
 MS DOS  ࠢ  㧨  ணࠬ. 
   ᠭ 楤 室  Ctrl-Break [3.2.8].

   H ஢.

      ਬ  0 ணࠬ  㣮  祭,
祬 ⠭ BIOS    .  稭    ⠭
⮨  ⮬, ⮡  ࢠ  稪 ६
⮪   稭, 祬  18.2  ࠧ  ᥪ㭤.  -
  稪  , ᪠,  1000 ࠧ  ᥪ㭤,  
楫 ஢   ७. 祭 
   1193 (1193180 ⠪⮢  ᥪ㭤 / 10000).  K 
⥪饥 祭 ॣ  稪  .  ਬ [2.1.8]. ।
᪮묨  ﬨ ਣ쭮 祭    
⠭, ᪮   0  ᯮ  ᨭ஭樨
᪮ 権.  ᨬ쭮  祭 - 65535 ⠪⮢
ᮢ  ᠬ   -   ⨣ 뫪
0  ॣ    (0    ॢ頥    65535 
㬥襭  .
;---⠭ ॣ஢ /뢮
COMMAND_REG  EQU   43H         ;  ॣ
CHANNEL_0    EQU   40H         ;  0
             MOV   AL,00110110B   ;⠭ ⮢   2
             OUT   COMMAND_REG,AL ;뫪   ॣ
;---뫪 稪  
             MOV   AX,1193     ;稪  100 ᮢ/ᥪ.
             OUT   CHANNEL_2,AL   ;뫪 襣 
             MOV   AL,AH       ;⮢  뫪 訩 
             OUT   CHANNEL_2,AL   ;뫪 襣 
   2.1.2 ⠭/⥭ ६.

      MS DOS 訢  짮⥫  ⥪饥  ६.
 祭 頥  4 , ࠭騥 稪 ६
⮪  (稭  0040:006C, 訩  ࠭  ).   H
᭠砫  ८ࠧ  ,  ன 뢠 ६
⮪, ..  ६ ८ࠧ   ᫮ ᥬ  -
㭤, 襤  .   ᫮ ﭭ  18.2
ࠧ  ᥪ㭤 뢠  ⠩.   K   ।
    ६,   ⥪饥 祭  稪  ६  ⮪
८ࠧ ⭮    ਢ  ଠ  --ᥪ㭤.
᫨     뫮  祭,  稪  ⠭-
  ,   ᥩ  .   K ᭠
奬  -ᮢ    ⮬᪨  ⠭
稪 ६ ⮪.

   ᮪ ஢.

   TIME$ ⠭  砥 ६   ப ::,
    0  23, 稭  㭮.  5:10 :

   100 TIME$ = "17:10:00"  '⠭ ६
   110 PRINT TIME$         '뢮 ६

   ᪮ TIME$ 頥 ப,   뤥  ⤥
⥩  ᮢ  ᯮ짮 ப 㭪樨 MID$,
LEFT$   RIGHT$.  Hਬ, ⮡ ८ࠧ ६ 17:10:00  
5:10   १ ப  ᨬ,  ᮮ⢥ ᠬ,
८ࠧ    ᫮  (ᯮ 㭪 VAL), 
12,  ⥬ ।⠢ १    ப:

100 T$ = TIME$                '砥 ப ६
110 HOUR$ = LEFT$(T$,2)       '뤥塞 祭 ᮢ
120 MINUTES$ = MID$(T$,4,2)   '뤥塞 祭 
130 NEWHOUR = VAL(HOUR$)      '८ࠧ㥬   ᫮
140 IF NEWHOUR > 12 THEN NEWHOUR = NEWHOUR - 12
150 NEWHOUR$ = STR$(NEWHOUR)  ' 祭  ப
160 NEWTIME$ = NEWHOUR$ + ":" + MINUTES$  '  ப

   । ஢.

   MS DOS ।⠢ 뢠   ⥭  ⠭ ६-
, ந 室 ८ࠧ  祭 稪
६ ⮪  ᠬ-⠬-ᥪ㭤.  ६ 뤠  -
   1/100 ᥪ㭤,  ᪮ 稪 ६ ⮪  -
  ⮩   ࠧ  襩,     -
㭤 祭 ਡ. 㭪 2CH 뢠 21H 뤠 ६,
  㭪 2DH - ⠭ .     CH  ᮤন
 ( 0  23,  0 ᮮ⢥ ), CL -  ( 0
  59), DH - ᥪ㭤 ( 0  59)  DL -   ᥪ㭤 ( 0
 99).
   K஬ ⮣   祭  ६  㭪樥  2CH, AL ᮤন
    (0 = ᥭ).  祭   㤥  
⮫쪮 ᫨ 뫠 ⠭ . DOS    
 .  ⬥⨬ ⠪,   ⠭ ६ 㭪樥  2DH,
AL ⬥砥  ࠢ쭮    祭 ६ (0 = -
쭮, FF = ࠢ쭮).

;---⠭ ६
   MOV   CH,HOURS       ; 祭 ६
   MOV   CL,MINUTES     ;
   MOV   DH,SECONDS     ;
   MOV   DL,HUNDREDTHS  ;
   MOV   AH,2DH         ; 㭪樨 ⠭ ६
   INT   21H            ;⠭ ६
   CMP   AH,0FFH        ;஢塞 ࠢ쭮 祭
   JE    ERROR          ;室  ࠡ 訡

;---祭 ६
   MOV   AH,2CH         ; 㭪樨 祭 ६
   INT   21H            ;砥 ६
   MOV   DAY_OF_WEEK,AH ;砥    AH

   H ஢.

   ᫨    ᪮ ᮢ  1 奬  8253
 ᯥ樠 ਫ,    室  ᢮ -
楤 ஢  稪 ६ ⮪.  BIOS -
  祭  稪    0  1.573   
    ⮫쪮 ⥬   뢠  ⠩.
⮬ , ॠ쭮  뢠騥    ᥪ㭤,  
ࠡ  24    ᯥ樠쭮 ᠭ ணࠬ.   ⬥⨬
⠪,   0040:0070  ⠭      , 
⥬ 㢥稢  1 ( )  室 ᮢ.
   2.1.3 ⠭/⥭ .

     祭   MS DOS  訢   짮⥫
⥪騥    ६.  ६ 뢠    BIOS.
  ᮤন    ६    COMMAND.COM.  ࠭ 
ଠ  ᫥⥫ ⮢,  ᮤঠ ᮮ⢥-
  ,      , 稭  0,  0
ᮮ⢥  1980 .   ⫨稨  稪  ६  ⮪,
       ᨨ DOS  
  COMMAND.COM.   ⮩ 稭  祭   ᥣ
 ᯮ짮 ⮢  ⨫ ᨪ  MS DOS,   -
  ⮩ ६ .
   設,  㤮 奬 -ᮢ,  ⮬-
᪨ ⠭ ६      ᯥ樠쭮 ணࠬ
(筮  ᪠    १ 䠩  AUTOEXEC.BAT).   K
   奬 -ᮢ,  . [2.1.4]. ⬥-
⨬  ⠪,   稪 ६ ⮪ BIOS 室  १
⬥ 24 ᮢ, MS DOS  .

   ᮪ ஢.

    ᨪ DATE$ ⠭   砥   
ப  ଠ  --.   ᯮ짮    (/)
  (-).        饭. 
31-  1984 .:

   100 DATE$ = "10/31/84"     '⠭ 
   110 PRINT DATE$            '뢮 

   ...   ᯫ 㤥 뢥: 10-31-1984.

   । ஢.

   㭪樨  2AH    2BH 뢠 21H     ⠭
.   祭    AH 2AH  믮 뢠-
.     CX 㤥 ᮤঠ    ᫠   0  
119,  ᮮ⢥     1980 - 2099 ( ᪠
  뤠 ᬥ饭 ⭮⥫쭮 1980 .).  DH ᮤন  
,  DL - .

   MOV   AH,2AH       ; 㭪樨 祭 
   INT   21H          ;祭 
   MOV   DAY,DL       ;  DL
   MOV   MONTH,DH     ;  DH
   ADD   CX,1980      ;塞   
   MOV   YEAR,CX      ;砥  

    ⠭   ,       ॣ-
   믮 㭪 2BH.  ᫨ 祭, 㪠    
,   AL 㤥 饭 FF,  ⨢ 砥 - 0.
   MOV   DL,DAY       ;頥   DL
   MOV   DH,MONTH     ;頥   DH
   MOV   CX,YEAR      ;頥   CX
   SUB   CX,1980      ;६ ᬥ饭 ⭮⥫쭮 1980
   MOV   AH,2BH       ; 㭪樨 ⠭ 
   INT   21H          ;⠭ 
   CMP   AH,0FFH      ;஢塞 ᯥ譮 樨
   JE    ERROR        ;ୠ ,   ࠡ 訡
   2.1.4 ⠭/⥭ ᮢ ॠ쭮 ६.

    ॠ쭮 ६  ᢮ ᮡ⢥ , -
  뢠 ६    㣨  -
樨.   ⠪ ᨬ 筨 ⠭, ᯮ㥬
   몫祭.   ணࠬ     , ⠪ 
⠭  ५쭮 ६.  筮  ⥫-
 ணࠬ ᯥ祭, ஥ ⠭ 稪 ६-
  ⮪  BIOS  ६  DOS ⠪  ࠧ,  ⮡  
ᮮ⢥⢮ ⥪騬    ᮢ ॠ쭮 ६.  H
  ணࠬ ஢ ᮮ⢥⢨     -
 ࠧᨩ ਭ 室 .
    ⠭ ६    ⢫ १ 
ᮢ  ⮢.   㭪樮  ७ 
IBM PC   ॠ쭮  ६,  ,  ᮦ,  ⠭-
⭮  奬   ᮢ ⮢.   AT  
ᠬ  ॠ쭮  ६,  ᭮묨    奬 MC146818
  Motorola,  ᯮ   ॣ,   -
奬, ᮤঠ     䨣樨  ⥬.    ⨬
ॣࠬ  , ᫠ ᭠砫  ॡ㥬 ॣ-
   70H,  ⥬ ⠢ 祭 ॣ १  71H.
, 易  ᠬ, ᫥騥:

           H ॣ              㭪

                00H                  㭤
                01H                  㭤 ॢ
                02H                  
                03H                  ⭠ ॢ
                04H                  
                05H                  ᮢ ॢ
                06H                   
                07H                   
                08H                  
                09H                  
                0AH                  ॣ  A
                0BH                  ॣ  B
                0CH                  ॣ  C
                0DH                  ॣ  D

       ॣ஢ 믮 ࠧ 㭪樨,
     ணࠬ⮢   ।⠢ ᫥-
騥:
    A:  7   1 =  䨪 ६ ( 
                          祭 0, ⮡ )
    B:  6   1 = ࠧ襭 ਮ᪮ 뢠
               5   1 = ࠧ襭 뢠 ॢ
               4   1 = ࠧ襭 뢠  䨪樨
               1   1 =    24, 0 =  12
               0   1 = ࠧ襭  ६ ⮪
     ॠ쭮 ६  AT  뢠 ⭮ -
 IRQ8. ணࠬ  ⠭  ⮣ 뢠 
 楤,  ॡ 믮  । ६
[1.2.3].  ᯮ   4AH.   樨  ॠ쭮 ६,
ந  ⠪  ࠧ,  嫮, 祬  㦤  
[2.1.7] (  業  ⭮  ணࠬ).  뢠 
뢠    ᯮᮡ,    饭 
.   ਮ᪮ 뢠 ந室 १  ।
ࢠ ६.   ਮ筮 ਡ ࠢ  -
ᥪ㭤.   뢠 ॢ ந室  祭   -
஢ ॢ ᮢ  祭ﬨ ᮮ⢥ ६
ॣ஢.  뢠  䨪樨 ந室 ᫥ 
 祭 ॣ஢ 奬.
   뢠 1AH ७  BIOS AT, ⮡  﫮 
 ⠭  ॠ쭮 ६.  ᪮   -
    祬      ,  祭
६  뤠  筮-஢ 筮 ଥ  (BCD),
             筠 
।⠢    ⠬.   ଠ    
ॢ ᫠   ASCII.  ணࠬ  㦭 ⮫쪮 ᤢ
   訩  ॣ   48  -
  ASCII,  ᮮ⢥饣   .   IBM PC
㭪樨  0  1 뢠 1AH   ⠭ 稪 -
 ⮪ BIOS.    ᮢ  ॠ쭮  ६ AT  
 㭪権:

   㭪 2:  ⥭ ६  ᮢ ॠ쭮 ६
                : CH =   BCD
                             CL =   BCD
                             DH = ᥪ㭤  BCD
   㭪 3:  ⠭ ६ ᮢ ॠ쭮 ६
                室: CH =   BCD
                          CL =   BCD
                          DH = ᥪ㭤  BCD
                          DL = if daylight savings, else 1
   㭪 4:  ⥭   ᮢ ॠ쭮 ६
                : CH =   BCD (19  20)
                             CL =   BCD ( 1980)
                             DH =   BCD
                             DL =    BCD
   㭪 5:  ⠭  ᮢ ॠ쭮 ६
                室:    CH =   BCD (19  20)
                             CL =   BCD ( 1980)
                             DH =   BCD
                             DL =    BCD
   㭪 6:  ⠭ ॢ  ᮢ ॠ쭮 ६
                室: CH =   BCD
                          CL =   BCD
                          DH = ᥪ㭤  BCD
   㭪 7:   ॢ ( 室 ॣ஢)

ॢ ⠭   ᬥ饭,  ⭮⥫쭮 ⥪饣 -
 ६. ᨬ ਮ ࠢ 23:59:59.  K 㦥 -
ਫ ,  뢠  4AH  㪠뢠  楤
ࠡ⪨ ॢ.  ⬥⨬,  ᫨   ࠡ  (
⭮, - ⢨ ⠭),  믮 㭪権 2, 4 
6 ⠭ 䫠 ७.
   2.1.5 প ணࠬ 権.

   ᫨  ⢫ প  ணࠬ ।⢮ ⮣
横,     ॡ   ६  ⮣, ⮡
  㦭 ६ প.   ᫨  । -
㥬 ⥫쭮,    㢥७,   ணࠬ
㤥   㦭 ६ প   ᫮.   ⥫-
 横     ᨬ  ᯮ㥬 -
  (,   ᨪ,  ⮣,  ணࠬ  
).    ६,   让  設 ᮢ-
    IBM PC -  ப  ᪮    -
 横  몥 ᥬ   ਢ  ࠧ ६-
  প.  ⮬ ࠧ㬭 । ६ ணࠬ  -
প ।⢥    ᠬ.      18.2 ࠧ 
ᥪ㭤,  ᯮ㥬   䨪樨 稪  ६  ⮪,
  㤮⢮  設⢮ ॡ⥩ ( 㢥-
  ⮢ . [2.1.1]).
   ⮡  ᯥ প  த⥫쭮, ணࠬ
   ॡ㥬  ᫮  ᮢ  稪  ६
⮪.    祭   ⠭ ⥪饬  祭
稪. ⥬ ணࠬ ﭭ 뢠 祭 稪 
ࠢ     .  K ⨣ ࠢ⢮,  
ॡ㥬 প 諠    த 믮 ணࠬ-
.    ,   ࠭ 祭 稪  ६
⮪ ࠭, 稭   0040:006C ( 筮, 稭 
襣 ).  থ  14 ᥪ㭤  짮-
 ⮫쪮 訬 ⮬.     প 
  (筥,  -ᥪ㭤 , 祬 ).

   ᮪ ஢.

     ᨪ  ᯮ짮  SOUND [2.2.2]  -
 , ࠢ 32767.  ⮬ 砥   㤥 -
 .   ⢨ 㪠 㤥  ⮫쪮 -
⮢ ६ ⮪, ᪮쪮  㪠.    5-ᥪ㭤 প
㦥 91  (5 * 18.2). ⮬

100 SOUND 32767,91  '⠭ ணࠬ  5 ᥪ㭤

 אַ ⥭ 稪 ६ ⮪ 㦭:

100 DEF SEG = 0            '⠭ ᥣ  砫 
110 LOWBYTE = PEEK(&H46C)  '祭 襣 
120 NEXTBYTE = PEEK(&H46D) '祭 ᫥饣 
130 LOWCOUNT = NEXTBYTE*256 + LOWBYTE  '祭  ⮢

   । ஢.

   ⠩  祭  稪 ६ ⮪  BIOS,  ᯮ
㭪 0 뢠 1AH          室 ᫮
ᮢ  1/18 ᥪ㭤.  ᫥ ⮣ 뢠 ⥪騥 -
 稪 ६ ⮪, ﭭ ࠢ  ॡ㥬 -
稭.  ⨦ ࠢ⢠   প. 뢠
1AH 頥     DX (設⢮ থ 㪫-
뢠    ।), ⮬   , 頥-
    CX,    ஢,        
32- 権.    ਬ ⠭ প   5
ᥪ㭤,  ᮮ⢥ 91 .

;---祭 祭 稪  ⠭ প
            MOV   AH,0   ; 㭪樨  "⥭"
            INT   1AH    ;砥 祭 稪
            ADD   DX,91  ;塞 5 ᥪ.  襬 ᫮
            MOV   BX,DX  ; ॡ㥬 祭  BX
;---ﭭ ஢ઠ 祭 稪 ६ ⮪ BIOS
REPEAT:     INT   1AH    ;砥 祭 稪
            CMP   DX,BX  ;ࠢ  ᪮
            JNE   REPEAT ;᫨ ࠢ,  塞 ᭮
                         ;, প 祭

AT    㭪  뢠  15H,   
⢨  প  㪠 ६.   86H  AH,  
᫮ ᥪ㭤 প  CX:DX.  ᫥ ⮣ 믮 -
.
   2.1.6 樨 ணࠬ஢  ६.

   ணࠬ । ६  믮 ।  -
樨  筮 ⠪ ,   祫:  砫쭮 
稪  ६ ⮪  ⥬ ࠢ  ᫥騬 -
ﬨ.     祭  ଠ --ᥪ㭤,
  ᫨誮 嫮⭮  ࠧ  ⠪  ﬨ,
᪮ ⥬   筠.  אַ  稪
६  ⮪ BIOS,  த⥫쭮  1/18 ᥪ㭤, 
⥬ 㦥 ॢ    ଠ ::.

100 GOSUB 500              '砥 祭 稪
110 START = TOTAL          '࠭塞 砫쭮 祭  START
      .
 (  , ⥫쭮 ண )
      .
300 GOSUB 500              '砥 䨭쭮 祭
310 TOTAL = TOTAL - START  '뢠 ᫮ ᮢ
320 HOURS = FIX(TOTAL/65520)  '塞 ᫮ ᮢ
330 TOTAL = TOTAL - HOURS*65520  '⠥   TOTAL
340 MINUTES = FIX(TOTAL/1092)    '塞 ᫮ 
350 TOTAL = TOTAL - MINUTES*1092 '⠥   TOTAL
360 SECONDS = FIX(TOTAL/18.2)    '塞 ᫮ ᥪ㭤
370 PRINT HOURS,MINUTES,SECONDS  '⠥ १
380 END
      .
      .
500 DEF SEG = 0            'ணࠬ ⥭ ६ ⮪
510 A = PEEK(&H46C)        '砥 訩 
520 A = PEEK(&H46D)        '砥 ᫥騩 
530 A = PEEK(&H46E)        '  
540 TOTAL = A + B*256 + C*65535  '뢠 १  TOTAL
550 RETURN                 ' ᤥ

   㭪 TIMER  ᨪ  頥  ᫮ ᥪ㭤, 襤 
,  稪 ६ ⮪  ᫥ ࠧ ⠭
 0. 筮  ᫮  ᥪ㭤,  襤    ६ ᫥
祭  .   ᫨   ⥬  ࠢ쭮  뫮
⠭ ⥬ ६,    TIMER  頥 ᫮ ᥪ㭤,
襤  㭮.   N = TIMER.

   । ஢.

   뢠  1AH     㭪樨  ⠭ (AH =  1)  
祭 (AH = 0) 稪  ६  ⮪.   ⥭ 稪
  믮 뢠  AH = 0.    祭
稪 ᮤন  CX:DX, 祬 襥 ᫮  CX. AL ᮤ-
 0, ᫨ 稪  室 १ ࠭ 24 ᮢ  
᫥ ⠭.  ⠭ 稪   ᫮ 
    ॣ,   AH - 1.   ਢ  ਬ  
஬⪨ ६   ।  .    ⮬ 㦭 ⮫쪮 
   稪.  H  ⮬ 砥 室  ஢,
  뫮 室 १ ࠭,  砫쭮 祭 뫮
, 祬 ᫥饥.
;--- ᥣ 
OLDCOUNT  DW   0     ;࠭ 砫쭮 祭 稪
;---砥 砫쭮 祭 稪
          MOV  AH,0        ; 㭪樨
          INT  1AH         ;砥 祭 稪
          MOV  OLDCOUNT,DX ;࠭塞 砫쭮 祭
           .
   (  , ⥫쭮 ண )
           .
;--- 塞 ⥫쭮 
          MOV  AH,0        ; 㭪樨
          INT  1AH         ;砥 祭 稪
          MOV  BX,OLDCOUNT ;뢠 ஥ 祭
          CMP  BX,DX       ;஢塞  ९
          JG   ADJUST      ;ࠡ⪠ ९
          SUB  DX,BX       ; ६ ࠧ
          JMP  SHORT FIGURE_TIME  ; ॢ    
;---ࠡ⪠ ९
ADJUST:   MOV  CX,0FFFFH   ;頥  CX ᨬ쭮 ᫮
          SUB  CX,BX       ;⠥ ࢮ 祭
          ADD  CX,DX       ;塞 ஥ 祭
          MOV  DX,CX       ;१ ࠭  DX
;---楤 ॢ ६   ଠ
FIGURE_TIME:               ;  18.2 ᥪ㭤  ..
   2.1.7 ࠢ ࠡ⮩  ॠ쭮 ६.

       ॠ쭮 ६ ணࠬ 믮 -
樨  㪠    ६,       ࢮ .
  த  樨 筮  樨   ஡孨,  
 ⢮  㣨  ਫ.     롮 室 
   ॠ쭮 ६.   ணࠬ,     
祣   ஬⪥  ﬨ, ॡ騬 ६-
 ਢ離,   ਮ᪨ ஢ 稪 ६
⮪,  㯫 㦭  .   室 ࠪ-
᪨ ᢮    横, ᠭ  [2.1.5].
   ன  室  ᫮.   ᯮ,  ணࠬ
ﭭ  - ࠡ⮩,     ।
 ६ 뢠 ᢮ 樨  믮 ।-
 .   ⮬ 砥   뢠 ⠩, ஥
믮 18.2 ࠧ  ᥪ㭤. K  뢠 ந室,
⥫    ஢    祭  稪 ६
⮪    ᫨  㯨 ।   ६,  ᪠
㦭 楤.      .  2-3. ਢ
   ਬ 뢠,  ᮧ  ᢮  ணࠬ
㤨쭨,  ⠭  짮⥫   㪮-
  ᨣ,  諮 ६.  ( ᫮ ਬ  
஢  [2.2.6]  ᯮ  ,     ६  
 㣨 .)

   ᮪ ஢.

   ᨪ  ᯥ稢  ਬ⨢ ஫    ﬨ  
ॠ쭮 ६ ।⢮   ON TIMER(n) GOSUB.  K
ணࠬ 砥  ,   稭 뢠  n
ᥪ㭤.   ६ 믮 ணࠬ த.  K n
ᥪ㭤  諮,  ணࠬ 室  ணࠬ,  稭-
  㪠   ப,  믮   頥 -
ࠢ     , 㤠 뫠 맢 ணࠬ.   ᫥
⮣  ᭮ 稭    ணࠬ 㤥 맢
᭮  १ n ᥪ㭤.
   ON  TIMER  㤥 㭪樮஢,       ࠧ-
襭 ஬ TIMER ON.  TIMER OFF 頥  ࠡ-
.     ,   ६  த, 
室  ணࠬ     ঠ,  ᯮ짮
 TIMER STOP.  ⮬ 砥 ⬥砥,  n ᥪ㭤 -
,  室  ணࠬ 㤥 믮 ⮫쪮 ᫥ ⮣,
   TIMER ON.
   ᪮   ,  ON TIMER ᮡ  
 뢮  ࠭ ⥪饣 ६:

100 ON TIMER(60) GOSUB 500   '塞  ᮢ  60
110 TIMER ON                 'ᥪ㭤  ࠧ蠥 ࠡ ⠩
 .
 .
500 LOCATE 1,35:PRINT "TIME: ";LEFT$(TIME$,5)  '樮㥬
510 RETURN                   '  ⠥ ६
   H ஢.

   BIOS ᮤন  ᯥ樠쭮  ⮥  뢠  (1CH), ஥
祣    ,       楤.   
    ⮣  뢠  㪠뢠     IRET
(   뢠);   맮 ந室  ⠫
. H  뢠  1CH  ᭮  ⥬,    뢠
뢠  ⠩ BIOS ᫥ ⮣,   뢠 
祭 稪 ६ ⮪.   ᪠,   -
  뢠, ந室饥 ⮬᪨ 18.2 ࠧ   ᥪ㭤.
    ⮣ 뢠 ⠪, ⮡  㪠뢠
 楤  襩 ணࠬ.  ᫥ ⮣  楤 㤥
뢠 18.2 ࠧ  ᥪ㭤.    ⮬    ⠭
᢮ 楤 ࠡ⪨ 뢠 .  [1.2.3].
   Hᠭ   楤   ⮫쪮  -
஢ 祭 稪  ६  ⮪, ࠢ   -
  ६,   믮   ॡ,   
६  㯨.   ⢥,   ६   -
諮,   楤  頥 ࠢ, 祣   -
.  ࠧ,   믮 譥 ࠡ.
    ਢ ਬ 楤 (  ) -
  짮⥫ ᫮  ( 60), ஥  ன 
⮣,  ࠧ   㤨쭨.    ᫮, ᥭ 
MINUTES,  㬭   1092  ॢ  ⭮  ᫮
ᮢ 稪 ६  ⮪.   ਮ  । 
  筮  16   -   ਮ  ॡ  
᫮ 32-⮢ 権.     ᫮ ᮢ  
襬 ᫮ ⥪饣 祭 稪 ६ ⮪  -
  ALARMCOUNT.
   ⥬  뢠 1CH  ⠪ ࠧ, ⮡ 
㪠뢠  楤 ALARM. ,   ⮫쪮  㤥
, ALARM 㤥  ⮬᪨ 뢠 18.2 ࠧ  ᥪ-
.    맮  楤 ⠥ ⥪饥  祭  稪
६ ⮪ १ 뢠 1AH  ࠢ  ALARMCOUNT. 
ᮢ  稭 뢠 楤 BEEP (⠪  -
  - .  [2.2.4]),   뤠 㪮 ᨣ.  
⨢  砥  ந室 .       
 뢠 (MOV AH,20H / OUT 20H,AL)   -
    㦭, ⠪   㤥  뢠  ⠩.   
⥫    ࠭ 塞 ॣ.

;--- ᥣ 
   MINUTES     DW    0     ;࠭ ᫮   
   ALARMCOUNT  DW    0     ;࠭ 稪 ६  

;---⠭  祭 稪 ६ ⮪
   CALL  REQUEST_MINUTES   ; ᫠   
   MOV   AX,MINUTES        ;뫪  AX
   MOV   BX,1092           ;᫮ ᮢ 稪  
   MUL   BX                ;㬭 - १  AX
   ;砥 ⥪饥 祭 稪
   MOV   AH,0              ; 㭪樨 ⥭ 稪
   INT   1AH               ;⠥ 祭, 訩   DX
   ;᪫뢠  祭
   ADD   AX,DX             ;
   MOV   ALARMCOUNT,AX     ;砥 㦭 祭 稪
;---塞  ⮣ 뢠
   PUSH  DS                ;࠭塞 ᥣ 
   MOV   AX,SEG ALARM      ;६ ᥣ 楤 ALARM
   MOV   DS,AX             ;頥   DS
   MOV   DX,OFFSET ALARM   ;६ ᬥ饭 楤
   MOV   AL,1CH            ; 塞 
   MOV   AH,25H            ;㭪  
   INT   21H               ;塞 
   POP   DS                ;⠭ ᥣ 
;
;--- த ணࠬ
;
;---  ணࠬ 頥  뢠
   MOV   DX,0FF53H         ;ਣ 祭 
   MOV   AX,0F000H         ;뢠 1CH
   MOV   DS,AX             ;頥 ᥣ  DS
   MOV   AL,1CH            ; 塞 
   MOV   AH,25H            ; 㭪樨
   INT   21H               ;⠭ 

;---楤 뤠 㪮 ᨣ
ALARM    PROC FAR          ;ᮧ  楤
         PUSH AX           ;࠭塞 塞 ॣ
         PUSH CX           ;
         PUSH DX           ;
;---⠥ 稪 ६ ⮪
         MOV  AH,0         ; 㭪樨 ⥭ 稪
         INT  1AH          ;⠥ 祭 稪
;---ࠢ  ॡ㥬 祭
         MOV  CX,ALARMCOUNT   ;६ ॡ㥬 祭
         CMP  DX,CX        ;ࠢ  ⥪騬
         JNE  NOT_YET      ;᫨ ࠢ,   室
;---뤠 㪮 ᨣ, ᫨ 祭 ᮢ
         CALL BEEP         ; 楤  
;--- 頥  뢠
NOT_YET: POP  DX           ;⠭ ॣ
         POP  CX           ;
         POP  AX           ;
         IRET              ;  뢠
ALARM    ENDP              ; 楤
   2.1.8  砩 ᥫ   奬 ⠩.

     樨  ᫥⥫쭮 砩  ᥫ  ॡ
᫮ ⥬᪨ 樨. H  ணࠬ  ।-
  ॡ ⮫쪮  砩 ᫮.   ⮬ -
砥 砩 ᫮   祭   ⥭  
奬 ⠩.  ᨪ ᯮ  ᫮  ⢥ ,
 ஬  砩  ᫥⥫쭮.  K筮,
   ᯮ짮  ᫥⥫쭮  ⠭ 祭
  ⢥  砩 ᫥⥫쭮, ⠪  ᠬ    ᥡ
ࢠ ६  뢠ﬨ  砩묨.

100 RANDOMIZE TIMER      '  砩 ᥫ
110 PRINT RND,RND,RND    '  砩 ᥫ

 १ 砥:  .7122483  .4695052  .9132487

   H ஢.

   ᪮ ॣ  稪     ⠩  १㦠
᭮    ᭮  ᫮ (  ஬⪠     
0), 롥  ⢥  㦠    稪 祭 ᫮,
ࠢ ॡ㥬  砩 ᥫ.  Hਬ,  -
祭 砩 祭   㦠  稪 23.
    ᥣ ᯮ짮 ० 3  2 ( 42H) -
  ⠩  [2.1.1].  砫 ⠭   稪  
 砩 ᥫ ( ਬ  ᯮ 10000,  -
  뤠 砩 ᫠    0  9999). ⥬,
⮡      砩  ᫮,    
  ॣ 奬 ⠩ १  43H  ७
⥪饥 祭 稪    ॣ  "",   祣 
   4  5.   ७  ॣ    蠥
த饬 . ⥬ ⠭   4  5 
ॣ, ⮡     ॣ .  ᫥
⮣  樨 IN   ᭠砫  訩,   ⥬ 訩
  ॣ AL. H, ⠭ ࢮ砫쭮 祭
ॣ , ⮡   த   । 㪠
 ६.

;---⠭ ᮢ ⮢
COMMAND_REG  EQU   43H     ;  ॣ
CHANNEL_2    EQU   42H     ;  2
             CALL  SET_COUNT  ;⠭ 
              .
;--- ணࠬ ࠡ⠥,  ⥬ ॡ 砩 ᫮
              .
             CALL  GET_NUMBER ;祭 砩 ᫠
              .
              .
;---稭   2
SET_COUNT    PROC
             MOV   AL,10110110B   ; 2, ० 2,  
             OUT   COMMAND_REG,AL ;뫠   ॣ
             MOV   AX,10000       ;祭 稪
             OUT   CHANNEL_2,AL   ;뫠 訩 
             MOV   AL,AH          ;। 訩   AL
             OUT   CHANNEL_2,AL   ;뫠 訩 
             RET
SET_COUNT    ENDP
;---祭 砩 ᫠
READ_NUMBER  PROC
;---뫠 祭 稪  ॣ 
             MOV   AL,10000110B   ;ॡ㥬 
             OUT   COMMAND_REG,AL ;뫠   ॣ
;---⠥ 祭 稪
             MOV   AL,10110110B   ;  ⥭/
             OUT   COMMAND_REG,AL ;뫠 
             IN    AL,CHANNEL_2   ;砥 訩 
             MOV   AH,AL          ;६ ࠭   AH
             IN    AL,CHANNEL_2   ;砥 訩 
             CALL  SET_COUNT      ;⠭ 
             SWAP  AH,AL          ;⠢   
             RET                  ;⥯ 砩 ᫮  AX
READ_NUMBER  ENDP
    2.  㪠.

   ᨪ ᭠饭 筮 ७묨 ।⢠  樨
㪠,  樮 ⥬  ⮫쪮  
㪮 ᨣ.  ᫨    - ᫮ -
,    אַ  ணࠬ஢  奬 ⠩ 8253.
K  2  ⮩  奬 אַ 易     .
K   ணࠬ   ० 3,   뫠 -
㣮   . -    ᣫ-
  אַ㣮쭮 ,     
ᨭᮨ  .  K ᮦ, 奬 8253   -
  , ⮬     ஬ 㪠,
 .
        ,   室  樨 㪠.   H
. 2-2  [2.1.1] ,  ஬ 奬 ⠩, ᨣ
뫠  ⠪ 奬 䥩  ਥ 8255  [1.1.1].
 ᮢ  奬    , ⮬
  ⢨    筨     
ᯥ樠 㪮 䥪.
   쪮 PCjr  ᯥ樠 奬,  ࠢ -
஬ 㪠.   ६ 뤠  ࠧ ⮭, 
  㪮  䥪⮢.   ஬      
 ⠭ ᨬ.  㣮 㭨쭮 
PCjr  ,     ࠢ 譨 筨 -
, ⠪   䮭.
   2.2.1 ணࠬ஢  㪠 76496 (⮫쪮 PCjr).

   PCjr  ᭠  4-  ஬ 㪠,   ஬  
  ⮭,  ⢥ 㦨  樨 㬠 
㪮 䥪⮢.     ணࠬ ᨬ,
祬        ᢮  ॣ  ஬,  ⥬
室    ꥤ   㪮 ᨣ.  ᯮ-
 奬 ᭮   㪠 TI SN76496N. 
  8 ॣ஢ - 2    -     
१    ᮬ 0C0H.   㦨 ⮫쪮  -
; ᫨   IN,   ⥬ 㤥 ஦.
   PCjr    ⠪ ࠧꥬ  譥 筨  㪠.   
 ⥬ 㪮  砥 室 ᨣ  -
奬 ⠩ 8253. H     ४祭  -
奬  㪠      譨 㪮 室.
  ⨣  ⮢ 5  6  B 奬 -
䥩  ਥ 8255 (  61H - . [1.1.1]). 祭
⮢ ᫥饥:

         6  5          ࠭ 㭪

           00               奬 ⠩ 8253
           01               室  ⭮ 䮭
           10               室  /뢮
           11                㪠 76496

  롮  筨 㪠  BIOS PCjr    㭪  80H
뢠 1AH.   AL    0  3,  ᮮ⢥-
  襯ਢ ⠡楩,  맮 㭪.  頥
ॣ஢ .    㪠  76496   ᯮ짮 
㪮  , ᪮    ࠢ ७ -
 PCjr.
    饬 砥,    뫠  㪠,
    4-6 ᮤঠ  䨪樨,  ᮮ騩    
쬨 ॣ஢ ।祭 .   ⠪:

         6-4            㥬 ॣ

         000                 ࢮ ⮭
         001                ஬ ࢮ ⮭
         010                 ண ⮭
         011                ஬ ண ⮭
         100                 쥣 ⮭
         101                ஬ 쥣 ⮭
         110                 ⢥⮣ ⮭
         111                ஬ ⢥⮣ ⮭

    砥 ॣ஢  ⮭ ॡ  . 祭
⮢  ⮬ ᫥饥:

    1:  0-3   訥 4  
                4-6    䨪樨 ॣ
                  7   ᥣ ࠢ 1
    2:  0-5   訥 6 ⮢ 
                  6    ᯮ
                  7   ᥣ ࠢ 0
 ⠭  ⮭  ॣ  뫠 10-⭮ -
, ஥ ᫥     111  843     
.  ࠧ, 㯭 , 稭  110  
(111 843/2^10).  K ⮫쪮 ॣ 樠஢ ( ᮮ⢥-
  ⠭  B 奬 8255),   稭
㪮 ᨣ  த   ,    㤥 ४-
饭.   H 易⥫쭮    뫠   
.  ᫨ ᫠ ⮫쪮 ன  (訥 6 ⮢ ),
   ⮬᪨  ᮮ⢥騥   ,  
஬ 뫠  ᫥  .      
 ஢ .
     㬠  ணࠬ஢ 㦥 ⮫쪮   .
祭 ⮢   ᫥饥:

    0-1     ⭮ 㬠
          2     ⢮ 㬠
          3      ᯮ
        4-6      䨪樨 ॣ
          7     ᥣ ⠭  1

K⢮ 㬠 ⠭     (ﭭ 訯),
   2 ࠢ 1   ਮ᪨  ( 㪠),  
 2 ࠢ 0. ⭮ 㪠 㢥稢  㢥祭 ⮢
0-1   00B  10B;   ⠭  11B,   
 ᨬ  室 ⮭  3.
   ஬         ᫠
᭮ ᨣ.  ⮩ ⠭ ॡ ⮫쪮  .
祭  ⮢ ᫥饥:

    0-3     ᫠ ᨣ
        4-6      䨪樨 ॣ
          7     ᥣ ⠭  1

K  4   ࠢ 0,   ஬ ᨬ쭠. K
    ࠢ 1,    .    祭
㪠 ஬筮 ஬    ᯮ짮  -
 ⮢.   0 ᫠   2  (模),  1 -
 4 ,  2 -  8    3 -  16 .  ᨬ쭮 ᫠-
 ࠢ 28 .
   2.2.2  ⮭.

    ࠧ   ந ,  
  祬 㣨;  [2.2.3]     ᤥ, 
ந  㣨 ⢨.  ,   ணࠬ⮢  
ᥬ ᫥ .    ⮣ 筮 ணࠬ-
  奬  ⠩  8253,  ࠡ⠥  ᨬ  
.   ਢ  ⮤  ।⢥
ࠢ , ⮬ ணࠬ 室 믮 ࠡ-
,   믮 奬 ⠩.    ᯮᮡ
  㤥,   ᪠ ⢥ 訩  ஫  
   ᮧ  設⢠  ᯥ樠 㪮 䥪⮢
[2.2.8] ᭮뢠  .

   ᮪ ஢.

    ᨪ SOUND ᯮ  樨 ⮭  -
    ⥫쭮⥩.     (
37   32767),  ⥫쭮   稪 ६  ⮪
BIOS ( 0  65535), 祬   ᥪ㭤 ந室 18.2 .
SOUND  440,91  ந  A  祭 5 ᥪ㭤  (5*18.2).
 ࢮ ⠢, 稭   C() ⠪:

                 C()              523.3
                 D()              587.3
                 E()              659.3
                 F()              698.5
                 G(᮫)            784.0
                 A()              880.0
                 B()              987.7

   ⠢   , 㤢  祭, 
 ⠢  -  ࠧ 㤢  .   , 
 ⠢  ࠢ ਡ⥫쭮   祭 (-
 ஥  筮   ᫥  䬥᪨ ࢠ-
).
    ᢮  㪠 [2.2.1] PCjr  ᯮ짮-
    SOUND   ᨬ  㪠,  祬
 ࠢ ஬    .  ⮬ 砥 ଠ
:  SOUND , ⥫쭮, ஬, .  ஬-
    0    15,    㬮砭 8. H 
    0  2,  㬮砭 0.  ᪮ PCjr  
ᯮ짮    ஫ 㪠 ⮫쪮 
譥  ,   ᭠砫 ࠧ  .   
    SOUND  ON.  SOUND OFF । -
஫  ७ .  ⮡   D- (--
) (D-F-A)   ஬, :

100 SOUND ON             'ࠧ襭 譥 
110 SOUND 587,50,3,0     ' 
120 SOUND 699,50,3,1     ' 
130 SOUND 880,50,3,1     ' 
   H ஢.

    㪠       䥩   ਥ
8255  ⮨  祭  몫祭   ⮩  
 B,  易    ( 1).   B  
61H ( AT   奬 䥩  ਥ 8255 
⠪,  ᯮ  ⮩  楫       
).   ᫨  ணࠬ ४砥 祭     ᨬ쭮
 ⮩,   ᫨誮 ᮪, ⮡  -
.   ⮬    ४祭ﬨ  ⠢  ⮩
横.  ,   0    B  ࠢ  ⠬  2
奬  ⠩,   ᢮ ।  易   .
⮬        襭,  ᮥ   
⠩. H . 2-4    ⮤ ⠭ -
 㪠.
    ᫥饬 ਬ   ६. , 祭
"FREQUENCY",  ᯮ    ⢥  稪   ⮬ 横
 ⢨ﬨ 祭  몫祭.     祭,
⥬ ॥ ந室    ⥬  . -
   "NUMBER_CYCLES" ⠭ த⥫쭮  ⮭.
  ᪮쪮 ࠧ    ७  祭 
몫祭.    ᫮, ⥬    .
   ⬥⨬,    ⮩ 楤  뢠  
  饭.   稭 ⮣  ⮬,    뢠  ⠩
ந室  ⠪ ⮩   ॣ୮  (18.2 ࠧ  ᥪ-
),    㤥 ⢥   .   ,
  뢠  饭,  稪  ६  ⮪  BIOS 
㤥  ࠡ.  ᫨ ⥬   祭,   㤥
⫨    稭   ॠ쭮,   , 
 㤥 ᤥ ᮮ⢥饥 .

NUMBER_CYCLES  EQU   1000
FREQUENCY      EQU   300
PORT_B         EQU   61H
               CLI                 ; 뢠
               MOV   DX,NUMBER_CYCLES  ;⥫쭮 ⮭  DX
               IN    AL,PORT_B     ;砥 祭   B
               AND   AL,11111110B  ;⪫砥   ⠩
NEXT_CYCLE:    OR    AL,00000010B  ;砥 
               OUT   PORT_B,AL     ;뫠    B
               MOV   CX,FREQUENCY  ;প  -横  CX
FIRST_HALF:    LOOP  FIRST_HALF    ; প
               AND   AL,11111101B  ;몫砥 
               OUT   PORT_B,AL     ;뫠    B
               MOV   CX,FREQUENCY  ;প  -横  CX
SECOND_HALF:   LOOP  SECOND_HALF   ; প
               DEC   DX            ;⠥   稪
               JNZ   NEXT_CYCLE    ;᫨ 0,   
               STI                 ;ࠧ蠥 뢠
   2.2.3  㪠 ६  㣨 ⢨ﬨ.

     ணࠬ⮢  ᨪ ࠧ稥  ⨬  ।騬
ࠧ ᮢ襭 ⢥.  H ணࠬ  ᥬ
 ᯮ짮 ᮢ襭 㣮 ⮤. ᪮ 奬
⠩ 8253 ࠡ⠥  ᨬ   ,  祭 
஢  ,    ६   믮
㣨 権.     ணࠬ஢  2 ⮩
奬   樨 । ,  ⥬ ९ண-
ࠬ஢ 奬  몫祭 㪠.

   ᮪ ஢.

    SOUND  ᨪ   ஢  -
६   㣨 ⢨ﬨ,   PLAY -   ᫨
  .  ஬ PLAY  ᫥ ப, -
 ᮮ頥     ࠭,  ⥫쭮, 
⠪ 㣨 ࠪ⨪.  ⠫  ப PLAY -
  [2.2.5]. ᫨ ப ᮤন 㪢 MB (䮭 몠),
 ப 頥   ᯥ樠    믮 -
  㣨 ணࠬ묨 ⢨ﬨ.  H⨢, MF (몠 
। )  ⠭    ணࠬ  樨  
,    ப  㤥 ᯮ.    ᯮ 
 A ()  䮭 ०:

100 PLAY "MB A"    'ᯮ  ...
110 ......         ' ᫥騥  ணࠬ

   ⬥⨬,   䮭 ०,  X = PLAY(0) 頥
᫮    ( 32), ஥ ⠫ .    쭮
०  PCjr  頥  ᫮       
(0-2),  ண 㪠  ᪮.

   H ஢.

     諨  稪   2,   ᭥   [2.1.1].
奬      ।⥫쭮  ࠧ襭  १  B
奬  䥩  ਥ 8255 ( 61H).   ᫨
ॡ㥬 祭 稪  , ࠧ 1.19 
  ॡ㥬    .   㤥 த   
,           2. ⮬  
   1  B  0,   㤥 த ᪮-
筮    ४饭 ⮫쪮 १㧪 . 
筮 ॣ㫨஢ ⥫쭮 㪠  ᯮ짮 -
稪 ६ ⮪ BIOS,   㪠   [2.1.6].   ਬ
   440 .   ४頥 ᫥  
   .

;---襭  2 ⠭  B 奬 8255
PORT_B     EQU  61H           ;⠭   B
           IN   AL,PORT_B     ;⥭  祭
           OR   AL,3          ;⠭   ⮢
           OUT  PORT_B,AL     ;뫠    B
;---⠭ ॣ஢ /뢮
COMMAND_REG  EQU  43H         ;  ॣ
CHANNEL_2    EQU  42H         ;  2
             MOV  AL,10110110B    ;楯窠 ⮢   2
             OUT  COMMAND_REG,AL  ;뫪   ॣ
;---뫪 稪  
           MOV  AX,2705       ;稪 = 1190000/440
           OUT  CHANNEL_2,AL  ;뫠 訩 
           MOV  AL,AH         ;ᤢ 訩   AL
           OUT  CHANNEL_2,AL  ;뫠 訩 
;---  
           MOV  AH,1          ; 㭪樨 뢠 21H
           INT  21H           ;뢠 뢠
;---몫祭 㪠
           IN   AL,PORT_B     ;砥    B
           AND  AL,11111100B  ;뢠   
           OUT  PORT_B,AL     ;뫠  ⭮
   2.2.4 㤮 .

   H  ணࠬ ॡ  ।ॣ 㤪.
  ᮧ  ᨪ,  樮 ⥬  ᯥ-
稢  㭪 㤪,  ⠪,  ⮫쪮  ᢥ  
   㤪,        ⥬.
    ⮭  楤 樨  㪠    
ணࠬ஢    ஢.    ⮣ ⮡ 㤮 ᮮ-
⢮    ᨣ 室   ࠦ-
.  ।᪠   ᭮  ᮧ  -
  ⮭ [2.2.7] , ᫨ ਭ 祭,  ।  㤪
   ਭ (뢮  ASCII 7  ਭ).

   ᮪ ஢.

    ᨪ     BEEP.     祪 , 
ॠ   訡 㤪  ᮬ:

100 INPUT "Enter your age",AGE             ' 
110 IF AGE > 100 THEN BEEP:PRINT"Are you really over 100?"

     㤪  㣮     த⥫쭮  ᯮ
 SOUND.    ଠ:  SOUND  ,  ⥫쭮 , 
     (3000 - । ),   ⥫-
   ᥬ    ᥪ㭤.  SOUND 3000,18 
㤮 ⥫쭮   ᥪ㭤.  ਢ ਬ-
   室  ᮪ ⮭    ⭮,
㣨    襩 ⭮.

100 FOR N = 1 TO 200   '⠭ ᫠ ७
110 SOUND 500,1        '    1 ᥪ㭤
120 SOUND 5000,1       ' ᮪   1 ᥪ㭤
130 NEXT               '

   । ஢.

   樮 ⥬  ।⠢  ᯥ樠쭮 㭪樨 
樨 㪠. H   맢  㤮  -
  ASCII 7  ⠭⭮ ன⢮ 뢮 (.. ନ),
ᯮ    㭪権 DOS  BIOS.  K ASCII 7 -
  ࠢ騩 ᨬ ""       -
.  ᥣ ᯮ짮 㭪 2 뢠 21H:

   MOV  AH,2     ;㭪 뢮 ᨬ  ࠭
   MOV  DL,7     ;뫠  ASCII 7
   INT  21H      ; 㤨

   H ஢.

     ⮣ 㤪  ᥣ 室 ⮤, ᭮  
ᯮ짮 奬  䥩    ਥ 8255 [1.1.1].
H ਢ ਬ,  ࠪ᪨  㤮,  -
     ⥬.
;---㤮 
            MOV  DX,800          ;稪 ᫠ 横
            IN   AL,61H          ;⠥  B 8255
            AND  AL,0FEH         ;몫砥  ⠩ 8253
NEXTCYCLE:  OR   AL,2            ;砥  
            OUT  61H,AL          ;뫠    B
            MOV  CX,150          ;⥫쭮 ࢮ 
CYCLEUP:    LOOP CYCLEUP         ;প  ᨣ ᮪
            AND  AL,0FDH         ;몫砥  
            OUT  61H,AL          ;뫠    B
CYCLEDOWN:  LOOP CYCLEDOWN       ;প  ᨣ 
            DEC  DX              ;㬥蠥 稪 横
            JNZ  NEXTCYCLE       ;塞 横  DX  0
   2.2.5   ⮭.

     ⮬  ࠧ   ஢ 楯  㪮,
  祬 㣨  ;  ᫥饬 㤥 
 믮   ,    㣮 ࠡ⮩.
K  祬 㣨  ,    뢮 
 ந ᯥ樠 㪮 䥪;    
 㣮 ࠡ⮩,   ந 㪮 䥪.
    㪮 ப    魥 -
⥩, ।⠢塞 ᨪ.  ஥  ப 㪮   -
ᥬ ॡ 让 ࠡ.    ᯮ짮  
  ⮤ 樨 㪠, ।  [2.2.2]   [2.2.3].
  ⮤     ஢    ⮭  祭
 ६, ⥬ ᫥騩  ..  K 㪮 ப
ନ   ப ,    ᮤন -
  ᫥⥫ ⮭,  㣠 ࠭  ⥫쭮  (
᫮,  ॡ ࠧ  ⥫쭮).   த⥫쭮
砭  ।   ᯮ짮 稪  ६  ⮪
BIOS [2.1.6].

   ᮪ ஢.

   ॠ ᨪ PLAY ।⠢ 訥 .  -
  ᮯ஢ ப , ६蠭   ଠ樥  
⮬,      ᯮ. H 뢠 㪢-
 A - G  ᫥騬     .  -
  #  +,     ᮬ (-).   PLAY
"CC#D"  PLAY "CD-D" ,   ᯮ짮  
  祭   .   ன ᯮᮡ  
⮨   ᫥    0  84, 祬 0  ᮮ-
 ⢨ 砭,    ᫠  1  84 ᮮ⢥
84  ⠬ ᥬ ⠢, 稭 ᭨. H  ।-
⢮ 㪢 N: PLAY "N3N72N44".
   ⨬  -  ᥬ  ⠢,      
  C()  B().  ⠢ ஭㬥஢  0  6   
ࢮ ⠢ ᮮ⢥  ⠢  3.  ⠢  
     ,   ⠢  ப 㪢  O,  
ன ᫥  ⠢.  ᫨   뫮 砫쭮 ⠭,
  ᯮ ⠢ 4.   PLAY "O3CO4CO5CO6C"  뢮
  ᫥⥫ ⠢  .   㣮  ᯮᮡ 
⠢  ⮨  祭  ப ᨬ >   <,  
४ ⮭     ⠢, ᮮ⢥⢥.  
PLAY "O3C>C>C>C" ਢ  ⮬  १,   ।騩.
   ⥫쭮 ᯮ  ⠪      
⠢  , ஬ । 㪢 L.   -
騥   ᯮ  ⮩ ⥫쭮    ,
   㣮  .  K -  ᫮  1  64,
祬  1 ᮮ⢥ 楫 ,  64 - 1/64.   L4 ᮮ-
 ⢥.     ᯮ  ॣ㫨
 ⥬,  ⮨  㪢 T,  ன ᫥ ᫮
 32  255, 饥 ᫮ ⢥⥩, ᯮ塞  .  ᫨
 ࠬ  㪠,   㬮砭  ⥫쭮 L4
 ⥬ 120.      ⥫쭮  ⮫쪮   
 祭  ᫥    㪢 L.   PLAY
"L4CDE16FG" ᯮ E  ⭠,   ⠫  
⢥.  ⥫쭮   ⠪ ,   ⥫쭮
.     1  64 ᫥ 㪢 P  .  P1 -
   ࢠ  楫,  P64 -  1/64.  饭  窨
᫥     䥪,        筮 -
쭮  樨:  ⥫쭮    㢥稢  .
 窠 த ⥫쭮  .
    㬮砭   7/8 㪠  ⥫쭮.  ⮡
 ᯮ﫨  ⥫쭮 (),    ப
ML. ⮡  ᯮ﫨 3/4  ⥫쭮 (⠪), 
 ப MS. ⮡   ଠ쭮 ⨫  㪠 MN.
   筮,    ⥫쭮 ணࠬ ४頥  
,   㤥  ࠭  ப.    ⮣ ⮡ 믮﫨
,  ᫥騥  ஬ PLAY,  ப ᯮ﫠  
䮭 ०,    ப  MB.   ⠭ -
쭮 樨  MF.
   H,    PLAY  ᯮ ப  
 ப.      ,     ᯮ塞 ப
    筠 ப ६,  ⥬  
६   맢  ப ନ஢  -
  PLAY.   Hਬ,  ᫨ S$ =  "EEEEE",       PLAY
"CDXS$;FG"  E 㤥 ७ 5 ࠧ. ⬥⨬,   -
  ।⢮ 㪢 X,    ᫥ 窠
 ⮩ (;).  (  㥬  ணࠬ  ਬ 㣮
⮤, ᯮ騩 ६ VARPTR$ - ⠫ .  㪮⢥
 ᨪ).
    ਢ  ਬ  ᯮ      誨
ᮢ.   ப ᭠砫 ⠭ ⨫ ᯮ ,
⥬ ⥬  砫쭠 ⠢,  , ,  , 㧠, 
  ᠬ  ,   ⭮ 浪.  ஡  ப
祭 ᪫⥫쭮  㤮⢠ ணࠬ - ᨪ -
 .

   100 PLAY "ML T40 O3 ECD<G P32 G>DEC"

      㪠 PCjr    
PLAY  . -, ᪠ ࠬ V, ⠭-
騩  ஬.  ࠦ V5 ⠭  (  )
஬  ஢ 5. ⨬   0  15, 祬 
㬮砭   8.  0   .  -,  
  PLAY   ६ ᯮ  㪮
ப.     ப   ணࠬ ப, ࠧ-
  묨.   ⮣ ⮡   ᯮ짮
  ᯥ樠  ᢮⢠,     ।⥫쭮  ࠧ
譨     SOUND ON.

   100 SOUND ON
   110 PLAY "...........","..........","............"

   H ஢.

    ਬ  樨 㪠 ᯮ  奬 ⠩
8253.     ᯮ 8 ,    䨪
 ᨫ쭮     ⮩ 楤.   
ப . ࢠ ⠭ ⥫쭮  , 
⭮ ந쭮 ਮ  প  (  ਮ -
প,     ⥬).   ப  ᮤন  
  8 ;    祭      饭  ॣ
   2 奬 8253  ᯮ  ⮭.
 ப ᮤন      ஢  1  8,
  ᮮ⢥  쬨 ⠬.   ப  蠥
 0FFH,   㦨  ਧ    . 楤
  ⠥  ।  ,  室  ᮮ⢥
  頥    2. ⥬ ⥫쭮  ⮩ 
頥   稪 横 প,  ᯮ  稪
६ ⮪,   প  砥,   室  -
⪥ ᫥饩 . H . 2-5  ࠡ ⮩ 楤.

;--- ᥣ 
BEAT        DB   10,9,8,7,6,5,4,3,2    ;⥫쭮 
FREQUENCY   DW   2280,2031,1809,1709   ;⠡ 
            DW   1521,1353,1207,1139   ;
MELODY      DB   1,2,3,4,5,6,7,8,0FFH  ;  

;---樠
PORT_B      EQU  61H
COMMAND_REG EQU  43H
LATCH2      EQU  42H
            IN   AL,PORT_B      ;砥 ⥪騩 
            OR   AL,00000011B   ;ࠧ蠥   ⠩
            OUT  PORT_B,AL      ;塞 
            MOV  SI,0           ;樠㥬 㪠⥫
            MOV  AL,0B6H        ;⠭   2
            OUT  COMMAND_REG,AL ;뫠   ॣ
;---ᬮਬ , 砥    頥   2
NEXT_NOTE:  LEA  BX,MELODY      ;६ ᬥ饭  
            MOV  AL,[BX][SI]    ;६  n-  ப
            CMP  AL,0FFH        ;஢ઠ   ப
            JE   NO_MORE        ;᫨ ,   室
            CBW                 ;ॢ  ᫮
   ;祭 
            MOV  BX,OFFSET FREQUENCY  ;ᬥ饭 ⠡ 
            DEC  AX             ;稭   0
            SHL  AX,1           ;㬭  2, .. ᫮
            MOV  DI,AX          ;㥬 १ DI
            MOV  DX,[BX][DI]    ;砥   ⠡
   ;稭 ᯮ 
            MOV  AL,DL          ;⮢ 訩  
            OUT  LATCH2,AL      ;뫠 
            MOV  AL,DH          ;⮢ 訩  
            OUT  LATCH2,AL      ;뫠 
;---ᮧ 欪 প
            MOV  AH,0           ; 㭪樨 ⥭ 稪
            INT  1AH            ;砥 祭 稪
            MOV  BX,OFFSET BEAT ;ᬥ饭 ⠡ 
            MOV  CL,[BX][SI]    ;६  । 
            MOV  CH,0           ;
            MOV  BX,DX          ;६ 襥 ᫮ 稪
            ADD  BX,CX          ;।塞  砭
STILL_SOUND: INT 1AH            ;६ 祭 稪
            CMP  DX,BX          ;ࠢ  砭
            JNE  STILL_SOUND    ;ࠢ - த 
            INC  SI             ;室  ᫥饩 
            JMP  NEXT_NOTE      ;
;---襭
NO_MORE:    IN   AL,PORT_B      ;砥   B
            AND  AL,0FCH        ;몫砥 
            OUT  61H,AL         ;塞 
   2.2.6  ப ⮭, ६  㣨 -
.

     ᨪ     祭  ,  ᠬ  
ਢ  ணࠬ஢  ॠ쭮 ६.  -
 ⮩  㦭  ᯮ짮  㪠 १ -
奬  8253  [2.2.3], ⠪  ⮤, ᯮ騩 奬  8255
[2.2.2],  . ⢥⢥, ⮫쪮 ப 
몠  ⮭   ந ⠪  ⮤ -  类
த 㪮 䥪  ⮬ 㯭. ᭮ 孨 ண-
ࠬ஢   ॠ쭮 ६   [2.1.7].   ணࠬ,
ࠡ騥  ॠ쭮 ६,    뢠 ⠩,
஥  ⠭  18.2 ࠧ  ᥪ㭤, ⮡  -
  稪 ६ ⮪.  ७ 楤 -
뢠 ࠢ  祭 稪 ६ ⮪   -
祭, 뢠騬 ६ 襭 樨 ⮭,   
祭  ⨣, 뢠 , 稭   㣮
⮭  ⠭ ६  砭.

   ᮪ ஢.

     ப  㪮  ६    㣨 ﬨ
      ⥩ 祭 魮    PLAY,
 ⠫쭮 㦤    [2.2.5].  H    
砫 ࠢ饩 ப MB.   ᮪饭  Music Background
(䮭 몠);  ⮣  ⮡  ⠢  PLAY ४ 
㣨 樨,   㪮 ப  㤥 -
, ⠢ MF.    ਢ ਬ  ६ ᮢ 
  ࠬ  ᯮ   (   ࠡ  ॡ
稥 ᪨ ⥩).

100 PLAY "MB T100 O3 L4;CDEFG>ABC"  'ᯮ塞  
110 LINE (10,10)-(80,80),1,BF       '६ 㥬 ࠬ

   H ஢.

   ਢ 楤  ࠧ⨥ 楤, 
 ।饬 ࠧ,  砩  ॠ쭮  ६.   ॡ
,  ९ணࠬ஢ 뢠 ⠩,  -
  [2.1.7]. H  楤  㪠뢠  -
    ⮣  㤥 믮 18.2 ࠧ   ᥪ㭤,   
,  㤥   祭 稪 ६ ⮪
BIOS. 筮,  믮 ⮫쪮 ᪮쪮 祪, 
筮, ⮡  ।,    ६  㪠  
㯨,  -  楤 ᢮   襭  㣨
.
   稪 ६ ⮪ BIOS ᯮ  ७ ⥫-
  .   室     㣮, ⥫-
       ᫮ ᮢ 稪  
祭     ⥪饬  祭.  K  ࠧ  
맮 楤 ஢  ⥪饥  祭  稪 ६
⮪,    ६  㯠,   믮
 権     , ணࠬ஢  
    2 奬 8253  ⠭  稪  -
⥫쭮.      ॡ   ࠡ⪨ ᯥ樠
砥 ࢮ  ᫥   ப.
;--- ᥣ 
BEAT        DB   10,9,8,7,6,5,4,3,2   ;⥫쭮 
FREQUENCY   DW   2280,2031,1809,1709  ;⠡ 
            DW   1521,1355,1207,1139  ;
MELODY      DB   1,2,3,4,5,6,7,8,0FFH ;   ⠡
HOLDIP      DW   0                    ; ਣ
HOLDCS      DW   0                    ; 뢠
SOUND_NOW?  DB   1                    ; 祭?
FIRST_NOTE? DB   1                    ;ࢠ ?
END_NOTE    DW   0                    ;稪  
WHICH_NOTE  DW   0                    ;㪠⥫  ⥪ 
;---樠  뢠
   ; 
   PUSH  DS                      ;࠭塞 ॣ
   MOV   AX,SEG MELODY2          ;ᥣ 楤
   MOV   DS,AX                   ;頥  DS
   MOV   DX,OFFSET MELODY2       ;ᬥ饭 楤
   MOV   AL,1CH                  ;  뢠
   MOV   AH,25H                  ;㭪 ⠭ 
   INT   21H                     ; 
   POP   DS                      ;⠭ ॣ
;
;---ணࠬ ࠡ⠥ , ﭭ 뢠 楤
;
;---  ணࠬ ⠭  뢠
   MOV   DX,0FF53H        ;⠭ ਣ
   MOV   AX,0F000H        ;祭   1CH
   MOV   DS,AX            ;
   MOV   AL,1CH           ; 뢠
   MOV   AH,25H           ;㭪 ⠭ 
   INT   21H              ;⠭ 
   RET                    ;

;--- ᠬ 뢠
MELODY2    PROC FAR
           PUSH AX        ;࠭塞 塞 ॣ
           PUSH BX        ;
           PUSH CX        ;
           PUSH DX        ;
           PUSH DI        ;
           PUSH SI        ;
           PUSH DS        ;
           MOV  AX,SS:[114]   ;६ 砫 DS  ⥪
           MOV  DS,AX         ;⠭ 
           CMP  SOUND_NOW?,1  ;㦥  ?
           JE   PLAY_IT       ;᫨ ,  室  뢠
           JMP  NOT_NOW       ;
PLAY_IT:   CMP  FIRST_NOTE?,0 ; ࢠ ?
           JE   TIME_CHECK    ;᫨ ,   ⠭ ६
;---樠
PORT_B        EQU  61H           ;।塞  ⮢
COMMAND_REG   EQU  43H           ;
LATCH2        EQU  42H           ;
              IN   AL,PORT_B     ;६   B
              OR   AL,00000011B  ;ࠧ蠥   ⠩
              OUT  PORT_B,AL     ;뫠  ⭮
              MOV  SI,0          ;㪠⥫  ப
              MOV  AL,0B6H       ;樠  2 ⠩
              OUT  COMMAND_REG,AL   ;뫠   ॣ
              MOV  FIRST_NOTE?,0    ;뢠 䫠 ࢮ 
;---饬 , 砥  , 뫠   2
NEXT_NOTE:    LEA  BX,MELODY     ;६ ᬥ饭 ப 
              MOV  SI,WHICH_NOTE ;㪠⥫  ⥪ 
              MOV  AL,[BX][SI]   ; ⥪饩  ப
              CMP  AL,0FFH       ;஢塞 ਧ 
              JE   NO_MORE       ;᫨ ,   
              CBW                ;  ᫮ ଠ
   ;砥 
              MOV  BX,OFFSET FREQUENCY  ;ᬥ饭 ⠡ 
              DEC  AX            ;稭   
              SHL  AX,1          ;㬭  2, .. ᫮
              MOV  DI,AX         ;㥬 १ DI
              MOV  DX,[BX][DI]   ;砥   ⠡
   ;稭 ᯮ 
              MOV  AL,DL         ;⮢ 訩  
              OUT  LATCH2,AL     ;뫠  ॣ 
              MOV  AL,DH         ;⮢ 訩 
              OUT  LATCH2,AL     ;뫠 
;---⮩ 横, ।騩 ⥫쭮 
TIME_IT:      MOV  AH,0          ; ⥭ 稪
              INT  1AH           ;砥 祭 稪
              MOV  BX,OFFSET BEAT  ;ᬥ饭 ப  
              MOV  CL,[BX][SI]   ;⥫쭮 ⥪饩 
              MOV  CH,0          ;
              MOV  BX,DX         ;襥 ᫮ 祭 稪
              ADD  BX,CX         ;塞   
              MOV  END_NOTE,BX   ; ६ 砭
TIME_CHECK:   MOV  AH,0          ;㭪 ⥭ 稪
              INT  1AH           ;⠥ 稪
              CMP  DX,END_NOTE   ;ࠢ  㦭
              JNE  NOT_NOW       ;᫨ ࠢ,  室
              MOV  SI,WHICH_NOTE ;, ६ ᫥ 
              INC  SI            ;㢥稢  
              MOV  WHICH_NOTE,SI ; 
              JMP  NEXT_NOTE     ;稭 ᫥ 
;---襭 楤
NO_MORE:      IN   AL,PORT_B     ;६   B
              AND  AL,0FCH       ;몫砥 
              OUT  61H,AL        ;頥 
              MOV  SOUND_NOW?,0  ;⠭ ६
              MOV  FIRST_NOTE?,1 ;
NOT_NOW:      POP  DS            ;⠭ ॣ
              POP  SI            ;
              POP  DI            ;
              POP  DX            ;
              POP  CX            ;
              POP  BX            ;
              POP  AX            ;
              IRET               ;  뢠
MELODY2       ENDP
   2.2.7   室 ⮭.

    室 ⮭ ந   뢭 -
 . ⮣   ⨣   ᨪ, ⠪  ண-
ࠬ    ஢.   㪮 䥪    ᤥ
 ࠧ⥫, ᫨   㬥 ⥫쭮 
ᥣ ⮭  襭 㪠  ᫥ 㢥稢 ⥫-
  .

   ᮪ ஢.

    ᨪ     SOUND [2.2.2]  横,
ᯮ 祭   ⮭.    室 横
 㢥稢 .    [2.2.8],  ਢ ਬ
ᯮ짮  PLAY    室.

100 FOR N = 1 TO 500 STEP 15
110 SOUND 400 + N,1
120 NEXT

   H ஢.

     ᥣ ᯮ짮 ⮤ 樨  㪠,  ࠢ塞
奬 䥩  ਥ 8255.   祭
  1  B  0  1, ᯮ   ६ ⮩
横,    [2.2.2].    砫   ⮣
横,   뫪 祭  CX, ᫥   -
.  ⮭ 蠥:

;--- 奬 ⠩
PB       EQU  61H        ;  B 奬 8255
         IN   AL,PB      ;砥   
         OR   AL,1       ;뢠  0
         OUT  PB,AL      ;頥   
;---⠭   ⥫쭮 㪠
         MOV  BX,9000    ;砫쭮 祭 稪
         MOV  DX,3000    ;⥫쭮 㪠 3000 横
REPEAT:                  ; 頥 ᫥ 横
;---⠭  
         OR   AL,00000010B   ;⠭  1
         OUT  PB,AL          ;뫠    B
         MOV  CX,BX          ;⠭ 稪  1/2 横
CYCLE1:  LOOP CYCLE1         ;⮩ 横  1000 ஢
;---  
         AND  AL,11111101B   ;뢠  1
         OUT  PB,AL          ;뫠   
         MOV  CX,BX          ;⠭ 稪
CYCLE2:  LOOP CYCLE2         ;⮩ 横
;---室  ᫥饬 横
         DEC  BX             ;㢥稢 , 㬥
         DEC  BX             ;稪
         DEC  DX             ;㬥蠥 ⠢ ⥫쭮
         JNZ  REPEAT         ;᫨ DX  0,   横
  ⮩  ⮤ ਢ  ⮬,  ᮪  ⮭  室
⥫쭮 ॥, 祬  .    ⪨ ࢠ ⠪
䥪   ⥫,     㦥,  
,   襭 ⮭  뫠  DX 訥 祭
 ᫥饬 横.
   2.2.8  㪮 䥪⮢.

   㪮  䥪  筮 ⨣  뢭  
 ⮭. 쪮 PCjr  筮   㤮  ⮩
楫 (. 㦤  [2.2.1]).  H 㣨 設  ந-
 㪮 䥪 ६  㣨 ﬨ.

   ᮪ ஢.

    魮 ᢮ ஢ SOUND  PLAY ᨪ -
 筮  ᮧ ᫮ 㪮 䥪.  H 
  ᪮஢     몠  ⮭,  
,    䥪 樨 㪠  ⨣    
⠪ ண    ⮭,      ᯥ ࠧ
⮭.  Hਬ, ࠧ饥 "ਪ"    祭
 ஬ ४祭    ⥬  ⮭, 騬 
᪮쪮 ⠢:

100 FOR N = 1 TO 100     '⠭ ⥫쭮
110 PLAY "L64 T255"      'ᠬ  ⥬
120 PLAY "O1A"           '뤠  A
130 PLAY "O5A"           '뤠 ᮪ A
140 NEXT                 '

   ᥣ  ᪮쪮  砥 :

100 FOR N = 1 TO 100     '⠭ ⥫쭮
110 SOUND 440,1          '뤠  A
120 SOUND 445,1          ' 塞 
130 NEXT                 '

㣠  孨  砥      ⮭
 ᫥⥫쭮,   ᠬ   ⠬ 
 .  H .  2-6     ᫥⥫-
.    ਭ⠬ ᯮ  孨:

100 FOR I = 1 TO 10   '᫮ ७
110 FOR J = 1 TO 6    '᫮ ࠧ ⠢
120 PLAY "MBL64T255O=J;BA#AG#GF#FED#DC#CC#DD#EFF#GG#AA#B"
130 NEXT              '   ᮪ ⠢
140 NEXT              ' ᥩ ᫥⥫쭮

   PCjr ⥫쭮  , 祬 ⠫ 設, 
ᯥ樠쭮  奬  㪠.    NOISE  
ந ⢮ 㪮, ଠ ⮣  ⠪:

   NOISE 筨, ஬, ⥫쭮

筨  -   ᫮  0  7, 祭 ண  ਢ  
⠡:
   0       ਮ᪨   ᮪ 
   1       ਮ᪨   । 
   2       ਮ᪨    
   3       ਮ᪨ ,     3
   4          ᮪ 
   5          । 
   6           
   7        ,     3
஬  ᫮   0    15,   0 ᮮ⢥ -
⢨ 㪠. ⥫쭮 㪠뢠 ᫮ ᮢ -
 ६ ⮪,  뢠 18.2 ࠧ  ᥪ㭤.

   H ஢.

     ᯮᮡ,   ᨪ   ॠ
  ᥬ, ,    । ࠧ,   -
   ணࠬ஢.  K஬ ⮣, ᥬ 
஢    ⮭,  ࢠ,  祭  ண
 祭,  ࠢ ࢠ,  祭 ண  몫-
祭.   襭 ᨬਨ  ਢ  㦦騬  -
騬 㪠. K ⭮襭  ࢠ ⠢, ᪠
50   1,  砥 㦦.  ᫨ 㢥 ⭮襭   10
- 20 ࠧ,  㦦 室    ⤥  猪騥 㪨. 
  砥   奬 䥩   -
ਥ 8255,    孨      [2.2.2].  ਬ
㦦:

NUMBER_CYCLES  EQU  300     ;᫮ ४祭 
FREQUENCY1     EQU  50      ;६,   祭
FREQUENCY2     EQU  3200    ;६,   몫祭
PORT_B         EQU  61H     ;  B 奬 8255
            CLI                  ; 뢠
            MOV  DX,NUMBER_CYCLES;DX ⠥  ⮭
            IN   AL,PORT_B       ;砥  
            AND  AL,11111110B    ;⪫砥   ⠩
NEXT_CYCLE: OR   AL,00000010B    ;砥 
            OUT  PORT_B,AL       ;뫠 
            MOV  CX,FREQUENCY1   ;প  ࢮ 
FIRST_HALF: LOOP FIRST_HALF      ;
            AND  AL,11111101B    ;몫砥 
            OUT  PORT_B,AL       ;뫠 
            MOV  CX,FREQUENCY2   ;প  ன 
SECND_HALF: LOOP SECND_HALF      ;
            DEC  DX              ;㬥蠥 ᫮ 横
            JNZ  NEXT_CYCLE      ;᫨ 0,   
            STI                  ;ࠧ蠥 뢠

  ᮧ 猪 㪮  ᯮ짮   , 
  祭 FREQUENCY2  稭  40000.
   2.2.9 ६  ࠧ 㪮.

   쪮 奬   㪠,    PCjr, -
  ६ ஢ ࠧ 㪨 (.   㦤  
[2.2.1]).  ᥬ  ꥤ  ᯮᮡ -
樨  㪠,   ᮧ  ६ 樨  
ࠧ 㪮.  ७   ᨣ ਢ  ᫮-
  ଥ 㪮 .  K   㪮    
஬, ⮬  १  砥  ᪮॥ 㦦, 祬
 ࠧ .  ਥ ॠ쭮  ⮫쪮  ᮧ
㪮 䥪⮢.

   H ஢.

   H  ꥤ  ⮤  樨 㪠, 
 [2.2.2]  [2.2.3]. H筨  १  2 奬 ⠩-
.  ⥬ 㫨  室  ,      1  B
奬  䥩  ਥ.  ஥ ⢨  ।
த⥫쭮 㪠. H  몫 奬 ⠩
 襭.

;---稭  㪠 १  2 ⠩
      IN   AL,61H          ;砥    B
      OR   AL,3            ;⠭ 訥  
      OUT  61H,AL          ;뫠  ⭮
      MOV  AL,10110110B    ;楯窠   ॣ 8253
      OUT  43H,AL          ;뫠  ॣ
      MOV  AX,600H         ;稪   2
      OUT  42H,AL          ;뫠 訩 
      MOV  AL,AH           ;⮢ 訩 
      OUT  42H,AL          ;뫠 訩 
;---㥬   奬 8255
NUMBER_CYCLES  EQU  9000           ;᫮ ४祭
FREQUENCY      EQU  150            ;প   横
               CLI                 ; 뢠
               MOV  DX,NUMBER_CYCLES  ;DX ⠥  ⮭
               IN   AL,61H         ;砥  
               AND  AL,11111111B   ;⪫砥   ⠩
NEXT_CYCLE:    OR   AL,00000010B   ;砥 
               OUT  61H,AL         ;뫠   
               MOV  CX,FREQUENCY   ;প  1/2 横
FIRST_HALF:    LOOP FIRST_HALF     ;
               AND  AL,11111101B   ;몫砥 
               OUT  61H,AL         ;뫠   
               MOV  CX,FREQUENCY   ;প  1/2 横
SECOND_HALF:   LOOP SECOND_HALF    ;
               DEC  DX             ;塞 稪 横
               JNZ  NEXT_CYCLE     ;᫨ 0,   
               STI                 ;ࠧ蠥 뢠
;---몫祭  2 奬 ⠩
               IN   AL,61H         ;砥  
               AND  AL,11111100B   ;뢠 2  
               OUT  61H,AL         ;뫠  ⭮




                      3. K.

    1. ࠢ ன.

   K  ᮤন ⥫᪨ ய,  -
ਭ  ⨥        뤠 ᪠-   A
奬  䥩    ਥ [1.1.1],  ᯮ  
⥬ .  -  ⭮ ᫮, 訥 7 ⮢
ண ।⠢ 䨪樮 , ᢮ 
.  ᪠- ਢ  [3.3.2]. H  設,
஬  AT, 訩     ⮬, 뫠   
( = 1,  )   ᢮  ( = 0,  ᢮-
).   Hਬ, 7- ᪠-  B - 48,  110000  
筮 ⥬. K   ,    A -
   10110000,    ⨫ -  00110000.  
ࠧ,  ⨥      ॣ  -
奬 8255.    ࠧ 奬 8255 뤠  ⢥ত
ய . AT ࠡ⠥  -㣮, -
           ᪠-,   ।  
 F0H,   ᪠.
   K ᪠- 뤠      A,   뢠 뢠
 (INT 9).   ⠫쭮 ४頥 ᢮ ࠡ
 믮 楤,    ᪠-.  K 㯠
     ᤢ  ४⥫,     
뢠  .    ⠫  ᪠- ࠭-
ନ   ᨬ,  ᫮,     -
⨨  ( ⨢ 砥, ᪠- 뢠).  K-
, 楤 ᭠砫 । ⠭  ᤢ  ४-
⥫, ⮡  ࠢ쭮       ( "a" 
"A"?).  ᫥ ⮣   頥    ,
    , ᯮᮡ   15 -
  ᨬ,  ணࠬ ᫨誮 , ⮡  ࠡ
. H . 3-1  ,  室 ⨥  
। ⥬,     ணࠬ.
       ⨯   ᨬ,   ASCII   ७
.  K ASCII -   ᫠,  ᮮ⢥ -
७      ASCII  IBM PC,    ਢ  
[3.3.3].  IBM PC    砥   ᨬ 饩
設,   ⠪  ᯥ樠 㪢  ᨬ  ᥢ䨪.
ASCII   ⠪  32  ࠢ  ,   筮
ᯮ   ।  ਩ ன⢠,   
뢮  ᨬ  ࠭;      ᮮ-
騩  ᨬ,      뢥   ᯫ,  
ᯮ짮 אַ 樨 ᯫ  [4.3.1]. (-
 , ⮫쪮  128 ᨬ  騬  ᨬ-
 ASCII, ⠪   ASCII  -    ॢ   ਪ᪨
⠭     ଠ樥.  H ணࠬ  筮
   ASCII, ⮡ ⫨    㣨 ᥫ. H-
,  "ASCII 8" ⭮   "Backspace",    ६  
"8" -  , ன ᮮ⢥ ASCII 56).
   ன   ,  ७  , ᢮ 蠬 
  ,    ।⠢饣   ᨬ
ASCII, ⠪  㭪樮   樨  襩
Alt.   ७    2 , 祬    
ᥣ ASCII 0. ன   -    ७  , ᯨ᮪
  ਢ    [3.3.5].  Hਬ,   0:30  ।⠢
Alt-A.  H砫    ணࠬ ਭ  
  ASCII  ७ .
     ᪮쪮  権 ,  믮  ᯥ-
樠 㭪樨    ᪠-.   樨 -
 <Ctrl-Break>, <Ctrl-Alt-Del>  <PrtSc>,  <SysReq>  AT
 <Ctrl-Alt-५ , -५  ࠢ, -CapsLock, -Ins> 
PCjr.   ᪫祭 ਢ  ࠭ ।। १-
⠬ [3.3.2].  ⠫     -
  襩 ணࠬ  ᫨   ᯥ樠쭮 祭,
᪠ ᤢ  ,    ணࠬ  ᮤঠ
, ᯥ稢騩 ⨦ ⮣ 䥪.
   K  樮 ⥬ ।⠢ ࠧ  -
  ⥭     ,  ।⢠ 
祭 ࠧ 楫 ப.  ᪮  楤  
 ࠪ᪨ ,       ,  ࠪ᪨
᫥  ᢮ 楤 ࠡ⪨    
⮬     祭  ਬ஢ ணࠬ஢-
   ஢.  ᮤন 㦤   ⮬,
 ९ணࠬ஢ 뢠 .
   3.1.1 ⪠  .

   ணࠬ       ,  । ⥬, 
뤠     , ᪫ ⥬ ᠬ  ஭  
,    ⮬  ६    . 
    15 ⨩  , ᨬ   ⮣,
   묨  ASCII  塠묨 -
७묨  .   ࠧ,   ⢥    
       .      
  ᮤন  ASCII,  ன - ᪠- .  
७     ᮤন  ASCII  0,  ன 
७ .   筮 ᮢ  ᪠- -
,   ᥣ, ᪮       -
  蠬 ᤢ  樨 ࠧ .
    ஥  横᪠ ।,  뢠  ⠪
஬ FIFO ( 襫 -   襫).  K    
  뢭  ᮢ .     
।  祩  ,    ࠭  "砫 ப" 
.  ⮣  㪠⥫ ࠭ 樨   墮
ப  ᨬ, 室饩    ⥪騩  .   H
      ,  ᫥   墮⮬ (
   )  ᮮ⢥⢥  㪠-
⥫ 墮 .  ᫥ ⮣,    室  ୮
࠭⢮,    ᨬ த ⠢,  稭  
ᠬ 砫 ୮ ; ⮬   樨, 
 ப    訩 , 祬 墮. ᫥ ⮣
  ,   ᨬ ,  ⮬
뢠   뤠 㤮 १ .  H .   3-2
   䨣樨   .
     ६  㪠⥫     ⠭   -
  ᨬ, 㪠⥫  墮 ⠭     -
   ᨬ.  K   㪠⥫ ࠢ,  
.   ⮡  ࠧ  15 ᨬ ॡ  16-  
, 2   ன  ᥣ  ᮤঠ    ⪨
(ASCII  13)   ᪠-  <Enter>, ࠢ 28.     
 ।⢥  ।   ப ᨬ. 32
  稭   0040:001E. ⥫   
墮 ᯮ  ᠬ 0040:001A  0040:001C, ᮮ⢥⢥-
.      㪠⥫ ⢥ 2 ,  ᯮ  ⮫쪮
訩 . 祭 㪠⥫   30  60,  ᮮ-
     BIOS.  ⪨  
 ⠭ 祭 祩 0040:001A ࠢ 祭 祩-
 0040:001C.
   ⬥⨬,   ணࠬ   ⠢ ᨬ  
,  ப ᨬ  ⪨  ᮮ⢥⢥
 祭 㪠⥫.  ᫨  த ࠢ ࠧ
।  襭 ணࠬ,    ࠢ  MS DOS
 ᨬ  ⠭       ⮬᪨ 㦥
㣠 ணࠬ.

   H ஢.

    ᨪ  祭   祭 㪠⥫ 
ᯮ  PEEK  POKE:
100 DEF SEG = &H40        '⠭ 祭 ᥣ
110 POKE &H1C, PEEK(&H1A) 'ࠢ 㪠⥫

 ⮤  ᠬ 訩.   H ணࠬ  ᮧ
  -    㣮  ,  ஬  ⮣,  ᥣ
 ,  ।  ப 110 ந -
 , ஥  㪠⥫ 墮.   ⨬ -
稭  ⠢  㪠⥫      .   ⮣,
      ,   㤥 饭 ᨬ
ASCII 0, 뢠騩,   :

100 IF INKEY$<>"" THEN 100   '६ ᫥饥 ᫨  

   । ஢.

   㭪  0C 뢠 21H 믮   㭪権   
 1, 6, 7, 8  A (ᠭ  ⮩ ),  । ⨬
    .  H      㭪樨
  AL ( ⮬ ਬ - 1):

;---⪠  ।   
   MOV  AH,0CH    ;롨ࠥ 㭪 DOS 0CH
   MOV  AL,1      ;롨ࠥ 㭪  ᨬ
   INT  21H       ;⨬ ,  

   H ஢.

   K   ਬ ᮪  ஢   祭 㪠⥫ 
墮 ࠢ 祭 㪠⥫  .    ﭨ
뢠  頥  뢠   ६ 䨪樨
㪠⥫:

;---ࠢ 祭 㪠⥫    墮
   CLI                   ;頥 뢠
   SUB  AX,AX            ;塞 ॣ
   MOV  ES,AX            ; ᥣ -  砫 
   MOV  AL,ES:[41AH]     ;६ 㪠⥫   
   MOV  ES:[41CH],AL     ;뫠   㪠⥫ 墮
   STI                   ;ࠧ蠥 뢠
   3.1.2 ஢ઠ ᨬ  .

     ஢     ,  㤠 ᨬ
  .    ᯮ    㪠⥫, 
⬥   墮 । ᨬ, 室    
⥪騩 . K  祭    㪠⥫ ࠢ,  
.   H  ࠢ ᮤন 祥  0040:001A  
0040:001C.  (H  ஢ ᨬ, 室騩  
।, ᪮  ࣠   横᪮ । 
   ﭭ  [3.1.1].)

   ᮪ ஢.

   H  ᯮ짮  PEEK  祭 祭,
 ⥬ ࠢ :

100 DEF SEG = &H40    '⠭ ᥣ  砫 
110 IF PEEK(&H1A)<>PEEK(&H1C) THEN ... '...   

   । ஢.

   㭪 0BH 뢠 21H 頥 祭 0FFH  ॣ
AL,      ᮤন      ᨬ 
祭 0,   :

;---஢ઠ  ᨬ  
   MOV  AH,0BH           ; 㭪樨
   INT  21H              ;뢠 뢠 21H
   CMP  AL,0FFH          ;ࠢ  0FFH
   JE   GET_KEYSTROKE    ;室 ᫨   

   㭪 1 뢠 BIOS 16H ।⠢   ,
, ஬ ⮣, 뢠  ᨬ   .   (ZF)
뢠,  ᫨  ,  ⠭, ᫨   
 ᨬ.   ᫥ 砥  ᨬ, 室饣 
 , 頥  AX,  ᨬ    㤠.
 AL 頥   ᨬ      ᨬ ASCII,
 ASCII 0  ७ ,  ⮣   -  AH.

;---஢塞 稥 ᨬ  
   MOV  AH,1             ; 㭪樨
   INT  16H              ;஢ઠ  ᨬ
   JZ   NO_CHARACTER     ;室 ᫨ ZF = 1
;--- ᨬ - ᬮਬ 
   CMP  AL,0             ; ७ ?
   JE   EXTENDED_CODE    ;᫨ ,    

   H ஢.

   K   ਬ ᮪ ஢  ࠢ 㪠⥫:

;---ࠢ 㪠⥫    墮
   MOV  AX,0           ;⠭  ᥣ
   MOV  ES,AX          ; 砫 
   MOV  AL,ES:[41AH]   ;६  㪠⥫
   MOV  AH,ES:[41CH]   ;६ 㣮 㪠⥫
   CMP  AH,AL          ;ࠢ 
   JNE  GET_KEYSTROKE  ;᫨ ࠢ,   楤 
   3.1.3   ᨬ   뢮   ࠭.

   筮   ᨬ 뢮  ࠭, ⮡ 뫮 ,
 ⠭.  H   ⮬᪮    ࠭ -
⥫쭮.  Hਬ, 롮 㭪    .   
 ᭠砫 ஢   ᨬ   訡 । 뢮
 ࠭.   ⭮,  ணࠬ, ࠡ뢠 ७-
 ,    ⮬᪮  , ⠪   ⮬
       (ASCII 0) 㤥  뢮    ࠭,
⠢ ஡  ᨬ.

   ᮪ ஢.

   㭪 ᨪ INKEY$     ନ.  頥
ப    1   ᨬ ASCII    2    
७ . INKEY$    ,   ,
   饭  横,  ஬  ⨥ .
 ࠡ⠥,    INKEY$,  ⥬ ᢠ 頥-
   ப ६,   砥 C$.  ᫨    
뫠 ,  INKEY$  頥  㫥  ப, ..  ப
  ᨬ,  砥   祪,
 묨 祣  ("").     INKEY$ 頥
"" - 横 : 100 C$=INKEY$:IF C$="" THEN 100.
    ਢ ਬ ।,   ᨬ
롨    ⥩        롮 ਢ 
믮  ।  楤 ணࠬ.  롮   
ᤥ      A,  B, C ... ( 1- 
ASCII)  Alt-A, Alt-B, Alt-C ...  ( 2-  ७
).    ᯮ  ᯮ  㭪  LEN, 
। 뫠  ப   1  2 .   砥 
ASCII  ஢  IF...THEN  ࠧ 稭 ஢ 
 뫠 , 뫠 ணࠬ  ᮮ⢥  -
.  砥 2-    ࠢ  । ⤥쭮
楤.   ⮩ 楤 㭪 RIGHT$ 㡨ࠥ  ᨬ,
  ࠢ     ⮫쪮  ⬥砥  ७  .
⥬ ᯮ 㭪 ASC  ८ࠧ ப   ᨬ-
쭮   ᫮.  ,  ,     ஢
IF...THEN ஢ 稢襥 ᫮  ᮮ⢥騥  Alt-A,
Alt-B  ..

100 C$ = INKEY$:IF C$="" THEN 100   '  
110 IF LEN(C$)=2 THEN 500           '᫨ .  -  500
120 IF C$="a" OR C$="A" THEN GOSUB 1100 ' A?
130 IF C$="b" OR C$="B" THEN GOSUB 1200 ' B?
140 IF C$="c" OR C$="C" THEN GOSUB 1300 ' C?
 .
 .
500 C$=RIGHT$(C$,1)        '砥 ன  . 
510 C=ASC(C$)              '८ࠧ㥬   ᫮
520 IF C=30 THEN GOSUB 2100  ' Alt-A?
530 IF C=48 THEN GOSUB 2200  'Alt-B?
540 IF C=46 THEN GOSUB 2300  'Alt-C?
⬥⨬,    ப 120 ( ᫥)  ⠪  ᯮ짮-
 ᫮ 祭  ASCII:

120 IF C=97 OR C=65 THEN GOSUB 1100

K筮  ᭠砫  ८ࠧ  C$   楫 ᫠, 
 ᤥ  ப 510.  ணࠬ,   ॡ -
 楯窠 ⠪ ஢,     ,  C
⠪  ࠧ,  ⮡  ᥣ ᮮ⢥⢮   孥,
  ॣ.  砫  㦭  ⮫쪮 ஢,  
ASCII  C$  室  ࠢ쭮 .   ⥬  ⠭,
    91, ⮣        ᨬ 孥
ॣ.   ᫨  ⠪,    ॢ     ॣ
 32.   ⨢  砥,  ⠢   .  ᫥
⮣  㤥 筮  ⪮ , ⠪   IF
C=97 THEN ...   ⮩ 楤:

500 C=ASC(C$)         '砥 ASCII  ᨬ
510 IF NOT ((C>64 AND C<91)OR(C>96 AND C<123)) THEN ...
520 IF C<91 THEN C=C+32  'ਢ    ॣ
530 IF C=97 THEN ...     '... 稭 ஢ 祭

   । ஢.

   㭪樨 7  8 뢠 21H   ᨬ, ᫨ 
 ,    ,   뢮  ࠭.
 ⮬ 㭪 8 । Ctrl-Break  ( 樨 楤
ࠡ⪨ Ctrl-Break[3.2.8]),  㭪 7  ॠ  . 
  ᨬ  頥   AL. K AL ᮤন ASCII
0,  祭 ७ .   뢠   AL  -
 ன  ७ .

;---砥  ᨬ
      MOV  AH,7           ; 㭪樨
      INT  21H            ;  ᨬ
      CMP  AL,0           ;஢ઠ  ७ 
      JE   EXTENDED_CODE  ;᫨ ,   ᮡ 楤
       .                  ;,  ᨬ  AL

;---楤 ࠡ⪨ ७ 
EXTENDED_CODE:  INT  21H        ;६ ன  
                CMP  AL,75      ;஢塞  "५-"
                JNE  C_R        ;᫨ ,  ᫥. ஢ઠ
                JMP  CURSOR_LEFT;᫨ ,   楤
C_R:            CMP  AL,77      ;ࠢ   ..

   BIOS ᯥ稢 楤,   ।⠢   -
,   㭪樨 MS DOS.   0  AH  맮 -
뢠 16H. 㭪   ᨬ  頥   AL.
 ⮬ 砥  ७  ࠡ뢠    뢠-
. ᫨  AL  ᮤন  0,      AH 㤥 ᮤঠ 
७ .    ࠡ뢠 Ctrl-Break.
;---  
   MOV  AH,0       ; 㭪樨  
   INT  16H        ;砥  
   CMP  AL,0       ;஢ઠ  ७ 
   JE   EXTENDED_CODE   ;᫨ ,   ᯥ. 楤
    .                   ; ᨬ  AL

;---楤 ࠡ⪨ ७ 
EXTENDED_CODE:  CMP  AH,75   ;६ ७   AH
                             ; ..
   3.1.4       ࠭.

         ⥪,   ᨬ 筮  -
  ࠭.   ⮬ ⠪  ᨬ   ⪨ 
  ॢ   ᮮ⢥騥 ६饭  ,   
ࠦ  ASCII ᨬ   .  뤠  ந-
室   ⮩ 樨,  ।⥫쭮  ⠭   
⥪ ⮬᪨ ७   ᫥ ப  ⨦-
   ⥪饩.  ७  ᫥ ப  ॡ  ᯥ-
樠쭮 , ᪮  ᨬ   ᫥ 
୮   ᯫ,  ।⠢  ᥡ  -
 ப,   25 ப ᯫ.

   ᮪ ஢.

    ᨪ  墠  ᨬ   -
 INKEY$,      [3.1.3].   ⥬    뢥 
࠭, ० 祬  ⠪  ᯮᮡ ᫥騩.  뢮-
  ᯮ짮     PRINT,  ஬ POKE
אַ    ᨬ  ,  ᯮ  ⮡ࠦ  
,    [4.3.1] ( 稭  ᥣ -
  &HB000   ஬    &HB800 -    梥⭮
).  ᯮ짮  PRINT   ⠢  
稥,  㤥 ⮬᪨    -
. H ਢ ਬ ᯮ짮  ⮤.   ⮬
  ஢    ࠢ騥 ᨬ.  
ᨬ ନ   ப   ६ KEYSTROKE$.

100 ' ⮤ ᯮ騩 PRINT
110 LOCATE 10,40           '⠭    10,40
120 KEYSTROKE$=""          '⪠ ६
130 C$=INKEY$:IF C$="" THEN 130  '  ᨬ
140 KEYSTROKE$=KEYSTROKE$ + C$   '   ६
150 PRINT C$;              ' ᨬ
160 GOTO 130               'ਥ ᫥饣 ᨬ

100 ' ⮤ ᯮ騩 POKE
110 DEF SEG = &HB000       '⠭ ᥣ  
120 POINTER = 1678         '㪠⥫   10,40
130 KEYSTROKE$=""          '⪠ ६
140 C$=INKEY$:IF C$="" THEN 140  '  ᨬ
150 KEYSTROKE$=KEYSTROKE$ + C$   '   ६
160 POKE POINTER,ASC(C$)   '饭 ᨬ  
170 POINTER=POINTER + 2    'ᤢ 㪠⥫  ᫥騩 ᨬ
180 GOTO 140               'ਥ ᫥饣 ᨬ

   । ஢.

   㭪  1  뢠 21H   ᨬ,  ᫨  
 ,  ⥬  뢮    ࠭  ⥪ 
.   ࠡ뢠  Ctrl-Break, ⮬   믮
楤 ࠡ⪨ Ctrl-Break [3.2.8].   ᨬ -
頥  AL.   ७  AL ᮤন ASCII 0. 
祭  AL ண    ७     
뢠.
;---祭  ᨬ
   MOV  AH,1           ; 㭪樨
   INT  21H            ;  
   CMP  AL,0           ;७ ?
   JE   EXTENDED_CODE  ;᫨ ,   ᯥ. 楤
    .                  ; ᨬ 室  AL

;---楤 ࠡ⪨ ७ 
      INT  21H            ;砥  AL  
      CMP  AL,77          ;஢ઠ  "-ࠢ"
      JNE  C_R            ;᫨ , ஢ઠ ᫥饣
      JMP  CURSOR_RIGHT   ;᫨ ,   楤
C_R:  CMP  AL,75          ;...  ..

    㭪    <ESC>.  K ⠡-
樨   ଠ쭮.  K  ᤢ 
    ,  ᨬ, 室騩  ⮩ 樨  
ࠥ. K <Enter>  뢠 ६饭   
 ⥪饩 ப ( ⮬᪮ ॢ ப).
   3.1.5 ਥ ᨬ  .

   H  ணࠬ,  ࠡ騥  ॠ쭮 ६   
⠭    ;   ਭ ᨬ 
  ⮫쪮   ,   㤮  ண-
ࠬ. Hਬ, ⢨   ६   
  ⠭   ⢨  ࠭  ஢  ண-
ࠬ. H,   ஢     -
, ᯮ ⮤, ᠭ  [3.1.2].

   ᮪ ஢.

   H  ᯮ짮 INKEY$,     横:

100 C$=INKEY$          '祭 ᨬ
110 IF C$ <> "" THEN...'᫨ ᨬ ,  ...
120 ...                '  ᨬ  

   । ஢.

   㭪  6 뢠 21H -  ⢥  ᯮᮡ  
 ᨬ  .  㭪     ࠭ 
  ᯮ Ctrl-Break.  । 맮 뢠  DL  
 饭 0FFH.  ⨢ 砥 㭪 6 㦨 ᮢ襭-
  ⨢  楫 - ⠥   ⥪饩  樨  
ᨬ, 室騩  DL.      ⠭   1, ᫨
  . ᫨ ᨬ ਭ,   頥  AL.
K ASCII 0    ७      祭 
 뢠   ७.

           MOV  AH,6           ; 㭪樨 DOS
           MOV  DL,0FFH        ;   
           INT  21H            ;祭 ᨬ
           JZ   NO_CHAR        ;室 ᫨  ᨬ
           CMP  AL,0           ;஢ઠ  ७ 
           JE   EXTENDED_CODE  ;᫨ ,   ᯥ. 楤
           ...                 ;  AL  ASCII

EXTENDED_CODE:   INT 21H       ;砥  ७ 
                 ...           ;   AL
   3.1.6 祭 ப ᨬ.

     ᨪ   MS DOS ।⠢ 楤  ਥ  ப
ᨬ.    ⮬᪨    楤   
ᨬ,  ᠭ  । ࠧ,    
⪨, ᨣ饣  砭  ப. K筮  
⢥  , 筠  ਥ  ᨬ ப,  
 뢠    ப  ⮣, ⮡ ⤥
 ப  㣮.      ਯ஢ -
,        ⮢, ᮤঠ 
/  ப.  ᨪ    ਯ ப
ᮤঠ  ப,   ᠬ  ਯ  ࠭    ᨢ
⤥쭮  ப.   ப ࠭  쥬  3--
 ਯ.  㣮 ஭, DOS ࠭  ப אַ
  砫 ᠬ ப   ணࠬ 筮  
ப  .

   ᮪ ஢.

   ᨪ  ਭ    ⮬᪮    ࠭.
         宬,  ⠪      믮
஥ 㭪樥  ப INPUT. INPUT ⮬᪨ ᮡ-
ࠥ  ᨬ, 뢮   ࠭   祭.  
⨨  <Enter>   蠥  祭 ப -
  㪠 ६ (뫠 襩 <Enter>  
ASCII 13     ப).   INPUT ᪠ 
।஢  ப,  ।⠢塞  DOS,  ⮬  ⪨
  ࠢ ।   ப. INPUT ਭ ᫠
   ப  ⮬᪨ ८ࠧ   ᫮  ,
᫨   㤥 㪠    ᫮  ६. H,
INPUT   뤠  ࠭ ப, 訢 짮⥫
 ॡ㥬 ଠ樨.     ப      254
ᨬ.  ᫨   ,  譨 ᨬ  .
᭮ ଠ ⮣    INPUT  "", _६.
 ᠭ ⮣  .  㪮⢥  ᨪ.

110 INPUT "Enter your name: ",NAME$  'ਭ   ப
120 INPUT "Enter your age: ",AGE%    'ਭ   ᫮

     INPUT  ⥭,      ப  
 ७ , ⠪    ࠢ ஬
  ࠭  ⥪⮢ ।.   ⮬  砥  ॡ
ᯮ짮 㭪  INKEY$    ਥ   ᨬ, ⥬
஢    ७ , 뤥 ᨬ  ࠢ
஬, ⠪    ⪨,   ⮫쪮 ᫥ ⮣ 뢮-
    ࠭  ᨬ,  ᫥ 뢮.     ⮬
ࠢ騥 ᨬ ⠪       ப
६.  ⮢ 䠩 ।⠢ ᮡ  ⠪ -
 ६.  㭪  [3.1.8]    楤  
,  ன 㭪 INKEY$ ᯮ 㪠  -
.
   । ஢.

   㭪 0AH 뢠 21H    ப  
254 ᨬ, 뤠   ନ.   楤  த
 㯠  ᨬ      ,     
  ⪨.  DS:DX 㪠뢠   ,  㤠  
 饭 ப.  室    ⮩ 樨 
ᮤঠ ᫮ ⮢, ⢮  ⮩ ப. ᫥ ⮣ 
ப , ன     ᫮ ॠ쭮  ᨬ-
.  ப 稭  쥣 .
   H  ⢥  筮   ப 㦭   
   ਯ ப      -
 ⪨. K  ⠭ ᨬ  ப 
ࢮ ,     1   ⪨. K
 ⪨ - ASCII 13 -   ᫥ ᨬ -
,    뢠   १,   㭪 頥
 ன  ਯ ப.   ࠧ,   祭
50-ᨬ쭮 ப   ⢥  53     
   ASCII 51.  ᫥  50 ᨬ ன  㤥
ᮤঠ ASCII 50,  53-  ⢥  - ASCII 13.

;--- ᥣ 
STRING   DB   53 DUP(?)     ;  ப 50 ᨬ

;---祭 ப  
         LEA  DX,STRING     ;DS:DX 㪠뢠   ப
         MOV  BX,DX         ; BX ⮦ 㪠뢠  ப
         MOV  AL,51         ;⠭  ப (+1  CR)
         MOV  [BX],AL       ;뫠  1-  ਯ
         MOV  AH,0AH        ; 㭪樨
         INT  21H           ;砥 ப
;---஢ઠ  ப
         MOV  AH,[BX]+1     ;⥯   AH

    ⮩ 楤  ᯮ짮  ।஢
ப MS DOS.  H⨥    "५-" 㤠
ᨬ  ࠭,  ⠪  頥   .  ⠥ -
  ⠡樨,  ७   ,    ப
᪠ (   ⪨, ஬  ।-
 㣮 ᨬ).  H ନ  ⨦ ࠢ  
ப ७  ᫥  ப,   ⨦ ࠢ
  㣫 ࠭ ᤢ  ப .   K  
 ᨬ, 祬 ⢥   ப,  譨 ᨬ
  砥 㤮 .
   MS  DOS  ᯥ稢   㣮 ᯮᮡ 祭  ப,  
஬  뢮   ନ.  㭪 3FH 뢠 21H
-  㭪  饣 祭,   ᥣ ᯮ-
    ᪮ .    ॡ  ।।
ਯ 䠩 (file handle),    ᫮,
ᯮ㥬  樮  ⥬   祭  ன⢠
/뢮.   ᯮ ਯ 0   
  饭  BX.    DS:DX ,  ஬  
室 ப,   CX -  ᨬ  ப  맮
㭪:
;---⥭ ப  
   MOV  AH,3FH            ; 㭪樨
   MOV  BX,0              ; ਯ 䠩
   LEA  DX,STRING_BUFFER  ;㪠⥫    ப
   MOV  CX,100            ;ᨬ쭠  ப
   INT  21H               ; 

 ப 蠥  ⨥     ⪨  DOS
    ப  ᨬ:  ⪨   ॢ
ப (ASCII 13  ASCII 10). -   ᨬ, 
㪠  ப 100 ᨬ     102 
.    ப  頥  AX   祭
砥  ᨬ-࠭⥫.
   3.1.7 ஢ઠ/⠭  -४⥫.

      ,  ᯮ    祩    0040:0017   
0040:0018 ᮤঠ , ࠦ騥    ᤢ  -
 -४⥫ ᫥騬 ࠧ:

                K      祭,   = 1
0040:0017    7     Insert       ० ⠢ 祭
             6     CapsLock     ० CapsLock 祭
             5     NumLock      ० NumLock 祭
             4     ScrollLock   ० ScrollLock 祭
             3     Alt           
             2     Ctrl          
             1      Shift   
             0     ࠢ Shift  

0040:0018    7     Insert        
             6     CapsLock      
             5     NumLock       
             4     ScrollLock    
             3     Ctrl-NumLock ० Ctrl-NumLock 祭
⠫   ᯮ

   뢠        ,
 ⮫쪮 㤥    -४⥫,   ᫨
 뫮 ⠭   ᨬ   .  ୮
   Ins,  ⢥   8  頥
    (⠭  Ins    ᫨   
    ᨬ).  ⬥⨬,    3   0040:0018
⠭  1,   ० প Ctrl-NumLock;
᪮  ⮬ ﭨ  ணࠬ ਮ⠭,   
⢥.
   뢠    ஢  ﭨ    ⮢
। ⥬,  ஢    ,  ⮬ 
ணࠬ     ⮢,  䥪 ⠪ ,   
䨧᪮ ⨨  ᮮ⢥饩  .    
⠭  ﭨ  NumLock  CapsLock, ⮡   㢥-
७,   㤥 ॡ㥬 .  H,  ணࠬ
 㦤  ⥭   , ਬ   ⮣,
⮡ 뢥 ⥪騩   ࠭. ⬥⨬,   AT
ࠢ쭮  ⠭  ᢥ⮢   ﭨ  ,
 ᫨ ४祭 ணࠬ.

   ᮪ ஢.

       ਬ  NumLock ॢ  ०,  
 ⥫쭮    ᯮ   ६饭
,   뢠  5   0040:0017  0.  
⨣   樨  ᪮  "" 祭, ᯮ-
   ⮬   ᫮ 223 (楯窠 ⮢ 11011111B  -
ᠭ  ⮢  権  .  ਫ ). 
頥     .   ਬ  ⥬  ⠭
祭 ⮣     1,        ᪮  ""    32
(00100000B).
100 DEF SEG = &H40             '⠭ ᥣ  
110 STATUSBYTE=PEEK(&H17)      'BIOS  ६  
120 NEWBYTE=STATUSBYTE AND 223 '塞  5
130 POKE(&H17,NEWBYTE)         '뫠  祭 

⮡, ,   :

120 NEWBYTE=STATUSBYTE OR 32   '⠭  5
130 POKE(&H17,NEWBYTE)         '뫠  祭 

ப 110-130   㯫⭥  :

110 POKE(&H417,PEEK(&H417)AND 223)
   
110 POKE(&H417,PEEK(&H417)OR 223)

   । ஢.

   㭪  2 뢠 16H ।⠢     -  
⮫쪮  -  ⮢ .      0040:0017,
 ᮤন   ଠ樨.   頥 
AL.

;---஢ઠ   ⠢
   MOV  AH,2           ; 㭪樨
   INT  16H            ;砥  
   TEST AL,10000000B   ;஢塞  7
   JZ   INSERT_OFF     ;᫨ 0,  INSERT 몫祭

   H ஢.

     ਬ  ⠭ ० ⠢,   -
  7     0040:0017 ( -
  0000:0417).

   SUB  AX,AX            ;⠭  ᥣ 
   MOV  ES,AX            ;砫 
   MOV  AL,10000000B     ;⮢  7  ⠭
   OR   ES:[417H],AL     ;塞  
   3.1.8 Hᠭ 楤      饣 -
.

   ⥬  , ᯮ㥬 ன,   ⮩
९樨. K    1  2    -
 ᮮ⢥⢨     ⥬, 㦨    -
祭 ᨬ   ࠢ 㤮. H  樨
  뤠 㭨 , ⮬ 室  
ᨫ, ⮡ ࠧ . H  ASCII,  ७  
㯮冷祭 ⠪ ࠧ,      㯯-
஢  ஢ 訡. 㣨  ᫮, 楤   -
 饣 祭 ॡ 嫮⫨ ணࠬ஢.
    ਢ ਬ  ᨪ   ᯮ짮 뢠-
 16H.     ᢥ  設⢮ ଠ樨,
ਢ   . 騩    . 3-3.

   ᮪ ஢.

   楤 ࠡ⪨   , ᠭ  ᨪ,
        ᥬୠ  楤,   
᪫祭.  㭪 INKEY$  ।⠢ 㯠   ᪠--
.  砥,         ᪠  祭  
ASCII 8, 9, 13  27    <BackSpace>, <Tab>, <Enter>
 <Escape>  १ Ctrl-H,  -I,  -M   -[.  稥  
⠭  ஢મ        Ctrl,    
0040:0017,    . H  ⮤  㤥 ࠡ-
,  ᫨   ᨬ  ᥭ      
祭 ண ६.

100 C$=INKEY$:IF C$="" THEN 100   '祭 ᨬ
110 IF LEN(C$)=2 THEN 700         '᫨ ७,   700
120 C=ASC(C$)                     ' ६   ASCII
130 IF C<32 THEN 300              '᫨ ࠢ騩,   300
140 IF C<65 OR C>123 THEN 100     'ਭ ⮫쪮 ᨬ
150 '''饩 設    ,  ⨬, ਬ:
160 S$=S$+C$                      '塞 ᨬ  ப
170 PRINT C$;                     '뢮   ࠭
180 '''...  ..
190 GOTO 100                      '  ᫥饣 ᨬ
 .
 .
300 '''楤 ࠡ⪨ ࠢ  ASCII
310 DEF SEG = 0                   '㪠뢠  砫 
320 REGISTER=PEEK(&H417)          '६ ॣ 
330 X=REGISTER AND 4              'X=4,   Ctrl
340 IF X=0 THEN 500               '᫨  ,   500
350 '''᫨   Ctrl-㪢,    ⨬
360 IF C=8 THEN GOSUB 12000       'ਬ, 室  -
370 ''' 뢮 ࠭   ..
380 GOTO 100                      '  ᫥饣 ᨬ
 .
 .
500 '''楤 ࠡ⪨ 4- :   ASCII 8,
510 '''9, 13  27,   Ctrl  
520 IF C=8 THEN GOSUB 5000        'ࠡ⪠ <BackSpace>
530 IF C=9 THEN GOSUB 6000        'ࠡ⪠ <Tab>
540 IF C=13 THEN GOSUB 7000       'ࠡ⪠ <CR>
550 IF C=27 THEN GOSUB 8000       'ࠡ⪠ <Esc>
560 GOTO 100                      '  ᫥饣 ᨬ
 .
 .
700 '''楤 ࠡ⪨ ७ 
710 C$=RIGHT$(C$,1)               '६ ⮫쪮 2-  C$
720 C=ASC(C$)                     'ॢ  ᫮ 
730 ''' C - ७  -   ,  ⨬, ਬ
740 IF C<71 OR C>81 THEN 100   '६ ⮫쪮 ࠢ ஬
750 IF C=72 THEN GOSUB 3500    'ࠡ⪠ "-"
760 '''...  ..
770 GOTO 100                      '  ᫥饣 ᨬ

   । ஢.

     ਬ  ⫨砥  ।饣 ⮤  ᯮ
  砥 Ctrl-H, -I,  -M  -[. ,  ⠥
  ⮬,   㪠   ⨨   ,
  樨   襩  Ctrl,  ஢  ᪠-.  
⮤  ࠢ, 祬 ஢ઠ  , ⠪  ᪠-
    ,  ⠭   
 .

;---祭  ⮩   ।  ⨯
NEXT:  MOV  AH,0           ;㭪    BIOS
       INT  16H            ;砥  
       CMP  AL,0           ;஢ઠ  ७ 
       JE   EXTENDED_CODE  ;᫨ ,   ᯥ. 楤
       CMP  AL,32          ;஢ઠ  ࠢ騩 ᨬ
       JL   CONTROL_CODE   ;᫨ ,   ᯥ. 楤
       CMP  AL,65          ;᫨ ᨬ  室   -
       JL   NEXT           ;饩 設,  ६ ᫥騩
       CMP  AL,123         ;
       JL   NEXT           ;
;---⥯ ࠡ뢠 ᨬ  AL
       STOSB               ; ᨬ   ES:DI
       MOV  AH,2           ;㭪 뢮 ᨬ  ࠭
       MOV  DL,AL          ;頥 ᨬ  DL । 뢮
       INT  21H            ;뢮   ࠭
        .
        .
       JMP  NEXT           ;室  ᫥饬 ᨬ
;---㥬 ࠢ騥 
CONTROL_CODE:  CMP  AL,13       ; ASCII 13?
               JNE  TAB         ;᫨ ,  ᫥. ஢ઠ
               CMP  AH,28       ; ஢塞 ᪠- <CR>
               JNE  C_M         ;᫨ ,  뫮 Ctrl-M
               CALL CARRIAGE_RET;ࠡ⪠  ⪨
               JMP  NEXT        ;室  ᫥饬 ᨬ
C_M:           CALL CTRL_M      ;ࠡ⪠ Ctrl-M
               JMP  NEXT        ;室  ᫥饬 ᨬ
TAB:           CMP  AL,9        ;஢ઠ  ⠡...
                .
                .
               CMP  AL,10       ;⥬ ஢ઠ 㣨
                .
                .
REJECT:        JMP  NEXT        ;室  ᫥饬 ᨬ
;--- ७  (2-    AH):
EXTENDED_CODE: CMP  AH,71       ;஢ઠ  ࠭
               JL   REJECT      ;᫨ ,  ᫥. ᨬ
               CMP  AH,81       ;஢ઠ 孥 ࠭
               JL   REJECT      ;᫨ ,  ᫥. ᨬ
;---AH ᮤন ᨬ ࠢ ஬, 㥬 :
               CMP  AH,72       ;"-"?
               JE   C_U         ;᫨ ,   楤
               CMP  AH,80       ;"-"?
               JE   C_D         ;᫨ ,   楤
                .
                .
C_U:           CALL CURSOR_UP   ;맮 ᮮ⢥饩 楤
               JMP  NEXT        ;室  ᫥饬 ᨬ
C_D:           CALL CURSOR_DOWN ;맮 ᮮ⢥饩 楤
               JMP  NEXT        ;室  ᫥饬 ᨬ
   3.1.9 ९ணࠬ஢ 뢠 .

   K  ய   頥 ᪠-     A
奬 8255 (    60H  -  .  [1.1.1]),   ⮬
뢠 뢠 9.   ⮣ 뢠 - ८ࠧ
᪠- ᨬ, ᭮뢠  ﭨ -४⥫,
     .  (᫨ ᪠- ᮮ⢥
-४⥫,         祣,
  ᪫祭   <Ins>,    ⮣  뢠
    ,  ᯮ       BIOS
[3.1.7]).   뢠  "  " DOS  BIOS   ᠬ
 ᥣ  뢠 "   ". H ᠬ
   ᯮ  . 筥,   -
  ,   ᯥ稫 뢠 9. -
⨬,    PCjr ᯮ ᯥ樠 楤  (INT  48H)  
८ࠧ    62    83-譮 ⮪,
ᯮ㥬 㣨 IBM PC.  ⮩ 楤 ।
뢠 9, ஥ 믮 ᢮ ࠡ  筮.  뢠-
  49H  PCjr ᯥ稢 ᯥ樠    ᪠-,
 ⥭樠쭮    ⠭  ਩묨  -
ன⢠,  ᯮ騬  ࠪ (஢)   
ன.
   ॡ 쬠 筮  ਬ,  ⮡   -
९ணࠬ஢   뢠, ᮡ 뢠,  MS  DOS
     ९ணࠬ஢       
[3.2.6].  ᫨    ਤ ९ணࠬ஢ 뢠
9,      ᭮   .  砫  -
  [1.2.3], ⮡   ணࠬ 뢠.   
뢠   뤥  ᭮ 蠣:

   1.   ᪠-  ᫠  ⢥ठ騩 ᨣ-
.
   2. ८ࠧ ᪠-      ⠭ -
  -४⥫.
   3.      .

      맮 뢠 ᪠- 㤥 室   
A.  ⮬ ᭠砫      ࠭  ⥪.
⥬ ᯮ  B ( 61H),  ⮡  ᫠ ᨣ-
 ⢥ত ய . H  ⠭-
  7  1,  ⥬ ࠧ        0. ⨬,
  6  B ࠢ ᨣ ᮢ .   ᥣ
  ⠭  1,   㤥 몫祭. 
  ⮢  ਬ   AT,        奬
䥩  ਥ 8255.
   砫 ᪠-   । ⮣, 뫠  -
  ( )  饭 ( ᢮).  H 
設, ஬ AT,  ᢮   ⠭ 
7  ᪠-   1.   AT,  ண  7 ᥣ ࠢ 0,  
᢮ ⮨      ⮢:  ᭠砫  0F0H,    ⥬
᪠-.    ᢮ 뢠, ஬  -
-४⥫,     ᮮ⢥騥 -
    .  㣮 ஭,    -
뢠.  ⮬         -
-४⥫.   砥  ᨬ ,  ஢
 , ⮡ ।, ਬ,   ᪠- 30 ᮮ-
   孥 ॣ 㪢 A.
   ᫥  ⮣    ᨬ  ஢,  楤
     ᮮ⢥騩   ASCII 
७ .  ਢ ਬ ᫨誮 ⮪, ⮡  -
ᬮ    砨.   饬 砥  ᪠-  ᮯ⠢
⠬ ⠡ ,   樥 XLAT.
XLAT ਭ  AL ᫮  0  255,  頥  AL  1--
 祭  256-⭮  ⠡,   㪠뢠 DS:BX.
  室  ᥣ .  ᫨  AL  室
᪠- 30,  㤠 㤥 饭  ⠡   30 (31-
,  ⠪    稭  ).       ⠡
  ⠭ ࠢ 97,   ASCII  "a". K-
    祭  A 㦭  㣠  ⠡,   ன
饭 㤥 ந室, ᫨   ᤢ ⠭.  
 㪢  ࠭  㣮  ⮩  ⠡, 
 ⮬ 砥  ᪠-  㤥   ᬥ饭, ।-
塞 ᮬ -४⥫.
   H,     饭   .
楤  ᭠砫 ஢,      
᫥饣  ᨬ.   [3.1.1] ,     ஥
 横᪠ ।. 祩   0040:001A ᮤন 㪠-
⥫     ,  0040:001C - 㪠⥫   墮.   
᫮ 㪠⥫  ᬥ饭       BIOS (
稭   ᥣ 40H)  室    30   60.
H ᨬ ⠢  祩     訬 -
ᠬ,     ⨣  ࠭,   ᫥騩  ᨬ
७     .  K  ,  㪠-
⥫ 墮  2  㪠⥫   - ஬ , 
㪠⥫   ࠢ  30  (砫   ),   ⮬
砥  ,  㪠⥫ 墮 ࠢ 60.
     ⠢ ᨬ  ,     , 
 㪠뢠 墮   ⥬ 㢥 㪠⥫ 墮
  2; ᫨ 㪠⥫ 墮  ࠢ 60,      
祭  30.   .  奬  뢠  
 . 3-4.

   H ஢.

   䥪⨢  楤 ॡ 㡮 த뢠.   ⮬
ਬ  ⮫쪮 ᠬ  ⪨.   ਭ ⮫쪮 㪢 
   孥 ॣ, 祬   㦥   ⠡-
,  ன 㪢  孥  ॣ  室   100 
, 祬  訥 .   ⮫쪮   
ᤢ  ⥪饥 ﭨ  CapsLock .

;--- ᥣ 
TABLE   DB   16 DUP(0)            ;ய᪠ 1- 16 
        DB   'qwertyuiop',0,0,0,0 ;孨  
        DB   'asdfghjkl',0,0,0,0,0 ;।  
        DB   'zxcvbnm'            ;  
        DB   16 DUP(0)            ;ய  孥 ॣ
        DB   'QWERTYUIOP',0,0,0,0 ;  ᨬ  孥
        DB   'ASDFGHJKL',0,0,0,0,0 ;ॣ
        DB   'ZXCVBNM'            ;
;--- 砫 ணࠬ ⠭ 뢠
        CLI                       ; 뢠
        PUSH DS                   ;࠭塞 ॣ
        MOV  AX,SEG NEW_KEYBOARD  ;DS:DX  㪠뢠 
        MOV  DS,AX                ;楤 ࠡ⪨
        MOV  DX,OFFSET NEW_KEYBOARD ;뢠
        MOV  AL,9                 ;  뢠
        MOV  AH,25H               ; 㭪樨 DOS
        INT  21H                  ;塞  뢠
        POP  DS                   ;⠭ ॣ
        STI                       ;ࠧ蠥 뢠

ணࠬ த, ⥬ ⠢ १⭮ [1.3.4].

;--- ᠬ 뢠 
NEW_KEYBOARD  PROC FAR         ;࠭塞  塞
              PUSH AX          ;ॣ
              PUSH BX          ;
              PUSH CX          ;
              PUSH DI          ;
              PUSH ES          ;
;---砥 ᪠-  뫠 ᨣ ⢥ত
   IN   AL,60H         ;砥 ᪠-   A
   MOV  AH,AL          ;頥   AH
   PUSH AX             ;࠭塞 ᪠-
   IN   AL,61H         ;⠥ ﭨ  B
   OR   AL,10000000B   ;⠭  7
   OUT  61H,AL         ;뫠    
   AND  AL,01111111B   ;뢠  7
   OUT  61H,AL         ;頥 ﭨ  B
;---ES  㪠뢠    BIOS
   MOV  AX,40H         ;⠭ ᥣ
   MOV  ES,AX          ;
   POP  AX             ;頥 ᪠-  ⥪
;---஢ઠ  ᤢ
         CMP  AL,42          ;  ᤢ?
         JNE  KEY_UP         ; - ᬮਬ ᫥饥
         MOV  BL,1           ; - 塞  
         OR   ES:[17H],BL    ;塞 אַ ॣ 
         JMP  QUIT           ;室  楤
KEY_UP:  CMP  AL,170         ; ᤢ 饭?
         JNE  NEXTKEY        ; - ᬮਬ ᫥饥
         MOV  BL,11111110B   ; - 塞  
         AND  ES:[17H],BL    ;塞 אַ ॣ 
         JMP  QUIT           ;室  楤
NEXTKEY:                     ;ᬮ 㣨 ४⥫
;--- ᨬ쭠  - 㥬 ᪠-
             TEST AL,10000000B  ; ᢮ ?
             JNZ  QUIT          ; - 室  楤
             MOV  BL,ES:[17H]   ; ६  
             TEST BL,00000011B  ; ᤢ ?
             JZ   CONVERT_CODE  ; - 室 
             ADD  AL,100        ; -   㪢
CONVERT_CODE:  MOV  BX,OFFSET TABLE  ;⮢ ⠡
             XLAT TABLE         ;८ࠧ㥬 ᪠-  ASCII
             CMP  AL,0          ;饭 0?
             JE   QUIT          ;᫨ ,   室
;---  ⮢, ஢塞     
             MOV  BX,1AH        ;ᬥ饭 㪠⥫  
             MOV  CX,ES:[BX]    ;砥  祭
             MOV  DI,ES:[BX]+2  ;砥 㪠⥫ 墮
             CMP  CX,60         ;  設 ?
             JE   HIGH_END      ; - 室  ᯥ. 
             INC  CX            ;㢥稢 㪠⥫ 
             INC  CX            ; 2
             CMP  CX,DI         ;ࠢ  㪠⥫ 墮
             JE   QUIT          ;᫨ ࠢ,   
             JMP  GO_AHEAD      ; ⠢塞 ᨬ
HIGH_END:    CMP  DI,30         ;஢ઠ ᯥ. 
             JE   QUIT          ;᫨  ,  室
;---   - ⠢塞   ᨬ
GO_AHEAD:    MOV  ES:[DI],AL    ;頥 ᨬ   墮
             CMP  DI,60         ;墮   ?
             JNE  NO_WRAP       ;᫨ ,  塞 2
             MOV  DI,28         ; 㪠⥫ 墮 = 28+2
NO_WRAP:     ADD  DI,2          ;砥  祭 墮
             MOV  ES:[BX]+2,DI  ;뫠    
;---襭 뢠
QUIT:        POP  ES            ;⠭ 塞
             POP  DI            ;ॣ
             POP  CX            ;
             POP  BX            ;
             POP  AX            ;
             MOV  AL,20H        ;뤠 ᨣ  砭
             OUT  20H,AL        ;⭮ 뢠
             IRET               ;  뢠
NEW_KEYBOARD ENDP
                2.   ⤥ 蠬.

   楤  ࠡ⪨      ஢  
ࠧ ⨯      ᫮,  ᪮   -, ⠪ 
塠     樨  蠬-४-
⥫ﬨ. H   ᪨ 㯯஢,  ⨯ ,
  ᮮ⢥.  Hਬ,  <Backspace>  -
    ASCII,      <Delete>  - 塠
७ .  K Ctlr   ,  
 ᯮ  ⠭   䠢묨 蠬  塠-
   ⠫ .   ॣ୮   -
࠭祭  ASCII: 뢠  ᫥ ᮣ-
襭 ASCII,  ,     뤠 ᢮
(७) .
     ࠧ ᫥  ࠧ 㯯 ,  
  㪠 騥 .   設⢥ 砥 
ଠ 㯭   㤮    ⠡  ASCII 
७  ,  ਢ  ࠧ 3 ⮩  .   
㦤 ⠪ ᯥ樠  ᢮⢠,  ਯ뢠 ⤥
蠬 ᨪ,  ⠪ ᯥ樠쭠 ࠡ⪠,  -
樨 ⤥  (⠪  ), ਬ塞  뢠
DOS.
   3.2.1 ᯮ짮   <BackSpace>,  <Enter>,  <Escape> 
<Tab>.

   K <BackSpace>, <Enter>, <Escape>   <Tab> - ⢥
  ᨬ ,     -
 ASCII.   ᮤঠ   ࠢ  [7.1.9],
    32    ASCII.    
  祭 ⠪ 樥 㪢   襩
Ctrl:

   ASCII   8    BackSpace          Ctrl + H
   ASCII   9    Tab                Ctrl + I
   ASCII  13    Enter              Ctrl + M
   ASCII  27    Escape             Ctrl + [

 [3.2.2]   ࠧ ⨥    -
  襩 Ctrl.  ⬥⨬,  ⭠ ⠡, ந-
  ⨥ 樨 <Shift> + <Tab>, 뤠 ७  
0;15.
   H  뢠 ࠡ⪨    ⮬-
᪨    ᯥ樠 .  ᨪ 㭪-
 INPUT ॠ    <Backspace>,  <Tab>   <Enter>.  㭪
INKEY$       ࠢ , ᪮
   ⮬᪮   ࠭.   ࠡ  믮-
  ணࠬ.  H,   ࠢ  -
 ᨪ ।⠢ 㭪 TAB.   뢠 BIOS  DOS,
   뤠   ନ   ⠪  
<BackSpace>  <Tab>.  ᫥  ⮣      
ᮮ⢥騬  ࠧ,  ASCII  ࠢ     AL,
᫥ 祣     祭  ப ᨬ  -
஢,  ᨬ  ⮣,  ॡ.
   3.2.2  ᯮ짮 -४⥫: <Shift>, <Ctrl>  
<Alt>.

    ⨯ -४⥫ ⠢ ⮫쪮 㣨 -
   ஢ ࠧ .  K  ࠢ,  ⠪
樨   ७  .   H    
   ASCII: (1)  ᯮ  <Shift> 
蠬
䠢⭮-஢ ᨬ   (2)  ⨥  樨  
Ctrl-A  Ctrl-Z  ASCII   1  26.  ⠫ -
樨  ७ , ᫥   [3.3.5]. PCjr 
᪮쪮 ᪫祭,  㦤 .
   H⨬ 樨   ந , .  
᪫祭  ᯥ樠 権  Ctrl-Alt, ६-
 ⨥ ᪮쪨 ४⥫ ਢ  ⮬,  ⮫쪮
   ⠭ 䥪⨢, 祬 ਮ  Alt, ⥬
Ctrl,  ⥬ Shift.  [3.1.7]   ஢   
    -४⥫.     [3.2.3] , 
ᯮ짮  ScrollLock,  ⢥ ४⥫  
㣮 襩 .  㣨 樨  蠬-४-
⥫ﬨ   ᤥ ⨬묨 ⮫쪮   ९ᠢ
뢠  ,   ஥       뢠 BIOS
[3.1.9].
    ஡, 易  묨 ﬨ  -
襩 Ctrl, ⠪  Ctrl + H, I, M  [, ᪮  
 ASCII,  ⥬,     <BackSpa-
ce>, <Tab>, <Enter>  <Escape>.   [3.1.8]   ணࠬ
 ᥬ  , ஢ਢ ᪠-, । 뫠 
 ࠢ     㪢  Ctrl (᪠-
室   AH,   砥  ⮩  १ -
뢠 16H).  K  ᮦ,  ணࠬ    ᨪ 襭 ⠪
.   ⠪ 砥 ணࠬ   ࠧ
  ,  ﭨ ॣ .  ᫨
 2      0040:0017  ⠭,   
Ctrl  -  .   ⮤ ࠡ⠥ ⮫쪮   ,  
ந室 ⨥ ,     ⮣,    ᨬ
   १ ஥ ६.
   K PCjr  ⮫쪮 63 ,  ࠢ  83 
IBM PC  XT  84  AT. H 樨 -४-
⥫  㦠  樨    (-
樨  ᯮ짮 㭪樮  ਢ  [3.2.5]):

   K  PCjr      PC/XT/AT 

   Alt + Fn + 0-9              0-9 (᪠- ⥫쭮 -
                               ஢ 
   Alt + /                     \
   Alt + '                     `
   Alt + [                     |
   Alt + ]                     ~
   Alt + .                     * (᪠-,    PrtSc
   Shift + Del                 . (᪠-,   . -)
   K PCjr ᪠ ⠪  ᫥騥 㭨 -
樨  ⨥ -४⥫:

   Fn + Shift + Esc            ४砥 ஢  
                               㭪樮
   Ctrl + Alt + CapsLock       ४砥 㪮 ⢥ত
                                
   Ctrl + Alt + Ins            ᪠ ⨪
   Ctrl + Alt + CursorLeft     ᤢ ࠭ 
   Ctrl + Alt + CursorRight    ᤢ ࠭ ࠢ
   3.2.3 ᯮ짮 -४⥫: NumLock,  CapsLock,
Ins  ScrollLock.

    ᪫祭  Ins,  ⠫ -४-
   ந ,  頫     .
 ⮣,   ﭨ  ⮢ , 
ᯮ         BIOS    ᠬ  0040:0017  
0040:0018.  뢠  ஢ ⠭  ⮢
।  ⥬  ᢮   ᨬ.    ணࠬ
   ॣࠬ     ⠭ 
 -४⥫  ᭥  [3.1.7].
   㣨   ॣ  뢠    -
-४⥫  ⥪騩 .  ᢮⢮  ண-
ࠬ ᯮ짮 -४⥫  ⢥   ᤢ-
.    ⥭樠  ਬ  ⮣,    ᮧ
  .  Hਬ, <ScrollLock>   ᯮ짮-
  ⮣, ⮡     権 ᤢ +
㭪樮쭠 .  ணࠬ,  㤥  
筮  㭪樮쭮   ,   ஢    
<ScrollLock>   ᮮ⢥⢥ ஢ ⨥  .
⬥⨬,      <Shift>  頥 ⥪ ⠭
 <NumLock>.
   K  <Ins> 頥      0;82,  
 ணࠬ      .   ⠭
  <Ins>    ॣ   .   
᫨       <Ins>,   ॣ  
⨨     .  K <Ins>, ⠪   <Scroll-
Lock>,    㣨   ( ⫨稥  <Num-
Lock>    <CapsLock>).    ਯ   ஫,  
.   孨᪮  㪮⢮  IBM ⢥ত,  
<ScrollLock>  ᯮ짮  ४祭  -
ﬨ,   ⨥    ६饭    ਢ  
ᤢ ࠭,    । .
   K筮,    ᮧ  ॡ㥬 襩 ணࠬ -
-४⥫   稢     ⮩ 楫. 
 ⮩ 楫    ⮢ ॣ஢ ,   -
 ᮧ ६, 祭 ன -1 ᮮ⢥ 祭-
 ﭨ 襣 ४⥫,  祭 0 - 몫祭.
Hਬ, ᯮ㥬  F10  祭  몫祭 -
 Clock:

100 '''४祭  ६
110 CLOCK = -1            '稭  祭 ﭨ
120 IF X<=100 THEN NOT CLOCK '४砥 ६
   3.2.4 ᯮ짮 ஢ ⥫쭮    -
 ६饭 .

    IBM PC   XT  ⥫쭠  ஢  砥
஢  ,  <Ins>  <Del>,  ⠪  +   -.
H AT    "System Request" (Sys Rec),   ६
  PCjr   ⮫쪮 4  ६饭   (⠫
   㫨஢  ᯥ樠묨  ﬨ    蠬
<Shift>   <Fn>, ᠭ묨  [3.2.2]  [3.2.5]).  K  <Num-
Lock> ४砥  ࠬ   蠬 ࠢ ஬.
K  <Ins>  <Del> ࠡ ⮫쪮 ᫨ ० <NumLock> -
祭, ..  ⥫쭠  뤠 .  K +  -
뤠        ᨬ  ⠭  ०  <Num-
Lock>.
   ஢   ⥫쭮   뤠  筮
    ,  뤠 ஢  孥
鸞 ᭮  - ..    ASCII  48  57  
 0  9.   ୮    +  -. ணࠬ  ᥬ-
  ।          ᪠-
,   室  AH       뢠
16H, ⠪   楤    뢠 21H.  ⬥-
⨬,     <Shift> ॢ  ⥫쭮
  ० ⨢  ⮬,  ⠭ -
襩 <NumLock>.  ⠭  <CapsLock>   祭.
K "5"   業  ⨢  ⮫쪮    ஢   
० ६饭    뤠 .
   K஬  饯ਭ ५  ࠢ ஬
 ⠪  <Home>,  <End>,  <PgUp>    <PgDn>,  
ᯮ    ६饭  ࠧ  楫 ப  
࠭.     塠  ७ .  
  ᯥ稢 אַ ஫  ஬.  
뤠 ,    㣨 ,    㦥  ணࠬ-
 ८ࠧ    ६饭   ࠭.
   ⨬  樨  ⥫쭮 -
  襩 Ctrl.  <NumLock>   ᮮ⢥⢮ ० -
ࠢ ஬, ⮡  樨 ࠡ⠫.  [3.1.7] -
   ணࠬ   ⮬᪨  ⠭ ०
NumLock.  祭   ⥫쭮 :

   K ASCII:          43                   +
                        45                   -
                        46                   .
                        48-57                0-9
   ७ :

   72,75,77,80          CursorUp,Left,Right&Down
   71,73,79,81          Home,PgUp,End,PgDn
   82,83                Ins,Del
   115,116              Ctlr-cursor left, -cursor right
   117,118,119,132      Ctlr-end, -PgDn, -Home, -PgUp
   AT    84- , Sys Req,  㭨쭠    ᢮
㭪樨. K ।祭   짮⥫᪨ ⥬,
 ᯮᮡ 室    ⥬.  K  -
,  AX   8500H   믮  뢠 15H. 
᪠    AX   8501H,     믮-
 뢠 15H. BIOS AT   ࠡ뢠 㭪樨 84H  85H
뢠  15H,     .  H    ணࠬ
  뢠  15H, ⮡  㪠뢠  楤-
  ࠡ⪨   Sys Req.   楤    ᭠砫
 AL, ⮡ 㧭  뫠      (AL = 0) 
饭 (AL = 1).  ⨬,  뢠 15H ।⠢ 
楤,         ॡ  ணࠬ
ࠡ⪨  Sys  Req.   ⮬ 砥 楤 ࠡ⪨  Sys  Req
 ⠭     뢠,  ᫨ 
AH 㪠 㭪樨 ⫨  84H  85H,   । ࠢ-
 ਣ쭮 뢠 15H [1.2.4].
   3.2.5 ᯮ짮 㭪樮 .

   10 㭪樮   ࠧ   ⠭
  Shift,  Ctrl  Alt,  ᯥ稢 40 ࠧ ਠ⮢.   
   塠  ७ ,  ஬
  ᥣ ASCII 0,  ன  ਢ  ⠡:

   K                  K

   59-68                 F1-F10
   84-93                 Shift + F1-F10
   94-103                Ctrl + F1-F10
   104-113               Alt + F1-F10

誮   権  ᯮ짮 㭪樮  
  짮⥫,    ᫨    ॡ   10
権,   ᯮ짮 ⠭ <ScrollLock> +  <Fn>,
 ᭥  [3.2.3].
   K PCjr  ⮫쪮 62 ,  ࠢ  83 
IBM PC  XT,  84  AT.  H 樨  ⨥  㭪-
樮   㫨     , ᮣ᭮
᫥饩 ⠡:

     PCjr 樨        PC/XT/AT 

     Fn + 1-0               F1-F10
     Fn + B                 Break
     Fn + E                 Ctrl + PrtSc
     Fn + P                 Shift + PrtSc
     Fn + Q                 Ctrl + NumLock
     Fn + S                 ScrollLock
     Fn + CursorLeft        PgUp
     Fn + CursorRight       PgDn
     Fn + CursorUp          Home
     Fn + CursorDown        End
     Fn + -                 (᪠- ண )
     Fn + =                 (᪠- ண )

   K樨  ⨥ -४⥫ ᠭ  [3.2.2].
   3.2.6 ९ணࠬ஢ ⤥ .

     ९ணࠬ஢   ᯮᮡ ⠢
 뤠 㣮 .  H  ⮬ ६,  ணࠬ -
砥   ⮩ , 뢠  㦥 ந-
஢ 室騩 ᪠-  ८ࠧ     -
  ।।  ASCII  ७ .  K  ,
稭  MS DOS ᨨ 2.0,  ⥬ ᮤন ।⢠ ९ண-
ࠬ஢  .    ।⢮  ⮫쪮  ᫨  
ਭ १  㭪樨  DOS      - 㭪樨
뢠  BIOS  16H த ஢   
ଠ ࠧ.
   ९ணࠬ஢ 㯭   Esc-᫥⥫쭮⥩.
K⪠  ப,   稭  ᨬ Esc  (ASCII  27),
।砥  뢮   "⠭⭮  ன⢮  뢮",
..   ନ.  H    Esc ᨬ  
⨣ .    ⮣ ⠪ ப ⠢ MS DOS
  㣮  ஢ , 㪠   ⮩  ப.
K     ॡ  ᮡ⢥  ப,  ⮬
       ᢠ   㣮  
.
   騩  ⠪ ப ⠪:  稭   Esc (ASCII
27),     [, ⥬   ८।塞 -
, ⥬ 窠  ⮩ (;), ⥬   , ᢠ-
     ,  ,  ᨬ p.     ࠧ,  ப
27,'[65;97p'  A  (ASCII  65)    a (ASCII 97). ७
  뢠    㪠  ⮢, 祬    
㫥   ⮬         窠      ⮩.  ப
27,'[0;68;0;83p' ᢠ  F10 (0;68)   ,  
 Delete (0;83).     ᢠ ⮫쪮 ७
, ਢ  ⠡ ७  [3.3.5].
     ᪮쪮 ਠ⮢ ⨬  ப.  --
, ᨬ    ᠬ ᨬ, -
祭    窨.   ࠧ, ப  27,'["A";"a"p'  ⠪
 A  a. -    ᢮ 楫 -
  ᨬ,  ⥬ 㪠 ᨬ     ஢  
ࠦ. ப  27,'["A";"A  is  for Apple"p' ਢ  ⮬,
  ⨨   A  孥 ॣ, 㤥 
 窠 A is for Apple. H  ᠬ   Esc-᫥⥫-
 - 祣 , 祬 ப,      ᨬ
㪠뢠   㦭  ८।,  ⠢ 
ப  㪠뢠  祭    ਤ.   ,
     ᥣ ࠧ 窮  ⮩, 
ᨬ 祭  窨. K  ᨬ   ६蠭
  ⠭.   ⮣  ⮡ ⠪ ८। 
뫨 , 室 ⮡ ࠩ ANSI.SYS  㦥 
㧪 樮 ⥬.   ⨢ 砥 Esc-᫥-
⥫쭮  ஢.   ਫ     
.
   H ᯥ  㭪樮஢  ணࠬ
 PCjr  AT. 楤 㯭  AT   ᭮ 
⥬  ணࠬ⮢;  ᪮   㦭 쬠  
筮  ᫮,    㤥 ᬠਢ   .   
室  ਤ    孨᪮ 㪮
 AT.  砥 PCjr 뢠 BIOS 16H   ⥫
㭪樨 (AH = 3  AH = 4), ࢠ   ⠭ -
 ⮯. " ⮯" -   ,  ன
 뫠 ᢮ ,    ﭭ ন ⮩.
  㭪 砥  몫砥 㪮 ⢥ত -
 .  㭪樨 3    AL 0, ⮡ 
   ⮯, ⠭  㬮砭,  1 -  ⮡
㢥  砫  প  ।  ⥬,   稭 ०
⮯,  2 - ⮡ 㬥  ⮯ , 3  -
⮡ ⠭ ᢮⢠ 1  2   4 - 몫 ⮯
.   㭪樨 4, ⨢  AL 1,  㤥  㪮
⢥ত  ,  0 - 몫 .

   ᮪ ஢.

   K ,   ᨪ  PRINT    WRITE  ࠡ 
Esc-᫥⥫쭮ﬨ.   ணࠬ  ᨪ   
 ᥬ ணࠬ, ᯮ騥 뢠 뢮
MS DOS, 㦤    "। ஢".   ਫ
 ,    ᥬ  楤   ணࠬ 
ᨪ.     ਢ ਬ ।,    楤
室  , 稭     2000:0000.   DATA
ᮤঠ ᥬ .   ப ८। 
    $.

100 DATA &H55, &H8B, &HEC, &H8B, &H5E, &H06, &H8B, &H57
110 DATA &H01, &HB4, &H09, &HCD, &H21, &H5D, &HCA, &H02, &H00
120 '頥 楤     2000:0000
130 DEF SEG = &H2000         '।塞 ᥣ
140 FOR N=0 TO 16            '楤  17 
150 READ Q                   '⠥ 
160 POKE N,Q                 '頥   
170 NEXT                     '
180 ''' 塞 A  a
190 Q$ = CHR$(27)+"[65;97p$" 'ப ८।
200 ROUTINE = 0              '㪠뢠  ப
210 CALL ROUTINE(Q$)         '뢠 楤

   । ஢.

   ᯮ 㭪  9  뢠  21H   뫪 ப 
⠭⭮  ன⢮ 뢮.  DS:DX  㪠뢠  
ᨬ ப      ப     ᨬ $
(24H).   F2 (0;60) ८। ⠪ ࠧ, ⮡ 
⢮  Del (0;83).

;--- ᥣ 
CHANGE_KEY   DB   27,'[0;60;0;83p$'

;---  । 
   LEA  DX,CHANGE_KEY       ;DS:DX  㪠뢠  ப
   MOV  AH,9                ; 㭪樨
   INT  21H                 ;८। 
   3.2.7  ம।  ⤥ .

   ம। -  ப  ᨬ,    㤥 뢮-
    ⨨  .  ம।   
ணࠬ஢     ᨪ   ஢ -
樮 ⥬  㬥襭 ⠭.  ᪮ ப 
ᮤঠ ࠢ騥  ,  ⠪    ᨬ  ⪨
(ASCII  13),   ம।  믮 楫 
.   ᪮७ ࠧࠡ⪨ ணࠬ, ਬ,  -
  ம।, ᮤঠ饥  室 , ⮡
࠭᫨஢  ᪮ । ணࠬ.
   ம।,   ᯥ稢   ᨪ,  ࠡ  
ᨪ᪨ ணࠬ, ⠪    ஢ ᨪ.  H-
ਬ, ᫨   ணࠬ஢  ,  ⮡   ⨨
뢮 ᫮ "࠭⠭",   ⨨ ⮩  㭪
INPUT    ப,  横, 騩 INKEY$, ᫥-
⥫쭮   ᨬ.   㣮 ஭, ம।-
, ᮧ  ஢  樮 ⥬, ᥣ ࠡ
    ஢ DOS,   ணࠬ    ࠡ
⮫쪮 ᫨ ணࠬ       ᯮ 㭪樨
DOS.   ᪮ 設⢮ ᪨  ணࠬ  த⮢
ᯮ 뢠 BIOS 16H,    ணࠬ ம।-
   ࠡ.  K筮, ।⢠  ᮧ ம-
।   ⠢    楤    .
Hਬ, ⮡  짮⥫ ணࠬ ᮧ ம-
।  F1, ᨢ  ப   ⨢   MACRO1$, 
 ᨪ  - த:

1000 '''楤  ७ ,  C - 2-  
1010 IF C=59 THEN LOCATE X,Y: PRINT MACRO1$

   ᮪ ஢.

   ᨪ  ஥ 堭 ᮧ ம।, 
   ணࠬ஢ ⮫쪮 10 㭪樮 ,  
ப     15  ᨬ.  ᨪ ᬠਢ
㭪樮 ,  ணࠬ㥬 .  KEY
ᢠ ம।    . ப KEY 5,"END"
ਢ    ⮬,  㭪樮쭠  #5  㤥  뫠
᫮ END  ⥪    ࠭.
     ⠢騥 ப    ப ᨬ-
,  ASCII  (ᯮ  CHR$)      ⮣ 
㣮.   K KEY 5,"A"  KEY 5,CHR$(65) .   
⮣, ⮡ ப ࠧ ᯮ﫠     ப
ᨬ    ⪨ (ASCII 13).  K  FILES,  뢮
⠫ ᪠, ᯮ ᫥  ⮣,   ᢮  -
祭 F1  KEY 1,"FILES"+CHR$(13).
   ᨪ  ᢠ  㭪樮 蠬 -
  ᨪ.   ⬥ ம। 
  , ᢮   ப,ਬ,   KEY
1,"" ਢ  ⮬,     ⨨  F1  祣   
㤥.   ᨬ  ப ⮬᪨ 뢮-
    ࠭  ஬  ᨪ.   -
ࠢ 稥 ⮣ 뢮 ᯮ  KEY ON  KEY OFF.
 ⮣ ⮡ 뢥  ࠭  । , -
  KEY LIST.  ᪮쪮 ਬ஢:
KEY 1,"ERASE"           ; ⥯ F1 뢮 "ERASE"
KEY 10,"LIST"+CHR$(13)  ; ⥯ F10 뤠 ⨭
KEY 7,""                ; ⥯ F7 祣  뤠
KEY OFF                 ;  뢮  ࠭
KEY ON                  ; 砥 뢮  ࠭
KEY LIST                ; 뤠 ᯨ᮪ 祭 10 

  ᮧ ம। 㣨   ᨪ,  
ᯮ짮 ।⢠ MS DOS, ᠭ  [3.2.6].
   । ஢.

    MS DOS ம। ᮧ   ⮤ ९ண-
ࠬ஢ , ᠭ  [3.2.6]. ⢥ ⫨稥 
⮬,     ᮯ⠢  楫  ப ᨬ. ப
      ᨬ, 祭  窨,  
   樨 ⮣  㣮.  ᪮쪮 ਬ஢:

27,'["A";"SET"p'          ; ᢠ SET  A
27,'["ASET"p'             ; ⭮ ।饬
27,'[27;"dir";13p'        ; ᢠ dir<CR>  Esc
27,'[0;59;"copy *.* b:";13p'  ;ᢠ F1 
27,'[0;68;0;72;0;72;0;72p'    ;⠢ F10 ᤢ  
                              ; ப 
   3.2.8  楤 ࠡ⪨ Ctrl-Break.

   K   Ctrl-Break,  뢠 
⠭ 䫠, 㪠뢠騩    믮  -
 ࠡ⪨ Ctrl-Break.  ࠢ  । ⮩ 楤
⮫쪮    ,    ணࠬ  ᯮ  㭪 DOS,
ᯮᮡ ᯮ  䫠. 筮 ⮫쪮 ⠭ 㭪-
樨 /뢮 MS DOS   ᯮ  䫠 (㭪樨 
1  C 뢠 21H,  ᪫祭 㭪権 6  7). H ⨢
ப BREAK=ON     䠩  AUTOEXEC.BAT,     CONFIG.SYS,
ᯮ㥬  MS  DOS   ⥬,     ,
 饭   㭪樨  DOS  ਢ  맮 楤
ࠡ⪨ Ctrl-Break.  ⮬ 믮 ணࠬ 㤥 
.
   楤  ࠡ⪨  Ctrl-Break      
ணࠬ     ६.  K 㭪 DOS  ᯮ
 Ctrl-Break,  ࠢ । 楤,  
㪠뢠  뢠 23H. DOS ᯮ  楤 
襭 ࠡ饩 ணࠬ.  H 楤   ९-
ᠭ ,  ⥬ ⮡  㤮⢮﫠  訬 ॡ.
 楤      ணࠬ㥬,    ⥬ ⮡ ।
襭 ணࠬ   믮  ᪨ -
樨.  ॡ  ࠢ ⥪,  ⥬ ⮡ SP 㪠-
    ஥ ᫮  設 (ࢮ ᫮  ணࠬ  COM)
। 믮 饩 樨 RET.  뢠,
  ணࠬ   ⠭,    
ன⢠ /뢮 -  .  ᫨ 뫨 饭 뢠-
,   ࠧ .     ᯥ 設 -
 ଠ쭮 ࠡ  ᫥饩  ணࠬ ᫥ -
襭  ணࠬ   Ctrl-Break.  㣠  ୠ⨢ -  ᤥ
楤  ࠡ⪨  Ctrl-Break,  饩    樨
IRET,  頥 襭 ணࠬ ⠪ ᯮᮡ.

   । ஢.

      ਬ 室  ணࠬ ந室 ᫥ ࠢ-
 ⥪.   楤  砥  樥  RET,   IRET,
᪮   砥    筮 ⠪ ,   
 RET  ଠ쭮  襭  ணࠬ.    ,
  ᯮ, 㪠⥫ ⥪ (SP)  㪠뢠  
஥ ᫮ ⥪.   ।,  ணࠬ  ଥ EXE.
,    ⥪ 頠 ᢮ ࢮ ᫮   ᠬ  
祩 , ஥ -  祩  ,  ..  ᫨ ࠧ ⥪
400  ,    ⠭ SP  396.   ணࠬ COM  
⠭ 㪠⥫ ⥪    ࢮ  ᫮ ⥪  
 楤 ࠡ⪨ Ctrl-Break 뢠 21H.

;---  楤 ࠡ⪨ Ctrl-Break
C_B     PROC FAR
        MOV  AX,396           ;祭  ண ᫮ ⥪
        MOV  SP,AX            ;ࠢ 㪠⥫ ⥪
        RET                   ;  DOS
C_B     ENDP                  ;
;---  뢠
        PUSH DS               ;࠭塞 ॣ
        MOV  AX,SEG C_B       ;⮢  楤
        MOV  DS,AX            ;
        MOV  DX,OFFSET C_B    ;
        MOV  AH,25H           ; 㭪樨
        MOV  AL,23H           ; 
        INT  21H              ;塞 
        POP  DS               ;⠭ ॣ

   ணࠬ     ६ ஢   ᤥ  
 믮 楤 ࠡ⪨ Ctrl-Break. H   AL
0    맢 㭪 33 뢠 21H.     DL  㤥
ᮤঠ 1, ᫨  ⠭ 䫠 뢠  Ctrl-Break, 
0  -   ⨢ 砥.  ᫨  맮   AL  1,  
 㤥 ⠭.   ⮬  砥,  । 맮 㭪樨,
  DL 0  1, ⮡ 䫠  ⠭  饭.
   3.2.9 ९ணࠬ஢  PrtSc.

   K  PrtSc  뤠  (ASCII 42),  ᫨    
,  뤠  ७    114,  ᫨    
襩  Ctrl.  H  <Shift> + <PrtSc>  ᮢ襭
⤥ . H⨥  㣨  ⠢ 뢠
         (,    -
-४⥫,  뢠    ﭨ  [3.1.7]). H⨥
    믮塞 ணࠬ,     ண-
ࠬ  ⠭ 뢠 ᨬ    . H
  <Shift>  + <PrtSc> ⠢  뢠  
 ।  ࠢ  楤,    㪠뢠
 뢠 5.   ஬ ᫥  ࠡ⠥   -
⭮ 뢠.
   뢠  5  ணࠬ஢  ⠪  ࠧ, ⮡ 뤠
ᮤন  ࠭  ਭ.  H  뢠  㪠-
  楤,  ।祭    ᮢ襭 㣮 楫.
Hਬ,  ७ ணࠬ 樨, ன ॡ  
 襭 ᢮ ࠡ,   ࢠ   ६ -
樥 Shift + PrtSc, ⮡  뤠 ࠯  ⥪饬 ﭨ
⮢.   ⠪ , ⮡  ਭ  뫮
뫠  ᪮ ࠭. 㣠 , ᯮ짮-
 PrtSc   ᯮᮡ  㯠    ணࠬ,   室
१⭮    ६ 㧪 MS DOS [1.3.4].  -
⥣      ⨫,    ࠡ 
㣮 ணࠬ ᯥ祭.

   H ஢.

    ਢ ᭮ ଠ ९ணࠬ஢ 楤.
H      ⠭   ਣ      뢠
(F000:FF54)   襭 ணࠬ.  ᫨  㤥  ᤥ
,   㤥  ଠ쭮,      㤥 
 Shift + PrtSc,  ⮣ ந  ⥬  (
 ਬ ணࠬ஢ 뢠 .  [1.2.3]).

;---  뢠  PrtSc
   CLI                       ; 뢠
   MOV  AX,SEG NEW_ROUTINE   ;砥  楤
   MOV  DS,AX                ;
   MOV  DX,OFFSET NEW_ROUTINE   ;
   MOV  AL,5                 ; 塞 
   MOV  AH,25H               ; 㭪樨
   INT  21H                  ;塞 
   STI                       ;ࠧ蠥 뢠
    .
    .
;---ᠭ 楤 PrtSc
NEW_ROUTINE  PROC FAR
             STI             ;ࠧ蠥 뢠
             PUSH AX         ;࠭塞 ॣ
              .
              .
             MOV  CX,100     ; 楤
              .
              .
             POP  AX         ;⠭ ॣ
             IRET            ;  뢠
NEW_ROUTINE  ENDP            ;
             3:     ਬ.

         ᨬ  ਢ  -
ࠧ㬥.  ਢ ⠡   ᫥. -
   ᫥騥 :

   -  Ins  ⢥,   ⨨,  
뤠  ᨬ     ,  ⠪    -
 -४⥫.

   -    4   ASCII,     祭  
ᯮᮡ. ASCII 8 - ⨥  BackSpace  Ctrl-H, ASCII 9
-    Tab  Ctrl-I, ASCII 13 -   Enter   Ctrl-M,  
ASCII 27 -  Esc  Ctrl-[.

   - ᨬ, ᮮ⢥騥 32 ࠢ騬  ASCII  뢮-
    ࠭,  ᯮ짮 㭪権     ,
ᯥ稢 ⮬᪮ .    뢥  
  㭪樨 10H 뢠 10H,   뢮  
ᯫ ( ᯮᮡ 㦤  [4.3.1]).

   - 樨  Ctrl  㪢  䠢  -
    ASCII.   ⠫ 樨  Ctrl  
塠 (७) .

   -  <5>  ⥫쭮      , ᫨
⠭ ० ࠢ ஬ 襩 NumLock.

   -  樨 Shift-PrtSc  Ctrl-Alt ( ⠪ SysReq    AT)
 ⢥ 砨,      ਢ  -
  맮 ன 楤.    ⮫쪮 ࢠ -
९ணࠬ㥬.  뢠  ࠡ⪨ Ctrl-Break (⠪ ९-
ணࠬ㥬)  뢠 ⮫쪮 ⮣,   Ctrl-Break
㤥 㦥 楤ன MS DOS.

   -   ASCII, ஬ 0,       ⥬ 
  Alt,   ASCII  ⥫쭮    ,
⥬, ᪠  Alt.  ᪮  0 ᪫祭,  -
७      ⠪ ᯮᮡ.

⬥⨬,   ࠪ᪨ 祣   ᤥ, ⮡ ८-
  ࠭祭,  뢠     ⨬ 樨
.  Hਬ,    ।  Ctrl + Cur-
sorUp, ਭ  CursorUp,    ⥬  ஢ ॣ 
ફ⥫   । ⮣, 뫠    Ctrl.
᫨ Ctrl 뫠 ,   CursorUp   뤠 -
 .
   3.3.1 ।। ᯮ짮 .

       ᮣ襭  ⭮⥫쭮  ᯮ짮  ,
  믮 ᥬ ணࠬ.   ᠭ  -
᪮ 㪮⢥  ᫨ ணࠬ  ਤন ,
 짮⥫ 㤥  室    ணࠬ  -
. ⨬, ,  ணࠬ ᯥ祭 ᠬ  IBM
 ᥣ ᫥ ⨬ ᮣ襭.  ⠪:

   ScrollLock        ४砥 ० 뢮  ନ, 
                     ஬ ६饭  ᤢ ࠭,
                       ᠬ 
   CTRL 4/6             ᫮ /ࠢ.
                     㣠 : ਧ⠫ ᤢ
                     ࠭   ⠡樨 /ࠢ.
   Pg Up               25 ப .
   Pg Dn               25 ப ।.
   CTRL END           ⥪  樨   
                     ப.
   CTRL PgDn          ⥪  樨   
                     ࠭.
   HOME               ⥪ ६頥   砫 ப
                      㬥.   - 頥  
                     .
   CTRL HOME          ࠭  頥   
                     孨 㣮.
   END               ६頥    ப  
                      㬥.
   BACKSPACE/DELETE  DELETE 㭨⮦ ᨬ,   㪠-
                      ,  ᤢ ⮪ ப 
                       . BACKSPACE 㤠 ᨬ
                     ᫥       ᠬ.
   INS               ४砥 ० ⠢/.
   TAB/BACKTAB       ६頥   ᫥  ⠡-
                     樨, ࠢ - ᫨ 뫠   
                      - ᫨   襩 Shift.
   ESC               室  ணࠬ  楤.
   3.3.2  ⠡ ᪠-.

   K    ⨯ ᪠-, " " -
  ,    "  ᢮" -  
᪠.     設, ஬ AT,  ᢮   128
   ( 7 = 1).   ࠧ  T ᮧ
 20  ⨨   148  ᪠. AT ᯮ  
  楯 ⮢         ᢮,  
᢮      ⮢,      ᥣ
ࠢ 0F0H. PCjr  ᯥ樠 ᪠-  , 
55.    ஦,  뫨 ६   
 ,    訡  .  뢠
  뢠      뢠     
 ASCII  ७ .

                      K 饩 設

   K K   K K   K K 

     "1"       2          "T"        20        "L"       38
     "2"       3          "Y"        21        ";"       39
     "3"       4          "U"        22        "'"       40
     "4"       5          "I"        23        "`"       41
     "5"       6          "O"        24        "\"       43
     "6"       7          "P"        25        "Z"       44
     "7"       8          "["        26        "X"       45
     "8"       9          "]"        27        "C"       46
     "9"       10         "A"        30        "V"       47
     "0"       11         "S"        31        "B"       48
     "-"       12         "D"        32        "N"       49
     "="       13         "F"        33        "M"       50
     "Q"       16         "G"        34        ","       51
     "W"       17         "H"        35        "."       52
     "E"       18         "J"        36        "/"       53
     "R"       19         "K"        37      ஡      57

                        ࠢ騥 

   Esc - 1               Ctrl - 29           Alt - 56
   BackSpace - 14        left shift - 42     CapsLock - 58
   Tab - 15              right shift - 42    NumLock - 58
   Enter - 28            PrtSc - 55          ScrollLock - 70

                       㭪樮 

   F1 - 59               F5 - 63             F9 - 67
   F2 - 60               F6 - 64             F10 - 68
   F3 - 61               F7 - 65
   F4 - 62               F8 - 66

                 K ⥫쭮 

   "7" - 71           "5" - 76            "3" - 81
   "8" - 72           "6" - 77            "0" - 82
   "9" - 73           "+" - 78            "." - 83
   "-" - 74           "1" - 79      Sys Req - 132 (⮫쪮 AT)
   "4" - 75           "2" - 80        - 55 (⮫쪮 PCjr)
   3.3.3  ⠡  ASCII

   H     0  31, ࠢ , ᭥  
⠫쭮  [7.1.9].  H,     ASCII  1  255
     , ᫨ ঠ ⮩  Alt
     ⥫쭮  ( ᮮ⢥-
  ⠭  ० NumLock).  K  Alt  ⥬
᢮,   .

  10-  16-      10-  16-  

(null)     0        00     00000000     0      48       30      00110000
           1        01     00000001     1      49       31      00110001
           2        02     00000010     2      50       32      00110010
           3        03     00000011     3      51       33      00110011
           4        04     00000100     4      52       34      00110100
           5        05     00000101     5      53       35      00110101
           6        06     00000110     6      54       36      00110110
           7        07     00000111     7      55       37      00110111
           8        08     00001000     8      56       38      00111000
           9        09     00001001     9      57       39      00111001
          10        0A     00001010     :      58       3A      00111010
          11        0B     00001011     ;      59       3B      00111011
          12        0C     00001100     <      60       3C      00111100
          13        0D     00001101     =      61       3D      00111101
          14        0E     00001110     >      62       3E      00111110
          15        0F     00001111     ?      63       3F      00111111
          16        10     00010000     @      64       40      01000000
          17        11     00010001     A      65       41      01000001
          18        12     00010010     B      66       42      01000010
          19        13     00010011     C      67       43      01000011
          20        14     00010100     D      68       44      01000100
          21        15     00010101     E      69       45      01000101
          22        16     00010110     F      70       46      01000110
          23        17     00010111     G      71       47      01000111
          24        18     00011000     H      72       48      01001000
          25        19     00011001     I      73       49      01001001
          26        1A     00011010     J      74       4A      01001010
          27        1B     00011011     K      75       4B      01001011
          28        1C     00011100     L      76       4C      01001100
          29        1D     00011101     M      77       4D      01001101
          30        1E     00011110     N      78       4E      01001110
          31        1F     00011111     O      79       4F      01001111
஡    32        20     00100000     P      80       50      01010000
  !       33        21     00100001     Q      81       51      01010001
  "       34        22     00100010     R      82       52      01010010
  #       35        23     00100011     S      83       53      01010011
  $       36        24     00100100     T      84       54      01010100
  %       37        25     00100101     U      85       55      01010101
  &       38        26     00100110     V      86       56      01010110
  '       39        27     00100111     W      87       57      01010111
  (       40        28     00101000     X      88       58      01011000
  )       41        29     00101001     Y      89       59      01011001
  *       42        2A     00101010     Z      90       5A      01011010
  +       43        2B     00101011     [      91       5B      01011011
  ,       44        2C     00101100     \      92       5C      01011100
  -       45        2D     00101101     ]      93       5D      01011101
  .       46        2E     00101110     ^      94       5E      01011110
  /       47        2F     00101111     _      95       5F      01011111
  10-  16-      10-  16-  

  `       96        60     01100000          153       99      10011001
  a       97        61     01100001          154       9A      10011010
  b       98        62     01100010          155       9B      10011011
  c       99        63     01100011          156       9C      10011100
  d      100        64     01100100          157       9D      10011101
  e      101        65     01100101          158       9E      10011110
  f      102        66     01100110          159       9F      10011111
  g      103        67     01100111          160       A0      10100000
  h      104        68     01101000          161       A1      10100001
  i      105        69     01101001          162       A2      10100010
  j      106        6A     01101010          163       A3      10100011
  k      107        6B     01101011          164       A4      10100100
  l      108        6C     01101100          165       A5      10100101
  m      109        6D     01101101          166       A6      10100110
  n      110        6E     01101110          167       A7      10100111
  o      111        6F     01101111          168       A8      10101000
  p      112        70     01110000          169       A9      10101001
  q      113        71     01110001          170       AA      10101010
  r      114        72     01110010          171       AB      10101011
  s      115        73     01110011          172       AC      10101100
  t      116        74     01110100          173       AD      10101101
  u      117        75     01110101          174       AE      10101110
  v      118        76     01110110          175       AF      10101111
  w      119        77     01110111          176       B0      10110000
  x      120        78     01111000          177       B1      10110001
  y      121        79     01111001          178       B2      10110010
  z      122        7A     01111010          179       B3      10110011
  {      123        7B     01111011          180       B4      10110100
  |      124        7C     01111100          181       B5      10110101
  }      125        7D     01111101          182       B6      10110110
  ~      126        7E     01111110          183       B7      10110111
         127        7F     01111111          184       B8      10111000
        128        80     10000000          185       B9      10111001
        129        81     10000001          186       BA      10111010
        130        82     10000010          187       BB      10111011
        131        83     10000011          188       BC      10111100
        132        84     10000100          189       BD      10111101
        133        85     10000101          190       BE      10111110
        134        86     10000110          191       BF      10111111
        135        87     10000111          192       C0      11000000
        136        88     10001000          193       C1      11000001
        137        89     10001001          194       C2      11000010
  K      138        8A     10001010          195       C3      11000011
        139        8B     10001011          196       C4      11000100
        140        8C     10001100          197       C5      11000101
  H      141        8D     10001101          198       C6      11000110
        142        8E     10001110          199       C7      11000111
        143        8F     10001111          200       C8      11001000
        144        90     10010000          201       C9      11001001
        145        91     10010001          202       CA      11001010
        146        92     10010010          203       CB      11001011
        147        93     10010011          204       CC      11001100
        148        94     10010100          205       CD      11001101
        149        95     10010101          206       CE      11001110
        150        96     10010110          207       CF      11001111
        151        97     10010111          208       D0      11010000
        152        98     10011000          209       D1      11010001
  10-  16-      10-  16-  

        210        D2     11010010          233       E9      11101001
        211        D3     11010011          234       EA      11101010
        212        D4     11010100          235       EB      11101011
        213        D5     11010101          236       EC      11101100
        214        D6     11010110          237       ED      11101101
        215        D7     11010111          238       EE      11101110
        216        D8     11011000          239       EF      11101111
        217        D9     11011001          240       F0      11110000
        218        DA     11011010          241       F1      11110001
        219        DB     11011011          242       F2      11110010
        220        DC     11011100          243       F3      11110011
        221        DD     11011101          244       F4      11110100
        222        DE     11011110          245       F5      11110101
        223        DF     11011111          246       F6      11110110
        224        E0     11100000          247       F7      11110111
        225        E1     11100001          248       F8      11111000
        226        E2     11100010          249       F9      11111001
        227        E3     11100011          250       FA      11111010
        228        E4     11100100          251       FB      11111011
        229        E5     11100101          252       FC      11111100
        230        E6     11100110          253       FD      11111101
        231        E7     11100111          254       FE      11111110
        232        E8     11101000           255       FF      11111111
   3.3.4   ᥢ䨪  ஥ ࠬ.

   H  ਢ  㤮⢠ ஢  ASCII,  ᨬ
ᥢ䨪, ᯮ㥬  ஥   ࠬ.

  218       194      191           213      209      184
                                                 

    195       197      180           198      216      181
                                                

                            179
                                                 
  192       193      217           212      207      190

               196                            205

  214       210      183           201      203      187
                                                 

    199       215      182           204      206      185
                                                

                            186
                                                 
  211       208      189           200      202      188
   3.3.5  ⠡ ७ .

祭 2-      ⢥騥 

   15                   Shift + Tab ("back-tab")
   16-25                Alt-Q - Alt-P (孨  㪢)
   30-38                Alt-A - Alt-L (।  㪢)
   44-50                Alt-Z - Alt-M (  㪢)
   59-68                㭪樮  F1 - F10
   71                   Home
   72                   Cursor-up (५ )
   73                   PgUp
   75                   Cursor-left (५ )
   77                   Cursor-right (५ ࠢ)
   79                   End
   80                   Cursor-down (५ )
   81                   PgDn
   82                   Ins
   83                   Del
   84-93                F1-F10 + Shift
   94-103               F1-F10 + Ctrl
   104-113              F1-F10 + Alt
   114                  Ctrl + PrtSc
   115                  Ctrl + Cursor-left
   116                  Ctrl + Cursor-right
   117                  Ctrl + End
   118                  Ctrl + PgDn
   119                  Ctrl + Home
   120-131              Alt + 1 - Alt + = (孨 )
   132                  Ctrl + PgUp




                     4. 뢮  ନ.

    1. ࠢ 뢮  ନ.

     ⮩  ᬮ७ ஬ , 梥⭮  -
᪨ , ⥬  PCjr  襭 ᪨ -
 (EGA).   4 ⥬   奬 Motorola  6845
CRTC (cathode ray  tube  controller);   EGA  ᠬ  -
  奬, ᭮  ਭ樯 6845.   
奬 믮   孨᪨  ,  筮 
  ணࠬ.  ,  ⠪ ⠭  ०
࠭, ࠢ ஬  ( 梥⭮ ᪮ )
ࠢ 梥⮬. 奬  ணࠬ , 
楤 樮 ⥬    ࠢ 設⢮
  ⢨.  PCjr  ᯮ⥫ 奬  ᯫ,
"video gate array" (ᨢ  ᯫ),   㦤 
⮬  ࠧ   6845.  EGA  ⥪, ⫨
  ⠫, ⮬  㦤  ⤥쭮. । -EGA
⥬  ᮢ⨬  ᯮ짮 ᮢ ⮢,  
      ⫨.   H   ⮢ EGA
⠪ ,    㣨 ⥬.
     ⥬  ᯮ ,     ⮡ࠦ
  ࠦ  ࠭.  ࠭ ਮ᪨ 
᪠஢    .    ᯮ   ஢
  ⥬, ० ࠭,   ⠪ ⢮ ࠭
⢥  .   K   ࠭  ᪮쪮  ࠧ
࠭,   ⤥  ࠧ 뢠 ᯫ ࠭楩.
H ਢ ⪠ ᢮:

஬ 

   ஬    4K    , 稭  
 B0000H (..  B000:0000).  ⮩   墠⠥ ⮫쪮 
࠭  80-ᨬ쭮 ࠭ ⥪.

⭮ ᪨ .

   ⭮  ᪨    16K     ,
稭    B8000H.  ⮣ 筮  ⮡ࠦ
 ᪮ ࠭,  ࠭,     쬨
࠭ ⥪,  ᨬ  ᫠ ᨬ  ப - 40 
80.

PCjr.

   PCjr   ⥬,   ᠬ   -
襭 ᨥ 梥⭮ ᪮ .  㭨쭠 ⥬,
 ᯮ    ⨢   -
. K BIOS 樠 ⥬,  孨 16K ⠭-
   ⢮   ନ.    ࠧ  
   ⮣  ᪮쪮       ⥬.  
  ᯫ ࠭   ⢥   
㣨 ,  ⠪ 砫 ꥬ    㬥襭  4K
 뫠 প ⮫쪮  ࠭ ⥪.
EGA.

   EGA    ᭠ 64K, 128K  256K .  K஬  -
짮  ⢥     ⠪ ࠭
⮢  ᠭ      1024  ᨬ  (  ᭥  
[4.3.4]). ⮢     ᯫ ணࠬ㥬, ⮬
 稭   A000H  襭 ᪨  ०-
,   B000H  B800H   ᮢ⨬   ⠭묨 -
஬  梥 ᪨ ०.   設⢥ 砥 EGA
  ᥣ    ᠬ   A000H  BFFFH,  
 256K .   , ᪮   ०
   ⮢  ᯫ 뢠     
ᮢ.   㯭 ᫮ ࠭    ०  ࠭,
⠪   ⢠ 饩 .  ᫥⢨ ᢮ ᫮
EGA    16K , ஥    楤
ࠡ  ନ BIOS. H砫   -  C000:0000.

    ⥪⮢ ०    稭      孥
ப ࠭, 稭   㣫.  쭥訥   ७-
  ࠢ    ப    ᫥饩, 
  ࠭  ।⠢   让 ப -     窨
७  ⠪    .    ᪨ ०
   ࠧ  2  4 .   梥⭮ -
   PCjr ࠧ    ᮤঠ ଠ,
⭮    ன   ⢥⮩  祪  
࠭.   EGA     ᮤন     
,  । 梥  窨 ࠭.
     뢮 ⥪ ࠧ ⥬ ࠡ  .
 ࠭ ⢮ 4000 ⮢, ⠪     2000 -
権  ࠭ 室 2  (25 ப * 80 ᨬ).   
 ᮤন   ASCII.     ᯫ ८ࠧ 
  ASCII    易   ᨬ  뫠     ࠭.
ன  ( ਡ⮢) ᮤন  ଠ  ⮬,  -
   뢥  ᨬ.   ஬ ᯫ  -
⠭ 㤥    ᨬ  ભ, 뤥 મ
 ⨢,  ᯮ   ਡ⮢.  梥-
 ⥬    ਡ⮢  ⠭  ᭮   䮭
梥 ᨬ.    砥  ணࠬ   
אַ   ନ,  ⥫쭮 蠥 ᪮ 뢮
 ࠭.
     ⥬, ஬ ஬, ।⠢    梥
᪨ ०,    ⫨   ࠧ襭, ⠪ 
᫮ ६ 뢮 梥⮢.  PCjr  EGA  -
 뢮 16  梥⮢,  祬  EGA   롨  16 
 64 梥⮢.  ᯮ짮 16 梥⮢  窠 ࠭
ॡ   , ᪮  4   ࠭ ᫠
 0  15.   , 梥⭠ 䨪 ॡ ⮫쪮 2
  . 梥⭠  䨪  㯠 ।⠢
쬨 祪    .  K⢮ , ॡ-
   ० ࠭       ᫥, ᫨
⭮  ⢮ 뢮  ⮬ ०  祪   ⢮
, 室  ᠭ   窨.    -
   䨪 (BIOS  ᨬ  ᪮ ࠭)  
  ᮧ ᢮ ᯥ樠 ᨬ.
   4.1.1 ணࠬ஢ ஫ ᯫ 6845.

    ⥬   奬 ஫ -
ନ  Motorola  6845 (EGA  ᯮ    奬,
᭮  6845). 奬 ᯮ   筮
  ஬  ,  梥⭮    PCjr;  EGA  
⮫쪮 ᮢ⨬   ⮩ 稭  ४㥬  
אַ  ணࠬ஢ 奬,  BIOS   믮
ࠡ  .   騬 ᫮, 奬 6845 ⠭-
  ᯫ      ᪮쪨  䠢⭮஢  
᪨ ०.  믮 ᭮ ࠡ  -
樨 ஢  ASCII     뢮  ᮮ⢥-
 ᨬ  奬    (    ⨢ ).
  祭 ਡ⮢ 梥  ᮮ⢥⢥ ⠭-
 ࠭.  ⠪ ᮧ   ࠢ .  ⥪-
  EGA   㭪権 ।  㣨 -
.
   奬  6845  18 ࠢ ॣ஢, ஭㬥஢-
  0  17.   10  ॣ஢  䨪 ਧ⠫ 
⨪ ࠬ ᯫ.   ॣ,  ࠢ, -
  ணࠬ⮢, ᪮  ⮬᪨ ⠭-
 BIOS   ० ࠭.  H ᮢ㥬 ᯥਬ-
஢  ⨬ ॣࠬ, ᪮   ᯮ-
 ନ.    ࠧ 8 ,   易
 , ⮡ ࠭ 16-  稭.    #10-11  #14-15
⠭    [4.2.4]  ⮯  [4.2.1]  .
 #12-13 ࠢ  ࠭栬  ᯫ  [4.5.3].   #16-17
ᮮ頥   ᢥ⮢  [7.3.2].  設⢮  ॣ஢
㯭 ⮫쪮  ; ⮫쪮 ॣ    
  ,  ॣ ᢥ⮢  ।祭 ⮫쪮 
⥭. EGA  6   ॣ஢,  易  -
᪨ ⠫ﬨ.   20  ᥭ;  ।
  ᪠஢   ப  ᨬ ᯮ  -
ન.
     ᥬ 18 ॣࠬ ⢫ १    
,  ண  ஬   ࠢ 3B5H.  
  ࠢ 3D5H  梥⭮   PCjr (⨬,   
 ⮢  ஬  ⠪ ,    梥-
,   ᪫祭 ⮣,  । ன   B,   
D). EGA ᯮ        ᮢ,  ᨬ 
⮣, ᮥ    梥⭮  ஬ .  
  ॣ  ஬      ᭠砫  ॣ
,  ᯮ   3B4H (3D4H  梥⭮),  ᫠
 ॡ㥬 ॣ.  ᫥騩 , ᫠  
 ᮬ 3B5H 㤥 ᠭ   ॣ.  ᪮ ॣ,
  ணࠬ, ᯮ ୮,   ᭠-
      ॣ, ⮬     ॣ  ,
⮬ ᭮     ॣ  ,  ,   ன ॣ
.  ᪮  ⮢ ᬥ,   ᥣ ᮢ
, ᯮ 樨 INC  DEC,   ᫥饬 ਬ:

;---  ॣ 11  12 奬 6845 (  BX)
   ;---롨ࠥ ॣ 襣 
      MOV  DX,3B4H        ; ᭮ ॣ
      MOV  AL,11          ; ॣ  襣 
      OUT  DX,AL          ;뫠  ॣ
   ;---뫠 
      INC  DX             ;㢥稢  
      MOV  AL,BL          ;६ 訩 
      OUT  DX,AL          ;뫠   ॣ 11
   ;---롨ࠥ ॣ 襣 
      DEC  DX             ;⠭  
      MOV  AL,12          ; ॣ  襣 
      OUT  DX,AL          ;뫠  ॣ
   ;---뫠 
      INC  DX             ;㢥稢  
      MOV  AL,BH          ;६ 訩 
      OUT  DX,AL          ;뫠   ॣ 12

     ஬   梥⭮ ஢      ,
    ணࠬ⮢.      3B8H, 3B9H 
3BAH   ஬  3D8H, 3D9H  3DAH -  梥⭮ -
.  ⠭ ० ࠭, ன - 易  ᭮
 ⠭ 梥⮢ ࠭,  ⨩ ᮮ頥  ଠ
  ᯫ.
   PCjr ᯮ       ࠧ. 
⮣,   ন  ଠ樨, ⭮饩  ⨬ ⠬,  
奬 ᨢ   ᯫ,  ᭮ 祭 ன -
ᯥ  ⥫쭮 ࠢ 梥⠬ ࠭.     
ᨢ  ᯫ ⢫ १   ᮬ 3DAH. 
梥⭮     頥  ;  PCjr 
 ⠪ 頥      ᯮ짮 樨
IN,   ।⠢   ᨢ ,  ᯮ-
  OUT. ᨢ  ᯫ  ᫥騥 ॣ:

         H             H祭

           0               ० ࠢ 1
           1               ᪠  梥⮢ ()
           2               梥 ࠭
           3               ० ࠢ 2
           4               
           10H-1FH         祭 梥⮢ 

     ᥬ ॣࠬ ⢫ १  3DAH.  -
砫  ᫠     ॡ㥬 ॣ,   ⥬
祭 ⮣ ॣ.   ⮬᪨  ४砥 
⨬  㭪ﬨ  ࠡ  ᠬ   묨.  ⮡   砫
  ,     . ⤥ ॣ -
㦤  ࠧ  ⮩ .
   ᮡ  ।⠢ 16 ॣ஢   ࠬ 
10H  1FH. K ॣ  ࠧ ᥣ 4 ,   ࠧ
筮,  ⮡  ࠭ 16  ஢   16  
梥⮢.   樨 ᨬ  窨  ࠭ 
ᮤন  , 㪠뢠騥  梥⮬  뢮 
ꥪ.   ଠ 뢠 묨 ਡ⮢.   ⫨稥 
梥⭮ ᪮  PCjr  ᯮ   ਡ-
⮢  ।⢥  । 梥,  㤥 뢮-
.    ⮣  ਡ⮢   㪠⥫ﬨ  
  16 ॣ஢ ,    ᫮,  ᮤঠ饥  ⮬ -
,  ।  梥⮬ 㤥 뢮   ᨬ.
 ⠪ ⮤, ணࠬ  㦭   ⮫쪮 ⠭ -
 ,   ᨬ  窨  ᮮ⢥騬 ਡ-
⮬  ᢮ 梥.   ࠡ   ०,
 ⥪⮢, ⠪  ᪨.
   EGA  ।   㭪樨   奬  ஫
ਡ⮢ (  3C0H)      奬  ஫
䨪 ( ⮢ 3CCH-3CFH).  K஫ ਡ⮢ ᮤন
16 ॣ஢  EGA,  ஭㬥஢   00  0FH.  -
   ᮤঠ 6-  梥⮢,  EGA 易  
襭  梥  ᯫ,  ⮬     ᯮ짮
 16 梥⮢   64-.  [4.4.1]   ணࠬ-
஢ ॣ   PCjr  EGA.
   4.1.2 ⠭/஢ઠ ० ᯫ.

   ஬  ন  ० ନ, 梥⭮
᪨ - ᥬ, PCjr -  ,   EGA - .  ⥬
PCjr  , 祬 ஬  梥⭮ , ᪮-
  ।⠢  ப  롮  梥⮢   ०   
  梥⠬,  ⠪  ⥭  ୮- ०.   EGA
  ᫮,  ন     64 梥⮢, 䨪 
஬ ᯫ  뢮  43 ப.  H ਢ  祭
ࠧ ०:

   H                                                

    0        40*25 (320*200) B&W 䠢⭮஢         梥⭮, PCjr, EGA
    1        40*25 (320*200) 梥⭮ 䠢⭮஢     梥⭮, PCjr, EGA
    2        80*25 (640*200) B&W 䠢⭮஢         梥⭮, PCjr, EGA
    3        80*25 (640*200) 梥⭮ 䠢⭮஢     梥⭮, PCjr, EGA
    4        320*200 4-梥⭠ 䨪                     梥⭮, PCjr, EGA
    5        320*200 B&W 䨪 (4 ⥭  PCjr)          梥⭮, PCjr, EGA
    6        640*200 B&W 䨪                           梥⭮, PCjr, EGA
    7        80*25 (720*350) B&W 䠢⭮஢         ஬, EGA
    8        160*200 16-梥 䨪                    PCjr
    9        320*200 16-梥 䨪                    PCjr
    A        640*200 4-梥 䨪                     PCjr
    B        १ࢨ஢  EGA
    C        १ࢨ஢  EGA
    D        320*200 16-梥 䨪                    EGA
    E        640*200 16-梥 䨪                    EGA
    F        640*350 4-梥⭠ 䨪  ஬      EGA
   10        640*350 4-  16-梥⭠ 䨪             EGA

   EGA  ࠧ蠥  8 ࠭  ० 7 - ⠭⭮ -
஬ ⥪⮢ ०.  0-6  ᮢ⨬, ᯮ-
   ࠧ.   ᫮,  ४⥫ 
EGA ⠭  ࠡ    襭  梥 ᯫ 
IBM,  ࠤ樮 ⥪⮢ ० 뢮  ᮪  ࠧ-
, ᯮ 㭮  ᨬ,  騩  8*14 祪,  
 8*8.
   BIOS  ࠭   ६     0040:0049,  
ன  ᮤন    ⥪饣   ०.       
0040:004A  ᫮ ᨬ  ப  ⥪⮢ ०.

   ᮪ ஢.

   ᨪ  ᯮ   SCREEN   WIDTH    ࠢ
० ࠭. PCjr  ᯮ     ᪮쪮 㣨
ᯮᮡ,  祬 ஬  梥⭮ ,   㤥 -
 .   SCREEN ⠭ ०  梥⭮-
  .    ஬ ⮨   ,  ⠭騩
ࠧ襭, :

   0   ⥪⮢ ०
   1   ᪨ ० । ࠧ襭
   2   ᪨ ० ᮪ ࠧ襭
SCREEN 1  ⠭  ᪨  ०  । ࠧ襭.
ன ࠬ 砥  몫砥 梥.  ࠬ  
᫠  ० ᮪  ࠧ襭   梥⭮ , -
 ࠧ襭 ⮫쪮 ୮- ०.  ⥪⮢ ० 0
 ⢥  ண  ࠬ  몫砥  梥,   1 - 砥.
  SCREEN  0,0 ⠭ ⥪⮢ ୮-  ०.
 ᪮ ०  ⭠: 0 - 砥 梥,  1
- 몫砥.  ⮬  SCREEN 1,1 ⠭ ୮--
 ᪨ ० । ࠧ襭.
    ० ࢮ砫쭮 뢠  ୮-묨.  
COLOR  (.   [4.1.3])   ᯮ짮,  ⮡  
࠭ 䮭 梥⮬.  ᪮ ०   COLOR
筮,  ⮡   䮭  㪠 梥.   H  
⥪⮢ ०     ᫥   COLOR ᯮ짮
 CLS.
     ⥪⮢  ०  ப   40  80  ᨬ.
 ⠭ ॡ㥬 ᫠  ᨬ   ப  ᯮ짮-
  WIDTH.  WIDTH 40  40 ᨬ  ப,  WIDTH
80 - 80. 㣨 祭 ⨬. ᫨  WIDTH ᯮ-
  ᪮ ० (SCREEN 1  SCREEN 2),  WIDTH  40
ॢ ࠭  ० । ࠧ襭,  WIDTH 80 -  ०
᮪ ࠧ襭.  ᪮쪮 ਬ஢:

100 SCREEN 0,1: WIDTH 40  '梥⭮ ⥪⮢ ०  40 ᨬ

100 SCREEN 0,1: WIDTH 40  '梥⭮ ᯫ  ஬

100 SCREEN 0,1: WIDTH 40  '梥⭠ 䨪 । ࠧ襭
 .
 .
500 WIDTH 80              'ॢ  ० ᮪ ࠧ襭

   ஬    ॢ  ० 40 ᨬ 
ப ࠬ SCREEN 0: WIDTH 40.   ⠭ ०
  80  ᨬ  WIDTH 80.   ०  40  ᨬ  
࠭ ᢮  ਭ, ⮬ 㤥 ᯮ짮 ⮫-
   ࠭.  ப ७ ᫥ 40- ⮫  
      ࠢ   ࠭  
  LOCATE.  CLS  ⮫쪮   ࠭.  㤭
।⠢ ணࠬ,   ᯮ짮    ᢮⢮, 
  ⢨⥫쭮   ணࠬ ਭ    (᪠,
१  INPUT),     ६    짮⥫ த
    ࠭, ⠢ ࠢ  ࠭
  ४஢    ଠ樨.  ⮬ 
뢮   ࠢ  ࠭  ⮫쪮 אַ 饭
  ᯫ,  ᭥  [4.3.1].
   PCjr ᯮ  ᨪ 7 ஢ ०:

   H                   

     0       ⥪⮢ ०, ਭ   40  80
     1       4-梥⭠ 䨪 । ࠧ襭
     2       2-梥⭠ 䨪 ᮪ ࠧ襭
     3       16-梥⭠ 䨪  ࠧ襭
     4       4-梥 ० । ࠧ襭
     5       16-梥 ० । ࠧ襭
     6       4-梥⭠ ० ᮪ ࠧ襭
   ᫥   ० ॡ ᪥  ᨪ.   
࠭ । ⢮ , ॡ㥬   -
 (ᯫ ࠭ 㦤  [4.5.3]).  ணࠬ 
⢥ ᮮ⢥饥  ⢮  । ⠭ ०-
.     ஬ CLEAR.   ஬ CLEAR  
᫥   ᫠,  ।騥  ⢮  ,  
 ᥫ ⠭ ࠧ  (  ࠬ
㦤   [1.3.1]).   Hਬ,  ࠧ   16K,
⠭   㬮砭, 뤥  CLEAR ,,16384.
K ᮦ, ࠧ  㪠뢠   , ⮬ 
  ࠢ  㣫  ⨯ 4000  32000,  ࠢ  4096  
32768.  ,  2K =  2^11,  4K  = 2^12, 16K = 2^14,  32K =
2^15.   뤥  ࠭  16K,  CLEAR ,,3*2^14.
       ᠬ  砫 ணࠬ, -
  ᯮ짮  CLEAR  ६  -
. ⬥⨬ ⠪,    ᮧ ᪮쪨 ࠭, ࠭
0 稭   ᮢ .
   K    室 ⮩  ᨪ  ন  -
⥫ ० ନ EGA.  [4.3.3] ਢ ணࠬ 
設 몥,    ⠭  ०.

   । ஢.

   㭪  0  뢠 10H ⠭ ० ᯫ.    AL
 室  ०   0  A. ⮡ ⠭ 梥-
 ᪨ ० । ࠧ襭 :

   MOV  AH,0       ; 㭪樨
   MOV  AL,4       ; ॡ㥬 ०
   INT  10H        ;⠭ ०

  । ⥪饣 ᪮ ०    ᯮ짮
㭪 F 뢠  10H.  뢠  頥  ० 
AL.    ⠪   ⥪饩 ࠭ ᯫ  BH   ᫮
ᨬ  ப  AH.

   MOV  AH,0FH          ; 㭪樨
   INT  10H             ;祭 ଠ樨  ० ᯫ
   MOV  MODE_NUMBER,AL  ; ०  AL
   MOV  NUMBER_COLS,AH  ;᫮ ᨬ  ப  AH
   MOV  CURRENT_PAGE,BH ; ⥪饩 ࠭  BH

   MS DOS ᯥ稢 ⠪ Esc-᫥⥫쭮  ⠭
  ० ᯫ.   ⮣ 室, ⮡  ।-
⥫쭮 㧨 ࠩ  ANSI.SYS,   ᭥  ਫ
.   ࠢ ப   ESC [=#h,  # -  ०,
㪠   ASCII,   ESC  砥    ᨬ  
ASCII 27. Hਬ:

;--- ᥣ 
MED_RES_COLOR  DB   27, '[=4h$'
MED_RES_B&W    DB   27, '[=5h$'
;---⠭ 梥⭮ ᪮ ० । ࠧ襭
   MOV  AH,9             ; 㭪樨 뢮 ப
   LEA  DX,MED_RES_COLOR ;DS:DX  㪠뢠  ப
   INT  21H              ; ०

   H ஢.

       㭪 梥⭮ , ஬    PCjr
ᬠਢ ⤥쭮,  ᪮   ⢥ ⫨.
⭮  ᪨   ॣ,  ⠭
० ᯫ.  ᯮ    ᮬ 3D8H.  0, 1, 2
  4 ࠭ ⠭.   0 ⠭ 40 ᨬ  ப,
  ࠢ 0  80 -  ࠢ  1.  1 ⠭ -
  ⥪⮢ ०,  ࠢ 0   ᪨,  ࠢ
1.   2 ⠭ 梥⭮ ०,   ࠢ 0  ୮--
,  ࠢ 1. , ,  4 ⠭  -
 ० । ࠧ襭,   ࠢ 0  ᮪ ࠧ-
,   ࠢ 1 ( 2   ࠢ 1).  H  ਢ
 樨:

                         :  5  4  3  2  1  0

0. 40*25, ୮-, ⥪         1  0  1  1  0  0
1. 40*25, 梥⭮, ⥪             1  0  1  0  0  0
2. 80*25, ୮-, ⥪         1  0  1  1  0  1
3. 80*25, 梥⭮, ⥪             1  0  1  0  0  1
4. 320*200, ୮-, 䨪     0  0  1  1  1  0
5. 320*200, 梥⭮, 䨪         0  0  1  0  1  0
6. 640*200, ୮-, 䨪     0  1  1  1  1  0
                                               ⥪ 80*25
                                             䨪 320*200
                                           ୮-
                                         ࠧ襭 뢮
                                       䨪 640*200
                                     

      ⮢  ਢ   ०  ᯫ.
H㦭   蠣,    ࠬ஢  10
ॣ஢     3D5H.  BIOS    ᥬ  ⮬,
⮬   ᫠  ᥩ ⮩ ⥫쭮. -
      २樠஢  ॣ  ०  
⥪饬 ०,   3  5,   ᠬ    -
  ⠭ ०.   K  5 襭  0,   -
頥  ਡ  ᨬ;  ⮬ 砥, ᫨ 訩 
 ਡ⮢ ⠭,      ਢ   뢮 䮭
梥 ᮪ ⥭ᨢ (.  ਬ  [4.1.3]).  3 ⮣
ॣ ࠢ ࠧ襭 뢮.  K  ࠢ 0,  
࠭  訢   梥 ࠬ,      頥.
뢮  頥,   祭 ⮣  
 1.  ᢮⢮  ᯮ짮   ७-
樨 ࠭  ᤢ [4.5.1].  H ⨫ ᯮ 
᢮⢮   ⮣, ⮡   ⮬ ୮ ⨥ -
 ନ,   祭,   ᯮ. ⬥-
⨬ ⠪,     ॣ  ᯮ.
   ஬    ᮮ⢥騩     3B8H.
 祭 ⮫쪮  .   0 ⠭ ᮪ ࠧ-
襭,  ஥   ⢥ ⨬  ०  
஬ ᯫ. ᫨    ࠢ 0,   -
⠥ ࠡ.  㣨   -   3  5, 
ࠢ ࠧ襭 뢮  ,  筮 ⠪ ,  
 梥⭮ .
   PCjr  । ଠ, ᮤঠ     
஬  梥⭮ .   ᨢ  ᯫ  
ॣ ०,  0  3.   㯠  ⨬ ॣࠬ 
᫠  ॣ      ᮬ  3DAH,  ⥬ 
    ⮬   (⥭ ⮣  ᯥ稢,  
ࢠ    㤥  ਭ,   㪠  -
㥬 ॣ).  祭 ⮢  ॣ஢:

 0:
    0   1 = ⥪, 80*25  ० 5  6,  0
       0   1 = ᪨ ०, 0 = ⥪⮢
       0   1 =  梥⮢, 0 = ࠧ襭 梥⮢
       0   1 = ࠧ襭 뢮, 0 =  뢮
       0   1 = 16-梥 ०, 0 =  ⠫ ०

 3:
    0   ᥣ 0
       1   1 = ࠧ襭 , 0 = 16 䮭 梥⮢
       2   ᥣ 0
       3   1 = 2-梥⭠ 䨪, 0 =  ⠫ ०

K     । ,  ⮨ ⠭   -
 אַ  ணࠬ,  ⠪    㦭    ࠡ 
ணࠬ஢  奬  6845.  H     ॣ஢
ᮤন ,    室  ணࠬ  -
,  ᪮  ॣ ⮫쪮  ,    -
  祭   ⮢.     -  ࠧ襭
뢮    ॣ 0   ࠧ襭   ॣ 3.   
⢨ 뫮 ᠭ ࠭      ᯮ짮  
ࠧ 㤥 㦤  ⮩  ( [4.5.1]  [4.1.3]).
   EGA     ॣ, ࠢ ०  ᯫ.   
   3D5H.   ॣ  ᮤন   ,
易    祬- 㣨, ⮬   稭  -
  .  ன ॣ     3C0H  ᮤন
,  롨ࠥ 㤥   7  ਡ⮢ ᮮ⢥⢮-
   ᮪ ⥭ᨢ.   㦤 
[4.1.3].
   4.1.3 ⠭ ਡ⮢/梥⮢ ᨬ.

   K  ᯫ  ⠭  ⥪⮢ ०     
⥬,   樨  ᨬ   ࠭ ⢮  
.     ᮤন   ASCII   ᨬ,  
ன - ਡ ᨬ.  ⭮   PCjr  뢮
  梥,   ᠬ ᨬ, ⠪   , ⢥  
ᨬ (䮭  梥).   ஬    ࠭祭 ⮫쪮
     梥⮬,      ஢  ભ
ᨬ, 祣     梥⭮     PCjr.   
⥬  뤠 騥 ᨬ  ⨢ ࠦ.
  ⥬  ⠪ ᮧ ᨬ  ᮪ ⥭ᨢ-
,    梥⭮   PCjr  襭  ⥭ᨢ-
 ᨬ   ᠬ    ਢ    㣮 梥 (ᥬ
᭮  梥⮢   ᨨ  襭  ⥭ᨢ,  
  16 梥⮢).  EGA  㬥   ,    -
⠫ ⥬   㣮.  ⭮,  襭 -
    뢮  ભ  梥  ᨬ, ᪮
 ࠦ ᨬ 8*14  ⠪ .

   ਡ 梥:
     㪠 梥⮢ ࠭        ᯮ-
  ᨪ  뢠ﬨ 樮 ⥬.  ⠪:

          0 -                   8 - 
          1 - ᨭ                   9 - 㡮
          2 -                 10 - ᢥ⫮
          3 - 樠                   11 - ᢥ 樠
          4 -                 12 - ᢥ⫮
          5 -                 13 - ᢥ⫠ 
          6 - 筥             14 - 
          7 -                   15 - મ

訥      ਡ⮢  ⠭  梥 ᠬ
ᨬ  ( 3 砥 ᮪ ⥭ᨢ).   騥  
 ⠭ 䮭  ᨬ.       ⥫⢠
訩  砥  몫砥 .  ࠧ:

  0 = 1, ᨭ 砥  ᭮ 梥
          1 = 1,  砥  ᭮ 梥
          2 = 1,  砥  ᭮ 梥
          3 = 1, ᨬ 뢮  ᮪ ⥭ᨢ
          4 = 1, ᨭ 砥  䮭 梥
          5 = 1,  砥  䮭 梥
          6 = 1,  砥  䮭 梥
          7 = 1, ᨬ 

     0-2   4-6 ᮤঠ       梥⮢  
ᠬ ᨬ  䮭.   塨 㯯  8 -
  権.  K 砥  ᮪ ⥭ᨢ,  
  8 梥⮢. ⭠  梥⮢ 
  ⠭ ⮢ ᫥騬 ࠧ:
   K      H ⥭ᨢ  ᮪

      0        0       0                    
      0        0       1        ᨭ             ᢥ⫮ᨭ
      0        1       0                   ᢥ⫮
      0        1       1        樠              ᢥ 樠
      1        0       0                   ᢥ⫮
      1        0       1                   ᢥ⫠ 
      1        1       0        筥        
      1        1       1                     મ

   16 梥⮢   䮭 梥.   ⮬ 砥  7
 㦨 㪠⥫  ᮪  ⥭ᨢ   䮭,  
㪠⥫  ᨬ.   梥⭮   
 5   ᮬ 3D8H  0,   . ᪮ 
  㯥  ⮫쪮  ,   ⠫    
  ⠭.      㯭  ⮫쪮  
:  ⥪⮢ ०  40   80 ᨬ  ப.   
०  80 ᨬ  ᫠   ᫮ 9,   ० 
40  ᨬ  - ᫮ 8.  ⮡      
 ⨬ 祭 32.  PCjr    0  1 ॣ-
 3 ᨢ  ᯫ.   ⠫    ࠢ
, ஬  3,      ⠭  ०
梥⭮ 䨪. K஬ ⮣ ०,  ⠭  -
  ᭠砫    ᮬ 3DAH, ⮡ ⮢
ᨢ   ᯫ, ⥬ ᫠   3, ⮡ 㪠  -
,  ⥬ ᫠ 0, ⮡  ⠭   .  -
襭  ணࠬ ᥣ  ⠭ , ⠪  
᫥ ணࠬ    .
   EGA ⠪   ࠧ/ ,   ⮬ -
砥     3C0H.  砫     3DAH,  ⮡
   ᭮ ॣ  3C0H. ⥬  ᫠ 
3C0H  10H, ⮡ 㪠 ᮮ⢥騩 ॣ.  H,  
᫠   ⮬  .   ᪮  ॣ ⮫쪮
 ,      ࠢ쭮 ⠭.  -
 砥 ⠭    3,    몫砥 ᮬ ⮣
.    ⠫   梥⭮ ⥪⮢ ०  
ࠢ 0.
    梥⭮ ,   ᨬ  뢮   ᯫ 
梥⭮ ᪮ ०,   ࠦ  ⥪饬 䮭
梥.  ,  뢮  ࠭,   ᨪ, ⠪ 
  MS DOS (뢠 21H) ࠭祭 뢮 ᨬ   쥬
梥 ᯮ㥬   (     梥⮢ -
.  [4.4.1]).   0 ᨬ /筥,   
1  .  楤  뢮  ᨬ  BIOS (뢠 10H),
,    㪠    梥⮢ .     㣮
஭,  PCjr, 梥 祭  । 樨 
  , ⮬  뢮 ᨬ  ᯮ짮-
  梥.
     PCjr  梥 ᮮ⢥騥   ࠬ  
 .  K   易  ॣ஬  
ᨢ  ᯫ [4.1.1].   ॣ ஭㬥஢  10H
 1FH,  ᮮ⢥     0  15. K 4- -
  ᮤন  ᫮     0-15,  ஥  ।⠢
ॠ 梥, 뢮    ணࠬ 砥 
   ஢.  Hਬ, ᫨  -    ணࠬ
㪠,  ᨬ    뢮     ஬ 0, 
梥  뢮 ᨬ ।  梥,  ࠭饬  
ॣ  0. H砫쭮  祭 ⮣ ॣ 0000, -
⮬ 㤥 뢮  梥.  H ᮤন ⮣  ॣ
  ,  ᪠,    0001,    ⮬ 砥 
  0 ਢ  뢮 ᨭ 梥⮬.  K , ᯮ-
㥬  ॣ  ⠪ ,      ணࠬ-
.  H .  4-1  砫쭠 ⠭ ॣ஢  
  ॣ஢,  ஬  ॣ    梥, 
 ⠪, ⮡ 뢮 梥 .
   ⮡  ணࠬ஢  ॣ  PCjr  㦭  ᭠砫
᫠   ( 10H   1FH)   ᨢ  ᯫ, 
 ண 3DAH.  ⥬ 㦭 ᫠   ⮬  -
. ⮡  㢥७,   ᨢ ⮢ ਭ  ॣ-
,    ,  ᭠砫    3DAH,  ᨢ
⠭.
   EGA ⠪ ᯮ 16 ॣ஢  .   ᯮ 
    ஬ 3C0H,      00  0FH.   H
᭠砫     3DAH,  ⮡  ४   
 ॣ, ⥬ ᫠  ॣ   3C0H,  
⥬ ᫠ . K  ४⥫   EGA ⠭ 
襭  ० ( 襭 梥⭮ ᯫ IBM),   -
   ࠭  64  梥⮢.    ⮬ 砥 ⠭
ॣ     6 ⮢  ଠ  R'G'B'RGB.  
RGB  ⥬ 梥,   R'G'B'  - 梥 襭 મ.
K  ⠭   R'  R, ਬ,    ਢ   祭
મ ᭮ 梥.    ᬥ訢   ⥭-
. ᫨ ॣ , ।祭  64 梥⮢, ᯮ-
   襭 ०,  4-  5-  ॣ -
    ᮤন ॣ஢ ᬠਢ  筮  奬
RGB.  ᪮ PCjr  EGA  ᯮ ॣ ,  롮
䮭 梥  ࠭祭 ᯮ짮  7  ਡ⮢
 ⢥  .

஬ ᨬ:

   ஬ ᨬ ᯮ   ਡ⮢ ᪮쪮 
࠭ ࠧ.  K   ਡ⠬ 梥,  0-2  ⠭-
 ᭮ 梥,   4-6  -  䮭.   梥  
⮫쪮   ,  ᫥騬 ᮮ⢥⢨ ⠬:

                   ᭮ ਡ        
 6  2  5  1 4  0

    0        0       0                        
    0        0       1      ભ       
    0        1       0                         
    0        1       1                         
    1        0       0                         
    1        0       1                         
    1        1       0                         
    1        1       1                         
Hଠ  ०    ୮,   0-2 ⠭  
111,   4-6 ⠭   000.  H⨢  ࠦ ᮧ-
 묨 祭ﬨ ⮢.  뢮  襭
મ,   3 ⠭   1;   ᯮᮡ -
 襭 મ 䮭,  ᨬ 뢮   ⨢-
 ࠦ,  ⠪ 㯭 ન  ⨢.  
 , ⠭  1   7   ᨬ.  ᥣ
  ⮫쪮  10 権,  ᨬ .    
 ॠ ࠧ묨 ⠭ ⮢. H ਢ 
   ⠭   :

   ਡ                 窠 ⮢           10-

   ଠ                00000111            7         7
   ⥭ᨢ               00001111            F        15
   ଠ ભ   00000001            1         1
   ⥭ᨢ ભ  00001001            9         9
   ⨢                01110000           70       112
   ଠ 騩       10000111           87       135
   ⥭ᨢ 騩      10001111           8F       143
   ଠ 騩 . 10000001           81       129
   ન 騩 .   10001001           89       137
   ન ⨢          11110000           F0       240

   ᮪ ஢.

   ᨪ  ⠭  梥   ਡ  ᨬ  ஬
COLOR.    PRINT    WRITE,   ᫥  
஬  COLOR,  믮  ਡ⠬,  㪠묨   ⮬
.  䮭  ⮫쪮  뮤 ᨬ,  
 ᥣ ࠭.  H  COLOR    ,  뫮
뢥 ࠭.
   K஬  ஬  ,  COLOR  3,4 ⠭
᭮ 梥 ᨬ 樠 (#3),  䮭 -  (#4). -
  ᭮ 梥⮢ 0-31,  祬  ᫠ 0-15 ᮮ⢥
梥⠬,  ᫥   襯ਢ ⠡,  ᫠  16-31
 ਡ      ᫠ 16,  
  ᠬ 梥,    ᨬ.  (  ᭮
梥 ਮ᪨     䮭,     ६  䮭
梥 ⠥ .)
    PRINT  WRITE  ⠪ 뢮 ᨬ  -
᪨ ࠭.   ⮬  梥  ᨬ  -  ᥣ ⨩ 梥
⥪饩 , ..  /筥   0    -
  1.
   ⬥⨬,     稭  ࠡ  梥⭮ ⥪⮢
०,    ࠭ ୮-.  ⮡   ࠭ 
䮭 梥, 室  㪠  ஬ COLOR ,2, ਬ,
 梥  ⥬  ࠭  CLS. K  -
 ࠭  室 믮  ணࠬ,  室, ⮡ -
    COLOR  ⠭ 䮭 梥 ⠪,    
   ࠭.
    ஬ ᯫ ਡ  ⠭ 
ࠧ.   0  ᮮ⢥ ୮ 梥,     ᥫ  1-7
ᮮ⢥ .   ࠧ COLOR 0,7 ⠭ -
 ࠦ   䮭 (⨢),   ६  COLOR 7,0
 뢮  ᨬ    ୮  䮭  (筠 ⠭).
  ᪫祭: ᫨  ⢥ ᭮ 梥  ᯮ-
  1,   뢮 ભ ᨬ.  ਡ
8      ᭮ 梥, 稬 મ  ࠦ.
ਡ 16       0-15,  稬  騥 ᨬ.
  ࠧ  7+8+16=31  મ 饥   ࠦ.
 䮭 梥 ⨬ ⮫쪮 祭  0  7.
   ᫨  ᯮ אַ  ⮡ࠦ     [4.3.1], 
 COLOR    뢮.  ⮣   
ॡ㥬 ⠭ ਡ⮢  ⠡   אַ ᢮ -
  ᮮ⢥饣  ਡ⮢ ஬ POKE.   ,
  ਡ⮢ ᥣ   樨  -
.  ⮡ࠦ      16 䮭 梥⮢ 
ᨪ ( ᫮,       㦭  騥 ᨬ). 
᪮      OUT &H3D8,8, ⮡  訩  
 ਡ ⢮   મ  䮭 梥⮢. 
᫥饬  ਬ  業 ࠭ ⠥ મ "!"  
ᢥ⫮᭮ 䮭.

100 DEF SEG = &HB800   '㪠뢠   梥⭮ ᯫ
110 OUT &H3D8,8        'ᯮ㥬 16 䮭 梥⮢
120 POKE 1000,33       '⠥ !  業 ࠭
130 POKE 1001,196      '  ᢥ⫮᭮ (11000100)

K 㦥 ਫ  PCjr  ࠭     ᨢ 
ᯫ.    ணࠬ  PCjr (   㤥 ࠡ 
० 梥⭮ 䨪):

100 DEF SEG = &HB800   '㪠뢠  
110 X = INP(&H3AH)     '⠥  ᨢ  ᯫ
120 OUT &H3AH,3        'ॡ㥬   ॣ 3
130 OUT &H3AH,0        '뢠   ⮣ ॣ
140 POKE 1000,33       '⠥ !  業 ࠭
150 POKE 1001,196      '  ᢥ⫮᭮ (11000100)

ਢ  ਬ   祭 梥 ॣ .
K  梥,  筮 뢮 ᨭ (0001) ᤥ,  ⮡
 뢮 梥    (0101).   H  ॣ ᨢ 
ᯫ, ᮮ⢥騩  梥 1 ࠢ 11H.

100 X = INP (&H3AH)    '⠥  ᨢ  ᯫ
110 OUT &H3AH,&H11     'ॡ㥬   ॣ 11H
120 OUT &H3AH,5        '頥 㤠   (0101 = 5)

   । ஢.

   뢠  DOS  BIOS ।⠢ 祭   
 ࠡ  梥  ⥪⮬.  쪮  㭪  9 뢠 10H
ਭ  ਡ⮢  뢮 ᨬ. 㭪 A 뢠
10H 뢮 ᨬ  㪠  梥    ਡ;  
頥  ᨬ   ,  ண    ਡ,  ⠪
ࠧ ਡ ࠭ ᢮ ஥ 祭. 㭪 D -
  10H  ⠪ ⠢ ஭  ਡ⮢.     
㭪樨 㦤  [4.3.1].
   㭪樨 뢮  ࠭  DOS  뢠  21H  ᥣ  뢮
  ୮.   ᫨  ᥣ ࠭ ⠭ 
䮭 梥,  㭪樨 DOS  ⠭  ਡ  ଠ
  뢮  ᨬ.    ᯮᮡ ८-
  ࠭祭. MS  DOS  ।⠢  ࠩ  ன⢠
ANSI.SYS,   ஢ ᯥ樠 Esc-᫥-
⥫쭮.  ਫ   ᭮  ᯮ짮.
Esc-᫥⥫쭮 뢮 १ 㭪 9 뢠  21H,
 筮 뢮 ப  ᨬ   ࠭.   ⮬ 砥
ப ⮨  ᨬ Esc,   ᫥ [,   
   ᥫ  ਢ ᯨ᪠. ப 
 ᨬ m   ࠭⥫ $.   -
:

   0    ਡ 몫祭 (  )
   1   祭 襭 ⥭ᨢ
   4   祭 ન
   5   祭 
   7   祭 ⨢ ࠦ
   8    祭 ( ⮬ ᨬ )

   30  ᭮ 梥         40  䮭
   31  ᭮ 梥        41  䮭
   32  ᭮ 梥        42  䮭
   33  ᭮ 梥         43  䮭
   34 ᨭ ᭮ 梥          44 ᨭ 䮭
   35 ᭮ 梥         45 䮭 
   36 ᭮ 梥 樠           46 䮭 樠
   37  ᭮ 梥          40  䮭

⬥⨬,   㭪樨 MS  DOS  뢮 ᨬ  ᪮
०,   筮 ᯮ  3 ⥪饩 .  
Esc-᫥⥫쭮⥩  ⠭  梥 ᨬ ᮮ⢥-
騬     梥⮢ .  H 㪠뢠 30  31  
䮭 梥, 32  33 -    1, 34  35 -   2 
36   37 -   3.   ⮬ 砥   㪠뢠 䮭
梥.
    ᫥饬 ਬ  ࠭  뢮    ப  
㭪樨  9 뢠 21H.  ࢠ 뢮 ᨭ  ᭮,  
 - 騬 樠  ᭮. H  ८। -
  ⢥ 䮭 梥  ன ப, ᪮ -
祭 梥⮢    ᫥騥  뢮 (
㭪樨  BIOS 뢠 10H),   ,     ᤥ
㣨 祭. ⬥⨬,     ६訢  -
ࠢ 梥⮬  뢮 ᠬ ப.

;--- ᥣ 
STRING_1     DB   'The rain in Spain',0AH,0DH,'$'
STRING_2     DB   'Falls mainly on the plain$'
BLUE_RED     DB   27,'[34;41m$'
BLINK_CYAN   DB   27,'[5;36m$'
;---뢮 ப
   MOV  AH,9          ;㭪 뢮 ப
   LEA  DX,BLUE_RED   ; ࠢ饩 ப  DX
   INT  21H           ; 㤥 뤠 ᨭ  ᭮
   LEA  DX,STRING_1   ;㪠뢠   ப
   INT  21H           ;⠥ ப
   LEA  DX,BLINK_CYAN ; ன ࠢ饩 ப
   INT  21H           ;塞 梥  騩 樠
   LEA  DX,STRING_2   ;㪠뢠   ப
   INT  21H           ;⠥ ப

  ᥣ     ⮬,  ⮡    ਡ
梥  ଠ쭮  ﭨ  ।  襭 ணࠬ, -
  ⨢ 砥   ⢮   뢮 ᫥-
 ணࠬ.   ᫥  뢥 Esc-᫥⥫쭮,
ᯮ   0,  㪠 .
   PCjr  EGA  ᯥ樠 㭪 BIOS  ⠭ ᮤ-
 ॣ஢ .  㭪 0 㭪樨 10H 뢠
10H.  H   ॣ  ( 0  15)  BL,  
祭  梥 (⠪   0    15)  BH,  ⥬ 믮
뢠.  㭪 2 㭪樨 10H ⠭   ॣ
,  ⠪ 梥  ࠭,  ᯮ  17- ᨢ, 
  㪠뢠 ES:DX.   0-15 ᨢ   
ॣ  0-15,    16  ⠭ 梥 ࠭.  
⮬,  ⤥쭮 ⠭ 梥 ࠭ . [4.1.4].

   H ஢.

   K  㦥 﫮  ࠧ "᮪ ஢",   
 ॡ㥬 祭  ਡ⮢  ,  ⥬
ᨬ,   ஬  ਡ   ⭮.   ਢ
ਬ  梥⭮   PCjr.   ਬ ⠭
⥪⮢  ࠭ 80*25  16 䮭묨 梥⠬,  ⥬ ࠭  -
樠   梥 ᢥ⫮ᨭ 䮭:

;---⠭ 16 䮭 梥⮢  ⥪⮢ ० 80*25
        MOV  AL,00001001B   ;⠭  0  
        MOV  DX,3D8H        ; ॣ
        OUT  DX,AL          ;뫠  ॣ
;---樠㥬  ࠭    ᢥ⫮ᨭ 䮭
        MOV  AX,0B800H      ;㪠뢠  
        MOV  ES,AX          ;
        MOV  CX,2000        ;뢠 ਡ  2000 祥
        MOV  BX,1           ;BX 㪠뢠   ਡ⮢
        MOV  AL,10010100B   ;祭  ਡ⮢
NEXT_CHAR:   MOV  ES:[BX],AL   ;뫠 ਡ  
        INC  BX             ;㢥稢 㪠⥫  ਡ
        INC  BX             ;
        LOOP NEXT_CHAR      ;襬  ᫥ 
   4.1.4 ⠭ 梥 ࠭ ࠭.

   ࠭ ᨬ쭮 ࠭   梥, ⫨  䮭-
 梥 業ࠫ쭮  ࠭.   ᯮ짮 
 16 梥⮢.   㣮 ஭, ᪨ ࠭ 孨᪨ 
  ࠭.  K  梥 䮭 ⠭  -
᪮  ०,    ࠭,   ࠭,  -
   梥.   ,  樨  뢮 祪  ࠭ 
  㯠    ࠭; ᫨    㥬
祪 ࠭    䮭  梥,   㤥 ᮧ -
 ࠭ ࠭.

   ᮪ ஢.

   ⨩  ࠬ   ᨪ COLOR  ⠭  梥
࠭.  ᯮ    ᠬ   梥⮢, ਢ-
  [4.1.3].  Hਬ,  ⠭ ࠭   ᢥ⫮ᨭ
梥,   COLOR  ,,8.  PCjr  ஬  ⮣  
梥,    ⠭ ॣ , ᮮ⢥-
饣  梥, 㪠  梥  ࠭.  ᭥
.  [4.1.3].

   । ஢.

     ⥬ 䮭 梥   ⠭  㭪-
樥 BH, 뢠 10H.  㭪 ⠭ ⠪ ᭮
梥. ⮡ 㪠,    䮭 梥,  -
 0  BH,   梥  BL  믮 뢠. K஬ ⮣,
PCjr   EGA  ᯥ樠 㭪  ⠭ 䮭 梥-
.   㭪 1 㭪樨 10H 뢠 10H.  H 
10H   AH, 1  AL   梥  BH.  H 祭   -
頥.

   H ஢.

    梥⭮  ᪮     0-3  3D9H (-
  롮 梥) ⠭ 梥 ࠭,  ࠭  -
室  ⥪⮢ ०. K 筮, 祭 ⮢  -
饬  浪 - ᨭ (B),  (G),  (R)   ⥭ᨢ-
. ᪮    ।祭  ⮫쪮  , 
⠫  ⮣ ॣ   ࠢ쭮  ⠭.
  4, , ᫨  ⠭  1, ਢ  ⮬, 
 䮭 梥  뢮  ᮪ ⥭ᨢ.

;---⠭ ᢥ⫮ᨭ 梥 ࠭
   MOV  AL,00001001B   ;ਡ ᢥ⫮ᨭ 梥
   MOV  DX,3D9H        ; ॣ 롮 梥
   OUT  DX,AL          ;⠭ 梥 ࠭

     PCjr ᨢ  ᯫ [4.1.1]  ॣ,  
⠭ 梥 ࠭.  4- ॣ, 祬  0-3
ᮮ⢥ ᨭ, , ᭮  ᮪ ⥭ᨢ,
 ⠭   1.    ⠭  ᢥ⫮ᨭ  梥 
᫠   ॣ 1001.   梥 ࠭ -   ॣ  2
ᨢ  ᯫ.  ⮡       ⮬ ॣ
 ᭠砫 ᫠ 2     3DAH.  ⥬  ᫠
  ⮬  .  ⮡    㢥७,  奬
⮢  ਭ  ॣ,   ,  ᭠砫  -
   3DAH. 騩  ਬ  ⠭  梥
࠭ ( 2 ⠭).

   MOV  DX,3DAH     ;  ᨢ  ᯫ
   IN   AL,DX       ;⥭  ⮢ 奬
   MOV  AL,2        ; ॡ㥬 ॣ
   OUT  DX,AL       ;뫠  
   MOV  AL,4        ;⠭ ⮫쪮  2
   OUT  DX,AL       ;⠭ 梥 ࠭

     EGA 梥 ࠭ ⠭  ॣ஬  ᪠஢
(overscan).   ॣ    11H    ᮬ 3C0H.  H
᭠砫     , ⮡ ४    
ॣ, ⥬ ᫠ 㤠  11H  ⢥ ,  ⥬
᫠ .  祭 ⮫쪮 訥 4  , ᫨
⮫쪮 EGA  易  襭  梥 ᯫ IBM,   ⮬
砥  祭 訥 6 ⮢,  ⠭ 梥
࠭.
   4.1.5 ⪠ /ᥣ ࠭.

   ⪠  ࠭  ⮨    ஡     
権 ࠭ ( ASCII - 32). , ᫨  뢮  ࠭
뫨  ᯮ짮  ଠ ਡ,      ⠪
    ਡ⮢.  樮  ⥬  ᯥ稢
⮩ ᯮᮡ ⪨ ⮫쪮  ࠭.

   ᮪ ஢.

   ᨪ   ⪨ ࠭ ᯮ  CLS.    ⮬
25- ப  ࠭  ⠭ ⮩ ⮫쪮 ᫨  ࠭
ᯨ᮪  祭 㭪樮     KEY OFF.
 ਡ⮢ ⠭  ࠢ묨  ASCII 7.  [4.5.1] 
楤  ப⪨,     ᯮ짮   ᨪ
 ⪨   ࠭.

   । ஢.

   樮 ⥬ ।⠢  ᪮쪮 ᯮᮡ ⪨
࠭.  K    롥   ⮣,  ।⢠
ॡ ணࠬ  ⨦  㣨 楫.   ⮤ -
    ० ᯫ, ᯮ 㭪 0  뢠
10H [4.1.2].   ᨬ쭮  ࠭    
஡  (ASCII 32),   ਡ ⠭  ଠ묨
(ASCII 7).  筮   ⮤    ⮫쪮  砫 ணࠬ,
    ࠢ  ⠭ ० ࠡ  ᯫ.   
梥⭮ ᪮      PCjr  २樠  ०
ᯫ ਢ  ⠢ᨨ  ࠭.  䥪  
஬   EGA.

;---⪠ ࠭ ⥬ ⠭  ०
   MOV  AH,0      ; 㭪樨 ⠭ ० ᯫ
   MOV  AL,2      ; ० 80*25 ୮-
   INT  10H       ;⪠ ࠭

   ன ⮤ ⮨  ᯮ짮  㭪権 6  7 뢠
10H,   ᤢ ࠭.  ᫮ ப,  ஥  ᤢ-
 ࠭ 頥  AL        ᫮ ࠢ  ࠭
頥.   뢠  ᤢ ⮫쪮    ࠭,
⮬ ⠪ ࠧ      ⤥쭮   ࠭.
H  न  孥 㣫   CX,  -
 ࠢ  㣫   DX  ( ப  CH/DH,  
⮫   CL/DL).   ਡ,    
࠭  BH. Kन 뢠  0.

;---⪠   3,4  13,15
   MOV  AH,6     ;ᯮ㥬 楤 ᤢ
   MOV  AL,0     ;᫮ ப ᤢ  ࠢ 
   MOV  BH,7     ; ਡ⮢  
   MOV  CH,3     ;ப  孥  㣫
   MOV  CL,4     ;⮫   孥 㣫
   MOV  DH,13    ;ப    㣫
   MOV  DL,15    ;⮫    㣫
   INT  10H      ;⨬ 
   ⨩ ⮤ 砥  ᯮ짮  㪭樨 9 뢠
10H;  뢮 ᨬ  ਡ ⮫쪮 ࠧ, ᪮쪮  㪠-
  CX. 祭 2000   ࠭, ᫨   -
   0,0, ᯮ ⮤   [4.2.1].   AH  
ᮤঠ ᨬ ஡, AL -  ਡ⮢,  BH -  -
 ᯫ.

;---⠭    孨 㣮 ࠭
   MOV  AH,2     ;㭪 ⠭ 
   MOV  BH,0     ; ࠭
   MOV  DX,0     ;न 0,0
   INT  10H      ;⠭ 
;---뢮 ᨬ ஡ 2000 ࠧ
   MOV  AH,9     ; 㭪樨
   MOV  CX,2000  ;᫮ ७ 뢮
   MOV  AL,' '   ;ᨬ ஡  AL
   MOV  BL,7     ;ਡ  BL
   INT  10H      ;⪠ ࠭

   H, DOS ᯥ稢  ࠭   ᯥ樠
Esc-᫥⥫쭮⥩,    ࠡ  ࠩ஬ ANSI.SYS.
᭮ ᢥ   ਢ  ਫ .   ᫥-
⥫쭮 -  ப,  稭騥   ᨬ Esc,  -
騥 ࠭⥫ $.  ப 뢮 㭪樥 9 뢠-
 21H,  ⮬ DS:DX  㪠뢠   ᨬ ப.
DOS  ப  뢮   ᯫ.  ⮡ 
 ࠭ ப    [2J.   ⮡   ப,
稭  樨  (  ), ப [K.

;--- ᥣ 
CLEAR_LINE   DB   27,'[K$'

;---⪠  ப, 稭  樨 
   MOV  AH,9          ;㭪 뢮 ப
   LEA  DX,CLEAR_LINE ;DX  㪠뢠  砫 ப
   INT  21H           ;ࠥ  ப

   H ஢.

   H   ஢    ᨬ ஡  -
㥬  ਡ⮢      ᯫ,  ᯮ  
STOSW.  ਬ  ஬ ᯫ:

      MOV  AX,0B000H   ;㪠뢠   ᯫ
      MOV  ES,AX       ;
      MOV  DI,0        ;DI 㪠뢠  砫 
      MOV  AL,32       ;ᨬ ஡
      MOV  AH,7        ;ଠ ਡ
      MOV  CX,2000     ;᫮ ७
REP   STOSW            ;뫠 AX  ES:DI 2000 ࠧ
   4.1.6 ४祭  ࠬ.

   設    ᭠饭  ஬  梥 ஬,
    ஢    EGA.  ணࠬ    롨,
  ஢   ⨢,  祭 ⮢ 4
 5  祩   0000:0410.   ⠭      1 
롨ࠥ ஬ .   ⠭ ⮢ 5-4   10
⠭ ᪨    ० 80 ᨬ  ப,
  01 - 40 ᨬ  ப.  , ,     00,
롨ࠥ EGA.        
⠭ ०, ᪮ BIOS   祭  ॣ஢,
  , ० 祬 ᯫ 㤥 ࠡ ଠ-
.
   ⬥⨬,      樮 ⥬     ࠢ
६  ࠬ, ணࠬ  ⢫ 뢮
  ᯫ, ᯮ אַ ⮡ࠦ   [4.3.1] 
ᮢ  ⨢ .

   ᮪ ஢.

    ᨪ   ᯮ짮 ᫥騩 :

100 '४祭  ஬ ᯫ
110 KEY OFF: CLS
120 WIDTH 40
130 DEF SEG = 0
140 M = PEEK(&H410)
150 POKE &H410,M OR &H30
160 WIDTH 80
170 LOCATE,,1,12,13
180 KEY ON

100 '४祭  梥⭮ ᪨ ᯫ (80 ᨬ)
110 KEY OFF: CLS
120 WIDTH 80
130 DEF SEG = 0
140 M = PEEK(&H410)
150 POKE &H410,(M AND &HCF) OR &H20
160 WIDTH 80
170 SCREEN 0
180 LOCATE,,1,6,7
190 KEY ON

100 '४祭  EGA (80 ᨬ)
110 KEY OFF: CLS
120 WIDTH 80
130 DEF SEG = 0
140 M = PEEK(&H410)
150 POKE &H410,M AND &HCF
160 WIDTH 80
170 SCREEN 0
180 LOCATE,,1,6,7
190 KEY ON

  WIDTH   SCREEN,  ⮡  ४  㣨
砫 ० ᯫ.
   H ஢.

    ᥬ,    ᨪ,  אַ   4   5
  0000:0410. H    ० ᯫ ࠧ ᫥ 
.

;---४祭  ஬ 
   SUB  AX,AX           ;塞 AX
   MOV  ES,AX           ;⠭ ES  砫 
   MOV  DL,ES:[410H]    ;砥    0000:0410
   OR   DL,00110000B    ;⠭  4  5
   MOV  ES:[410H],DL    ;頥 
   MOV  AH,0            ; ⠭ ० ᯫ
   MOV  AL,0            ;஬ ० 80*25
   INT  10H             ;⠭ ०

;---४祭  梥⭮  (40 ᨬ)
   SUB  AX,AX           ;⠭ ES  砫 
   MOV  ES,AX           ;
   MOV  DL,ES:[410H]    ;६    0000:0410
   AND  DL,11001111B    ;뢠  4  5
   OR   DL,00010000B    ;⠭  4
   MOV  ES:[410H],DL    ;頥 
   MOV  AH,0            ;㭪 ⠭ ० ᯫ
   MOV  AL,1            ;梥⭮ ० 40*25
   INT  10H             ;⠭ ०

;---४祭  EGA
   SUB  AX,AX           ;⠭ ES  砫 
   MOV  ES,AX           ;
   MOV  DL,ES:[410H]    ;६    0000:0410
   AND  DL,11001111B    ;뢠  4  5
   MOV  ES:[410H],DL    ;頥 
   MOV  AH,0            ;㭪 ⠭ ० ᯫ
   MOV  AL,1            ;梥⭮ ० 40*25
   INT  10H             ;⠭ ०
                    2. ࠢ ஬.

   K  㦨   楫.  -,   㦨  㪠⥫
  ࠭,   ஥    ணࠬ  뫠  ᢮
뢮. -,  ᯥ稢     ࠭
 짮⥫ ணࠬ.  쪮  ண ਬ 
  .  K   (몫祭),    
ࠢ 㪠뢠    ࠭.     , ᪮ 
뢮  ࠭, ন 樮 ⥬,  稭
 ⥪饩 樨 .
   K    奬   ஫  ᯫ 6845,
ᠭ  [4.1.1].  奬  ॣ, ⠭-
騥 ࠧ     .  奬  6845  ⮫쪮
騩  ,   ணࠬ ᯮᮡ ᮧ  -
饣   [4.2.6].    栭    
  .   ᪨ ०   뢮,  
ᨬ  樮    ࠭  ⥬   ᠬ묨 楤ࠬ
⠭ ,    ⥪⮢ ०.
   K  ⥬  ࠡ⠥  ०, ᪠饬  ᪮쪮
ᯫ ࠭,     ࠭    ᢮ ᮡ⢥
      ४祭   ࠭栬  ⠭
 ,   ,  뫮 ᫥ -
  ⠭ ࠭. H ० ᯫ -
   8 ᯫ  ࠭   ᮮ⢥騥  樨
  ࠭   쬨 2- ६   
 BIOS, 稭    0040:0050H.      ६
訩   ᮤন  ⮫, 뢠  0,   訩
 ᮤন  ப, ⠪  뢠  0. K ᯮ-
  祬 8 ࠭,  ᯮ ६, ᯮ-
     .
   4.2.1 ⠭   ᮫ .

        ⠭  ᮫ न 
न  ⭮⥫쭮  ⥪饩 樨 [4.2.2].  ᮫
न     ।  25  ப  80 ( 40)
⮫殢.   모 ᮪ ஢ 筮  뢠  न
࠭, 稭  1,  ⠪ ࠧ   孥 㣫
1,1.     ᥬ ᥣ 稭       
 孥 㣫 0,0.

   ᮪ ஢.

   ᨪ 㬥 ப  1  25,  ⮫  1  80.  -
   LOCATE,  ⠭    -
: LOCATE ப,⮫.   ᫨ ⠭   ,
    室     ப ᫥    
⪨,  ᤢ ࠭ 稭 ᫥ ⮣,  㤥 -
  24- ப.  ⮡ 뢥  25- ப   ᯮ짮-
 LOCATE  (।⥫쭮  ⨢    ப    KEY
OFF).   ⬥ ⮬᪮ ᤢ ࠭  ப 24  25
     PRINT 窮  ⮩ (⮡  ⬥
ᤢ   24,80  25,80  ᯮ짮 אַ ⮡ࠦ-
   [4.3.1]).  H ਢ ਬ ᮢ ⨪-
        ᨬ  ᥢ䨪   業
࠭.

100 FOR N = 1 TO 25     '   ப
110 LOCATE N,40         '⠭   । ப
120 PRINT CHR$(186);    '⠥ ⨪ 
130 NEXT                '室  ᫥饩 ப

K  ᯮ  ᪮쪮 ᯫ  ࠭,    
LOCATE   ⥪饩 ⨢ ࠭ .  ᫨ -
, 뢮     ,  ⨢,   -
   ࠭   .   ⬥⨬,  ᨪ 
ᮡ⢥ ६, ࠭ ⥪饥  .  ᫨
  ᥬ ணࠬ,    -
 ,  ᨪ ந   , 
 㤥 饭 ࠢ.

   । ஢.

   樮  ⥬ ।⠢  ᯮᮡ 樮஢-
   ᮫    ࠭. 㭪 2 뢠
10H ⠭ , ⭮騩  㪠 ࠭  -
. ࠭ 㬥 稭     ஬ ᯫ
  ࠭  (室騩  BH)  ᥣ  ࠢ  0.
DH:DL ᮤঠ ப    ⮫,    ⮦ 㬥  0.
K    ᢮    ࠭ ⮫쪮  ᫨  ⠭
 ⭮  ⥪饩 ⨢ ࠭.

;---⠭   ப 13, ⮫ 39
   MOV  AH,2        ; 㭪樨
   MOV  BH,0        ; ࠭
   MOV  DH,13       ;ப
   MOV  DL,39       ;⮫
   INT  10H         ;樮㥬 
   ன ⮤ 樮஢   ⮨  ᯮ짮
ᯥ樠쭮  ࠩ ன⢠ ANSI.SYS,     
㦥    ⥬.    ਫ     室
ᢥ.    뢮 ப, ᮤঠ饩 ଠ   ப  
⮫ ᯮ 㭪 9 뢠 21H.  ப 稭
 ᨬ Esc (ASCII 27),  蠥 ᨬ ࠭⥫ $.
ଠ ப  Esc[ப,⮫H$,    ப  ⮫ 㬥-
   ,  Esc 砥  ASCII 27.  Hਬ, ப
27,'10;60H$' ⠭   ப 10, ⮫ 60.

    ⠪ ⮤   譥  ᫮,    뢠
祭 㤮  뢮 鸞 ப  ࠭, ⠪   Esc-᫥-
⥫쭮 ࠡ뢠     ப .   
ਬ  ப ᮮ饭 ࠧᠭ  ᥬ ࠭.

;--- ᥣ 
POSITION_1   DB   27,'[10;30H$'
STRING_1     DB   'There are two options:$'
POSITION_2   DB   27,'[13;32H$'
STRING_2     DB   '(1) Review part 1$'
POSITION_3   DB   27,'[15;32H$'
STRING_3     DB   '(2) Move on to part 2$'
;--- ப
   MOV  AH,9           ; 㭪樨 뢮 ப
   LEA  DX,POSITION_1  ;1- ப 樮஢ 
   INT  21H            ;樮㥬 
   LEA  DX,STRING_1    ;1- ⥪⮢ ப
   INT  21H            ;뢮 ப
   LEA  DX,POSITION_2  ; ..
   INT  21H            ;
   LEA  DX,STRING_2    ;
   INT  21H            ;
   LEA  DX,POSITION_3  ;
   INT  21H            ;
   LEA  DX,STRING_3    ;
   INT  21H            ;

   H ஢.

    14  15 奬 6845 ࠭  .  
   祭   ।  ᮮ⢥-
    ࠭,   뢠 뢮  ࠭  DOS   BIOS
 ஢  ⠭      ஥ -
.     ந室 ⮬,   ࠧ   맮  
뢠,     ⠭   ॣ  , ᯮ
2-⭮  祭,  ࠭饥    BIOS.     ⮩
, 稭    0040:0050,   室  쬨
⠪  祭,   ⥪饥       
࠭ ᯫ. 楤  ஢  ஢ 
 祭, ⮡  ﭨ  .
     ࠭  ॣ 14  15  ᫮  0 
1999,  ᮮ⢥ 2000 (25*80)  ࠭. H ⠩
  ⥬ 㬥樨  ﬨ   0  3999,  
 ᨬ ᮯ஢   ⮬ ਡ⮢ ( 祭
⭮  㪠⥫     ᤢ 㪠-
⥫   1  ࠢ).  頥 ⠪  ,
  ,      ⠬ 訩   訩  :  
ॣ 14 - 訩,  15 - 訩.

;--- ணࠬ
   MOV  BL,24         ;ப  BL (0-24)
   MOV  BH,79         ;⮫  BH (0-79)
   CALL SET_CURSOR    ;맮 楤

;---楤 ⠭ 
SET_CURSOR  PROC
   ;砥   ॣ 襣 
       MOV  DX,3B4H   ; ᭮ ॣ 6845
       MOV  AL,15     ;롨ࠥ ॣ 15
       OUT  DX,AL     ;뫠 
   ;᫥ 樨 
       MOV  AL,80     ;㬭  ப  80
       MUL  BL        ; AX -  ப, 㬭  80
       MOV  BL,BH     ;७ᨬ  ⮫  BL
       SUB  BH,BH     ;࠭塞 BL  BX
       ADD  AX,BX     ;塞  
   ;뫠 訩  १
       INC  DX        ;㥬 ࠢ騩 ॣ
       OUT  DX,AL     ;뫠 訩 
   ;砥   ॣ 襣 
       MOV  AL,14     ; ॡ㥬 ॣ
       DEC  DX        ;⠭  ᭮ ॣ
       OUT  DX,AL     ;뫠 
   ;뫠 訩  १
       INC  DX        ;㥬 ࠢ騩 ॣ
       MOV  AL,AH     ;頥 訩   AL
       OUT  DX,AL     ;뫠 訩 
       RET
SET_CURSOR    ENDP
   4.2.2 ⭮⥫쭮 樮஢ 

    뢠  ᤢ  ⭮⥫쭮  ।-
饩  樨:   ப ,   ⮫  ࠢ,   ..
筮  ᯮ짮   ⮩ 楫 㦥 ᠭ -
⭮ 樮஢ .  H  㤮⢠ MS DOS  ।-
⠢   ⭮⥫쭮 ६饭 .

   । ஢.

   㭪樨   ⭮⥫쭮   ६饭      믮
Esc-᫥⥫쭮ﬨ.   ப,  뢮  ࠭
  㭪樨 9 뢠 21H.  ਫ   ᭮ 
ᯮ짮.    ᫥⥫쭮  MS DOS
   ६饭  ,      뢮 ᨬ ப.
ப 稭  ᨬ Esc (ASCII 27), ⥬  ᨬ  [,
 ᨬ $ ⬥砥   ப.    ப ⮨  ᫠
権,   ஥  ᤢ,   ࠢ.   ⮡
ᤢ  3 樨:

                    3A
                     3B
         ࠢ          3C
                    3D

᫠ 뢠   ASCII. H ८ࠧ, ਬ, 33C
(33 ஡ ࠢ)  33,'C';   '33C'.   ਢ-
 ਬ   1-8    १  । ࢠ
४ ࠭,  ⪨ ⮫殢 .  ஬⪨  -
ࠬ    Esc-᫥⥫쭮ﬨ,     ᤢ
 ࠢ ᫥ 뢮  .

;--- ᥣ 
CURSOR_RIGHT   DB   27,'[9C$'

;---⠭ 砫쭮 樨 
   MOV  BH,0             ; ࠭
   MOV  DH,1             ;ப
   MOV  DL,5             ;⮫
   MOV  AH,2             ;㭪 ⠭ 
   INT  10H              ;⠭ 
;---뢮 
   LEA  BX,CURSOR_RIGHT  ;BX 㤥   DX
   MOV  CX,8             ;᫮   뢮
   MOV  DL,'0'           ;稭  0
NEXT_NUMBER:   MOV  AH,2 ;㭪 DOS  뢮 ᨬ
   INT  21H              ;뢮 ᨬ
   INC  DL               ;室  ᫥饬  ASCII
   XCHG DX,BX            ;頥 㪠⥫  ப  DX
   MOV  AH,9             ;㭪 뢮 ப
   INT  21H              ;ᤢ   9 権 ࠢ
   XCHG DX,BX            ;頥  DX  ASCII
   LOOP NEXT_NUMBER      ;室  ᫥饩 
    ⠪  Esc-᫥⥫쭮⥩,   ࠢ
७ᮬ    ᫥  ப    ⨦  
⥪饩  ப.   K ⠭ ⢨ ७,  
譨 ᨬ   뢮   뢠.  ப,  
७  - Esc [=7h (  , 27,'[=7h').     
० ⮬᪮ ७   ᫥ ப ᯮ
ப Esc [=7l (27,'[=7l').
   4.2.3 祭  몫祭 .

   K  奬 6845.   㭪樮 ᮢ-
襭 ᨬ  .  ,   אַ -
樨     ᯫ [4.3.1] ணࠬ  ᯥ祭  
न஢ ६饭      ⠢  ᨬ 
.  ⬥⨬,  奬 6845    ᮧ -
騩 ,     栭.   [4.2.6] -
  ᪮஢ 㣨 "⢥" ⨯ .

   ᮪ ஢.

     ᨪ ⮬᪨ 몫砥    -
᪥ ணࠬ.  K  ,  ᯮ 
INPUT,     㣨 .  ᫨ 襩  ணࠬ  室
, ᪠   楤  INKEY$,      祭
⠭  쥣 ࠬ  LOCATE  1 (0 ᭮ -
 ). H,    ࠬ  LOCATE
⠭ ப  ⮫,    뢮  -
.

   100 LOCATE 15,40,1  ; ,   15,40

   100 LOCATE ,,1      ;   ⥪饩 樨

   100 LOCATE ,,0      ;᭮ 몫 

K 㤥  ⠢    ᫥    
LOCATE  ⠭  ࠧ 쥣 ࠬ.    
⬥,     INPUT    INPUT$  몫  ᫥ 
믮.

   । ஢.

   ᥬ  ணࠬ  ⠢  祭,    
,    㪠 ⭮. 樮 ⥬  ।-
⠢  ᯥ樠  ।  몫祭 ,     
ᤥ.  H  樮஢   । ࠭, 
  㭪樨 2 뢠 10H ⠭    
26- ப.  ,   न 뢠  , ⠪
 ⮩ 樨 ᮮ⢥ न 25,0.

   MOV  BH,0    ; ࠭ (ᥣ 0  ஬)
   MOV  DH,25   ;ப
   MOV  DL,0    ;⮫
   MOV  AH,2    ; 㭪樨
   INT  10H     ;⠭   । ࠭
   H ஢.

     6  ॣ 10 奬 6845 [4.1.1] 몫砥  ,
  ⠭  1,  砥  ,  襭  0. 
ॣ  ᮤন ⠪ 祭 "砫쭮 ப"   ,
஥   祭 "筮  ப" । ⮫騭
  [4.2.4].  ᪮ ⨯    祭, 
 몫祭,        ॣ 10 祭
32, ⮡ ⠭  6.  ⮡ ⠭    
⠪  祭 "砫쭮  ப" .   ଠ-
    祭 ࠢ 11.  祭 "筮  ப"
  楤  ,  ᪮  ࠭  㣮
ॣ.

;---몫祭 
   MOV  DX,3B4H     ;  ᭮ ॣ 6845
   MOV  AL,10       ;롮 ॣ 10
   OUT  DX,AL       ;뫠 
   INC  DX          ;  ॣ १ ᫥騩 
   MOV  AL,32       ;⠭  6  몫祭 
   OUT  DX,AL       ;몫砥 
;---⭮ 祭 
   MOV  AL,11       ;祭 "砫쭮 ப"
   OUT  DX,AL       ;砥 
   4.2.4   .

   K    ⮫騭  ⮭   ᨬ-
 ࠧ, ⢮    ᨬ.     ந  ⪨
ਧ⠫ १, 孨   뢠 "砫쭮
ப" ,   - "筮 ப".  ஬
ᯫ    ᨬ ⢮ 14 ப, ஭㬥஢ 
0  13, 稭 ᢥ. ஬⪨  ᨬ ᯥ稢-
  孨 ப  ६ .  設⢮ ᨬ
ᯮ  ப  2-10,    墮⨪  ᨬ
⨣    12  13,   ६  ન  
  ப.
   H 200-筮 梥⭮ ᯫ   ᨬ  ⢮
⮫쪮 8 ப,  ᨬ     孨 ᥬ ப.  8
ப  ஭㬥஢  0  7, 稭 ᢥ,  ଠ -
 ନ  ப 7. (⬥⨬,   梥⭮ ᯫ
  ન,  ᪮  ᯮ짮    ન
ப 7 ਢ   ⮬,   ᨬ  ᫨   ᯮ-
묨  .) ⭮ ᯫ ᮪ ࠧ襭 ᯮ
14- ஬ ਠ,   ࠡ⠥  ० -
 ࠧ襭,    ࠡ⠥    梥 -
 ०,   ᯮ 8- ०.
   K   ନ஢    樥  ਫ
१.  ஬ ᯫ    ⢥ 
ᨬ ,  "砫쭠 ப" ࠢ 0,  "筠 -
" ࠢ 13 ( ᪮ ᯫ  ᯮ짮 祭
"筮 ப" ࠢ 7).  ᫨ 祭 "砫쭮"  "-
"  ப ᮢ,     .   ᫨
 "筮 ப"   祬 "砫쭮"   -
, 騩   ⥩, ⠪  ந室 ७  -
 ப. Hਬ, ᫨ "砫쭠 ப" ࠢ 12,  "-
"  - 1,  ᭠砫  ப 12, ⥬ 13, ⥬ 0 ,
, 1.  K   ⮬  ਭ    ࠫ
,  㪠뢠      ࠭ 鸞,    
.
   BIOS ࠭ 2- ६    0040:0060, 
ᮤন ⥪騥 祭 "砫쭮"  "筮" ப.  
 ᮤন 祭 "筮 ப",  ன - "砫쭮".

   ᮪ ஢.

    ᨪ    LOCATE      ⮫쪮 樮஢
     몫 ,   ࠢ   ମ.
ଥ, ⠭騥  "砫"   "" ப - 
4-    5- ᫮, ᫥騥  ᫮ LOCATE.  㣨  ࠬ
  饭,  ᫨    ࠧ騥   .
 ࠧ, ⮡ ᮧ ⮫ , 騩 ப 
2  12,   LOCATE ,,,2,12. ⬥⨬,  ᨪ 筮
몫砥 ,  稭 믮 ணࠬ.  K -
  ⭮ .  [4.2.3].
   । ஢.

   㭪 1 뢠  BIOS  10H  ⠭  "砫"  
"" ப .   CH   㪠 "砫쭠",
  CL - "筠" ப.

;---⠭ "砫쭮"  "筮" ப 
   MOV  AH,1      ; 㭪樨
   MOV  CH,0      ;   孥 ப
   MOV  CL,7      ;   쬮 ப
   INT  10H       ;
   H ஢.

    10  11  ஫  ᯫ  6845 ᮤঠ 祭
"砫쭮"  "筮" ப, ᮮ⢥⢥.     
ॣࠬ ⢫ १  3B5H  ஬ -
   3D5H -  梥⭮   PCjr.   ।⥫쭮  
᫠   ॡ㥬  ॣ     ॣ, 騩
  3B4H (.  [4.1.1]).  祭  訩 
 ॣ.   ॣ "砫쭮" ப (#10) ⠬
5   6  ⠪   뢮  .   ᪮
 뢮,         襭  0,  
⨢  ॣ  "砫쭮" ப  ⠭  
 0. ⠫  ⮣ ॣ  ᯮ.

;---⠭ "砫쭮" ப
   MOV  DX,3B4H     ;  ᭮ ॣ 6845
   MOV  AL,10       ;롮 ॣ 6845
   OUT  DX,AL       ;뫪 
   MOV  AL,0        ; "砫쭮 ப" 0
   INC  DX          ;室  ࠢ饬 ॣ
   OUT  DX,AL       ;뫠  "砫쭮 ப"
;---⠭ "筮 ப"
   MOV  AL,11       ;롨ࠥ ॣ 11
   DEC  DX          ;頥  ᭮ ॣ
   OUT  DX,AL       ;뫠 
   MOV  AL,7        ; "筮 ப" 7
   INC  DX          ;室  ࠢ饬 ॣ
   OUT  DX,AL       ;뫠  "筮 ப"
   4.2.5 ⥭/࠭/⠭ 樨 .

   ணࠬ    ࠭ ⥪饥  ,
 ⥬ ⮡    뫮  ६  ॢ    
ப,  ⥬    室 .    
      쬨 ࠭ ࠭  
 BIOS.   ᥬ 2- ६,  ࠧ
稭   0040:0050. ࢠ  ᮮ⢥ ࠭
0,    - ࠭ 1  ..  訩     ६
ᮤন  ⮫,   訩  -   ப. K ⮫,
⠪  ப 㬥, 稭  .

   ᮪ ஢.

    ᨪ  CRSLIN 頥 ப,  POS -  ⮫.
 POS    ᭠  䨪⨢  㬥⮬, .. 
ᥣ  뢠   POS(0).   ਬ 
ॢ   ப ࠭,   ⥬ 頥  -
.   ⬥⨬,   頥   ᫥  믮
 INPUT [4.2.3].

100 ROW = CRSLIN        '砥 ப 
110 COL = POS(0)        '砥 ⮫ 
120 LOCATE 25,1         'ॢ    ப
130 INPUT "Enter file name", F$  '  
140 LOCATE ROW,COL,1    '⠭  

   । ஢.

   㭪  3  뢠 10H 頥 ப    DH,  
⮫ -  DL. H  室        BH   ࠭
(ᥣ 0  ஬ ᯫ).

;---। 樨 
   MOV  AH,3     ; 㭪樨
   MOV  BH,0     ;࠭ 0
   INT  10H      ;ப:⮫  DH:DL

   MS DOS ।⠢  Esc-᫥⥫쭮  ࠭
 ⠭ 樨 .  ᯥ樠 ப, 
᫨  "뢥"  ନ ࠢ ஬. ᭮ ᯮ-
  ᫥⥫쭮⥩ ᠭ  ਫ . ᫥-
⥫쭮   樨  - Esc[s,    -
⠭ - Esc[u. H 㦤  न  ६.

;--- ᥣ 
SAVE_CURSOR     DB   27,'[s$'
RESTORE_CURSOR  DB   27,'[u$'

;---࠭ 
   LEA  DX,SAVE_CURSOR   ; 砫 ப  DX
   MOV  AH,9             ; 㭪樨 뢮 ப
   INT  21H              ;࠭塞  
;---⠭ 
   LEA  DX,RESTORE_CURSOR   ; 砫 ப  DX
   MOV  AH,9             ; 㭪樨 뢮 ப
   INT  21H              ;⠭  

   H ஢.

    14  15 奬 6845 ࠭ ⥪  -
,  﫮  [4.1.1].  訩  ࠭   ॣ
14.   ࠭ ᫠   0    1999  ० 80 ᨬ 
ப   0  999  ० 40 ᨬ.   室  -
 砥 ᫮  न ப  ⮫.    
  祭,  ⮡  㧭  ⥪饥   
   ࠭.  H  ⮣ 祭   ᫥饥
⠭   ॣ  易⥫쭮 ਢ  
    । , ᮡ ᫨  ணࠬ  -
    㭪権 ࠡ  ࠭, ।⠢-
 樮 ⥬.  ந室 ⮬,  BIOS ࠭
   ᢮  ६,   ⮣ ⮡  -
 ࠢ ࠭栬 ᯫ [4.5.3].  ᫥ ⮣  
⠭ ॣ 14  15  ६  ᮮ⢥-
  ,   ᫥饬 맮 뢠 뢮   ࠭
 ୥   ⮩  樨,    ன   -
 ᮣ᭮ 祭 ६ BIOS.
   4.2.6  ୠ⨢ ⨯ .

     뢠 樮 ⥬, 易   뢮  
࠭, ᯮ  .          
 孨   [4.2.4]  ᤥ  
[4.2.3].    ୠ⨢  ⨯  ,  뢮 
࠭  ⢫   ⮤ אַ ⮡ࠦ   -
 [4.3.1].   ⮬  "⨭"  몫砥, ᪮
   㤥 ᮢ ᨬ  ।  -
.   ⮣  ᮧ  "䠫訢"     
ਡ⮢.
   H 䥪⨢ ⮤  ⠭ ਡ 뢮-
  ⨢  ᨬ,   㪠뢠 .   -
-  ࠭   ⮣ ਡ  ᫥  ᯮ짮  
ASCII 112. 㣮 ᯮᮡ - ⠢ ᨬ,   㪠뢠
 .   ⮬ 砥    128  ⥪饬
祭 ਡ,  ⮡  ᨬ  砫  ,    128,
⮡ ४ .  ⨩ ᯮᮡ - ⠭  ᨬ
० ન (ᯮ  ASCII 1).  , ,  ண-
ࠬ  ᯮ  ப   ᬮ  -
  ᯮ짮  ᯥ樠쭮  ᪮ ᨬ, 
᫥  ᫥ ᨬ  ப, ⠪  ५-
 뢮  ASCII 17  27. ⬥⨬,   ணࠬ
砥   ᪮쪨 ०,     -
஢ ⥪騩 ०   ᮡ ⨯ .

   ᮪ ஢.

     ਬ   ନ    뢮 ᨬ 
樨     ⨢.  ६  CURSORPOSITION  ࠭
ᬥ饭 ᨬ,   㪠뢠   .  
⭮  ᫮  ࢠ  0  3998.  ਡ  ⮩ -
 1    ਡ⮢   ⮣ ᨬ  -
⨢  㤠 112  ᯥ稬 뢮 ⮣ ᨬ  ⨢.  -
 FORMERATTRIBUTE  ࠭    ਡ  ᨬ,  ⥬
⮡  뫮 ⠭  ᫥ ⮣   ᤢ.

500 '''楤  㯠 ७ 
 .
560 IF EXTENDEDCODE = 77 THEN GOSUB 5000  ' ࠢ

5000 '''楤 ᤢ  ࠢ   
5010 POKE CURSORPOSITION+1,FORMERATTRIBUTE  '. ਡ
5020 CURSORPOSITION = CURSORPOSITION+2      ' 
5030 FORMERATTRIBUTE = PEEK(CURSORPOSITION+1)  '. ਡ
5040 POKE CURSORPOSITION+1,112              '砥 ⨢
5050 RETURN                                 ' ᤥ
   H ஢.

      ᠬ ਬ ॠ  ᥬ:

;---楤 ६饭     ࠢ
CURSOR_RIGHT:  MOV  BX,CURSORPOSITION  ;祭 樨
   INC  BX                  ;㪠뢠  ਡ ᨬ
   MOV  AL,FORMERATTRIBUTE  ;६ ࠭ ਡ
   MOV  ES:[BX],AL          ;⠭ 
   INC  BX                  ;㪠뢠  ᫥騩 ᨬ
   MOV  CURSORPOSITION,BX   ;࠭塞  ᬥ饭
   MOV  AL,ES:[BX]+1        ;砥 ਡ  ᨬ
   MOV  FORMERATTRIBUTE,AL  ;࠭塞 
   MOV  AL,112              ;頥 ਡ 뢮  ⨢
   MOV  ES:[BX]+1,AL        ;뫠   ᫥饣 ᨬ
                  3. 뢮 ᨬ  ࠭.

      ᯮᮡ 뢮 ᨬ   ࠭.   H
   ᨬ,     ୮,  ⥪ 
.  㣨 ⮤  ᫮,    ⥩
ࠢ ࠧ饭 ᨬ,  ⠪  ਡ⠬  梥⠬.
H  楤 뢮  ࠭ 楫 ப.   H   
砥, ᭮ 樥,    ன  ᭮ 뢮, 
饭   ASCII 뢮 ᨬ  㪠   -
;  ⮬  ⠪  뢠    ਡ⮢ 
᫥騩  .
     ணࠬ     ।⢥   -
,  ⮤ 뢠  ⮡ࠦ   . ⮡ࠦ 
,   ࠢ, ॡ  ᨫ   ணࠬ஢
 믮   㭪樨,  祬  ᯮ짮 楤
樮  ⥬,    १  砥    
뢮  ࠭. IBM  ४ ᯮ짮  ⮤ 뢮
 ࠭, ᪮ 騥    ਢ 
⮬,  ணࠬ  ࠡ ୮. H  ᠬ  
   ࠧࠡ⪨ IBM ᫥   ⮩  奬 樨,
 ன ᭮ ⮡ࠦ  .
   4.3.1 뢮  ࠭  ᨬ.

    楤   뢮  ᨬ    ࠭   BIOS  DOS (
⠪    ᨪ)  ᨬ  ⥪      
⮬᪨ ।     ࠢ.   
७ 뢮  ᫥ ப  ⨦   ப,
᫨  ᤥ ᯥ樠  㪠  뢠  ᨬ 
80- ⮫殬 [4.2.2].  ⫨稥  ⤥묨 楤-
 ⮨  ⮬,       ᨬ  ⠪ 
 ਡ,   ⮣  .
   K   몠 ᮪, ⠪   몠  ஢, ᨬ
 뢮   ࠭    ᯮ짮    権
.    ⮣ ᯮ אַ ⮡ࠦ   ,
 ஬  ᨬ   ਡ אַ 뫠  祩
 , ᮮ⢥騥 । 樨  
 ࠭.  稭     B000:0000  ஬
    B800:0000 -  梥⭮ ᪮ -
  PCjr.  EGA ᯮ   ᠬ    ०-
 ࠭.  樨  묨 ࠬ (稭  ) ᮤঠ
 ASCII ᨬ,  樨  묨 ࠬ -  -
⮢.  H . 4-2  ⮪  .   
            몫祭
    [4.2.3].      ࠭  ६,
㦠騥 㪠⥫ﬨ  ⥪ .

   ᮪ ஢.

   ᨪ 뢮   ⤥  ᨬ,  ⠪  楫 ப, 
      ஢ PRINT  WRITE.   K  ࠢ,
ᯮ  PRINT; WRITE -    ਠ⮢  ᯥ樠-
, । ᯮ㥬묨 ଠ⠬ 뢮. PRINT ࠡ⠥  -
  .   뢮 ᮤন  ப, ⠪  ᫮-
 ६, ਬ, PRINT S$  PRINT X.   뢮 ⠪
ᨬ, ⠢ ( 窠)  ᠬ   PRINT,
ਬ, PRINT "This words are printed".  뢮 ⠪ ᨬ-
,  ᮮ⢥騥   ASCII, 祭   PRINT  
 ஢ CHR$, ਬ,  PRINT  CHR$(65),   ਢ 
뢮  ࠭ ᨬ A ( ASCII #65).
        PRINT  뢮   ,  
⮬       ६蠭. ⤥ 
⤥ ⮩  窮  ⮩.  ਢ  ⮬,
 ᫥騥   뢮   ᫥饩 樨 ⠡-
樨  ப.  窠  ⮩ ਢ  ⮬,  
  ࠭ ,   ࠧ  ஡ (⬥⨬,
 PRINT ⠢ ஡ । 뢮  ᫮  ६-
,  WRITE   ⮣). 筮  PRINT ⮬-
   ॢ   ப  襭, ⠪  ࠧ
᫥騩  ⠪    筥  뢮    ப ࠭.
⮡ ७   ப  ந室    -
 PRINT ⠢   ⮩, ਬ, PRINT S$;.
    ⠭ 樨   ।  뢮 ᯮ -
 LOCATE.   LOCATE PRINT ᥣ 稭 뢮 
ࢮ 樨 ப,  ன 室 . ᫥⥫-
    PRINT  ࠭   ,     㤥
ᠭ 24- ப, ᫥  祣  ࠭  ᤢ ,  ⥬
⮡  ᫥騩  PRINT ᭮ 뢮 24- ப.  PRINT
 뢮  25-  ப  ⮫쪮      LOCATE;  
⠪ ਢ  ⮬᪮ ᤢ ࠭ .  ⮡ -
 ᤢ    PRINT 窮  ⮩. -
    ⮤  ࠡ⠥  ᫥  ப 24   25.
   権  ᤢ ࠭   ᯮ짮-
 ⮡ࠦ  ,   .
      ࠢ騥 ᨬ [7.1.9]  -
 PRINT  ⮣ ⮡  ॠ  ६饭   
ப.  Hਬ, ᫨    ப CHR$(13),   ⮩
窥 㤥 ᤥ  ⪨.   ᫨  뢥 ஬
PRINT ப "One"+CHR$(13)+"Two"+CHR$(13)+"Three",    १-
  ᫮ 㤥  뢮     ப.  K ASCII
28-31  ᤢ        ᮮ⢥⢥  ࠢ,
,   .  PRINT  ᮤঠ騩  ਢ
  뢮   ⪨ , ⠪ ࠧ, ᫥騩  
PRINT 㤥 뢮  ப १ .
   אַ ⮡ࠦ    ⢥  㢥稢 ᪮
뢮  ࠭  ᨪ.  ᮡ   ஢-
 ⠡筮 뢮,    ⨣ ࠢ -
  㣫 ࠭.  砫  ⠭ 㪠⥫  ᥣ  
&HB000,  ⥬  ᯮ짮    POKE   뫪 ⮢
.  ਫ騥  ਧ⠫ ᨬ    㣠
  , ࠧ塞  ⮬  ਡ⮢.    80-ᨬ
࠭ ਫ騥  ⨪ ᨬ   160  
 㣠 (2     ᨬ   ਡ⮢).  ᫥
  ਬ    ࠭ ࠭   ࠬ,  ᯮ
ᨬ ᥢ䨪.   ࢮ ਬ  ᯮ -
  PRINT,   ஬ ᯮ ᪫⥫쭮 אַ ⮡-
  . ⬥⨬,    ࢮ 砥 室 ᯮ-
 אַ ⮡ࠦ    ᫥ ⮫ ப  24
 25, ⮡  ᤢ ࠭.

   ᯮ짮 PRINT:

 10 CLS: KEY OFF              '⪠ ࠭
 20 DEF SEG = &HB000          '㪠뢠  
 30 LOCATE 1,1: PRINT CHR$(201)   ' 孨 㣮
 40 LOCATE 1,80: PRINT CHR$(187)  'ࠢ 孨 㣮
 50 LOCATE 1,24: PRINT CHR$(186)  '
 60 LOCATE 1,25: PRINT CHR$(200)  '
 70 POKE 3838,186                 ' 80 ப 24
 80 POKE 3998,188                 ' 80 ப 25
 90 FOR N=2 TO 79                 'ਧ⠫ 
100 LOCATE 1,N: PRINT CHR$(205);: LOCATE 25,N: PRINT CHR$(205)
110 NEXT                          '
120 FOR N=2 TO 23                 '⨪ 
130 LOCATE N,1: PRINT CHR$(186): LOCATE N,80: PRINT CHR$(186)
140 NEXT
   ᯮ짮 אַ ⮡ࠦ  :

 10 CLS: KEY OFF               '⪠ ࠭
 20 DEF SEG = &HB000           ' ஬ ᯫ
 30 POKE 0,201                 ' 孨 㣮
 40 POKE 158,187               'ࠢ 孨 㣮
 50 POKE 3840,200              '  㣮
 60 POKE 3998,188              'ࠢ  㣮
 70 FOR N=2 TO 156 STEP 2      'ਧ⠫ 
 80 POKE N,205: POKE N+3840,205  ' , ⠪  
 90 NEXT
100 FOR N=160 TO 3680 STEP 160 '⨪ 
110 POKE N,186: POKE N+158,186 'ࠢ  
120 NEXT

   । ஢.

   樮  ⥬  ।⠢  楤 뢮  
࠭ -   BIOS    DOS.     ⫨  ࠧ
⥬, ।   , ᫥ 뢮 ᨬ, 뢠
  ᤢ ࠭,       ⠭ ਡ 
梥 ᨬ,  ⠪  ࠢ騥   
(  ᬠਢ  ᨬ  BackSpace,    
ᨬ,   ⢨⥫쭮 ᤢ    
).   楤 ᫥騥:

   뢠 10H:

   㭪   9     뢮 ᨬ  ਡ⠬
             A     뢮 ᨬ  ਡ⮢
             E     "⥫⠩" 楤 (  ਭ)

   뢠 21H:

   㭪   2     뢮 ᨬ  ਡ⮢
             6     뢮 ᨬ  ਡ⮢
             9     뢮 ப ᨬ

   㭪樨 9  A 뢠 10H      ࠢ-
騥  ᨬ.   㭪樨 DOS   ࠢ騥  ,
ਢ  ᫥饩 ⠡. 㭪 E 뢠 10H -
   ⠡, ஬ ASCII 9.

   ASCII   7     
   ASCII   8       蠣 (BackSpace)
   ASCII   9     ⠡
   ASCII  10     ॢ ப
   ASCII  13      ⪨

      㭪樨 뢠 10H  ।  ᫥
뢮 ᨬ.  㭪  9  ⮣  뢠 뢮  ࠭ 
㪠  ਡ⮢,  㭪 A -  㪠,  ⮬ -
 ⥪饥 祭    ਡ⮢    ⮣ ᨬ. AL
 ᮤঠ 뢮 ᨬ,  BL - ਡ. H ࠭-
 ᯫ ᮤন  BH.   㪠뢠   -
஬  ᯫ,   ⮫쪮  ࠭  -
.  ⮬ 砥   ⠭ ࢠ ࠭, -
ன ᮮ⢥  0. ᮡ ᢮⢮   㭪権 BIOS
⮨  ⮬,  ᨬ 뢮 ⠪ ᫮ ࠧ,  㪠-
  CX. 筮 㪠뢠 CX ࠢ 1,   㭪樨  
뢮 楫  ப  ᨬ,  ᫨  㪠 襥 祭
稪  -  ᢮⢮  ᮧ ࠬ.   ⬥⨬,  
 ᫨ 뢮   ᨬ,      -
.   K  ப 뢮 ᨬ     ᢮
࠭⢮ ࠭ ࠢ-   ,  뢮 㤥 -
ᥭ   樨 ࠭.

;---뢮 ᨬ  ⨢
   MOV  AH,9             ;㭪   ਡ⠬
   MOV  AL,THE_CHARACTER    ;ᨬ  AL
   MOV  BL,112           ;ਡ  BL
   MOV  BH,0             ;࠭ 1
   MOV  CX,1             ;뢥  ࠧ
   INT  10H

  ⮣, ⮡ ﭭ ⠭ 祭 稪 
CX 뢠  BIOS  ।⠢  ⠪  ⥫⠩ 楤,
   室  뢮 ப ᨬ.    믮-
 㭪樥 E.    ⮢ ⠪ ,   㭪 A,  
  뫠  祭  CX.  ப 뢮     
 ᨬ  AL   ୮  맮  뢠.  -
짮  ᪮ ०  BL ⠭ 梥 -
,  ⨢ 砥 ࠭  ਡ.

;---뢮 ப   ⥫⠩ 楤
            MOV  AH,0EH     ; 㭪樨
            MOV  BH,0       ; ࠭
            LEA  BX,STRING  ;BX 㪠뢠  ப
NEXT_CHAR:  MOV  AL,[BX]    ;६ ᨬ  AL
            CMP  AL,'$'     ;஢ઠ   ப
            JE   ALL_DONE   ;᫨ ,  室
            INT  10H        ;뢮 ப
            INC  BX         ;室  ᫥饬 ᨬ
            JMP  SHORT NEXT_CHAR   ;塞 楤
ALL_DONE:

   뢠 DOS 21H   ࠢ  ।⠢   
楤,  ᪮  ६    ਢ   ᤢ
࠭  ⨦  ப,  ⠪  -
   ࠢ .  㭪樨 DOS 뢮  -
,     ⠭  㭪樥 5 뢠 10H
[4.5.3].  ।⠢  㭪樨  뢮 ᨬ,  -
ࠬ 2  6. ࢠ   ᯮ Ctrl-Break [3.2.8],  
-  .   (K    Ctrl-Break,    楤
ࠡ⪨ Ctrl-Break   믮    ,   ᯮ-
 㭪,  ᯮ  稥).
    㭪樨 뢮  ᨬ  ୮ 䮭,    ,
  ᤥ  ᯥ樠쭠  ⠭  梥   ࠩ
ன⢠ ANSI.SYS [4.1.3].   饬 室 ⮫쪮 
ᨬ  DL,  㭪樨  AH   맢 뢠 21H. 
㭪 6 ᮡ  ⮬ ᫥,    ஥ 祭
 ⢥ 㭪樨   .   㯠  ⮩ ஫
⮫쪮  ᫨  DL 饭  FF [3.1.5].    ⠫ -
  뢮   ࠭  ᮤন  DL.    ᫥饬 ਬ
㭪  6 । ਭ  ⠥ ᨬ ( [3.1.4]  -
㦤 楤,     ᢮⢠).

       MOV  AH,6       ; 㭪樨
NEXT:  MOV  DL,0FFH    ; ⮬ 祭 ਭ 
       INT  21H        ;믮塞 뢠
       JZ   NEXT       ;᫨  뫮 ,  ⭮
       CMP  AL,13      ;   ⪨?
       JE   END_INPUT  ;᫨ ,   
       MOV  DL,AL      ; 뫠 ᨬ  DL
       INT  21H        ; 뢮   ࠭
       JMP  SHORT NEXT ;塞 楤

   H ஢.

   H    ஢   뢮  ࠭  ⢫  १
⮡ࠦ  .    孨   ४ ᯮ짮,
⮡  ⮫  ஡ ᮢ⨬  騬 -
ﬨ 設,     IBM   ᢮ -
஢ ஥   ᯮ     
 .  ᪮  ஥ ⠪ ࠧ,  
ਡ⮢  ६  ⠬ ᨬ,  ᨬ  
   뫠     樥 MOVSB,
᪮  㪠⥫     㢥稢    ᫥
 ७ .  ,  ᯮ짮  ⮩ 孨 -
⢥  ᪮  뢮  ࠭.  ⬥⨬,  ⮡ࠦ  
  ࠡ⠥  뢮  ᨬ    ᪮ ०. 
⮬  砥 ࠧ  16K  32K  BIOS   
ᨬ 筮.  ⬥⨬ ⠪,   ⮡ࠦ   
ᯮ    㪠  ᨬ.      
६      [4.2.1]  몫   ᮧ-
 ᢮ ᥢ [4.2.6].

;--- ᥣ 
SAMPLE_STRING  DB   'PRINT THIS STRING$'

;---뢮 ப
       MOV  AX,0B000H            ;஬ ᯫ
       MOV  ES,AX                ;㪠뢠  
       LEA  BX,SAMPLE_STRING     ;BX 㪠뢠  ப
       MOV  DI,CURSOR_START      ;砫쭠   
NEXT:  MOV  AL,[BX]              ;६ ᨬ
       CMP  AL,'$'               ;஢ઠ   ப
       JE   ALL_DONE             ;᫨ ,  室
       MOV  ES:[DI],AL           ; 頥 ᨬ  
       INC  DI                   ;㢥稢 㪠⥫  2
       INC  DI                   ;
       INC  BX                   ;室  ࠡ⪥ ᫥-
       JMP  SHORT NEXT           ;饣 ᨬ
ALL_DONE:
     梥⭮ ᪮   PCjr (   EGA) 
஡, 易   ⮡ࠦ   . K   -
   ந室 ६  ⥭   뢮 
࠭,   ࠭  ७.  ஡ 蠥-
    ᨣ " " (all clear)  ।    
. H 뢭  祭   3DAH.  K
 0 ࠢ 1,   ᯮ .  (3DAH -  , १
 PCjr 뫠  ᨢ  ᯫ;   
⠥,    頥 ॣ ,    梥⭮ -
.)

;---   
        MOV  DX,3DAH          ; ॣ 
CHECK_AGAIN:   IN   AL,DX     ;砥 祭
        TEST AL,1             ;஢ઠ ࢮ 
        JNE  CHECK_AGAIN      ;᫨  0,  ⭮
;---⥯ 뢮 ᮮ饭
        LEA  BX,MESSAGE       ;ᮮ饭  ᥣ 
        MOV  DI,2000          ;稭 뢮  業 ࠭
        MOV  AH,01000001B     ;ਡ ᨭ  ᭮
NEXT_CHAR:   MOV  AL,[BX]     ;६ ᨬ
        CMP  AL,'$'           ;஢塞   ப
        JE   ALL_DONE         ;᫨ ,   室
        MOV  ES:[DI],AX       ; 뢮 ᨬ
        INC  BX               ;㢥稢 㪠⥫ ப
        INC  DI               ;㢥稢 㪠⥫ 
        INC  DI               ;
        JMP  SHORT NEXT_CHAR  ;ࠡ뢠 ᫥騩 ᨬ
ALL_DONE:

     ᯥਬ஢  ᪮쪮  ᨬ   横
 뢮  楤   ७樨. 
,   ࢮ 믮 横 㥬   
ࠢ  ,    ⠢ ६, ⮡  
 .
   PCjr  ᯥ樠쭮  ᪮஢   ⠪  ࠧ,  뢮 
, ᯮ㥬 ஬ 梥⭮ ᪮ ᯫ  -
ࠢ      ,     ᠬ  室
.     ᢮⢮   ணࠬ  ᯥ祭,
室饥   ⥬.
   4.3.2 뢮 ப ᨬ  ࠭.

   楤,  뢮 楫  ப ᨬ 祭 -
,    뢠 ࠭祭  ᮤন  뢮
ப. H        ,   ࠢ騥 
(⠡,  ஡   ..) ,    .   
 AT BIOS     㭪樨  뢮  ப,   MS DOS
ᥣ   ⠪ 㪭.  㭪 BIOS ।⠢  訩
஫  ਡ⠬ ᨬ. ⢥,   ᯮ짮-
 ᮧ ஡ ᮢ⨬  ।騬 設.  H-
,  EGA  , 饥  ROM-BIOS  㭪 뢮
ப ᨬ    ⠪ ७.  ⮬ 砥
 IBM PC  XT   ᯮ짮  楤.

   ᮪ ஢.

   ᨪ 뢮 ப 筮  ⠪  ,   ⤥ ᨬ.
H     PRINT S$,  S$     ப
  255 ᨬ,   ᪮஢  ணࠬ.  -
 10 ࠢ ,  :

   ASCII   7          
   ASCII   9          ⠡
   ASCII  10          ॢ ப
   ASCII  11              ࠭ (Home)
   ASCII  12          ॢ ଠ (ࠥ ࠭ + Home)
   ASCII  13           ⪨
   ASCII  28           ࠢ
   ASCII  29           
   ASCII  30           
   ASCII  31           

 ⠫  뢮  ࠭  ᨬ.

   । ஢.

   㭪  9 뢠 21H 뢮 ப.  DS:DX  㪠-
   ᨬ ப.  ப   ᨬ
$,    砥,   ᠬ ᨬ $    室   ப.
ப    . 㭪  ॢ ⮬᪨
  砫 ᫥饩 ப ᫥ 襭 뢮;  ⮡
 믮﫮     ப ᨬ 0AH (ॢ
ப)  0DH ( ⪨).

;--- ᥣ 
FIRST_STRING    DB   'This is the first string',0AH,0DH,'$'
SECOND_STRING   DB   'And this is the second string$'

;---뢮 ப
   MOV  AH,9             ; 㭪樨 뢮 ப
   LEA  DX,FIRST_STRING  ;㦠  ࢮ ப
   INT  21H              ;⠥ ப  樨 
   LEA  DX,SECOND_STRING ;㦠  ன ப
   INT  21H              ;⠥ ப  砫  ப
९ ᫥騥 ࠢ騥 :

   ASCII   7           
   ASCII   8             蠣 (BackSpace)
   ASCII   9           ⠡
   ASCII  10           ॢ ப
   ASCII  13            ⪨

   㭪  DOS 40H 뢠 21H ⠪   뢮 ப
 ࠭.   ॡ, ⮡    ப, ᪮ 
  ॡ  ᨬ-࠭⥫;  㭪 ᮡ  㤮
  ⥪⮢ 䠩    ࠭.  室   㭪 뫠
।祭  뢮  䠩.  ॡ ਯ, 
  䨪樮  ஬     䠩  -
ன⢠.   ᯫ   ࠭ ।祭 ਯ  #1.
H  ਯ  BX,  ᫮ ⮢ ப  CX. DS:DX
  㪠뢠  ப.  㭪 뢮 ⥪  ଠ묨
(  ୮) ਡ⠬. ⬥⨬,    ।⥫쭮
"뢠"  ᯫ,        㣨  䠩  
ᯮ짮 ⮩ 㭪樨.  ਬ:

;---뢮 1000 ⮢ ⥪
   MOV  AH,40H          ; 㭪樨
   MOV  BX,1            ;ਯ ᯫ
   LEA  DX,STRING       ;ঠ  ப
   MOV  CX,1000         ;᫮ 뢮 ⮢
   INT  21H             ;

   MS DOS ।⠢    Esc-᫥⥫쭮⥩,  
 ᯥ樠묨 ࠢ騬 ப  . K
 뢮    㭪樨  9  뢠 21H,   
ࠢ ஬, ० ᯫ, 梥⮬ ᨬ  묨
ᯥ⠬ .  ਫ  㦤   ᯮ짮-
. K ணࠬ 뢮  ࠭  ப,  Esc-᫥-
⥫쭮    ᠬ 㤮 ᯮᮡ 樮-
    ⠭ 梥 ப.   ந室  ⮬,
  ᠬ ᬠਢ    । ப  ਨ
뢮 ப.
    AT  設, ᭠ EGA, 㭪 13H 뢠 10H 뢮-
 ப.  ES:BP    㪠뢠    ப,   ப
   CX.  DX 㪠뢠  ,  ன 
稭 ப (塞    ᬥ饭  砫 ࠭,
    뢮   ⮢ ਡ⮢).   BX  
 㪠  ࠭.  H    0  3, ᮤ-
騩  AL 㪠뢠   뢮 ப.

   AL = 0    ப ⮨ ⮫쪮  ᨬ,  
   AL = 1    ப ⮨ ⮫쪮  ᨬ,  
   AL = 2     ப । ᨬ  ਡ,
              
   AL = 3     ப । ᨬ  ਡ
              
K AL ࠢ 0  1,  ਡ  室  BL.   
ᨬ  뢮  ⨬ ਡ⠬.   㭪 -
   蠣, ॢ ப,  ⪨  
 ࠢ騥 ,    ⠥ ᨬ.

   H ஢.

   ࠭祭  ᯮ짮 ᨬ $  㭪 9 ᯮ-
     ਫ.     設   -
⢥ 뢠,  㯭   뢮 ப ⭮
. ஡  ᢮ ᮡ⢥ 뢠 ( [1.2.3]
 ), ᯮ饥 孨 ⮡ࠦ   [4.3.1].
ᯮ    ⢥  ࠭⥫  -  ᯥ樠
ᨬ, ਬ, ASCII 0,  $.  ⮡  楤
ࠡ뢠 ⮫쪮  ࠢ騥 ,  㦭 . 
⮤ 㤥 ࠡ  ॥, 祬  ᯮ짮 㭪-
樨 MS DOS.
   4.3.3 ⥭ ᨬ   ਡ⮢   樨.

   筮  ணࠬ 砥   ᢮ ६   -
頥       뢮    ࠭.   ஬ ᫥
ணࠬ ""   ࠭. H  樨,  -
 ᠬ  ᯮ   ࠡ  (ਬ, 
祭᪨  ணࠬ १  ⠢)  ⥪饥  ᮤন
࠭  ᠭ     ணࠬ.       뢠
室   ࠭,  ⮣ ⮡ 뢥  .
㭪 BIOS    ᨬ   ਡ  ।-
  樨  ࠭; 㣮 ⮤ ⮨  饭  ⮤
אַ ⮡ࠦ     ᯫ  [4.3.1].  ⮡ 
ᨬ    ਡ   ப 0  ⮫ 39 (1,40   ᨪ)  
० 80 ᨬ  ப    ᫮  (0*160)  (39*2) 
 १  ⢥ ᬥ襭  .  砥 
㦭 ᬥ饭  ࠧ  ࠭  . [4.5.3].  ,
  饭 ⮤ אַ ⮡ࠦ    㤥 ࠡ-
  砥 뢮 ᨬ  ᪮ ०.

   ᮪ ஢.

   ᨪ ᯮ  㭪  SCREEN    祭 ᨬ 
ਡ⮢ ( 㭪   祣 饣  ஬ SCREEN
⠭騬 ०  ᯫ).  SCREEN  5,10 砥  ASCII
ᨬ,  ᯮ  ப 5, ⮫ 10 (ப  ⮫
㬥  1).  ⮡   ਡ ᨬ  
⨩ ࠬ 1, ਬ, SCREEN 5,10,1.   ᯮ짮  
᪮ ०    㭪  頥 0, ᫨ ॡ㥬
 ࠭  ᮤন (஢) ᨬ.
   ਡ ⠪      0  255. ᪮
ᨪ     ᯮ짮  ᥫ,   ॡ
 樨, ⮡  ।  ਡ. ᭮ 梥
ࠢ ATTRIBUTE MOD 16. ᫥ ⮣   뤥 ᭮ 梥,
梥 䮭 ।   㫥  (((ATTIBUTE - FOREGROUND)/16)
MOD  128).   ᫨  ਡ⮢  127,  祭  
(,  ᮮ⢥饩  ⠭,  祭 ⥭ᨢ 梥
䮭  [4.1.3]).    ਫ  㦤 ⮢  樨  
ᨪ.

   । ஢.

   㭪 8 뢠 10H 頥  ᨬ   ਡ 
⥪饩  樨 .   BH  ᮤঠ   ⥪饩
࠭ ᯫ (뢠  0  ᥣ ࠢ 0  -
஬ ᯫ). K ᨬ 頥  AL,   ਡ⮢
  AH.    㭪 ⮫쪮 魠,  ᯮᮡ    
ᨬ  ᪮  ०,  ᮮ  梥     AH. 
ࠡ⠥   ᨬ ।塞 짮⥫ [4.3.4].  
ਬ । ᨬ  ਡ  樨 0,39  ࠭-
 2 ᪮ :
;---⠭ 樨 
   MOV  AH,2        ;㭪 ⠭ 
   MOV  DH,0        ; ப
   MOV  DL,39       ; ⮫
   MOV  BH,0        ; ࠭
   INT  10H         ;樮㥬 
;---⥭ ᨬ  ਡ⮢
   MOV  AH,8        ;㭪 ⥭ ᨬ/ਡ⮢
   MOV  BH,2        ; ࠭
   INT  10H         ; AH:AL ⥯ ਡ  ᨬ

   H ஢.

   H  ᫨ ᬥ饭  த    אַ
  .    室     ᬥ饭 
  ࠭.   ਬ 砥 ᨬ  ਡ  樨
7,39 ࠭ 2 ᪮ :

;---⥭ ᨬ  ਡ⮢ 樨 7,39 ࠭ 2
   MOV  AX,0B800H       ; 
   MOV  ES,AX           ;ES 㪠뢠    
   MOV  DI,1000H        ;ᬥ饭  砫 ࠭
   MOV  AL,80           ;㬭  ப  160
   MOV  BL,7            ; ப
   MUL  BL              ;⥯  AX (ப-1)*160
   MOV  AX,39           ; ⮫
   ADD  BX,AX           ; 樨  
   SHL  BX,1            ;㬭   
   MOV  AX,ES:[BX][DI]  ;⥯ AH:AL ᮤঠ ਡ/ᨬ
   4.3.4  ᯥ樠 ᨬ.

   쪮  ஬     뢮  ᨬ  ,
  ᠬ  ணࠬ⮬.  ⭮     128
ᨬ, ।塞 짮⥫, PCjr - 256,  EGA - 1024 
 ६ 㯭 512.  梥⭮  ROM-BIOS
ᮤন    ࠧᮢ ⮫쪮  128 ᨬ 
ASCII ( ࠬ  0  127). 騥 128 ᨬ 㯭
 ,    ᮧ , ᯮ ᠭ   -
. ⬥⨬,  MS DOS  3.00  ।⠢   GRAFTABL,
  ।⠢ ॡ㥬   ன 樨   128
ᨬ. PCjr    ன 樨  128 ᨬ 㦥
⮢. EGA    ᨬ  ०  200 -
   350 ப.
     ᪮   PCjr 뢠  
 8*8 祪.    ᨬ ᮤঠ  쬨
. K   ᮤন  ⠭    祪  鸞,
稭  孥 鸞, 祬 訩  ( 7)  ᮮ⢥-
 ᠬ  窥  . K ᮮ⢥騩  ࠢ 1,
 窠 ᢥ稢.  ᠭ ᨬ   ।
ࠢ ᫥⥫쭮 ⮢  쬨 ⮢  
  ᫥⥫ 祩 .  H .  4-3   8
⮢ 뢠 㡭 .
    128  ᨬ    ॡ  1024  ,   
ॡ,  ⮡ 뫨 ᠭ  ᨬ.   樠  
뢠   (ﭭ   㪠⥫        
[1.2.0])  㪠뢠   ࢮ  ࢮ ᨬ -
७ , ..  ᨬ  128. K   ᨬ
  뫠  128,  ᬠਢ   뢮
 ᥬ . ᫨   ᨬ 129,  뢮  
⮣  ⭠,  ..
   H  ⮣  뢠 1FH   ᯮ   
0000:007C.  祭  ᬥ饭   襥 ᫮ (᭠砫
訩 ),   ᥣ -  襥 ᫮ (᭮, ᭠砫
訩 ).  ⬥⨬,      ᨬ  訬 ࠬ
,    ⢮   ᨬ  訬 ࠬ;  
 ⮡  㪠뢠    ,  ,
祬  砫 , ᮤঠ饣   ᠭ ᨬ.
쬨  ᫥⥫쭮,   뢠騥  ᨬ ASCII 
  128-255 ਢ  [4.3.5].   PCjr  1FH 㪠뢠
  128 ᨬ ASCII,    44H -  .  
   , ᪠   256  ᨬ,
।塞 짮⥫.
    EGA ⨭  ᫮,    .   -
樠樨  ⥪⮢ ०    ஢ ᨬ  (8*8
 8*14)    EGA    ⮢ 2 . 
  ᬠਢ  ࠧ  , 祬  ⠭-
  ᨬ 頥   0.   ᫮,  EGA
᭠饭  筮    ।    
 ᠭ ᨬ.       । ᫮ ப
, ᯮ㥬  ᠭ ᨬ.  , 뢠
楩 8*8 ॡ 8*256   2048  . K ࠧ襭 
    ᨬ,   3  ਡ⮢  ।  
      ᠭ ᨬ.
   K     㤥  ᯮ짮     ⠭
⮢  0-3  ॣ 롮  ᨬ,    ண
3C5H.  ।⥫쭮   ᫠  3   3C4H, ⮡ 㪠
ॡ㥬  ॣ.   1-0    ᨬ,  
   3   ਡ⮢ ࠢ 0,   3-2 - 
  ᠬ,   3 ࠢ 1. K ⠭   ⮢
ᮢ,     ᯮ짮    ஢ ᨬ
    3  ਡ⮢ ४砥    ⠭
⥭ᨢ ᨬ.  ⮬  砥 ᯮ ⮫쪮  0.
       ᢮ ᨬ  
㦭    ⮬  .   ᫨    ⠭
  ᨬ,       ⠭   
.

   ᮪ ஢.

    ᨪ     ⮬, ⮡  뢠-
騥 ᨬ 室  । , ᯮ㥬 ணࠬ-
. ᫨   ,      -
訥 ; ᫨  ᭮ 䫨,  ᫥  ᯮ-
  CLEAR   ࠭祭  ⢠ , 
 ᯮ짮 ᨪ.  ⥬ ᫥   ࢮ
    뢠.  ᫥饬 ਬ 뢠
ᨬ 128  ⭠ ࠬ.   DATA ᮤঠ  -
, 뢠騥 ᨬ.   ࠢ   255,  129;  ࢮ
砥   ࠢ 1,   ஬ ࠢ 1 ⮫쪮 ࠩ .
 ᫥  祭, ᮮ⢥  楯窠
⮢ . ਫ .

100 '''頥 , 稭   &H3000
110 DATA 255, 129, 129, 129, 129, 129, 129, 255
120 DEF SEG = &H3000    '㪠뢠 砫 ᥣ
130 FOR N = 0 TO 7      '।塞 8 
140 READ Q              '⠥ 1 
150 POKE N,Q            '頥   
160 NEXT                ' ..
170 '''⠭  뢠
180 DEF SEG = 0         '㪠뢠  砫 
190 POKE 124,0          '㪠뢠 ᬥ饭
200 POKE 125,0          '
210 POKE 126,0          '㪠뢠 ᥣ
220 POKE 127,&H30       '
230 '''⠥ ᨬ
240 LOCATE 12,12: PRINT CHR$(128)  '⥯  ᨬ 128

   । ஢.

    梥⭮   PCjr ᯮ 㭪 25H  뢠-
 21H     뢠  1FH.    室 DS:DX
  㪠뢠      .    ஡
ᠭ .  [1.2.3].  ਬ ᮧ  ᨬ  -
 128  129.    ઠ묨 ⮡ࠦﬨ  㣠,
 뢥  ࠧ 让 אַ㣮쭨.
;--- ᥣ 
CHARACTER_DATA   DB  11111111B, 10000000B, 10000000B, 10000000B
                 DB  10000000B, 10000000B, 10000000B, 11111111B
                 DB  11111111B, 00000001B, 00000001B, 00000001B
                 DB  00000001B, 00000001B, 00000001B, 11111111B

;---⠭  뢠
   PUSH DS                ;࠭塞 DS
   LEA  DX,CHAR_DATA      ;ᬥ饭    DX
   MOV  AX,SEG CHAR_DATA  ;ᥣ    DS
   MOV  DS,AX             ;
   MOV  AH,25H            ;㭪 ⠭ 
   MOV  AL,1FH            ; 塞 
   INT  21H               ;⠭ 
   POP  DS                ;⠭ DS

;--- ᨬ
   MOV  AH,2              ; 㭪樨
   MOV  DL,128            ; ᨬ
   INT  21H               ;뢮 
   MOV  DL,129            ;ன ᨬ
   INT  21H               ;뢮 

    EGA 㭪 11H 뢠 10H 㫨 ஬ ᨬ-
.  㭪   祭 ᫮,   ᯮ
 ᮧ ᯥ樠 ०  ࠭,   ᭮ ਬ-
 筮 ⮥.   㭪樨. K AL ࠢ
0,  , ।塞  짮⥫ ७   
ᯥ樠    ᨬ.  K AL ࠢ 1  2,    
  ᨬ 8*14  8*8 ᮮ⢥⢥    
 ᨬ.  K AL ࠢ 3,  㭪 ⠭ -
祭   ॣ 롮  ᨬ,  ᠭ . 
᫥ 砥    ᮮ⢥騥   BL
 맢 㭪.    㧪       
   BL  믮 㭪.   㧪 ᢮   
⮡ ES:BP 㪠뢠  ,  ᫮ । ᨬ 
    CX, ᬥ饭 ( ᨬ)        DX,
᫮ ⮢  ᨬ -  BH,    -  BL.  ᫥ ⮣
뢠 뢠 10H.  ਬ:

;---⠭ 128 짮⥫᪨ ᨬ   0
   MOV  AX,SEG CHARACTER_DATA   ;ES:BP  㪠뢠  
   MOV  ES,AX                   ;
   MOV  BP,OFFSET CHARACTER_DATA   ;
   MOV  CX,128                  ;᫮ ᨬ
   MOV  DX,128                  ;砫쭮 ᬥ饭
   MOV  BL,0                    ; 
   MOV  BH,8                    ; 8*8
   MOV  AL,1                    ; 㭪樨
   MOV  AH,11H                  ; 㭪樨
   INT  10H                     ;७ᨬ 
   4.3.5    ᠭ ᨬ.

   H  ਢ 8- ᫥⥫쭮, 室  
ᠭ ᨬ  梥⭮ ᪮  .  ᯮ-
 ᭥  [4.3.4].

   K ASCII              ᫥⥫쭮 (16-)

      128                      78 CC C0 CC 78 18 0C 78
      129                      00 CC 00 CC CC CC 7E 00
      130                      1C 00 78 CC FC C0 78 00
      131                      7E C3 3C 06 3E 66 3F 00
      132                      CC 00 78 0C 7C CC 7E 00
      133                      E0 00 78 0C 7C CC 7E 00
      134                      30 30 78 0C 7C CC 7E 00
      135                      00 00 78 0C 7C CC 7E 00

      136                      7E C3 3C 66 7E 60 3C 00
      137                      CC 00 78 CC FC C0 78 00
      138           K           E0 00 78 CC FC C0 78 00
      139                      CC 00 70 30 30 30 78 00
      140                      7C C6 38 18 18 18 3C 00
      141           H           E0 00 70 30 30 30 78 00
      142                      C6 38 6C C6 FE C6 C6 00
      143                      30 30 00 78 CC FC CC 00

      144                      1C 00 FC 60 78 60 FC 00
      145                      00 00 7F 0C 7F CC 7F 00
      146                      3E 6C CC FE CC CC CE 00
      147                      78 CC 00 78 CC CC 78 00
      148                      00 CC 00 78 CC CC 78 00
      149                      00 E0 00 78 CC CC 78 00
      150                      78 CC 00 CC CC CC 7E 00
      151                      00 E0 00 CC CC CC 7E 00

      152                      00 CC 00 CC CC 7C 0C F8
      153                      C3 18 3C 66 66 3C 18 00
      154                      CC 00 CC CC CC CC 78 00
      155                      18 18 7E C0 C0 7E 18 18
      156                      38 6C 64 F0 60 E6 FC 00
      157                      CC CC 78 FC 30 FC 30 30
      158                      F8 CC CC FA C6 CF C6 C7
      159                      0E 1B 18 3C 18 18 D8 70

      160                      1C 00 78 00 7C CC 7E 00
      161                      38 00 70 30 30 30 78 00
      162                      00 1C 00 78 CC CC 78 00
      163                      00 1C 00 CC CC CC 7E 00
      164                      00 F8 00 F8 CC CC CC 00
      165                      FC 00 CC EC FC DC CC 00
      166                      3C 6C 6C 3E 00 7E 00 00
      167                      38 6C 6C 38 00 7C 00 00
      168                      30 00 30 60 C0 CC 78 00
      169                      00 00 00 FC C0 C0 00 00
      170                      00 00 00 FC 0C 0C 00 00
      171                      C3 C6 CC DE 33 66 CC 0F
      172                      C3 C6 CC DB 37 6F CF 03
      173                      18 18 00 18 18 18 18 00
      174                      00 33 66 CC 66 33 00 00
      175                      00 CC 66 33 66 CC 00 00

      176                      22 88 22 88 22 88 22 88
      177                      55 AA 55 AA 55 AA 55 AA
      178                      DB 77 DB EE DB 77 DB EE
      179                      18 18 18 18 18 18 18 18
      180                      18 18 18 18 F8 18 18 18
      181                      18 18 F8 18 F8 18 18 18
      182                      36 36 36 36 F6 36 36 36
      183                      00 00 00 00 FE 36 36 36

      184                      00 00 F8 18 F8 18 18 18
      185                      36 36 F6 06 F6 36 36 36
      186                      36 36 36 36 36 36 36 36
      187                      00 00 FE 06 F6 36 36 36
      188                      36 36 F6 06 FE 00 00 00
      189                      36 36 36 36 FE 00 00 00
      190                      18 18 F8 18 F8 00 00 00
      191                      00 00 00 00 F7 18 18 18

      192                      18 18 18 18 1F 00 00 00
      193                      18 18 18 18 FF 00 00 00
      194                      00 00 00 00 FF 18 18 18
      195                      18 18 18 18 1F 18 18 18
      196                      00 00 00 00 FF 00 00 00
      197                      18 18 18 18 FF 18 18 18
      198                      18 18 1F 18 1F 18 18 18
      199                      36 36 36 36 37 36 36 36

      200                      36 36 37 30 3F 00 00 00
      201                      00 00 3F 30 37 36 36 36
      202                      36 36 F7 00 FF 00 00 00
      203                      00 00 FF 00 F7 36 36 36
      204                      36 36 37 30 37 36 36 36
      205                      00 00 FF 00 FF 00 00 00
      206                      36 36 F7 00 F7 36 36 36
      207                      18 18 FF 00 FF 00 00 00

      208                      36 36 36 36 FF 00 00 00
      209                      00 00 FF 00 FF 18 18 18
      210                      00 00 00 00 FF 36 36 36
      211                      36 36 36 36 3F 00 00 00
      212                      18 18 1F 18 1F 00 00 00
      213                      00 00 1F 18 1F 18 18 18
      214                      00 00 00 00 3F 36 36 36
      215                      36 36 36 36 FF 36 36 36
      216                      18 18 FF 18 FF 18 18 18
      217                      18 18 18 18 F8 00 00 00
      218                      00 00 00 00 1F 18 18 18
      219                      FF FF FF FF FF FF FF FF
      220                      00 00 00 00 FF FF FF FF
      221                      F0 F0 F0 F0 F0 F0 F0 F0
      222                      0F 0F 0F 0F 0F 0F 0F 0F
      223                      FF FF FF FF 00 00 00 00

      224                      00 00 76 DC CB DC 76 00
      225                      00 78 CC F8 CC F8 C0 C0
      226                      00 CC C0 C0 C0 C0 00 00
      227                      00 FE 6C 6C 6C 6C 6C 00
      228                      FC CC 60 30 60 CC FC 00
      229                      00 00 7E D8 D8 D8 70 00
      230                      00 66 66 66 66 7C 60 C0
      231                      00 76 DC 18 18 18 18 00

      232                      FC 30 78 CC CC 78 30 FC
      233                      38 6C C6 FE C6 6C 38 00
      234                      38 6C C6 C6 6C 6C EE 00
      235                      1C 30 18 7C CC CC 78 00
      236                      00 00 7E DB DB 7E 00 00
      237                      06 0C 7E DB DB 7E 60 C0
      238                      38 60 C0 F8 C0 60 38 00
      239                      78 CC CC CC CC CC CC 00

      240                      00 FC 00 FC 00 FC 00 00
      241                      30 30 FC 30 30 00 FC 00
      242                      60 30 18 30 60 00 FC 00
      243                      18 30 60 30 18 00 FC 00
      244                      0E 1B 1B 18 18 18 18 18
      245                      18 18 18 18 18 D8 D8 70
      246                      30 30 00 FC 00 30 30 00
      247                      00 76 DC 00 76 DC 00 00

      248                      38 6C 6C 38 00 00 00 00
      249                      00 00 00 18 18 00 00 00
      250                      00 00 00 00 18 00 00 00
      251                      0F 0C 0C 0C EC 6C 3C 1C
      252                      78 6C 6C 6C 6C 00 00 00
      253                      70 18 30 60 78 00 00 00
      254                      00 00 3C 3C 3C 3C 00 00
      255                       00 00 00 00 00 00 00 00
                4. 뢮 筮 䨪.

   ⭮ ᪨    ᪨ ०, PCjr
- ,  EGA - ᥬ.  K  ⠭   ०  
[4.1.2].   ॡ  ࠧ  ⢥ ⫨ 
ࠧ ०,    ᨬ    ࠧ襭 ࠭  ᫠
ᯮ㥬 梥⮢.   ᢮ 襭 ᪨ ०  EGA
ᯮ  ᯫ ᮢᥬ -㣮, 祬 ⠫ -
⥬,   筮 㫨  ᯮ짮   ࠡ
   ०.
   砫 ᬮਬ 梥⭮    ⥬ PCjr.   梥
(  ) ॡ ⮫쪮       窨
 ࠭.  梥  2 ,  16 梥⮢ - 4 (8-梥-
  ०  ᯮ, ᪮  , ॡ騥  
 ।⠢   㤮  ࠧ    8  ). 
  ०  ⨪  200 祪.  H  ࠧ襭
(ᯮ㥬 ⮫쪮  PCjr) ᯮ  160 祪  ਧ-
, । ࠧ襭 -   (320 祪)  ᮪  ࠧ-
襭 -    (640  祪).   ᫮  ,
ॡ㥬   ०⨬ ਢ  [4.5.3].
    -  梥⭮ ० PCjr  롮   16
㯭 梥⮢. ⭮   ࠭祭.   梥⭮
०    ᥣ ࠭祭   ,     梥⭮
० ⮫쪮 梥 䮭  롨  16 梥⮢,   ६
 ᭮ 梥   ⮫쪮    ।।
.  0 ᮤন 筥,    梥, 
 1 - 樠,   .
     ⫨稥  ⥪⮢   ० 4-6  8-A ᪨
 ࠧ  ࠭    .  設⢥ ०
  ࠧ   ,  ⮬ ࢠ  
ᮤন      ப  ࠭,      -
     ப (ப 㬥,  稭   
࠭ ).   16-梥 ० PCjr  ࠧ஬ 32K
   ,       ᮤন  
 ⢥⮩ ப.
     4-梥 ०    ᮤন ଠ  
ᠬ  窠 ப 0, 祬 訩  ⭮  ᠬ
 窥.  騩  ᮤন ଠ  ᫥饬 ᥣ-
 ப  ..  ᥩ ப ॡ 80 .  81- 
ᮤন ଠ    ப 2.   16-梥 ०
⨭ ਡ⥫쭮 ⠪  ,     ப ॡ
160       ᮤন  ⮫쪮   
襣 ᫠ ப.   梥⭮  ᪮  
ப    ᬥ饭ﬨ  0000  1F3FH,  
-  2000H  3F3FH. ஬⮪  1F3FH  2000H .
 PCjr ᮮ⢥騥 祩  ⢥ ࠧ,  
ᨬ  ०  ᫠  ᯮ㥬  ࠭.   PCjr ᯥ-
樠쭮  ஥ ⠪ ࠧ,  뢮  16K,  稭  
ᥣ B800H ७ࠢ     ,  ॠ쭮
ᯮ .   ᢮⢮    ணࠬ,
   ࠡ  梥⭮ ᯫ  PCjr.
    ० ࠭ EGA  DH  10H  ࣠ ᮢᥬ
-㣮.  ࠧ  ,    ⮢ -
,    ࣠ ⠪ ,   ୮--
 ० ᮪ ࠧ襭, ᠭ :   
뫠  ।   ,    ᮮ-
  窥   ࠭, 祬  뢠  ਧ⠫
ᥣ ப   7  ᮮ⢥  ᠬ  窥. -
    ⠪ ⮢ ᪮, ᮮ⢥   
⥬  ᠬ  .     ⢮  窥 4 ,
  뢠 16 梥⮢. H . 4-4  ࠧ
奬 । .
    ᪮ ०   뢮    ᨬ.  
ᮧ   ᯮᮡ,  ⮣ BIOS ᮢ뢠  
筮,   䮭 梥.   ⮩ 稭 ⠪ 
 ⨢ ࠦ   ᨬ 㯭  -
᪮ ०. H 뢮  . BIOS    ।-
 ⠭ 祪  樨 , ⮡ 㧭  ᨬ
⠬ ᮤন.    ᯮ    権, ᮮ-
    ப  ⮫栬,  砥,    
ᥣ 稭  ࠭ ⭮ 쬨 窠.
   4.4.1 ⠭ 梥⮢  筮 䨪.

   PCjr  EGA ࠡ  梥⮬  ᮢᥬ  -㣮,  祬 梥⭮
.     ᯮ ॣ ,    
   梥,    ᮮ⢥   
梥. ᫥⢨ ⮩ ࠧ  㤥 㦤   ⥬
⤥쭮  筥  梥⭮ .
    ⥬ ᯮ          ᭮  
梥,    筮 ᮢ   ᯮ㥬   ⥪⮢
०:

   H             窠 ⮢         

      0                     0000             
      1                     0001             ᨭ
      2                     0010             
      3                     0011             樠
      4                     0100             
      5                     0101             
      6                     0110             筥
      7                     0111             
      8                     1000             
      9                     1001             મᨭ
      10                    1010             મ
      11                    1011             ન 樠
      12                    1100             ஧
      13                    1101             ઠ 
      14                    1110             
      15                    1111             મ

     梥⭮  ᪮    梥  ࠧ襭 ⮫쪮 
० 㬥७ ࠧ襭.   窨 ⢮  
  .   樨  ⮢
।⠢    䮭   ᭮ 梥.     梥
    16.   ᭮ 梥  롨-
     ,    ᮤন ⮫쪮 
।। 梥.  ᫥騥 梥:

   H     窠 ⮢     0     1

       0             00           梥 䮭    梥 䮭
       1             01                 樠
       2             10                 
       3             11      /筥 

᫨   -   ४稫   ⠬,  
뢥  ࠭ 梥  ᮮ⢥⢥ .  -
 ᯮᮡ ᯮ짮 梥,   室騩   , -
⮨  ⮬, ⮡ ⢥ ᬠਢ   梥⮢ -
  䮭 梥,    ।    ⨬  梥⮬
ᥣ ࠭,  ࠭  (ᯮ  ⮣  אַ
⮡ࠦ  ).  ᫥  ⮣  ⨭ 䮭 梥 
뢠  "᪢  "  ⢥ ᭮  梥.   
孨 ਢ  ᮧ ࠭  ࠭, 筮 ⮩, 
ࠦ    ⥪⮢ ०.   ⨢  砥  ࠭
࠭    뤥  梥⮬,  ⠪   ࠭ -
訢 䮭 梥⮬,  窨 ⭮騥   ࠭
 ᮢ.  ⬥⨬,  BIOS ࠭  ᢮  -
  ६,  ᮤন ⥪騩  -
.   ࠢ  0040:0066H.    ⮣ ᫠  
⥪ ⠭ ; , ᫨   梥 -
 㣨 ।⢠,    㭪権  樮 ⥬, 
祭 ⮩ ६ 㤥 ஢.
     ६訢  筮 䨪.  , -
  뢮 ᨬ,     ⮣,  㪭 
㤥 ᯮ짮   뢮.  ⥩ 㭪  㬮-
 ᯮ ⨩ 梥  ⥪饩  .    
ᯮᮡ  ᯮ짮   梥⮢ ,  ⠪  뢮
ᨬ ࠧ묨 梥⠬.  㦤  [4.1.3].
   EGA  PCjr ᯥ稢       ᯮ짮
ਡ⮢ 梥, ᨬ  ⮣,   ०  ࠡ.
 16-梥⭮ 䨪    ,  室騥     
  窨 ࠭  楯 ⮢,     ॢ
אַ  ᮮ⢥騥 梥 ਢ  ⠡.   ⮣
   ⭮    16 ॣ஢ .  K
  ॣ஢ ᮤন 楯  ⮢, ᮮ⢥ 梥,
  㤥  뢮  ᠬ .  ᫨  16  ॣ஢
 ᮤঠ 0100,  ᨬ   ⮣,  ਡ 㤥
ਯᠭ 窥  ,  㤥 뢥  梥⮬.  -
祭  ॣ 0  ᯮ    ⢥ 䮭 梥.  H
. 4-1  [4.1.3]   堭.   -  梥-
 ० ᯮ  ⮫쪮       ॣ
.
       ணࠬ   뢮 
 梥  㣮,       .
  ⮣ ⤥ ꥪ    祧   
襡.        祭, ᮤঠ饣 
ॣ  , ᮮ⢥饬  ꥪ,   祭
䮭 梥.  Hਬ,  ।,   䮭 梥 
(0000)   ꥪ 뢥  ਡ⮬ 1110, ⠪   뢮-
  ⮬ 梥,  㪠   ॣ  15 ( 㬮-
 祭  ⮣ ॣ ).  ᫨   祭
ॣ 15  0000 ( 䮭 梥),  ꥪ 祧. H
  ᠬ    ꥪ ࠭  , ⠪    ᠭ  
ਡ⮬ 1110,    ਡ⮬ 0000,   窨 䮭. ꥪ
  ᤥ  , ᫨  祭  ॣ
 15    1110.  H  易⥫쭮,  ⮡  祧 
  ꥪ, ᪮    뢥  㣨
ਡ⮬,  ⠪ ᮮ⢥ ॣ , ᮤঠ-
饬 ⠪  梥.
   EGA  ᯮ짮 6 ⮢ ॣ ,   4, 
  ᮥ 襭  梥⭮  ᪨ ᯫ 
IBM.  ⮬ ⠭ 㯭묨 64 梥, ஢  -
 R'G'B'RGB. R, G  B  ᮮ⢥  ⥬ 梥⠬,  R', G' 
B' - ᢥ.  樨 ᮧ 64 ⥭.  K ᥣ-
, 111111 ᮮ⢥  梥,  000000 - ୮.  ⬥-
⨬,  १ ॣ   EGA ᥣ 㯭 64 梥,
ᨬ  ⮣,     ०    ࠡ⠥.   ࠡ 
० 4-梥⭮ 䨪 (  梥⭮ ) ⨢ ⮫쪮
訥 4 ॣ ,    ᮤঠ  梥.

   ᮪ ஢.

   K 梥⭮ ᯫ ࠡ⠥  ᪮ ०,  ᨪ
ࠡ뢠   COLOR  㣮, 祬  ⥪⮢  ०.
砫  䮭 梥,    ᫠  0  15,  ⥬ 
  0  1.  Hਬ, COLOR 2,1 ⠭ 
䮭 梥 (#2)    ᥣ  ࠭    ⨢  1.
᫥  ⮣   ᭮ 梥 㪠뢠  ࠬ
 : 1 - 樠, 2 -   3 -  (ࠢ  -
஬  PAINT).  ⮡ 몫 梥  ० 㬥७ ࠧ襭
 SCREEN ,1.  ⬥⨬,   ᯮ짮 ⮫쪮 ୮ 
  梥⮢  ० 㬥७ ࠧ襭   ਢ  -
 . PCjr ᯮ  COLOR ⠪ ࠧ ⮫쪮
  ०  SCREEN 1.   ०  SCREEN 3  SCREEN 6  ଠ
⮣  COLOR ᭮,䮭.   ⮬ ᭮ 梥 -
 ᫮    1  15  16-梥⭮ ०   1   3
-  4-梥⭮.     ࠢ 0,  ᥣ ᯮ-
  ⢥ 䮭 梥.
    ᯥ樠   ⠭ ॣ஢ :
PALETTE  PALETTE USING. PALETTE ⠭ 梥 ᮮ⢥-
騩  ਡ.  Hਬ, PALETTE 9,11 ਢ  ⮬, 
窨 ᮢ  梥⮬   9 (筮 ᢥ⫮ᨭ) 
뢥  梥 11 (ᢥ 樠). ⮡  ⠭ 
ॣ஢     ࢮ砫쭮  祭, .. ⮡ -
 0 ᮤঠ 0, ॣ 12 - 12  ..     
PALETTE. ⬥⨬,      ०  SCREEN  4  SCREEN 6 ॣ
 樠 ⠪ ࠧ, ⮡ ਡ 梥⮢ 1-3
뫨 ⠪ ,    1  梥⭮ ᪮ ᯫ.
   楫 ᮢ⨬.
    16 ॣ஢    ⠭  -
஬ PALETTE USING.  PALETTE  USING  ࠢ ᮤন 16--
⭮ 楫 ᨢ  ॣ .   ᪮쪮 ⠪
ᨢ ணࠬ   ४  ࠧ 奬 梥-
⮢.   K  ᨢ   ᫮    0
 15,  -1,   ᫥  砥  ᮮ⢥騩  ॣ  
.   Hਬ,  饭 ਢ筮 奬 梥⮢ ᮧ-
 ᨢ,  ஬  ARRAYNAME(0)  =  15, ARRAYNAME(1) = 14 
..  ⥬  PALETTE USING ARRAYNAME(0)  ᮤন -
ᨢ ARRAYNAME 㤥 ।   ॣ  .  0 
砫   ᨢ,  ன    뫠-
  ॣ.    ᯮ짮    ᨢ, 
     稭   窨,   ᫮
   ᨢ   16 ⮢.  PALETTE USING ARRAY-
NAME(12) 㤥  , 稭  12-  ᨢ. ⬥-
⨬,   PALETTE USING ࠡ⠥   ⥪⮢, ⠪  
᪮ ०.  ਬ:
100 DEF INT A-Z         ' ६ 楫
110 DIM SCHEME1(16)     'ᨢ  奬 梥⮢ #1
120 DIM SCHEME2(16)     'ᨢ  奬 梥⮢ #2
130 DATA 3,5,9,2,4,12,15,1,6,7,14,13,8,11,10,0
140 DATA 0,11,13,7,1,12,2,5,10,8,14,6,15,4,9,3
150 FOR N = 0 TO 15     '  ॣ 
160 READ Q              '  梥
170 SCHEME1(N) = Q      '    ᨢ
180 NEXT                '
190 FOR N = 0 TO 15     '  ᠬ   ᨢ
200 READ Q              '
210 SCHEME2(N) = Q      '
220 NEXT                '
230 PALETTE USING SCHEME1(0)  '⠭ ॣ஢
 .
500 PALETTE USING SCHEME2(0)  '塞  । ணࠬ

   । ஢.

   㭪  BH 뢠 10H ⠭  䮭 梥, ⠪
 梥  -     ६.    ⠭  䮭
梥     BH 0,  ⥬  梥  0  15   BL.
 ⠭        BH 1,   BL 0  1. 
 ਬ ⠭ 梥 䮭 樠  롨ࠥ -
 0:

;---⠭ 梥 䮭  
   MOV  AH,0BH        ;㭪 ⠭ 梥
   MOV  BH,0          ;᭠砫 ⠭ 䮭 梥
   MOV  BL,3          ; 樠
   INT  10H           ;⠭ 梥
   MOV  BH,1          ;⥯ ⠭ 
   MOV  BL,1          ;롨ࠥ  1
   INT  10H           ;⠭ 

   H PCjr  㭪 ࠡ⠥ 筮  ⠪   4-梥⭮ ०,
⠭  ॣ  1-3    奬  梥⮢,  ᯮ㥬
梥 ஬.  2-梥⭮ ० 0  BL ᮮ⢥ 
梥,  梥 1,  1 - ୮.   㭪    -
祭, ᯮ㥬  16-梥⭮ ०.    
䮭 梥   ⠭ 뫪  BH 0,   BL - 
梥.

   H ஢.

    梥⭮           "ॣ
롮 梥" १  3D9H.  ᪨ ०  ॣ
 -㣮, 祬  ⥪⮢ (ᠭ  [4.1.3]). 
0-3 ᮤঠ ଠ  䮭 梥  筮 ଠ  (ᮮ-
⢥ ᨭ,       ⥭ᨢ).
 5 롨ࠥ ,    ࠢ 0,    
0.   ᪨ ० ⠫    祭.  
ॣ ⮫쪮  , ⮬   㪠뢠 ଠ
  䮭 梥   ,     .
   MOV  DX,3D9H          ; ॣ 롮 梥
   MOV  AL,00100110B     ;楯窠 ⮢  樠   1
   OUT  DX,AL            ;뫠 

   ᪮    ᯮ  ॣ  ,    ਬ
ਬ     PCjr   EGA.        㧨
ॡ㥬 祭   ॣ.  PCjr  ॣ 㬥
 10H  1FH.   ᥬ ॣࠬ ⢫ १ 
  ᮬ 3DAH.   祭 ਭ ⨬ ⮬
ਭ   ॣ஬.  ⮬  ᫠ ᭠砫
 ॣ,  ⥬  梥   ⮣ ॣ. ⮡ 
㢥७,       ॣ      
. Hਬ, ⮡   મᨭ  梥 (1001)  ॣ
 2:

;---頥  મᨭ 梥  ॣ  2
   MOV  DX,3DAH         ; ᨢ  ᯫ
   IN   AL,DX           ;⠥  
   MOV  AL,12H          ; ॣ
   OUT  DX,AL           ;뫠  ॣ
   MOV  AL,00001001B    ; મᨭ 梥
   OUT  DX,AL           ;뫠 梥

 EGA   㯠  ॣࠬ  - 3C0H,   ॣ
㬥  00   0FH.  H        3DAH ( 
3C0H), ⮡  㢥७,    ॣ.  K
 EGA  ᮥ  襭  梥⭮  ᯫ   ४⥫
⠭  ᮮ⢥騬  ࠧ,    ॣ  
6- 祭.
   4.4.2 ᮢ 窨  ࠭ (஬, 梥⭮  PCjr).

   ᫥⢨  ࣠樨  ᪮ ଠ樨   
뢮  窨 ࠧ㬥  ⤥ ⮢ .
  ,    ⭠ 梥⮢  ॡ,  ⮡  
⠭ ࠪ⨪    窨  뫨   ,  
  ᮮ⢥⢥.  樨  ॡ ஬-
 ⢠ ୮  ६,    祬 ᢨ⥫ ,
  設⢮ ᪮ ணࠬ  ᯥ祭  ࠡ⠥
祭  .  ⥫쭮  뢠     ࠧ
⠭    ,       ⮬
  4  8 ࠧ.    ,   ᫥ ᫥ -
  孨 筮 뢮.

   ᮪ ஢.

   ᨪ  ।⠢   PSET  PRESET    
梥 ⤥쭮 窨.   ࠧ  PointSET (⠭-
 窨)  PointRESET ( 窨).  祭 宦.  
 ᫥ न  ⮫  ப, 㪠뢠 窨,
祭  ᪮.  ⬥⨬,  न ᫥   浪
x,y - .. ᭠砫    ⮫,    ⥬ ப;  冷
   ⭮襭  浪  LOCATE,   -
樮 ⥪  ࠭. PSET(50,80)  PRESET(50,80) ⠭-
  梥 窨  ⮫ 50  ப 80.   ஬  PSET
 ᫥  梥,     , ।-
 ⥪騬 ० ࠭.  ᫨  梥  㪠,  ᯮ-
 ᨬ    ,    ⨬   
०.  PRESET 梥  㪠뢠.   ᥣ 頥 窥
梥 䮭 ( 0). Hਬ:

100 PSET(100,180),3   '⠭ 梥 3 ⥪饩 
110 PRESET(100,180)   ' 梥 窨  䮭

   PSET  PRESET 筮  ᯮ  ⥬ न,  ன
  孨 㣮 ࠭  न 0,0.   WINDOW
  ८। ⥬ न ⠪,  ਬ,
न   孥 㣫  -100,100, 業 ࠭  -
0,0,  ࠢ  㣫  -  100,-100.    ⮣  
       WINDOW(-100,100)-(100,-100).   (H
न         ⥬  न  25*80  (
25*40),  ன  LOCATE 樮 ᨬ  -
᪮ ࠭ [4.2.1].)
   K     LINE  [4.4.5],  ࢮ  ᫮   
᪮ 㪠뢠 ਧ⠫ न (  x). Kन-
     ⥫묨,  ⠪  ⥫묨,  
    뫨 ࠢ묨.    ࠭  ᥣ  ᢠ
襥 ᫮ (஥    訬 ⥫).  
ࠧ,   ᫨   न  ਬ   
   WINDOW(100,-100)-(-100,100),     祭 -100 㤥
   ࠭ ࠭.
   ஥  ᫮   न । ࠭  ࠭
 ⨪.  , 襥 祭 㤥 ⭮  
࠭  ࠭,  ᨬ  ⮣,    न  
㪠.  襥  ⥫쭮  祭  (  襥  
⥫) ᢠ  ⢥ 祭  y   -
 ப ࠭.  Hࠢ  㢥祭  祭   
饭,  ⥬ ⮡ ᨬ 祭 ᮮ⢥⢮  
࠭  . H     ᫮ SCREEN,
ਬ, WINDOW SCREEN(-100,100)-(100,-100).
   ணࠬ    㪠뢠  窨, ⭮騥     
। न  ࠭.   Hਬ,  業  㦭 
室    । ࠭,  ⥬ ⮡   뫠  ⮫쪮
 㣨.  ⬥⨬,  न, 㪠뢠 ஬ WIN-
DOW   뢭    ⠡   㣫
७  ꥪ. ࠦ    ᮢ뢠,  
,   न .
     PMAP  ८ࠧ न   筮  䨧᪮
⥬ न  "஢" ⥬, ⠭ ஬
WINDOW. PMAP ᯮ   :

   0         ८ࠧ x  "஢" ⥬  䨧
   1         ८ࠧ y  "஢" ⥬  䨧
   2         ८ࠧ x  䨧᪮ ⥬  "஢"
   3         ८ࠧ y  䨧᪮ ⥬  "஢"

    PMAP(,).  Hਬ,  ।,
  ⠭ ⥬  "஢" न ஬ WINDOW.
Kन    孥  㣫 ࠭  (-100,100),   ࠢ
 - (100,-100). K 㤥  業ࠫ쭮 窨 -
 (0,0)  ᯮ짮 筮 䨧᪮ ⥬ 320*200,  
ன  孨  㣮    न 0,0? ⮡  X
 X = PMAP(0,0),  Y -  Y = PMAP(0,1).  
祭 X = 160,  Y = 100.

   । ஢.

   㭪 CH 뢠 10H  ⠭  .   DX ᮤন
ப,   CX - ⮫,  뢠  0.  K 梥 -
頥  AL.  ⬥⨬,   ᮤন AX 㤥 ࠧ襭  -
 뢠.  ᫨  ᯮ  뢠  横,
   ࠭ AX  ⥪   ࠧ ⠭
.

;---뢮 窨  न⠬ 100,180
   MOV  AH,0CH        ;㭪 ⠭ 窨
   MOV  AL,3          ;롨ࠥ 梥 3 
   MOV  CX,100        ;ப
   MOV  DX,180        ;⮫
   INT  10H           ;뢮 
;---ࠥ 
   MOV  AH,0CH        ;⠭ 㭪
   MOV  AL,0          ;ᯮ㥬  ࠭ 䮭 梥
   MOV  DX,100        ;ப
   MOV  CX,180        ;⮫
   INT  10H           ;ࠥ 
       ६  梥  頥   訥    AL,
訩  ⠪  祭.  ᫨  ࠢ 1,   梥⮬
ந   ᪫饣   ⥪騬 梥⮬.  H-
,   ᪫饣  ⠭  ⮫쪮  ⮬
砥  ᫨   ࠢ ⮢ ⠭  ⮫쪮  .
᫨  ࠢ  ࠢ  1   ࠢ 0,  १
㤥 0.  梥⭮ ०  砥,  ⠪ 
頥 ⠭  .  ᫨      ਬ  ᥬ
窠 ࠭,  㤥 饭  ࠭.  -  16-梥-
 ०,  㣮 ஭,    ࠭   ᢮
梥.  Hਬ,   4-梥⭮ ० 㬥७  ࠧ襭
  窠  梥 1  (⠭ ⮢ 01B)
 梥 2  (10B).  ந, ᫨ ਬ  ᥬ
窠 ⮩   ᪫饣   11B? 01B ३
 10B,  10B ३  01B - 梥  饭.

   H ஢.

   H  ஢    אַ 㯠  -
 (⮡ࠦ  ). 砫   ᫨ ᬥ-
 窨 ()    ()  , ᮤঠ饣 ,
⭮騥   窥.  ᫥ ⮣ ⮢ 樨 ᯥ-
 ᮮ⢥ ⠭.   ⬥⨬,  ᫨  ⠭ -
짮    孨   PCjr,   ࠡ⠥     
16-梥 ०, ᯮ ࠭  ࠧ஬ 32K,  뢮
  , 稭騥  ࠣ B800H  㤥  ७ࠢ
୮.   室 אַ ᮢ ॠ 祩, ᯮ-
  ᥣ  2000H.
     宦 窨 室 ० ᥣ । -
    ⭮  ⭮ ப.   ਬ -
 饭  CX,  ⮫ -  DX.  ᫨  0 ॣ CX ࠢ
0,  ப    .     ப ᯮ 
ᬥ饭  0  ⭮⥫쭮 砫 .  ᫨   ப  
 ,  室   ᬥ饭 2000H  㪠-
  砫 ன  .
   ⥬ ࠧ  ப  2, 室  ᫮
⮫쪮    ப  㬭 १  80, ..
  ப 室 80 .      ᯮ짮-
  SHL,  १   饥 ᫮ ⮢  
ப,  ।  ப,  ன  ᯮ  ᪮
窠.
    ⮣, ⮡  ⥬    ᫮ ⮫殢  ⥪饩
ப,    ᭠砫  ।    ⮢   ,
 ᮤঠ  .  ⨣ 饭  ⮢
  ⮫ (᫥ ⮣  ࠭  )  뤥
  ⮢.   楤  室   ,
⭮騥    窥   ࢮ, ன, 쥩    ⢥⮩
樨  .     祭   2  砥  
 ࢮ   ⮢, ⭮   窥.
   ⥬  室 ६  ᫮ ⮢  ப,  ।-
 , ᮤঠ饬 ଠ   ॡ㥬 窥. 
० 㬥७ ࠧ襭  ࠧ ᫮ ⮫殢   4,
  ᮪ ࠧ襭 -   8.   ᫥ ⮣  ᫮ 
ᬥ饭:  ᬥ饭    ப,    ⮫
 ᬥ饭 砫 /  ப  . ᫥ ⮣ 
  ॡ㥬   .
   H,  ந   ᮮ⢥騬  ⠬
. 頩      ,    ⮢ ⭮ 
窥   ⠭ 訬.   饭 室  ᯮ짮
࠭ ⠭ 祭  樨  ⮢.  ⥬ 몫 
    樥 OR ॡ㥬  .  ⥬
 ந ⭮ 饭  ᫠  ⭮  .

;--- ᥣ 
PALETTE_COLOR  DB   2

;---맮 楤
   MOV  AX,0B800H         ;㪠뢠  
   MOV  ES,AX             ;
   MOV  CX,100            ; ப
   MOV  DX,180            ; ⮫
   CALL SET_DOT           ;
    .
    .
;---।塞 ᫮ ⮢  । ப
SET_DOT     PROC
            TEST CL,1              ; ப ?
            JZ   EVEN_ROW          ;᫨ ,  ।
            MOV  BX,2000H          ;ᬥ饭   ப
            JMP  SHORT CONTINUE    ;室 ।
EVEN_ROW:   MOV  BX,0              ;ᬥ饭   ப
CONTINUE:   SHR  CX,1              ; ᫮ ப  2
            MOV  AL,80             ;㬭  80
            MUL  CL                ; AX - ᫮ ⮢
;---।塞     
            MOV  CX,DX             ;㥬  ⮫
            NOT  CL                ;頥 
            AND  CL,00000011B      ; CL -  ⮢ (0-3)
            SHL  CL,1              ; ࢮ  
;---뢠 ᬥ饭 ⮫  
            SHR  DX,1              ;  ⮫  4
            SHR  DX,1              ;(㦭   )
;---塞 ᬥ饭  塞 
            ADD  AX,DX             ;᪫뢠   ᬥ饭
            ADD  BX,AX             ;
;---塞  㦭 
            MOV  AH,ES:[BX]        ;⠥ 㦭 
            ROR  AH,CL             ;ᤢ 㦭  
            AND  AH,11111100B      ;⨬ 訥 2 
            MOV  AL,PALETTE_COLOR  ;塞   梥 
            OR   AH,AL             ;
            ROL  AH,CL             ;⭮ 饭
            MOV  ES:[BX],AH        ;頥 
            RET                    ;
SET_DOT     ENDP
   4.4.3 ᮢ 窨  ࠭ (EGA).

    EGA 䨪  ᫮.   窨 ७  ०
࠭ 0-7  ⠪ ,  ᮮ⢥騥 ०  梥-
   PCjr,  ०  DH  10H ᮢ襭 㣨.
࣠      ० ,  ᨬ  
᫠ ᯮ㥬 梥⮢  ⢠ , 饩  
ᯫ.  . 4-4  [4.4.0].
     ० D, E  10H  ࠧ  4  ⮢  ᪮.
K ᪮ ࣠ ⠪  ࠧ,   ୮--
 ० ᮪ ࠧ襭 梥⭮ ,  -
  [4.4.2]:        뫠   ।
  ,    ᮮ⢥ 窥   ࠭,
祬   ᮮ⢥  ਧ⠫쭮 ᥣ , 
  7 ᮮ⢥ ᠬ  窥.  뢮    ⠪
⮢ ᪮, ⭮騥     ⥬  ᠬ  -
.  ਢ  ⮬,   窠 뢠 -
 ⠬ ( 16 梥⮢), 祬   室 ⤥-
  ⤥쭮 ⮢ ᪮.
   H      4 ࠧ  ,  ᯮ-
    ⮬  ? ⢥    ⮨ 
⮬,      뫠 ᫥⥫쭮     ⮬
.   ⮣    ०   -
  4 ,  ᭮    祭 
. ﭨ  ᫠ ஬   -
  ᪮쪨 ॣ஢,   ॣ ᪨, -
 ।         ⮢ ᪮ 
 .
       ॣ஢   ᭠砫 ࠧ  
 ॣࠬ  (latch register).   ᮤঠ -
   ⮢ ᪮⥩  ⮩ 樨,  ன  뫮
᫥ 饭. (⨬,    ନ ⮢ ᪮ -
   楫  , ⠪   -
 ,  ६  ࠭饣    ॣ .) K
  뫠   । ,   
    ᬥ   ॣ , 
᫥⢨     ॣ   뢠  
. K  ࠧ        ॣ
   ᯮ㥬 ० ,  ⠪  -
  㣨 ॣ஢.  ⥭   -
  ॣ      ⠬    
⮢ ᪮⥩   .   ࠬ  
㫨஢,  ந    ᮤন  ࠧ  ᪨
樨,   ࠨ ࠧ ᪨ .
    ᪨ ⮢  ॣ ᪨    ॣ-
  ,  ।   ⮢ ᪮  
  ⢨ ,  㯠   .  -
  ᪨  ⮢   ॣ ⮫쪮  ,    
ண 3CFH.  砫  ᫠ 8   3CEH, ⮡ 㪠
  ॣ. ⠭  ⮣ ॣ  1 ᪨ 
     ⮢  ᪮,    ᮮ⢥
  㯭  .  , ᪮ 㤮
ࠡ⠥    ⮢  ନ,  ॠ쭮  "塞"  
१뢠     ⮢  ᪮.     
᪨㥬 ⮢ ࠭  ॣ , ⮬ ணࠬ-
   㢥७,  ⥪饥 ᮤন ॣ஢ 
⭮    ࠢ쭮  .   ⮩  稭  ।
     뢠  .
    ᪨     3C5H.  ॣ ⮫-
  . । 뫪   ᫠  ⮬ 
2  㪠⥫.  0-3  ⮣  ॣ  ᮮ⢥ ⮢
᪮  0-3; 訥 4  ॣ  ᯮ.   K
 0-3 ࠢ 0,   ⢥騥  ⮢  ᪮  -
   .  ᢮⢮ ᯮ -ࠧ
 ࠧ ० ,   㢨  쭥襬.
    ०   ⠭  ॣ஬  ०, 
  ॣ஬  ⮫쪮  ,        
3CFH,     ।⥫쭮  뫪  5  
.    ⠭   0  1,  ᫮  0
 2.   2   ࠢ  0, ⠪     4-7.   3
⠭     ० ⥭  .   
   0  1. BIOS EGA ⠭ ०   00.

     0:
    ⥩襬 砥 ०   0   
    ⮢ ᪮⥩.  Hਬ,   -
    ᫠  11111111B   ࠧ襭 
   ⮢ ᪮ (..   ᪨஢ ᠭ-
  ॣࠬ ᮪).       -
 㤥 ⠭  1, ⠪  楯窠 ⮢    
ᮮ⢥ 祪  㤥  1111B.     砥,  8 祪
 뢥  梥 15,  砫쭮 ᮮ⢥ મ-
 梥,   ॣ    ,  ⮡  ᠬ
     ⨬ 梥⮢.
     ᬮਬ      砩,    뫠  祭
00001000B. 窠 ⮢   窨 3 㤥 1111,   ⠫
- 0000,  ᮮ⢥ ୮ (砫쭮).  ⮬  
砥 ⮫쪮 窠 3   ࠭ (મ),  ⠫
7  祪  몫祭.   ᫨ ⠫ 7 祪 । ⨬
뢮  - 梥,  ⥯     ४祭
 0000.
     ᬮਬ 㣨 梥, ஬ 1111B.  ᫨  諥
   梥    ॣ  ᪨  ,  ॣ
᪨ । ⮢ ᪮ ⠪ ࠧ,  㤥
ந ॡ㥬  梥.  Hਬ,  ᫨    梥 
 0100,  諨 0100  ॣ ᪨ .   ⮢
᪮ 0, 1  3   .  K  諥  -
   11111111B,   祭 㤥 饭  ⮫쪮  
⮢ ᪮ 2  楯窠  ⮢   窨 㤥 0100.
᫨  諥  ⮬  00001000B,  窠 3 㤥 
楯 ⮢ 0100,  ⠫ 窨 - 0000.
   , ,  ᫮.  ᪨  頥
 ⮢ ᪮⥩,    . ।, 
⮢ ᪮ 0 뫠  栬,  ⮢ ᪮
1   3 뫨  ﬨ.  ᫨     
 ᪮,  ⥬ 諥 11111111B  । -
,   ⮢ ᪮ 2 㤥  11111111B,   ⮢
᪮ 0 ࠭  ᢮  ,  ⮬  १騩 
梥   窨 ⠭ 0101B.   砨,   
᢮⢮  ᯮ짮   梥⮢ ࠭. H -
 , 室     ⮢ ᪮ (..
    ॣ ) । ⥬,   㤠  
梥 ஬ 1111B  0000B.       뫪 0 
㪠  .  H室 ⮡  ⮬ 뫠 ࠧ襭 -
    ⮢ ᪮.
   襯ਢ  㦤   ᠫ  ६  뢮
쬨 祪.  H   뢥 襥 ⢮ 祪?   ⮬
砥, 筮,  室  ࠭  騥   
  祪,   ⮡  뫮   ⥪饥  ᮤন
  ࠭   ॣ  .  ⥬ ᯮ-
 ॣ ᪨ ⮢  ᪨஢  祪,  
 . ᫨  ⮣ ॣ 襭  0,  
砥    ⮣     
ᯮ , ࠭騥    ॣ  .  
     0  1 -   祭; ᫨ 
 ⮫쪮  2,    ⠫  ᪨஢,  ,
  室     0FFH  4H,  
㣮 祭,  ண   2 ⠭. ᫨  2 -
襭,   0 頥  ⮩ 樨   ࠧ襭  ⮢
᪮.
    , ணࠬ   ᭠砫   祩-
,    ᮡࠥ   祬 8 祪. 
 ० ⥭ (㦤  [4.4.4])   ࠧ筮  
 ࠭.   ⥭ 㦠 ॣ  
⠬       .  , 頥
 樥 ⥭,   襭.
       뫨 ᬮ७ ᠬ    ०
 0.             ᫮
樨.   ⥩ ⮨  䨪樨 ॣ஢
   ᪨ 権 । .   ॠ-
樨 ⮩  ॣ 饭  ᯮ ᫥-
騥 :

    2-0        ᫮ 饭
        4-3        00       
                   01     ᪮   ॣ஬ 
                   10     ᪮   ॣ஬ 
                   11     ᪫饥   ॣ஬ 
        7-5         ᯮ

   ᫮  饭,  ஥        0  7, 뢠
᪮쪮 ⮢    । ⥬,   
 ॣ .  筮  祭 ࠢ .  筮,
 4-3,  ࠢ ࠢ 00, ஬ 砥,  ந
᪨ 樨.    権  ⨬ ॣ஬  
      ࠧ 梥  ࠦ   -
⥫쭮  ୮  ࠡ⪨.     饭 
  뫪 3   3CEH; ⥬  뫠  
3CFH.
   H, ०  0   ࠡ ᮢᥬ -㣮 ᫨
ࠧ襭  ⠭/.   ⮬ 砥 ।  梥  
    ॣ  ⠭/  (  ⮦
   3CFH,   뫪 0  3CEH).  -
 ᮮ⢥騩 ॣ ࠧ襭 ⠭/, 
ࠧ蠥      ⮢, ⠭ ᢮ 訥
  1. K  4   ॣ ⠭/ ࠧ襭,
     8 ᮢ ⮢ ᪮   -
   ,   ⮬ ᠬ   -
뢠.  ᫨ ࠧ襭    ⠭/,  
   饭 祪. ⬥⨬,  ॣ
᪨ ⮢ 頥   ⠭/  ।-
 窨,   ⠭  ॣ  ᪨    
ᯮ짮 ⠭/.  BIOS 樠 ॣ ࠧ-
襭 ⠭/   0,  ⠪     ⨢.  
 3CFH,    뫪 1   3CEH.

  1:
     1 ।祭  ᯥ樠 ਫ.  ⮬
० ⥪饥 ᮤন  ॣ  뢠  㪠-
  .  H,  ॣ    
樥 ⥭.   ० 祭   ண ७
   ᤢ ࠭.  ᪨ ⮢  ॣ
᪨       .  H  ⠪  祭
  뫠   -  ᮤন ॣ஢ 
뢠    .

  2:
      2 ।⠢ ୠ⨢ ᯮᮡ  ⠭
⤥ 祪.   뫠 ,    -
祭  ⮫쪮  4  ,  ᬠਢ    梥
( ॣ ).    ᪠,   楯窠 ⮢
⠢  ४ ⮢ ᪮⥩.  窠 㡫  
 ᥬ 祪, ⭮     ,    
ॣ ᪨ ⮢  ।࠭ । 窨  -
.  ᪨  ⨢,    ०  0. K-
   ᫠  ,  ⮫쪮 訥 4 
⢥.

   ᮪ ஢.

   ᨪ ন EGA  ࠤ樮 ० 梥⭮ -
᪮ . K ६ 室 ⮩  প -
⥫ ० EGA   ⢮.  ⮬     㣮
室,  ஬  ᯮ짮 אַ ⮡ࠦ   ,
 稭     A000:0000.    殮 ஡
⮨   ⠭ ० ᯫ.    襭  ᯮ
᫥ 楤  設 몥:

10 S$ = CHR$(&H2A)+CHR$(&HE4)+CHR$(&HB0)+CHR$(&H0D)
        +CHR$(&HCD)+CHR$(&H10)+CHR$(&HCB)
20 DEF SEG                  '⠭ ᥣ
30 Y = VARPTR(S$)           '㪠⥫  ப
40 Z = PEEK(Y+1)+PEEK(Y+2)*256  '᫥  ப
50 CALL Z                   '맮 楤

⢥  S$ ᮤন  ०,   砥 ० D.
   㣮 ०.     ਫ   
  楤 ࠡ⠥  ᨪ.    襭, 
㦭  筮 ,    ன ᮤঠ  設
.   H   ⠭ ० ᯫ  ᫥  襭
᢮ 権.
   ⥬  ⠭  ᮮ⢥騩  ०  .  
⠭ ०  2:

50 OUT &H3CE,5         '㥬 ॣ ० 
60 OUT &H3CF,2         '롨ࠥ ० 2

    ⠪    ⠭  ᫥  襭
ணࠬ.
   H, ਢ ࠧ , ॠ騥 אַ ⮡ࠦ
 :

  0:

100 '㥬     孥 㣫 ࠭
110 DEF SEG = &HA000     '㪠뢠  
120 OUT &H3CE,8          '㥬 ॣ ᪨ ⮢
130 OUT &H3CF,128        '᪨㥬  , ஬ ᥤ쬮
140 X = PEEK(0)          '⠥ ⥪饥 祭  
150 POKE 0,0             '⨬
160 OUT &H3C4,2          '㥬 ॣ ᪨ 
170 OUT &H3C5,4          '⠭  梥
180 POKE 0,&HFF          '㥬 

  1:

100 '㥬   祪  ᫥
110 DEF SEG = &HA000     '㪠뢠  
120 FOR N = 0 TO 79      '  80 ⮢ ப
130 X = PEEK(N)          '塞 
140 POKE N+80,Y          '㥬  ᫥ ப
150 NEXT                 '室  ᫥饬 ᥣ

  2:

100 '㥬     孥 㣫 ࠭
110 DEF SEG = &HA000     '㪠뢠  
120 OUT &H3CE,8          '㥬 ॣ ᪨ ⮢
130 OUT &H3CF,128        '᪨㥬  , ஬ ᥤ쬮
140 X = PEEK(0)          '⠥ ⥪饥 祭  
150 POKE 0,4             '뫠  梥

   । ஢.

   EGA ন ⠭ ᪨ 㭪樨 BIOS.   
뢥    㭪樨 CH 뢠 10H, ⠪   
梥⭮  ᯫ  PCjr.   室 DX  ᮤঠ  
ப,  CX -  ⮫,      㣮 뢠  0.
K 梥 頥  AL.  ন AX   믮
뢠.

;---㥬    50,100
   MOV  AH,0CH        ;㭪 뢮 窨
   MOV  AL,12         ;롨ࠥ ॣ  12
   MOV  CX,100        ; ப
   MOV  DX,50         ; ⮫
   INT  10H           ;㥬 
   H ஢.

   H ਢ ਬ     ० . ।  -
짮  室  ⠭ ० ᯫ,  ᯮ騩
   A000:0000.  ⮣  ᯮ짮 ⠭-
 㭪 BIOS, ਬ,  ⠭ ० D:

   MOV  AH,0       ;㭪 ⠭ ०
   MOV  AL,0DH     ;롨ࠥ ० D
   INT  10H        ;⠭ ०

H  ⠭ ० । 襭 ணࠬ. K஬
⮣,  室 ⠭ ॡ㥬  ० .  -
 ⠭ ०  2:

   MOV  DX,3CEH    ;㪠뢠  ॣ 
   MOV  AL,5       ;㥬 ॣ 5
   OUT  DX,AL      ;뫠 
   INC  DX         ;㪠뢠  ॣ ०
   MOV  AL,2       ;롨ࠥ ०  2
   OUT  DX,AL      ;⠭ ०

   , , ਬ  ० :

  0:

;---㥬     孥 㣫 ࠭
   MOV  AX,0A000H      ;㪠뢠  
   MOV  ES,AX          ;
   MOV  BX,0           ;㪠뢠    
;---᪨㥬  , ஬ ᥤ쬮
   MOV  DX,3CEH        ;㪠뢠   ॣ
   MOV  AL,8           ; ॣ
   OUT  DX,AL          ;뫠 
   INC  DX             ;㪠뢠  ॣ 
   MOV  AL,10000000B   ;᪠
   OUT  DX,AL          ;뫠 
;---⨬ ⥪饥 ᮤন 
   MOV  AL,ES:[BX]     ;⠥ ᮤন  
   MOV  AL,0           ;⮢  ⪥
   MOV  ES:[BX],AL     ;⨬ 
;---⠭ ॣ ᪨   ᭮ 梥
   MOV  DX,3C4H        ;㪠뢠   ॣ
   MOV  AL,2           ; ॣ ᪨ 
   OUT  DX,AL          ;⠭ 
   INC  DX             ;㪠뢠  ॣ 
   MOV  AL,4           ; 梥
   OUT  DX,AL          ;뫠  梥
;---㥬 
   MOV  AL,0FFH        ; 祭  ⠭ 7 ⮬
   MOV  ES:[BX],AL     ;뢮 
  1:

;---㥬 ப  ᫥ ப
          MOV  CX,80       ;᫮ ⮢  ப
          MOV  BX,0        ;稭  1-  
          MOV  AX,0A000H   ; 
          MOV  ES,AX       ;
NEXT_BYTE:   MOV  AL,ES:[BX]   ;塞 
          MOV  ES:[BX]+80,AL   ;뢮  ᫥ ப
          INC  BX          ;室  ᫥饬 
          LOOP NEXT_BYTE   ;

  2:

;---㥬     孥 㣫 ࠭
   MOV  AX,0A000H        ; 
   MOV  ES,AX            ;
   MOV  BX,0             ;㪠뢠    
;---⠭ ॣ ᪨ ⮢
   MOV  DX,3CEH          ;㪠뢠   ॣ
   MOV  AL,8             ;ॣ ᪨ ⮢
   OUT  DX,AL            ;㥬 ॣ
   INC  DX               ;㪠뢠  ॣ 
   MOV  AL,10000000B     ;᪨㥬  , ஬ 7-
   OUT  DX,AL            ;뫠 
;---㥬  
   MOV  AL,ES:[BX]       ;塞 ॣ 
   MOV  AL,4             ; 梥
   MOV  ES:[BX],AL       ;㥬 
   4.4.4 । 梥 窨 ࠭.

    ᪨ ० 梥⭮   PCjr ।
梥 窨   ஢ ⮨  饭 楤 뢮
窨:  ணࠬ  ⠥    뤥  騥
.    EGA  ⮤  ਣ, ᪮  ०
DH  - 10H    ᮮ⢥    -
.  EGA   ० ⥭, ⮡ ८  㤭.
  ,   PCjr  EGA, ᫥ ⮣,    ।
 梥 窨, 室   ஢ ⠭ ⥪饣 -
     ⮣ , ⮡ ।  梥  
ਯᠭ.
     ணࠬ஢     ० ⥭
EGA.    ० 0 頥 , ᮤঠ騩   
⮢ ᪮,  㪠  .  1  㪠
 梥  頥 ,  ஬  ⠭  1,  
ᮮ⢥ 窠     梥.   3 ॣ ०
।  ० ⥭ ⠭ (0 = ० 0).   
⮬ ॣ ⢫ १  3CFH    ।-
⥫쭮 ᫠ 5   3CEH, ⮡   ॣ. -
  ⠫  ⮣  ॣ,     ⮫쪮 -
,  襭  0, ஬ ⮢ 0  1,  ।  ०
. ᪮  樠樨 BIOS ⠭   
०    0 (⠪    ࠢ 0),  筮    㦭
 ᫠   ॣ 0, ⮡  ⠭ ० ⥭ 0
 ᫠ 8, ⮡ ⠭ ० ⥭ 1.
     ⥭  0 ॡ, ⮡   ।⥫쭮  ⠭
ॣ 롮 .  ⢥  ⮣ ॣ - -
,    ⮢   ⠭. ⮬  
 ᫠ ᫮  0  3.  ॣ    3CFH
   ।⥫쭮 ᫠ 4   3CEH, ⮡ 㪠  
ॣ.
    ⥭ 1  ᫮.  砫 ॣ ࠢ 梥⮢
     楯窮 ⮢   梥,   
.    頥   訥 4  ॣ; 訥 4
 - ⢥.  ॣ    3CFH 㪠-
 ।⥫쭮 뫪 2   3CEH. ᫥ ⥭ 祩-
  頥 ,    ⠭  1
  窨, 饩 㦭 梥.    ᯮ짮-
  ॣ ࠧ 梥 (color don't care register)  
  ⮢   梥     ࠢ ஢.
筮  4   ⮣ ॣ ⠭  1;  㫥
   ⮢ ਢ   ⮬,   ᮤন ᮮ⢥-
饩  ⮢  ᪮ 㤥 ஢.  Hਬ,  ᫨
楯窠 ⮢  窨 3 ( 3)  㪠  ࠢ 0110
 ॣ ࠢ 梥⮢ ᮤন 祭 0010,   ࠢ-
 㤥 饭 ,   ண    3 ࠢ 0, ᫨  -
 ࠧ 梥⮢   ࠢ 1.  H ᫨ ॣ -
ࠧ 梥⮢ ᮤন 1011,   , 頥 -
  3 㤥 ࠢ 1.
     ࠧ 梥⮢    3CFH   -
 뫪 7   3CEH. 訥 4     -
  ஫.  ⬥⨬,  㬥 IBM ( 2  1984  .)
⢥ত  ॣ    ࠧ, ..,  1 
ॣ ⠢  ࠢ ஢ ᮮ⢥-
 ⮢ ᪮. ᯥਬ 뢠 ⭮.
   H      ०  ⥭       
⢥      梥 । 窨.   ० ⥭  0
室 4 ⤥ ⥭,     ⮢ -
, ᫥ 祣   뤥 ᮮ⢥騥    -
 .  ० ⥭ 1,    㣮 ஭,  ॡ-
  16 ⥭, ० 祬  ॡ㥬 窨 㤥 -
饭 ⠭  ,  㪠뢠騩     窠  
梥.  H  EGA ⭮⥫쭮  믮  ,
  㣨 楫  ࠡ⠥ 祭 .

   ᮪ ஢.

   ᨪ ।⠢ 㭪  POINT,    頥 梥
窨.   窨, 室饩  ⮫ 200  ப 100
室 ⥬ Q = POINT(200,100).  祭, 頥  Q -
    梥.  ᫨ 㪠 窠, 室
 । ࠭,    㭪  POINT  頥 祭 -1.
K  न⭠ ⥬ ࠭   ஬  WINDOW
[4.4.2],  㭪 POINT 室   ⥬.
   POINT  ⠪ ᮮ  ᫥ 뢥 窨.
  ᯮ짮  筮 न⭮ ⥬,   ன  0,0
ᮮ⢥  孥  㣫  ࠭, Q = POINT(1) -
頥  Q x-न 窨,  Q = POINT(2) - y-न.  ᫨
  WINDOW,  Q = POINT(3)  Q = POINT(4) -
頥 x-  y-न   ⥬.  K  ⨢ -
 WINDOW,  ᫥    ⠪ ,  
 .
   K   室 ⮩  ᨪ  ন  襭
᪨ ० EGA (D-10H).     ० ணࠬ 
אַ    ᮤন .   ਬ  ᯮ짮
० ⥭ 1  ᪠  梥⮢ 0001  1001:

100 OUT &H3CE,5         ' ॣ ०
110 OUT &H3CF,8         '⠭ ० ⥭ 0
120 OUT &H3CE,2         ' ॣ ࠢ 梥⮢
130 OUT &H3CF,1         '饬 梥 0001
140 OUT &H3CE,7         ' ॣ ࠧ 梥⮢
150 OUT &H3CF,7         '7 = 0111B, ⮬ . . 0001  1001
160 DEF SEG = &HA000    '   EGA
170 X = PEEK(0)         '⠥  
180 IF X <> 0 THEN...   '.. 梥 0001  1001 

   । ஢.

   㭪 D 뢠 10H 頥  梥 㪠 窨.
BIOS  騩   EGA ᯥ稢,   㭪  ࠡ-
⠥   ० ᯫ.  H   ப (-
뢠  0)  DX,   ⮫ (⠪ 뢠  0) -
 CX.  頥  AL.
;---।塞   窨 100,200
   MOV  AH,0DH       ; 㭪樨 ⥭ 梥 窨
   MOV  DX,100       ; ப
   MOV  CX,200       ; ⮫
   INT  10H          ;⥯  梥  AL

   H ஢.

    ᪨ ०  梥⭮    PCjr  
  אַ ⮡ࠦ  ,  ⠭-
 梥 窨,        [4.4.2].   ᯮ짮
ਢ ⠬ ਬ,    ᫥騬 :

;--- ⮢ (  ⠢ )
   MOV  AH,ES:[BX]     ;६   㦭 樨
   ROR  AH,CL          ;ᤢ 2 㦭  
   AND  AH,00000011B   ;몫砥 ⠫ 
   RET                 ;⥯  AH -  

     ०  EGA  DH  10H   짮  ॣࠬ,
 뫨 ᠭ .     ᫥饬  ਬ ० ⥭ 0
ᯮ  ⥭ ⮢ ᪮ 2   A000:0012.

;---⠭ ० ⥭
   MOV  DX,3CEH       ; ॣ
   MOV  AL,5          ;᭠砫 㥬 ॣ ०
   OUT  DX,AL         ;뫠 
   INC  DX            ;㪠뢠  ᠬ ॣ
   MOV  AL,0          ;⠭ ० ⥭ 0
   OUT  DX,AL         ;
;---⠭ ⮢ ᪮,  㤥 
   DEC  DX            ;  ᭮ ॣ
   MOV  AL,4          ; ॣ 롮 
   OUT  DX,AL         ;뫠 
   INC  DX            ;㪠뢠  ᠬ ॣ
   MOV  AL,2          ; ⮢ ᪮ 2
   OUT  DX,AL         ;뫠 祭
;---⥭ ⮢ ᪮
   MOV  AX,0A000H     ; 
   MOV  ES,AX         ;
   MOV  BX,12         ;ᬥ饭  
   MOV  AL,ES:[BX]    ;⠥  ⮢ ᪮ 2

,  , ਬ ᪠  梥 0010  1010   ᯮ짮-
 ० ⥭ 1:

;---⠭ ० ⥭
   MOV  DX,3CEH       ;ॣ 
   MOV  AL,5          ;㥬 ᭠砫 ॣ ०
   OUT  DX,AL         ;뫠 
   INC  DX            ;㪠뢠  ᠬ ॣ
   MOV  AL,8          ;⠭  3  ० 1
   OUT  DX,AL         ;⠭ ०
;---⠭ ॣ ࠢ 梥⮢
   DEC  DX            ;頥  ᭮ ॣ
   MOV  AL,2          ; ॣ ࠢ 梥⮢
   OUT  DX,AL         ;뫠 
   INC  DX            ;㪠뢠  ᠬ ॣ
   MOV  AL,0010B      ; 梥
   OUT  DX,AL         ;뫠 
;---⠭ ॣ ࠧ 梥⮢
   DEC  DX            ;頥  ᭮ ॣ
   MOV  AL,7          ; ॣ ࠧ 梥⮢
   OUT  DX,AL         ;뫠 
   INC  DX            ;㪠뢠  ᠬ ॣ
   MOV  AL,0111B      ;ਭ  1010  0010
   OUT  DX,AL         ;뫠 
;--- 梥
   MOV  AX,0A000H     ; 
   MOV  ES,AX         ;
   MOV  BX,12         ;ᬥ饭  
   MOV  AL,ES:[BX]    ;⠥  
   CMP  AL,0          ;⠭ ?
   JNZ  FOUND_IT      ;᫨ ,  饬   窨
   4.4.5 ᮢ   ࠭.

   ⥩訩  ᯮᮡ  ᮢ   ࠭ ⮨   ⮬,
⮡ ᫨ ᫥  ⮩      ᮮ-
饣 .  樨 祭 ,   
 .  ᫨   ,    ᫨ 
祪  ࠭,     梥.     ॡ㥬
樨  ⠬    த  ⮫쪮   ⮬, 
⥬        饭     ᮮ⢥
権 .

   ᮪ ஢.

   ᨪ   ᮢ        
LINE. LINE (20,10)-(40,30)    ⮫ 20  ப 10
 ⮫ 40  ப 30.   ப  ⮫ 㬥  .
    न ࢮ 窨,  ⮬ 砥  
㤥 稭  ᫥  窨,   뫠 ࠭ 뢥
᪨  ஬.    न   
⠪ ⭮⥫쭮 ࢮ,   樨 LINE -STEP(xoff-
set,yoffset).
     LINE  㪠뢠 ⠪ 梥  ⨫ .   K
梥 ᫥ ࠧ  ᯨ᪮ न;  LINE (50,50)-(60,60),2
뢮    梥⮬ 2.  K 梥  㪠,    㬮砭
 梥 3.   롮 ⨫  । 㪠-
 ।  祪. ࠧ     -
, ⠪        ⭠筮   ଥ.   Hਬ,  ࠧ
1010101010101010,  ᮮ⢥ &HAAAA,  , 窨
ன   ।  梥  䮭. ⨫  -
  쨬  ࠬ஬ ᫥  न.   Hਬ,  LINE
(30,30)-(40,40),3,,&HAAAA 뢮   㪠 ⨫ 梥⮬
3.
   ᨪ ।⠢ ⠪ 楤  ᮢ אַ㣮-
  㦭⥩. אַ㣮쭨 뢮   
LINE.   砥 न  뢠  孨 
ࠢ  㣮 ࠬ. H  㪠 B (box - ..  ࠬ-
)     ⢥  ண  ࠬ     न⠬.    LINE
(50,50)-(100,100),1,B,&HAAAA     ஭ 50 祪
梥⮬ 1 , ᯮ 襮ᠭ ⨫.   뢮 -
㣮쭨,   ।  梥⮬  ᯮ짮
ࠬ BF ( ⮬ ⨫  㪠뢠  ).
   㦭  ஬ CIRCLE.   뢮  ᭮뢠
 㫥 CIRCLE (x,y),r,梥,-㣮,-㣮,ᯥ.  Kन-
  x,y    業 㦭  ࠭,   r -  ࠤ
㦭  窠;  ⠫쭠 ଠ 易⥫쭠. 
-     梥,   㬮砭   ࠢ 3.   ᫨
室  뢥  ⮫쪮    㦭,     㪠
-㣮  -㣮 (  饭,  뢮 楫 -
).     ⥫   ⥫ -
稭,  뢠  ࠢ  ਧ⠫ ࠢ.  
  ࠤ ( 360 ࠤ  ᮤন 6.292 ࠤ, 
  ࠤ = 0.0174532 ࠤ).  ᯥ  ⭮襭  ਧ-
⠫  ⨪ ࠧ஢. K㣫 㦭 砥 
ᯫ,    㪠  ࠢ 5/6  㬥७ ࠧ-
  5/12  ᮪  ࠧ襭.  訥 祭 ਢ 
ᠬ,   ਧ⠫,  訥 -  ⨪. 
ਬ PI=3.14159:  CIRCLE(200,50),30,2,PI/2,PI,6  뢮 ,
業 ன 室  窥 50,200,  ࠤᮬ 30 祪  梥-
⮬ 2, 祬 㤥 뢥  ⮫쪮  孨 ࠭ -
쭮 ⮣ .
    ᫮   뢮    DRAW,
 砩 .  ஬ DRAW ᫥ ப (-
祭    ᪮),  ன  ஢  ᫥⥫쭮
ਥ権   ᥣ⮢, ⠢  .  Hਬ, DRAW
"E12F12G12H12"  뢮  㡭.  H砫쭠 窠  ⠭
஬ PSET (㦤   [4.4.2]);   ⨢ 砥, 
㬮砭  業 ࠭.  ᭮     㪢,
 ன ᫥  ᥣ  窠. K ᫥騥:

   Ux         ( x 祪)
   Dx        
   Rx        ࠢ
   Lx        
   Ex            ࠢ
   Fx            ࠢ
   Gx            
   Hx            

 㬥७ ࠧ襭 100  祪  ਧ⠫  100 祪 
⨪   १ ਬ୮   ( ᠬ  
⭮襭 y  x ࠢ 5/6).  ᮪ ࠧ襭 ਧ⠫쭠
 㤥 ਡ⥫쭮  , 祬 ⨪쭠.  -
襣 ﭨ  窠  אַ㣮쭨 ᮤ-
  ஢ ⮫쪮  祪, ᪮쪮  ᨬ쭠 ஭  -
㣮쭨,  ᠬ १ .
      ᮢ   㣫, ⫨묨  45 ࠤᮢ,
ᯮ  㪢 M.      ᫥騩 ᥣ
   ᮫  ⭮⥫  ࠭.  ⮡ 㪠-
 ᮫      㪠  न  x   y. DRAW
"M50,60"  ஢   ,  न ⮫ 50 
ப 60.   㪠 ⭮⥫ न   +
  - । ᫠.  ᫨ ⥪饥 祭  न x  ࠢ
100,  +50 த     ⮫  150,  -50 -  ⮫
50.    ⮡   ᤢ    100,100   120,70     DRAW
"M+20,-30".
     易   뢭.  K ।  㪠
㪢  B,  㪠⥫ ६頥  㪠,  ᥣ 
 ⮬  . Hਬ, DRAW "L10BU5R10"   -
  ਧ⠫ .  ⮡   窨  稭
᪮쪮 ᥣ⮢    㪠  ।   㪢 N.   ⮬
砥 㪠⥫ 㤥   砫  ᫥ 뢮-
 ᥣ.
       ᯥ樠  ,     饭묨
  ப,    ᫥騥  ( ᫥騩
   㪠  㣮  ⢨).  ᥣ 
⠭  㪢  C,  ன ᫥   梥.   DRAW
"C2D5"  , ࠢ   梥⮬ 2. ⠭ -
⠡ 䠪  ⠡,  ஬ 㤥 뢮 䨣
  .  H   ப 㪢 S,  ன ᫥
䠪.    ᫮, ஥  祭 ⠡ 
 4.  筮 䠪 ࠢ  4,    ᮮ⢥  ⠡ 1:1.
  䠪   8 ਢ  ⮬,    ࠧ  뢮
䨣 㤥  .   ⮣   DRAW "S8U12D12" 
..
   ᯮ          न-
 ⥬. K 㪢 A 頥  ⨢ ᮢ ५ 
90-ࠤ묨 ਬ⠬. A0    . A1 - -
稢   90 ࠤᮢ,  A2  -    180  ࠤᮢ  A3 -  270
ࠤᮢ.  筮,  TA 稢   㪠 ᫮
ࠤᮢ  0  360 (⨢ ᮢ  ५)   0  -360 (
ᮢ ५).  DRAW "A1L10"  DRAW "TA90L10" ਢ  ⮬,
 ,     뫠    ࠢ   㤥
  ⮣  ᮢ ⮩  90 ࠤᮢ   ࠢ
.
    DRAW     ப  ६,  
   ⨬ .   ᢮⢮  ண-
ࠬ ୮ ᯮ짮    䨣  ࠧ 㭪. 
  DRAW  ப   饭  㪢 X   
  ᫥ 窠  ⮩. Hਬ:

100 S$ = "U12R15U45L32"
110 DRAW "XS$;"

   DRAW  ᮤঠ ᪮쪮 ப, ६-
 㣨 .  ⬥⨬,   ᫠, ᯮ㥬  
   DRAW  ᠬ  ६묨.  -
        DRAW   뢮  䨣,
⫨騥  ଥ, 梥, ⠡   ਥ樨. H -
  ࠢ⢠  㪢    ६,  
     ⮩.   Hਬ, ⮡ ⠭
  梥, ।塞 ६,   DRAW  "C=PCOLOR;".
K ᨪ ॡ,  ⮡  뫪   ६ -
⢫﫠   㭪樨 VARPTR$.  ⮬ 砥 ⠪ -
 㤥    DRAW  "X"  +  VARPTR$(S$)    DRAW  "C=" +
VARPTR$(PCOLOR).  㭪   ࠭  ᨢ 
⥬ 饭  ࠭   . 㦤 ⮣ -
 .  [4.4.6].

   H ஢.

   Hਢ  楤 ᯮ  १  
뢮 אַ , ᮥ饩   窨.   ᯮ
㭪  BIOS ⠭ 祪     ᫨  
 㭪  ஥ 楤,  ᯮ אַ ⮡-
    .  K        楤
 権 㬭  .   ᬠਢ 
 ᥣ⮢  ⨯:   ᯮ 쭮 
,  ᯮ ਧ⠫쭮  ⨪쭮.  
     1   ᥣ  ⨪,   ⨢
砥  ਧ⠫;  ࢠ   ⬠ ⮨  -
᫥ . ⥬  ࠢ騩 䠪, 
᫥ ⮡ ஥ ᫮   ᥣ⮢   -
,  祬 ⠫.  , , ᫮ 横 ।  뢮
   ᥣ.  BX । ਭ  -
⥫,   ⥫ 祭, ⬥  ⨯ ᥣ
뢮.  H ⮢    뢮   
㣫 ࠭  ⨢:

;--- ᥣ 
START_X                   DW   0
END_X                     DW   319
START_Y                   DW   0
END_Y                     DW   199
COLOR                     DB   2
DIAGONAL_Y_INCREMENT      DW   ?
DIAGONAL_X_INCREMENT      DW   ?
SHORT_DISTANCE            DW   ?
STRAIGHT_X_INCREMENT      DW   ?
STRAIGHT_Y_INCREMENT      DW   ?
STRAIGHT_COUNT            DW   ?
DIAGONAL_COUNT            DW   ?

;---⠭ ० ᯫ
               MOV  AH,0       ;㭪 ⠭ ०
               MOV  AL,4       ;梥⭮ 320*200
               INT  10H        ;⠭ ०
;---⠭ 砫 ६⮢   樨 窨
               MOV  CX,1       ;६   x
               MOV  DX,1       ;६   y
;---᫥ ⨪쭮 ⠭樨
               MOV  DI,END_Y   ;⠥ न 砫쭮
               SUB  DI,START_Y ;窨  न 筮
               JGE  KEEP_Y     ;। ᫨  < 0
               NEG  DX         ; ६ ࠢ -1
               NEG  DI         ; ⠭   > 0
KEEP_Y:        MOV  DIAGONAL_Y_INCREMENT,DX
;---᫥ ਧ⠫쭮 ⠭樨
               MOV  SI,END_X   ;⠥ न 砫쭮
               SUB  SI,START_X ;窨  न 筮
               JGE  KEEP_X     ;। ᫨  < 0
               NEG  CX         ; ६ ࠢ -1
               NEG  SI         ; ⠭   > 0
KEEP_X:        MOV  DIAGONAL_Y_INCREMENT,CX
;---।塞 ਧ⠫  ⨪  ᥣ
               CMP  SI,DI      ;ਧ⠫ ?
               JGE  HORZ_SEG   ;᫨ ,  ।
               MOV  CX,0       ;   x  
               XCHG SI,DI      ;頥 襥  CX
               JMP  SAVE_VALUES;࠭塞 祭
HORZ_SEG:      MOV  DX,0       ;⥯     y
SAVE_VALUES:   MOV  SHORT_DISTANCE,DI  ;襥 ﭨ
               MOV  STRAIGHT_X_INCREMENT,CX  ;   0,
               MOV  STRAIGHT_Y_INCREMENT,DX  ; 㣮 - 1.
;---塞 ࠢ騩 䠪
               MOV  AX,SHORT_DISTANCE  ;襥 ﭨ  AX
               SHL  AX,1       ;㤢 
               MOV  STRAIGHT_COUNT,AX  ; 
               SUB  AX,SI      ;2*襥 - 襥
               MOV  BX,AX      ;  稪 横
               SUB  AX,SI      ;2*襥 - 2*襥
               MOV  DIAGONAL_COUNT,AX  ;
;---⮢  뢮 
               MOV  CX,START_X ;砫쭠 न x
               MOV  CX,START_Y ;砫쭠 न y
               INC  SI         ;ਡ塞 1  
               MOV  AL,COLOR   ;६  梥
;---⥯ 뢮 
MAINLOOP:      DEC  SI         ;稪  襣 ﭨ
               JZ   LINE_FINISHED  ;室 ᫥ ᫥ 窨
               MOV  AH,12      ;㭪 뢮 窨
               INT  10H        ;뢮 
               CMP  BX,0       ;᫨ BX < 0,  אַ ᥣ
               JGE  DIAGONAL_LINE  ;  ᥣ
;---뢮  ᥣ
               ADD  CX,STRAIGHT_X_INCREMENT  ;।塞 -
               ADD  DX,STRAIGHT_Y_INCREMENT  ;  
               ADD  BX,STRAIGHT_COUNT  ;䠪 ࠢ
               JMP  SHORT MAINLOOP  ; ᫥ 
;---뢮  ᥣ
DIAGONAL_LINE: ADD  CX,DIAGONAL_X_INCREMENT  ;।塞 -
               ADD  DX,DIAGONAL_Y_INCREMENT  ;  
               ADD  BX,DIAGONAL_COUNT  ;䠪 ࠢ
               JMP  SHORT MAINLOOP  ; ᫥ 
LINE_FINISHED:
   4.4.6  ⥩ ࠭.

   ⥫쭮  뢠    ᪫    譥
⥫쭮,  ᢮⢥   ணࠬ 
⥩   ᪮ ࠭.  K  ᭮  
  ᫥,        ।  
窨,   ॡ 室騥  ६ ⮢  樨.
    ।   ⮢ 樨 -
            梥  
  ᫮ 믮,  ⮬  ᢠ -
  ⮢  祭, ஥ ⠭   窨  
ࠢ 梥.  ⮬    室   樨
     ⥬  ⮬,  ࠧ ⠭   ⮫쪮
   祪, ଠ  ன ᮤন  .
    [4.3.4] ᭥  ᮧ ᠭ ᨬ   -
  8*8  祪, 饣 ॡ㥬  .    ⠪  ᨬ
 뢮 ⮫쪮   ⠭  ᨬ 樨,  
ᯮ짮   ⢥     䨪.
ࠧ ᢥ稢騩  8*8 祪   뢥  ࢠ-
 ᪮쪨 ப  ⮫殢,    ॥,
祬  ⨣  筮 ᮢ.   ⨯ -
 ᨬ  ᯮ짮 ᮢ⭮  筮  䨪.
ᥢ᪨ ᨬ   ᯮ짮  ⠪  뢮
   ꥪ⮢.

   ᮪ ஢.

   ᨪ  ।⠢  PAINT    ⮩
䨣 ந쭮 .    室  㪠 ⮫쪮 
 ,   ⠫쭮  楤.   
㪠 梥 ,       , ਬ,
PAINT  (100,110),2   梥⮬ 2 .   ᪠
 稭  㪠 窨   ,   
窨   梥⮬, ⫨騬  䮭.   ,  ,
㪠 梥 ࠭  ᪠  㤥  த   -
ࠢ,     祭 窨 㪠 梥.   
⠪ ᪥  㣨  梥⮢,  室騥  ࠭,
   ⠪ 襭.  K 梥 ࠭ ᫥   
梥 , ⠪ ࠧ  PAINT  (100,180),2,3 訢
 梥⮬ 2   梥 3.  ⬥⨬, ,   -
楤   ,  室騥  "  㣫", .. ᫨
   -  ਧ⠫쭮    ⨪쭮  ࠥਨ
⨫ 窠,  梥 ࠭,   ᫥騥 窨
  ⮩  ࠥਨ  ,   ᫨  䨣  
㤫    窨  ਭ ७  䨣-
.   ᫥饬 ਬ 뢮  ४뢠 ࠬ 梥-
⠬ 樠  ,  ⥬  ᫥  ࠬ   
梥⮬.     ࢮ ࠬ,     襭
 ⠪  .

100 LINE (50,70)-(270,130),1,B   '㥬 ࠬ 梥⮬ 樠
110 LINE (100,30)-(220,170),2,B  '㥬 ࠬ 梥⮬ 
120 PAINT (101,31),3,2           '塞  ࠬ 
,    LINE    ᠬ   ࠬ, ᫨ 
㪠  ⢥ ࠬ 'BF',   'B'.  [4.4.5].
     PAINT   "ୠ⠫"  ,  
      㪠  ⨭.  
ୠ,   ० 㬥७ ࠧ襭  ࠧ  4
窨  ਭ  8   (8*8   ᮪ ࠧ襭) -
   ᥩ 㪠 .  㭮  뢠  ஬
⮢, ᮤঠ 楯 ⮢   ᫥⥫ 冷 -
  ୠ.   ० 㬥७ ࠧ襭  楯窠  ⮢
10000011 뢠 4 窨,  ࢠ    梥 2, ᫥-
騥 2 - 䮭 梥,  ᫥ - 梥 3.   楯窠 ᮮ-
  131  &H83 (.  ਫ ,  ஬ -
  ⮢  樨  ᨪ).  饭 ⮩  楯窨  
11000010  193 (&HC1).        ꥤ  
ୠ  ਭ  4 窨  ⮩  2 ப  CHR$(&H83)  +
CHR$(&HC1).  ⠪ ப      8 ⮢, 
   8 祪.   ப ᯮ    PAINT
 梥.  뢮 ,  ᠭ ୠ-
⮬:

100 LINE (100,110)-(150,150),1,B     '㥬 ࠬ
110 PAINT (125,125),CHR$(&H83)+CHR$(&HC1),1   '塞 

⬥⨬,   ॣ୮  ୠ  ਢ 
⮬,  楤  PAINT  蠥,    稢 
.  ᨪ 蠥  ஡ 㪠 ࠬ 䮭 
 PAINT.  ᫨       ஡, 頩 
㪮  ᨪ  ⠫ﬨ.
    DRAW, 騩 ᮢ ᫮ , ⠪ 
 .  㦤  [4.4.5].  " 窠" (
ன  㤥  ᮢ ᫥騩 ᥣ )    
饭  , ࠭祭  ࠭楩 㪠 梥.
 ப  DRAW    㪢 P,   -
ன  ᫥  梥 ᪨   梥 ࠭.  
뢮  ࠬ  梥⮬ 1 ,  ⥬    梥⮬  3
  DRAW  "U10R10D10L10BH1P3,1".      
  ࠭  ࠬ, ⥬  'BH' ६頥  ⥪  
 ࠬ,   ,  ⥬  'P' ਢ  -
  ࠬ.   ࠧ        ᫮
. ⬥⨬,    易⥫쭮   ६饭 窨 
 ⬥ ᮢ   ⮣ . ,  ⮬
砥  ᯮ짮   ⮣  ᥣ  梥, ⫨
 梥 塞 ࠭.
   ᨪ    ⠪     ⥩  ࠭
࠭ ⮢ ࠦ. ࠦ   -
 ࠧ,   뢥   樨 ࠭  ࠭
 ᨢ. 筮, ࠦ ᮧ    㯭
।,   ⥬   ᨢ ஬ GET.   ᨢ
  饭   ᫥⥫  䠩 [5.4.3],  ண
ணࠬ  㧨   뢥 ࠦ.  GET
 न    孥    ࠢ  㣫
ࠬ, ᮤঠ饩 ࠦ, 祬 ᭠砫   ⮫,
 ⥬  ப        न.  ⥬ 
᫥   ᨢ, ஥  砥  窨.  H-
, GET (80,40)-(120,60),ARRAY3 頥   窨, 室騥
 㪠   ᨢ   ARRAY3.
  ᨢ,    ⠫,     ।-
⥫쭮  ᠭ ஬ DIM.  ᨢ  ᮤঠ  
 筮.   ᫥  ॡ㥬  ࠧ஢ ᨢ 
᭠砫 । ᪮쪮 ⮢ ॡ  ࠭  -
ࠦ.   ᫨   㫥 4 + INT ((x*⮢
+ 7)/8)* y.   "⮢" ࠢ 1  ᮪ ࠧ襭
 2 -  㬥७  ࠧ襭.  㪢  x  y ⭮  
祪  ਧ⠫쭮  ⨪쭮 ஭   ࠦ-
.  INT 砥 楫  ᫠.  H,  ।
᪮쪮  ⮢  ᨢ ॡ  ࠭   ᫠
⮢.  K    2   楫 ᨢ,  4 -
  ᥫ   筮 筮  8 -  ᥫ    筮-
.
    祭 ࠦ    ᨢ    뢮   ࠭
ᯮ  PUT.   ॡ ⮫쪮 न
 孥 㣫   ࠭,    㤥 뢮
ࠦ.     न⠬   㪠   ᨢ.
Hਬ, PUT (40,30),ARRAY1 頥  ࠦ,  孨
㣮 ண 㤥 室  ⮫ 40  ப 30. 
PUT     易⥫ ࠬ, ।騩 梥,
 㤥 뢮 ࠦ.  ᫨  ࠬ 饭,
 ࠦ 㤥 뢮  筮   ⮬ ,  ஬ 
뫮  ᠭ  ஬  GET.     ⭮    PUT
(40,30),ARRAY1,PSET.   ⨢ 砥   㣨
. ᫨   PSET 㪠 PRESET,  梥 0 -
 㤥   梥 3  ,  梥 1  -  梥
2  .
       , ᯮ騥 ᪨ 樨 AND,
OR  XOR.  K  PRESET   ᫮   PSET  ਢ-
 ਬ. 㦤   権 ᬮ  ਫ-
 .  K    砥  ࠢ  ⮢ 饩
窨    ࠭  ⠬ 窨 뢠  ࠦ.   
० ᮪ ࠧ襭,    ⢮ ⮫쪮 1 
 . H  ० 㬥७ ࠧ襭,  ஬ 
  ⢮ 2 ,  ந室 ࠧ ࠭-
ଠ樨 梥⮢.
   AND ⠭  ⮫쪮 ᫨   ⠭    窨
࠭   窨 ࠦ (⮩  ᨢ).   ० -
  ࠧ襭  砥,  窠 ࠦ   
࠭ ⮫쪮 ᫨  ᮮ⢥  窠 ࠭ 㦥 "祭".
 ⠫ 窨   몫祭.   ० 㬥७
ࠧ襭    ந      ⠬. ᫨ 
窨  ࠭  ⠭ ⮢ 01,     ᮮ⢥饩  窨
ࠦ - 10,     襭  窠 ࠭ -
  00,  ᮮ⢥ 䮭 梥.
   OR  ⠭  , ᫨   ⠭    窨
࠭,   窨 ࠦ.   ୮- ० OR -
뢠  ࠦ   饥 ࠦ  ࠭.   
梥⭮ ०  । 䥪    ਡ
 ᫥. K   1(01)  2(10)  3(11),
⠪    0(00)  3(11).
   , , XOR ⠭  ,  ᫨   ࠢ
⮫쪮    ⠭.  ਬ ⮩ 樨    -
- ࠭  ᨢ   ⨢ ࠦ (1
 1  0,  1  0 -  1).  ० 㬥७ ࠧ襭 
   梥.   १  砥  
ࠦ.   H   ,   ७ ⮩  樨
࠭ ਭ  筮 ⠪  ,    ࢮ-
砫쭮.   ⮬ ࠦ ࠥ.   孨  
⨯樨,   ࠦ  ந -
 XOR   樨, ⥬  ᥤ  ..

   H ஢.

     室  ᠭ 楤   -
᪨ ꥪ⮢. H       , ᪮
ᥣ   䫨  ᪮ ࠡ 楤  ᫮-
 䨣,     ࠡ뢠.    楤,
     窮 㤥 ,  -
ᨬ  ⮣, ᪮쪮 ⭮  ॠ.   -
,     㥬 窠  ᯮ   ,
 窨 ண      ᠬ 梥.  -
  㯠     ⮬     ᯮ짮  ᫮
楤 ॡ ⢥  ६, 祬 ⠭ 楫
      祩 .  Hਬ, 筠
⪠ ࠭ ॡ  IBM PC ᪮쪨  ᥪ㭤  ᯮ짮-
 㭪樨 BIOS,   ६  אַ     ந-
   :

      MOV  AX,0B800H     ;ES 㪠뢠   ࠭
      MOV  ES,AX         ;
      MOV  CX,8192       ;塞  
      MOV  AX,0          ;   襬 0
      MOV  DI,0          ;DI । 㪠뢠   
REP   STOSW              ;塞  8192 ࠧ

    楤       ਧ⠫쭮  ப,
஢  梥 ࠭ ࠢ  ᫥. ᪮ ப 
 ᬥ ⮢ ,     ।    -
   ஢     梥 ࠭.   ᫨
梥 ࠭ ,       ࠧ   
梥  .   ⨢ 砥    ਬ
 室.
    祭  ᯮᮡ ।    -
 梥    . ।,  楤-
  梥 1   ० 㬥७  ࠧ襭  
梥⠬. ⮬ 梥 ᮮ⢥  01, ⮬ ᭠砫 -
   ⨬ : 01010101. ⥬ ᯮ㥬  NOT
 饭  , ᫥ 祣  ਬ   10101010.
த   XOR    祭     ; 
१ 稬 ,  ண  , ⭮騥  
窥 ࠢ 1 ⮫쪮   祪,    ࠭ 梥.  ⥬
᭮ ᯮ㥬  NOT  ⥬, ⮡  ⮢, ⭮-
  窥 ࠭筮 梥    00. ᫥ ⮣ ᯮ㥬
  TEST  宦   祭 00.  ᫨  ⠪
 ,  ࠭ 梥 㦥  楤 室 
筮 筮   .   楤  
 , ᫨ ᯮ짮 ᫮ .

   MOV  AL,ES:[BX]    ;६   
   XOR  AL,10101010B  ;⠭   梥 ࠭
   NOT  AL            ;頥 
   TEST AL,11000000B  ;஢塞  7-6
   JZ   FOUND_BOUND   ;室 ᫨ ࠭ 梥
   TEST AL,00110000B  ;஢塞  5-4
   JZ   FOUND_BOUND   ;室 ᫨ ࠭ 梥
   TEST AL,00001100B  ;஢塞  3-2
   JZ   FOUND_BOUND   ;室 ᫨ ࠭ 梥
   TEST AL,00000011B  ;஢塞  1-0
   JZ   FOUND_BOUND   ;室 ᫨ ࠭ 梥
   MOV  AL,FILL_COLOR ;࠭筮 梥 , 塞 
   MOV  ES:[BX],AL    ;頥   
    .
    .
FOUND_BOUND:

   K  ,  ࠩ, ⮡ ࠭ אַ㣮
⥩   ⨭ 뫨 ࠢ  ࠭ ,  
 쬨 祪,  ⥬ ⮡  אַ  ⮡ࠦ   
  楫묨 ⠬.  㣠 ,    ⮫ -
, ⮨  ᮧ  ।塞  짮⥫ ᥢ-
᪨  ᨬ [4.3.4]  뢮   ࠭   -
.  K,        
ᮮࠧ⥫쭮,      ⮨ 㬠,  㦭    
⮫ ᫮ 䨪   .
   4.4.7 ᪨ 뢮  ᯮ짮 ᨬ ᥢ-
.

   K  뢮 ࠦ 窠  窮,   ⭨
祭  ६, ᮡ   ᮧ 䥪 ⨯-
樨.    ᯮᮡ  ६ ⮨  ᢥ 
  뢮    䨣ࠬ,    ஥
  祪 8*8.   䨣   ᮧ,  -
塞  짮⥫  ᨬ,      [4.3.4]. ᫥
⮣,     ᨬ ।  뢮   ࠭  祭
  .  ᨬ   뢮 ६  -
묨 䨪,   㪢.    ᯮᮡ  ண
 䨣 ⮨  ᫥⥫쭮 뢮  䨣
  襭 .  ⬥⨬,    ᨬ  ᥣ
ᯮ  ⠭  .

   । ஢.

    ⮬ ਬ  䨣  祫,  2 ᨬ
    2 ᨬ  ਭ.  K ᭥   [4.3.4]  
뢠 1FH 㪠뢠   砫   , ।
ᨬ.   ᨬ   뢥 묨 楤ࠬ
DOS  BIOS.   ᮧ  㣮    ᨬ,  뢮
䨣  㪠    㣮  ࠭.   ᨬ-
  ।   ᥤ  , ᮧ-
  祫, 饣  ࠭.

;--- ᥣ 
CHARACTER_DATA  DB   00110000B   ; 孨 ࠭
                DB   01100111B
                DB   01100111B
                DB   00110011B
                DB   00011111B
                DB   00001111B
                DB   00001111B
                DB   00000111B

                DB   00000011B   ;ࠢ 孨 ࠭
                DB   10001100B
                DB   10011000B
                DB   00110000B
                DB   11100000B
                DB   11000000B
                DB   11000000B
                DB   10000000B

                DB   00001111B   ;  ࠭
                DB   00011111B
                DB   00011100B
                DB   00011000B
                DB   00011000B
                DB   00110000B
                DB   01100000B
                DB   00010000B
                DB   11000000B   ;ࠢ  ࠭
                DB   11000000B
                DB   11000000B
                DB   11000000B
                DB   01100000B
                DB   01100000B
                DB   00010000B
                DB   00011110B
                DB   00000000B

;---⠭  뢠
   PUSH DS                ;࠭塞 DS
   MOV  DX,OFFSET CHAR_DATA  ;ᬥ饭    DX
   MOV  AX,SEG CHAR_DATA  ;ᥣ    DS
   MOV  DS,AX             ;
   MOV  AH,25H            ;㭪 ⠭ 
   MOV  AL,1FH            ; 
   INT  21H               ;⠭ 
   POP  DS                ;⠭ DS

;---㥬 䨣
;---樮㥬   孨 
   MOV  AH,2         ;㭪 ⠭ 
   MOV  DH,13        ;ப 13
   MOV  DL,20        ;⮫ 20
   MOV  BH,0         ;࠭ 0
   INT  10H          ;⠭ 
;---㥬 孨  ᨬ
   MOV  DL,128       ;६ ᨬ 128
   MOV  AH,2         ;㭪 뢮/ ।
   INT  21H          ;뢮 ᨬ
   MOV  DL,129       ;६ ᨬ 129
   INT  21H          ;뢮 
;---樮㥬    ப
   MOV  DH,14        ;ப 14
   MOV  DL,20        ;⮫ 20
   MOV  AH,2         ;㭪 ⠭ 
   INT  10H          ;⠭ 
;---㥬   ᨬ
   MOV  DL,130       ;६ ᨬ 130
   MOV  AH,2         ;㭪 뢮/ ।
   INT  21H          ;뢮 ᨬ
   MOV  DL,131       ;६ ᨬ 131
   INT  21H          ;뢮 
                  5.  ࠭  ࠭.

    ࠭  ࠧ  ࠭ -   ᯮᮡ ७-
  ଠ樨    ࠭.  ᤢ   ࠭
࠭  ᤢ  ,  ଠ   ⨢
஭.  ⥬  ᢮       .
७ ⮣ ⢨ ப  ப ᮧ  ᤢ-
 ࠭.
    㣮 ஭, ࠧ   ࠭  ᭮  -
  ࠭  ᪮쪨 ࠭ ଠ樨     
४祭 뢮    ࠭    .  ᯮ짮
ᯫ ࠭   ஬ ,  ᪮
  墠⠥ ⮫쪮    ᨬ쭮 ࠭.  㣨
⥬    設⢥ ࠭ ०    ࠡ  
᪮쪨  ࠭栬.  ᯮ짮  ࠭ ᯫ ᮡ
   ஥ ᫮ ⨭ " 㫨ᠬ"; ᫥  ⮣
   ࠡ  襭,    ࠭  뢮 ⠫쭮.
楤,    ࠡ   ࠭栬    ஬
 ਢ   [4.5.3].     ᮡ  ,  
    뢮  ࠭  ᨪ.
   4.5.1 ⨪ ᤢ ⥪⮢ ࠭.

   K  ⥪⮢ ࠭ ᤢ ,  ப   2-  
25- ९뢠  ப   1-   24-,  ᫥ ப
  뢮  25- ப.   ⮬  ப, 
ன ⢫  뢮  ,     த -
⢮  .   ஥ 筮.

   ᮪ ஢.

   ᨪ  ⮬⥫쭮 ⥫  ᢮    -
.  ண ᤢ    ᯮ짮 楤-
  設 몥,    祣 㣮, ஬ 
ᯮ 뢠  10H,    ᠭ     㭪 ।
஢. 楤  ᤢ  ࠭    
. ਫ  뢠    ணࠬ  設-
  몥    ணࠬ.   ணࠬ   ᨪ  
㪠뢠 न  孥        ࠢ 㣫
,        0  24   0   79.
ॡ ⠪ ࠬ,  㪠뢠騩  ࠢ ᤢ: 
    (6  7, ᮮ⢥⢥), ᫮ ப  ஥  㦭
ᤢ (᫨ 0,    頥)   祭  ਡ⮢
 頥 ப ( "ଠ" - 7).  ᯮ   
楫 ६.   ਢ ਬ ࠭ ᤢ 
  ப,  ⥬ ᢮ ப ᢮.

100 '''  ணࠬ
110 DATA &H55, &H8B, &HEC, &H8B, &H76, &H12, &H8A
120 DATA &H24, &H8B, &H76, &H10, &H8A, &H04, &H8B
130 DATA &H76, &H0E, &H8A, &H2C, &H8B, &H76, &H0C
140 DATA &H8A, &H0C, &H8B, &H76, &H0A, &H8A, &H34
150 DATA &H8B, &H76, &H08, &H8A, &H14, &H8B, &H76
160 DATA &H06, &H8A, &H3C, &HCD, &H10, &H5D, &HCA
170 DATA &H0E, &H00
180 '''頥   ᥣ &H2000
190 DEF SEG = &H2000      '頥  稭  &H2000
200 FOR N = 0 TO 43       '44 
210 READ Q                '⠥  
220 POKE N,Q              '頥   
230 NEXT                  '᫥騩

300 ''' ணࠬ
310 GOSUB 500             'ᤢ  ப
320 LOCATE 1,1: PRINT TEXT$(LINEPTR);  '뢮 ப ⥪

500 '''ணࠬ ᤢ
510 DEFINT A-Z            'ᯮ㥬 楫 ६
520 TLR = 0               '  ப
530 TLC = 0               ' 孨 ⮫
540 BRR = 24              ' ࠢ ப
550 BRC = 79              ' ࠢ ⮫
560 NUMROWS = 1           '᫮ ப ᤢ
570 DIR = 7               'ࠢ ᤢ 
580 FILL = 7              '  ਡ⮬
590 DEF SEG = &H2000      '㪠뢠  ணࠬ
600 SCROLL = 0            '稭  1- 
610 CALL SCROLL(DIR,NUMROWS,TLR,TLC,BRR,BRC,FILL)
620 RETURN                ' ᤥ
   । ஢.

   㭪  6 뢠 10H ᤢ   ࠭ , 
㭪 7 - .    AL ᮤন ᫮ ப ᤢ,
   AL = 0,   ࠭ ,   ᤢ.   CH:CL
ᮤঠ ப  ⮫   孥 㣫,  DH:DL - ᮤ-
  न ࠢ  㣫.  騥  -  ᤢ
ப    뢮   ਡ⮢  BH.

;---ᤢ    ப
   MOV  AH,6      ; 㭪樨 ᤢ 
   MOV  AL,1      ;᫮ ப ᤢ
   MOV  CH,0      ;ப  孥 㣫
   MOV  CL,0      ;⮫  孥 㣫
   MOV  DH,24     ;ப ࠢ  㣫
   MOV  DL,79     ;⮫ ࠢ  㣫
   MOV  BH,7      ;ਡ 頥 ப
   INT  10H       ; ᤢ

   H ஢.

   ⨪ ᤢ ᥣ  ࠭   ਢ쭠 , -
  ࠢ ࠭  ப    த  
࠭楩 ᫥饩 ப.  ᥣ ᮤন  
160      (80 ᨬ  ப * 2   ᨬ-
) ਢ  ᤢ ࠭    ப. ᫨  
᢮  ᮡ⢥  楤 ᤢ ࠭,  ᯮ  אַ
⮡ࠦ  ,    뢠   ७樨, 
  梥⭮ ᯫ  PCjr.   ஡ 㦤  
[4.3.1]. 筮 襭 ⮩ ஡ ⮨  ஢થ -
  ,     ࠧ    .   
ਤ ᯥਬ஢, ⮡ । ᪮쪮  
    横.
   㣮  襭 ⮩ ஡ ⮨  몫祭  ࠭  
६ 樨 ᤢ,  ⥬   ⠭.  "몫祭
࠭" ࠧ㬥,  뢮 ᮤঠ    -
 饭,  ᠬ   ⮬   .   
ᯮ 㭪樥 ᤢ BIOS, ᯮ짮 .   
 祭 ⭮   ,    -⠪    ⠪ ,  㦥
㯮 ७.
     몫祭  ࠭  梥⭮ ᪮  ᯫ  
  3   ᮬ  3D8H.       1
⠫쭮 砥 ࠭ ⭮.      ᮮ⢥-
 ॣ 롮 ० 梥⭮ ᪮ .  
 ॣ ⮫쪮  , ⮬ ணࠬ  
  ,   祭   3   -
⠭  .   ⮣  室 । ⠪  -
 ⠭  ⠫ ⮢ (᫥  [4.1.2]).
  PCjr    ᯮ  ॣ  ࠢ  ०  1
ᨢ  ᯫ.  [4.1.1]  ᭥    
ணࠬ஢  ॣ.
   4.5.2  ⥪⮢ ࠭ ਧ⠫쭮.

   ਧ⠫ ᤢ  ॡ  ᯥ樠 ணࠬ
ࠡ⪨ ⥪, ⠪   ⥪⮢  ।.   樮
⥬     ⮣ ᯥ樠 ।.   ⮩ 稭
    ᫮ 祬 ⨪ ᤢ -   -
⢥.  ᬮਬ 砩,   , ⮡ ࠭ ᤢ-
     5 権.   ⮬  5 ⮫殢  祧,
 ⠫쭮 ⥪ ᤢ ,   ᠬ ࠢ 5 ⮫殢
   饭.  ᪮  ।⠢   ᥡ
  ப,  ᫨   ᨬ  ᤢ  10
⮢  ,  㬬 䥪 㤥   ⮬,  ᠬ
 5 ᨬ  ப    ।   ᫥ 5
権 ।饩 ப.   ࠧ,  ࠭ 㤥 ᤢ-
   5 権,  ।  5 㦭 ⮫殢  ࠢ
  ࠭.     ᫥ ⠥ -    ࠢ  5
⮫殢.         楤 ⨪쭮
ᤢ  [4.5.1],   믮    ࠭
   頥  㪠    ᫨  㪠  ᤢ  0
ப. 㭮 4-6   ⮤.

   H ஢.

    ⮬ ਬ ⢫ ᤢ  5 権 .  
   ᤢ ࠢ     㣮 祭 権
ᤢ.  ᯮ짮 אַ ⮡ࠦ    ⮤
 ࠪ᪨ ⠫ ᤢ ࠭.

;---ᤢ    10 ⮢
      MOV  AX,0B000H      ;㪠뢠   ஬
      MOV  ES,AX          ;ᯫ
      MOV  DS,AX          ;
      MOV  SI,10          ;ᤢ  SI ...
      MOV  DI,0           ;...  DI
      MOV  CX,1995        ;ᤢ  ஬ ᫥ 5 
REP   MOVSW               ;⢫塞 ᤢ
;---頥 ࠢ ࠩ
      MOV  AH,6           ;㭪 ⨪쭮 ᤢ
      MOV  AL,0           ;ᤢ  0 ப  
      MOV  CH,0           ;ப  孥 㣫
      MOV  CL,75          ;⮫  孥 㣫
      MOV  DH,24          ;ப ࠢ  㣫
      MOV  DL,79          ;⮫ ࠢ  㣫
      MOV  BH,7           ;ਡ  頥 権
      INT  10H            ;⨬ 
   4.5.3 ४祭  ⥪⮢묨 ࠭栬.

   ᪮  ⥬,  ஬ ஬ ᯫ, 
筮     ᪮쪨 ஢,   ६
  ᪮஢  ᪮쪮  ࠭,   
  뢥  㦭 .   ⮣, ⮡  ।-
     ,    뫠    㣮
  .  ᫮ 㯭 ࠭     
ᨬ  ⥬   ०  ᯫ.  ਢ 
᢮:

                       ᫮ ࠭     H砫 

     0     䠢⭮஢         8               B800
     1     䠢⭮஢         8               B800
     2     䠢⭮஢         8               B800
     3     䠢⭮஢         8               B800
     4     ᪨               1               B800
     5     ᪨               1               B800
     6     ᪨               1               B800
     7     䠢⭮஢         1/8             B800
     8     ᪨            ६         B800
     9     ᪨            ६         B800
     A     ᪨            ६         B800
     D     ᪨              2/4/8            A000
     E     ᪨              1/2/4            A000
     F     ᪨               1/2             A000
    10     ᪨               1/2             A000

  8-A - ᪨ ० PCjr; ᫮ ࠭    -
  ᨬ  ⮣, ᪮쪮 ⨢  ⢥
 .  ࠭ ࠢ 2K  4K  䠢⭮-
஢ ०, 32K -      梥⮢  ᮪ ࠧ襭
 16 梥⮢  㬥७ ࠧ襭  16K -   ⠫
०.   D-10 ন EGA.  K⢮ ࠭ -
  ᨬ  ⠭ .   F  10 -
    128K .  7 ࠧ蠥  ࠭-
  ஬   8 ࠭  EGA.
   ஬       ⥫  -
.     稭,    ᭮ 
  뫮   ᯮ짮   ᯫ.    ⮬  砥
࠭筠  ࣠  ⢫     ண 
ᥣ  ᮤন     ஬ ( ண
B000:0000).      ᭮      ᬠਢ 
"ᥢ࠭".      饥 ࠧ  ࠭,
 १ 㤥  ⠪  ,  ᫨  뫪  
㤥 ᯮ짮 ᥬ 楤.
     ᯮ짮 ࠭    ⮬, ⮡ -
樨 뢮  ࠭ ࠢ﫨   㦭 ࠭. ணࠬ
  易 뢮    ࠭,     -
 ࠦ  ࠭.  H ᠬ ,   -
⥫쭮  ஢  ࠭ " 㫨ᠬ",  ⥬  ⠫쭮
뢮 㦥 ⮢  ࠦ.    ⮤ ᮡ ,
 室 ஢ ᫮ 뢮  ᨪ,   -
ண 뢮 祭  .  BIOS  ࠭  ᢮  
 ६, 㪠뢠,   ࠭ 뢮 
 .   祭 ⮩ ६  0  7.  
ᯮ   0040:0062.
   ᮪ ஢.

   ᨪ  ᯮ   SCREEN  ⠭ ࠭,  
 㤥  뢮 (⨢ ࠭)  뢮 ࠭
(  ࠭).  ࠭ 㬥  0  3  ⥪⮢ 
80 ᨬ  ப   0  7  40-ᨬ. ⨩ -
       SCREEN  ⠭   ⨢   ࠭.
SCREEN,,2 ਢ  ⮬,    PRINT  ࠡ
 ࠭楩 2.  ⢥ ࠬ ⠭  ࠭-
.  SCREEN,,,1 ਢ    ⮬,    ࠭ 㤥 뢮
࠭ 1.  K  ࠭  㪠뢠,   ⮬-
᪨ ਭ,   ᮢ  ⨢.
    뤥    ࠭  PCjr ᯮ -
 CLEAR.    ⠭ 饥 ⢮  ,
⢮   ࠭, ஥   ࠢ 16384 .
⮡         ࠭   ࠧ஬   16K,   
CLEAR,,,32768.   ⥪⮢ ࠭ ॡ 4096 ⮢
.     ᫮,  ⠪ ࠧ 뫠  ⢥  ,
  SCREEN   ࠡ   ࠭栬 ࠡ -
ᠭ ࠧ.  쪮 PCjr   ࠬ  
SCREEN,  ࠥ ࠭ (.. ॢ   梥 䮭).
⠫  ᠭ  㪮⢥  ᨪ.    PCOPY  ⠪
㭨  PCjr.     ࠦ    ࠭ 
.  Hਬ, PCOPY 2,1 楫  ࠭ 2  -
 1.
    ஬       ࠭ ᯫ,
    ᯮᮡ ந  ᢮  த  "ᥢ࠭".
Hਢ 楤    設  몥 ᬠਢ 
   ᯫ ࠭.   맮 ⮩  楤  
 ᮤন   ᮤন ⮩  -
.     १      ᯫ ࠭.   (
ਫ       ணࠬ   設
몥  ணࠬ  ᨪ.)
     ⢥   ࠧ஬ 4000   ᥢ-
࠭,  , ᮤঠ饩  ணࠬ  設 몥. 
ਬ    稭   ᥣ  &H2000,   楤
饭   &H2200.       ᮤন 
9-  10-  設        .
,    &H2000  ।⠢   &H00, &H20  
DATA.   ᫥⢨ ⮣,  訥  ᥣ ࠧ 
 祩 . ᫨   ࠧ , ᪠ 
 1234:0000,     9  10  &H34, &H12.
       ॡ   ᥢ୨    类
㭤, ⠢襩   㣨  ணࠬ.     ப 230-260 
⨣    뫪 ᨬ ஡ (ASCII 32)   
 (32 㦨 "ଠ" ⮬  ਡ⮢).  ணࠬ 
⢫  뢮  ࠭  ࠧ,  ⥬  ७
ᮤন  ᥢ࠭.   H ᫨ ,    -
⢫ 뢮 אַ  ᥢ࠭, ᯮ אַ ⮡-
  .
100 '''設 
110 DATA &H1E, &H06, &HB8, &H00, &HB0, &H8E, &HC0
120 DATA &HB8, (3&H00, &H20), &H8E, &HD8, &HBF, &H00
130 DATA &H00, &HBE, &H00, &H00, &HFC, &HB9, &HD0
140 DATA &H07, &H26, &H8B, &H1D, &HAD, &HAB, &H89
150 DATA &H5D, &HFE, &HE2, &HF6, &H07, &H1F, &HCB
160 '''頥   
170 DEF SEG = &H2200   '㪠뢠  楤
180 FOR N = 0 TO 34    '稭  ࢮ 
190 READ Q             '⠥  楤
200 POKE N,Q           '襬   
210 NEXT               '
220 '''⨬ ᢥ࠭
230 DEF SEG = &H2000   ' 砫 ᥢ࠭
240 FOR N = 0 TO 3999  '  ᨬ  ਡ
250 POKE N,32          '頥  32
260 NEXT               '  ⨬  

500 '''襬 אַ  ᥢ࠭
510 DEF SEG = &H2000   '㪠뢠   
520 S$ = "PSEUDOPAGE"  '뢮 ᫮ । ࠭
530 M = LEN(S$)        '砥  ப
540 FOR N = 1 TO M     '  ᨬ ப
550 POKE N*2+2000, ASC(MID$(S$,N,1))   '頥   
560 NEXT               '

600 '''⥯ ᯮ㥬 楤
610 PRINT "SCRREN 1"   '⠥ ᮮ襭  ࠭
620 DEF SEG = &H2200   '㪠뢠  楤
630 PSEUDOPAGE = 0     '稭  砫 楤
640 CALL PSEUDOPAGE    ' ࠭
650 CALL PSEUDOPAGE    '塞 
660 ...

   । ஢.

   㭪 5 뢠 10H 롨ࠥ ⥪ ࠭ ᯫ 
뢮. H    ࠭  AL:

;---⠭  ࠭
   MOV  AH,5       ; 㭪樨
   MOV  AL,2       ; ࠭ (稭  0)
   INT  10H        ;⠭ ࠭

  㭪    ⠭  ࠭,   㤥
  뢮.    뢠 BIOS,  뢮   ࠭
(㭪樨 뢠 10H), ॡ ⮡  ࠭  㪠
  ⢥ 室 ࠬ    ॣ஢.    
뢠 뢮  ࠭ MS  DOS   ⥪  -
.    ࠧ,  "㫨" 権    室
짮 뢠 10H.
    祭 ଠ樨    ⥪饩  ࠭   믮
㭪  F  뢠 10H,   頥    ᯫ.
H ࠭  ⮬ 頥  BH.
   H ஢.

   ᯫ ࠭ 롨     窨 -
,  稭  ன  ਭ .     窠
 ⠭ ॣࠬ 12 (訩 )  13 (訩
)  奬 6845,  뢠 ॣࠬ  ⮢
. 祭 ᮢ ࠧ ࠭  , 稭饣-
  B800 ⠪:

                       40 ᨬ            80 ᨬ

   ࠭ 0             0000H                  0000H
            1             0400H                  0800H
            2             0800H                  1000H
            3             0C00H                  1800H
            4             1000H
            5             1400H
            6             1800H
            7             1C00H

  [4.1.1]    ணࠬ஢  ॣ  奬
6845,   [4.5.4] ᮤন  ਬ  ணࠬ஢ ⮢
.     ᫥ ਬ   ᢮ BX    
祭 襯ਢ  ⠡.   K筮,  ⮬ ⠭-
 ⮫쪮 뢮 ࠭.    । -
   ஢   ᯮ짮   祭 ⠡
  ⢥  ᬥ饭    אַ ⮡ࠦ   -
.
   ᪮ אַ ⮡ࠦ     ࠡ⠥ 祭 ,
   ࠭    ᮧ  ஬ -
.  뤥  ࠧ஬  4000  ⮢  ࠭ ࠭.
 ஬    ।⢥   -
 , ᮤন ⮣      
⮫쪮 ,     ࠧ.  楤-
  ᮤন   ⥩.

;--- ᥣ 
PPAGE  DW   2000  DUP(720H)  ;塞  ஡

;---뫪  ᥢ࠭楩  ஬
            MOV  AX,0B000H   ;㪠뢠  
            MOV  ES,AX       ;
            MOV  AX,SEG PPAGE  ;㪠뢠  ᥢ࠭
            MOV  DS,AX       ;
REPEAT:     MOV  DI,0        ;DI  砫 
            MOV  SI,OFFSET PPAGE  ;SI  砫 ᥢ࠭
            CLD              ;ࠢ ।
            MOV  CX,2000     ;㤥 뫠 2000 ᫮
NEXT_WORD:  MOV  BX,ES:[DI]  ;६ ᫮    BX
            LODSW            ;᫮  ᥢ࠭  AX
            STOSW            ;᫮  AX  
            MOV  DS:[DI]-2,BX  ;᫮  BX  ᥢ࠭
            LOOP NEXT_WORD   ;

   PCjr ࠭ ॣ ࠭     ᮬ 3DFH. 祭
⮢ ⮣ ॣ ᫥饥:

    2-0    ࠭ 뢮 ( 0  7)
        5-3    ࠭  ( 0  7)  뢮
                ᥣ B800H
        7-6   = 00   ⥪⮢ ०
              = 01  ᪨ ०  16K
              = 11  ᪨ ०  32K
   4.5.4   ࠭栬 ⥪.

   ᪮ ࠭ ⥪ ਫ      -
,  让 ⥪⮢ ᨢ  楫   ⮩
.   ⮬ 砥 ⥪ ᤢ     ࠭ 
। ॠ쭮  .   ⮣ ࠭ 稭 -
뢠  ᮤন , 稭  ࠧ 祪  ⥬  ᠬ
ᮧ  ᤢ.   ⮤  뢠  ᤢ-
.
     ᤢ  ⨣       ⮢
 ᯫ,    ᫮, 㪠뢠騬  ᨬ 
,   㤥 뢮   孥 㣫 -
.   80   ⮬    "ᤢ"  ࠭  
ப ,  ⠭ 80 -   ப .  ०  40
ᨬ  ப   80 ਡ   40.  H
. 4-7 ਢ ࠬ ⭮ ᤢ.
   ⬥⨬,  ॣ ⮢   ⠥   -
⮢, ⮬       -㣮, 祬
 אַ ⮡ࠦ  .  ⠪ ,  ᬮ
 稥 ࠧ뢮      ࠭栬  ࠭ (96 ⮢
 80-ᨬ묨 ࠭栬  48 ⮢   40-ᨬ묨
࠭栬) 奬 6845 ய᪠    ᤢ -
뢭 ந室   ࠭  ᫥.   ᤢ
ந室 ⮫쪮 ,      室
⠢ 楤 প, ⮡ 짮⥫   
㢨 ᪮쪮 ᤢ ࠭.
   BIOS ࠭  ⥪饥  祭  ॣ  ⮢   
६   ᢮  .    塠⭠  ६
ᯮ   0040:004EH.

   H ஢.

   ⮢  ᮤন   ॣ 12 (訩 )  13
(訩 ) 奬 6845.  [4.1.1]  ࠡ ⮩
奬.  ०  祬  㥬    ࠢ   
ᮬ  3D5H,  室 ᫠  㥬  ॣ  
 3D4H.   ਬ  ࠭ ᤢ    -
. ६ START_ADDRESS ᮤন  ࢮ ᨬ ⥪-
饩 孥 ப ࠭.

   MOV  BX,START_ADDRESS  ;稭  砫 
   ADD  BX,80             ;ᤢ  1 ப (80 ᨬ)
   MOV  DX,3D4H           ;뢮   ॣ
   MOV  AL,12             ;㥬 ॣ 12
   OUT  DX,AL             ;뫠 
   INC  DX                ;⥯ 뢮   ॣ
   MOV  AL,BH             ;襥 ᫮  AL
   OUT  DX,AL             ;뫠   ॣ 12
   DEC  DX                ;⭮  ᭮ ॣ
   MOV  AL,13             ;㥬 ॣ 13
   OUT  DX,AL             ;뫠 
   INC  DX                ;᭮  ॣ
   MOV  AL,BL             ;襥 ᫮  AL
   OUT  DX,AL             ;뫠  ॣ 13




                    5. ᪮ ⥫.

              1. ࠢ । ᪠.

     ᪨,  , ⠪  ⪨, ࣠ 
ࠧ.  孮 ᪠  ࠧ   業᪨ -
,  뢠 ஦,  ஦  ࠤ쭮  ᥪ-
.  Hਬ, ⠭⭠  ᪥  ஬ 5 1/4  
40  ஦    ⥬ MS DOS 2.0  ஦ ࠧ    9
ᥪ஢ (15  ᥪ஢    ᪥    1.2   17 
䨪஢  ᪥).   ᥪ 512 ,  512   *  9
ᥪ஢ * 40 ஦ *  2  ஭    ⮣  ᪥
360K.    ⨯ ᪮ ᯮ ࠧ ᥪ 512     MS
DOS.
    ।  ⠪   ᥪ஢, ஥ -
室, ⮡  .  쪮 ᪮쪮 ᥪ஢  譥
 ᪥  १ࢨ஢    ᯥ樠  㦤. ⠫
㯭   ᭮ ࠢ " 襫 - ࢮ  㦠".
 砥,     ᪠ 묨 ᥪ -
   ࠢ  業 ᪠.   㭨⮦
䠩 ᥪ ᢮   ६  ᢮  -
  ࠧᠭ묨  , ࠧ  䠩   
    ⥭  .
   ஢ ᪨    ᯥ樠 ࠪ-
.          ࠫ ⨭, 
     ,  ⮡    ஭.
 ஦, ᯮ   ﭨ  業, 
뢠  樫஬.   ᪮    ᪮ 
⠭,   ⨣  ६饭 ᫨  
஦   樫,  ०  祬  室   ᫥饬.
㯯 樫஢  ⭮  ࠧ 樮 -
.  ணࠬ DOS FDISK   ࠧ  䨪஢  
᪮쪮 ࠧ ( ) ࠧ ࠧ.   ⮩ 稭
ࠬ 䨪஢ ᪠  ᨫ쭮 ⫨.
   ᪮ ᥪ ।  ⭮  ଠ樥, 
뢠 ⨫ ଠ⨧樨 ᪠.  ଠ 砥 -
䨪樮   ᥪ.   BIOS 㬥 ᥪ 1-8,
1-9   1-15,  ᨬ   ᪠.  ஦  ન-
,  ⮣    ।  堭᪨   ᬥ饭
 ⥭/  譥  ᪠.  ஦ 㬥
 0  39  ᪥ ஬ 5 1/4 ,   ᪮ 襩
    .  ᪮ 㭪樨 BIOS  
। ᥪ, 㪠뢠  ஦  ᥪ.  
㭪樨 DOS ᬠਢ  ᥪ ᪠,   楯, -
 㬥 , 稭   0, ⮬  ᥪ 
᢮ ᪨  ᥪ.
    ᪥  ᥪ (஦ 0, ᥪ 1) ᮤন 
砫쭮 㧪,   让 ணࠬ, -
饩    ᪮ ⥫ ⠫  
MS DOS. ⥬     ⠡  ࠧ饭 䠩, 
ᮤঠ ଠ  । ᪮ ࠭⢠  (-
  ࠭  ᮮࠦ ᭮).  ⥬  -
 ⠫,  ᮤন ᯨ᮪ 䠩  뫮   -
⠫,  ⠪ 㪠뢠        ᪠  稭.
H,      訥 ணࠬ  DOS  IBMBIO.COM  
IBMDOS.COM,  뢠    ᯥ稢 -
  ﬨ  室묨  宦  㧪  䠩
COMMAND.COM,  ᮬ    ᭮  -
樮 ⥬.
   ஢  ᪨      㧪,  
ᮤন ⠡ ࠧ,   ࠧ   -
쪨 樮묨 ⥬.   ࠧ ᮤন  -
ଠ  ⮬,   ᪥  稭 ࠧ DOS,  ⠪ -
 ᥪ  ࠧ ᮤন  砫쭮 㧪.   
⠫쭮 ࠧ ࣠ ⠪ ,   ᪥.
   5.1.1 ⥭ ⠡ ࠧ饭 䠩.

    ᯮ ⠡  ࠧ饭 䠩 (FAT)  ⢥
᪮  ࠭⢠ 䠩  ࠭ ଠ樨   ᢮
ᥪ.  ᮮࠦ ᭮   ᪠ ࠭ 
  FAT.    ࠭ ᫥⥫쭮,   ᥪ   ᠬ묨
訬 㯭묨 ᪨  ࠬ,  稭  ஭ 0,
஦  0,  ᥪ  2 (ᥪ 1 ⠪     砫쭮
㧪). ᫮ ᥪ஢,  FAT । ࠧ஬ 
⨯  ᪠.  ⬥⨬,   MS DOS 3.0 ࠧ  FAT  
 16 ⮢  䨪஢ ᪠.   㤥 ᬠ-
 ⮫쪮 12- ;  祭 ଠ樨  16--
 , ᬮ 孨᪮ 㪮⢮  MS DOS.
     ࠧ饭 䠩 ࠭ ଠ   
ᥪ஢  ᪥. K  㯯 ⠭ ᥪ஢ ࠧ-
஬  512  (ᨬ  ⨯ ᪠ MS DOS ᥣ ࠡ⠥  
512-묨  ᥪࠬ).   㯯  ᥪ஢  ᯮ, ⮡
㬥  ࠧ FAT.   訥 , ᯮ㥬  
䨪஢ ᪥ ᭮  室 ᪮ ࠭⢮ 
  쪨 䠩 (⨫ ࠧ஬ 500   4K -
 ࠭⢠).   ࠧ஢ ஢  ࠧ஢
FAT, ᯮ㥬  IBM PC:

    ᪠         ஢       FAT

  ᪥ 160K                1                  1
  ᪥ 180K                1                  1
  ᪥ 320K                2                  2
  ᪥ 360K                2                  2
  ᪥ 1.2M                1                  7
   10M               8                  8
   20M               4                 40

     襬  ࠧ  ᭮  室  ᪮
࠭⢮,   訥 ᪨   ࠧ ,
  ⠡  ࠧ饭 䠩 ⠭ ᫨誮  让.   
ࠡ  ᪠ DOS 㦠  FAT  ,  
࠭  ⠬, ⮬   讬  ࠧ FAT  室-
   ⨢ .  ᪮ 設⢮ AT 
筮  ,        ਥ  訥
FAT.  ⮬  20M   訥 ࠧ ஢,
祬  10M,  ᯥ稢    ᪮  ࠭⢠. 
᪥   1.2M ࠭  ࠧ஬  1 ᥪ, ⠪ 
 ᭮ 祭 ⮨  ࠭  ⪮ ᪠, 
᫥⥫쭮 ⭮ 祭 .
   K   ⠡ ࠧ饭 䠩 ᮮ⢥ -
 樨   ᪥. 筮 䠩  ᪮-
 ஢    ⠫ 䠩 ᮤন  ⮢
,  ஬  ᠭ  砫  䠩.  ᬮॢ 
FAT,  ᮮ⢥ ࢮ , DOS 室  -
,  ஬ ࠭ ᫥   ⮣ 䠩. ⮬ -
  ᮮ⢥  ᢮   FAT,     ᢮  ।
ᮤন   ᫥饣      楯窥.   ᫥
,  ⮣ 䠩 FAT ᮤন 祭  FF8H  FFFH.
Hᯮ㥬 ( ᢮)  ࠬ 뢠 -
  000,  娬 ᥪࠬ - FF7H.  H, 祭  FF0H 
FF7H ਯ뢠 १ࢭ ࠬ.
   H  ᮤন 3 ⭠  ,  ࠭-
   ॡ 1 1/2 .   㬥襭 ࠧ஢  FAT
᫠   ᥤ  ஢ ࠭   ᫥⥫-
  ⠡. MS DOS ⮬᪨ ந  室-
 ᫥.
      FAT    ᯮ   ஢ ஢.
  ᮤন , ।騩 ⨯ ᪠ (. [1.1.5]), 
᫥騥 2   ࠢ  FFH.   ᪮  樨 ⠡
,    㬥, 稭  2, 祬  2 
3   ன  ⠡.
   MS DOS 3.0   ᮧ  FAT    ﬨ ࠧ஬ 16 .
   室  䨪஢ ᪮ ࠧ஬  
10M,   , 祬 4086 ஢.  H . 5-1 -
   FAT  ࠬ  ᪥.
   祭 ।  稭   אַ   ⠡
ࠧ饭 䠩. MS DOS    䠩  
ᯥ稢  楤, 騥 ⠡  । 
᢮ ࠭⢠  ᪥.     ᯥ樠-
 楫, ⠪  ⠭ 㤠 䠩   -
 ࠩ 筮  ன⢠, 室 אַ   FAT.
 אַ 㯥  FAT  ᮡ ᫥騥 ࠢ.

 宦 ᫥饣  䠩:

1.     1.5.
2. ⠩ 2   祭 ᬥ饭 (㣫 ).
3.  ᫨   ,  쬨 訥 12 , 
쬨 訥 12 .

 ८ࠧ    ᪨  ᥪ:

1.  2   .
2.  १  ᫮ ᥪ஢  .

   ᮪ ஢.

     ਬ ⠥ FAT   । 祭, ࠭-
饥    6.   [5.4.2]  砫 ,
騩  ᥪ  FAT.  ⮬    12-⭮  ᫮,
।⠢     ⭠  (4    -
), 頥   ப.  ਬ  ᥫ, 
  , ꥤ    ⢥  १  ࠢ
     .  K ᨪ ८ࠧ ᨬ   16-
,   頥 ⮫쪮    , ᫨ ࢠ 뫠 -
,  ⮬ 㤠    ⠭, ⮡ 
⮤ ࠡ⠫ ࠢ쭮.
100 '''⥭ ᥪ஢ FAT
110 DEFINT A-Z
120 DATA &H55, &H8B, &HEC, &H1E, &H8B, &H76, &H0C, &H8B
130 DATA &H04, &H8B, &H76, &H0A, &H8B, &H14, &H8B, &H76
140 DATA &H08, &H8B, &H0C, &H8B, &H76, &H06, &H8A, &H1C
150 DATA &H8E, &HD8, &H8B, &HC3, &HBB, &H00, &H00, &HCD
160 DATA &H25, &H59, &H1F, &H5D, &HCA, &H08, &H00
170 DEF SEG = &H1000     '頥 設   ⮣ 
180 FOR N = 0 TO 38      '⠥ 39 ⮢ 
190 READ Q: POKE N,Q     '७ᨬ   
200 NEXT                 '
210 READSECTOR = 0       '稭 楤  1- 
220 BUFFER = &H2000      '  ਥ 
230 LOGICALNUMBER = 1    '砫 ᥪ FAT
240 NUMBERSECTORS = 2    '2 ᥪ  FAT
250 DRIVE = 0            '⠥ ⥫ A
260 CALL READSECTOR(BUFFER,LOGICALNUMBER,NUMBERSECTORS,DRIVE)
270 '''।塞  ᫥饣  䠩
280 DEF SEG = &H2000     ',  ࠭ FAT
290 CLUSTERNUMBER! = 6   '  6
300 C! = CLUSTERNUMBER!  ' 
310 C! = INT (C!*1.5)    '㬭  1.5  㣫塞
320 X = PEEK(C!)         '⠥ 2   ⮩ 樨
330 Y = PEEK(C!+1)       '
340 X$ = HEX$(X): Y$ = HEX$(Y)  'ॢ  16- ப
350 IF LEN(X$) = 1 THEN X$ = "0"+X$  '  2-ᨬ묨
360 IF LEN(Y$) = 1 THEN Y$ = "0"+Y$  '
370 H$ = Y$ + X$         'ꥤ塞 ᫠   ப
380 '''஢塞   ⭮
390 IF CLUSTERNUMBER! MOD 2 <> 0 THEN 420  '室, ᫨ 
400 NEXTCLUSTER$ = RIGHT$(H$,3)  '᫨ ,  ࠢ 3 
410 GOTO 430
420 NEXTCLUSYER$ = LEFT$(H$,3)   '᫨ ,  
430 PRINT NEXTCLUSTER$   '⠥ १

   । ஢.

   㭪  DOS 1CH  ଠ  ⠡ ࠧ饭  䠩,
   ᠬ FAT.      ⥫   DL,  0 =
⥫   㬮砭, 1 = A,  ..    DX ᮤন
᫮ ஢  FAT,  CX - ᫮  ⮢  ᥪ. DS:BX 㪠-
뢠   , ᮤঠ騩   FAT, ..   , 㪠-
騩 ⨯ ᪠;   ᫥  [1.1.5].

   H ஢.

   H     FAT  몥 ᥬ.  ⬥-
⨬,  㬭     1.5 ந ஢-
  ᫠, ᤢ  ࠢ  1      
᫮   ਣ.   ⮤ ⮬᪨ 
१ . K, 뢠騩 ᥪ FAT  , 㦤-
  [5.4.2].
;--- ᥣ 
BUFFER    DB   1024  DUP(0)  ;⢮   2 ᥪ஢

;---⠥ FAT  
          LEA  BX,BUFFER      ;㪠뢠   
          MOV  DX,1           ;᪨  ᥪ
          MOV  CX,2           ;2 ᥪ
          MOV  AL,0           ;⥫ A
          INT  25H            ;⠥ ᥪ
          POP  CX             ;⠭ ⥪
;---砥  
          MOV  AX,3           ;   AX
          MOV  CX,AX          ; 
          MOV  DX,AX          ;  
          SHR  DX,1           ;    2
          ADD  CX,DX          ;᪫뢠  ᮡ
          ADD  BX,CX          ;塞  ᬥ饭
          MOV  DX,[BX]        ;砥 2   ⮣ 
          TEST AX,1           ;  ?
          JNZ  ODD_CLUSTER    ;室, ᫨ 
          AND  DX,0000111111111111B    ;砥 
          JMP  SHORT CONTINUE   ;室 १ ࠡ ⭮
ODD_CLUSTER:   MOV  CL,4      ;⮢  ᤢ ࠢ
          SHR  DX,CL          ;ᤢ  訥 12 ⮢
CONTINUE:
   5.1.2 । 㯭 ᪮ ࠭⢠.

     ᫥饬 ࠧ ﭥ  ⠭ -
    訡  - 墠⪨   ᪥,     襣
⢠, 祬 ।ᬮ⥫쭮. ணࠬ  ஫-
  㯭 ᪮ ࠭⢮  ᮮ  짮⥫  
墠⪥ . ᫨      墠⠥,    짮⥫ 
  ணࠬ  ࠭ ஡   ଠ樨.

   ᮪ ஢.

     ᥬୠ  ணࠬ 頥   ६
CLUSTERS ᫮ ᢮  ஢   㪠 ᪥. H -
   ⥫  DRIVENUM,  1 = A, 2 = B  ..   
ਫ    ᥬ ணࠬ 
 ணࠬ  ᨪ.

 10 DEFINT A-Z         'ᯮ㥬 楫 ६
 20 DRIVENUM = 1       ' 頥  ⥫
 30 CLUSTERS = 0       '樠㥬 ६
 40 DATA &H55, &H8B, &HEC, &H8B, &H76, &H06, &H8B
 50 DATA &H14, &HB4, &H36, &HCD, &H21, &H8B, &H7E
 60 DATA &H08, &H89, &H1D, &H5D, &HCA, &H04, &H00
 70 DEF SEG = &H1000   '頥 ணࠬ
 80 FOR N = 0 TO 20    '६  
 90 READ Q: POKE N,Q   '⠥   頥  
100 NEXT               '
110 FREESPACE = 0      '㪠⥫  砫 楤
120 CALL FREESPACE(CLUSTERS,DRIVENUM)  '맮 楤
130 PRINT "CLUSTERS: ";CLUSTERS   ' ᫠ ஢

   । ஢.

   㭪 36H 뢠 21H ᮮ頥 ᪮쪮  ᢮
࠭⢠  ᪥.  ⢥  室 ॣ DL, 
 ᮤঠ  ⥫.  H⥫  㬮砭 -
砥 0, ⥫ A - 1    ..      BX ᮤন
᫮ 㯭 ஢, AX - ᫮ ᥪ஢  ,  CX -
⢮   ᥪ.  H讥 ࠦ  㬭 
  १.    ᫥饬 ਬ  ஢,    
஭  ᪥   ⠫     襩  2K ᪮
࠭⢠:

   MOV  AH,36H          ; 㭪樨
   MOV  DL,1            ;⥫ A
   INT  21H             ;砥 ଠ
   CMP  BX,2            ;  2 ᢮ ?
   JL   RUNNING_OUT     ;᫨ ,  ᮮ頥  ⮬
   5.1.3 祭/⠭ ࠧ 䠩.

   ணࠬ      ஢ ࠧ 䠩    ࠧ
稭.      稭  ⮨  । ᫠
ᥩ,  ᮤঠ   䠩.  㣠 -  ।  樨
 䠩,  ⥬ ⮡ 䠩  㪠⥫  ⠭ ୮
   䠩  ,   .
   K筮,  ࠧ 䠩 ⠭ ⮬᪨  㭪樥
DOS.   ணࠬ  㦤  १ࢨ஢ ᪮
࠭⢠   쭥襣 ᯮ짮.   ⮬ 砥  
 䠩  ०  אַ  㯠      ⠪ 
, ⮡ 䠩   .    "䨪⨢-
"  ॠ쭮 ⭮騬  䠩   ⥬ 묨,
  砩    ᪮ ᥪ,  ⢥  
䠩  ⮩ 樨.

   ᮪ ஢.

    ᨪ 㭪 LOF  (  䠩)  頥 筮 ᫮
⮢,  ⢥ 䠩 (।०, ,   -
ᨨ ᨪ - 1. -  ᫮  128- , ᯮ-
㥬 䠩).       뫠   
 ,        䠩.   ଠ X = LOF(1). 
᫥饬  ਬ । ᪮쪮 64- ᥩ ᮤ-
  䠩, ⮬  #3:

100 OPEN "FILENAME" AS #3   '뢠 䠩
110 RECORDLEN = 64          '।塞  
120 NUMBREC = LOF(3)/RECORDLEN  '塞 ᫮ ᥩ

   । ஢.

   FCB 㭪 23H 뢠 21H ᮮ頥 ᫮ ᥩ  䠩.
᫨  ਯ 䠩    1 ,   ࠧ  㤥
饭  .  DS:DX    㪠뢠  ࠢ騩 
⮣ 䠩. ⥬ 맮 㭪.  ᫨ 䠩  , 
 AL 頥 FF.   ⨢ 砥  AL 頥 0,  
᫮ ᥩ 頥     אַ 㯠 FCB
( 33-36).  ࠢ쭮 ࠡ    FCB 
 ⠭ ᫥   䠩,  । 맮 㭪樨;
 塠⭮  ᯮ  ᬥ饭 14  FCB.  ᫨ ࠧ-
 䠩 筮      ,   ᮮ頥 ᫮
ᥩ  㣫  .   ਬ,  ஬  ᯮ
  ࠢ 1:

;---। ࠧ 䠩
   LEA  DX,FCB        ;DS:DX 㪠뢠  FCB
   MOV  BX,DX         ;㥬 㪠⥫  BX
   MOV  CX,1          ;ࠧ   CX
   MOV  [BX]+14,CX    ;襬   ࠧ  FCB
   MOV  AH,23H        ;㭪 ᮮ ࠧ 䠩
   INT  21H           ;맮 㭪樨
   MOV  AX,[BX]+33    ;砥   ࠧ 䠩
   MOV  CX,[BX]+35    ;砥   ࠧ 䠩

    ⠪ ⠭    䠩, ᯮ ࠢ騥
 䠩.   ⮣  ᯮ짮 㭪    
 㯮,   㦤   [5.4.5].   ⮩ 㭪樨
  砩,  ᫮ ᠭ ᥩ ⠭-
 ࠢ ,    䠩  ⠭ ࠢ 
ᥩ, 㪠    אַ 㯠.
   ⮤,  ᯮ騩 ਯ 䠩 (file handle)    
㭪樨,  ।⢥  ᮮ頫   䠩, 
   ᫨ ࠧ, । 㪠⥫ 䠩
 砫   䠩.  ⨨ 䠩 㪠⥫ 䠩 -
᪨  ⠭    䠩.  ⥫ 䠩
६頥 㭪樥  42H  뢠  21H.  H   AL
 ᫮ 2, ࠫ饥 㪠⥫   䠩.   BX -
  㪠  䠩,   CX:DX  ᮤন ᬥ饭  
䠩    樨,      ⠭  㪠⥫,
⮬  0    ॣ.  ⥬ 맮 㭪.
  DX:AX 㤥 ᮤঠ   㪠⥫, ⭮-
⥫쭮   ।饩  樨  -  ..  㤥 ᮤঠ 
䠩 (DX ᮤন 訩 ).    訡 㤥
⠭ 䫠 ७,   AX  㤥 饭 1, ᫨ -
  㭪樨  6, ᫨ ࠢ  䠩. H 
⥬ ᭮  㪠⥫  砫 䠩, ᫨  室-
.   0  AL, CX  DX  맮 㭪 ᭮.  -
:

;---뢠 䠩
   LEA  DX,FILE_PATH     ;DS:DX 㪠뢠   䠩
   MOV  AL,0             ;뢠  ⥭
   MOV  AH,3DH           ;㭪  䠩
   INT  21H              ;뢠 
   JC   OPEN_ERROR       ;஢ઠ  訡
   MOV  HANDLE,AX        ;  䠩
;---।塞  䠩
   MOV  AH,42H           ;㭪 ६饭 㪠⥫
   MOV  AL,2             ; ⠭   䠩
   MOV  BX,HANDLE        ; 䠩  BX
   MOV  CX,0             ;0  CX  DX
   MOV  DX,0             ;
   INT  21H              ;ᤢ 㪠⥫
   JC   POINTER_ERROR    ;訡?
   MOV  FSIZE_HIGH,DX    ; ࠧ 䠩
   MOV  FSIZE_LOW,DX     ;
   5.1.4  ⠭  ᫥  訡,  易    墠⪮
࠭⢠  ᪥.

     ⪥      ந   ண-
ࠬ.    ⮣,   ᨪ, ஢ਢ ।-
⥫쭮 稥 ᪮ ࠭⢠ [5.1.2].  ,  ᫨
訡 ந諠,   ࠩ   짮⥫ 
ࠢ  .     ࠭ ⮫쪮    
 - 㣮  䠩     . , 
 ࠤ쭮 ।⢮,  짮⥫ ⠢  -
 ᪥. ᫥  室    ॠ뢠  让
஦. 砫 ன   䠩. ⥬ 뤠
  ᬥ ᪥.  ᫥  ⮣,   짮⥫ ᮮ,
   ᪥  , ᮧ  䠩    㤠
.

   ᮪ ஢.

    ᨪ    ⠭  楤  ࠡ⪨  訡, 
  [7.2.5].  ᫨  ᨪ    
  ,  頥  訡 #61.  ⮬ ࠢ-
    । 楤 ࠡ⪨ 訡,   -
ନ 짮⥫    ஡     ࠢ 
,   .

100 ON ERROR GOTO 5000     'ࠧ蠥 ࠡ 訡
 .
 .
200 OPEN FNAME$ FOR OUTPUT AS #1  '뢠 䠩
210 FOR N = 1 TO ARRLEN    '稭  ᨢ  
220 PRINT #1, ARRAY$(N)    '뢠  
230 NEXT                   '
 .
 .
5000 IF ERR = 61 THEN 5100  ' ?
5100 IF ERR = ...           '㣨 訡 ...
 .
5100 '''⠭  ९ ᪠
5110 BEEP: PRINT "Disk full - choose an option:"
5120 PRINT "(A) - Re-edit the file"
5130 PRINT "(B) - Delete some other file from disk"
5140 PRINT "(C) - Use different diskette"
 .       (  楤 ⠭)
 .
5500 RESUME
   । ஢.

     㭪樨  DOS,    , 뤠  ।
 訡  ⪥        .  ᢮ 
:

   ⮤ 㯠  㭪        H            K 訡

      FCB          15H      ᫥⥫쭠     AL = 1
      FCB          22H      ﬠ               AL = 1
      FCB          27H      ﬠ          AL = 1
   ਯ      40H        䠩/ன⢮   CX <> BX

஢    訡 ᫮ ᫥      .
᪮ ᪮ 訡   ந室,  ⠭ 
뢠  ஡.   H ⮫쪮 ஢  訡    ࠧ
  뢠    㭪権   ᮧ  -
 ࠡ⪨ 訡  襬 .
                 2.   ⠫ ᪠.

   K    ୥ ⠫,  ண 稭
  ⠫ ⠫.  K୥ ⠫  ᮤঠ
,  㪠뢠騥    ⠫,    ᢮  ।
 ᮤঠ 뫪  㣨 ⠫, ࠧ ॢ
 ⠫. K୥ ⠫ ᥣ ᯮ  ।-
 ᥪ ᪠; ⠫  ࠭   ᪮
䠩,  ⮬    ᯮ      ᪠.
⬥⨬,  䨪஢   ᮤঠ   ୥-
  ⠫,  ᫨  ࠧ  ࠧ,  MS  DOS  ""
⮫쪮   ୥  ⠫.  K⠫     ࠧ
ࠧ,  ᨬ  ࠧ ᪠   ࠧ  ࠧ-
.   ᫥饩  ⠡  ਢ  ࠧ   樨 ୥
⠫  ࠧ ⨯ ᪮:

 ᪠     ⠫   ᫮ ⮢  H砫 ᥪ

᪥ 160K     4 ᥪ           64                9
᪥ 180K     4 ᥪ           64                9
᪥ 320K     7 ᥪ஢         112               15
᪥ 360K     7 ᥪ஢         112               15
᪥ 1.2M    14 ᥪ஢         224               29
⪨ 10M         ----------६------------
⪨ 20M         ----------६------------

  ᨬ   ࠧ  ࠧ 䨪஢   
 ࠧ ࠧ ⠫   砫쭮 ᥪ. ᫨
  ⢥  MS DOS,   XT  AT  ୥  ⠫
⢮ 32 ᥪ,      512 ⮢.
   K ୥ ⠫, ⠪   ⠫,  ᯮ 32 
 ࠭ ଠ樨   䠩, ᨬ  ⨯ ᪠.
 ࠧ   ᥪ  ࠭ ଠ  16-
  ⠫.   K 32-⭮   ࠧ  ᫥騬
ࠧ:

    0-7    䠩
        8-10   ७ 䠩
          11   ਡ 䠩
       12-21   १ࢨ஢
       22-23   ६ ᫥ 㯠  䠩
       24-25    ᫥ 㯠  䠩
       26-27   H砫 
       28-31    䠩

窠   䠩   3- ७  ࠭.
   ࠢ   ࠭,     
஡ ( ASCII  32).  ਡ  䠩 ।  
䠩 ⠭, 饭    ..  [5.2.6].   ।-
 ⠪ ᯥ樠   ⠫,  ⠪  ⠫
  ⪠ ⮬.  ଠ  ६   㯠,  ⮬
 ⥭  祭 ॡ ⮢ 樨 [5.2.5].
   H砫  㪠뢠       ⠡ ࠧ饭
䠩 (FAT),  㦤  [5.1.1].  FAT ࠭ ଠ-
  ᢮ ࠭⢥    ᪥,   ⠪ ⢮ ᥪ
   䠩.  FAT ⢮ ᪮  ࠭⢮  ﬨ,
訬 祬 1 ᥪ,  뢠 ࠬ.  ᯮ-
   楯窥 ஢  FAT ᮤন ᮮ⢥ 楯
⮢, 㪠뢠,      ᯮ   ᪥.
K⠫    㪠뢠  砫쭮   楯窨  ⮢
䠩  FAT,   ଠ  ᮤন    砫 
. ᪮ 䠩 筮  ᫥ ⢥ 
  楫,      ࠧ  䠩  ࠭  
䠩  .
   5.2.1 ⥭/ ୥ ⠫.

   K⠫ ᪠ ࠧ  ୥ ⠫ (㦤
)  ⠫ (㦤  [5.2.3]).  K 짮⥫
ணࠬ     - 䠩   ࠡ,    뢠
 ஢,      䠩  ᠬ .  筮
   ୥ ⠫ ந  室  䠩-
 権    ᯥ樠  㭪権 DOS.  
ࠡ    ⠫ .   㦤   ⠪  室
  ࠡ  몠  ᮪  ஢,  ⨫ DOS
 襩  㯭.
   K୥ ⠫ ⠥   㧪    
 ᯮ짮 室,     [5.4.2],  
᮫  ᥪ ᪠.   樨  ⠢  
ᥪࠬ,     㦠    .  , ᮤঠ騩
 ᥪ,  ᬠਢ   32-  
  㪠⥫,     ᯮ짮   
⠫.    㪠⥫ ᥣ ⥭ 32  㪠뢠  砫
 ⠫.  ன 㪠⥫   ࢮ  㪠-
뢠       32-⭮ .     
   ॡ㥬 ࠧ,  ⥬   -
 ⭮  .
     ⮤ ⥭ ᮫ ᥪ஢ ᪠    
 ⮫쪮  ᫮ ⫨砥  砨 ⥭  .  -
 訡       ।  ᮤ-
 ᪠,    ⢮  ⭮.  砫 㡥,
   ⥭ ᥪ 믮 ୮    ⭮襭.
᫥ ⮣  ஡   ,   
, ᯮ짮  ⥭   ⮫쪮  㭪樨.

   ᮪ ஢.

   ᨪ  뢮 ⠫   FILES.   ⮬  뢮
⮫쪮  䠩. FILES   ⠫ ⥫  㬮砭;
 㪠 ⥫  FILES "A:"  ..  ॡ-
, ⮡ 뫠 뢥  ଠ  ⤥쭮 䠩, ᠢ
FILES  "A:MYFILE.DAT".   K   樮 ⥬    䠩
 ᮤঠ *  ?.   FILES ᭠ ଠ樥 -
⥫,      稥 ண 䠩    ஢
ணࠬ.   ⮬ 砥   䠩  ᫥⥫쭮
⥭   ᫨   ,   訡筠 .
 㦤  ਬ  [5.2.3].
    ᪠  ଠ樨, ⭮饩  ୥ ⠫,
ᯮ  楤  設 몥, ਢ   [5.4.2].
᫥ ⮣   ⠫    ,  ⠭ 㪠⥫,
  ᠭ ,          32-
ࢠ. Hਢ ਬ   ⠫, ⭮-
騩    ⮬ 䠩.  K 䠩 ࠥ,     
 䠩   E5H,   ⠫쭮 ᮤন -
  ⠥ .  K筮,  ⮬ ᢮
᪮ ࠭⢮, ⢥ 䠩  FAT.  楤 -
 㤠 䠩    砫쭮  
 FAT.   ਬ    2-     頥 
ᬥ饭 26   ⠫.
100 '''⥭ ᥪ஢ ⠫    ᥣ &H2000
110 INPUT "Enter erased filename ", FNAME$
120 IF LEN(FNAME$) > 12 THEN BEEP: GOTO 110
130 IF INSTR(FNAME$,".") > 9 THEN BEEP: GOTO 110
140 '''   ७ 䠩 ﬨ
150 Y = INSTR(FNAME$,".")
160 IF Y = 0 THEN FIRSTPART$ = FNAME$: GOTO 230
170 EXTEN$ = LEFT$(FNAME$, LEN(FNAME$) - Y)
180 EXTEN$ = EXTEN$ + STRING$(3 - LEN(EXTEN$),"")
190 FIRSTPART$ = RIGHT$(FNAME$,Y - 1)
200 FIRSTPART$ = FIRSTPART$ + STRING$(8 - LEN(FIRSTPART$),"")
210 FNAME$ = FIRSTPART$ + EXTEN$
220 '''⥯ ⨬  㤠 䠩
230 MID$(FNAME$,1,1) = CHR$(&HE5)  '塞  ᨬ
240 DIRPTR = 0                     '㪠⥫  
250 FIELDPTR = 26                  '㪠⥫   
260 FOR N = 1 TO 112               ' ᪥ 112 ⮢
270 X$ = ""                        '⨬ X$
280 FOR M = 0 TO 10                '⠥  䠩  ⠫
290 X$ = X$ + PEEK(DIRPTR + M)     '६  ᨬ
300 NEXT                           '
310 IF X$ = FNAME$ THEN 340        'ᮢ   ப
320 NEXT                           '᫨ ,  ᫥騩
330 PRINT "Too late - file entry obliterated": END  '㦥 
340 X = PEEK(DIRPTR + FIELDPTR)    '諨 , ६ 1-  
350 Y = PEEK(DIRPTR + FIELDPTR + 1)  '2-   
360 Z = X + 256*Y                  '⥯    Z

   । ஢.

   MS  DOS ᯥ稢   㭪権  ᪠ 䠩,  
 䠩,  ⮤ ࠢ  䠩,  㣠 -
 䠩,  ⮤ ਯ 䠩.    㭪権
   ࢮ    䠩  ⠫,  -
   ᫥騥 ,     䠩  ᮤঠ
. 쪮  ⮤,  ᯮ騩  ਯ 䠩 
᪠ ⠫.

⮤ FCB:

   㭪 11H 뢠 21H  ࢮ  䠩.  -
 DS:DX   FCB  믮  㭪.  
AL  㤥  ᮤঠ 0, ᫨ 䠩 ,  FF - ᫨  .   DTA
 ଠ樥  ⠫.    FCB  
DTA  ᮤন   ⥫ (1 = A   ..),   ᫥騥  32
 ᮤঠ   ⠫.    ७ FCB  7
⮢ 䠩    7 ⮢ ७ FCB, -
  㪠뢠   ⥫,  ᫥騥 32  - 
⠫.

;--- ᥣ 
FCB     DB    1,'NEWDATABAK',25DUP(0)

;---饬 䠩
   MOV  AH,11H    ;㭪 ᪠  ⠫
   LEA  DX,FCB    ;㪠뢠  FCB
   INT  21H       ;饬
   CMP  AL,0      ;ᯥ譮?
   JNE  NO_FILE   ;᫨ ,  楤 ࠡ⪨ 訡
   LEA  BX,DTA    ;⥯ DS:BX 㪠뢠   ⠫
   ᫥ ᯮ짮 㭪樨 11H  ᯮ짮 㭪 12H
 ᪠ ᫥ 室 ⮢,   䠩 ᮤ-
 .   砥   䠩 ⨬ ⮫쪮 ᨬ
"?",   "*".   㭪  ࠡ⠥    筮 ⠪ ,  
ࢠ,  ᫨  ன 䠩,  ଠ  ࢮ 䠩 
DTA 㤥 㭨⮦ ୮ .

⮤ ਯ 䠩:

   㭪 4EH 뢠 21H    䠩    . DS:DX
 㪠뢠  ப,   䠩. Hਬ, B:\EURO-
PE\FRANCE\PARIS 㪠뢠   䠩  PARIS. ப  ᮤঠ
  63 ᨬ   ᨬ ASCII 0.   䠩  
ᮤঠ ,   "?",  ⠪  "*".  ਡ
䠩  CX; ᫨    0,  ⨢ 砥  ப-
  [5.2.6] ⭮⥫쭮 祭 ਡ.
    ࠥ ⠭  䫠 ७, ᫨ 䠩  -
.   ᫨ 䠩 ,  㭪  DTA  ଠ樥  
䠩. ⬥⨬  砩  ᯮ짮 DTA ⮤ ਯ-
 䠩 - 筮, DTA ᯮ 㭪ﬨ MS DOS  ࠡ-
 १ FCB.  21   DTA  १ࢨ஢ DOS  ᪠
᫥  ᮢ 䠩.   ன   ਡ
䠩,   ᫥  , ᮤঠ騥 ६    
ᮤঠ騥 . 騥 4  ᮤঠ ࠧ 䠩 (襥
᫮ ᭠砫).  , ,   䠩   ப -
  , 稢饩 ⮬ ASCII 0.  窠 (ASCII  46)
ࠧ   ७       ⮢  -
 ஡.

;--- ᥣ 
PATH       DB     'B:FRANCE\PARIS\4EME',0

;---饬 䠩
   MOV  AH,4EH        ; 㭪樨
   LEA  DX,PATH       ;DS:DX 㪠뢠  
   MOV  CX,0          ; ਡ 䠩
   INT  21H           ;饬 䠩
   JC   NO_FILE       ;室, ᫨  
   LEA  BX,DTA        ;DS:BX 㪠뢠  DTA
   MOV  AL,[BX]+21    ;⥯ ਡ 䠩  AL

   饥    䠩 ( ᯮ  )
   㭪樨  4FH  뢠  21H.    ⮢ 
筮  ⠪  ,   㭪 4EH,  ⮬ 㪠⥫  DTA  
 .  K 㣨 ᮢ  ,  ⠭-
 䫠 ७,   AX  18.
   5.2.2 /㤠 ⠫.

   ணࠬ  ᮧ   㤠 ⠫,  믮-
   ᫮.   ᮧ  ⠫  室,
⮡ 뫮  ࠩ   ⮥   ୥ ⠫.
  㤠 ⠫ 室, ⮡   ᮤঠ 䠩
 뫮  㣨  ⠫.  K஬ ⮣,    㤠-
 ⠫,   訬 ⥪騬 ⠫ (, 
   㬮砭  믮   樨  ⠫).
⬥⨬ ⠪,   㤠 ୥ ⠫.

   ᮪ ஢.

   ᨪ  ।⠢   MKDIR (ᮧ ⠫)   RMDIR
(㤠 ⠫).        ᫥  ⠭ 
㪠 ⠫, ᮤঠ騥  63 ᨬ,   -
⥫.     祭  窨. ⮡  -
⠫    STORKS  ⠫ BIRDS  MKDIR  "B:MAM-
MALS\BIRDS\STORKS".  ᫥  믮  ⮩  㤥 ᮧ
䠩 STORKS, ᯮ㥬  ⠫  䠪  ⢮
㤥 ࠦ  ᮧ    STORKS  ⠫ 
 BIRDS.  㤠 ⮣ ⠫  ᭠砫 㤠
   䠩 [5.3.2]. ⥬   ᯮ짮  RMDIR
"B:MAMMALS\BIRDS\STORKS".
       ਬ ।,  訬 ⥪騬  ⠫
 ୥ ⠫.  , ᫨  ⥪騩 ⠫ -
  -     ⠫,    ⢫
樨,   室 㪠뢠  . ⮬, ᫨
訬 ⥪騬 ⠫  BIRDS,   ᮧ   㤠-
  ⠫  STORKS      ᯮ짮    MKDIR
"\STORKS"  RMDIR "\STORKS".

   । ஢.

   ᪮ ࠢ騥  䠩 㦨 ⮫쪮 ୥
⠫,   ᮧ   㤠 ⠫  ᯮ짮-
 ਯ 䠩.

 ⠫:
   DS:DX   㪠뢠  ப,  ⥫    
⠫,  ஬   ᮧ ⠫.  ப 
  ⮬  ASCII 0.    ⠫   
PRIMATES  ୥ ⠫ ⥫ A:   ப 
 "A:\PRIMATES".   ⠫  㣮 ⠫
  MAMMALS  "A:\MAMMALS\PRIMATES".    ⥫
A:   饭 ᫨  ࠡ⠥  ⥫, ᯮ-
    㬮砭,    稭  ⥪饣  ⠫.
  AH 39H  믮  뢠  21H; ᫨ 㪠 -
 ,  㤥 ᮧ  ⠫.   ⨢  砥
㤥 ⠭ 䫠 ७,  AX 㤥 ᮤঠ  訡 3
( ७)  5 ( 㯠).   ਬ ᮧ -
 PRIMATES:
;--- ᥣ 
PATH    DB   'A:MAMMALS\PRIMATES',0

;---ᮧ ⠫   PRIMATES
   LEA  DX,PATH     ;DS:DX  㪠뢠  
   MOV  AH,39H      ; 㭪樨
   INT  21H         ;ᮧ ⠫
   JC   ERROR_ROUT  ;ࠡ⪠ 訡

 ⠫:
    㤠 ⠫  ନ஢ ப,  筮
ᮢ   ⮩,   㪠뢠   ᮧ  ⠫.
⥬   AH 3AH   믮  뢠 21H.   
믮  㭪樨   AX  饭  3  5 (  5
 㪠뢠,  ⠫ ⮩).
   5.2.3 ⥭/ ⠫.

   ⠫    ୥  ⠫,  ᪫-
  ⮣,    ࠭   䠩,      ࠭
।। ᥪ. ⠫    -
묨 䠩, ᪮ ꥪ ⠫, ⭮騩  ⠫-
,  ᯥ樠   ਡ⮢  ( ⠭ ⮬ 5 -
.  [5.2.6]). ⠫ 稭   ᯥ樠 32--
 ꥪ⮢,        窠,  ன - 
窨.    ਥ ⠫ ।  㦠  ⠫.
뫪  ⠫    ஢  뢠   
뫪  䠩.
   ।,   ⠫   ⠭   
㣮 䠩, ⮬ த   ⠢ 㤠 㧨  
.   H,   ᮦ, ᮧ⥫ MS DOS ⨫  0   
 䠩  ⮢, ⭮  ⠫.   १-
 DOS ⠥,   䠩  㫥   ⪠뢠-
  . H ⮣ ᯮᮡ ८  ஡.

   ᮪ ஢.

    ᨪ  FILES   ᯮ짮  ⠭ 
⥩   뢮 ⠫; ਬ, FILES  "B:MAMMALS\BIRDS"
뢮  䠩, ᮤঠ騥  ⠫ BIRDS.   
   ᯮ짮   祭 ଠ樨   稨  
⠫ ।  䠩.  Hਬ,  FILES "LEVEL1\NEWDATA"
  䠩 NEWDATA  뢮  , ᫨  .     
      짮⥫,    ᠬ ணࠬ
室     㪠 䠩. ⮡ ⠭-
  ⠩   䠩   ᫥⥫쭮 ⥭.
᫨   㤥 ,   訡筮 ᫮ 63.  -
 楤 ࠡ⪨  訡,   ᠭ  [5.4.8].  ⥬
ᯮ  ६,  ⮡ ⬥     ॡ㥬
䠩 ( 襬  ਬ  ६  "EXISTS").  ᫨ ணࠬ 
㦭,     䠩  ,  ன  । ⥬  
 .

100 ON ERROR GOTO 1000      '楤 ࠡ⪨ 訡
110 EXISTS = 1              '砫쭮 祭 "䫠"
120 INPUT "Enter filename: ",S$  '  䠩
130 OPEN S$ FOR INPUT AS #3 '뢠   ᫥. ⥭
140 IF EXISTS = 0 THEN BEEP: PRINT "File does not exist"
 .
 .
1000 IF ERR = 53 THEN 1500  '䠩  ?
1010 IF ERR = 64 THEN ...   '㣨 訡
 .
1500 EXISTS = 0             '塞 祭 䫠
1510 RESUME 140             'த 믮 ணࠬ

   । ஢.

   㭪樨 ࠡ १  ਯ  䠩,  ᯮ짮-
  㯠  ୥ ⠫ [5.2.1]  ⠪  
    ⠫.   ⮡  뢥  ᮤন
⠫    ᯮ짮 㭪 4EH  ᪠  䠩
*.*,  ⥬  , ᯮ 㭪 4FH. K 
  㤥 䠩,  㤥 ⠭ 䫠 ७,   AL  㤥
ᮤঠ  18.  K ࠧ,  㤥 㦥 ।  -
,  DTA 㤥 ᠭ ଠ  䠩,   
  (⬥砥 ᯮ짮 DTA  㭪, ᯮ  -
ਯ 䠩).  騩 ਬ 뢮    
䠩 ⠫.

;--- ᥣ 
PATH     DB   'A:MAMMALS\*.*',0
DTAH     DB   256 DUP(?)

;---⠭ DTA
            LEA  DX,DTA        ;DS:DX 㪠뢠  DTA
            MOV  AH,1AH        ;㭪 ⠭ DTA
            INT  21H           ;⠭ DTA
;---饬  䠩
            MOV  AH,4EH        ; 㭪樨
            LEA  DX,PATH       ;㪠뢠  ப 
            MOV  CX,0          ;⮫쪮 ଠ ਡ
            INT  21H           ;饬 *.*
            JC   ERROR         ;ࠡ⪠ 訡
;---뢮  䠩
NEXT_LINE:  LEA  BX,DTA        ;BX 㪠뢠  DTA
            ADD  BX,30         ;ᬥ饭   䠩
NEXT_CHAR:  MOV  DL,[BX]       ;砥 ᨬ  
            CMP  DL,0          ;஢ઠ   ப
            JE   END_STR       ;室, ᫨ 
            MOV  AH,2          ;, 뮤 ᨬ
            INT  21H           ;
            INC  BX            ;㢥稢 㪠⥫
            JMP  SHORT NEXT_CHAR  ;᫥騩 ᨬ
;--- ⪨/ॢ ப   ப
END_STR:    MOV  AH,2          ;㭪 뢮 ᨬ
            MOV  DL,13         ;  ⪨
            INT  21H           ;뢮
            MOV  DL,10         ; ॢ ப
            INT  21H           ;뢮
;---饬 ᫥騩 䠩
            LEA  DX,PATH       ;㪠뢠  ப 
            MOV  AH,4FH        ; 㭪樨
            INT  21H           ;饬 ᫥騩 䠩
            JC   FINISHED      ;᫨ ,  室
            JMP  SHORT NEXT_LINE  ; 뢮  䠩
FINISHED:
   5.2.4 祭/⠭ ⥪饣 ⠫.

   騩  ⠫    ⠫,  ஬ DOS   䠩,  
ண  㪠 . ᫨  ⠭ ⨢,  ⥪-
騩 ⠫  ୥ ⠫.

   ᮪ ஢.

   ᨪ ⠭ ⥪騩 ⠫     CHDIR.
   ᫥ ப, 㪠뢠   ⠫,
   ३. ப  ᮤঠ  63- ᨬ,
  ⥫,    祭  窨.  CHDIR
"C:MAMMALS\PRIMATES\GIBBONS"    ⠫  GIBBONS  ⥪騬
⠫.  ⮡ ३   ୥  ⠫  CHDIR "\"
 CHDIR "B:\".
   ᨪ ᨨ 3.0  ᮮ   ⥪饬 ⠫, 
      DOS   PATH.       PRINT  ENVI-
RON$("PATH").

   । ஢.

   㭪  3BH  뢠 21H  ⠭  ⥪騩  ⠫.
DS:DX  㪠뢠       ⠫  ⠭⭮  
 ப   ⮬ ASCII 0. Hਬ, B:BIRDS\-
PARROTS\POLLY  POLLY ⥪騬 ⠫.  B:   -
饭,  ᫨   ⥪騩 ⥫  㬮砭 [5.3.1].   ⮡
ᤥ ⥪騬 ୥  ⠫  ⥫  A:  A:\. 
ਬ ⥪騬 ⠫ ⠭ POLLY:

;--- ᥣ 
PATH     DB   'B:BIRDS\PARROTS\POLLY',0

;--- POLLY ⥪騬 ⠫
   MOV  AH,3BH        ; 㭪樨
   LEA  DX,PATH       ;DS:DX  㪠뢠  
   INT  21H           ;⠭ ⥪騩 ⠫

   ⮡ ।  ⠫  ⥪騬  ᯮ짮-
 㭪 47H 뢠  21H.  DS:SI   㪠뢠  -
   ࠧ஬ 64 ,   㤥 ᠭ .  
DL 㪠뢠 ⥫, 祬  0 = " 㬮砭", 1 = A, 2 =
B  ..   㭪 頥 ப   -
⥫.  ᫨  㪠 騩 ⥫,   AL -
頥  訡 15.  ப 稭   ࢮ -
 楯窨,    ⭮ ᮩ  .  ASCII 0 ᨣ-
     ப.    ਬ  ⥪饣  ⠫
ᢠ ६ "CURRENT_DIR":

;--- ᥣ 
CURRENT_DIR   DB   64 DUP(?)

;--- ⥪騩 ⠫
   MOV  AH,47H         ; 㭪樨
   LEA  SI,CURRENT_DIR ;㪠뢠   
   MOV  DL,1           ;⥫ A
   INT  21H            ;頥 ப   DS:SI
   5.2.5 祭/⠭ ६    ᫥ 㯠 
䠩.

   ᫨ 뢠  ,   22-23 32-⭮  
⠫ ᮤঠ ६ ᫥ 㯠  䠩.  24-25 -
ᮤঠ . 祭 ⮢ ᫥饥:

६:   11-15     (0-23)
              5-10     (0-59)
               0-4    ᥪ㭤 (0-29  2-ᥪ㭤 ࢠ)

:     9-15     (0-119, ᬥ饭  1980 )
               5-8     (1-12)
               0-4    ᫮ (1-31)

    뢠; DOS    ⠫쭮  -
ଠ樨.  ⬥⨬  ⠪,      ᥣ,  訩   
2- 祭 ᯮ ࠭  , 祬 訩.

   । ஢.

   ⮤  㯠    䠩  ᯮ짮  ࠢ饣  
䠩     ᫥  㯠  䠩,  
६.   K  FCB 뢠 㭪樥 0FH 뢠  21H,  
 塠⭮     襯ਢ ଠ. 
 ᯮ  FCB  ᬥ饭 14H [5.3.5].
     㣮 ஭,   䠩   ਯ  䠩
  , ⠪  ⠭    ६ ᫥
㯠  䠩.  㭪 57H 뢠 21H 믮  -
樨.  ⠭ ६     䠩  BX,  0
 AL.  祭   ६    AL 1.  
  ᮤন  DX,  ६  CX. 祭 ⮢ ᮢ-
  ⥬,  ᠭ  ⠡.   孨᪮ 㪮⢥  
MS DOS ⢥ত,  訥   ଠ樨 室  CH
  DH,  .  H ᠬ    ⠪.    
訡 ⠭ 䫠 ७,   AX 頥 1, ᫨
  AL 㪠 ࠢ쭮 ᫮  6, ᫨ 宩 ਯ 䠩-
.  ᫥饬 ਬ । ,    ᫥
  䠩:

;--- ᥣ 
PATH   DB   'B:NEWDATA.BAK',0
;---뢠 䠩
   LEA  DX,PATH         ;㪠뢠  ப 
   MOV  AH,3DH          ;㭪  䠩
   MOV  AL,0            ;뢠  ⥭
   INT  21H             ;뢠 䠩
   JC   OPEN_ERROR      ;室  ࠡ 訡
;---砥   ६ 㯠  䠩
   MOV  BX,AX           ;頥  䠩  BX
   MOV  AL,0            ;  ⥭ ६
   MOV  AH,57H          ; 㭪樨
   INT  21H             ;砥 ६ 㯠
   JC   TIME_ERROR      ;室  ࠡ 訡
;---ᤢ , ⭮騥  ᠬ,  砫 CH
   MOV  CL,3            ;⮢ ᤢ
   SHR  CH,CL           ;⥯ CH ᮤন  㯠
   5.2.6 ⠭  饭   䠩.

   DOS  ᯮ  ࠧ ਡ⮢ 䠩,  
 䠩 । .     ᪮쪮 
 ਡ⮢ ६ (  ). ਡ ⠭
12- ⮬ 32-⭮    ⠫.  訥  ⮢
 祭,  ⠫   ࠢ .  ⠪:

   ᫨  5 = 1,    䠩    ६ ᫥
                     娢樨
            4 = 1,    䠩  ⠫
            3 = 1,        䠩,  ⪮
                     ⮬
            2 = 1,    䠩  "⥬"
            1 = 1,    䠩 ⠭  ᪥  ⠫
            0 = 1,    䠩  ⮫쪮  ⥭

 5  娢 , ᯮ㥬 ணࠬ BACKUP  RESTORE
DOS.   뢠  0 ᫥ 娢樨  ⠭,
  䠩 ᭮ ࠡ⠫.  ᫥饩 娢樨 -
 䠩   㦥  ந஢.

   ᮪ ஢.

   ᨪ     ⠭  ਡ  䠩 אַ.
ࠢ  [5.2.1],   ⠫  ,   㦭
䠩, ᤥ   ᭮    .  K ⮫쪮
⠫ 頥  ,   ਡ⮢ 室  ᬥ-
 11, 43, 75  .. ᫨ 㦭,     ⥪騥
ਡ   ⮫쪮   ,  ᯮ  孨 ⮢
権,  ᠭ  ਫ .  H    ९
 ਡ .    ⥫,  訡   -
⠫묨.     ਬ 뢠 ਡ 䠩   
"NEWDATA.AAA".

100 '⠥ ᥪ ⠫, 稭  &H2000  ⥬ ...
110 DEF SEG = &H2000         '㪠뢠   ⠫
120 FILENAME$ = "NEWDATAAAA" '饬  䠩  窨
130 DIRPTR = 0               '㪠⥫  ⠫
140 FOR N = 1 TO 112         '஢塞  
150 X$ = ""                  '६ ப   䠩
160 FOR M = 0 TO 10          '  ᨬ 
170 X$ = X$+PEEK(DIRPTR+M)   '塞   ப
180 NEXT                     '
190 IF X$ = FILENAME$ THEN 220  '᫨  ,  室
200 NEXT                     '
210 PRINT "File not found": END  ' ⠪ 䠩
220 X = PEEK(DIRPTR+11)      '砥 ਡ 㦭 䠩
230 IF X AND 32 <> 0 THEN PRINT "File not baked up"
240 IF X AND 16 <> 0 THEN PRINT "File is a subdirectory"
250 IF X AND 8 <> 0 THEN PRINT "Volume label - not a file"
260 IF X AND 4 <> 0 THEN PRINT "File is a system file"
270 IF X AND 2 <> 0 THEN PRINT "File is a hidden file"
280 IF X AND 1 <> 0 THEN PRINT "File is read-only"
   । ஢.

   㭪 43H 뢠 21H    室, ⠪  
ਡ  䠩,  ⮫쪮 ᫨ 䠩      ⮤
ਯ 䠩,        ⮤  ࠢ饣  
䠩. H 筮 㭪樨  FCB.  ਡ⮢  
⠭  ᮧ  䠩   [5.3.2],  ᯮ  ७
ࠢ騩  䠩.  H ᫨  ᫥⥫쭮 ஥ FCB,
 ⠭ ਡ⮢    ⥬  ஥  䠩,   
⠭ ࢮ砫 ਡ. , 筮,   -
 ਡ -  室  ⥬,    -
짮 㭪, ᯮ ⮤ ਯ 䠩.
   ⮡ ᯮ짮 㭪 43H,  1  AL, ⮡  -
 䠩   ਡ⮢,  ᮤঠ騩   CX ( ᠬ  
CL, ᪮ CH ࠢ 0).     AL 0, ⮡
 CX  饭 ⥪騩  ਡ⮢ 䠩.    
DS:DX    㪠뢠  ப,     䠩.   K
ப ⬥砥 ⮬ ASCII 0  (  室  ᫮ 63-
ᨬ).   ਬ  "hidden" (⠭)  ᢠ
䠩 OVERDUE:

;--- ᥣ 
PATH   DB   'A:ACCOUNTS',0

;---砥 ਧ ⠭ 䠩
   MOV  AH,43H          ; 㭪樨
   MOV  AL,0            ;⠥  ਡ⮢
   LEA  DX,PATH         ;DS:DX 㪠뢠  
   INT  21H             ; ਡ⮢  CX
   JC   ERROR_ROUTINE   ;ࠡ⪠ 訡
   OR   CL,10B          ;砥  1
   MOV  AH,43H          ; 㭪樨
   MOV  AL,1            ;塞  ਡ⮢
   INT  21H             ;⥯ 䠩 ⠫ ⠭

 ७ ⠭     訡.   ⮬
砥    AX 頥 2 - ᫨ 䠩  , 3 -  ᫨  
   5 -  㣨 訡 ( 㯠).
   5.2.7 ⥭/ ⪨ ⮬.

   ⪠ ⮬  ᪥ -      ⠫, 騩 ᯥ-
樠 ਡ. ⪠   11 ⮢ , ⭮-
騥    ७ 䠩.  ਡ⮢  ᬥ饭 11
ᮤন 祭 8 ( 3 = 1).   ६   
 ࠧ.   ᢮ ⮣ ਡ  , 
   뢮   DIR.
   ⪠        ⠫.     
ॡ஬  ⮢  ਡ⮢,    㤥  祭
8.   ⮡       E5    
ᮮ⢥饣  - ᠬ    ਡ⮢   .
⮡        11  ᨬ  (⮪
    ஡).  ⮡  ᢮   ⮬ ,
   ,   ⮥   ⠫  
㤠   ᮮ⢥騩 ਡ, 祣   ॡ.

   ᮪ ஢.

   㦤  [5.4.2]       ᮫
ᥪ   ᨪ.   ⠭⭮ ஭  ᪥  
ᯮ짮  ஭ 0,   ஦ 0,  ᥪ - 6
  ᫮ ᥪ஢  ⥭/ - 7.  ᫥ ⮣,   
ᠭ  ⢥  ,  ਬ,  ਢ   
 ᯮ짮     ⪨ ⮬.  ⥬
ᥪ     १ᠭ    .  ⥫:
訡  ਢ   ᥩ ଠ樨  ᪥.   
ਬ   ⮬   :

100 'ᥪ 㦥, 稭 ᪠  &H1000
110 DEF SEG = &H1000
120 DIRPTR = 11           '㪠⥫   ਡ⮢
130 FOR N = 1 TO 112      '஢塞   ⠫
140 IF PEEK(DIRPTR) = 8 THEN 180  '室 ᫨ ⪠ ⮬
150 DIRPTR = DIRPTR + 32  '㪠뢠  ᫥. 
160 NEXT                  '஢塞  ਡ
170 PRINT "No volume label found": END  '⪨ 
180 INPUT "Enter new volume label", V$  ' ⪨
190 IF LEN(V$) > 11 THEN BEEP: PRINT "11 chars only": GOTO 180
200 V$ = V$ + STRING$(11-LEN(V$),32)  '塞 ஡
210 DIRPTR = DIRPTR - 11  '頥  砫 
220 FOR N = 1 TO LEN(V$)  '頥  ᨬ ⪨
230 POKE N,MID$(V$,N,1)   ' 
240 NEXT                  '
250 '⥯ ⠫ १ ᥪ  

   H ஢.

    ਢ ਬ ।,   ᮧ 
  ࠧ஬ 3584 ,  ࠭  ᥬ ᥪ஢ -
 ᪥  360K.   뢠 DIR_AREA.   ࢮ
ਬ ⪠ ⮬   뢮, , ᫨    ,
 뢮 ᮮ饭    ⢨.     㤮⢠ 
   ᥪ஢ ⢮  ᥣ ;    ⢥
  ,  ⥬ ᢮  [1.3.1].
;--- ᥣ 
VOL_STRING   DB    'The volume label is $'
NO_LABEL     DB    'There is no volume label $'
DIR_AREA     DB    3584 DUP(?)

;---⠥ 7 ᥪ஢ ⠫
         MOV  AX,SEG DIR_AREA         ;ᥣ 
         MOV  ES,AX                   ;
         MOV  BX,OFFSET DIR_AREA      ;ᬥ饭 
         MOV  DL,0                    ; ⥫
         MOV  DH,0                    ; 
         MOV  CH,0                    ; ஦
         MOV  CL,6                    ;⮢ ᥪ
         MOV  AL,7                    ;᫮ ᥪ஢ ⠫
         MOV  AH,2                    ; 㭪樨 ⥭
         INT  13H                     ;⠥ ⠫  
;---饬  ⮬, ࠢ  ਡ⮢  8
         MOV  CX,112                  ;᫮ ⮢
         ADD  BX,11                   ;ᬥ饭  ਡ⮢
TRY_AGAIN:   MOV  AL,[BX]             ;६ 1- 
         CMP  AL,8                    ; ⪠ ⮬?
         JE   GOT_IT                  ;᫨ ,  室
         ADD  BX,32                   ;  ᫥. 
         LOOP TRY_AGAIN               ;
;---뢮 ᮮ饭  ⢨ ⪨ ⮬
         MOV  AH,9                    ;㭪 뢮 ப
         LEA  DX,NO_LABEL             ;㪠뢠  ப
         INT  21H                     ;뢮 
         JMP  SHORT CONTINUE          ; 
;---뢮 ப,   ⮬
GOT_IT:  MOV  AH,9                    ;㭪 뢮 ப
         LEA  DX,VOL_STRING           ;㪠뢠  ப
         INT  21H                     ;뢮 
         SUB  BX,11                   ;㪠⥫  
         MOV  CX,11                   ;襬 11 ᨬ
         MOV  AH,2                    ;㭪 뢮 ᨬ
NEXT_CHAR:   MOV  DL,[BX]             ;ᨬ  DL
         INT  21H                     ;뢮 ᨬ
         INC  BX                      ;室  ᫥饬
         LOOP NEXT_CHAR               ;
CONTINUE:

⮡    ᫥騩   GOT_IT:

GOT_IT:   MOV  AL,0E5H     ; ⬥⪨ ⮣ 
          SUB  BX,11       ;㪠⥫  砫 
          MOV  [BX],AL     ;塞  

⮡     ⮬,      ⮣  ᯮ짮 
GOT_IT ᫥騩 .  ।,   ⮢  -
11- ப NEW_LABEL.

GOT_IT:   LEA  SI,NEW_LABEL  ;SI  㪠뢠  ப
          SUB  BX,11         ;BX 㪠뢠  砫 ⪨
          MOV  DI,BX         ;頥 㪠⥫  DI
          MOV  CX,11         ;뫪 11 ᨬ
REP       MOVSB              ;뫠 ப
   ⮡ ᮧ     ᯮ짮    ᠬ , 
  ⠪ ⠭  ਡ⮢ ࠢ 8 (   
 ASCII 8  ப,  ᮤঠ饩   , ⠪  
ਡ⮢ ।⢥ ᫥  ᠬ ⪮).
   ,  ,       ⠫,  室
 ⠫ ⭮  . 訡  ⮬ ⥫.

;---  ᥪ஢   
   MOV  AX,SEG DIR_AREA        ;ॣ    ⥭
   MOV  ES,AX                  ;
   MOV  BX,OFFSET DIR_AREA     ;
   MOV  DL,0                   ;
   MOV  DH,0                   ;
   MOV  CH,0                   ;
   MOV  CL,6                   ;
   MOV  AL,7                   ;
   MOV  AH,3                   ; 㭪樨  ᥪ஢
   INT  13H                    ;
               3. ⮢  ࠡ  䠩.

   ணࠬ,  ᠭ  몠 ᮪ ஢   
 䠩   ⮢⥫쭠 ࠡ  権  䠩
㤥 믮 ⮬᪨.   ணࠬ  몥  -
ᥬ  ᮧ  ᯥ樠   ,  -
     /뢮.  MS DOS  ᯮ  
⮤ 㯠  䠩, ⮤  ࠢ饣   䠩 (FCB) 
⮤ ਯ 䠩. ⮤ FCB ࠭   ,  MS
DOS  ࠡ⠫  ॢ ன ⠫, ⮬  
      ⮫쪮   䠩,  室騬  
⥪饬  ⠫.  ⮤  ਯ  䠩   
   䠩, ᨬ  ⮣,  ⠫ 
⥪騬.
   ᪮ ⥯  ॢ    ⠫ ப -
,   ⮤ FCB ⠭ ஭,  MS  DOS
த ন  ⮤, ⮡ ࠭ ᮢ⨬
   ணࠬ ᯥ祭   ⮩ 稭  ᬮ-
ਬ  .     ᢮  ணࠬ  ᥣ ᯮ ⮤
ਯ 䠩.  ⮤ ਯ 䠩   ⥫쭮
२⢮  ⮬,    ॡ  ⮢⥫쭮 ࠡ-
.    ਫ ᠬ 樨 /뢮 
 ᯮ짮       ᫮묨, 祬  ⮤
FCB.  Hਬ, 樨 ⥭ 䠩   㯮  ᯮ-
 ⮤ ਯ 䠩  ॡ ⮡ ணࠬ -
﫠 ᬥ饭    䠩,   ६  ᮮ⢥-
 㭪 FCB 砥     室 -
 ᠬ.
   ०  祬     䠩    .
 䠩   ᮧ    樠஢  ᯥ樠
  ,  ᯮ㥬 MS DOS,    ᮤন  
ଠ  䠩, ⠪     䠩,  ⥫, ࠧ
  䠩   ..  모 ᮪ ஢, ⠪   ᨪ,
ᮧ    ⮬᪨.     ⠪ ⥩ -
 ࠢ騩  䠩   ᯮ ⮤ FCB,  
ணࠬ ᮧ  ,   MS  DOS ⠥  㫨 
ᮤন.   ࢮ砫쭮  FCB ᮤন ⮫쪮  䠩   
⥫; ᫥ ⮣  䠩  뢠     
ଠ  ࠧ  䠩   ⥪饩 樨,   ன
  㤥 ⢫ .
    㣮 ஭,  㯥     ਯ 䠩 MS
DOS ⮬᪨ ᮧ    䠩  ந쭮
. ⥬ MS DOS ᮧ 㭨 16-   䠩
 ᫥⢨  "" ᯮ 㭪ﬨ DOS   -
䨪樨 ⮣,     䠩 ந .
  㦭  宦 䠩 -  ⠭⭠ ப ,
 ன   易⥫쭮  ⥫   -
⠫   ࠧ ⭮  ᮩ ⮩.   ப
⫨    ⠭⭮  MS DOS ⮫쪮 ⥬,    
  ⮬ ASCII  0,    ⥬ ⮡ ணࠬ 
  ப (⠪ ப 뢠 ப ASCIIZ).
   樨  뫪     䠩 ॡ, ⮡ 뫠
㪠       ன  ࠢ-
 .   । ⢥    
 ⠭ 㪠⥫      (..  訩 
   ).  ᫨ । ᫨誮  ,   
९   ࠧ , ᯮ  ᫥
  .     ᯮ짮    ஬
, ࠡ騩 ⮫쪮  让  樥   権
⥭  .       , 
ன ணࠬ ⢨⥫쭮 ࠭  ࠡ뢠 .
   㭪樨 㯠 १ ࠢ騩  䠩 । ஬-
     㪠⥫, ன   ६  ࠭
樮 ⥬.      뢠    
᪮  (disk  transfer area)  DTA.  K ᮦ,  孨᪠
㬥  IBM PC   뢠  ନ DTA 㪠⥫ 
,     ᠬ  ࠢ쭮 뢠  㪠⥫  
DTA.  ᫥ ⮣  㪠⥫    DTA ⠭   ᯥ-
樠쭮 㭪樨,  䠩 樨 ᯮ    
   㤥 .  㣮 ஭, 㭪樨, ᯮ騥
ਯ 䠩,  㪠뢠 ⮢    
 ࠧ  맮 㭪樨     㪠⥫  DTA,
ᯮ㥬  㭪ﬨ  ࠢ饣  䠩.   㭮  5-2
뢠  ⮤ 㯠  䠩.
   5.3.1 ⠭/஢ઠ ⥫  㬮砭.

   ணࠬ    ࠡ,  ⥫ 
㬮砭,   ஬  ᮤঠ  䠩  .  ᫨  砫
ணࠬ      짮⥫  ⥫    㤥
ᯮ짮,  ᫥⢨  㤥  ᮬ   -
⥫ ᫥ .

   ᮪ ஢.

    ਢ ணࠬ  ᨪ ⥪騩 ⥫  㬮-
砭 ४砥   楤  設 몥. -
    ᥣ 7 ⮢.   頥  ப X$,  
६ Z 㦨 㪠⥫    楤.  ਫ-
     ⠢ ᥬ 楤  ண-
ࠬ  ᨪ.  H ⥫ ⠭  ப 110,
祬 0 = A, 1 = B  ..  ᫨  ⥫  㬮-
 騩 ⥫,  訡  㤥, ⮬ 
⥫. H ⠩ ꥤ ப 120  130 ⮩ -
, ᪮  ⮬ 砥  ᨪ 㤥 ࠡ-
뢠  ࠢ쭮.

100 DEF SEG         'ᥣ  砫  ᨪ
110 NUM = 0         '롨ࠥ ⥫ A
120 X$ = CHR$(180)+CHR$(14)+CHR$(178)+CHR$(NUM)+CHR$(205)+
         CHR(33)+CHR$(223)
130 Y = VARPTR(X$)  '砥 ਯ ப (  Y+1)
140 Z = PEEK(Y+1)+PEEK(Y+2)*256  '塞  ப
150 CALL Z          '믮塞 設 楤

   । ஢.

   㭪 EH 뢠 21H ⠭ ⥫   㬮-
. H    ⥫ (0 = A, 1 = B  ..)
  DL  믮 뢠.   㭪 頥  AL  ᫮
⥫  設. ⬥⨬,    設  ⮫쪮
 ⥫,  頥 ᫮ 2. 訩 ᯮᮡ ।-
 ᫠ ⥫  設 ᠭ  [1.1.5].

   MOV  AH,0EH       ; 㭪樨
   MOV  DL,1         ;  ⥫ B
   INT  21H          ;⠭ ⥫  㬮砭

   㭪 19H 뢠 21H  ᮮ頥    ⥫ -
  ⥫  㬮砭.   ⮩ 㭪樨    室
ॣ஢.    AL ᮤন  ,  0 = A,
1 = B  ..
   5.3.2 /㤠 䠩.

     ᮧ  䠩,         ଠ樨.
  ⠫,    䠩 ⠭ ࠢ
0.    㤠 䠩 ᮮ⢥騩  ⠫  ᠬ
  㤠,     ⠭  騬   
 ࢮ   (ࢮ ᨬ  䠩) 
E5H. ᫥⢨      १ᠭ  ᮧ-
  䠩.   ६ 㤠 䠩  ⠪ -
  ⠡ ࠧ饭 䠩,  ⥬ ⮡ ᥪ ᯮ㥬
⨬ 䠩 뫨 㯭  㣨 䠩.  ᮤন 
ᥪ஢  ⮬  ࠥ.   ⮬  ⠭ 㤠-
  䠩 -  ।०,  樨  ⠡楩 ࠧ-
饭 䠩  ந 祭 ஦.

   ᮪ ஢.

   ᨪ   ᯥ樠쭮   ᮧ 䠩. 
⮣  ⨨ 䠩 㪠    ⠫ ,  ᫨
  ,  ᮧ  䠩. ᫨   䠩,
  ⥬    ந   ,    ⠭
 ⠫   1     㤥 ⢥  ᪮
࠭⢠  (⢥  -  ᨬ Ctrl-Z - ASCII 26 -
 ᯮ  ⢥ ਧ  ⠭⭮ ⥪-
⮢ 䠩). ⠫  OPEN .  [5.3.3].
   H,  CLOSE  㭨⮦ 䠩.   ⮣ 
㭨⮦ 䠩  ᯮ    KILL.    ⮣ ⮡
㭨⮦ 䠩    뢠.    䠩
 窠, ਬ KILL "A:ACCOUNT.DAT".   , ᫨ 䠩 -
  㣮 ⠫,   ᯮ짮 ⠭ 
 䠩, ਬ KILL "A:\FINANCES\ACCOUNT.DAT".   
 ⥫ 室 㪠뢠 ⮫쪮 ᫨ 䠩 室 
 ⥫  㬮砭.  ⬥⨬,     ᯮ짮-
  ⨬ ⮤, ⮡ 㤠 ⠫ (  
   䠩) -  ⮣ ᯮ RMDIR.

   । ஢.

      ᮧ    㭨⮦      ⮤
ࠢ饣  䠩,  ⮤ ਯ 䠩. 
䠩   ⮤          ࠭稢 騩
   ⮫쪮 ⨬ ⮤.  H, ᪮ ६  
ᮧ  뢠,   ᮧ 室 ᯮ짮
 ⮤,   ண  㤥 ࠡ  ⨬ 䠩 
 ࠧ. K 䠩 ᮧ,   ⥬ 뢠   ⮬ 
 祣  뢠,   ᮮ⢥  ⠫-
  㫥    䠩,  ᪮ ࠭⢮ ⮬
䠩   ⢮.   ,    ᫥⥫
䠩 뢠    (      )  , 
ᯮ     㭪 ᮧ  䠩,  ⮬  䠩
१  㫥   ⥬  १뢠.

⮤ FCB:
   㭪 16H 뢠 21H ᮧ  뢠 䠩.  
FCB   䠩  ⥫    DS:DX 㪠뢠  .
⥬  맮 㭪.  ᬠਢ ⠫   ᫨  
ᮢ騩 ,   ᭮  ᯮ    
⠫,  ⮬  䠩 ४뢠   ⥬  .
⮡  ।७  ࠧ襭 䠩, ᭠砫 -
    稥 䠩  ⠪ , ᯮ  㭪  11H
뢠 21H [5.2.1].  ᫨    䠩  ⠪ ,  ᮧ-
   ⠫   AL 頥 0; ᫨ ⠫
,   AL 頥 FF. ⮡ ᢮ 䠩 ᯥ樠
ਡ (ਬ,  ⮫쪮  ⥭) [5.2.6] ᯮ
७ ࠢ騩   䠩  [5.3.5].   ⨨ 
䠩  樠   㫥    ⢮  
᪮ ࠭⢠.  ਬ:

;--- ᥣ 
FCB       DB    1,'MYFILE  DAT',25 DUP(0)

;---஢ઠ  ⠪ 䠩
   MOV  AH,11H         ;㭪 ᪠ 䠩
   LEA  DX,FCB         ;DS:DX 㪠뢠  FCB
   INT  21H            ;饬 䠩
   CMP  AL,0           ;AL = 0 ᫨ 䠩 
   JE   WARN_USER      ;᫨ ,  ᮮ頥  ⮬
;---ᮧ 䠩
   MOV  AH,16H         ; 㭪樨 ᮧ 䠩
   INT  21H            ;ᮧ 䠩

    ᮧ 䠩  ᯥ樠묨 ਡ⠬, ਬ -
ᮬ ⮫쪮  ⥭,  ᯮ짮 ७  ࠢ騩
 䠩.  ਡ⮢ 䠩 㦤  [5.2.6]. K 筮-
  FCB    7- , 稭    FFH,
⥬  ᫥  5  ⮢  ASCII  0,   ⥬ 㦭 
ਡ⮢.    ᮧ ⠭ 䠩 室, ⮡ 
⠭  1  ਡ⮢. ⮡  䠩,  
ਢ ਬ, :

FCB     DB     0FFH,5 DUP(0),2,1,'MYFILE  DAT',25 DUP(0)

   㭪  13H 뢠 21H 㭨⮦ 䠩.  H ⮡ DS:DX
㪠뢠   FCB  믮  㭪. ᫨  
䠩    㪠 ,   AL 頥 FF,  0.   
 䠩   ᯮ짮    ( ,  
窨)   ⮬ 砥   饭  㭪樨  
㤠 ᪮쪮 䠩.  ਬ:

;--- ᥣ 
FCB    DB     1,'MYFILE  DAT',25 DUP(0)

;---㤠塞 䠩
   MOV  AH,13H           ; 㭪樨 㤠 䠩
   LEA  DX,FCB           ;DS:DX 㪠뢠  FCB
   INT  21H              ;㤠塞 䠩
   CMP  AL,0FFH          ;஢ઠ  訡
   JE   DELETE_ERROR     ;室  ࠡ 訡

⮤ ਯ 䠩:
   㭪 3CH 뢠  21H  ᮧ    뢠   䠩
⮤  ਯ  䠩.  DS:DX  㪠뢠    ப,
   䠩     䠩    ⠭⭮ ଠ MS DOS,
   ⥫, ᫨ 䠩 室   ⥫  
㬮砭. ப   ⮬ ASCII 0.  ਡ-
⮢  䠩  [5.2.6]   CX (0 -   ଠ쭮  䠩).
⥬ 믮 㭪.    ᯥ譮  믮 䫠 ७
㤥 ࠢ ,   AX 㤥 饭   䠩.  
 訡  䫠  ७  ⠭  1,   AX
ᮤন  訡,    ࠢ 3, ᫨  
, 4 - ᫨ 㦥     䠩  5 - ᫨ -
    䠩 㦥   ᮬ ⮫쪮  ⥭.
⬥⨬,  ᫨  ⠫ 㦥   䠩  ⠪ ,
  騩  䠩 १  㫥 ,   ⥬  ᠬ
ࠧ蠥.     訡  ।⥫쭮 ᯮ짮-
 㭪 4EH 뢠 21H  ஢ન.

;--- ᥣ 
PATH     DB     'B:LEVEL1\LEVEL2\FILENAME.EXT',0

;---஢ઠ  䠩  ⠫
   MOV  AH,4EH         ;㭪 ᪠  ⠫
   LEA  DX,PATH        ;DS:DX 㪠뢠  
   INT  21H            ;஢ઠ  䠩
   JNC  WARN_USER      ;᫨ ,  ᮮ頥
;---ᮧ 䠩
   MOV  AH,3CH         ;㭪 ᮧ 䠩
   MOV  CX,0           ;ଠ ਡ
   INT  21H            ;ᮧ 䠩
   JC   OPEN_ERROR     ;室  ࠡ 訡
   MOV  HANDLE,AX      ;  䠩

     MS DOS 3.0   㭪  ᮧ 䠩 -
 ਯ 䠩.   㭪  5BH 뢠 21H. 
ࠡ⠥   筮 ⠪ ,   ᠭ 㭪 3CH,  -
祭 ⮣,    頥  ७   訡, 
  ࠡ뢠 訡 樨.   ᭥ 
[7.2.5].
    㭨⮦ 䠩  ⮤  ਯ  䠩 ᯮ
㭪  41H 뢠 21H.    DS:DX   㪠뢠  
ப,     䠩.     䠩  -
.  ⥬ 맮 㭪.  ᫨   䫠 ७
⠭,  㭪   믮;   ⮬ 砥 AL 㤥 -
ঠ  2,  ᫨ 䠩    5 - ᫨ ந諠  쪠  
᪥.  ⬥⨬,     ⮩ 㭪樨    㤠
䠩    ᮬ  ⮫쪮  ⥭;    ਡ  䠩
[5.2.6] ।  㤠.  ਬ:

;--- ᥣ 
PATH    DB    'B:LEVEL1\LEVEL2\FILENAME.EXT',0

;---㭨⮦ 䠩
   MOV  AH,41H         ; 㭪樨 㭨⮦
   LEA  DX,PATH        ;DS:DX 㪠뢠  
   INT  21H            ;㭨⮦ 䠩
   JC   DELETE_ERROR   ; ࠡ 訡

   MS DOS ᨨ 3.0    ᯥ樠  㭪 (5AH 뢠
21H)   ᮧ ६ "ﭭ" 䠩.   樮
⥬ ᠬ       䠩   ஢,  ⠪
䠩    ⠫.  ⮬ ᪫砥 猪 
  ᮧ  ६  䠩  㤥  ࠧ襭 騩
䠩   ᮢ騬 .   室 DS:DX  㪠뢠  
ப   ⠫,    ஬    ᮧ ६
䠩.  ப   ⭮ ᮩ ⮩. 
ਡ 䠩  CX (筮 0).     AX 㤥 ᮤঠ
  䠩,  ᫨  ⮫쪮 䫠 ७   ⠭,   ⮬
砥 AX ᮤন ଠ    訡. ந쭮  䠩
    ப .   㭪    
७  訡,    ⮫쪮  MS DOS 3.0;
   [7.2.5]. , ᮧ ⮩ 㭪樥  㭨-
⮦ ⮬᪨  -  ணࠬ   ᯮ짮 㭪
41H  (.   ).    ਬ ணࠬ ᮧ  ६
䠩,  ⥬ 㭨⮦ :

;--- ᥣ 
PATH   DB    'B:LEVEL1\LEVEL2\',12 DUP(0)

;---ᮧ ६ 䠩
   MOV  AH,5AH         ; 㭪樨
   LEA  DX,PATH        ;DS:DX 㪠뢠  
   INT  21H            ;ᮧ ६ 䠩
   JC   CREATION_ERROR ;室  ࠡ 訡
    .
    .
   MOV  AH,41H         ; 㭪樨
   LEA  DX,PATH        ;DS:DX 㪠뢠  
   INT  21H            ;㭨⮦ ६ 䠩
   JC   DELETION_ERROR ;室  ࠡ 訡
   5.3.3 ⨥/⨥ 䠩.

   "" 䠩 -    ᮧ  訥   ,
   ᮤঠ ଠ  䠩  㦨 ஬-
 ⠭樥 (஬), १      ।
 䠩  .  모 ᮪ ஢ ⮬᪨ ᮧ-
    ,     ᥬ  -  .  ⨨
䠩 ⠫ ஢   稥.  ᫨ 䠩 ,  
MS DOS  ଠ    ⠫    ࠧ   ᮧ
䠩.  ⥬,  ⨨ 䠩, ⥬  ଠ 
⠫. ⨥ 䠩 ⠪ 頥  ⥬  -
, 뫠   ⠢ ଠ.  ᫨   ஥
䠩 । 襭 ணࠬ,     ਢ  
.
   ᫨ ணࠬ ࠡ⠥   䠩,    ﭭ
  ᪮쪮  ६  䠩.  MS DOS
2.1    99 ६  䠩, 祬 
㬮砭 ⮫쪮 8 (    ᫮    MS DOS
FILES).  ᨪ     15  䠩. K-
 䠩      ࠬ஢  . ᪮
   䠩 ⢮ ⤥쭮 । ⥬,   䠩
뢠,      㯭    ணࠬ,  ᫨
㪠  ᫮  䠩  ᯮ  騩 .   
⮩ 稭    , ⠭ ᨬ쭮
⨬ ᫮  䠩  ⠪, ஥ ॡ,
  ᠭ ⮤.

   ᮪ ஢.

    ⨨ 䠩  ᨪ    ⠫  ᫨ 䠩
 ,  ᮧ  䠩    .   
ᯮᮡ     䠩   設⢥  砥
  ᯮᮡ . ⢥ ⫨稥 ⮨  ⮬,
    ᯮᮡ  ஢,   ६   -
   ⢥  .        
㪠  襩    ଠ樨. - ॡ
 䠩 , ᪮   ப,      祭 
窨.  -, ᫮, 稭  1, ᢠ 䠩, 
䨪樮 ,   ஬ 㣨   
  䠩.  -   㪠   楫 -
  䠩, ..      אַ   ᫥-
⥫쭮 㯠.    䠩 MYFILE.TXT   
᫥⥫ 䠩,  祬    䠩  㤥    2,
 

   OPEN "O",#2,"MYFILE.TXT"



   OPEN "MYFILE.TXT" FOR OUTPUT AS #2

⬥⨬,      2 ⭮   䠩 #2.
᫮   ,  ॢ室騬  ᫠ ࠧ襭 -
஢  䠩. ᫨ ন ६ ࠡ  
䠩,  ᫮    ࢠ  0  6.  
䠩  1  易⥫쭮 ᯮ짮 ࠭, 祬 䠩 
2.   㬮砭 ᨪ ⠭  ᫮ ஢ ࠢ 8, 
    ᫮  㣮  4  15.   䠩
 ᯮ ᨪ  ᢮ 㦤, ⮬  㬮砭
⮫쪮  4  䠩 㯭   /뢮.    ⮣  ⮡
⠭ ᫮  㯭  ஢  ᯮ ࠬ F: 
᪥  ᨪ.  Hਬ, ᫨    ᨪ  
BASICA/F:10,  㤥 ᮧ  10  ஢,    -
㯭  䠩 権.
   ன ࠬ, S:, ⠭ ࠧ ஢ 䠩.   
      ࠧ.   㬮砭  ࠧ 
128 ⮢,  ⨬ ࠧ  32767 ⮢.   䠩
᫥⥫쭮 㯠   ࠧ   ⠭ ࠢ-
 0,     .  䠩 אַ-
 㯠      ᨬ쭮 ࠧ .
⬥⨬,    ࠧ  ࠢ 512 ⠬  ࠧ 
⮦ 512 ,    ਢ    ᪮७  ᪮ 権.
K BASICA/S:512/F:10 뢠 10 ஢ ࠧ஬ 512 .
K 䠩 ॡ 188  ⮢    ࠧ , ⮬ 
⠪ 䨣樨 ॡ 7K .  ᫮ ஢  
 , 祬 ࠧ襭   䠩  DOS.

K஢ ଠ:
   ࢠ    OPEN ᯮ   㪢  -
祭   ⨯ 権  䠩.    -
:

   "O"    䠩  ᫥⥫ 㯮  뢮
   "I"    䠩  ᫥⥫ 㯮  
   "R"    䠩   㯮  /뢮

᫥⥫ 䠩    뢠,    
 ⥭  .  ⨯ , ᫥⥫ 䠩
뢠   ⥭,  ⥬  뢠  楫    
뢠.  ᫥ ⮣  室  ᥭ,  䠩
᭮ 뢠,  ⥯   뢮  뢠ﮡ⭮ 
,  ४뢠 ,  뫮 ᠭ   ᥪ , -
, 墠뢠  ᥪ.
    ⬥ ᪮쪮 ⮢,  ⭮  ⮩ ଥ
  OPEN.   䠩  ᮤঠ  ⥫, ᫨
䠩    ⥫    㬮砭  (..  ⥫, 
ண 饭 ᨪ).   䠩  ⠪ ᮤঠ  
䠩, 室饬   ⠫,  ਬ OPEN "I",#1,"A:\LE-
VEL1\LEVEL2\MYFILE.TXT". K஬ ⮣,    㪠
ࠧ      OPEN "R",#3,"MYFILE.TXT",52.  
⮬  砥     㤥   52    ᪮
࠭⢠.  ᫨     FIELDS    ᯮ  52
,  ⮪ ய.   ࠬ ⢥  -
  䠩 אַ  㯠.  設⢮  権  䠩
᫥⥫쭮 㯠  ॡ 㪠  , -
   ᪮ 䠩  樨, ⠭ ࠧ 
ࠢ  512 ⠬.         1  
32767 ⮢   㬮砭 ࠢ 128 ⠬.

ଠ ⢥ 몠:
    ଠ  OPEN  ᮢ襭   ᠬ, 
  ࢠ,  ᯮ  ᫮.   ⮣, ⮡ 
"O"  "I",      INPUT    OUTPUT ( 祪),
ਬ,  OPEN "FILENAME" FOR INPUT AS #1.   䠩   
㯮  㪠뢠   ࠬ:  OPEN "MYFILE.TXT" AS #2.
K஬ ⮣,   㪠 ० APPEND, ⮡  
稭   ᫥⥫쭮 䠩,  㭨⮦ 㦥 -
  : OPEN "B:MYFILE.TXT" FOR APPEND AS #3.  K   
ࢮ       㪠 易⥫쭠 
. H      LEN = ᫮.  H-
ਬ OPEN "C:MYFILE.TXT" AS #1  LEN  = 52 뢠 䠩 אַ
㯠  ﬨ  52 .
     ணࠬ      䠩    짮⥫
ணࠬ.  ⮡  ᯮ짮      䠩   OPEN
  ⠢  ப  䠩  ப, ᮤঠ-
饩  .  ⮬ 室 ஢ઠ  ࠢ쭮 -
 .

100 INPUT "Enter file name: ",F$  '砥  䠩
110 IF INSTR(F$,".") <> 0 THEN 130  '  ७?
120 IF LEN(F$) > 8 THEN 500 ELSE 150  ' 8 ᨬ?
130 IF LEN(F$) > 12 THEN 500      ' 12 ᨬ?
140 IF LEN(F$) - INSTR(F$,".") > 3 THEN 500 '⨯  3-
150 OPEN F$ FOR INPUT AS #1       '뢠 䠩
 .
 .
500 INPUT "Improper filename - enter another: ",F$
510 GOTO 110                 '᫨  ୮,  

⨥ 䠩:
   ⨥  䠩 ਢ쭮.  ⮡     䠩
 CLOSE. ⮡    ।  䠩   ᪮쪮
䠩    CLOSE #1  CLOSE #1, #3.      
䠩 । 襭  ணࠬ.   ᫨ ⮣  ᤥ,  
䠩   ,   ᠭ  .   ⬥-
⨬,    END,  NEW,  RESET,  SYSTEM   RUN 뢠 
 䠩,     .   䠩 ᥣ
  ᭮   ᯮ짮  㯭 
䠩.

   । ஢.

   MS  DOS ᯥ笢 ࠧ 㭪樨    
䠩,  ᨬ  ⮣ ᯮ짮  ணࠬ  -
   䠩 ⮤ ࠢ饣  䠩  ⮤  ਯ
䠩.         ⮫쪮 䠩, 
⢮  ⮣.   ᮧ  䠩  ᯥ-
樠쭠 㭪 [5.3.2].

⮤ FCB:
   㭪 0FH 뢠  21H  뢠  騩  䠩. 
  ᭠砫  ᮧ ࠢ騩  䠩,     
[5.3.5]. । ⨥ FCB   ᮤঠ ⮫쪮  䠩 
  ⥫ (0 =  㬮砭, 1 = A  ..).   DS:DX  
㪠뢠  FCB,  ⥬  믮 㭪.   AL
㤥  ᮤঠ  0, ᫨ 䠩 ᯥ譮   FF, ᫨ 䠩  
.  ᫨  㪠 ⥫ ᯮ 0,   㤥
  , ᮮ⢥騩 ⥫  㬮砭.
   쪮  ᫥ ⮣  䠩    ⠭ ࠧ
 ( 㬮砭 -  128  ),    ⠪   אַ
㯠   ⥪饩  ( 㦤  ࠧ, ⭮饬
   ᫥⥫     㯮).  ⨨
  ⥪饣     㫥,       ६
ଠ樥  ⠫.
   ⮡  䠩   ⮤ FCB,  ⠭ DS:DX
   FCB  맢 㭪 10H 뢠 21H.   㤠
ଠ  ࠧ 䠩,   ६ 㤥 ᠭ  -
,     AL 㤥 饭 0.   ᫨  䠩   㤥
㦥  ⠫   㤥    㣮 樨, 
  ᪥  ஢ ⮬ FF  AL.

;--- ᥣ 
FCB     DB     1,'FILENAMEEXT',25 DUP(0)

;---⨥ 䠩
   MOV  AH,0FH        ; 㭪樨
   LEA  DX,FCB        ;DS:DX 㪠뢠  FCB
   INT  21H           ;뢠 䠩
   CMP  AL,0          ;஢ઠ  訡
   JNE  OPEN_ERROR    ; ࠡ 訡
    .
    .
;---⨥ 䠩
   MOV  AH,10H        ; 㭪樨
   LEA  DX,FCB        ;DS:DX 㪠뢠  FCB
   INT  21H           ;뢠 䠩
   CMP  AL,0          ;஢ઠ  訡
   JNE  CLOSE_ERROR   ; ࠡ 訡

⮤ ਯ 䠩:
       䠩 ᯮ 㭪 3DH 뢠  21H.
DS:DX  㪠뢠  ப,      䠩, -
  ⥫, ᫨  室.   ப  
  63- ⮢   ᨬ ASCII 0.   AL 
   㯠, 祬 0 뢠 䠩   ⥭, 1  -
 ,  2 -  ⥭/.   AX 㤥 ᮤ-
 16-  䠩,  ஬ 䠩 ᫥⢨ -
.  㪠⥫  ⠭   砫 䠩.
  ⠭ ࠢ 1  -  易  ⥬,
 樨 אַ 㯠  ᯮ짮 ⮤ ਯ
䠩   ᯥ樠 ஢:  ᠬ  䠩   
㯮 ᬠਢ   ᫥⥫     ࠡ
     㭪樨.   㭪  뢠  -
, ⠪  ⠭ 䠩.    䫠 ७ ࠢ 0,
᫨ 䠩  ᯥ譮.   ⨢ 砥 䫠 ७ -
,  AX ᮤন 2  -  ᫨  䠩    , 4 - ᫨
ணࠬ    ᫨誮  䠩, 6 -  訡  
᪥  12 - ᫨ ࠢ쭮  㪠   㯠  AL.  -
:

;--- ᥣ 
PATH    DB    'A:LEVEL1\FILENAME.EXT',0

;---뢠 䠩  ⥭/
   MOV  AH,3DH         ; 㭪樨
   MOV  AL,2           ;뢠  ⥭/
   LEA  DX,PATH        ;DS:DX 㪠뢠  
   INT  21H            ;뢠 䠩
   JC   OPEN_ERROR     ;室  ࠡ 訡
   MOV  HANDLE,AX      ;࠭塞  䠩
   㭪  3EH  뢠 21H 뢠 䠩,   ⮤
ਯ 䠩.  H     䠩  BX  -
 㭪.    䫠 ७ ࠢ 0, ᫨   
浪,   ࠢ 1,  AX  =  6, ᫨ 㪠  
䠩.

;---⨥ 䠩
   MOV  AH,3EH       ; 㭪樨
   MOV  BX,HANDLE    ; 䠩
   INT  21H          ;뢠 䠩
   JC   CLOSE_ERROR  ;室  ࠡ 訡

   㭪 45H 뢠 21H ᮧ ன ਯ 䠩  
饣  ⮣  ਯ.     BX   㪠
騩  ,   AX 㤥 饭 .   㭪  46H
뢠 21H 뢠  ன  ਯ  (頥  CX) 
  䠩 ( ண  BX) ⠪ ࠧ,   
㤥 ⭮  ⮬  䠩  ன,   ᫥.
   5.3.4 २ 䠩;   樨 䠩  ⠫-
.

   २ 䠩      
11- ᨬ  ⠫.     ॢ ⠫
   ⠫   ७ᥭ  㣮  ⠫,
८। ⥬ ᠬ     䠩.       
२ 䠩, ⠪  ७   㣮 ⠫.

   ᮪ ஢.

    ᨪ 䠩 २뢠  NAME.   ⮩
    ⠪ ७ᥭ   㣮 ⠫. H
᭠砫 饥 ,  ⥬   䠩,   祭-
  窨, ਬ NAME  "OLDFILE.EXT"  AS "NEWFILE.EXT".  
⮬  砥  㤥 २ 䠩  ୥  ⠫.   
  䠩,  ᯮ   ⠫,  
ᯮ짮   䠩.  Hਬ, NAME "B:LEVEL1\OLDFILE.EXT"
AS "B:LEVEL1\NEWFILE.EXT"      䠩  ⠫ LE-
VEL1.
   ⬥⨬,     䠩   㪠  
.  ᫨    NAME  "B:LEVEL1\OLDFILE.EXT"  AS "NEWFI-
LE.EXT",   䠩 㤥  ⮫쪮 २,   ७ᥭ  
୥ ⠫.    ७  䠩     ⠫ 
㣮        NAME "A:SUBDIR1-
\OLDFILE.EXT" AS  "A:SUBDIR2\OLDFILE.EXT".    ⮤ 
७ 䠩  ᪠  .  ᪮ 䠩, ᯮ 
ࠧ ⠫       ,   訡
 ⪥ ७ 䠩  묨 .   ⮬ 砥
㤥 饭  訡 58 [5.4.8].

   । ஢.

   MS DOS  २뢠 䠩, ᯮ  ⮤ ࠢ-
饣  䠩, ⠪  ⮤ ਯ 䠩.   
 ਬ ⮫쪮  䠩,  ᯮ  ⥪饬 -
.

⮤ FCB:
   ᯮ 㭪 17H 뢠 21H. DS:DX  㪠뢠
  ࠢ騩   䠩.     䠩 
FCB,  稭   ᬥ饭 11H ( "१ࢭ"    ).
H   ᯮ짮  ᨬ  "?",  ⮬ 砥 ᨬ,
室騥    ,   .   ,
᫨   㦥 ⢮  ⠫,  AL 㤥 ࠢ FF,
  AL  =  0.   ਬ  䠩  ACCOUNTS.DAT    
DEBTS.DAT.

;--- ᥣ 
FCB       DB      'FILENAMEEXT',25 DUP(0)
NEWNAME   DB      'NEWNAME EXT',   ;11 ᨬ  

;---頥   䠩  ६ NEWNAME
      MOV  SI,OFFSET NEWNAME   ;DS:SI 㪠뢠   
      MOV  AX,SEG FCB          ;ES:DI 㪠뢠  FCB
      MOV  ES,AX               ;
      MOV  DI,OFFSET FCB       ;
      ADD  DI,11H              ;稭  ᬥ饭 11H
      MOV  CX,11               ; 䠩 ᮤন 11 ᨬ
REP   MOVSB                    ;७ᨬ 11 ⮢
      LEA  DX,FCB              ;DS:DX 㪠뢠  FCB
      MOV  AH,17H              ;㭪  
      INT  21H                 ;塞 
      CMP  AL,0FFH             ;஢ઠ  訡
      JE   RENAME_ERROR        ;室  ࠡ 訡

⮤ ਯ 䠩:
   㭪 56H 뢠 21H २뢠  ६頥 䠩.
DS:DX  㪠뢠  ப,     २㥬-
  䠩  ( 63- ᨬ)   ᨬ  ASCII  0.
ES:DI  㪠뢠   ப,     
 䠩.    ⥫,  ᫨    , 
ᮢ.   ᫨   ࠧ,  䠩 ७   㣮
⠫.  ⮡ ७ 䠩  २   -
ன ப 㪠   ᠬ ,  㣮 .  ,
᫨ ந諠 訡,    ⠭  䫠  ७,  AX
㤥 ᮤঠ 3 - ᫨   ⥩  , 5 -   訡
 ᪥  17 -  ⪥  ७  ࠧ묨 ⥫ﬨ.
  ਬ  䠩 ACCOUNTS.DAT ७  ⠫ GAINS  
⠫ LOSSES.

;--- ᥣ 
OLDPATH   DB   'A:GAINS\ACCOUNTS.DAT',0
NEWPATH   DB   'A:LOSSES\ACCOUNTS.DAT',0

;---  䠩
   LEA  DX,OLDPATH          ;DS:DX 㪠뢠   
   MOV  AX,SEG NEWPATH      ;ES:DI 㪠뢠   
   MOV  ES,AX               ;
   MOV  DI,OFFSET NEWPATH   ;
   MOV  AH,56H              ; 㭪樨
   INT  21H                 ;७ᨬ 䠩
   JC   ERROR_ROUTINE       ;室  ࠡ 訡
   5.3.5 ⮢  䠩 .

   모 ᮪ ஢, ⠪   ᨪ, 믮 ⮢-
⥫ ࠡ  䠩 権 ⮬᪨.   ண-
ࠬ  몥 ᥬ   筮  ࠡ । ⥬ 
ᮧ   䠩. ॡ ⫨,  ᨬ 
⮣ ᯮ   㯠  䠩 ⮤ ࠢ饣 
䠩  ⮤ ਯ 䠩.    ⮤  -
 ப   ࠬ஢,  㪠뢠  䠩   
७  .  MS DOS ।⠢ ࠧ   㭪権
⥭/   ⮤.

   । ஢.

⮤ ࠢ饣  䠩:
    ⮤ 㯠   䠩  ॡ,  ⮡   ᮧ 
ࠬ஢,   ࢮ砫쭮  ᮤঠ ⠪ ଠ-
,      䠩    ⠫.   FCB 
  ,  , ⮫쪮      
; MS DOS  設⢮  ⠫  ଠ-
樥 ᫥ ⮣,  䠩 뢠.  ⬥⨬,   砫 FCB
  ᯥ樠쭮   ᮧ ७ FCB,
  .   FCB:
H⥫ (DB)      ᫮,   ।饥      ⥫
                     㤥 ᪠  䠩,  1  =  A, 2 = B  ..
                     ᫨  㪠  0,     ⥫  
                     㬮砭,  ⥬ ⥬  0  
                     ⮣ ⥫.

  ७     쬨⭮    䠩,  ࠢ   
(11 ⮢)                ஡
                     (ASCII 32), ᫨   8 ⮢.   
                     ⭮   塠⭮ ७. 
                         窠.

騩  (DW)    DOS ࣠ 䠩   128 ᥩ,
                     ஭㬥஢  0   127. Hਬ, -
                     ⥬ ᬠਢ  #129 䠩 אַ
                     㯠,   #0   #1 ( 
                      ᥩ, ⠪       0).
                      䠩    ᯥ樠  ࠭⥫ 
                           ᥩ.     ⮣
                     ᬥ饭      ᥩ  
                     室    ,   ⠭-
                      ᫥騬  FCB.

  (DW)    㭪樨 MS DOS, 易   ⥭ 
                       䠩, ࠡ  ନ  .
                       䠩  אַ  㯠  ,  ⮡
                     ࠧ    ⠭ ࠢ ࠧ
                     ᥩ, 饭   䠩.   ᫥-
                     ⥫ 䠩 ࠧ   ⮫ ,
                      쪨  ࠧ  㤥 -
                       ᪮ 樨.   ᪮  ࠧ
                     ᥪ 512 ⮢,   ⨬ 
                     ࠧ  512 ⮢.  ⥬ ⮬-
                     ᪨  頥  祭    㬮砭 80H
                     (128)       ⨨ 䠩-
                     .  ⮬   ⠭  
                     ᫥  䠩.

 䠩 (DD)     㪠뢠  筮  . 
                        ⥬  ⨨ 䠩-
                     .

 䠩 (DW)       뢠 ⥬  ⨨ FCB.
                      ଠ ਢ  [5.2.5].

  (DB)      ᯮ   ᮢ⭮  
                      ⥪饣 .  㬥  0
                      127.   אַ 㯠 #200, ᯮ-
                           1,     ⥪饩
                      ࠢ 71 ((200 - 128) - 1).

H  -     ⮣, ⮡  ॡ   ணࠬ,
 㯠 (DD)    ⮡  﫠 ⥪騥 祭  
                        䠩  אַ  㯠,  MS DOS
                         ࠡ ᠬ.      
                     䠩  אַ  㯠    
                           4-塠⭮  .   
                     믮 樨  䠩 אַ 㯠
                     MS DOS  㦭 祭   ⥪-
                     饣   ⥪饩  .   , 
                     訩  ᯮ  襩 祩.

   ﬨ ⥪饩 , ⥪饣    
אַ 㯠   . 5-3.
   ⥩訩  ᮧ FCB    ६  ᥣ 
ணࠬ.   ᫨  뢠 䠩  ,    
  אַ ᠭ    .  ⮪  樠-
 ⠬ ASCII 0.  쪮 ᫥ ⮣  FCB 㤥  (
 㭪樨 0FH 뢠  21H,      [5.3.3]) 
    ⠫ ଠ. ⬥⨬,  FCB 
ࠡ     ᫥⥫  䠩      128
⮢   ॡ 쭥 ਣ⮢.  ᫥ ᮧ  FCB
쭥訥 樨 ॡ, ⮡ DS:DX 㪠뢠  . -
⥩ ଠ  ⠪:

FCB      DB     1,'FILENAMEEXT',25 DUP(0)

 ⠪ ᮧ FCB  :

FCB           STRUC
DRIVE_NUM     DB     0
FILE_NAME     DB     8 DUP(?)
FILE_EXT      DB     3 DUP(?)
BLOCK_NUM     DW     0
RECORD_SIZE   DW     0
FILE_SIZE     DD     0
FILE_DATE     DW     0
RESERVED      DB     10 DUP(0)
CURRENT_REC   DB     0
RANDOM_REC    DD     0
FCB           ENDS

 ⠪ 室 ணࠬ     FCB, ᪮-
 ⪨    .   ᨬ  ⨯ 䠩-
 権    뢠 ᫥騥 ࠭祭:

   1.     䠩 אַ 㯠    ⠭  ࠧ
       אַ 㯠.
   2.  㯠    ᫥⥫  䠩  砫  
⠭  ⮫쪮 ࠧ ,  ᫮,   樠-
஢  ⥪饣   ⥪饩    0 ( 㫨
  FCB,  ᪫祭  ⥫  䠩).   ⨨
 ࠧ  㤥 ⠭ ࠢ 128, ᫨  -
 ਢ ,  쭥 ⮢  㦭.
   3.     㯠  ᫥⥫쭮 䠩  ।    
   ⠭   ⥪饣    ⥪饩 
( ⮬ 砥  ணࠬ  㤥 ந ᫥
ᠬ).

   䨪 ணࠬ ᥣ [1.3.0]  筮 讥
,  ⮡ ᮤঠ ࠢ騩  䠩.    ࠭⢮
।⠢    ணࠬ, ⮬  ᯮ짮-
 , ᮡ  ணࠬ ⨯ .COM.   FCB  ᯮ
 ᬥ饭 5CH  䨪 ணࠬ  ᥣ.   ணࠬ
COM  ᯮ  ORG  ᮧ FCB ᫥騬  ࠧ  (
祭 ⠪ ᯮ㥬  㬮砭 DTA,  㤥 -
 ):
;--- 砫  ᥣ
             ORG  5CH
FCB          LABEL   BYTE
DRIVE_NUM    DB   0
FILE_NAME    DB   8 DUP(?)
FILE_EXT     DB   3 DUP(?)
BLOCK_NUM    DW   0
RECORD_SIZE  DW   0
FILE_SIZE    DD   0
FILE_DATE    DW   0
RESERVED     DB   10 DUP(0)
CURRENT_REC  DB   0
RANDOM_REC   DD   0
             ORG  80H
DTA          LABEL   BYTE
             ORG  100H
             ASSUME CS:CSEG, DS:DSEG, SS:SSEG
              ...

   ७ FCB ᯮ  ᮧ  㯠  䠩,
饬 ᯥ樠 ਡ, ਬ,   ⠭ 䠩 
䠩 ⮫쪮  ⥭.   ਡ ᭥  [5.2.6].
७ FCB  7  ⮢  ,  祬  7 ⮢ ।-
 筮 .    ࠢ FF,  㪠뢠  
ᯥ樠 .   ᫥ 5 ⮢ ASCII 0,  ⥬ 
ਡ⮢.   ⨨ 䠩  ᯮ짮 ७  FCB
DS:DX  㪠뢠    ⥫ ᥬ ⮢, 
    ⥫,   筮 FCB.   筠  ଠ,
 2 - 祭  ਡ⮢,  1 - 㪠뢠  ⥫:

FCB     DB     0FFH, 5 DUP(0),2,1,'FILENAMEEXT',25 DUP(0)

⮤ ਯ 䠩:
    ⮤ ॡ 襩 ⮢  祬 ⮤ FCB.  
  ⮫쪮 ᮧ ப, 㪠뢠   䠩,  ⠪
  ⠭  DOS. Hਬ B:COMPILE\UTILITY\PASCAL
㪠뢠  䠩 PASCAL  ⠫ UTILITY. ப ࠭祭
  63 ᨬ,    ⥫.   ⨨ 䠩
(  ᯮ짮  㭪樨 3DH 뢠 21H -  .   [5.3.3]),
DS:DX  㪠뢠    ⮩ ப. ⥬ 믮-
    ࠡ   ப  宦  䠩,   ᫥
⮣  䠩    頥  16- 䨪樮
 䠩  AX.  뢠 ஬ 䠩   ᯮ 
 ᫥   ⨬ 䠩.

 :
   ணࠬ  㪠   , 㤠  -
  ਭ   㤠   뢮.   
࠭⢮     ६ ஬,  㤥
ᯮ짮 묨  ஬筠 ⠭.    -
࠭⢮    ⥬ ⮬,    ॠ쭮 ࠡ-
뢠.  筮 ६  ⠭ ࠧ஬  
  뢠 㤮        ப ६ 
ᥣ  ,    ᤥ  ਢ ਬ.   
㣮 ஭, 訥 ࠡ稥      ।-
     ⮤ । ,  ।⠢塞
樮 ⥬ [1.3.1].    ᮧ, ਬ, 
  ࠧ஬  10000   ᥣ  ᤥ ணࠬ
 ᪥  10000  ,  ᮢ襭 㦭.
     ᯮ㥬  ⮤ FCB 㯠   䠩  뢠
   ᪮  DTA. H   㪠뢠 ᫮
㪠⥫,  ࠭ 樮 ⥬   
   襩  ணࠬ.    ଥ  㬥樨 
㪠⥫  DTA  ᠬ 뢠 DTA. ᪮ 㪠 ⮫쪮
砫 ,    蠥    ਫ-
   DTA, ⮬  ᠬ  ᫥, ⮡ ⮣   ந-
諮. ⥫  DTA  ⠭ ᯥ樠쭮 㭪樥 DOS
  ᫥ ⮣   ⠭  㭪樨 ⥭/ ⮬-
᪨   .     砥,    ᠬ 㭪樨 
 ᮤঠ  ६ .
   K DTA ᮢ   ,  ன ࠡ뢠-
 ,  室 ﭭ  DTA,  ⥬ ⮡ 䠩-
 樨     ࠧ ࠣ⠬ .
 ⮩ 樨  ᫥⥫쭮  ⥭    樨
⥭     㯮 ⥬ ⮬᪨ -
頥  DTA    㣮.  H室 ⢥ ࠭-
,  筮   ᫠ ᥩ,      ॡ
ணࠬ. DTA      ࠧ     ᥣ
(64K).
    ⠭ 㪠⥫  DTA ᯮ 㭪 1AH  -
 21H. DS:DX    㪠뢠      DTA,  ⥬
 믮 㭪.    㦭.  ਬ:

;--- ᥣ 
DTA      256 DUP (?)

;---⠭ DTA
   LEA  DX,DTA      ;DS:DX 㪠뢠  DTA
   MOV  AH,1AH      ;㭪 ⠭ DTA
   INT  21H         ;⠭ DTA

   㭪 2FH 뢠 21H ᮮ頥 ⥪ ⠭ 㪠-
 DTA.     室 ॣ஢.   ES:BX ᮤঠ
ᥣ  ᬥ饭 DTA.
   䨪  ணࠬ  ᥣ  [1.3.0]  ᯥ稢  
ணࠬ 128-  ஥  DTA, 稭  ᬥ饭 80H 
 9FH.    ᯮ짮   墠⪥ . ࢮ-
砫쭮 㪠⥫  DTA  㪠뢠     , ⮬
᫨   㤥 ᯮ짮 ,   㦤 ⠭ 㪠-
⥫.     㬮砭  ᮡ  㤮 ᯮ짮 
COM  䠩,   DS 㪠뢠  砫  䨪  ணࠬ
ᥣ.  䠩 EXE  ॡ 让 
, ⮡ ᯮ짮 DTA  㬮砭.  ⬥⨬,   -
 ⥪饩 ⠭ 㪠⥫  DTA   ᯮ짮
㭪  2FH 뢠 21H.     室 ॣ஢,   
室 ES:BX 㪠뢠  DTA.
   ⥫  DTA   ᯮ   㯥  䠩 ⮤
ਯ 䠩. 㭪樨 ⥭    ᥣ ᮤ-
 ,  ஬ ᯮ  .    襩
ᮢ    । ⮣,       ।
१ ६     ।⢥     ,  
 ᯮ짮.
   5.3.6  ଠ樨  ப.

     ᪥  ணࠬ  짮⥫ 
 ଠ    ப, 筮 㪠뢠 
䠩,   ணࠬ 㤥 ࠡ.  ଠ -
  128-  ,  稭    ᬥ饭  80H 
䨪  ணࠬ ᥣ [1.3.0].  (   ᯮ-
  DTA  㬮砭,    㦤  [5.3.5].) 
 ᮤন  ப,  ⥬  ᠬ ப.
     ணࠬ, ᯮ ⮤ ਯ 䠩  ࠡ
 䠩,  䠩,      ப,  
 . ॡ, ⮡ 짮⥫ ணࠬ ᯮ-
 ⠭ ⮪ MS DOS  ப .   㣮 -
஭, ࠢ騩  䠩 ॡ, ⮡ ப  'A:ACCT.-
BAK' 뫠 ८ࠧ     1,'ACCT     BAK'.  MS  DOS 
ᯥ樠  㭪,  믮 ⠪ ८ࠧ  
ࢮ 樥 ଠ樨,  ᫥饩     ணࠬ  -
  ப.   楤 뢠 ࠧ஬ ப  (par-
sing).

   । ஢.

    䠩   ࢮ  ଠ樥, ᫥饩  
㦠 ணࠬ.    ⤥   ணࠬ-
   ᫥ ᨬ : .  ; , = + ⠡樥  ஡-
. K  䠩   㪠   ᨬ : . ;
, = + \ < > | / " [ ] ⠡樥, ஡    ࠢ-
 ᨬ ( ASCII  1  31).
   㭪  29H  뢠 21H ந  ࠧ    䠩.
DS:SI   㪠뢠  ᬥ饭 81H  PSP.  ,   
㧪  ணࠬ   DS, ⠪  ES 㪠뢠    砫  PSP.
ES:DI  㪠뢠     ,  㤥 㦨
ࠢ騬    䠩. ⠭ ⮢  AL ।-
  㤥 믮  ࠧઠ.   祭 ⮫쪮 
0-3:

    0   1 = 砫 ࠭⥫ 
       1   1 = , 騩 ⥫, ⠭
                FCB, ⮫쪮 ᫨  㪠   ப
       2   1 =  䠩  FCB  ⮫쪮 ᫨ 
               ப ᮤন  䠩
       3   1 = ७ 䠩  FCB  ⮫쪮 ᫨ -
                ப ᮤন ७ 䠩

᫥  ⮣   ଠ ⠭, ணࠬ  -
 㭪.  ᫨    ப   㪠 ⥫, 
  ⥫   㬮砭.  ᫨    ७
䠩,  ।,    ஡쭮 (ASCII 32).  ᫨ 
 䠩 㪠 窠,     㦭  ᫮
⥫       䠩 FCB.  AL 頥 1,
᫨   䠩 ᮤন *  ?  FF, ᫨ 㪠  -
⥫.
     DS:SI 㪠뢠      ᨬ, ᫥騩 
  䠩,  ஥ 稭  ᬥ饭  81H.   쭥
ଠ, ᮤঠ      ப  ஢-
  襩 ணࠬ.  ES:DI 㪠뢠      
ନ஢ FCB.  ᫨    FCB    ᮧ ⨬ 
䠩,  ᮤন ES:[DI]+1 ࠢ ஡.  ਬ, 
頥    FCB  PSP, 稭  ᬥ饭 5CH:
;---ࠧࠥ  ப, ᮧ FCB  ᬥ饭 5CH
;--- PSP
   MOV  AH,29H          ;
   MOV  SI,81H          ;
   MOV  DI,5CH          ;
   MOV  AL,1111B        ;
   INT  21H             ;
   MOV  AL,ES:[DI]+1    ;
   CMP  AL,32           ;
   JE   ERROR_ROUTINE   ;
                   4. ⥭   䠩.

     ᭮ ⮤ 㯠  䠩 - ᫥⥫
 אַ.   ᫨⥫쭮    ᯮ -
  "᫥⥫"  䠩  䠩 "אַ 㯠", ᠬ  
ᥡ 䠩 ࠭  ᪥ :   뢭 ᫥-
⥫쭮  ⮢.  H  ⠫   - 㣮  
 , 㪠뢠饣,   䠩  ᫥-
⥫  䠩 אַ 㯠.  쭮   ⨯  䠩
ࠧ   ᯮ        ⮤ 㯠 
. K  䠩 אַ 㯠   ᫥⥫-
 ,     ᫥⥫쭮  䠩 - אַ ,
 ।  稭  , ᮡ  ஬ 砥.
   ᫥⥫  䠩       -
, ᨬ   ,  ࠧ    ன ᨬ-
,  ᭠砫  ⮬  ⪨ (ASCII 13),   ⥬  ॢ
ப (ASCII  10).   모  ᮪  ஢,  ⠪  ᨪ,
⠢   ᨬ ⮬᪨,   ६  ணࠬ 
ᥬ  ᠬ     ⠢  ᨬ ᫥
  ६  䠩.   ᫥⥫ 䠩 
࠭  ᫠, ⠪  ப. ப ॡ   
  ᨬ ப. ᫠  ᮣ襭 뢠  -
 ,            ᫮ . 
ࠧ  ᨪ 뢠 祭 "128"   ப    
,  ணࠬ    ᥬ      ᫮ 
 塠⭮ 楫   ⭮  -  ।-
 ⥬,   ୮ ⥭ 䠩 ணࠬ  -
 ᯮ㥬 ଠ.   ᮬ⨬ ४ -
 ᫠   ப.
   H易⥫쭮, ⮡   ᫮  ப 뫮 ⤥ ன
 ⪨/ॢ ப,  ᫨   饭,  
ணࠬ  ᯥ ᯮᮡ ⤥ . Hਬ, 10
楫 ᥫ   ᠭ  20-  .  
㣮 ஭, 祭 訥  , ⠪  ࠣ-
  ⥪,    ࠧ  ᪮쪮  ⮢  
(⠭ ⥪⮢ 䠩 ।⠢  ᥡ 㬥, ࠧ-
    ப 㤮  ࠧ,  ᠭ  ᫥⥫쭮).
᪮     ६  ,  
㧭    䠩 ᯮ । .  ⮬ 
⮣ ⮡   㦭    ணࠬ    䠩,
稭  砫   뢠  㦭  ᫮    -
/ॢ ப.   ⮩ 稭 䠩 ⠪ ଠ 뢠
᫥⥫묨.  K ࠢ   ᪠   । 
⠪ 䠩.
     אַ 㯠 ࠭ ⢮ 䨪஢  
  .  ᫨  -    
  ⢥  ࠭⢮,  ⮪   ஡.
᫨    10  ⮢,     ᬮ-
  ࠧ 50- , ᪮  ᫨    -
  491-  䠩 (..    #490, ᪮ 
稭   0).  K ࠢ 易  ⮢  㯯-
  . K   ᮤন ᪮쪮 , 
ᮧ    ஢ ⮢, 稭     
.  Hਬ,     ,   .
⢥騥    2, 3  5 ⮢.    
ࠧ    10  ⮢.    אַ 㯠 
    ⠪ ᥩ.  K   ᫥  -
।⢥  ।饩   直 ࠭⥫, ⠪ 
    ⪨/ॢ ப, ᯮ㥬   ᫥-
⥫ 䠩.   ⮬      浪 
     74,   73    뫠  ᠭ
( ⮬  73  ⢥  ᪮  ࠭⢮   㤥
ᮤঠ   ,  砩   ⮬ ᥪ, 
஬ ⢥   ⮩ ).   ⫨稨  ᫥-
⥫ 䠩 䠩 אַ 㯠   ᪥.   
 ⮫쪮 । ,  묨  ࠡ 
  ६.
   K    אַ 㯠  䠩  ᯮ  ࠢ騩
 䠩,  ⥬ ᮮ頥 ࠧ  䠩 ( 
 䠩    ).   ண-
ࠬ      ,   MS DOS 筮 ᫨
   ᯮ  ᪥.  ࠡ  䠩 אַ
㯠 ⮤ ਯ 䠩 ணࠬ  ᠬ 
 ॡ㥬 .
   ⥬ ࠭ 䠩 㪠⥫    䠩. 
㪠뢠  n-  䠩, ।   䠩,  -
  㤥  稭 ᫥  ⥭  .   
᫥⥫쭮 樨 १  䠩 㪠⥫ ࢮ-
砫쭮 ⠭  砫 䠩  ﭭ ᤢ  
 ⮣,            뢠  䠩.
K     ᫥⥫쭮 䠩,   䠩
㪠⥫ ࢮ砫쭮 ⠭   䠩.   -
㯥       䠩 אַ  㯠    
   ᬥ饭 ⭮⥫쭮 砫 䠩  㪠⥫
⠭  ࠢ  ⮬ 祭; ⥬ 㦭   -
⠥  . 筮  䠩 㪠⥫ ᫥ ⥬,
 ணࠬ  ᠬ ࠢ   㫨஢  㪠-
⥫  ᢮ ᯥ樠 㦤.
   ⢥ ਬ஬  ஢   ࠧ 
⥭/    ᥪ.  ⥭    楫  䠩
⮨   ᫥⥫쭮  ⠪  ⥭    ᥩ 
ᥪ,  ணࠬ  奬 ஫  H    
 ᥪ.  ⠡  䠩 樨 祭 ᫮
  ⮬  ஢,  ᫥      ࠧ஢  䠩
COMMAND.COM. , 稢 㦤 権  ஢, 
⠪  ଠ  ⠡ ࠧ饭 䠩 [5.1.1]   -
 ⠫ [5.2.1]     ।⠢  ࠡ⠥ -
 樮 ⥬.
   5.4.1  ணࠬ஢ ஫ H 765  奬 -
 㯠   8237.

   奬 ஫ H 765   NEC ࠢ ஬ 
  ⥫  ᪥  ࠡ뢠  ⮪  ,
ࠢ塞    ᪮ ᥪ஢.    ஫, -
    ᪮,  㦨   
H.  ᪫祭 砥, 易  ⮩  ஢,
ணࠬ⠬  室 ணࠬ஢ 奬 ஫-
 H אַ. 楤 ࠡ   ᪠, ।⠢塞 DOS 
BIOS 䥪⨢  㤮, ஬ ⮣, 祭 ᪮  ᢮
ᮡ⢥  楤,  ᪮  訡     ࠧ
᪮ ⠫  ⠡ ࠧ饭 䠩,  맮  -
 ࠧ襭 ଠ樨  ᪥.
   H᫥饥  㦤  㦨  楫    ⮫쪮 饥
।⠢.   ⨭  ROM-BIOS, ਢ     
孨᪮ 㪮⢠  MS DOS, ᮤন  ⥫쭮 ࠧ-
⠭  楤    ଠ஢ ᪥,  ⥭   
ᥪ஢,  ⠪    祭   ⥫. ᫥
⮣,   ᢮ ਢ  ਠ,  楤-
 ROM-BIOS  த 襣 ࠧ   権
 ᪠   ஢.  ॡ ⠪ 㬥 
奬 ஫ H 8272A  Intel,  筠
奬  NEC.    㬥樨 ᫥ 뢠-
, 㥬 ஫஬ H,    ६   㬥-
樨    IBM PC ⮣ ᯨ᪠ .  ଠ  奬  8272A
     ஬  ⮬  ࠢ筨    ⠬
⥬ (Microsystem Components Handbook).
   K஫ H  믮 15 権,    
 㦤 ⮫쪮 : 樨 ᪠  ⥭  
  ᥪ.    ⮣   ࠡ    
믮   ⠢ ,   ᫮,   
㤥  㯮 ଠ.  ⥭ 䠩 ⮨   ᪥
   ⠫  [5.2.1],  ।      ᪥ 
 ⠡ ࠧ饭 䠩 [5.1.1]  ⥬  権
⥭  ᥪ.  楤 砥 6 蠣:

1. 祭   ⪮ ,    .
2. 믮 樨 ᪠   뢠, 㪠뢠饣
 襭 ⮩ 樨.
3. 樠 奬 DMA  뫪   .
4. 뫪  ⥭ ஫ H   뢠,
㪠뢠饣,  뫪  襭.
5. 祭 ଠ樨   ஫ H.
6. 몫祭 .

   K஫  H  ࠡ⠥ १    /뢮.   H
ᠬ  奬   ,  祬  ॣ,  
  設    ⢫ १  .     
 ⠪:

   3F2H          ॣ ஢ 뢮
   3F4H          ॣ 
   3F5H          ॣ 

    蠣 ⮨   㯥    ॣ  ஢  뢮.
祭  ⮢ ᫥饥:
    1-0     롮 ⥫,  00 = A
                                      01 = B
                                      10 = C
                                      11 = D
          2     0 =  ஫ H
          3     1 = ࠧ襭 뢠 FDC  㯠 DMA
        7-4     1 = 祭  ⥫ D-A ( 4 = A)

 ॣ ⮫쪮  , ⮬ 室   
  .  ਢ ਬ ᯮ ⥫
A, ⮬ 楯窠 ⮢  룫拉 00011100.    -
 ⮢ 롨ࠥ ⥫ A, ࠭ ⠭  2,
ࠧ騩 ࠡ  H  砥  ⥫ A. H -
뢠  2  , ⠪   ⮬ 砥  ਤ ந-
  ४஢  ⥫,  ⢨,  ஥  室
祭 ।.
   "४஢" ⥫ ࠧ㬥    
 㫥 ஦.    ⢫ 뫪 ⮩
᫥⥫쭮  ஫  H.  K஫ H -
ࠢ ⥪饩 樥 ,      -
 樨  ᫥    砫쭮  ⠭   㫥
஦.   K ஫ H 뢠,    
 2 ॣ  ஢  뢮,    祭 ⥪饩 樨
  ⠭   , ᨬ   ⮣,    
஦ 室    ᠬ  ,   室
४஢. 筮  ஫ H ந ⮫쪮
 砥 ⠪ 쥧 訡  ⥫,  ᫥ ன -
⭮ ⥪饥 ﭨ ஫ H  ⥫.
   ⬥⨬,    롮 ⥫  祭    -  
⤥ ⢨. K஫  H     ⮫쪮 
  ⥫    ६,      
祭  ᪮쪨.      ⠢ 祭묨 
᪮쪮  ᥪ㭤  ᫥  襭   묨,   
᫥饣 㯠  ⥫.   ⥣  -
    ६   ୮      
᪮.  H⨢,   ⠢ ﭭ 祭,
⠪   ਢ  ०६  ᪥.
     奬  ஫ H ࠧ    䠧:
 䠧, 䠧 믮    䠧  १.  
䠧    ⮢ 뫠  ॣ .  ᫥-
⥫쭮 ⮢ ண 䨪஢      
. ⥬ ஫ H 믮     ६ 
室  䠧 믮.  H,   ६ 䠧 १,
 ⮢  뢠  ॣ .   ⮬ -
⥫쭮, ⮡  뫮 訡  ᫥ ।  뢠-
   ॣ   䠧   १.
   ᫮  ⮢    १   ᨬ  
믮塞 ஫஬  ᪮  樨.  孨᪮ 㪮-
⢥  IBM PC ਢ    15 権.   
    ,  ।騬  ॡ㥬  .
H   ᮤন   5-       
      ஢ 筠 ଠ.
  設⢥ 砥 ன   ᮤন  -
⥫ (0-3)         (0  1)  
2,  ⠫   ஫஬ H.   -
樨 ᪠ ॡ  ⥫쭮  ⮫쪮  ,  -
஬   ᮤঠ   ஦.  ⥭    
ᥪ ॡ  ᥬ  ⥫    ⮢, 
    .   쥣   ᮤঠ
⥪騩  ஦,         ᥪ.  
᫥   , ᮤঠ騥 孨 ଠ, -
  ஫ H.
     ⮩  孨᪮  ଠ樨  ⭮    
⮢  ᥪ, ஥   0  128, 1  256,  2
 512  3  1024. K筮  ᪥,  ᮧ  MS DOS 
ᥪ ࠧ஬ 512 . ⥬    ஦ (EOT),
  ᨬ  ᥪ   樫;  -
  ࠢ 9  ᪥  360K.  H,   騩
 ᤢ (GPL, ࠢ 2AH)     (DTL, ࠢ FFH).
孨᪮  㪮⢮   IBM PC ᮤন  ⠡,   ன
 㣨 宦  ࠬ,  ਬ  ,  -
  ଠ஢ ᪠.  MS DOS ࠭  孨-
᪨ ࠬ   ,    ᯥ樠쭮  ⠡  ࠬ஢,
뢠  ᪠ (disk base).   뢠 1EH 㪠-
   ⠡.    祭  ࠭  ⮬ 浪, 
஬      । ஫ H,  稭  
ᬥ饭 3.  ᫥饩 ⠡   ᫥⥫-
   権, ᯮ㥬  ਢ  ਬ.
 楯窠 ⮢  X  祭 , 祭  -
⢥,  १ H -  ,  १ DD -  -
.

      #    㭪           ⠭   0
                                           ஦ 15, ᥪ 1

            1        00001111           1FH
                 2        ⥫          00H
                        XXXXXHDD

   ⥭        1        01100110           66H
   ᥪ       2        ⥫          00H
                        XXXXXHDD
                 3       ஦                 0FH
                 4                        00H
                 5       ᥪ                 01H
                 6      ⮢  ᥪ              02H
                 7       ஦                 09H
                 8       ᤢ                  1AH
                 9                         FFH

           1        01000101           45H
   ᥪ     2-9       ,    ⥭ ᥪ

       㢥७,  ஫ H ⮢ ०  祬
 諥  ⠥     ॣ  .   7  6
ॣ  ।⠢  ଠ.  祭 ⮢
⮣ ॣ:

 3-0    1 = ⥫ D-A  ० ᪠
       4    1 = ஫ H 믮  ⥭/
       5    1 = ஫ H   ० DMA
       6    1 = ॣ  ஫ H ⮢  ਥ
                
            0 = ⮢  뫪 
       7    1 = ஫ H ⮢  뫪  ਥ 
। 砫  ᪮  権    ஢,    6
ࠢ  ,   ஫ H  .  ᫨
  뫪 ,  ந諠 訡. K  
뫠  ॣ ,   7 ॣ  ⠭
ࠢ ; த ⥭ ॣ    ,   
 ⭮  1,  ⥬ 뫠 ᫥騩  .
筮, ஢     । ⥭  -
   䠧 १.  Hਢ ਬ 砥  
楤ࠬ,  믮  㭪樨.
   K  ᪠ 襭,  ஫ H 樨
뢠 6, 뢠  H.  ⠪    㧭
 砭 樨 ᪠  ஢ ॣ ,  ਬ
    ࠡ⪨ 뢠.  K ந室 -
뢠,  ࠡ稪 뢠  BIOS ⠭  7 
  ᪠    BIOS, ᯮ    
0040:003E.  ⢥ १ ࠡ⪨ 뢠. 
஢     ,   7  㤥 ⠭, 
⥬ 室  ᫥饬 蠣 樨 ⥭ ᥪ.
   騩 蠣 ⮨   樠樨 奨 אַ -
㯠     8237.   奬     
  ਩묨  ன⢠    ,  ࠡ⮩, ன
  ⠪ .  H ᠬ ,  PCjr,  
奬 DMA, ஫ H  뫠   אַ  -
,     ᢮ । 뫠    .   ⮢
   ⭠  ⮩  ,   뫪
    뢠    饭,   ⥬  ⮡  
ந室  .   砥,   PCjr  ।
       饭.  뢠 ⠩-
 ⠪  ,    ᫥⢨  稪  ६
⮪   ᯥ樠쭮 楤ன, ᯮ饩    1
奬 ⠩  8253      ᮢ,  襤 
६ ᪮ 権.   ⠫  IBM PC   -
奬 DMA, ⮬  ᢮  । .
   IBM PC  XT ᯮ 4-媠 奬 DMA 8237. K
0  ।祭  "ᢥ"  (memory refresh);   -
ﭭ ⠭   祥  ⨢ .  ᫨ 
㤥  ࠡ  ⮬ ,   ਢ ᪮॥ ᥣ  
 設. K 2  ।祭   ᪮ 権,  
㣨 ,  ࠬ 1  3, 㯭 (१ ࠧꥬ -
)   ⥫쭮  㤮.  K  ᮦ,  -
- ॡ         
0, ⮬ ⠪  㯥  IBM PC  XT.  AT 
7    אַ 㯠    DMA ⮬᪨  ᯮ-
 ﬨ MOVS,  ⢥  㢥稢 ந⥫-
.
   । 樠樥  ணࠬ  ᫠  -
奬 , ᮮ騩 㤥    ந室  ⥭    
஫ H.     ࠢ 46H  ⥭  4AH
-  .     ᫠     ⮢
 ᠬ 0BH  0CH.
   K   奬 8237 ᯮ   ॣ.   
16- ॣ, ॣ  稪, ᮤন ᫮ ।
⮢  .   稭     ,  祬
ॡ㥬 ᫮ ⮢.       2    ⮬ ॣ
⢫ १  05H; 諨     ᫥⥫-
 , 祬 ᭠砫 訩 .
   ⠫  ॣ ᮤঠ    ,  -
  㤥  ந室  묨.       
20-⭮ ᫮, ⮬, ਬ,   3000:ABCD  
3ABCD.  訥 16 ⮢ 뫠  ॣ ,  
 2    04H.  砫 뫠 訩 .
訥  4      ॣ ࠭,      2
   81H.  K  뫠  ⮬ , 
  祭  ⮫쪮 4  .  ᫨   ᮧ  
ᥣ ,    㦭  ᫮  祭  DS   ᬥ饭
  祭 20-⭮ 祭.   ਢ
 ७  祭 ॣ ࠭.  Hਬ, ᫨ DS ࠢ
1F00H,   ᬥ饭  - 2000H,  १騩   㤥
ࠢ 1F00 + 2000 = 21000H.
   ᫥ ⮣    ॣ  ⠭, 諨 2  
 ᮬ 0AH, ⮡ ࠧ  2.   ⠢ 奬
DMA  ﭨ    ⥫,  ணࠬ 
  뫪  ⮢  ஫ H. 
⪨ 祭 蠣  ணࠬ஢ 奬 8237:

1. ᫠  ⥭  .
2.  ᫨ 20-   ,    -
 ,  ᫠   ॣ   ࠭  2.
3.   祭 ᫠ ।  ⮢ ( 1)  -
 稪  2.
4.  .

   ᫥ 뫪    ⮢,  ᭮  뢠 
頩     ⠪ ,   ᫥ 樨  ᪠.   ⥬
⠩  .  ⠪:

       #       㭪

            

   ⥭         1          0
                  2          1
                  3          2
                  4         ஦
                  5         
                  6         ᥪ
                  7         ⮢  ᥪ (0-3)

          1-7         ,    ⥭

 祭 ⮢  ⮢ :

  0:
    7-6   00 = ଠ쭮 襭
              01 =  믮,   
              10 = ୠ 
              11 = 믮, .. ⥫  祭
          5   1 = 믮  ᪠
          4   1 = 訡 ⥫
          3   1 = ⥫  ⮢
          2    ࠭ 
        1-0    ࠭ ⥫
  1:
    7   1 =  ॡ ᥪ  ᨬ㬠
       6    ᯮ (ᥣ 0)
       5   1 = 訡 । 
       4   1 = ९ 
       3    ᯮ (ᥣ 0)
       2   1 =      ᥪ
       1   1 =    -   
       0   1 =  ᭠ ⪠  ଠ⨧樨

  2:
    7    ᯮ (ᥣ 0)
       6   1 = 祭 ᭠ ⪠ 㤠 
       5   1 = 訡 横᪮ ஫ ⭮ 
       4   1 = ஡  䨪樥 ஦
       3   1 = ᫮  ᪠஢ 㤮⢮७
       2   1 = ᫮  ᪠஢  㤮⢮७
       1   1 =  ஦
       0   1 =  ᭠ ⪠

   K     ଠ樨  ⭮  ଠ-
 ᪠, ஥   騩   . 
  ⢥    ,    ᮤন 
ଠ:

  3:
    7   1 = 訡 ⥫
       6   1 =  饭  
       5   1 = ⥫ ⮢
       4   1 = ⥪   ⭠
       3   1 = ᪥ ஭
       2    ࠭ 
     1-0    ࠭ ⥫

    ⢥  , ᫠ ஫-
 H   "।    ⥫" (Sense Drive Sta-
tus).    ⮩ 塠⭮   ᫮ 4,  ன
 ᮤন  ⥫     1  0,    
  2.   ⢥ १⮬ ⮩ 樨    
 3.  ⬥⨬,  ᫥   ᪮ 樨, ᫨ 
ᯮ  楤 DOS  BIOS, १騥  
      BIOS,  稭    0040:0042.
樮  ⥬ ࠭ ⠪   ᪥  
0040:0041, 祭 ⮢ ண ᫥饥:

   祭              訡

        80H            ⢥  ᮥ ⥫
        40H            ᪠ ᯥ譠
        20H           訡 ஫ H
        10H           訡   ⥭ (訡 CRC)
        09H           ⪠ אַ 㯠  ࠭ 64K
        08H           ९ DMA
        04H           ॡ ᥪ  
        02H             ᭠ ઠ
        01H           ᫠ ୠ  ஫ H
    祭 ਢ   楤  ⥭ ᪠, 
⠥  ᥪ   ஦ 12, ᥪ 1, ஭ 0 -
⥫ A  512-   ᥣ .   ⮢ -
 ⠪ 뢠  ⢥ .  楤 ।-
祭  IBM PC  XT.   室 ᯮ짮 孨-
  㪮⢮  PCjr  AT, ᫨  ࠡ⠥   -
.  H AT    横  প,  ⮡  
᪮  ,   뢠   JMP  SHORT
$+2  ᫥⥫묨   OUT, ⭮騬  
  ⮬  .    䨪஢  ᪮  ⢫
筮, ⮬    ७ 祭  楯樨
 㣨 樨.

;--- ᥣ 
BUFFER         DB 512 DUP(?)
STATUS_BUFFER  DB 7 DUP(?)

SECTOR_READ    PROC    ;砫 楤 ⥭  ᥪ
;---祭 
   STI              ;뢠   ࠧ襭
   MOV  DX,3F2H     ; ॣ ஢ 뢮
   MOV  AL,28       ;⠭  2, 3  4
   OUT  DX,AL       ;뫠 
;---    ᪮ ( 1/2 ᥪ.)
   MOV  CX,3500     ;稪 横 প ( IBM PC  XT)
MOTOR_DELAY:  LOOP MOTOR_DELAY  ; 1/2 ᥪ㭤
;---믮塞  ᪠
   MOV  AH,15       ; 
   CALL OUT_FDC     ;뫠 ஫ H
   MOV  AH,0        ; ⥫
   CALL OUT_FDC     ;뫠 ஫ H
   MOV  AH,12       ; ஦
   CALL OUT_FDC     ;뫠 ஫ H
   CALL WAIT_INTERRUPT  ; 뢠  H
;--- ⠭  (25 ᥪ.)
   MOV  CX,1750     ;稪 横 প ( IBM PC  XT)
WAIT_SETTLE:  LOOP WAIT_SETTLE   ; 25 ᥪ.
;---稭 樠 奬 DMA
   MOV  AL,46H      ; ⥭  ஫ H
   OUT  12,AL       ;뫠    ᠬ
   OUT  11,AL       ;
;---塞  
   MOV  AX,OFFSET BUFFER   ;६ ᬥ饭   DS
   MOV  BX,DS       ;頥 DS  BX
   MOV  CL,4        ;⮢ 饭 襣 
   ROL  BX,CL       ;頥 訥 4 
   MOV  DL,BL       ;㥬 DL  BL
   AND  DL,0FH      ;⨬ 訩   DL
   AND  BL,0F0H     ;⨬ 訩   BX
   ADD  AX,BX       ;᪫뢠
   JNC  NO_CARRY    ;᫨  뫮 ७,  # ࠭  DL
   INC  DL          ;㢥稢 DL, ᫨  ७
NO_CARRY:   OUT  4,AL  ;뫠 訩  
   MOV  AL,AH       ;ᤢ 訩 
   OUT  4,AL        ;뫠 訩  
   MOV  AL,DL       ;뫠  ࠭
   OUT  81H,AL      ;뫠  ࠭
;--- 樠樨
   MOV  AX,511      ;祭 稪
   OUT  5,AL        ;뫠 訩 
   MOV  AL,AH       ;⮢ 訩 
   OUT  5,AL        ;뫠 訩 
   MOV  AL,2        ;⮢ ࠧ襭  2
   OUT  10,AL       ;DMA  
;---砥 㪠⥫   ᪠
   MOV  AL,1EH      ; , 㪠뢠饣  ⠡
   MOV  AH,35H      ; 㭪樨
   INT  21H         ;믮塞 㭪
;---뫠 ࠬ ⥭
   MOV  AH,66H      ; ⥭  ᥪ
   CALL OUT_FDC     ;뫠 ஫ H
   MOV  AH,0        ;   ⥫
   CALL OUT_FDC     ;뫠 ஫ H
   MOV  AH,12       ; ஦
   CALL OUT_FDC     ;뫠 ஫ H
   MOV  AH,0        ; 
   CALL OUT_FDC     ;뫠 ஫ H
   MOV  AH,1        ; 
   CALL OUT_FDC     ;뫠 ஫ H
   MOV  AH,ES:[BX]+3  ; ࠧ ᥪ
   CALL OUT_FDC     ;뫠 ஫ H
   MOV  AH,ES:[BX]+4  ;  ஦
   CALL OUT_FDC     ;뫠 ஫ H
   MOV  AH,ES:[BX]+5  ; ᤢ
   CALL OUT_FDC     ;뫠 ஫ H
   MOV  AH,ES:[BX]+6  ; 
   CALL OUT_FDC     ;뫠 ஫ H
   CALL WAIT_INTERRUPT  ; 뢠  H
;---⠥ १騥 
   MOV  CX,7        ;६ 7 ⮢ 
   LEA  BX,STATUS_BUFFER  ;頥   
NEXT:   CALL IN_FDC  ;砥 
   MOV  [BX],AL     ;頥  
   INC  BX          ;㪠뢠  ᫥騩  
   LOOP NEXT        ;塞 
;---몫祭 
   MOV  DX,3F2H     ; ॣ ஢ 뢮
   MOV  AL,12       ;⠢塞  3  4
   OUT  DX,AL       ;뫠  ⠭
   RET              ; 楤
SECTOR_READ      ENDP

WAIT_INTERRUPT   PROC      ; 뢠  H
;---ࠢ ᮬ 뢠 6    BIOS
   MOV  AX,40H      ;ᥣ   BIOS
   MOV  ES,AX       ;頥  ES
   MOV  BX,3EH      ;ᬥ饭   
AGAIN:   MOV  DL,ES:[BX]  ;砥 
   TEST DL,80H      ;஢塞  7
   JZ   AGAIN       ;     ⠭
   AND  DL,01111111B   ;뢠  7
   MOV  ES:[BX],DL  ;塞  
   RET
WAIT_INTERRUPT   ENDP
OUT_FDC          PROC      ;뫠   AH FDC
   MOV  DX,3F4H     ;  ॣ 
KEEP_TRYING:  IN   AL,DX   ;砥 祭
   TEST AL,128      ; 7 ⠭?
   JZ   KEEP_TRYING ;᫨ ,  ᭮ ஢塞
   INC  DX          ;㪠뢠  ॣ 
   MOV  AL,AH       ;। 祭  AH
   OUT  DX,AL       ;뫠 祭
   RET
OUT_FDC          ENDP

IN_FDC           PROC  ;砥   FDC  AL
   MOV  DX,3F4H     ;  ॣ 
ONCE_AGAIN:  IN   AL,DX   ;砥 祭
   TEST AL,128      ; 7 ⠭?
   JZ   KEEP_TRYING ;᫨ ,  ஢塞 ᭮
   INC  DX          ;㪠뢠  ॣ 
   IN   AL,DX       ;⠥   ॣ 
   RET
IN_FDC           ENDP
   5.4.2 ⥭/ । ᥪ஢.

   ⥭    । ᥪ஢ ᪠  ᭮  -
  㯥  ⠫ ᪠   ⠡ ࠧ-
  䠩, ᥪ   ᥣ ᯮ    ⮬
 .    ६  ⥭  ᥪ஢  筮 ,
 ᮫⭮ ᥪ ॡ ⮡   ⥫쭮 ஢-
७ ।  ᯮ짮. 訡  ᤥ ⠫ 
⠡ ࠧ饭 䠩 ⠥묨,  ⭮  ࠧ-
    ᪥.
   K DOS ⠪  BIOS  ।⠢  㭪樨  ⥭  
।  ᥪ஢.    㪠뢠 ᥪ -ࠧ.
 IBM PC, XT  PCjr 楤 BIOS  ॡ ଠ樨  
஭ (0  1),  ஦ (0-39)   ᥪ  (1-8).
-  ࠭祭  ᨬ쭮    ᥪ ࠢ 8 
⮤ ࠪ᪨ ᯮ   設.    AT 
ᥪ     8,  9    15,   ᫮ ஦ 
  39  79.  㭪樨 DOS 㪠뢠 ᥪ   -
஬,  뢠  ᪨  ஬  ᥪ.  H稭 
㦭    ᪠, ᥪࠬ  ᢠ  ᫥⥫쭮
騥 .  ⮤   ᯮ짮  ᪮
ந쭮 ࠧ  ⨯.
     ᥪ ᥪ஢ 稭  ஭ 0  ஦  0
ᥪ 1  த    ஭  1   ஦ 0, ᫥ 祣
室  ஭ 0 ஦ 1  .. (H  䨪஢
᪠ ᭠砫 室  譨 樫.)  ᨬ 
⮣   ଠ஢ ,  室  ᫥ ஦
᪨  ᥪ 㢥稢  ।  稭.
 ᪥  360K   ஦  ( ⮬  ஭)
    ᪮  18.    ᫥  
᫮ ⥬,     稭    .   ࠧ
  ᥪ   ஦ 3 ஭ 2     ࠢ
3*18  ஦ 0-2  9  ஭ 0 ஦ 3  ,
㪠뢠   ᥪ ஦ 3 ஭ 1.  㬬 ࠢ
64. ᪨  ᥪ  1  ⮣ ᫠. H . 5-4
ࠢ ⮤ 㪠 ᥪ DOS  BIOS.

   ᮪ ஢.

   ᨪ  ।⠢ אַ 㯠  ᥪࠬ ᪠. H
ᯮ짮 ᫥ 楤   設 몥.  ਫ
   ⢨  ⮩ 楤ன.   ਬ
⠥ 9 ᥪ஢ ஦  3  ஭  1 ᪥  360K.
  楤  ࠧ頥  , 稭    ᥣ
&H1000,  ᮤন ᥪ஢ ࠧ頥,  稭  ᥣ⭮
 &H2000 (,  ᮫  ࠢ ᥣ⭮
, 㬭  16).    ⮣ ⮡    -
ন  ⮣       ணࠬ  ᥤ쬮
   &H25  &H26.  ⠫쭮 ⠥ .

100 DEFINT A-Z       ' ६  楫묨
110 DATA &H55, &H8B, &HEC, &H1E, &H8B, &H76, &H0C, &H8B
120 DATA &H04, &H8B, &H76, &H0A, &H8B, &H14, &H8B, &H76
130 DATA &H08, &H8B, &H0C, &H8B, &H76, &H06, &H8A, &H1C
140 DATA &H8E, &HD8, &H8B, &HC3, &H8B, &H00, &H00, &HCD
150 DATA &H25, &H59, &H1F, &H5D, &HCA, &H08, &H00
160 DEF SEG = &H1000     '頥 楤   &H10000
170 FOR N = 0 TO 38      '   楤
180 READ Q: POKE N,Q     '⠥   頥   
190 NEXT                 '᫥騩 
200 READSECTOR = 0       '믮塞 , 稭  ࢮ 
210 BUFFER = &H2000      '     &H20000
220 LOGICALNUMBER = 62   '᪨  ᥪ ࠢ 62
230 NSECTORS = 9         '᫮ 뢠 ᥪ஢
240 DRIVE = 0            ' ⥫ (0 = A)
250 CALL READSECTOR (BUFFER, LOGICALSECTORS, NSECTORS, DRIVE)
260 '⥯ ᥪ  , 稭   2000:0000

   । ஢.

   BIOS ᯮ 㭪 2 뢠 13H  ⥭ ᥪ஢ 
㭪 3 뢠 13H   ᥪ஢.     DL
 ᮤঠ   ⥫   0  3,  0 = A, 1 = B 
..,  DH  -   (஭), 0-1.  CH    ᮤঠ
 ஦  0  39,   CL  -    ᥪ  0  8.  AL
ᮤন ᫮ ᥪ஢, ஥ 室 .  ᪠
ࠧ    쬨  ᥪ஢,    祬 筮
 設⢠ 楫.  ES:BX  㪠뢠  砫  
, 㤠      㤠   -
.     AL 㤥 ᮤঠ ᫮ ⠭  -
ᠭ ᥪ஢.  ᫨   ᯥ譠,   䫠 ७ 㤥
ࠢ  .  ᫨  ࠢ 1,  AH 㤥 ᮤঠ  
᪮ 樨, ᠭ  [5.4.8].

;--- ᥣ 
BUFFER     DB   4000 DUP(?)  ;ᮧ 

;---⠥ ᥪ
   MOV  AX,SEG BUFFER       ;ES:BX  㪠뢠  
   MOV  ES,AX               ;
   MOV  BX,OFFSET BUFFER    ;
   MOV  DL,0                ; ⥫
   MOV  DH,0                ; 
   MOV  CH,0                ; ஦
   MOV  CL,1                ; ᥪ
   MOV  AL,1                ;᫮ ᥪ஢  ⥭
   MOV  AH,2                ; 㭪樨 ⥭
   INT  13H                 ;

   뢠 DOS 25H  26H   뢠 ᮫ ᥪ-
 ᪠, ᮮ⢥⢥. H  ᪨  -
 ᥪ  DX,  DS:BX  㪠뢠  . CX ᮤন
᫮  ᥪ஢  ⥭  ,  AL -    ⥫,
 0 = A, 1 = B    ..  楤     ॣ, ஬
ᥣ.   ॣ 䫠 ⠥  ⥪, ⠢-
 ⥪ ஢.  H    ⮫  祭 
⥪  ࠧ ᫥  ( ਬ  祭 ⠫
 CX).

;--- ᥣ 
BUFFER      DB  DUP 5000(?)   ;ᮧ 
;---⠥ ᥪ
   PUSH DS                 ;࠭塞 ॣ
   MOV  AX,SEG BUFFER      ;DS:BX  㪠뢠  
   MOV  DS,AX              ;
   MOV  BX,OFFSET BUFFER   ;
   MOV  DX,63              ;᪨  ᥪ
   MOV  CX,9               ;⠥  ஦
   MOV  AL,0               ;⥫ A
   INT  25H                ;㭪 ⥭ ᥪ஢
   POP  CX                 ;⠫  ⥪ 䫠
   POP  DS                 ;⠭ ॣ
   JNC  NO_ERROR           ;᫨  訡,   த
   CMP  AH,3               ;஢ઠ  訡
    .
    .
NO_ERROR:                  ;த ணࠬ

   ᫨   䫠 ७ ࠢ 1,  ந諠 訡 
 ⮬ 砥 AH  AL ᮤঠ  ⤥    訡-
. ᫨ AH = 4,  㪠 ᥪ  ,  ᫨ AH = 2, 
 ୮ ଠ஢.  ᫨ AH = 3,  뫠 ⪠ 
 ᪥, 饭  .  ⠫ 祭 AH -
  ⭮ 訡.

   H ஢.

   ᪮ 樨   ஢ ॡ אַ  ணࠬ-
஢ 奬  ஫  H   אַ 㯠  .
᪮    樨  易,     ᬠਢ
  ࠧ [5.4.1].
   5.4.3   ᫥⥫ 䠩.

     窨 ७ ணࠬ 모 ᮪ ஢ ࠡ  
᫥⥫묨 䠩  ﬨ     .  
  "뢠"  ᮤন ६   ᫥⥫
䠩, ࠭稢   ன    ⪨/ॢ  ப.  
㣮  ஭,  ணࠬ  몥 ᥬ     
묨, 塞묨    ᥩ.      
,   ᮤঠ   ᪮쪮 ᥩ, -
   ⪨/ॢ ப   ⠬ ,
   ﬨ. H    ਭ
 .     ᯮ 㭪 MS DOS, -
       ᪮쪮 ᥩ.   H  
஢  ணࠬ஢  DOS      ந 䨧᪮
       ࠧ,  뫠     뢮.
 ⮣,   楫  ,  DOS     室
 㤥 , ० 祬    .
   ⬥⨬,  ᨪ ⮬᪨    뢠-
  ᫥⥫쭮 䠩 ᨬ   ASCII 26 (Ctrl-Z).
 ॡ ⠭ ⥪⮢ 䠩.  㭪樨 DOS   -
  ᨬ;    ணࠬ   ᠬ   
   .   אַ 㯠   ࠭稢
ᨬ ASCII 26.

   ᮪ ஢.

   ᨪ ⮢ 䠩  ᫥⥫쭮  , 뢠 䠩
 ० ᫥⥫쭮 㯠 ஬ OPEN.  
         롨ࠥ   . -
 ⮣  ⠪:

   100 OPEN "MYFILE" FOR OUTPUT AS #1



   100 OPEN "O", #1, "MYFILE"

  ன ଥ 㪢 "O" 砥 뢮 (output).    #1
砥   ,    ஬    㤥 ᫥⢨
   䠩   㯠, ⠪  WRITE #1  
INPUT #1.      뢠  䠩   MYFILE 
ਥ   ᫥⥫쭮 ०. ᫨ 䠩  ⠪ 
   ᪥,   OPEN  ᮧ .  ᫨  ⠪
䠩 ,   㤥 १ᠭ, .. ᫥  
 㤥 ᮤঠ ⮫쪮   ᠭ    . ⮡
    饣 ᫥⥫쭮 䠩, 
  ।饣 ᮤন, 㦭  , ᯮ
   OPEN      OPEN "MYFILE" FOR APPEND AS
#1.  ஡  ⮬ . [5.3.3].
     뢠  䠩   ஢ PRINT#  WRI-
TE#.    :

   100 PRINT #1, S$



   100 WRITE #1, X
#1 ⭮  䨪樮   䠩 (ਯ 䠩-
), ᢠ  ஬ OPEN.   ࢮ ਬ  䠩
뢠 祭 ப ६,   ஬ ᫥
祭,      뢠    㣮. ᫥-
 祭 뢠    ᫥⥫  䠩  ப
,        ப ६.   Hਬ,
232  2-塠 楫  ப  ଥ,  ᫨ X =
232,   PRINT #1, X 頥  䠩  , ᯮ
 ASCII   2, 3  2.
    PRINT#  WRITE#  ⫨  ᯮᮡ ⤥ -
⮢   䠩. K    室騩 ।
ࠪ⨪ . ᭮ ࠧ稥   -
 ⮨  ⮬,  WRITE# ⠢ ⥫ ࠭-
  ⠬  .  ᬮਬ  砩,   
뢮  ᪮쪮 ६   100 PRINT #1, A$, Z, B$  
100 WRITE #1, A$, Z, B$.  ⮬ 砥   ⪨/-
  ப  㤥 饭  䠩 ⮫쪮   ᫥    
६ (⬥⨬,    ப   ᫮ ६ 
  ६蠭).   K   ᫥⢨ 뤥    
६? ᫨   ᯮ짮   PRINT#,  . 
 ६  ꥤ  뢭 ப. ᫨  
ᯮ짮  WRITE#,      㤥 -
祭   窨,      .  ⥬,  
⥭  ⮢  䠩,  ᨪ  㤥 ⮬᪨ 㤠-
 窨  ,  뫨  ஬ WRITE#.
        ᮢ.     ⮨  
⮬,   ஡    ࠭⥫ﬨ     , ᫨
ᯮ짮    뢮   ६  ⤥  
PRINT#  WRITE#.  ⮬  砥  PRINT# 㤥 ⤥  -
  ࠬ  ⪨/ॢ ப,  WRITE# 㤥  -
   ᠬ,  -०    㤥 祭 
窨  (  ᭮ 室 䠩 ࠭⢮).   
⮣,  뢮 ப,   ᠬ  ᮤঠ 窨, 
WRITE# ᯮ짮 , ᪮ ࢠ  ७ -
 㤥  ⥭ 訡筮  ਭ   ਧ  -
. , , ⬥⨬,      뢮-
 ᪮쪮 ६,      ଠ   
筮 ⠪ ,   ଠ஢   뢮   ନ-
.  ࠧ PRINT #1, A$, B$ ⤥ B$  A$,   ६
  PRINT #1, A$; B$ - ; 䠩 㤥  㦭 ᫮
஡.   PRINT#   ᯮ짮  ଥ PRINT #1
USING...,    ᯮ짮   ࠭ ଠ-
 PRINT USING  ଠ஢ 뢮  䠩.
    ,   筮 ᯮ짮  PRINT#,
뢠  ࠧ   ६.  ⮤  
譨 ࠭⥫      ⥬ 訡筮 뢠
ப  .  ᫮ 奬 ࠭⥫, ᯮ-
   ᪮쪨  ६  ஬ PRINT# 
WRITE#   ਢ  ஡, ᮡ ᫨  ६
㤥 ⠭  ,   ਢ     ⥪饩 樨 
䠩.
   ᫥  ⮣     ᠭ  䠩,   -
ன , ⮡  ᮤঠ騥    . H
CLOSE, ⮡    䠩, CLOSE #1 - ⮡ 
䠩 #1  CLOSE #1, #3 -  ⮡    䠩  #1   #3.  
  ᨪ 頥  䠩,     
砩.  WRITE#   PRINT#  뢮   䠩 -
,  뢠   ⮫쪮 ⮣,    -
 ଠ樥. ᫥   뢠  
஬  CLOSE.  ⢨ ⮣    ਢ  
 .  ਬ:

100 OPEN "A:NEWSEQ" FOR OUTPUT AS #1  '뢠 䠩
110 A$ = "aaaaa"                      '⮢  ப
120 B$ = "bbbbb"                      '
130 C$ = "ccccc"                      '
140 WRITE #1, A$, B$, C$              ' ப
150 CLOSE                             '⪠ 

   । ஢.

   MS DOS    ᫥⥫ 䠩  ⮤ ࠢ-
饣  䠩, ⠪  ⮤ ਯ 䠩.  ⮤ FCB
।⠢  㭪  ᯥ樠쭮  ᪮஢   
᫥⥫ 䠩.  ⮤ ਯ 䠩,  㣮 -
஭,  ⮫쪮 㭪   䠩 饣 祭,  
  ᯮ짮   ⮩ 楫.    砥, ᯮᮡ, -
   䠩,   ᫥⥫ . ᫨
     ᫥⥫쭮 䠩,    
 ᯮ짮 筠  㭪   䠩.  , ᫨
䠩   १ᠭ ,  ॡ 㭪 "ᮧ-
" 䠩.  㭪  १  䠩  㫥 , ⮬
  㤥 ࠢ  ᠭ   .

⮤ FCB:
   㭪 15H 뢠 21H ।祭    ᫥-
⥫ 䠩. H ⮢ ࠢ騩  䠩  
   ᪮,    [5.3.5].  ᫨ 䠩   
१ᠭ,         㭪樨 16H, 
"ᮧ"  䠩, १   㫥 .  ᫨   ஥
䠩   㭪樨 0FH,  ⮪  ண 䠩 ⠭ 
 䠩, ᫨   䠩 㤥 , 祬 ண. 
㣮 ஭, ᫨         䠩,  -
 㭪  䠩.
   ᫥  ⮣   䠩 ,    ⠭  DS:DX  
砫 FCB  맢  㭪  15H   ⮣ ⮡  
  .  K⢮       稭,
 饭    ,  ᯮ  ᬥ饭
14    筮 FCB,  㬮砭  祭 ࠢ  128  ⠬.
᫨ ࠧ  , 祬 ࠧ  ᥪ ᪠ 512 , 
  ਧ,        -
筮 , ⮡ ந  ॠ    ; ⮬
   ᫥⥫ 䠩  ᯥ譮  뢠  
᫨ ⥫  祭.   ⨨ 䠩   ⠢-
訥   뢠  .    㭪樨 15H,
AL ࠢ 0, ᫨  ᯥ譠, 1 - ᫨    2 - ᫨
ᥣ    ᫨誮 .
     ᫥饬 ਬ   뢠 5 ᥩ  256
⮢.     ஬  ⥪⮢ .   
ᯮ   , 祭 ⪮ WORKAREA.  -
⥫  DTA ࢮ砫쭮 ⠭  砫 ⮩ ,
  ᫥    ⠭ DTA  ⠪  -
, ⮡  㪠뢠  256  ⮢  .  ⬥⨬,  筮
  ⠪  ࠡ祩  ⢮ ᯥ樠쭠   
[1.3.1],     ਬ      ᯮ  
ᯮ  ᥣ .
;--- ᥣ 
WORKAREA     DB  2000 DUP (?)   ; 
FCB          DB  1,'FILENAMEEXT',25 DUP (0)

;---DTA  㪠뢠  ࠡ 
   LEA  DX,WORKAREA   ;DS:DX 㪠뢠  DTA
   MOV  DI,DX         ;࠭塞 
   MOV  AH,1AH        ;㭪 ⠭ DTA
   INT  21H           ;⠭ DTA
;---뢠 䠩
   MOV  AH,16H        ; 㭪樨
   LEA  DX,FCB        ;DS:DX 㪠뢠  FCB
   INT  21H           ;뢠 䠩
;---⠭ ࠧ 
   LEA  BX,FCB        ;BX 㪠뢠  FCB
   MOV  AX,256        ;ࠧ  256 ⮢
   MOV  [BX]+14,AX    ;뢠   ࠧ 
;---뫠   䠩
   MOV  CX,5          ;᫮ ᥩ
NEXT_REC:  MOV  AH,15H   ;㭪 
   LEA  DX,FCB        ;㪠뢠  FCB
   INT  21H           ;뢠 
   CMP  AL,2          ;஢ઠ  訡
   JE   CONTINUE      ;  ࠡ⪠
   CMP  AL,1          ;
   JE   DISK_FULL     ;
;---७ 믮, ⠭ DTA
   ADD  DI,256        ;ᤢ  1 
   MOV  DX,DI         ;DS:DX 㪠뢠   DTA
   MOV  AH,1AH        ;㭪 ⠭ DTA
   INT  21H           ;⠭  樨
   LOOP NEXT_REC:     ;  ᫥ 

;---, 뢠 䠩
   LEA  DX,FCB        ;DS:DX 㪠뢠  FCB
   MOV  AH,10H        ;㭪  䠩
   INT  21H           ;뢠 䠩

   ⮤ ࠢ饣  䠩  ᫨誮 㤮   -
 ᥩ     饣  ᫥⥫쭮  䠩.  
⫨稨  ⮤ ਯ 䠩,   㪠 
 䠩,    㫨஢ ﬨ ⥪饩 
 ⥪饣 .  H㦭    ᫥,  ଠ,
  DTA,  ⥬  ⮥ ࠭⢮    ࢮ
 ,      .  ⥬ १
   ஥   䠩, ᫥ 祣   
᪮쪮    ᥩ.       㭪樥
0FH.

⮤ ਯ 䠩:
   H室  ⥫쭮   ⨨ 䠩   ᫥-
⥫쭮 뢮 ⮤ ਯ  䠩. ᪮   ᠬ
㭪  ᯮ    䠩 אַ 㯠,    
⨨ 䠩       ⠭  ࠢ  ᫥
樨  䠩 㪠⥫.  쬥, ਬ,  砩,  
⥪⮢ 䠩 ࠧ஬ 2000  ⮢ 뢠  ᪠,  ⥬
  ࠡ⪨     㬥蠥  1000 .
᫨ 䠩    ⮩      䠩 (㭪
3DH),    ᫥ ⮣,  ,   ⪠,    䠩
㤥 ᠭ    䠩  㤥  ,   ⠭
ࠢ 2000 ⠬,    ⥪ 㤥   
 ⮢.  ⮩  稭,    ⨨ ᫥⥫쭮
䠩  १  ᯮ짮 㭪 3CH 뢠 21H
[5.3.2].   㭪 筮 ᮧ  䠩,  ᫨ 䠩 㦥
,    १    㫥  .  
   ᫥⥫ 䠩  ᯮ짮  㭪
 䠩, 3DH 뢠 21H [5.3.3].
   ᬮਬ ᭠砫 砩  १ 䠩. ᫥ ⮣,
 䠩  㭪樥 3CH, 䠩 㪠⥫  ⠭
ࠢ , ⮬  㦤 ⠭ .  
䠩   BX,  ᫮ 뢠 ⮢  CX.  ⥬  ⠭
DS:DX     뢮      믮 㭪 40H
뢠 21H.   , ᫨ 䫠 ७ ⠭,  
뫠 訡  AX ᮤন 5, ᫨ 뫠 訡 ᪮ -
  6 - ᫨   䠩.   ⨢ 砥, AX 㤥
ᮤঠ ᫮ ॠ쭮  ᠭ  ⮢;  ᮢ -
⭥ ᥣ ஡ ⮨  ⮬,   . H 
 楤 ⠭  ᡮ, ⠪    ணࠬ
ࢮ砫쭮  ᮤন  䠩 㤥 ﭮ, ⠪     
१  㫥 .  K  ஢  ᪮  ࠭⢮
ᠭ  [5.1.2].  ਬ:

;--- ᥣ 
PATH         DB    'B:FILENAME.EXT',0   ;  䠩
DATA_BUFFER  DB    2000 DUP (?)

;---뢠 䠩   㭪樨 "ᮧ"
   LEA  DX,PATH          ;DS:DX 㪠뢠    䠩
   MOV  CX,0             ;ਡ 䠩 ( )
   MOV  AH,3CH           ; 㭪樨
   INT  21H              ;뢠 䠩
   JC   OPEN_ERROR       ;஢ઠ  訡
   MOV  HANDLE,AX        ;  䠩
;---뢠  䠩 1000 ⮢
   MOV  AH,40H           ; 㭪樨
   MOV  BX,HANDLE        ; 䠩  BX
   MOV  CX,1000          ;᫮ ,   
   LEA  DX,DATA_BUFFER   ;DS:DX 㪠뢠   
   INT  21H              ;뢠 
   JC   OUTPUT_ERROR     ;஢ઠ  訡
   CMP  CX,2000          ;  ࠡ⪠
   JNE  FULL_DISK        ;

      ᥩ  ᫥⥫ 䠩    
䠩   㭪樨 3DH  뢠  21H,  1  AL, ᫨
ணࠬ 㤥 ⮫쪮    2, ᫨ ணࠬ 㤥  
  .  䠩  ⠥  ,   㤥
㢥稢    .   㪠⥫ -
  ⠭     䠩,    騥 
 १ᠭ.   믮 㭪樥 42H 뢠 21H.
  㭪樨 2    AL,    ⠭ 㪠⥫ 
  䠩,    䠩   BX.  CX:DX 㪠뢠  
ᬥ饭  ⭮⥫쭮    䠩,  稭    ண 㤥
ந , ⮬ 㫨  ॣ. ⥬ 믮-
 㭪 ⠭ 㪠⥫.   ⠭ 䫠
७    訡,  ⮬  AX 㤥 1,  ᫨  
㭪樨  AL  ७,  6  - ᫨ ୮  㪠 
䠩.   ᫥  ⮣  䠩 㪠⥫  ⠭  
 믮  筮   ।饬 砥:

;--- ᥣ 
PATH          DB  'B:FILENAME.EXT',0   ;  䠩
DATA_BUFFER   DB  1000 DUP(?)

;---뢠 䠩
   LEA  DX,PATH       ;DS:DX 㪠뢠  
   MOV  AL,1          ;  ⮫쪮  
   MOV  AH,3DH        ; 㭪樨
   INT  21H           ;뢠 䠩
   JC   OPEN_ERROR    ;室  訡
   MOV  HANDLE,AX     ;࠭塞  䠩
;---⠭ 䠩 㪠⥫   䠩
   MOV  BX,AX         ; 䠩  BX
   MOV  CX,0          ;CX:DX  ᬥ饭 ⭮⥫쭮 
   MOV  DX,0          ;
   MOV  AL,2          ;   䠩
   MOV  AH,42H        ;㭪 ⠭ 㪠⥫
   INT  21H           ;⠭ 㪠⥫
   JC   POINTER_ERROR ;஢ઠ  訡
;---塞  䠩 300 ⮢
   MOV  AH,40H        ; 㭪樨
   MOV  BX,HANDLE     ; 䠩  BX
   MOV  CX,300        ;᫮ 뢠 ⮢
   LEA  DX,DATA_BUFFER   ;DS:DX 㪠뢠   
   INT  21H           ;塞 
   JC   OUTPUT_ERROR  ;஢ઠ  訡
   CMP  CX,300        ;  ࠡ⪠
   JNE  FULL_DISK     ;
   5.4.4 ⥭  ᫥⥫ 䠩.

   ⥭  ᫥⥫쭮 䠩  祬 ⫨砥  -
  ,  ᪫祭 ⮣,    .   ᨪ
   䠩  ᢠ ⤥ ६  
⠬ ᨢ .   몥 ᥬ   
,  ᯮ  .   ᫥ 砥   -
    ணࠬ   ᠬ 뤥  -
,  ⠢騥 .   ⮬ 砥    
 ,  뢠  䠩.

   ᮪ ஢.

   ⥭ ᫥⥫ 䠩  ᨪ , 祬  ,
᪮   ⮫쪮  ,    ,
 ᨬ  ⮣,   ᨬ   䠩 ᯮ  -
⢥ ࠭⥫ ⮢ .  INPUT# ᯮ
   窨,    ࠧ⥫  ,  ⠪    
 ⪨/ॢ ப.   LINE INPUT#  ᯮ
⮫쪮  樨  CR/LF,  ⮬     ᯮ짮 
⥭  楫 ப ⥪, ᮤঠ 㣨 ࠭⥫.   
 㤮  ࠡ⪥ ⥪⮢.
    ⥭  ⮢ ஬  INPUT#, ᭠砫 ன
䠩,   㦤  [5.3.3] (ਬ, OPEN  "A:NEWSEQ"  FOR
INPUT AS #1). ᫨ 䠩        ஬ 1,  
INPUT  #1,  X$, Y$, Z$ ᢮ 祭      ⮢
 ६ ப ६.    ᫮ ६,
ਬ,  INPUT  #1, X, Y, Z 室,  ⮡  ᮮ⢥騥
  䠩 뫨 ᫮묨.   ᫮   筮 
뢠   ६  筮,  ⥬ ⮡  
࠭ ᥬ ⮢ ⠪  ᫠.  㣮 ᯮᮡ  
  ⮨  ࠧ饭   ᨢ:

100 DIM ITEM$(40)       'ᮧ ᨢ ப  40 ⮢
110 FOR N = 0 TO 39     '  
120 INPUT #1, ITEM$(N)  '뢠   頥  ᨢ
130 NEXT                '

⮡   n-  ᫥⥫쭮 䠩  ணࠬ
    ।騥    .  H 
ᮧ 横,  ஬  뢠  ,   
࠭      .
    LINE INPUT#   ᭮ 筮 
INPUT#,   ᪫祭 ⮣,    ਭ ⮫쪮  
६   ᥣ  ப  ६.  ६ 
    254 ᨬ   ᨬ쭮 ⨬  ࠧ
ப ६    ᨪ.      ⪨/ॢ
ப,  ᮤঠ  䠩, 砥  ப,  頥
஬ LINE INPUT#.  ᢮⢮  㦨 
ࠣ  ⥪⮢ 䠩.
   㭪  EOF ( 䠩)   ᯮ짮  ।-
 ⮣,      䠩  뫨  ⠭.  㭪
頥 -1, ᫨ 䠩 ௠  0 -  ⨢ 砥. 㭪-
樨 ॡ  䠩,       ; ਬ,
᫨      #2,  X = EOF(2).   ᫥饬  ਬ
 ⥪⮢ 䠩 뢠  ᨢ:
100 OPEN "TEXT.AAA" FOR INPUT AS #2   '뢠 䠩
110 DIM TEXT$(500)                    '  500 ப
120 LINECOUNT = 0                     '稪 ப
130 LINE INPUT #2, TEXT$(LINECOUNT)   '砥 ப
140 IF EOF(2) THEN 170                '஢ઠ   䠩
150 LINECOUNT = LINECOUNT + 1         '㢥稢 稪
160 GOTO 130                          ' ᫥ ப
170 ...                               '䠩 ⠭

    INPUT$ ⠥    ᫥⥫쭮  䠩 㪠
᫮ ᨬ.  H ᠬ ணࠬ    뤥  -
 ⮢  .  ଠ  ⮣   ⥭ 30
ᨬ   䠩 #1 ⠪: S$ = INPUT$(30,#1).     
㪠뢠 ᫮    ⥭,  室  ⮡  ᫮ 
ॢ室  254,  ᪮  ᨬ  ࠧ  ப
६,    . INPUT$   -
    뢭  .  Hਬ,  ᫥-
饬 ਬ     200 ⮢ ᫥⥫쭮
䠩   ஬ ᯫ,  ⥬ ⮡  뫨 뢥
 ࠭,  ࠢ騥 :

100 OPEN "A:NEWFILE" FOR INPUT AS #1   '뢠 䠩
110 CLS: DEF SEG = &HB000              '㪠뢠  
120 FOR N = 0 TO 9                     '砥 10 㯯
130 S$ = INPUT$(20,#1)                 ' 20 ⮢
140 FOR M = 1 TO 20                    '६  
150 POKE N*160 + M*2, ASC(MID$(S$,M,1) ' 頥   
160 NEXT M       '室  ᫥饬 
170 NEXT N       '室  ᫥饩 㯯

   । ஢.

   K    䠩  権 MS DOS   ᫥-
⥫ 䠩  ⮤ ࠢ饣  䠩, ⠪  -
 ਯ 䠩. 쪮       㭪 ᯥ-
樠쭮 ।祭  ⥭ ᫥⥫ 䠩. ⮤
ਯ 䠩 ᯮ   㭪, 㫨 
ᮡ ࠧ, ॡ㥬  ᫥⥫ 䠩.

⮤ FCB:
   㭪 14H 뢠 21H ⠥ ᫥⥫ 䠩. H
ᮧ ࠢ騩   䠩        ᪮, 
᭥  [5.3.5].      㭪樥 0FH -
 21H [5.3.3].   DS:DX    㪠뢠    FCB,
᫥  祣 㭪 14H 㤥      䠩 
 맮.    ⠭ ࠧ   ᬥ饭 14
 FCB.     ᫥ ⮣,  䠩 , ⠪   
⨨ 䠩 DOS ⠢       祭  㬮砭,
ࠢ 128.
   K  ࠧ   맮 㭪樨   㦠   ,
稭  ࢮ  DTA.  ᫨ DTA ᯮ  让
६ ,  । ⥭ ᫥饩  ᮤন DTA
  ७ᥭ    䠩, ⢥  -
.     ⠭ 㪠⥫ DTA  ⮢  
, 稭  ண 㤥 ࠧ 䠩,  ᫥ ⥭
  㪠⥫ 㢥稢  ࠧ ,  ⥬ ⮡
 㪠뢠  ,    ᫥ .
   ⠭   ⥪饩    (DB,  ᬥ饭 1FH)  
⥪饩   (DW, ᬥ饭 0CH) ⫨묨  ,  ᫥-
⥫  ,  稭     ॡ㥬  (-
⠭    ᤥ ᫥  FCB).  ᫥  
⥭  ⥪饩   ⮬᪨  㢥稢   1, 
᫥  ⥭ 128 ᥩ 㢥稢  ⥪饣 .  
 AL ࠢ 0, ᫨   ᯥ譮 ⠭.  -
㦥  䠩 AL 㤥 ᮤঠ 1, ᫨ 㭪 14H 
 ⨫   3 - ᫨  ⠭ 筮.
    ਢ ਬ  䠩 뢠    ᫥-
⥫쭮     㦭  .     
⠭ ࠢ 256 ⠬.   뢠  横  ᫥
⮣,    ࢠ   ⠭, 㪠⥫   DTA  
⠪ ࠧ, ⮡   㪠뢠   ᫥騩 ⮩   -
 .

;---頥 FCB  ᥣ 
FCB          DB  0,'OLDDATA DAT', 25 DUP(0)
DATA_AREA    DB  512 DUP (?)    ;ᯮ㥬  DTA

;---⠭ DTA  砫  
   LEA  DX,DATA_AREA      ;DS:DX 㪠뢠  DTA
   MOV  DI,DX             ;࠭塞 
   MOV  AH,1AH            ;㭪 ⠭ DTA
   INT  21H               ;⠭ DTA
;---뢠 䠩
   LEA  DX,FCB            ;DS:DX 㪠뢠  FCB
   MOV  AH,0FH            ;㭪  䠩
   INT  21H               ;뢠 䠩
   CMP  AL,0              ;஢ઠ  訡
   JNE  OPEN_ERROR        ;
;---⠭ ࠧ  256 
   LEA  BX,FCB            ;DS:DX 㪠뢠  FCB
   MOV  AX,256            ;ࠧ 
   MOV  DS:[BX]+14,AX     ;뫠   ࠧ 
;---⥭ 
   MOV  CX,2              ;᫮ ⠥ ᥩ
NEXT_REC:   MOV  AH,14H   ;㭪 ⥭ 䠩
   LEA  DX,FCB            ;DS:DX 㪠뢠  FCB
   INT  21H               ;⠥  
   CMP  AL,0              ;  浪?
   JE   CONTINUE          ;
   CMP  AL,2              ;஢ઠ  訡
   JE   READ_ERROR        ;
    .
    .
CONTINUE:  ADD  DI,256    ;㢥稢 㪠⥫
   MOV  DX,DI             ;DX 㪠뢠   DTA
   MOV  AH,1AH            ;㭪 ⠭ DTA
   INT  21H               ;⠭ DTA
   LOOP NEXT_REC          ;  ⥭ ᫥饩 
;---, 뢠 䠩
   LEA  DX,FCB            ;DS:DX 㪠뢠  FCB
   MOV  AH,10H            ;㭪  䠩
   INT  21H               ;뢠 䠩
   CMP  AL,0FFH           ;஢ઠ  訡
   JE   CLOSE_ERROR       ;

⮤ ਯ 䠩:
   㭪 3FH 뢠 21H     䠩 ᫥-
⥫쭮.  㭪 ᯮ   ⥭  䠩 
 ⮤ ਯ 䠩,  䠩 אַ 㯠.
     㭪樥  3DH 뢠 21H   0 
AL, ᫨  뢠 ⮫쪮  ⥭,    2 - ᫨  
뢠  ⥭  .   ⨨ 䠩 㪠⥫
⮬᪨ ⠭    䠩.  㭪 -
  䠩 㪠뢠 ᪮쪮 ⮢   ⠭  ᫥
⮣    ᤥ 䠩 㪠⥫ 㪠뢠  ,  ᫥-
騩  ᫥  ⠭  ⮬,  ⠢  ᫥饥
饭  㭪樨. ⬥⨬,  䠩 㪠⥫ 㭨 
 䠩 - 樨   㣨 䠩    -
.
   ணࠬ   ᮧ 让 ६ ,  ࠧ஬,
᪠, 512 ,  ﭭ  뢠  㭪 ⥭,  -
  樨 䠩 㪠⥫. 㣮 ⮤ ⮨  -
 ᥣ 䠩 אַ       ,     
ᯮ.   ⮬ 砥   ॡ, ⮡ 㭪
⠫  ⮢, 祬 ॠ쭮  ᮤন  䠩, ⠪ 
⥭ ४頥  ⨦ ᫥  䠩. 
 室    䠩, ⮡   -
   ,    ⠫ 䠩.
     䠩  ।, ᤢ 䠩 㪠⥫  
 䠩.     ᤥ  ࠧ    ᫥  䠩.
    AL  2  맮 㭪 42H,    ⮣,  ⮡
ᤢ 㪠⥫    䠩.   CX  DX  ᮤঠ 0,
⠪    ⨢ 砥 㪠⥫ 㤥 ᤢ   䠩
 稭,  ᮤন      ॣ.  
DX:AX  ᮤঠ   㪠⥫,  ᬥ饭 ⭮-
⥫쭮 砫 䠩, ..,      砥,   䠩. H
  ᭮  䠩 㪠⥫  砫 䠩, ।
⥬   ;   筮  ⠪  ࠧ,  -
祭  ⮣,    AL   0.  ᫨   믮
㭪樨 42H  訡,  ⠭ 䫠 ७, 
 AX 頥 1, ᫨ ७  㭪樨,  6 - ᫨  㪠-
   䠩.
    ணࠬ ⮢  ⥭ 䠩. H  
䠩  BX,  ॡ㥬 ᫮ ⮢  CX  믮 뢠.
  AX 㤥 ᮤঠ ᫮ ॠ쭮 ⠭ ⮢.
᫨ AX ࠢ ,  ⨣  䠩.   㣨 訡
⠭ 䫠 ७,  AX  ᮤন 5 -  訡 -
㤮    6 - ᫨ 㪠   䠩.    ᫥饬
ਬ     뢠    让 䠩.  -
⢠   ᯮ  ᥣ ,    ⢥
㢥稢 ࠧ ணࠬ  ᪥.    ᢮ ணࠬ 
ᮧ , ᯮ 孨 । ,  ᠭ-
  [1.3.1].
;--- ᥣ 
PATH        DB   'A:FILENAME.EXT'0   ;ப   䠩
DATA_BUFFER DB   1000 DUP (?)        ; 
HANDLE      DW   ?                   ; 䠩
FILESIZE    DW   ?                   ;ࠧ 䠩

;---뢠 䠩
   LEA  DX,PATH            ;DS:DX 㪠뢠  
   MOV  AL,0               ;   ⥭
   MOV  AH,3DH             ;㭪  䠩
   INT  21H                ;뢠 䠩
   JC   OPEN_ERROR         ;஢ઠ  訡
   MOV  HANDLE,AX          ;  䠩
;---⠭ 䠩 㪠⥫   䠩
   MOV  AH,42H             ;㭪 ⠭ 㪠⥫
   MOV  AL,2               ;   䠩
   MOV  BX,HANDLE          ; 䠩
   MOV  CX,0               ;ᬥ饭 ࠢ 
   MOV  DX,0               ;
   INT  21H                ;⠭ 㪠⥫
   JC   POINTER_ERROR1     ;ࠡ⪠ 訡
   MOV  FILESIZE,AX        ; ࠧ ( 64K)
;---頥 㪠⥫  砫
   MOV  AH,42H             ; 㭪樨
   MOV  AL,0               ;  砫 䠩
   MOV  CX,0               ;ᬥ饭 ࠢ 
   MOV  DX,0               ;
   INT  21H                ;⠭ 㪠⥫
   JC   POINTER_ERROR2     ;ࠡ⪠ 訡
;---⠥  䠩
   MOV  AH,3FH             ; 㭪樨 ⥭ 䠩
   MOV  BX,HANDLE          ; 䠩
   MOV  CX,FILESIZE        ;᫮ 뢠 ⮢
   LEA  DX,DATA_BUFFER     ;DS:DX 㪠뢠  
   INT  21H                ;⠥ 䠩
   JC   READ_ERROR         ;ࠡ⪠ 訡

;---, 뢠 䠩
   MOV  BX,HANDLE          ; 䠩
   MOV  AH,3EH             ;㭪  䠩
   INT  21H                ;뢠 䠩
   JC   CLOSE_ERROR        ;ࠡ⪠ 訡
   5.4.5   䠩 אַ 㯠.

   ᪨  䠩 אַ 㯠 祬  ⫨  ᫥-
⥫ 䠩,   ⫨  ⮫쪮 ० 㯠. 
אַ  㯠 ।,    ࣠  
ᥩ 䨪஢ , ⠪ ࠧ   -
   ᫥ ( ᫥⥫ 䠩 n-  
 ⥬    ࠧ⥫   ⠬, 稭 
砫 䠩).  樮 ⥬ ⮬᪨ 믮  
᫥.     ணࠬ    믮  ࠡ
ᠬ, ⠭ 䠩 㪠⥫  㦭    -
 ᫥⥫쭮 ⠪ ᫮ ⮢, ஥ ࠧ .

   ᮪ ஢.

    [5.3.3] ᭥  ଠ    䠩 אַ 㯠 
ᨪ.   ⫨稨  ᫥⥫쭮 䠩, 䠩 אַ -
㯠      뢠         ६, 
    ୮  .   OPEN  蠥
᫮, 騬 ࠧ  䠩.  Hਬ, OPEN "R", 1, "NEW-
DATA", 20 ⠭  䠩 NEWDATA ࠧ   20 
( ⮬ 䠩 뢠  䠩 #1).
   ᫥ ⮣  䠩 ,       ࠧ 
⠢騥 ६    FIELD.  FIELD
㪠뢠 ᪮쪮 ⮢   ⢮   ६.
Hਬ,     20     ࠧ  ஬
FIELD 1, 14 AS LASTNAME$, 2 AS  DEPOSIT$,  4 AS ACCTNUM$.   ⮬
  ࢠ   1 㪠뢠,      FIELD
뢠 ࠧ    䠩,  ⮣  ஬ #1.
  ᯮ   筮  ⮬ 浪,     
ᠭ   FIELD.  ॠ RSET  LSET ᤢ 
 , ࠢ   ࠢ (RSET)   (LSET)  
 騥   ஡.   Hਬ,  ⮣,
⮡ ⠢ 䠬 "SMITH"  14-⭮    LASTNA-
ME$,   RSET LASTNAME$  = "SMITH",  ᫨ ६
N$ 뫮 ᢮ 祭 "SMITH",  RSET LASTNAME$ = N$. -
 RSET   ᯮ짮  LSET.  K ᫥⢨ 
뢠    ६,  ६ ᢠ 
14 ⮢.   ᯮ짮  RSET  ணࠬ  㤠  譨
஡  砫 ப ६,  ᫨ 㤥  ᯮ-
 LSET,  ஡  㤠 ࠢ.
   ⬥⨬,     ६   FIELD ⭮
 ப ६.   䠩 אַ 㯠 ᨪ ᬠ-
ਢ  ६ -  ᫮  -  ப. ᫮-
 ६   ८ࠧ  ᯥ樠 , ०-
 祬  祭    ᢮  ,    ⥬
뢠    室 ⭮ ८ࠧ.  
८ࠧ ⮨    窨, ᪮ ᨪ 
ᠬ      ᯮᮡ ।⠢  ᫠   ;  
 ࠡ뢠 ᫮ ᮡ  ࠧ.  ᫮  ॡ
 ⮢  楫 ᥫ,  ⮢ -  ᥫ  筮
筮  쬨 ⮢  -    ᥫ     筮. 
筮  ⠪   ᫮  ॡ   ।⠢  
ᥫ  .     ८ࠧ     ப  
ᯮ짮  㭪樨  MKI$, MKS$   MKD$,    ⢫
८ࠧ  ᫮-ப    楫,  ⢥  ᥫ 
  筮, ᮮ⢥⢥.  筮  㭪樨  -
  ࠬ RSET   LSET,  ਬ, RSET = ACCTNUM$ =
MKI$(X),   X - 楫 ६, ᫨  ACCTNUM$ 뫮 ⢥-
     FIELD.
   ᫥  ⮣    ࠬ RSET  LSET, 
뢠       PUT#. PUT #1, 245 -
頥      245, 䠩 ⮣  ஬  #1.
H    饭,  ⮬ 砥  뢠
    ஬   , 祬  ᫥  -
ᠭ  (稭   1). 뢠   楫-
,   ᫨    뫨  묨.  ⬥⨬, 
       믮  樨  PUT,  ⮬
 , ⠪  ⥪ ,    
⮫쪮  ࠧ,  ⥬    ᠭ   , -
  뢠  祭  ᨨ. 㭪 LOC -
頥  ᫥  ᠭ    䠩 . ᫨ 䠩 
  ஬ #3,   X = LOC(3).
   㭪 LOF ( 䠩) 頥  䠩  . 
। ᫠ ᥩ,  ᮤঠ   䠩,  ࠧ
 祭   .   1  ⮬ 祭 
 ,    ᯮ짮,  ⮡   䠩
  .  ᫨ 䠩    ஬ #2,    
ᥩ ࠢ 32 ⠬,   ॡ㥬  祭   
RECORDNUM = LOF(2)/32 + 1.
    ᫥饬 ਬ 䠩 אַ 㯠 뢠   
 24 , 祬  ࠧ   ६. 짮-
⥫  ணࠬ  訢  ᮤন   ,  
   ,        䠩.  ப
120  砫  . ⬥⨬,   
 뢠 䨧᪨     ࠧ  믮 -
 PUT.  室    ᪮쪮 -
ᥩ, ० 祬  㤥 ᤥ.

100 OPEN "R", 1, "A:NEWDATA.DAT", 24  '뢠 䠩
110 FIELD 1, 18 AS LASTNAME$, 2 AS AGE$, 4 AS WEIGHT
120 R = LOF(1)/24 + 1         ' ᫥  + 1
130 CLS                       '⨬ ࠭
140 INPUT "Enter name:",N$    '砥  (ப)
150 INPUT "Enter age:",A%     '砥  (楫)
160 INPUT "Enter weight:",W!  '砥  (⢥)
170 RSET LASTNAME$ = N$       '頥   
180 RSET AGE$ = MKI$(A%)      '頥   
190 RSET WEIGHT$ = MKS$(W!)   '頥   
200 PUT #1, R                 '뢠 
210 R = R + 1                 '㢥稢 稪
220 PRINT: PRINT "Do another (y/n)?"  ' 짮⥫
230 C$ = INKEY$: IF C$ = "" THEN 220  ' ⢥
240 IF C$ = "y" THEN CLS: GOTO 130    '᫨ ,   砫
250 CLOSE                     ' 뢠 䠩

   । ஢.

   K   㣨 樨  䠩  MS DOS   -
   䠩 אַ 㯠,   ᯮ짮 ࠢ-
饣  䠩,  㣮     ਯ 䠩.  
    ᮧ   묨, ࠧ  ண
   , 祬 ࠧ .
⮤ ࠢ饣  䠩:
   ன ࠢ騩   䠩   㭪樨 0FH  
DS:DX  㪠뢠  .  ᫥ ⮣  䠩    
    אַ  㯠     אַ 㯠
FCB.  ⥬ 맮 㭪 22H 뢠 21H,   ठ
  DTA  䠩 , ᮧ  ᮧ FCB.  -
     ᠭ  , ᫨ ࠧ 
 祬 ࠧ .  쭠    㤥 ந-
 ⮣,  । 맮 㭪樨 22H  .
       㭪樨 22H AL 㤥 ᮤঠ 00, ᫨ 
襫 ᯥ譮.  ⨢ 砥   㤥 1, ᫨  墠⠥
࠭⢠  ᪥  2 - ᫨  ७    ⮣,
⮡    (..  ᫨ ࠧ , ⠭-
 ⥬ , 祬 ,  㪠  FCB).

;--- ᥣ 
FCB       DB   1, 'NEWDATA    ', 25 DUP (0)
DTA       DB   256 DUP (?)

;---뢠 䠩  ⠭  FCB
   MOV  AH,0FH          ; 㭪樨
   LEA  DX,FCB          ;DS:DX 㪠뢠  FCB
   MOV  BX,DX           ;㥬 ᬥ饭  FCB
   INT  21H             ;뢠 䠩
   MOV  AX,256          ;ࠧ 
   MOV  [BX]+14,AX      ;頥   ࠧ 
   MOV  AX,233          ; 
   MOV  [BX]+33,AX      ;頥    
   MOV  AX,0            ;塞 訩  ⮣ ᫮
   MOV  [BX]+35,AX      ;
;---७   DTA  䠩
   MOV  AH,22H          ; 㭪樨    㯮
   LEA  DX,FCB          ;DS:DX 㪠뢠  FCB
   INT  21H             ;뢠 
   CMP  AL,0            ;஢ઠ  訡
   JNE  WRITE_ERROR     ;

;---, 뢠 䠩
   LEA  DX,FCB          ;DS:DX 㪠뢠  FCB
   MOV  AH,10H          ;㭪  䠩
   INT  21H             ;뢠 䠩
   CMP  AL,0FFH         ;஢ઠ  訡
   JE   CLOSE_ERROR     ;

     ணࠬ ࠡ⠥ ࠧ  ஬ ᥩ אַ -
㯠, ।          楫. MS DOS
।⠢  ᯥ樠  㭪  ⮣    ᯮ짮
⮤ FCB, 뢠      㯮.  㭪-
 28H 뢠 21H.   室 DS:DX  㪠뢠  -
 FCB,   ஬      אַ  㯠  
ࠢ  ࢮ  뢠 ᥩ .    㭪
ᮢ襭  筠  襯ਢ  ਬ.   ⢥
⫨稥  (஬   㭪樨) ⮨  ⮬,    CX  
 㪠 ᫮  ᥩ      (  ⠩  "" 
  128 ᥩ,    ⥬ 室 ॡ-
  - ணࠬ     ᫮ ᥩ, 稭
  ).
    CX 頥 ᫮ ॠ쭮 ⠭ ᥩ.  AL 㤥
ᮤঠ 0, ᫨    ᯥ譮  ᠭ, 1 - ᫨  墠-
⠥  ࠭⢠   ᪥,  ⮬  㤥 ᠭ   
.  ⫨稨  㭪樨 22H  㭪 ⮬᪨ 㢥-
稢  ⥪饩 , ⥪饣    אַ  -
㯠  FCB, ⠪     㪠뢠   , ᫥ 
᫥  ⠭.   ⬥⨬,  ᫨   믮  ⮩
㭪樨 ⠭ CX = 0,    ࠧ  䠩  㤥 ⠭ 
ᮮ⢥⢨  ᫮ ᥩ, ࠢ   אַ  -
,  ⠪ ࠧ  १ࢨ஢  䠩 ᪮ -
࠭⢮.

⮤ ਯ 䠩:
    ᯮ짮  㯠 ⮤ ਯ 䠩 -
  ࠧ砥  ᫥⥫  䠩  䠩 אַ 㯠.
 ணࠬ  ᫨   䠩,  ன  -
 ॡ㥬 ,   ⠭   䠩 㪠⥫.
 㪠⥫ 樮   㭪樨 42H 뢠-
 21H.   䠩    BX,  ᬥ饭  䠩  CX:DX
(CX 㤥 ᮤঠ 訩  祭).  ⥬   AL
   0  2.  AL  =  0, 㪠⥫ 㤥 ⠭
 ᬥ饭 CX:DX ⮢ ⭮⥫쭮 砫 䠩;  AL =  1,
㪠⥫ 㤥 ⠭   ᬥ饭 CX:DX ⭮⥫쭮 ⥪-
饩  樨,   AL = 2, 㪠⥫ 㤥 ⠭   ᬥ-
 CX:DX ⭮⥫쭮    䠩  (..   ⠪ ࠧ 䠩
㤥 ७).  ⥫ ᫠ ⨬  ⢥ ᬥ-
饭.    DX:AX  ᮤঠ   㪠-
⥫ (訩   DX).  ᫨ ⠭ 䫠 ७, 
ந諠 訡.  ⮬ 砥 AX 㤥 ᮤঠ 1, ᫨ 㪠
   AL  6 - ᫨ 㪠   䠩.
   ᫥  樮஢  䠩  㪠⥫    אַ
㯠 뢠   ⮩  㭪樨 40H 뢠 21H,
  ᯮ짮    ᫥⥫ 䠩.   
室 BX ᮤন  䠩,  CX  - ᫮ ⮢, ஥ 
.    AX 㤥 ᮤঠ ᫮ ॠ쭮 ᠭ-
 ⮢. ᫨    ⫨砥    ᫠ 饭  CX, 
⭮   (. [5.1.4]).  K 筮,  
訡 ⠭  䫠  ७.     ⮬ 砥 AX 㤥
ᮤঠ  5    訡 ⥫  6 - ᫨  㪠  
 䠩.
    㪠⥫ ࠥ    ஫  ࠧ 䠩  -
,   DTA  ࠧ 䠩  .    ᤢ  
㣮  㯠  ࠧ  䠩.   ⥫,
㫨 䠩 㪠⥫  ࠡ  䠫 אַ -
, ᮤন       ࠧ -
  ᪠  饭  ॡ㥬   .

;--- ᥣ 
HANDLE        DW    ?           ; 䠩
FILEPATH      DB    'A:NEWDATA',0   ;ப   䠩
REC_BUFFER    DB    30 DUP (?)  ; 뢮 ᥩ

;---뢠 䠩
   MOV  AH,3DH               ; 㭪樨
   MOV  AL,1                 ;   
   LEA  DX,FILEPATH          ;DS:DX 㪠뢠  
   INT  21H                  ;뢠 䠩
   JC   OPEN_ERROR           ;஢ઠ  訡
   MOV  HANDLE,AX            ;࠭塞  䠩
;---塞    ⠭ 䠩 㪠⥫
   MOV  AX,30                ;ࠧ  30 ⮢
   MOV  CX,54                ;  #54 (55- )
   MUL  CX                   ;⥯ ᬥ饭    DX:AX
   MOV  CX,DX                ;頥 襥 ᫮  DX
   MOV  DX,AX                ;頥 襥 ᫮  CX
   MOV  AL,0                 ;⠭ 㪠⥫  砫
   MOV  AH,42H               ;㭪 ⠭ 㪠⥫
   MOV  BX,HANDLE            ; 䠩
   INT  21H                  ;⠭ 㪠⥫
   JC   POINTER_ERROR        ;஢ઠ  訡
;---襬    㯮
   MOV  AH,40H               ; 㭪樨
   MOV  BX,HANDLE            ; 䠩
   MOV  CX,30                ;ࠧ 
   LEA  DX,REC_BUFFER        ;DS:DX 㪠뢠  
   INT  21H                  ;襬 
   JC   WRITE_ERROR          ;஢ઠ  訡

    ⫨稨  ⮤ FCB ⮤ ਯ 䠩  ।⠢-
 ᯥ樠쭮 㭪樨     ᥩ אַ -
.  襩 ணࠬ 室 ⮫쪮 ᫨ ⢮
⮢, ⠢  ᥩ, ஥   ᠭ.
   5.4.6 ⥭  䠩 אַ 㯠.

   ⥭  䠩 אַ 㯠   ᮬ  
⭮襭   . MS DOS    䠩  ᪥,
⥬  뢠   頥   .  ⥬  ணࠬ
 ࠧ     筮 ⮣  ࠧ, -
  ᯮ짮  ஢ .  H  㤠-
 ᨬ ஡,    .  㦤-
    䠩 אַ 㯠 [5.4.5] ᮤন -
,      ଠ  ࠧ-
.

   ᮪ ஢.

     ⥭  䠩 אַ 㯠 室   䠩  
।  ,   ᭥    ࠧ, ⭮饬 
  䠩 אַ 㯠.  ⥬  ᯮ짮 
GET#  ⥭ ।   ᪠.  GET #1,23 뢠
   #23  䠩, ⮣  ஬ #1.   ⥭
 ६,      FIELD, ⮬᪨
ᢠ ᮮ⢥饥 祭  .  Hਬ, ᫨
 FIELD    FIELD  1,  20  AS X$, 2 AS Y$,  ᫥
믮   GET 1,23 ६ X$ 㤥 ᢮ -
祭  20- ⮢  23,   ६ Y$ - ᫥
10- ⮢.  ,    RSET  LSET  뤥
  .
     砥  ᫮  , ,       
८ࠧ  ப        㭪権  MKI$, MKS$ 
MKD$.    ⠭  ਣ 祭,  ⥬  ⮡
   뫮 ஢ 樨   ,  ८-
ࠧ   ப   㭪権 CVI, CVS  CVD.   ᫨  Y$
ᮤন 楫 ᫮,    믮 ⭮ ८ࠧ
  Y%  = CVI(Y$),  ⮬ ६ Y%  㤥  ᮤঠ
祭, ஥    ६  । ⥬   뫠 ᯥ-
樠쭮  ࠡ⠭    䠩 אַ 㯠.   ᫨  
뢥 ப 祭 ६,  㢨,   ᫮
 ࢠ  0  65535, ஢   ᨬ ASCII.
      ਬ 뢠 䠩, ᮧ  ਬ 㭪
[5.4.5],  뢮 ᮤন   ॡ ᥩ:

100 OPEN "A:NEWDATA" AS #1 LEN = 24    '뢠 䠩
110 FIELD 1, 18 AS LASTNAME$, 2 AS AGE$, 4 AS WEIGHT$
120 CLS: INPUT "What is the record number";R   ' 
130 IF R*24 > LOF(1) THEN BEEP: PRINT"No such record": GOTO 120
140 GET #1,R                     '⠥   䠩
150 PRINT LASTNAME$, CVI(AGE$), CVS(WEIGHT$)   '뢮 
160 PRINT: PRINT "Do another (y/n)?"    '㤥 ?
170 C$ = INKEY$: IF C$ = "" THEN 170    ' 
180 IF C$ = "y" OR C$ = "Y" THEN 120    '塞, ᫨ 
190 CLOSE                               ' 뢠 䠩

   । ஢.

   ⮤ FCB 㯠  䠩    㭪樨  ⥭ -
ᥩ   㯮.  㣮 ஭, ⮤ ਯ 䠩
ᯮ   㭪,     ⥭ ᫥⥫ 䠩-
.  ⮤ 㯠 ᬠਢ ⤥쭮.
⮤ FCB:
   㭪 21H 뢠 21H ⠥    䠩 אַ
㯠.   㭪, 27H, ⠥  ᫥⥫ -
ᥩ.    ࠢ騩  䠩,    [5.3.5]  
ன  [5.3.3].  ᫥  ⮣  FCB ,   
祭  ࠧ  (DW  ᬥ饭 14)   
אַ 㯠 (DD    ᬥ饭  33).   ᫨ DS:DX 㪠뢠 
   FCB,   뢠 㭪 21H  ⥭ 
  㤥 饭  , 稭  ࢮ  DTA.
   ᫨   ᯥ譮  ⠭,      AL 㤥 饭 0.
  ⮬  ࠭⨨,  ⥭ 諮  訡,  -
  ࠧ      ਢ  ⮬,  
ਫ  ᥩ   ⠭,       .
᫨ 襭      ஬  訬,  祬 ᫮ ᥩ 
䠩,   AL 㤥 饭 1  3.  ᫨  饭  
3,   ⠭ ᠬ   䠩  뫠 ⠭  
. ᫨  饭  1,     뫨 -
.
    ਬ 뢠    頥   DTA:

;--- ᥣ 
FCB         DB    1,'OLDDATA    ', 25 DUP (0)

;---뢠 䠩  ⠭  FCB
   MOV  AH,0FH           ; 㭪樨
   LEA  DX,FCB           ;DS:DX 㪠뢠  FCB
   MOV  BX,DX            ;㥬 ᬥ饭 FCB
   INT  21H              ;뢠 䠩
   MOV  AX,55            ;ࠧ  55 ⮢
   MOV  [BX]+14,AX       ;頥   ࠧ 
   MOV  AX,22            ;   ⥭
   MOV  [BX]+33,AX       ;頥    
   MOV  AX,0             ;塞 襥 ᫮ ⮣ 
   MOV  [BX]+35,AX       ;
;---७   䠩  DTA
   MOV  AH,21H           ; 㭪樨 ⥭   㯮
   LEA  DX,FCB           ;DS:DX 㪠뢠  FCB
   INT  21H              ;⠥ ,    DTA
   CMP  AL,0             ;஢ઠ  訡
   JNE  READ_ERROR       ;
;---, 뢠 䠩
   MOV  AH,10            ; 㭪樨  䠩
   LEA  DX,FCB           ;DS:DX 㪠뢠  FCB
   INT  21H              ;뢠 䠩

     ⥭   ᫥⥫ ᥩ      
ਥ  ᯮ짮 㭪 27H 뢠 21H.  믮
⠢   筮 ⠪ ,   㭪樨 21H,  ᪫-
祭 ⮣,   CX  ᮤঠ ᫮ ᥩ -
     ਥ.   CX 㤥 ᮤঠ
᫮ ॠ쭮  ⠭  ᥩ.  祭  頥  AL
ᮢ  ⥬,  頥 㭪樥 21H.    ⫨稨
 㭪樨 21H  FCB,    ࠭ ଠ  -
  (  אַ 㯠, ⥪饣   ⥪饩
) ⮬᪨ 㢥稢,  ⥬ ⮡  㪠뢠 
᫥ ⠭  ᫥ 믮 㭪樨.
   ⬥⨬,     砥 ⥭ , ⠪   砥 ⥭
᪮쪨 ᥩ,    ⥪饣      ⥪饩  FCB
⠭  祭   אַ 㯠.  ᫨ 
 祭 ⥪饣    ⥪饩 ,   ᮮ⢥-
騩    אַ 㯠,  ᯮ 㭪  24H
뢠 21H, ⮡   த  ᫥   .   ⮩
㭪樨  室 ॣ஢,  ⮫쪮, ⮡ DS:DX 㪠뢠
  FCB.       אַ 㯠 㤥
 祭, ᮮ⢥騬 ⠭  㣨 .

⮤ ਯ 䠩:
     ।饬 ࠧ ,    אַ -
㯠    ⮤  ਯ  䠩.  楤 ⥭ 
䠩    㯮 ⠢ ᮢ襭  
ࠧ, ⥬  ᫥  ᬥ饭    䠩,  ஥ 
㪠뢠 䠩 㪠⥫.  DS:DX  㪠뢠  , 
 㤥 饭 ,  ᫥ 祣  믮 㭪
3FH 뢠 21H.   室 CX  ᮤঠ ࠧ ,
 BX -  䠩.

;--- ᥣ 
HANDLE       DB    ?
FILEPATH     DB    'A:OLDDATA',0
REC_BUFFER   DB    30 DUP(?)

;---뢠 䠩
   MOV  AH,3DH          ; 㭪樨
   MOV  AL,0            ;   ⥭
   LEA  DX,FILEPATH     ;DS:DX 㪠뢠    䠩
   INT  21H             ;뢠 䠩
   JC   OPEN_ERROR      ;஢ઠ  訡
   MOV  HANDLE,AX       ;  䠩
;---塞    ⠭ 䠩 㪠⥫
   MOV  AX,30           ;ࠧ 
   MOV  CX,54           ;⠥  #54 (55- )
   MUL  CX              ;ᬥ饭   DX:AX
   MOV  CX,DX           ;頥 襥 ᫮ ᬥ饭  DX
   MOV  DX,AX           ;頥 襥 ᫮ ᬥ饭  CX
   MOV  AL,0            ;⠭ 㪠⥫  砫 䠩
   MOV  AH,42H          ;㭪 ⠭ 㪠⥫
   MOV  BX,HANDLE       ; 䠩
   INT  21H             ;⠭ 㪠⥫
   JC   POINTER_ERROR   ;ࠡ⪠ 訡
;---⠥    㯮
   MOV  AH,3FH          ; 㭪樨
   MOV  BX,HANDLE       ; 䠩
   MOV  CX,30           ;ࠧ 
   LEA  DX,REC_BUFFER   ;DS:DX 㪠뢠    
   INT  21H             ;⠥ 
   JC   READ_ERROR      ;ࠡ⪠ 訡

;---, 뢠 䠩
   MOV  BX,HANDLE       ; 䠩
   MOV  AH,3EH          ;㭪  䠩
   INT  21H             ;뢠 䠩
   JC   CLOSE_ERROR     ;஢ઠ  訡
   5.4.7 ஢ઠ  ᫥ 権 ⥭/.

   MS DOS   ஢  ࠢ쭮  ந   
᪮ אַ  ६ .  訡 ந室 ⮫쪮 ।,
 ।⢠ ஢ન 筮  ᯮ,  ⮡  
  ᪮.  , ᫨  室,    ᯮ-
ᮡ ஢ન.  ⮨    祭   VERIFY = ON 
䠩  CONFIG.SYS,    ⮬᪨ ⠥    㧪
樮 ⥬.   ᫥⢨,  ᪮ 樨 
஢.   ⢥ ᯮᮡ ஢ન 㯭  -
.  ன ⮤ ⮨  ᯮ짮  ᯥ樠쭮 㭪樨 DOS
 䨪樨 ⮫쪮 ᪨ ᪮ 権. ᫨ -
 䨪樨 㦨 訡,    ᮮ頥  ᫮
᪮ 訡,  ᠭ  [7.2.5].

   । ஢.

   㭪  2EH  뢠 21H  砥   몫砥  ஢.
  AL 1 -   祭  䨪樨  0 -  몫-
. DL ⠪   ࠢ 0.  ⥬  믮 뢠-
.  ⮩ 㭪樨  室 ॣ஢.

;---祭 䨪樨
   MOV  AL,1     ; 
   MOV  DL,0     ;室 室 ॣ
   MOV  AH,2EH   ; 㭪樨
   INT  21H      ;砥 ஢

    । ⥪饣 ० 䨪樨  맢 㭪-
 54H 뢠 21H.    室 ॣ஢.  
AL = 1, ᫨ ஢ઠ 祭  AL = 0, ᫨ 몫祭.
   5.4.8 । ᪮ 訡  ⠭ ᫥ .

   ᪮ 樨 ⮫쪮  ᫮,   讥 -
⢮  訡.  設⢮ ᪮ 訡 㦤
  ﬨ,      ந室.  
ࠧ  ᮡ࠭ , ⮡    ࠧࠡ⪥  -
楤 饣 祭   ⠭  ᫥ ᪮ -
.
   ᪮  訡 뢠  ⨯,   㤥  뢠
 (soft)  ⪨  (hard).   訡  -
ࠢ쭮      䠩: 襭 䠩  
⢮  ᪮  ࠭⢮    ०,
祬  㤥  ᠭ  䠩.   㣮 ஭, ⪨  訡
   ᫥⥫쭮   ६ ᮮ-
⢨   ᪮ ,      ᫥⢨
୮ ࠢ  ஡  ⥫.   ⮬ 砥,
 ᥣ ந  ᪠ । ࠡ⪮.

   ᮪ ஢.

     [7.2.5] ᭥  ⮢ 楤 ࠡ⪨  -
.   ON ERROR  GOSUB  ⠢  ணࠬ  ३ 
楤 ࠡ⪨ 訡   ᪮  訡.
楤 ० ᥣ ।   訡  ᨪ,
  ᪮ 訡     ᫥:

   52      Bad file number.  (H  䠩.)   -
             ⥬ ஬,   ஬    饭 (#1,
           #2  ..)
   53      File  not  found.  (  .) ᯮ  
           믮 ஢ LOAD, KILL, NAME, FILES  OPEN.
   54      Bad file mode.  (H ० 㯠.) ⪠ -
           㯠   䠩 㣨 ࠧ,  ࠢ  ⥬,  
           祣   ,  ਬ, ⪠   ᫥-
           ⥫ 䠩,   ⥭.
   55      File already open.  ( 㦥 .) ⪠ 
           䠩,  㦥 ,   㭨⮦ (KILL) 䠩,
              .
   58      File  already exists.  ( 㦥 .)  ⪠
           २ 䠩  (    NAME)  , ஥
           㦥   ⠫.
   61      Disk full.  ( .) . ᯥ樠쭮 㦤 
           [5.1.4], ⭮饥  ⮩ 訡.
   62      Input past end.   (⥭    殬  䠩.) ⪠
              ᫥⥫쭮 䠩   ६-
           , 祬  ᮤন.   ⮡  ⮩ 訡 -
            㭪 EOF,  ᭥  [5.4.4].
   63      Bad  record number.  (H  .)  ⪠
                  ஬ 訬, 祬
           ᫮ ᥩ  䠩.
   64      Bad  file  name.  (H୮   䠩.)  ᯮ
           ࠬ KILL, NAME  FILES.
   67      Too many files.   (誮    䠩.)  ⠫
                ଠ樨  䠩.  -
             ਠ ⮨   ⮬,  ⨥ 
             䠩  ਢ  ⮬,    㤥  ॢ襭
           ᨬ쭮  ⨬  ᫮  ६  
           䠩.
   70      Disk is write-protected. ( 饭  .)
   71      Disk is not ready. (  ⮢.) H ⭮,
             ᪮  ᪥⮩.
   72      Disk media error. (  ०.)  K ࠢ, 
           ᮮ饭  뤠   ०  ᪥,  
               ᡮ 㤮.
   74      Specified wrong disk  in   RENAME  operation.  (
              樨 RENAME.)
   75      Path/file  access  error.  (訡  㯠   䠩.)
           ⪠  ⠫     ⮬,  䠩.
             ⪠   䠩,  饭  .
            訡   ᥣ  뤠    ⪥ 㤠
           ⥪騩 ⠫.     OPEN, NAME,
           MKDIR, CHDIR  RMDIR.
   76      Path not found.  (  .) Hࠢ쭮  㪠
               .     
           OPEN, MKDIR, CHDIR  RMDIR.

   ᫥ ⮣  楤 ᯮ 訡, 室  -
஢  訡 짮⥫.  K 짮⥫ ᮮ, 
稭  訡 ࠭,   RESUME 뫠  ணࠬ
   ப,  ந諠  訡.   RESUME 
ᮯ஢ ஬ ப, ⮬ ணࠬ   
 砫 ᥩ ᫥⥫쭮 ᪮ 権, ᨬ 
⮣,      ப ந諠 訡 (⬥⨬,   䠩  
뢠   訡).   ᫥饬 ਬ ண-
ࠬ   ⠭  ᫥ 訡, 易  
९ ᪠  ⮩  :

100 ON ERROR GOSUB 5000         '
 .
 .
600 '''
 .
 .
5000 '''
5010 IF ERR = 61 PRINT "Disk full": GOTO 5100
5020 IF ERR = 70 PRINT "Disk is write protected": GOTO 5100
 .
 .
5100 PRINT "Correct the problem, then strike any key"
5110 C$ = INKEY$: IF C$ = "" THEN 5110
5120 RESUME 600

   । ஢.

   㭪 1 뢠 13H  頥   AL , 騩 
᪮ ⥫. 祭  ⮢ ᫥饥:
    0-1   01 = ୠ , , ᫨  3 = 1, 
                   ⪠  묨  ࠭楩 64K
              10 = ᭠ ⪠  
              11 = ⪠   饭   
          2   1  = 㪠 ᥪ  
          3   1  = ९ DMA (   ),
                   , ᫨  0 = 1,  ⪠  -
                   묨  ࠭楩 64K
          4   1  =  ⠭ ୮,  
          5   1  = 訡 ஫
          6   1  = 訡 樨 ᪠
          7   1  =  ⢥  ⥫ (⠩-)
   K   㭪権 饭   MS DOS ᯮ  ⮫쪮
    訡,   㭪樨  ᮮ-
  訡.         訡
⠭ 䫠  ७.  ᫨  ந諠 訡,  
 ⮩ 訡 頥  AX.   , ⭮騥  -
 :

   1      H  㭪樨
   2        
   3        
   4        ᨬ쭮 ⨬ ᫮ 䠩
   5      栭 㯠 (訡 㤮)
   6      H  䠩
  15        ⥫
  16      ⪠ 㤠 ⥪騩 ⠫
  17      H   ன⢮
  18        䠩 ( ᪥   ⠫  ᯮ짮-
           ஢)

   ⠭ ᫥  "" 訡 ᫮.  H
।०   ணࠬ 訡.   㣨  -
訡 ⢨ 짮⥫.  ᫨   ⢥砥 ᠬ -
⥫,  ந諠 ᪠ 訡.  ࠧ [7.2.5] 
  楤 ࠡ⪨ ᪨ 訡.
    MS DOS 3.0  ७  訡.     
祭   㭪樨 59H 뢠 21H,  䫠 ७-
   訡.  㦤 ⮣  .
 [7.2.5].




                          6. ਭ.

    1. ࠢ ࠡ⮩ ਭ.

   MS DOS  ࠡ  ६ ࠫ묨 ன⢠ (LPT1
- LPT3)   ⮩    ࠢ . ᫥⥫-
  ਭ ࠢ  筮 ⠪ ,    ࠫ,
 ᪫祭 ᯮᮡ,   뫠  ਭ; 
ଠ  ਢ  ࠧ 1  7.   K  ࠫ쭮
ன⢮  ᢮ .   ࠢ ६ ॣ-
ࠬ  /뢮    ⮢  ॣ஢  ࠧ  
 .   BIOS ᮤন   
  .    ᮮ⢥  襬  
㯯      ᮢ  ⮢.         LPT1  -
0040:0008,    LPT2 - 0040:000A  ..  K   祭
  LPT -  । ,     ਢ
⠡.  ⮩  稭  ணࠬ,    אַ  
ࠫ  ,  ᪨ ,    ᯮ-
. ⬥⨬,   樠樨   ᢠ-
 祭 0,  ᮮ⢥騩   ⠭.

                     室     ࠢ

஬  (PC/XT/AT)       3BCH        3BDH      3BEH

 ਭ PC/XT
 ਭ PCJr              378H        379H      37AH
᫥⥫쭠/ࠫ쭠
 AT (⠭  LPT1)

᫥⥫쭠/ࠫ쭠      278H        279H      27AH
 AT (⠭  LPT2)

     室  -    , १  
室   , 뫠  ਭ.  -
  ᮮ頥  ࠧ ଠ   ਭ;    
ﭭ 訢 ,  ⮡  ᯮ  ,   
浪   뫠 .    ᮮ頥 ⠪,
 ந諠 訡  ਭ.   ࠢ 樠-
   ࠢ 뢮 .   ⠪ ⠢-
 ࠫ     権  뢠,   ⥬ ⮡
ਭ  뫠 뢠  ,   ⮢  ਥ
। ᨬ, ⠢   ᢮  㣨 .
 祭 ⮢ ॣ஢   ࠢ:

 ࠢ
     0    0 = ଠ쭠 ⠭, 1 = 뢠  뢮  
                 
        1    0 = ଠ쭠 ⠭, 1 = ⮬᪨ ॢ
                 ப ᫥  ⪨
        2    0 = 樠஢  ਭ, 1 = ଠ쭠
                 ⠭
        3    0 = ⬥ 롮 ਭ, 1 = ଠ쭠 ⠭
        4    0 = 뢠 ਭ 饭, 1 = ࠧ襭
      5-7     ᯮ
 
    0-2    ᯮ
         3   0 = 訡 ਭ, 1 =  訡
         4   0 = ਭ off-line, 1 = ਭ on-line
         5   0 = 㬠 ⠢, 1 =  㬠
         6   0 = ਭ ⢥ত ਥ ᨬ, 1 = ଠ-
                  ⠭
         7   0 = ਭ , 1 = ਭ ᢮

   H   ᭮,  ⮡   ணࠬ  
楤  ⠭   訡,   ࠡ  
ਭ஬.  ᠭ ணࠬ  稭  ஢ન
⮣,  ਭ 易  設 (on line). ᫨ ᮥ 
 ਭ,  ணࠬ    짮⥫ 
     㤥 ࠡ. K஬ ⮣,  楤 -
 ⠭     訡 ਭ,  ⮬
⥫  ,  ⮡  뫮 室  ᭮    
㬥.
   6.1.1  樠    ਭ/ୠ  樠
ਭ.

   ணࠬ   樠஢   ਭ (LPT1
-  LPT3)  ।  ᯮ짮 ਭ.     ਭ
 ⠪ ୮ 樠஢  ᫥ ࠭ 稭
訡  ਭ.  H ⠩ 樠  ਭ  -
樠樥 ᠬ ਭ.  樠 ਭ  ७-
   ਭ.   ந室 ⮬᪨   -
   設⢥ 砥  ਭ     ୮ -
樠஢   몫祭  ୮ 祭.  H ண-
ࠬ  ୮ 樠஢  ਭ,  ⮬ ᫥, 
    ⠭ 砫 ࠬ,    ਭ
ᯮ  , ⬥    ᯥ樠 , ⠭
⠡樨   ..  ⠥ ࠢ 襣  ⮭  ந
⠪  ਭ,  ணࠬ 蠥 ࠡ  .
   모 ᮪ ஢  樠   ਭ ⮬-
᪨,    ணࠬ  몥 ᥬ ॡ   ⮩  楫
 楤.   㣮  ஭,  ⠭ 砫
ࠬ஢  ॡ   ணࠬ. H ਭ-
, ⠪     ᮭ᪨  ਭ,    " 
",  ਢ    ਭ. H ᪮
  ਭ  ⠪ ,  ணࠬ  ।ᬠ-
    ᢮ 饩  ⠭    
ࠬ஢.  Hਬ,      몫祭 ᨢ,
몫祭 ⭮   ..  H   맮 ⮩
楤  楤 室  Ctrl-Break.
     ,     ਭ  ᨬ  
    ,   祭    ⪨,  騩
ப (           楫  ப ).
    ᯮ     ਭ,    ᫥
⮣,  த   ணࠬ  訫. K 稭
  ।   ਭ,   ᨬ  -
.  ⮡  ⮩  ஡,   뢠  
। 砫 ;   ⢥ ࠢ 襣 ⮭,  
 ⠪  襭  ணࠬ.     뫪 
ਭ  ASCII 24 ( ⮬ ࠬ   ).

   । ஢.

   㭪  1 뢠 17H BIOS 樠  ਭ  
頥 , 騩  .    DX  
-  ᫮  0  2  LPT1 - LPT3, ᫥ 祣 맮  뢠-
.    ਭ  (  㦤  [6.1.2])
頥  AH.

;---樠 LPT1
   MOV  AH,1       ;㭪 樠樨 ਭ
   MOV  DX,0       ;LPT1
   INT  17H        ;஢ 樠

   H ஢.

     ࠢ  뢮    ਭ  
,  뢠 樠  .  ॣ 
   2 , 祬   .  H,
    LPT1  ࠭  祩 0040:0008,  LPT2
-   0040:000A  ..   祭 ⮫쪮 訥 5 ⮢  -
 ࠢ 뢮.    2 -  樠樨 ਭ 
筮   ⠭  1.   樠樨   
    0   ⠪⮢ ⮣ 横 (3000  AT
    1/20  ᥪ㭤,  ᯮ  稪  ६  ⮪  BIOS
[2.1.5]).     㦭, ⮡  ⠭ ⮫쪮  3
(ਭ  ࠭).  ⮬ 諨   祭 12,  ᤥ
প,  ⥬ 諨   筮  ( 뢠) -
樠 祭, ஥ ࠢ 8.
     ਬ 樠 LPT1:

;---樠㥬 LPT1
          MOV  DX,ES:[8]    ;뢠    DX
          INC  DX           ;ਡ塞 2   
          INC  DX           ;
          MOV  AL,12        ;祭  樠樨
          OUT  DX,AL        ;稭 樠
DELAY:    MOV  AX,1000      ;砫 ⮣ 横
          DEC  AX           ;㬥蠥 稪
          JNZ  DELAY        ;塞 1000 ࠧ
          MOV  AL,8         ;筮 祭  ॣ
          OUT  DX,AL        ; 樠樨
   6.1.2 ஢ઠ ⮣,  ਭ 易  設.

   ணࠬ ᥣ  ஢,  ਭ 易   -
, । ⥬,  ᫠   뢮.   ⠭, 
ਭ   ⮢, ⠪   3 ॣ  ਭ  -
  1  ⮬ 砥.   H  ᫮ 筮 ।-
 祬 ਭ  ⮢: 몫祭  , ⬥ 롮 ਭ-
     㬠.  ந室 - ⮣,  ਭ-
  ࠧ ந⥫ 뫠 ࠧ  ⮢   ॣ
 ਭ,      室  筮 -
.    ॣ   ,   뢠
  ﭨ ਭ,   ॠ쭮  祭 ⮢ 
  ᮮ⢥⢮ ⨬ ᫮ ( 3   뢠,  
ਭ 몫祭,  4 -    ⬥  롮 ਭ   5 -
  㬠).  Hਢ 祭   ॣ
  ⠭ "ᮭ", ஬ 筮 ᫥ IBM:

   祭         窠 ⮢          

     223             11011111           ਭ ⮢
      87             01010111           ਭ  ⮢
     119             01110111            㬠  ਭ
     247             11110111           ਭ 몫祭

          1 , 祬 -
  ਭ.        LPT1 ࠭  
0040:0008,   LPT2 -   0040:000A  ..    ,
 ᫨ ਭ  몫祭,     ॡ ஥ ६
  樠 ᫥ 祭.  H 稭    
,  ॣ     ᮮ,  ਭ 易 
設  ⮢  ਥ .

   ᮪ ஢.

    楤 ஢ 易  ਭ  設  -
 짮⥫  , ᫨ .  ᯮ 祭 
襯ਢ  ⠡.   K 㦥 ⬥砫, ⠪  室  
室  楤 饣  祭,  㤥 㦨-
  ⢮ ࠧ ਭ஢,    室,  
 ࠩ    饣  ன⢠.  ⬥⨬,  
ப 120  塠⭮ ᫮, ⥬ 㬭 -
   256      襬  .    祭
  ॣ     祭  祭  
  1.

100 '''砥  LPT1  ஢塞 ⮢  ਭ
110 DEF SEG = &H40              '㪠뢠   BIOS
120 PRTRBASE = PEEK(9)+256*PEEK(8)+1  ' ॣ 
130 IF INP(PRTRBASE) = 223 THEN 180   '᫨ ਭ ⮢
140 BEEP                        '   ஢ન
150 IF INP(PRTRBASE) = 87 THEN LOCATE 1,1: PRINT"Strike the
                               SELECT key": GOTO 150
160 IF INP(PRTRBASE) = 247 THEN LOCATE 1,1: PRINT"Turn the
                                printer on": GOTO 160
170 IF INP(PRTRBASE) <> 223 THEN 170  ' 樠樨
180 ''' ਭ on-line --  稭 
190 LPRINT Z$
   । ஢.

    祭       ਭ  ᯮ짮-
  㭪 2 뢠 17H.   室 DX ᮤন   LPT
(0-2  LPT1-3).  㭪  뢠  ᯮ㥬 
     ᪫饣    㣨, -
⮬ 祭 ⫨  ਢ :

   祭         窠 ⮢          

     144             10010000           ਭ ⮢
      24             00011000           ਭ  ⮢
     184             10111000           ਭ 몫祭

  室 ,   祭   ਭ
  ਭ.   H  ଠ "몫祭    ⮢"
  3  ࠢ 0.

   H ஢.

    ਬ   ᠬ  ⮥  -  ஢塞  on-line
ॣ .   祭   ᯮ -
  LPT1.

;--- ᥣ
MESSAGE    DB   'Printer not ready - strike any key when OK$'

;---஢ઠ 易  ਭ  設 (on-line)
   MOV  AX,40H               ;ES 㪠뢠    BIOS
   MOV  ES,AX                ;
   MOV  DX,ES:[8]            ;砥  
   INC  DX                   ;ᬥ饭  ॣ 
   IN   AL,DX                ;砥    AL
   TEST AL,1000B             ;஢塞  3
   JNZ  GO_AHEAD             ;᫨ ਭ on-line,  ।
;---⠥ ᮮ饭  訡    
   MOV  AH,9                 ;㭪 뢮 ப
   LEA  DX,MESSAGE           ;DS:DX 㪠뢠  ᮮ饭
   INT  21H                  ;⠥ ᮮ饭
   MOV  AH,7                 ;㭪  
   INT  21H                  ;   ( )
GO_AHEAD:                    ;த ணࠬ
   6.1.3    訡 ਭ   ⠭  ᫥
.

   ஢ઠ 訡    ४   ⮬,   㡥-
,  ਭ 易  設.  訡 ਭ  ந-
室      ணࠬ   ⮢ -
⠭   ᡮ.    ਭ   ந室
ᠬ ࠧࠧ  訡,  ⮫쪮    ⨯ 訡 
ଠ   ᥡ  .   訡 "⢨  㬠",
訡 "⢨ 裡   設"  饥 ᮮ饭 "ந諠
訡".  K 㦥 ਫ  [6.1.2],   ਭ  ᮮ
  訡   ࠧ,  ⥮᪨ ॣ -
  ᯮ ᫥騥 :

    3 = 0  ந諠 訡  ਭ
    4 = 0  ਭ  易  設 (off-line)
    5 = 1  稫 㬠  ਭ

  ⭮,   4   ᯮ짮  㪠  ࠧ.
     ,   1 , 祬
  ਭ.    LPT1 ࠭  
0040:0008,  LPT2 -   0040:000A  ..
   H  ஢,   ணࠬ 뫠   ਭ,
  ﭭ 頥   7 ⮣ ॣ, ⮡ ஢-
 ⮢  ਭ ਭ । ᨬ. H᫮  ⮬
஢   ⮬   3, ⮡ 㧭  ந襤襩  訡.
᫨ ந室 訡,  㥬 ⠬ 4  5,   ࠩ
  3 㤥 ࠢ 0.  ணࠬ   ஠-
஢ 訡,  ⥬     짮⥫ ࠢ
. ⬥⨬,   㭪  DOS,   뢮 ᨬ 
ਭ  (㭪  5 뢠 21H - .   [6.3.1]),  
⠢ 뢭  ஢  ਭ   訡 ⠩ -
।⢮   MODE.  । 㧪 ணࠬ,  ᯮ饩
㭪 5,     MODE  LPT1: ,,P (  -
       䠩 AUTOEXEC.BAT,  ⥬ ⮡    ᥣ
믮﫠  㧪 ⥬).
     訡 ਢ   ⮬,    ⠭ 
    ।ਭ - ⢨ ० 祬   㤥
த. 誮 ⥫쭮  짮⥫ ணࠬ, ᫨
  㬥  㤥     -
 訡  ਭ.  ⥫쭮 த뢠 楤
⠭   訡  ணࠬ   
砫 ⮩ ࠭,    ன  ந諠  訡.  H室
ᥣ  㪠⥫  뢮     砫 
  ࠭.   砫 ࠡ 楤 ⠭  
  짮⥫  ⠢   㬠,  ⥬
த     砫 ⮩ ࠭,   ன  ந諠
訡.

   ᮪ ஢.

    ᨪ ᯮ  訡 ᫮  ਭ. K
訡 24 頥   ⬥ 롮 ਭ,   27
-  ਭ 몫祭      㬠.   
    孨 㦥 訡,  ਢ
 [7.2.5]. K  ᮦ  䥪⨢  ⫠ ⮫쪮  27.
⮡  ॣ஢   24 ॡ ਬ୮  ,  
祭  ணࠬ  ஦.   H ᫨誮  אַ
 ॣ  ।  樥 .   ⮤
ࠡ⠥ ।  砫  ,    祬   , ᫨ 
६  ந ⬥ 롮 ਭ. ਢ 楤-
 ࠡ⪨ 訡 ਭ:

100 ON ERROR GOTO 1000     '⠭ ࠡ 訡
 .
 .
1000 '''஢塞 ந諠  訡  ਭ
1010 IF ERR = 24 OR IF ERR = 27 THEN GOSUB 2000: RESUME
 .
 .
2000 BEEP: LOCATE 1,1: PRINT"Printer not ready"
2010 PRINT "Strike any key when ready"
2020 IF INKEY$ = "" THEN 2020     ' 
2030 RETURN

   । ஢.

   K 㭪 0 뢠 17H  뢮  ᨬ  ਭ, 
  頥   ਭ  AH.  ஢  祭
⮣  ᫥ 뫪   ᨬ. BIOS ᫥ -
   .  筮  0   祭,    
砥    ⠭,    ந室  訡  ⠩
(ਭ   易  設).   ᫥饬 ਬ  ஢
 ⨯ 訡:   訡  "ਭ   ⮢"  訡 "-
⢨ 㬠".   ਬ ।,   砫  
࠭ (.. ᫥   ॢ ଠ) ணࠬ -
 㪠⥫  砫 뢮 ,    ६-
 STARTING_PTR.   ணࠬ   訡-
     砫 ࠭,    砫 ᥣ -
. K筮 ਭ   ୮ 樠஢ ।
୮     ⠭    ࠬ.
( ਬ   ஢ 訡 -    
   ࠡ祩 楤ன.)

;--- ᥣ 
MESSAGE1   DB 'Printer off-line - strike any key when ready$'
MESSAGE2   DB 'Printer out of paper - strike any key when ready$'

;---뫠 ᨬ  ஢塞  訡
NEXT_CHAR:  MOV  AH,0      ; 㭪樨
   MOV  DX,0               ;롨ࠥ LPT1
   MOV  AL,[BX]            ;BX 㪠뢠  
   INC  BX                 ;㢥稢 㪠⥫
   INT  17H                ;뫠 ᨬ  ਭ
   TEST AH,00001000B       ;뤥塞  3 (䫠 訡)
   JZ   NEXT_CHAR          ;᫨  訡,  ⠥ 
   TEST AH,00100000B       ;뤥塞  5 (⢨ 㬠)
   JZ   OFF_LINE           ;室 ᫨  㬠   浪
   MOV  AH,9               ;⮢  ᮮ饭
   LEA  DX,MESSAGE2        ;DS:DX 㪠뢠  ப
   INT  21H                ;뢮 ப
   JMP  SHORT RECOVER      ;室  ⠭
OFF_LINE:  MOV  AH,9       ;⮢  ᮮ饭
   LEA  DX,MESSAGE1        ;DS:DX 㪠뢠  ப
   INT  21H                ;뢮 ப
RECOVER:   MOV  BX,STARTING_PTR  ;⠭ 㪠⥫
   MOV  AH,0               ;㭪  
   INT  16H                ;
   CALL PRTR_INIT          ;樠 ਭ
   JMP  NEXT_CHAR          ;稭   砫 ࠭
   6.1.4 ४祭    ᪮쪨 ਭࠬ.

   K, ᭠饭 ᪮쪨 ࠫ묨 ⠬ 
 ६ ᮥ묨    ਭ஢. 뢮
 ७ࠢ   ਭ  㣮  ᯮᮡ-
.  ᯮᮡ ⮨   ⮬,  ⮡  ᯮ짮 ⮫쪮 ⠪
  뢮   ,  㪠뢠    ਭ
 ⢫ 뢮.       ⠪ , 
   ᯥ䨪.
   ன  ᯮᮡ ४祭 ਭ஢ ⮨   ᯮ짮
뢮  㬮砭  LPT1,  㪠  㣮 ਭ, -
 㤥 ᯮ짮  ⢥ LPT1.  ⨣ -
   ,  ⭮饣    LPT1.   
࠭    BIOS  祩 0040:0008.   
  ᮬ  LPT2  3 (࠭騬  祩 0040:000A
 0040:000C)   ⢥ LPT1 㤥 ᯮ짮 㣮  -
.

   ᮪ ஢.

    ᨪ, ᫨ ਭ     ஬ OPEN "LPT1" AS
#1,   ⮡ ४  㣮 ਭ  ᭠砫  -
  CLOSE #1,  ⥬   㣮 ਭ  
 OPEN "LPT2" AS #1.  ᫥⢨   PRINT #1
 ࠢ ᢮ 뢮    ன  ਭ.    
㤭  ⢨  ணࠬ, ᯮ   LPRINT,
᪮ LPRINT  㬮砭 뫠  뢮  LPT1.  ⮬
砥  室    ਭ஢.  -
 ணࠬ   ᨪ      , ४ LPT1 
LPT2.     ୮ ᯮ짮 ४砥    ⭮,
 ⥬  ࢮ砫쭮 䨣樨.

100 DEF SEG = &H40     '㪠뢠    BIOS
110 X = PEEK(8)        '砥 訩   LPT1
120 Y = PEEK(9)        '砥 訩   LPT1
130 POKE 8,PEEK(10)    '७ᨬ 訩   LPT2
140 POKE 9,PEEK(11)    '७ᨬ 訩   LPT2
150 POKE 10,X          '뫠 訩  LPT1  LPT2
160 POKE 11,Y          '뫠 訩  LPT1  LPT2
170 SYSTEM             '室  ᨪ

    ணࠬ 㤥  祭  ,  ᫨  ⮢ ணࠬ
ᯥ祭    㦭 ਭ.   ⪮-
஢  ࠭  ᪥, ᪠   OTHERPRN, ᫥ 祣
  㤥  ⮫쪮     ( ⢥     DOS),
⮡ ४  ਭ   ਭ. ᫨    ࠭-
   ᨪ,  ᮧ  䠩 OTHERPRN.BAT   -
   ப BASIC  OTHERPRN.  K   ⠥ OT-
HERPRN,  㤥 ⮬᪨ 㦥 ᨪ,   㧨
  믮  ணࠬ  OTHERPRN.BAS,  ᫥  祣  ୥ 
樮 ⥬.  H室, ࠢ, ⮡  ᪥  
 ᨪ BASIC.COM.   ,    
। 襭   ணࠬ । ⥬,    㤥
ᠭ  , ᪮  ᫨    ,   
ᥡ.
   H ஢.

     ᯮᮡ,  ணࠬ  ᥬ    
ਭ,    뫠  , ⮨  ᯮ짮
  ⮫쪮 㭪樨 0 뢠 17H [6.3.1].    㭪
ॡ, ⮡  ਭ  饭  DX.  ६-
    ⮣ ,  ⥬ ⮡        
.    ⮨    ᮢ LPT1
 LPT2  LPT3.  ணࠬ   . K  
⪨ ⨫,      COM ଥ,  ᭥
 [1.3.6].

;--- 묨 ᠬ LPT1  LPT2
   MOV  AX,40H          ;ᥣ   BIOS
   MOV  ES,AX           ;ES 㪠뢠  
   MOV  BX,8            ;ᬥ饭    LPT1
   MOV  DX,ES:[BX]      ;࠭塞   LPT1
   MOV  AX,ES:[BX]+2    ;࠭塞   LPT2
   MOV  ES:[BX],AX      ;塞   LPT2
   MOV  ES:[BX]+2,DX    ;塞   LPT1
    2. ⠭ ᯥ䨪権 .

     ⠭  ࠧ ᯥ䨪権, ⭮   ଠ
࠭, ⨫   ..,   ਭ 뫠 ᯥ樠
ࠢ騥  .     뫠  ਭ     
㣨 . H         
᫠  32-   ASCII.  ࠢ騥  (-
᫥  [7.1.9]) 樨 ⠪   ⢨ ਭ,
 ॢ ப  ॢ ଠ (ண ࠭).  
設⢮ ᯥ䨪権  ⠭ 뫪 Esc--
⥫쭮⥩,       ⮢ ᫥
 ᨬ Esc,  ண ASCII 27.  H砫  Esc -
  ਭ,   ᨬ()  ᫥      ᫥
஢  ,    .  Esc-᫥-
⥫쭮 筮   ᨬ-࠭⥫, ᪮ ਭ-
 ""   ᫥⥫쭮.   쪮  
,  ᫥⥫쭮   ࠧ ,  -
 ࠭稢騩 ᨬ,   ⢥ ண ᥣ ᯮ-
  ASCII 0.
        ᯥ䨪樨 ⠭ ⨬ 
   ,      ⬥. K ⮫쪮
㤥  祭  , ਬ, ન,    㤥  -
⢫   ,   㤥 ᫠  ⬥ ન-
.   ਭ   饭  ⬥ ⠭
ᯥ䨪権.  H ᫨ ந諠 訡  ਭ  ਭ 
몫祭  祭,  室  ᭮ ⠭  ᯥ-
䨪樨.
   設⢮  ⠭ ᯥ䨪樨 ਭ  -
蠭  묨,    .  Hਬ,  
᫮, ஥   뤥  ⮬,   ।-
   Esc-᫥⥫쭮,   饩   , 
  Esc-᫥⥫쭮, 몫饩 .  ᪮
㭨ᠫ ⠭      ,    -
짮   ⥩ ॡ, ⮡   -
ন ਭ  뫨  ᠭ  ࠩ.  K  ࠩ
८ࠧ 樨, 㥨 楤ன ,   -
, ᯮ㥬  ਭ஬.
    ᥬ 뫪   ⢫ ᠬ  -
,     ᨪ   ,  ,  뫠騥
ࠢ騥  (LPRINT  PRINT#),   窮 
⮩.   ⨢ 砥   ⮬᪨ -
  뫠    ⪨/ॢ ப.
   㦤  ਬ  ᫥ ࠭  ᭮ ⭮
 ᪮ ਭ IBM.  K, ᯮ㥬 ⨬  ਭ஬,
⮫쪮  "⠭", ᪮쪮    㣮 ⮪.  
让 ⥯  易  ⥬,   ⮪ ᯮ
 ᮭ᪨ ਭ (  ਭ    IBM PC 뫨 
Epson),    ⠢    ᯮ㥬  ਭ஢.
ࠢ騥 ,  ᯮ㥬  ਭࠬ  IBM  ࠢ  
ࠧ  [6.2.7].   ଠ, ਢ   ࠧ,
  ਬ  ⮬  ਭ,     ࠡ⠥,
 設⢮  ਭ樯 ਬ.
   6.2.1 ⠭ ⥪⮢  ᪮ ०.

   ਭ  ᥣ 室  ⥪⮢ ०,     
 ᯥ樠쭮  ॢ  ᪨ ०. K, ⠭-
  ᪨  ०,  ᮮ  ᫮  ⮢
᪨  㤥  ।  (    ப) 
᫥  ⮣,   ᫮ ⮢ 㤥 ஢  -
᪮ ࠦ, ਭ ୥  ⥪⮢ ०.  ⮩
稭  ,  ॢ ਭ  ⥪⮢ ०.
   ᫮  ᪨ ०  ࠧ ਭ஢ ࠧ.   
,     ⠭騬  ᪨  ० ᫥ 2
,  㪠뢠騥  ᫮ ᪨ ⮢ 㤥 ।
(᭠砫 訩 ).  ⮡  ᫨ 祭   -
⮢,  ࠧ ᫮ ⮢   256    १
 ன ,  ⮪ -   .  ⨬  ⠬
 ࠧ ᫥  .
   K   । 楯 ⮢, ᮮ⢥  쬨
⨪ 窠  樨  ப. 訩  (1) ᮮ-
   ,  訩  (128) - .   Hਬ,
⮡  ࠬ, 諨 ᭠砫 ,  ண -
  ⮫쪮   , ⥬   ண  ⠭  2
   .. ᫥ 쬮  ᯮ    
⭮  浪.   祭 ࢮ  㤥 1, ண -  3
(1+2), ⥬ 7 (1+2+4), ⥬ 15 (1+2+4+8)   .. H 㭪 6-1
ࠦ  ⨭.
       ࠬ  ᨪ   ᪮  ਭ  IBM
 ᫥騩 :

100 LPRINT CHR$(27);CHR$(75);CHR$(15);CHR$(0);CHR$(1);CHR$(3);
        CHR$(7);CHR$(15);CHR$(31);CHR$(63);CHR$(127);CHR$(255);
        CHR$(127);CHR$(63);CHR$(31);CHR$(15);CHR$(3);CHR$(1);

     ॢ  ਭ    ᪨ ०  480
窠,  ᫥騥  - ᮮ,  㤥 । 15  ⮢
᪨ ,  ⥬    ᫥⥫쭮 ⮢ -
. K筮   ᠬ  ணࠬ஢ 㬭, ࣠-
 横,  ஬  ।  . ⬥⨬, 
 ஡  ⮬ 砥 , ᫨ 㪠 ᫮ ⮢
 ᮮ⢥   뫠  ⮢.  ⮡ ᮧ ஡
  ᪨ 䨣ࠬ 뢥 ᪮쪮 ⮢   㫥
祭.   ᨪ,      ப 뢮  80
⮢ ᪨ ,   ।⥫쭮  ⠭
"᪮"  ਭ  ਭ.    ⮣    
WIDTH "LPT1:",255.
   ᪨  ਭ  IBM   ४  ᪨  ०,
    "⠭".  ⠪:

27,75  480 祪  ப. Hଠ ०. ᨬ 480 ⮢
         .
27,76  960 祪  ப.  ਧ⠫쭮 ࠧ襭,
           ( ⭮). ᨬ
       960 ⮢   .
27,89  960 祪  ப,   ଠ쭮 ᪮ (-
        ⭮  ᮪ ᪮).  窨, ਫ-
       騥  ਧ⠫,    ⠭, ᪮
         ᯥ  饩 . ᫨ 
       ⪠  ,   窠 㤥 ஢-
       . ᨬ 960 ⮢   .
27,90  1920 祪  ப,    (⢥ୠ
       ⭮). ᥤ 窨  ਧ⠫  
        ࠩ   3 窨 (.. 1 ⠥, 2 ய᪠-
       ). ᨬ 1920 ⮢   .

   ०   ਫ騥   ਧ⠫ 窨 
   ⠭.  ⮡  ய᪨   窠,
୨    ,  ᤢ  -
  ࠢ  ᤥ ன 室, ᯮ   .  
ࠢ ⭮⥩  뢠   ⥬  ࠢ-
騬   ࠧ ਭ:

  K         ᪨  ⭮  K  யਭ

 27,75          480 祪     1108      560          480
 27,76          960 祪     2216       -           960
 27,89          960 祪     2216       -           960
 27,90         1920 祪     4432       -          1920

   ⭮  ਭ 㭨  ਭ஢ IBM ⥬,     
⠭ ⠡ 樥 (aspect ratio)  -
 ࠦ.  樥 ࠦ ࠧ ਧ⠫
 ⨪ ﭨ  窠. 筮 ⥫ -
樥  1:1, ᪮  ⨢ 砥 㤭 ஢  -
᪨ ᫥. H    ஢  ᪮ ࠭ 
⮡ ⠡ 樥  ⠪ ,   ᯫ.    -
࠭ ० 㬥७ ࠧ襭 5 祪  ⨪ 
    ࠧ,  6 祪  ਧ⠫.     ᮮ⢥
⠡ 樥 5:6      祭 ᯮ
 㬮砭 梥 ਭ஬.  ᪠ ⮫쪮  樥
1:1  5:6.
   6.2.2 ࠢ ﭨ  ப.

   ᫨    ਭ   ਭ, 騥  ᯥ樠
 䮯ந⥫,     ⢫ -
.     ᪨ ࠦ  筮,   
⮬ 砥      ப. K ASCII 10 - ⠭-
  ࠢ騩  ॢ ப.  뫪   ਭ
( ।饣  Esc) ਢ   ⮬,  㬠 㤥
த  ।   㪠 ࢠ.  筮, ᫨  ॢ
ப  뫠       ⪨,   
  頥    㬠   ᭮ 
 ⮩  ப.    ᤥ ⠪, ⮡ ॢ ப
 ⮬᪨    ⪨. ⨬ ࠢ
४⥫  ਭ.      ᤥ ⠭  1
ॣ ࠢ 뢮 (. [6.1.0]).   ਭ 
    몫  ⮬᪨  ॢ  ப  
ࠢ   27,53,      -
 ப    27,93.
    㬮砭 ᪨  ਭ   ᯮ ࢠ 
ࠢ 1/6  (..  뢮 6 ப  )   ⮬ ०
ᥣ  , 뫠 ࠢ騥   27,50 ( 
ᯮ  ⠪  ⠭    ࢠ  
ப, 㦤묨 ).   ⮣ ਭ   
।।   ࢠ, 1/8   7/72  .
⢥騥  ࠢ騥  27,48  27,49.
      ⮭ ࠤ  ࢠ.  -
᪨ ਭ ᯮ  , 騥  -
  祭  稭.    ࠢ  ᯮ
2-塠  Esc-᫥⥫쭮,  ன ᫥ ᫮ 72-
 216-  , ।   ࢠ. -
쭮  ﭨ  業ࠬ  祪 ࠢ  1/72  .
ࢠ 8/72     ⠢  ஬⪠   ப (9
ப    ).  ⠭ ࢠ 6 ப    
᫮ 12/72 .  H, 1/216 ࠢ 1/3  1/72.  
 ⠪ 稭  饩  ᫥  ᤢ
 業 ப,  ⥬ ⮡  窨  ஬ 室 
஬⪨, ᯥ稢   ᮪ ⢠.    
Esc-᫥⥫쭮:

            Esc-᫥⥫쭮

    72-        27,65,n ( n  1  85)
   216-        27,51,n ( n  1  255)
   216-        27,74,n ( n  1  255)

K   ࢠ   72-   ⠭ ⨢묨
  ,    ன ࠢ騩 : 27,50. K
﫮 ,       ⠪ ᯮ짮 ⤥쭮
 ⠭ ⠭⭮ ࢠ  1/6 . ᫨ ࠭
뫠 ᯮ짮  27,65,n,   ⠭ ࢠ-
  1/6   ᫠  27,65,12,27,50.  ࠢ-
   ࢠ  1/216     .   
⠭,    ᫥騥 ॢ ப   믮-
  㪠 ࢠ; ன   ⮫쪮  
ॢ  ப,  ⥬ 頥 ࢠ,   ⢮
 ⮣.
    ⠡ ࠢ  ࢠ, 뢠
  ⥬  ࠢ騬   ࠧ ਭ IBM:

K    ᪨  ⭮  K  㩭  誠    -
       ਭ      ਭ   ਭ   ਭ     ਭ            ਭ

27,48   1/8         1/8        1/8        1/9        1/8       1/8      1/8
27,49   7/72        7/72       6/72       1/9                  9/96     7/72
27,50   1/6         1/6        1/6        1/6        1/6       1/6      1/6
27,51               n/216      n/144                                   n/216
27,65   n/72        n/72       n/72                            n/72    n/72
27,74               n/216      n/144                                   n/216

   Hᨬ  ⮣    ࢠ, ਭ-
 ᥣ ஫     , ⮬
ய᪨ 樨 ᥣ  ६.
   6.2.3 ࠢ  㬠.

   㬠    ਭ ।  ॢ  ப,
⨪쭮 ⠡樨  ॢ  ଠ. ⠭ ४-
⥫    ਭ । 㤥   ਭ  ⮬᪨
室    ࠭    㦥  樨 
࠭栬.   ᫨    㤥 ய᪠,    
  אַ   ୥   । ࠭. -
  樨  ⠢    ப  ᢥ   ᭨
 ࠭. H ᠬ   ਭ  ᯮ ,
  ⮣  ⠥,   砫  㬠 ࠢ
 砫 ࠭  ⠥ ᫮  ॢ ப.  ண-
ࠬ ८। ⠭ ४⥫, 뫠   ਭ-
 ࠢ騥  27,56,  ⮡ ਭ   ய᪠ -
樨  27,57, ⮡  ய 樨.
   ᪨  ਭ ᯮ ,   । ᫮
ப, ய᪠   ࠭栬.    27,78,n,  n -
᫮ ப  1  127.  Hਬ,  27,78,10 ਢ  ⮬,
 ਭ 㤥 ய᪠  10 ப. ᫨  -
 ࠢ 1/6 ,  11-⨤ ࠭ 㤥 ᮤঠ 66
ப  ᫥     56-  ப  ਭ  㤥 
ய  10-  ப.    ணࠬ    ,
⮡  ᠬ 砫 ண  㬠   5 ப,  ⥬ ⮡ 55
ப ⥪ 뫨 業஢   ࠭.
   ᫨  ᯮ 㬠, ࠧ ன ⫨砥   ⠭-
⭮ 11-⨤,      ࠭,  ⥬
⮡  ய᪨  樨 ந室   㦭     ⮡
ॢ ଠ ⠭ 㬠  ࠢ .  
࠭    ⠭  ᫮ ப    ࠭,
 ࠧ஬  . ⮡ ⠭ ᫮ ப  ࠭,
諨   27,67,n,  n - ᫮ ப.     ᫥⥫-
 ᯮ     ⠭   ࠭  , 
᪫祭  ⮣,    ࠭ 뢠  ଥ  0,n,
 n    1  22 .  ⠭⭮ ࠭ 
᫠  27,67,0,11.
   6.2.4 ࠢ  饩 .

   ⠥  ⥪ ।  ࠭ 筮   
 㬠 [6.2.3],   筮     饩
.     樮஢   ,  
⥬   न.  ⮣ 㪠뢠  ᬥ饭,
⭮⥫쭮 ᠬ  樨,    ⨣.  
ਭ  稪, ᮮ ⥪饥  . 
ணࠬ   ᫥  , ᫨   
 .   ⮬  襩  ࠪ⨪   稭
   ࠢ饣  27,60,  ᤢ 
 ᠬ  ,      ॢ  ப  (  ᠬ
    ⪨).
      ⥪  ᪮쪮 ᯮᮡ ।  -
  㦭 .       ᤢ ࠢ 祩
    ᪮쪨  ᨬ ஡   ⠡樨   
祩   ᪮쪨 ᨬ  "  蠣"  ᨬ-
   ⪨.   ⢫ 뢭 -  
ਭ    ᮮ⢥騥 ᫥⥫쭮  -
  饩 設.    ,   ணࠬ   -
砫쭮  饩     樥 -
  ப, ஡, ⠡権  ⮢  蠣  ଠ-
  뢮   ᮮ⢥⢨    訬  ﬨ. ਭ,
  㬥 믮  ࢮ ப   ᯮ짮-
   䮯ந⥫.
    ᪨  ०    ६饭   
 .    ⥪     ᪨  -
, ⮡  ࠧ ஬⪮   ᫮.  K ᮦ-
,   ⢥  .  ਬ 
㭪 [6.3.2].
    ᯥ樠  ,    ⠢   ᥣ
    ࠩ    ।    ।
ப,  ⬥  㭠ࠢ  .     ⥫쭮
 ,   ⮬ ⨣  筮  -
樮஢ .  ᮡ   ࠡ  -
 ०.  ⮡  ࠢ    ᫠
 27,85,1,  ⮡      㭠ࠢ   - 
27,85,0.
   6.2.5 ⠭ 権 ⠡樨.

    ᨬ  ਭ  ⠭ 樨  -
⠫쭮  ⨪쭮  ⠡樨  (᪨ ਭ IBM 
  ⨪쭮 ⠡樨).  ਧ⠫ ⠡樨 ।-
,  ᬥ饭     ,  ࠦ   ஡. 
  ᪠  112 権 ਧ⠫쭮 ⠡-
樨. 筮, ⨪ ⠡樨 ।  ᬥ-
  ⭮⥫쭮  ࠭,      
ࢠ.  設⢠  ਭ஢  IBM ᪠  
64- 権 ⨪ ⠡権.
         ⠭ ਧ⠫쭮  ⠡樨
27,68,   ⠭ ⨪쭮  ⠡樨 - 27,66.  
⨯ ⠡権   ப ⮢,  樨  ⠡-
樨  饬 浪.   ப   ⮬
ASCII 0,  㦨 ࠭⥫.  ⠭ ਧ⠫-
 ⠡樨   15, 30    60 諨  ਭ  27,
68, 15, 30, 60, 0.  ⠭ ⨪쭮 ⠡樨  ப
8  12 - 諨  27, 66, 8,  12,  0. ⬥⨬,  ᫨ ࠧ
࠭  ⫨砥   ⠭ 11- ,     
 ⠭ । ⠭  権 ⨪쭮 ⠡樨.
⨪쭠 ⠡ ⬥  27,67.
   ⬥⨬,    設⢮ ਭ஢   ⠭  
 ⠪.     ᮧ   뢮 ⠡-
樨  鸞 ஡  砫  ப.  筮 ⠭-
   ३    ᪨  ०   뢥  ⮢
ASCII 0.  ࠢ  ᮧ    ࠭祭  
ப.
   6.2.6   .

   ਭ ࠭ 8 1/2       ப 
80-    ᨬ, ᫨       ਭ.
ய樮쭠  [6.3.3]     ப 
᪮쪮  ᨬ.    㣮 ஭, ⭠  
뢥  ப 132 ᨬ,     ਭ - 40 ᨬ-
,   ⭠    ਭ - 64 ᨬ.   
,  ᯮ짮     ࠧ ਭ   ப
ਢ  㤭  ଠ஢.
   設⢮    ਭ஢ ।⠢   ०
 ᯥ樠묨 ⠬.  祭 ⠭ -
⥩ ।⠢塞 ᪨ ਭ஬ IBM:

⭠ :
     祭 ० ⭮   ᫠  
ࠢ騩  15.   몫祭 ⮣ ० -  18.  ⠭-
⭠  ࠭  ਭ 8 1/2      132
ᨬ  ப  ⮬ ०.

   ਭ:
    ⮣, ⮡ ਭ 砫     ਭ 
᫠   ࠢ騩  14.      -
 祭 ⥬,  ਭ ⮬᪨ 몫砥  ०,
  砥  ᨬ   ⪨   ॢ  ப.
᪮ ⠪    筮  ᯮ  
,   ᢮⢮ 㤮.  ⮡ 몫  ० 
। ப 諨  20.

뤥 :
    뤥     ᨬ  ⠥    ࠧ 
    ⮩  樨.    窨 ⥬,    ᮧ
䥪 뤥.    ⮬ 㬥蠥 . 
祭 ⮣ ० 諨  27,69.  몫祭 - 27,70.

   室:
     ०      室 㬠 ᤢ    1/216
 ।  室  饩  .   ⮬ -
   㪢,   ⮬  룫  .
  㬥蠥 .    ० 砥 ࠢ-
騬  27,71,  몫砥  27,72.
  ન:
       ન  믮    ᯮᮡ.
᪨ ਭ  ० ન,   ஬ 
⠥   ᨬ,  ஡.  ᪮
ਭ IBM  ०  砥   27,45,1,  몫砥
  27,45,0.  ਭ,  騥 ० ન  
ᤥ ન   ஬  室    ⮩  ப, 
ᨬ  ન  (ASCII 95)   ,   㦭  
஡ (ASCII 32)     ⠫  .  ன 室
⨣  ⥬,  ᫥ ࢮ 室   
⪨   ॢ ப. ன 室  蠥 ਭ-
 ࠢ쭮 뢠 ப  ᫥ ࠧ ࠭.

  孨   ᠬ:
   H ᪨ ਭ ⥪  孨    ᠬ
ᦨ ⨪쭮.   孥  諨 ࠢ-
騩  27,83,0,     - 27,83,1.    אַ
室   ᮢ    㣨.     몫祭 
ᮢ,  ⥬, ⮡ ਭ   ⥪饩 ப 諨
ࠢ騩  27,84.

   H ०   ᯮ짮  樨  㣨-
. ᫨   ᯮ짮 4 ० ६,  ப-
  ᫥饩 ⠡楩.       ⮫殢
ਢ ⨬ .

   K           1  2  3  4  5  6

   ଠ             
   ᦠ                       
   뤥                         
     室                 
    ᠬ                       
    ਭ                 
    ન               
   6.2.7 ࠢ ⥩ ਭ஢ IBM.

     ᫥饩 ⠡ ࠢ ࠢ騥   ਭ-
஢ IBM.  H  ଠ ⭮⥫쭮  筠 (頩
  㬥樨  IBM),   拉 砥 㭨   饭.
 饩  ⠡       ⥩
ਭ஢  㪠  ,    ⠭-
. ⬥⨬,        ਭ஢ ਢ 
᪥ "  " (Options and Adapters)   ਨ
孨᪨ 㪮,     ⠫ ਭ஢ ਢ
 ᮯ஢  㪮  ᯫ樨.

  K     㭪                      ᪨  ⭮  K  㩭  誠  யਭ
                                      ਭ     ਭ    ਭ    ਭ   ਭ

  ६饭 㬠:
  10     ॢ ப                                                                             
  11     ⨪쭠 ⠡                                                                      
  12     ॢ ଠ                                                                            
  13      ⪨                                                                            
  27,52  ⠭ 砫 ࠭                                                                      
  27,56  ஢ ⢨ 㬠             
  27,57  ⬥ . ⢨ 㬠            
  27,66  ⠭ ⨪ ⠡-権                                                               
  27,66  ⪠ ⨪ ⠡-権                                                                     
  27,88  ⠭ ய᪠ 樨                                                                
  27,79  ⬥ ய᪠ 樨                                                                   

  ६饭 饩 :
  8        蠣                                                                                
  9      ਧ⠫쭠 ⠡                                                                   
  27,60  ᤢ                              
  27,62  ⠭  ਧ⠫-                                              
          
  27,68  ⠭ ਧ. ⠡-樨                                                                
  27,68  ⪠ ਧ. ⠡-樨                                                                        
  27,77  ⮬᪮ ଠ஢                          
  27,80  ./몫. ய.                                                  
  27,82  ⠭. ⠡-権  㬮砭                                                                 
  27,85  ./몫. .                            
  27,88  ⠭ /ࠢ                                                         
  27,100 ணࠬ㥬 ஡                                 
  27,101 ணࠬ㥬   蠣                         

    ᨬ ࢠ:
  27,48   ࢠ 1/8                                                               
  27,48   ࢠ 1/9                                     
  27,48   ࢠ 7/72             
  27,49   ࢠ 7/72                                                                   
  27,49   ࢠ 9/96                                                        
  27,49   ࢠ 6/72                         
  27,49   ࢠ 1/9                                     
  27,50   ணࠬ㥬 -                         
          ப  27,65
  27,50   ࢠ 1/6                                                              
  27,51  ணࠬ㥬 ॢ                                                                         
         ப (n/216)
  27,51  ணࠬ㥬 ॢ                                
         ப (n/144)
  27,53  ./몫. ⮬. -                                                                  
          ப
  27,65  ணࠬ㥬 ॢ                                                                      
         ப (n/72)
  27,67  ⠭  ࠭                                                                   
  27,74  ணࠬ㥬 ॢ                                                                         
         ப (n/216)
  27,74  ணࠬ㥬 ॢ                                
         ப (n/144)
  27,93   ॢ ப                                                               
  27,104 ॢ  -ப ।                                                          
  27,105 ॢ  -ப                                                            

  ࠢ ⠬:
  11     ० 15 ᨬ                                                               
  14     祭 ०  ਭ                                                             
  15     祭 ⭮                                                                     
  18     몫祭 ⭮                                                                     
  18     ० 10 ᨬ                                                             
  20     몫. ०  ਭ                                                               
  27,45  ./몫. ન                                                                    
  27,58  ० 12 ᨬ                                                                        
  27,69  祭 ୮                                                                        
  27,70  몫祭 ୮                                                                       
  27,71  祭   2 室                                                                 
  27,72  몫祭   2 室                                                                
  27,83  祭  ᮢ                                                                    
  27,84  몫祭  ᮢ                                                                   
  27,87  ./몫.                                                                      
          ਭ
  27,91  祭 梥⭮ ન.                                               
  27,95  ./몫. overscore                                                                             

  ⠭ ᯥ樠 ⮢  梥⮢:
  27,54  롮  ᨬ 2                                                                      
  27,55  롮  ᨬ 1                                                                      
  27,61  㧪                                                                                  
  27,73   ⢠                                                                       
  27,92   ࠢ騥 ᨬ                                                                   
  27,94    ᨬ                                                                           
  27,97  ᤢ    ࠭                           
  27,98  롮 4-                                   
  27,99  롮 3-                                   
  27,109 롮 2-                                   
  27,121 롮 1-                                   

  ᪨ ०:
  27,75  ⠭ ० 480 祪                                                                      
  27,75  ⠭ ० 560 祪                                        
  27,75  ⠭ ० 1108 祪                            
  27,76  ⠭ ० 960 祪                                                                      
  27,76  ⠭ ० 2216 祪                            
  27,89  ⠭ ० 960 祪                                                                      
          ଠ쭮 ᪮
  27,89  ⠭ ० 2216 祪                            
  27,90  ⠭ ० 1920 祪                                                                     
  27,90  ⠭ ० 4432 祪                            
  27,91  ⠭ ࠧ襭/梥                                                  
  27,110 ⠭ ⠡ -                                             

  㣨 :
  7                                                                                             
  20     몫. ०  ਭ                                                               
  17     롮 ਭ                                                                               
  19     ⬥ 롮 ਭ                                                             
  24     ⪠                                                                              
  27,81  ⬥ 롮 㪠                                                                        
         ਭ
    3. 뫪   ਭ.

   뫪   ਭ ਢ쭠  몠 ᮪ ஢,
  ணࠬ  몥 ᥬ   㭪権 -
樮  ⥬,    ⠪ 筮 ⮩.
ணࠬ஢   ஢  ॡ  ࠡ,  
।⠢  ⥩.  K ࠢ, 楤 
 ஢  뫠  ᨬ    ਭ,   ⥬ ﭭ
஢  ॣ    ,   ஬  ᮥ
ਭ. 騩 ᨬ  뫠 ⮫쪮 ⮣,  ਭ
ᨣ,     ⮢ (ਭ      ᨬ
ࠧ,      ᢮  ,       㤥
祭 楫 ப ᨬ  ).
   K஬ ⮣, 楤  ஢  ᯮ짮 -
 ਭ   ஢ ⢨ ⮣ 뢠. 
  ᯥ樠쭮  ணࠬ஢   ᤥ  ⠪,  
ਭ 㤥    뢠  業,    ⮢ 
ਥ ᫥饣 ᨬ.  楤 ࠡ⪨ 뢠  -
 ᫥騩  ᨬ,  ᫥  祣     த
  ᢮ .   ⮤ ᯮ    䮭
 ( 뢠 ⠪ 㫨).   ᪮ 䨧᪨
६饭  ⠫  ਭ   ,  祬  ᪮
஭ ,    뢮  ᨬ   ਭ 
    ୮ ६.  ᯮ짮 뢠
 ᯮ짮  ६ 䥪⨢.
    뫪   ਭ ॡ ࠢ⥫쭮 訥
ᨫ,  ⮡  㦠᭮ ᫮ 뢮.   ᫮ -
⨭,   뢮 ਭ, ⨣   -
஢ ⥪⮢  ᪨ ,  ⠪  ᫥
 ࠢ  ਭ஬,  㦤  ࠭   ⮩ .
K    ப ⥪⮢  ᪨ ०,  
 ࠢ  ࠢ      ய樮쭮 .
K஬  ⮣  ᪨ ਭ  ᮧ ᯥ樠
ᨬ ந쭮 ,    ⭮ 㫨஢
⪨  筮 ࢠ  뢮  ᨬ-
 ᥢ䨪.
   6.3.1 뢮 ⥪⮢  ᪨   ਭ.

       ⮫쪮  뫪   ਭ
       䮭 ०,     ᯮ짮
뢠 ਭ.     ୠ⨢,  ண-
ࠬ  뫠 ᨬ  ਭ १ ।  ࢠ,
  ᬠਢ  "ᥢ뢠".  ⮤  ⠪
᭮  न  ࠡ⮩ ਭ,  饥  뢠-
,   类 砥 ࠡ ਭ  筠  ६.
   Hᨬ  ⮣  뢮 ,  ࠧ  ਭ
뫠 ⮫쪮 1  . 모 ᮪ ஢ ।⠢-
 㭪樨,  த  뢮 ࠧ 楫 ப, 
  ᠬ   㭪樨 ࠧ ப  ⤥ ᨬ.
筮 모 ᮪  ஢  뫠    ਭ  
⪨/ॢ ப    ப.   㣮  ஭,
ணࠬ  ᥬ    ᠬ      .
- ⮣ 室   ணࠬ஢,   
 砥    , ᮡ  ⭮襭 -
ન 訡.

   ᮪ ஢.

     뫪   ਭ ᨪ ।⠢  
LPRINT  PRINT#. LPRINT    ॡ    ⮢,  
뢮 ஬ PRINT#   ।⥫쭮  ਭ
 筮 ⠪    䠩,     OPEN "LPT1" AS
#1    OPEN "LPT3" AS #2.   LPRINT ᥣ   
LPT1,   ६  PRINT#  ᮢ   ਭ.
     ⪨/ॢ ப  ⮬᪨ 
      LPRINT  PRINT#, ᫨ ⮫쪮    
蠥 窮  ⮩.      㦭 ॢ
ப    뢠  뫪   ࠢ  
窮  ⮩.    ᠬ  , ᫨  , ⮡
ப ⥪ ⠫ , ਫ騥   㣮. -
  ,    ਭ  稭   
,       楫 ப.  ।-
  ᨬ   ⪨,  ⥬,  ᫮ ।
ᨬ ⨣ 80- ( 㣮 ᫠). H 뢠 ᫠
騩      ⪨,  ⮡  ⮫ ᫥
 ᨬ   ਭ.
   ਭ  ⮬᪨ 室  ᫤ ப  -
  ப.   㬮砭 ࠧ ப ਭ ࠢ 80
ᨬ,    ப ਭ஢  祭   .
ப, 뢮   ०  ⭮      
ਭ, ⠪   ப.     ⮫,
 ⨦ ண    ਭ  ३   ᫥
ப,   ⠭ ਭ ਭ  WIDTH "LPT1",n
-  n ॡ㥬   ⮫.  K ⠥ ப, 
ன    ࠢ ਭ ਭ,    
室  ᫥ ப,   ⭮ 믮 
 ⪨/ॢ ப.  砥,   砥, 
 ப  筮 ࠢ  ਭ  ਭ,  㤥 ᤥ
  ॢ  ப, ᫨  ப 蠥,    筮,
ன  ⪨/ॢ ப.
    ᪮  ਭ 筮  ⠭  ᪮-
  ਭ.  ⮡ ᤥ ,    ⠭
ਭ, ࠢ 255, WIDTH  "LPT1",255.  ᫨  㤥 
  ,   뢮  ᫥⥫쭮⥩ -
  ᨪ 㤥  ⠢     ⪨/ॢ
ப  ᫥   80 ⮢ .      ᨬ
    饥  ᫮  ⮢     ᪮
,  ⮬   ।  㤥   饭.
     LPRINT  ᮤঠ ᪮쪮  ⮢ -
  ࠧ .  ଠ  ᮤঠ  ᠬ -
,    ਬ  LPRINT "The rain in Spain",     
 뫠    ६,   砥 X$ = "The rain
in  Spain":  LPRINT X$.  樠 ᨬ    
 ᯮ짮 㭪樨  CHR$.   ࠢ騥  筮 -
   ⨬ ᯮᮡ, ਬ, LPRINT CHR$(10)  뫠
 ਭ ࠢ騩  ॢ  ப.   ᥣ CHR$ -
  뫪  ASCII,      -
.   ᫥ ⨯    ꥤ-
    .  ᫨  , ⮡ ࠧ  
 ⠫ ,  ࠧ  窮  ⮩; ᫨
  ࠧ  묨,  ᫥騩  㤥 뢮-
  ᫥饩 樨 ⠡樨.     ⮬,  -
  LPRINT ଠ   筮 ⠪ ,    
 PRINT  뢮  ࠭.  ᪮쪮 ਬ஢:

100 LPRINT S$;" and ";Y$     '  ப
110 LPRINT X, Y, Z           '뢮  ᥫ
120 LPRINT "The total is "; X  ' ப  ᫠
130 LPRINT "The ";CHR$(27);CHR$(45);CHR$(1);"real";
            CHR$(27);CHR$(45);CHR$(0);" thing."
            'ન । ᫮

    PRINT#   ᯮ짮     ⨯ ,  
 LPRINT,   ⠪   ᪮쪮  -
⮢        ᬥ訢  ࠧ  ⨯ .
窨   ⮩         ࠧ.
 ਬ,  襯ਢ:

100 OPEN "LPT1:" AS #2
110 PRINT #2,S$;" and ";Y$
120 PRINT #2,X, Y, Z
130 PRINT #2,"The total is "; X
140 PRINT #2,"The ";CHR$(27);CHR$(45);CHR$(1);"real";
            CHR$(27);CHR$(45);CHR$(0);" thing."

   । ஢.

   㭪 0  뢠  17H  뫠    ᨬ  ਭ.
  ᨬ  AL,   ਭ  DX.      AH
㤥 ᮤঠ ॣ ,   ﭭ ஢
 㦥 訡.  [6.1.3]    . 
뢮 ⮪   ⠭  㪠⥫   , ᮤঠ騩
,   楤 ⨯ ᫥饩:

;---뢮   LPT1
   MOV  CX,NUMBER_CHARS    ;CX ᮤন ᫮   뢮
   MOV  DX,0               ;롨ࠥ LPT1
NEXT_CHAR:  MOV  AH,0      ;㭪 뫪 ᨬ  ਭ
   MOV  AL,[BX]            ;BX 㪠뢠   
   INT  17H                ;뫠 ᨬ
   TEST AH,8               ;஢塞  訡
   JNZ  PRNTR_ERROR        ; ࠡ 訡
   INC  BX                 ;㢥稢 㪠⥫
   LOOP NEXT_CHAR          ;뢮 ᫥騩 ᨬ

   ⠭⭮  뢠 MS DOS  뢮  ਭ  㭪-
 5 뢠 21H.      ᨬ  DL  믮
뢠.   㭪 ᥣ 뢮  LPT1     -
頥 ॣ஢.

;---뢮   LPT1
   MOV  AH,5       ; 㭪樨
   MOV  DL,CHAR    ;⮢ ⠥ ᨬ
   INT  21H        ;뫠   ਭ

   㣮 ᯮᮡ 뢮    ਭ  㭪 40H -
  21H.    㭪 ⠭⭮  뢮,   ᯮ짮
⮤ ਯ 䠩    㯠    䠩   ன
[5.3.0].    砥  㭪 ᯮ ᯥ樠 -
।  䠩  ਭ.    #4   
   BX.  㭪   ⮫쪮  LPT1, ⮬ 
뢮  㣮  ਭ            
[6.1.4].  DS:DX  㪠뢠  뢮 ,  CX ᮤ-
 ᫮ 뫠 ⮢. Hਬ:

;---뢮 120 ⮢   LPT1
   MOV  AH,40H       ; 㭪樨
   MOV  BX,4         ; 䠩  ਭ
   MOV  CX,120       ;᫮ 뫠 ⮢
   LEA  DX,PRTR_DATA ;DS:DX 㪠뢠  
   INT  21H          ;뫠 
   JC   PRTR_ERROR   ; ࠡ 訡

  ⠭ 䫠  ७   訡, 
⮬ AX 㤥 ᮤঠ 5, ᫨ ਭ  易  設  6 -
᫨ 㪠   䠩.  ⬥⨬,   ᯮ짮
।।  䠩 㦭 뢠 ன⢮.

   H ஢.

     뫠  ਭ, ⥬ 뫪   ॣ
뢮 ,   ண  ᮢ   -
ᮬ ਭ.  ,     LPT1-3 ࠭ 
ᬥ饭ﬨ 8, 10   12        BIOS  (稭饩 
0040:0000).   ᫥ ⮣   ᫠  ॣ  ⪮
६ 砥  ஡  ॣ  ࠢ  뢮, 
  ண  2 , 祬  ॣ .  H 
஡ ࠢ 0     ⠭ ⮫쪮  祭 -
  ६,  ⮡ 樨஢ ।  ,  室  
ॣ . 楤       
஡ ⭮  0.
   ᫥  ⮣    ᫠, ணࠬ   ,
 ਭ  ᮮ,    ⮢    ਥ ᫥饣. 
   ᯮᮡ.   ⮢ ਭ   
 ⢥ত ॣ  ,   ண 
1    ਭ. H  ⢥ত ࠢ
6  筮  ⠭  1.     ⢥ত 뢠
   0  筮  ६, ⮡ ணࠬ  몥
ᥬ  㢨 ,  ᫨    ﭭ ᫥  -
஬.
   㣮  ᯮᮡ 㧭,  ਭ ⮢   ਥ  ᫥饣
  ⮨   뢭 ஢થ  7 ॣ -
,   뢠  0,  ਭ   ⠭-
  1,   ⮢ ਭ  . ᫨   -
   ஢,   ࠡ  -
㥬 ᨪ  㣮 祭   몥,   ᯮ-
  ⮤.
   騩 ਬ 砥   LPT1   
BIOS  ⥬ 뢮    ,    㪠뢠 -
 BX.  ணࠬ ﭭ ஢ ॣ   -
  ६  ஢    3,  ⮡ ஢ 稥
訡  ਭ.

;---⮢
   MOV  AX,40H          ;ES 㪠뢠    BIOS
   MOV  ES,AX           ;
   MOV  DX,ES:[8]       ;  LPT1  DX
   MOV  BX,DATA_START   ;BX 㪠뢠   
;---뫠 ᨬ
NEXTCHAR:  MOV  AL,[BX]  ;頥 ᨬ  AL
   OUT  DX,AL           ;뫠 ᨬ
   INC  DX              ;DX 㤥 㪠뢠  ॣ
   INC  DX              ;ࠢ 뢮
   MOV  AL,13           ;楯窠 ⮢   ஡
   OUT  DX,AL           ;뫠 ᨣ ஡
   DEC  AL              ;ଠ쭮 ﭨ ॣ
   OUT  DX,AL           ;뫠 
;---஢ઠ  訡   ⮢ ਭ
   DEC  DX              ;DX 㪠뢠  ॣ 
NOT_YET:  IN   AL,DX    ;砥  
   TEST AL,8            ;訡?
   JNZ  PRTR_ERROR      ;室  ࠡ 訡
   TEST AL,80H          ;ਭ ?
   JZ   NOT_YET         ;᫨ ,  
   INC  BX              ;㢥稢 㪠⥫   
   DEC  DX              ;DX 㪠뢠  ॣ 
   JMP  NEXTCHAR        ;   ᫥饣 ᨬ

   K  ⠭    4 ࠢ饣 ॣ  ਭ,  
ࠧ襭 뢠 ਭ.  K ᯮ 뢠, 
ணࠬ     ᨣ ⮢  ਭ, -
뢭 訢 ॣ    ਭ.  ⮣, ண-
ࠬ    ᫠ ᨬ   㣨  ;  
ਭ 㤥 ⮢  ਥ  ᫥饣  ᨬ,   諥
ᨣ  ⢥ত ( 6 ॣ    ⪮  ६
㤥 ⠭  1)    ⮬᪨  㤥 맢 뢠
ਭ.  楤 ࠡ⪨ 뢠 諥  ਭ  ᫥-
騩 ᨬ   ୥  ࠢ   ணࠬ, ⮡  
த  ᢮ ࠡ,      ந ᫥饣
뢠. K    뢥,  뢠 
⪫ ᥡ. 뢠 ਭ   筮 㭨-
樮 뢠, ஥ 㦤  [7.1.8].
   K ᮦ, 㤮 ᤥ ⠪,    ᥣ 
     ᢮⢮  ࢮ   ਭ.   H
   ࠡ⠥,   㣨 .  쪮  -
砥 ᫥⥫쭮/ࠫ쭮  AT    
 .     ᯮ짮 뢠 ⠩-
,  ᭥  [2.1.7].  ⠭ 奬 ⠩  8253
⠪,  ⮡  뢠  ந室  ,  祬 ᪮, 
ன  ਭ ࠡ뢠 .  ⥬    楤
ࠡ⪨ 뢠,   뫠  ਭ । ᨬ-
   ࠧ,  ந室 뢠 ६ ⮪.   
⮣ ⮡ ᯥ  ᨭ஭  ⠢ 楤
஢   ਭ ॣ  ( 7)   ᫨
ਭ  ,   楤  뫠 ᨬ.
   6.3.2 ࠢ ࠢ .

   쭮 ࠢ ࠢ  砥  ।
஡, 室    ப,  ࠢ୮  ஬⪠
 ᫮.  H ਭ  ᯥ樠 ०, -
 ⮬᪨ ⢫    ࠢ.   -
    梥⭮  ਭ  IBM,  뫪  ࠢ饣  
27,77,0 ⠢ ஭  ਭ  ஢ -
騥   ଠ஢ .  㣨  ਭ 
 ਭ ஡   ᫮, ४  ᪨
०,    뢮 ᨬ ஡.    ᪨  ०
ਭ ஡    ࠧ  1/6 ࠧ ᨬ.
K  ᮦ,  ਭ  ஥ ६  ⠭
 ४祭  ⥪⮢   ᪨ ०, ⮬
⠪  ⮤    ᫨誮 .   㣮  室
⮨  ⠢   ᨬ  ஡, ।  
  ࠢ୮  ப.   ᫮ ᪨ -
室 ᠭ .
   ,  室 믮  ଠ஢  ࠢ-
 ࠢ , ᫥騥. -,  ⠭ ଠ
࠭   ᫥  ᫮  ᨬ   ப.  ⥬
室  ᫮ ᨬ,    ᫥-
⥫쭮  ᫮,  ஡  ᫮. ⤥-
 稪  뢠 ᫮ ஡. K  㬬
ᨬ ॢ 80 (  ਭ  ਭ,  ⠭-
),   ᫥ ᫮   襭   ⮩  㬬,
  ।騬  ஡. ᫮ ⠢ ᢮묨
権   ப 㬭  6, ᪮  ᨬ  -
 ࠧ   祪    ਧ⠫,    稢襥 ᫮
  ᫮ ஡  ᫮.
   ᫥   ᫮ ਭ ⠭  -
 ० 480 祪   ப    뫠    ਭ  
ASCII  0.  K ⠪  ᤢ     
 ࠢ.  뫠 ᫮   ࠢ   -
  ஡,  १ । ⮣ ࠭⢠.
H, ᫨ ⮪     㫥,    
 筮    ஡,     -
⮪  㤥 ௠.
     ਬ  ᬮਬ  砩,    ப ⮨  12
᫮,  ᮤঠ 61 㪢,  11 ஡  ᫮.   
⠢  80-ᨬ쭮  ப  8 ᢮ 権.  -
ᥬ 権, 㬭  6 祪, ⠢ 48 祪 -
⥫쭮 ࠭⢠ ப.  ᪮  ப 11 ஡, 
         4 ⥫ 窨
 ᫥ ⮣ ⠭  4 譨 窨,   
    ६ ஡.    4 ஡ 
 ࠧ 6 祪 ଠ쭮  ஡,   5, 
 㬬 ࠢ 11.  ⠫ ஡ ⮩ ப   ࠧ-
 10 祪.  ⮡ ᫠      ਭ, ⮢
᭠砫 , 뫠騩  ਭ 1  ASCII 0,  ⥬ -
   横,   믮  ⮫쪮  ࠧ, ᪮쪮 㦭
᫠ ⠪ ⮢. H . 6-2   .
     ਢ  ਬ   ᭮  ࠢ  
ࠢ . H   ࠡ⪥ ᯥ樠 砥, ⠪
  ᫮,  ஥   ப (.,     ).
楤 㦤  䨪樨,   﫠   
  砥,  ப ᮤন ᥣ ᪮쪮 ᫮,  
 뢠   ࠣ.  H    । 
᫮ ࠢ୮  ᥩ ਭ ࠭.
   ᮪ ஢.

      ਬ, BUFFERPTR 㪠뢠      -
,  ண 稭 ᫥ ப, 뢮  .

100 S$ = "This text will be printed with right justification
 using the printer alternately in text modes and graphics modes."
110 STRINGPTR = 1         '㪠⥫  ப  S$
120 COLUMNS = 1           '稪 樨  ப
130 SPACES = 0            '稪 ஡  ப
140 '''塞 ᪮쪮 ᫮ 頥  ப
150 C$ = MID$(S$,STRINGPTR,1)  '砥 ᨬ
160 IF C$ <> " " THEN 190  '᫨  ஡,  ।
170 LASTSPACE = COLUMNS   '  
180 SPACES = SPACES + 1   '㢥稢 ᫮ ஡
190 COLUMNS = COLUMNS+1   '㢥稢 㪠⥫ ⮫
200 STRINGPTR = STRINGPTR + 1  '㢥稢 㪠⥫ 
210 IF COLUMNS = 81 THEN 230   '室   ப
220 GOTO 150              '  ᫥饬 ᨬ
230 IF C$ <> " " THEN 270 '᫨ ᫥  ஡,  室
240 COLUMNS = 79          '  ப ࠢ 79
250 SPACES = SPACES - 1   '⭨ ᫥ ஡
260 GOTO 340              '  ᫥ ஡
270 C$ = MID$(S$,STRINGPTR+1,1)  '஢塞   ᫮
280 IF C$ <> " " THEN 300 '᫨  ஡,  室
290 GOTO 340              '  ᫥ ஡
300 COLUMNS = COLUMNS - LASTSPACE  '頥   ᫮
310 STRINGPTR = STRINGPTR - COLUMNS + 1  '頥 㪠⥫
320 COLUMNS = LASTSPACE - 1  '㡨ࠥ ᫥ ஡
330 SPACES = SPACES - 1   '㬥蠥 ᫮ ஡
340 '''塞 ᫮ 祪  ஡
350 EXTRASPACES = 80 - COLUMNS  '塞 ᫮ ஡  
360 TOTALSPACES = EXTRASPACES + SPACES   '塞  ஡
370 TOTALDOTS = 6*TOTALSPACES   '塞 ᫮ 祪
380 DOTSPERSPC = TOTALDOTS/SPACES '砥 ᫮ 祪  ஡
390 EXTRADOTS = TOTALDOTS MOD SPACES  '⮪  
400 '''⥯ ⠥   襣 ⥪
410 OPEN "LPT1:" AS #1    '뢠 ਭ
420 PRINTPTR = 1          '㪠⥫  砫  
430 C$ = MID$(S$,PRINTPTR,1)  '६ ᨬ
440 PRINTPTR = PRINTPTR + 1   '㢥稢 㪠⥫
450 IF C$ = " " THEN 500  '᫨ ஡,   ࠡ ஡
460 PRINT #1, C$          ' ⠥ ᨬ
470 IF PRINTPTR = COLUMNS + 1 THEN 590  '室   ப
480 GOTO 430              ' ⠥ ᫥騩 ᨬ
490 ''' 楤  ஡
500 PRINT #1, CHR$(27) + "K";  '室  ᪨ ०
510 NUMBERDOTS = DOTSPERSPC  '塞 ᫮ ⮢ ASCII 0
520 IF EXTRADOTS = 0 THEN 550  '᫨   祪, 室
530 NUMBERDOTS = DOTSPERSPC + 1  ' 塞 
540 EXTRADOTS = EXTRADOTS - 1  '㬥蠥 ᫮  祪
550 PRINT #1, CHR$(NUMBERDOTS);  '뫠 ᫮ ᪨ 
560 PRINT #1, CHR$(0);    '
570 FOR N = 1 TO NUMBERDOTS: PRINT #1, CHR$(0): NEXT
580 GOTO 430              '஡ 祭,   ᫥. ᨬ
590 PRINT #1, CHR$(13)    '  ⠥  ⪨
   H ஢.

   ⢥ ᥬୠ 楤 ᫨誮 ,  ⮡
ਢ  .  ࠡ⠥   筮 ⠪ ,   -
  ᨪ,  ᪫祭 ⮣,   室 -
 ⤥ ६,  ⮡  ࠭  ப.  H㦭 
⠭ 㪠⥫  砫   ப,   -
   .
   6.3.3 ய樮쭠 .

     ,  ய樮쭠  ॡ  ᯥ樠쭮
ਭ,  ࠭   ଠ  ਭ  ᨬ-
.   ⭮  ਭ IBM  ०  ய樮쭮  ,
 砥  ᫥⥫쭮  27,78,1,  몫砥 -
27,78,0.   ணࠬ,  ଠ 뢮  ⠪ ਭ,
  ଠ  ਭ   ᨬ (  
 㬥樨).   ଠ,   ᫨ ᪮쪮
᫮    ப.
    ,      ਭ ⮬᪨
뢮  ய樮  ⥪  ०    室.   ᫨
᫮  ப ࠧ  묨  ஡   ᪮
०,    ਭ  室   ஬  室  ᫥
   ᫮,    ⮣,  ⮡   ࠧ 
ப. ᪮ ਭ ⭮⥫쭮   ࠢ-
 ६饭 饩 ,   ⮬ 砥  ⥪-
, ࠢ  ࠢ ,  ய樮쭮 ० 
 祭  ६   뢠 ᨫ쭮 襩 
ਭ.   ஡    ࠢ ய-
樮쭮 . ⬥⨬,  梥⭮ ਭ IBM  ⮬-
᪨  ஢ ய樮     ⮬᪨
ࠢ ࠢ ,   ᯥ樠쭮 ணࠬ஢-
 㦭.
   ७  ணࠬ    ⠢    ᪨
ਭ     ய樮쭮  ०.  ணࠬ  
    ⨭ ⮢   ᨬ (.  [6.3.4]).
 ⮣, ⮡ 뫠   ਭ   ASCII,  -
  ࠦ  ᨬ   , ᯮ    楯窠
⮢  ᮧ ᪮ ࠦ  ப ⥪. ⥬
 㦭 ப  뢮  ਭ  ᪮ ०-
.   室 室      ࠭ ᪨
ࠧ  ᨬ,       ஫஢
뢮 ࠦ.

   ᮪ ஢.

     ਬ 砥  ०  ய樮쭮 , 
⥬  뢮 ࢠ ப 室  ணࠬ.  ਭ
ய樮쭮  뢠  ᨢ FONTWIDTH  ᫥-
⥫쭮 䠩.

100 '''뢠 ᨢ ਭ 
110 DIM FONTWIDTH(127)     '⢮ ᨢ  ਭ
120 OPEN "FONTS" FOR INPUT AS #1  '뢠 䠩 ਭ
130 FOR N = 32 TO 127      '࠭ ਭ   32-127
140 INPUT #1, FONTWIDTH(N) '⠥ ਭ  ᨢ
150 NEXT                   '᫥騩 
160 '''塞 ᪮쪮 ᨬ   ப
170 CHARPTR = 0            '㪠⥫  
180 LINE$ = ""             '࠭ ப  뢮
190 LINELENGTH = 0         '稪   窠
200 WHILE LINELENGTH <480  '塞   ப
210 C$ = PEEK(BUFFERPTR+CHARPTR)  '६ ᨬ   
220 LINELENGTH = LINELENGTH + FONTWIDTH(ASC(C$))
230 LINE$ = LINE$+C$       '塞  ப 뢮
240 CHARPTR = CHARPTR+1    '㢥稢 㪠⥫
250 WEND                   ' ࠡ ᫥饣 ᨬ
260 '''  ப 頥   ᫥ ᫮
270 IF C$ = "" THEN 310    '᫨ ᫥ ஡,  室
280 FOR N = LEN(LINE$) TO 1 STEP -1  '   
290 IF MID$(LINE$,N,1) = " " THEN 310 ' ᨬ ஡?
300 NEXT                   '竨 ,  ६ ᫥騩
310 LINELENGTH = N - 1     '᫨ ,  ।騩 - ᫥
320 '''樠㥬 ய樮   뫠 
330 LPRINT CHR$(27);CHR$(78);CHR$(1);  'ࠢ騥 
340 FOR N = 1 TO LINELENGTH  '  ᨬ
350 LPRINT PEEK(BUFFERPTR+N-1);  '⠥ 
360 NEXT                   '   ᫥騩 ᨬ

   H ஢.

   ணࠬ  몥 ᥬ  ࠡ ᮢ襭  -
筮 ਢ ᨪ᪮  ਬ.    २
ᥬ ⮨  ⮬,   ᬮ ਭ ᨬ  
ᯮ짮  XLAT.  ᨬ  AL, DS:DX 
㪠뢠  ⠡, ᫥ 祣  ᯮ짮 XLAT.  ਭ
ᨬ 㤥 饭  AL:

;---ᬮ ਭ ᨬ
   LEA  SI,DATA_BUFFER     ;㪠뢠   
   LEA  BX,WIDTH_TABLE     ;㪠뢠  ⠡ ਭ
   MOV  AL,[SI]            ;砥  
   XLAT WIDTH_TABLE        ;⥯  ਭ  AL
   6.3.4  ᯥ樠 ᨬ.

   設⢮ ਭ஢  ন ७  ᨬ-
 IBM,  設⢮  ணࠬ ᯮ ᯥ樠 ᨬ-
 ᥢ䨪.  祭     
ᨬ   ⠪ ᫮  ᤥ    筮 ਭ,
   ᪨ .   ⮣, ⮡ -
   ਭ, ணࠬ   ᠬ ᮧ  ᨬ-
       ਭ஬  ।  ࠧ,
⮡  뫨 ⠭  㬠.
     ᥡ   ᯥ樠  ᨬ ਢ쭠.  
ࠧ ᨬ   ⮢, 楯窠 ⮢  ᮮ⢥-
  祪     ⮫殢 祪, ⠢-
  ᨬ.   Hਬ, ⮡   ᨬ  ਧ⠫쭮
 ,  ASCII  ண  205, ணࠬ  뢥
楯 ⮢ 00100100  ࠧ  ० 480 祪  ப. 
⢮   筮  ᮮ⢥  ਭ  ᨬ, ᪮
6/480  ࠢ 1/80 ப.  ⮡ ॢ ਭ    
᪨ ० 室  ࠢ騩  27,75.  ⥬
諨 ᫮  ᫥ ᪨ , ஥ ।
   , 祬 訩   . H,  ᠬ
6  ⮢  ,    砥  ࠢ  㬬  祭
⮢ 2  5 (4 + 32 = 36).   ᫥⥫쭮 楫 룫-
 ⠪: 27, 75, 6, 0, 36, 36, 36, 36, 36, 36.   ᮪
ࠧ襭   ᯮ짮   ᪨ ०-
;     室 ६ 設 ⮦, 
ࠢ  ᪮ 権 ਭ.
     ⭠ ஡,  ᨬ ᥢ䨪  
ᮯਪ   㣮  ⨪.   筮 ਭ -
 ப,   ⮫ 쬨 祪, ⥬  ᪠
   12  祪,  ⠢  ⥬  ᠬ  ࠧ஬  4
窨  ப ᨬ.  ᥢ䨪  -
   ⮬ ,        
12 祪. ᪮ 設⢮    ⮫쪮 8
,  ⢥  襭  ஡   ⠪
ᨬ     室, த 㬠 ।  ।  
室.  ⮬ 砥 ᨬ  ॢ ப (ASCII 10) 
 ᯮ.   ⮣, ਭ ६  -
 ⮩   8,   4 窨.   ஬ 室  -
   ⮬ ,  㦥  ⯥⠭ 窨,  -
⮬  ⮡     뫨 襭  0, ⮡ 
 ࠡ⠫.
   ⮡  த 㬠    祪   ᫠
 27, 65, 4, 27, 50,     쬨 祪 - 27, 65, 8, 27,
50.     ⮬ 뢠 ⮬᪨  ⪨.    
६  믮  室, ⮢ ६ ப
⥪,  㤥   ஬ 室.  ᫨ 
ᨬ ,     ᮮ⢥    ६ ன
ப  ᨬ      ஡ (ASCII  32).   H  ᫨
砥 ᯥ樠  ᪨ ᨬ,   -
   筮 ,      ASCII 
ᮮ⢥  ன ப. Hਬ:

 ᨬ   1    2    3    4    5    6    7    8    9   10

K ASCII        205  32   98   111  114  105  110  103  32   205
K 2- ப   205  32   32   32   32   32   32   32   32   205
   ࠭  ⤥쭠  ⠡  楯祪 ⮢ 
ᨬ    ண 室.     ⨪쭮  
ᮤন ⠡  ࢮ  室  㤥 0, 255, 0, 255, 0,
0,    ண - 0, 15, 0, 15, 0, 0.  ⬥⨬,   ஬ 
⢥⮬    ண  室  孨  4   襭,
⮡  뫮 ⪨.
   K,   稭 ,     ।  ஢-
    ᨬ ᥤ᪨,  ᫨ , 
  뫠   ,    ASCII.     ६
ப, ᯮ㥬   ண  室 ⠢ -
.   ⥬ ࠡ뢠 ᫥騩 ᨬ.  K  砥
ᨬ ᥢ䨪,  6    ⮢   ⠡-
, ਭ ॢ  ᪨ ०  뢮 6 ⮢
 뫠 .  ⥬  ਭ ⮬᪨ 頥 
⥪⮢  ०.   ᮮ⢥  ப    ண
室 頥  ASCII  ⮣  ᨬ ᥢ䨪.  
  த   ப, ᫥ 祣  ண
㬠    祪.   ୮ 室  
।  ᬮ  ᨬ.  ᫨  ஡,   
 ᨬ ஡ (..    祣,   த-
    ᫥饬 ᨬ).  ᫨     ᪨
ᨬ,       ᮮ⢥騩      ண
室    ⤥쭮 ⠡    ⠪   ࠧ,
   ࢮ 室. ୮ ᯮ ப  ண
室    ⠥ ப.  H .  6-3   
楤.

   ᮪ ஢.

     ਬ ⥪ ࠧ    ,  ⮬ -
뢭   ࠧ ࠭ ।.    -
⠥ ⮫쪮  ப,      ਬ   
楫 ࠭, ᫨ ⠢ 横 FOR/NEXT  ப 325   505.
 樨  室    ࢮ 室 ⠥ 
  ᨬ,    ६    ஬  室  ⠥
楫 ப.

100 '''⠡   ࢮ 室 (⮫쪮  178  179)
110 DATA 0, 0, 255, 0, 0, 0
120 DATA 4, 4, 255, 0, 0, 0
130 '''筠 ⠡  ண 室
140 DATA 0, 0, 15, 0, 0, 0
150 DATA 0, 0, 15, 0, 0, 0
160 '''頥  ⠡  ᨢ
170 DIM FIRSTPASS$(45)       '뢠 ᨢ
180 FOR N = 1 TO 2           '塞 
190 Y$ = ""                  'Y$ ࠭ 6 ⮢  ᨬ
200 FOR M=1 TO 6: READ X: Y$ = Y$+CHR$(X): NEXT
210 FIRSTPASS$(N) = Y$: NEXT '頥  ᨢ
220 '''頥  ᨢ  ⠡
230 DIM SECONDPASS$(45)      '
240 FOR N = 1 TO 2           '
250 Y$ = ""                  '
260 FOR M=1 TO 6: READ X: Y$ = Y$+CHR$(X): NEXT
270 SECONDPASS$(N) = Y$: NEXT '
280 '''⠥ ⥪ ᫥饩 ப
290 TEXT$ = "Here is one column"+CHR$(179)+"Here is the
             second column"
300 TEMP$ = STRING$(80,32)   'ᮧ ப  2- 室
310 GRAPH$ = CHR$(27)+CHR$(75)+CHR$(6)+CHR$(0)
320 OPEN "LPT1:" AS #1       '뢠 ਭ
330 FOR N = 1 TO LEN(TEXT$)  '  ᨬ ⥪
340 C$ = MID$(TEXT$,N,1)     '६ ᨬ  ஢塞 
350 IF C$ < CHR$(128) THEN PRINT #1,C$;: GOTO 400
360 '''।,   ⠫ ᨬ - ᥢ䨪
370 PRINT #1,GRAPH$;         '室  ᪨ ०
380 PRINT #1,FIRSTPASS$(ASC(C$) - 178);뢮 1- 室
390 MID$(TEMP$,N) = C$       'થ  ப 2- 室
400 NEXT
410 '''ᬥ頥  8 祪    ன 室
420 PRINT #1,CHR$(27)+CHR$(65)+CHR$(4)+CHR$(141);
430 Z$ = ""                  'Z$ ᮤন ப  2- 室
440 FOR N = 1 TO LEN(TEXT$)  '  ᨬ ⥪
450 C$ = MID$(TEMP$,N,1)     '६ ᨬ  ࠡ뢠 
460 IF C$ = CHR$(32) THEN Z$ = Z$+" ": GOTO 480
470 Z$ = Z$+GRAPH$+SECONDPASS$(ASC(C$) - 178)
480 NEXT
490 PRINT #1,Z$              '⠥  ப ࠧ
500 PRINT #1,CHR$(10);       '塞   ॢ ப

   H ஢.

   ணࠬ  ᥬ  ᯮ   ᠬ , 
  ਢ ணࠬ  ᨪ.  K  ᯮ  ⮫쪮
᪮쪮 ᨬ,      , ᦠ ⠡,
  ⥬  ⮡    ⠡  뫮  ய樮쭮  
樨   ASCII. ⥬  ⮢   ⠡ -
ᮢ   樨 XLAT,   ன   
᪠   ⮩ ⠡.
   6.3.5 K஢ ࠭  ਭ ( ࠭).

    ⥪⮢  ࠭  ᤥ  筮  , ᫨ 
ᯮ㥬  ᨬ ᮤঠ   ਭ      
 뢮  ᯥ樠묨 ਡ⠬, ⠪  ન
  ⨢ ࠦ.   ⮬ ⥩襬 砥  ணࠬ
㦭  ⠭ ਭ ਭ ࠢ 80 ᨬ,  ⥬
뢠  ᨬ ।  , 뫠   -
뢭 ⮪   ਭ. ᫨   ਭ 
ᯥ樠 ᨬ, ⠪  ᨬ ᥢ䨪,  ணࠬ-
  ⮢  ᢮  ⠡      ᨬ 
뢮   ਭ  ᪮ ०. ᪮  ᨬ-
  室   ࢠ,   ॡ
ᯥ樠쭮 ணࠬ஢ [6.3.4].
   K   ᯥ樠 ਡ⮢ ᨬ ᮧ ᢮ ஡-
.  ஢ ਡ    ᨬ    뢠  
 ( [4.1.3] 㦤 祭 ⮢,  ᮮ⢥-
饥 ࠧ ਡ⠬). K  ᨬ 뤥   -
   襭 ⥭ᨢ,    ન-
    ⮬    ਭ.  ᫨ ᨬ
뢮   ⨢ ࠦ,     ஡,
   묨 ᪨  ᨬ:    ⨢
ࠦ    孥  ᫥饩  -
.  ⮬ 砥  ᫥  㪠 [6.3.4]  
    ஬ 室.   ᨬ  ਭ,  
  ᮧ ᯥ樠  ⠡   뢮
ᨬ    ⨢, ᪮     ,  
㦠騥 窨   室  ᫨誮    㣮,
⥬ ࠦ ᨬ.   ⮬ 砥     
     室.   襭 ஡   ⨢
ࠦ   ᯮ짮  ᪮  ० ࠭
 뢮 ⥪,  ⥬ ᤥ  ᪮ ࠭.
   ᪨  ᮧ ᢮ ஡.    ਭ
ᮮ⢥ 쬨 ⨪ 窠,   ६   -
   ।⠢ 8 ਧ⠫ 祪.  ⮬  ॡ
楤  ८ࠧ,      .  6-4. H ࠧ
  8 ⮢  ࠭, 롨 ⠪,   ᮮ-
  祪 8*8.  ⥬   ᯮ짮 ᪨
樨  ⠭ ⮢,    ਬ.
     ,   設⢮   ਭ஢  ᪠
࠭ ࠦ.    ந室 ⮬,   ᯮ
⠡ 樥 1:1,   ६  ࠭ ᯮ -
樥 5:6 (⠡ 樥 ࠢ ᫮ ਧ⠫-
  祪    ᫮ ⨪ 祪  ).   筥
, ᪠ ࠦ  ᠬ   - -
⠡ 樥 ࠭, ᪮ ணࠬ  ᯥ樠-
     ࠦ,  ⮡   룫拉 ⠪, 
  (ਬ, ࠦ 㦭  ࠭ ᮧ
뢮    ).   K     ࠭ 뢮 
ਭ,   ᪠  .  H -
 ਭ  ᯥ樠  ०,     뢮
  ࠭  ᪠,  梥⭮ ਭ IBM    
⠡ 樥    ᢮ ᪨ ०.
   ᮪ ஢.

   ਢ 楤   ᨪ   ⥪⮢ -
,  ᯥ樠 ਡ:

 10 OPEN "LPT1:" AS #1          '뢠 ਭ
 20 DEF SEG = &HB000            '㪠뢠  
 30 PRINT #1,CHR$(13)           'ᤢ  
 40 FOR G = 0 TO 3998 STEP 2    '   
 50 PRINT #1,CHR$(PEEK(G));     '⠥   뢮  ਭ
 60 NEXT                        'ࠡ뢠 ᫥騩 

ॡ᪠ 楯祪 ⮢  ᪮  ॡ  ᨪ
᫨誮  ६.     ᨢ (, BYTE$) ᥬ
⮢,  ⢥   ࠭ 8*8 祪.     ன
ᨢ (VERTICAL$)   㫨    ,  ⥬ ।
ॡ뢠  ⮢  ᨢ ᫥騬 ࠧ:

500 FOR M = 0 TO 7       '  
510 FOR N = 0 TO 7       '  
520 X = ASC(BYTES(N))    '砥 祭 
530 Y = 2*(7 - M)        '᪠   祭 
540 Z = X AND Y          '஢ઠ ⮣   
550 IF Z <> 0 THEN VERTICAL$(M) = CHR$(ASC(VERTICAL$(M) OR 2*N)
                         '᫨  祭,  ⠭ 
                         ' ᮮ⢥饩 樨 2- ᨢ
560 NEXT N               '᫥騩 
570 NEXT M               '᫥騩 

   H ஢.

    ᥬ  ⮢ ८ࠧ  ॥.
 楤,      ८ࠧ 㦠᭮ ,
᪮  ন   ய (  -
,    ᯮ짮   ,   -
ᨪ).   楤 ࠡ⠥, ࠭ 8 १ ⮢   -
 CX, DX, BP  DI.   ࠭  頥  AL, 
⥬  AH । ᫥⥫쭮 CL, CH, DL  DH.  K
ࠧ  AL  AH ᤢ       ᤥ 4 ᤢ, 
CX    DX   DX  BP, ᫥ 祣    
᭮.            8- ࠭
⮢     襭,  ८ࠧ ࠦ  -
  ॣ ய, 祬 ᠬ   
     CL.  ন ॣ஢ 뢮   ਭ  
, ᫥ 祣      ᫥ 쬨
⮢ ࠭.  砫  8 ⮢    -
      BUFFER.    0  AX, CX, DX, BP 
DI. ⥬:

   LEA  BX,BUFFER    ;㪠뢠   
   MOV  SI,0         ;ᬥ饭  ⮬ 
GET_BYTE:  MOV  AL,[BX][SI]     ;६ 
DO_HALF:   XCNG AH,CL           ;砥 CL, CH, DL  DH
   SHL  AX,1         ;ᤢ   AL
   XCNG AH,CL        ;
   XCNG AH,CH        ;
   SHL  AX,1         ;
   XCNG AH,CH        ;
   XCNG AH,DL        ;
   SHL  AX,1         ;
   XCNG AH,DL        ;
   XCNG AH,DH        ;
   SHL  AX,1         ;
   XCNG AH,DH        ;
;---稭   ६饭 ⮢
   XCNG CX,BP        ; ᮤন CX  DX
   XCNG DX,DI        ;
   CMP  SI,7         ;᫨   ८ࠧ,  ⠥
   JE   PRINT_BYTES  ;
   INC  SI           ; 室  ᫥饬 
   JMP  SHORT GET_BYTE    ;
;---⠥ 
PRINT_BYTES:   PUSH DX    ;஠塞 DX
   MOV  AH,5         ;㭪 뢮  ਭ
   MOV  DL,27        ; Esc
   INT  21H          ;뫠 
   MOV  DL,75        ; ᪮ ०
   INT  21H          ;뫠 
   MOV  DL,6         ;㤥 ᫠ 6 ⮢
   INT  21H          ;
   MOV  DL,0         ;
   INT  21H          ;
   CALL PRINT_2_BYTES  ;뫠 ᮤন CX
   POP  CX           ;
   CALL PRINT_2_BYTES  ;뫠 ᮤন DX
   MOV  CX,BP        ;
   CALL PRINT_2_BYTES  ;뫠 ᮤন BP
   MOV  DX,DI        ;
   CALL PRINT_2_BYTES  ;뫠 ᮤন DI
    .
   (  ᫥饩 㯯  쬨 ⮢)
    .
PRINT_2_BYTES:    PROC  NEAR
   MOV  AH,5         ;㭪 
   MOV  DL,CL        ;᭠砫 CL
   INT  21H          ;⠥
   MOV  DL,CH        ;⥬ CH
   INT  21H          ;⠥
   RET
PRINT_2_BYTES     ENDP




                         7. /뢮.

    1.   ᫥⥫쭮 .

     ᨭ஭  裡  設 뫠   ਭ  
ଠ樨   .  ६ ࢠ  ⠬ 
⮬  ⢥,    ६  ⤥묨  ⠬  
祭 .           ᮪  
஢,   ᮮ⢥ ᪨   ,   ,
  ⬥祭  (marking),    ஢  ᮪,  
(spacing),  ஢ .
     ন  ⬥祭 ﭨ,    
। .  砫 ।   ᨣ  
0,  ⬥  ⮢  .  ⥬ ᫥ ᥬ  ⮢  
( )    ᮪   ஢. ᫥
   ᮯ஢ ⮬ ⭮, ᯮ㥬  
㦥 訡,  ⥬  ᫥⥫쭮  1 
  ⮯-⮢,   ᮮ⢥ ᮪  ஢.   
⮯- 稭 ⬥祭 ﭨ, ஥ 㤥 ࠭-
   ,   筥 । ᫥饣  ;
᫮ ᯮ㥬 ⮯-⮢ ⢥, ᪮  ⠭-
  쭮 ६, ஥  ன ।  ᫥騬
⮢ ⮬. H . 7-1   ᫥⥫쭮.
   K筮, ।    ਥ  ⠭樨   ᯮ짮
     ⮪   楯祪 ⮢    ࠡ-
    ⮩    ᪮    (塞    
ᥪ㭤, 뢠 ⠪ ).      -
 訡, ⮬  㭨樮 㤮 ।⠢
ࠧࠧ  ଠ    ᠬ , ⠪   -
ᮥ   .  祩   ८ࠧ-
  ᨣ,  㥬 ⮬ 㭨樨,   ᪨
ᨣ,   ⥬    ।  ⥫䮭 .
設⢮  ।⠢ ⠪ ⥫ 㭨-
樮 ,  ⠪    ⮬᪨  맮   ⢥,
  ন ᠬ ⮬ 㭨樨.
   7.1.1 ணࠬ஢ 奬 UART 8250.

   ᫥⥫쭠   ⮫쪮 ᫮,  뫨 ࠧࠡ⠭
ᯥ樠  奬,  믮騥  ࠡ    ନ஢ 
ᨭ஭樨 ப ⮢, ⠢ ᫥⥫  .
  奬  뢠  㭨ᠫ  ᨭ஭  ਥ-
-।稪 (universal asynchronous receiver transmitter 
UART). IBM PC ᯮ UART 8250  Intel.
   樮 ⥬ ন 2  㭨樨, -
   設  2 奬.     ࠭  
祩 0040:0000  COM1   0040:0002    COM2. ( 
  2-塠⮢  ,   訬   㯯
ᮢ ⮢,    UART.) H  設 ஬ PCjr
COM1      3F8H,  COM2 - 2F8H; PCjr    ᢮
७      3F8H,    COM1 -   3F8H. 
㤮⢠,    쭥襬 㤥 ᥣ 㬥஢ ॣ 3FxH,
  ᪠  ࠢ ⥯ ਬ   ॣࠬ 2FxH.
   奬 8250  10  ணࠬ㥬   ॣ-
஢,    ࠢ  ஫  㭨-
樨. 設⢮      樠樥 , -
ᮬ,     祭 ᫮.    ⨬ 10  -
ࠬ ⢫ १  ᥬ ᮢ ⮢  ࠬ 3F8H
-  3FEH  ( 2F8H - 2FEH).      ॣ,   ஬
砥  १  ,    ⮣,  ⠭-
  7  ॣ ஫ ,    ⢥-
 ॣ஬  ᮬ  3FBH.   ॣ:

3F8H (OUT,  7 = 0  3FBH)    ࠭ ।稪
3F8H (IN,  7 = 0  3FBH)      ਥ
3F8H (OUT,  7 = 1  3FBH)   ⥫ ᪮  (訩)
3F9H (IN,  7 = 1  3FBH)    ⥫ ᪮  (訩)
3F9H (OUT,  7 = 0  3FBH)    ࠧ襭 뢠
3FAH (IN)                       䨪樨 뢠
3FBH (OUT)                      ࠢ 
3FCH (OUT)                      ࠢ 
3FDH (IN)                        
3FEH (IN)                        

     ॣ஢ ⮫쪮  室  ⮩ ᫥-
⥫쭮 裡.    ࠭  ।稪  ᮤন 
,   ᫠ [7.1.6],  ॣ  ਥ
- ᫥ 祭   [7.1.7].  ࠢ 
  樠  ࠢ  裡,  ᯮ
᪮ , ᮤঠ    ॣ ⥫ ᪮
 [7.1.2].  ⠢  ॣ஢ ॣ ࠢ-
      ᯮ  ⮫쪮  裡 १ 
[7.1.5],     ॣ, 易  뢠ﬨ  ᯮ
⮫쪮  楤, ࠢ塞 뢠ﬨ [7.1.8].
   뢠 ᯮ  裡  楫 䥪⨢. -
 㭨樮 楤 뢭 ஢ ॣ  -
 ,   ᨬ  㪠,   -
    । ᫥饣  .   ᪮  
 ॥, 祬  ᪮   묨 । -
⥫ ,   ⮤ ᭮ 室 -
 ६, ஥  ᯮ짮  ࠡ⪨ 㯠
  । .   ⮩ 稭 奬 8250  
 ⠭   ०,  뢠騩  뢠   
ᨬ,   訡  ..   뢠 ⠫쭮
맮 楤 襩 ணࠬ, , ᪠, 㤥 ।-
 ᫥騩 ᨬ  㭨樮 .
   7.1.2 樠 ᫥⥫쭮 .

     樠樨  㭨樨 ("⨨")  ⠭-
     ࠬ.    ࠬ    ᫮,  ᫮
⮯-⮢, ⠭ ⭮  ᪮ .  ᫮ 
᫮ ⮢, ஥ ࠧ  ᭮   .  ᫨ 
ࠡ⠥   ਢ묨 ﬨ  8 ⮢,  7 ⮢ 
 ⠭ 䠩 ASCII (     ᨬ  ,
  ॢ騥 ASCII 128),   ६   । ᫥
 筮 権  4 .

   ᮪ ஢.

   ᨪ 뢠 㭨樮    䠩,   ⠪-
    ᢮ 䨪樮 :

   OPEN "COM1: .........." AS #1

  窠   饭  ଠ, 室  
樠樨   㭨樨,   ⮬   ⤥-
   ।饣 ⮩.  樠樮   ᥣ
  ᫥饬 浪:

      楫 ᫮: 75, 100, 150, 300, 600,
                  1200, 1800, 2400, 4800  9600 .  㬮-
                    ᪮  300 .
⭮            ᨬ : O  ⭮
                  E -  ⭮  N -  ⢨ ஫ 
                  ⭮.     ⠪ S -   -
                    ᥣ ࠢ 0  M -    ⭮
                  ᥣ ࠢ 1. ᫨ ᯮ 8  ,
                     㪠뢠 N;  ᯮ짮 
                     ᯮ짮 N.  㬮砭 - E.
            楫  ᫮  4, 5, 6, 7  8. 
                  㬮砭  7.
⮯-             楫  ᫮  1   2, 祬 2 -
                  祭   㬮砭  75  110 ,  1  -
                   ⠫. K ᫮ ⮢  ࠢ 4
                    5,  2 砥 1 1/2 ⮯-.  
                  祭    㭨樨,  ⠪  
                  ⮬  砥    楩  ६  
                  ⮬ .

 OPEN "COM1:" AS #1 뢠 COM1  裡  ᪮
300       ⭮  ⭮,  ᯮ 7  ⮢     1
⮯-. OPEN "COM1:1200,O,8,1" ⠭ ᪮ 1200 ,
 ⭮, 8   ᨬ  1 ⮯-.  ⬥⨬,  
   OPEN  ࠦ LEN = ᫮,  ᫮
⠭  ᨬ ࠧ ,    GET
 PUT  ࠡ뢠  ( 㬮砭 128 ⮢). -
 ⠪   ࠢ ,  ⠪   
祭   ᯥ䨪. (  [7.1.5]   ᯥ樠쭠
ନ, ᯮ㥬  ⮬):

   RS      ᨣ "  뫪" (Request to send).
          ᫨   饭,  OPEN "COM" 砥 RTS.
   CS     뢠  ஢  "⪠ 뫪"  (Clear  to
          send).   ⮩   ᫥ 祭 ( 0
            65535), 饥 ᫮ ᥪ㭤  㤥 -
           ᨣ । ⥬  㤥 뤠 訡 ⠩-
          ,  ਬ, CS500.  祭  㬮砭 1000, ᫨
          㪠 ࠬ RS,  ⮬ 砥 0.

   DS     뢠  ஢    "⮢    "
          (Data set ready).  ᪠ 易⥫ ࠬ,
             CS. 祭  㬮砭 1000.
   CD     뢠 ஢  "। ⥫" (Carrier
          detect). ᪠ 易⥫ ६ ࠬ,
             CS. 祭  㬮砭 0.
   LF     뢠  ⮬     ॢ ப
          (ASCII 10) ᫥  ᨬ  ⪨  (AS-
          CII 13). ᯮ   ᫥⥫쭮  뢮 
          ਭ.
   PE     蠥 ஢ ⭮, 뢠  訡  ⠩
          ன⢠   訡 ⭮.

    ᯥ樠        -
  OPEN "COM"    浪.  ⬥⨬,  筮  ᨣ
CTS  DSR   ⠭,  ⮡  OPEN 믮-
,   㤥 뤠 訡 ⠩ ன⢠.  祭
ਢ  OPEN "COM", ᮤঠ騩   ࠬ, ஬ RS
 LF:

   OPEN "COM1:1200,O,7,1,CS2000,DS2000,CD,PE" AS #1 LEN = 256

   । ஢.

   㭪  0 뢠 14H BIOS 樠   㭨-
樨.   DX    㭨樮  (COM1 =
0,  COM2  = 1).   AL  ᮤঠ    樠樮
, 祭 ⮢ ண ᫥饥:

    1-0    ᫮. 10 = 7 ⮢, 11 = 8 ⮢.
          2   ᫮ ⮯-⮢. 0 = 1, 1 = 2.
        4-3   ⭮. 00  10 = , 01 = ., 11 = .
        7-5   ᪮ . 000 = 110 
                               001 = 150 
                               010 = 300 
                               011 = 600 
                               100 = 1200 
                               101 = 2400 
                               110 = 4800 
                               111 = 9600 

     ਬ   樠    ᫮  8 ⮢,
 ⮯-⮬  ⭮ ⭮.   1200 .

;---ᢠ 祭 ࠬ஢ ६
   MOV  WORDLENGTH,00000011B   ; ᫮ 8 ⮢
   MOV  STOPBITS,00000000B     ;1 ⮯-
   MOV  PARITY,00011000B       ;⭠ ⭮
   MOV  BAUDRATE,10000000B     ;᪮ 1200 
;---樠㥬 COM1
   MOV  AL,0                   ;⨬ AL
   OR   AL,WORDLENGTH          ;⠭ 㦭 
   OR   AL,STOPBITS            ;
   OR   AL,PARITY              ;
   OR   AL,BAUDRATE            ;
   MOV  AH,0                   ;㭪 樠樨 
   MOV  DX,0                   ;롨ࠥ COM1
   INT  14H                    ;樠㥬 

   H ஢.

   Hᨬ  ⮣,        뢮, 
  4 ॣ 奬 8250    樠஢
 権 .    ॣ ⥫ ᪮ , -
 ஫   ॣ ࠧ襭 뢠.

樠 ᪮ .

   ⥫  ᪮   ᫮,  ஥  ࠧ
 ⥬ ᮢ  (1190000  ), ⮡  
᪮ .  Hਬ,  ᪮  1200  ⥫
᪮    ࠢ  96, ᪮ 1190000/96 ਡ-
  ࠢ  1200.    ⥫, ⥬    ᪮
.   300     ॡ 塠⭮ ᫠
 ⥫.  訩  뫠  3F9H ( 2F9H),  -
訩  3F8H (2F8H).          7 ॣ ࠢ
    ⠭  1 । 뫪 祭;  -
⨢ 砥  ⨬   ᠬ  祭   ᮢ 
㣨 ॣ (. [7.1.0]).    祭, ॡ㥬
  ᪮⥩ :

                 3F9H            3F8H

        110                     04H             17H
        300                     01H             80H
        600                     00H             C0H
       1200                     00H             60H
       1800                     00H             40H
       2400                     00H             30H
       3600                     00H             20H
       4800                     00H             18H
       9600                     00H             0CH

   ᥣ  ⠭  ॣ ᪮  묨,  ⠪
  ⢥,  ॡ, ⮡  ⠭  7
  ॣ ஫ .  ᫥ ⮣   ᮤন
ॣ ஫ ,  뢠  7- , ⮡  ⠫
  ॣࠬ 뫨 ࠢ묨.  ᪮ ॣ ஫
  ॣ஬ ⮫쪮    ,   ᯮᮡ -
  7 ⭮  1  ६ ⠭  ⠫
⮢ ⮣ ॣ. ⬥⨬,  PCjr ᯮ 㣨 -
, ᠭ      孨᪮ 㪮⢥.

樠 ॣ ஫ .

   祭  ⮢ ॣ ஫ ,    ண
ࠢ 3FBH ( 2FBH), ᫥饥:
    1-0    ᨬ. 00 = 5 ⮢, 01 = 6 ⮢
                             10 = 7 ⮢, 11 = 8 ⮢
          2   ᫮ ⮯-⮢. 0 = 1, 1 = 1.5, ᫨ 
                                ,  2.
          3   ⭮. 1 =   ⭮, 0 = .
          4    ⭮. 0 = ⭠, 1 = ⭠
          5    ⭮. ⠢  ⭮ ᥣ
               0  1. 0 = ⬥
                  1 = ᥣ 1, ᫨  3 = 1 &  4 = 0
               1 = ᥣ 0, ᫨  3 = 1 &  4 = 1
               1 =  ⭮, ᫨  3 = 0
          6   ⠭ 뢠. 뢠 뢮 ப 㫥
               ⢥ ᨣ ⤠ ⠭樨.
              0 = 饭, 1 = 
          7     ⮢ 㣨 ॣ஢

筮  5-7 襭  0. ⠫ 뢠 祭, -
塞 ⮪ .

 ࠧ襭 뢠.

     ᫨    ᯮ 뢠,  ࠢ   
ந    ॣ  ࠧ襭  뢠,  ⮡ 
㢥७,    뢠 饭.       
ॣ 0.  䨪樨 뢠  ஢.

   樠 ⠫  ॣ஢  易   . ᭮,
  㦭 ⮫쪮  裡  㤠묨 ன⢠,  
 ࠢ 騬  ன⢠,  ⠪  ᫥-
⥫ ਭ.  [7.1.5] ᭥  樠஢ ॣ
஫ .
     ਬ     BIOS   
COM1, ᫥ 祣 ࠧ ॣ 樠  ᪮
 1200  ,  ᥬ  ,  ⭮  ⭮  
⮯-.

;---砥   COM1
   MOV  AX,40H          ;ES 㪠뢠    BIOS
   MOV  ES,AX           ;
   MOV  DX,ES:[0]       ;砥   COM1
;---樠㥨 ॣ ⥫ ᪮   1200 
   ADD  DX,3            ;㪠뢠  ॣ ஫ 
   MOV  AL,10000000B    ;⠭  7
   OUT  DX,AL           ;뫠 
   DEC  DX              ;㪠뢠  訩  ⥫
   DEC  DX              ;᪮ 
   MOV  AL,0            ;訩   1200 
   OUT  DX,AL           ;뫠 訩   1200 
   DEC  DX              ;㪠뢠  訩  ⥫
   MOV  AL,60H          ;訩  ⥫  1200 
   OUT  DX,AL           ;뫠 訩 
;---樠㥬 ॣ ஫ 
   MOV  AL,0            ;塞 AL
   OR   AL,10B          ;  7 ⮢
   OR   AL,000B         ;1 ⮯-
   OR   AL,1000B        ;  ⭮
   OR   AL,10000B       ;⭠ ⭮
   ADD  DX,3            ;㪠뢠  ॣ ஫ 
   OUT  DX,AL           ;뫠 樠樮 祭
;---樠㥬 ॣ ࠧ襭 뢠
   DEC  DX              ;㪠뢠  ॣ ࠧ襭
   DEC  DX              ;뢠
   MOV  AL,0            ;頥 뢠
   OUT  DX,AL           ;뫠 
   7.1.3 ⠭ ⥪饣 㭨樮 .

       ᯮᮡ,  묨  ணࠬ   ।,
  㭨樮 ⮢  ᯮ짮.    
ᯮᮡ ⮨  㪠      ணࠬ.
ன ᯮᮡ ⮨  ᠭ ணࠬ   १ 
COM1,    㭨樮 ,   ஬
 १ COM1.
       BIOS  ᮤন      2-塠
६,   ᮤঠ       㭨樮
 (MS DOS ন ⮫쪮    ).   
   訩   㯯  ᮢ ⮢, १ 
     㭨樮 . 
  COM1 ࠭  祩 0040:0000,   COM2 -  祩
0040:0002.  ᬥ 㭨樮 ⮢   
  祭.  ୠ  ᬥ  祭 ਢ  ࢮ-
砫쭮 祭 ⮢.

   ᮪ ஢.

    ᨪ  OPEN "COM"  ᯮ짮   OPEN
C$+"1200,N,8" AS  #2,    C$        "COM1:",  
"COM2:".   ⢥ ୠ⨢  ᯮ짮 PEEK   POKE
   ᮢ:

100 DEF SEG = &H40          '㪠뢠    BIOS
110 X = PEEK(0): Y = PEEK(1)  '  2 
120 POKE 0,PEEK(2): POKE 1,PEEK(3)  '७ᨬ 2-  
130 POKE 2,X: POKE 3,Y      '뫠  祭

   । ஢.

   ᫨ ணࠬ  頥    㭨樮    १
뢠  14H  BIOS,   COM  ।  ᮤন  DX,
஥ ࠢ 0  1  (  COM1    COM2).  ⮣, ⮡
ᢠ DX ।⢥ 祭,    -
, ன   ᢮ 祭 0  1. ணࠬ,
ᯮ騥 㭨樮 㭪樨 3  4 뢠 21H ᥣ
  COM1.  ⮬ 砥    :

;---  ᮢ  COM1  COM2
   MOV  AX,40H        ;ES 㪠뢠    BIOS
   MOV  ES,AX         ;
   MOV  DX,ES:[0]     ;頥 1-    DX
   MOV  AX,ES:[2]     ;頥 2-    AX
   MOV  ES:[0],AX     ; 
   MOV  ES:[2],DX     ;
   7.1.4 ।  㭨樮 .

      奬 UART 8250 । ⮪
裡.    ॣ     5 , 祬  
  .  筮  ﭭ ᬠਢ  -
 㭨樮 .  ।  ॣ ᮮ-
頥,  ।騩 ᨬ 㦥  ᫠,  ணࠬ -
  ᨬ  .   ਥ  ॣ ନ-
 ணࠬ   㯫  ᫥饣  ᨬ,    ⥬ ⮡
ணࠬ    ० 祬  㤥 㭨⮦  ᫥-
騬 ਡ訬. 祭 ⮢ ⮣ ॣ ᫥饥:

    0   1 =   祭
       1   1 = 祭  뫨 १ᠭ (।騩
               ᨬ   ६ ⠭)
       2   1 = 訡 ⭮ (⭮, - 㬠  )
       3   1 = 訡 㦥 (।  ᨭ஭)
       4   1 = 㦥  (祭  ப ,
               ,  㣠 ⠭ 訢
                ।)
       5   1 = ॣ ࠭ ।稪  (  ॣ
                 । )
       6   1 = ॣ ᤢ ।稪  ( ॣ -
               砥   ॣ ࠭  ८ࠧ
                 ᫥⥫ )
       7   1 = ⠩ (ன⢮  易  設)

   ᮪ ஢.

    ᨪ ᭠砫 ।    ᯮ㥬 -
㭨樮  , ⥬    5  ᯮ -
 INP  祭      ⮣  .   ਫ 
   ᨪ ந ⮢ 樨,  
室 த ணࠬ,  ⮡  ஢ 祭
⮣ .   ᫥饬 ਬ ஢   -
:

100 DEF SEG = &H40         '㪠뢠    BIOS
110 ADDR = PEEK(4)+PEEK(5)*256   '塞  COM2
120 X = INP(ADDR+5)        '塞  ॣ 
130 IF X AND 16 THEN 500   '室  -, ᫨  4 = 1
 .
 .
500 '''稭 楤 ࠡ⪨ 뢠

   । ஢.

   㭪 3 뢠 14H BIOS  頥  AH ॣ 
 (AL 砥 ॣ   [7.1.5]).   室 DX
 ᮤঠ   㭨樮  ,  ஬ -
⢫  ,  COM1 = 0,  COM2 = 1.  K   ।騩
ਬ,  ஢ 稥 뢠:

   MOV  AH,3          ; 㭪樨
   MOV  DX,1          ;롨ࠥ COM2
   INT  14H           ;砥  
   TEST AH,10000B     ;㦥 ?
   JNZ  BREAK_DETECT  ;᫨ ,   楤 ࠡ⪨
   H ஢.

    ਬ ᮢ襭 祭  ਢ  ᨪ. 
   BIOS 뢠    㭨樮
,    5,  ⥬  祭  
뢠  .

   MOV  AX,40H          ;ES 㪠뢠    BIOS
   MOV  ES,AX           ;
   MOV  DX,ES:[2]       ;砥   COM2
   ADD  DX,5            ;塞 5  ॣ 
   IN   AL,DX           ;砥  
   TEST AL,10000B       ; 5 ⠭?
   JNZ  BREAK_DETECT    ;᫨ ,   ࠡ 뢠
   7.1.5 樠  ࠢ .

     6 ,    뢠   ஬
(ᮢ襭⢮         -
䥩 RS232).   , ᮪饭  㭪樨:

   :

Data Terminal Ready (DTR)        ନ ,  
⮢             祭  ⮢  裡.

Request To Send (RTS)            ନ ,  
  뫪                 뫪 .

   :

Data Set Ready (DSR)             ନ ,  
⮢                 祭  ⮢.

Clear To Send (CTS)              ନ ,  
⮢  뫪             ⮢  । .

Data Carrier Detect (DCD)        ନ ,  
㦥 ⥫         易  㣨 .

Ring Indicator (RI)              ନ ,  ⥫-
                  䮭 ,  ன ᮥ-
                                    .

   砫   ⠭ ᨣ DTR,  ⥬ -
  易  㤠 ⠭樥.  ᫥ ⮣,  
⠭   ⠭ ᨣ DSR.  ᨣ ନ-
 ,   ⮢  裡     
 ⠭ ᨣ RTS. K  ⢥ ᨣ CTS, 
। 稭.
    ⠭ ,    ࠢ ,
㯭 १ ॣ ஫  奬 UART 8250. 
ॣ      4 , 祬   ᯮ-
㥬 㭨樮 .  祭  ⮢:

 ஫ :

    7-5     (ᥣ 0)
          4     1 = 室 UART   室
          3      짮⥫ 祭  뢮 #2
          2      짮⥫ 祭  뢮 #1
          1     1 = "  뫪" ⨢
          0     1 = "⮢ " ⨢

   筮 ⠭  0    1  ॣ  ஫  , 
⠫  ࠢ 0.   2 ࠢ 0,  ᪫祭 砥, 
ந⥫  ।稫    ᯥ樠쭮 ᯮ짮-
.   3 ⠭ ⮫쪮  砥,  ᯮ -
뢠 [7.1.8]. H,  4  ।⠢  -
஢  㭨樮 ணࠬ  ⠭ ॠ쭮 -
.  室 ᨣ 奬  UART   室,  
UART  ਭ ᫥⥫ .   ᢮⢮   -
짮  ஢ ࠢ쭮 ࠡ ᠬ 奬.
 㯭  ᯮ짮 㭨樮 楤 -
 14H BIOS.
    ,    뫠 ଠ ,
ࠢ ॣ஬  .   ॣ ᯮ 
   6 , 祬    ᯮ㥬 -
樮 .  祭  ⮢:

  :

    7      1 = DCD
       6      1 = RI
       5      1 = DSR
       4      1 = CTS
       3      1 =   DCD
       2      1 =   RI
       1      1 =   DSR
       0      1 =   CTS

   ணࠬ  뢭 ஢    室 㭨樮-
 権.  ⬥⨬,   4     ࠫ 訬
६ ⠬.    ⠭  1 ⮫쪮 ⮣,  
ந室     ᮮ⢥饣  襣  
 ,  ॣ ⠫ ᫥ ࠧ.   4  
⮬᪨ 뢠  ⥭ ॣ.  ணࠬ 
஢   אַ   ॣ.  㣮  -
 ᯮ짮 㭪樨 3 뢠 14H BIOS,  -
頥  ॣ    AL ( ⮬  AH  㤥  ᮤ-
 ॣ    ).    室  DX  ᮤঠ
 㭨樮  (0  1).
   設⢮         ⥩,  
ࠢ  ⥬,  ࠦ   易   ॣ-
.     ⮬᪮ 裡  ⮬᪮
⢥,   ஫ ࠢ饩 ப.    ப
뫠  ,    ।   .  
뤥  ப    ᯥ樠쭮 ᨬ, ᯮ-
 ⮫쪮  㪠 砫 ࠢ饩  ப.   ᨬ
   ।। ( ᯮ  Esc -  ASCII
27)  롨ࠥ 짮⥫.   ᯮᮡ । -
쪮      ப, ⮬    砭
ப   ᬠਢ  室騩 ⮪ ଠ樨  -
.   K   ᢮  .   ⢥  ਬ
ᬮਬ , ᯮ㥬 ७  PCjr:

             祭          ਬ

    A            ⢥        室  ० ⢥
    Bn                 뫠 ᨣ 뢠 n*100 
    Cn            n     뢠 n   ⢥
    Dn...n       맮        뫠 ப ᥫ n...n
    Fn           ଠ       ⠭ ⮪ 裡
    H            ࠧ       ४頥   設
    I          樠  樠 
    LR          ⢥    ᯮ㥬  ⥬
    M            ०          ᨬ  
    Nn                     ᨬ  n
    O           originate     室  ० originate
    P            pick-up      室  ० 
    Q                     
    R                     裡
    Sn          ᪮      롮 ᪮ 
    Tn...n     ஧筮   ஢ ࠢ騥 ப
                               ᫥ n...n 
    V                    ॢ   ० 
    W                 祣    ᫥. 
    X            ।     । ⮭ 맮
    Z                     ஢ ⨪ 㤮

 ⢥         뫠  ଠ  ᢮
ﭨ,  뫠   UART   .    祩
ଠ樨,  ᮮ,     . ⮡ ࠢ쭮
ᯮ짮  ࠢ   ଠ   -
  ⥫쭮   㬥     .  
PCjr  ᠭ  孨᪮ 㪮⢥  PCjr.   Hਢ
ਬ  ⮫쪮  奬 ⠭ 裡 १ .

   ᮪ ஢.

   ᪮ ⥫䮭  祭 ,    
   ⥩,  ணࠬ஢ 裡  ᨪ 祬
 㦥, 祬  몥 ᥬ.  㡠 奬:

100 OUT BASEADDRESS+4,1        '⠭  DTR
110 '''⥯ 뫠 ࠢ ப  맮  ⠭-
120 ''' 裡 -       
 .
 .
200 X = INP(BASEADDRESS+2)     '砥 ॣ  
210 IF X AND 2 <> 2 THEN 200   '  㤥 ⠭  1
220 OUT BASEADDRESS+4,3        '⠭  RTS
230 X = INP(BASEADDRESS+2)     '砥 ॣ  
240 IF X AND 1 <> 1 THEN 230   '  㤥 ⠭  0
250 '''⥯ 뫠 

   H ஢.

      ᠬ 奬  몥 ᥬ:

;---⠭ ᨣ DTR
   MOV  DX,BASE_ADDRESS    ;稭   
   ADD  DX,4               ;㪠뢠  ॣ ஫ 
   MOV  AL,1               ;⠭  1
   OUT  DX,AL              ;뫠  
;---뫠 ࠢ ப   맮
    .
   (  ࠧ  ࠧ )
    .
;---  㤥 ⠭ ᨣ DSR
   INC  DX                 ;㪠뢠  ॣ  
   INC  DX                 ;
TRY_AGAIN:  IN   AL,DX     ;砥 ᮤন
   TEST AL,10B             ;஢塞 ன 
   JZ   TRY_AGAIN          ;    㤥 ࠢ 1
;---⠭  RTS
   DEC  DX                 ;頥  ॣ ࠢ
   DEC  DX                 ;
   MOV  AL,3               ;⠭ ᨣ RTS
   OUT  DX,AL              ;뫠  
;--- ᨣ CTS
   INC  DX                 ;頥  ॣ 
   INC  DX                 ;
ONCE_MORE:  IN   AL,DX     ;砥  
   TEST AL,1               ;஢塞  CTS
   JZ   ONCE_MORE          ; த    ⠭
;---⥯  뫠 
   7.1.6 । .

   ।     祬 ਥ, ᪮  ணࠬ  
 ஫   ⠢     ᪮,  ன 
  뫠.     楤 ।    
筮 ᫮묨, ᫨   ࠡ뢠     ⮣,
   뫠.    ⠪ ஡   ᨭ஭樥
 ᯮ짮 ⮪  XON/XOFF.    ⮪ ᯮ
  ASCII  17(XON)  19(XOFF),  ⮣  ⮡  ᨣ஢
ਭ饩 ⠭樨,    ।稪    த ।
६  ࢠ ⮪ .  ⮡ ਭ   ᨣ,
ணࠬ  뢭 ஢ ਭ ᨬ 
।  (  㯫᭮ ०,  ஬  筮  ࠡ
, ᨣ  ६      ஭  ⥫䮭
).   K஬  ⮣, ⮡ 㦨,   㤠  ⠭
뫠 ப 㫥,  ⢥ ᨣ 뢠,  -
뢭  ஢    뢠 (  4)  ॣ
  [7.1.4]. H .  7-2 ( [7.1.7])   -
楤  ।    , ਭ騬 -
.
   ᫥⢨  稭, ।⠢  ⮬ 㭪 楤
⤥쭮  ।騥   ⢥묨.  H   
᪮஢  楤ࠬ  ਥ , ᠭ묨  [7.1.7]
 ᮧ 饣 ।⠢  ⮬,  㦭. ᭮,  
ᮧ ࠡᯮᮡ  楤  室  訥
ᨫ,  ᮡ    㦥  ࠢ  訡  
। .

   ᮪ ஢.

    ᨪ  ⮣, ⮡ ᫠    㭨-
樮   ᯮ짮  PRINT#, PRINT# USING 
WRITE#.  ᫥    ᯥ樠 ଠ, ࠫ-
  ⮬,   ᯮ   뢮    ᯫ.
筮 ᯮ  PRINT#.    ਬ 뫠
  ।⢥  .  ।, 
COM1 㦥 ,    [7.1.2].   楤 ࠡ뢠
 뢠  ॣ  .

 .
 .
500 C$ = INKEY$: IF C$ <> "" THEN PRINT #1,C$
510 X = INP(BASEADDRESS + 5)    '⠥ ॣ  
520 IF X AND 32 = 32 THEN 1000  '஢塞  뢠
530 IF EOF(1) THEN 500       '᫨  ,   
 .
 ( ᯮ 楤 ਥ )
 .
1000 ''' 楤 ࠡ⪨ 뢠

   । ஢.

   㭪 1 뢠 14H BIOS 뫠 ᨬ, ᮤঠ騩  
AL  㭨樮 .  室 DX ᮤন   (0
 1).    AH ᮤন  ,  ஬  7 =
1, ᫨  ᯥ譠.   ⮬ 砥  祭 ᫥-
騥 :
 4   㦥  (ᨣ "⮯"  ਭ饩 ⠭樨)
    5   ॣ ᤢ ।稪 
    6   ॣ ࠭ ।稪 

   MS DOS  㭪   ।  㭨樮 
ᨬ, 頥  DL.  㭪  4 뢠 21H, 
       २  ।  㭪樥 BIOS;  
頥 ᭮ ଠ樨      
㭨樮 ⮢    ᯮ짮  (ᥣ ᯮ
COM1).
   ⮡ 뢥 ப  ᯮ 㭪 40H 뢠
21H.  筠 㭪 뢮     䠩  ன 
ᯮ짮 ⮤ 㯠 ਯ 䠩.  COM1  -
।  #3.   䠩  BX,  ᫮ -
  ⮢  CX.   DS:DX 㪠뢠    뢮
  뢠 㭪.

   MOV  AH,40H         ; 㭪樨
   MOV  BX,3           ;।।  䠩  COM1
   MOV  CX,50          ;뢮 50 ⮢
   LEA  DX,DATA_BUFFER ;DS:DX 㪠뢠   
   INT  21H            ;뫠 
   JC   COM_ERROR      ;室  ࠡ 訡

⬥⨬,   ᯮ짮 ।। ஢ 䠩 
  뢠. ᫨ ந諠 訡,  ⠭ 䫠
७,   AX  頥  5  ᫨  㭨樮  
⮢  6  㪠 ୮  䠩.

   H ஢.

   K    頥  ॣ ࠭  ।稪,
   ⮬᪨  뢮    ᫥⥫   १
ॣ ᤢ ।稪,  ਠ . H -
室     ஡,      砥 -
ࠫ쭮  .    5 ॣ    뢠
᢮  ॣ ࠭  ।稪   ਥ . -
  ﭭ  ஢    ,   5    ⠭
ࠢ 1.  ᫥ ⮣  ॣ  ࠭ ।稪 뫠
।     ⮣ , 㤠  .     
।  5 ࠢ 0  ⮫쪮      ⠭ ࠢ 1,
    ॣ ࠭ ।稪    ᫠  ᫥騩
ᨬ.      ,   㦭.
    ᫥饬 ਬ   ᭮    ⮩ 楤.
K筮,    ᤥ 砩 ᫮ (  ⭮,
ணࠬ஢ 裡 ॡ  ᮡ ⥫ 楤 -
 訡  ⠭  ᡮ).  ਬ ।-
,  㭨樮      㦥 樠஢, 
    [7.1.2]  [7.1.5].  ࢠ    横  ஢ન
訡  ਥ ᨬ.    [7.1.7]  ਢ   楤
ਥ .
;---   㤥 ⮢  뫪 ᨬ
KEEP_TRYING:  MOV  DX,BASE_ADDRESS   ; 
   ADD  DX,5              ;㪠뢠  ॣ  
   IN   AL,DX             ;砥  
   TEST AL,00011110B      ;஢塞  訡
   JNZ  ERROR_ROUTINE     ;᫨ ,   楤 ࠡ⪨
   TEST AL,00000001B      ;஢塞 祭  
   JNZ  RECEIVE           ;᫨ ,   楤 ਥ
   TEST AL,00100000B      ;஢塞 ⮢  ।
   JZ   KEEP_TRYING       ;᫨ ,  頥 
;---। ᨬ ਭ  
   MOV  AH,1              ;㭪 ஢ન  
   INT  16H               ;뢠  BIOS
   JZ   KEEP_TRYING       ;, ᫨  뫮 
   MOV  AH,0              ;㭪 祭   
   INT  16H               ;⥯ 㦭 ᨬ  AL
   SUB  DX,5              ; ॣ ࠭ ।稪
   OUT  DX,AL             ;뫠 ᨬ
   JMP  SHORT KEEP_TRYING ;頥  砫 横
   7.1.7 祭 .

   K㭨樮  ணࠬ ⮢ ਭ   ⮫쪮
樠஢ 㭨樮  [7.1.2]  ⠭ 
  㤠 ⠭樥 [7.1.5].  ਥ    
⤥  । ,  ᪮  ணࠬ   ॡ-
  ᫠  ᨣ XOFF (ASCII 19), ⮡  ⠭  ⮪
, ᫨  㯠  ᫨誮       ᯥ 
ࠡ뢠.  K XON (ASCII 17) ᮮ頥 㤠 ⠭樨, 
 த ।.  ⬥⨬,   PCjr   ਭ
   ६ ᪮ 権; ⮡     ࠭祭
 ᯮ짮 XON  XOFF.
    ᨬ   ᫮  ᯮ㥬  ⮪  ,
ਭ   ॡ ⮩  ᫮ ࠡ⪨.
  祭     ࠢ , ਢ
 [7.1.9].   ,   ࠭⥫ﬨ  
㦨  ᨭ஭ .   뢮 砥 ᨬ-
  ࠭ 뢠 ﭨ ᨬ ॢ ப (ASCII
10), ᪮   모  (  ᨪ)  ⮬᪨
⠢  ॢ  ப ᫥  ⪨;  ⮬  砥
᪫砩 ॢ ப  ਭ  , ⮡ 
 ப  뢮.  H .  7-2   㭨樮
楤,  ⠪  ।, 㦤  [7.1.6].

   ᮪ ஢.

    㭨樮 楤, ᠭ  㥬
ᨪ,  ६ 祭 ⢥.  ࠡ⪠  ,  ⮬
᫨ 楤 ਥ ୮  ᪮஢,   室 
   (..  ந ९)   ६ 
ணࠬ  㤥  ஢  ࠭ 祭 . -
  襭  ⮩  ஡   ᨬ쭮  
ࠧ .   㧪 ᨪ ࠧ   ⠭-
     /C:.  BASICA /C:1024 ᮧ
 ࠧ஬  1K    쭮  ᫮  ᪮ 
1200   (᫮ 楤ࠬ   4096 ).   
㬮砭 ᯮ ࠧ    ࠢ  256 ⠬  ⠪
   २⢮,     楫 饭  
 ᨬ ६.    ࠧ   ᯮ짮-
 ⮫쪮  ᪮  300   .
   ᨪ  ⠥         INPUT$  (
ᯮ짮 ⠪ INPUT#  LINE  INPUT#,  INPUT$  ).
    INPUT$(᫮,䠩). Hਬ,
INPUT$(10,#1) ⠥ 10 ⮢   㭨樮 , -
⮣  䠩 #1.  ᫨ ࠧ   ॢ蠥 256  ⮢,
 祭 㤮    ᮤন      ࠧ.  LOC
ᮮ頥  ᪮쪮 ⮢  室       -
. ⮬     INPUT$(LOC(1),#1)    S$ 
ᠭ     ᫥ 㯠  . K-
, ᫨ LOC(1) = 0,         楤  
    祭.  ⬥⨬,  EOF(1) ⠪  -
짮   ஢ન  ﭨ  ,  ⠪   㭪
頥  -1  ᫨    0, ᫨ ⠬      
ᨬ.
   ᫥ ⮣   ᠭ  S$ ணࠬ  ஢
  ᮤঠ  ⠬ ࠢ騥 .  㭪 INSTR  믮
  ॥ ᥣ.   H,   ࠬࠬ 
᭠砫  ,  ன     ப, ⥬  
ப , , ᨬ  (  ப)    .  ⮡
   ᨬ   XOFF  (ASCII  19)         
INSTR(1,S$,CHR$(19)). ⮡  ஥  㦭 ࠢ-
饣  ᨬ      ப,  稭   ᨬ,
᫥饣  樥,  ன  .
   筮 楤   ᪫砥 設⢮ ࠢ ᨬ-
   ਭ ,  ⥬ ⮡  ଠ쭮 룫拉
 뢮.  ⥬  뢮  ࠭, 뫠  -
    ,   뢠     뢮
 ਭ.    ᥩ  ⮩  ⥫쭮 ணࠬ 
ﭭ    ᬮ  㯨   .
᫨ ,    ᫨誮 ,  ணࠬ-
   ᫠ ᨣ XOFF, ⠭ ⮪ .  ⥬,
᫥ ⮣  祭     ஢,  ᭮
ࠧ  । .  K筮, 室  ⮡  ⮪
 ন XON  XOFF. ணࠬ, ᠭ  -
㥬 ᨪ, 筮  ᯮ짮 XON/XOFF  ⠭-
 ᮮ⢥⢨ ᪮⥩    ਥ ,   ।
 ⠪ ணࠬ    筮   ॠ-
஢  祭 ᨣ XOFF.

 .
 .
500 ''' 室 楤 । (. [7.1.6])
 .
 .
600 IF LOC(1)>100 THEN XOFF = 1: PRINT #1,CHR$(19)
610 C$ = INPUT$(LOC(1),#1)   '⠥ ᮤন 
620 '''뤥塞   ࠢ騥 ᨬ
630 IF INSTR(1,C$,CHR$(19))>0 THEN 800  '祭 XOFF
640 IF INSTR(1,C$,CHR$(17))>0 THEN 900  '祭 XON
 .
 ( 㤠 㦭 ࠢ騥 ᨬ
 .
700 PRINT C$                 '뢮   ࠭
710 IF LOC(1) > 0 THEN 600   '᫨ 祭 ,  ⠥ 
720 IF XOFF = 1 THEN XOFF = 0: PRINT #1,CHR$(17)
 .
 .
800 'ॠ  XOFF
 .
900 'ॠ  XON

   ᫨ 㭪 LOF ਬ  㭨樮 ,  
頥  ⢮ ᢮ , ⠢襥   -
.  Hਬ, ᫨ COM1   #1,  LOF(1) ᮮ ᢮-
  ࠭⢠.       ।,  
  .  ⬥⨬,  ,   LOC 頥
 㪠⥫     祭   ᯮ짮
 ⮩   楫.  Hਬ,  ᫨  COM1    #3,  ࠧ
    ࠢ  256 ⠬,    ,   LOC(3)  
㤥 ࠢ 256,   .
   । ஢.

   㭪 2 뢠 14H BIOS  ᨬ  ᫥⥫-
 , 頥   AL  祭  ⥬  頥
 ணࠬ.  室     (0-1)  DX. 
 AX ࠢ , ᫨  뫮 訡.  ᫨ AH  ࠢ 0,
   饭   ,    ஬  祭
⮫쪮 5 ⮢.  ᫥騥 :

  1   訡 ९ ( ᨬ 㯨  ࠭,  祬
          㤠 )
     2   訡 ⭮ (⭮, - ஡  )
     3   訡 ଫ (⮢  ⮯- )
     4   㦥  (祭  ப ⮢ 0)
     5   訡 ⠩ ( 祭 ᨣ DSR)

   MS DOS ⠪ ।⠢ 㭨樮 㭪  ਥ
 ᨬ,  㭪  3  뢠  21H.  㭪 
ᨬ   COM1  頥   AL.  ⬥⨬,    ⮬  
㭪樨 樠樨 ,     १ 楤
BIOS   ।⢥,    [7.1.2].    㬮砭
 樠   祭ﬨ  2400 ,  ஫ -
,   ⮯-  8 ⮢  ᨬ.   㭪   
 ⮨  ࠢ    㭪樥 BIOS   頥
ଠ樨  .

   H ஢.

     祭   ᯮ짮 㭨樮 -
뢠 [7.1.8]  ணࠬ    ﭭ  ஢  ॣ
  ,   ண  5    
ᯮ㥬 㭨樮  .    0 ⮣ ॣ
㤥  ࠢ ,      㤥 祭 ᨬ   -
  ਥ.  K  0 ⠭ ࠢ 1,  
     ॣ,  ⥬ ⮡    -
 ᫥騩 ਭ ᨬ. ᫥ ⮣  ᨬ ⠭,
 0  ⠭ ࠢ 0  ⠥ ⠪,    -
㤥  ᨬ.
      ⮬  ਫ,  㭨樮 楤-
  筮 ᮧ 横᪨   ᡮ 㯠 ᨬ-
.  ᪨  㦤   [3.1.1].    ⠪
,  ᫨ 㯠騥    ࠭  ᪮
1200 ,  楤 ᤢ ࠭  BIOS [4.5.1]  㤥 ᯥ-
    ந ९.  ⮥ 襭    ஡
⮨  ᯮ짮  㭨樮 뢠,  -
  [7.1.8].
   騩  ਬ  筮 㡫  ᮤন  ।饣
ࠧ, ⭮饣  । ᨬ. K   ⮬ 砥 
稭   ᪮筮 横.  ꥤ  2  楤  
楤ࠬ 樠樨   [7.1.2]   [7.1.5]  ᮧ -
祭 楤 /뢮 १ 㭨樮 .

KEEP_TRYING:   MOV  DX,BASE_ADDRESS   ; 
   ADD  DX,5           ;㪠뢠  ॣ  
   IN   AL,DX          ;砥  
   TEST AL,00011110B   ;஢塞  訡
   JNZ  ERROR_ROUTINE  ;᫨ ,   ࠡ 訡
   TEST AL,00000001B   ;஢塞 祭  
   JNZ  RECEIVE        ; 楤 ਥ 
   TEST AL,00100000B   ;஢塞 ⮢  ।
   JZ   KEEP_TRYING    ;᫨ ,   砫 横
    .
   ( ᯮ 楤 । - . [7.1.6])
    .
;---砥   뢮   ࠭
RECEIVE:   MOV  DX,BASE_ADDRESS        ; 
   IN   AL,DX          ;⠥ 祭 ᨬ
   CMP  AL,19          ;஢ઠ  XOFF
   JE   XOFF_ROUTINE   ;
    .
   ( ..)
    .
   MOV  DL,AL          ;⮢ ᨬ  뢮  ࠭
   MOV  AH,2           ;㭪 뢮 ᨬ
   INT  21H            ;뢮 
   JMP  SHORT KEEP_TRYING   ;頥  砫 横
   7.1.8  뫪/祭       㭨樮
뢠.

    㭨樮 ணࠬ  ᫨誮  ࠡ,
⮡  ᥡ 楫  /뢮.   㯠騥  
 ஢, ।   ᮡ,  
訥    뢠    뢠 
.  K㭨樮 뢠  ணࠬ  
 /뢮   ६,  祬    ⮣  ॡ. Hਬ,
᫥ ⠭ 뢠, ࠢ । 楤 -
  ⮫쪮  ⮬ 砥,   ॣ ࠭ ।-
稪    頥 ணࠬ,  ⮫쪮 ᫠   -
,   த ᢮ ࠡ    ,  ॣ
࠭  ।稪  㤥 ᭮ ⮢.  H   -
  㦤 뢠   [1.2.3], ० 祬 த
⥭.
   IBM  PC ⢮   뢠  㭨樮
,  3 (COM1)  4 (COM2). ⬥⨬,   PCjr, ஥-
     3,  COM1 -  4.  奬 UART 8250
᪠ 4  뢠    , ᯮ ᫥-
騥   ᫠:

   00       ॣ  
   01     ॣ ࠭ ।稪 
   10     祭 
   11     訡 ਥ,  祭 ᫮ 뢠

   ᮤঠ   2-1 ॣ 䨪樨  뢠-
,   ண  2 ,  祬   ᯮ-
㥬 㭨樮 .  0 ⮣ ॣ ⠭-
    뢠,    ⠫   -
  ᥣ ࠢ 0.
   ⮡      뢠,   ணࠬ-
 ॣ ࠧ襭  뢠,    ண  1 
 . 祭  ⮢ ⠪:

 0     1 = 뢠  祭 
    1     1 = 뢠  ॣ ࠭ ।稪 
    2     1 = 뢠  訡 ਥ 
    3     1 = 뢠   ॣ  
  7-4      ᯮ, ᥣ 0

K    ᮡ⨩ ந室,  樨 ⭮
뢠, 饥  奬 ࠡ⪨ 뢠 8259 
  3   COM1    4  COM2.  楤  ࠡ⪨
뢠 । ࠢ  ⮬  ,    㪠뢠
ᮮ⢥騩  뢠.  ᪮  ⭮ -
뢠,       ᪨஢  [1.2.2].   , 
楤  ࠡ⪨  뢠     ⠭
 室  ⭮ 뢠 MOV AL,20H/OUT 20H,AL.  H
. 7-3  㭨樮 뢠.
    ᫮ ⨯ 뢠   ࠧ襭  ६-
. H ᫨ ࠧ襭  祬    ⨯,  楤 ࠡ⪨
뢠  ᠬ ।   ⨯ 뢠 ந-
襫, ஢ ॣ  䨪樨  뢠.  ६
  ந室  祬  뢠, ⮬   0  -
 䨪樨 ᮮ頥   ⮬,  㯨   -
뢠. K    뢠 㯨     
 ६,      ࠡ뢠    浪, 㪠 
ਢ ⠡.   뢠   -
⠭    襭 楤 ࠡ⪨  뢠.   ᫮
। 뢠 "⬥"     ⢨, -
  ࠢ ⮫ ᫥饩 ⠡:

K                            ⢨  ""

 11       訡       ⥭ ॣ  
 10       祭         ⥭ ॣ ਥ 
 01       ।稪 ⮢       뢮 ᨬ  ॣ ࠭
                                 ।稪
 00        ⥭ ॣ  

   H ஢.

       ଠ ணࠬ,  ࠡ뢠饩  㭨樮
뢠:

;---⠭  㭨樮 뢠
   PUSH DS                  ;࠭塞 DS
   MOV  DX,OFFSET IO_INT    ;DS:DX 㪠뢠  楤
   MOV  AX,SEG IO_INT       ;
   MOV  DS,AX               ;
   MOV  AL,0BH              ;   COM1
   MOV  AH,25H              ;㭪  
   INT  21H                 ;塞  뢠
;---樠 ॣ ࠧ襭 뢠 (COM1)
   MOV  AX,40H              ;DS 㪠뢠   BIOS
   MOV  DS,AX               ;
   MOV  DX,DS:[0]           ;砥   COM1
   INC  DX                  ;㪠뢠  ॣ ࠧ襭
   MOV  AL,3                ;뢠  ࠧ蠥 뢠
   OUT  DX,AL               ;ਥ  ।
   POP  DS                  ;⠭ ॣ

;---楤 ࠡ⪨ 뢠 - ᭠砫 ।塞  ⨯
IO_INT      PROC FAR
NEXT_INT:   MOV  DX,BASEADDRESS     ; 
   INC  DX                  ;㪠뢠  ॣ 䨪樨
   INC  DX                  ;뢠
   IN   AL,DX               ;⠥  祭
   TEST AL,10B              ; 뢠 ।稪?
   JNZ  TRANSMIT            ;᫨ ,   ।

RECEIVE:                    ;  ਥ
   .
   .
   JMP SHORT ANOTHER        ;஢塞   㣮 뢠

TRANSMIT:                   ;   ।
   .
   .
;---। 室, ஢塞   㣮 뢠
ANOTHER:   MOV  DX,BASEADDRESS       ; 
   INC  DX                  ;㪠뢠  ॣ 䨪樨
   INC  DX                  ;뢠
   IN   AL,DX               ;⠥  祭
   TEST AL,1                ;஢塞  1
   JNZ  NEXT_INT            ;᫨  ⠭,   砫
   MOV  AL,20H              ;  襭 ⭮
   OUT  20H,AL              ;뢠
   IRET
IO_INT      ENDP
   7.1.9  ࠢ , ᯮ㥬  㭨樨.

    ⠡ ᮤন 32  ࠢ    ASCII,  -
  㭨樨,  ⠪  ࠡ ਭ  㣨
ன.   ⠪   ASCII  127 - DEL (), 
筮 ᯮ  ࠢ騩 ,     뤠
    ⠭ Ctrl + . ਬ -
  ,  ⠪   ⪨, ਠ⭮.  H  -
設⢮ 㣨 ࠢ   ப  -
樨,   - ⢨ ᮢ⨬ 㤮.

H  K-   -  H祭
  ASCII        -
10- 16-   Ctrl      

 00   00    ^@      NUL   -ࠧ⥫ ( 騩 祭-
                          , ⮬   থ)
 01   01    ^A      SOH   H砫 .H稭 । -
                              䠩.
 02   02    ^B      STX   H砫 ⥪. ⬥砥  砫 ⥪,
                          ᫥饣   .
 03   03    ^C      ETX   K ⥪.  ⬥ 砫 -
                          , 㦠  ஫ 訡.
 04   04    ^D      EOT   K ।. K ⠭, 
                            ⬥砥  䠩.
 05   05    ^E      ENQ   .訢  ଠ
                           ⤠ ⠭樨.
 06   06    ^F      ACK   ⢥ত.⢥ত ᯥ -
                            ⠭ﬨ.
 07   07    ^G      BEL   .樨 ,⮡ ਢ
                          .
 08   08    ^H      BS      蠣.
 09   09    ^I      HT    ਧ. ⠡.
 10   0A    ^J      LF    ॢ ப.
 11   0B    ^K      VT    ⨪. ⠡.
 12   0C    ^L      FF    ॢ ଠ.
 13   0D    ^M      CR     ⪨.
 14   0E    ^N      SO     몫祭.  ४砥  ᨬ-
                          .
 15   0F    ^O      SI     祭. ४砥  ᨬ-
                          .
 16   10    ^P      DLE   Data Link Escape.  祭 
                          ᫥ ᨬ (筮 Esc).
 17   11    ^Q      DC1   ࠢ ன⢮ 1.  ᯮ
                           ᨣ XON  㤠 ⠭樨 
			  ।.
 18   12    ^R      DC2   ࠢ ன⢮ 2.  ४-
                          祭 饣 祭.
 19   13    ^S      DC3   ࠢ ன⢮ 3.  ᯮ
                            ᨣ  XOFF  㤠 ⠭樨 
                           ४饭 ।.
 20   14    ^T      DC4   ࠢ ன⢮ 4.  ४-
                          祭 饣 祭.
 21   15    ^U      NAK   栭. । ᯥ譠.
 22   16    ^V      SYN   ஬⮪  ᨭ஭樨. ᯮ 
                                  ᨭ஭ 
			  裡.
 23   17    ^W      TB    K  ।. ਠ ETX.
 24   18    ^X      CAN   ⬥. 筮 ᨣ   訡
                          ।.
 25   19    ^Y      EM    K ।.   䨧᪮ 
                           筨 .
 26   1A    ^Z      SUB   ⠭.  ᨬ,  
                             뢥.
 27   1B    ^[      ESC   ⬥砥 ᫥騥 ᨬ,  -
                           ᫥⥫쭮.
 28   1C    ^/      FS    ⥫ 䠩. ⬥砥 
                          ࠭  䠩.
 29   1D    ^]      GS    ⥫ 㯯. ⬥砥   
                          ࠭  㯯 .
 30   1E    ^^      RS    ⥫ ᥩ.⬥砥  
                          ࠭  ﬨ .
 31   1F    ^_      US    ⥫ ꥪ⮢. ⬥砥 -
                           ࠭  ꥪ⠬ .
 127  7F         DEL   .  㣨 ᨬ.
               2.  ࠩ ன⢠.

   ࠩ  ன⢠  ᯥ樠쭠 ணࠬ,   ࠢ-
    ਩  ன⢮,  ⠪  ਭ 
᪮ ⥫.  ᪮ ࠬ  ਩  -
ன   ந⥫  ந⥫,  ࠧ -
⥫  ணࠬ  ॡ  ࠧ ࠩ-
஢, ⮡   ࠡ    饬      㤮.
 4 ᯮᮡ 祭 ࠩ஢ ன  ணࠬ:

   1.        ࠩ஢ אַ  ணࠬ.
Hਬ, ⮡ ন  ࠧ  ਭ,   ᮧ
⠡ ࠢ ᫥⥫쭮⥩  ᪠   㦭 
 ࠧ   ॡ.   室   
   筮 .

   2.    ࠩ஢ ன  ॡ, ⮡ ண-
ࠬ 㦠 室  ⢥ ૥ (..  
     ணࠬ,  ᯥ樠쭮  ⠢    ⮩  楫
[1.3.5]).

   3.  ࠩ ன⢠  ⤥ ணࠬ, 
㪠뢠   䠩, 믮塞  㧪  ⥬.
ணࠬ  ᪠    ⠭  ࠩ  ன⢠ 
ணࠬ ࠡ⪨ 뢠.  ᫥ ⮣ ணࠬ 蠥-
,  ⠥ १⭮   ,    ᭥  [1.3.4].
᫥⢨  ணࠬ ᯮ  ࠩ १  
뢠.

   4.  業 ࠩ  ன⢠,  㤥 -
㦠     䠩 CONFIG.SYS.  MS DOS ন-
 ⠪ ⨯ ࠩ஢ ன   㦥  
ᯮ짮    DOS,  ஢ 訡.
樠쭠  IOCTL (K஫ /뢮)  ண-
ࠬ  㧭  ࠩ  ᫠   ࠢ  ப,
 筮 ⮪ .

     ⥣   ॠ    ଠ樨,
ਢ   ⠫   .  H ⠭
ࠩ ன 祭 ᫮.     ,   祭
饭.    ⮬ 砥 ⥬ 㤥 ࠡ  ன⢮  -
⮫쪮  ᭮,     ன    ᪮  ⥫.
ன   ᢮ , ਬ, SERIALPR   -
⥫쭮 ਭ,  ⥬  ன⢮   -
    㯠   몠.   ᨪ   OPEN  "SE-
RIALPR" FOR OUTPUT AS #2 ⮢  ᫥⥫ ਭ 
뢮.   몥 ᥬ  ᬮ    ਭ
    ⮤  ࠢ饣   䠩, ⠪   
⮤ ਯ 䠩,  祭  㭪 IOCTL. 
⮬ 짮⥫   㯠  ன  ஢-
  樮 ⥬      COPY A:MY-
FILE SERIALPR:, ⮡ ᪮஢ ᮤন 䠩  ਭ.
   ⠭ ࠩ ன    ᠭ ⮫쪮
  몥 ᥬ.    㦨  ⨯  ன:
ᨬ  .    뢠 , 묨 -
ன⢮  ࠡ뢠 .  筮 ࠩ   ன
㦨  ᪮  ⥫,    ࠩ  ᨬ - 
⠫쭮, 稭  ᫥⥫ ਭ஢   ஡-
.   ன⢠    , ⮬ 
  .  ன⢠ 
묨 ⭮,  ⮬      室   ࠢ
ன,    ⠪  ன,      ᯥ
᮪ ᪮  묨. ࠩ  ன 祭
᫮     筮 , ⮡ ᭨  -
.  祭 ।  ॡ  ⠪ ࠩ. 孨-
  㪮⢮  MS DOS ।⠢  室 ଠ-
  ᮤন  ਬ ࠩ 㠫쭮 ᪠  -
⨢  .    ᬮ  ଠ ᫥  ⮣
  㦤 ࠩ஢  ᨬ ன, ਢ-
 .
   ⠭  ࠩ ன ᯮ頤  ணࠬ-
 訡.  ᪮ ࠩ ⮬᪨ 㦠 -
   㧪,   ᯮ짮 ⫠稪  -
 稭 .  ⮬  ।쭮 ⥫ 
 ᠭ.
   ணࠬ ࠩ ன⢠ ࠧ   , 
  㦤  ⤥쭮    ᫥ ࠧ.   (1)
 ࠩ,   ன⢮  ᮤন  -
  ⠫  ࠩ, (2) ⥣ ࠩ, -
  ࠭  ଠ    , ᮧ  MS  DOS,
 뢠  ,  (3) ࠡ稪 뢠
ன⢠,   ᮤন , ࠢ騩 ன⢮.
   7.2.1   ࠩ.

   ࠩ  ன    ᮧ      COM  䠩
[1.3.6].     騬 ணࠬ, ᪮
    䨪 ணࠬ ᥣ.  ⮡ 
⮣     ORG  100H  砫 ணࠬ, 
     COM 䠩.    ORG 0,   
祣  .  ࠩ     ᠭ   (far)
楤,       ணࠬ.   ਢ  ਬ
ਢ 砫   ࠩ ன⢠   DEVICE12.
    ⠭⭮ ன⢮ AUX, ᯮ㥬  MS  DOS,
ਭ 뢮 㭪樨 4 뢠  21H.  ࠩ ன⢠
⮨   ⮣ ࠧ   , ਢ   ᫥-
  ࠧ;        㣨, ⮡
  ணࠬ.
   ࠩ ன⢠  稭   ࠩ.  
  18 ⮢, ࠧ   5 .  ࢮ  (DD)
ᥣ ᮤন 祭 -1 (FFFFFFFFH),   MS DOS 㦠
ࠩ,     ⮢   ᫥饣 ࠩ-
.     ࠧ, ⥬  ᪠ ᫥騩  ࠩ  
楯窥.  ᫥  㦥 ࠩ  ⮬  ⠥
祭 -1.
   ஥    ਡ⮢ ࠩ.  祭 ⮫쪮
7 ⮢ ⮣ ᫮:

 15   1 = ᨬ쭮 ன⢮, 0 = 筮 ன⢮
    14   1 = ন IOCTL, 0 =  ন IOCTL
    13   1 = ଠ  IBM, 0 = 㣮 ଠ 
     3   1 = , 0 =  
     2   1 = 㫥 ன⢮, 0 =  㫥 ன⢮
     1   1 = ன⢮ ⠭⭮ 뢮, 0 = 
     0   1 = ன⢮ ⠭⭮ , 0 = 

筮 ⠭ ⮫쪮  15,   15  14, ᫨ ன-
 ন IOCTL ( 㦤  [7.2.4]).   13  -
 ⮫쪮   ன.  ⠫  ᯮ-
     ன, ᯮ㥬 MS DOS    㬮砭
(ன⢠ ⠭⭮     뢮   
ᯫ;  ன⢮ ᮢ ꥤ  ॠ쭮 ६
 ᠬ ६ ⮪ BIOS;   㫥  ன⢮  (NULL) - 
ᥢன⢮, ᯮ㥬  ⮢ 楫).
     ⢥⮥  ᮤঠ ᬥ饭  楤 -
  ࠡ⪨ 뢠,   ᬮ७  ᫥
ࠧ.  H, ᫥  ᮤন  ன⢠.   
 ᮤঠ   8  ᨬ        ࠢ 
   騬 ஡.      
DOS ன, ⠪   LPT1    COM1,  ᯮ   
ன⢠,    ਬ.

   H ஢.

     ਬ ᮧ ࠩ  ᫥⥫쭮  -
ன⢠. "DEVICE12" -    䠩,      㪠 
䠩  䨣樨 ⥬, ⮡  ࠩ  㦥.  
 ਡ⮢ ⠭  ⮫쪮   15, 㪠뢠   ᨬ-
쭮 ன⢮     ন IOCTL.  DEV_STRATEGY
 DEV_INTERRUPT -  楤,  㦤  ᫥ ࠧ-
.   ன⢮  AUX,  ⥬ ⮡  筮  -
ன⢮ MS DOS  ⨬  .     祭  -
  ⮬ ன, ᪮ ⥬  ।।-
  䠩  饭   ன AUX (᫥⥫쭮-
).    ਬ 祭 砫   ࠩ,  ।騩
  COM ணࠬ.

CSEG      SEGMENT PUBLIC 'CODE'   '⠭  ᥣ
          ORG 0                   ' ப 易⥫쭠
          ASSUME CS:CSEG,DS:CSEG,ES:CSEG
DEVICE12  PROC FAR         'ࠩ   楤
          DD   0FFFFFFFFH  ' ᫥饣 ࠩ
          DW   8000H       ' ਡ⮢
          DW   DEV_STATEGY ' 楤 ⥣
          DW   DEV_INTERRUPT  ' 楤 뢠
          DB   'AUX     ' ' ன⢮ ( ஡)
   7.2.2  ⥣ ன⢠.

   楤  ⥣  ன⢠  ॡ  ⮫쪮   ப.
K  ⥬ 㦠 ன⢮,   ᮧ   ,
뢠  .    㭪樨. - 
㦨      ७ 権 ⥬.   
 ,     㦨  ,  १ 
ந室    ଠ樥  ࠩ஬   뢠饩  
ணࠬ. Hਬ,  ࠩ 뢮 ,   
  १  .  K  ࠩ 蠥
᢮ ࠡ,   ⠭      -
,   㯥 뢠饩 ணࠬ, ⥬ ᠬ   -
  㧭  訡.
   MS DOS ᮧ      ⠭ ࠩ -
ன⢠  (  ⥬ 㦠).  楤 ⥣  -
ன⢠ 믮 ⮫쪮  ࠧ   .  ⮬ ES:BX
㪠뢠   ᮧ    楤  㦭
 ᪮஢ , ⮡  ᫥⢨     㦥
  饭  ࠩ.   ᬥ饭  ᥣ  
   ६.   ᫥饬 ࠧ  㢨, 
  饭  ࠩ, ࢮ    - ⠭
祭 ES:BX, ⮡  뫮  ଠ  
.
       ,  ᨬ  ⨯
ᤥ   ࠩ (.  樠, 뢮 
  ).   13   ᥣ 
  .  ଠ ⠪:

1.    (DB).
2. K ன⢠ (DB). ।    ன.
3.   K  (DB).   ࠭  ᫥  ᫠
ࠩ .   ᫥  [7.2.3].
4.  (DW).     ⠭    ࠧ  맮
ࠩ. ᫨ ⠭  15,    쬨  -
  訡. K 訡 ᫥  [7.2.3].
5. ࢭ  (8 ⮢). ᯮ MS DOS.
6.  室  ࠡ ࠩ (६ ).

   H ஢.

    5 ப 楤 ⥣  ன⢠. ⬥砥,  
᫮  ६, ࠭騥 祭 ES  BX, ᫥   -
樥 RET,     ଠ COM.

DEV_STRATEGY:   MOV  CS:KEEP_ES,ES
                MOV  CS:KEEP_BX,BX
                RET
KEEP_CS         DW ?
KEEP_BX         DW ?
   7.2.3  ࠡ稪 뢠 ன⢠.

   ࠩ ன⢠ 稭    権 , ਢ
  । ࠧ.     ᫥ ᮮ⢥
楤 ࠡ⪨ 뢠. H ᠬ ,  ୮, -
   楤 楤ன ࠡ⪨ 뢠, ⠪   
  㦨 뢠  蠥 筮 樥
RET.
     13 ⨯ 㭪権,   믮  ⠭-
 ࠩ ன⢠.  K ࠩ 뢠 㭪樥 DOS
(᪠ 㭪樥  3FH  뢠  21H,   ⠥  
䠩  ன⢠),  㭪 頥    1  
13  ⭮      ᬥ饭  2     (
 -   5).  ⥬ ࠢ ।  楤
ࠡ⪨ 뢠  ࠩ,    ன  । 
ᬮ    ࠩ [7.2.1].    楤   
। ⠭ ES:BX,  ⥬ ⮡  㪠뢠  -
  ,  ⥬ ⠥   .     ⮬
 楤  ࠡ⪨  뢠  뢠 㦭 楤,
  믮 ॡ㥬 㭪.  楤    
13-᫮ ⠡,  ᮤঠ饩  ᬥ饭    13 ⨯ 㭪権.
㭪樨 ᥣ   ᫥饬 浪:

   1. INITIALIZE (樠)
   2. CHECK_MEDIA (஢ઠ ⥫)
   3. MAKE_BPB
   4. IOCTL_IN
   5. INPUT_DATA ( )
   6. NONDESTRUCT_IN
   7. INPUT_STATUS ( )
   8. CLEAR_INPUT (⪠ )
   9. OUTPUT_DATA (뢮 )
  10. OUTPUT_VERIFY (஢ઠ 뢮)
  11. OUTPUT_STATUS ( 뢮)
  12. CLEAR_OUTPUT (⪠ 뢮)
  13. IOCTL_OUT

   ᫥  襭  楤, 楤  ࠡ⪨  뢠
蠥 樥 RET   ࠢ 頥  뢠-
 ணࠬ. ࠩ ன⢠     ࠡ-
 ⮫쪮  㭪権,   ᨬ   ன⢠  -
㥬  ⥯ ஫ 訡  ࠢ ன⢮.  H
㭪権,     ᠭ  楤,   
室  ࠩ  믮 祣-.   ⮬ 砥 
⮫쪮 ।  室  ⠭    15, 8, 1  0  
, ⮡ ନ஢ 뢠 ,  뫠 ॡ-
   㭪  (  15    訡,  8
뢠,  ࠩ ࠡ⠥ ଠ쭮,   0  1  
訡 3,  ᮮ⢥ "⭮ ").
   H  㭪   ⢮    ࠩ -
ன,   㭪  1 - 樠.   㭪 -
᪨ 믮  㧪 ࠩ,  ⥬ .  
  ,  믮塞 ⮩  楤ன,  ⮨  ⠭
  ࠩ    , 稭  ᬥ饭
14   .  ਢ ਬ  ணࠬ
⬥祭 ⪮ eop:. K஬ ⮩  ,  楤 樠樨
  ⠪  믮  室     ன⢠
樠. H .  7-4   ࠩ ன-
.
   K    ⠢ 12- 㭪権   祭   ࠩ
ன⢠   ⮣,  ࠩ  . H,
⠪    CHECK_MEDIA   MAKE_BPB, ⭮  ⮫쪮   
ன⢠  (  ⠭   ⨯  ᪠,  ࠧ ᥪ஢ 
..).     ᨬ ன  묨   
㭪樨: INPUT_DATA   OUTPUT_DATA  (⬥⨬,    -
⢥  -    ⠡ 㭪権,  ).
      ᫥ :

13 ⮢    ⠭ ଠ  
 1        ᠭ । (⮫쪮   ன)
 4      ᬥ饭/ᥣ   
 2      ᫮ ⮢, ஥  ।
 2      ⮢  ᥪ (⮫쪮  )

 ਢ ਬ ᯮ 㭪 뢮. 楤,
믮  뢮 砥     ,  
஬ 室 뢮   (ᬥ饭 14).  ⠪ -
뢠  ᫮ ⮢, ஥  뢥 (ᬥ饭 18).   K
楤  뢮 ,   ⠭ ᫮  
  (ᬥ饭 3)   ࠢ.  ᫨ -
 ᯥ譠,     ⠭    8 ᫮ . 㣨
  㦤 .

   H ஢.

       ਬ ਢ  ଠ  楤  ࠡ⪨
뢠,   ॠ쭮 , ࠢ饣 ன⢮.

;---樠 ࠡ稪 뢠 ன⢠
DEV_INTERRUPT:  PUSH ES     ;࠭塞 ॣ
                PUSH DS
                PUSH AX
                PUSH BX
                PUSH CX
                PUSH DX
                PUSH SI
                PUSH DI
                PUSH BP
   MOV  AX,CS:KEEP_ES    ;ES:BX 㪠뢠   
   MOV  ES,AX            ;
   MOV  BX,CS:KEEP_BX    ;
   MOV  AL,ES:[BX]+2     ;砥    
   SHL  AL,1             ;㬭  2 (.. ⠡ ᫮)
   SUB  AH,AH            ;塞 AH
   LEA  DI,FUNCTIONS     ;DI 㪠뢠  ᬥ饭  ⠡
   ADD  DI,AX            ;塞 ᬥ饭  ⠡
   JMP  WORD PTR [DI]    ;室    ⠡

FUNCTIONS       LABEL  WORD  ; ⠡ 㭪権
   DW   INITIALIZE
   DW   CHECK_MEDIA
   DW   MAKE_BPB
   DW   IOCTL_IN
   DW   INPUT_DATA
   DW   NONDESTRUCT_IN
   DW   INPUT_STATUS
   DW   CLEAR_INPUT
   DW   OUTPUT_DATA
   DW   OUTPUT_VERIFY
   DW   OUTPUT_STATUS
   DW   CLEAR_OUTPUT
   DW   IOCTL_OUT

;---室  ࠩ, ᫨ 㭪  ন
CHECK_MEDIA:
MAKE_BPB:
IOCTL_IN:
INPUT_DATA:
NONDESTRUCT_IN:
INPUT_STATUS:
CLEAR_INPUT:
OUTPUT_VERIFY:
OUTPUT_STATUS:
CLEAR_OUTPUT:
IOCTL_OUT:
   OR   ES:WORD PTR [BX]+3,8103H   ;㥬 
   JMP  QUIT

;---楤   ন 
INITIALIZE:   LEA  AX,E_O_P      ;ᬥ饭  ணࠬ  AX
   MOV  ES:WORD PTR [BX]+14,AX   ;頥   
   MOV  ES:WORD PTR [BX]+16,CS   ;
    .
   (  樠 ன⢠)
    .
   JMP  QUIT

OUTPUT_DATA:  MOV  CL,ES:[BX]+18 ;砥 ᫮ ᨬ
   CBW  CX                       ;CX ᯮ㥬  稪
   MOV  AX,ES:[BX]+16            ;砥   
   MOV  DS,AX                    ;
   MOV  DX,ES:[BX]+14            ;
    .
   (  樨  뢮)
    .
   JMP  QUIT

;---室,      
QUIT:   OR   ES:WORD PTR [BX]+3,100H  ;⠭  8
   POP BP                    ;⠭ ॣ
   POP DI                    ;
   POP SI                    ;
   POP DX                    ;
   POP CX                    ;
   POP BX                    ;
   POP AX                    ;
   POP DS                    ;
   POP ES                    ;
   RET
E_O_P:              ;⪠  ணࠬ
DEVICE12     ENDP
CSEG         ENDS
             END    DEVICE12
   । ⮬ ࠩ ⠭ ᫮   -
 .    ਬ     ,  -
ᨬ  ⮣ 뢠  㭪  ᯥ稢 ࠩ஬ 
.  ப 룫 ⠪: OR ES:WORD PTR [BX]+3,XXXXH. -
 ⮢ XXXX ᫥饥:

    0-7    訡 (᫨  15 = 1)
       8   ⠭  1,  㭪 襭
       9   ⠭  1,  ࠩ 
  10-14   १ࢨ஢ MS DOS
      15   ⠭   訡

訩  ⮣  ᫮  ᮤন  ᫥騥   訡, ᫨
⠭  15, 騩 訡:

   0    ⪠   饭   ன⢮
   1    ⭮ ன⢮
   2    ன⢮  ⮢
   3    ⭠ 
   4    訡 ஢ન  ஫쭮 㬬
   5    ୠ    ன
   6    訡 ᪠
   7     ⥫
   8    ᥪ  
   9     㬠  ਭ
   A    訡 
   B    訡 ⥭
   C     訡
   7.2.4   ࠩ ன⢠.

   ࠩ ன⢠ ⠭ ⥬ 祭  -
 ணࠬ  䠩 䨣樨 ⥬.   ⠭ ஡
ணࠬ     䠩  CONFIG.SYS  ப  DEVICE  = DEVI-
CE12.COM.   ⥬ १㧨 ⥬   ⠭  ࠩ.
᫨ 設  㤥  㦠,  ᪮॥ ᥣ  訡
  樠樨 ࠩ.
   ᫥ ⮣  ࠩ ⠭,  㯠   -
 묨 㭪ﬨ MS  DOS  뢠  21H.   K 㭪樨
  ᯮ짮   ⮣,   ன⢮ ⠭-
⭮ ன⢮ DOS (  ਢ ਬ)   -
   ᮢ襭  ன⢮.    ⠭⭮
᫥⥫쭮 ன⢠,    ࠩ  AUX, ᫥ 祣
㭪樨  3 [7.1.7]  4 [7.1.6] 뢠 21H   ⢫
ᮮ⢥⢥    뢮.   ᫨  ன⢮ ࠫ쭮, 
    PRN, ᫥ 祣 㭪 5 [6.3.1]  㤥  뢮
  ਭ.  㣮      ᯮ짮
㭪樨 3FH [5.4.4]    [5.4.3]  뢮.  ⮬ 砥
ᯮ  䠩 3 -  ᫥⥫쭮  ன⢠  4
-  ࠫ쭮.  H,   ᯮ짮 ।-
 ஢ 䠩  室 뢠 ன⢮.
   ᫨ ன⢮       ⠭ ன MS
DOS (..  ᫨      १ࢭ ᫮, ⠪ 
PRN, AUX  ..),     ன⢮   
 㭪権   䠩.    ᯮ짮   ⮤
㯠   ࠢ饣   䠩, ⠪  ⮤ ਯ-
 䠩,  ᫥ ।⥫쭥.  ⮡   㢥७-
,    訡   ஥ ᪮ 䠩,  
䠩  BX, 0 -  AL, ᤥ 祣 믮 㭪 44H 뢠
21H.  㭪 IOCTL  ᫨   7 祭, 頥  DL
⠭,  ࠩ ன⢠ 㦥.
   IOCTL  ॡ,  ⮡   ਡ⮢ ࠩ  뫠  ᮮ-
 ⠭ ⮢  ⮡  ࠩ  ᭮ -
  ࠡ⪨ IOCTL   楤 ࠡ稪  뢠
ࠩ. 㭪 IOCTL  8  㭪権, ஭㬥஢  0
  7,  ⮬ ᮮ⢥騩   頥  AL 
맮 㭪樨:

   0     ଠ  ன⢥  DX
   1    ⠭ ଠ  ன⢥, ᯮ DL (DH=0)
   2     CX ⮢  ࠩ ன⢠ १ ࠢ-
        騩     稭  DS:DX
   3     CX ⮢  ࠩ ன⢠ १ ࠢ騩
        ,   稭  DS:DX
   4     ,   2,  ᯮ짮  ⥫  BL,
         0 = ⥫  㬮砭, 1 = A  ..
   5     ,   3,  ᯮ짮  ⥫   5
   6      
   7      뢮

     ⢥ 頥 ࠧ筠 ଠ,   ᨬ  
⮣,  㭪 맢.   㭪権 0  1 祭 ⮢
ॣ  DX ᫥饥 ( ᫮,   7 = 1,  砥,
  祭  ன,    䠩):
   0    1 = ன⢮ ᮫쭮 
   1    1 = ன⢮ ᮫쭮 뢮
   2    1 = 㫥 ன⢮
   3    1 = ன⢮ 
   4    १
   5    1 =  ஢ન  Ctrl-Z, 0 =  ஢ઠ  Ctrl-Z
   6    1 =   䠩, 0 =  䠩
   7    1 = ன⢮, 0 = ᪮ 䠩
8-13    १
  14    1 = ᫨  ᯮ짮 㭪樨 2  3, 0 = 
  15    १

   㭪樨 2-5   ணࠬ   ன 
ந묨  ࠢ騬 ப.      ।
ࠢ騥 ᮮ饭  ⤥쭮    ᭮ ⮪ , 
⢥ 頥 .    AX 㤥 ᮤঠ ᫮
। ⮢.  㭪樨 6-7  ணࠬ ஢,
⮢   ன⢮    뢮.    ன   AL
頥 FF, ᫨  ன⢮  ⮢  0, ᫨ .   -
짮   䠩 ( 7 = 0)  AL 頥 FF 
 ,   㤥 ⣭  䠩.
   ⬥⨬,   ᨪ 3.0   IOCTL  IOCTL$.
  ᨪ᪮ ணࠬ, ᮮ⢥⢥, 뫠  
ਭ ࠢ騥 ப  ࠩ ன⢠, ஥ 뫮
।⥫쭮   ஬ OPEN.  室 ப  
 祭  窨,   IOCTL #3,"...".  ࠧ,
A$ = IOCTL$(3) ਭ ଠ   १ IOCTL.
   7.2.5 㦥   訡 ன⢠.

   ன⢠  訡     稭. ன⢮
  䨧᪨ ०    室   ⮬ -
.    娬 ணࠬ ᯥ祭, ࠢ饥 -
ன⢮. , , ணࠬ  ᫠ ன -
⨬   (ਬ, ⪠   ⥫,   -
 ᪥ 饭  ). MS DOS 㦨  -
  設⢮ ⠪ 訡  ᯥ稢    
⠭.

   ᮪ ஢.

     ᨪ  㦨     訡, 
訡  ࠩ஢ ன.   㦥 訡 頥
 訡  ᫨   ।ᬮ७  ணࠬ ⠭ 
訡,   ணࠬ ⠭.     ⠭
ࠡ 訡,  ⥬ ⮡  ந室 ᪠ 訡
ᨪ  ⮬᪨ 室  楤  ⠭  
ᡮ,   ᮧ. 楤  ஠஢  
।   ப ணࠬ ந諠 訡.  ᫥ ⮣
  ᤥ, ணࠬ  ਭ   ࠭ 訡-
,    짮⥫,  믮   ண-
ࠬ.  ᫥ ⮣,    楤 襭, ணࠬ 
த  믮   ,  ண    (
묨 ࠭祭ﬨ). K   ⥫쭮  訡
権  ⢥ 㢥 ࠧ ணࠬ.   ⬥⨬,
  ᨪ    ஢ન  訡 -
ॡ  ⥫쭮     祬 4      ப
ணࠬ.
   ⮡ ࠧ ࠡ  訡  ᨪ   砫
ணࠬ  ப ON ERROR GOSUB n,  n   ப  ண-
ࠬ,  ன 稭 楤 ࠡ⪨ 訡.   -
  ᪮ 訡 ࠢ 㤥 ।    
ப.  砫  楤     ப  IF ERR = n
THEN  ப,   n -  訡,   ਫ  
㪮  ᨪ, ᮤঠ饬  ᮮ饭  訡. H
ப    ᮮ⢥ 砫 , ࠡ뢠-
   訡.       ᢮ ।
ࠧ    ᪨ 冷 ஢ IF ERL = n THEN  ப.
ERL 頥  ப,  ன ந諠 訡, 
楤 ⠭ 筮 । 訡筮 .
   ᫥ ⮣  楤 ⠭ 訫 ᢮  ࠡ
 ᯮ짮    RESUME    ࠢ  
ப,  ந諠 訡.   ⨬ ஬  ᫥
,  ⮬ 砥 ࠢ  㤥  ।  ப  㪠-
  ஬.  ,  ,     ᯮ짮
RESUME  室    ணࠬ,  室  -
 楤,  ன ந諠 訡. ᫨ ⠭
᫥ 訡 ,  室, ⮡ ணࠬ த-
  ᢮ ࠡ,   RESUME NEXT  ࠢ 㤥 -
  ப, ᫥  ⮩,  ன ந諠 訡. 
  楤 ⠭  ᨪ:
100 ON ERROR GOSUB 5000   'ࠧ蠥 ࠡ 訡
 .
 .
5000 IF ERR = 61 THEN 5100  ' 
5010 IF ERR = 71 THEN 5200  '  ⮢
 .
 .
5100 IF ERL = 2080 THEN 5120   ' ந諠 訡?
5110 BEEP: PRINT "Disk in drive B: is full": RESUME
5120 BEEP: PRINT "Disk in drive A: is full": RESUME
 .
5200 BEEP: PRINT "A disk drive is not ready"
5210 PRINT "Strike any key when corrected"
5220 IF INKEY$ = "" THEN 5220    '  
5230 RESUME ERL - 10             '⠥  

    ᨪ 3.0  樨 ERDEV  ERDEV$.    -
  ६  ⮫쪮   ⥭  뢠 24H,
ࠡ뢠饣  祪  訡.  Z% = ERDEV 頥   Z%
᫮ ,  ஬ 訩  ᮤন 13-15  ਡ-
   ன⢠,  訩  -  訡  뢠
24H.  Z$ = ERDEV$ 頥  Z$ 8-⭮  ன⢠  ᨬ-
  ன   2- 㪠⥫ ⥫   
ன.

   H ஢.

    ࠩ ன ᮤঠ ⠪ 쥧 訡, 
ணࠬ    த,     ࠢ-
. K ⠪ 訡 ந室,  ⥬ 뢠 ࠡ-
稪  ᪨  訡.    㯠  ⢨    
⠭ ன, ⠪   ⠭ ࠩ஢. 짮-
⥫    ⠫  ,  ⠥  ந-
 ᪮    ᪮,  ண  .
  ⮬  砥   ᮮ饭: "Not ready  error  reading
drive A - Abort, Retry, Ignore?"
   ࠡ稪 ᪨ 訡     ९ᠭ, ⮡ 
  ࠡ뢠 ன⢠,    ᮧ  ⠭-
 ࠩ.   뢠  24H 㪠뢠  ⠭
楤 MS DOS,    ७ࠢ   ᢮  -
楤.  맮 ⮩  楤 訩  AH ᮤন 0 ᫨
訡  ந諠  筮 ன⢥  1, ᫨   ᨬ쭮.
BP:SI 㪠뢠   ࠩ  ன⢠, -
   ⥫ ଠ.  ᥬ ⮢, 稭
 ᬥ饭 AH   ᮤঠ   ன⢠,  ࠡ稪
祪  訡 頥  訡   ᫮  DI.   
  (  ।⠢ ⮢ 権):

   K           ஡

    0      ⪠   , 饭  
    1      ⭮ ன⢮
    2      ⥫  ⮢
    3      ⭠ 
    4      訡  묨
    5      ୠ  
    6      訡 ᪠
    7       ⨯ ⥫
    8      ᥪ  
    9       㬠  ਭ
    A      訡  
    B      訡  ⥭
    C       訡

 砥 ᪮ 訡 AL ᮤন  ⥫,  ஬
ந諠  訡 (0 = A, 1 = B  ..),   2-0 AH 
⨯ 訡.  0 ⠭, ᫨ 訡 ந諠  ६
樨  ,  뢠 - ᫨  ⥭.   2-1 -
ঠ ଠ  ⮬,       ᪠ ந諠 訡,
  00  -  砫 ᥪ஢ DOS, 01 -  FAT,  10 -  
⠫  11 -  ᥣ ⠫쭮 ᪠.
     ᯮᮡ, 묨  ணࠬ   ⠭
᫥ ᪮ 訡:

1.    짮⥫ ࠭ 稭 訡 (-
,    ⥫),  ᫥ 祣 ⥬ ।⠢
ன   .
2.  ࠢ   饭 樨, ᫥饩  INT
21H,  ᤥ    ࠩ.
3. ணࠬ     ࠢ ⥬.

    楤 ࠡ⪨  訡   ⠭ ,
뤠    IRET,  ᫥ ⮣,   ⨫  0   AL,
⮡ ஢ 訡, 1  -  ⮡      2 -
⮡  ணࠬ.  ᫨  , ⮡   楤
஢ ⠭ ᠬ,     ⠭ ॣ
믮塞  ணࠬ   ⥪,  ⥬ 㤠   ⥪  ,
஬ ᫥  ᫮. ᫥  ⮣  IRET 
ࠢ  ணࠬ,  ᠬ ⥬ ⠭  ⠡쭮
ﭨ   ,    ᤥ 맮 㭪樨  ஬
訬, 祬 12.   䨣 ⥪ (稭 ᢥ  )
 뢠 ࠡ稪 ᪨ 訡:

  ࠡ稪 訡:  IP, CS, 䫠

짮⥫᪨ ॣ ,   AX, BX, CX, DX, SI, DI, BP,
 ன  맢 ࠩ:      DS, ES, IP, CS, 䫠

   MS DOS ࠡ뢠 ⠪   ᪨  訡.  
   訡,      ॣ,
 뢠 㭪 DOS.   㦤   
    ,    뢠  ᮮ⢥騥  㭪樨.
  ,   稭   ᨨ 3.0 MS DOS 頥
७   訡  㭪権, ᯮ FCB   -
ਯ 䠩.  K  믮    㭪権 -
 䫠 ७,   AX 頥   訡-
. ⥫ ७  㯥 १ 뢠 59H,
᫨  BX  0.   㭪 ᮮ頥 ⠪   ᪨
訡      ᯮ짮  ࠡ稪 ᪨
訡, 뢠 १ 뢠 24H.
   㭪  頥   AX  訡,   筮  ᯨ᪠
  訡 (ਬ, "筮  ")  
   (ਬ, "࠭祭 㯠"   짮-
⥫᪮ ⥬).  BH  頥    訡, 㪠뢠
  ⨯  訡 ந諠.  Hਬ,  1  㪠뢠,  
௠ , ..    ,  䠩   -
  室.  㣨   㪠뢠  ணࠬ
訡, ஡  ⥫ﬨ, ଠ஢  .. BL ᮤন
, ।騩 ⢨  ⠭, ⠪   "-
", "४"  "  짮⥫". H, CH
頥 ᫮,  ।饥      ஡: 
筮 ன⢥,  ᨬ쭮,  ?
       訡 쬠 .  ଠ
  .    孨᪮  㪮⢥   MS DOS 3.0.  ᪮
।,   MS DOS 3.0  㤥 ᯮ짮   -
,  ࠭, 祬 AT,   ᯮ짮   ࠭-
 ᮢ⨬  ணࠬ.    ,  楤,
।祭 ⮫쪮  MS  DOS  3.0    
  楤 ࠡ⪨ 訡.   [1.1.3]   ண-
ࠬ  ।  MS DOS,  ன  ࠡ⠥.
   H,  ,    ।  -
襭 맢襬  . ନ  ⭮  -
騬 ணࠬ.  Hਬ,   ணࠬ 㦠
  ᪠    㭪樨 EXEC,  ᪠  ண-
ࠬ 뢠 ⮬,   ᪠  ணࠬ - த⥫.
⥫   ॡ  ଠ    ⮬,  訫
⮬.  ⮡ ᯮ짮  ,   
 襭  AL   믮  㭪  4CH 뢠 21H 
襭 ணࠬ. K ࠢ 㤥 饭 த⥫,
  믮 㭪 4DH 뢠 21H ( 室 ॣ஢)
    AL 㤥 祭  襭,    ⥬  
஠஢. K஬ ⮣, AH 㤥 ᮤঠ ଠ  ⮬,
  訫  ⮬: 0 -  ଠ쭮 襭, 1 -  
Ctrl-Break, 2 -  ᪮ 訡  ன⢠  3 -  
㭪樨 31H, ⠢饩  १⭮.
   ᫨ ணࠬ 訫   ⮩ 㭪樨 (  20H  -
. 㦤  [1.3.4]),    MS  DOS  砥  室  
  祭  ࠡ  䠩    -
 IF.       ᫮  ᪫祭 㣨
   䠩.  K 室 ᬠਢ  
ERRORLEVEL  ᫮ 樨 믮  ᨬ  ⮣,
    । ᫠.   ⮩ 
 䠩  ४  ࠡ  뢮 ᮮ饭
    訡    饭  ணࠬ.   
஡ ଠ ਢ  ࠧ  "K ⭮ -
⪨" 㪮⢠  樮 ⥬.
    3. ᯮ짮 ᯥ樠 ன /뢮.

     ஬  ⢮ ன /뢮,  
  ᮥ  IBM PC,   , ⨪, -
ந⥫   ..    ࠧ 㦤 ⮫쪮   -
ன⢠,  ᯥ樠쭮  ন 㤮 IBM PC.
  ⭮    䮭, ᢥ⮢     㣨
ன⢠,     ᮥ  १ ஢ .
  ⮢,  ⭮騥  㣨 ன⢠, 㦤  
㣨 ࠧ ⮩ , ⭮    ன-
.   ।  ᮢ ⮢  ᭮      
 ⨯ IBM PC:

         㭪

  00-0F      奬 DMA 8237 (  PCjr)
  20-2F      奬 뢠 8259 (AT ஫ #1: 20-3F)
  40-4F      奬 ⠩ 8253/8254
  60-6F      奬 PPI 8255 (AT ᯮ ⮫쪮 
             
  70-7F       ॠ쭮 ६ (⮫쪮 AT)
  80-83      ॣ ࠭ DMA (  PCjr)
  A0-BF      奬 뢠 #2 (⮫쪮 AT)
  C0-C7      奬 㪠 SN76496 (⮫쪮 PCjr)
  F0-FF      PCjr - ஫ H, AT - ࠢ ⥬-
             ᪨ ᮯ஬
1F0-1F8      䨪஢  AT
200-20F      ஢ 
278-27F      AT 㭨樮  #2
2F8-2FF      㭨樮  COM2 (COM1  PCjr)
320-32F      䨪஢  XT
378-37F       ࠫ쭮 ਭ  PC, XT, AT
3B0-3BF      ஬/ࠫ  (  PCjr)
3D0-3DF      梥⭮ ᪨ 
3F0-3F7      ஫ H
3F8-3FF      㭨樮  COM1 ( PCjr)
   7.3.1 ⥭/  ⭮ 䮭.

   쪮 祭  IBM PC  PCjr ᯮ   -
䮭,  XT  AT  ন   .   ⮣, 
 祭 ,    䮭  ⮫-
 ᫥⥫,     㯮.   , 
 稭  ணࠬ஢ ⭮ 䮭  PCjr.
 ,   樨 ᯮ  2 -
  ⠩ 8253 [2.1.1], ⮬  ⠩  ६  -
짮     㣨  楫.  ⬥⨬ ⠪,  
樨  ⥭   , 饭 뢠 ६  ⮪,
⮬ 稪 ६ ⮪  BIOS  㤥  ୮ -
.

   ᮪ ஢.

      䠩 ࠡ뢠 ᮢ襭 -㣮 祬
᪮ 䠩,   㯠   ᮢ襭 -
. H   뢠 ⮫쪮 ணࠬ 䠩  -
⥫ 䠩 .  ᫥   䠩 -
ࠦ . ⬥⨬,       ᫥-
⥫ 䠩.   ᮧ,  䠩  ᫥騥
 ७:

   .B      ணࠬ  ᨪ
   .P      饭 ணࠬ  ᨪ
   .A      ணࠬ  ᨪ  ଠ ASCII
   .M      䠩 ࠦ 
   .D      ᫥⥫ 䠩 

    ࠭ 䠩    SAVE "CAS1:䠩".
 㧪 ணࠬ - LOAD "CAS1:䠩".  ᫥ 砥
 ண   ,    㦭 䠩  㤥 ,
 ⮬   祭 䠩 㤥 뢮  ࠭
(  ᯮ ⠫).   ᫨  騩
䠩,  㤥 뢥  ᯨ᮪ 䠩  .

   । ஢.

   BIOS ࠡ⠥  ⭮ ⮩ ﬨ  256- .
H  । "",  ⮨  256 ⮢
ASCII  1.   蠥 㫥 ⮬ ᨭ஭樨.   ⥬
᫥  ᨭ஭樨   祭  16H,  ⥬ 256 ⮢
.  ᫥ ⮣  2  ஫ 訡,  ⥬  
 , ᮯ஢騩  ன   ஢ન 訡  ..
  ᫥⥫쭮  蠥  塠   "墮⮬",
ᮤঠ騬  ASCII 1.
    ⥭       ᯮ짮 㭪 2 -
뢠 15H.  H 室 뢠 䠩,    
 ᪮ . ES:BX  㪠뢠     , 㤠
  뫠 ,  CX - ᫮ ⮢,    -
.    DX ᮮ  ᪮쪮 ⮢ ⠭  ᠬ
,  ES:BX  㪠뢠  ᫥ ⠭   1.
 ७ 㤥  ࠢ  0,  ᫨  ⥭  諮 ᯥ譮,  
⨢  砥 AH 㤥 ᮤঠ 1, ᫨ ஡  ஫
訡, 2 -  訡 ⥭    3 -  ⢨ 
 .
   㭪  3 뢠 15H 뢠   .  ES:BX
㪠뢠      ,    CX  ᮤন ᫮ ⮢,
஥    .    ES:BX 㪠뢠    ,
᫥騩  ᫥ ᠭ.   ࠢ 㭪ﬨ 0
(祭)  1 (몫祭) 뢠 15H.   㭪権 
室 ॣ஢.
   7.3.2 ⥭ 樨 ᢥ⮢ .

    祭   ᭠饭 ᢥ⮢ ஬, ⥬ 
       ᯮ⥫  ன,  ஥
ন   㤮,  ⠪   樮 ⥬.
⮢  ࠡ⠥   讣 ᪮ ⥪
 稪 .   室  ᪠஢  ࠭ ஭ 箬
樨  ᪮ ⥪,  箪 ⨣
窨 ࠭,   ன  室  .  ६ 
⮣ , ⭮⥫쭮 ᨣ ਧ⠫쭮  ⨪-
 ᨭ஭樨,  ।  ᢥ⮢ .

   ᮪ ஢.

   ᨪ  ।   ᢥ⮢   ᯮᮡ-
.   ࢮ ணࠬ 뢭 ।  .  
஬,   ᯮ,  ࠢ ६ ।-
 楤, ᯥ稢 襩 ணࠬ.    뢭
஫  ஬    ᯮ짮   PEN  㭪 
ଥ  X = PEN(n),  n -  , ।騩   -
ଠ        樨.   -
祭 n ⠪:

  0    頥 -1, ᫨  뫮 몫祭  ६ ᫥-
        , 0 - ᫨ 
  1    頥 ᫥ न x (0-319  0-639),  -
       ன  뫮  祭  (      ᫥⢨
       ।, ᫨ ⠢ 祭)
  2    頥 ᫥ न y (0-199),  ன 
       뫮  祭.
  3    頥 -1, ᫨  祭  0 - ᫨ 
  4    頥 ⥪ x न (0-319  0-639) 
  5    頥 ⥪ y न (0-199) 
  6    頥  -  ப (1-24),  ன  
       뫮 ᫥ ࠧ ⨢஢
  7    頥  -  ⮫ (1-40  1-80),  -
       ன  뫮 ᫥ ࠧ ⨢஢
  8    頥 ⥪  -  ப (1-24)
  9    頥 ⥪  -  ⮫ (1-40  1-80)

     ਬ  ।  祭    ,  ᫨ 
⠪,   ⥪饥  :

100 IF NOT PEN(3) THEN 130   '஢塞 祭  
110 X = PEN(4)               '砥 न 窨   x
120 Y = PEN(5)               '砥 न 窨   y
130 ...                      'த ணࠬ

      ᯮ짮 ᢥ⮢   ।-
⠢ ஬ ON PEN GOSUB.    㪠뢠 
ப,  ன 稭 楤, ⨢㥬   -
祭 . ᨪ ⨣ ⮣ ஢મ ﭨ  ᫥
믮   樨.  楤   -
   ।ਭ ॡ㥬 ⢨. K 楤 -
稢,   ணࠬ த  ⮣ ,     뫠
 祭 .
   ON PEN GOSUB  ࠡ⠥   ,    ⨢஢-
  ஬ PEN ON.  PEN OFF ⬥  ࠡ.    ⮣
⮨  ⮬,   ﭭ  ஢ઠ     
ࠡ  ணࠬ, ⮬   ⢫ ⮫쪮   
室.  ᫨ ணࠬ  稭  믮 祪 
,   ᯮ짮 楤 ON PEN GOSUB,  
PEN STOP.  ⮬ 砥 㤥 த ஢ઠ  ,
 ᫨  㤥 祭,   䠪 㤥 .   
  㤥 祭  PEN ON, ࠢ  㤥 -
 楤 ON PEN GOSUB.
    ਬ 뢠 ⠭ ணࠬ,   -
  ᢥ⮢ . 窠    樨  ᢥ⮢  砥
楤ன, ࠡ뢠饩 祭 ᢥ⮢ .

100 ON PEN GOSUB 5000   '⠭ 楤  ᢥ⮢
110 PEN ON              '  砥 ० ᫥ 
 .
 .
5000 '''楤 ࠡ⪨ ᢥ⮢ 
5010 X = PEN(4)         '砥 न X
5020 Y = PEN(5)         '砥 न Y
5030 PSET(X,Y)          '  
5040 RETURN             '

   । ஢.

   㭪  4 뢠 10H BIOS ᮮ頥 ⥪  ᢥ-
 .     室 ॣ஢.   AX ᮤন
0,  ᫨   祭  1 - ᫨ 祭  祭  
 樨. 頥     न, 樨 窨 
樨 ப  ⮫. 樨 ᨬ ᮤঠ  DX, 祬
DH ᮤন ப (0-24),  DL  -  ⮫ (0-79).  窨
ᮤন   CH  BX, 祬 CH ᮤন ⨪ न
(0-199),  BX - ਧ⠫ (0-319  0-639,  ᨬ 
० ନ).

;---⠥    ᢥ⮢ 
   MOV  AH,4            ; 㭪樨
   INT  10H             ;뢠 BIOS
   CMP  AH,1            ; ?
   JE   NO_READING      ;᫨ ,  室
   MOV  COL,BX          ;࠭塞 ਧ⠫ न
   MOV  CL,CH           ;頥 ⨪ न
   MOV  CH,0            ; CX
   MOV  ROW,CX          ;࠭塞 ⨪ न

   H ஢.

    ᢮  ᢥ⮢   ७  ⥬
  ⠪ ᯮ 奬 ஫ CRT 6845. 
ᢥ⮢      2-塠 祭, ࠭騬  
ॣ 10H (訩 )   11H  (訩 ) 奬. 
[4.1.1]     ॣ 奬.   ᬮ
ਬ.    ᮬ  3DCH  ⠭    ᢥ⮢
,   ஬ 3DBH - 뢠 .
;---஢ઠ ᢥ⮢   ⥭  樨
   MOV  DX,3DAH       ;㪠뢠  ॣ 
   IN   AL,DX         ;砥 ଠ
   TEST AL,4          ;஢塞 몫⥫
   JNZ  NOT_SET       ; 室
   TEST AL,2          ;஢塞 ਣ
   JZ   NOT_SET       ; 室
   SUB  DX,7          ;㪠뢠  ॣ  6845
   MOV  AL,10H        ;  訩  樨 
   OUT  DX,AL         ;뫠 
   INC  DX            ;㪠뢠  ॣ  6845
   IN   AL,DX         ;砥 祭
   XCNG AH,AL         ;   AH
   DEC  DX            ;頥  ᭮ ॣ
   MOV  AL,11H        ;⥯ ⨬  訩 
   OUT  DX,AL         ;뫠 
   INC  DX            ;  ॣ 
   IN   AL,DX         ;⥯  祭  AX
   7.3.3 祭   १ ஢ .

   ஢   ন 2 ⨪  4 "᫠". 
⨪  ᮮ頥   न      ; 
᫠  ᮮ頥  न    . H᪮-
 ᯮ⥫ ன, ⠪   ᪮ ⠡, ⠪
  祭  ஢ ;  ࠡ  -
 ࠫ쭮  ࠡ⮩  ⨪.    ࠧ 饭
⥭  न,   ᫥饬 㦤    
.

   ᮪ ஢.

   㭪 STICK 頥 樨   , 㪠뢠 ᫥-
騬 묨 ࠬ:

   0     X ⨪ A
   1     Y ⨪ A
   2     X ⨪ B
   3     Y ⨪ B

 㦭 , ਬ, X = STICK(0)   X 㤥 ᮤঠ-
 祭 न X   ⨪  A.  H  㭪 
,  ன  室 . 쪮  ᯮ짮
  0  ⢨⥫쭮  न  ⨪,    ⮬
  4 祭. K  1-3  ᮮ -
, ⠭  0. ⮡  ᫥ 3 न
 室 । ⨬ ᯮ짮 㭪 X = STICK(0), 
᫨   㦭  祭, 頥  0.
   ⨪  ⫨    ᢮  䨧᪨  ࠪ⨪,
⮬ 室 ࠨ ,  ⮡  । 
ᮢ   ࠭栬 ࠭.   ᫥饬 ਬ   
 .   ਬ  뢭    窠,  樨,
㪠뢠 ⨪, ⢨, ஥ ॡ, ⮡ -
 祭,  ਭ  ஢  ⮬,  ८ࠧ뢠  
 権 ࠭.

100 '''砥 ।  ⨪
110 STRIG ON            'ࠧ蠥 
120 V= STRIG(0)         '⨬  
130 PRINT "Briefly push button 1 when stick is farthest to left"
140 XLEFT = STICK(0)    '砥 ᠬ  祭
150 IF STRIG(0) = 0 THEN 140  '  
160 STRIG OFF: FOR N = 1 TO 1000: NEXT: STRIG ON
170 PRINT "Briefly push button 1 when stick is farthest to right"
180 XRIGHT = STICK(0)   '砥 ᠬ ࠢ 祭
190 IF STRIG(0) = 0 THEN 180  '  
200 STRIG OFF: FOR N = 1 TO 1000: NEXT: STRIG ON
210 PRINT "Briefly push button 1 when stick is farthest to top"
220 V = STICK(0): YTOP = STICK(1)  'ᠬ 孥 祭
230 IF STRIG(0) = 0 THEN 220  '  
240 STRIG OFF: FOR N = 1 TO 1000: NEXT: STRIG ON
250 PRINT "Briefly push button 1 when stick farthest to bottom"
260 V = STICK(0): YBOTTOM = STICK(1)  'ᠬ  祭
270 IF STRIG(0) = 0 THEN 260  '  
280 STRIG OFF           '稫
290 '''砥 ⥫  ⠭  ࠧ ࠭
300 XRIGHT = XRIGHT - XLEFT   'ਧ⠫ ࠧ
310 XMULTIPLIER = 320/XRIGHT  '塞 ᫮ 祪  
320 YBOTTOM = YBOTTOM - YTOP  '⨪ ࠧ
330 YMULTIPLIER = 200/B/YBOTTOM  '᫮ 祪  
340 '''⥯ 塞 न  ० 㬥७ ࠧ襭
350 X = STICK(0)        '砥 ਧ⠫ 
360 Y = STICK(1)        '砥 ⨪ 
370 X = (X - XLEFT)*XMULTIPRIER  'ਢ  ࠭
380 Y = (Y - YTOP)*YMULTIPRIER   '
390 PSET(X,Y)           '뢮   㦭 樨
400 GOTO 350            '塞

   । ஢.

   쪮  AT ।⠢ প ⨪  ஢  -
樮 ⥬.   㭪 84H 뢠 15H,  -
頥 न, 祬:

   AX  =  न X ⨪ A
   BX  =  न Y ⨪ A
   CX  =  न X ⨪ B
   DX  =  न Y ⨪ B

 室   DX 1. K  DX ᮤন 0,   㭪-
 頥 ﭨ  ⨪  [7.3.4].   
䫠 ७ ⠭,   設  ஢ .

   H ஢.

   ଠ    न  ⨪     
ᥫ ࠭   ,      ஬ ⢫
१  201H.  祭  ⮢:

             ⨪                  ᫮

 3      न Y ⨪ B      न ᫠ D
 2      न X ⨪ B      न ᫠ C
 1      न Y ⨪ A      न ᫠ B
 0      न X ⨪ A      न ᫠ A

   Kन    뢠  ⮬     ७
६ ࢠ.  諨      ந -
.    ਢ  ⮬,  訥 4  .  ⥬
ﭭ 뢠 祭  ,  ࢠ ६,
१  騩   ⠭ ࠢ 1.  ࢠ
ய樮 樨 ⨪  饩  .  -
 ࢠ ᮮ⢥   樨   Y  ࠢ
樨   X.  Hᨬ  樨,    0   1
祭 ,  ࠢ   堭᪮  ᪮ ६饭
⨪  ᫠.  ⮬ ணࠬ   让 筮
 ᭠砫   न Y,  ⥬  न
X.   H 室 ஢  न ⤥쭮.  
 ਬ । न X ⨪ A.
;---砥 न X ⨪ A
   MOV  DX,201H         ; ஢ 
   OUT  DX,AL           ;뫠   ந쭮 祭
   MOV  AH,1            ;஢塞  1
   MOV  SI,0            ;樠㥬 稪
NEXT:   IN   AL,DX      ;⠥ 祭  
   TEST AL,AH           ;஢塞  1
   JE   FINISHED        ;室,   ⠭
   INC  SI              ;, 㢥稢 稪
   LOOP NEXT            ; 砫 横
FINISHED:
   7.3.4 祭 ஢   ஢ .

   ஢  ন  ⨪    "᫠", 
⠪    ᪨ ன.   ⮬    ।
     ன.   ஢ઠ  ﭨ 
    ᫮ , ᪮ ணࠬ      
 ﭭ ஢  ,      
饭,  ணࠬ  㣨 .   ᮧ-
 ᯥ樠쭠 楤  襭 ⮩ ஡.  
⮬᪨  ⠥ ᪮쪮 ࠧ  ᥪ㭤,  ᯥ樠쭮
   ணࠬ;   뢠,    ,
  ࠢ  ।  楤,   ।  
   ।ਭ 㦭 ⢨.

   ᮪ ஢.

   ᨪ ᯮ   STRIG    ⥭  .
 STRIG 筮 , ⮡ 㦨 ⨥  -
,  ᫨ ணࠬ         ᮬ
, ..  ணࠬ  : "뫮  ⨥ ,
 ६  ᫥ ?"   ᢮⢮ 祭 
 , ᪮ ணࠬ    ﬨ
 ࠭,       ﭭ  ஢થ   .
   ⢥  ᪮ 믮  ணࠬ,
᪮ ஢ઠ   ⢫ ᫥ 믮
 .   ⮩ 稭, STRIG ࠡ⠥ ⮫쪮  
 ।७ 祭,       몫 
室 ணࠬ.
   STRIG ࠡ⠥  ᯮᮡ.  -,    ࠡ
  㭪,    ।⢥  ⠥  ⥪騥 祭
,  ଥ X = STRIG(n).  n -  :

   0    K A1   ६ ᫥ 맮
   1    K A1    饭
   2    K B1   ६ ᫥ 맮
   3    K B1    饭
   4    K A2   ६ ᫥ 맮
   5    K A2    饭
   6    K B2   ६ ᫥ 맮
   7    K B2    饭

    㭪 頥 -1, ᫨ ᠭ ਬ 
0 - ᫨ .
   ன ᯮᮡ  ᯮ짮  STRIG    ଠ,   ன 
⮬᪨  ४砥  楤  ⨨ .  H
 ON STRIG(n) GOSUB ப. H ப  砫-
   ப 楤.  ᫮ n ⭮  ,  0 =
A1, 2 = B1, 4 = A2  6 = B2.   K   ࠡ뢠
᢮ 楤ன     楤   .
     ⨢樨  㭪樨 STRIG   ணࠬ  
STRIG(n) ON.   ⢥  祭 n ᯮ  -
 .  ⮡ ⬥  (᪮ ࠡ ணࠬ) -
 STRIG(n) OFF.   ⠪   .  STRING(n)
STOP ਢ  ⮬,  ⨥  ,  
⢨  ।ਭ  ।  STRING(n) ON.
 ᢮⢮ ।࠭  ⥫ 뢮 - -
 ON STRING GOSUB.       ,    믮  ᫮
STRIG(n) STOP ணࠬ .
   騩  ਬ 뢠 ⢨ ON STRIG GOSUB.   ਬ
㭪 [7.3.3] ᮤন ப, 뢠騥  X = STRIG.

100 ON STRIG(0) GOSUB 5000   '室  5000  ⨨
 .                           ' A1
200 STRIG(0) ON    '砥 ஢  
 .
300 STRIG(0) STOP  '⬥塞 室  楤
 .
400 STRIG(0) ON    '塞 室  楤
 .
500 STRIG(0) OFF   '⬥塞 ஢  
 .
5000 ''' 室 楤 ࠡ⪨   A1
 .
5500 RETURN        '  ⮬ , 㤠  

   । ஢.

   쪮 AT ।⠢  প  ⨪  ஢ -
樮 ⥬.  㭪 84H 뢠 15H 頥 ⠭
   4-7 ॣ AL,    .   室 DX
 ᮤঠ 0;  DX ᮤন 1,   ⮣  -
 न ⨪ [7.3.3].   ॣ ७-
 ⠭,  設   ஢ .

;---஢塞  #2 ⨪ B ( 7)
   MOV  AH,84H          ; 㭪樨
   MOV  DX,0            ; ﭨ 
   INT  15H             ;맮 㭪樨
   JC   NO_JOYSTICK     ;᫨  ⨪,   室
   TEST AL,10000000B    ;஢塞  7
   JNZ  BUTTON_DOWN     ;室 ᫨  

   H ஢.

     7-4   ᮬ 201H ᮤঠ  , 易-
  ஢ ⮬.  祭  ⮢    ᨬ 
⮣, ᮥ  ⨪  ᫠:

          ⨪                ᫮
 7    K #2 ⨪ B     K ᫠ D
 6    K #1 ⨪ B     K ᫠ C
 5    K #2 ⨪ A     K ᫠ B
 4    K #1 ⨪ A     K ᫠ A

ணࠬ  㦭   祭      ஢
⠭ ᮮ⢥ ⮢:

   MOV  DX,201H         ;  ஢ 
   IN   AL,DX           ;砥 祭  
   TEST AL,0010B        ;஢塞  1 ( A2 ?)
   JNZ  BUTTON_A2       ;᫨ ,   楤 ࠡ⪨

ணࠬ  筮   , 祬 ﭭ ஢
஢  ,  ⮫쪮  ᫥ ६   ६
஢ , ᮢ뢠  楤  ࠧ  ணࠬ.
⮡   䥪 ⫮  ,  ᠭ-
  ᨪ,   ਤ  ᮧ      뢠
६  ⮪,  ᠭ  [2.1.7].  뢠 筮  믮-
 18.2 ࠧ  ᥪ㭤   ࠧ   ஢ -
   ।ਭ 㦭 ⢨  室.




                            ਫ.

   ਫ .    ⭠ ᫠   
.

   ᭮ 楩 ࠭     . 
設⢥  ப஢ ᥬ ⮢ ꥤ  , 
⮬        ⠭  "祭" (= 1)
  襭  "몫祭" (= 0), ᪠ 256 ࠧ ਠ⮢.
 ࠧ,      ।⠢ 256 ࠧ ᨬ-
  (७   ASCII)  楫 ᫮   
 0  255.    ਢ몫  뢠  ᫠  筮
ଥ,    뢠 ⠪  筮   ⭠-
筮 ଥ -  祭    ⮬   ,  ணࠬ
      祭   ⮩, ⠪ 
 㣮 ଥ.   ⮣,  ⮡  ,    
  ࠭ ᫠  0  255,  ᪠,   -
  ᫠  00000000  11111111  ⭠-
  ᫠  00  FF.  ᪮  ९ ࠧ ,
     ⭠  ᫠  ⬥  ᯥ樠
ࠧ.  몥 ᥬ  묨 ᫠ ᫥ 㪢 B,
  ⭠묨 ᫠  -  㪢  H, ਬ, 11111111B
  FFH.   ᨪ  Microsoft  ।  ⭠
᫠ ᨬ &H, ਬ  &FFH;  ᮦ,   ᯮ
᫠  筮 ଥ.

 ᫠:

   K  ᮤন   ।⠢  筮  ଥ,  
ॡ 8 . K  ᮮ⢥  , 
㬥   0  7.  K    ᫠   ᯮ-
 ࠢ ,    訬 ࠧ鸞.  ⫨稨 
  ᥫ,    ᫥     10
ࠧ  ᢮  ᥤ  ࠢ,       ⮫쪮
  訩  .   ࠧ, ᠬ ࠢ    ⠥
,  - ,    - ⢥ન  ..,  祭
128  쬮  .   砥,  ᫨ ࢠ 
ࠢ 1,  ਡ   1  ਢ   ⮬,   ⠭
0,  1 㤥 ७ᥭ   ,    ᥫ
9 + 1 = 0  ७     ᫥騩  ࠧ.    ᫠
ࢮ ⪠ ।⠢  筮 ଥ:

   00000000               0
   00000001               1
   00000010               2
   00000011               3
   00000100               4
   00000101               5
   00000110               6
   00000111               7
   00001000               8
   00001001               9
   00001010              10
    ⮩ ᫥⥫쭮 設⢮ 㫥 ᫥ 易⥫-
, ..  ᫥⥫쭮      0, 1, 10,
11, 100, 101  ..  H㫨 祭 ⮫쪮  ⮣, ⮡  -
 ,   ⠢ ᥬ ࠬ, ᮮ⢥騬
⠬.    ६   㫥      ᪮쪮
⮬⥫,     ࠡ  묨 ᫠, ᫨
㤥 ।⠢  ᥡ ᫥騬 ࠧ:

        7     6     5     4     3     2     1     0
祭  128   64    32    16     8     4     2     1

K   砥 筮 ᫮ 10000001,  ⠭ 
7  0.   7 ᮮ⢥ 128,    0 - 1, ⮬ 筮
祭  ࠢ 129.  ᫨   ।⠢ ᨬ, 
 ᮮ⢥  ASCII  129,   ।⠢ 㪢 u 
㬫⮬ ( ୠ⨢ ஢  - 㪢 ).  H,
⮡ । 楯 ⮢    㪢 A,  ࠢ ASCII
65,  ᬮ 襯ਢ ⠡  祭 ⮢, -
  ᮤন: 64  1,  ᮮ⢥ 01000001B.
   祬 뢠  묨 ᫠?    稭 ⮨
 ⮬,   ࠭ ଠ     
  ॣ 奬.  ⤥  ⮩ ଠ樨
।     ⠬.   ⨣ -
 ।  ⮢  ।  .  Hਬ, 
㣨  饩,     ᮮ ᪮쪮  ਭ஢  
᪮  ⥫  ᮥ    襩 設.   
    ᮤঠ ᫮ ਭ஢,     -  ᫮
᪮  ⥫.      ᯮ   ।
祩           祭   0  
255. ᫨ 祭 ⮣   ࠢ  66  01000010  筮
ଥ,      ࠢ 01,     -  10.
ࢠ    ⮬,           ਭ, 
 -  2 ᪮ ⥫. 㯯 ⮢, ᬠਢ
ᮢ⭮ ⠪ ࠧ 뢠  .  訬 ணࠬ
室        ॣ,     
㦭  ⠭ ⮢.    樨 ਢ  몥
ᥬ,     ᨪ.   ਫ    
ந  ᨪ.

⭠ ᫠:

     ६      ᫠    ᫥  
  ।饩,  ⭠ ᫠  ᫥-
    16 ࠧ.     ᥫ ࢠ 
ᮮ⢥  栬,  - ⪠,  -  .   
 ᥫ ࢠ    ᮮ⢥  栬,  -
,   - ⢥ઠ.   ⭠  ᥫ  ࢠ
 ᮮ⢥ 栬,   - 16,  - 256  ..
  砥,    樨  ᯮ  9, 
ਡ   ਢ    ७   ᫥騩 ࠧ,
  뫮   砥  ᥫ.  H   -
筮 ᫮ 10  ன? ⢥ ⮨  ⮬,  ⭠-
  ᫠  ᯮ  6 㪢 ⨭᪮  䠢  
⢥ ⥫ ஢ ᨬ:
   ⭠ ᨬ       

            A                             10
            B                             11
            C                             12
            D                             13
            E                             14
            F                             15

᫥ ⭠ ᥫ த ⠪: ...  8, 9,
A, B, C, D, E, F, 10, 11 ... 19, 1A, 1B  ..
    ⭠ ᥫ ࠥ   䠪,  
 ⭠筠   뢠 ᮤন ஢ 1/2 -
.   Hਬ,  ᫥ F6 F ᮮ⢥ 訬 ६  ⠬
,  6 - 訬  ६  ⠬  (    
뢠 ,  -᪨ "맪").  H᫮ ᫨
   ⢥ન  ⮢.  FH  =  1111B,  6H = 0110B
(,    H  B - 䨪, 騥   ⫨  11
筮  11 筮  11 ⭠筮).   -
  ᫮ F6H ।⠢ 楯 ⮢ 11110110.   塠⭮
᫮ (楫)  ࠢ 6FF6H.   ⮬ 砥 楯窠 ⮢
    0110111111110110. ᫨ ᫮ ⮨ ⮫쪮 
 ,    襣   ࠢ , -
,  F6FH ᮮ⢥ 楯窠 ⮢ 0000111101101111.
   ⭠  ᫠   ,  祬  .
᫥ 让 ࠪ⨪ 뢠,  ࠡ   
㤮, 祬  묨.

   ⮢:

   ,     ࠧࠫ   ⭠묨  ᫠,
 ࠧ   ⥬,  ன     
樨 . -,  ⬥,    ⨯
ᮢ:     ⮢. H ᮢ ᯮ-
  ⥬   㣨 ᮢ襭  易;  뫪  祭  
祩   ᮬ 2000      祣 饣  뫪
祭    ᮬ 2000.    ⠬ ⢫ 
 権 INP  OUT  ᨪ  IN  OUT 몥 ᥬ-
.   ᠬ  ⢫  ᨪ ﬨ
PEEK  POKE,   몥  ᥬ  樥  MOV.  65K
㯭 ᮢ ⮢  1024K 㯭 ᮢ .
   ᪮  ᯮ 16- ॣ,    -
 ॥      ᫨   ॢ室 
  16 ⮢.   ᨬ쭮 ᫮, ஥  ᮤ-
  16  ࠢ  65535.     㤥  ।⠢  
姭筮  ⭠筮  ᫮ FFFFH.  ॡ   4
 , ⮡  ।⠢  ⠪ 讥 ᫮  -
 (FFFFH), ஬ ࠢ ࠧ ᭮ ࠭⢠ IBM PC
(AT       襩 , ᯮ 㠫-
 ,  ᬠਢ ).
     蠥  ஡ 樨  祬 64K   
16-⭮ 㪠⥫    ࠧ    ᥣ. -
⮬     뢭   ࠧ஬  64K;
 ⮬ 16- 㪠⥫  㪠뢠    
.    ࠭  砫 ᥣ   ⭮
᭮ ⠭⢥  ᬠਢ 16- ,  ᬥ-
 ⭮⥫쭮 ⮩ 窨.  H  ।  ?  ⢥
⮨  ⮬,  ஥  塠⭮  祭 ᯮ 
⬥⪨  砫  ᥣ   祭 㬭  16  ( =  4
⠬) ।  ᯮ짮.  ࠧ, ᫨  ᥣ-
 祭 ࠢ 2, , 㬭   16, 稬 32,  
 ⥬    ᬥ饭  ⭮⥫쭮 32-  
.  ᫨   ᥣ ࠢ 7,  㬬 32  7  -
砥,   㦭   39-  ,    7-.
⭮⥫   ( ᬥ饭) ⮣  ࠢ 7,   -
  - 39.
    ᨪ      ⠭  ᥣ    
  DEF  SEG.  ᫨    DEF SEG =  2,  
⠭ 砫 ᥣ,   ஬    㤥  
32- ,   ।饬 ਬ. ⥬   ᯮ짮
 PEEK  POKE  ⥭    ⤥ ⮢ -
.   Hਬ, PEEK(7) ⠥ ᥤ쬮   砫 ᥣ,
.. 39-  .
      ⮩   뫠   ᮫ 
.     室, ᪮ 樮 ⥬  ࠭
 ଠ  । . ᮫  ਢ-
     0000:0000,    4  ⭠  
㪠뢠  ᥣ,    - ⭮⥫  (ᬥ-
).  ᯮ ।騩 ਬ,   ᮢ 39- 
 ᠢ 0002:0007.   ⬥⨬,    ᠬ  
  ᠭ   㣮 , ᫨  祭  ᥣ⭮
ॣ, ਬ, 0001:0017.    ।⠢ ⠪
     5-筮 ⭠筮  ᫠.   Hਬ,
 稭    B000:0000,   
 B0000H.  ⬥⨬,  䨪 H ᪠  ᯥ樠쭮  -
᭮ 樨.
    ᫥ 砭 ⭮⥫쭮 ᯮ짮 . K
᫮      ⮢,  訩  ⮣ ᫠
࠭  祩  訬 ᮬ.  ᫨ 楫 ᫮ A48BH -
, 稭  祩 1000:0007,  祩 0007 ᮤন 8B,  
0008 - A4.  ࠧ,  ᫨  ⢥ ᫮ ࠭ 
    F58CA98DH,  8D 㤥  ࠭   祩   ᠬ
訬 ᮬ,  F5 -  ᠬ 訬.
             ਫ . ⮢ 樨  ᨪ.

    ᨪ  ᯮ짮 ᫠  筮 ଥ.  -
ਢ 楯 ⮢ 11000000   11 ,    192.
  樨  楯窠 ⮢  室   ண-
ࠬ஢,  ᪮  ॡ     ᮤন
 ⮢   ॣ஢.
     設⢥ 砥  楯窠 ⮢ ਬ   -
᪨  樨.   樨  (OR)   (AND)    -
㯭  ᨪ.  ᯮ㥬    ⤥쭮    樨
    ணࠬ    ⠭  㠫
 .    樨  ,  ..   ਬ 
 祭,   ⢥ १ ,  筮 
 䬥᪨ 樨: Z = X OR Y.  ᯮ짮 
祭ﬨ ⭮   樨 믮 8 ࠧ,   ࠧ
  .  ஢  0  ⮢  ᫨  
⠭      ,   0 㤥 ⠭   
१饬 .      믮   ⠫
ᥬ  ⮢.    ⠭  १ ⮫쪮 
⮬ 砥, ᫨   뫨  ⠭,    ⨢ 砥
  㤥 ࠢ 0.     樨, ᯮ -
 ࠬ:

      ࠭1  ࠭2  १  ࠭1 ࠭2 १

 7    1         0          1         1        0         0
    6    1         0          1         1        0         0
    5    1         1          1         1        1         1
    4    1   OR    1    =     1         1  AND   1    =    1
    3    0         0          0         0        0         0
    2    0         0          0         0        0         0
    1    0         1          1         0        1         0
    0    0         1          1         0        1         0

    ணࠬ஢  ᯮ  ⠭  
  ⮢  祩   ᭮  ॣ.   Hਬ,
  室  ⠭ ਡ 栭 -
 ᨬ  ࠭ ନ.   ॡ -
 ᥤ쬮 .  ணࠬ       
ਡ⮢    㦭 ,  ﭨ ⠫ ᥬ  ⮢
  .  ⮬       㦭
       楫 ६,  ਬ,
X.   ⥬  ⮢ ,  ண ⠭ ⮫쪮  ᥤ쬮
. K   (  㧭  ਫ ) ⠪ 
ࠢ 128.     Y = X OR 128   Y 㤥  
祭,    X,   ⠭ ᥤ ⮬. Hਢ-
 ࠬ   :
        ਡ           128     १

    7         0               1          1
    6         1               0          1
    5         0               0          0
    4         1      OR       0     =    1
    3         0               0          0
    2         0               0          0
    1         0               0          0
    0         1               0          1

  ᫥ 128 ⮫쪮 ᥤ쬮  ⠭.  Hᨬ   ⮣,
   ⠭     ਡ⮢,  㤥 ⠭-
  १饬 .  ᠥ ⠫ ᥬ ⮢, 
  ⠭  १饬   ⮫쪮 ᫨  㦥
뫨  ⠭   ਡ⮢.      -
짮  ⠭  祬      ਥ (
ᬮ ।ॣ騥 砭 ).  ⮡ ⠭ 
2  3  ᯮ짮 㬬  祭    ⮢: 4 + 8 =
12.

        ਡ           12      १

    7         0               0          0
    6         1               0          1
    5         0               0          0
    4         1      OR       0     =    1
    3         0               1          1
    2         0               1          1
    1         0               0          0
    0         1               0          1

        ⮢ ᯮ  . 
⮣  ᫨ 祭  ,   ண ⠭ 
,  ᪫祭 ⮣,    .   ,
  ᮮ⢥騥      ⠭, ⮡ -
騩   ⮦  ⠭.  ⮡   7  -
 祭 255 - 128 = 127:

        ਡ           127     १

    7         1               0          0
    6         1               1          1
    5         0               1          0
    4         1      AND      1     =    1
    3         0               1          0
    2         0               1          0
    1         0               1          0
    0         1               1          1
⬥⨬,   ,  ⠭    ਡ⮢ (஬
  7),    1  ⮢  祭  127   ⮬
ࠢ 1   १饬  .   ,  뫨 ࠢ 0 
 ਡ⮢,  ࠢ묨 0.
    ணࠬ 㦭 ⠭ 㯯 ⮢ ().  H-
,           ਡ⮢,
  ⥬ ᠬ 梥 ᨬ.    楯窠 ⮢ 㤥
101.   ᮮ⢥ 祭 5,  믮 樨   5
   ਢ   १, ᪮  ⠭-
   १饬  ᫨     ᮮ⢥-
 ⮢  ࠢ 1. ᫨ ।   ⠭  
ਡ⮢,   ⠭ ⠭    १饬 -
:

        ਡ            5      १

    2         0               1          1
    1         1               0          1
    0         0               1          1

  ⠪ 砥 ணࠬ  ᭠砫      
 ,  ⥬ ⠭ 㦭    .  
砥 255 - 4 - 2 - 1 = 248, ⮬ ᭠砫  ᫨ Y  =
X AND 248,  ⥬ Z = Y OR 5.
   H ᫨誮 ᫮    ணࠬ   । ⠭ 
襭  । .   ⮣  ந   
 ⮬,  ண 襭   , ஬ 㥬 (᪠-
,   5,  ࠢ 32).  ᫨ १ ⫨祭  ,
 㥬   ⠭:

        ਡ           32      १

    7         1               0          0
    6         0               0          0
    5         1               1          1
    4         1      AND      0     =    0
    3         0               0          0
    2         0               0          0
    1         0               0          0
    0         1               0          0

   H   ,    ணࠬ  ॡ   ⠭
   ⮢? Hਬ,  6  7  ࠭  
0  3,  ᫨ ஢   ,      १
   () 祭: 0, 64, 128  192. ᪮-
 ᨪ 㦤  ࠡ    묨 ᫠,  -
   ࠡ⪠, ⮡ ।  祭  ᮮ-
  楯窠 ⮢. ⮡    
娭権  ਢ   楤.  ࢠ    ८ࠧ
筮 ᫮, ࠭饥  ,  ப  쬨 1  0.
⬥⨬,    ᨬ쭠 ப,   筮 ᫮.  
楤  ⠪  ப  (  )   ८ࠧ  
筮 ᫮.  ᯮ  楤    -
஢      .      㭪樨 MID$ 
  뤥 ⮢   ८ࠧ ᮤঠ饥   
祭  筮 ᫮.    楤 ८ࠧ -
筮 ᫠   ப:
100 STATUSBYTE = PEEK(13): GOSUB 1000
110 PRINT BITPATTERN$   '⠥ 稢 ப
 .
 .
1000 '''८ࠧ㥬 10- ᫮  ப  8   㫥
1010 BITPATTERN$ = ""    '⨬ ६
1020 FOR N = 7 TO 0 STEP -1  ' , 稭   7
1030 IF STATUSBYTE - 2^N < 0 THEN 1060  '室 ᫨  ࠢ 0
1040 BITPATTERN$ = "1" + BITPATTERN$    '塞  ப 1
1050 STATUSBYTE = STATUSBYTE - 2^N: GOTO 1070
1060 BITPATTERN$ = "0" + BITPATTERN$    '塞  ப 0
1070 NEXT
1080 RETURN

     ⬥,  冷 ⮢  筮 ப .
 ⮣, ⮡   ᫥  ࠢ    7   0,
  0 ᯮ ᠬ   ப.  稭 ⮣  
 䠪,  㭪  MID$      뤥 ॡ㥬 
.  ᪮ MID$ 稭    1,    ,
    ஭㬥஢  1  8.  ⮡ 뤥  ⢥  
 ,  BITFIELD$ = MID$(BITSTRING,4,2). ⥬ -
 筮 祭 ( 0  3) ࠭饥  , ᯮ-
 楤 ⭮ ८ࠧ:

100 BITFIELD$ = MID$(BITPATTERN,4,2): GOSUB 2000
110 PRINT DECVALUE
 .
 .
2000 '''८ࠧ㥬 ப 1  0  筮 ᫮
2010 DECVALUE = 0   '⨬ ६
2020 FOR N = 1 TO LEN(BITFIELD$)  '塞   
2030 DECVALUE = DECVALUE + VAL(MID$(BITFIELD$,N,1)*2^(N-1)
2040 NEXT
2050 RETURN
        ਫ . ᭮ ᢥ  몥 ᥬ.

   ⥫  ⮩  ,    몮 ᥬ,  ᪮
,   ணࠬ᪨     ⨣
㣨  ।⢠.   祭 몠 ᥬ ॡ  -
쭮 ,   ⮬  ਫ  ਢ  ᭮ ,
   窠 ࠧ  ਬ   ⮬  몥.
⥫ ᬮ  ࠧ,  饭  ।  
஢,      ।⠢  ⮬,  
ࠡ⠥ ᥬ, ᫥ 祣    ࠧ -
  .   㦤   ᥬ  樨,
騥  ணࠬ,      㦨,     95 %
権, 祭   ணࠬ, ᠭ ,   -
祭 ⠫        ண-
ࠬ.
   ய 8088  13 16-ࠧ來 ॣ஢,  
  ᢮  㭪樨.      ६    몠 ᮪
஢      ᫠  ६,  ⥬  ᫮-
  ६,   몥 ᥬ  ᫠  
ॣ ய,  ⥬ ᪫뢠 祭, ᮤঠ-
騥   ॣ.    樨    몥 ᥬ  
     ॣࠬ,  ⥬ 믮 権   -
, ⠪   ⤥  ⮢, 믮 䬥-
᪨  権  ..    稭 ᮪  䥪⨢
몠 ᥬ   ࠭    ॣ ய-
;    ⥭    祭  
 ᫥ 믮 樨,     ॡ -
讣 ६.  H . -1  13 ॣ஢ ய஢
8088  80286 (᫥  ⥫  ।⢠  -
筮 ࠡ,    㤥 ᬠਢ ).
     AX, BX, CX  DX  ॣࠬ 饣  -
.   ᮡ ⮨   ⮬,   樨  ந-
   ⮫쪮  ᮤন ᥣ ॣ,   ⠪   
. K   ॣ஢     -
  , ਬ, AH 砥   ॣ AX,
 AL - .  筮 ⠪   ᥬୠ ணࠬ  
   BH, BL, CH, CL, DH  DL.   ᢮⢮  祭  ,
᪮  ணࠬ  室 ࠡ  묨 -
.     BP, SI  DI ⠪ 筮 㤮,    
 ਭ ⮫쪮  16-  祭.  K  ॣ
䫠 ᮮ頥  ᮮ⢥饬  , ਬ, 
⮬,   믮  䬥᪮  樨   ७ 
ࠧ來 .
    饬 砥 祭   ॣ    -
樨 MOV. MOV  AX,BX  뫠  ᮤন  ॣ BX  AX,
  ࠭ ᮤঠ饥  AX 祭.  MOV AH,BL ਢ  
뫪   ॣ   ॣ,  MOV AX,BL - -
  , ⠪  祭    ࠧ.
 MOV  ⠪ । 祭  , -
,  MOV  AX,ACCT_NUMBER.   ACCT_NUMBER -    ६,
 ᮧ ணࠬ,  ᮢᥬ    몥 ᮪ ஢.
६ ᮧ ஬  ACCT_NUMBER DW 0.   -
 ⠢      ᫮  (  ⮢), ᢠ 
祭 0.  㣨 ⨬ ᨬ  ⮬   DD  -
  ᫮  DB -     ப.  ᥬ ᫥
 ᠬ ६, ⮬  ᥬ஢  MOV
AX,ACCT_NUMBER  ६    .
      ६ - ᠬ ⮩ ᯮᮡ 䨪-
樨   ணࠬ  몥 ᥬ. H  ࠧ
ᯮᮡ ன  樨,      ணࠬ ࠭
ᨢ   ᯮ짮 㪠⥫.  Hਬ,  MOV  AX,[BX][SI]
뫠  AX 祭, ஥  ᮤন   ᬥ饭, ࠢ
㬬  祭 ॣ஢ BX  SI.  H  祣 뢠 ᬥ-
? ⢥ 砥  ⮬,    ᮡ࠭   
ணࠬ,    ᯮ塞  -  .  , ⢥
 , 뢠 ᥣ⮬ ,    ணࠬ - -
  ᥣ⮬.   ६, ⢥  ࠭  ,
 १ ᬥ饭 ⭮⥫쭮 砫 ᥣ .
     ,  ன 稭 ᥣ , ࠭-
  ॣ DS,      ᥣ  ॣ஢. K 
  ⠫ ॣ ய  16-ࠧ來,  ⮬
   ᮤঠ ᫠, 訥  祬 65535. K  ࠧ
ᥣ    㪠뢠  祩 , ᯮ  
孥  ⭮ ᭮  ࠭⢠? ⢥ ⮨
 ⮬,  ᥣ ॣ ⮬᪨ 㬭  16,  
१ 㪠뢠       ,    ண 稭
ᥣ.   ࠧ, ᥣ ᥣ ࠢ   16-
࠭. ᫥ ⮣  ᥣ ⠭,  ⠫ ॣ-
    ᮤঠ ᬥ饭, 㪠뢠騥     ᫥
65535 ⮢.  ⥫쭮 ᥣ (ES) ⠪ ᯮ-
  㪠  , ࠭騥  .
   ।  ᥬ 権,    㤥 -
  ⮩ ,  樨  㧪 ᥣ  ⭮-
⥫ ᮢ ६.  MOV AX,SEG ACCT_NUMBER 頥 -
祭 ᥣ⭮ ॣ,    ஬  ᯮ ACCT_NUMBER 
AX,  ᫥⢨  祭 㤥 ᫠  DS. MOV BX,OFF-
SET ACCT_NUMBER 頥  BX  ᬥ饭  ६ ACCT_NUMBER 
ᥣ .  ᫥ 믮  権 DS:BX  㪠-
뢠  ACCT_NUMBER. ᫨  ACCT_NUMBER   -
ᨢ,      㪠  ।   ᨢ  
ᯮ짮  筮  ᬥ饭.     㤥 
⠪    LEA,  ।⠢ 㣮  ᯮᮡ  㧪
ᬥ饭.
   K ᥣ ᮤন  ᫥⥫쭮 設 -
権, ⠢ ணࠬ.  Hਬ,  MOV 
  ᪮쪨 ⮢ 設 , 祭 ⮢ ண
।    ॣ  뫪  㤠.    IP
(稪 ) ᮤন 稭 ᬥ饭,  㪠뢠 
      ᥣ,  ᥩ   믮-
.  ᫥ 믮 樨 IP 㢥稢 ⠪ -
,  ⮡   㪠뢠  ᫥ .     ⥩襩
ணࠬ 稪   㤥  ।    ࢮ 
 ᥣ  ᫥,  ணࠬ  .   H,
  㣨 ணࠬ,  ணࠬ  몥 ᥬ  
ࠧ  楤 (ணࠬ), ⮬ 稪  
룠     ᥣ  㣮.
   K 稪  룠  㣮   ᥣ,
   ஥ 祭   ,  ⥬ ⮡  
뫮   㦭 , ⠪     RETURN
  ᨪ,  ࠢ   , 㤠 뫠  맢
楤.  몥 ᥬ  楤 ᢠ , -
,  COMBINE_DATA,   CALL COMBINE_DATA । ࠢ-
  楤.  楤  蠥 樥 RET (-
).   맮 楤   ⥪饥 祭
稪 , ⠫   ⥪.
   ⥪  , ᯮ㥬  ६ ࠭ .
᫥ 襭 楤 ஥ 祭 稪  -
  ⥪  믮  ணࠬ  த. ⥪ ⠪ -
ন    ⤥쭮 ᥣ, , ᮢ襭 ⢥,
뢠 ᥣ⮬ ⥪.   ᮮ⢥ ᥣ ॣ
SS.  ॣ SP ࠭ 㪠⥫ ⥪,  ᥣ 㪠-
  設 ⥪     뫪  ⥪  롮થ
 ⥪.
   H     ⥪  筮 㪫  ᯮᮡ
࠭ ଠ樨,       २⢠. -,
   ᮤন  ॥, 祬  ६,  -
騬  ,  ,  -,  ⥪   ᯮ짮 
  楫.     ࠭      楤,
    楤.  ᫥⢨,    ᠬ -
࠭⢮   ᯮ짮 ணࠬ⮬  ࠭  ,
  ᥩ  ࠡ뢠,      墠⠥
  ॣ ய. ணࠬ ⠫ ᮤন-
 ॣ  ⥪  PUSH,   ࠥ  㤠
 POP.   ᥬ ணࠬ, ਢ  ⮩ -
,   ࠧ    ﬨ  ⨯ PUSH BX  POP DX.
Hࠢ  冷   묨  ⥪ -  訩  ᯮᮡ
ਢ ᥬ ணࠬ  .
   ᫥ ⮣  ணࠬ   ᥬ  ⠭   ᥣ-
 ॣ (CS, DS  SS)  㧨   ॣ  -
ய   ப   ஥ ।, 묨
   ணࠬ  ᥬ.    
࠭  :

ADD AX,BX   ਡ BX  AX.  ⠪  -
            ⠭ (SUB),  ⠪ ਠ   権.

MUL BL       BL  AX.   ⠪   
            (DIV),  ⠪ ਠ   権.

INC BL      稢 BL  1.   ⠪  㬥-
            襭 (DEC).

LOOP XXX    頥  ணࠬ   ப 祭  XXX,
              ⮫쪮  ࠧ,  ᫮ ᮤন
             CX (筮 樨 FOR ..  TO .. NEXT  -
            ᨪ).

OR AL,BL    믮    ᪮     ᮤন
            ॣ஢  AL  BL, 祬 १ 頥  AL.
             ⠪ 樨 AND, XOR  NOT.

SHL AX,1      , ᮤঠ騥  AX,   
            .    ⭮ 㬭 ᮤন AX 
            2.  㣨 樨  ᤢ   ࠢ  -
            ⢫ 横᪨ ᤢ.   樨 祭
               ⮢  権,  ⠪   ⠭
            祪 ࠭.
IN AL,DX    頥  AX , 㦥  ,  -
            ண 㪠  DX.  ⠪  OUT.

JMP         । ࠢ    㣮    ணࠬ, 
             GOTO  ᨪ.  JMP YYY । ࠢ-
              ப ணࠬ,   YYY.

CMP AL,BL   ࠢ ᮤন  AL    BL.   樥 CMP
            筮 ᫥  ᫮ 室.  H-
            , ᫨  樥 CMP  ᫥  JGE,
             室 ந ⮫쪮 ᫨ BL   ࠢ
            AL.   CMP ⨣ ⮣  १, 
                IF ..  THEN  ᨪ (  ᠬ  
             IF ..   THEN  ॢ  ஬
            ᨪ   CMP).

TEST AL,BL  ஢     । ⮢, ⠭   BL,
            ⠪,    ⠭  ⠪     AL.  ⮩
            樥 筮 ᫥  ᫮  -
            , ⠪    CMP. TEST 祭   ஢-
                ⮢ (⮢ 樨  祭  
            ॠ  몥 ᥬ).

MOVS        뫠 ப,   ன  ᮤন  CX, 
            ,  ஥ 㪠뢠 SI,  ,   ஥
            㪠뢠 DI.    ᪮쪮  㣨 -
            権, 易  뫪  ᪮ ப.
 ᥬ ᯥ稢 ᪮쪮 ਠ⮢  権,
  ⠪  㣨 ᯥ樠 権.   ⠪  楫
 権, 뢠 ᥢࠬ,  -
  ⥪ ணࠬ  楫 㪠 ᥬ  ࠡ뢠
 ணࠬ. Hਬ,    ⨯ ᥢ஢ -
᪨  ⠢  ᯮ㥬 ᮪   ᥩ  ண-
ࠬ.    뢠 ᮬ    ᢮-
 ᥬ    "஠ᥬ".
   ,  ,  ᥬ   ,  ன  
(,  ࠩ ,   )    ணࠬ
⮫쪮  몠 ᮪ ஢.    -
 ࠧ  ᯮ짮  뢠  樮  ⥬.
    ,  ⮢ 楤.    ⮣,
⮡ 뢠   CALL,  뢠 樥 INT. INT21H
뢠  뢠  ⭠ ஬ 21.   
⠪ 뢠,    ⥬ /뢮 , ⠪  
樮 ⥬, 祬    楤 砩-
 .  H ᠬ     ⮫쪮 ᭮ 易
  ⥬,    ࠪ᪨   ᠬ   -
 楤.  모  ᮪ ஢  ᯮ짮
   뢠.  ᯮ   뢮  ࠭,
ਥ     㯠  ᪠.  H  ⢨-
⥫쭮  뢠  몠 ᮪  ஢,
ਬ ⠪,         ணࠬ
.   H  ࠭ (⠪  Lattice C    Turbo
Pascal)    ⨬  뢠,  ᫨   
 ⮢    ᯮ짮 ࠧ । ஢ ⮩
  ⮩ 楫.
   ।  맮  뢠    ଠ   
饭  ॣ .  Hਬ, 뢠, ਪ쭮
ᤢ饥 ࠭,    ࠧ  ᤢ  , ᫮
ப    ஥   ᤢ  ..    祭  
뢠 室묨 ॣࠬ.     ᭮  㤥 
᫮ " 室 BX  ᮤঠ ...", 뢠騥 ᯥ䨪-
 室  ॣ஢.   筮,     뢠
  ॣ  祭   ଠ.
 뢠  室묨  ॣࠬ     뢠  ᫮
" 室 AX ᮤন ...".    뢠  ᮤন
 㭪権.  ⭮, 樮 ⥬ 㫠 ࠪ-
᪨  ᢮   뢠 21H.  ⮬   맮
뢠 室  㪠뢠    㭪樨.   뢠
(  BIOS  ⠪  DOS) ।  㭪樨  AH  (   AL
ᮤন  㭪樨).
    ᪠    ᭮  㦨  ⮫쪮  ⮡   ࢮ
।⠢  ।.  H ᫨  㤥 ⥫쭮 ᬠ-
ਢ ⥩訥 ਬ, ᮤঠ騥   ⮩ ,   -
      .   ᥬ    ९
㤭 몠. H ,     ⮫쪮   ⠫ - 
祯.  筮 ᫮⥩   몠 ᮪ ஢.
 ᫨ 訡  ᥬ୮  ணࠬ 뢠 祭 ᫮ -
㦨,    ᭮  易  ⥬,  ᠬ ⥪ ணࠬ
 , 祬   ⥪  몥 ᮪ ஢-
  ( ᥬ   ⭥).   饥 ६
 ᨮ   ணࠬ   몥 C, ⥬ -
  䥪⨢  ९뢠 ᪨ 窨 ணࠬ,
 室   ६,   몥 ᥬ. H-
  ᠭ ⠪ ᥬ 楤    ᢥ
ᨫ ணࠬ   .  ⮬   訩 㪢 
ᥬ  㯠!  ᠬ 让 ࠤ  
⠭ ,      ⢨⥫쭮  ⠭ 
  ࠡ⠥ .
   ਫ .  祭 ᥬ 楤  ணࠬ  
ᨪ.

   楤  몥 ᥬ   ப ⮢ 設-
 .  믮 ⮩ 楤 ᨪ । ࠢ
  ᫥⥫쭮 権, ⠢ ணࠬ  -
ᨪ,   ,   ࠭  樨,     
஢    ᫥⥫쭮 権 몠  ᥬ.
 襭 ᥬ୮  楤  ࠢ 頥 
  ᨪ᪮ ணࠬ, 㤠 뫠 맢 楤.
    ⮩  ᥬ 楤, ᯮ㥬  ணࠬ
 ᨪ, ਢ   .    楤 -
祭   ணࠬ,   ࠭   ⤥쭮 ᪮ 䠩-
.  ࢮ ᯮᮡ ॡ, ⮡  楤 室
  ⤥쭮   ,   ஬,  ਭ⮬,  ⮣
 ॡ.
    ࢮ ᯮᮡ 楤 頥   DATA  ண-
ࠬ  뫠  ᯮ㥬  ,  ⥬  -
 ஬ CALL. H   ⮬, ⮡  -
    뢠  -   .   筮
襭 ⮩ ஡ ⮨   ⮬,   楤 頥 
    ,    ᨪ      .
᪮  ᨪ       ।
64K,     ⥬, ᪠,    256K,  㦭  
楤  訥  64K.    ⥬     128K  
᫨  ᪮쪮  ॡ 樮 ⥬, ᨪ
 ࠩࠬ  ன.   ⨬,  ⮡   25K 
64K,  ᯮ㥬  ᨪ.   ⥬  64K  ᯮ  
  CLEAR,  ࠭稢 ꥬ  㯭
 ᨪ. CLEAR,n ࠭稢 ᨪ n ⠬.  ⥬ -
 楤  ᠬ 孨  .
    㪠 砫  ,  㤠  㤥 饭 楤,
ᯮ    DEF SEG,  ⥬     READ
뢠  楤           ,
  楤  㤥 饭  . Hਬ:

100 DATA &Hxx, &Hxx, &Hxx, &Hxx, &Hxx  '10-⭠ 楤
110 DATA &Hxx, &Hxx, &Hxx, &Hxx, &Hxx
 .
 .
300 '''頥 楤  
310 DEF SEG = &H3000   '㪠뢠   
320 FOR N = 0 TO 9     '   10 ⮢
330 READ Q             '⠥  
340 POKE N,Q           '頥   
350 NEXT

   ᫥  ⮣   楤 㦥        
ᯮ짮, 室 ⮡  ᫥  DEF SEG 㪠-
  砫 楤.  ⥬ ᢮ 楫 ६ -
 0     CALL      ⮩ ६. ᫨
楤  ।  ࠬ,       㪠  
᪮    CALL. Hਬ:

500 DEF SEG = &H3000   '㪠뢠  砫 楤
510 DOGS = 12          '  3 ࠬ
520 CATS = 44          '
530 POSSUMS = 1        '
540 CASUALTIES = 0     '稭 믮  1- 
550 CALL CASUALTIES(DOGS,CATS,POSSUMS)  '믮塞 楤
        ⮩   ᯮᮡ  ᮧ
ᥬ 楤,     ஡  ।
. H  ᮧ 楤   ப ६
 ணࠬ.  K      ஢  
CHR$.  ⥬ ᯮ 㭪 VARPTR  । 
⮩ ப  . 饭  ஬ 室  ६-
  ࠭   ,    ⥬,   㪠-
 VARPTR ( ࢮ   ᮤন   ப). ⥬ 
 ᯮ  맮 楤.  ⬥⨬ ᯮᮡ, 
ᯮ  DEF  SEG,    㪠   ᥣ 
ᨪ,  ⥬ ⮡ 祭 ᬥ饭 㪠뢠   -
   CALL. Hਬ:

100 DEF SEG         '⠭ ᥣ   ᨪ
110 X$ = "CHR$(B4)+..."  ' 楤
120 Y = VARPTR(X$)       '砥 ਯ ப
130 Z = PEEK(Y+1)+PEEK(Y+2)*256  '塞  
140 CALL Z

 祭, ࠦ  १ CHR$()   ।⠢
   ᨬ ASCII.     ROUT = CHR$(12) + "AB"
 ROUT = CHR$(12) + CHR$(65) + CHR$(66). H ᠬ  -
設⢮ ᨬ ASCII   ⥬   Alt,
    ⥫쭮 ,  ⥬ ᪠-
    Alt.     0  31     
⠪ ࠧ   楫.
   ਫ . ᯮ짮 ࠩ ன⢠ ANSI.SYS.

   ANSI.SYS   ணࠬ, 室  ⠢ 樮-
  ⥬,    㦥  ,  ⥬  ⮡
㢥  MS DOS.   ᤥ  COMMAND.COM 
楫  ,    ᯮ.  ।⢠, -
⠢塞 ANSI.SYS,   ᯮ짮  㤮⢠ ண-
ࠬ஢,      ⠪ 㦨  ।⢮  ⨦
ன  ணࠬ  ᮢ⨬    IBM-᪨ 設,
ᯮ騬 MS DOS.  ࠩ  ।⠢  -
 ⥩,   뫮   㣨 -
,       ࠢ ன 
ନ   묨  ( 筮  ). 
᢮⢠ ࠩ ANSI.SYS ᠭ  ⮩   ᮮ⢥-
騬 .
   ANSI.SYS   㦥  ⮫쪮   ६ 㧪 -
樮 ⥬. H稭   ᨨ 2.0 ⥬ ⮬᪨ 
䠩 CONFIG.SYS, ⠪    䠩 AUTOEXEC.BAT.   CONFIG.SYS
ᮤন ࠧ ࠬ, ⠪  ᫮ ᮧ ஢
 䠩. H  ᮤন ⠪    ࠩ஢ ன,
   㦥  祭   COMMAND.COM. ANSI.SYS
  ࠧ   ⠪ ࠩ஬.  H    
䠩 ப DEVICE = ANSI.SYS.     ⢥ -
  䠩.   ᮧ ⮣ 䠩  ᯮ짮  -
 COPY. H    ନ ⠪ ப:

COPY CON: CONFIG.SYS <CR>
DEVICE = ANSI.SYS <CR>
<F6>  <CR>

H⨥   F6 뢠 ᨬ Ctrl-Z (ASCII 26), ⬥-
騩  䠩.
   ਫ . H 権 ய 8088.

   ᫮ ⠪⮢, ஥    ᫥ 䥪⨢-
  ᫥饥:

                ࠭                  ⠪

()                [BX],[BP],[DI],[SI]          5
()  ᬥ饭                   ⪠  ᬥ饭           6
()   +               [BX][SI], [BX][DI]           7
                                [BP][SI], [BP][DI]           8
()  ᬥ饭 +    [BX],[BP],[DI],[SI] + ᬥ.  9
()  ᬥ饭 +  +    [BX][SI],[BX][DI] + ᬥ.   11
                                [BP][SI],[BP][DI] + ᬥ.   12

H室  ⠪ 2 ⠪   祭 ᥣ.  
६ 権:

                                        ⠪   

AAA                                                 4        1
AAD                                                60        2
AAM                                                83        1
AAS                                                 4        1
ADC  ॣ, ॣ                               3        2
ADC  ॣ,                            9(13) + EA   2-4
ADC  , ॣ                          16(24) + EA   2-4
ADC  ॣ, 祭                              4       3-4
ADC  , 祭                         17(25) + EA   3-6
ADC  , 祭                          4       2-3
ADD  ॣ, ॣ                               3        2
ADD  ॣ,                            9(13) + EA   2-4
ADD  , ॣ                          16(24) + EA   2-4
ADD  ॣ, 祭                              4       3-4
ADD  , 祭                         17(25) + EA   3-6
ADD  , 祭                          4       2-3
AND  ॣ, ॣ                               3        2
AND  ॣ,                            9(13) + EA   2-4
AND  , ॣ                          16(24) + EA   2-4
AND  ॣ, 祭                              4       3-4
AND  , 祭                         17(25) + EA   3-6
AND  , 祭                          4       2-3
CALL  楤                             23        3
CALL  楤                             36        5
CALL ᫮ 㪠⥫                    29 + EA    2-4
CALL ᫮ ॣ 㪠⥫                     24        2
CALL ᫮ 㪠⥫                57 + EA    2-4
CBW                                                 2        1
CLC                                                 2        1
CLD                                                 2        1
CLI                                                 2        1
CMC                                                 2        1
CMP  ॣ, ॣ                               3        2
CMP  ॣ,                            9(13) + EA   2-4
CMP  , ॣ                           9(13) + EA   2-4
CMP  ॣ, 祭                              4       3-4
CMP  , 祭                         10(14) + EA   3-6
CMP  , 祭                          4       2-3
CMPS ਥ, 筨                           22(30)     1
CMPS (REP) ਥ, 筨              9 + 22(30)/ 1
CWD                                                 5        1
DAA                                                 4        1
DAS                                                 4        1
DEC  ᫮ ॣ                                2        1
DEC   ॣ                                3        2
DEC                                      15(23) + EA  2-4
DIV   ॣ                              80-90      2
DIV  ᫮ ॣ                            144-162      2
DIV                                 (86-96) + EA  2-4
DIV  ᫮                            (154-172) + EA  2-4
ESC  祭,                            8(12) + EA  2-4
ESC  祭, ॣ                              2        2
HLT                                                 2        1
IDIV  ॣ                            101-112      2
IDIV ᫮ ॣ                            165-185      2
IDIV                              (107-118) + EA  2-4
IDIV ᫮                            (175-194) + EA  2-4
IMUL  ॣ                              80-98      2
IMUL ᫮ ॣ                            128-154      2
IMUL                               (86-104) + EA  2-4
IMUL ᫮                            (138-164) + EA  2-4
IN   ,  祭                   10(14)     2
IN   , DX                               8(12)     1
INC  ᫮ ॣ                                2        1
INC   ॣ                                3        2
INC                                      15(23) + EA  2-4
INT  3                                             52        1
INT  祭 , ⫨筮  3                 51        2
INTO                                           53  4      1
IRET                                               32        1
JCXZ ⪠ ⪠                            18  6      2
JMP  ⪠ ⪠                                15        2
JMP   ⪠                                 15        3
JMP   ⪠                                 15        5
Jxxx ⪠ ⪠                            16  4      2
LAHF                                                4        1
LDS  ᫮ ॣ,  ᫮        24 + EA    2-4
LEA  ᫮ ॣ, ᫮                 2 + EA    2-4
LES  ᫮ ॣ,  ᫮        24 + EA    2-4
LOCK                                                2        1
LODS ப-筨                             12(16)      1
LODS (REP) ப-筨                 9+13(17)/   1
LOOP    ⪠ ⪠                          17  5     2
LOOPE   ⪠ ⪠                          18  6     2
LOOPNE  ⪠ ⪠                          19  5     2
LOOPNZ  ⪠ ⪠                          19  5     2
LOOPZ   ⪠ ⪠                          18  6     2
MOV  ,                          10(14)      3
MOV  ,                          10(14)      3
MOV  ॣ, ॣ                               2        2
MOV  ॣ,                            8(12) + EA   2-4
MOV  , ॣ                           9(13) + EA   2-4
MOV  ॣ, 祭                              4       2-3
MOV  祭, ॣ                        10(14) + EA    3
MOV  ᥣ ॣ, ᫮ ॣ            2        2
MOV  ᥣ ॣ, ᫮           8(12) + EA   2-4
MOV  ᫮ ॣ, ᥣ ॣ            2        2
MOV  ᫮ , ᥣ ॣ          9(13) + EA   2-4
MOVS ਥ, 筨                          18(26)      1
MOVS (REP) ਥ, 筨              9+17(25)/   1
MUL   ॣ                              70-77      2
MUL  ᫮ ॣ                            118-133      2
MUL                                 (76-83) + EA  2-4
MUL  ᫮                            (128-143) + EA  2-4
NEG  ॣ                                        3        2
NEG                                      16(24) + EA  2-4
NOP                                                 3        1
NOT  ॣ                                        3        2
NOT                                      16(24) + EA  2-4
OR   ॣ, ॣ                               3        2
OR   ॣ,                            9(13) + EA   2-4
OR   , ॣ                          16(24) + EA   2-4
OR   ॣ, 祭                              4       3-4
OR   , 祭                         17(25) + EA   3-6
OR   , 祭                          4       2-3
OUT   祭,                    10(14)     2
OUT  DX,                                8(12)     1
POP  ॣ                                       12        1
POP  ᥣ ॣ                            12        1
POP                                        25 + EA    2-4
POPF                                               12        1
PUSH ॣ                                       15        1
PUSH ᥣ ॣ                            14        1
PUSH                                       24 + EA    2-4
PUSHF                                              14        1
RCL  ॣ, 1                                     2        2
RCL  ॣ, CL                                 8+4/     2
RCL  , 1                                  15(23) + EA  2
RCL  , 1                               20(28)+EA+4/ 2
RCR  ॣ, 1                                     2        2
RCR  ॣ, CL                                 8+4/     2
RCR  , 1                                  15(23) + EA  2
RCR  , 1                               20(28)+EA+4/ 2
REP                                                 2        1
REPE                                                2        1
REPNE                                               2        1
REPZ                                                2        1
REPNZ                                               2        1
RET  (ᥣ,  POP)                   20        1
RET  (ᥣ,  POP)                     24        3
RET  (ᥣ,  POP)                      32        1
RET  (ᥣ,  POP)                        31        3
ROL  ॣ, 1                                     2        2
ROL  ॣ, CL                                 8+4/     2
ROL  , 1                                  15(23) + EA  2
ROL  , 1                               20(28)+EA+4/ 2
ROR  ॣ, 1                                     2        2
ROR  ॣ, CL                                 8+4/     2
ROR  , 1                                  15(23) + EA  2
ROR  , 1                               20(28)+EA+4/ 2
SAHF                                                4        1
SAL  ॣ, 1                                     2        2
SAL  ॣ, CL                                 8+4/     2
SAL  , 1                                  15(23) + EA  2
SAL  , 1                               20(28)+EA+4/ 2
SAR  ॣ, 1                                     2        2
SAR  ॣ, CL                                 8+4/     2
SAR  , 1                                  15(23) + EA  2
SAR  , 1                               20(28)+EA+4/ 2
SBB  ॣ, ॣ                               3        2
SBB  ॣ,                            9(13) + EA   2-4
SBB  , ॣ                          16(24) + EA   2-4
SBB  ॣ, 祭                              4       3-4
SBB  , 祭                         17(25) + EA   3-6
SBB  , 祭                          4       2-3
SCAS ਥ                                     15(19)     1
SCAS (REP) ਥ                          9+15(19)/ 1
SHL  ॣ, 1                                     2        2
SHL  ॣ, CL                                 8+4/     2
SHL  , 1                                  15(23) + EA  2
SHL  , 1                               20(28)+EA+4/ 2
SHR  ॣ, 1                                     2        2
SHR  ॣ, CL                                 8+4/     2
SHR  , 1                                  15(23) + EA  2
SHR  , 1                               20(28)+EA+4/ 2
STC                                                 2        1
STD                                                 2        1
STI                                                 2        1
STOS ਥ                                     11(15)     1
STOS (REP) ਥ                          9+10(14)/ 1
SUB  ॣ, ॣ                               3        2
SUB  ॣ,                            9(13) + EA   2-4
SUB  , ॣ                          16(24) + EA   2-4
SUB  ॣ, 祭                              4       3-4
SUB  , 祭                         17(25) + EA   3-6
SUB  AL, 祭                                   4       2-3
TEST ॣ, ॣ                               3        2
TEST ॣ,                            9(13) + EA   2-4
TEST ॣ, 祭                              5       3-4
TEST , 祭                             11 + EA   3-6
TEST AL, 祭                                   4       2-3
WAIT                                             3 + 5n      1
XCNG AL, ᫮ ॣ                            3        1
XCNG , ॣ                           17(25) + EA  2-4
XCNG ॣ, ॣ                               4        2
XLAT ⠡-筨                              11        1
XOR  ॣ, ॣ                               3        2
XOR  ॣ,                            9(13) + EA   2-4
XOR  , ॣ                          16(24) + EA   2-4
XOR  ॣ, 祭                              4       3-4
XOR  , 祭                         17(25) + EA   3-6
XOR  AL, 祭                                   4       2-3
   ਫ . H 権 ய 80286.

   ਤন 奬, ਭ⮩   ,  ᫥-
 樨 ⮫쪮  ० ॠ쭮 樨.  
ய 80286  ॡ 筮 ६  ᫥
䥪⨢  ᮢ,   ⠪ ⫨  믮   
묨   ᫮묨  ६묨.  窠  㪠뢠,   
    ⠪, ᫨  ᫥  ᬥ饭  㬬-
  . 㪢  m  㪠뢠  ᫮  ⮢ ᫥饩
樨,  n - ᫮ ७.

                                                  ⠪   

AAA                                                 3       1
AAD                                                14       2
AAM                                                16       2
AAS                                                 3       1
ADC  ॣ/  ॣ஬                   2,7*      2
ADC  祭  ॣ஬/                 3,7*     3-4
ADC  祭  ஬                       3      2-3
ADD  ॣ/  ॣ஬                   2,7*      2
ADD  祭  ॣ஬/                 3,7*     3-4
ADD  祭  ஬                       3      2-3
AND  ॣ/  ॣ஬                   2,7*      2
AND  祭  ॣ஬/                 3,7*     3-4
AND  祭  ஬                       3      2-3
CALL אַ  ᥣ                        7+m      3
CALL ᢥ १ ॣ/  ᥣ- 7+m,11+m* 2
CALL אַ  ᥣ                        13+m      5
CBW                                                 2       1
CLC                                                 2       1
CLD                                                 2       1
CLI                                                 3       1
CMC                                                 2       1
CMP  ॣ/  ॣ஬                   2,6*      2
CMP  ॣ  ॣ஬/                  2,7*      2
CMP  祭  ॣ஬/                 3,6*     3-4
CMP  祭  ஬                       3      2-3
CMPS ७ CX ࠧ                          5 + 9n     2
CMPS   ᫮                                 8       1
CWD                                                 2       1
DAA                                                 3       1
DAS                                                 3       1
DEC  ॣ/                               2,7*      2
DEC  ॣ                                        2       1
DIV   ॣ                               14       2
DIV  ᫮ ॣ                               22       2
DIV                                      17*      2
DIV  ᫮                                   25*      2
ESC                                              9-20*      2
HLT                                                 2       1
IDIV  ॣ                               17       2
IDIV ᫮ ॣ                               25       2
IDIV                                     20*      2
IDIV ᫮                                   28*      2
IMUL  ॣ                               13       2
IMUL ᫮ ॣ                               21       2
IMUL                                     16*      2
IMUL ᫮                                   24*      2
IMUL 㬭  楫 祭                21,24*     3-4
IN   䨪஢                              5       2
IN   ६                                 5       1
INC  ॣ/                               2,7*      2
INC  ॣ                                        2       1
INS  ப                                      5 + 4m     2
INS    ᫮                                 5       1
INT  㪠 ⨯                               23 + m     2
INT  ⨯ 3                                       23 + m     1
INTO                                           24 + m  3 1
IRET                                             17 + m     1
JCXZ                                           8 + m  4  2
JMP  ⪨/                             7 + m     2
JMP  אַ  ᥣ                       7 + m     2
JMP  ᢥ १ ॣ/         7 + m,11 + m*   2
JMP  אַ  ᥣ⠬                      7 + m     2
Jxxx                                          7 + m  3   2
LAHF                                                2       1
LDS                                                 7*      2
LEA                                                 3*      2
LES                                                 7*      2
LOCK                                                0       1
LODS                                                5       1
LODS ७ CX ࠧ                         5 + 4n      1
LOOP                                           8 + 4n  4 2
LOOPZ/LOOPE                                    8 + 4n  4 2
LOOPNZ/LOOPNE                                  8 + 4n  4 2
MOV  ॣ  ॣ/                      2,3*     2
MOV  ॣ/  ॣ                      2,5*     2
MOV  祭  ॣ/                     2,3*    3-4
MOV  祭  ॣ                             2      2-3
MOV                               5       3
MOV                               3       3
MOV  ॣ/  ᥣ ॣ           2,5*     2
MOV  ᥣ ॣ  ॣ/           2,3*     2
MOVS   ᫮                                 5       1
MOVS ७ CX ࠧ                           5 + 4n    2
MUL   ॣ                               13       2
MUL  ᫮ ॣ                               21       2
MUL                                      16*      2
MUL  ᫮                                   24*      2
NEG                                                 2       2
NOT  ॣ/                               2,7*      2
OR   ॣ/  ॣ஬                   2,7*      2
OR   祭  ॣ஬/                 3,7*     3-4
OR   祭  ஬                       3      2-3
OUT  䨪஢                              3       2
OUT  ६                                 3       1
OUTS ப                                      5 + 4m     2
OUTS   ᫮                                 5       1
POP                                           5*      2
POP  ॣ                                        5       1
POP  ᥣ ॣ                             5       1
POPA                                               19       1
POPF                                                5       1
PUSH                                          5*      2
PUSH ॣ                                        3       1
PUSH ᥣ ॣ                             3       1
PUSH 祭                                       3      2-3
PUSHA                                              17       1
PUSHF                                               3       1
RCA  ॣ/  1                          2,7*      2
RCA  ॣ/  CX                      5+n, 8+n*    2
RCA  ॣ/  ᫮                   5+n, 8+n*    3
RCR  ॣ/  1                          2,7*      2
RCR  ॣ/  CX                      5+n, 8+n*    2
RCR  ॣ/  ᫮                   5+n, 8+n*    3
RET   ᥣ                             11 + m     1
RET   ᥣ,  祭  SP     11 + m     3
RET   ᥣ⠬                            15 + m     1
RET   ᥣ⠬,  祭  SP    15 + m     3
ROL  ॣ/  1                          2,7*      2
ROL  ॣ/  CX                      5+n, 8+n*    2
ROL  ॣ/  ᫮                   5+n, 8+n*    3
ROR  ॣ/  1                          2,7*      2
ROR  ॣ/  CX                      5+n, 8+n*    2
ROR  ॣ/  ᫮                   5+n, 8+n*    3
SAHF                                               2        1
SAL  ॣ/  1                          2,7*      2
SAL  ॣ/  CX                      5+n, 8+n*    2
SAL  ॣ/  ᫮                   5+n, 8+n*    3
SAR  ॣ/  1                          2,7*      2
SAR  ॣ/  CX                      5+n, 8+n*    2
SAR  ॣ/  ᫮                   5+n, 8+n*    3
SBB  ॣ/  ॣ஬                   2,7*      2
SBB  祭  ॣ஬/                 3,7*     3-4
SBB  祭  ஬                       3      2-3
SCAS ७ CX ࠧ                          5+8n       2
SCAS   ᫮                                 7       1
SEG  (८। ᥣ)                     0       1
SHL  ॣ/  1                          2,7*      2
SHL  ॣ/  CX                      5+n, 8+n*    2
SHL  ॣ/  ᫮                   5+n, 8+n*    3
STC                                                 2       1
STD                                                 2       1
STI                                                 2       1
STOS ७ CX ࠧ                          5+3n       2
STOS                                                3       1
SAL  ॣ/  1                          2,7*      2
SAL  ॣ/  CX                      5+n, 8+n*    2
SAL  ॣ/  ᫮                   5+n, 8+n*    3
SUB  ॣ/  ॣ஬                   2,7*      2
SUB  祭  ॣ஬/                 3,7*     3-4
SUB  祭  ஬                       3      2-3
TEST ॣ/  ॣ஬                   2,6*      2
TEST 祭  ॣ஬/                 3,6*     3-4
TEST 祭  ஬                       3      2-3
WAIT                                                3       1
XCNG ॣ/  ॣ஬                   3,5*      2
XCNG ॣ  ஬                        3       1
XLAT                                                5       1
XOR  ॣ/  ॣ஬                   2,7*      2
XOR  祭  ॣ஬/                 3,7*     3-4
XOR  祭  ஬                       3      2-3
   ਫ .  ᫮ IBM PC.

146818:   奬   AT, ᮤঠ  ॠ쭮  ६  
ଠ  䨣樨.

6845:  奬 ஫ ᯫ.

76496:  奬 ᨭ⥧ 㪠 PCjr.

765 (PD765):  奬 ஫ H.

8048:  ய .

8237:  奬 אַ 㯠   (DMA).

8250:  奬 㭨樮 .

8253:  奬 ணࠬ㥬 ⠩.

8255:  奬  䥩  ਥ.

8259:  奬 ஫ 뢠.

8087:  奬 ⥬᪮ ᮯ  PC, XT  PCjr.

8088:  ࠫ   PC, XT  PCjr.

80286:  ࠫ   AT.

80287:  奬 ⥬᪮ ᮯ  AT.

᮫ :   , ࠦ   ᬥ饭 ⭮-
⥫쭮  襣   (0000:0000),    ⭮⥫쭮  -
- । ᬥ饭   (⭮⥫ ).

᮫ न:   Kन, 㪠 ⭮⥫쭮 業-
ࠫ쭮  ,   ⭮⥫쭮 । ᯮ㥬 न
(⭮⥫ न).

᮫ ᥪ ᪠:    "㯮    ᮫⭮ ᥪ
᪠"  ⥭ ᥪ, 饣 ।  -
  ᪥.

K 㯠:   ନ  ᯮ  孨᪮ 㪮⢥
 MS DOS   㭪樨 - ..     ᪮-
 㭪権,   믮  뢠.

⢥ত:     /뢮,  騩,   
믮  㤮 ᭮ ⮢  믮 .

  ॣ:      ᯮ⥫  奬,
 㦨  ⢥ 㪠⥫    ᪮쪨 ॣ-
஢  奬,    ⢫ १ 
. ணࠬ   ᭠砫  ஢  ॣ,  뫠
 饣 ॣ   ॣ.
:   ।⢮ 㯠  । 祩  ,  
 㪠    ᮫⭮ ,  ⭮⥫쭮
ᬥ饭.

AND:   ᪠ ,  ன ࠢ 祭  
楯祪 ⮢   ⮩ ᭮ ᮧ  祭,  -
஬  ⠭ ⮫쪮  ,  뫨 ⠭  
祭 .

ANSI.SYS:  ࠩ ன⢠, ⠢塞   樮
⥬,    ᯮᮡ 믮  㭪樨  BIOS.   
ᯮ  ⨦ ணࠬ ᮢ⨬  設,
ᯮ騬 MS DOS, ⫨묨  IBM PC.

K  ASCII:  H   0  127, ᮮ⢥   
128 ᨬ ASCII. IBM  PC  ᯮ  ७   
ASCII, 騩  256 ᨬ.

⮢ 䠩 ASCII:  ᫥⥫ ⥪⮢ 䠩,  ஬
 ᫠ ।⠢    ᨬ  ASCII,   
ࠧ  ன    ⪨/ॢ ப     䠩
⬥祭 ᨬ ^Z (ASCII 26).

ப ASCIIZ:   ,   ப .

⠡ 樥:  ⭮襭 ᫠ 祪,   
   ﭨ  ⨪  ਧ⠫  ࠭  ନ
 饬 ன⢥.

ᥬ:  ணࠬ,  ८ࠧ   ⥪  ணࠬ  몥
ᥬ  設 .

  ᥬ:   ணࠬ஢ ᠬ  ஢, 
஬ ணࠬ  樨  ।⢥ ࠢ騥
ࠡ⮩ .

ᨭ஭ :  ᫥⥫  裡,  ஬ ६
 뫪 ᨬ   ६.

ਡ:  ࠪ⨪,  ਯ뢠  ன   .
K ᨬ ⥪⮢ ࠭  ਡ, ।騥  
梥, ⥭ᨢ   ..  ࠩ  ன   ਡ,
।騥    ࠡ뢠 , ࠢ騥  ப  
..      ਡ,  㪠뢠騥,   
묨, ⮫쪮  ⥭  ..

  ਡ⮢:   , , ᮤঠ騩 , ⠭-
騩 ᯥ樠 ࠪ⨪  ।,  ன  ⭮.
  ਡ⮢  䠩 ( ᪮  ⠫)  ।  
⮣ 䠩,  ⮫쪮  ⥭  ..    ᯫ
    樨 ᨬ  ࠭      ਡ⮢,
 ࠭ ଠ  梥, ન  ..

AUTOEXEC.BAT:    䠩,  ⮬᪨ 믮-
  㧪 ⥬.

B:   䨪, 騩 ᫮, ।⠢  筮 ,
ਬ, 10111011B. . ਫ .
 梥:   梥 ᯮ  ᯫ.   梥,
 ਭ  ࠭,   饭.

 樨:   , 믮塞   믮
ணࠬ. Hਬ, ⥪⮢  ।  뫠  
ਭ   ६,  ணࠬ ᯮ  ।஢-
.  樨  ࠡ   ᯮ짮 -
.

  :  訩  㯯 ᬥ ᮢ ⮢,  १
 ⢫   ਩ ன.

K 䠩:  ,  ᮤঠ騩  ᯨ᮪   ணࠬ DOS,
   ⮬᪨ 뢠  ⮬ 浪,   ஬
 ᠭ,  冷   믮   । -
묨 ࠬ.

  :  ᫮ ⮢  ᥪ㭤, ஥ ।  
.

BIOS:   ⥬  /뢮,   -
樮 ⥬, ﭭ ࠭饩   設.

    BIOS:     ,  稭   
0040:0000,  ன  BIOS  ࠭    ଠ  
.

⮢  :  K   ᫮ ᬠਢ   楯窠
⮢,   ,  ,  ࠭ ।-
  ଠ樨. Hਬ,  0-3  ਡ⮢ ᨬ-
  ᯫ ࠧ ⮢ ,  ஥ । ᭮
梥 ᨬ.

⮢ 樨:  ணࠬ 樨, 騥   騥
।  .

⮢ ᪮:   EGA   ࠧ   ,
 뢠 ⮢묨 ᪮ﬨ 0-3.   ० 16- 梥-
⮢   ᪮ ࠫ,  ⮬ 4 , ⭮  
।    (ॣ   । 
묨  ஬   ᯫ).   
᪮   易  楯, ࠧ    訥
᪮.

  ன⢠:   ன⢠,   뫠   ਭ
 ﬨ   .  ᪮  ⥫   
묨 묨 ன⢠.

 砫쭮 㧪:  K⪠ ணࠬ,  頥-
    ⠪ 樨,   뢠  ᪠  
।  㧪 ⥬.   ணࠬ   -
 㧨  樮 ⥬.

࠭:  । ࢠ   ,  䠩  ..  H-
,  ணࠬ ࠧ  , ࠢ묨   16-
࠭.   砥,   ᮫    祥 
筮   16.
K ᪠:   ᪠-,    ᪠-
  (    ⨨ ).

। 뢠:  ᮡ   㭨樨 ᯮ-
  ᫥⥫쭮 ᪨ 㫥.   ᨣ-
  ⮬,  ⤠ ⠭  뢠  裡.

:    ,  ⢮   ࠭ , 
  ।        㣮.   
ᯮ ன,      ᠬ  ⭮    ᪮
⥫  ᯫ.

 ७:    ⮢ ॣ 䫠 , 
 ᯮ 㭪ﬨ MS DOS  樨 訡.

CD:  "H⥫ 㦥". . DCD.

  楯:   EGA   ࠧ  4 ⮢ -
.   K  ꥤ     訥 ᪮,
  뢠   楯.

쭮 ன⢮:   ன⢮,  ஥ 뫠  ਭ-
      ᨬ, ⠪  ਭ.   ࠢ  
묨 ன⢠,   묨 .

 ⮬:  ணࠬ,  ᪠   㣠 ணࠬ
(த⥫)  ࠢ.

᪠  ।:    ,  ஬  ⠢-
   ,        㣮. 騥 
   殢 ﭭ    㪠⥫ ࠭ ⥪-
騥  ""  "墮".

K:  㯯 ᪮ ᥪ஢,  ࠧ ᭮ ,
 ᯮ  । ᪮ ࠭⢠.

K:   H  믮塞 権, ⠢  ணࠬ,  
⫨稥  ,    묨  믮  樨.  
,  뢠 ᫥⥫쭮 設  権,
 ந ࠭  ᥬ  ⥪ ணࠬ.

K ᥣ:    , ࠭ ணࠬ  (-
 ᥣ ࠭   ⥪).

ਡ  梥:  窨 ⮢, ࠭  ,  
। 梥 ।  窨    ᨬ  ࠭.  
஬  梥⭮   ਡ ᮢ   -
   ஢  梥.      PCjr  EGA ⭮ 
 ॣ ,  㦥  ॣ ᮤন  梥, 
 易  ਡ.

K 梥:  ᫮  0  15, ஥ ⭮    -
 梥⮢ ᯫ.   ᯫ EGA, ᮥ  -
襭 祪 ,   64  梥 (0-63).

COM:   ᯮ塞  䠩,  ஬ ਢ離 㦥 믮 
⮬   㦥 ࠢ쭮  ᠭ  䠩 ।  -
㧪.
K  ப:  ப  ࠭ ᯫ, ਭ  ࠢ-
 ଠ, ⠪   ப, 稭   -
樮 ⥬.

K㭨樮  뢠:  ⭮ 뢠,  뢠
஬ ᨭ஭ 裡.    ந室  祭
।  ᨬ   裡,  㯨 ६ ।-
 ᫥騩 ᨬ  ..

K:  ணࠬ,  ८ࠧ  ⥪  ணࠬ  몥
᮪ ஢  䠩, ᮤঠ騩 ᯮ塞 設  (,
  ஬ ,  ⥬ ᯮ -
஬).

CONFIG.SYS:    ᯥ樠쭮 䠩,  ⥬  ᬠ-
  㧪.    䠩  ᮤন  ଠ  ࠬ
⥬   ࠩ ன,     ⠭,
  ⠭ ॡ㥬 䨣 ⥬.

ࠢ騩 :  .  ࠬ஢.

ࠢ騩 :      32 ᨬ   ASCII.
  筮 ᯮ ࠢ 㤮,   ஢-
 .  H    㯮ॡ묨  ࠢ騬  
  ⪨  ॢ ப.

ࠢ ப:  ப ᨬ, ࠢ  㤮.
ࠢ騥 ப       ⮪ , 뫠
  ਭ  .   稭   ᯥ樠쭮  ᨬ,
㪠뢠饣   ᯥ樠    (筮,  ᨬ ESC, ASCII
27).

CPU:   ࠫ ,  믮 樨,  -
⠢騥  ணࠬ.    IBM PC 業ࠫ -
஬  奬 8088,  ᪫祭 PC AT,   -
ண ஬ 㦨 奬 80286.

CRC:  . 横᪨ ஫ ⭮.

K᪠ 訡:  訡 ன⢠,   쭥襥
믮 ணࠬ .   ⮬ 뢠 ࠡ稪
᪨ 訡 樮 ⥬.

ࠡ稪 ᪨ 訡:  뢠 ⥬, ஥ -
    ᪮ 訡.    
 ᢮ 楤 ⠭  ᡮ 㤮.

CR/LF:   ⪨/ॢ ப.   ᨬ ᯮ-
,  ⮡ 맢 ॢ   饩    
砫 ᫥饩 ப.

CRT:  ஭-祢 㡪, .. ᯫ.

CTS:  ⪠ 뫪.     㭨樨, -
騩,    ⮢  । .     
 楤 ⠭ 裡.
騩 :      䠩,  騩  128 ᥩ, 
  뫠  㯥  䠩 ⮤ ࠢ饣 
䠩. . ⥪騩  .

騩 ⠫:  K⠫, 騩   ॢ ⠫, 
஬  ⮬᪨   䠩 樨,   
,  ப   ᯥ䨪樨 䠩  㪠뢠 㣮.

騩  :   㯥   䠩 ⮤ ࠢ饣
 䠩,  ࣠    128 ᥩ.  騩
      ⥪饬 .  Hਬ, ⥪騩
    אַ 㯠  128 㤥 ࠢ  0,
᪮  㤥 ࢮ      1 (  -
   , ⮬   ஬ 128 㤥 129-  
䠩,  1 -  ,    ᫥   0 
 127).

᪨  ஫ ⭮:  ⮤ ஢ન 訡,  ஬
 ।     ᫥  ᫥  ⥬᪨
१;  ᫥ ਥ ᫥   ࠢ  
।, ⮡  㢥७,   ।  ᪠-
.

:     ᪮  ⥫ 樫஬  뢠  㯯
஦, 室   ﭨ  業 ᪠ 
᪮, 饭  ⥫.

  :   , ᮤঠ  ணࠬ.  
몥 ᥬ    㪠뢠 ॣ DS.

 ७ :  , ᯮ㥬   㯥  䠩-
    ⮤ ࠢ饣  䠩,   ᮤন
 ।     ᪠.

DB:  ନ 몠  ᥬ,  㪠뢠騩,    ꥪ  
 ࠧ 1 ,    ப   ⮢
.

DCD:  㦥 ⥫ .      㭨-
樨, 騩,  ⠭   㣨 .

DD:   ନ  몠 ᥬ, 騩,   ꥪ  
  4 .

DTA  㬮砭:    ७ , ࠧ஬ 128 ⮢,
  뤥  ணࠬ  稭  ᬥ饭 80H
 䨪 ணࠬ ᥣ.

࠭⥫:  樠 ᨬ, ࠧ騩  .

ன⢮:   , ன⢮ 뢠  㤮-
, ஥ ࠭, 뢮  ࠡ뢠 ଠ, ⠪
 ᪮ ⥫, ᯫ  ਭ.

ࠩ ன⢠:  ணࠬ 楤,  ࠢ -
, ⠪  ᪮ ⥫  ਭ.
  ன⢠:  H砫쭠  楤  ࠩ  -
ன⢠,   ன⢮.

ࠡ稪 뢠 ன⢠:  ᭮  楤 ࠩ-
  ன⢠;  ᮤন , 믮騩 ᭮  㭪樨
ࠩ.

⥣ ன⢠:    楤 ࠩ ன⢠, -
뢠  ࠩ    ,    
ࠬ஢,  ᮧ ⥬  ࠢ ࠩ஬.

אַ    :   ᮡ  ⢫  祭  ண
    ਩ ன⢮  .     ᮡ
  ᪮ .  ⮤ ᯮ ᯥ樠
奬 (   PCjr).

אַ ⮡ࠦ  :  . ⮡ࠦ  .

DMA:  . אַ   .

 ⥬:  , 騥  砫  ப,
ਬ, A>  B>.

⥫  ⥫:   塠⭠  ப,   ᪮
⥫,   A:, B:  ..

DSR:  ⮢  .  㭨樮  
, 騩,   ⮢.

DTA:     ᪮.   , ᯮ㥬   
᪮,   ᯮ짮 ⮤ 㯠 ࠢ饣  䠩-
.

DTR: ਥ  ⮢.     㭨樮  
, 騩,   ⮢.

DW:   ନ  몠 ᥬ, 㪠뢠騩,    ꥪ  
  2 .

:      ஢ન.  Hਬ,      
筮  뤠    ࠭, 뤠     뢮  १
㭨樮 .

室:   " 室" 筮  ⭮   ⠭ ॣ஢
,     ᤥ   믮  㭪樨
樮 ⥬.

ப 㦥:  ப,      -
権,    ⥬ ᫥  믮  ணࠬ.   
 ᮤঠ 䨣樮 ,  짮⥫,
⠪  BUFFERS  BREAK.

EOF:  饭  " 䠩".

K 訡:  K , 뢠 樮 ⥬  
樨 । 訡筮 ᫮.
ࠡ⪠ 訡:  K, 騩 ணࠬ । ࠢ
ᯥ樠쭮  楤 ⠭  ᡮ  
᪮ 訡.

Esc-᫥⥫쭮:  ࠢ  ப, 稭  ᨬ-
  Esc  (ASCII 27).  Hਬ, 設⢮ ࠢ  
ਭ 믮   Esc-᫥⥫쭮⥩.

EXE:  ᯮ塞 䠩,  ॡ ਢ離  㧪. H
    ணࠬ   ⠭     ,  
⭮      .   EXE-䠩   ,
  ᮤন ଠ  ⮩ ਢ離.   䠩  -
    ॡ     ᪥, 祬 䠩
⨯ COM.

EXEC:  㭪 樮 ⥬,  ணࠬ -
  ணࠬ.   ⠪ 㦠 ૥.

K 襭:   K  ।  ᮬ  ⮬ 
த⥫.  Hਬ,    ணࠬ ᪠ ,
  襭      ।    ⮬ த⥫ 
襭  ⮬.     ।  ணࠬ-
⮬.

७ :  K  ,  ᯮ㥬    䨪樨
  ⮩   ( 樨 ),   ன  
ᮮ⢥饣 ᨬ   ASCII, ⠪  㭪樮
  樨  蠬 Ctrl  Alt. ७ 
    , 祬   ᥣ  祭
ASCII 0, ⮡ ⫨     ASCII.

७   訡:  H稭  ᨨ 3.0 MS DOS   -
஡ ७   訡      
訡.    ᮮ  ⮫쪮  訡,      ⨯,
   㤮   ᯮᮡ ⠭.

७  ࠢ騩    䠩:   ࠢ騩   䠩,
騩  筮  7-⭮    ,  ⠭饥
ਡ 䠩.

 ᥣ:   ,   㪠뢠 ॣ
 ES.  ⠭ ES  DS (ॣ ᥣ ) 
ᯮ ᮢ⭮   ७     
 .

FAT: . ⠡ ࠧ饭 䠩.

FCB: . ࠢ騩  䠩.

:   㯯 ⮢  ⮢, ⢥  ࠭  ।-
  .

 ࠧ饭 䠩:   ,     ᪥,
  ࠭ ଠ  㯭 ᪮ ࠭⢥   
ன 뢠   ᪠  䠩 ⢥.
ਡ 䠩:       ⠫  䠩,  ।饥
 䠩  饥  , , ⮫쪮  ⥭ 
..

ࠢ騩  䠩:    ࠬ஢, ᮧ ணࠬ
  ,  ࠭ ଠ樨,  ॡ ⥬ 
ࠡ  䠩.

⮤ ࠢ饣  䠩:  H  㭪権 樮 -
⥬, 騩   䠩 ।⢮ ࠢ饣  
䠩.  ⮤ ⠫ ॢ訬 ᫥  ⮤ 㯠 
ᯮ짮 ਯ 䠩.

ਯ 䠩:   ᨪ  㣮 몥 ᮪ ஢ 
ਯ஬ 䠩   ,    䠩
뢠, ..  #1  #3.

H  䠩:   K , 頥 ⥬,   䠩
뢠   ᯮ짮  ⮤  ਯ  䠩.  
  ᫥⢨ ᯮ  㪠 䠩   ᪮
. H ।।   -
, ਭ  ..

⮤  ਯ 䠩:  ⮤ 㯠  䠩   ᯮ짮-
  䠩.   ⮤ ࠪ᪨ ᭨ ࠭ ᯮ-
㥬 ⮤ 㯠   ࠢ饣  䠩.

  㪠⥫:   ६, ࠭ ⥬   
⮣ 䠩.  㪠⥫ 㪠뢠    䠩,
 ன 㤥 믮 ᫥  ⥭  .

:   -  ६,      祭,
 몫祭, ᮮ   ⮬,  믮     ।
᫮.      16- ॣ  䫠,   ஬
⤥  㦠    樨  ࠧ  ᯥ⮢ ࠡ
.

᭮  梥:   ,  ᨬ   ᪨  ꥪ
뢮  ࠭.

訡 ࠬ:  訡     ᫥⥫쭮  裡,  
⮪   ᨭ஭, ..   ,   ⭮,
⮢  ⮯      ࠢ쭮 ᫥⥫쭮-
.

㭪:   몠 ᮪ ஢ 㭪樥 筮 뢠  -
楤,  ८ࠧ        .  H
஢  樮  ⥬  ᫮ 㭪 뢠    
楤 ࠡ⪨ 뢠.   筥,  । 뢠
 믮 ᪮쪮 楤,     뢠
㭪樥  ⮣  뢠  (  㭪樨  ᥣ 頥 
ॣ AH  맮 뢠).   㭪樨   ᮤঠ
 㭪権.

 ᨬ:     ᨬ  ?  *,   ᯮ-
   ⥬  㪠 ।  ᨬ   
䠩.
H:  䨪, 騩 ᫮, ।⠢  ⭠-
 , ਬ, 0D3H. . ਫ .

㪮⨥:    ।।묨 ᨣ   -
ன⢠  ⠭ 裡  .

⭮  뢠:   뢠,  뢠  㤮,
..    ਩ ன, 奬 প  
ᠬ ஬.

 ᤢ ࠭:  ⮤  ⨪쭮 ᤢ ࠦ
  ᯫ, ᭮   ⮢ 窨 ,
   ᤢ ᮤন .

:   ࠬ஢, 頥  砫 ணࠬ, ࠩ-
  ன⢠  㣮 ᨢ   .   
ᮤন ଠ     ,      -
짮.  Hਬ, 樮 ⥬ 頥 256-
 । 砫    㦠  ணࠬ - 䨪
ணࠬ  ᥣ -  ᯮ ᮤঠ   ଠ-
  ࠡ  ⮩ ணࠬ.

 䠩:  ,    ᢮ 䠩 ⠭-
    ਡ⮢.   䠩  뢮   뢮
⠫ 䠩.

⠭ ࠩ  ன:  ࠩ ன⢠, 
 ⥣஢  ⥬,    ᯮ짮
ᯥ樠 ।⢠ ஢ન 訡  ࠢ騥 ।⢠.

稪 :    ,   㪠뢠  ண-
ࠬ ,  㤥 믮 ᫥饩.  ⬥-
砥 ᬥ饭   ᥣ.

:  ணࠬ,    ॢ ⥪ ணࠬ 
 樨  ࠧ,  ᯮ . ࠬ
 ணࠬ BASIC.COM  BASICA.COM.

뢠:  뢠   ணࠬ 楤,  
뢠   ᯮᮡ.   뢠  樨
㤮, ਬ,      ,
    ᮡ⨥   ࠡ뢠  ஬,  
믮 ॡ㥬 ⢨   頥  ࢠ ࠡ.
ணࠬ  뢠 㦠  믮 ⠭ ॡ-
⥩ ணࠬ, ⠪  뫪 ᨬ  ࠭  ਭ-
.    ।⠢ 樮 ⥬  稭 ࠡ-
,  ணࠬ    .

ࠡ稪 뢠:   楤  뢠.  ନ 
 ᯮ   뢠.

 뢠:  . .

IOCTL:  ࠢ /뢮.  堭, ।⠢塞
⥬,  ணࠬ  ⢮  ࠩ஬ -
ன⢠, אַ 뫠   ࠢ騥 ப,   
  ⮪ , 뫠 ࠩ ன⢠.
IRQ:  饭  "    뢠".  ᯮ 
뫪  ᪨㥬  뢠.

  :  15-ᨬ쭠 横᪠ ।,   
뢠  頥  ᨬ.

뢠 :   ⭮ 뢠, 뢠, 
     ᪠.  ८ࠧ
᪠-,  뤠  ய஬  ,  , -
㥬 ணࠬ  ⠢     .

  :   EGA  4  ॣ -
,  ࠭ 4   ,  ⭮   ।
 . K  ⠥  ,  ॣ
 ,         , 
ᮤন  ॣ஢    뫠    ᮮ⢥騥
祩 .

K騪:  ணࠬ,    ꥪ -
  ணࠬ,   ࣠   ⠪ ࠧ, ⮡  㫨
 ⢮.  ணࠬ, 騥   -
   ᪮, ᪮ 騪 ᮧ  ⠪
 ਢ離.

᪨  ᥪ:     ⮣, ⮡ 㪠뢠 ᥪ
᪠  "஭ , ஦ , ᥪ ", ᯮ -
   ᥪ஢,  ।  ᥪ   
᫥⥫쭮 㬥樨  ᥪ஢,  稭   魥 ࠭
᪠.

LSB:  訩   訩 .

設  :  ᫮ ,  ᯮ㥬  ஬.
Hਬ,  INT    CD,  ᫥⥫쭮
CD 21 ਢ  ⮬,   믮 뢠 21H.

設  :      ஢  ணࠬ஢,  
ணࠬ  樨  ।⢥     ,
ᯮ㥬  ஬.  ணࠬ஢  몥  ᥬ
ਢ  ⥬  १⠬   訬 㤮⢠   ᮧ-
     ⨯ MOV  TEST.

ணࠬ    設  몥:  ணࠬ,  ᠭ  
몥 ᥬ,  ⥬ ᥬ஢  祭  ண-
ࠬ,  ᠭ  몥 ᮪ ஢.    ணࠬ
筮 ᮧ  権,     
믮 祭 .   ᨬ  ⮣, ᯮ 
࠭  , 設     ᪮-
   ணࠬ, 祭  ணࠬ ⤥묨 ப  
⤥쭮 㦠    ᪠.

K :    ᪠-,       ⨨
 ( ᢮ 뤠,  ᮮ⢥ 
᪠).
ન஢:  ନ,  ᯮ㥬  ᫥⥫쭮 ᨣ,
   ᮪ ஢, ..  ࠢ ᪮ 1.  -
, ,  ᨣ ᨭ஭  裡 ન஢  ஬-
⪨ ६  ।祩 ⮢ .

᪠:  窠 ⮢, ।   ⮢ ன 楯窨
 ⨢묨.  Hਬ, ।  뢠
    ⠭ ⮢  ॣ ᪨  奬
஫ 뢠.  ⮬  뢠 4 ᪨ 楯-
 ⮢ 00001000B.

    㧪:   砫쭮 㧪   ⪮
᪥.   ᮤন ⠡  ࠧ,  㪠뢠  ࠧ
ࠧ ᪠. K  ࠧ ᮤন   砫-
 㧪,  樨 㧪  ᮮ⢥饩 -
樮 ⥬.

⢥ :  ⢥ ⥬     ᯮ짮-
 ணࠬ.

ࠢ騩  :  16-  ࠬ஢, ᮧ
⥬    砫   , ⢥ ண  
 㭪権 । .

⮡ࠦ  :   饭  ,  뢮  ᯫ,
।⢥   (㤠  ஥  ࠭),
 ⮣, ⮡ ᯮ짮  㭪樨,  ।⠢塞 -
樮 ⥬  몮 ᮪ ஢.

࠭⢮  :   㥬 ,  ன  -
   .    ய  8088 㥬
⠭⢮ ࠢ ਡ   ⮢.

MSB: 訩   訩 .

ꥪ  :  , ᮤঠ騩 設 ,  ஬  
 ⠭ ⭮⥫ .   K騪 ࠡ뢠 
ꥤ ꥪ , ᮧ ᯮ塞 䠩 ⨯  EXE
 COM.

:  ᪠ ,  ன ࠢ 祭 
楯祪 ⮢  ᮧ  祭,  ண ⠭
 ,  뫨  ⠭      -
⮢.

૥:   ணࠬ, ࠭  ᪥   ,  
 ॡ   ணࠬ.   㦠   -
   ⥩ 뢠饩 ணࠬ.

९:  ९ ந室,     
ॣ  - 㯫   ०, 祬 
뫨 ࠡ⠭.

࠭:    ࠡ  ᯫ ࠭楩 뢠   -
, ࠭     ࠭.   ४
ᯫ  ࠭栬,  ⥬ ⮡  뢮 ᭠砫 ᮤন-
  ࠭,  ⥬ 㣮. ନ ࠭  ᯮ-
   祭 256-⭮ ࠧ .
:  H 梥⮢, 㯭  । ० ᯫ.

K :  H, ᮮ⢥騩 । 梥   -
㯭 .

 :    16- ॣ஢ EGA  PCjr, 㪠뢠騩
梥,    㤥 뢮  ࠭,   ᮮ⢥騩
 梥 㪠  .

ࠣ:  16-⭠  ,   稭  -
 筮 饩  16.

H ࠣ:  H, ।騩   , ᭮-
  16- . Hਬ, ࠣ  2 ⭮-
   16 ⠬    㪠⥫ 㪠뢠  
ࠣ,   㪠뢠  17-  .

ࠬ: ᫮, ᯮ㥬  ᯥ䨪樨 ࠡ ன⢠,
㭪樨  樮 ⥬   몠  ணࠬ஢-
.

 ࠬ஢:   㯯  ६,  ᮧ    
࠭ ଠ樨, ᯮ㥬 ன⢮  㭪樥 -
樮 ⥬.

 த⥫:  ணࠬ, ᯮ  ணࠬ (-
 ⮬).

 ⭮:   ⥫  (9-)  , 塞  
 , ⮡ ஢  訡  ।. 
⭮  ᮥ  ⠪       ᫥⥫쭮
㭨樨.

⠪᪨  :   ⥪⮢ ப  ⠢-
騥 .  MS DOS , ஠஢  ଠ  
ப, ଠ஢   ᯮ짮 㭪ﬨ  㯠
 䠩.

:   ⪮ ᪠.   ⪨    ࠧ
 ஠,  ⥬ ⮡  ᯮ짮 ᪮쪨  樮-
묨 ⥬.

 ࠧ:  , ᮤঠ   㧪 
⪮  ᪥.    ᮤন ଠ   ࠧ   
 ࠧ.

ப :  ப, ᯮ㥬  㪠 䠩  㯥
⮤  ਯ 䠩.  ப    ,    
㯥   ஢ ⥬.   稭  
⥫,   ᮤঠ  ⠫, ࠧ塞  -
⭮ ᮩ ⮩    ⮬ ASCII 0, ⬥-
騬  . ᨬ쭮 ⨬  ப 63 .

᪨  न:  Kन 窨  ࠭ ᯫ, -
뢠   孥 㣫,   न 0,0.
. ⠪ ஢ न.
窠:  窠, 뢮  ᪮ ०.  㬥樨 IBM
 뢠 ⠪ "pel".

⥫:  ६,  ᮤন  㣮 ६.

:  ࠢ ਩  ன⢮,    ﭭ
஢ન        ,    ந  
.

:  ,  ஬ ந室  묨  -
஬  奬 প.

  A ( B,  C):     ॣ஢, १  
ணࠬ 砥    奬  䥩   ਥ
8255.

  :  ᫮    0  65535, ஥  
.   ⮢ ⤥  ᮢ .    ⠬
⢫   権 IN  OUT  몥 ᥬ 
INP  OUT  ᨪ.

뢠 ਭ:  ⭮ 뢠,  ஥ ந室,
    ਭ 뫠 ᨣ "  ".   楤
뢠 筮 뫠    ਭ  ᫥騩  뢮
    頥 ࠢ.   ࠧ    뢮
䠩     ६,    㣮 祩.

䨪 ணࠬ ᥣ:   256-  ,  
⥬  頥  । ᯮ塞묨 䠩    㧪  
.   ᮤন ६, ᯮ㥬 MS DOS  ࠢ-
  ணࠬ,    ⠪   ࠢ饣   䠩  
 ७ .

⮪:  ⥬  ࠬ஢    ଠ⮢  , ᯮ㥬
ன⢮.

PSP:  . 䨪 ணࠬ ᥣ.

  אַ  㯠:    ᥩ,   뢠  
뢠     䠩 אַ 㯠  -
  䠩 ⮤ ࠢ饣  䠩.

H    אַ 㯠:  H,       
אַ 㯠 ࠢ饣    䠩.  ᫥騥 䠩
樨  ८ࠧ     ⥪饣   ⥪饩
.

樨  ॠ쭮 ६:  ணࠬ 樨,  -
 믮  । ,   ⮣,  
 ᯮᮡ  믮.  ⨯, ᨣ ॢ
 ஡ ᯮ ࠡ  ५쭮 ६.

:     , 㪠 ࠧ,  騩  楩
 묨    䠩.

H :  ᫮, ।饥    䠩, -
뢠  0.   䠩, ᮤঠ饬   10 ⮢,  -
  5 ⭮  50-59  ⠬  䠩,  ᫨  
訬 ࠬ  .
:   奬,  ன  ࠭    
ந 樨.  IBM PC  設⢮ ॣ஢  ࠧ-
  8   16 ⮢.      祭  
  ࠭ ,     ᪫뢠,  㬭    ..
 奬 ࠢ ᯫ 樠 묨,
।騬 ࠪ⨪ ᯫ.

⭮⥫ :   ,   㪠   ᬥ-
 ⭮⥫쭮 ன । 窨 . Hਬ, 
COM-䠩 ६  㪠뢠  ᠬ  ⭮⥫쭮 砫
ணࠬ.

⭮⥫ न:  Kन, ।塞  ⭮⥫쭮
᫥ ᯮ㥬 न.   ⮬ 砥 3,5 㪠뢠 "3
ࠢ  5 ",  -3,-5 - "3   5 ".

ਢ離:   , 믮塞 ⥬   㧪  ணࠬ
⨯ EXE. ⥬     ( ᥣ⮢) 
   뢠  ⠫ .     
     ⠭  ࠭  㧪 ணࠬ,
᪮  ணࠬ    ⮣ ६ ⭠.
ணࠬ ⨯ COM  ॡ ਢ離.

  :    ࠬ஢, ᮧ  ⥬  
ࠢ ࠩ஬ ன⢠.

⭠  ணࠬ:   ணࠬ,       ᫥
襭. ⥬ ।࠭    㣨 㦠묨
ணࠬ,        ᮤঠ騬  
ணࠬ 楤ࠬ १  뢠.

RTS:      뫪.    㭨樮    
, 㪠뢠騩,      ,  ⮡  뫨 ᫠
.

:   ࠦ "  ..."  ⭮   ଠ樨,
 㤥 ᮤঠ  ॣ  ᫥ 믮
㭪樨 樮 ⥬.

RI:    .      ⮮⢥稪  
㭨樨,  ᮮ頥,    ⥫䮭,   易
, .

ROM-BIOS:  . BIOS.

K୥  ⠫:  ࠫ ⠫ ᪠.    ᯮ  
䨪஢   ᪥.     ᮤঠ ᯨ᮪ 䠩,
 ⮬  㪠⥫  ⠫.

-:  K ᫮, 뫠 ய஬  
8048 奬 䥩  ਥ 8255 ( ⭮),
஥ ᮮ頥    뫠   -
. 뢠   ८ࠧ ᪠-   ASCII 
७   ⠭  -४⥫.

:     , ࠧ஬ 64K, ᮧ   ࠭
,    ⥪.     ᥣ  ࠢ  ࠭
16- , ᪮   砥 㬭  ᮤন
ᥣ⭮ ॣ  16.
 :   ,      ᥣ⭮  祭  
ࠣ.

 ॣ:     ॣ஢ , 㪠-
騩  砫   ᥣ  . 祭 ⮣ -
 ⮬⨥᪨ 㬭  16,  ⥬ ⮡  㪠뢠 
  16-  ࠭  ⭮  ᭮  ࠭⢠
.    ᥣ ॣ஢ CS ( ᥣ), DS
(ᥣ ), SS (ᥣ ⥪)  ES ( ᥣ).

⭮ 祭:  ᫮,  ।饥      
16- .  ,    ࠣ.

SETBLOCK:   㭪 樮 ⥬,   ᮪頥  
㢥稢  , ⢥  ணࠬ.

ணࠬ 뢠:  뢠, 뢠 樥 INT.

 ணࠬ:  室  ਠ ணࠬ,  ⮬   
룫廊    ⮣,   뫠 ࠭᫨஢,  ᥬ஢
 ஢.

⥪:    ,  ᯮ㥬  ணࠬ   ६
࠭ . ᫥ , 頥  ⥪, ࠥ
㤠 .   ⥪  , 祬  ६.

 ⥪:   , ⢮  ࠭ ⥪.

⮢ :     ᫥⥫쭮  裡 ⮢  ।-
  ᫮ .  ⮨  㫥 , ⬥-
饣   ન஢  ﭨ  (ਨ ), ஥
  ६  ஬⪠  ।祩 ᨬ.

H砫  :   ,  ண 䠩 뢠
 .   ⠫ 䠩 㪠뢠  砫 ,
 ⠡ ࠧ饭 䠩 ࠭ ଠ  ᫥ -
, ᯮ㥬 䠩.

H砫쭠  ப: ப  ᨬ,  ன 稭
ࠦ .  Hਬ,    ஬ ᯫ ப
⥪ ⮨   ⮩  14 ப,   ஭㬥-
  0  13.   筮     砫쭮 ப -
12,  筮 - 13.

 :  祩 , ᮤঠ 楯 ⮢, 뢠-
 ⥪騩  ன⢠.

 :   /뢮, ᮤঠ騩 楯 ⮢,
뢠 ⥪騩  ன⢠.

⮯ :   ᫥⥫쭮 裡 ⮯  ᫥ 
 ᫮  .    ॢ  㭨樮   
ન஢  ﭨ  ⠢   ⮬ ﭨ  -
쭮 ६, ஥   ன,  ०  祬  ᫠
᫥饥 ᫮.

K筠  ப:  ப  ᨬ,  ன  砥
ࠦ . . 砫쭠 ப.
⠫:  K⠫,   祬    ⫨砥  ୥
⠫,  ᪫祭 ⮣,   ࠭  ᪥  䠩,
   ᮫ ᥪ  ᪠.  K୥ ⠫  ᮤ-
 , 㪠뢠騥  ⠫,  ,  ᢮ ।,
 ᮤঠ , 뢠騥 㣨 ⠫.

㭪:     ᪮쪨  楤,    믮-
  㭪樥 樮 ⥬.   ६  
㭪樨 ᥣ 頥  AH,  㭪樨   
AL । 믮 뢠.

奬 প:    奬,  뢠
  㣨 ﬨ   譨 ன⢠.
H ᫮ 稭  ᯨ᪠ 奬 প, 㦤
  .

஭ :  ᫥⥫쭠 ,  ன ਥ 
। ⠭樨 뫠  ਭ ᨣ  ண ᨭ-
 ᪮.

⥬ : K⠫, 騩  । -
,    । ࠡ  னl  ⮬  ᫥  
奬 ⠩ 8253.

⥬ 䠩:   樠  ,  ᢠ  䠩 -
।⢮   ਡ⮢.   ⬥砥 䠩, 騥  
樮 ⥬.

ୠ:       83        1
AAS                                                 4        1
ADC  ॣ, ॣ                               3        2
ADC  ॣ,                            9(13) + EA   2-4
ADC  , ॣ                          16(24) + EA   2-4
ADC  ॣ, 祭                              4       3-4
ADC  , 祭                         17(25) + EA   3-6
ADC  , 祭                          4       2-3
ADD  ॣ, ॣ                               3        2
ADD  ॣ,                            9(13) + EA   2-4
ADD  , ॣ                          16(24) + EA   2-4
ADD  ॣ, 祭                              4       3-4
ADD  , 祭                         17(25) + EA   3-6
ADD  , 祭                          4       2-3
AND  ॣ, ॣ                               3        2
AND  ॣ,                            9(13) + EA   2-4
AND  , ॣ                          16(24) + EA   2-4
AND  ॣ, 祭                              4       3-4
AND  , 祭                         17(25) + EA   3-6
AND  , 祭                          4       2-3
CALL  楤                             23        3
CALL  楤                             36        5
CALL ᫮ 㪠⥫                    29 + EA    2-4
CALL ᫮ ॣ 㪠⥫                     24        2
CALL ᫮ 㪠⥫                57 + EA    2-4
CBW                                                 2        1
CLC                                                 2        1
CLD                                                 2        1
CLI                                                 2        1
CMC                                                 2        1
CMP  ॣ, ॣ                               3        2
CMP  ॣ,                            9(13) + EA   2-4
CMP  , ॣ                           9(13) + EA   2-4
CMP  ॣ, 祭                              4       3-4
CMP  , 祭                         10(14) + EA   3-6
CMP  , 祭                          4       2-3
CMPS ਥ, 筨                           22(30)     1
CMPS (REP) ਥ, 筨              9 + 22(30)/ 1
CWD                                                 5        1
DAA                                                 4        1
DAS                                                 4        1
DEC  ᫮ ॣ                                2        1
DEC   ॣ                                3        2
DEC                                      15(23) + EA  2-4
DIV   ॣ                              80-90      2
DIV  ᫮ ॣ                            144-162      2
DIV                                 (86-96) + EA  2-4
DIV  ᫮                            (154-172) + EA  2-4
ESC  祭,    祭,  
஬ ⠭ ⮫쪮   ,     ⮫쪮  
ࠢ 祭  ⠭.








