1
0
mirror of https://github.com/PDP-10/its.git synced 2026-03-05 02:54:55 +00:00

Fix problem in the LMODEM file SIGNAL.

The macro condition-handlers uses the LOOP macro in a way that's no
longer allowed.  The COLLECT clause is followed by two forms: the
first is a check, and the second is actual data for the list.  This
was allowed up until LOOP version 809, but no longer in 818.  Moving
the check do a DO clause fixes the problem.
This commit is contained in:
Lars Brinkhoff
2021-11-09 09:13:13 +01:00
parent 79330791c0
commit aa03281df0
2 changed files with 26 additions and 3 deletions

View File

@@ -903,3 +903,25 @@ respond "*" {(load "bsg;cdriv")}
respond "T" "(make-cube)"
respond "*" ":pdump sys3;ts cube\r"
respond "*" ":kill\r"
# LMODEM
respond "*" ":link eb;lmodem 999, ejs; lmodem >\r"
respond "*" ":complr\r"
respond "_" "eb;sfadcl\r"
respond "_" "eb;errmac\r"
respond "_" "eb;signal\r"
respond "_" "eb;dsk8\r"
respond "_" "eb;lmodem\r"
respond "_" "\032"
type ":kill\r"
respond "*" ":lisp\r"
respond "Alloc?" "n"
respond "*" {(load "eb;lmodem")}
expect -re {[\r\n][\r\n][1-7][0-7][0-7]}
type "(dump-lmodem-program)"
respond "Filename in which to dump:" "eb; ts lmodem\r"
expect -re {[\r\n][\r\n]T ?[\r\n][\r\n]}
type "(quit)"
expect ":KILL"
# Make a link for the CP/M archive users.
respond "*" ":link cpm; ts lmodem, eb;\r"

View File

@@ -57,9 +57,10 @@
(t (let ((,cvar (car *signal-comm-var-1)))
(caseq ,cvar
,@ (loop for (c-or-cs arglist . forms) in handlers
collect (or forms
(er-error "Handler has no forms:~%; ~A"
c-or-cs))
do (or forms
(er-error "Handler has no forms:~%; ~A"
c-or-cs))
collect
`(,c-or-cs
(let
((,arglist (cdr