10
20
30
40
50 :
60
70
80 :
90
100
110 DEFFNfile(A$,A%):$name%=A$:?X%=name%:X%?1=name%DIV256:=(USR&FFDD)AND&FF
120 :
130
140
150 DEFPROCf_gbpb(A%,C%,D%,N%,P%):PROCgbpb(A%,C%,D%,N%,P%):ENDPROC
160 DEFPROCgbpb(A%,chn%,addr%,num%,ptr%):?X%=chn%:X%!1=addr%:X%!5=num%:X%!9=ptr%:CALL &FFD1:ENDPROC
170 :
180
190
200 DEFFNf_thing(A%)=FNgbpb(A%)
210 DEFFNgbpb(A%):X%!1=name%:CALL&FFD1:A%=name%+((1+?name%)AND((A%AND-2)=6))
220 A%?(1+?A%)=13:=$(A%+1)
230 :
240
250
260 DEFFNf_scan(A%)=FNgbpb8(A%)
270 DEFFNgbpb8(ptr%):X%!1=name%:X%!5=1:X%!9=ptr%:A%=8:CALL&FFD1:IFX%!5=1:=""
280 A%=name%:A%?(1+?A%)=13:=$(A%+1)
290 :
300
310
320 DEFFNf_args(A%,B%,C%)=FNargs(A%,B%,C%)
330 DEFFNargs(A%,Y%,ptr%):LOCAL X%,E%:IF?(TOP-3)=0:E%=Y%:Y%=0
340 IFPAGE<&8000:LOCAL !&70:X%=&70:!X%=ptr%:CALL&FFDA:=!X%
350 SYS"OS_Args",A%,Y%,ptr% TO ,,ptr%:=ptr%
360 :
370
380
390 DEFFNf_argsA(A%)=FNargsA(A%)
400 DEFFNargsA(A%):IFPAGE<&8000:LOCAL X%,Y%,E%,!&70:X%=&70:=(USR&FFDA)AND&FF
410 SYS"OS_Args",A% TO A%:=A%
420 :
430
440
450 DEFFNfs:LOCAL A%,Y%,E%:=(USR&FFDA)AND&FF