Commit Graph

449 Commits

Author SHA1 Message Date
Virgil Dupras
fe15bafeca zasm: fix bug with registry selection
During expression parsing, if a local label was parsed, it would
select the local registry and keep that selection, making
subsequent global labels register in the wrong place.
2019-07-20 18:07:52 -04:00
Virgil Dupras
a7afbe091e tools/tests: remove scas requirement
I'm about to break compatibility with scas. Before I do that, I
need to adjusts tests. Instead of running scas to compare results,
we commit expected result as binaries directly in the repo.
2019-07-20 17:13:57 -04:00
Virgil Dupras
0c0db41477 recipes/sms/kbd: add schematic 2019-07-20 14:51:34 -04:00
Virgil Dupras
57e7b3ca05 recipes/sms/kbd: PS/2 keyboard adapter for the SMS! 2019-07-20 12:42:55 -04:00
Virgil Dupras
23354eba94 stdio: fix broken ReadC logic
Looping inside ReadC broke the shell's hook logic. We have to
return immediately when nothing is typed.
2019-07-19 14:44:47 -04:00
Virgil Dupras
253674ea05 Fix broken tests
Also, make tests run in a *BSD environment
2019-07-19 14:24:35 -04:00
Virgil Dupras
eefadc3917 ed: add support for 'a' and 'i' 2019-07-14 17:35:21 -04:00
Virgil Dupras
77a23cee84 ed: fix bufDelLines logic
It was mostly wrong.
2019-07-14 16:18:33 -04:00
Virgil Dupras
5669884508 ed: read initial contents in bufInit 2019-07-14 12:19:37 -04:00
Virgil Dupras
797cbdcc95 blockdev: protect IX in routines
Sure, it's a bit slower, but it prevents a lot of hard to debug
problems. I don't have to want to remember "don't use IX if you
have any blk* calls". Let's optimize I/O later.
2019-07-14 12:17:13 -04:00
Virgil Dupras
3b0029335a ed: add README 2019-07-14 11:31:14 -04:00
Virgil Dupras
8af1cf468c ed: add 'd' cmd 2019-07-14 10:32:28 -04:00
Virgil Dupras
50d0dc982c ed: check addr bounds 2019-07-14 09:04:51 -04:00
Virgil Dupras
c811d5330c apps/ed: add support for addr ranges 2019-07-13 22:09:17 -04:00
Virgil Dupras
2d9f74c2af apps/ed: refactoring 2019-07-13 21:08:16 -04:00
Virgil Dupras
8cf68dc7ad apps/ed: handle +[n] and -[n] addresses 2019-07-13 16:30:30 -04:00
Virgil Dupras
3861670bcc shell: don't parse empty cmds 2019-07-13 15:34:43 -04:00
Virgil Dupras
951dd2206d apps/ed: add the concept of "current line" 2019-07-13 15:28:44 -04:00
Virgil Dupras
e0f2a71dfc apps/ed: print specified line 2019-07-13 14:01:20 -04:00
Virgil Dupras
237d04fefd zasm: update bootstrap bin 2019-07-13 11:54:47 -04:00
Virgil Dupras
6dbbfa837d apps/ed: add (dummy) line number processing
Starting to feel interactive...
2019-07-13 11:53:30 -04:00
Virgil Dupras
3491c26132 apps/ed: start implementing I/O 2019-07-13 11:29:06 -04:00
Virgil Dupras
3d474c9121 apps/ed: first steps 2019-07-13 09:57:37 -04:00
Virgil Dupras
921a109749 stdio: little tweaks 2019-07-13 09:28:35 -04:00
Virgil Dupras
e01ee170cb stdio: add stdioReadC
A routine to conveniently read lines from TTY. Extracted from
shell. Will be used in other places.
2019-07-13 09:19:01 -04:00
Virgil Dupras
252d71f1b8 Make tools/emul *BSD-friendly 2019-07-11 21:21:54 -04:00
Virgil Dupras
8cc5bbb110 recipes/sms: update README 2019-07-02 16:31:58 -04:00
Virgil Dupras
ade9b96d14 sms/pad: make B jump to the next selection "class" 2019-07-02 16:18:00 -04:00
Virgil Dupras
162e503291 sms/vdp: properly protect AF on PutC 2019-07-02 15:54:07 -04:00
Virgil Dupras
f41508725d sms/pad: handle return properly
That is, send current chr selection, and then, send LF.
2019-07-02 15:23:28 -04:00
Virgil Dupras
9c87734499 sms/vdp: clear cursor before CR or BS
This avoids having "ghost" chr selection sticking around.
2019-07-02 15:22:14 -04:00
Virgil Dupras
ff7a114736 zasm: update bootstrap bin 2019-07-02 14:12:49 -04:00
Virgil Dupras
54b0602710 zasm: add support for RES and SET 2019-07-02 14:12:29 -04:00
Virgil Dupras
dd84c11905 recipes/sms: Add pad-oriented character selection 2019-07-02 13:15:24 -04:00
Virgil Dupras
2679172edf sms/vdp: implement "chrsel" hook
This allows for outputting a character selection before it's given
through GetC. That allows a pad-oriented character selection scheme.
2019-07-02 13:14:02 -04:00
Virgil Dupras
74de1c92cf sms/pad: implement character selection mechanism
Still a bit rough around the edges, but still, works rather well.
2019-07-02 13:12:52 -04:00
Virgil Dupras
748d7347c8 shell: add "loop hook"
This hook is called during every iteration, allowing regular screen
refresh when video is involved.
2019-07-02 13:11:37 -04:00
Virgil Dupras
bd003829e8 recipes/sms: plug shell in!
Now this is getting eminently exciting!
2019-07-02 11:14:30 -04:00
Virgil Dupras
404dbd0ddd sms/vdp: handle CR and LF 2019-07-02 11:14:16 -04:00
Virgil Dupras
767db17252 recipes/sms: hitting a button now adds a char on the screen 2019-07-02 10:49:30 -04:00
Virgil Dupras
2da4a3a87b sms/vdp: new module allowing PutC to spit chars in the VDP 2019-07-02 10:48:38 -04:00
Virgil Dupras
c5a0a6ff54 sms/pad: easily detect change in button config 2019-07-02 10:47:59 -04:00
Virgil Dupras
9eb80d5eac sms/pad: new module to manage Megadrive controller in SMS 2019-07-02 09:02:19 -04:00
Virgil Dupras
ca5bc07a75 recipes/sms: show all letters in font when Start is pressed 2019-07-01 16:15:46 -04:00
Virgil Dupras
ba2804a255 recipes/sms: add controller support 2019-07-01 15:46:10 -04:00
Virgil Dupras
95fa473641 recipes/sms: New section for Sega Master System 2019-07-01 11:05:25 -04:00
Virgil Dupras
63486126ef zasm: update bootstrap bin 2019-07-01 10:56:38 -04:00
Virgil Dupras
3a8b5108f7 zasm: make .fill support word arguments 2019-07-01 10:56:03 -04:00
Virgil Dupras
2efe887434 recipes/rc2014/ps2: add schema 2019-06-30 17:37:18 -04:00
Virgil Dupras
e3eea8839b recipes/rc2014/ps2: works rather well now! 2019-06-30 14:16:00 -04:00