On Tue, 12 Jul 2022, C. Masloch wrote:
Your technique is the default way to do this, most TSRs ever written did
it that way. The SMC is just a small optimisation over it.
Codegolfing is good, when done right. :D
If you really want to continue to use the free software release of
Microsoft's Debug, you may want to look into the following:
* Some notes on building the original sources, probably not needed if
you already figured out how to manage that. [1]
Yeah, I'd actually managed to roll a few things before then, though I
think I may have referenced that later.
* A fix to the CALL 5 bug (that was preserved all the way into the
latest Microsoft Debug versions) [2]
Yep, started from that codebase.
I think John Elliott might have been the first one to actually roll
MSDOS.SYS.
* Some discussion on additional bugs in this Debug (might be fixed by
later MS-DOS Debug) at [3], in particular the fact that it doesn't set
itself up as self-parented and also fails to create a proper child PSP
for the client when just assembling into the code segment. The child PSP
problem is not relevant when loading a program into the debugger.
* For historical reference, there are some versions of the original
86-DOS Monitor and Debug out there, some of which explicitly note that
copyright does not apply to them.
Other than that, do have a look at FreeDOS Debug [4] or my repo of its
history going back decades [5], as well as my fork, lDebug [6]. Another
fork with fewer changes is debug.gen [7]. There is also Enhanced Debug
in the same family but that one is not free software, it's not
redistributable.
Regards,
ecm
Yeah, I'm aware of the PC DOS guy's fork of FreeDOS DEBUG.
It's interesting that in an operating system that is mostly GPL, that one
component happened to end up X11-licensed, and MS picked the same license
when they opened up MS-DOS 2.11...
I managed to get EDLIN and DEBUG to roll with WASM with some help from
someone on Libera, and it was a bit of an undertaking. EDLIN was easier,
I think. But the code is a bit nasty - delves into MS-DOS internals to
get the current directory instead of just calling GETPWD (AH=47), and uses
FCBs for everything instead of "Xenix functions". Like, it's a
transitional version before all the "Xenix" stuff got fully brought in or
something. Eugh.
-uso.
_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel