Closed grahambates closed 2 years ago
I still need to test this with WinUAE once I get everything set up on my Windows laptop, but I thought I'd open the PR so you can start having a look.
I'll sort out the failing tests too!
Looks good.
Firsts tests, non working features :
I try to see if I can work on the to projects at the same time.
I know what's wrong with WinUAE and have a fix on the way. I'll have another look at copper breakpoints as they were working at some point.
How do you code in the two projects at the same time?
Got it building, still have to figure how to resolve the typescript files for debug.
Not sure if this is how you got it working, but I'm using npm link to link the local package dir. The map files in the out dir should make debugging possible but I don't think I've tried it across both projects.
Both WinUAE and copper breakpoint issues should be addressed now.
Looks good. I need some time to test it. I'll merge it when it's done.
Ok cool. I'm doing some testing too and I've just pushed a few more fixes.
In the meantime I've been adding some more features to the debugger. Notably:
These should should all be present in the current release, which is now linked in this PR. I have some thoughts for more improvements / features that would be good to discuss once this is merged.
I had some strange behaviors while debugging, but not on every debug. It needs some more tests. I think it's good enough for a pre-release, we'll get some feedback here : https://github.com/prb28/vscode-amiga-assembly/discussions/222 We can discuss about your new features in this thread too. You've added great new features !
The debugger logic is now in a separate uae-dap package, allowing it to be used with other editors that support Microsoft's Debug Adapter Protocol.
In this change I removed all of the logic now handled by the adapter package (along with related tests) and add the package as a dependency. In order to retain VS Code specific functionality, I extend the session classes and override a couple of methods to introduce the required hooks.
As an upshot of these changes, the extension no longer requires the
cstool
binary, as this is included as wasm in the package.