Hi all,
DP is a 16-Bit real mode x86 mode program, meaning it can run on computer with an 8086 processor. This was what characterised a major difference of MS-DOS and later operating systems. DOS in real mode could only access 1Mb of memory giving rise to the 640K limit of RAM. Under 32 bit Windows, DOS programs only run in the NTVDM (NT Virtual DOS machine) which emulates the real 8086 and protected mode 80286 processors. So DP only runs in 32-bit Windows, by virtue of Microsoft provided emulator. In Win x64, Microsoft has dropped the 16 bit emulation. There is no reason why a 16-bit emulator would not work under a 64-bit operating system, just a choice by Microsoft, and also vendors of other 32-bit operating system because it is not as simple as before, and quite frankly there is not a huge demand. One of the reasons for this is that unlike 32-bit processors where the processor can directly manage the 32-bit memory space and most also supported real mode 16-bit modes. 64-bit represents a fundamental change in the processor's architecture, they can run in 32-bit mode, but in the native 64-bit mode they specifically need the Operating System to manage various aspects of memory. This means that any emulator for 16-bit would have to do far more work than say the NTVDM in the 32-bit world, so they cannot be simply ported from the 32-bit world to the 64-bit one. Also on a side point, a serious bug was only recently found on the 32-bit mode when using the 16-bit submode, which could allow a hacker to exploit the machine through BIOS calls at the 16-bit NTVDM level, the problem has existed right from the start, so for Microsoft the simpler solution is to drop the NTVDM. All DOS programs were essentially 16-bit programs, with some able to indirectly address memory above the 16th bit, but breaking it up into two 16bit chunks. Generally it not a matter of just recompiling in a 32 or 64 bit compiler, the fundamental understanding of the computer has changed. DOS applications use the services provided by the MS-DOS operating system, when there services are no longer there, or not access in anything like the same manner it's a rewrite. You might be lucky to be able to reuse some code and logic ideas. But on that point I believe DP was written in Forth, and Forth is humorously described as a "write only" language, its almost impossible for anyone later to read it and make any sense of it. Regards Brian _____ From: [email protected] [mailto:[email protected]] On Behalf Of Patrick Riley Sent: Thursday, 17 November 2011 12:54 PM To: [email protected] Subject: Re: [Dataperf] DP and Windows 7 64-bit I think (but am not sure) that DataPerfect is a 32-bit app that utilizes some 16-bit internal logic or registers (note how the output counter resets at 65,535). Pat Riley 505-750-4728 At 04:29 PM 11/16/2011, you wrote: Is DP a 16-bit or a 32-bit app? _______________________________________________ Dataperf mailing list [email protected] http://lists.dataperfect.nl/mailman/listinfo/dataperf
_______________________________________________ Dataperf mailing list [email protected] http://lists.dataperfect.nl/mailman/listinfo/dataperf
