Looking for help with HMC5883L compass from other users

I found this code somewhere. Can't remember where (sorry for not acknowledging the contributor

Looks like that code comes from Seeedstudio. Actually the code is for a HMC5883 that Seeedstudio has on one of their compass boards, the problem is though it's for a HMC5883 not an HMC5883L. Apparently the two chips are different. They are the same physical size and pin count but the HMC5883 uses additional pins (similar to the HMC5843) as compared to the HMC5883L. I zoomed in on the picture at Seeedstudio and the top marking code was M883 while mine is L883. Interestingly enough I assembled another board and the address issue is resolved and I can now access all the registers with the correct address. Unfortunately the data registers contain invalid data. The default states of the Config registers are still not the same as the datasheet. However, after some searching around I pulled the datasheet for the HMC5883 and it's default register state more closely matches my default register state. I have a sneaking suspicion there was a mix up somewhere along the production cycle.