Kicknvim
Full-featured KickAssembler support for Neovim: syntax highlighting, keybindings, build and run – straight from your editor.
Install / Use
/learn @IstiCusi/KicknvimREADME
Kick'N'Vim
Assemble like it's 1985 – but with modern Neovim powers.
Kick'N'Vim is a Neovim plugin that gives you everything you need to write, build, and run KickAssembler projects for the C64 – all from inside Neovim. If you’re tired of VSCode or other heavyweight environments and prefer fast, focused, keyboard-driven workflows, this one’s for you.
<p align="center"> <img src="media/logo.png" alt="Kick'N'Vim Logo" width="400"/> </p>✨ Features
-
🎨 Syntax highlighting for
_k.asmfiles or by using:set filetype=kickass -
🧠 Buffer-local keymaps for assembling and running code
-
🏃 Integration with VICE to launch compiled
.prgfiles -
🚀 Complete 6502 assembler man pages included
-
🔧 Fully configurable with sane defaults
-
💥 Commands:
:KickAssemble→ Assemble current file with KickAssembler:KickRun→ Launch compiled PRG in x64
🛠 Installation (Lazy.nvim)
{
"IstiCusi/kicknvim",
ft = "kickass",
config = function()
require("kicknvim").setup({
kickass_path = "/home/phonon/opt/kickassembler/KickAss.jar", -- or "kickass" if using a wrapper
kickman_man = false,
x64_path = "/usr/bin/x64", -- path to your VICE binary
keys = {
assemble = "<leader>ka",
run = "<leader>kr",
},
})
end,
}
The plugin will only activate for buffers with filetype=kickass.
⚙ Configuration Options
| Option | Description | Default |
| -------------- | -------------------------------------------- | -------------------------- |
| kickass_path | Path to KickAss.jar or a wrapper script | "kickass" |
| x64_path | Path to your VICE emulator binary (x64) | "x64" |
| keys | Table with assemble and run key mappings | <leader>ka, <leader>kr |
| kickass_man | Installation or Deinstallation of man pages | false |
You can redefine keybindings, use your own emulator, or point to another version of KickAssembler if needed.
🚀 Usage
- Open your
_k.asmfile. Make sure it triggers the filetypekickass. - Press
<leader>kato assemble it using KickAssembler. - Press
<leader>krto run the output.prgin VICE (x64). - Press (typically)
Kto show the man page for the instruction below the cursor.
🔎 Requirements
- KickAssembler 5.25 (this version assumed as baseline)
- Java (for running KickAss.jar)
- VICE emulator with
x64in your PATH or specified manually
🛍 Roadmap
We’re just getting started. Planned features:
- 🧠 C64 memory layout visualization (zero page, heap, ROM/RAM boundaries)
- 🎯 In-editor breakpoints without
.breakpseudo-op (via integration) - 🧵 Embedded VICE debugger (bidirectional communication with VICE)
- 🛠 Project templating and helpers for BASIC loaders, IRQ setup, and more
- 💬 Output preview for compiler errors and warnings in a floating window
🙏 Credits
Huge thanks to:
- Jesper Gravgaard, creator of KickAssembler – one of the most powerful 6510 assemblers ever made.
- The VICE team, for keeping the C64 alive and emulated across decades.
Kick'N'Vim is just a humble bridge between these brilliant tools and the Neovim world.
👋 For Who?
If you:
- ❤️ Neovim
- 📂 Grew up with (or discovered) the C64
- 💥 Prefer fast, focused tooling over GUIs
- 🧱 Want full control over your assembly workflow
...then this plugin is for you.
Happy hacking – and remember: real coders JSR $1000 instead of clicking buttons.
