home *** CD-ROM | disk | FTP | other *** search
- 2 a=12345.6789:dima%(123)
- 3 deffna(a)=sin(a)*sqr(a)
- 4 d%=123:printchr$(14)chr$(8)
- 5 (NULL)1,"[147]key_"
- 6 (NULL)2,"screen:_"
- 7 (NULL)3,"[147]di[210]_"
- 8 (NULL)4,"dload_"
- 9 (NULL)5,"collect"
- 10 (NULL)6,"enter_"
- 11 (NULL)7,"?'"
- 12 (NULL)8,"basic:_"
- 13 goto800
- 140 geta$:ifa$=""then140
- 141 return
- 150 print"[147][146][158][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]";
- 151 printleft$(a$+" ",40)"[146][153]"
- 152 return
- 800 poke53280,.:poke53281,.:print"[147][150] @[194][193][211][201][195]
- 810 [153]" usrusrusrusrusrusr
- 815 print" der [211][213][208][197][210]-[197][196][201][212][207][210]
- 820 [153]" usrusrusrusrusrusrusrusrusrusrusrusrusrusrusrusr
- 825 print"[153][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183]
- 830 [153]"cont ueber 40 neue peekefehle !!"
- 835 [153]" str$ie unentbehrliche (NULL)rogrammierhilfe"
- 836 [153]" ((NULL)(NULL)valvalstr$str$(NULL)(NULL) kompatibel)":[141]140
- 900 a$[178]"atn(NULL)(NULL)valright$(NULL)(NULL)(NULL)chr$":[141]150
- 905 [153]"str$iese atnnleitung stellt nur eine kleine
- 910 print"[194]efehlsuebersicht dar. [206]eue [194]efehle sind";
- 915 print"mit [150][210][207][212][153] gekennzeichnet, [193]usgaben des
- 920 [153]"lenomputers mit contpeek(NULL)atn(NULL)print und (NULL)asten in
- 925 print"[196][213][206][203][197][204][199][210][213][197][206][153].
- 930 [153]"(NULL)uerst wird der (NULL)oolkit beschrieben,
- 935 print"dann das [196]isk-[194]asic. [196]ann folgen weitere";
- 940 print"allgemeine [194]efehle, der [197]ditor und der
- 945 [153]"(NULL)onitor. atnm (NULL)chluss werden genauere
- 950 print"[197]inblicke in das [211]ystem gezeigt."
- 1000 gosub140:a$="[212][210][193][195][197]":gosub150
- 1005 print" [150][212][210][193][195][197][153] schaltet das [218]eilenlisting
- 1010 [153]"waehrend des (NULL)rogrammablaufs ein.
- 1015 print"[196]ie aktuelle [218]eile wird dabei in den
- 1020 [153]"ersten zwei peekildschirmzeilen gelistet.
- 1025 print"[215]enn man die [211][200][201][198][212]-[212]aste[153] drueckt,laeuft
- 1030 [153]"das (NULL)rogramm kontinuierlich weiter,
- 1035 print"mit der [195][194][205]-[212]aste[153] kann man das [208]rogramm
- 1040 [153]"in einzelnen (NULL)chritten laufen lassen.
- 1045 print" [150][212][210][193][195][197] [207][198][198][153] schaltet den [205]odus aus.
- 1099 [141]140
- 1100 a$[178]"str$val(NULL)val(NULL)val":[141]150
- 1105 [153]"str$er peekefehl defstr$val(NULL)val(NULL)valprint loescht (NULL)eilen.
- 1110 print"[196]ie [211]yntax ist die des [204]ist-befehls,
- 1115 [153]"also defstr$val(NULL)val(NULL)val 100-print loescht alle (NULL)eilen
- 1120 print"ab einschliesslich [218]eile 100.
- 1125 [153]"defstr$val(NULL)val(NULL)val 120-130print loescht die (NULL)eilen
- 1130 print"von 120 bis 130,jeweils einschliesslich.
- 1135 [153]" defstr$val(NULL)val(NULL)val -150print loescht alle (NULL)eilen bis
- 1140 print"150 und [150][196][197][204][197][212][197] 100[153] die [218]eile 100
- 1199 [141]140
- 1200 a$[178]"atn(NULL)(NULL)(NULL)":[141]150
- 1205 [153]"atnutomatische (NULL)eilennummerierung
- 1210 print"beim [197]intippen von [208]rogrammen. [197]s
- 1215 [153]"erscheint immer die folgende (NULL)eilennr.
- 1220 print"auf dem [194]ildschirm. [205]it einer [204]eerzeile
- 1225 [153]"kann abgebrochen werden.
- 1235 print"[193]nfangszeile und [211]chrittweite lassen
- 1240 [153]"sich veraendern, (NULL)tandard ist atnnfangs-
- 1245 print"zeile 100 und [211]chrittweite 10. [211]yntax:
- 1255 [153]" defatn(NULL)(NULL)(NULL) ((NULL)valright$(NULL)val(NULL)(NULL)(NULL)(NULL)(NULL)val(NULL))(,(NULL)len(NULL)right$(NULL)(NULL)(NULL)valright$(NULL)val)print":[141]140
- 1260 [153]"loadvalin (NULL)ternchen vor der (NULL)ummer gibt an,
- 1262 print"dass die [218]eile schon existiert. [205]it
- 1264 [153]"einer (NULL)eerzeile kann man abbrechen, ohne";
- 1266 [153]"die (NULL)eile zu loeschen.
- 1268 print"[205]an kann den [194]efehl auch erweitern :
- 1270 [153]"(NULL)it defatn(NULL)(NULL)(NULL),,textprint kann man sich z.peek. bei
- 1272 print"[196]ata-[218]eilen das muehselige [197]intippen
- 1274 [153]"des str$atn(NULL)atn-peekefehls ersparen :
- 1276 print"[150][193][213][212][207](),(),[196][193][212][193][153]
- 1299 [141]140
- 1300 a$[178]"(NULL)(NULL)str$":[141]150
- 1305 [153]"str$er peekefehl def(NULL)(NULL)str$print holt ein peekasic-
- 1310 print"programmm zurueck,das mit [206][197][215] geloescht
- 1315 [153]"wurde.(NULL)ach dem (NULL)val(NULL) darf keine (NULL)ariable
- 1320 print"benutzt oder eine [194]asic-[218]eile eingegeben
- 1325 [153]"worden sein,da sonst der peekefehl def(NULL)(NULL)str$print
- 1330 print"nicht mehr funktioniert."
- 1340 print"[193]usserdem sollten [211][217][206][212][193][216] [197][210][210][207][210]s
- 1345 [153]"vermieden werden, da bei einem (NULL)(NULL)(NULL)(NULL)atn(NULL)
- 1350 print"[197][210][210][207][210] evtl. eine neue [214]ariable definert
- 1355 [153]"wird.
- 1399 gosub140
- 1400 a$="[196][213][205][208]":gosub150
- 1405 print"[196]er [194]efehl [150][196][213][205][208][153] listet alle aktuellen
- 1410 [153]"(NULL)ariablen,dimensionierte ascelder und
- 1415 print"definierte [198]unktionen.[197]in [193]usdruck
- 1420 [153]"koennte so aussehen :cont
- 1422 ifa$=chr$(13)ora$=chr$(141)thena$=""
- 1425 (NULL):gosub140
- 1430 print"[153][145][145][145][145][145]"tab(20)"[198]liesskommavariable"
- 1435 printtab(20)"[198]unktion"
- 1440 printtab(20)"[201]nteger-zahl"
- 1445 printtab(20)"[211]tring"
- 1450 printtab(20)"dimensioniertes [198]eld"
- 1499 gosub140
- 1500 a$="[198][201][206][196]":gosub150
- 1505 print"[205]it dem [194]efehl [150][198][201][206][196][153] kann man das ganze"
- 1510 print"[208]rogramm nach einer bestimmten [198]ormu-
- 1515 [153]"lierung durchsuchen.valin peekeispiel:
- 1520 print" [150][198][201][206][196] [199][197][212][153] bringt z.b. diesen [193]usdruck:
- 1525 [153]"cont140 geta$:ifa$="[199](34)[199](34)"then140
- 1530 gosub140
- 1600 a$="[210][197][206][213][205][194][197][210]":gosub150
- 1610 print"[205]it dem [194]efehl [150][210][197][206][213][205][194][197][210][153] kann man die
- 1620 [153]"(NULL)eilen neu durchnummerieren.str$abei werden";
- 1630 [153]"alle (NULL)prungbefehle wie chr$(NULL)(NULL)(NULL),chr$(NULL)(NULL)(NULL)peek...
- 1640 print"so veraendert,dass sie auf die richtigen";
- 1650 print"[218]eilen zeigen,also [196]ieselben wie davor
- 1660 [153]"nur mit neuer (NULL)ummer.(NULL)yntax:
- 1670 print"[150][210][197][206][213][205][194][197][210](([218]eile)(,([211]chw.)(,(a)(-)(e))))[153]"
- 1680 print"[211]tandardparameter sind [218]eile =100 und
- 1682 [153]"(NULL)chrittweite ((NULL)chw.) =10.
- 1684 print"[205]it [150]a[153] und [150]e[153] bestimmt man den [194]ereich
- 1686 [153]"der umnummeriert werden soll.
- 1690 gosub140
- 1700 a$="[196][204][207][193][196]/[196][211][193][214][197]/[196][214][197][210][201][198][217]/[205][204][207][193][196]/[205][214][197][210][201][198][217]/[205][211][193][214][197]":gosub150
- 1705 print"[196]er [194]efehl [150][196][204][207][193][196][153] entspricht dem [204][207][193][196]-
- 1710 [153]"peekefehl mit der atnusnahme,dass er nur
- 1715 print"[194]asic-[208]rogramme laedt.[218]usaetzlich ist
- 1720 [153]"die (NULL)tandard-chr$eraeteadresse die atndresse
- 1725 print"8,also die [198]loppy."
- 1726 print"[197]ntsprechendes gilt fuer [196][211][193][214][197] und
- 1727 [153]"str$(NULL)val(NULL)right$asc(NULL).def(NULL)(NULL)(NULL)atnstr$print laedt (NULL)aschinensprache-
- 1728 print"programme,ohne [218]eiger zu veraendern.
- 1733 [141]140
- 1734 [153]"loaddie (NULL)yntax lautet wie folgt:
- 1735 print"[150][196][204][207][193][196]"chr$(34)"[206][193][205][197]"chr$(34)"(,[196]0)(,[213]8)[153]
- 1736 [153]"def(NULL)(NULL)atn(NULL)val"[199](34)"(NULL)atn(NULL)val"[199](34)"(,str$0)(,(NULL)8),atnnfadr.,valndadr.print
- 1737 print"[150][205][204][207][193][196]"chr$(34)"[206][193][205][197]"chr$(34)"(,[196]0)(,[213]8)(,[193]nfadr.)[153]
- 1740 [153]"(NULL)it dem defstr$print-(NULL)arameter kann man das
- 1745 print"[204]aufwerk bei einer [196]oppelfloppy bestim-
- 1750 [153]"men.str$er def(NULL)print-(NULL)arameter dient dazu,eine
- 1755 print"andere [199]eraeteadresse anzusteuern.
- 1760 [153]"defatnnfadr.print und defvalndadr.print bei def(NULL)(NULL)atn(NULL)valprint bedeuten
- 1765 print"die [193]nfangs- und [197]ndadresse des zu
- 1770 [153]"speichernden (NULL)aschinenspracheprogramms.":[141]140
- 1771 a$[178]"(NULL)(NULL)(NULL)":[141]150
- 1772 [153]"str$er peekefehl def(NULL)(NULL)(NULL)print laesst sich jetzt dazu
- 1773 print"benutzen, [208]rogramme zu laden und sofort
- 1774 [153]"zu starten.
- 1775 print"[211]yntax:"
- 1776 print"[150][210][213][206][153] startet [208]rogramm
- 1777 [153]"def(NULL)(NULL)(NULL)"[199](34)"(NULL)atn(NULL)val"[199](34)"print laedt
- 1778 print" und startet [208]rogramm
- 1779 [153]"(NULL)left$right$asc(NULL)/(NULL)(NULL)(NULL)-(NULL)(NULL)(NULL)(NULL)print laedt und startet
- 1780 print" erstes [208]rogramm
- 1799 [141]140
- 1800 a$[178]"lenatn(NULL)atn(NULL)(NULL)chr$/str$right$(NULL)vallen(NULL)(NULL)(NULL)(NULL)":[141]150
- 1805 [153]"(NULL)it deflenatn(NULL)atn(NULL)(NULL)chr$print oder defstr$right$(NULL)vallen(NULL)(NULL)(NULL)(NULL)print kann man das
- 1810 print"[201]nhaltsverzeichnis der [196]iskette auf den
- 1815 [153]"peekildschirm bringen,ohne das (NULL)rogramm zu
- 1820 print"loeschen.
- 1825 [153]"deflenatn(NULL)atn(NULL)(NULL)chr$(#4)(,)("[199](34)"(NULL)?str$(NULL)*=(NULL)"[199](34)")(,(NULL)8)(,str$0)print
- 1830 print"'[211]?[196][211]*=[208]' bedeutet hierbei den [211]chlues-
- 1835 [153]"sel fuer die ascloppy,um nur die str$ateien
- 1840 print"anzuzeigen,die diesem [211]chluessel ent-
- 1845 [153]"sprechen (ascloppy-left$andbuch).
- 1850 print"[205]it dem [150]#4[153] kann man das [196]irectory auf
- 1855 [153]"chr$eraet (NULL)r. 4, also den str$rucker leiten."
- 1899 [141]140
- 1900 a$[178]"str$right$(NULL)(NULL)val(NULL)(NULL)val(NULL)-peekvalascvalleft$(NULL)val":[141]150
- 1905 [153]"def(NULL)len(NULL)atn(NULL)lenleft$"[199](34)"(NULL)atn(NULL)val"[199](34)"print
- 1910 print" loescht [196]ateien auf [196]iskette
- 1915 [153]"deflen(NULL)(NULL)(NULL)vallen(NULL)print
- 1916 print" prueft die [196]iskette
- 1920 [153]"defleft$valatnstr$val(NULL)"[199](34)"(NULL)atn(NULL)val"[199](34)",str$0,right$idprint
- 1921 print" formatiert [196]isk
- 1925 [153]"deflen(NULL)(NULL)(NULL)"[199](34)"ascright$(NULL)val1"[199](34)"(NULL)(NULL)"[199](34)"ascright$(NULL)val2"[199](34)"print
- 1930 print" kopiert file1 nach file2
- 1940 [153]"defpeekatnlen(NULL)(NULL)(NULL) str$0 (NULL)(NULL) str$1print"
- 1945 [153]" kopiert ganze disk von str$0 nach str$1
- 1950 print"[150][210][197][206][193][205][197]"chr$(34)"[198][201][204][197]1"chr$(34)"[212][207]"chr$(34)"[198][201][204][197]2"chr$(34)"[153]
- 1955 [153]" nennt file1 in file2 um"
- 1960 [153]"allgemeine syntax:"
- 1965 [153]"def...("[199](34)"(NULL)atn(NULL)val1"[199](34)")(,str$0)(NULL)(NULL)("[199](34)"(NULL)atn(NULL)val2"[199](34);
- 1970 [153]")(,str$0)(,(NULL)8)print
- 1999 gosub140
- 2000 a$="[196][201][211][203]":gosub150
- 2005 print"[205]it dem [194]efehl [150][196][201][211][203][153] kann man [203]ommandos"
- 2010 print"zur [198]loppy schicken.[150][196][201][211][203]"chr$(34)"[201]"chr$(34)"[153] sendet den"
- 2020 print"[201]nitialisierungs-[194]efehl.
- 2025 [153]"(NULL)yntax:
- 2030 print"[150][196][201][211][203]"chr$(34)"[194][197][198][197][200][204]"chr$(34)"(,[213]8)[153]"
- 2040 print"[193]usserdem dient [150][196][201][211][203][153] dazu, die [211]tandard-";
- 2041 print"geraeteadresse (die, die ohne [213]x ange-
- 2042 [153]"sprochen wird) festzulegen :
- 2044 print"[150][196][201][211][203] devadr[153]":gosub140
- 2075 a$="[196][211]/[196][211]$":gosub150
- 2077 print"[150][196][211][153] und [150][196][211]$[153] haben die gleiche [194]edeu-
- 2079 [153]"tung wie im peekasic 4.0 der 'grossen'
- 2081 print"[195][194][205]s :
- 2083 [153]"defstr$(NULL)print =ascehlernummer der ascloppy
- 2085 print" =[154]0[153]
- 2087 [153]"defstr$(NULL)$print =ascehlertext der ascloppy
- 2089 print" =[154]00, ok,00,00[153]
- 2091 [141]140
- 2093 a$[178]"atn(NULL)(NULL)val(NULL)str$/(NULL)val(NULL)chr$val":[141]150
- 2105 [153]"(NULL)it defatn(NULL)(NULL)val(NULL)str$print kann man ein (NULL)rogramm an ein
- 2110 print"im [211]peicher befindliches [208]rogramm an-
- 2115 [153]"haengen.(NULL)it def(NULL)val(NULL)chr$valprint werden die zwei
- 2120 print"[208]rogramme anhand der [218]eilennummern
- 2125 [153]"zusammengefuegt.
- 2130 print"[196]ie [211]yntax fuer beide [194]efehle ist wie
- 2135 [153]"bei str$(NULL)(NULL)atnstr$.
- 2140 gosub140
- 2200 a$="[204][201][211][212]/[197][206][212][197][210]":gosub150
- 2201 print"[150][204][201][211][212]#4[153] listet das [208]rogramm auf [199]eraet
- 2202 [153]"(NULL)ummer 4,also auf den str$rucker.
- 2203 print"[150][204][201][211][212]"chr$(34)"[206][193][205][197]"chr$(34)"(,[196]0)(,[213]8)[153] listet das
- 2204 [153]"(NULL)rogramm im atn(NULL)lenright$right$-lenode auf str$iskette.
- 2205 print"[205]it [150][197][206][212][197][210][153] laesst sich das [193][211][195][201][201]-[198]ile
- 2206 [153]"wieder in den (NULL)peicher holen.str$as
- 2207 print"[208]rogramm wird wie bei [205][197][210][199][197] einge-
- 2208 [153]"mischt.(NULL)an kann auch peekefehls-
- 2209 print"sequenzen als [193][211][195][201][201]-[198]ile abspeichern
- 2210 [153]"und dann durch defval(NULL)(NULL)val(NULL)print ausfuehren.
- 2211 gosub140
- 2212 print"[147][211]yntax :
- 2213 [153]"def(NULL)right$(NULL)(NULL)#4(,)(atn)(-)(val)
- 2214 print"[204][201][211][212]"chr$(34)"[206][193][205][197]"chr$(34)"(,[196]0)(,[213]8)(,)([193])(-)([197])
- 2215 [153]"val(NULL)(NULL)val(NULL)"[199](34)"(NULL)atn(NULL)val"[199](34)"(,str$0)(,(NULL)8)print
- 2216 print"[194]ei [204]ist auf dem [194]ildschirm werden alle
- 2217 [153]"(NULL)teuerzeichen unterdrueckt, was man im
- 2218 print"[196]irectory (falls es mit (d)load geladen
- 2219 [153]"ist) sehr gut sieht, aber es gibt ja
- 2220 print"den [194]efehl [196][201][210][197][195][212][207][210][217] oder [195][193][212][193][204][207][199].":gosub140
- 2221 print"[147][150][193][195][200][212][213][206][199] !![153]
- 2222 [153]"peekei peeketrieb mit (NULL)peeddos muss vor dem
- 2223 print"ersten [205]/[196]/[204][207][193][196] im [197]nter-[198]ile die
- 2224 [153]"atnnzeige des (NULL)peicherbereiches beim (NULL)aden";
- 2225 [153]"mit (NULL)(NULL)(NULL)val$0298,3 abgeschaltet werden, da
- 2226 print"der [194]efehl [150][197][206][212][197][210][153] sonst abbricht.
- 2227 [153]"str$iejenigen, die nur mit (NULL)peeddos arbei-
- 2228 print"ten, koennen das [208]rogramm aendern :":gosub140
- 2229 print"[147]1. [198]olgendes an @[194][193][211][201][195] anhaengen:
- 2230 [153]" adr1 lda #0
- 2231 print" sta $0298
- 2232 [153]" jmp $ffe1
- 2233 print" adr2 lda #3
- 2234 [153]" sta $0298
- 2235 print" jmp xxxx
- 2236 [153]"2. str$en jsr $ffe1 in dem peekefehl defval(NULL)(NULL)val(NULL)print
- 2237 print" durch jsr adr1 ersetzen
- 2238 [153]"3. str$en dritten mid$(NULL)(NULL)-peekefehl (atnusfuehren
- 2239 print" des [194][193][211][201][195]-[194]efehls) durch [202][205][208] adr2
- 2240 [153]" ersetzen. str$er mid$(NULL)(NULL) an diese atndresse
- 2241 print" existiert zweimal, nur den [197]rsten
- 2242 [153]" aendern. ascuer xxxx setzen (NULL)ie dann
- 2243 print" die alte [193]dresse ein."
- 2250 gosub140:print"[147]"
- 2251 print"[197]in [150][197][206][212][197][210][153]-[198]ile kann z.[194]. so erstellt
- 2252 [153]"werden :
- 2253 print"[207][208][197][206][160]1,8,1,"chr$(34)"[206][193][205][197]"chr$(34)
- 2254 print"[208][210][201][206][212]#1,"chr$(34)"[205][204][207][193][196]"chr$(34)"chr$(34)"chr$(34)"[211][205][207][206].$6000
- 2255 [153]"(NULL)(NULL)right$(NULL)(NULL)#1,"[199](34)"str$(NULL)(NULL)atnstr$"[199](34)"chr$(34)"[199](34)"(NULL)(NULL)val (NULL)1.0"
- 2256 [153]"(NULL)(NULL)right$(NULL)(NULL)#1,"[199](34)"left$right$(NULL)val(NULL) $6000"
- 2257 [153]"(NULL)(NULL)right$(NULL)(NULL)#1,"[199](34)"(NULL)(NULL)(NULL)"
- 2258 [153]"len(NULL)(NULL)(NULL)val 1
- 2260 print"[207]der ein [208]rogramm wird mit
- 2262 [153]"def(NULL)right$(NULL)(NULL)"[199](34)"(NULL)atn(NULL)val"[199](34)"print auf str$isk
- 2264 print"gespeichert.
- 2300 [141]140:a$[178]"(NULL)val(NULL)":[141]150
- 2305 [153]"str$ieser peekefehl dient der ascunktionstasten-
- 2310 print"belegung.[205]it [150][203][197][217]1,"chr$(34)"[196][213][205][208]"chr$(34)"[153] wird der [194]efehl
- 2315 [153]"str$(NULL)(NULL)(NULL) auf die ascunktionstaste 1 gelegt.
- 2320 print"[205]it [150][203][197][217][153] kann man die [194]elegung auf
- 2325 [153]"den peekildschirm bringen :cont"
- 2330 [228]:[141]140
- 2335 [153]"loadprintstr$abei wird der atnpostroph als left$och-
- 2340 print"komma und der [208]feil nach links als
- 2345 [153]"(NULL)val(NULL)(NULL)(NULL)(NULL)print gewertet.
- 2346 print""chr$(34)"?'[193]=';[193]_"chr$(34)" wird also zu :
- 2347 [153]"cont?"[199](34)"atn="[199](34)";atn ((NULL)val(NULL)(NULL)(NULL)(NULL))cont
- 2348 print"[193]=";a:print"[210][197][193][196][217].[153]"
- 2355 print"[150][203][197][217] [207][198][198][153] schaltet die [198]unktionstasten-
- 2360 [153]"belegung aus, mit def(NULL)val(NULL) (NULL)(NULL)print wird sie
- 2365 print"eingeschaltet.
- 2366 [141]140
- 2370 a$[178]"len(NULL)(NULL)(NULL)(NULL)(NULL)":[141]150
- 2371 [153]"(NULL)it dem peekefehl deflen(NULL)(NULL)(NULL)(NULL)(NULL)print kann man die
- 2372 print"[194]ildschirmfarben veraendern.
- 2373 [153]"(NULL)yntax:
- 2374 print"[150][195][207][204][207][213][210]([210][193][206][196]),([200][201][206][212][197][210][199][210][213][206][196]),([195][213][210][211][207][210])[153]
- 2375 [153]"(NULL)enn z.peek. nur der (NULL)and veraendert werden";
- 2376 [153]"soll, kann man auch die restlichen
- 2377 print"[198]arben weglassen:
- 2378 [153]"deflen(NULL)(NULL)(NULL)(NULL)(NULL) 2print macht den (NULL)and rot.
- 2399 gosub140
- 2400 a$="[211][197][212] [212][201][205][197]/[193][204][193][210][205]":gosub150
- 2405 print"[196]er [195]ommodore 64 verfuegt ueber eine
- 2410 [153]"valchtzeituhr,die vom normalen peekasic
- 2415 print"nur ueber [208]rogramme ansprechbar ist.
- 2420 [153]"@peekatn(NULL)right$len hat dafuer diese peekefehle :"
- 2425 [153]"def(NULL)val(NULL) (NULL)right$(NULL)val "[199](34)"1213145"[199](34)
- 2430 [153]"(NULL)val(NULL) atn(NULL)atn(NULL)(NULL) "[199](34)"1300000"[199](34)
- 2435 [153]"(NULL)val(NULL) atn(NULL)atn(NULL)(NULL) (NULL)ascasc
- 2440 print"[211][197][212] [193][204][193][210][205] [207][206][153]":gosub140
- 2445 print"[147][200]ier wird die [213]hr ([150][212][201][205][197][153]) auf 12 uhr,
- 2450 [153]"13 minuten,14 sekunden und 5/10 sec.
- 2455 print"gestellt.[196]er [193]larm wird auf 13 [213]hr ge-
- 2460 [153]"stellt. (NULL)it def(NULL)val(NULL) atn(NULL)atn(NULL)(NULL) (NULL)ascascprint bzw def(NULL)(NULL)print kann
- 2465 print"der [193]larm aus und eingeschaltet werden.
- 2466 [153]"right$n der (NULL)ariable def(NULL)right$(NULL)valprint kann die aktuelle
- 2467 print"[213]hrzeit abgelesen werden.
- 2475 [153]"(NULL)enn der atnlarm eingetreten ist, haelt
- 2480 print"der [195]omputer an und brummt. [205]it der
- 2485 [153]"(NULL)aste (NULL)(NULL)(NULL)/(NULL)(NULL)(NULL)(NULL)print macht er weiter, als
- 2490 print"waere nichts geschehen.
- 2495 [141]140
- 2500 a$[178]"left$val(NULL)(NULL)":[141]150
- 2505 [153]"str$er peekefehl defleft$val(NULL)(NULL)print listet alle neuen
- 2510 print"[194]efehlswoerter und [198]unktionen:
- 2515 [153]"cont":[235]:[153]"print
- 2520 gosub140
- 2600 a$="[194][193][211][201][195]/[210][197][211][197][212]/[197][216][201][212]":gosub150
- 2610 print"[196]er [194]efehl [150][194][193][211][201][195][153] dient dazu, @[194][193][211][201][195] ohne
- 2615 [153]"(NULL)rogrammverlust zu verlassen.(NULL)it
- 2620 print"[210][213][206]-[211][212][207][208]/[210][197][211][212][207][210][197][153] kann man @[194][193][211][201][195] wieder
- 2625 [153]"einschalten.(NULL)it dem peekefehl def(NULL)val(NULL)val(NULL)print stellt
- 2630 print"man den [199]rundzustand von @[194][193][211][201][195] wieder
- 2635 [153]"her. (NULL)it defval(NULL)right$(NULL)print kehren (NULL)ie in das
- 2640 print"[195]ommodore [194]asic v2.0 [201]hres [195]64 zurueck.
- 2699 [141]140
- 2700 a$[178]"(NULL)len(NULL)valval(NULL)":[141]150
- 2710 [153]"(NULL)it dem peekefehl def(NULL)len(NULL)valval(NULL)print wird der aktuelle
- 2715 print"[194]ildschirm mit einem zweiten [194]ildschirm
- 2720 [153]"getauscht. (NULL)it diesem koennen (NULL)ie genau
- 2725 print"so wie mit dem normalen [194]ildschirm
- 2730 [153]"arbeiten, bis (NULL)ie ihn wieder mit dem
- 2735 print"urspruenglichen [194]ildschirm vertauschen.":gosub140
- 2740 print"[147][206]ach dem [197]inschalten des [195]omputers ist
- 2745 [153]"der left$ilfsbildschirm mit unsinnigem
- 2750 print"[218]eichenwirrwarr gefuellt.[197]r muss deshalb
- 2755 [153]"zuerst mit (NULL)left$right$asc(NULL)/len(NULL)(NULL)-left$(NULL)(NULL)valprint 'gereinigt'
- 2760 print"werden ([211]onst [193]bsturzgefahr).
- 2761 [153]"str$afuer bleibt der left$ilfbildschirm
- 2765 print"auch nach einem [210][197][211][197][212] noch erhalten,
- 2770 [153]"d.h. die right$nformationen gehen nicht
- 2775 print"verloren.
- 2799 [141]140
- 2800 a$[178]"peekright$(NULL)str$(NULL)lenleft$right$(NULL)(NULL)-valstr$right$(NULL)(NULL)(NULL)":[141]150
- 2801 [153]"@peekatn(NULL)right$len verfuegt ueber einen komfortablen
- 2802 print"[194]ildschirm-[197]ditor :[205]ehrere [212]asten er-
- 2803 [153]"hielten neue peekedeutungen :
- 2804 print"[210][213][206]/[211][212][207][208][153] = [197]scape-[212]aste
- 2805 [153]"lentrl (NULL) print = (NULL)est der (NULL)eile hinter dem
- 2806 print" [195]ursor loeschen
- 2807 [153]"lentrl atn print = lenursor hinter den letzten
- 2808 print" [194]uchstaben der [218]eile setzen
- 2809 [153]" (anhaengen)
- 2810 print"[195]trl [213] [153] = [195]ursor nach links unten"
- 2811 print"[195]trl [218] [153] = [201]nsert-[205]odus: der [210]est der
- 2812 [153]" (NULL)eile wird zurueckgeschoben,";
- 2813 [153]" wenn (NULL)aste gedrueckt wird."
- 2815 [153]"lentrl str$ print = (NULL)eile rechts vom lenursor
- 2817 print" um eins nach rechts schieben (delete)
- 2830 [141]140
- 2833 [153]"load(NULL)em die (NULL)asten nicht gefallen, kann sie
- 2836 print"durch andere [212]asten ersetzen. [194]ei [211][208][197][197][196]-";
- 2839 print"[196][207][211]-[194]etrieb ist es am sinnvollsten,
- 2842 [153]"die lentrl (NULL) durch lentrl left$ome ($82) und
- 2845 print"[195]trl [204] durch [195]trl [196]el ($84) zu ersetzen,";
- 2848 print"da diese [212]asten in [211][208][197][197][196][196][207][211][160]genauso
- 2851 [153]"belegt sind.":[141]140
- 2854 [153]"loadstr$iejenigen, die sich ihr peeketriebsystem
- 2857 print"selbst brennen (z.[194]. [200]ypra-[208]erfekt),
- 2860 [153]"koennen in der (NULL)astaturdekodiertabelle
- 2863 print"ab $[197][195]78 (mit [195]trl) 'leere' [195]odes ($[198][198])
- 2866 [153]"durch unbenutzte lenodes (z.peek. $80-$84)
- 2869 print"ersetzen und die [193]bfrage in @[194][193][211][201][195] dem-
- 2872 [153]"entsprechend aendern.
- 2875 print"(z.[194]. [195]trl [195]rsr rechts => $80 => [195]ursor
- 2878 [153]"an das valnde der (NULL)eile setzen.)":[141]140
- 2881 a$[178]"(NULL)right$(NULL)(NULL)-(NULL)len(NULL)(NULL)(NULL)(NULL)-asc(NULL)(NULL)(NULL)(NULL)right$(NULL)(NULL)":[141]150
- 2884 [153]"(NULL)right$(NULL)(NULL)-(NULL)len(NULL)(NULL)(NULL)(NULL)-ascunktion bedeutet, dass
- 2887 print"[211]ie in einem [194]asic-[204]isting aus dem [194]ild-";
- 2890 print"schirm hinausfahren koennen, und es wird";
- 2893 print"in der richtigen [210]eihenfolge der [218]eilen
- 2896 [153]"nach oben oder unten weitergelistet.
- 2899 gosub140
- 2902 a$="[193][210][201][212][200][205][197][212][201][203]":gosub150
- 3510 print"[193]ls [218]ahlenwert kann in jedem [194]efehl
- 3515 [153]"oder in jeder ascunktion ein hexadezimaler
- 3520 print"oder binaerer [215]ert stehen.[200]exadezimale
- 3525 [153]"(NULL)erte sind durch ein def$print gekennzeichnet
- 3530 print"und haben eine variable [204]aenge von max.
- 3535 [153]"4 hex-(NULL)iffern. peekinaere (NULL)erte sind durch
- 3540 print"ein [150]%[153] gekennzeichnet und haben eine
- 3545 [153]"maximale (NULL)aenge von 16 (NULL)iffern.
- 3599 gosub140
- 3600 a$="[196][197][197][203]/[196][207][203][197]/[200][197][216]$/[194][201][206]$":gosub150
- 3605 print"[196]er [194]efehl [150][196][207][203][197][153] entspricht dem [194]efehl
- 3610 [153]"(NULL)oke, mit dem (NULL)nterschied,dass er (NULL)wei-
- 3615 print"[194]yte [193]dressen poket.[198]uer [150][196][197][197][203][153] gilt das
- 3620 [153]"gleiche mit (NULL)valval(NULL).
- 3625 print"[150][200][197][216]$([193])[153] ergibt den 4-stelligen
- 3630 [153]"hexadezimalen (NULL)ert der (NULL)ariable atn als
- 3635 print"[211]tring.[150][194][201][206]$([194])[153] erzeugt den 8-stelligen
- 3640 [153]"peekinaercode der (NULL)ariable peek.":[141]140
- 3700 a$[178]"(NULL)(NULL)(NULL)atn(NULL)/left$right$(NULL)atn(NULL)":[141]150
- 3710 [153]"str$er peekefehl def(NULL)(NULL)(NULL)atn(NULL)print setzt die (NULL)ntergrenze
- 3720 print"des [211]peichers fest.[204]iegt die [193]dresse
- 3725 [153]"ueber der des (NULL)peicherendes, wird ein
- 3730 print"[207][213][212] [207][198] [205][197][205][207][210][217] [197][210][210][207][210] ausgegeben. [211]onst
- 3735 [153]"wird die (NULL)peichergrenze gesetzt und ein
- 3740 print"[206][197][215] ausgefuehrt.[150][200][201][210][193][205][153] setzt die
- 3745 [153]"(NULL)peicherobergrenze.(NULL)enn dadurch ein
- 3750 print"[194][193][211][201][195]-[208]rogramm zerstoert wuerde, wird
- 3755 [153]"ein (NULL)(NULL)(NULL) (NULL)asc (NULL)val(NULL)(NULL)(NULL)(NULL) val(NULL)(NULL)(NULL)(NULL)closeausgegeben.
- 3760 print"[194]ei diesem [194]efehl wird ein [195][204][210] ausge-
- 3765 [153]"fuehrt.":[141]140
- 3770 [153]"load(NULL)yntax:"
- 3775 [153]"def(NULL)(NULL)(NULL)atn(NULL) adr"
- 3780 [153]"left$right$(NULL)atn(NULL) adrprint":[141]140
- 3800 a$[178]"(NULL)(NULL)(NULL)right$(NULL)(NULL)(NULL)":[141]150
- 3805 [153]"right$n @peekatn(NULL)right$len ist ein kleiner (NULL)onitor mit
- 3810 print"folgenden [194]efehlen integriert:
- 3815 [153]"def.(NULL) adr1 (adr2)print
- 3820 print" [205]emory-[196]ump
- 3825 [153]"def.(NULL) anf1 end1 anf2print
- 3830 print" [214]erschiebt anf1 bis end1 nach anf2
- 3835 [153]"def.len anf1 end1 anf2print
- 3840 print" [214]ergleicht anf1 bis end1 mit anf2
- 3845 [153]"def.(NULL) anf end bytprint
- 3850 print" [198]uellt anf bis end mit byt
- 3855 [153]"def.asc anf end "[199](34)"text"[199](34)
- 3860 [153]".asc anf end byt1 (..bytn)print
- 3865 print" [211]ucht nach text oder byte(folgen)
- 3870 [153]"def.chr$ adrprint
- 3875 print" [211]pringt nach adr
- 3880 [141]140
- 3900 [153]"load(NULL)um aendern von (NULL)peicherinhalten
- 3905 print"ueberschreibt man im [200]ex-[196]ump, der
- 3910 [153]"uebrigens auch in die (NULL)right$(NULL)(NULL)-(NULL)len(NULL)(NULL)(NULL)(NULL)-
- 3915 print"[198]unktion eingebunden ist, einfach die
- 3920 [153]"left$ex-(NULL)iffern. atnndere atn(NULL)lenright$right$-(NULL)erte weden
- 3925 print"nicht uebernommen.[154]
- 3930 [153]".;a000 94 e3 7b e3 43 42 4d 42 (NULL)waittab((NULL)tab(cbmbprint
- 3935 gosub140
- 4000 a$="[215][197][201][212][197][210][197] [194][197][211][207][206][196][197][210][200][197][201][212][197][206]":gosub150
- 4005 print"[194]ei der [213]ebernahme einer [194]asic-[218]eile
- 4010 [153]"wird eine (NULL)lammer-(NULL)ontrolle durchge-
- 4015 print"fuehrt : [215]enn nicht genauso viele
- 4020 [153]"(NULL)lammern auf wie zu vorhanden sind, wird";
- 4025 [153]"ein (NULL)(NULL)(NULL)(NULL)atn(NULL) val(NULL)(NULL)(NULL)(NULL) ausgegeben.
- 4030 print"[215]enn der [195]omputer im [208]rogramm auf ein
- 4035 [153]"atnusrufezeichen def!print stoesst, wird nach
- 4040 print"$c006 gesprungen.":gosub140
- 4100 a$="[215][197][201][212][197][210][197] [194][197][211][207][206][196][197][210][200][197][201][212][197][206]":gosub150
- 4101 print"[198]uer @[194][193][211][201][195] wurden zwei spezielle
- 4102 [153]"asclags definiert. right$m folgenden die atndres-";
- 4103 [153]"sen und peekitbelegungen (in (NULL)lammern =
- 4104 print"[205]odulprg.[193]dressen):
- 4105 [153]"$9ffe ($02a7):'internes' asclag
- 4106 print" b7=1 :[204]ist bis [196]oppelpunkt ([196][213][205][208])
- 4107 [153]" b2=1 :bei atnusgabe (NULL)teuerzeichen
- 4108 print" unterdruecken ([204][201][211][212],[196][213][205][208],[205][207][206]., [203][197][217])"
- 4109 print"$9fff ($02a8):'externes' [198]lag
- 4110 [153]" b7=1 :atnlarm on
- 4111 print" b6=1 :[212]race on
- 4112 [153]" b5=1 :(NULL)ey on
- 4113 print" b4=1 :[197]ditor on
- 4114 [153]" b3=1 :(NULL)eichen in der (NULL)eile nicht in
- 4115 print" [212]okens, [210][213][206] => jmp $c003
- 4116 [153]" b1=1 :right$n (NULL)eilen nur normale (NULL)okens":[141]140
- 4117 a$[178]"(NULL)valright$(NULL)val(NULL)val peekval(NULL)(NULL)(NULL)str$val(NULL)left$valright$(NULL)val(NULL)":[141]150
- 4130 [153]"(NULL)enn (NULL)ie beim (NULL)val(NULL)val(NULL) keine (NULL)aste
- 4134 print"druecken, kommt die normale [205]eldung
- 4136 [153]"(NULL)enn (NULL)ie aber peekis zur (NULL)eldung die lentrlprint-
- 4138 print"[212]aste druecken, wird automatisch der
- 4140 [153]"peekefehl defval(NULL)(NULL)val(NULL)"[199](34)"@a*"[199](34)"print ausgefuehrt.
- 4142 print"[196]adurch kann man auf seinen [193]rbeits-
- 4144 [153]"str$isketten jeweils ein val(NULL)(NULL)val(NULL)-ascile spei-
- 4146 print"chern, dass dann automatisch z.[194]. [211][205][207][206]
- 4148 [153]"und left$(NULL)(NULL)(NULL)atn-atn(NULL)(NULL) laedt und man braucht
- 4150 print"diese [208]rogramme nicht mehr einzeln zu
- 4152 [153]"laden.
- 4200 gosub140:a$="[211][208][197][201][195][200][197][210][194][197][204][197][199][213][206][199]":gosub150
- 4205 print"[196]as [208]rogramm liegt im [205]odulbereich von
- 4210 [153]"$8000-$9fff. right$n der (NULL)eropage werden nur
- 4215 print"$fb-$ff sowie schon belegte [211]peicher-
- 4220 [153]"zellen benutzt, $02 bleibt frei. right$n der
- 4225 print"[210][193][205]-[214]ersion liegen die beiden [198]lags bei
- 4230 [153]"$9ffe/f, left$ilfsbildschirm fuer (NULL)len(NULL)valval(NULL) bei";
- 4235 [153]"$a001-$a813. ascunktionstasten und str$isk-
- 4240 print"[208]uffer sind im [208]rogramm eingebunden."
- 4241 print"[196]ie [196]isk-[211]tandardadresse liegt bei $9ffd";:gosub140
- 4245 print"[147][201]n der [205]odul-[214]ersion liegen die beiden
- 4250 [153]"asclags bei $02a7/8 ($02a6=flag (NULL)atn(NULL)/(NULL)(NULL)atn).
- 4251 print"[196]ie [196]isk-[193]dresse liegt bei $02a9.
- 4255 [153]"left$ilfsbildschirm, ascunktionstasten etc.
- 4260 print"liegen unter dem [205]odul im [210][193][205].
- 4265 [153]"str$eshalb wurden die (NULL)rogrammteile, die
- 4270 print"auf das [210][193][205] zugreifen, an den [193]nfang
- 4275 [153]"verlegt und beim valinschalten ins (NULL)atn(NULL)
- 4280 print"kopiert, so dass man ohne die [199]efahr
- 4285 [153]"eines atnbsturzes auf (NULL)atn(NULL) umschalten kann.";:[141]140
- 4300 a$[178]"(NULL)val(NULL)(NULL)(NULL)(NULL)val(NULL)":[141]150
- 4305 [153]"atnn (NULL)ektoren fuer das peeketriebssystem
- 4310 print"wurden der [201][210][209]- ($0314) und der [194][210][203]-
- 4315 [153]"(NULL)ektor ($0316) verstellt. (NULL)eiter wurden
- 4320 print"fuer den [194]ildschirm-[197]ditor die [214]ektoren
- 4325 [153]"fuer right$nput/(NULL)utput ($0324/$0326) auf
- 4330 print"eigene [210]outinen umgelenkt. [196]er [210][197][211][197][212]
- 4335 [153]"und der (NULL)(NULL)right$ werden ueber die (NULL)ektoren
- 4340 print"und die [195][194][205]80 [205]arkierung ab $8000 neu
- 4345 [153]"gesetzt.":[141]140
- 4350 [153]"loadatnn peekatn(NULL)right$len-(NULL)ektoren wurden die (NULL)ektoren
- 4355 print"von $0300 bis $030b geaendert, wobei
- 4360 [153]"der (NULL)ektor fuer (NULL)mwandlung in (NULL)lartext
- 4365 print"bei $0306 nicht gebraucht wird, da fuer
- 4370 [153]"(NULL)right$(NULL)(NULL) eine komplett neue (NULL)outine ge-
- 4375 print"schrieben wurde.":gosub140
- 5300 a$="[218][213][211][193][205][205][197][206][198][193][211][211][213][206][199]":gosub150
- 5305 print"[200]ier einmal zusammengefasst die [197]igen- schaften von @[194][193][211][201][195]:
- 5315 [153]" - komfortabler (NULL)oolkit
- 5320 print" - umfangreiches [196]isk-[194]asic
- 5325 [153]" - komfortabler valditor
- 5330 print" - eigener kleiner [205]onitor
- 5335 [153]" - einfache valrweiterungsmoeglichkeiten
- 5336 print" - [211][208][197][197][196][196][207][211] kompatibel !
- 5340 [153]"
-