日立MB-S1に関する情報

メモリ空間7
ルーチン番号$19

機能

ファイルの有無を調べます。

解説

システム・ワーク内に格納されているファイル・ディスクリプタが、ディスクに記録されているか否かをチェックします。

入力情報

  • X:システム・ワーク内に格納されているファイル・ディスクリプタの先頭アドレス
システムワーク内:"(ファイル・ディスクリプタ名)"[00]←エンド・コード=NULL

出力情報

  • CCR(Z):ファイル有無フラグ
    • 1…ファイルなし/0…ファイルあり
[指定したファイルがあった場合]
  • AccA:セクタ番号(ディレクトリ内)
  • AccB:トラック番号(ディレクトリ内)

サンプル・プログラム

内容

ドライブ1にセットされているディスケットの中に、ファイル名"SAMPLE.BAS"のファイルが記録されているか否かをチェックし、もし記録されていればSWI(ブレイク・ポイント・ルーチン)を実行し、AccA、AccBおよびXにセクタ番号、トラック番号およびセクタ・バッファ内のアドレスが格納されていることを確認します。
 0 C000                     ORG  $C000
 1           C000   CHKFIL  EQU  *          --A SAMPLE OF "CHKFIL" ROUTINE--
 2           F014   PFBUF   EQU  $F014      BUFFER (IN SYSTEM WORK AREA)
 3 C000   20 0D             BRA  EXEC
 4 C002      22     FIELDI  FCC  /"/
 5 C003      53             FCC  /S/
 6 C004      41             FCC  /A/
 7 C005      4D             FCC  /M/
 8 C006      50             FCC  /P/
 9 C007      4C             FCC  /L/
10 C008      45             FCC  /E/
11 C009      2E             FCC  /./
12 C00A      42             FCC  /B/
13 C00B      41             FCC  /A/
14 C00C      53             FCC  /S/
15 C00D      22             FCC  /"/
16 C00E      00             FCB  $00
17           C00F   EXEC    EQU  *          --- BUF. <-- FILE DISCRIPTOR ---
18 C00F   BE F014           LDX  PFBUF      X:BUFFER ADDR.
19 C012   34 10             PSHS X
20 C014   31 8CEB           LEAY FIELDI,PCR Y:TOP ADDR. OF FILE DISCRIPTOR DA
21 C017   A6 A0     LOOP    LDA  ,Y+
22 C019   A7 80             STA  ,X+
23 C01B   26 FA             BNE  LOOP
24                  *                       --- FILE CHECK ---
25 C01F   35 10             PULS X          X:FILE DISCRI. ADDR(IN SYSTEM AR
26 C020 103F                SWI2            CALL "CHKFIL" ROUTINE
27 C021      47             FCB  $47
28 C022      19             FCB  $19
29 C023   27 01             BEQ  EXECE      IF FOLE NOT FOUND THEN RTS
30 C025   3F                SWI
31 C026   39        EXECE   RTS
32                          END

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

どなたでも編集できます