Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>MASM RunnerNew to Visual Studio Code? Get it now.
MASM Runner

MASM Runner

istareatscreens

|
14,403 installs
| (1) | Free
Extension for compiling and running MASM (Microsoft Macro Assembly Language)
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

MASM Runner

"Buy Me A Coffee" paypal

MASM Runner is x86/x64 MASM (Microsoft Macro Assembly Language) code compiler, linker, runner extension for vscode that comes packaged with the Irvine Library and runs on all OS.

This app is made possible through the use of JWlink and JWasm to compile x86/x64 MASM and a 32-bit wine terminal to execute x86 executable binaries on mac and linux (webview) using Boxedwine emscripten port.

This will also compile/link and execute MASM code (x86/x64) natively on windows through the vscode terminal (powershell/cmd) out of the box when the webview is not open on all windows systems.

Please note that this extension is far from perfect, contributions are appreciated.

How To Use

Current commands can be accessed by pressing Ctrl+Shift+p on windows or Command ⌘+shift+p on mac

Starting and Running Code

MASM Runner Webview (CMD terminal) Start

  • Command: masm runner start
  • Description: Starts MASM CMD to allow compilation and running of code
  • Start Webview Via Hotkey:
    • Windows/Linux: Ctrl + Alt + m
    • Mac: ⌘ Command + alt + m
Starting Webview Via Command
 
Starting Webview Via Button
 

Compile and Run

  • Command: masm runner compile
  • Description: Runs code in current file and exports .obj and .exe files to file or workspace directory. Runs code in current file and exports .obj and .exe files to file or workspace directory. When executed this command will either compile/link and run the code:
    • In the native vscode terminal (Windows Only) running PowerShell, Command Prompt or Git Bash. Note if the webview is open native compiling will NOT occur - supports running x86/x64 (32-bit and 64-bit) MASM.
    • In the webview - supports running x86 (32-bit) MASM. Please note if the webview is running (you ran masm runner start) it will compile/link and run in the webview.
  • Settings (via vscode options):
    • masmRunner.exportBinaries
      • Description: Export .exe and .obj from boxedwine webview on compile?
      • Default Value: True
  • Running Code via Hotkey:
    • Windows/Linux: Ctrl + alt + n
    • Mac: ⌘ Command + Alt + n
Running Code Via Context Menu
 
Running/Compiling/Linking x86 MASM Code in Webview Via Command
 
Running/Compiling/Linking x86 MASM Code in Webview Via Button
 
Running/Compiling/Linking x86 MASM Code in Native VSCode Terminal Via Command
 
Running/Compiling/Linking x86 MASM Code in Native VSCode Terminal Via Button
 

Other Commands and Features

MASM Runner restart

  • Command: masm runner restart
  • Description: restarts MASM Runner webview (If this does not work click the terminal and type ctrl+r or Command ⌘+r)
  • Button is available in Menu next to run code and launch MASM webview button

Send File(s) to Webview

  • Command: masm send file(s) to webview
  • Description: Send file(s) to MASM Runner Webview
  • Context Menu: In File explorer you can right click files to send to webview
  • Settings (via vscode options):
    • masmRunner.enableContextMenus
      • Description: Enables context menu in Explorer (used to send files to boxedwine webview (cmd) - Default Value: True)
      • Default Value: True
Sending files to webview using context menu
 

Snippets

Current snippets include:

  • masm-template - Generates standard template to write MASM x86 using Irvine32 library
masm-template Snippet Preview
 

Contributing

For development and contributing see HERE

Preview outside vscode:

WARNING the web version is ~50mb in size.
The web version can be viewed masm.isas.dev or see the repo to download the client version HERE

Troubleshooting

Webview

If you have issues with the MASM webview please reset cache by doing the following:

Manual

  1. Open the MASM Webview
  2. By pressing Ctrl+Shift+p on windows or Command ⌘+shift+p on mac open the command box
  3. Type the following into the command box: ">Developer: Open Webview Developer Tools
  4. Navigate to Application tab in 'Develop Tools' window
  5. Go to Local Storage on the left menu verticle menu and expand it
  6. Delete all key value pairs from the list from one of the sub menu items for Local Storage
  7. Close the MASM WebView and reopen it

Command

Alternatively:

  1. Open MASM Webview
  2. By pressing Ctrl+Shift+p on windows or Command ⌘+shift+p on mac open the command box
  3. Type the following into the command box: ">masmRunner.resetCMDCache"
  4. Close the MASM Webview
  5. Reopen the MASM Webview, Cache should be cleared and everything should work
MasmRunner.resetCMDCache example use
 
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft