Code: Alles auswählen
; Diese Funktionen, aus dem GFA-Basic bekannt, fehlten einfach. Darum Nachgebildet.
; ------------
Procedure Max(Wert1,Wert2) ; Grösseren Wert feststellen
If Wert1 > Wert2 : ProcedureReturn Wert1 : Else : ProcedureReturn Wert2 :EndIf
EndProcedure
Procedure Min(Wert1,Wert2) ; Kleineren Wert feststellen
If Wert1 > Wert2 : ProcedureReturn Wert2 : Else : ProcedureReturn Wert1 :EndIf
EndProcedure
Procedure BitSet(A,N) ; Setzt N bit
If N<1 : N=1 : EndIf
ProcedureReturn A | %0001 << (N-1)
EndProcedure
Procedure BitClr(A,N) ; Clears N bit
If N<1 : N=1 : EndIf
ProcedureReturn BitSet(A,N) ! BitSet(0,N)
EndProcedure
Procedure BitTst(A,N) ; Returns N bit gesetzt?
If A & BitClr(A,N)=A : ProcedureReturn #False : EndIf
ProcedureReturn #True
EndProcedure
Procedure BitChg(A,N) ; Ändert das N bit ins Gegenteil
If A & BitClr(A,N)=A : ProcedureReturn BitSet(A,N) : EndIf ; falsch: - A|1<<N - bitset benutzen
ProcedureReturn BitSet(A,N) ! BitSet(0,N)
EndProcedure
; ------------ 1103