Hi again,
On Sat, Oct 12, 2019 at 8:15 AM TK Chia <[email protected]> wrote:
>
> It seems that the precompiled nsm09839.zip binaries in iBiblio were
> built with Microsoft C, most probably using Makefile.ms7.
MS C 7 is from 1992, apparently. Maybe I'm naive, but I'll bet MSVC
1.52c from 1995 is a better compiler.
> And the makefile has this...:
>
> # Compile for a 286, ain't nobody using an 8086 anymore
> CC = cl /c /Oz /AL /Gt256 /G2 /I.. # MSC 7.00
>
> I guess this explains why these particular binaries are 186+ only.
Whoever built it also did this (presumably to fit into Large model)
using DJGPP grep (and then DJGPP Perl to regenerate four source
files):
insns16.dat: insns.dat
grep -v WILLAMETTE insns.dat | grep -v KATMAI | grep -v SSE | \
grep -v MMX | grep -v 3DNOW | grep -v UNDOC >insns16.dat
But the problem is that this omitted some useful stuff ("UNDOC"
includes SALC and LOADALL) but left in other random stuff (IA64's
JMPE, Prescott non-SSE [MONITOR,MWAIT,FISTTP]). So, all these years,
our default 16-bit build didn't even support all instructions *and*
was 186 only!
I'm actually probably going to refresh "nasmlite" again soon. It's
basically cleaned up a bit with added P6 instructions (since it only
added 2 kb for 35 instructions, who knows if someone finds that useful
... Jerome??). The improved makefile also easily supports a 586-only
build. (I'll be honest, I don't know if CMOVcc is ever faster, so that
makes it almost useless in my eyes. Less compatibility for zero gain?
No thanks!)
_______________________________________________
Freedos-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-user