aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Tuomi <jan@jantuomi.fi>2025-02-28 11:08:57 +0200
committerJan Tuomi <jan@jantuomi.fi>2025-02-28 11:08:57 +0200
commita647a81564eb0ef9a57dfd47f44ed0336f48b9b4 (patch)
tree0d07f479e81c353dfd3900998f05c91a705698fc
parente18c789aebccecd7510a53110276a47e09ca0623 (diff)
Fix twos complement cast
-rw-r--r--atk16_schasm/lib.scm8
1 files changed, 3 insertions, 5 deletions
diff --git a/atk16_schasm/lib.scm b/atk16_schasm/lib.scm
index dcad652..b01aef2 100644
--- a/atk16_schasm/lib.scm
+++ b/atk16_schasm/lib.scm
@@ -81,22 +81,20 @@
(unless (and (< n (expt 2 16))
(>= n 0))
(error "n does not fit in bounds" n))
- (let* ((m (modulo n (expt 2 16))))
- `(imm ,m)))
+ `(imm ,m))
(define (i8 n)
(unless (and (< n (expt 2 7))
(>= n (- (expt 2 7))))
(error "n does not fit in bounds" n))
- (let* ((m (modulo n (expt 2 8))))
+ (let* ((m (modulo n (expt 2 16))))
`(imm ,m)))
(define (u8 n)
(unless (and (< n (expt 2 8))
(>= n 0))
(error "n does not fit in bounds" n))
- (let* ((m (modulo n (expt 2 8))))
- `(imm ,m)))
+ `(imm ,m))
(define (alu-op n)
(unless (and (>= n 0)