Skip to main content

Developer tools for CdM processors

Project description

Developer tools for Coco-de-Mer processors

Installation

For more information check out this guide.

Development kit contents

CLI Programs

  • cocas - assembler and linker
  • cocodump - disassembler
  • synthm - secondary decoder synthesis utility
  • cocoemu-server - CdM emulator with CDP support

Visual Studio Code Extension

  • Syntax highlighting and code snippets for CdM assembly languages
  • Debug support
  • Integrated build system

cdm-devkit-misc archive

  • Logisim processor implementations (./)
  • Logisim libraries (jar/)
    • logisim-banked-memory - banked memory for CdM-16
    • logisim-cdm-emulator - emulated CdM processors
    • logisim-debugger - debugger for Logisim

Documentation

For guides and technical information check out Documentation.

It is available in docs/ directory.

Report a bug

If you encountered a one, we recommend to report it using GitHub Issues:

  • Open a new issue using this template
  • Provide a proper name and description
  • Provide the information on how to reproduce the bug

Setting up development environment

Python-based projects

  • Install Poetry
  • Run poetry install at the project root

Java-based projects

  • Install JDK
  • Gradle build system should be downloaded by gradlew script automatically on first run

Visual Studio Code extension

  • Install Node.js
    • You will need a package manager, so it's recommended to get a provided npm binary from Node.js installer
    • However, if you really understand what are you doing, you can use your favorite package manager such as pnpm, Yarn or (if you are on the cutting edge of progress) even Bun
  • Navigate to vscode-cdm-extension
  • Run npm install

Building

Building individual projects

Python-based projects

  • Run poetry build

Java-based projects

  • Navigate to project folder;
  • For UNIX-like systems:
    • Run ./gradlew jar
  • For Windows:
    • Run .\gradlew.bat jar

Visual Studio Code extension

  • Navigate to vscode-cdm-extension
  • Run npx @vscode/vsce package

Building all projects at once

There is a handy Makefile that will build all projects and prepare artifacts for distribution: just run make to build all projects.

[!TIP] You can set a VERSION variable if you want to specify the project version; note that it should be a valid SemVer version.

Example: make VERSION=1.2.3

Contributing

If you want to participate in the development of the project, we are open to your pull requests!

[!IMPORTANT] We expect all commit messages to comply these guidelines and use scope identifier(s) - the name of the subproject enclosed in square brackets. However, if the commit applies to the entire repository, scope identifier must be omitted.

An example message: [cocas] Add new target

Scope identifiers

General

  • docs
  • ci/cd
  • examples
  • tests

Processor implementations

  • cdm*

Projects

  • cocas
  • cocoemu
  • cocodump
  • synthm
  • cdp-java
  • logisim-banked-memory
  • logisim-cdm-emulator
  • logisim-runner
  • vscode-cdm-extension

Contact us

If you have a proposal or a suggestion, you are free to open a GitHub Issue here.

For other questions, use these contacts:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cdm_devkit-0.2.3.tar.gz (687.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cdm_devkit-0.2.3-py3-none-any.whl (719.4 kB view details)

Uploaded Python 3

File details

Details for the file cdm_devkit-0.2.3.tar.gz.

File metadata

  • Download URL: cdm_devkit-0.2.3.tar.gz
  • Upload date:
  • Size: 687.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for cdm_devkit-0.2.3.tar.gz
Algorithm Hash digest
SHA256 df48770e765c27da13a5b9b1c42cb8ca9bd76be477071103582944b082815a67
MD5 6ad60271f1817a511a3eb9b168fab4ad
BLAKE2b-256 1bf2df83d530b70c3e4a3e2c8d342bffcdab8aa00b2bfb876688f9c9fd8b6a7e

See more details on using hashes here.

File details

Details for the file cdm_devkit-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: cdm_devkit-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 719.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.1

File hashes

Hashes for cdm_devkit-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 692230f9a498dbfaa484f3aad7864d71a7d84541c07daaf3ade2c57904814831
MD5 98e7246a2112d2d2d7e723d8fba097b1
BLAKE2b-256 d6a5f3af788ca7e933946e864d7f1bd2198916ea7367af053fbeb4b0e5847676

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page