On at 2022-06-30 10:00 -0500, Santiago Almenara wrote:
Hello!
What book or webpage do you recommend to learn some DOS assembler?
Thanks in advance
Santiago
I learned primarily using these methods:
1. Read existing code and try to understand it. Even better, start with
higher-level commentary about code if you can find any. Some
applications' manuals are good for this, eg DOSLFN.
2. Have an english-language instruction set reference handy. I used the
one included with older NASM versions, which I subsequently forked when
it was dropped from NASM. [1]
3. Likewise, refer to the Interrupt List for reference as to what a
particular interrupt service does. Apart from some modern extensions it
is fairly complete. It can be found in plain-text files (split across a
lot of them, you can concatenate them to receive a single file) on Ralf
Brown's pages [2] and can be accessed online, page per page, hosted by
several different websites such as fd.lod.bz [3].
4. Try out things in a debugger if unsure, such as when unclear about
what a particular instruction does, or to trace an existing program and
try to improve your understanding of its workings. My main project is
lDebug (with a small "L"), a debugger with a command line interface
that's based on FreeDOS Debug. [4]
5. You can also read some of the books that have been written about DOS.
At home I have the following print books: "FreeDOS Kernel", "DOS
Internals", "Undocumented DOS (Second Edition)" (UDOS), "Dissecting
DOS", "Extending DOS", "Advanced MS-DOS Programming", "Writing MS-DOS
Device Drivers", and a german "DR DOS 6.0" manual. UDOS and the DR DOS
manual are probably the best among these.
Finally, I wrote a document called Assembly Comments Explained: Guide
for Advanced Learning and Style [5]. It is intended to clarify
conventions in my assembly language sources in particular.
Regards,
ecm
[1]: https://pushbx.org/ecm/doc/insref.htm
[2]: http://www.cs.cmu.edu/~ralf/files.html
[3]: https://fd.lod.bz/rbil/index.html
[4]: https://pushbx.org/ecm/web/#projects-ldebug
[5]: https://pushbx.org/ecm/doc/acegals.htm
_______________________________________________
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user