;;;; forth.scm (use sixtyfive-oh-two srfi-4 lolevel utils format) (define cpu (make-processor)) (define mem (processor-memory cpu)) (define regs (processor-registers cpu)) (include "terminal.scm") (define (load-bin fname addr) (let ((bin (read-all fname))) (move-memory! bin mem (string-length bin) 0 addr))) (load-bin "forth.bin" #x200) (load-bin "bios.bin" #xd000) (reset! cpu) (u8vector-set! regs 5 0) (u8vector-set! regs 6 2) (do () (#f) (execute! cpu cycles: 10) (poll-terminal-device cpu))