![]() |
| ||
| protected mode Now i have been able to create the gdt's and when i change to pmode, will a short JMP flush the instruciton prefetch queue? here is a sample of my code and the gdt and gdtr content, mov ax,07c00hwhta am i suppose to do to make my pmode correct, i mean be able to use the descriptors without rebooting? writing to the RAM? pleeeeeeeeeeeeeeeeaaaaaaaaaaaase help. Sam |
| ||
| Re: protected mode As I recall, we sometimes needed to specify the jump to protected mode in a DB statement. Google for John Fine, he has something to get you over that problem, I think. |
| ||
| Re: protected mode Looked at Fine's stuff, good in itself, doesn't help you, though. Here's from http://en.wikipedia.org/wiki/Protected_mode ; set PE bit The point here is to force the assembler to use a far jump. For some assemblers, unfortunately, this requires: db 0eah ;far jump For the Pentium and later processors, clearing the prefetch queue is no longer necessary. |
| ||
| Re: protected mode i know cs is for the selector but it doesnt select the right selector at all, what memory should i put at GDTR 00007c00h+gdtr or what? |
| ||
| Re: protected mode My first thought was "Well, you're probably rebooting because of a triple-fault. Have you defined your interrupt descriptor table (IDT)?" But now I really see the 7c00, and suppose you're writing a bootloader. It's a lot easier, nowadays, to let grub do the bootloader stuff, but if you insist, there's a lot to go wrong. What's the nature of your project? Are you just experimenting to learn a lot? |
| ||
| Re: protected mode i got it all, will post it later, now the only thig is interrrupts |
| ||
| Re: protected mode Quote:
Sorry that I've posted a similar question on another thread here. I found this thread after I posted that. So, how can "jmp cs: @pm" jumps to "@pm"? Isn't it supposed to jump to the physical address "cs * 16 + @pm"? |
| All times are GMT -4. The time now is 6:40 am. |
Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC