retroforth/vm/nga-c-native-x86
crc 20d71b6840 add a:indices and a:indices/string ; rewrite a:index and a:index/string to use them ; add a:temp
FossilOrigin-Name: 64666568dec02f6900c053557be9adc73c3cdf7a8a2fa6d5730001e852fd7fe0
2023-03-20 13:58:11 +00:00
..
bin
x86
386.ld
386.s
386flat.ld
image.c
Makefile add a:indices and a:indices/string ; rewrite a:index and a:index/string to use them ; add a:temp 2023-03-20 13:58:11 +00:00
README.md
retro.c

RETRO/NATIVE

This directory contains some experiments in building a RETRO system to run directly on hardware. As a stepping stone, it also includes some builds which require a host kernel, but no standard C library.

Initial Objectives:

  • Reuse as much of the existing VM implementation (in C) as possible.
  • Don't require a full blown kernel & userland to run
  • Work with a completely standard RETRO image
  • Minimally viable system: the basic listener (REPL)
  • Work on 32-bit x86 systems

Future Goals:

  • Support for more processors

    • x86-64
    • ARM (32-bit)
    • ARM (64-bit)
    • RISC-V
    • MIPS M4K (PIC32)

Current Status:

  • Working builds w/minimal host dependencies:

    • FreeBSD (32-bit, x86)
    • FreeBSD (64-bit, x86)
    • Linux (32-bit, x86)
    • Native (32-bit, x86, multiboot)