Commit Graph

108 Commits

Author SHA1 Message Date
Virgil Dupras b2d71cb1ee ti84: add Z offset mechanism 2020-05-09 08:13:49 -04:00
Virgil Dupras afc2327770 Split icore in 2 parts
The goal is to insert device drivers in between.
2020-05-08 21:47:03 -04:00
Virgil Dupras baf725aa38 Move a bunch of words from core to inner core
That makes it easier to write drivers that can be xcompiled.
2020-05-08 20:55:50 -04:00
Virgil Dupras ffdc58739a ti84: HelloWorld!
In emulator of course...
2020-05-08 11:36:50 -04:00
Virgil Dupras b90efb0f7f ti84: first glyph on screen!
On the emulator of course...
2020-05-08 09:07:44 -04:00
Virgil Dupras 58ec54fc97 ti84: wip
Gave more priority to CPU in the emulator because initialization would
otherwise be horrendously slow.
2020-05-08 07:56:34 -04:00
Virgil Dupras 114e753b64 ti84: WIP 2020-05-08 06:50:34 -04:00
Virgil Dupras 24e588019b Add words RSHIFT and LSHIFT 2020-05-07 15:41:43 -04:00
Virgil Dupras 4e98ef11bd ti-84+: wip
I need RSHIFT and LSHIFT first...
2020-05-07 15:08:42 -04:00
Virgil Dupras f2f3474698 Begin copying fonts (and compiler) to blk 2020-05-07 12:09:52 -04:00
Virgil Dupras be66d7b4a2 editor: implement E 2020-05-07 08:44:17 -04:00
Virgil Dupras 204a9c69f8 editor: fix PSP leak in F 2020-05-07 08:38:57 -04:00
Virgil Dupras feb0411530 editor: simplify I with the use of MOVE-
Also, delay the shadowing of DO..LOOP's I for as long as possible.
2020-05-06 21:10:27 -04:00
Virgil Dupras eaeb138a0c Add words C@- C!- and MOVE- 2020-05-06 20:37:08 -04:00
Virgil Dupras 690d9e6313 editor: improve I
Make it print edited line and also have it adjust cursor pos.
2020-05-06 17:41:49 -04:00
Virgil Dupras 58ece9f9a1 editor: implement I command
Also, made LIST properly handle full 64-chars lines not ending with
a null or CR. Previously, such a line would be accompanied by its
following line, duplicating that line's output.
2020-05-06 12:19:36 -04:00
Virgil Dupras f54b1dc504 Add 2>R and 2R>
This allows us to make DO..LOOP more compact.
2020-05-06 09:55:05 -04:00
Virgil Dupras b89fa2981f recipes/trs80: move RECV program to blkfs 2020-05-05 22:21:27 -04:00
Virgil Dupras 60b4bbf28a Fix DUMP's broken "round up to next 8" logic
This was caused by the removal of signed-ness a long while ago.
2020-05-05 22:09:11 -04:00
Virgil Dupras 9df053b76c z80a: add CPn, 2020-05-05 21:49:26 -04:00
Virgil Dupras fa79e3d8a6 Make (print) stop on CR
Lines edited with the Block editor end with 0xd and (print) spits
spurious CR when printing those lines.

Also, properly initialize ACC in BROWSE.
2020-05-05 15:49:50 -04:00
Virgil Dupras c681cb639d Add words >< and =><= 2020-05-04 22:30:29 -04:00
Virgil Dupras c494917452 blk: Add LOAD+ and LOADR+
And use them in all places they make sense.
2020-05-04 21:43:48 -04:00
Virgil Dupras 3c2e0dd9df Add usage guide section about disk blocks 2020-05-04 20:37:40 -04:00
Virgil Dupras 24e9fa0c30 Add word NL 2020-05-04 08:10:18 -04:00
Virgil Dupras a3c3a2f44a Remove unused DELW 2020-05-03 20:36:35 -04:00
Virgil Dupras 8ef197d248 Make linker more compact
There was a weird empty block in the middle of the program.
2020-05-03 20:33:36 -04:00
Virgil Dupras a96b5f1dec Restore DOES> section in usage guide
I removed it because it was redundant with Starting Forth, but
I directly reference it in the dictionary, so well...
2020-05-03 20:24:54 -04:00
Virgil Dupras e375562a9f Revamp dictionary's glossary 2020-05-03 20:18:34 -04:00
Virgil Dupras df242bb9eb Revamp usage guide a bit 2020-05-03 19:24:41 -04:00
Virgil Dupras f023f9bcb4 Pack core words blks a bit tighter
With all this recent movements, we had a bit of a fragmentation
issue.
2020-05-02 21:47:32 -04:00
Virgil Dupras 3373f53997 tidy up blk and fix tests 2020-05-02 21:25:35 -04:00
Virgil Dupras 3d908cef3a Move all parsing words to Inner core
This allows us to get rid of the (parse*) indirection.
2020-05-02 21:21:47 -04:00
Virgil Dupras 8009270e79 Optimize parsing words 2020-05-02 20:32:20 -04:00
Virgil Dupras 931c812394 Remove cmp
Not worth the complexity and space.
2020-05-02 19:57:56 -04:00
Virgil Dupras 0b3a328e65 Add a layer of indirection for KEY 2020-05-02 11:17:28 -04:00
Virgil Dupras 446a58006d Remove one of the 2 indirection layers for EMIT
2 was overkill
2020-05-02 10:26:34 -04:00
Virgil Dupras 443ed754e9 trs80: add missing blk 2020-05-02 08:27:24 -04:00
Virgil Dupras 3a27479f2b fix stupid typo
I don't believe this, one hour of my life I'll never get back.
2020-05-02 08:06:37 -04:00
Virgil Dupras b8d8007a3f trs80: add *CL< and *CL> 2020-05-02 06:20:03 -04:00
Virgil Dupras 2a578b3352 editor: implement F 2020-05-01 21:52:38 -04:00
Virgil Dupras ecca70c7f3 Add layer of indirection to EMIT
This would allow things like temporary giving control to the *CL
line on the TRS-80. For example... A very far fetched example. Not
at all the only *raison d'etre* of the layer...
2020-05-01 20:05:15 -04:00
Virgil Dupras 5bf3baff05 editor: add edit buffer
Also, add word "C!+" and fix PSP leak in FILL.
2020-05-01 13:17:40 -04:00
Virgil Dupras 792c781614 editor: add cursor pos tracking and display 2020-04-30 20:42:07 -04:00
Virgil Dupras 07f807edee recipes/trs80: making progress on floppy drivers 2020-04-30 16:10:35 -04:00
Virgil Dupras 65f359bda4 recipes/trs80: can write compiled version to floppy 2020-04-30 11:13:25 -04:00
Virgil Dupras f38de1c151 Introduce the notion of Extra words 2020-04-29 21:52:18 -04:00
Virgil Dupras 0044011f06 Move AT28 and TRS80 drivers to higher blocknos
I'm reserving the 100-200 range for non-bootstrapping needs.
2020-04-29 21:04:10 -04:00
Virgil Dupras 0cf26547ff Add words FLUSH and COPY 2020-04-29 20:21:18 -04:00
Virgil Dupras 1b2c4b519e icore: add BIN+
This allows us to write LATEST at proper offset in emul/stage1.fs in
cases where we set a nonzero BIN(.
2020-04-29 11:42:09 -04:00