At this point it’s worth looking at the Z80’s base opcode table to show at what point on the timeline each instruction was introduced, whether in the Datapoint 2200 version 1, Intel 8008, Intel 8080 or Zilog Z80.
According to Wikipedia, the opcode for NOP on the Datapoint 2200 was C0h, not 00h: the 00h opcode was for the HALT instruction. Similarly, RET was 07h, not C9h. Generally, most of the opcodes map to different operations.
You could write some assembler code using a subset of the Z80 operations (the green ones in the above chart) - and that code would then run on both a 2020 and a Z80, but you’d need different assemblers to change the operation mnemonics into machine code for the different devices.
There are a few instructions, which became shuffled around. While there are definitely merits to the diagram provided above, as it provides a good overview of what was added when, Ken Shirriff’s charts do keep track more accurately: