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

Reply via email to