StrToBool
BoolToStr ... man beachte den zweiten Parameter
In C-Sprachen ist oftmals True = Integer(-1) und in Delphi/Pascal ist True = Byte(1).
Und das ist nur auf die Kostanten bezogen, wie bereits erwähnt wurde.
Bei Auswertung ist überall False = 0 und True <> 0.
Demnach ist IntToBool falsch und StrToBool versagt bei Zahlenwerten und anderer Groß-/Kleinschreibung.
IntToBool und BoolToInt passen auch nicht zusammen (der nicht auskommentierte Teil) und IntToBool gibt daher immer False zurück.
Es macht absolut keinen Sinn für Alles ständig eigene bescheidene Lösungen zu bauen, wo es gut funktionierende Standardfunktionen gibt, welche dagegen sogar richtig funktionieren.