Skip to content

32 bit fully custom CPU architecture with a custom assembler and custom C compiler target. Intended to run an Operating System

License

Notifications You must be signed in to change notification settings

RaidTheWeb/audr32old

Repository files navigation

Audr32 (Audrey) CPU


Audr32 or Audrey, is a little 32-bit CPU I've been working on that I wish to make an operating system for sometime in the future. Audr32 supports a few essential features like:

  • Proper address mapping (See memory maps in vm/src/ISA.txt)
  • Pointers
  • Interrupts
  • Exceptions
  • I/O (Clock, Keyboard, Screen, Disk Drives, and Audio.)

Road Map

  • Proper cycle operations
  • Interrupts
  • Basic memory mapping
  • Screen
  • Keyboard
  • Proper address mapping
  • Clock (For interval based interrupts and keeping time)
  • Disk image loading
  • Disk services interrupts
  • Audio
  • BIOS Firmware
  • Move interrupts to BIOS instead of embedding directly(?)
  • Basic game (inspired by my calculator programming)
  • Operating System and before that: A bootloader

Building

Building requires SDL2 to be installed.

  • Run make to build assembler and vm (emulator).

  • Resulting executables will be in directories

    • ./vm/bin/vm
    • ./assembler/bin/assemble

Documentation

Read ISA Documentation/Spec (ISA.md) and Assembler Documentation/Spec (ASM.md) to learn more about my insanity.

About

32 bit fully custom CPU architecture with a custom assembler and custom C compiler target. Intended to run an Operating System

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages