diff options
| author | Jan Tuomi <jan@jantuomi.fi> | 2025-02-28 11:08:57 +0200 |
|---|---|---|
| committer | Jan Tuomi <jan@jantuomi.fi> | 2025-02-28 11:08:57 +0200 |
| commit | a647a81564eb0ef9a57dfd47f44ed0336f48b9b4 (patch) | |
| tree | 0d07f479e81c353dfd3900998f05c91a705698fc | |
| parent | e18c789aebccecd7510a53110276a47e09ca0623 (diff) | |
Fix twos complement cast
| -rw-r--r-- | atk16_schasm/lib.scm | 8 |
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) |
