I don't use assembly much, but my guess is that the issue is that 'TStr' is actually "sizeof(TCHAR)*100" bytes, and 'TTStr' is only 4 bytes (on a 32 bit machine).

However, I don't know what AL is....

Viggy