Virgil Dupras
d97012ecae
Fix makefile build-from-clean-repo glitches
преди 4 години
Virgil Dupras
f09aa0603c
rc2014: separate SPI relay and SDC drivers
My intention is to reuse the SPI relay to program AVR MCUs from a
RC2014.
преди 4 години
Virgil Dupras
1ac7038863
avra: add TOC and instructions list
преди 4 години
Virgil Dupras
74e211eeda
Fix bugs in ed's U and VE's O/o
U didn't properly handle inserting on the last line and O's bounds
checks didn't make sense.
преди 4 години
Virgil Dupras
5e01e6405a
VE: add @ command
преди 4 години
Virgil Dupras
5a2612a9c5
Add HERESTART xcomp config
преди 4 години
Virgil Dupras
3068b58be5
Rename RAMSTART to SYSVARS
It's more descriptive this way. Also, I'll soon add a new HERESTART
config.
преди 4 години
Virgil Dupras
9424770caa
rc2014: add a declaration part to ACIA drivers
Driver configuration don't need their own words at runtime, we only
need to compile them as literals when compiling words.
Now that we have this "declaration blocks" pattern emerging, it
seems like a good idea to take advantage of this in drivers, both
for simplifying the xcomp unit and to make final binary slimmer.
преди 4 години
Virgil Dupras
b8800be76f
rc2014: improve SD card driver docs
преди 4 години
Virgil Dupras
27025bf141
Slight adjustments to bootstrap docs
преди 4 години
Virgil Dupras
5052efb60f
VE: supress ed's output on E and X
Most of the time, this output would be hidden by the next screen
update, except when editing the last line.
преди 4 години
Virgil Dupras
101193a78c
avra: begin writing docs
преди 4 години
Virgil Dupras
440ea43a88
z80a: make mnemonic names more uniform across assemblers
Initially, I used the same letters as those used in the z80 ref
docs, but it makes the different assemblers harder to use than they
should. Having consistent "argtype" rules across assemblers should
help.
преди 4 години
Virgil Dupras
490c57834f
emul: update README
преди 4 години
Virgil Dupras
0eb9bd090a
Move zasm.sh from emul to cvm
преди 4 години
Virgil Dupras
785b375028
tests: separate tests that need to run on z80 vs those that don't
преди 4 години
Virgil Dupras
ceabc9920f
move avra.sh from emul to cvm
The stage binary is now there.
преди 4 години
Virgil Dupras
a65f674c74
emul: build from "cvm" instead of from itself
The C VM now runs the show.
преди 4 години
Virgil Dupras
1312817117
z80: make boot binary a 2-part process
Previously, recipes that began spitting binary contents before
loading block 282 would end up with VARIABLE code in their binary,
thus breaking them. We fix this by making this loading process
2-part.
преди 4 години
Virgil Dupras
891e4f861a
z80: fix chkPS's "stable ABI" form in binaries with offset
Before lblnext is set, we need to use BJP, instead of JPnn, for the
jump to work in binaries with offsets.
преди 4 години
Virgil Dupras
b3e865d0fb
recipes: use cvm's staging binary instead of emul's
Much faster!
преди 4 години
Virgil Dupras
8a7fa77163
cvm: bootstraps itself!
преди 4 години
Virgil Dupras
fc3919863f
cvm: implement stack underflow errors
преди 4 години
Virgil Dupras
9021e5f6e0
cvm: fix does
преди 4 години
Virgil Dupras
36cb1389e6
Add a C implementation of native words
This will soon replace the libz80 based "forth" and
"stage" executables. This is much, much faster.
преди 4 години
Virgil Dupras
e8f1464ae5
Re-add Michael Schierl's emulator link to README
I has removed it when I switched to Forth because it was emulating
the assembler version, but Michael updated it, so I relink it.
The JS VM part is so cool!
преди 4 години
Virgil Dupras
20813f71b8
Remove discussion section from README
Having this information on the website is enough.
преди 4 години
Virgil Dupras
8607c94922
Update CONTRIBUTING with instructions for sending patches
преди 4 години
Virgil Dupras
fb695b67df
Replace Travis CI with Sourcehut CI
преди 4 години
Virgil Dupras
7eeec67ff5
Add extra words WIPED? and FREEBLKS?
преди 4 години
Virgil Dupras
9ab5cda397
ed: rename I to i
Shadowing core "I" is too messy. As soon as ed is loaded in memory,
nothing else that isn't "i-aware" can be loaded anymore.
I guess that's why "contexts" exist in Starting Forth, but adding
this concept just for allowing the shadowing of core words seems
overkill to me. Renaming I to i in ed seems better.
преди 4 години
Virgil Dupras
af339d8c6a
VE: properly make buffer dirty on E and X
преди 4 години
Virgil Dupras
2d9a07d215
blkunpack: don't include trailing empty lines
This was becoming heavy to manage.
преди 4 години
Virgil Dupras
49d7a7f435
z80mbc2: add BLK support
преди 4 години
Virgil Dupras
a7660fba0e
z80mbc2: new recipe
ref #82
преди 4 години
Virgil Dupras
94ed01086a
pcat: move drivers and xcomp to blkfs
преди 4 години
Virgil Dupras
1bea45acb8
8086a: add PUSHs, and POPs,
преди 4 години
Virgil Dupras
06d997f26a
pcat: write recipe README
преди 4 години
Virgil Dupras
496826cdc4
pcat: implement AT-XY
VE works! well, at this point, we can say that Collapse OS runs on
PC/AT. A little cleanup and docs writing and we're done!
преди 4 години
Virgil Dupras
f76d30b6fe
pcat: add blk write support
преди 4 години
Virgil Dupras
4939189233
emul: make blk operations much faster
It helps a bit with staging times.
преди 4 години
Virgil Dupras
515890717f
pcat: use heads count from 13H08H
On real hardware, there aren't always 2 heads...
преди 4 години
Virgil Dupras
d7f002df98
pcat: use boot drive no passed to bootloader through DL
instead of hardcoded drive 0.
преди 4 години
Virgil Dupras
dc7f36263a
pcat: BLK-enabled!
That INT 13H logic was a bit tricky to implement...
read-only for now.
преди 4 години
Virgil Dupras
8d645405b3
pcat: add RSP checks in next
преди 4 години
Virgil Dupras
f9eb7c661b
8086asm: fix CMPrr, and CMPxx, argument order
преди 4 години
Virgil Dupras
cd514e6cd6
pcat: add PSP checks in all native words
Also, fix (roll) which wasn't properly implemented.
преди 4 години
Virgil Dupras
c2c32bbed8
pcat: properly handle IMMED flag in _find
преди 4 години
Virgil Dupras
1b5333d0b4
pcat: move all find code in _find word
It isn't used by low level boot code anymore, so it can go there.
преди 4 години
Virgil Dupras
dbd283758c
Refer to BOOT and (uflw) by addr in stable ABI
Was previously referred to by name+find, which was wasteful.
преди 4 години