NEW
  AUTO 3,1
*--------------------------------------
GP.ENTRY		jmp	BS.ENTRY
GP.DOSCMD		jmp	BS.DOSCMD
GP.EXTRNCMD		jmp	GP.RTS
GP.ERROUT		jmp	BS.ERROUT
GP.PRINTERR		jmp	BS.PRINTERR
GP.ERRCODE		.BS 1
*--------------------------------------
GP.OUTVECT0		.DA	MON.COUT1
GP.OUTVECT1		.DA BS.NODEVERR
GP.OUTVECT2		.DA BS.NODEVERR
GP.OUTVECT3		.DA BS.NODEVERR
GP.OUTVECT4		.DA BS.NODEVERR
GP.OUTVECT5		.DA BS.NODEVERR
GP.OUTVECT6		.DA BS.NODEVERR
GP.OUTVECT7		.DA BS.NODEVERR
GP.INVECT0		.DA MON.KEYIN
GP.INVECT1		.DA	BS.NODEVERR
GP.INVECT2		.DA BS.NODEVERR
GP.INVECT3		.DA BS.NODEVERR
GP.INVECT4		.DA BS.NODEVERR
GP.INVECT5		.DA BS.NODEVERR
GP.INVECT6		.DA BS.NODEVERR
GP.INVECT7		.DA BS.NODEVERR
GP.VECTOUT		.DA MON.COUT1
GP.VECTIN		.DA MON.KEYIN
GP.VDOSO		.DA	BS.JMP.GP.VSYSO
GP.VDOSI		.DA BS.JMP.GP.VSYSI
GP.VSYSO		.BS 2
GP.VSYSI		.BS 2
GP.VDEFSLT		.DA #6
GP.VDEFDRV		.DA #1
GP.PREGA		.BS 1
GP.PREGX		.BS 1
GP.PREGY		.BS 1
GP.DTRACE		.BS 1
GP.STATE		.BS 1
GP.EXECACTV		.BS 1
GP.IFILACTV		.BS 1
GP.OFILACTV		.BS 1
GP.PFXACTV		.BS 1
GP.DIRFLG		.BS 1
GP.EDIRFLG		.BS 1
GP.STRINGS		.BS 1
GP.TBUFPTR		.BS 1
GP.INPTR		.BS 1
GP.CHRLAST		.BS 1
GP.OPENCNT		.BS 1
GP.EXECFILE		.BS 1
GP.CATFLAG		.BS 1
GP.XTRNADDR		.BS 2
GP.XLEN			.BS 1
GP.XCNUM		.BS 1
GP.AllowedBITS	.BS 2
GP.FoundBITS	.BS 2
GP.ParamA		.BS 2
GP.ParamB		.BS 3
GP.ParamE		.BS 2
GP.ParamL		.BS 2
GP.ParamS		.BS 1
GP.ParamD		.BS 1
GP.ParamF		.BS 2
GP.ParamR		.BS 2
GP.ParamV		.BS 1
GP.ParamAT		.BS 2
GP.ParamT		.BS 1
GP.ParamINPR	.BS 1
GP.VPATH1		.DA	BS.CMDBUF.LEN
GP.VPATH2		.DA	MLI.PATHBUF
*--------------------------------------
GP.GOSYSTEM		sta	GP.GOSYSTEM.C
				stx	BS.CALLX
				and	#$1F
				tax
				lda BS.ParamLByte,x
				sta	GP.GOSYSTEM.P
				ldx	BS.CALLX
				jsr	MLI
GP.GOSYSTEM.C	.BS 1
GP.GOSYSTEM.P	.DA GP.GOSYSTEM.P
				bcs	GP.BADCALL
				rts
*--------------------------------------
GP.BADCALL		ldx	#$12

LBE8D			cmp	BS.MLIERTBL,x
				beq	LBE97

				dex
				bpl	LBE8D

				ldx	#$13

LBE97			lda BS.BIERRTBL,x
				ldx	BS.CALLX
				sec

GP.RTS			rts
*--------------------------------------
GP.CISPARE1		.BS 1
*--------------------------------------
GP.SCREATE		.DA #7
GP.SCREATEPATH	.DA BS.CMDBUF.LEN
GP.CRACCESS		.DA #$C3
GP.CRTYPE		.BS 1 
GP.CRAUXTYPE	.BS 2
GP.CRSTTYPE		.BS 1
GP.DATETIME		.BS 4
*--------------------------------------
GP.SDSTROY		.DA #1
GP.SDSTROYPATH	.DA BS.CMDBUF.LEN
*--------------------------------------
GP.SRECNAME		.DA #2
GP.SRECNAMEOLD	.DA BS.CMDBUF.LEN
GP.SRECNAMENEW	.DA	MLI.PATHBUF
*--------------------------------------
GP.SSGINFO		.BS 1
GP.SSGINFOPATH	.DA BS.CMDBUF.LEN
GP.FIACCESS		.BS 1
GP.FITYPE		.BS 1
GP.FIAUXTYPE	.BS 2
GP.STTYPE		.BS 1
GP.FIBLOKS		.BS 2
GP.FIMDATE		.BS 4
GP.FICDATE		.BS 4
*--------------------------------------
GP.MLIMRKEOFBUF	.DA #2
GP.MLIMRKEOFBUF.REFNUM
				.BS 1
GP.SBUFADR		.BS 3
*--------------------------------------
GP.SOPEN		.DA #3	
GP.TXTBUF		.DA BS.CMDBUF.LEN
GP.OSYSBUF		.BS 2
GP.OREFNUM		.BS 1
*--------------------------------------
GP.SNEWLIN		.DA #3
GP.NEWLREF		.BS 1
GP.NLINEMASK	.DA #$7F
GP.NLINECHAR	.DA #13
*--------------------------------------
GP.MLIRW		.DA #4
GP.MLIRW.REFNUM	.BS 1
GP.MLIRW.DATAPTR	.BS 2
GP.MLIRW.COUNT	.BS 2
GP.MLIRW.TRANS	.BS 2
*--------------------------------------
GP.MLICF		.DA #1
GP.MLICF.REFNUM	.BS 1
*--------------------------------------
GP.CCCSPARE		.BS 1
*--------------------------------------
GP.COPYRIGHT	.AS -"COPYRIGHT APPLE, 1983"
GP.GETBUFR		jmp	BS.GETBUFR
GP.FREEBUFR		jmp	BS.FREEBUFR
GP.RSHIMEM		.BS 5
*--------------------------------------
MAN
SAVE usr/src/basic.fx/basic.s.gp
LOAD usr/src/basic.fx/basic.s
ASM
