Content deleted Content added
Minhngoc25a (talk | contribs) No edit summary |
|||
Line 244:
|archive-url=https://web.archive.org/web/20120531090452/http://www.ece.umd.edu/courses/enee759m.S2000/papers/paterson1994-kildall.pdf |archive-date=2012-05-31 |quote=[…] To get major software developers to port their products from the [[8080]]/[[Z80]] to the [[8086]], I decided we had to make it as easy as possible. I had already written a Z80-to-8086 source code translator (hosted on the 8080 and [[CP/M]]). My plan was that running an 8080 CP/M program through the translator would be the only work required by software developers to port the program to the 8086. In other words, the interface used by applications to request operating system services would be exactly the same as CP/M's after applying the [[#Intel-1979-CONV86|translation rules]]. […]}}</ref>
<ref name="Paterson_2007_Design-DOS">{{cite web |title=Design of DOS |author-first=Tim |author-last=Paterson |author-link=Tim Paterson |work=DosMan Drivel |date=2007-09-30 |url=http://dosmandrivel.blogspot.com/2007/09/design-of-dos.html |access-date=2011-07-04 |archive-url=https://web.archive.org/web/20130120075653/http://dosmandrivel.blogspot.com/2007/09/design-of-dos.html |archive-date=2013-01-20 |quote=[…] [[CP/M]] Translation Compatibility […] For [[DOS]] to succeed, it would need useful applications (like word processing) to be written for it. I was concerned that [[Seattle Computer Products|SCP]] might have trouble persuading authors of application software to put in the effort to create a DOS version of their programs. Few people had bought SCP's 16-bit computer, so the installed base was small. Without the applications, there wouldn't be many users, and without the users, there wouldn't be many applications. […] My hope was that by making it as easy as possible to port existing 8-bit applications to our 16-bit computer, we would get more rogrammers to take the plunge. And it seemed to me that CP/M translation compatibility was what would make the job as easy as possible. [[Intel]] had [[#Intel-1979-CONV86|defined rules for translating]] 8-bit programs into 16-bit programs; CP/M translation compatibility means that when a program's request to CP/M went through the translation, it would become an equivalent request to DOS. […] So I made CP/M translation compatibility a fundamental design goal. This required me to create a very specific Application Program Interface that implemented the translation compatibility. I did not consider this the primary API – there was, in fact, another API more suited to the 16-bit world and that had more capabilities. Both APIs used CP/M-defined constructs (such as the "[[File Control Block]]"); the compatibility API had to, and I didn't see a reason to define something different for the primary API. […] I myself took advantage of translation compatibility. The development tools I had written, such as the assembler, were originally 8-bit programs that ran under CP/M ([[Cromemco DOS|CDOS]]). I put them through the translator and came up with 16-bit programs that ran under DOS. These translated tools were included with DOS when shipped by SCP. But I don't think anyone else ever took advantage of this process. […]}}</ref>
<ref name="Callahan_2021">{{cite web |title=Intel 8080 CP/M 2.2 to Intel 8086/8088 MS-DOS assembly language translator. |author-first=Brian |author-last=Callahan |date=2021-10-23 |orig-date=2021-07-06, 2021-06-06 |version=8088ify 1.2 |url=https://
<ref name="Bodrato_2008">{{cite web |title=to86.awk source code |author-first=Stefano |author-last=Bodrato |date=2008-10-30 |version=1.6 |work=GitHub |url=https://github.com/z88dk/z88dk/blob/master/support/I86/to86.awk |access-date=2022-01-05 |url-status=live |archive-url=https://web.archive.org/web/20220105214202/https://github.com/z88dk/z88dk/blob/master/support/I86/to86.awk |archive-date=2022-01-05}}</ref>
<ref name="Coffeescript">{{cite web |title=List of languages that compile to JS |website=[[GitHub]] |url=https://github.com/jashkenas/coffeescript/wiki/List-of-languages-that-compile-to-JS |access-date=2018-03-11 |url-status=live |archive-url=https://web.archive.org/web/20200123055351/https://github.com/jashkenas/coffeescript/wiki/List-of-languages-that-compile-to-JS |archive-date=2020-01-23}}</ref>
|