

SRCZIP= entry.a86 dummy.a86 jmptbl0.a86 \
	monobj16.a86 monobj8.a86 monobj2.a86 monobj0.a86 \
	monobj0v.a86 monobj1v.a86 monobj2v.a86 \
	monout16.a86 monout8.a86 monout2.a86 monout1.a86 monout0.a86 \
	 imouse.a86 imouse13.a86 externs.a86 \
	 ibmmdvsp.a86 700mdvsp.a86 debdvsp.a86 \
	 egammre1.a86 egammre2.a86 \
	 monmmre1.a86 monmmre2.a86 \
	 mblit.a86 cblit.a86 \
	 monspblt.a86 rastop.a86 \
	 vgamblit.a86 vgablit.a86 \
	 mcgmblit.a86 mcgblit.a86 \
	 egamblit.a86 egablit.a86 \
	 eh1mblit.a86 eh1blit.a86 \
	 eh8mblit.a86 eh8blit.a86 \
	 elfmblit.a86 elfblit.a86 \
	 cgamblit.a86 cgablit.a86 \
	 genmblit.a86 genblit.a86 \
	 attmblit.a86 attblit.a86 \
	 debmblit.a86 debblit.a86 \
	 hrcmblit.a86 hrcblit.a86 \
	 wysmblit.a86 wysblit.a86 \
	 p64mblit.a86 p64blit.a86 \
	 p75mblit.a86 p75blit.a86 \
	 opttext.a86 opttxt1.a86 opttxt2.a86 opttdraw.a86 lorespat.a86 \
	 8opttext.a86 mopttext.a86 opttext1.a86 hirespat.a86 \
	 vopttxt1.a86 vopttxt2.a86 voptdraw.a86 vgapat.a86 \
	 mcpttxt1.a86 mcpttxt2.a86 mcptdraw.a86 mcgpat.a86 \
	 eopttxt1.a86 eopttxt2.a86 eoptdraw.a86 egapat.a86 \
	 e1pttxt1.a86 e1pttxt2.a86 e1ptdraw.a86 eh1pat.a86 \
	 e8pttxt1.a86 e8pttxt2.a86 e8ptdraw.a86 eh8pat.a86 \
	 elpttxt1.a86 elpttxt2.a86 elptdraw.a86 elfpat.a86 \
	 cgpttxt1.a86 cgpttxt2.a86 cgptdraw.a86 cgapat.a86 \
	 gepttxt1.a86 gepttxt2.a86 geptdraw.a86 genpat.a86 \
	 atpttxt1.a86 atpttxt2.a86 atptdraw.a86 attpat.a86 \
	 depttxt1.a86 depttxt2.a86 deptdraw.a86 debpat.a86 \
	 hrpttxt1.a86 hrpttxt2.a86 hrptdraw.a86 hrcpat.a86 \
	 wypttxt1.a86 wypttxt2.a86 wyptdraw.a86 wyspat.a86 \
	 popttxt1.a86 popttxt2.a86 poptdraw.a86 p64pat.a86 \
	 p7pttxt1.a86 p7pttxt2.a86 p7ptdraw.a86 p75pat.a86 \
	 popttext.a86 p640.a86 p752.a86 \
	 vgafont.a86 vgacp.a86 \
	 egafont.a86 egacp.a86 \
	 cgafont.a86 cgacp.a86 \
	 vgafontv.a86 vga_drv0.a86 vgaregs.a86 vgadev.a86 \
	 egafont0.a86 ega_drv0.a86 egaregs.a86 egadev.a86 \
	 cgafont0.a86 cga_drv0.a86 cgaregs.a86 cgadev.a86 \
	 vgafont0.a86 att_drv0.a86 attregs.a86 attdev.a86 \
	              deb_drv0.a86 debregs.a86 debdev.a86 \
	              eh1_drv0.a86 eh1regs.a86 eh1dev.a86 \
	              eh8_drv0.a86 eh8regs.a86 eh8dev.a86 \
	              elf_drv0.a86 elfregs.a86 elfdev.a86 \
	              gen_drv0.a86 genregs.a86 gendev.a86 \
	              p64_drv0.a86 p64regs.a86 p64dev.a86 \
	              p75_drv0.a86 p752regs.a86 p752dev.a86 \
	              hrc_drv0.a86 hercregs.a86 hercdev.a86 \
	              wys_drv0.a86 wyseregs.a86 wysedev.a86 \
	              mcg_drv0.a86 mcgaregs.a86 mcgadev.a86 \
	 isin.a86 enddseg.a86 \
	 sdpsc7.inp \
	 sdpsm7.inp \
	 sdehf7.inp \
	 sdeh87.inp \
	 sdehm7.inp \
	 sdelf7.inp \
	 sdcga7.inp \
	 sdatt7.inp \
	 sddeb7.inp \
	 sdgen7.inp \
	 sdhrc7.inp \
	 sdwys7.inp \
	 sdp647.inp \
	 sdp757.inp \
	 copying.txt readme.txt source.txt Makefile  

#
# Drivers I can compare byte-for-byte with the GEM 2.2 originals
#
GEM_DRIVERS=sdehf7.ega sdeh87.ega sdelf7.cga sdcga7.cga \
	    sdatt7.ega sdhrc7.ega sdehm7.ega sddeb7.ega \
	    sdpsc7.vga sdpsm7.vga

#
# Drivers where I haven't got the GEM 2.2 original, perhaps because it 
# never existed.
#
GUESS_DRIVERS=sdp647.vga sdp757.ega sdwys7.vga sdgen7.vga 
# sdkhm7 

all:	$(GEM_DRIVERS) $(GUESS_DRIVERS)

#
# Ensure that the linker INP file is big enough - if it isn't you get 
# strange "Syntax error" messages. To be safe add 128 extra spaces to the
# end; LINK86 only reads up to the last multiple of 128 bytes.
#
sdpsc7.vga:	entry.obj jmptbl0.obj monobj1v.obj  \
		monout16.obj vgafontv.obj \
		popttext.obj isin.obj dummy.obj vga_drv0.obj \
		vgamblit.obj vgablit.obj vopttxt1.obj vopttxt2.obj \
		voptdraw.obj vgapat.obj enddseg.obj
	link86 sdpsc7[i

sdehf7.ega:	entry.obj jmptbl0.obj monobj16.obj  \
		monout16.obj egafont0.obj \
		popttext.obj isin.obj dummy.obj ega_drv0.obj \
		egamblit.obj egablit.obj eopttxt1.obj eopttxt2.obj \
		eoptdraw.obj egapat.obj enddseg.obj sdehf7.inp
	link86 sdehf7[i

sdeh87.ega:	entry.obj jmptbl0.obj monobj8.obj  \
		monout8.obj egafont0.obj \
		8opttext.obj isin.obj dummy.obj eh8_drv0.obj \
		eh8mblit.obj eh8blit.obj e8pttxt1.obj e8pttxt2.obj \
		e8ptdraw.obj eh8pat.obj enddseg.obj sdeh87.inp
	link86 sdeh87[i

sdehm7.ega:	entry.obj jmptbl0.obj monobj2.obj  \
		monout2.obj egafont0.obj \
		mopttext.obj isin.obj dummy.obj eh1_drv0.obj \
		eh1mblit.obj eh1blit.obj e1pttxt1.obj e1pttxt2.obj \
		e1ptdraw.obj eh1pat.obj enddseg.obj
	link86 sdehm7[i

sdelf7.cga:	entry.obj jmptbl0.obj monobj16.obj  \
		monout16.obj cgafont0.obj \
		popttext.obj isin.obj dummy.obj elf_drv0.obj \
		elfmblit.obj elfblit.obj elpttxt1.obj elpttxt2.obj \
		elptdraw.obj elfpat.obj enddseg.obj sdelf7.inp
	link86 sdelf7[i


sdcga7.cga:	entry.obj jmptbl0.obj monobj2.obj  \
		monout2.obj cgafont0.obj \
		mopttext.obj isin.obj dummy.obj cga_drv0.obj \
		cgamblit.obj cgablit.obj cgpttxt1.obj cgpttxt2.obj \
		cgptdraw.obj cgapat.obj enddseg.obj
	link86 sdcga7[i

sdatt7.ega:	entry.obj jmptbl0.obj monobj2.obj  \
		monout2.obj vgafont0.obj \
		mopttext.obj isin.obj dummy.obj att_drv0.obj \
		attmblit.obj attblit.obj atpttxt1.obj atpttxt2.obj \
		atptdraw.obj attpat.obj enddseg.obj
	link86 sdatt7[i

sddeb7.ega:	entry.obj jmptbl0.obj monobj16.obj  \
		monout1.obj vgafont0.obj \
		opttext1.obj isin.obj dummy.obj deb_drv0.obj \
		debmblit.obj debblit.obj depttxt1.obj depttxt2.obj \
		deptdraw.obj debpat.obj enddseg.obj
	link86 sddeb7[i

sdhrc7.ega:	entry.obj jmptbl0.obj monobj2.obj  \
		monout2.obj egafont0.obj \
		mopttext.obj isin.obj dummy.obj hrc_drv0.obj \
		hrcmblit.obj hrcblit.obj hrpttxt1.obj hrpttxt2.obj \
		hrptdraw.obj hrcpat.obj enddseg.obj
	link86 sdhrc7[i

sdwys7.vga:	entry.obj jmptbl0.obj monobj2.obj  \
		monout2.obj vgafont0.obj \
		mopttext.obj isin.obj dummy.obj wys_drv0.obj \
		wysmblit.obj wysblit.obj wypttxt1.obj wypttxt2.obj \
		wyptdraw.obj wyspat.obj enddseg.obj
	link86 sdwys7[i

sdpsm7.vga:	entry.obj jmptbl0.obj monobj2v.obj  \
		monout2.obj vgafontv.obj \
		mopttext.obj isin.obj dummy.obj mcg_drv0.obj \
		mcgmblit.obj mcgblit.obj mcpttxt1.obj mcpttxt2.obj \
		mcptdraw.obj mcgpat.obj enddseg.obj
	link86 sdpsm7[i

sdgen7.vga:	entry.obj jmptbl0.obj monobj2.obj  \
		monout2.obj vgafont0.obj \
		mopttext.obj isin.obj dummy.obj gen_drv0.obj \
		genmblit.obj genblit.obj gepttxt1.obj gepttxt2.obj \
		geptdraw.obj genpat.obj enddseg.obj
	link86 sdgen7[i

sdp647.vga:	entry.obj jmptbl0.obj monobj16.obj  \
		monout16.obj vgafont0.obj \
		popttext.obj isin.obj dummy.obj p64_drv0.obj \
		p64mblit.obj p64blit.obj popttxt1.obj popttxt2.obj \
		poptdraw.obj p64pat.obj enddseg.obj p640.obj
	link86 sdp647[i

sdp757.ega:	entry.obj jmptbl0.obj monobj16.obj  \
		monout16.obj egafont0.obj \
		popttext.obj isin.obj dummy.obj p75_drv0.obj \
		p75mblit.obj p75blit.obj p7pttxt1.obj p7pttxt2.obj \
		p7ptdraw.obj p75pat.obj enddseg.obj p752.obj
	link86 sdp757[i



%.obj:	%.a86 externs.a86
	rasm86 $< $$pzsz

cga_drv0.obj:	cga_drv0.a86 cgaregs.a86 externs.a86 ibmmdvsp.a86 imouse.a86 \
		monmmre1.a86 monmmre2.a86 cgadev.a86
att_drv0.obj:	att_drv0.a86 attregs.a86 externs.a86 ibmmdvsp.a86 imouse.a86 \
		monmmre1.a86 monmmre2.a86 attdev.a86
deb_drv0.obj:	deb_drv0.a86 debregs.a86 externs.a86 debdvsp.a86 imouse.a86 \
		monmmre1.a86 monmmre2.a86 debdev.a86
gen_drv0.obj:	gen_drv0.a86 genregs.a86 externs.a86 ibmmdvsp.a86 \
		imouse.a86 monmmre1.a86 monmmre2.a86 gendev.a86
hrc_drv0.obj:	hrc_drv0.a86 hercregs.a86 externs.a86 ibmmdvsp.a86 \
		imouse.a86 monmmre1.a86 monmmre2.a86 hercdev.a86
wys_drv0.obj:	wys_drv0.a86 wyseregs.a86 externs.a86 ibmmdvsp.a86 \
		imouse.a86 monmmre1.a86 monmmre2.a86 wysedev.a86
ega_drv0.obj:	ega_drv0.a86 egaregs.a86 externs.a86 ibmmdvsp.a86 imouse.a86 \
		egammre1.a86 egammre2.a86 egadev.a86
eh8_drv0.obj:	eh8_drv0.a86 eh8regs.a86 externs.a86 ibmmdvsp.a86 imouse.a86 \
		egammre1.a86 egammre2.a86 eh8dev.a86
eh1_drv0.obj:	eh1_drv0.a86 eh1regs.a86 externs.a86 ibmmdvsp.a86 imouse.a86 \
		monmmre1.a86 monmmre2.a86 eh1dev.a86
elf_drv0.obj:	elf_drv0.a86 elfregs.a86 externs.a86 ibmmdvsp.a86 imouse.a86 \
		egammre1.a86 egammre2.a86 elfdev.a86
vga_drv0.obj:	vga_drv0.a86 vgaregs.a86 externs.a86 ibmmdvsp.a86 imouse13.a86 \
		egammre1.a86 egammre2.a86 vgadev.a86
mcg_drv0.obj:	mcg_drv0.a86 mcgaregs.a86 externs.a86 ibmmdvsp.a86 \
		imouse.a86 monmmre1.a86 monmmre2.a86 mcgadev.a86
p64_drv0.obj:	p64_drv0.a86 p64regs.a86 externs.a86 ibmmdvsp.a86 imouse.a86 \
		egammre1.a86 egammre2.a86 p64dev.a86
p75_drv0.obj:	p75_drv0.a86 p752regs.a86 externs.a86 ibmmdvsp.a86 imouse.a86 \
		egammre1.a86 egammre2.a86 p752dev.a86

vgamblit.obj:	vgamblit.a86 mblit.a86
vgablit.obj:	vgablit.a86 cblit.a86
vopttxt1.obj:	vopttxt1.a86 opttxt1.a86
vopttxt2.obj:	vopttxt2.a86 opttxt2.a86
voptdraw.obj:	voptdraw.a86 opttdraw.a86
vgapat.obj:	vgapat.a86 hirespat.a86

egamblit.obj:	egamblit.a86 mblit.a86
egablit.obj:	egablit.a86 cblit.a86
eopttxt1.obj:	eopttxt1.a86 opttxt1.a86
eopttxt2.obj:	eopttxt2.a86 opttxt2.a86
eoptdraw.obj:	eoptdraw.a86 opttdraw.a86
egapat.obj:	egapat.a86 hirespat.a86

eh8mblit.obj:	eh8mblit.a86 mblit.a86
eh8blit.obj:	eh8blit.a86 cblit.a86
e8pttxt1.obj:	e8pttxt1.a86 opttxt1.a86
e8pttxt2.obj:	e8pttxt2.a86 opttxt2.a86
e8ptdraw.obj:	e8ptdraw.a86 opttdraw.a86
eh8pat.obj:	eh8pat.a86 hirespat.a86

eh1mblit.obj:	eh1mblit.a86 monspblt.a86
eh1blit.obj:	eh1blit.a86 rastop.a86
e1pttxt1.obj:	e1pttxt1.a86 opttxt1.a86
e1pttxt2.obj:	e1pttxt2.a86 opttxt2.a86
e1ptdraw.obj:	e1ptdraw.a86 opttdraw.a86
eh1pat.obj:	eh1pat.a86 hirespat.a86

elfmblit.obj:	elfmblit.a86 mblit.a86
elfblit.obj:	elfblit.a86 cblit.a86
elttxt1.obj:	elttxt1.a86 opttxt1.a86
elttxt2.obj:	elttxt2.a86 opttxt2.a86
eltdraw.obj:	eltdraw.a86 opttdraw.a86
elfpat.obj:	elfpat.a86 lorespat.a86

cgamblit.obj:	cgamblit.a86 monspblt.a86
cgablit.obj:	cgablit.a86 rastop.a86
cgpttxt1.obj:	cgpttxt1.a86 opttxt1.a86
cgpttxt2.obj:	cgpttxt2.a86 opttxt2.a86
cgptdraw.obj:	cgptdraw.a86 opttdraw.a86
cgapat.obj:	cgapat.a86 lorespat.a86

attmblit.obj:	attmblit.a86 monspblt.a86
attblit.obj:	attblit.a86 rastop.a86
atpttxt1.obj:	atpttxt1.a86 opttxt1.a86
atpttxt2.obj:	atpttxt2.a86 opttxt2.a86
atptdraw.obj:	atptdraw.a86 opttdraw.a86
attpat.obj:	attpat.a86 hirespat.a86

debmblit.obj:	debmblit.a86 monspblt.a86
debblit.obj:	debblit.a86 rastop.a86
depttxt1.obj:	depttxt1.a86 opttxt1.a86
depttxt2.obj:	depttxt2.a86 opttxt2.a86
deptdraw.obj:	deptdraw.a86 opttdraw.a86
debpat.obj:	debpat.a86 lorespat.a86

hrcmblit.obj:	hrcmblit.a86 monspblt.a86
hrcblit.obj:	hrcblit.a86 rastop.a86
hrpttxt1.obj:	hrpttxt1.a86 opttxt1.a86
hrpttxt2.obj:	hrpttxt2.a86 opttxt2.a86
hrptdraw.obj:	hrptdraw.a86 opttdraw.a86
hrcpat.obj:	hrcpat.a86 hirespat.a86

wysmblit.obj:	wysmblit.a86 monspblt.a86
wysblit.obj:	wysblit.a86 rastop.a86
wypttxt1.obj:	wypttxt1.a86 opttxt1.a86
wypttxt2.obj:	wypttxt2.a86 opttxt2.a86
wyptdraw.obj:	wyptdraw.a86 opttdraw.a86
wyspat.obj:	wyspat.a86 hirespat.a86

mcgmblit.obj:	mcgmblit.a86 monspblt.a86
mcgblit.obj:	mcgblit.a86 rastop.a86
mcpttxt1.obj:	mcpttxt1.a86 opttxt1.a86
mcpttxt2.obj:	mcpttxt2.a86 opttxt2.a86
mcptdraw.obj:	mcptdraw.a86 opttdraw.a86
mcgpat.obj:	mcgpat.a86 hirespat.a86

genmblit.obj:	genmblit.a86 monspblt.a86
genblit.obj:	genblit.a86 rastop.a86
gepttxt1.obj:	gepttxt1.a86 opttxt1.a86
gepttxt2.obj:	gepttxt2.a86 opttxt2.a86
geptdraw.obj:	geptdraw.a86 opttdraw.a86
genpat.obj:	genpat.a86 hirespat.a86

p64mblit.obj:	p64mblit.a86 monspblt.a86
p64blit.obj:	p64blit.a86 rastop.a86
popttxt1.obj:	popttxt1.a86 opttxt1.a86
popttxt2.obj:	popttxt2.a86 opttxt2.a86
poptdraw.obj:	poptdraw.a86 opttdraw.a86
p64pat.obj:	p64pat.a86 hirespat.a86

p75mblit.obj:	p75mblit.a86 monspblt.a86
p75blit.obj:	p75blit.a86 rastop.a86
p7pttxt1.obj:	p7pttxt1.a86 opttxt1.a86
p7pttxt2.obj:	p7pttxt2.a86 opttxt2.a86
p7ptdraw.obj:	p7ptdraw.a86 opttdraw.a86
p75pat.obj:	p75pat.a86 hirespat.a86

monobj1v.obj:	monobj1v.a86 monobj0v.a86
monobj16.obj:	monobj16.a86 monobj0.a86
monobj8.obj:	monobj8.a86 monobj0.a86
monobj2.obj:	monobj2.a86 monobj0.a86

monout16.obj:	monout16.a86 monout0.a86
monout8.obj:	monout8.a86 monout0.a86
monout2.obj:	monout2.a86 monout0.a86

mopttext.obj:	mopttext.a86 opttext.a86
popttext.obj:	popttext.a86 opttext.a86

zip:	$(SRCZIP) $(BINZIP)
	zip g22drvs.zip $(SRCZIP)
