Basic 2.201: bug fixes in STR$ G and STR$ K
This commit is contained in:
parent
cbee494fe7
commit
14bc607b4d
|
@ -589,7 +589,14 @@ Logbuch :
|
||||||
|
|
||||||
13-05-2014 -Befehl PUT kreiert für die direkte Zeichenausgabe mit x-y Koordinaten, hier wird die aktuelle Zeichen-und Hintergrundfarbe benutzt
|
13-05-2014 -Befehl PUT kreiert für die direkte Zeichenausgabe mit x-y Koordinaten, hier wird die aktuelle Zeichen-und Hintergrundfarbe benutzt
|
||||||
-ist etwas schneller als pos x,y + Print
|
-ist etwas schneller als pos x,y + Print
|
||||||
-1356 Longs frei
|
-Fehler in der DIR-Routine behoben (im Modus 0 wurde nichts gelesen)
|
||||||
|
-DIR-Routine gestrafft
|
||||||
|
-1369 Longs frei
|
||||||
|
|
||||||
|
16-05-2014 -################### Version 2.2 veröffentlicht ####################
|
||||||
|
|
||||||
|
'############################################################ Version 2.3 ######################################################################################################
|
||||||
|
|
||||||
|
|
||||||
--------------------------------------------------------------------------------------------------------- }}
|
--------------------------------------------------------------------------------------------------------- }}
|
||||||
|
|
||||||
|
@ -1736,9 +1743,9 @@ PRI stringfunc2|a8,b8,c8,function,a,b
|
||||||
b:=c8
|
b:=c8
|
||||||
"r","R":a:=a8-b8
|
"r","R":a:=a8-b8
|
||||||
b:=b8
|
b:=b8
|
||||||
"u","U":charactersUpperLower(@font,0) 'in Grossbuchstaben umwandeln
|
"g","G":charactersUpperLower(@font,0) 'in Grossbuchstaben umwandeln
|
||||||
return
|
return
|
||||||
"d","D":charactersUpperLower(@font,1) 'in Kleinbuchstaben umwandeln
|
"k","K":charactersUpperLower(@font,1) 'in Kleinbuchstaben umwandeln
|
||||||
return
|
return
|
||||||
|
|
||||||
other:
|
other:
|
||||||
|
@ -1757,10 +1764,10 @@ PRI charactersUpperLower(characters,mode) '' 4 Stack Longs
|
||||||
|
|
||||||
result := byte[++characters]
|
result := byte[++characters]
|
||||||
if mode
|
if mode
|
||||||
if((result > 64) and (result < 91)) 'nur A -Z
|
if((result > 64) and (result < 91)) 'nur A -Z in Kleinbuchstaben
|
||||||
byte[characters] := (result + 32)
|
byte[characters] := (result + 32)
|
||||||
else
|
else
|
||||||
if(result > 96) 'nur a-z
|
if(result > 96) 'nur a-z in Großbuchstaben
|
||||||
byte[characters] := (result - 32)
|
byte[characters] := (result - 32)
|
||||||
|
|
||||||
|
|
||||||
|
@ -1811,7 +1818,7 @@ PUB substr (strAddr, start, count)
|
||||||
bytemove(@strtmp, strAddr + start, count) 'just move the selected section
|
bytemove(@strtmp, strAddr + start, count) 'just move the selected section
|
||||||
return @strtmp
|
return @strtmp
|
||||||
obj '*********************************************** TIMER-FUNKTIONEN ***********************************************************************************************************
|
obj '*********************************************** TIMER-FUNKTIONEN ***********************************************************************************************************
|
||||||
con' *********************************************** Verwaltung der acht Timer **************************************************************************************************
|
con' *********************************************** Verwaltung der acht Timer und 4 Counter ************************************************************************************
|
||||||
PRI timerfunction:b|a,c,function
|
PRI timerfunction:b|a,c,function
|
||||||
function:=spaces
|
function:=spaces
|
||||||
skipspaces
|
skipspaces
|
||||||
|
@ -2665,14 +2672,13 @@ PRI texec | ht, nt, restart,a,b,c,d,e,f,h,elsa
|
||||||
Input_String
|
Input_String
|
||||||
komma
|
komma
|
||||||
a:=expr(1)
|
a:=expr(1)
|
||||||
charactersUpperLower(@f0,0)
|
|
||||||
h_dir(dzeilen,a,@f0)
|
h_dir(dzeilen,a,@f0)
|
||||||
elseifnot spaces
|
elseifnot spaces
|
||||||
h_dir(dzeilen,modus,@ext5) 'directory ohne parameter nur anzeigen
|
h_dir(dzeilen,modus,@ext5) 'directory ohne parameter nur anzeigen
|
||||||
else
|
else
|
||||||
param(1)
|
param(1)
|
||||||
dzeilen:=prm[0]
|
dzeilen:=prm[0]
|
||||||
modus:=a:=prm[1]
|
modus:=prm[1]
|
||||||
h_dir(dzeilen,modus,@ext5)
|
h_dir(dzeilen,modus,@ext5)
|
||||||
|
|
||||||
|
|
||||||
|
@ -3816,7 +3822,7 @@ pri zahlenformat(h)|j
|
||||||
return FS.FloatToString(h) 'Zahlenwerte ohne Exponent
|
return FS.FloatToString(h) 'Zahlenwerte ohne Exponent
|
||||||
|
|
||||||
con '****************************************** Directory-Anzeige-Funktion *******************************************************************************************************
|
con '****************************************** Directory-Anzeige-Funktion *******************************************************************************************************
|
||||||
PRI h_dir(z,mode,str) | stradr,n,i,tt,dlen,dd,mm,jj,color,xstart 'hive: verzeichnis anzeigen
|
PRI h_dir(z,modes,str) | stradr,n,i,tt,dlen,dd,mm,jj,color,xstart 'hive: verzeichnis anzeigen
|
||||||
{{h_dir - anzeige verzeichnis}} 'mode 0=keine Anzeige,mode 1=einfache Anzeige, mode 2=erweiterte Anzeige
|
{{h_dir - anzeige verzeichnis}} 'mode 0=keine Anzeige,mode 1=einfache Anzeige, mode 2=erweiterte Anzeige
|
||||||
ios.printcursorrate(0) 'cursor ausschalten
|
ios.printcursorrate(0) 'cursor ausschalten
|
||||||
mount
|
mount
|
||||||
|
@ -3829,58 +3835,54 @@ PRI h_dir(z,mode,str) | stradr,n,i,tt,dlen,dd,mm,jj,color,xstart
|
||||||
if byte[str][i]>96
|
if byte[str][i]>96
|
||||||
byte[str][i]^=32
|
byte[str][i]^=32
|
||||||
i++
|
i++
|
||||||
|
|
||||||
ios.sddir 'kommando: verzeichnis öffnen
|
ios.sddir 'kommando: verzeichnis öffnen
|
||||||
n := 0 'dateizaehler
|
n := 0 'dateizaehler
|
||||||
i := 0 'zeilenzaehler
|
i := 0 'zeilenzaehler
|
||||||
repeat while stradr <> 0 'wiederholen solange stradr <> 0
|
repeat while (stradr:=ios.sdnext)<>0 'wiederholen solange stradr <> 0
|
||||||
'wiederhole bis verzeichnisende
|
|
||||||
stradr:=ios.sdnext 'einen eintrag holen
|
|
||||||
dlen:=ios.sdfattrib(0) 'dateigroesse
|
dlen:=ios.sdfattrib(0) 'dateigroesse
|
||||||
dd:=ios.sdfattrib(10) 'Aenderungsdatum tag
|
dd:=ios.sdfattrib(10) 'Aenderungsdatum tag
|
||||||
mm:=ios.sdfattrib(11) 'Aenderungsdatum monat
|
mm:=ios.sdfattrib(11) 'Aenderungsdatum monat
|
||||||
jj:=ios.sdfattrib(12) 'Aenderungsdatum Jahr
|
jj:=ios.sdfattrib(12) 'Aenderungsdatum Jahr
|
||||||
|
|
||||||
if stradr <> 0 'ist eintrag gültig?
|
|
||||||
|
|
||||||
color:=farbe
|
scanstr(stradr,1) 'dateierweiterung extrahieren
|
||||||
bytemove(@file1,stradr,12)
|
|
||||||
scanstr(@file1,1) 'dateierweiterung extrahieren
|
|
||||||
|
|
||||||
ifnot ios.sdfattrib(17) 'unsichtbare Dateien ausblenden
|
ifnot ios.sdfattrib(17) 'unsichtbare Dateien ausblenden
|
||||||
if strcomp(@buff,str) or strcomp(str,@ext5) 'Filter anwenden
|
if strcomp(@buff,str) or strcomp(str,@ext5) 'Filter anwenden
|
||||||
n++
|
n++
|
||||||
if n<DIR_ENTRY 'Begrenzung der Einträge auf die mit DIR_ENTRY vereinbarte
|
|
||||||
WriteNameToRam(stradr,n) 'Dateiname zur spaeteren Verwendung in ERam speichern an adresse n
|
|
||||||
'################## Bildschrirmausgabe ##################################
|
|
||||||
if mode>0
|
|
||||||
|
|
||||||
if strsize(@buff)<3 'verzeichnis
|
'################## Bildschrirmausgabe ##################################
|
||||||
color:=hintergr-125
|
if modes>0
|
||||||
|
|
||||||
ios.print(stradr)
|
ios.print(stradr)
|
||||||
if mode==2
|
|
||||||
|
if modes==2
|
||||||
erweitert(xstart,dlen,dd,mm,jj)
|
erweitert(xstart,dlen,dd,mm,jj)
|
||||||
ios.printnl
|
ios.printnl
|
||||||
ios.setx(xstart)
|
ios.setx(xstart)
|
||||||
i++
|
i++
|
||||||
|
|
||||||
|
|
||||||
if i==z '**********************************
|
if i==z '**********************************
|
||||||
'errortext(37,0)
|
|
||||||
if ios.keywait == ios#CHAR_ESC 'auf Taste warten, wenn ESC dann Ausstieg
|
if ios.keywait == ios#CHAR_ESC 'auf Taste warten, wenn ESC dann Ausstieg
|
||||||
if cursor==1 '**********************************
|
if cursor==1 '**********************************
|
||||||
ios.printCursorRate(3) '**********************************
|
ios.printCursorRate(3) '**********************************
|
||||||
ios.printnl '**********************************
|
ios.printnl '**********************************
|
||||||
ios.print(string("OK>"))
|
|
||||||
close '**********************************
|
close '**********************************
|
||||||
filenumber:=n 'Anzal der Dateien merken
|
filenumber:=n 'Anzal der Dateien merken
|
||||||
return '**********************************
|
abort '**********************************
|
||||||
|
|
||||||
i := 0 '**********************************
|
i := 0 '**********************************
|
||||||
ios.printnl
|
ios.printnl
|
||||||
ios.setx(xstart)
|
ios.setx(xstart)
|
||||||
|
if modes==0
|
||||||
|
if n<DIR_ENTRY 'Begrenzung der Einträge auf die mit DIR_ENTRY vereinbarte
|
||||||
|
WriteNameToRam(stradr,n) 'Dateiname zur spaeteren Verwendung in ERam speichern an adresse n
|
||||||
|
|
||||||
if mode>0 'sichtbare Ausgabe
|
|
||||||
|
if modes 'sichtbare Ausgabe
|
||||||
ios.printdec(n) 'Anzahl Dateien
|
ios.printdec(n) 'Anzahl Dateien
|
||||||
errortext(43,0)
|
errortext(43,0)
|
||||||
ios.printnl
|
ios.printnl
|
||||||
|
@ -3888,7 +3890,7 @@ PRI h_dir(z,mode,str) | stradr,n,i,tt,dlen,dd,mm,jj,color,xstart
|
||||||
ios.printCursorRate(3)
|
ios.printCursorRate(3)
|
||||||
filenumber:=n 'Anzal der Dateien merken
|
filenumber:=n 'Anzal der Dateien merken
|
||||||
close 'ins Root Verzeichnis ,SD-Card schliessen und unmounten
|
close 'ins Root Verzeichnis ,SD-Card schliessen und unmounten
|
||||||
|
abort
|
||||||
PRI WriteNameToRam(str,nummer)|adress,position,c 'Dateiliste in ERam schreiben
|
PRI WriteNameToRam(str,nummer)|adress,position,c 'Dateiliste in ERam schreiben
|
||||||
position:=(nummer-1)*13
|
position:=(nummer-1)*13
|
||||||
adress:=DIR_RAM+position
|
adress:=DIR_RAM+position
|
||||||
|
@ -3909,11 +3911,11 @@ PRI erweitert(startx,laenge,tag,monat,jahr) 'erwei
|
||||||
|
|
||||||
ios.setx(startx+14)
|
ios.setx(startx+14)
|
||||||
ios.printdec(laenge)
|
ios.printdec(laenge)
|
||||||
ios.setx(startx+20)
|
ios.setx(startx+21)
|
||||||
ios.printdec(tag)
|
ios.printdec(tag)
|
||||||
ios.setx(startx+23)
|
ios.setx(startx+24)
|
||||||
ios.printdec(monat)
|
ios.printdec(monat)
|
||||||
ios.setx(startx+26)
|
ios.setx(startx+27)
|
||||||
ios.printdec(jahr)
|
ios.printdec(jahr)
|
||||||
|
|
||||||
PRI scanstr(f,mode) | z ,c 'Dateiendung extrahieren
|
PRI scanstr(f,mode) | z ,c 'Dateiendung extrahieren
|
||||||
|
|
Loading…
Reference in New Issue