#lib #assembly #architecture #puts #start #data #text #value #cfd16-lib-impl #cfd16

cfd16-lib-impl

Holds the trait Codeable for cfd16-lib, allowing the definition of a proc-macro

1 unstable release

Uses new Rust 2024

new 0.5.0 May 16, 2025

#2043 in Encoding


Used in 2 crates

GPL-3.0-or-later

15KB

CFD-16 Instruction Set Architecture

CFD-16 is an Instruction Set Architecture designed for a processor of the same name. The ISA is based on RISC principles and has a 16-bit datapath and a 24-bit address space. The architecture does not provide for virtual memory, instead using protected segments to disallow user processes from accessing kernel resources.

Assembly

.global _start
.extern itoa
.extern puts

.data
value: .word 240

.text
_start:
    mov %b, value
    ldr %a, (%b)
    mul %a, %a
    jsr itoa
    jsr puts
    str %a, (%b)
    sc 0

Task Board

  • More exhaustive testing
  • Code quality reviews
  • cfd16-objdump development
  • cfd16-emu development

Contributing

The CFD-16 project is open to anyone's contribution, whether for source code, documentation, or even just ideas. Feel free to reach out through Codeberg's own mechanisms or through email.

Licensing

All of the source code written for the CFD-16 project is licensed under the GNU GPLv3 or later versions thereof. However, submodules included in the repository may be third-party and thus fall under another license.

Documentation for the project is licensed under CC BY-SA 4.0.

No runtime deps