The unified diff between revisions [266fa6a6..] and [4929ddab..] is displayed below. It can also be downloaded as a raw diff.

#
# old_revision [266fa6a67e73f67581c4c8844d4ec9b62b10da46]
# new_revision [4929ddab8788ddb16c617817cb8f6ec7d517c8a2]
#
# patch "disassem.pl"
#  from [547116c9df493de3ef5ba8b453f4070068afb1be]
#    to [2d4ff72a2c6af43905fac023009482ba5130b49a]
#
============================================================
--- disassem.pl	547116c9df493de3ef5ba8b453f4070068afb1be
+++ disassem.pl	2d4ff72a2c6af43905fac023009482ba5130b49a
@@ -63,7 +63,7 @@ if (open LABELS, "<input.labels") {
 	    $addr = hex $addr;
 	    $labels{$addr} = $name;
 	    if ($name =~ /^L(\d+)$/) {
-		$labelnum = $1 + 1 if ($labelnum >= $1);
+		$labelnum = $1 + 1 if ($1 >= $labelnum);
 	    }
 	}
     }
@@ -1550,7 +1550,12 @@ sub read_operand_addr24
     my $addr = $byte1;
     $addr += $byte2 << 8;
     $addr += $byte3 << 16;
-    set_operand(sprintf("0x%.6x", $addr));
+    if ($branch) {
+        set_operand(sprintf("%s", get_label($addr)));
+	add_comment(sprintf("0x%.6x", $addr));
+    } else {
+        set_operand(sprintf("0x%.6x", $addr));
+    }
 }
 
 ## ASSUMPTION: This is always the last operand!!!