This repository has been archived on 2025-11-10. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Aryadev Chavali 0975d92493 Introduced new instructions for comparison
Comparing signed and unsigned versions of numbers.  Same for EQ as
well.

Notice the irregular pattern of BYTE, CHAR, INT, HWORD,LONG,WORD as
OPCODE_IS_TYPE requires the subcodes to be surrounded by BYTE and
WORD.
2023-10-31 20:50:28 +00:00
2023-10-15 01:25:24 +01:00
2023-10-15 01:25:24 +01:00
2023-10-29 16:59:37 +00:00
2023-10-26 10:22:26 +01:00

Oreo's Virtual Machine (OVM)

A stack based virtual machine in C11. Deals primarily in bytes, doesn't make assertions about typing and is very simple to target.

Instructions to target

You need to link with the object files for base.c, darr.c and inst.c to be able to properly target the OVM. The basic idea is to create instructions via inst_t then using the inst(s)_write_* API to generate bytecode (and write to a file).

Then to execute the program, the virtual machine interpreter ovm.out is used.

Description
No description provided
Readme 401 KiB
Languages
C++ 93.8%
Makefile 6.2%