2013.6.20
前へ
次へ
ホームページトップへ戻る

復活!CP/M ワンボードマイコンでCP/Mを!
CP/MがTK−80互換のワンボードマイコンの上で復活します
ND80ZVとMYCPU80の上でCP/Mが走ります

[第422回]


●/BAT使用例

前回は、ZB3DOS(CP/M互換DOS)では諸般の事情からSUBMIT(CP/Mのバッチ処理機能)は使えませんが、その代わりに/BATを使ってください、と書きました。
/BATはZB3DOSのバッチ処理コマンドです。
SUBMITはCP/Mのコマンドですから、当然のことながらCP/M上でしか使えません。
しかし/BATはZB3BASICのコマンドですから、ZB3BASICを起動したあとは、それ以後の全ての機能をバッチ処理することができます。
その実例は[第390回]でお見せしましたが、先日、大分県のH様がトランジェントコマンドの評価テストをバッチファイルを作成して行なわれて、その結果をメールに添付して送っていただきました。
拝見させていただきましたところ、ZB3DOSの評価テストの結果であるとともに、/BATのよい使用例であると思いましたので、H様にお願いしましてHP上で公開させていただくことをご承諾いただきました。
下がお送りいただいたログファイルです。
MBASICの動作テストです。

logfile nd80zlog\06191402.txt open

ND80ZVに接続しました
0001 0000 - Z
1000 00C3 - *** nd80z3 basic ****
>/BAT MBASIC.BAT
>/CPM
loading zbds4h.bin ...19c1(6593)bytes loaded,from CC00 to E5C0
drive D ................................
drive C ................................
drive B ................................
drive A ................................

A>DIR
A: ASM      COM : DDT      COM : DUMP     COM : ED       COM
A: LOAD     COM : PIP      COM : STAT     COM : CREF80   COM
A: MBASIC   COM : F80      COM : L80      COM : LIB80    COM
A: M80      COM : MON      COM : DISKDEF  LIB : FORLIB   REL
A: OBSLIB   REL : DUMP     ASM : DUMP2    PRN : DUMP2    HEX
A: TBZCPM   COM : DUMP2    BAK : TESTPROG PLI : TEST     BAS

A>ERA TEST.BAS

A>DIR
A: ASM      COM : DDT      COM : DUMP     COM : ED       COM
A: LOAD     COM : PIP      COM : STAT     COM : CREF80   COM
A: MBASIC   COM : F80      COM : L80      COM : LIB80    COM
A: M80      COM : MON      COM : DISKDEF  LIB : FORLIB   REL
A: OBSLIB   REL : DUMP     ASM : DUMP2    PRN : DUMP2    HEX
A: TBZCPM   COM : DUMP2    BAK : TESTPROG PLI
A>MBASIC
BASIC-85 Rev. 5.29
[CP/M Version]
Copyright 1985-1986  、  by Microsoft
Created: 28-Jul-85
28728 Bytes free
Ok
10 A=10
20 B=20
30 C=A+B
40 PRINT C
LIST
10 A=10
20 B=20
30 C=A+B
40 PRINT C
Ok
RUN
 30 
Ok
SAVE "TEST.BAS"
Ok
NEW
Ok
LIST
Ok
SYSTEM

A>DIR
A: ASM      COM : DDT      COM : DUMP     COM : ED       COM
A: LOAD     COM : PIP      COM : STAT     COM : CREF80   COM
A: MBASIC   COM : F80      COM : L80      COM : LIB80    COM
A: M80      COM : MON      COM : DISKDEF  LIB : FORLIB   REL
A: OBSLIB   REL : DUMP     ASM : DUMP2    PRN : DUMP2    HEX
A: TBZCPM   COM : DUMP2    BAK : TESTPROG PLI : TEST     BAS

A>MBASIC
BASIC-85 Rev. 5.29
[CP/M Version]
Copyright 1985-1986  、  by Microsoft
Created: 28-Jul-85
28728 Bytes free
Ok
LOAD "TEST.BAS"
Ok
LIST
10 A=10
20 B=20
30 C=A+B
40 PRINT C
Ok
RUN
 30 
Ok
FILES
ASM     .COM  DDT     .COM  DUMP    .COM  ED      .COM  LOAD    .COM
PIP     .COM  STAT    .COM  CREF80  .COM  MBASIC  .テOM  F80     .COM
L80     .COM  LIB80   .COM  M80     .COM  MON     .COM  DISKDEF .LIB
FORLIB  .REL  OBSLIB  .REL  DUMP    .ASM  DUMP2   .PRN  DUMP2   .HEX
TBZCPM  .COM  DUMP2   .BAK  TESTPROG.PLI  TEST    .BAS  
Ok
NEW
Ok
LIST
Ok
SYSTEM

A>DIR
A: ASM      COM : DDT      COM : DUMP     COM : ED       COM
A: LOAD     COM : PIP      COM : STAT     COM : CREF80   COM
A: MBASIC   COM : F80      COM : L80      COM : LIB80    COM
A: M80      COM : MON      COM : DISKDEF  LIB : FORLIB   REL
A: OBSLIB   REL : DUMP     ASM : DUMP2    PRN : DUMP2    HEX
A: TBZCPM   COM : DUMP2    BAK : TESTPROG PLI : TEST     BAS

A>/EXIT
/BAT end

>
0000 00C3 - 
リモート接続を終了しました
logfile closed at Wed Jun 19 14:03:11 2013

どこがバッチ処理かといいますと、この全部がバッチ処理なのです。
はじめのところでZB3BASICにエントリした直後に/BATを実行しています。
/BAT MBASIC.BAT
がキーボードから入力したコマンドで、それ以後は全部バッチファイル(MBASIC.BAT)から読み込んで自動的に処理されたものです。
最後に/BAT endと表示されたところまでがバッチ処理です。
H様からはバッチファイルは送っていただいていませんが、上のログファイルから、バッチファイルMBASIC.BATには次のように記述されていたと思います。

/CPM
DIR
ERA TEST.BAS
DIR
MBASIC
10 A=10
20 B=20
30 C=A+B
40 PRINT C
LIST
RUN
SAVE "TEST.BAS"
NEW
LIST
SYSTEM
DIR
MBASIC
LOAD "TEST.BAS"
LIST
RUN
FILES
NEW
LIST
SYSTEM
DIR
/EXIT

下はPIPコマンドのテストです。
これもバッチ処理です。
/BAT PIP.BAT
の次から/BAT endまでが全部バッチ処理です。

logfile nd80zlog\06191403.txt open

ND80ZVに接続しました
0001 0000 - Z
1000 00C3 - *** nd80z3 basic ****
>/BAT PIP.BAT
>/CPM
C.vfd がありません。
C.vfd を作成しました。
loading zbds4h.bin ...19c1(6593)bytes loaded,from CC00 to E5C0
drive D ................................
drive C ................................
drive B ................................
drive A ................................

A>DIR 
A: ASM      COM : DDT      COM : DUMP     COM : ED       COM
A: LOAD     COM : PIP      COM : STAT     COM : CREF80   COM
A: MBASIC   COM : F80      COM : L80      COM : LIB80    COM
A: M80      COM : MON      COM : DISKDEF  LIB : FORLIB   REL
A: OBSLIB   REL : DUMP     ASM : DUMP2    PRN : DUMP2    HEX
A: TBZCPM   COM : DUMP2    BAK : TESTPROG PLI : TEST     BAS

A>DIR C:
no file
A>PIP C:=A:ASM.COM

A>PIP C:=A:LOAD.COM

A>PIP C:=A:STAT.COM

A>PIP C:=A:TESTPROG.PLI

A>PIP C:TEST.ASM=A:DUMP.ASM,TESTPROG.PLI

A>TYPE C:TEST.ASM
;       FILE DUMP PROGRAM, READS AN INPUT FILE AND PRINTS IN HEX
;
;       COPYRIGHT (C) 1975, 1976, 1977, 1978
;       DIGITAL RESEARCH
;       BOX 579, PACIFIC GROVE
;       CALIFORNIA, 93950
;
        ORG     100H
BDOS    EQU     0005H   ;DOS ENTRY POINT
CONS    EQU     1       ;READ CONSOLE
TYPEF   EQU     2       ;TYPE FUNCTION
PRINTF  EQU     9       ;BUFFER PRINT ENTRY
BRKF    EQU     11      ;BREAK KEY FUNCTION (TRUE IF CHAR READY)
OPENF   EQU     15      ;FILE OPEN
READF   EQU     20      ;READ FUNCTION
;
FCB     EQU     5CH     ;FILE CONTROL BLOCK ADDRESS
BUFF    EQU     80H     ;INPUT DISK BUFFER ADDRESS
;
;       NON GRAPHIC CHARACTERS
CR      EQU     0DH     ;CARRIAGE RETURN
LF      EQU     0AH     ;LINE FEED
;
;       FILE CONTROL BLOCK DEFINITIONS
FCBDN   EQU     FCB+0   ;DISK NAME
FCBFN   EQU     FCB+1   ;FILE NAME
FCBFT   EQU     FCB+9   ;DISK FILE TYPE (3 CHARACTERS)
FCBRL   EQU     FCB+12  ;FILE'S CURRENT REEL NUMBER
FCBRC   EQU     FCB+15  ;FILE'S RECORD COUNT (0 TO 128)
FCBCR   EQU     FCB+32  ;CURRENT (NEXT) RECORD NUMBER (0 TO 127)
FCBLN   EQU     FCB+33  ;FCB LENGTH
;
;       SET UP STACK
        LXI     H,0
        DAD     SP
;       ENTRY STACK POINTER IN HL FROM THE CCP
        SHLD    OLDSP
;       SET SP TO LOCAL STACK AREA (RESTORED AT FINIS)
        LXI     SP,STKTOP
;       READ AND PRINT SUCCESSIVE BUFFERS
        CALL    SETUP   ;SET UP INPUT FILE
        CPI     255     ;255 IF FILE NOT PRESENT
        JNZ     OPENOK  ;SKIP IF OPEN IS OK
;
;       FILE NOT THERE, GIVE ERROR MESSAGE AND RETURN
        LXI     D,OPNMSG
        CALL    ERR
        JMP     FINIS   ;TO RETURN
;
OPENOK: ;OPEN OPERATION OK, SET BUFFER INDEX TO END
        MVI     A,80H
        STA     IBP     ;SET BUFFER POINTER TO 80H
;       HL CONTAINS NEXT ADDRESS TO PRINT
        LXI     H,0     ;START WITH 0000
;
GLOOP:
        PUSH    H       ;SAVE LINE POSITION
        CALL    GNB
        POP     H       ;RECALL LINE POSITION
        JC      FINIS   ;CARRY SET BY GNB IF END FILE
        MOV     B,A
;       PRINT HEX VALUES
;       CHECK FOR LINE FOLD
        MOV     A,L
        ANI     0FH     ;CHECK LOW 4 BITS
        JNZ     NONUM
;       PRINT LINE NUMBER
        CALL    CRLF
;
;       CHECK FOR BREAK KEY
        CALL    BREAK
;       ACCUM LSB = 1 IF CHARACTER READY
        RRC             ;INTO CARRY
        JC      FINIS   ;DON'T PRINT ANY MORE
;
        MOV     A,H
        CALL    PHEX
        MOV     A,L
        CALL    PHEX
NONUM:
        INX     H       ;TO NEXT LINE NUMBER
        MVI     A,' '
        CALL    PCHAR
        MOV     A,B
        CALL    PHEX
        JMP     GLOOP
;
FINIS:
;       END OF DUMP, RETURN TO CCP
;       (NOTE THAT A JMP TO 0000H REBOOTS)
        CALL    CRLF
        LHLD    OLDSP
        SPHL
;       STACK POINTER CONTAINS CCP'S STACK LOCATION
        RET             ;TO THE CCP
;
;
;       SUBROUTINES
;
BREAK:  ;CHECK BREAK KEY (ACTUALLY ANY KEY WILL DO)
        PUSH H! PUSH D! PUSH B; ENVIRONMENT SAVED
        MVI     C,BRKF
        CALL    BDOS
        POP B! POP D! POP H; ENVIRONMENT RESTORED
        RET
;
PCHAR:  ;PRINT A CHARACTER
        PUSH H! PUSH D! PUSH B; SAVED
        MVI     C,TYPEF
        MOV     E,A
        CALL    BDOS
        POP B! POP D! POP H; RESTORED
        RET
;
CRLF:
        MVI     A,CR
        CALL    PCHAR
        MVI     A,LF
        CALL    PCHAR
        RET
;
;
PNIB:   ;PRINT NIBBLE IN REG A
        ANI     0FH     ;LOW 4 BITS
        CPI     10
        JNC     P10
;       LESS THAN OR EQUAL TO 9
        ADI     '0'
        JMP     PRN
;
;       GREATER OR EQUAL TO 10
P10:    ADI     'A' - 10
PRN:    CALL    PCHAR
        RET
;
PHEX:   ;PRINT HEX CHAR IN REG A
        PUSH    PSW
        RRC
        RRC
        RRC
        RRC
        CALL    PNIB    ;PRINT NIBBLE
        POP     PSW
        CALL    PNIB
        RET
;
ERR:    ;PRINT ERROR MESSAGE
;       D,E ADDRESSES MESSAGE ENDING WITH "$"
        MVI     C,PRINTF        ;PRINT BUFFER FUNCTION
        CALL    BDOS
        RET
;
;
GNB:    ;GET NEXT BYTE
        LDA     IBP
        CPI     80H
        JNZ     G0
;       READ ANOTHER BUFFER
;
;
        CALL    DISKR
        ORA     A       ;ZERO VALUE IF READ OK
        JZ      G0      ;FOR ANOTHER BYTE
;       END OF DATA, RETURN WITH CARRY SET FOR EOF
        STC
        RET
;
G0:     ;READ THE BYTE AT BUFF+REG A
        MOV     E,A     ;LS BYTE OF BUFFER INDEX
        MVI     D,0     ;DOUBLE PRECISION INDEX TO DE
        INR     A       ;INDEX=INDEX+1
        STA     IBP     ;BACK TO MEMORY
;       POINTER IS INCREMENTED
;       SAVE THE CURRENT FILE ADDRESS
        LXI     H,BUFF
        DAD     D
;       ABSOLUTE CHARACTER ADDRESS IS IN HL
        MOV     A,M
;       BYTE IS IN THE ACCUMULATOR
        ORA     A       ;RESET CARRY BIT
        RET
;
SETUP:  ;SET UP FILE 
;       OPEN THE FILE FOR INPUT
        XRA     A       ;ZERO TO ACCUM
        STA     FCBCR   ;CLEAR CURRENT RECORD
;
        LXI     D,FCB
        MVI     C,OPENF
        CALL    BDOS
;       255 IN ACCUM IF OPEN ERROR
        RET
;
DISKR:  ;READ DISK FILE RECORD
        PUSH H! PUSH D! PUSH B
        LXI     D,FCB
        MVI     C,READF
        CALL    BDOS
        POP B! POP D! POP H
        RET
;
;       FIXED MESSAGE AREA
SIGNON: DB      'FILE DUMP VERSION 1.4$'
OPNMSG: DB      CR,LF,'NO INPUT FILE PRESENT ON DISK$'
IBP:    DS      2
OLDSP:  DS      2
;       STACK AREA
        DS      64      ;RESERVE 32 LEVEL STACK
STKTOP:
;
        END
GGG: /* TEST PROGRAM */
        PROC OPTIONS(MAIN);
        DCL I FIXED BIN(15);
        DO I=1 TO 5;
        PUT SKIP EDIT('I=',I,'*CP/M MACHINE*')
                (A(2),F(3),X(3),A(14));
        END;
        END GGG;

A>PIP CON:=C:TESTPROG.PLI
GGG: /* TEST PROGRAM */
        PROC OPTIONS(MAIN);
        DCL I FIXED BIN(15);
        DO I=1 TO 5;
        PUT SKIP EDIT('I=',I,'*CP/M MACHINE*')
                (A(2),F(3),X(3),A(14));
        END;
        END GGG;

A>PIP C:DUMP2.ASM=A:DUMP.ASM

A>DIR C:
C: ASM      COM : LOAD     COM : STAT     COM : TESTPROG PLI
C: TEST     ASM : DUMP2    ASM
A>STAT C:*.*

 Recs  Bytes  Ext Acc
   65    10k    1 R/W C:ASM.COM
   32     4k    1 R/W C:DUMP2.ASM
   15     2k    1 R/W C:LOAD.COM
   42     6k    1 R/W C:STAT.COM
   34     6k    1 R/W C:TEST.ASM
    2     2k    1 R/W C:TESTPROG.PLI
Bytes Remaining On C: 2014k

A>/EXIT
/BAT end

>
0000 00C3 - 
リモート接続を終了しました
logfile closed at Wed Jun 19 14:06:01 2013

こちらもH様からお送りいただいたログファイルです。
STATコマンドのテストです。
/BAT STAT.BATの次から/BAT endまでがバッチ処理です。

logfile nd80zlog\06191410.txt open

ND80ZVに接続しました
0001 0000 - Z
1000 00C3 - *** nd80z3 basic ****
>/BAT STAT.BAT
>/CPM
loading zbds4h.bin ...19c1(6593)bytes loaded,from CC00 to E5C0
drive D ................................
drive C ................................
drive B ................................
drive A ................................

A>STAT
A: R/W, Space: 1784k


A>STAT B:

Bytes Remaining On B: 1600k

A>STAT B:DUMP2.ASM

 Recs  Bytes  Ext Acc
   32     4k    1 R/W B:DUMP2.ASM
Bytes Remaining On B: 1600k

A>STAT B:DUMP2.ASM $S

 Size  Recs  Bytes  Ext Acc
   32    32     4k    1 R/W B:DUMP2.ASM
Bytes Remaining On B: 1600k

A>STAT B:DUMP2.*

 Recs  Bytes  Ext Acc
   32     4k    1 R/W B:DUMP2.ASM
Bytes Remaining On B: 1600k

A>STAT B:DUMP2.* $S

 Size  Recs  Bytes  Ext Acc
   32    32     4k    1 R/W B:DUMP2.ASM
Bytes Remaining On B: 1600k

A>STAT B:*.COM

 Recs  Bytes  Ext Acc
   93    12k    1 R/W B:MAC.COM
   87    12k    1 R/W B:NSWP.COM
   56     8k    1 R/W B:PIP.COM
   11     2k    1 R/W B:SUBMIT.COM
   16     2k    1 R/W B:TBCPM.COM
   17     4k    1 R/W B:TBZCPM.COM
Bytes Remaining On B: 1600k

A>STAT B:*.COM $S

 Size  Recs  Bytes  Ext Acc
   93    93    12k    1 R/W B:MAC.COM
   87    87    12k    1 R/W B:NSWP.COM
   56    56     8k    1 R/W B:PIP.COM
   11    11     2k    1 R/W B:SUBMIT.COM
   16    16     2k    1 R/W B:TBCPM.COM
   17    17     4k    1 R/W B:TBZCPM.COM
Bytes Remaining On B: 1600k

A>STAT B:*.*

 Recs  Bytes  Ext Acc
    5     2k    1 R/W B:BUTTONS.LIB
   10     2k    1 R/W B:COMPARE.LIB
  754    96k    6 R/W B:CPM22.ASM
  126    16k    1 R/W B:CPM22.HEX
 1220   154k   10 R/W B:CPM22.PRN
    8     2k    1 R/W B:DISK.DOC
    8     2k    1 R/W B:DOWHILE.LIB
   81    12k    1 R/W B:DSTACK.LIB
   32     4k    1 R/W B:DUMP2.ASM
    4     2k    1 R/W B:I8085.LIB
   18     4k    1 R/W B:INTER.LIB
   93    12k    1 R/W B:MAC.COM
   11     2k    1 R/W B:NCOMPARE.LIB
   87    12k    1 R/W B:NSWP.COM
   56     8k    1 R/W B:PIP.COM
    1     2k    1 R/W B:READ.ME
   14     2k    1 R/W B:SELECT.LIB
   83    12k    1 R/W B:SEQIO.LIB
    6     2k    1 R/W B:SIMPIO.LIB
   10     2k    1 R/W B:STACK.LIB
   11     2k    1 R/W B:SUBMIT.COM
   98    14k    1 R/W B:TBCPM.ASM
   16     2k    1 R/W B:TBCPM.COM
   45     6k    1 R/W B:TBCPM.HEX
  273    36k    3 R/W B:TBCPM.PRN
   17     4k    1 R/W B:TBCPM.SYM
   17     4k    1 R/W B:TBZCPM.COM
    1     2k    1 R/W B:TEST.SUB
    6     2k    1 R/W B:TREADLES.LIB
    8     2k    1 R/W B:WHEN.LIB
   71    10k    1 R/W B:Z80.DOC
   78    10k    1 R/W B:Z80.LIB
Bytes Remaining On B: 1600k

A>STAT B:*.* $S

 Size  Recs  Bytes  Ext Acc
    5     5     2k    1 R/W B:BUTTONS.LIB
   10    10     2k    1 R/W B:COMPARE.LIB
  754   754    96k    6 R/W B:CPM22.ASM
  126   126    16k    1 R/W B:CPM22.HEX
 1220  1220   154k   10 R/W B:CPM22.PRN
    8     8     2k    1 R/W B:DISK.DOC
    8     8     2k    1 R/W B:DOWHILE.LIB
   81    81    12k    1 R/W B:DSTACK.LIB
   32    32     4k    1 R/W B:DUMP2.ASM
    4     4     2k    1 R/W B:I8085.LIB
   18    18     4k    1 R/W B:INTER.LIB
   93    93    12k    1 R/W B:MAC.COM
   11    11     2k    1 R/W B:NCOMPARE.LIB
   87    87    12k    1 R/W B:NSWP.COM
   56    56     8k    1 R/W B:PIP.COM
    1     1     2k    1 R/W B:READ.ME
   14    14     2k    1 R/W B:SELECT.LIB
   83    83    12k    1 R/W B:SEQIO.LIB
    6     6     2k    1 R/W B:SIMPIO.LIB
   10    10     2k    1 R/W B:STACK.LIB
   11    11     2k    1 R/W B:SUBMIT.COM
   98    98    14k    1 R/W B:TBCPM.ASM
   16    16     2k    1 R/W B:TBCPM.COM
   45    45     6k    1 R/W B:TBCPM.HEX
  273   273    36k    3 R/W B:TBCPM.PRN
   17    17     4k    1 R/W B:TBCPM.SYM
   17    17     4k    1 R/W B:TBZCPM.COM
    1     1     2k    1 R/W B:TEST.SUB
    6     6     2k    1 R/W B:TREADLES.LIB
    8     8     2k    1 R/W B:WHEN.LIB
   71    71    10k    1 R/W B:Z80.DOC
   78    78    10k    1 R/W B:Z80.LIB
Bytes Remaining On B: 1600k

A>STAT DEV:
CON: is TTY:
RDR: is TTY:
PUN: is TTY:
LST: is TTY:

A>STAT VAL:

Temp R/O Disk: d:=R/O
Set Indicator: d:filename.typ $R/O $R/W $SYS $DIR
Disk Status  : DSK: d:DSK:
User Status  : USR:
Iobyte Assign:
CON: = TTY: CRT: BAT: UC1:
RDR: = TTY: PTR: UR1: UR2:
PUN: = TTY: PTP: UP1: UP2:
LST: = TTY: CRT: LPT: UL1:
A>STAT USR:

Active User :=5
Active Files: 0
A>STAT DSK:

    A: Drive Characteristics
16384: 128 Byte Record Capacity
 2048: Kilobyte Drive  Capacity
  128: 32  Byte Directory Entries
    0: Checked  Directory Entries
  128: Records/ Extent
   16: Records/ Block
   16: Sectors/ Track
    0: Reserved Tracks

    B: Drive Characteristics
16384: 128 Byte Record Capacity
 2048: Kilobyte Drive  Capacity
  128: 32  Byte Directory Entries
    0: Checked  Directory Entries
  128: Records/ Extent
   16: Records/ Block
   16: Sectors/ Track
    0: Reserved Tracks

A>STAT D:DSK:

    D: Drive Characteristics
16384: 128 Byte Record Capacity
 2048: Kilobyte Drive  Capacity
  128: 32  Byte Directory Entries
    0: Checked  Directory Entries
  128: Records/ Extent
   16: Records/ Block
   16: Sectors/ Track
    0: Reserved Tracks

A>STAT D:=R/O

A>STAT B:DUMP2.*

 Recs  Bytes  Ext Acc
   32     4k    1 R/W B:DUMP2.ASM
Bytes Remaining On B: 1600k

A>DIR B:DUMP2.*
B: DUMP2    ASM
A>STAT B:DUMP2.ASM $R/O

DUMP2.ASM set to R/O
A>STAT B:DUMP2.HEX $SYS

File Not Found
A>DIR B:DUMP2.*
B: DUMP2    ASM
A>STAT B:DUMP2.* $S

 Size  Recs  Bytes  Ext Acc
   32    32     4k    1 R/O B:DUMP2.ASM
Bytes Remaining On B: 1600k

A>STAT B:DUMP2.ASM $R/W

DUMP2.ASM set to R/W
A>STAT B:DUMP2.HEX $DIR

File Not Found
A>STAT B:DUMP2.* $S

 Size  Recs  Bytes  Ext Acc
   32    32     4k    1 R/W B:DUMP2.ASM
Bytes Remaining On B: 1600k

A>/EXIT
/BAT end

>
0000 00C3 - 
リモート接続を終了しました
logfile closed at Wed Jun 19 14:13:06 2013

こうして見ていただきますと、/BATはなかなかに使えるじゃないの、と思っていただけるのではありませんでしょうか。

ワンボードマイコンでCP/Mを![第422回]
2013.6.20upload

前へ
次へ
ホームページトップへ戻る