something else that might help pinpoint the error could be to put this after the 'getpoint' line:
Should show you in the command line all the variables used up to that point
(princ fn)
(princ " - ")
(princ pagecount)
(princ " - ")
(princ pt)
(princ n)
http://lee-mac.com/errormessages.html
bad argument type: fixnump: <value>
A function requiring an integer argument has been passed an argument of incorrect data type with the value noted in the error message.
The point "pt" isn't being set by getpoint for some reason.
I have a feeling whats going on. you have old/duplicate code somewhere with the same command that is not setting pt. when you type atall its running that code instead. try changing the command and see if it works.
(defun c:atall (/ fn n pt)
change to
(defun c:TEST (/ fn n pt)
Sounds like its not allowing you to pick a point.
https://forums.autodesk.com/t5/autocad-forum/problem-with-getpoint-on-autocad-2015-when-the-function-is/td-p/5040722
try changing it to and see if it works.
(setq pt '(0 0 0))
Work in progress - narrowing down where the problem is. Could be that the result from PDFPagecount gives a string and not an integer.. make it an integer and it will work... I'll look at that idea later if you can't get a solution
This (while keeps looping as it never gets a condition that says exit, a (repeat 8 would do for 8 pages, I found the how many pages in a pdf just google.