1
0
mirror of https://github.com/hsoft/collapseos.git synced 2024-12-26 06:48:06 +11:00
collapseos/apps/basic
Virgil Dupras 7cf3ed38da Extract str.asm from core.asm and make core included by userspace
Most of register fiddling routines (which is now the only thing contained
in care.asm) are used by almost all userspace apps, often in inner loops.

That makes the penalty of using jump tables for those a bit too high.
Moreover, it burdens jump tables needlessly.

Because this unit is very small (now that string routines are out), it makes
sense to always include it in binaries.
2019-11-14 10:14:15 -05:00
..
glue.asm Extract str.asm from core.asm and make core included by userspace 2019-11-14 10:14:15 -05:00
main.asm basic: begin an implementation from sratch 2019-11-13 15:28:16 -05:00
README.md basic: begin an implementation from sratch 2019-11-13 15:28:16 -05:00

basic

Work in progress, not finished.

This is a BASIC interpreter which is being written from scratch for Collapse OS. There are many existing z80 implementations around, some of them open source and most of them good and efficient, but because a lot of that code overlaps with code that has already been written for zasm, I believe that it's better to reuse those bits of code.

Integrating an existing BASIC to Collapse OS seemed a bigger challenge than writing from scratch, so here I am, writing from scratch again...

The biggest challenge here is to extract code from zasm, adapt it to fit BASIC, not break anything, and have the wisdom to see when copy/pasting is a better idea.