retroforth/vm/nga-c-native-x86
crc e29fc3f0bc build with -DENABLE_SOCKETS to enable socket interface
FossilOrigin-Name: c189e61c1b84c8a6cd0089e0b9725fd70c798736a81cd20d38162193d0d05015
2021-03-21 01:08:22 +00:00
..
bin finish reorg of main sources 2019-11-22 18:30:02 +00:00
x86 fix many uses of deprecated names (thanks john_cephalopoda) [first of a few patched related to this] 2020-09-30 23:02:23 +00:00
386.ld finish reorg of main sources 2019-11-22 18:30:02 +00:00
386.s finish reorg of main sources 2019-11-22 18:30:02 +00:00
386flat.ld finish reorg of main sources 2019-11-22 18:30:02 +00:00
image.c build with -DENABLE_SOCKETS to enable socket interface 2021-03-21 01:08:22 +00:00
Makefile retro/native: work on the ata driver (user configurable read/write delays, name the I/O ports used, start refactoring) 2020-02-29 15:50:19 +00:00
README.md finish reorg of main sources 2019-11-22 18:30:02 +00:00
retro.c fix errors when building vm/nga-c-native-x86 after the source tree reorganization 2019-12-18 13:02:53 +00:00

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)