Virgil Dupras
0fd16a0bb6
ed: fix boken 'a' and 'd' cmds
5 vuotta sitten
Virgil Dupras
f43241a5a0
kbd: support shifted characters
5 vuotta sitten
Virgil Dupras
52e5f5b5bf
kbd: simplify code
5 vuotta sitten
Virgil Dupras
77d805ea0f
shell: allow cmds to be shorter than 4 chars
5 vuotta sitten
Virgil Dupras
70a42e8c4d
recipes/sms/romasm: first steps
5 vuotta sitten
Virgil Dupras
421d881fae
ed: allow inserting in empty file
5 vuotta sitten
Virgil Dupras
34f499184d
zasm: add ".bin" directive
Also, remove zasm/test7 because it changes too much all time time
(whenever zasm changes) and isn't precise enough. Too much noise,
not worth it.
5 vuotta sitten
Virgil Dupras
01031a780a
ed: Add 'w' command
5 vuotta sitten
Virgil Dupras
f6479486f2
ed: allow appending at the end of the file
5 vuotta sitten
Virgil Dupras
8d7abd9994
ed: fix broken buf insert logic
5 vuotta sitten
Virgil Dupras
1a5a1b9861
ed: make scratchpad memory only
The dual scraptchpad thing doesn't work. Things become very
complicated when it's time to write that back to the file. We
overwrite our contents and end up with garbage.
5 vuotta sitten
Virgil Dupras
942d2a952d
ed: take filename as an argument
This hard-binds ed to the filesystem (I liked the idea of working
only with blockdevs though...), but this is necessary for the
upcoming `w` command. We need some kind of way to tell the
destination to write to truncate itself.
This only has a meaning in the filesystem, but it's necessary to
let the file know that its registered file size has possibly
shrunk.
I thought of alternatives that would have allowed me to keep ed
blkdev-centered, but they were all too hackish to my own taste.
Hence, this new hard-bind on files.
5 vuotta sitten
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.
5 vuotta sitten
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.
5 vuotta sitten
Virgil Dupras
0c0db41477
recipes/sms/kbd: add schematic
5 vuotta sitten
Virgil Dupras
57e7b3ca05
recipes/sms/kbd: PS/2 keyboard adapter for the SMS!
5 vuotta sitten
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.
5 vuotta sitten
Virgil Dupras
253674ea05
Fix broken tests
Also, make tests run in a *BSD environment
5 vuotta sitten
Virgil Dupras
eefadc3917
ed: add support for 'a' and 'i'
5 vuotta sitten
Virgil Dupras
77a23cee84
ed: fix bufDelLines logic
It was mostly wrong.
5 vuotta sitten
Virgil Dupras
5669884508
ed: read initial contents in bufInit
5 vuotta sitten
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.
5 vuotta sitten
Virgil Dupras
3b0029335a
ed: add README
5 vuotta sitten
Virgil Dupras
8af1cf468c
ed: add 'd' cmd
5 vuotta sitten
Virgil Dupras
50d0dc982c
ed: check addr bounds
5 vuotta sitten
Virgil Dupras
c811d5330c
apps/ed: add support for addr ranges
5 vuotta sitten
Virgil Dupras
2d9f74c2af
apps/ed: refactoring
5 vuotta sitten
Virgil Dupras
8cf68dc7ad
apps/ed: handle +[n] and -[n] addresses
5 vuotta sitten
Virgil Dupras
3861670bcc
shell: don't parse empty cmds
5 vuotta sitten
Virgil Dupras
951dd2206d
apps/ed: add the concept of "current line"
5 vuotta sitten
Virgil Dupras
e0f2a71dfc
apps/ed: print specified line
5 vuotta sitten
Virgil Dupras
237d04fefd
zasm: update bootstrap bin
5 vuotta sitten
Virgil Dupras
6dbbfa837d
apps/ed: add (dummy) line number processing
Starting to feel interactive...
5 vuotta sitten
Virgil Dupras
3491c26132
apps/ed: start implementing I/O
5 vuotta sitten
Virgil Dupras
3d474c9121
apps/ed: first steps
5 vuotta sitten
Virgil Dupras
921a109749
stdio: little tweaks
5 vuotta sitten
Virgil Dupras
e01ee170cb
stdio: add stdioReadC
A routine to conveniently read lines from TTY. Extracted from
shell. Will be used in other places.
5 vuotta sitten
Virgil Dupras
252d71f1b8
Make tools/emul *BSD-friendly
5 vuotta sitten
Virgil Dupras
8cc5bbb110
recipes/sms: update README
5 vuotta sitten
Virgil Dupras
ade9b96d14
sms/pad: make B jump to the next selection "class"
5 vuotta sitten
Virgil Dupras
162e503291
sms/vdp: properly protect AF on PutC
5 vuotta sitten
Virgil Dupras
f41508725d
sms/pad: handle return properly
That is, send current chr selection, and then, send LF.
5 vuotta sitten
Virgil Dupras
9c87734499
sms/vdp: clear cursor before CR or BS
This avoids having "ghost" chr selection sticking around.
5 vuotta sitten
Virgil Dupras
ff7a114736
zasm: update bootstrap bin
5 vuotta sitten
Virgil Dupras
54b0602710
zasm: add support for RES and SET
5 vuotta sitten
Virgil Dupras
dd84c11905
recipes/sms: Add pad-oriented character selection
5 vuotta sitten
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.
5 vuotta sitten
Virgil Dupras
74de1c92cf
sms/pad: implement character selection mechanism
Still a bit rough around the edges, but still, works rather well.
5 vuotta sitten
Virgil Dupras
748d7347c8
shell: add "loop hook"
This hook is called during every iteration, allowing regular screen
refresh when video is involved.
5 vuotta sitten
Virgil Dupras
bd003829e8
recipes/sms: plug shell in!
Now this is getting eminently exciting!
5 vuotta sitten