The Blog of Charles Daniels

The Projects Page of Charles Daniels

ProjectDescriptionStatusLink(s)
charles-util an assortment of utilities and scripts too small to warrent their own repositories active git.sr.ht
gmixerctl GUI Wrapper for OpenBSD mixerctl active git.sr.ht
pretor Next-generation grading assistant active github
nocsim Simulator for bufferless network on chip topographies and routing algorithms. active github
vtoi C89 parser for verilog-esque integers maintenance github
shelldoc A tool for generating ReST documentation from shell scripts maintenance github
YAECPPL Yet Another Easy C Plus Plus Logger complete github
color2overlay An art project to generate wallpapers. complete github
camlann A compatibility wrapper for the NIOS2 BSP inactive github
toolchest That one time I decided to write a package manager in sh inactive github
OpenChariot That one time I decided to write a git web UI sh inactive github
BitShuffle a program for encoding and decoding arbitrary binary data into printable ASCII characters for transfer over arbitrary media. inactive github
HeRCM HeRC Matrix Tools inactive github
Argument Soup That one time I decided to re-invent argv parsing. inactive github

I maintain the following OpenBSD packages:

Text in italics is copied from the project, my comments if any are written as normal text.

project page

This is the open source software suite for managing your software development projects that you've been waiting for. Managed instances of our services are provided here for your convenience.

sr.ht has the potential to be one of the most important open source projects ever. sr.ht solves the problem of hosting for developers in a single one-stop shop with an excellent UI. Best of all, the whole thing is AGPL licensed.

github project page

An easy to use modern Java bytecode editor based on Objectweb's ASM. No more hassling with the constant pool or stack-frames required.

github project page

Sake is a way to easily design, share, build, and visualize workflows with intricate interdependencies. Sake is self-documenting because the instructions for building a project also serve as the documentation of the project's workflow. The first time it's run, sake will build all of the components of a project in an order that automatically satisfies all dependencies. For all subsequent runs, sake will only rebuild the parts of the project that depend on changed files. This cuts down on unnecessary re-building and lets the user concentrate on their work rather than memorizing the order in which commands have to be run.

Sake is free, open source cross-platform software under a very permissive license (MIT Expat) and is written in Python. Sake is in the beta stage of development.

github project page

There was always a loophole when it came to a need to covert between hexadecimal / decimal / octal / binary.

Especially if it involved an operation like 0x1234 + 0x20. It took a lot of hard work, and mostly a good pocket calculator.

Features

project page

EGGX/ProCALL is an X11 graphics library for C and FORTRAN created to achieve extreme simplicity. It's available also on C++. You can enjoy 2D graphics easily on the X Window System by using good old BASIC style drawing functions. Out of our desire to deliver simple usability and the fun that we have had when using BASIC in the age of the 8-bit machine to whomever starts to learn programming, we have created this library mainly for basic programming education. Since it ensures enough drawing speed on 10-year-old PCs, it can deal tasks like creating an animation or creating a simple game.

Furthermore, this library provides a powerful solution to the visualization of numerical calculation. What sets this library from other common visualization tools is that it can call drawing functions (subroutines) for X11 from a calculation code directly. Generally, complicated implementation is necessary to grasp the progress of the calculation in time-consuming simulation. However, you can provide a link using this library without any worries because it is an easy-to-implement, very lightweight and compact library that does not consume a lot of memory.

EGGX/ProCALL uses only Xlib for X11 libraries. Therefore, it can be installed easily in any UNIX environment (even Cygwin).