1
0
mirror of https://github.com/hsoft/collapseos.git synced 2024-11-23 13:18:05 +11:00
collapseos/emul
Virgil Dupras 1a6a549857 Make the SPI Relay protocol support multiple devices
Working on programming AVR chips exposes a glaring omission in my
first design of the SPI Relay: not allowing multiple devices make
this task hard. I constantly have to unplug my SD card before, plug
the AVR chip holder, then play a bit, then unplug the AVR holder,
then replug the SD card...

My prototype for a SPI relay design is built, but I haven't tested
it yet. I need to adapt the code first, which is what I do here.

When the prototype is tested, I'll update the SDC recipe with a new
schema.
2020-09-17 09:48:55 -04:00
..
hw Make the SPI Relay protocol support multiple devices 2020-09-17 09:48:55 -04:00
libz80@8a1f935daa Move "emul" folder to root 2019-12-31 13:34:24 -05:00
.gitignore emul: build from "cvm" instead of from itself 2020-06-26 22:08:45 -04:00
emul.c emul: make blk operations much faster 2020-06-22 06:29:00 -04:00
emul.h emul: add live register stats in the corner 2020-05-23 14:42:36 -04:00
forth.c emul: make blk operations much faster 2020-06-22 06:29:00 -04:00
Makefile Replace "-ansi" with "-std=c89" in emul/Makefile 2020-07-23 20:10:30 -04:00
README.md emul: update README 2020-06-27 07:53:58 -04:00
xcomp.fs Add HERESTART xcomp config 2020-06-28 19:45:28 -04:00

emul

This folder contains a couple of tools running under the libz80 emulator.

Requirements

You need ncurses to build the forth executable. In debian-based distros, it's libncurses5-dev.

Build

First, make sure that the libz80 git submodule is checked out. If not, run git submodule init && git submodule update.

After that, you can run make and it builds the forth interpreter.

Usage

The ./forth executable here works like the one in /cvm, except that it runs under an emulated z80 machine instead of running natively. Refer to /cvm/README.md for details.

Not real hardware

./forth doesn't try to emulate real hardware because the goal here is to facilitate "high level" development.

These apps run on imaginary hardware and use many cheats to simplify I/Os.

For real hardware emulation (which helps developing drivers), see the hw folder.