Mercurial > sdl-ios-xcode
view src/main/beos/exports/SDL.exp @ 689:5bb080d35049
Date: Tue, 19 Aug 2003 17:57:00 +0200
From: Stephane Marchesin
Subject: Re: [SDL] [patch] MMX alpha blit patches with MMX detection
I think everything is correct now. I've done as much testing as I could,
but some real-world testing wouldn't hurt, I think.
The patch is here : http://icps.u-strasbg.fr/~marchesin/sdl_mmxblit.patch
If you do byte-by-byte comparison of the output between C and MMX
functions, you'll notice that the results for 555 and 565 RGB alpha
blits aren't exactly the same. This is because MMX functions for 555 and
565 RGB have an higher accuracy. If you want the exact same behaviour
that's possible by masking the three lower alpha bits in the MMX
functions. Just ask !
I removed one MMX function because after I fixed it to match its C
equivalent, it revealed to be slower than the C version on a PIII
(although a bit faster on an Athlon XP).
I've also added MMX and PIII replacements for SDL_memcpy. Those provide
some speed up in testvidinfo -benchmark (at least for me, under linux &
X11).
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Fri, 22 Aug 2003 05:51:19 +0000 |
parents | 12a21d82a060 |
children | 51b5e0be61c3 |
line wrap: on
line source
_SDL_Init _SDL_InitSubSystem _SDL_QuitSubSystem _SDL_WasInit _SDL_Quit _SDL_GetAppState _SDL_AudioInit _SDL_AudioQuit _SDL_AudioDriverName _SDL_OpenAudio _SDL_GetAudioStatus _SDL_PauseAudio _SDL_LoadWAV_RW _SDL_FreeWAV _SDL_BuildAudioCVT _SDL_ConvertAudio _SDL_MixAudio _SDL_LockAudio _SDL_UnlockAudio _SDL_CloseAudio _SDL_CDNumDrives _SDL_CDName _SDL_CDOpen _SDL_CDStatus _SDL_CDPlayTracks _SDL_CDPlay _SDL_CDPause _SDL_CDResume _SDL_CDStop _SDL_CDEject _SDL_CDClose _SDL_ReadLE16 _SDL_ReadBE16 _SDL_ReadLE32 _SDL_ReadBE32 _SDL_ReadLE64 _SDL_ReadBE64 _SDL_WriteLE16 _SDL_WriteBE16 _SDL_WriteLE32 _SDL_WriteBE32 _SDL_WriteLE64 _SDL_WriteBE64 _SDL_SetError _SDL_GetError _SDL_ClearError _SDL_PumpEvents _SDL_PeepEvents _SDL_PollEvent _SDL_WaitEvent _SDL_PushEvent _SDL_SetEventFilter _SDL_GetEventFilter _SDL_EventState _SDL_NumJoysticks _SDL_JoystickName _SDL_JoystickOpen _SDL_JoystickOpened _SDL_JoystickIndex _SDL_JoystickNumAxes _SDL_JoystickNumBalls _SDL_JoystickNumHats _SDL_JoystickNumButtons _SDL_JoystickUpdate _SDL_JoystickEventState _SDL_JoystickGetAxis _SDL_JoystickGetHat _SDL_JoystickGetBall _SDL_JoystickGetButton _SDL_JoystickClose _SDL_EnableUNICODE _SDL_EnableKeyRepeat _SDL_GetKeyState _SDL_GetModState _SDL_SetModState _SDL_GetKeyName _SDL_LoadObject _SDL_LoadFunction _SDL_UnloadObject _SDL_SetModuleHandle _SDL_RegisterApp _SDL_InitQuickDraw _SDL_GetMouseState _SDL_GetRelativeMouseState _SDL_WarpMouse _SDL_CreateCursor _SDL_SetCursor _SDL_GetCursor _SDL_FreeCursor _SDL_ShowCursor _SDL_CreateMutex _SDL_mutexP _SDL_mutexV _SDL_DestroyMutex _SDL_CreateSemaphore _SDL_DestroySemaphore _SDL_SemWait _SDL_SemTryWait _SDL_SemWaitTimeout _SDL_SemPost _SDL_SemValue _SDL_CreateCond _SDL_DestroyCond _SDL_CondSignal _SDL_CondBroadcast _SDL_CondWait _SDL_CondWaitTimeout _SDL_RWFromFile _SDL_RWFromFP _SDL_RWFromMem _SDL_AllocRW _SDL_FreeRW _SDL_GetWMInfo _SDL_CreateThread _SDL_ThreadID _SDL_GetThreadID _SDL_WaitThread _SDL_KillThread _SDL_GetTicks _SDL_Delay _SDL_SetTimer _SDL_AddTimer _SDL_RemoveTimer _SDL_Linked_Version _SDL_VideoInit _SDL_VideoQuit _SDL_VideoDriverName _SDL_GetVideoSurface _SDL_GetVideoInfo _SDL_VideoModeOK _SDL_ListModes _SDL_SetVideoMode _SDL_UpdateRects _SDL_UpdateRect _SDL_Flip _SDL_SetGamma _SDL_SetGammaRamp _SDL_GetGammaRamp _SDL_SetColors _SDL_SetPalette _SDL_MapRGB _SDL_MapRGBA _SDL_GetRGB _SDL_GetRGBA _SDL_CreateRGBSurface _SDL_CreateRGBSurfaceFrom _SDL_FreeSurface _SDL_LockSurface _SDL_UnlockSurface _SDL_LoadBMP_RW _SDL_SaveBMP_RW _SDL_SetColorKey _SDL_SetAlpha _SDL_SetClipRect _SDL_GetClipRect _SDL_ConvertSurface _SDL_UpperBlit _SDL_LowerBlit _SDL_FillRect _SDL_DisplayFormat _SDL_DisplayFormatAlpha _SDL_CreateYUVOverlay _SDL_LockYUVOverlay _SDL_UnlockYUVOverlay _SDL_DisplayYUVOverlay _SDL_FreeYUVOverlay _SDL_GL_LoadLibrary _SDL_GL_GetProcAddress _SDL_GL_SetAttribute _SDL_GL_GetAttribute _SDL_GL_SwapBuffers _SDL_GL_UpdateRects _SDL_GL_Lock _SDL_GL_Unlock _SDL_WM_SetCaption _SDL_WM_GetCaption _SDL_WM_SetIcon _SDL_WM_IconifyWindow _SDL_WM_ToggleFullScreen _SDL_WM_GrabInput _SDL_SoftStretch