rolandshacks / vs64

C64 Development Environment for Visual Studio Code
Other
88 stars 15 forks source link

TypeError [ERR_INVALID_ARG_TYPE] on VICE launch #64

Closed DubiousDoggo closed 2 months ago

DubiousDoggo commented 3 months ago

Trying to run and debug with the vice launch config gives this error:

image

I'm using cl65 and the program builds and runs fine when done manually

launch.json:

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "vice",
            "request": "launch",
            "name": "Launch vice",
            "preLaunchTask": "${defaultBuildTask}",
        }
    ]
}

tasks.json

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "cl65: build",
            "group": {
                "kind": "build",
                "isDefault": true,
            },
            "type": "shell",
            "command": ".\\build.bat",
            "args": [ ".\\demo\\test1.asm" ],
            "problemMatcher": [
                "$ca65",
                "$ld65",
            ],
        }
    ]
}

build.bat

cl65.exe -t c64 -C c64-asm.cfg -g -Ln %~dpn1.lbl -u __EXEHDR__ %~f1 -o %~dpn1.prg -Wl "--mapfile,%~dpn1.map" -Wl "--dbgfile,%~dpn1.dbg"

trace output:

D/DebugSession.DebugSession.start: start debug session
T/DebugSession.DebugSession.launchRequest: launchRequest
T/ViceConnector.Socket.<anonymous>: connected
T/ViceConnector.ViceMonitorClient.onResponse: dispatching response CMD_REGISTERS_GET for request none
T/ViceConnector.ViceMonitorClient.onResponse: registers get
T/ViceConnector.ViceMonitorClient.onResponse: dispatching response RESPONSE_STOPPED for request none
T/ViceConnector.ViceMonitorClient.onResponse: dispatching response CMD_REGISTERS_AVAILABLE for request CMD_REGISTERS_AVAILABLE
T/ViceConnector.ViceMonitorClient.onResponse: registers available
T/ViceConnector.ViceMonitorClient.onResponse: dispatching response CMD_BANKS_AVAILABLE for request CMD_BANKS_AVAILABLE
T/ViceConnector.ViceMonitorClient.onResponse: banks available
T/ViceConnector.ViceConnector.connect: connected to vice binary monitor port
T/ViceConnector.ViceConnector.disconnect: disconnected from vice binary monitor port
T/ViceConnector.ViceMonitorClient.onResponse: dispatching response CMD_CHECKPOINT_LIST for request CMD_CHECKPOINT_LIST
T/ViceConnector.ViceMonitorClient.onResponse: checkpoint list response
T/ViceConnector.ViceMonitorClient.onResponse: dispatching response CMD_EXIT for request CMD_EXIT
T/ViceConnector.ViceMonitorClient.onResponse: dispatching response RESPONSE_RESUMED for request none
T/ViceConnector.ViceMonitorClient.onClose: Connection closed
D/ViceConnector.ViceProcess.stdout: Sync reset
D/ViceConnector.ViceProcess.stdout: Error -  vice_network_send: internal error
D/ViceConnector.ViceProcess.stdout: Error -  vice_network_send: internal error
D/ViceConnector.ViceProcess.stdout: Error -  vice_network_send: internal error
D/ViceConnector.ViceProcess.stdout: monitor_binary_receive(): vice_network_receive() returned -1, breaking connection
D/DebugSession.Socket.<anonymous>: client connection closed
D/ViceConnector.ViceProcess.stdout: Sync reset
rolandshacks commented 3 months ago

Hi. Seems like you're completely bypassing the project configuration and the build system? A quick tour on how to setup the environment can be found in the README - or you use the built-in helper commands to create a fresh project setup for you.

In your current setup (which I would not recommend to keep if there aren't strong reasons), what you can try out is overwriting the "program" attribute for the launch configuration with the absolute path to the generate .prg (per default, the path to the .prg is taken/generated from the project configuration / build setup).

DubiousDoggo commented 2 months ago

my bad, I misunderstood what this extension does