Virgil Dupras
8d46895dd3
lib/parse: decimal ending with a whitespace are now valid
Also, make empty strings be parsed as invalid by parseDecimal.
4 years ago
Virgil Dupras
7274dccbe7
Move ASCII consts to ascii.h
And made them shorter in name. The new ascii.h file allow reuse in userspace
code.
4 years ago
Virgil Dupras
7046d23cd6
Fix broken IRC link in README
4 years ago
Sarala Saraswati
0f65890074
add link to freenode irc channel and sonic.net hosted listserv ( #75 )
4 years ago
Virgil Dupras
f3992ed598
basic: begin an implementation from sratch
Let's see where it will lead us...
4 years ago
Virgil Dupras
1ae51bea3a
tests: remove instr blacklist
Because scas isn't used as a reference anymore, no need to blacklist its bugs
anymore.
4 years ago
Virgil Dupras
39f3637c60
recipes/ti84: TI-84+ base recipe is complete!
ref #41
4 years ago
Virgil Dupras
0e9173a89a
zasm: optimize handleRST a little bit
4 years ago
Virgil Dupras
4de2ce3ceb
zasm: add RST instruction
4 years ago
Virgil Dupras
518df7a05e
zasm: add poor man's indexing in instr table
There's a lot of looping through that table. At first, I wanted to add some
bisecting, but 16-bit additions and multiplications involved made the idea a
bit less appealing. I went with a very basic, hardcoded index which should
speed things quite a bit at a minimal complexity cost.
4 years ago
Virgil Dupras
cbc6fb5931
zasm: clean up jump table requirements
There was a little bit of cruft.
4 years ago
Virgil Dupras
17cc28e211
recipes/ti84: use a 3x5 font instead of a 5x7 one
This allow a lot more characters to fit on that tiny screen...
ref #41
4 years ago
Sarala Saraswati
cb1e68e3e2
add link to subreddit ( #71 )
4 years ago
Virgil Dupras
30d6fdb16b
ti/lcd: use brand new support for IX in SRL and RR
4 years ago
Virgil Dupras
2bff486cd2
Update bootstrap binaries
4 years ago
Virgil Dupras
5f6b303e75
zasm: add IX/IY support to SRL, RR and RL
4 years ago
Virgil Dupras
506c3d0a96
zasm: generalize handling of IX/IY in 0xcb upcode family
There's a couple of bit fiddling instructions that didn't have their
IX/IY variant implemented yet and without this commit, each of them
would have required a special routine. Not anymore.
4 years ago
Virgil Dupras
d9d6093287
zasm: simplify (IX/Y+d) handling
We now require less special handling.
4 years ago
Virgil Dupras
68ef686c3c
zasm: fix 16-bit include lineno counting
It was actually counted in 8-bit mode...
4 years ago
Virgil Dupras
999ab56366
zasm: add generic handling of BIT argument
This reduces the need for special handling routine and will make my
life easier in my upcoming generic tratment of IX/IY prefix in upcodes
4 years ago
Virgil Dupras
553b346b92
zasm: getUpcode -> spitUpcode
Giving I/O responsibility to spitUpcode gives us wiggle room for
upcoming refactorings.
4 years ago
Virgil Dupras
c4658591bd
ti/lcd: allow for fonts smaller than 5 pixels
That's a lot of code for such a small change, but there's a big difference
between 5 pixels and 4 pixels: 4 pixels requires compositing.
4 years ago
Virgil Dupras
6d9f96aee6
ti/lcd: add support for backspace
Also, fix visual glitch on line wrap.
4 years ago
Virgil Dupras
a4190f9984
recipes/ti84: document usage
ref #41
4 years ago
Virgil Dupras
2026113480
ti/kbd: lowercase letters by default, 2nd to upcase
4 years ago
Virgil Dupras
9c37471780
ti/kbd: improve debouncing
Previously, on real hardware (emulator behaved fine), we would routinely
get repeat keys unless pressing the button very fast. This commit solves that.
4 years ago
Virgil Dupras
418af5f626
ti/kbd: make Alpha and 2nd toggle
Previously, when being in A-Lock mode, activating Alpha wouldn't make
us go temporarily in digit mode, as is expected.
4 years ago
Virgil Dupras
67f689260f
ti/lcd: Add scrolling through z-offset
4 years ago
Virgil Dupras
6a70a0e5e6
ti/lcd: wrap rows on overflow
4 years ago
Virgil Dupras
b27a71cb88
ti/kbd: fix space character
4 years ago
Virgil Dupras
6c1b1f2b79
ti/lcd: wrap to next line when overflowing
4 years ago
Virgil Dupras
bb2e528b65
ti/lcd: clear screen on init
LCD RAM persists between reboots, makingit necessary to clear it.
ref #41
4 years ago
Virgil Dupras
c896b77143
ti/kbd: implement A-Lock
ref #41
4 years ago
Virgil Dupras
8d5c26f299
ti/kbd: add alpha support
no a-lock or lowercase yet.
ref #41
4 years ago
Virgil Dupras
ca8b315e9d
ti/kbd: widen char detection
no alpha yet.
ref #41
4 years ago
Virgil Dupras
dca6ce4e8e
ti/kbd: begin GetC implementation
For now, only digits are scanned. Lifted from my "tiseg7" example.
ref #41
4 years ago
Virgil Dupras
6a4bddc493
ti/lcd: ensure that variables are initialized
4 years ago
Virgil Dupras
a3c47f6272
Add tests for parseArgs
4 years ago
Virgil Dupras
e972dfe220
Add test documentation
4 years ago
Virgil Dupras
c57f2d6973
fonts/5x7: add lowercase letters
4 years ago
Virgil Dupras
fda9c9826e
ti/lcd: add linefeed support
There's no scrolling yet...
ref #41
4 years ago
Virgil Dupras
f4871d4d58
recipes/ti84: add upload instructions
ref #41
4 years ago
Virgil Dupras
a13a94bbc7
fix typos
4 years ago
Virgil Dupras
ca84b5dac8
recipes/ti84: first step
This was mostly lifted from my "tihello" example, but it required significant
adjustments.
This commit also introduces a font management system. A lot of fonts are
available online, but sources aren't always clear so to avoid copyright
landmines, I re-created my first 5x7 font from scratch.
As it is now, this resulting ROM gets "Collapse OS>" to be displayed on the
LCD screen. Much work still left to do.
ref #41
4 years ago
Virgil Dupras
69daf49920
doc: fix mis-wording
4 years ago
Virgil Dupras
6396eb4a9e
tricks: add endianness notes
4 years ago
Virgil Dupras
9344c4b961
doc: minor improvements
4 years ago
Virgil Dupras
3ef964e74d
acia: make GetC blocking
4 years ago
Virgil Dupras
f395297874
Improve python tools' shebang
Most OS don't have python3 in /usr/bin/python...
4 years ago
Virgil Dupras
41338a4b23
stdio: add "Accepted characters" comment section
ref #64
4 years ago