Intel 8085 instruction timing ROM

In my layers drawing instruction timing ROM occupies rectangle from 5713,1890 to 5972,3117. In the table below the content of the ROM is shown. Every 1 means a FET which can pull each column down. The table is in the same sequence as it is in the real chip.
Every column is a negated output signal which drives the instruction timing logic. Rows are inputs, i.e. when particular line (meaining instruction) is high every FET in that line pulls the corresponding column down.
Every instruction consists of 1 to 5 cycles. The first cycle is called M1 and consists of 4 or 6 states. In the M1 cycle opcode is fetched. Any other cycle consists of 3 states.
Other cycles are called R1 and R2 (CPU usually reads during these - exceptions DAD, DSUB, RDEL, LDHI, LDSI, ARHL) and W1 and W2 (CPU usualy writes during these - exceptions LDA, LHLD, IN).
Normal order of cycles is M1 R1 R2 W1 W2. Either R1 or both R1 and R2 cycles could be omitted. Whole sequence could be stopped after any cycle and next instruction is fetched.
Conditional instructions (Jcc, Ccc, Rcc, JNK, JK, RSTV) are ended prematurely when condition is not met. This feature is not covered in the table below, it is solved in the instruction timing logic.

All signals are active in 0 and describe current instruction in instruction register.
/INS_SKP_Rx signal says that both R1 and R2 cycles should be skipped.
/INS_SKP_R1 signal says that R1 cycle should be skipped. /INS_SKP_Rx and /INS_SKP_R1 are never active at the same time.
/INS_LNG signal says that M1 cycle should be 6 states long.
/INS_E1, /INS_E2 and /INS_E3 signals determine when cycle sequence should be stopped. The list of all existing combinations and their meaning is here:

/INS_E1/INS_E2/INS_E3last cycle
111M1
110W1
101R2
100R1
011W2

Here is the content of the ROM. 1 means that there is a FET while 0 means nothing is there. Do not forget that FET here means a pull-down so in fact 1 means FET which means output zero and vice versa.
- # states does not mention premature ending of conditional instructions
- in read cycles usually an argument, data or stack read takes place, exceptions are DAD, DSUB, RDEL, LDHI, LDSI and ARHL where bus idle cycles is performed instead (marked with red color)
- in write cycles usually a data or stack write takes place, exceptions are LDA, LHLD and IN where data read is performed instead (marked with blue color)
 
/INS_SKP_Rx
/INS_SKP_R1
 
/INS_LNG
 
/INS_E1
/INS_E2
/INS_E3
 
# states
  cycles

DI, EI 00 0 000 4 M1
ALU nonM2 00 0 000 4 M1
ALU imm 00 0 011 7 M1 R1
RIM, SIM 00 0 000 4 M1
ALU M 00 0 011 7 M1 R1
RST x 10 1 100 12 M1 W1 W2
DAA, CMA, STC, CMC 00 0 000 4 M1
RSTV 10 1 100 12 M1 W1 W2
STA 00 0 001 13 M1 R1 R2 W1
LDA 00 0 001 13 M1 R1 R2 W1
SHLX 10 0 100 10 M1 W1 W2
LHLX 00 0 010 10 M1 R1 R2
SHLD 00 0 100 16 M1 R1 R2 W1 W2
LHLD 00 0 100 16 M1 R1 R2 W1 W2
MVI nonM1 00 0 011 7 M1 R1
IN 01 0 001 10 M1 R2 W1
MVI M 01 0 001 10 M1 R2 W1
OUT 01 0 001 10 M1 R2 W1
RET 00 0 010 10 M1 R1 R2
Rcc 00 1 010 12 M1 R1 R2
DAD 00 0 010 10 M1 R1 R2
DSUB 00 0 010 10 M1 R1 R2
RDEL 00 0 010 10 M1 R1 R2
LDHI, LDSI 00 0 010 10 M1 R1 R2
ARHL 00 0 011 7 M1 R1
RLC, RRC, RAL, RAR 00 0 000 4 M1
PUSH 10 1 100 12 M1 W1 W2
POP 00 0 010 10 M1 R1 R2
SPHL 00 1 000 6 M1
Jcc 00 0 010 10 M1 R1 R2
JMP 00 0 010 10 M1 R1 R2
JNK, JK 00 0 010 10 M1 R1 R2
PCHL 00 1 000 6 M1
Ccc 00 1 100 18 M1 R1 R2 W1 W2
CALL 00 1 100 18 M1 R1 R2 W1 W2
XTHL 00 0 100 16 M1 R1 R2 W1 W2
INX 00 1 000 6 M1
DCX 00 1 000 6 M1
INR nonM1, DCR nonM1 00 0 000 4 M1
INR M, DCR M 01 0 001 10 M1 R2 W1
STAX 10 0 001 7 M1 W1
LDAX 00 0 011 7 M1 R1
LXI 00 0 010 10 M1 R1 R2
MOV M,nonM2 10 0 001 7 M1 W1
MOV nonM1,M 00 0 011 7 M1 R1
MOV nonM1,nonM2 00 0 000 4 M1
XCHG 00 0 000 4 M1
HLT 00 0 000 5 M1