*
*	Graphics2.asm (of the PCQ Pascal runtime library)
*	Copyright (c) 1989 Patrick Quaid
*
*	These are more glue routines for the graphics.library.  These
*	are generally more in-depth, and probably more rarely used,
*	than the routines in Graphics.asm.
*

	XREF	_GfxBase

	XREF	_LVOAddAnimOb
	XDEF	_AddAnimOb
_AddAnimOb
	move.l	4(sp),a2
	move.l	8(sp),a1
	move.l	12(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOAddAnimOb(a6)

	XREF	_LVOAddBob
	XDEF	_AddBob
_AddBob
	move.l	4(sp),a1
	move.l	8(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOAddBob(a6)

	XREF	_LVOAddVSprite
	XDEF	_AddVSprite
_AddVSprite
	move.l	4(sp),a1
	move.l	8(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOAddVSprite(a6)

	XREF	_LVOAndRectRegion
	XDEF	_AndRectRegion
_AndRectRegion
	move.l	4(sp),a1
	move.l	8(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOAndRectRegion(a6)

	XREF	_LVOAndRegionRegion
	XDEF	_AndRegionRegion
_AndRegionRegion
	move.l	4(sp),a1
	move.l	8(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOAndRegionRegion(a6)

	XREF	_LVOAnimate
	XDEF	_Animate
_Animate
	move.l	4(sp),a1
	move.l	8(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOAnimate(a6)

	XREF	_LVOAreaEllipse
	XDEF	_AreaCircle
_AreaCircle
	move.w	4(sp),d2
	move.w	d2,d3		; set a = b
	move.w	6(sp),d1
	move.w	8(sp),d0
	move.l	10(sp),a1
	move.l	_GfxBase,a6
	jmp	_LVOAreaEllipse(a6)

	XDEF	_AreaEllipse
_AreaEllipse
	move.w	4(sp),d3
	move.w	6(sp),d2
	move.w	8(sp),d1
	move.w	10(sp),d0
	move.l	12(sp),a1
	move.l	_GfxBase,a6
	jmp	_LVOAreaEllipse(a6)

	XREF	_LVOAttemptLockLayerRom
	XDEF	_AttemptLockLayerRom
_AttemptLockLayerRom
	move.l	4(sp),a5
	move.l	_GfxBase,a6
	jmp	_LVOAttemptLockLayerRom(a6)

	XREF	_LVOBltBitMap
	XDEF	_BltBitMap
_BltBitMap
	move.l	4(sp),a2
	move.w	8(sp),d7
	move.w	10(sp),d6
	move.w	12(sp),d5
	move.w	14(sp),d4
	move.w	16(sp),d3
	move.w	18(sp),d2
	move.l	20(sp),a1
	move.w	24(sp),d1
	move.w	26(sp),d0
	move.l	28(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOBltBitMap(a6)

	XREF	_LVOBltBitMapRastPort
	XDEF	_BltBitMapRastPort
_BltBitMapRastPort
	move.w	4(sp),d6
	move.w	6(sp),d5
	move.w	8(sp),d4
	move.w	10(sp),d3
	move.w	12(sp),d2
	move.l	14(sp),a1
	move.w	18(sp),d1
	move.w	20(sp),d0
	move.l	22(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOBltBitMapRastPort(a6)

	XREF	_LVOBltMaskBitMapRastPort
	XDEF	_BltMaskBitMapRastPort
_BltMaskBitMapRastPort
	move.l	4(sp),a2
	move.w	8(sp),d6
	move.w	10(sp),d5
	move.w	12(sp),d4
	move.w	14(sp),d3
	move.w	16(sp),d2
	move.l	18(sp),a1
	move.w	22(sp),d1
	move.w	24(sp),d0
	move.l	26(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOBltBitMapRastPort(a6)

	XREF	_LVOBltPattern
	XDEF	_BltPattern
_BltPattern
	move.w	4(sp),d4
	move.w	6(sp),d3
	move.w	8(sp),d2
	move.w	10(sp),d1
	move.w	12(sp),d0
	move.l	14(sp),a0
	move.l	18(sp),a1
	move.l	_GfxBase,a6
	jmp	_LVOBltPattern(a6)

	XREF	_LVOBltTemplate
	XDEF	_BltTemplate
_BltTemplate
	move.w	4(sp),d5
	move.w	6(sp),d4
	move.w	8(sp),d3
	move.w	10(sp),d2
	move.l	12(sp),a1
	move.w	16(sp),d1
	move.w	18(sp),d0
	move.l	20(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOBltTemplate(a6)

	XREF	_LVOChangeSprite
	XDEF	_ChangeSprite
_ChangeSprite
	move.l	4(sp),a2
	move.l	8(sp),a1
	move.l	12(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOChangeSprite(a6)

	XREF	_LVOClearRectRegion
	XDEF	_ClearRectRegion
_ClearRectRegion
	move.l	4(sp),a1
	move.l	8(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOClearRectRegion(a6)

	XREF	_LVOClearRegion
	XDEF	_ClearRegion
_ClearRegion
	move.l	4(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOClearRegion(a6)

	XREF	_LVOClipBlit
	XDEF	_ClipBlit
_ClipBlit
	move.w	4(sp),d6
	move.w	6(sp),d5
	move.w	8(sp),d4
	move.w	10(sp),d3
	move.w	12(sp),d2
	move.l	14(sp),a1
	move.w	18(sp),d1
	move.w	20(sp),d0
	move.l	22(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOClipBlit(a6)

	XREF	_LVOCopySBitMap
	XDEF	_CopySBitMap
_CopySBitMap
	move.l	4(sp),a0
	move.l	_GfxBase,a6
	jmp	_LVOCopySBitMap(a6)

	XREF	_LVODisownBlitter
	XDEF	_DisownBlitter
_DisownBlitter
	move.l	_GfxBase,a6
	jmp	_LVODisownBlitter(a6)

	END
