home *** CD-ROM | disk | FTP | other *** search
/ 64'er / 64ER_CD.iso / 87xx / 8706b.d64 / zusammensetzer3. (.txt) < prev   
Commodore BASIC  |  1995-03-30  |  6KB  |  136 lines

  1. 1 REM  ZUSAMMEN-SETZER
  2. 2 REM         *
  3. 3 REM  GERMANO CARONNI
  4. 4 REM  GREUBSTELSTR.10
  5. 5 REM CH-5430 WETTINGEN
  6. 6 REM TEL.0041/56262574
  7. 7 REM         *
  8. 10 POKE53281,0:POKE53280,0:PRINT"[147]"
  9. 15 PRINT"    ZUSAMMENSETZEN VON PROGRAMMEN"
  10. 20 INPUT"ANZAHL FILES";AA:IFAA<1ORAA>50THEN10
  11. 21 DIMA%(282+AA*7),FA(AA-1),FE(AA-1)
  12. 30 DIMA$(AA-1),AN(AA-1),LE(AA-1),EN(AA-1),A(3):FORI=0TOAA-1:PRINT"[147]FILE"I+1":";
  13. 35 INPUTA$:IFA$=""THEN35
  14. 37 A$(I)=LEFT$(A$+"[160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160][160]",16):NEXTI:OPEN1,8,15,"I"
  15. 38 PRINT"[147]NR. FILENAMEN        START END+1 LAENG"
  16. 40 FORI=0TO203STEP34:A$=CHR$(5)+CHR$(34):FORJ=0TO33:READA:A$=A$+CHR$(A):NEXTJ
  17. 41 PRINT#1,"M-W"+CHR$(I)+A$:NEXTI
  18. 42 READA:PRINT#1,"M-W"+CHR$(204)+CHR$(5)+CHR$(1)+CHR$(A)
  19. 50 FORJ=0TOAA-1:PRINT#1,"M-W"+CHR$(240)+CHR$(7)+CHR$(16)+A$(J)
  20. 60 PRINT#1,"UC":INPUT#1,A,B$,C,D:IFATHENPRINTA;B$;C;D;A$(J):CLOSE1:END
  21. 70 FORI=0TO3:PRINT#1,"M-R"+CHR$(233+I)+CHR$(7):GET#1,A$:A(I)=ASC(A$+CHR$(0))
  22. 80 NEXT:AN(J)=A(2)+256*A(3):LE(J)=A(0)+256*A(1)+1:EN(J)=AN(J)+LE(J)
  23. 81 A$=STR$(J+1):PRINTRIGHT$("0"+RIGHT$(A$,LEN(A$)-1),2)+": "+A$(J);TAB(20);
  24. 82 PRINTAN(J)"[157]";TAB(26);EN(J)"[157]";TAB(32);LE(J)"[157]":NEXTJ
  25. 99 R=2100:PRINT"[147]NR. NEUAN NEE+1  FILAN FIE+1  LAENG":FORI=0TOAA-1
  26. 100 A$=STR$(I+1):PRINTRIGHT$("0"+RIGHT$(A$,LEN(A$)-1),2)+":";R"[157]";
  27. 101 PRINTTAB(9);R+LE(I)"[157]";:R=R+LE(I)
  28. 110 PRINTTAB(16);AN(I)"[157]";TAB(22);EN(I)"[157]";TAB(29);LE(I)"[157]":NEXTI
  29. 115 LM=R+AA*7+280:IFLM<53248THEN120
  30. 116 PRINT"[147]    SORRY - DAS FILE WIRD ZU LANG"
  31. 117 PRINT"ES BELEGT DEN PLATZ VON 2049 BIS"LM
  32. 118 PRINT"DAS SIND"LM-53247"BYTES ZUVIEL.":END
  33. 120 PRINT"VERTAUSCHEN (J/N) ? ";
  34. 121 GETA$:IFA$<>"J"ANDA$<>"N"THEN121
  35. 122 PRINTA$:IFA$="N"THEN200
  36. 123 INPUT"VON  :";VO:INPUT"NACH :";NA
  37. 124 NA=NA-1:VO=VO-1:IFNA<0ORVO<0ORNA=VOORVO>=AAORNA>=AATHEN99
  38. 125 AN=AN(VO):LE=LE(VO):EN=EN(VO):A$=A$(VO):AN(VO)=AN(NA):LE(VO)=LE(NA)
  39. 126 EN(VO)=EN(NA):A$(VO)=A$(NA):AN(NA)=AN:LE(NA)=LE:EN(NA)=EN:A$(NA)=A$
  40. 127 GOTO99
  41. 199 :
  42. 200 DIMVN(AA-1):FORI=0TOAA-1:VN(I)=I:NEXT
  43. 201 R=2100:PRINT"[147]NR. NEUAN NEE+1  FILAN FIE+1  LAENG VNR":FORI=0TOAA-1
  44. 202 A$=STR$(I+1):PRINTRIGHT$("0"+RIGHT$(A$,LEN(A$)-1),2)+":";R"[157]";TAB(9);
  45. 203 FA(I)=R:PRINTR+LE(I)"[157]";:R=R+LE(I):FE(I)=R
  46. 204 PRINTTAB(16);AN(I)"[157]";TAB(22);EN(I)"[157]";TAB(29);LE(I)"[157]"TAB(35);VN(I)+1;"[157]"
  47. 205 NEXT:PRINT"ANGABE (J/N) ? ";
  48. 206 GETA$:IFA$<>"J"ANDA$<>"N"THEN206
  49. 207 PRINTA$:IFA$="N"THEN250
  50. 210 INPUT"NUMMER   :";NU:NU=NU-1
  51. 220 INPUT"V-NUMMER :";VN:VN=VN-1
  52. 230 IFNU<0ORNU>=AAORVN<0ORVN>=AATHEN201
  53. 240 VN(NU)=VN:GOTO201
  54. 250 IFAA=1THEN270
  55. 251 FORI=0TOAA-2:FORJ=I+1TOAA-1:IFVN(I)=VN(J)THEN201
  56. 260 NEXTJ,I
  57. 265 :
  58. 270 PRINT"[147]EINSPRUNG-ADRESSE":PRINT"(FUER BASIC-PRG. SIEHE 'BASIC-START')"
  59. 271 PRINT"(FUER  READY-MODUS           : 42100)":PRINT""TAB(18);:INPUTS
  60. 280 INPUT"[147]NAME DES NEUEN FILES";NA$:NA$=LEFT$(NA$,16):IFNA$=""THEN280
  61. 281 PRINT#1,"I":OPEN3,8,3,NA$+",P,W"
  62. 288 INPUT#1,A,B$,C,D:IFATHENPRINTA;B$;C;D;NA$:CLOSE3:WAIT198,1:GETA$:GOTO280
  63. 289 PRINT#3,CHR$(1);CHR$(8);
  64. 290 FORI=2049TO2097:READA:PRINT#3,CHR$(A);:NEXT:HI=INT(R/256):LO=R-HI*256
  65. 295 PRINT#3,CHR$(LO);CHR$(HI);:FORI=49152TO49223:READA:POKEI,A:NEXT:PRINT"[147]"
  66. 299 :
  67. 300 FORI=0TOAA-1:OPEN2,8,2,A$(I):PRINTA$(I):GET#2,A$,B$:SYS49152:CLOSE2:NEXT
  68. 305 :
  69. 310 FORI=0TO279:READA%(I):NEXT
  70. 315 A%(34)=R+47-INT((R+47)/256)*256
  71. 316 A%(35)=INT((R+47)/256)
  72. 317 A%(94)=R+134-INT((R+134)/256)*256
  73. 318 A%(96)=INT((R+134)/256)
  74. 319 A=R+281+AA*7:A%(98)=A-INT(A/256)*256:A%(106)=INT(A/256)
  75. 320 A=53248+281+AA*7-134:A%(108)=A-INT(A/256)*256:A%(110)=INT(A/256)
  76. 325 A%(72)=S-INT(S/256)*256:A%(73)=INT(S/256)
  77. 330 :
  78. 340 PO=280:FORII=0TOAA-1:N=255:FORM=0TOAA-1:FORJ=0TOAA-1
  79. 345 IFVN(M)<NTHENI=M:N=VN(M)
  80. 347 NEXTJ,M:VN(I)=255
  81. 350 K=1-(FA(I)>=AN(I)):A%(PO)=K:PO=PO+1:ONKGOTO360,365
  82. 360 A=FA(I)-1:B=FE(I)-1:C=EN(I)-1
  83. 361 GOTO370
  84. 365 A=FE(I):B=FA(I):C=AN(I)
  85. 370 AH=INT(A/256):BH=INT(B/256):CH=INT(C/256):AL=A-AH*256:BL=B-BH*256
  86. 375 CL=C-CH*256
  87. 380 A%(PO)=AL:A%(PO+1)=AH:A%(PO+2)=BL
  88. 385 A%(PO+3)=BH:A%(PO+4)=CL:A%(PO+5)=CH
  89. 390 PO=PO+6:NEXTII:A%(PO)=0
  90. 395 :
  91. 400 FORI=0TOPO:PRINT#3,CHR$(A%(I));:NEXT:PRINT"[147]DAS FILE GEHT VON 2049 BIS";
  92. 405 PRINTLM;"   G.C"
  93. 410 CLOSE3:CLOSE1:END
  94. 500 :
  95. 1000 DATA76,22,5,169,0,133,249,133,127,173,0,3,133,128,173,1,3,133
  96. 1018 DATA129,76,96,212,169,18,160,0,141,0,3,140,1,3,32,24,193,32
  97. 1036 DATA3,5,32,3,5,169,0,141,239,7,10,10,10,10,10,168,162,0
  98. 1054 DATA185,5,3,221,240,7,208,8,200,232,224,16,208,242,240,20,238,239
  99. 1072 DATA7,173,239,7,201,9,208,222,173,0,3,208,209,169,98,76,200,193
  100. 1090 DATA152,56,233,16,168,162,0,185,2,3,157,237,7,200,232,224,3,208
  101. 1108 DATA244,173,238,7,141,0,3,173,239,7,141,1,3,169,252,141,233,7
  102. 1126 DATA169,0,141,234,7,32,3,5,173,2,3,141,235,7,173,3,3,141
  103. 1144 DATA236,7,173,0,3,208,10,173,1,3,56,233,4,141,233,7,96,32
  104. 1162 DATA3,5,173,0,3,240,17,173,233,7,24,105,254,141,233,7,144,3
  105. 1180 DATA238,234,7,76,161,5,173,1,3,56,233,2,24,109,233,7,141,233
  106. 1198 DATA7,144,3,238,234,7,96
  107. 1999 :
  108. 2000 DATA17,8,0,0,158,32,50,48,54,55,32,32,255,32,32,0,0,0,160,16,140,32
  109. 2010 DATA208,140,33,208,169,147,141,134,2,32,210,255,152,121,0,8,136,208,250
  110. 2020 DATA234,234,234,234,120,132,1,76
  111. 2030 :
  112. 2400 DATA32,204,255,162,2,32,198,255,160,0,132,102,32,207,255,234,234,234
  113. 2418 DATA234,153,72,192,200,208,2,230,102,165,144,41,64,133,101,240,2,230
  114. 2436 DATA102,165,102,240,227,132,100,32,204,255,162,3,32,201,255,160,0,185
  115. 2454 DATA72,192,32,210,255,200,196,100,208,245,165,101,240,188,32,204,255,96
  116. 2500 :
  117. 3000 DATA234,234,234,234,234,234,234,234,234,234,234,234,169,32,141,229,7,169
  118. 3018 DATA32,141,230,7,169,94,141,231,7,234,234,234,234,234,234,185,47,192
  119. 3036 DATA153,52,3,200,192,204,208,245,76,52,3,169,55,133,1,160,0,185
  120. 3054 DATA71,3,153,0,208,200,192,8,208,245,240,8,169,55,133,1,88,76
  121. 3072 DATA226,252,160,0,185,191,163,153,196,3,200,192,60,208,245,234,234,234
  122. 3090 DATA234,234,234,169,0,162,0,160,0,133,95,134,96,132,90,169,0,162
  123. 3108 DATA0,160,0,133,91,134,88,132,89,169,0,133,1,32,196,3,234,234
  124. 3126 DATA234,234,234,234,234,76,8,208,169,55,133,1,88,76,226,252,162,0
  125. 3144 DATA189,146,208,240,116,232,168,189,146,208,133,95,232,189,146,208,133,96
  126. 3162 DATA232,189,146,208,133,90,232,189,146,208,133,91,232,189,146,208,133,88
  127. 3180 DATA232,189,146,208,133,89,232,192,1,208,42,160,0,177,90,145,88,165
  128. 3198 DATA90,56,233,1,133,90,176,2,198,91,165,88,56,233,1,133,88,176
  129. 3216 DATA2,198,89,165,91,197,96,208,224,165,90,197,95,208,218,240,167,160
  130. 3234 DATA0,177,90,145,88,230,90,208,2,230,91,230,88,208,2,230,89,165
  131. 3252 DATA91,197,96,208,234,165,90,197,95,208,228,240,135,173,230,7,234,234
  132. 3270 DATA234,234,234,234,234,234,234,76,0,208
  133. 9999 END
  134. 10000 FORI=49152TO49432STEP18:PRINTI-46152"DATA";:FORJ=0TO17:A$=STR$(PEEK(I+J))
  135. 10020 PRINTMID$(A$,2,LEN(A$)-1);",";:NEXTJ:PRINTCHR$(20):NEXTI:END
  136.