Virgil Dupras
dcaa515929
pcat: implement does
2020-06-21 10:40:09 -04:00
Virgil Dupras
99c05fff3c
pcat: it works!
...
Forth intepreter now works! There's still DOES> and overflow checks
to implement, but otherwise, we have it!
2020-06-20 20:06:42 -04:00
Virgil Dupras
60ecab314e
pcat: we have PROMPT!
...
Not working, but we do get that sweet "CollapseOS".
2020-06-20 16:58:48 -04:00
Virgil Dupras
1536434666
pcat: implement cell execution and shaping things up
2020-06-20 13:50:01 -04:00
Virgil Dupras
9d2afd200c
pcat: implement (s)
2020-06-19 20:09:51 -04:00
Virgil Dupras
8cc8df0446
pcat: add native _find
2020-06-19 07:56:54 -04:00
Virgil Dupras
5ebdf84e78
pcat: more native words
...
almost there!
2020-06-19 07:26:33 -04:00
Virgil Dupras
3b21ba635d
pcat: add PICK and (roll)
2020-06-18 21:21:46 -04:00
Virgil Dupras
6b07296d30
pcat: more native words
2020-06-18 19:06:53 -04:00
Virgil Dupras
bd508daad9
pcat: begin organizing native words properly
...
This port is taking shape!
2020-06-18 15:28:30 -04:00
Virgil Dupras
6bc1738bfd
pcat: implement (loop)
...
8086 asm is a lot terser than z80... Those indirect memory operations
are very handy.
2020-06-18 15:01:04 -04:00
Virgil Dupras
bc8144b4be
pcat: implement (br) and (br?)
2020-06-16 22:10:32 -04:00
Virgil Dupras
a92864a595
pcat: implement RSP mechanism in execution model
2020-06-16 20:41:53 -04:00
Virgil Dupras
d8d2e05eb2
pcat: make find compare strings
...
find is the biggest chunk of logic of the boot code. The 8086 version
is significantly terser than the z80 one. REP/CMPS helps...
2020-06-15 06:23:19 -04:00
Virgil Dupras
8c452f5add
pcat: begin implementing find
...
Not comparing strings yet. Without asm tooling support, it's a big
chunk to swallow at once. It's progressing well!
2020-06-14 21:52:58 -04:00
Virgil Dupras
a72322df31
pcat: begin structuring around words
2020-06-14 14:15:44 -04:00
Virgil Dupras
2b7abf802f
pcat: begin porting forth
...
I'm not sure yet where I'm going, but I'm not going to build the
8086 port from the ground up like I did with the z80, that is,
making is sustain itself and eventually merge its forth code with
core words. That would be too much work which would then be thrown
out (all those words I'll initially have to implement in asm which
are already implemented in Forth).
What I *think* I can do is build a mirror version of z80 boot code
and cross-compile it from the z80. This means it has to follow z80
stable ABI.
Nope, I'm not sure where I'm going...
2020-06-13 21:37:54 -04:00
Virgil Dupras
07e50313c7
pcat: separate MBR code and OS code
...
MBR code now strictly loads OS code into memory and jumps into it.
Now, I've got to consolidate my assembler code, modrm logic is
messed up.
2020-06-13 15:35:16 -04:00
Virgil Dupras
177750c928
recipes/pcat: first steps into 8086!
2020-06-12 14:03:31 -04:00
Virgil Dupras
394f962510
recipe: fix makefiles for fresh clone contexts
...
All recipe makesfiles would previously assume a built emul/.
Fixes #113
2020-06-11 12:23:59 -04:00
Virgil Dupras
b2b556911f
trs80: implement AT-XY
...
Also, I've run VE on the TRS-80 for the first time! It doesn't work
well though. Screen is mostly blank all the time.
I removed instructions from the recipe which became obsolete when
Collapse OS became 100% bootstrapped. Also, I've updated instructions
to change the NL override which is necessary for blkup to work.
2020-06-07 11:14:57 -04:00
Virgil Dupras
a2136e604d
rc2014/eeprom: adjust instructions
...
Now that adev is directly in core, things are easier.
2020-05-22 20:35:01 -04:00
Virgil Dupras
986249cf5e
rc2014: fix misinformation in README
2020-05-22 14:19:02 -04:00
Virgil Dupras
b5683f447b
sms/kbd: update instructions for Forth Collapse OS
...
The keyboard is a bit glitchy, but these are the same glitch as those
that were already present in Z80 Collapse OS. They still need fixing...
2020-05-21 13:57:34 -04:00
Virgil Dupras
b06cf09754
rc2014/ps2: update recipe to Forth's Collapse OS
2020-05-21 09:09:13 -04:00
Virgil Dupras
aad6b5c2e5
avra: add global constants
2020-05-19 10:48:48 -04:00
Virgil Dupras
ac309bbd9e
avra: rename AGAIN, to AGAIN?,
...
AGAIN, becomes a shortcut for "' RJMP AGAIN?,"
2020-05-19 10:36:07 -04:00
Virgil Dupras
7a41c5c6f9
avra: add IF, .. THEN,
...
I decided to keep SKIP, .. TO, (renamed from AT,) around and limit
IF, .. THEN, to the simple BRNE case.
2020-05-19 10:26:57 -04:00
Virgil Dupras
8bbd29d37d
avra: add SKIP, .. AT,
...
Will change to IF, .. THEN, but I need a way to easily reverse a
BR op. But from this commit, the translation of sms/kbd/ps2ctl.asm
is complete! perfect binary match!
2020-05-19 10:19:37 -04:00
Virgil Dupras
8ca85abfbd
avra: add BEGIN, .. AGAIN,
2020-05-19 07:39:34 -04:00
Virgil Dupras
7b7e60ed4a
avra: implement LD/ST
...
Still making great progress on sms/kbd/ps2ctl. Still matching ref
binary.
2020-05-18 22:28:58 -04:00
Virgil Dupras
6a55a04f22
sms/kbd: still advancing on ps2ctl
...
next step: implement ST.
2020-05-18 20:55:10 -04:00
Virgil Dupras
e0bc14e55c
avra: implement BR*
...
Getting good! still advancing on ps2ctl in sms/kbd and still
matching reference binary.
2020-05-18 20:34:06 -04:00
Virgil Dupras
cdddfdefae
avra: add a layer of indirection to FLBL!
...
This will make it easier to fit BR* in there.
2020-05-18 19:45:30 -04:00
Virgil Dupras
63dec372ce
sms/kbd: continue advancing on ps2ctl rewrite
...
Still binary matching. Next step is branching support.
2020-05-17 21:10:02 -04:00
Virgil Dupras
177e70580f
sms/kbd: begin rewriting ps2ctl to Forth
...
So far, the resulting binary matches.
2020-05-17 14:24:27 -04:00
Virgil Dupras
bd38d80f9c
Move Cross-compiled core from B390 to B350
...
and renamed it "Core words". Also, reworded the presentation.
2020-05-15 22:44:49 -04:00
Virgil Dupras
f2817870aa
sms: working on real hardware!
2020-05-15 21:53:26 -04:00
Virgil Dupras
ebc70be8e8
ti84: use dd instead of truncate
...
More portable
2020-05-15 17:25:58 -04:00
Virgil Dupras
f9a8e6f180
sms: Pad WIP
2020-05-15 15:41:06 -04:00
Virgil Dupras
1597f1e131
Don't generalize XYPOS just yet
...
It was ill-advised.
2020-05-15 14:09:31 -04:00
Virgil Dupras
175b4bc497
sms: CollapseOS prompt!
2020-05-15 12:46:25 -04:00
Virgil Dupras
ca60685067
Streamline initialization process
...
Instead of letting each configuration taking care of RDLN$ and
"CollapseOS" prompt, move this to BOOT to simplify xcomp units.
Initialization source code is now only for driver initialization.
2020-05-15 11:34:35 -04:00
Virgil Dupras
43eabf566b
sms: WIP !
2020-05-14 22:15:31 -04:00
Virgil Dupras
87b51a6261
By default, allocate about 0x100 bytes for PSP+RSP
...
During "make updatebootstrap", we use less than 0x20 bytes on the
PSP side and less than 0x40 bytes on the RSP one. 0x100 bytes ought
to be enough for anybody.
2020-05-14 18:41:09 -04:00
Virgil Dupras
b606dbf9af
rc2014: move xcomp unit's contents to blkfs
2020-05-14 12:29:34 -04:00
Virgil Dupras
a8e8204eba
trs80: adapt recipe to single stage xcomp
2020-05-14 12:08:17 -04:00
Virgil Dupras
303b34b483
ti84: adapt recipe to single stage xcomp
2020-05-14 11:36:10 -04:00
Virgil Dupras
0703da928e
rc2014: adapt recipe to single stage xcomp
...
It's now much easier...
2020-05-14 11:32:51 -04:00
Virgil Dupras
5446afd87d
emul: rename stage2 to stage
2020-05-14 10:55:39 -04:00