主题:发布CMOS 工具 5.00最后版本
废除行号,程序真正结构化
修复界面的1.0残余
内容全部用大写
============
CALL TOP
SUB TOP
CLS
CALL CHOICE
END SUB
SUB CHOICE
PRINT "READ & WRITE & DISPLAY CMOS 5.00"
PRINT " THIS PROGRAM IS END OF UPDATE!"
PRINT " 1. READ CMOS"
PRINT " 2. WRITE CMOS"
PRINT " 3. DISPLAY CMOS"
PRINT " 0. EXIT THIS PROGRAM"
INPUT " PRESS 0, 1, 2, 3"; AA
IF AA = 0 THEN END
IF AA = 1 THEN CALL READCMOS
IF AA = 2 THEN CALL WRITECMOS
IF AA = 3 THEN CALL DISPLAYCMOS
CALL TOP
END SUB
SUB READCMOS
IF COMMAND$ = "" THEN
INPUT "FILE NAME:", FILENAME$
IF FILENAME$ = "" THEN CALL TOP
END IF
IF COMMAND$ = "" THEN
OPEN FILENAME$ FOR RANDOM AS #1 LEN = 1
ELSE
OPEN COMMAND$ FOR RANDOM AS #1 LEN = 1
END IF
FIELD 1, 1 AS A$
FOR I = 1 TO 128
OUT 112, I - 1
B = INP(113)
LSET A$ = CHR$(B)
PUT 1, I
NEXT
CLOSE #1
IF COMMAND$ = "" THEN
PRINT "READ CMOS TO "; FILENAME$; " OK!"
FILENAME$ = ""
ELSE
PRINT "READ CMOS TO "; COMMAND$; " OK!"
END IF
PRINT
CALL CHOICE
END SUB
SUB WRITECMOS
IF COMMAND$ = "" THEN
INPUT "FILE NAME:", FILENAME$
IF FILENAME$ = "" THEN CALL TOP
END IF
IF COMMAND$ = "" THEN
OPEN FILENAME$ FOR RANDOM AS #1 LEN = 1
ELSE
OPEN COMMAND$ FOR RANDOM AS #1 LEN = 1
END IF
IF LOF(1) < 128 THEN CALL ERRORS
FIELD 1, 1 AS A$
FOR I = 17 TO 128
GET 1, I
OUT 112, I - 1
B = ASC(A$)
OUT 113, B
NEXT
CLOSE #1
IF COMMAND$ = "" THEN
PRINT "WRITE CMOS FROM "; FILENAME$; " OK!"
FILENAME$ = ""
ELSE
PRINT "WRITE CMOS FROM "; COMMAND$; " OK!"
END IF
PRINT
CALL CHOICE
END SUB
SUB ERRORS
IF COMMAND$ = "" THEN
PRINT filename$; " ERROR!"
BEEP
FILENAME$ = ""
ELSE
PRINT COMMAND$; " ERROR!"
BEEP
END IF
CLOSE #1
CALL CHOICE
END SUB
SUB DISPLAYCMOS
FOR I = 1 TO 128
OUT 112, I - 1
B = INP(113)
C$ = HEX$(B)
IF B < 16 THEN C$ = "0" + C$
PRINT C$; "";
IF INT(I / 16) = I / 16 THEN PRINT
NEXT
PRINT "DISPLAY CMOS OK!"
PRINT
CALL CHOICE
END SUB
END
修复界面的1.0残余
内容全部用大写
============
CALL TOP
SUB TOP
CLS
CALL CHOICE
END SUB
SUB CHOICE
PRINT "READ & WRITE & DISPLAY CMOS 5.00"
PRINT " THIS PROGRAM IS END OF UPDATE!"
PRINT " 1. READ CMOS"
PRINT " 2. WRITE CMOS"
PRINT " 3. DISPLAY CMOS"
PRINT " 0. EXIT THIS PROGRAM"
INPUT " PRESS 0, 1, 2, 3"; AA
IF AA = 0 THEN END
IF AA = 1 THEN CALL READCMOS
IF AA = 2 THEN CALL WRITECMOS
IF AA = 3 THEN CALL DISPLAYCMOS
CALL TOP
END SUB
SUB READCMOS
IF COMMAND$ = "" THEN
INPUT "FILE NAME:", FILENAME$
IF FILENAME$ = "" THEN CALL TOP
END IF
IF COMMAND$ = "" THEN
OPEN FILENAME$ FOR RANDOM AS #1 LEN = 1
ELSE
OPEN COMMAND$ FOR RANDOM AS #1 LEN = 1
END IF
FIELD 1, 1 AS A$
FOR I = 1 TO 128
OUT 112, I - 1
B = INP(113)
LSET A$ = CHR$(B)
PUT 1, I
NEXT
CLOSE #1
IF COMMAND$ = "" THEN
PRINT "READ CMOS TO "; FILENAME$; " OK!"
FILENAME$ = ""
ELSE
PRINT "READ CMOS TO "; COMMAND$; " OK!"
END IF
CALL CHOICE
END SUB
SUB WRITECMOS
IF COMMAND$ = "" THEN
INPUT "FILE NAME:", FILENAME$
IF FILENAME$ = "" THEN CALL TOP
END IF
IF COMMAND$ = "" THEN
OPEN FILENAME$ FOR RANDOM AS #1 LEN = 1
ELSE
OPEN COMMAND$ FOR RANDOM AS #1 LEN = 1
END IF
IF LOF(1) < 128 THEN CALL ERRORS
FIELD 1, 1 AS A$
FOR I = 17 TO 128
GET 1, I
OUT 112, I - 1
B = ASC(A$)
OUT 113, B
NEXT
CLOSE #1
IF COMMAND$ = "" THEN
PRINT "WRITE CMOS FROM "; FILENAME$; " OK!"
FILENAME$ = ""
ELSE
PRINT "WRITE CMOS FROM "; COMMAND$; " OK!"
END IF
CALL CHOICE
END SUB
SUB ERRORS
IF COMMAND$ = "" THEN
PRINT filename$; " ERROR!"
BEEP
FILENAME$ = ""
ELSE
PRINT COMMAND$; " ERROR!"
BEEP
END IF
CLOSE #1
CALL CHOICE
END SUB
SUB DISPLAYCMOS
FOR I = 1 TO 128
OUT 112, I - 1
B = INP(113)
C$ = HEX$(B)
IF B < 16 THEN C$ = "0" + C$
PRINT C$; "";
IF INT(I / 16) = I / 16 THEN PRINT
NEXT
PRINT "DISPLAY CMOS OK!"
CALL CHOICE
END SUB
END