News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

Limitations of the FAR Jump

Started by baltoro, March 29, 2009, 10:10:57 PM

Previous topic - Next topic

baltoro

#15
Sorry,...for not responding, but, I thought this thread was just going to fade away,...   
And, thanks, for all the opinions,...this is useful intel. I was under the impression that 16-bit real mode programs would NOT execute in any Windows system greater than Windows 98, (2000\XP\Vista) . Apparently, I was wrong. 
I should have stated clearly in the first post, that I'm NOT interested in writing 16-bit real mode code at all. I want to write only 32-bit protected mode code.     
Essentially, I'm a C++ programmer, and I'm learning Assembly (I'm lousy at it, by the way) in order to better understand how code executes at the lowest level (the processor instruction or opcode). and, to understand the output from IDA Pro (disassembler), and the assembly language files that are output from Visual Studio. Reversing executable code (it's illegal in many cases), is useful for dissecting and disabling malicious code.
I'm basically trying to understand the security implications at the processor level, in order to write better and more secure code.     
Thanks for the discussion, I appreciate it. By the way, I've had experienced programmers tell me that real mode code still executes on the Windows NT kernel, Microsoft always tries to allow for legacy code to execute without breaking whenever they release an upgrade to their operating system.   
I'm just guessing that running 16-bit real mode programs is going to cause more problems than it will solve, in my case.   
You might read this ; http://support.microsoft.com/kb/314106, it's a Microsoft Support article entitled: "Troubleshooting MS-DOS-based Programs". Scroll down to the section: Check Program-Specific Issues    The following functions DO NOT WORK in Windows XP.   
Also, Raymond Chen has a blog, The Old New Thing. He has numerous entries about MS-DOS programs. Here's one tha's interesting: http://blogs.msdn.com/oldnewthing/archive/2005/10/05/477317.aspx, Running Old Programs in a Virtual Machine Doesn't Necessarily Create a Good User Experience. 
Also, this is interesting: http://blogs.msdn.com/oldnewthing/archive/2007/12/03/6644060.aspx, How Do 16-bit Programs Start Up? December 2007

Baltoro