Int 80h is *still* reliable! :)
I understand your frustration with libraries - the only thing I ever got "-f win32" output to link with was the libraries with the "masm32" package.
Using "-f obj", and using an "import" statement with every API, I could link using Alink without a library. Well... without anything with a ".lib" extension - the ".dll"s are the "real" libraries, of course, and they come with the system...
When I was attempting Windows programming (very little), the NaGoA package was the newest and most active. Now there's a "nasm32" project:
http://www.asmcomunity.net/projects/nasm32This has apparently just switched from using "-f obj" to "-f win32" output format, and uses Pelle Orinius' "polink" instead of Alink. Should have everything you need. The only part of it I've used is the libc macros (earlier version), and with a little tweaking, got that working on Linux. Looks like a nice package...
If you continue to have trouble, try posting the exact error message(s) you're getting, and maybe we can help you figure it out.
Best,
Frank