home *** CD-ROM | disk | FTP | other *** search
/ 64'er / 64ER_CD.iso / sh7x / sh72b.d64 / super-install (.txt) < prev    next >
Commodore BASIC  |  1995-03-30  |  6KB  |  178 lines

  1. 10 REM ********************************
  2. 20 REM **    -- SUPER-INSTALL --     **
  3. 30 REM **    M. SCHACHT / M.KLEMM    **
  4. 40 REM **    BERLIN 51   (C) 1985    **
  5. 50 REM ********************************
  6. 60 POKE53280,0:POKE53281,0:POKE53272,23:PRINTCHR$(147)CHR$(159)CHR$(9)
  7. 61 POKE788,52:REM STOP BLOCKIEREN
  8. 62 DIMLA$(11),DT(36),IN(255),BI(255),IN$(16)
  9. 65 FORI=0TO38:BL$=BL$+CHR$(32):NEXT
  10. 67 PO=23:PT=10:PR$="... BITTE WARTEN ...":GOSUB100
  11. 70 REM ------------TABELLENWERTEVORGABE
  12. 73 FORI=0TO31:BI(I)=I+128:BI(I+32)=I+32:BI(I+64)=I:BI(I+96)=I+64
  13. 74 BI(I+128)=I+192:BI(I+160)=I+96:BI(I+192)=I+64:BI(I+223)=I+95:NEXT:BI(255)=94
  14. 75 FORI=0TO255:IN(I)=I:NEXT:POKE631,17:POKE198,1
  15. 76 RESTORE:FORI=0TO36:READDT(I):NEXT
  16. 77 FORI=0TO11:READLA$(I):NEXT
  17. 78 ZE=10:N$="CODETABELLEN NAME":AD=49152:TX$="TEXTPROGRAMM"
  18. 80 GOTO919
  19. 98 :
  20. 99 REM ----------AUSDRUCK POSITIONIEREN
  21. 100 POKE214,PO-1:PRINT:POKE211,PT:PRINTCHR$(145)PR$:RETURN
  22. 198 :
  23. 199 REM -------------------VORBLAETTERN
  24. 200 IFII=240THENRETURN
  25. 205 II=II+16:FORI=0TO15:POKE214,I+4:PRINT:POKE211,23:PRINTLEFT$(BL$,3)
  26. 210 POKE214,I+4:PRINT:POKE211,22:PRINTIN(I+II)
  27. 220 POKE(1236+I*40),BI(I+II):POKE(1242+I*40),BI(IN(I+II)):NEXT:RETURN
  28. 298 :
  29. 299 REM ---------------ZURUECKBLAETTERN
  30. 300 IFII<=0THENRETURN
  31. 305 II=II-16:FORI=15TO0STEP-1:POKE214,I+4:PRINT:POKE211,23:PRINTLEFT$(BL$,3)
  32. 310 POKE214,I+4:PRINT:POKE211,22:PRINTIN(I+II)
  33. 320 POKE(1236+I*40),BI(I+II):POKE(1242+I*40),BI(IN(I+II)):NEXT:RETURN
  34. 598 :
  35. 599 REM -------EDITOR(IDEE:DATA BECKER)
  36. 600 IN=0:POKE214,PO-1:PRINT:POKE211,PT:PRINTFR$;" ";
  37. 605 POKE204,0
  38. 609 POKE212,1:GETIN$:IFIN$=""THEN609
  39. 610 IFNU=0THEN616
  40. 611 IFIN=0THEN615
  41. 612 IFIN$=CHR$(20)THEN620
  42. 613 IFIN$=CHR$(17)ORIN$=CHR$(145)THENPOKE631,ASC(IN$):POKE198,1:IN$=CHR$(13):GOTO625
  43. 614 IFIN$="S"ORIN$="L"ORIN$="_"THENPOKE631,ASC(IN$):POKE198,1:IN$=CHR$(13):NU=0:GOTO625
  44. 615 :IFASC(IN$)<48ORASC(IN$)>57THEN605
  45. 616 IFIN$=CHR$(29)ORIN$=CHR$(157)THENIN$="":GOTO605
  46. 617 IFIN$="_"ORIN$=CHR$(145)ORIN$=CHR$(17)THENPOKE204,1:POKE212,0:RETURN
  47. 618 IFIN$=CHR$(13)ANDIN=0THENIN$="":GOTO605
  48. 620 POKE207,0
  49. 625 IFIN$=CHR$(13)THENPOKE204,1:PRINTCHR$(32):IN$="":GOTO650
  50. 630 IFIN$=CHR$(20)THENGOSUB660:GOTO605
  51. 635 IFIN>LL-1THEN605
  52. 640 PRINTIN$;
  53. 645 IN$(IN)=IN$:IN=IN+1:GOTO605
  54. 650 FORSL=0TOIN-1
  55. 655 IN$=IN$+IN$(SL):NEXT:RETURN
  56. 660 IFIN=0THENRETURN
  57. 665 POKE212,0:POKE207,0:PRINTCHR$(157)CHR$(32)CHR$(32)CHR$(157)CHR$(157);
  58. 670 IN=IN-1:IN$(IN)="":RETURN
  59. 698 :
  60. 699 REM ------------------------ANZEIGE
  61. 700 IFZE>18THENZE=3:POKE198,0:PO=21:PT=26:PR$=CHR$(32):GOSUB100
  62. 705 ZE=ZE+1:PT=26:POKE214,ZE-1:PRINT:POKE211,PT:PRINTCHR$(32)CHR$(158);
  63. 715 PRINTCHR$(157)CHR$(17)CHR$(18)CHR$(32)CHR$(146)CHR$(159):IFZE=4THENGOSUB200
  64. 720 RETURN
  65. 740 :
  66. 750 IFZE<5THENZE=20:POKE198,0:PO=6:PT=26:PR$=CHR$(32):GOSUB100
  67. 755 ZE=ZE-1:PT=26:POKE214,ZE+1:PRINT:POKE211,PT:PRINTCHR$(32)CHR$(158);
  68. 765 PRINTCHR$(157)CHR$(145)CHR$(18)CHR$(32)CHR$(146)CHR$(159):IFZE=19THENGOSUB300
  69. 770 RETURN
  70. 798 :
  71. 799 REM ----------------------EDITIEREN
  72. 800 FR$="":PO=ZE+1:PT=22:LL=3:NU=1:POKE214,PO-1:PRINT:POKE211,23:PRINTLEFT$(BL$,4)
  73. 810 POKE631,ASC(X$):POKE198,1:GOSUB600:IFVAL(IN$)>255THENX$=CHR$(32):GOTO800
  74. 820 IN(II+ZE-4)=VAL(IN$):POKE1242+(ZE-4)*40,BI(VAL(IN$))
  75. 830 RETURN
  76. 898 :
  77. 899 REM --------------HAUPTMENUE LAYOUT
  78. 900 POKE214,0:PRINT:POKE211,7:FORQ=1TO25:PRINTCHR$(175);:NEXT
  79. 905 PR$="ZEICHEN    CODE":PO=3:PT=12:GOSUB100
  80. 909 POKE214,1:PRINT:FORQ=1TO21:POKE211,7:PRINTCHR$(165):POKE211,31:PRINTCHR$(145)CHR$(167):NEXT
  81. 910 PR$="[163][163][163][163][163][163][163]    [163][163][163][163]":PO=4:PT=12:GOSUB100
  82. 915 PR$=CHR$(18)+" SICHERN [221] LADEN [221]_ ENDE ":PO=23:PT=7:GOSUB100:PRINTBL$
  83. 916 RETURN
  84. 917 :
  85. 918 REM ------------HAUPTMENUE ABFRAGEN
  86. 919 GOSUB900:II=-16:GOSUB200:GOSUB2350:REM VORGABEN LISTEN
  87. 920 GETX$:IFX$=""THEN920
  88. 925 IFASC(X$)>47ANDASC(X$)<58THENGOSUB800:GOTO920
  89. 930 IFX$<>"S"ANDX$<>"L"ANDX$<>CHR$(17)ANDX$<>CHR$(145)ANDX$<>"_"ANDX$<>CHR$(24)THEN920
  90. 940 IFX$=CHR$(17)ANDII+ZE<259THENGOSUB700:GOTO920
  91. 945 IFX$=CHR$(17)ANDII+ZE>258THENII=-16:GOSUB700:GOTO920
  92. 950 IFX$=CHR$(145)ANDII+ZE>4THENGOSUB750:GOTO920
  93. 955 IFX$=CHR$(145)ANDII+ZE<5THENII=256:GOSUB750:GOTO920
  94. 960 IFX$="S"THENGOSUB1100:PO=24:PT=0:PR$=BL$:GOSUB100:GOTO920
  95. 970 IFX$="L"THENGOSUB1000:PO=24:PT=0:PR$=BL$:GOSUB100:GOTO920
  96. 980 IFX$=CHR$(24)THENGOSUB3000
  97. 985 IFX$="_"THENPOKE788,49:PRINTCHR$(147):END
  98. 990 GOTO920
  99. 998 :
  100. 999 REM ----------------INDEXFELD LADEN
  101. 1000 FR$="CODE LADEN:":LL=16:PO=23:PT=7:NU=0:GOSUB600:N$=IN$
  102. 1002 IFIN$="_"ORIN$=CHR$(145)ORIN$=CHR$(17)THENPOKE631,ASC(IN$):POKE198,1:RETURN
  103. 1005 OPEN15,8,15:OPEN1,8,2,IN$+",P,R":GOSUB2200:REM FEHLER
  104. 1010 IFFE<>0THEN1090
  105. 1020 GET#1,Z$,V$:AD=ASC(Z$+CHR$(0))+256*ASC(V$+CHR$(0)):REM ADRESSE
  106. 1030 FORI=0TO36:GET#1,X$:NEXT:REM UEBERLESEN
  107. 1040 FORI=0TO255:GET#1,X$:IN(I)=ASC(X$+CHR$(0)):NEXT
  108. 1045 GET#1,L$:LE=ASC(L$+CHR$(0))-1
  109. 1050 TX$="":FORI=0TOLE:GET#1,X$:TX$=TX$+X$:NEXT:GOSUB2350:REM TEXTPRG.NAME
  110. 1060 II=-16:GOSUB200:REM NEU LISTEN
  111. 1090 CLOSE1:CLOSE15:IN$="":RETURN
  112. 1098 :
  113. 1099 REM -------------INDEXFELD SICHERN
  114. 1100 FR$="CODE SICHERN:":LL=16:PO=23:PT=7:NU=0:GOSUB600:N$=IN$
  115. 1101 GOSUB1190:IFPEEK(198)=1THENRETURN
  116. 1102 FR$="ADRESSE <DEZ>:":LL=5:GOSUB600:AD=VAL(IN$):GOSUB1190:IFPEEK(198)=1THENRETURN
  117. 1103 GOSUB2400:AA=AD:GOSUB2450:IFAD=0THEN1102
  118. 1104 FR$="TEXTPROGRAMM:":LL=16:GOSUB600:TX$=IN$:GOSUB1190:IFPEEK(198)=1THENRETURN
  119. 1110 OPEN15,8,15:OPEN1,8,1,"@:"+N$:GOSUB2200:REM FEHLER
  120. 1112 IFFE<>0THENCLOSE1:CLOSE15:IN$="":RETURN
  121. 1115 GOSUB2350:REM STATUSZEILE
  122. 1120 PRINT#1,CHR$(LB);CHR$(HB);:REM ADRESSE
  123. 1125 K=0:FORI=ADTO(AD+36):PRINT#1,CHR$(DT(K));:K=K+1:NEXT:REM MASCHINENPRG DRUCKER
  124. 1130 K=0:FORI=(AD+36)TO(AD+36+255):PRINT#1,CHR$(IN(K));:K=K+1:NEXT:REM INDEXFELD
  125. 1135 PRINT#1,CHR$(LEN(TX$));
  126. 1140 K=1:FORI=(AD+36+255)TO(AD+36+255+LEN(TX$)-1)
  127. 1145 PRINT#1,CHR$(ASC(MID$(TX$,K,1)));:K=K+1:NEXT:REM NAME
  128. 1150 CLOSE1:CLOSE15:GOSUB3000:IN$="":RETURN
  129. 1188 :
  130. 1189 REM --------------ABFRAGE AUSSTIEG
  131. 1190 PO=24:PT=0:PR$=BL$:GOSUB100
  132. 1191 IFIN$="_"ORIN$=CHR$(145)ORIN$=CHR$(17)THENPOKE631,ASC(IN$):POKE198,1:RETURN
  133. 1192 PO=23:PT=7:RETURN
  134. 2198 :
  135. 2199 REM ------------------------FEHLER
  136. 2200 INPUT#15,FE,FE$:IFFE=0THEN2220
  137. 2210 PR$=BL$:PO=24:PT=0:GOSUB100:PR$=FE$:PT=(40-LEN(FE$))/2:GOSUB100:GOSUB2300
  138. 2220 RETURN
  139. 2298 :
  140. 2299 REM -----------------WARTESCHLEIFE
  141. 2300 FORQ=1TO2500:NEXT:RETURN
  142. 2348 :
  143. 2349 REM -------------------STATUSZEILE
  144. 2350 PO=1:PT=0:PR$=BL$:GOSUB100:AD$=RIGHT$(STR$(AD),LEN(STR$(AD))-1)
  145. 2352 PR$=CHR$(30)+CHR$(34)+N$+CHR$(47)+AD$+CHR$(47)+TX$+CHR$(34)+CHR$(159)
  146. 2353 IFLEN(PR$)>40THENPR$=LEFT$(PR$,39)+CHR$(34)
  147. 2355 PT=INT((41-LEN(PR$))/2):GOSUB100:RETURN
  148. 2398 :
  149. 2399 REM --------------ADRESSE ANPASSEN
  150. 2400 AA=AD+11:GOSUB2450:DT(1)=LB:DT(6)=HB
  151. 2405 AA=AD+35:GOSUB2450:DT(20)=LB:DT(21)=HB:DT(28)=LB:DT(29)=HB
  152. 2410 AA=AD+37:GOSUB2450:DT(24)=LB:DT(25)=HB
  153. 2420 RETURN
  154. 2448 :
  155. 2449 REM -----------------HIGH/LOW BYTE
  156. 2450 HB=INT(AA/256):LB=AA-HB*256:RETURN
  157. 2998 :
  158. 2999 REM -------LADEPROGRAMM GENERIEREN
  159. 3000 PO=23:PT=7:PR$=CHR$(18)+"MIT CTRL-X LADER ERZEUGEN":GOSUB100
  160. 3002 PO=24:PR$="PROGRAMM WIRD GELOESCHT !":GOSUB100
  161. 3003 GETX$:IFX$=""THEN3003
  162. 3005 IFX$<>CHR$(24)THENGOSUB915:RETURN
  163. 3010 PRINTCHR$(147);LA$(0)
  164. 3020 PRINT:PRINT:PRINTLA$(1);CHR$(34);N$;CHR$(34);LA$(2):PRINTLA$(3)
  165. 3030 PRINTLA$(4);CHR$(34);LA$(5);STR$(AD);LA$(6);CHR$(34);LA$(7);CHR$(34);TX$;
  166. 3040 PRINTCHR$(34);LA$(7);CHR$(34);LA$(2):PRINTLA$(8)
  167. 3050 PRINTLA$(9);CHR$(34);LA$(10)+TX$;CHR$(34);LA$(11)
  168. 3060 POKE631,19:FORI=632TO637:POKEI,13:NEXT:POKE198,7:END
  169. 4998 :
  170. 4999 REM ---------------DRUCKERPROGRAMM
  171. 5000 DATA169,11,141,38,3,169,192,141,39,3,96,72,165,154,201,4,208,12,104,140
  172. 5010 DATA35,192,168,185,37,192,72,172,35,192,104,76,202,241,255,255,255
  173. 5998 :
  174. 5999 REM ------------DATAS-LADEPROGRAMM
  175. 6000 DATA "NEW" , "1 PRINTCHR$(147):IFA=0THENA=1:LOAD"
  176. 6010 DATA ",8,1"
  177. 6020 DATA "3 PRI
  178.