|
1 | 1 |
|
2 | 2 | # ConvSym version history
|
3 | 3 |
|
| 4 | +### Version 2.12.1 (2024-12-14) |
| 5 | + |
| 6 | +* `deb2` output format: |
| 7 | + - Fixed an edge-case bug where if one block is too large and symbol heap exceeds 64 kb, all further blocks are skipped. |
| 8 | + |
| 9 | +* Improve README, including some wording and terminology (e.g. "input/output parsers" -> "input/output formats"). |
| 10 | + |
4 | 11 | ### Version 2.12 (2024-12-11)
|
5 | 12 |
|
6 | 13 | * Added support for symbol references instead of raw offsets in `-ref` and `-org` options:
|
|
14 | 21 |
|
15 | 22 | * Added new `txt` input parser to parse arbitrary text files; ConvSym can now parse SGDK's `symbols.txt` file.
|
16 | 23 |
|
17 |
| -* `asm` and `log` output parsers: |
| 24 | +* `asm` and `log` output formats: |
18 | 25 | - Implement proper options support in `-outopt`. You can configure line format as `-outopt "/fmt='format-string'"` now (legacy `-outopt "format-string"` syntax is preserved). This goes in line with the new `txt` parser (which also has `/fmt` option among others and will allow to add additional options in the future;
|
19 | 26 | - Warn if line format string is incorrect (e.g. too few arguments specified).
|
20 | 27 |
|
|
24 | 31 | * `as_lst_exp` input parser:
|
25 | 32 | - Show a warning that `-inopt` is unsupported if user tries to set it.
|
26 | 33 |
|
27 |
| -* `deb2` and `deb1` output parsers: |
| 34 | +* `deb2` and `deb1` output formats: |
28 | 35 | - Made tree flattening algorithm introduced in 2.10 deterministic.
|
29 | 36 |
|
30 | 37 | * Document all default parser options in ConvSym's usage message (printed when invoked without arguments), document `-debug` option.
|
|
33 | 40 |
|
34 | 41 | * Added `-addprefix` option to prepend any string to output symbols.
|
35 | 42 |
|
36 |
| -* `deb2` and `deb1` output parsers: |
| 43 | +* `deb2` and `deb1` output formats: |
37 | 44 | - Fixed a rare symbol encoding issue where data with unusual entropy would produce long prefix trees with some codes exceeding 16-bits. Respective characters (usually extremely rare) would then fail to decode properly corrupting a small set of symbol texts. A custom tree rebalancing algorithm was implemented to fix trees with codes longer than 16-bit;
|
38 | 45 | - Fixed a minor memory leak (<2 kb in a lifetime) on nodes in encoding function;
|
39 | 46 | - Fixed a tiny (several bytes) memory leak due to an unreleased file handle.
|
40 | 47 |
|
41 |
| -* `asm` and `log` output parsers: |
| 48 | +* `asm` and `log` output formats: |
42 | 49 | - Properly report I/O error if output file couldn't be opened.
|
43 | 50 |
|
44 | 51 | ### Version 2.9.1 (2023-03-22)
|
|
67 | 74 |
|
68 | 75 | ### Version 2.7.1 (2022-07-23)
|
69 | 76 |
|
70 |
| -* Fix incorrect newlines produced by `log` and `asm` output parsers on Windows; |
| 77 | +* Fix incorrect newlines produced by `log` and `asm` output formats on Windows; |
71 | 78 | * Fix a minor memory leak when a parser crashes;
|
72 | 79 | * Overall stability and portability improvements.
|
73 | 80 |
|
74 | 81 | ### Version 2.7 (2021-04-27)
|
75 | 82 |
|
76 | 83 | * Added support for multiple labels sharing the same offset for all input and output wrappers;
|
77 | 84 |
|
78 |
| -* `deb1` and `deb2` output parsers: |
| 85 | +* `deb1` and `deb2` output formats: |
79 | 86 | - Add "/favorLastLabels" option, which toggles choosing last labels when there are multiple labels at the same offset (first labels are preferred otherwise).
|
80 | 87 |
|
81 | 88 | ### Version 2.6 (2021-02-01)
|
|
93 | 100 | - Fixed a bug that prevented offsets >=$80000000 to be added due to incorrect signed boundary check;
|
94 | 101 | - When several labels occur on the same offset, use the last label met, not the first;
|
95 | 102 | - Track last global label name correctly (it previously didn't update the label when it was filtered via boundary or other checks).
|
96 |
| -* `deb1` output parser: |
| 103 | +* `deb1` output format: |
97 | 104 | - Fix memory corruption when symbol map requires more than 64 memory blocks;
|
98 | 105 | - Explicitly limit symbols map to 64 blocks, display an error when overflow was about to occur.
|
99 |
| -* `deb2` output parser: |
| 106 | +* `deb2` output format: |
100 | 107 | - Fix infinite loop when the full the last block id was 0xFFFF;
|
101 | 108 | - Limit symbols map to 256 blocks, display error if more blocks were requested.
|
102 | 109 |
|
|
0 commit comments