What would cause this Lisp to not work in AutoCAD 2005? Can someone look at this? Can someone change this to have an option for an xref and overlay?
Thank you
(defun c:copyxref (/ *error* CMD FD OBJ EN XREF ADD INS SCLX SCLY ROT)
(defun *error* (msg)
(if (or (= msg "Function cancelled")
(= msg "quit / exit abort")
)
(progn
(setvar "cmdecho" CMD)
(setvar "filedia" FD)
(princ)
)
(princ (strcat "\nError: " msg))
)
)
(setq CMD (getvar "cmdecho"))
(setq FD (getvar "filedia"))
(setvar "cmdecho" 0)
(setvar "filedia" 0)
(while (/= OBJ 1)
(setq EN (entsel "\nSelect Xref to insert: "))
(cond
((not EN)
(progn
(cond
((= (getvar "errno") 7) (princ "\nNo Xref selected"))
((= (getvar "errno") 52) (exit))
)
)
)
((/= (cdr (assoc 0 (entget (car EN)))) "INSERT")
(princ "\nNot an Xref")
)
((= 4
(logand
(cdr
(assoc
70
(entget
(tblobjname "block" (cdr (assoc 2 (entget (car EN)))))
)
)
)
4
)
)
(setq OBJ 1)
)
(T (princ "\nNot an Xref"))
)
)
(setq XREF (cdr (assoc 2 (entget (car EN)))))
(setq ADD
(cdr
(assoc 1
(entget
(tblobjname "block" (cdr (assoc 2 (entget (car EN)))))
)
)
)
)
(setq NEWNAME (getstring "\nName of XREF: "))
(setq INS (getpoint "\nSpecify insertion point: "))
(setq SCLX (getreal "\nEnter X scale factor: "))
(setq SCLY (getreal "\nEnter Y scale factor: "))
(setq ROT (getreal "\nSpecify rotation angle: "))
(command "XREF"
"Overlay"
(strcat NEWNAME "=" ADD)
INS
(rtos SCLX)
(rtos SCLY)
(rtos ROT)
)
(exit)
)