This update adds remote debugging with VS Code. It allows source level debugging with ASM and C code, breakpoints in your own source code and inspection of variables and system state.
I’ve already thought about adding external debugging support for some years now but never got around to actually implementing it. So 2 weeks ago I decided to finally look into it and started to implement it.
The required VS Code extension can be found on https://marketplace.visualstudio.com/items?itemName=emulicious.emulicious-debugger
This update comes with several additions and improvements. Most notably an additional system is now emulated, the MSX.
Four weeks ago I got interested in emulating the MSX and now I feel it is ready to be released. It supports most cartridge ROMs released for the MSX1. If a disk ROM and an alternative BIOS are provided it also supports program on floppy disks in the form of dsk images.
Emulicious’s debugger now also supports loading Sjasm lst files as source files. Sjasm is a Z80 assembler that is often used for MSX development but can also be used for other Z80 systems like the Mastersystem.
Furthermore, the profiler has been improved to better support the calling convention of C.
The full list of changes follows:
Added MSX emulation
Added support to load lst files containing Sjasm sourcecode in the debugger
Improved Profiler to better work with C calling convention
Remember last directory for loading sources/symbols
Fixed an issue with breakpoints on ROMs larger than 4 MB (thanks to Antígeno)
Improved Auto Palette option in Tile Viewer for SMS Mode 4
Added View menu to Tile Viewer to choose different layouts
Added Frame Advance to the main emulator (formerly only available in debugger)
Improved Tilemap Viewer and Tile Viewer support for TMS Modes
Added CTRL+SHIFT+BACKSPACE as hotkey for Reload ROM
Added an option to automatically reload a ROM when it changes
Fixed a bug that wouldn’t allow setting gamepad inputs if there are more than 2 gamepads connected (Thanks to Niloct)