ali hagigat wrote:
I am working with Pentium III, Intel GMCH, 82815 and Intel ICH2, 82801.
I managed to initialize DRAM controller to recognize the first 640 K of the memory correctly in the real mode.
When i switch to the protected mode, CPU writes to the first 64K only. Every other read/write from the higher addresses leads to CPU restart.
Can anybody say what is going on?
Not unless you show your code.
One explanation would be that you haven't done a proper switch into protected mode (setting up a descriptor table and initializing selectors) which would make the CPU triple fault and reset on accesses outside whatever the descriptors happen to be. If this is the case, I think that Intel's IA-32 architecture manuals have good info on what you need to do, and of course you can study both coreboot sources as well as some good old DOS extenders such as Tran's PMODE32, DOS4GW from Watcom or my personal favorite DOS32.
//Peter