I did more test and code update.
I now have a 8088, 8086, V20/286 Version and a trial for the 16Bit
The 8086 reach 200Kb/s Read on my 8086 (It was 185Kb/s before)
I don't know if the 8086 Version will be faster on a 8088 Or not so I will include both version to test.... (I have no 0888 ready to test currently)
What is strange is that the XT IDE do not unroll the loop and does not do the optimisation I did for 8086.
If OPT_8088 Eq Yes
REPT 64
in al,dx
stosb
ENDM
ret
elseIf (OPT_8086 Eq Yes )
REPT 32
in al,dx
xchg ah,al
in al,dx
xchg ah,al
stosw
ENDM
ret
elseIf (OPT_8086_16 Eq Yes)
dec dx
REPT 32
in ax,dx
stosw
ENDM
inc dx
ret
elseIf (OPT_80286 Eq Yes)
push cx
mov cx,64
rep insb
pop cx
ret
EndIf