Behelfslösung Preprozessor SOH
Verfasst: 22.08.2019 09:03
Code: Alles auswählen
;PB 5.71 Windows x64
;CutSOHLine Datei
;Behelfslösung, Preprozessor erzeugt SOH und Schrott bei ASM-Makro mit Ausrufezeichen.
;Ist nötig weil, !vmovups xmm1,xmm0 ohne Ausrufezeichen nach EnableASM Syntaxfehler erzeugt.
Dateiname.s=ProgramParameter(0)
Datei=OpenFile(#PB_Any,Dateiname)
If 0=Datei : MessageRequester("Fehler","Kann Datei nicht öffnen: "+Dateiname) : End :EndIf
Laenge=Lof(Datei)
*daten.Byte=AllocateMemory(Laenge+1)
ReadData(Datei,*daten,Laenge)
CloseFile(Datei)
*Ziel.Byte=AllocateMemory(Laenge+1)
*ptrZiel.Byte=*Ziel
While 0<>*daten\b
If *daten\b<>#SOH
*ptrZiel\b=*daten\b
*daten +1
*ptrZiel +1
ZielLaenge +1
Else
While *daten\b<>#CR And *daten\b<>#LF And *daten\b<>#Null
*daten+1
Wend
EndIf
Wend
Datei=CreateFile(#PB_Any,Dateiname)
WriteData(Datei,*Ziel,ZielLaenge)
CloseFile(Datei)