With version 0.0.12.0 and earlier versions as well as
some patched and self compiled versions after 0.0.12.1
I encounter performance problems for native IEC
transfers (no usage of any turbo protocol) from time to
time. Until now I couldn't see any rules, when of for
what version this happens.
For an example, if I transfer the ROM area of my
1541-II down to the PC with:
cbmctrl download 8 0x8000 0x8000 ROMIMAGE.ROM
this transfer normally needs ~116 seconds.
If the performance problem comes into account (I'm not
able to reproduce this problem with every version and
under any test circumstances), the very same transfer
needs 588 seconds instead. This is a resulting factor
of 1/5 for this test case.
Take note that the downloaded ROM does not contain
any transfer errors, the whole ROM is identical to
previously downloaded versions.
This performance problem can be worked around, if other
processes are started in the background, which somehow
have soem influence of the thread/process scheduling of
the Operating System (Windows XP here). Currently two
alternative commands can be issued, both are tools out
of the cygwin Unix emulation layer:
Until now, I couldn't find other such tools that are no
cygwin tools. Maybe a native Win32 program issuing some
passive waiting (sleep) is also suitable to work around
the above problem.