Got it! Found the correct settings in the bios.
Advanced - CPU Configuration (Make sure on this page MTRR Mapping is set to Continuous) -
Memory Setting - Memory Configuration - "Enable" the Hardware Memory Hole. (this was the one I kept overlooking)
Reads 3.89GB Ram on My Computer Properties (Discrete), and 4.0GB (Continous MTRR Mapping)
Reads Usable Mem 3.37GB from msinfo32 (Discrete), and 3.48GB (Continuous)
BIOS reads on boot up "3984 ok (Installed Mem 104" setting on (Discrete), and "4096 ok (Installed Mem 104" setting on (Continuous)
now bios detects all 4gbs correctly and windows x64 detects 4gbs too. Took out the /PAE switch in boot.ini since I dont think it was doing anything.