diff --git a/CHANGELOG.md b/CHANGELOG.md index 1f296f7..42c6126 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ and this project adheres to * `hide-name`, `hide-address` and `hide-size` style properties to hide specific visual elements * `flags` can be specified at map file as well * `size` property at root level to modify the document size +* `labels` property can go on the left side as well ## [0.2.0] - 2023-12-14 diff --git a/README.md b/README.md index 7fa5d9e..542f0e3 100644 --- a/README.md +++ b/README.md @@ -188,7 +188,7 @@ For each area, the following characteristics of an area can be defined: - area size in pixels - `range`: **[Optional, (0, no limit)]** **[min, max]** - range of addresses that will be taken into account in this area. - // - `start`: **[start, end]** force area to start in to a given address +# - `start`: **[start, end]** force area to start in to a given address - `section-size`: **[Optional, (0, no limit)]** **[min, max]** - size range of the sections that should be shown. Exclude others. - `style`: **[Optional, default: parent style]** @@ -201,6 +201,20 @@ For each area, the following characteristics of an area can be defined: - flags to append to the specified section/s. See [Flags](#### Section flags) section. - `style`: **[Optional, parent style]** - style properties to or modify to the specified section/s +- `labels`: **[Optional, none]** + - Add text labels to specific memory positions of the current area + - `address`: + - Memory address where the label should be placed + - `text`: + - Text to display for this label + - `lenght`: **[Optional, none]** + - lenght of the label line in pixels + - `directions`: **[Optional, none]** + - direction or list of directions for the arrow head. Possible values are none, `in`, `out` or both. + - `side`: **[Optional, `right`]** + - Area side at which the label should be placed + - `style`: **[Optional, parent style]** + - style properties to or modify to the specified section/s Below an example of area definition: @@ -220,6 +234,27 @@ areas: style: hide-size: true ``` +#### Labels + +Labels can bind a text string with a specific memory position. This property falls inside `area`. A partial example can +be seen below: + +```yaml +areas: + - area: + labels: + - address: 0xe8043800 + text: In direction + length: 150 + directions: in + style: + stroke-dasharray: '5,1,3,1,3' + # ... +``` + + + +> See `examples/label_example_config.yaml` for a full example. #### Section flags @@ -306,13 +341,13 @@ At the folder examples, there are a series of configurations and map `.yaml` fil - [x] Labels at specific memory addresses - [x] Area titles -- [ ] Links across specific areas -- [ ] Choose side of the labels +- [x] Links across specific areas +- [x] Choose side of the labels - [x] Memory direction - [x] Hide specific elements - [ ] Memory size in bytes - [ ] Section links across breaks -- [ ] Friendly name and identifier +- [x] Friendly name and identifier - [ ] Legend - [ ] Area representation different from section - [ ] Make `type` default to `section` diff --git a/examples/label_example_map.svg b/examples/label_example_map.svg index 520a660..a2945d0 100644 --- a/examples/label_example_map.svg +++ b/examples/label_example_map.svg @@ -1,2 +1,2 @@ -Address Link ExampleTPIU0xe8040000ETM0xe8041000External PPB0xe8042000ROM Table0xe8043000In directionNo directionOut directionLabel at left sideIn and Out directions \ No newline at end of file +Address Link ExampleTPIU0xe8040000ETM0xe8041000External PPB0xe8042000ROM Table0xe8043000In directionNo directionOut directionLabel at left sideIn and Out directions \ No newline at end of file