I'm running 640MB on Win98SE on an Abit KT7-RAID. Works perfectly fine (but it does require some tweaking which I'll post below), though Win2k would probably manage the memory more efficiently, but Win2k is more work than is worth it to me.
Win95A Retail version, the first version ever sold, DID have a problem with more than 64MB of memory, unrelated to motherboard caching. This was fixed, though I don't know how you'd tell if you have that version other than knowing you bought the retail version right from the start.
After that, Win95 and Win98 and Win98SE can use any amount of memory up to 2GB (though 4GB can be installed and work, Win9x can only address 2GB). That is from the Knowledge Base article Q181594. The Knowledge Base article linked in badthad's post, Q184447, seems somewhat contradictory, though. This is perhaps a bug that only occurs in some cases. There is also a known bug when using more than 512MB of memory, but it can be worked around by a small modification in the system.ini file.
The MS Knowledge Base article Q253912 describes what it is and how to get around it. Anybody that has set their VCACHE minimum and maximum before has already done what's needed to work around it, however you probably set those amounts based on your lower amount of memory. If you upgrade to higher than 512MB you MUST modify the VCACHE min and max, and since you've got that much RAM, you can set them pretty high. I have mine at 32MB/64MB. The problem results from the way Windows addresses the VCACHE. With more than 512MB of RAM, it runs out of virtual memory addresses, so you have to limit how much virtual cache it tries to use. If you read the article you'll see several ways of getting around the limitation. Why anybody would chose a total limitation to how much memory Windows can address, instead of just tweaking the VCACHE, is totally beyond me. Why install so much more RAM without using it?
On the subject of motherboard cache support: With the exception of the HX chipset, Intel Socket7 chipsets were only able to cache a MAXIMUM of 64MB of RAM. This included all Pentium Chipsets (VX, TX, FX) except the HX. HX by default could cache 64MB, but with an upgrade to the TAG RAM could cache up to 512MB.
SuperSocket7 chipsets from VIA, ALi, and SiS, could cache higher amounts, dependent on how much TAG RAM was installed (which usually came with the cache chips. For instance, my EPoX MVP3G-5 with 2MB of cache could cache up to 512MB in write through mode or 256MB in write-back mode. The 1MB cache model could only cache half those amounts (the write through and write back modes were auto-set based on how much memory you had, so that it would cache as much as possible; write back is faster, but if it wasn't cacheing the memory above 256MB then it would make the system slower). So a SS7 chipset with only 512K cache will probably only be able to cache 64MB in write-back mode, and 128MB in write-through mode.
Windows uses memory from the upper memory addresses down. UNIX variants (including Linux) use memory from the bottom up. Cacheing is done on memory from the bottom up. So with a 64MB cacheable limit, and 128MB of memory, only the lower half of the memory is cached, but Windows starts using the upper half of the memory first. Only after it has filled more than 64MB does caching start, and it will still only cache the data that goes into the lower 64MB block. Therefore Windows loses a huge amount of performance if you install memory beyond the cacheable limit, but it is NOT due to Windows not being able to use the memory, it is due to a chipset cache limitation and the WAY Windows uses memory overall.
Newer chipsets, for PII/III, Celeron and Duron/Athlon, do not affect the cache directly at all, since it is integrated either onto the chip die or the processor package PCB, and the processor has an integrated cache controller. I haven't gotten a definitive answer, but it seems to be understood that there is no longer a cache limitation up to the amount of memory that an x86 processor can address, which is 4GB. Therefore UNIX variants would have no problems with any amount of memory you installed, up to whatever the chipset supports (1.5GB for Athlon chipsets, 512MB for i81x chipsets). But Windows9x is still maximum limited to 2GB (which of course can't be reached with current consumer chipsets), and to 512MB if you don't tweak the system.ini file.