The Pentium 4 processor does not itself contain a memory controller and thus does not impose any limit on memory size. In your system, the memory controller is located in the Graphics and Memory Controller Hub (GMCH) component, which is part of the 915 chipset. This memory controller in the 915 chipset is theoretically capable of supporting up to 8GB of memory, but many boards will not support more than 4GB. Further, because you are using a 32-bit Operating System, the maximum addressable memory is 4GB, so any memory installed beyond 4GB will not be available.
You system currently has 2GB of memory installed. The reason why you only see 1.49GB available is because some of the memory (and address space) is being reserved for the BIOS and other components. If you are successful upgrading your system to have 4GB of physical memory, only 3.49GB will actually be available for Windows to use...
Hope this helps...
Typically, the RAM modules that can be supported are a function of the motherboard being used. In the case of Intel-produced motherboards, compatibility charts are available (though they may not be exhaustive). I don't know if your motherboard manufacturer publishes such information. An alternative is to go to the RAM manufacturer's site. Many of them publish their own compatibility charts based upon motherboard used...