(c)  騭, ᪢

ZXNet : 500:95/462.53
E-mail: bestview@mtu-net.ru
WWW   : http://www.ivr.da.ru

               TR-DOS:    訡?
               

("ZX-" 5-6/1997)
 ᫥ ।஢: 12.11.2002.

     㤨, ᫨ 㧭, ᪮쪮 ணࠬ  ᯮ
訡  ࠡ  ᪮, ࠢ쭮 ᯮ ,  ⠪
  뢠   . 㬥, 
ᠭ ᮡ⢥ ணࠬ ⠪ 権 ᫥ ,
   ⠪- .   ⮬,  ४⭠ ࠡ⪠
訡 ⠭    ࠡ  
ப஫஬ ᪮ 䥩,   㯭  
. ᬮ  , 񦭮 ணࠬ  ⥫쭮
㢥, ᫨ ᯮ짮   묨 㭪ﬨ TR-DOS
ᯥ樠 楤  ᯮ 訡 権.

     ⮩       ᠬ ࠭
訡 -뢮 - ⢨ ᪠  ᪮.  㤥
᪠ ᪮쪮 ᫮  אַ ணࠬ஢ 93  
ணࠬ, ஫ ᬥ ᪠.

    ⭮,  । 砫  ᪮ 樨,
易  ⥭   , 室, ⮡ 
 ⠭  ᪮   ᪮ 뫠 . ᫨
 ᫮  믮, ணࠬ (᫨  ࠬ⭮
ᠭ) 筮 뤠   ᫥ ᮮ饭:

  - No disk.
  - Disk not present.
  - Disk not ready.

    樠쭠 楤  ।  ᪠ 
᪮ 뫠  祭 . ਢ    
ਬ஢  ᯮ짮: ᫨  ணࠬ ᯮ
 ⥬ 㭪権 TR-DOS   ⢫
墠 訡,     ( ⭮, 
⢨ ᪠)  ந   ( 祭
⥫쭮).  ᫨   㪠 楤 㦨
⢨ ᪠   맮 ,  
 ᫥⢨ (筮, ᫨  ந -
㣮 訡).

    ᬮਬ ᪮쪮  ᯮᮡ ॠ樨 ⠪
楤:

1. ஡㥬  - ᥪ (⢥,  
    맮  ⥬ 㭪権,   אַ
   ணࠬ஢ ஫).   ⠭ ଠ
    , ⥭  ஢, ᪠,  
   .  砥 㤠 ⠥,  ᪠ .

    ⪨: 㤠筮 뢠 ᥪ   , 
 .   ,  ᥪ  ᠭ 
訡,  ᅪ  ⠪ ஬    ஦ (..
 饬 砥 ଠ ᪠   ந).
    ⮨⢠:  ࠡ  ᪮ 䨪஢ ଠ 
ᯮᮡ  室.

2.     祭 
   ᥪ.  砥 㤠 ⠥,  ᪠ .

    ⪨:  饬 砥    
ଠ஢,  ⮬ 祣   㤠,  
稬  १.
    ⮨⢠:  ᯮᮡ    ଠ஢
᪠  筮   ॠ樨.

3. ᯮ㥬 ॣ ﭨ ப஫.

    ० 祬   ⮨⢠  ⪠ ⮣
⮤, ᯮ,  ⠪ ॣ ﭨ    㧭
  .

     ﭨ ࠦ ४⭮  , 
⠪ ﭨ ப஫   믮.   
 㪠뢠  । ࠬ  易  믮
⭮ .  믮  ⠭ 
樮஢  ॣ ﭨ  ᫥饥
祭:

  0 - ,  믮 .
  1 -  .
  2 - ⭠  室  室 .
  3 - 訡  ஫쭮 .
  4 - 訡 樮஢.
  5 - ⭠  室  ࠡ祬 .
  6 -  .
  7 - 㪠뢠  ⮢ ᪮  믮 .

      ᮢ    ⮩  ॣ
ﭨ, ⮬ ਬ   ஡.

    ᫨ ᬮ  ⨤ ᪥,  㢨
讥 ⢥⨥  業,  冷   - 쪮 㣫
⢥⨥   ᪥  ⢥⨥  襣 
 ᠬ ⭮ ᪥.  ⠪ 뢠 ᭮
⢥⨥, ஥ 㦨  ਥ樨 ⭮ 
᪮  ᪥.  ⢥     ᠬ ᪥
ᮢ (  ந室    ᪠),
஫ ⠥,  ⭠  室  砫
஦.

    祭 ࢮ  ॣ ﭨ ।
ﭨ ᭮ ⢥:

        Ŀ
                      祭 ࢮ  
        Ĵ
         ᪠ .                      1          
        Ĵ
          ,                                 
         ⢥               1          
           ᠬ ᪥                           
         ᮢ.                                 
        Ĵ
          ,                                 
         ⢥               0          
           ᠬ ᪥                           
          ᮢ.                              
        
                           . 1

    ⮩  ॣ ﭨ ࠦ ﭨ १ 
 :

          Ŀ
                     祭 ⮣  
          Ĵ
           ᪠ .                  0           
          Ĵ
            ,                  0           
           १ .                        
          Ĵ
            ,                  1           
           १ .                        
          
                           . 2

    ᭮,  ᫨   ࠢ 0  ⮩  ࠢ 1,
 . , -,  稨 ᪠  
 ਭ,  ,  祭,  -,
  㧭,    ᪮.   ।
 ﭨ? ᫨    ⥫ ᪮ 祭, 
 㤥 . ᫨   ,   㤥
.    ।, 頥   ,  㦥
: 㦭 横᪨ ஢ 祭 ࢮ  ॣ
ﭨ.    ᪠    ᢮
祭  0 (⢥⨥   ᪠  ᮢ 
⢥⨥  ᪥)  1 (⢥ ᮢ),   - 
 0. ᫨    㤥  ᢮ 祭 -  
᪮  ᪠,   .

        㪠 ᪮ :

 -  祭 ॣ ﭨ.  s1 - 祭
   ࢮ , s2 - 祭 ⮣ .

 -  s3=1, ᫨  頥,  0, ᫨   頥.

 - ।   ⠡:

                  Ŀ
                  s1s2s3  樨 
                  Ĵ
                   0 0 0       2        
                   0 0 1       3        
                   0 1 0       2        
                   0 1 1       3        
                   1 0 0       1        
                   1 0 1       3        
                   1 1 0       2        
                   1 1 1       3        
                  
                           . 3

    ஢  樨:

 1 -  ᪮  ᪠.
 2 -  ,   ᪮  .
 3 -     ᪮ .

    ਬ砭:  ⭮ ਬ୮ 3%  2 
 ᯮ   1 -  ந室, ᫨ ᭮
⢥⨥  ᪥ 砩 뢠  ࠧ ⨢
⢥   ᪥.

      , ⠫ ⮫쪮 ਢ ⥪ 楤 
ᥬ:

;***********************************************
;楤 D_READY ।, ⠢ 
;  ᪮     ᪮.
; ॣ A 頥 ᫮ 1, 2  3,
;饥  樨:
;
; 1 -  ᪮  ᪠.
; 2 -  ,   ᪮ 
;     .
; 3 -     ᪮ .
;
;   ਬ砭:  ⭮ ਬ୮ 3%
; 2   ᯮ 
; 1.

D_READY XOR     A        ;⠭    
        LD      C,#3F    ; 樫
        CALL    TO_WG93  ; ॣ ஦
        LD      C,#7F    ;  ॣ .
        CALL    TO_WG93

        LD      A,#18    ;樮஢.   㤥
        CALL    TO_1F    ;,  ⥫ .
        CALL    READY    ; 믮...
        CALL    STATUS   ;⠥ ॣ ﭨ
        LD      B,A      ; ࠭塞  ॣ B.

; ⠥ ॣ ﭨ  横,
;⮡ ।, 頥  .
;᫨ #300 ࠧ 㤥 ⠭    
;祭, ,   頥.
;
;  ਬ砭: ᫮ #300 ࠭  ⥬,
;室  ᨬ쭮 ६ ࠡ 横
;(   ६   ᪠,
; 200 ms). ᫨  ࠡ⠥ ॥ 
; 頥 , ᫮ 㦭 㢥.

        LD      HL,#300 ;稪
LOOP_D  PUSH    HL
        PUSH    BC
        CALL    STATUS
        POP     BC
        POP     HL
        DEC     HL
        CP      B         ;ࠢ ⠭  ࠭
                          ;祭 祭.
        LD      A,1       ;ନ㥬 0-  ॣ A.
        JR      NZ,DISK_R ;᫨  .
        LD      A,H
        OR      L
        JR      NZ,LOOP_D ;த 뢠 祭...

;ନ㥬  ॣ A   ⠪ ᮤন:
;
;   0: 0 -   , 1 - .
;   1:  ,  뫮  6-  ॣ ﭨ.
;   2:  ,  뫮  1-  ॣ ﭨ.
;
; १  ॣ A 砥 ᫮  0  7,
;  ।塞  樨  ⠡.

DISK_R  BIT     6,B
        JR      Z,READY1
        SET     1,A

;⠭ 祭 1- .

READY1  BIT     1,B
        JR      Z,READY2
        SET     2,A

; A 祭 㦭 祭.

READY2  LD      (THIS_B+2),A ;㥬 .

; ᭠砫 ⪫砥 ᪮:

        XOR     A         ; ,
        CALL    TO_1F     ; ਭ樯,
        LD      A,#D0     ;
        CALL    TO_1F     ;.

;  ᮮ⢥ LD A,(IX+0)...LD A,(IX+7):

        LD      IX,TABL
THIS_B  LD      A,(IX)       ;稫  樨.
        EI
        RET

;  ।  樨:

TABL    DB      2,3,2,3,1,3,2,3

;***************************************
;ᯮ⥫ 楤:

TO_1F   LD      C,#1F
TO_WG93 LD      IX,#2A53
        JR      TO_DOS

READY   LD      IX,#3EF5
TO_DOS  PUSH    IX
        JP      #3D2F

;***************************************
;楤 STATUS 頥 ᮤন
;ॣ ﭨ.
;室:  A - ᮤন ॣ ஦,
;       B - ᮤন ॣ ᥪ,
;         ⠭ ᫥
;       室  楤.
;室: A - 祭, ⠭   #1F.
;뢠 ᫥ 室 饭!

STATUS  DI
        LD      C,#7F    ;A=N 樫.
        CALL    TO_WG93  ; ॣ .

        LD      (RG_D+1),A  ;஦
        LD      A,B
        LD      (RG_S+1),A  ;ᥪ

;࠭塞 ᮤন 祥, 
;  ᯮ祭:

        LD      A,(#5D0E)
        LD      (ST1+1),A
        LD      A,(#5D0C)
        LD      (ST2+1),A
        LD      A,(#5CB6)
        LD      (ST3+1),A
        LD      A,(#5D1F)
        LD      (ST4+1),A
        LD      A,(#5C3A)
        LD      (ST5+1),A
        LD      A,(#5D17)
        LD      (ST6+1),A
        LD      HL,(#5D1A)
        LD      (ST7+1),HL
        LD      HL,(#5D1C)
        LD      (ST8+1),HL
        LD      HL,(#5CF8)
        LD      (ST9+1),HL

;⠭ ᮤন 
;祥  ࠢ쭮 ࠡ:

        LD      A,#FF
        LD      (#5D0C),A
        LD      (#5D1F),A
        DEC     A
        LD      (#5D0E),A
        LD      A,#F4
        LD      (#5CB6),A

        LD      HL,S_SPEC
        LD      (#5D1A),HL
        LD      HL,0
        ADD     HL,SP
        LD      DE,-12
        ADD     HL,DE
        LD      (#5D1C),HL

        LD      A,0     ;0  ॣ
        LD      C,#3F   ;஦.
        CALL    TO_WG93
        LD      A,#0A   ;#A  ॣ
        LD      C,#5F   ;ᥪ.
        CALL    TO_WG93
        LD      D,1
        LD      IX,16179
        CALL    TO_DOS  ;। #1F.

; ⠭ ᮤন
;ॣ஢ ஦  ᥪ:

RG_D    LD      A,0
        LD      C,#3F
        CALL    TO_WG93
RG_S    LD      A,0
        LD      C,#5F
        CALL    TO_WG93

;⠭ ࠭ 
;ᮤন 祥:

ST1     LD      A,0
        LD      (#5D0E),A
ST2     LD      A,0
        LD      (#5D0C),A
ST3     LD      A,0
        LD      (#5CB6),A
ST4     LD      A,0
        LD      (#5D1F),A
ST5     LD      A,0
        LD      (#5C3A),A
ST6     LD      A,0
        LD      (#5D17),A
ST7     LD      HL,0
        LD      (#5D1A),HL
ST8     LD      HL,0
        LD      (#5D1C),HL
ST9     LD      HL,0
        LD      (#5CF8),HL

        LD      A,B
        RET

; 㤥 । ࠢ, ᫨
;0-  ॣ ﭨ ࠢ 1:

S_SPEC  POP     BC     ;ন .
        LD      HL,(#5D1C)
        LD      DE,12  ;⠭
        ADD     HL,DE  ;㪠⥫
        LD      SP,HL  ;⥪.
        JR      RG_D

                           *  *  *

     猪 砫 ணࠬ, ஫騥 ᬥ
᪠  ᪮ (ਬ, Jemmini Commander).  
஢  㪠   ⥬ ॣ (
ਭ樯, 筮 ᫥    -
   ⮢).  ⥩訩  ࠡ ⠪
ணࠬ:

 1.  祭 ॣ ﭨ. ᫨   ࠢ
    1, ३  蠣 4.

 2. N=" ".

 3.  祭 ॣ ﭨ. ᫨   ࠢ
    0, ३  蠣 3.

 4. N="᪠ ".

 5.  祭 ॣ ﭨ. ᫨   ࠢ
    1, ३  蠣 5,   蠣 2.

    ਬ砭: ணࠬ ࠡᯮᮡ  ᫮, 
᭮ ⢥⨥  ᪥  室 ⨢
ᮮ⢥饣 ⢥   ᪥ ( 易 
ᯮ짮 ࢮ  ॣ ﭨ).

    ,  ⠪ ணࠬ   ᮡ, 易
 ⥭ ॣ ﭨ. ⮡   祭,
㦭, ⮡ ⥫ ᪮ ࠡ⠫. ⮬ ᯮ
᫥騩 : 믮  樮஢ 
஦,  ன 㦥 ᠭ  ॣ ஦.  ⮬
  㤥 ,  ⥫ ᪮ .
᫥ 砭 믮 ⮩  ⠥ ॣ
ﭨ. ࠧ ᫥ ⮣ ⥫ 몫砥, ਬ, 
  0   #FF (   #1F).  
᫥⥫묨 ⥭ﬨ ॣ ﭨ  㧠,
筮 1/50 ᥪ㭤.  ⮬ ⥫  ᯥ
,  窠 ᪮  ࠥ.  ᫨
⥫쭮 ᬮ, ,  窠  
- ᢥ (મ ᢥ祭 ⭮ ய樮쭠
 ).  ,   ᪮ (  - 
 5323.01) 뫮 祭,   ࠡ ணࠬ,
஫ ᬥ ᪠, 窠 ﭭ  
⥫ ࠡ⠥.

    ਢ ⥪ 让 樮 ணࠬ,
஫饩 ᬥ ᪠  㪠 .
ணࠬ 뢮  ࠭ ᮮ饭 "DISK PRESENT"  "DISK
NOT PRESENT". 室 -     ( 
).

        CALL    3435    ;CLS
        LD      A,2
        CALL    5633

M_1     CALL    READ_S
        BIT     1,A
        JR      NZ,M_4

M_2     LD      A,1
        LD      (N),A
        LD      DE,TEXT1
        LD      BC,23
        CALL    8252    ;"DISK PRESENT"

M_3     XOR     A
        IN      A,(254)
        AND     31
        CP      31
        RET     NZ      ;᫨  , 室.

        CALL    READ_S
        BIT     1,A
        JR      Z,M_3

M_4     XOR     A
        LD      (N),A
        LD      DE,TEXT2
        LD      BC,23
        CALL    8252    ;"DISK NOT PRESENT"

M_5     CALL    READ_S
        BIT     1,A
        JR      NZ,M_5
        JR      M_2

N       DB      0       ;1 -  , 0 - .
TEXT1   DB      22,0,0,16,7,17,0,"DISK PRESENT    "
TEXT2   DB      22,0,0,16,7,17,0,"DISK NOT PRESENT"

;***************************************
;楤 READ_S ⢫ ⥭
;ॣ ﭨ. । ⥭
;ந 祭 ⥫
;᪮,  ᫥ ⥭ - 몫祭
; 㧠  1/50 ᥪ㭤.

READ_S  XOR     A        ;⠭    
        LD      C,#3F    ; 樫
        CALL    TO_WG93  ; ॣ ஦
        LD      C,#7F    ;  ॣ .
        CALL    TO_WG93

        LD      A,#18    ;樮஢.   㤥
        CALL    TO_1F    ;,  ⥫ .
        CALL    READY    ; 믮...
        CALL    STATUS   ;⠥ ॣ ﭨ.
        EI               ;蠥 ࠭ 饭 뢠.
        PUSH    AF
        XOR     A
        CALL    TO_1F    ;몫砥 ⥫.
        LD      A,#D0
        CALL    TO_1F
        HALT             ;㧠  1/50 ᥪ㭤.
        POP     AF
        RET

;***************************************
;ᯮ⥫ 楤:

TO_1F   LD      C,#1F
TO_WG93 LD      IX,#2A53
        JR      TO_DOS

READY   LD      IX,#3EF5
TO_DOS  PUSH    IX
        JP      #3D2F

< ᫥ ⥪ 楤 STATUS>



    㣨    TR-DOS:

1. "   #1F  TR-DOS 5.03". "ZX-" 1-2/1997.

2. " ᮪饭 ६ ଠ஢". "ZX-" 1-2/1997.

3. "  ᪮   뢠". Adventurer #9,
   "ୠ ஭" #3, "⥫.  " 6/2000
   ( ).

4. "뢮 ᨬ ७ 䠩  樮
   ⥬ TR-DOS". "⥫.  " 7/2000.

5. "ᮢ襭⢮  । ᬥ ᪠".
   "⥫.  " 9/2000.

6. "७ 䠩 TR-DOS". "⥫.  "
   12/2000, ".  " 9/2001 ( ᥢ
   BV_Creator).

7. "㡠 䠩 '墮'". ".  " 4/2002.

8. "ᯮ짮 筮 ଠ樨   䠩 
   ०". ".  " 11/2002.

9. "஢ઠ ४⭮ 䠩  ᪮ TR-DOS".
   ".  " 6/2004.
