On Tue, 12 Jul 2022, C. Masloch wrote:
On at 2022-07-12 15:45 -0400, Steve Nickolas wrote:
I haven't uploaded a copy of the new source anywhere yet - it'll
probably be in the next DOSLITE source batch along with my work on a few
other DOS commands, but I don't want to replace the copy I've already
uploaded, and DOSLITE isn't ready to go onto anything like github or
gitlab yet.
I strongly suggest to keep source history. If you'd rather not, you do
not need to publish that right now but I do recommend you keep it
privately at least. I started in 2010 [1] and it has been a great
experience that often proved useful.
Yeah. "Upload early, upload often" is very much at play here, something I
learned when I lost the hard drive I was keeping a fansub project on.
Because I uploaded the raw on BitTorrent and had been maintaining
timestamped uploads of the scripts on my Web server, nothing was lost.
Several revisions of GRAFTABL that I haven't released, plus the one I did,
are archived in a folder along with other tools like ATTRIB, CHOICE,
DELTREE, FIND, LABEL, SORT and TREE, plus my hacks on EDLIN and MORE. But
I wanted to get a bit closer to my goal before putting them into "proper"
revision control - just a few loose commands doesn't feel worth making a
project on Github or its many clones. (Or into a Subversion or something
on my own server.)
<snip>
Not quite: The "ds:" segment override prefixes are unneeded actually.
NASM will happily emit them, but they eat memory completely
unnecessarily. "mov word [bx], entry" already defaults to ds as its
segment. (Unlike addresses including "[bp]" which default to ss.)
I didn't notice those at first because I assumed you were using es.
That's what your comment in your caller says:
.21: mov ax, 0xB001 ; So where is it?
mov bx, whence ; ES:BX gets this.
int 0x2F
However, the Interrupt List [2] does say it uses ds:bx so your interrupt
handler is correct, your caller's comment is incorrect.
Oopsie. XD
Maybe I wrote "ES" because a lot of stuff that uses BX with a segment uses
ES. I almost never use ES myself - my code generally runs in a 64K space.
Removing the redundant segment escapes does save a few bytes.
-uso.
_______________________________________________
Freedos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-devel