diff --git a/Native.pas b/Native.pas index 8cd5156..648b139 100644 --- a/Native.pas +++ b/Native.pas @@ -1943,6 +1943,13 @@ var if not volatile then Remove(ns+1); + m_tcd: + if npeep[ns+1].opcode = m_tdc then + Remove(ns+1) + else if npeep[ns+1].opcode in [m_pea,m_stz_dir,m_stz_abs] then + if npeep[ns+2].opcode = m_tdc then + Remove(ns+2); + otherwise: ; end; {case} @@ -2511,7 +2518,7 @@ nnextspot := 1; nleadOpcodes := [m_asl_a,m_bcs,m_beq,m_bmi,m_bne,m_bpl,m_brl,m_bvs,m_bcc, m_dec_abs,m_lda_abs,m_lda_dir,m_lda_imm,m_ldx_imm,m_sta_abs,m_sta_dir, m_pha,m_plb,m_plx,m_tax,m_tya,m_tyx,m_phy,m_pei_dir,m_ldy_imm,m_rep, - m_ora_dir,m_ora_abs,m_and_imm,m_pea]; + m_ora_dir,m_ora_abs,m_and_imm,m_pea,m_tcd]; nstopOpcodes := [d_end,d_pin]; stringSize := 0; {initialize scalars for a new segment}