Virgil Dupras
0f82ebe02d
recipes/rc2014/ps2: add parity checks
...
Also, add timer to reset reception status after 100us.
2019-06-29 20:45:08 -04:00
Virgil Dupras
360446e731
recipes/rc2014/ps2: don't alter SREG in hdlPCINT
2019-06-29 15:47:02 -04:00
Virgil Dupras
e44ebb08b2
recipes/rc2014/ps2: drive a shell with ps/2 kbd!
2019-06-29 14:26:03 -04:00
Virgil Dupras
3cdb25bfda
recipes/rc2014/ps2: implement scan code buffer
2019-06-29 11:18:37 -04:00
Virgil Dupras
20a7ad231f
recipes/rc2014/pc2: new recipe (WIP)
2019-06-28 22:54:57 -04:00
Virgil Dupras
2d0f8ffac4
Update README
2019-06-19 19:10:58 -04:00
Virgil Dupras
9fb77054c0
Update docs w.r.t. its relationship with scas
2019-06-19 13:34:06 -04:00
Virgil Dupras
d6b391e39a
Update bootstrap binaries
2019-06-19 13:22:51 -04:00
Virgil Dupras
69fc2e3bf2
sdc: make sdcReadBlk return error on max retries
...
It previously returned success!
2019-06-19 13:22:07 -04:00
Virgil Dupras
7cdc288ef2
zasm: print progress indicator while assembling
2019-06-19 11:42:39 -04:00
Virgil Dupras
66fbd20e21
sdc: tidy up
2019-06-19 09:24:16 -04:00
Virgil Dupras
d9ae82c81e
sdc: enable CRC checks on blk write
2019-06-19 09:00:50 -04:00
Virgil Dupras
6df77ddef3
recipes/rc2014/zasm: we can now assemble the recipe's kernel
2019-06-18 22:07:44 -04:00
Virgil Dupras
2ac16d4750
sdc: check CRC during sdcReadBlk
...
When there's a mismatch, retry up to a certain number of times.
This makes random problem related to assembling big kernels go away! But
it also make SD card reading much slower...
2019-06-18 22:03:48 -04:00
Virgil Dupras
cac9acca67
sdc: make some space in memory for buffer CRC
2019-06-18 15:21:58 -04:00
Virgil Dupras
34db493496
sdc: implement CRC7 computation on cmds
...
For now, this achieves nothing else than wasting cycles, but this is the
first step in enabling CRC verifications (CMD59).
I think that this is where my random problems with assembling large
kernels from SDC come from: bad data that isn't detected. If that
happens when PGM loads programs in memory, then anything can happen.
`sdct`, when ran often enough, will error out or corrupt away (go
crazy)...
2019-06-18 14:45:55 -04:00
Virgil Dupras
6516ff7212
zasm: add support for "XOR n" and "SLA r"
2019-06-18 14:24:43 -04:00
Virgil Dupras
0a36ea0815
recipes/rc2014/zasm: add unpack + verification
2019-06-17 15:35:14 -04:00
Virgil Dupras
6f61aa404f
tools/cfsunpack: new tool
2019-06-17 15:21:05 -04:00
Virgil Dupras
95b658897a
recipes/rc2014/zasm: add instructions to assemble kernel
2019-06-17 14:19:49 -04:00
Virgil Dupras
3e437747c2
recipes/rc2014: add missing calls to fsInit
...
Also, tighten RAM addresses. They were unecessarily loose.
2019-06-17 13:46:33 -04:00
Virgil Dupras
914c6d5abc
Update comments
2019-06-17 13:42:53 -04:00
Virgil Dupras
00778f73e1
blockdev: fix bug recently introduced in load cmd
...
It would always load one byte less than told... This time it's right on
the money :)
2019-06-17 09:54:30 -04:00
Virgil Dupras
4b423a9dc6
tools/blkdump.py: new tool
...
Also, rename "download.py" to "memdump.py".
2019-06-17 09:02:01 -04:00
Virgil Dupras
8cf9904f33
blockdev: fix load command over-loading a byte
...
Calling `load` would always read one more byte than specified. Also,
make `0` mean `0x100`.
2019-06-17 08:19:03 -04:00
Virgil Dupras
bd2877e012
shell: make arg in peek/poke mandatory
...
Also, make `0` mean `0x100`.
2019-06-17 08:18:28 -04:00
Virgil Dupras
5e31de0bac
apps/memt: new app
2019-06-16 20:53:21 -04:00
Virgil Dupras
7c23e5a9ef
acia: protect DE during aciaInt
...
I don't know why I haven't noticed it wasn't protected. It must have
been behind many random problems I've been having...
2019-06-16 19:29:58 -04:00
Virgil Dupras
3bc165c8f6
Update bootstrap bin
2019-06-15 20:54:27 -04:00
Virgil Dupras
3e7d181d3c
zasm: properly raise error on bas ioPutC calls
2019-06-15 20:01:17 -04:00
Virgil Dupras
7ba8e85a4a
Update bootstrap binaries
2019-06-15 15:53:03 -04:00
Virgil Dupras
4327153ffd
zasm: fix include EOF detection
...
That was an interesting bug. It didn't cause a problem in emulation, but
in an RC2014 on an SD card, an include that didn't end with two newlines
would cause an infinite loop.
2019-06-15 15:50:27 -04:00
Virgil Dupras
92a04f4627
sdc: support 24-bit addressing
...
Needed if we want to compile the kernel and zasm from within a SD card.
I didn't go straight for 32-bit because it was significantly more
complex and 24-bit give us 16M. Enough to go on for a while...
2019-06-15 13:41:20 -04:00
Virgil Dupras
605c631dc0
shell: add support for backspace
...
It doesn't sound like much, but that backspace key is often useful...
2019-06-14 22:14:09 -04:00
Virgil Dupras
e7c07cdd9a
apps/at28w: fix argument byte order
2019-06-14 21:11:45 -04:00
Virgil Dupras
14cc2fb785
parse: fix option word default value
...
Previously, an optional word argument would only have its first byte set
to zero.
2019-06-14 21:10:18 -04:00
Virgil Dupras
93981e00eb
zasm: fix include line no in error reports
...
Weren't properly saved during local pass back and forth.
2019-06-14 20:26:39 -04:00
Virgil Dupras
c613f7b0ee
recipes/rc2014/eeprom: fix broken a28w args passing
...
That's why the command seemed slow! It's much faster than I thought.
2019-06-14 16:30:01 -04:00
Virgil Dupras
4ea7839488
New tool: download.py
2019-06-14 16:06:18 -04:00
Virgil Dupras
df5549ae76
tools/upload.py: support files larger than 0xff bytes
2019-06-14 15:06:14 -04:00
Virgil Dupras
d40940a1ff
doc/zasm: fix error
2019-06-14 14:24:51 -04:00
Virgil Dupras
817636242a
Add at28w app and recipe
...
This allows us to write to an AT28 EEPROM from within collapse os.
2019-06-14 14:15:30 -04:00
Virgil Dupras
145b48efb7
Add apps/sdct
...
A new app to stress test the SD card driver. Also, accompanying this
commit, changes solidifying the SD card driver so that stress tests
actually pass :)
2019-06-10 15:54:15 -04:00
Virgil Dupras
8b638f6899
Update README
2019-06-07 20:08:41 -04:00
Virgil Dupras
9bb2194fb0
recipes/rc2014/zasm: zasm can now assemble *and* write to file
2019-06-07 19:53:50 -04:00
Virgil Dupras
495d69c1cb
sdc: make writing more solid
...
By not waiting until the SD card wan't busy any more after a write, we
exposed ourselves to errors if another operation was attempted right
after it.
2019-06-07 14:59:53 -04:00
Virgil Dupras
e046081900
sdc: add second buffer
2019-06-06 22:16:57 -04:00
Virgil Dupras
db24e21276
sdc: add layer of indirection to buffer system
...
Also, lay out the plan for adding a second buffer.
2019-06-06 15:57:32 -04:00
Virgil Dupras
b742d48b75
Update bootstrap binaries
2019-06-05 19:52:56 -04:00
Virgil Dupras
3dde51ae98
Allow file-to-file compilation in the emulated shell
2019-06-05 19:51:19 -04:00