Quote Originally Posted by mikeyakame View Post
I've already got quite a few bios roms sitting on my hard drive ready to be explored, an assortment of P5E and RE bios versions. Do you have the bios handy for the RF before Asus removed the tREF self-refresh timing setting? i think it was a beta of 0308 as official ASUS 0308 doesnt have the strings in the multi language module, and I know where there was a release with it working in bios. Worst case scenario I think I can code up a PCI Option ROM replacement module to check CMOS mask and change the value in MCHBAR but I rather not have to remove either a foreign language module or one of the marvell LAN boot roms. Losing the LAN boot in one of the onboard NIC's wouldn't be the end of the world if there was no choice.

Still would be easier to inject the original assembly instructions into the 1B bios core and 21 mui bins since their code did at one stage work!

If I was to get it working what do you think what would be the best way to go about it. Custom assembly code I'd basically have Auto where it reads DRAM frequency and calculates the correct tREF using the timing formula.

REF[t] = REFI[ns] / CK[ns]. Ie for DDR2-1200, tREF = 7800ns / ( 1000 / 600 ) = 7800 / 1.6667 = 4680T. For 7.8us refresh.
For 15.6us would be 2 * REF[t].

It'd be just a matter of allocating a CMOS mask that's free then or taking one that's not used. Simple case statement for comparing cmos register mask to fixed values, read MCHBAR chan a/b register, AND with mask, and write register at both offsets. Check it was succesful and return 0.

ASUS's assembly instructions would probably have less than half the size and be less cumbersome if I can disassemble them

Would be nice to have since there is clearly gains in latency when setting it through MCHBAR register in pci register writing tool or MemSET. Don't think it would be worth having a list of values to select from as every character is one less byte to use for instructions!
Couldn't a simple side by side comparison expose the differences between x48 DDr3 (RE) and x48 DDR2 (RF)? Maybe you're looking to go beyond a simple compariosn and replacing instructions/codes/registers that work with DDR3/components in the RE with the less sophisticated RF, you're actually looking to program your own stuff in, and may be tweak performance? I think the RE bios on a RF would be a blast enough.