#11 Article 1893 Posted at 1988/08/06 02:25:49 by アルルカン (MAP475) [PRG.NL3]
Subject: NT3 ノ Batchaサンノ 3コママンガ タイオウ ソノタ カイテイバン
おっ久しぶりです、アルルカンです。 NT3の、Batchaさんの3こまマンガ(#1873)対応版です。 同じアーティクル番号内に複数のデータが存在した場合、アーティクル番号にアルフ ァベットを付けてファイル名にします。 同じアーティクル番号でのデータの個数は最大27個です。 (Batchaさんの場合、1873.NL3 1873A.NL3 1873B.NL3 の3つになります。) それと、メールでご意見を頂いたのですが、このNL3は、カラーデータの最初に黒 のデータが続く場合、分離を失敗します。 原因は2210行にあり、カラーデータの最初が空白4個(黒が2つ連続)なら、カ ラーデータでない(NL3のデータでない)と見なすようになっています。 今回の改訂で対応させましたが、スピードが若干落ちます。 MAP475 アルルカン 10 ' SAVE"NT3",A 11 ' NL3データ ブンリ プログラム ver. 1.1 88/8/5 100 ' 110 ' init 120 DEFINT A-Z 130 DIM N(255) 140 FOR I=0 TO 255:N(I)=-1:NEXT 150 P=0 160 FOR I=&H20 TO &H7E:N(I)=P:P=P+1:NEXT 170 FOR I=&HA0 TO &HDF:N(I)=P:P=P+1:NEXT 180 N(&HFD)=P:P=P+1:N(&HFE)=P 190 CHKL=78 1000 ' 1010 ' main 1020 INPUT "Log File Name = ",SF$ 1030 OPEN SF$ FOR INPUT AS #1 ' <== キシュニ ヨッテ カエテ クダサイ 1100 ' 1110 GOSUB 2000 : IF EOF(1) THEN 1140 1120 IF F THEN GOSUB 3000 1130 GOTO 1100 1140 CLOSE #1 1150 END 2000 ' 2010 ' check color data 2020 F=0 2030 WHILE NOT(F OR EOF(1)) 2040 IF EOF(1) THEN 2080 2050 LINE INPUT #1,D$ ':PRINT D$ 2060 IF LEN(D$)>7 THEN IF LEFT$(D$,7)="Article" THEN GOSUB 2100 2070 IF (LEN(D$)=78) OR (LEN(D$)=128) THEN GOSUB 2200 2080 WEND 2090 RETURN 2100 ' 2110 F$=MID$(STR$(VAL(MID$(D$,8))),2) 2120 PRINT:PRINT "Find Article ";F$; 2130 RETURN 2200 ' 2210 IF LEFT$(D$,78)=SPACE$(78) THEN RETURN 2220 I=1:A1=0:A2=0 : ER=0 2230 WHILE NOT((I>=CHKL) OR ER) 2240 A1=N(ASC(MID$(D$,I ,1))):IF A1=-1 THEN ER=-1 2250 A2=N(ASC(MID$(D$,I+1,1))):IF A2=-1 THEN ER=-1 2260 IF A1+A2*128>729 THEN ER=-1 2270 I=I+2 2280 WEND 2290 IF NOT ER THEN F=-1 2300 RETURN 3000 ' 3010 ' output data 3020 PRINT " Write"; 3025 GOSUB 4000 3030 OPEN F$+OP$+".NL3" FOR OUTPUT AS #2 ' <== キシュニ ヨッテ カエテ クダサイ 3040 GOSUB 3100 3050 CLOSE #2 3060 RETURN 3100 ' 3110 IF LEN(D$)=0 THEN RETURN 3120 PRINT #2,D$ ':PRINT D$ 3130 LINE INPUT #1,D$ 3140 GOTO 3110 4000 ' 4005 ' ファイル ノ ジュウフク チェック 4010 OP=&H40:OP$="" 4020 IF OP<>&H40 THEN OP$=CHR$(OP) '<== ヘンスウ OP ヲ ミテ、 ファイルメイ ニ ツケル OP$ ヲ キメル。 4030 OPEN F$+OP$+".NL3" AS #2 '<== ランダムファイル デ オープン スル。 4040 FL=LOF(2) '<== ファイルノ ナガサ(レコード スウ) ヲ ヨム。 4050 CLOSE #2 4060 IF FL=0 THEN RETURN '<== ファイル ノ ナガサガ 0 ナラ イイガ・・・ 4070 IF OP<>&H40+26 THEN OP=OP+1 '<== ナガサガ 0 デナケレバ、 オプションヲ ツケヨウ!! 4080 GOTO 4020 '<== サア、 オプションヲ ツケタ ファイルモ、 モウイチド シラベヨウ。