i dont no much about asm or c  i use vb6 
if i wanted to boot into dos everytime then  go into windows  from command prompt where do i start?
thanks
Posted on 2010-03-19 10:39:37 by flyhigh427
In Win98, you could edit "msdos.sys" - change "GUI=1" to "GUI=0" and boot to "real dos", and type "win" to fire up Windows (if you need it for anything). I understand this option is no longer available. In fact, I understand Vista64 doesn't have any dos at all in it! (they've been threatening to do this for years)

Writing a bootloader won't help, in itself - you need something (dos!) to load. You might want to look into freedos (dot org). If an emulator will satisfy you (doesn't sound like that's what you want), try dosbox (dot com).

Best,
Frank

Posted on 2010-03-19 13:49:56 by fbkotler
How about http://www.freedos.org/ ? Use a bootloader and switch between dos and windows during boot.
Posted on 2010-03-19 15:08:22 by JimmyClif
In fact, I understand Vista64 doesn't have any dos at all in it! (they've been threatening to do this for years)
NT-based Windows have never depended on (or included) DOS - unlike Win9x, the NTLDR bootloader loads the Windows kernel directly. 32bit NT versions include NTVDM, though, but even that doesn't come with a "full DOS".

64bit NT indeed don't include NTVDM anymore, since that would have required doing a full virtual machines; 64bit x86 "long mode" doesn't support 16bit tasks.
Posted on 2010-03-20 13:20:36 by f0dder

64bit x86 "long mode" doesn't support 16bit tasks.


Are you sure? Though I didn't try it (yet), but according to Intel SDM (AMD APM) compatibility submode of IA-32e (long) mode allows 16/32-bit code to be run under control of 64-bit code (as I understand it, they use previously reserved bit 53 of code segment descriptor to indicate that segment is 64-bit).
Posted on 2010-03-27 08:04:28 by baldr
It's been a while since I read through the docs, but it is my impression that 16bit tasks aren't supported, yes. Also, I doubt MS would have gone through the trouble of implementing a partial 16bit CPU emulator for doing BIOS calls for win64 if long mode had 16-bit support :)
Posted on 2010-03-27 08:46:31 by f0dder

Also, I doubt MS would have gone through the trouble of implementing a partial 16bit CPU emulator for doing BIOS calls for win64 if long mode had 16-bit support :)


Yeah, it is interesting when you have to develop something instead of rebranding an architectural feature as company innovation :P
Posted on 2010-03-27 11:37:57 by SpooK
f0dder,

I stand corrected IA-32e/long mode does not support Virtual-8086 feature (compatibility submode isn't compatible enough ;-)).
Posted on 2010-03-27 18:28:32 by baldr