System 3.x Extension for Visual Studio Code
This extension adds support for AliceSoft's System 1-3 and System 3.x languages.

Features
- Syntax highlighting for
.adv
source files
- Decompiling and compiling:
- System 3.x games (using the bundled xsys35c)
- System 1-3 games (using the bundled sys3c)
- Debugging:
The following features are available for System 3.x games only:
- Documentation appears when you hover over a command name
- Go to Definition for functions
Prerequisites
- For System 3.x features:
- To view command documentation, you'll need the System 3.9 SDK.
- To use debugging features, you'll need xsystem35-sdl2 (version 2.0.0 or higher).
- For System 1-3 features:
- To use debugging features, you'll need system3-sdl2 (version 1.3.0 or higher).
Getting Started
After meeting the prerequisites, follow these steps to get started:
- Install this extension.
- Open a folder containing game files:
- For System 3.x games: folder containing
*SA.ALD
- For System 1-3 games: folder containing
ADISK.DAT
- Open the command palette (Ctrl+Shift+P or
F1), and enter
system3x
. Select System3x: Decompile
from the
list that appears. Decompiled source files will be saved in the src
folder, and this extension will automatically open the first .adv
file.
- For debugging:
- System 3.x games (using xsystem35-sdl2):
- On Windows, copy
xsystem35.exe
to the same folder as the *.ALD
files.
- On other platforms, follow the installation instructions for xsystem35-sdl2.
- System 1-3 games (using system3-sdl2):
- On Windows, copy
system3.exe
and its DLL files to the same folder as ADISK.DAT
.
- On other platforms, follow the installation instructions for system3-sdl2.
- Press F5 to start debugging.
Feature Details
Decompiling
The System3x: Decompile
command works with both System 3.x and System 1-3 games:
- For System 3.x: decompiles
*.ALD
and System39.ain
files
- For System 1-3: decompiles
?DISK.DAT
and AG00.DAT
files
in the workspace folder. The decompiled source files are saved in a src
subfolder.
Compiling
By default, the Start Debugging
command (F5) automatically
rebuilds the game using source files in the src
folder.
To build the game without running it, use the Run Build Task
command
(Ctrl+Shift+B) and choose xsys35c: build
.
Running
If a launch.json
file doesn't exist, pressing F5 will start
the appropriate game engine with default settings. But this works only when an
.adv
file is open in the current tab.
To make F5 consistently functional, or to customize launch settings,
select Add Configuration
from the Run
menu. This will generate a
launch.json
file as follows:
{
"version": "0.2.0",
"configurations": [
{
"type": "xsystem35",
"request": "launch",
"name": "Debug",
"program": "${config:system3x.xsystem35Path}",
"runDir": "${workspaceFolder}",
"srcDir": "${workspaceFolder}/src",
"logLevel": 2,
"stopOnEntry": false,
"preLaunchTask": "xsys35c: build"
}
]
}
Mouse hovering over the attributes will display their descriptions.
For example, to launch the game without building it, comment out the
"preLaunchTask": "xsys35c: build"
line.
Debugging
Refer to the Debugging
documentation in VS Code to learn how to use the debugger.
The debugger supports the following operations for all games:
Additional features for System 3.x games only:
Extension Settings
To access your settings, open the Settings editor (Ctrl+,
or Cmd+,
) and
search for system3x
.