Skip to content

Commit 345d8ee

Browse files
Add periodic update / multiple debug session documentation to README.md (eclipse-cdt-cloud#160)
* Add periodic update / multiple debug session documentation to README.md * Fix typo. --------- Co-authored-by: Jens Reinecke <[email protected]>
1 parent 455a5eb commit 345d8ee

File tree

3 files changed

+32
-10
lines changed

3 files changed

+32
-10
lines changed

README.md

Lines changed: 32 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ A Visual Studio Code extension that provides a powerful and configurable memory
1414
- **Memory Management**: Enables saving and restoring memory data for specific address ranges (Intel Hex format).
1515
- **Customized Views**: Create and customize as many memory views as you need.
1616
- **Lock Views**: Keep views static, unaffected by updates from the debug session.
17+
- **Periodic Refresh**: Automatically refresh the memory data.
18+
- **Multiple Debug Sessions**: Switch between multiple debug sessions using a dropdown in the memory view.
1719
- And much more
1820

1921
## Getting Started
@@ -22,12 +24,12 @@ A Visual Studio Code extension that provides a powerful and configurable memory
2224

2325
1. **Install**: Add the extension to VS Code.
2426
2. **Verify Debugger Capability**: Ensure the debug adapter supports [`ReadMemory` requests](https://microsoft.github.io/debug-adapter-protocol/specification#Requests_ReadMemory).
25-
3. **Enable Debug Type**: Enable the Memory Inspector for the debug configuration type (VS Code setting *Debug Types*: `memory-inspector.debugTypes`).
27+
3. **Enable Debug Type**: Enable the Memory Inspector for the debug configuration type (VS Code setting _Debug Types_: `memory-inspector.debugTypes`).
2628

2729
### Use Memory Inspector
2830

2931
1. **Debug Session**: Start a debug session.
30-
2. **Open Memory Inspector**: Either run the *Memory: Show Memory Inspector* command or right-click a variable in the Variables view and select *Show in Memory Inspector*.
32+
2. **Open Memory Inspector**: Either run the _Memory: Show Memory Inspector_ command or right-click a variable in the Variables view and select _Show in Memory Inspector_.
3133
3. **Adjust View**: Modify the memory range you're interested in, as needed.
3234

3335
## Configuration
@@ -42,20 +44,40 @@ Use the following to adjust the view to your needs and the inspected memory arch
4244

4345
![Screenshot of the Memory Inspector](https://raw.githubusercontent.com/eclipse-cdt-cloud/vscode-memory-inspector/main/media/memory-inspector-options-screenshot.png)
4446

45-
1. **Bytes per MAU**: The number of *Bytes* that form the Minimum Addressable Unit. It commonly is a fixed number for a specific target hardware. Use for example a value of `1` for byte-addressable architectures.
46-
2. **MAUs per Group**: The number of *MAUs* that form a *Group* considering the selected *Endianess*. Use for example a value of `2` to form a 4-byte value consisting of `2` 2-byte MAUs.
47-
3. **Groups per Row**: Number of *Groups* to display in a row. This can be a fixed number of *Groups*. Or the value `Autofit` to let the Memory Inspector calculate the best utilization of space in the `Data` column.
48-
4. **Group Endianess**: The order of *MAUs* within a *Group*. The value can be `Little Endian` or `Big Endian`.
47+
1. **Bytes per MAU**: The number of _Bytes_ that form the Minimum Addressable Unit. It commonly is a fixed number for a specific target hardware. Use for example a value of `1` for byte-addressable architectures.
48+
2. **MAUs per Group**: The number of _MAUs_ that form a _Group_ considering the selected _Endianess_. Use for example a value of `2` to form a 4-byte value consisting of `2` 2-byte MAUs.
49+
3. **Groups per Row**: Number of _Groups_ to display in a row. This can be a fixed number of _Groups_. Or the value `Autofit` to let the Memory Inspector calculate the best utilization of space in the `Data` column.
50+
4. **Group Endianess**: The order of _MAUs_ within a _Group_. The value can be `Little Endian` or `Big Endian`.
4951

5052
![Screenshot of the Memory Inspector](https://raw.githubusercontent.com/eclipse-cdt-cloud/vscode-memory-inspector/main/media/memory-inspector-options-endian-screenshot.png)
5153

5254
The following terminology is used:
5355

5456
- **Byte**: A data unit of 8 Bits.
55-
- **MAU (Minimum Addressable Unit)**: A Minimum Addressable Unit of memory. It consists of one or more *Bytes* represented by a single address.
56-
- **Group**: A group of *MAUs* that forms a data value. *Groups* are the Memory Inspector's default granularity to edit memory contents.
57-
- **Row**: A row in the Memory Inspector display containing multiple *Groups*.
58-
- **Endianess**: The order of displaying *MAUs* within a *Group*.
57+
- **MAU (Minimum Addressable Unit)**: A Minimum Addressable Unit of memory. It consists of one or more _Bytes_ represented by a single address.
58+
- **Group**: A group of _MAUs_ that forms a data value. _Groups_ are the Memory Inspector's default granularity to edit memory contents.
59+
- **Row**: A row in the Memory Inspector display containing multiple _Groups_.
60+
- **Endianess**: The order of displaying _MAUs_ within a _Group_.
61+
62+
### Periodic Updates
63+
64+
The Memory Inspector can automatically refresh displayed memory data based on different triggers. You can configure the auto-refresh behavior using the following options:
65+
66+
![Screenshot of the Memory Inspector](./media/memory-inspector-periodic-update-screenshot.png)
67+
68+
- **On Stop**: Refreshes memory data when the program pauses.
69+
- **Periodic Refresh**: Refreshes memory data after a specified delay.
70+
- **Always**: Refreshes memory data continuously, regardless of the program execution state.
71+
- **While Running**: Refreshes memory data only when the program is running.
72+
- **Off**: Disables automatic refresh of memory data.
73+
74+
These settings can be adjusted individually for each Memory Inspector view or globally in the preferences.
75+
76+
### Multiple Debug Sessions
77+
78+
![Screenshot of the Memory Inspector](./media/memory-inspector-debug-sessions-screenshot.png)
79+
80+
The Memory Inspector supports multiple debug sessions. If multiple debug sessions are active, a dropdown appears in the memory view which allows you to switch between them. This enables you to target different debug sessions in multiple windows, simultaneously.
5981

6082
## Contributing
6183

67.4 KB
Loading
8.77 KB
Loading

0 commit comments

Comments
 (0)