(My own view is, given that Intel themselves published tools and docs to automatically convert an 8080 program to an 8086 program, "implement the interface a translated CP/M program would expect" is a reasonable goal regardless of whether you want to copy the implementation. http://www.bitsavers.org/pdf/intel/ISIS_II/9800642A_MCS-86_A... )
You may also be interested in Tim Paterson's account of backporting MS-DOS to the Z80 as MSX-DOS. https://www.msx.org/wiki/The_History_of_MSX-DOS
(My own view is, given that Intel themselves published tools and docs to automatically convert an 8080 program to an 8086 program, "implement the interface a translated CP/M program would expect" is a reasonable goal regardless of whether you want to copy the implementation. http://www.bitsavers.org/pdf/intel/ISIS_II/9800642A_MCS-86_A... )