Skip to content

Commit

Permalink
New UI for PIO Unified Debugger
Browse files Browse the repository at this point in the history
  • Loading branch information
ivankravets committed May 8, 2018
1 parent e08f43b commit ef8755e
Show file tree
Hide file tree
Showing 11 changed files with 2,104 additions and 5 deletions.
17 changes: 16 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,20 @@
# Release Notes

## 0.15.0 (2018-05-??)

**Requires VSCode 1.23.0 or above**

* New UI for [PIO Unified Debugger](http://docs.platformio.org/page/plus/debugging.html):
- Conditional Breakpoints
- Expressions and Watchpoints
- Generic Registers
- Peripheral Registers
- Memory Viewer
- Disassembly
- Multi-thread support
- A hot restart of an active debugging session
* Retain PIO Home state when switching between tabs (issue [#32](https://github.com/platformio/platformio-vscode-ide/issues/32))

## 0.14.2 (2018-04-28)

* Fixed "PIP: Could not find a version that satisfies the requirement" (issue [#102](https://github.com/platformio/platformio-vscode-ide/issues/102))
Expand All @@ -10,7 +25,7 @@

## 0.14.0 (2018-03-14)

* Intial support for PIO Enterprise
* Initial support for PIO Enterprise
* Speed up the loading of PIO Home [PIO Home](http://docs.platformio.org/page/home/index.html)

## 0.13.2 (2018-03-08)
Expand Down
329 changes: 325 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
"embedded",
"firmware",
"debug",
"arduino"
"microcontroller"
],
"preview": true,
"main": "./lib/main",
Expand All @@ -38,6 +38,58 @@
"*"
],
"contributes": {
"languages": [
{
"id": "platformio-debug.disassembly",
"aliases": [
"Disassembly"
],
"extensions": [
".dbgasm"
]
},
{
"id": "platformio-debug.memoryview",
"aliases": [
"Memory"
],
"extensions": [
".dbgmem"
]
},
{
"id": "platformio-debug.asm",
"aliases": [
"Assembly",
"asm"
],
"extensions": [
".asm",
".nasm",
".yasm",
".inc",
".s"
],
"configuration": "./syntaxes/assembly-configuration.json"
}
],
"grammars": [
{
"language": "platformio-debug.disassembly",
"scopeName": "source.platformio-debug-disassembly",
"path": "./syntaxes/platformio-debug-disassembly.json"
},
{
"language": "platformio-debug.memoryview",
"scopeName": "source.platformio-debug-memoryview",
"path": "./syntaxes/platformio-debug-memoryview.json"
},
{
"language": "platformio-debug.asm",
"scopeName": "source.platformio-debug-asm",
"path": "./syntaxes/assembly.tmLanguage"
}
],
"commands": [
{
"command": "platformio-ide.showHome",
Expand Down Expand Up @@ -93,8 +145,277 @@
"command": "platformio-ide.upgradeCore",
"title": "Upgrade PlatformIO Core to the latest version",
"category": "PlatformIO"
},
{
"category": "PlatformIO Debug",
"command": "platformio-debug.peripherals.updateNode",
"title": "Update Value"
},
{
"category": "PlatformIO Debug",
"command": "platformio-debug.peripherals.selectedNode",
"title": "Selected"
},
{
"category": "PlatformIO Debug",
"command": "platformio-debug.registers.selectedNode",
"title": "Selected"
},
{
"category": "PlatformIO Debug",
"command": "platformio-debug.peripherals.copyValue",
"title": "Copy Value"
},
{
"category": "PlatformIO Debug",
"command": "platformio-debug.registers.copyValue",
"title": "Copy Value"
},
{
"category": "PlatformIO Debug",
"command": "platformio-debug.peripherals.setFormat",
"title": "Set Value Format"
},
{
"category": "PlatformIO Debug",
"command": "platformio-debug.registers.setFormat",
"title": "Set Value Format"
},
{
"category": "PlatformIO Debug",
"command": "platformio-debug.examineMemory",
"title": " View Memory",
"icon": {
"light": "resources/icons/add.svg",
"dark": "resources/icons/add-inverse.svg"
}
},
{
"category": "PlatformIO Debug",
"command": "platformio-debug.memory.clearHistory",
"title": "Clear Memory View History",
"icon": {
"light": "resources/icons/closeall.svg",
"dark": "resources/icons/closeall-inverse.svg"
}
},
{
"category": "PlatformIO Debug",
"command": "platformio-debug.memory.deleteHistoryItem",
"title": "Delete"
},
{
"category": "PlatformIO Debug",
"command": "platformio-debug.viewDisassembly",
"title": "View Disassembly (Function)"
},
{
"category": "PlatformIO Debug",
"command": "platformio-debug.setForceDisassembly",
"title": "Set Force Disassembly"
}
],
"debuggers": [
{
"enableBreakpointsFor": {
"languageIds": [
"c",
"cpp",
"asm",
"arm",
"platformio-debug.disassembly"
]
},
"configurationAttributes": {
"launch": {
"properties": {
"executable": {
"description": "Path of firmware or program",
"type": "string"
},
"toolchainBinDir": {
"description": "Path of toolchain binary directory",
"type": "string"
},
"svdPath": {
"default": null,
"description": "Path to an SVD file describing the peripherals of the microcontroller",
"type": "string"
},
"showDevDebugOutput": {
"default": false,
"description": "Prints all GDB responses to the console",
"type": "boolean"
}
},
"required": [
"executable",
"toolchainBinDir"
]
}
},
"initialConfigurations": [
{
"name": "PlatformIO Debugger",
"request": "launch",
"type": "platformio-debug",
"toolchainBinDir": "/usr/local/bin"
}
],
"configurationSnippets": [
{
"body": {
"name": "${6:PlatformIO Debugger}",
"request": "launch",
"type": "platformio-debug",
"executable": ".pioenvs/myenv/firmware.elf",
"toolchainBinDir": "/usr/local/bin"
},
"description": "PlatformIO Debugger",
"label": "PlatformIO Debugger"
}
],
"label": "PlatformIO Debugger",
"program": "./node_modules/platformio-vscode-debug/lib/adapter.js",
"runtime": "node",
"type": "platformio-debug"
}
],
"menus": {
"commandPalette": [
{
"command": "platformio-debug.peripherals.updateNode",
"when": "false"
},
{
"command": "platformio-debug.peripherals.selectedNode",
"when": "false"
},
{
"command": "platformio-debug.peripherals.copyValue",
"when": "false"
},
{
"command": "platformio-debug.peripherals.setFormat",
"when": "false"
},
{
"command": "platformio-debug.registers.copyValue",
"when": "false"
},
{
"command": "platformio-debug.registers.selectedNode",
"when": "false"
},
{
"command": "platformio-debug.registers.setFormat",
"when": "false"
},
{
"command": "platformio-debug.memory.deleteHistoryItem",
"when": "false"
},
{
"command": "platformio-debug.examineMemory",
"when": "debugType == platformio-debug"
},
{
"command": "platformio-debug.memory.clearHistory",
"when": "debugType == platformio-debug"
},
{
"command": "platformio-debug.viewDisassembly",
"when": "debugType == platformio-debug"
},
{
"command": "platformio-debug.setForceDisassembly",
"when": "debugType == platformio-debug"
}
],
"view/item/context": [
{
"command": "platformio-debug.peripherals.updateNode",
"when": "view == platformio-debug.peripherals && viewItem == field"
},
{
"command": "platformio-debug.peripherals.updateNode",
"when": "view == platformio-debug.peripherals && viewItem == registerRW"
},
{
"command": "platformio-debug.peripherals.updateNode",
"when": "view == platformio-debug.peripherals && viewItem == registerWO"
},
{
"command": "platformio-debug.peripherals.copyValue",
"when": "view == platformio-debug.peripherals && viewItem == field"
},
{
"command": "platformio-debug.peripherals.copyValue",
"when": "view == platformio-debug.peripherals && viewItem == registerRW"
},
{
"command": "platformio-debug.peripherals.copyValue",
"when": "view == platformio-debug.peripherals && viewItem == registerRO"
},
{
"command": "platformio-debug.registers.copyValue",
"when": "view == platformio-debug.registers && viewItem == register"
},
{
"command": "platformio-debug.registers.copyValue",
"when": "view == platformio-debug.registers && viewItem == field"
},
{
"command": "platformio-debug.peripherals.setFormat",
"when": "view == platformio-debug.peripherals"
},
{
"command": "platformio-debug.registers.setFormat",
"when": "view == platformio-debug.registers"
},
{
"command": "platformio-debug.memory.deleteHistoryItem",
"when": "view == platformio-debug.memory",
"group": "inline"
}
],
"view/title": [
{
"command": "platformio-debug.examineMemory",
"when": "view == platformio-debug.memory",
"group": "navigation"
},
{
"command": "platformio-debug.memory.clearHistory",
"when": "view == platformio-debug.memory",
"group": "navigation"
}
]
},
"views": {
"debug": [
{
"id": "platformio-debug.peripherals",
"name": "Peripherals",
"when": "debugType == platformio-debug && peripheralsEnabled"
},
{
"id": "platformio-debug.registers",
"name": "Registers",
"when": "debugType == platformio-debug"
},
{
"id": "platformio-debug.memory",
"name": "Memory",
"when": "debugType == platformio-debug"
},
{
"id": "platformio-debug.disassembly",
"name": "Disassembly",
"when": "debugType == platformio-debug"
}
]
},
"keybindings": [
{
"command": "platformio-ide.build",
Expand Down Expand Up @@ -222,10 +543,10 @@
"dependencies": {
"fs-plus": "^3.0.0",
"ini": "^1.3.4",
"platformio-node-helpers": "^0.5.2"
"platformio-node-helpers": "^0.5.2",
"platformio-vscode-debug": "^1.0.0"
},
"extensionDependencies": [
"ms-vscode.cpptools",
"webfreak.debug"
"ms-vscode.cpptools"
]
}
1 change: 1 addition & 0 deletions resources/icons/add-inverse.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions resources/icons/add.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions resources/icons/closeall-inverse.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit ef8755e

Please sign in to comment.