Initial revision
[ssr] / StraySrc / Libraries / Steel / s / sculptrix
1 ;
2 ; sculptrix.s
3 ;
4 ; Interface to Sculptrix SWIs
5 ;
6 ; © 1994-1998 Straylight
7 ;
8
9 ;----- Licensing note -------------------------------------------------------
10 ;
11 ; This file is part of Straylight's Steel library.
12 ;
13 ; Steel is free software; you can redistribute it and/or modify
14 ; it under the terms of the GNU General Public License as published by
15 ; the Free Software Foundation; either version 2, or (at your option)
16 ; any later version.
17 ;
18 ; Steel is distributed in the hope that it will be useful,
19 ; but WITHOUT ANY WARRANTY; without even the implied warranty of
20 ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 ; GNU General Public License for more details.
22 ;
23 ; You should have received a copy of the GNU General Public License
24 ; along with Steel. If not, write to the Free Software Foundation,
25 ; 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
26
27 GET libs:header
28 GET libs:swis
29
30 AREA |C$$Code|,CODE,READONLY
31
32 IMPORT visdelay_suspend
33 IMPORT visdelay_resume
34
35 EXPORT sculptrix_redrawWindow
36 sculptrix_redrawWindow
37 MOV a2,a1
38 SWI XSculptrix_RedrawWindow
39 MOVVC a1,#0
40 MOVS pc,lr
41
42 EXPORT sculptrix_doSlab
43 sculptrix_doSlab
44 SWI XSculptrix_DoSlab
45 MOVVSS pc,lr
46 CMP a4,#0
47 STRNE a3,[a4]
48 MOV a1,#0
49 MOVS pc,lr
50
51 EXPORT sculptrix_slabIcon
52 sculptrix_slabIcon
53 SWI XSculptrix_SlabIcon
54 MOVVC a1,#0
55 MOVS pc,lr
56
57 EXPORT sculptrix_unslabIcon
58 sculptrix_unslabIcon
59 MOV ip,sp
60 STMFD sp!,{v1,fp,ip,lr,pc}
61 SUB fp,ip,#4
62
63 SUB sp,sp,#8
64 MOV v1,a1
65 MOV a1,sp
66 BL visdelay_suspend
67 MOV a3,v1
68 SWI XSculptrix_UnslabIcon
69 MOVVC v1,#0
70 MOVVS v1,a1
71 LDMIA sp!,{a1,a2}
72 BL visdelay_resume
73 MOV a1,v1
74 LDMDB fp,{v1,fp,sp,pc}^
75
76 EXPORT sculptrix_boundingBox
77 sculptrix_boundingBox
78 MOV a2,a1
79 SWI XSculptrix_BoundingBox
80 MOVS pc,lr
81
82 EXPORT sculptrix_plotIcon
83 sculptrix_plotIcon
84 SWI XSculptrix_PlotIcon
85 MOVVC a1,#0
86 MOVS pc,lr
87
88 EXPORT sculptrix_plotGroupBox
89 sculptrix_plotGroupBox
90 SWI XSculptrix_PlotGroupBox
91 MOVVC a1,#0
92 MOVS pc,lr
93
94 EXPORT sculptrix_setSpriteArea
95 sculptrix_setSpriteArea
96 SWI XSculptrix_SetSpriteArea
97 MOVVC a1,#0
98 MOVS pc,lr
99
100 EXPORT sculptrix_updateIcon
101 sculptrix_updateIcon
102 SWI XSculptrix_UpdateIcon
103 MOVVC a1,#0
104 MOVS pc,lr
105
106 EXPORT sculptrix_slabColour
107 sculptrix_slabColour
108 SWI XSculptrix_SlabColour
109 MOV a1,a3
110 MOVS pc,lr
111
112 END