Skip to content

Releases: codeeleven0/lunarvm

Release v0.1a-31

Choose a tag to compare

@github-actions github-actions released this 14 Apr 20:36
3027f61
Update Makefile - disabling SSE caused an error.

v0.1a-1713126962

Choose a tag to compare

@github-actions github-actions released this 14 Apr 20:36
3027f61

LunarVM

This project is licenced under GPLv3

A simple emulated CPU.

LunarVM uses an assembly-like syntax.

If you want to build a compiler you need to follow these simple steps:

  • Create code (Make sure it's compilable with the -static flag, staticx is not allowed.)
  • Test code (I don't want to hassle with segfaults.)
  • Open an issue with the code
  • Wait... :)

If you want to extend the assembler you need to follow these simple steps:

  • Create code
  • Test code
  • Make sure it also works with LunarVM Assembly.
  • Run through clang-format (main.c -> fmain.c, see the difference.)
  • Open an issue with the code
  • Wait... :)

Arguments

FILENAME Must be argv[1]

-v Be Verbose - must be argv[2]

Instruction Set

set r1 val

Sets r1 to val.

put r1

Prints r1.

lpc r1

Sets r1 to current PC.

add r1 val

r1 = r1 + val

sub r1 val

r1 = r1 - val

mul r1 val

r1 = r1 * val

div r1 val

r1 = r1 / val

dump r1

Dumps r1.

fdump

Dump state.

mw sec r1

mem[sec] = read(r1).

mr sec r1

r1 = mem[sec].

copy r1 r2

r1 = r2.

addr r1 r2

r1 + r2 = datareg.

subr r1 r2

r1 - r2 = datareg.

divr r1 r2

r1 / r2 = datareg.

mulr r1 r2

r1 * r2 = datareg.

inp r1

r1 = userinput (needs to press enter).

Lunambly? What's that?

C library to produce LunarVM's .S files.

Release v0.1a-30

Choose a tag to compare

@github-actions github-actions released this 29 Mar 20:35
9c3cb0f
Update c-cpp.yml

Release v0.1a-29

Choose a tag to compare

@github-actions github-actions released this 29 Mar 20:31
Update! (automated commit script)

Release v0.1a-28

Choose a tag to compare

@github-actions github-actions released this 29 Mar 20:29
Update! (automated commit script)

v0.1a-1711744503

Choose a tag to compare

@github-actions github-actions released this 29 Mar 20:35
9c3cb0f

LunarVM

This project is licenced under GPLv3

A simple emulated CPU.

LunarVM uses an assembly-like syntax.

If you want to build a compiler you need to follow these simple steps:

  • Create code (Make sure it's compilable with the -static flag, staticx is not allowed.)
  • Test code (I don't want to hassle with segfaults.)
  • Open an issue with the code
  • Wait... :)

If you want to extend the assembler you need to follow these simple steps:

  • Create code
  • Test code
  • Make sure it also works with LunarVM Assembly.
  • Run through clang-format (main.c -> fmain.c, see the difference.)
  • Open an issue with the code
  • Wait... :)

Arguments

FILENAME Must be argv[1]

-v Be Verbose - must be argv[2]

Instruction Set

set r1 val

Sets r1 to val.

put r1

Prints r1.

lpc r1

Sets r1 to current PC.

add r1 val

r1 = r1 + val

sub r1 val

r1 = r1 - val

mul r1 val

r1 = r1 * val

div r1 val

r1 = r1 / val

dump r1

Dumps r1.

fdump

Dump state.

mw sec r1

mem[sec] = read(r1).

mr sec r1

r1 = mem[sec].

copy r1 r2

r1 = r2.

addr r1 r2

r1 + r2 = datareg.

subr r1 r2

r1 - r2 = datareg.

divr r1 r2

r1 / r2 = datareg.

mulr r1 r2

r1 * r2 = datareg.

inp r1

r1 = userinput (needs to press enter).

Lunambly? What's that?

C library to produce LunarVM's .S files.

v0.1a-1711744236

Choose a tag to compare

@github-actions github-actions released this 29 Mar 20:30

LunarVM

This project is licenced under GPLv3

A simple emulated CPU.

LunarVM uses an assembly-like syntax.

If you want to build a compiler you need to follow these simple steps:

  • Create code (Make sure it's compilable with the -static flag, staticx is not allowed.)
  • Test code (I don't want to hassle with segfaults.)
  • Open an issue with the code
  • Wait... :)

If you want to extend the assembler you need to follow these simple steps:

  • Create code
  • Test code
  • Make sure it also works with LunarVM Assembly.
  • Run through clang-format (main.c -> fmain.c, see the difference.)
  • Open an issue with the code
  • Wait... :)

Arguments

FILENAME Must be argv[1]

-v Be Verbose - must be argv[2]

Instruction Set

set r1 val

Sets r1 to val.

put r1

Prints r1.

lpc r1

Sets r1 to current PC.

add r1 val

r1 = r1 + val

sub r1 val

r1 = r1 - val

mul r1 val

r1 = r1 * val

div r1 val

r1 = r1 / val

dump r1

Dumps r1.

fdump

Dump state.

mw sec r1

mem[sec] = read(r1).

mr sec r1

r1 = mem[sec].

copy r1 r2

r1 = r2.

addr r1 r2

r1 + r2 = datareg.

subr r1 r2

r1 - r2 = datareg.

divr r1 r2

r1 / r2 = datareg.

mulr r1 r2

r1 * r2 = datareg.

inp r1

r1 = userinput (needs to press enter).

Lunambly? What's that?

C library to produce LunarVM's .S files.

v0.1a-1711744155

Choose a tag to compare

@github-actions github-actions released this 29 Mar 20:29

LunarVM

This project is licenced under GPLv3

A simple emulated CPU.

LunarVM uses an assembly-like syntax.

If you want to build a compiler you need to follow these simple steps:

  • Create code (Make sure it's compilable with the -static flag, staticx is not allowed.)
  • Test code (I don't want to hassle with segfaults.)
  • Open an issue with the code
  • Wait... :)

If you want to extend the assembler you need to follow these simple steps:

  • Create code
  • Test code
  • Make sure it also works with LunarVM Assembly.
  • Run through clang-format (main.c -> fmain.c, see the difference.)
  • Open an issue with the code
  • Wait... :)

Arguments

FILENAME Must be argv[1]

-v Be Verbose - must be argv[2]

Instruction Set

set r1 val

Sets r1 to val.

put r1

Prints r1.

lpc r1

Sets r1 to current PC.

add r1 val

r1 = r1 + val

sub r1 val

r1 = r1 - val

mul r1 val

r1 = r1 * val

div r1 val

r1 = r1 / val

dump r1

Dumps r1.

fdump

Dump state.

mw sec r1

mem[sec] = read(r1).

mr sec r1

r1 = mem[sec].

copy r1 r2

r1 = r2.

addr r1 r2

r1 + r2 = datareg.

subr r1 r2

r1 - r2 = datareg.

divr r1 r2

r1 / r2 = datareg.

mulr r1 r2

r1 * r2 = datareg.

inp r1

r1 = userinput (needs to press enter).

Lunambly? What's that?

C library to produce LunarVM's .S files.

v0.1a-1711399836

Choose a tag to compare

@github-actions github-actions released this 25 Mar 20:50

LunarVM

A simple emulated CPU.

LunarVM uses an assembly-like syntax.

If you want to build a compiler you need to follow these simple steps:

  • Create code (Make sure it's compilable with the -static flag, staticx is not allowed.)
  • Test code (I don't want to hassle with segfaults.)
  • Run through clang-format (main.c -> fmain.c, see the difference.)
  • Open an issue with the code
  • Wait... :)

If you want to extend the assembler you need to follow these simple steps:

  • Create code
  • Test code
  • Make sure it also works with LunarVM Assembly.
  • Run through clang-format (main.c -> fmain.c, see the difference.)
  • Open an issue with the code
  • Wait... :)

If you want to create a release for Windows you need to follow these simple steps:

  • Clone repo
  • Enable GitHub Actions in your repo
  • Create the build'n'release Action (All build numbers must be timestamped!)
  • Open an issue with the Action .yml file
  • Wait... :)

Arguments

FILENAME Must be argv[1]

-v Be Verbose - must be argv[2]

Instruction Set

set r1 val

Sets r1 to val.

put r1

Prints r1.

lpc r1

Sets r1 to current PC.

add r1 val

r1 = r1 + val

sub r1 val

r1 = r1 - val

mul r1 val

r1 = r1 * val

div r1 val

r1 = r1 / val

hlt

Halts.