Mercurial > sdl-ios-xcode
annotate src/hermes/mmx_main.asm @ 19:8cc4dbfab9ab
Date: Thu, 19 Apr 2001 08:36:54 +0300
From: "Mike Gorchak" <mike@malva.com.ua>
Subject: Patches for QNX RtP
Here my patch for QNX RtP/Photon for SDL-1.2.
Detailed description of my changes:
SDL/configure.in:
If Photon detected declare define ENABLE_PHOTON.
SDL/src/video/SDL_sysvideo.h:
Added extern to ph_bootstrap.
SDL/src/video/SDL_video.c:
Added ph_bootstrap to bootstrap array.
SDL/src/video/photon/SDL_ph_events.c:
Declare DISABLE_X11 if compiled for Photon.
SDL/src/video/photon/SDL_ph_image.c:
Fixed segment violation on exit. Please update BUGS file.
SDL/src/video/photon/SDL_ph_video.c:
1. Enabling window manager.
2. Added to device capabilities Photon Window Manager functions:
SetCaption and IconifyWindow.
3. Renamed X11_bootstrap to ph_bootstrap.
4. Removed SEGFAULT termination of programs if Photon not available.
SDL/src/video/photon/SDL_ph_wm.c:
1. Declare DISABLE_X11 if compiled for Photon.
2. Added ph_SetCaption and ph_IconifyWindow code. (Thanks to
'phearbear' for iconify window source).
3. Some stubers for other wm functions.
Thanks !
----------------------------
Mike Gorchak
CJSC Malva
System Programmer
author | Sam Lantinga <slouken@lokigames.com> |
---|---|
date | Thu, 10 May 2001 18:42:17 +0000 |
parents | 74212992fb08 |
children | da33b7e6d181 |
rev | line source |
---|---|
0 | 1 ; |
2 ; mmx format converter main loops for HERMES | |
3 ; Some routines Copyright (c) 1998 Christian Nentwich (c.nentwich@cs.ucl.ac.uk) | |
4 ; This source code is licensed under the GNU LGPL | |
5 ; | |
6 ; Please refer to the file COPYING.LIB contained in the distribution for | |
7 ; licensing conditions | |
8 ; | |
9 | |
10 BITS 32 | |
11 | |
12 GLOBAL _ConvertMMX | |
13 GLOBAL _mmxreturn | |
14 | |
15 | |
16 SECTION .text | |
17 | |
18 ;; _ConvertMMX: | |
19 ;; [ESP+8] ConverterInfo* | |
20 ;; -------------------------------------------------------------------------- | |
21 ;; ConverterInfo (ebp+..) | |
22 ;; 0: void *s_pixels | |
23 ;; 4: int s_width | |
24 ;; 8: int s_height | |
25 ;; 12: int s_add | |
26 ;; 16: void *d_pixels | |
27 ;; 20: int d_width | |
28 ;; 24: int d_height | |
29 ;; 28: int d_add | |
30 ;; 32: void (*converter_function)() | |
31 ;; 36: int32 *lookup | |
32 | |
33 _ConvertMMX: | |
34 push ebp | |
35 mov ebp,esp | |
36 | |
37 ; Save the registers used by the blitters, necessary for optimized code | |
38 pusha | |
39 | |
40 mov eax,[ebp+8] | |
41 | |
42 cmp dword [eax+4],BYTE 0 | |
43 je endconvert | |
44 | |
45 mov ebp,eax | |
46 | |
47 mov esi,[ebp+0] | |
48 mov edi,[ebp+16] | |
49 | |
50 y_loop: | |
51 mov ecx,[ebp+4] | |
52 | |
53 jmp [ebp+32] | |
54 | |
55 _mmxreturn: | |
56 add esi,[ebp+12] | |
57 add edi,[ebp+28] | |
58 | |
59 dec dword [ebp+8] | |
60 jnz y_loop | |
61 | |
62 | |
63 ; Restore the registers used by the blitters, necessary for optimized code | |
64 popa | |
65 | |
66 pop ebp | |
67 | |
68 endconvert: | |
69 emms | |
70 | |
71 ret | |
72 | |
73 | |
74 |