NTVDM System Error 4001h when running a 32-bit DOS app
问题 I have cross-compiled a 32-bit analog clock made in ArithmeticExpressionCompiler from Linux to DOS using the GNU Assembler. When run under FreeDOS in QEMU or VirtualBox (which are far better emulators than NTVDM is, right?), it creates this picture: I expected it to also run on Windows 10. However, when I try to run it on Windows 10, I get this error: What does that even mean? My program is not 16-bit, it's 32-bit, so why is some 16-bit subsystem even being run? And what does the "error 4001h