summaryrefslogtreecommitdiff
path: root/log.md
diff options
context:
space:
mode:
authorCamil Staps2016-11-10 12:23:04 +0100
committerCamil Staps2016-11-10 13:25:44 +0100
commit0514976af20b14cb89dd114c35164766c2ec1fff (patch)
tree12c704174eb1a7af93bf4f4ab168c9ee07c291e8 /log.md
parentLog 2016-11-08 (diff)
log
Diffstat (limited to 'log.md')
-rw-r--r--log.md17
1 files changed, 17 insertions, 0 deletions
diff --git a/log.md b/log.md
index e345c0d..b821ad6 100644
--- a/log.md
+++ b/log.md
@@ -428,3 +428,20 @@ However, `twice.icl` and `stwice.icl` still segfault.
notation, which is hard to test in my current setup.
- `stwice.icl`, `twice.icl`: broken (segfault).
- All others work fine.
+
+### 2016-11-10
+
+Updated `reverse.icl`, `revtwice.icl`, `sieve.icl` and `copyfile.icl` to
+compile (i.e. use `fromto` instead of `..` and copy library functions in).
+`sieve`, `reverse` and `copyfile` work straightaway.
+
+Got `twice.icl` and `stwice.icl` to work by fixing `thumb2ap.s` (rts
+`4f0223b`). The issue was that the PC was stored with offset 9 instead of
+seven, while a narrow `blx` instruction followed.
+
+There is an issue with `revtwice.icl`; at some point in the garbage collector
+`$r6 == 0x1d1`. This is because the address of `__cycle__in__spine` or
+`__reverse` >> 8 equals `0x1d1`. So somewhere there is an off-by-one error.
+
+I also have the feeling that there should be a `.long 0` right before
+`__reserve` in `_system.s`. Should be checked with John.