🚀 Socket Launch Week Day 5:Introducing Repository Access Permissions and Custom Roles.Learn more
Sign In

uae-dap

Package Overview
Dependencies
Maintainers
1
Versions
36
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

uae-dap

Debug Adapter Protocol for Amiga development with FS-UAE or WinUAE

latest
Source
npmnpm
Version
1.1.5
Version published
Weekly downloads
24
100%
Maintainers
1
Weekly downloads
 
Created
Source

UAE Debug Adapter Protocol

Stand-aloneDebug Adapter for Amiga assembly development with FS-UAE or WinUAE.

This package was extracted from the vscode-amiga-assembly extension, to create stand-alone adapter for use with other editors that support Debug Adapter Protocol.

This library relies on patched binaries for FS-UAE and WinUAE with changes from @prb28 and @bartman to provide a remote GDB server. These are now bundled with the package for Windows, Mac and Debian Linux x64. Note that the FS-UAE implementation is now based on the current 4.x dev build, and as such has some limitations and missing features. It is totally usable though and is much closer to current WinUAE, allowing us to share common patches rather than maintaining two separate GDB implementations.

Tested with:

  • NeoVim nvim-dap plugin. See example below.
  • Emacs dap-mode. See emacs-m68k (currently using 0.x version).

Installation

Install the uae-dap npm package globally: npm i -g uae-dap

Usage

The Amiga binaries to be debugged must include SAS/C-compatible LINE DEBUG hunks. Use the -linedebug option is vasm and -hunkdebug in vbcc to include these.

Example configuration:

Here's a minimal example configuration for NeoVim with the Amiga Assembly example workspace.

dap.adapters.asm68k = {
  type = 'executable',
  command = 'uae-dap',
  options = { initialize_timeout_sec = 20 },
}

dap.configurations.asm68k = {
  {
    type = 'asm68k',
    request = 'launch',
    program = '${workspaceFolder}/uae/dh0/gencop',
    stopOnEntry = true,
    emulatorType = "fs-uae",
    emulatorArgs = {
      "--chip_memory=2048",
      "--amiga_model=A1200",
      "--automatic_input_grab=0",
      "--floppy_drive_0_sounds=off",
      "--hide_hud=1",
      "--window_resizable=1"
    }
  }
}

Configuration options:

OptionTypeDescriptionDefault
programstringLocal path of target Amiga binary-
remoteProgramstringRemote path of target Amiga binary"SYS:{basename(program)}"
stopOnEntrybooleanAutomatically stop target after launchfalse
noDebugbooleanJust launch emulator without debuggingfalse
tracebooleanEnable verbose loggingfalse
serverNamestringHost name of the debug server"localhost"
serverPortnumberPort number of the debug server2345
exceptionMasknumberMask used to catch the exceptions0b1111111111100
emulatorType"fs-uae" | "winuae"Emulator program type"winuae" on windows, "fs-uae" on other platforms
emulatorBinstringPath of emulator executablebundled version
emulatorArgsstring[]Additional CLI args to pass to emulator program. Remote debugger args are added automatically[]

Changes

1.0

  • Changed configuration schema
  • No longer supports the patched fs-uae 3.x implementation.

Keywords

m68k

FAQs

Package last updated on 20 Jun 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts