Works in progress

These are projects of mine that have some code implemented but are not quite documented or polished yet. Each project will be featured on their own page in the future.

CSC258 computer

A simulator and graphical debugger for a hypothetical educational computer architecture. Repository: https://github.com/nayuki/CSC258-Computer.

Cryptography library (Java)

A library of symmetric ciphers and hash functions implemented in pure Java. Includes: MD2, MD4, MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, Tiger, Tiger2, Whirlpool, AES, IDEA, RC2, RC4, Rijndael, SHACAL-1, SHACAL-2, TEA, XTEA.

x86 operating system kernel “Atom”

A basic but functional OS kernel written in C and assembly. Features preemptive multitasking, virtual memory, user mode, system calls. There is still much to do before it becomes a usable OS. Repository: http://git.eigenstate.org/qz/atom.git/. (Most development happens outside the “master” branch.)

Operating system for Altera DE2 Nios II

An OS kernel that implements thread management, thread switching, interrupt handling, preemptive multitasking, and more. Contains a mix of C and assembly code, written from scratch.

x86 assembler (Java)

An assembler, which takes a source file in GNU Assembler syntax and generates machine code wrapped in a bare-bones ELF executable for Linux. The structure of x86 instructions is quite irregular and intricate, heh. Repository: https://github.com/nayuki/x86-Assembler.



Feedback

Question? Comment? Contact me

ProjectNayuki: Like, comment, follow updates on Facebook