Hi,

> On Jun 5, 2015, at 6:10 PM, Steve Nickolas <[email protected]> wrote:
> 
> A port of DOS to ARM would not be bound to any existing API and would not 
> need to be compatible with any existing DOS implementations, while still 
> being a port of DOS.
> 

That’s technically incorrect. The reason that Linux (and UNIX) work on 
different architectures is that the API is the same, but the low level 
interface to the hardware is the difference. Since there is no BIOS to speak of 
on other processors, nor a concept of real and protected mode, a lot will have 
to go into the kernel, basically making a hardware abstraction layer that 
emulates the BIOS, that can process a DOS executable for Intel processors and 
make determinations on whether it is a 16-bit application or a 32-bit 
application and run it accordingly.

If you don’t keep the basic DOS API (via Int 21h) then it’s technically not 
DOS, but another operating system.

Microsoft attempted (for the x86 version) to keep a compatibility layer in the 
OS so that you could run DOS applications, even though these applications were 
written for a single task, 16-bit real mode OS that allowed direct hardware 
access, which unfortunately can cause issues in a 32-bit protected mode 
environment.

Fortunately, the benefit in our favor is some of this work has already been 
done. There is an open source BIOS implementation that can be grafted in to 
FreeDOS, it’s just a matter of figuring out which one to use and how to 
implement it.

> -uso.
> 
> ------------------------------------------------------------------------------
> _______________________________________________
> Freedos-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/freedos-devel


------------------------------------------------------------------------------
_______________________________________________
Freedos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to