{"id":49102301,"url":"https://github.com/kalininskiy/pdp11-asm-lsp-server","last_synced_at":"2026-04-23T01:04:09.151Z","repository":{"id":352321628,"uuid":"1214705770","full_name":"kalininskiy/pdp11-asm-lsp-server","owner":"kalininskiy","description":"PDP-11 Assembler Language LSP-Server with DevTools intergration / LSP-сервер (Language Server Protocol) с поддержкой языка ассемблера PDP-11 в VS Code с интеграцией инструментов разработки","archived":false,"fork":false,"pushed_at":"2026-04-20T22:48:17.000Z","size":504,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-21T00:02:33.278Z","etag":null,"topics":["assembler","assembly-language","bk-0010","bk-0011","bk0010","bk0011m","bkturbo8","lsp","lsp-server","pdp-11","pdp11","pdpy11","retro-computers","retro-computing","retrocomputers","retrocomputing","uknc"],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items?itemName=kalininskiy.pdp11-asm-lsp-server","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kalininskiy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-18T23:53:41.000Z","updated_at":"2026-04-20T22:45:29.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/kalininskiy/pdp11-asm-lsp-server","commit_stats":null,"previous_names":["kalininskiy/pdp11-asm-lsp-server"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/kalininskiy/pdp11-asm-lsp-server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalininskiy%2Fpdp11-asm-lsp-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalininskiy%2Fpdp11-asm-lsp-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalininskiy%2Fpdp11-asm-lsp-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalininskiy%2Fpdp11-asm-lsp-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kalininskiy","download_url":"https://codeload.github.com/kalininskiy/pdp11-asm-lsp-server/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kalininskiy%2Fpdp11-asm-lsp-server/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32161325,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-22T17:06:48.269Z","status":"ssl_error","status_checked_at":"2026-04-22T17:06:19.037Z","response_time":58,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["assembler","assembly-language","bk-0010","bk-0011","bk0010","bk0011m","bkturbo8","lsp","lsp-server","pdp-11","pdp11","pdpy11","retro-computers","retro-computing","retrocomputers","retrocomputing","uknc"],"created_at":"2026-04-21T00:00:58.774Z","updated_at":"2026-04-23T01:04:09.136Z","avatar_url":"https://github.com/kalininskiy.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PDP-11 Assembly Language LSP-Server with DevTools intergration\n\nLSP-сервер (Language Server Protocol) с поддержкой языка **ассемблера PDP-11** в VS Code с интеграцией инструментов разработки.\n\n![Version](https://img.shields.io/badge/version-0.2.2-blue)\n![License](https://img.shields.io/badge/license-MIT-green)\n![VS Code](https://img.shields.io/badge/VS%20Code-%5E1.85.0-blue)\n\n## Возможности\n\n✨ **Поддержка языка**\n- Полная подсветка синтаксиса PDP-11\n- Интеллектуальное автодополнение кода\n- Сниппеты для удобной разработки\n- Навигация по символам и переход к определениям\n- Всплывающие подсказки (on hover)\n\n📊 **Диагностика проблем в коде в реальном времени**\n- Отображение ошибок и предупреждений\n- Интеграция с внешними ассемблерами\n- Подсветка в панели проблем\n- Настраиваемые таймауты\n\n🔧 **Поддерживает ассемблеры**\n- **pdpy11** – ассемблер PDP-11 на Python - [ссылка на проект](https://github.com/pdpy11/pdpy11)\n- **BKTurbo8** – Кросс Ассемблер БК Турбо8 для компьютеров серии БК - [ссылка на проект](https://gid.pdp-11.ru/bkturbo8_doc.html)\n- **MACRO11** – Portable DEC MACRO11 assembler - [ссылка на проект](https://github.com/j-hoppe/MACRO11)\n\n🎯 **Возможности для разработки**\n- Выбор целевого аппаратного профиля (БК-0010, БК-0011, УКНЦ)\n- Поддержка форматов (.s, .asm, .mac)\n- Запуск сборки из редактора\n- Настройка аргументов сборки\n- Автозапуск в эмуляторе - после успешной сборки\n\n## Установка\n\n### Через VS Code Marketplace\n1. Откройте VS Code Extensions (`Ctrl+Shift+X`)\n2. Найдите **\"PDP-11 Assembler LSP server and Tools\"**\n3. Нажмите **Install**\n\n### Через ручную установку в VS Code \n1. Скачайте расширение в виде файла .vsix в разделе release\n2. Откройте VS Code Extensions (`Ctrl+Shift+X`)\n2. Нажмите \"...\" и запустите **Install from VSIX**\n\n### Ручная установка\n```bash\ngit clone https://github.com/kalininskiy/pdp11-asm-lsp-server.git\ncd pdp11-asm-lsp-server\nnpm run install:all\nnpm run compile\n# Package as VSIX:\nnpm install -g @vscode/vsce\nvsce package\n```\n\n## Быстрый старт\n\n### 1. Создайте ассемблерный файл (PDP-11, здесь: пример для БК-0010)\nс расширением `.asm`, `.s`, или `.mac`:\n```asm\n        MOV     #HELLO,R1           ; Адрес начала текста\n        CLR     R2                  ; Конец текста - нулевой байт\n        EMT     20                  ; Вывод текста\nSTOP:   HALT                        ; Останов\nHELLO:  .ASCIZ \"Hello World!\"\n        .END\n```\n\n### 2. Настройте выбранный ассемблер\nНажмите `Ctrl+Shift+P` найдите запускаемые файлы для правильной настройки:\n- **PDP-11: Select pdpy11 Executable**\n- **PDP-11: Select BKTurbo8 Executable**\n- **PDP-11: Select MACRO11 Executable**\n\n### 3. Запустите\nНажмите `Ctrl+Shift+P` и запустите:\n- **PDP-11: Assemble with pdpy11**\n- **PDP-11: Assemble with BKTurbo8**\n- **PDP-11: Assemble with MACRO11**\n\n## Настройки\n\n### Основные настройки\n\nНажмите CTRL + , и вбейте в поисковую строку \"pdp11\"\n\n## Установка ассемблеров\n\n### pdpy11\n\n**Установка:**\n```bash\npip install pdpy11\n# или\nbrew install pdpy11  # macOS\n```\n\n**Исходники:** https://github.com/pdpy11/pdpy11\n\n**Быстрый старт:**\n```bash\npdpy11 --implicit-bin program.mac\n```\n\n---\n\n### BKTurbo8\n\nИдет в составе эмулятора - https://gid.pdp-11.ru/\n\n**Документация:** https://gid.pdp-11.ru/bkturbo8_doc.html\n\n**Быстрый старт:**\n```bash\nBKTurbo8_x64.exe CO program.asm\n```\n\n---\n\n### MACRO11\nPortable DEC MACRO11 assembler - https://github.com/j-hoppe/MACRO11\n\n---\n\n## Команды плагина\n\nВсе команды доступные по запуску (`Ctrl+Shift+P`):\n\n### настройка путей к запускаемым файлам ассемблеров\n- **PDP-11: Select pdpy11 Executable** – Set pdpy11 binary location\n- **PDP-11: Select BKTurbo8 Executable** – Set BKTurbo8 binary location\n- **PDP-11: Select MACRO11 Executable** – Set MACRO11 binary location\n\n### Запуск ассемблеров\n- **PDP-11: Assemble with pdpy11** – Compile active file with pdpy11\n- **PDP-11: Assemble with BKTurbo8** – Compile active file with BKTurbo8\n- **PDP-11: Assemble with MACRO11** – Compile active file with MACRO11\n\n## Разработка проекта\n\n### Структура проекта\n```\npdp11-asm-lsp-server/\n├── client/                      # VS Code extension client\n│   ├── src/extension.ts         # Main extension entry\n│   ├── package.json\n│   └── tsconfig.json\n├── server/                      # Language server backend\n│   ├── src/\n│   │   ├── server.ts            # LSP server implementation\n│   │   ├── analyzer.ts          # Code analysis\n│   │   ├── parser.ts            # PDP-11 parser\n│   │   ├── tokenizer.ts         # Lexical analysis\n│   │   ├── toolchain.ts         # Assembler integration\n│   │   ├── instructions.ts      # PDP-11 instruction set\n│   │   └── types.ts             # TypeScript types\n│   ├── package.json\n│   └── tsconfig.json\n├── syntaxes/pdp11-asm.tmLanguage.json  # Syntax highlighting\n├── snippets/pdp11.json          # Code snippets\n├── language-configuration.json   # Language config\n└── .vscode/\n    ├── launch.json              # Debug configuration\n    └── tasks.json               # Build tasks\n```\n\n### Сборка и отладка проекта\n\n**Prerequisites:**\n- Node.js 18+ and npm\n- TypeScript 5.6+\n- Git\n\n**Шаги для сборки:**\n```bash\n# Clone repository\ngit clone https://github.com/kalininskiy/pdp11-asm-lsp-server.git\ncd pdp11-asm-lsp-server\n\n# Install dependencies\nnpm run install:all\n\n# Compile TypeScript\nnpm run compile\n\n# Watch mode (development)\nnpm run watch\n\n# Lint code\nnpm run lint\n```\n\n### Запуск в режиме отладки\n\n1. Откройте проект в VS Code\n2. Нажмите `F5` для запуска Debug Extension\n3. Откроется новое окно VS Code с загруженным расширением\n4. Откройте или создайте файл с раширением `.asm` для тестирования\n\n### Сборка релиза\n\n```bash\n# Установите vsce (VS Code Extension CLI)\nnpm install -g @vscode/vsce\n\n# Соберите Package в виде .vsix\nvsce package\n```\n\n## Контрибьюторы\n\nИсправления и любое участие в проекте приветствуется!\n\nПростые шаги чтобы начать участие в проекте:\n\n1. Сделайте форк репозитория\n2. Создайте feature branch (`git checkout -b feature/amazing-feature`)\n3. Сделайте Commit изменений (`git commit -m 'Add amazing feature'`)\n4. Сделайте Push изменений в feature branch (`git push origin feature/amazing-feature`)\n5. Откройте Pull Request в проект\n\n## Лицензия\n\nMIT License – see LICENSE file for details\n\n## Поддержка и ссылки\n\n- **Issues:** [GitHub Issues](https://github.com/kalininskiy/pdp11-asm-lsp-server/issues)\n- **pdpy11 Docs:** https://github.com/pdpy11/pdpy11\n- **BKTurbo8 Docs:** https://gid.pdp-11.ru/bkturbo8_doc.html\n- **PDP-11 Reference:** https://en.wikipedia.org/wiki/PDP-11\n\n---\n\n## 📞 Контакты\n\n(с) 2026 by Ivan \"VDM\" Kalininskiy\n- Telegram: [@VanDamM](https://t.me/VanDamM)\n- GitHub: [kalininskiy](https://github.com/kalininskiy)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkalininskiy%2Fpdp11-asm-lsp-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkalininskiy%2Fpdp11-asm-lsp-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkalininskiy%2Fpdp11-asm-lsp-server/lists"}