;
; sculptrix.s
;
; Sculptrix SWI interface
;
;  1997-1998 Straylight
;

;----- Licensing note -------------------------------------------------------
;
; This file is part of Straylight's Sculptrix.
;
; Sculptrix is free software; you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation; either version 2, or (at your option)
; any later version.
;
; Sculptrix is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
; GNU General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with Sculptrix.  If not, write to the Free Software Foundation,
; 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

;----- Standard header ------------------------------------------------------

		GET	libs:header
		GET	libs:swis

		GET	libs:stream

;----- Main code ------------------------------------------------------------

		AREA	|C$$code|,CODE,READONLY

; --- sculptrix_redrawWindow ---

		EXPORT	sculptrix_redrawWindow
sculptrix_redrawWindow
		MOV	R12,R14
		MOV	R1,R0
		SWI	XSculptrix_RedrawWindow
		MOVVC	R0,#0
		MOVS	PC,R12

; --- sculptrix_doSlab ---

		EXPORT	sculptrix_doSlab
sculptrix_doSlab
		MOV	R12,R14
		SWI	XSculptrix_DoSlab
		MOVVSS	PC,R12
		CMP	R3,#0
		STRNE	R2,[R3]
		MOV	R0,#0
		MOVS	PC,R12

; --- sculptrix_slabIcon ---

		EXPORT	sculptrix_slabIcon
sculptrix_slabIcon
		MOV	R12,R14
		SWI	XSculptrix_SlabIcon
		MOVVC	R0,#0
		MOVS	PC,R12

; --- sculptrix_unslabIcon ---

		EXPORT	sculptrix_unslabIcon
sculptrix_unslabIcon
		MOV	R12,R14
		MOV	R2,R0
		SWI	XSculptrix_UnslabIcon
		MOVVC	R0,#0
		MOVS	PC,R12

; --- sculptrix_boundingBox ---

		EXPORT	sculptrix_boundingBox
sculptrix_boundingBox
		MOV	R12,R14
		MOV	R1,R0
		SWI	XSculptrix_BoundingBox
		MOVVS	R0,#0
		MOVS	PC,R12

; --- sculptrix_plotIcon ---

		EXPORT	sculptrix_plotIcon
sculptrix_plotIcon
		MOV	R12,R14
		SWI	XSculptrix_PlotIcon
		MOVVC	R0,#0
		MOVS	PC,R12

; --- sculptrix_plotGroupBox ---

		EXPORT	sculptrix_plotGroupBox
sculptrix_plotGroupBox
		MOV	R12,R14
		MOV	R3,R2
		MOV	R2,#0
		SWI	XSculptrix_PlotGroupBox
		MOVVC	R0,#0
		MOVS	PC,R12

; --- sculptrix_setSpriteArea ---

		EXPORT	sculptrix_setSpriteArea
sculptrix_setSpriteArea
		MOV	R12,R14
		CMP	R0,#0
		MOVEQ	R0,#1
		SWI	XSculptrix_SetSpriteArea
		MOVVC	R0,#0
		MOVS	PC,R12

; --- sculptrix_updateIcon ---

		EXPORT	sculptrix_updateIcon
sculptrix_updateIcon
		MOV	R12,R14
		SWI	XSculptrix_UpdateIcon
		MOVVC	R0,#0
		MOVS	PC,R12

; --- sculptrix_slabColour ---

		EXPORT	sculptrix_slabColour
sculptrix_slabColour
		MOV	R12,R14
		SWI	XSculptrix_SlabColour
		MOVVS	R0,#14
		MOVVC	R0,R2
		MOVS	PC,R12

; --- sculptrix_setConfig ---

		EXPORT	sculptrix_setConfig
sculptrix_setConfig
		MOV	R12,R14
		SWI	XSculptrix_SetConfig
		MOVCS	R0,#1
		MOVCC	R0,#0
		MOVVS	R0,#0
		MOVS	PC,R12

; --- sculptrix_readConfig ---

		EXPORT	sculptrix_readConfig
sculptrix_readConfig
		MOV	R12,R14
		SWI	XSculptrix_ReadConfig
		MOVVC	R0,#0
		MOVS	PC,R12

;----- That's all, folks ----------------------------------------------------

		END
