maa@nbires.nbi.com (Mark Armbrust) (03/25/89)
There is a bug in LOOZ 2.10 that causes it to incorrectly load some .EXE files when the 'xx' option is used. The problem occurs when an .EXE file's segment ordering is such that the initial code segment is not the first segment in the .EXE file. This is a binary patch to fix the bug in LOOZ 2.10. THIS PATCH IS NOT KNOWN TO BE VALID FOR ANY OTHER VERSION OF LOOZ! ---------- cut here to LOOZPAT.BAT ---------- goto end e 1C4C 14 e 22E2 61 20 20 28 w q :end ren looz.exe looz.bin debug <loozpat.bat looz.bin ren looz.bin looz.exe ---------- cut here ---------- What you changed: 1944 C45EE8 LES BX,[BP-18] 1947 268B07 MOV AX,ES:[BX] 194A 0346EE (14) ADD AX,[BP-12] ; change to ADD AX,[BP+14] 194D 268907 MOV ES:[BX],AX 1950 47 INC DI 1951 3B7EEC CMP DI,[BP-14] 1954 72C6 JB 191C Local variable [BP-12] was set to *(parameter [BP+0E]) which appears to be the initial value of CS. Relocations should be done relative to the load point which appears to be passed as a parameter [BP+14]. Local variable [BP-12] is not used anywhere else in this subroutine. The second line of the patch changes the version number to '2.10a'. PLEASE DO NOT DISTRIBUTE PATCHED VERSIONS OF LOOZ. Please do distribute LOOZ unmodified along with this patch information. Happy hacking, Mark Armbrust maa@nbires.nbi.com maa@nbires.UUCP