home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1997 July / VPR9707B.ISO / DRIVER / IODATA / RSA150 / M150.EXE / DOS / DRVSAMP.BAS < prev    next >
BASIC Source File  |  1995-02-17  |  4KB  |  178 lines

  1. 1000 'SAVE "DRVSAMP.BAS",A
  2. 1010 '----------------------------------------------------------------
  3. 1020 'ドライバ使用サンプルプログラム
  4. 1030 'Copyright (C) 1995 I-O DATA DEVICE,INC
  5. 1040 '
  6. 1050 '    使用言語:NEC N-88 BASIC(86) version 4.0
  7. 1060 '
  8. 1070 '        1995.02.17 Ver1.00
  9. 1080 '
  10. 1090 '
  11. 1100 '  2000行からは回線からの入力です。EOF で終了します。
  12. 1110 '
  13. 1120 '  3000行からは回線への出力です。'RSA-98',CR,LF を出力します。
  14. 1130 '
  15. 1140 '  [注意]
  16. 1150 '
  17. 1160 '    ・BIOSとドライバ(COMA)を組み込んでください。
  18. 1170 '
  19. 1180 '  ・回線でタイムアウトエラーなどが発生した場合、
  20. 1190 '   Bad allocation table が表示されます。リトライ可能です。
  21. 1200 '
  22. 1210 ' [応用する場合の注意]
  23. 1220 '
  24. 1230 '    ・ランダムファイルとしてオープンしてください。
  25. 1240 '
  26. 1250 '--------------------------------------------------------
  27. 1260 '
  28. 2000 OPEN "COMA" AS #1
  29. 2010 DA$=INPUT$(1,#1)
  30. 2020 PRINT DA$;
  31. 2030 IF (NOT EOF(1)) GOTO 2010
  32. 2040 CLOSE #1
  33. 2050 END
  34. 2060 '
  35. 3000 OPEN "COMA" AS #1
  36. 3010 DA$="RSA-98"
  37. 3020 PRINT #1,DA$
  38. 3030 CLOSE #1
  39. 3040 END
  40. 3050 '
  41. 3060 '
  42. 5000 '----------------------------------------------------------------
  43. 5010 'ドライバ使用ループバックチェックプログラム
  44. 5020 '
  45. 5030 '    使用言語:NEC N-88 BASIC(86) version 4.0
  46. 5040 '
  47. 5050 '
  48. 5060 '        1995.02.10 Ver1.00
  49. 5070 '
  50. 5080 '
  51. 5090 '  [注意]
  52. 5100 '
  53. 5110 '    ・BIOSとドライバ(COMA COMB)を組み込んでください。
  54. 5120 '
  55. 5130 '    ・COMA COMB それぞれをクロスケーブルで接続してください。
  56. 5140 '    ・画面に
  57. 5150 '                    1
  58. 5160 '                    11
  59. 5170 '                    111
  60. 5180 '                    1111
  61. 5190 '                    11111
  62. 5200 '                    111111
  63. 5210 '                      ・
  64. 5220 '           ・
  65. 5230 '                    と表示されれば正常です。
  66. 5240 '    ・終了はSTOPキーを押してください。
  67. 5250 '
  68. 5260 '--------------------------------------------------------
  69. 5270 '
  70. 6000 GOSUB *DMYREAD
  71. 6010 DS$=""
  72. 6020   DS$=DS$+"1"
  73. 6030   OPEN "COMA" AS #1 :PRINT #1,DS$+CHR$(&HD); :CLOSE #1
  74. 6040   OPEN "COMB" AS #1 :INPUT #1,DR$            :CLOSE #1
  75. 6050   PRINT DR$
  76. 6060   GOTO 6020
  77. 6070 END
  78. 6080 '
  79. 7000 *DMYREAD: 'BIOSの受信バッファをクリアします
  80. 7010   ON ERROR GOTO 7090
  81. 7020   ENDFLG=0
  82. 7030     OPEN "COMB" AS #1
  83. 7040     INPUT #1,DA$
  84. 7050     CLOSE #1
  85. 7060   IF (ENDFLG=0) THEN 7030
  86. 7070   ON ERROR GOTO 0
  87. 7080   RETURN
  88. 7090   IF (ERL=7040) THEN ENDFLG=1
  89. 7100   RESUME NEXT
  90. 7110 '
  91. 7120 '
  92. 7130 '
  93. 8000 '----------------------------------------------------------------
  94. 8010 'ドライバ使用文字列入力サンプルプログラム
  95. 8020 '
  96. 8030 '    使用言語:NEC N-88 BASIC(86) version 4.0
  97. 8040 '
  98. 8050 '
  99. 8060 '        1995.02.10 Ver1.00
  100. 8070 '
  101. 8080 '
  102. 8090 '  [注意]
  103. 8100 '
  104. 8110 '    ・BIOSとドライバ(COMA)を組み込んでください。
  105. 8120 '
  106. 8130 '    ・ドライバの受信タイムアウト時間は 0 にしてください。
  107. 8140 '          DEVICE=RSACOM.SYS /NA /I50E0 /T100,0
  108. 8150 '
  109. 8160 '
  110. 8170 '
  111. 8180 '    ・終了はSTOPキーを押してください。
  112. 8190 '
  113. 8200 '--------------------------------------------------------
  114. 8210 '
  115. 8220 '
  116. 8230 GOSUB *RSININIT
  117. 8240 '
  118. 8250  GOSUB *RSIN
  119. 8260  IF RSCHR1$<>"" THEN PRINT RSCHR1$;RSCHR2$
  120. 8270  GOTO 8250
  121. 8280 '
  122. 8290 GOSUB *RSINEND
  123. 8300 END
  124. 8310 '
  125. 8320 '
  126. 8500 *RSININIT: 'RSの初期化
  127. 8510   '
  128. 8520   'BIOSの受信バッファをクリアします。
  129. 8530   '
  130. 8540   ON ERROR GOTO 8620
  131. 8550   ENDFLG=0
  132. 8560     OPEN "COMA" AS #1
  133. 8570     INPUT #1,DA$
  134. 8580     CLOSE #1
  135. 8590   IF (ENDFLG=0) THEN 8560
  136. 8600   ON ERROR GOTO 0
  137. 8610   GOTO 8670
  138. 8620   IF (ERL=8570) THEN ENDFLG=1
  139. 8630   RESUME NEXT
  140. 8640   '
  141. 8650   '受信エラーのトラップ初期化
  142. 8660   '
  143. 8670   ON ERROR GOTO 8690
  144. 8680   GOTO 8720
  145. 8690   IF (ERL=9030) THEN RESUME NEXT
  146. 8700   PRINT "ERL=";ERL :RESUME NEXT
  147. 8710   '
  148. 8720   RETURN
  149. 8730 '
  150. 8740 *RSINEND:
  151. 8750   ON ERROR GOTO 0
  152. 8760   RETURN
  153. 8770 '
  154. 8780 '
  155. 9000 *RSIN: '文字列入力ルーチン
  156. 9010   '
  157. 9020   OPEN "COMA" AS #1
  158. 9030    GET #1
  159. 9040    SEGM%=VARPTR(#1,1) :OFSS%=VARPTR(#1,0)
  160. 9050    DEF SEG=SEGM% :POKE OFSS%+107,0 :POKE OFSS%+108,1
  161. 9060    '
  162. 9070     RSCHR1$="" :RSCHR2$=""
  163. 9080     FOR I=0 TO 127
  164. 9090      DR$=INPUT$(1,#1)
  165. 9100      IF DR$=CHR$(0) THEN GOTO 9180
  166. 9110      RSCHR1$=RSCHR1$+DR$
  167. 9120     NEXT
  168. 9130     FOR I=128 TO 255
  169. 9140      DR$=INPUT$(1,#1)
  170. 9150      IF DR$=CHR$(0) THEN GOTO 9180
  171. 9160      RSCHR2$=RSCHR2$+DR$
  172. 9170     NEXT
  173. 9180   CLOSE #1
  174. 9190  RETURN
  175. 9200 '
  176. 9210 '
  177. 9220 END
  178.