I am not a coder, but isn't the "Read from location 00000000 caused an access violation" refer to a null pointer assignment or something like that?
of the modules used by the program causes this error. Which one it is, I haven't got a hitch.
But I have a vague idea what *might* be a reason... although I could also be completely wrong.
What if one (or many) of the modules haven't realized that the system memory has been changed and don't understand memory locations going over 512 kB, or something like that? And when other modules start using the locations over 512 kb limit and start sending that information to faulty module, it doesn't understand the locations, and perhaps converts them to 00000000 or something like that.
Remember that I'm just guessing here. But I would try to re-install graphics drivers, sound card drivers, things like that... there might be for example some obsolete registry entry that causes some module to presume wrong amount of memory or whatever.
I'm sure someone will shortly come and tell what the problem really is...