Hello FreeDOS developers,

I'll first paste the announcement I made to our BTTR Software forum [1]. After that I'll add a few more things specific to FreeDOS.

===

I just finished up lDebug release 1.

The release primarily includes the manual (HTML is the preferred format, text and PDF available too), and five executables: lDebug (86 Mode only) and lDebugX (DPMI capable), both of each either uncompressed or lzip LZMA compressed, and instsect set up to install a boot sector loader for FAT12, FAT16, or FAT32 which can load any of the debugger executables as a bootable kernel. Further executables include LZ4 or Exomizer 3 compressed executables if one prefers those. The lzip LZMA compression was selected as the default method based on it compressing to the smallest resulting files.

All executables and loaders are supposed to work on anything down to 8088/8086 level machines. The loaders (boot sectors as well as the iniload stage embedded in the executables) prefer to use LBA access if available, and fall back to CHS access else.

The main sources (included in the releases) amount to 43k lines:

source$ cntlines -q *.asm *.MAC *.mac
Files:          23
Bytes:          976576
Total lines:    43010
 Blanks:        4660
 Comment only:  8834
 Actual code:   29516

Several other source repos are required for assembly. All of those are available from my Mercurial repos [2]. The assembler used was NASM version 2.15.03 (its preprocessor is extensively used). Complete building requires a C compiler to build several supporting applications.

My website [3] contains links to the repo, releases, and manual on the web (always the most recent one), or you can directly load the lzipped tarball [4] (1.6 MiB) or the zipfile [5] (5.5 MiB).

To get a sense of what is new since I forked FreeDOS Debug 1.13 you can read the blurb on my website or at the beginning of the manual. For more in depth descriptions of most of the new features you'll have to read the manual. For a quick start, run one of the executables and enter the ? command to get the main online help. (This should be paged according to the amount of rows on screen.) At the end of the main online help, further online help pages are referenced.

lDebug is free software, primarily under the Fair License [6], though the original FreeDOS Debug's MIT license and the 2-Clause BSD license (transitionally used for lDebug) are offered as alternatives too.

(I intend to repackage the release for a FreeDOS installer compatible zipfile at a later time. Meanwhile FreeDOS users can unpack this release manually.)

===

I consulted the FreeDOS wiki on how to package the application [7], and what to put into the LSM file [8]. I also reviewed the existing FreeDOS Debug package info [9] for direction on writing the LSM file. Finally I created a package that I hope can be included in a FreeDOS distribution [10] (5.7 MiB). For reference, here is the content of the LSM:

Begin3
Title: lDebug
Version: release 1
Entered-date: 2021-02-15
Description: advanced debugger based on FreeDOS Debug
Keywords: debug, debugger, DPMI debugger, bootable debugger
Author: Paul Vojta <vo...@math.berkeley.edu>
 Andreas "Japheth" Grech <mail -at- japheth.de>
Maintained-by: C. Masloch <pushbx -AT- ulukai.org>
Primary-site: https://ulukai.org/ecm/web/#projects-ldebug
Platforms: DOS (crosscompile from Linux with NASM and C compiler)
Copying-policy: Fair License
End

And this is how I created the package:

1. Extract from ldebug1.zip (the non-FreeDOS release zipfile)

2. Make directories SOURCE/LDEBUG

3. Move all other directories and files into SOURCE/LDEBUG

4. Make directory BIN

5. Copy SOURCE/LDEBUG/bin/ldebug*.com to BIN

6. Make directories DOC/LDEBUG

7. Copy SOURCE/LDEBUG/doc/ldebug.(txt|pdf|htm) to DOC/LDEBUG

8. Copy SOURCE/LDEBUG/license.txt to DOC/LDEBUG

9. Make directory APPINFO

10. Create LSM file

11. Insure the copied license.txt, ldebug.txt, and LSM have DOS format linebreaks; ldebug.txt required using dos2unix to achieve this

12. Create zipfile using the command:

> 7za a -mm=deflate -mx=9 -tzip LDEBUG1.ZIP APPINFO BIN DOC SOURCE

Please tell me if there is anything to improve about the packaging. Particular points of interest:

1. Is this the right amount of sources? The macro collection, ldosboot, instsect, and scanptab repos' contents are not included, but they are required to rebuild everything. The tellsize tool is another component not included. (As listed in the LSM, I crosscompile from a (Debian) Linux host system.)

2. Would you rather I include fewer of the temporary files, listing files, and map files? Surely at least the LZ4 and Exomizer 3 compressed executables are useful to include, however, considering the faster decompression (both) and the uniform usage conditions (the LZ4 stub's copyright lies only with me as I fully implemented it based on their specs, not their sources).

3. Should instsect.com go into the BIN directory too? Generally the lDebug release is the only source for the plain executable. (The recent RxDOS kernel revisions also use instsect, but as of the next version (7.25) the instsect tool is integrated into the RxDOS.COM kernel file and not present as instsect.com on its own any longer.)

4. Is the Primary-site link in the LSM fine? And: I don't think Japheth's or Paul Vojta's sites should be linked in the LSM, considering that the fork is in some ways far from its FreeDOS Debug 1.13 roots.

Regards,
ecm


[1]: https://www.bttr-software.de/forum/forum_entry.php?id=17715
[2]: https://hg.ulukai.org/ecm/
[3]: https://ulukai.org/ecm/web/#projects-ldebug
[4]: https://ulukai.org/ecm/download/ldebug/ldebug1.tlz
[5]: https://ulukai.org/ecm/download/ldebug/ldebug1.zip
[6]: https://opensource.org/licenses/Fair
[7]: http://wiki.freedos.org/wiki/index.php/Package#FreeDOS_1.1_package_structure
[8]: http://wiki.freedos.org/wiki/index.php/LSM
[9]: http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/1.2/repos/pkg-html/debug.html
[10]: https://ulukai.org/ecm/download/ldebug/fdpkg/LDEBUG1.ZIP


_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to