What problem are you having exactly?
> IF "%OS%"=="Windows_NT" GOTO :SkipHomeMapping
> NET USE f: /home
> :SkipHomeMapping
This will make NT machines skip mapping the F: drive. You have to have that persistently mapped on the client then...
> NET USE f: /home
"NET USE f: /home" is the wrong syntax. You need to use the server and share name from Windows machines. Something like "NET USE f: \smeserver\home" is what you need. I realize the "NET USE f: /home" is skipped for NT machines in that script, but Win9x machines will try to do this.
> CALL f:\netlogon.bat
Again, if F: isn't mapped properly before this, this obviously won't work.
It could be a few things, but I think the "NET USE f: /home" is most likely what's causing the problem. Changing /home to \server\share should fix that...