Rev 868 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
808 | serge | 1 | |
2 | |||
3 | |||
4 | |||
876 | serge | 5 | |
808 | serge | 6 | #include "accel_2d.h" |
7 | |||
8 | |||
9 | |||
10 | |||
11 | |||
12 | |||
876 | serge | 13 | |
815 | serge | 14 | |
876 | serge | 15 | |
16 | void STDCALL (*SelectHwCursor)(cursor_t*)__asm__("SelectHwCursor"); |
||
808 | serge | 17 | void STDCALL (*SetHwCursor)(cursor_t*,int x,int y)__asm__("SetHwCursor"); |
18 | void STDCALL (*HwCursorRestore)(int x, int y)__asm("HwCursorRestore"); |
||
19 | cursor_t* IMPORT (*HwCursorCreate)(void)__asm("HwCursorCreate"); //params eax, ebx, ecx |
||
20 | |||
21 | |||
22 | void (__stdcall *old_set)(cursor_t*,int x,int y); |
||
23 | void (__stdcall *old_restore)(int x, int y); |
||
24 | cursor_t* (*old_create)(void); |
||
25 | cursor_t* __create_cursor(void); |
||
26 | */ |
||
876 | serge | 27 | |
808 | serge | 28 | |
811 | serge | 29 | |
808 | serge | 30 | |
31 | { |
||
32 | RHDPtr rhdPtr; |
||
33 | u32 retval; |
||
34 | |||
35 | |||
36 | |||
37 | |||
38 | return 0; |
||
39 | |||
40 | |||
41 | { |
||
42 | printf("Can't open /rd/1/drivers/ati2d.log\nExit\n"); |
||
43 | return 0; |
||
44 | } |
||
45 | |||
46 | |||
47 | { |
||
48 | dbgprintf("Device not found\n"); |
||
49 | return 0; |
||
50 | }; |
||
51 | |||
52 | |||
53 | { |
||
54 | if(rhd.memBase[i]) |
||
55 | dbgprintf("Memory base_%d 0x%x size 0x%x\n", |
||
56 | i,rhd.memBase[i],(1< |
||
57 | }; |
||
58 | for(i=0;i<6;i++) |
||
59 | { |
||
60 | if(rhd.ioBase[i]) |
||
61 | dbgprintf("Io base_%d 0x%x size 0x%x\n", |
||
62 | i,rhd.ioBase[i],(1< |
||
63 | }; |
||
64 | if(!RHDPreInit()) |
||
65 | return 0; |
||
66 | |||
67 | |||
68 | // old_set = SetHwCursor; |
||
69 | // old_restore = HwCursorRestore ; |
||
70 | // old_create = HwCursorCreate; |
||
71 | |||
72 | |||
73 | rhd.has_tcl = 1; |
||
813 | serge | 74 | // Init3DEngine(&rhd); |
868 | serge | 75 | |
808 | serge | 76 | |
77 | |||
78 | |||
79 | // SetHwCursor = r500_SetCursor; |
||
80 | // HwCursorCreate = __create_cursor; |
||
81 | // HwCursorRestore = r500_CursorRestore; |
||
82 | |||
83 | |||
84 | dbgprintf("reg service %s as: %x\n", "HDRAW", retval); |
||
85 | |||
86 | |||
87 | return retval; |
||
88 | }; |
||
89 | |||
90 | |||
91 | |||
92 | |||
93 | |||
94 | |||
95 | |||
876 | serge | 96 | int _stdcall srv_cursor(ioctl_t *io) |
808 | serge | 97 | { |
98 | u32 *inp; |
||
99 | u32 *outp; |
||
100 | |||
101 | |||
102 | outp = io->output; |
||
103 | |||
104 | |||
105 | { |
||
106 | case SRV_GETVERSION: |
||
107 | if(io->out_size==4) |
||
108 | { |
||
109 | *(u32*)io->output = API_VERSION; |
||
110 | return 0; |
||
111 | } |
||
112 | break; |
||
113 | |||
114 | |||
115 | return ERR_PARAM; |
||
116 | }; |
||
117 | return ERR_PARAM; |
||
118 | } |
||
119 | */ |
||
876 | serge | 120 | |
808 | serge | 121 | |
122 | { |
||
123 | u32 *inp; |
||
124 | u32 *outp; |
||
125 | |||
126 | |||
127 | outp = io->output; |
||
128 | |||
129 | |||
130 | { |
||
131 | case SRV_GETVERSION: |
||
132 | if(io->out_size==4) |
||
133 | { |
||
134 | *outp = API_VERSION; |
||
135 | return 0; |
||
136 | } |
||
137 | break; |
||
138 | |||
139 | |||
140 | if(io->inp_size==6) |
||
817 | serge | 141 | return DrawRect((draw_t*)inp); |
808 | serge | 142 | break; |
143 | |||
144 | |||
810 | serge | 145 | if(io->inp_size==9) |
817 | serge | 146 | return FillRect((fill_t*)inp); |
810 | serge | 147 | break; |
148 | /* |
||
876 | serge | 149 | case LINE_2P: |
808 | serge | 150 | if(io->inp_size==6) |
876 | serge | 151 | return Line2P((draw_t*)inp); |
152 | break; |
||
808 | serge | 153 | |
154 | |||
810 | serge | 155 | if(io->inp_size==6) |
156 | return Blit((blit_t*)inp); |
||
157 | break; |
||
808 | serge | 158 | |
159 | |||
813 | serge | 160 | if(io->inp_size==6) |
161 | return RadeonComposite((blit_t*)inp); |
||
162 | break; |
||
163 | */ |
||
876 | serge | 164 | case PX_CREATE: |
165 | if(io->inp_size==7) |
||
166 | return CreatePixmap((pixmap_t*)inp); |
||
167 | break; |
||
815 | serge | 168 | |
813 | serge | 169 | |
815 | serge | 170 | if(io->inp_size==8) |
171 | return PixBlit((pixblit_t*)inp); |
||
172 | break; |
||
173 | |||
174 | |||
876 | serge | 175 | // if(io->inp_size==6) |
176 | // return LockPixmap((userpixmap_t*)inp); |
||
177 | // break; |
||
178 | |||
817 | serge | 179 | |
876 | serge | 180 | // if(io->inp_size==6) |
181 | // return UnlockPixmap((userpixmap_t*)inp); |
||
182 | // break; |
||
183 | |||
818 | serge | 184 | |
829 | serge | 185 | if(io->inp_size==6) |
186 | return DestroyPixmap((pixmap_t*)inp); |
||
876 | serge | 187 | break; |
829 | serge | 188 | |
189 | |||
190 | if(io->inp_size==8) |
||
191 | return TransBlit((pixblit_t*)inp); |
||
192 | break; |
||
193 | |||
194 | |||
195 | |||
808 | serge | 196 | return ERR_PARAM; |
197 | }; |
||
198 | return ERR_PARAM; |
||
199 | } |
||
200 | |||
201 | |||
202 | |||
203 | #include "pci.c" |
||
204 | #include "ati_mem.c" |
||
205 | //#include "cursor.inc" |
||
817 | serge | 206 | |
808 | serge | 207 | |
208 | |||
876 | serge | 209 | |
210 | #include "accel_2d.inc" |
||
808 | serge | 211 | #include "accel_3d.inc" |
811 | serge | 212 | > |
808 | serge | 213 | |
214 |