uae-dap
Version:
Debug Adapter Protocol for Amiga development with FS-UAE or WinUAE
362 lines (361 loc) • 12.1 kB
JSON
{
"name": "uae-dap",
"version": "1.1.5",
"description": "Debug Adapter Protocol for Amiga development with FS-UAE or WinUAE",
"main": "out/src/index.js",
"displayName": "Amiga Assembly Debugger",
"license": "GNU General Public License v3.0",
"homepage": "https://github.com/grahambates/uae-dap",
"bugs": {
"url": "https://github.com/grahambates/grahambates/uae-dap/issues"
},
"publisher": "gigabates",
"engines": {
"node": "*",
"vscode": "^1.84.2"
},
"categories": [
"Debuggers"
],
"icon": "images/icon.png",
"galleryBanner": {
"color": "#000000",
"theme": "dark"
},
"activationEvents": [
"onDebug",
"onLanguage:m68k",
"workspaceContains:**/*.{s,S,asm,ASM}"
],
"bin": "cli.js",
"repository": {
"type": "git",
"url": "https://github.com/grahambates/uae-dap"
},
"keywords": [
"m68k",
"68000",
"assembly",
"asm",
"dap",
"debug",
"amiga",
"commodore",
"fs-uae",
"win-uae"
],
"contributes": {
"breakpoints": [
{
"language": "m68k"
}
],
"debuggers": [
{
"type": "amiga-assembly-debugger",
"label": "UAE: Debug",
"program": "./out/src/debugAdapter.js",
"runtime": "node",
"configurationAttributes": {
"launch": {
"required": [
"program"
],
"properties": {
"program": {
"type": "string",
"description": "Local path of target Amiga binary",
"default": "^\"\\${workspaceFolder\\}/uae/dh0/myprogram\""
},
"remoteProgram": {
"type": "string",
"description": "Remote path of target Amiga binary (default: SYS:{basename of program})"
},
"stopOnEntry": {
"type": "boolean",
"description": "Automatically stop target after launch",
"default": false
},
"noDebug": {
"type": "boolean",
"description": "Just launch emulator without debugging",
"default": false
},
"trace": {
"type": "boolean",
"description": "Enable verbose logging",
"default": false
},
"serverName": {
"type": "string",
"description": "Host name of the debug server",
"default": "localhost"
},
"serverPort": {
"type": "number",
"description": "Port number of the debug server",
"default": 2345
},
"exceptionMask": {
"type": "number",
"description": "Mask used to catch the exceptions",
"default": 60
},
"emulatorType": {
"type": "string",
"enum": [
"fs-uae",
"winuae"
],
"description": "Emulator program type",
"default": "fs-uae"
},
"emulatorBin": {
"type": "string",
"description": "Path of emulator executable (default: use bundled version)"
},
"emulatorArgs": {
"type": "array",
"items": {
"type": "string",
"title": "Emulator option"
},
"default": [],
"description": "Additional CLI args to pass to emulator program. Remote debugger args are added automatically"
}
}
},
"attach": {
"required": [
"program"
],
"properties": {
"program": {
"type": "string",
"description": "Local path of target Amiga binary",
"default": "^\"\\${workspaceFolder\\}/uae/dh0/myprogram\""
},
"stopOnEntry": {
"type": "boolean",
"description": "Automatically stop target after launch",
"default": false
},
"trace": {
"type": "boolean",
"description": "Enable verbose logging",
"default": false
},
"serverName": {
"type": "string",
"description": "Host name of the debug server",
"default": "localhost"
},
"serverPort": {
"type": "number",
"description": "Port number of the debug server",
"default": 2345
},
"exceptionMask": {
"type": "number",
"description": "Mask used to catch the exceptions",
"default": 60
}
}
}
},
"initialConfigurations": [
{
"type": "amiga-assembly-debugger",
"request": "launch",
"name": "FS-UAE Debug",
"stopOnEntry": false,
"program": "${workspaceFolder}/uae/dh0/myprogram",
"remoteProgram": "SYS:myprogram",
"emulatorType": "fs-uae",
"emulatorArgs": [
"--hard_drive_0=${workspaceFolder}/uae/dh0",
"--automatic_input_grab=0",
"--floppy_drive_0_sounds=off",
"--hide_hud=1",
"--window_resizable=1"
],
"preLaunchTask": "build"
},
{
"type": "amiga-assembly-debugger",
"request": "launch",
"name": "Amiga Assembly Debugger: FS-UAE Launch",
"noDebug": true,
"program": "${workspaceFolder}/uae/dh0/myprogram",
"remoteProgram": "SYS:myprogram",
"emulatorType": "fs-uae",
"emulatorArgs": [
"--hard_drive_0=${workspaceFolder}/uae/dh0",
"--automatic_input_grab=0",
"--floppy_drive_0_sounds=off",
"--hide_hud=1",
"--window_resizable=1"
],
"preLaunchTask": "build"
},
{
"type": "amiga-assembly-debugger",
"request": "launch",
"name": "Amiga Assembly Debugger: WinUAE Debug",
"stopOnEntry": false,
"program": "${workspaceFolder}/uae/dh0/myprogram",
"remoteProgram": "SYS:myprogram",
"emulatorType": "winuae",
"emulatorArgs": [
"-s",
"filesystem=rw,dh0:${workspaceFolder}/uae/dh0"
],
"preLaunchTask": "build"
},
{
"type": "amiga-assembly-debugger",
"request": "launch",
"name": "Amiga Assembly Debugger: WinUAE Launch",
"noDebug": true,
"program": "${workspaceFolder}/uae/dh0/myprogram",
"remoteProgram": "SYS:myprogram",
"emulatorType": "winuae",
"emulatorArgs": [
"-s",
"filesystem=rw,dh0:${workspaceFolder}/uae/dh0"
],
"preLaunchTask": "build"
}
],
"configurationSnippets": [
{
"label": "Amiga Assembly Debugger: FS-UAE Debug",
"description": "A new configuration for debugging a program in FS-UAE.",
"body": {
"type": "amiga-assembly-debugger",
"request": "launch",
"name": "Amiga Assembly Debugger: FS-UAE Debug",
"stopOnEntry": false,
"program": "^\"\\${workspaceFolder\\}/uae/dh0/myprogram\"",
"remoteProgram": "SYS:myprogram",
"emulatorType": "fs-uae",
"emulatorArgs": [
"^\"--hard_drive_0=\\${workspaceFolder\\}/uae/dh0\"",
"--automatic_input_grab=0",
"--floppy_drive_0_sounds=off",
"--hide_hud=1",
"--window_resizable=1"
],
"preLaunchTask": "build"
}
},
{
"label": "Amiga Assembly Debugger: FS-UAE Run",
"description": "A new configuration to launch a program in FS-UAE.",
"body": {
"type": "amiga-assembly-debugger",
"request": "launch",
"name": "Amiga Assembly Debugger:FS-UAE Launch",
"noDebug": true,
"program": "^\"\\${workspaceFolder\\}/uae/dh0/myprogram\"",
"remoteProgram": "SYS:myprogram",
"emulatorType": "fs-uae",
"emulatorArgs": [
"^\"--hard_drive_0=\\${workspaceFolder\\}/uae/dh0\"",
"--automatic_input_grab=0",
"--floppy_drive_0_sounds=off",
"--hide_hud=1",
"--window_resizable=1"
],
"preLaunchTask": "build"
}
},
{
"label": "Amiga Assembly Debugger: WinUAE Debug",
"description": "A new configuration for debugging a program in WinUAE.",
"body": {
"type": "amiga-assembly-debugger",
"request": "launch",
"name": "WinUAE Debug",
"stopOnEntry": false,
"program": "^\"\\${workspaceFolder\\}/uae/dh0/myprogram\"",
"remoteProgram": "SYS:myprogram",
"emulatorType": "winuae",
"emulatorArgs": [
"-s",
"^\"filesystem=rw,dh0:\\${workspaceFolder\\}/uae/dh0\""
],
"preLaunchTask": "build"
}
},
{
"label": "Amiga Assembly Debugger: WinUAE Run",
"description": "A new configuration to launch a program in WinUAE.",
"body": {
"type": "amiga-assembly-debugger",
"request": "launch",
"name": "WinUAE Launch",
"noDebug": true,
"program": "^\"\\${workspaceFolder\\}/uae/dh0/myprogram\"",
"remoteProgram": "SYS:myprogram",
"emulatorType": "winuae",
"emulatorArgs": [
"-s",
"^\"filesystem=rw,dh0:\\${workspaceFolder\\}/uae/dh0\""
],
"preLaunchTask": "build"
}
}
]
}
]
},
"scripts": {
"check": "npm run lint && npm run type-check && npm run test",
"build": "tsc -p . --declaration",
"watch": "npm run build -- --watch",
"type-check": "npm run build -- --noEmit",
"clean": "rimraf ./out/*",
"lint": "eslint . --ext .ts",
"lint-fix": "eslint . --ext .ts --fix",
"test": "jest",
"test-coverage": "jest --coverage",
"prepare": "husky install",
"prepack": "npm run build",
"vscode:prepublish": "npm run build",
"vscode:package": "vsce package",
"vscode:publish": "vsce publish"
},
"dependencies": {
"@vscode/debugadapter": "^1.55.1",
"@vscode/debugprotocol": "^1.55.1",
"async-mutex": "^0.4.0",
"devtools-protocol": "0.0.1056733",
"expression-eval": "^5.0.0",
"glob": "^8.0.1",
"promise-retry": "^2.0.1",
"temp": "^0.9.4"
},
"devDependencies": {
"@johanblumenberg/ts-mockito": "^1.0.32",
"@types/glob": "^7.2.0",
"@types/jest": "^27.5.1",
"@types/node": "^17.0.31",
"@types/promise-retry": "^1.1.3",
"@types/temp": "^0.9.1",
"@typescript-eslint/eslint-plugin": "^5.22.0",
"@typescript-eslint/parser": "^5.22.0",
"@vscode/debugadapter-testsupport": "^1.55.1",
"eslint": "^8.14.0",
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-jest": "^26.2.2",
"eslint-plugin-prettier": "^4.0.0",
"husky": "^8.0.1",
"jest": "^28.1.0",
"prettier": "^2.6.2",
"rimraf": "^3.0.2",
"ts-jest": "^28.0.2",
"typescript": "^4.6.4",
"vscode": "^1.1.37"
}
}