Simple virtual machine of a "one instruction set" cpu.
License
Creou/OISCVM
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Simple virtual machine of a "one instruction set" cpu written in C#. Based on the single instruction SUBLEQ (Subtract and branch if less than or equal to 0). The virtual machine loads a program into memory and executes it. Includes a memory mapped console output device for displaying results. Project includes an assembler for building binary files from assembly source. Assembler has support for comment lines, source and binary mode addressing, labeled addressing, labeled memory and auto branching to next instruction. === All code in this project is covered under the terms of the GNU General Public License a copy of which is available in the same directory under the file name LICENSE === This program is Copyright 2010 Simon P Stevens == TODO: Input device: Somehow have keyboard input written to memory locations. Interupts: Hardware - User registerable interrupts to run specific code on hardware events (such as keyboard events?) Also, registerable by hardware (E.g. Console device could use a memory address to trigger a display update. This could be an interruppted address) Software - Triggered by changes to specific memory addresses. User can register code to be run when address is set to a flag value. Disk device: A mapped memory location that can be written to to send commands to a disk controller. Then have the disk controller load the requested memory from disk into main memory. The disk controller could either be for emulated binary disks, or for host disk access.
About
Simple virtual machine of a "one instruction set" cpu.
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published