- Visual Studio Code – Editor, with the following extensions:
- Z80 Assembly 0.0.3 by Imanolea
- DeZog 2.2.3 by Maziac (this is a renamed update to Z80 Debugger 0.9.1, also by Maziac)
- ZEsarUX 10.1 – Emulator
- sjasmplus 1.18,2 – Z80 compiler
A comparison of the debugger compatibilities are here.
Add launch.json to your workspace's .vscode folder:
{
// 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": "dezog",
"request": "launch",
"name": "Z80 Debugger",
"remoteType": "zrcp",
"zrcp": {
"hostname": "localhost",
"port": 10000,
"skipInterrupt": false
},
// "topOfStack": "Stack_Top",
"rootFolder": "${fileDirname}",
"sjasmplus": [
{
"path": "${fileDirname}/${fileBasenameNoExtension}.sld",
"useFiles": true,
"asm": "sjasmplus",
"mainFile": "${fileDirname}/${fileBasenameNoExtension}.z80"
}
],
"disassemblerArgs": {
"esxdosRst": true
},
"load": "${fileDirname}/${fileBasenameNoExtension}.sna",
"startAutomatically": false,
"preLaunchTask": "sjasmplus"
}
]
}
Add tasks.json to the same folder:
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "sjasmplus",
"type": "shell",
"command": "sjasmplus",
"args": [
"--fullpath",
"--sld=${fileDirname}/${fileBasenameNoExtension}.sld",
"${file}"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
To launch zesarux automatically, see this article.Download zesarux for Windows (or it's Linux alternative - remember to include lib-spectrum). The source code is here.
Start zesarux
Set up zesarux remote debugging
Or start it with the following command-line parameters:
"C:\Program Files\ZEsarUX_win-X\zesarux.exe" --disablefooter --zoomx 2 --zoomy 2 --disable-all-first-aid --quickexit --advancedmenus --enable-remoteprotocol --nosplash --nowelcomemessage
(the command-line parameters can be found here).
Select the .z80 file
Compile and Debug
Terminal > Run Task > sjasmplus
Run > Start Debugging
Another way to do this is to start ZESarUX using build tasks in VSCode.