aboutsummaryrefslogtreecommitdiff
path: root/assembler
diff options
context:
space:
mode:
Diffstat (limited to 'assembler')
-rw-r--r--assembler/fvm-as.scm6
1 files changed, 5 insertions, 1 deletions
diff --git a/assembler/fvm-as.scm b/assembler/fvm-as.scm
index 68a2ca0..5f1951e 100644
--- a/assembler/fvm-as.scm
+++ b/assembler/fvm-as.scm
@@ -4,6 +4,7 @@
(import (chicken condition))
(import (chicken keyword))
(import (chicken process-context))
+(import (chicken port))
(define (make-opcode-table)
(define opcodes
@@ -181,7 +182,10 @@
(define (main input-file output-file)
(define prog '())
;; read s-exp from file
- (call-with-input-file input-file
+ (define input-str
+ (with-input-from-file input-file
+ read-string))
+ (call-with-input-string (string-append "(" input-str ")")
(lambda (port) (set! prog (read port))))
(set! prog (preprocess prog))
(set! prog (pseudo-op-pass prog))