Reply 40 of 145, by mkarcher
mkarcher wrote on 2023-09-14, 16:04:maxtherabbit wrote on 2023-09-14, 00:17:Ok the problem was the file itself. I just tried the version of ASPI7DOS uploaded by Disruptor and it works perfectly. I did a binary diff between that and the file I produced myself using omfpatch. There were a few bytes different...
I intended to make sure that the patches on GitHub work.
... and I have failed. The patch as published on GitHub in releases up to 1.3 is broken. I just uploaded a new release and edited the release notes of all older releases to point out that the ASPI7DOS.SYS patch object file is broken in all releases before 1.4. The version published by Disruptor was created using TASM (in its default MASM compatibility mode), and works fine, but contains unnecessary NOP padding in a conditional forward jump. This is the effect of running TASM in its default single-pass mode. The version published on GitHub now does not include this padding, so it compares different to the version published by Disruptor. This is an acceptatble difference. On the other hand, the difference between Disruptors version and the version obtained by applying the patch downloadable on GitHub at offsets 4998 to 499F are gone now, and they were the reason for the patched binary to fail.