Asking further directions
Apologies for that. That was my mistake early on in the thread (I did mention that real mode et al is not my area of expertise... )Combuster wrote:Well you got at least one thing wrong: Unreal mode is still 16 bit, and code is therefore also limited to 16-bit based addresses. Hence all code goes below the 1M and must still be 16-bit.
Re: Asking further directions
GCC can only produce binaries that use a flat address space, but if you set your segments to 0 and use unreal mode that shouldn't be a problem. I'm not sure though whether GCC can output real mode code.indiocolifa wrote:Also I wonder if GCC can generate suitable executables for non-protected mode 32-bit binaries.
As for one of your original questions on making a 16 bit real mode OS, there's already one created relatively recently: MikeOS.
JAL
-
- Member
- Posts: 41
- Joined: Sat May 24, 2008 12:41 pm
- Location: La Plata, Argentina
I understood that, I interpret it's related to program execution still pointed by CS:IP and not CS:EIP. So kernel cannot be loaded at > 1MB. Mmm, maybe I can put all data above 1MB, e.g a file system cache, and leave code in the lower 640KBs.Combuster wrote:Well you got at least one thing wrong: Unreal mode is still 16 bit, and code is therefore also limited to 16-bit based addresses. Hence all code goes below the 1M and must still be 16-bit.
Well, research continues...
-
- Member
- Posts: 41
- Joined: Sat May 24, 2008 12:41 pm
- Location: La Plata, Argentina
After some research I think I'll be better with Protected Mode or 64-bit Long mode. Using unreal mode limits my code to 64KB and you can't even play with that limitation because can't touch the segment registers without returning to plain 16-bit RM.
I've ordered the IA32 Manuals, yesterday arrived (wow!) for free ... Thanks Intel!
Looked at the basic architecture and IA32 System Programming, and seems that 64-bit Long Mode is a more polished environment than the 32-bit P/M. Anyone tried 64-bit development?
thanks.
I've ordered the IA32 Manuals, yesterday arrived (wow!) for free ... Thanks Intel!
Looked at the basic architecture and IA32 System Programming, and seems that 64-bit Long Mode is a more polished environment than the 32-bit P/M. Anyone tried 64-bit development?
thanks.