Protowalls sole purpose is to run as a system friendly background task (aka using little ressources) that blocks IP addresses. You might be saying that a firewall could do this as well and you are right, of course. But, many firewalls tend to have problems and use lots of system ressources if you add many IP addresses to them.
