Wie ich bereits schrieb, geht das nicht so einfach, da Self im eax-Register übergeben wird. Kann zufällig klappen, kann aber auch böse daneben gehen, vor allem, wenn auf den Parameter „Sender“ zugegriffen wird – der wird nämlich immer nil sein.
Klar ist der nil, aber böse ist an dem Vorgehen gar nichts. Ein normaler Methodenzeiger ist auch nichts anderes und genau TMethod ist genau das was die Übergabe von Self im korrekten Register bewirkt.
Sinnvoller wäre aber in der Tat objektorientiert zu arbeiten.