63000 REM MENUE 63001 PRINTCHR$(147)CHR$(5)CHR$(14):POKE53281,0:POKE53280,0 63002 PRINT""TAB(2)"-- 1 -- ==> [196]OPPELPUNKTE EINFUEGEN." 63003 PRINT""TAB(2)"-- 2 -- ==> [196]OPPELPUNKTE ENTFERNEN." 63004 PRINT""TAB(2)"-- 3 -- ==> [218]EILEN UNSICHTBAR MACHEN" 63005 PRINT""TAB(2)"-- 4 -- ==> [218]EILEN SICHTBAR MACHEN." 63006 PRINT""TAB(2)"-- Q -- ==> [197]NDE !" 63007 A$="":GETA$:IFA$=""THEN63007 63008 IFA$="Q"THENGOTO63115 63009 Z=VAL(A$):IFZ<1ORZ>4THENRUN63001 63010 IFZ=3THENUN=1:GOSUB63055 63011 IFZ=4THENUN=0:GOSUB63055 63012 IFZ=1THENGOSUB63016 63013 IFZ=2THENGOSUB63074 63014 UN=2:GOTO63001 63015 REM DOPPELPUNKTE EINFUEGEN 63016 BY=2049:REM STARTADRESSE 1. ZEILE 63017 LB=PEEK(2051):HB=PEEK(2052):REM ZEILENNUMMER 1. ZEILE 63018 L2=PEEK(2049):H2=PEEK(2050):REM ADRESSE NAECHSTE ZEILE 63019 POKE49160,INT(BY/256):POKE49159,BY-INT(BY/256)*256 63020 POKE49153,LB:POKE49154,HB 63021 POKE49155,L2:POKE49156,H2 63022 ZE=LB+256*HB:REM ZEILENNUMMER AUS LOW- UND HIGHBYTE 63023 IFZE>62999THEN63051:REM TEST OB SCHUTZPROGRAMM ERREICHT 63024 BN=L2+256*H2:REM ADRESSE NAECHSTE ZEILE 63025 IFBN-BY>60THENPRINT"[147][218]EILE"ZE;"IST ZU LANG" 63026 IFBN-BY>60THENPRINT"[212]ASTE !":POKE198,0:WAIT198,1:POKE198,0:BY=BN:GOTO63045 63027 IFPEEK(BY+4)=58THENPRINT"[147][201]N";ZE;"IST BEREITS EIN [196]OPPELPUNKT !" 63028 IFPEEK(BY+4)=58THENPRINT"[212]ASTE !":POKE198,0:WAIT198,1:POKE198,0 63029 IFPEEK(BY+4)=58THENBY=BN:GOTO63045 63030 PRINT"[147]LIST";LB+256*HB:PRINT"G[207]63032:":PRINT"G[207]63032":PRINT"G[207]63032" 63031 GOSUB63111:STOP:REM CURSOR DOWN BESTIMMEN 63032 IFZE>9999THENX=6:GOTO63038 63033 IFZE>999THENX=5:GOTO63038 63034 IFZE>99THENX=4:GOTO63038 63035 IFZE>9THENX=3:GOTO63038 63036 IFZE<=9THENX=2:GOTO63038 63037 REM ^ FESTSTELLEN WIEVIEL NACH RECHTS WEGEN ZEILENNUMMER ^ 63038 PRINT""; 63039 FORI=1TOX:PRINT"";:NEXT 63040 PRINT"[148][148][148][148][148]:::::":REM EINFUEGEN DOPPELPUNKTE 63041 PRINT"GOTO 63044:[145][145][145][145][145]" 63042 POKE631,145:POKE632,145:POKE633,145:POKE634,145:POKE635,13 63043 POKE636,17:POKE637,17:POKE638,17:POKE639,17:POKE640,13:POKE198,10:STOP 63044 BY=PEEK(49155)+256*PEEK(49156)+5:REM ADRESSE ALTE ZEILE AUS LB UND HB 63045 POKE49159,BY-INT(BY/256)*256:POKE49160,INT(BY/256) 63046 L2=PEEK(BY):H2=PEEK(BY+1):REM ADRESSE NEUE ZEILE LOW UND HIGHBYTE 63047 POKE49155,L2:POKE49156,H2 63048 LB=PEEK(BY+2):HB=PEEK(BY+3):REM ZEILENNUMMER NEUE ZEILE LOW- UND HIGHBYTE 63049 ZE=LB+256*HB:REM ZEILENNUMMER NEUE ZEILE 63050 IFZE<63000THENGOTO63024:REM SCHUTZPROGRAMM ERREICHT ? 63051 PRINT"[147][197]NDZEILE ERREICHT !" 63052 FORI=1TO1000:NEXT:GOTO63001 63053 REM ZEILEN UNSICHTBAR MACHEN 63054 REM ZEILEN SICHTBAR MACHEN 63055 PRINT"[197]INEN [205]OMENT !":BY=2049 63056 LB=PEEK(2049):HB=PEEK(2050) 63057 ZE=PEEK(2051)+256*PEEK(2052) 63058 IFZE>62999THENRETURN 63059 A=PEEK(BY+4) 63060 B=PEEK(BY+5) 63061 C=PEEK(BY+6) 63062 D=PEEK(BY+7) 63063 E=PEEK(BY+8) 63064 F=PEEK(BY+9):REM ^ ERSTE 6 BYTE AUS DER EIGENTLICHEN ZEILE LESEN ^ 63065 IFUN=1THENIFA=58ANDB=58ANDC=58ANDD=58ANDE=58ANDF<>58THENPOKEBY+4,0 63066 IFUN=0THENIFA=0ANDB=58ANDC=58ANDD=58ANDE=58THENPOKEBY+4,58 63067 REM ^ TEST AUF 5 DOPPELPUNKTE BZW AUF 1. BYTE = 0 ^ 63068 BY=LB+256*HB:REM NEUE ADRESSE 63069 ZE=PEEK(BY+2)+256*PEEK(BY+3):REM NEUE ZEILENNUMMER 63070 IFZE>62999THENRETURN 63071 LB=PEEK(BY):HB=PEEK(BY+1):REM LOW- UND HIGHBYTE ADRESSE NAECHSTE ZEILE 63072 GOTO63059 63073 REM DOPPELPUNKTE ENTFERNEN 63074 PRINT"[197]INEN[205]OMENT BITTE !":BY=2049:REM ADRESSE ERSTE ZEILE 63075 LB=PEEK(2051):HB=PEEK(2052):REM LB UND HB DER NUMMER DER NAECHSTEN ZEILE 63076 L2=PEEK(2049):H2=PEEK(2050):REM LB UND HB DER ADRESSE DER NAECHSTEN ZEILE 63077 POKE49160,INT(BY/256):POKE49159,BY-INT(BY/256)*256 63078 POKE49153,LB:POKE49154,HB 63079 POKE49155,L2:POKE49156,H2 63080 ZE=LB+256*HB:REM BERECHNEN DER ZEILENNUMMER 63081 IFZE>62999THEN63108:REM TEST OB IM SCHUTZPROGRAMM 63082 BN=L2+256*H2:REM ADRESSE DER NAECHSTEN ZEILE FUER LAENGENBESTIMMUNG 63083 FORI=4TO8:IFPEEK(BY+I)<>58THENPRINT"[147][201]N"ZE"SIND KEINE 5 [196]OPPEL"; 63084 IFPEEK(BY+I)<>58THENPRINT"PUNKTE":PRINT"[212]ASTE" 63085 IFPEEK(BY+I)<>58THENPOKE198,0:WAIT198,1:POKE198,0 63086 IFPEEK(BY+I)<>58THENBY=BN:GOTO63102 63087 NEXTI 63088 PRINT"[147]LIST";LB+256*HB 63089 PRINT"G[207]63090:":PRINT"G[207]63090":PRINT"G[207]63090":GOSUB63111:STOP 63090 IFZE>9999THENX=6:GOTO63095 63091 IFZE>999THENX=5:GOTO63095 63092 IFZE>99THENX=4:GOTO63095 63093 IFZE>9THENX=3:GOTO63095 63094 IFZE<=9THENX=2:GOTO63095:REM ^ BESTIMMEN DER ZAHL CURSOR RECHTS WEGEN ZN 63095 PRINT""; 63096 FORI=1TOX:PRINT"";:NEXT 63097 PRINT" ":REM DOPPELPUNKTE ENTFERNEN 63098 PRINT"GOTO 63101:[145][145][145][145][145]" 63099 POKE631,145:POKE632,145:POKE633,145:POKE634,145:POKE635,13 63100 POKE636,17:POKE637,17:POKE638,17:POKE639,17:POKE640,13:POKE198,10:STOP 63101 BY=PEEK(49155)+256*PEEK(49156)-5:REM ADRESSE NEUE ZEILE 63102 POKE49159,BY-INT(BY/256)*256:POKE49160,INT(BY/256) 63103 L2=PEEK(BY):H2=PEEK(BY+1):REM ADRESSE NAECHSTE ZEILE 63104 POKE49155,L2:POKE49156,H2 63105 LB=PEEK(BY+2):HB=PEEK(BY+3):REM NUMMER AKTUELLE ZEILE 63106 ZE=LB+256*HB:REM NUMMER BERECHNEN 63107 IFZE<63000THENGOTO63082 63108 PRINT"[147][197]NDZEILE ERREICHT !" 63109 FORI=1TO1000:NEXT 63110 GOTO63001 63111 POKE631,19:POKE632,13:POKE633,17 63112 POKE634,13:POKE198,4:STOP 63113 REM ^ CURSOR MITTELS TASTATURPUFFER AUF GOTO SETZEN ^ 63114 REM LOESCHROUTINE 63115 ZE=63000 63116 POKE49165,INT(ZE/256):POKE49166,ZE-INT(ZE/256)*256 63117 PRINT""ZE:PRINT"GOTO63119:" 63118 POKE631,19:POKE632,13:POKE633,17:POKE634,13:POKE198,4:STOP 63119 ZE=PEEK(49166)+256*PEEK(49165):ZE=ZE+1:IFZE<63117THEN63116 63120 PRINT"[147]"ZE:PRINTZE+1:PRINTZE+2:PRINTZE+3:PRINTZE+4:PRINT""; 63121 POKE631,13:POKE632,13:POKE633,13:POKE634,13:POKE635,13:POKE198,5