Package: dis51
Version: 0.5-1
Severity: wishlist
Tags: patch

I was unsatisfied that the labels were only numeric. Therefore I've improved it
to use labels from a linker map file. Please find attached the according
patches.

The first patch replaces the old numeric-only label generation by a real label
manager. It is able to handle any string as label. These are managed in a
linked list. The resulting output of dis51 is tested to be identical to the old
labels generation.

The second patch introduces the ability to read and parse a map file generated
by aslink (package sdcc) and use all labels in code segments. These are stored
by the label manager and further used during disassembly. Therefore less
numeric labels are generated and the disassembled code is more readable.

To read a map file, I've improved the command line argument parsing of void
main(). It now first checks for "-h" and "--help" and prints some usage
information. Then it parses all parameters in a loop and handles them.

Additionally all labels from the map file are used as entry points for
disassembly. This greatly improved the coverage of my test files.

PS: I've sent this as mail to the program author. He answered:
> Thanks, I also received another patch to improve the labels recently.
> I appreciate the patch but might not have time to do anything with it
> for a while. Feel free to host this patch somewhere yourself if you
> want, or even host the patched source. I may get to it eventually but
> it won't be for a while.

Therefore I send the patches to the Debian package maintainers in the hope to
include them in a next revision.



-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.37-2-amd64 (SMP w/8 CPU cores)
Locale: LANG=de_AT.utf8, LC_CTYPE=de_AT.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages dis51 depends on:
ii  libc6                         2.11.2-13  Embedded GNU C Library: Shared lib

dis51 recommends no packages.

dis51 suggests no packages.

-- no debconf information

Attachment: dis51-1-label-manager.patch.gz
Description: GNU Zip compressed data

Attachment: dis51-2-read-map.patch.gz
Description: GNU Zip compressed data

Reply via email to