On the Zx81, you can't use the PRINT AT all over the screen.
Code: Select all
1 FOR A=0 TO 23
2 PRINT AT A,0;"X"
3 NEXT A
It's due to the command lines window (2 lines located in line 22 & 23), used for INPUT command !
We had to fill this zone with a PRINT AT 21,0; "xxxxxxxxxx...xxxxxxxxx" (1+2=3 lines of x continus chars!)
In this case, PRINT AT 22,x and PRINT AT 23,x give a Basic error.
To avoid this error, you had to set the INPUT zone, and set the Basic variable (DF-SZ) to 1 to allow the line 22 or to 0, to set the line#23 to a free use.
Code: Select all
0 POKE 16418,0
1 FOR A=0 TO 23
2 PRINT AT A,0;"X"
3 NEXT A
4 GOTO 4
'POKE 16418,0' is to set the full PRINT AT screen but, in case of INPUT command, the INPUT prompt won't be displayed !

Otherwise, I still do not understand your questions …
Print AT 0 to 31 and PRINT AT 23,31...
[0-31] 32 characters. (columns)
[23-0] 24 characters. (lines)
In a normal stat, only 22 [Lines 0-21] are usable… without a DF-SZ set.
That's all.