Can anyone help with the LISP routine below. It works in ACAD, but crashes midway in DS. Any help is greatly appreciated.
(defun c:adl ()
(setvar "cmdecho" 0)
(initget "Y N")
(menucmd "s=divlt1")
(setq dh (getkword "\\nBottom sash of DH : "))
(if (= dh nil)(setq dh "N"))
(menucmd "s=divlt1a")
(initget 1 "G A")
(setq adlgrilles (getkword "\\nrilles or uthentic divided lite: "))
(if (= (strcase dh) "Y")
(progn
(menucmd "s=divlt3")
(setq lwb (getint "\\nLites wide bottom sash: "))
(menucmd "s=divlt4")
(setq lhb (getint "\\nLites high bottom sash: "))
(if (and (= lwb 1)(= lhb 1))
()
(progn
(if (= (strcase adlgrilles) "A")
(progn
(menucmd "s=divlt2")
(setq bwb (getreal "\\nBar width : "))
(if (= bwb nil)(setq bwb 1.4375))
)
(progn
(menucmd "s=divlt2")
(setq bwb (getreal "\\nGrille width : "))
(if (= bwb nil)(setq bwb 0.75))
)
)
)
)
(menucmd "s=divlt3")
(princ "\\nLites wide top sash : ")
(setq lwt (getreal))
(if (= lwt nil)(setq lwt lwb))
(menucmd "s=divlt4")
(princ "\\nLites high top sash : ")
(setq lht (getreal))
(if (= lht nil)(setq lht lhb))
(if (and (= lwt 1)(= lht 1))
()
(progn
(if (= (strcase adlgrilles) "A")
(progn
(if (and (= lwb 1)(= lhb 1))
(progn
(menucmd "s=divlt2")
(setq bwt (getreal "\\nBar width : "))
(if (= bwt nil)(setq bwt 1.4375))
)
(progn
(menucmd "s=divlt2")
(princ "\\nBar width : ")
(setq bwt (getreal))
(if (= bwt nil)(setq bwt bwb))
)
)
)
