Thank you Mziab

Here's my Tilemap dma function
dma_tilemap:
LDX #$1801
STX $4300
LDX #$1190
STX $4302
LDA {buffer} //tile count
ASL
CLC
ADC #$0040
STA $4305
SEP #$20
LDA #$7E
STA $4304
LDX {text_pos}
STX $2116
JSR wait_vblank
LDA #$01
STA $420B
REP #$20
RTS
Note the JSR wait_vblank. If I disable it, the 2nd text is in the position it should be. If the wait vblank is enabled, the said problem occurs.
Look inside the log:
808bb5 bit #$80
808bb7 beq $8bb2 ---> Wait for vblank
808bb2 lda $4210
808bb5 bit #$80
808bb7 beq $8bb2 [808bb2] A:0042 X:0265 Y:001f S:1ff4 D:0000 DB:80 nvMxdIZc
***NMI occurs***
00800f phx A:0042 X:0265 Y:001f nvMxdIZc V:225 H: 22 F:37
008010 phy A:0042 X:0265 Y:001f S:1fee D:0000 DB:80
008011 pha A:0042 X:0265 Y:001f S:1fec D:0000 DB:80
008012 phb A:0042 X:0265 Y:001f S:1feb D:0000 DB:80
008013 php A:0042 X:0265 Y:001f S:1fea D:0000 DB:80
008014 ldx $1e [00001e] A:0042 X:0265 Y:001f S:1fe9 D:0000 DB:80
008016 jsr ($8121,x) [008123] A:0042 X:0002 Y:001f S:1fe9 D:0000 DB:80
00812d nop A:0042 X:0002 Y:001f S:1fe7 D:0000 DB:80
00812e rts A:0042 X:0002 Y:001f S:1fe7 D:0000 DB:80
008019 plp A:0042 X:0002 Y:001f S:1fe9 D:0000 DB:80
00801a plb A:0042 X:0002 Y:001f S:1fea D:0000 DB:80
00801b pla A:0042 X:0002 Y:001f S:1feb D:0000 DB:80
00801c ply A:0042 X:0002 Y:001f S:1fec D:0000 DB:80
00801d plx A:0042 X:0002 Y:001f S:1fee D:0000 DB:80
00801e rti A:0042 X:0265 Y:001f S:1ff0 D:0000 DB:80
***RETURN FROM NMI***
808bb2 lda $4210 [804210] A:0042 X:0265 Y:001f S:1ff4 D:0000 DB:80
808bb5 bit #$80 A:00c2 X:0265 Y:001f S:1ff4 D:0000 DB:80
808bb7 beq $8bb2 [808bb2] A:00c2 X:0265 Y:001f S:1ff4 D:0000 DB:80
808bb9 plp A:00c2 X:0265 Y:001f S:1ff4 D:0000 DB:80
808bba pla A:00c2 X:0265 Y:001f S:1ff5 D:0000 DB:80
808bbb rts A:007e X:0265 Y:001f S:1ff6 D:0000 DB:80
808963 lda #$01 A:007e X:0265 Y:001f S:1ff8 D:0000 DB:80
808965 sta $420b [80420b] A:0001 X:0265 Y:001f S:1ff8 D:0000 DB:80
You can see the Nmi has nothing to do with $2116 and all Register's values are preserved.
So I wonder why the Wait vblank routine hinders the DMA?