mirror of
https://github.com/PDP-10/its.git
synced 2026-03-20 08:28:43 +00:00
Compile LLOGO.
This commit is contained in:
@@ -922,3 +922,33 @@ respond "*" ":complr\r"
|
||||
respond "_" "kle;forth\r"
|
||||
respond "_" "\032"
|
||||
type ":kill\r"
|
||||
|
||||
# Lisp Logo
|
||||
respond "*" ":cwd llogo\r"
|
||||
respond "*" ":complr\r"
|
||||
respond "_" "\007"
|
||||
respond "*" {(load "ioc")}
|
||||
respond "T" "(maklap)"
|
||||
respond "_" "define\r"
|
||||
respond "_" "\032"
|
||||
type ":kill\r"
|
||||
respond "*" ":complr\r"
|
||||
respond "_" "\007"
|
||||
respond "*" {(load "ioc")}
|
||||
respond "T" {(load "define")}
|
||||
respond "0" "(maklap)"
|
||||
respond "_" "error\r"
|
||||
respond "_" "parser\r"
|
||||
respond "_" "primit\r"
|
||||
respond "_" "print\r"
|
||||
respond "_" "reader\r"
|
||||
respond "_" "setup\r"
|
||||
respond "_" "tvrtle\r"
|
||||
respond "_" "unedit\r"
|
||||
respond "_" "\032"
|
||||
type ":kill\r"
|
||||
respond "*" ":lisp loader\r"
|
||||
respond "?" "Y\r"
|
||||
respond "?" "LLOGO\r"
|
||||
respond ";BKPT" "\032"
|
||||
type ":kill\r"
|
||||
|
||||
13
src/llogo/ioc.lsp
Normal file
13
src/llogo/ioc.lsp
Normal file
@@ -0,0 +1,13 @@
|
||||
;;; -*- lisp -*-
|
||||
|
||||
(defmacro ioc (sym)
|
||||
(cond
|
||||
((eq sym 'G) `(^G))
|
||||
((eq sym 'R) `(setq ^R t))
|
||||
((eq sym 'T) `(setq ^R nil))
|
||||
(t (error "Unknown IOC character"))))
|
||||
|
||||
(defmacro iog (sym &rest forms)
|
||||
`(let ((^Q nil) (^R nil) (^W nil)
|
||||
,@(if sym `((ioc ,sym))))
|
||||
,@forms))
|
||||
@@ -11,6 +11,8 @@
|
||||
|
||||
(DECLARE (COUTPUT (READ)))
|
||||
|
||||
(load "ioc")
|
||||
|
||||
(DEFUN HOW-BIG NIL
|
||||
(REMPROP 'HOW-BIG 'EXPR)
|
||||
((LAMBDA (FREE)
|
||||
@@ -42,7 +44,7 @@
|
||||
(MAPC
|
||||
'(LAMBDA (SOURCE-FILE)
|
||||
(APPLY 'UREAD
|
||||
(CONS SOURCE-FILE '(> AI LLOGO)))
|
||||
(CONS SOURCE-FILE '(> DSK LLOGO)))
|
||||
(MAPC 'PRINC
|
||||
(LIST 'READING
|
||||
'/
|
||||
@@ -81,9 +83,9 @@ FASLOADING/ FASL-FILE
|
||||
'/ FASL))
|
||||
(APPLY 'FASLOAD
|
||||
(CONS FASL-FILE
|
||||
'(FASL AI LLOGO))))
|
||||
'(FASL DSK LLOGO))))
|
||||
(CDR (GET 'LLOGO 'FILES)))))
|
||||
(AND DUMP (UWRITE AI LLOGO) (IOC R)
|
||||
(AND DUMP (UWRITE DSK LLOGO) (IOC R)
|
||||
(MAPC 'PRINC
|
||||
(LIST '/
|
||||
CREATING/ DUMP
|
||||
@@ -139,7 +141,7 @@ UUO:/ ) (PRINC (COND ((NUMBERP PURE) (* PURE 2048.)) (0.)))
|
||||
(TERPRI)
|
||||
(SSTATUS TOPLEVEL '(START-UP))
|
||||
(COND ((AND DUMP (STATUS FEATURE ITS))
|
||||
(ERRSET (UFILE LLOGO > AI LLOGO) NIL)
|
||||
(ERRSET (UFILE LLOGO > DSK LLOGO) NIL)
|
||||
(IOG NIL (PRINC 'VERSION/ NUMBER?/ )
|
||||
(PUTPROP 'LLOGO (LIST DUMP (READ)) 'VERSION))
|
||||
(UCLOSE)
|
||||
@@ -194,4 +196,4 @@ UUO:/ ) (PRINC (COND ((NUMBERP PURE) (* PURE 2048.)) (0.)))
|
||||
(AND (STATUS FEATURE BIBOP) (SETQ INITIAL-SIZE (HOW-BIG)))
|
||||
|
||||
(SSTATUS TOPLEVEL '(CREATE))
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user