Commit Graph

1080 Commits

Author SHA1 Message Date
Patrice Mandin
3441262a3d Forgot enumeration value for Atari clones 2005-06-25 18:21:13 +00:00
Ryan C. Gordon
cd3bfd9c92 Patch from Antonio SJ Musumeci:
"
This code with SDL-1.2.8 and CVS:

#include <stdio.h>
#include <stdlib.h>
#include <SDL.h>

int
main(int argc, char** argv)
{
   char alphabet[26] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
   char buffer_file[27] = {0};
   char buffer_mem[27]  = {0};
   int rv_file;
   int rv_mem;
   FILE* file_ptr;
   SDL_RWops* rwop_file;
   SDL_RWops* rwop_mem;

   file_ptr = fopen("./blah", "w");
   fwrite(alphabet, 1, sizeof(alphabet), file_ptr);
   fclose(file_ptr);

   rwop_mem  = SDL_RWFromMem(alphabet, sizeof(alphabet));
   rwop_file = SDL_RWFromFile("./blah", "r");
   rv_mem  = SDL_RWread(rwop_mem , buffer_mem,  5, 6);
   rv_file = SDL_RWread(rwop_file, buffer_file, 5, 6);
   printf("From File: %d %s\n"
          "From Mem:  %d %s\n",
	 rv_file,
	 buffer_file,
	 rv_mem,
	 buffer_mem);
   printf("Seek end of File: %d\n"
	 "Seek end of Mem:  %d\n",
	 SDL_RWseek(rwop_file, 0, SEEK_END),
	 SDL_RWseek(rwop_mem , 0, SEEK_END));
   SDL_RWclose(rwop_file);
   SDL_RWclose(rwop_mem);

   return 0;
}


Produces this output:

 From File: 5 ABCDEFGHIJKLMNOPQRSTUVWXYZ
 From Mem:  5 ABCDEFGHIJKLMNOPQRSTUVWXY
Seek end of File: 26
Seek end of Mem:  26
"

--ryan.
2005-06-24 12:48:38 +00:00
Ryan C. Gordon
4fc45bbcb3 The Darwin/MacOSX joystick code is largely copied from the HID Utilities
package...make the symbols defined by HID Utilities static inside SDL so that
 an app can link against their own copy of this package without symbol clash.
2005-06-15 23:41:57 +00:00
Patrice Mandin
e23ba20761 [PATCH] SDL_GetVideoMode() do not find the best video mode
The current GetVideoMode() function stops at the first mode which has any
dimensions smaller than the one asked, and gives the previous in the list.

If I ask 336x224 with this list:
768x480 768x240 640x400 640x200 384x480 384x240 320x400 320x200
SDL will give me 640x400, because 640x200 as height smaller than what I
asked.

However the best mode is the smaller which has both dimensions bigger
than the one asked (384x240 in my example).

This patch fixes this, plus it does not rely on a sorted video mode list.
2005-06-12 16:12:55 +00:00
Patrice Mandin
e6e533fa79 Use wrong line length of menubar save buffer 2005-06-07 13:30:06 +00:00
Patrice Mandin
32d4d4110d Save/restore system palette when application topped/untopped 2005-06-07 11:52:46 +00:00
Patrice Mandin
48c857dd70 Another forgotten variable declaration 2005-06-06 21:50:26 +00:00
Patrice Mandin
45652dfa71 Use correct system function to free memory 2005-06-06 16:54:03 +00:00
Patrice Mandin
4eb52e30d3 SDL will center surface on screen for us 2005-06-06 16:36:18 +00:00
Patrice Mandin
ae2868b551 Forgot variable declaration 2005-06-06 10:45:53 +00:00
Patrice Mandin
107ff0e226 Restore and save menu bar when entering and exiting fullscreen mode 2005-06-06 10:27:22 +00:00
Patrice Mandin
767354efbc Can not grab mouse 2005-06-06 10:26:40 +00:00
Patrice Mandin
6d52440ebd Better mouse lose/gain focus 2005-06-03 08:18:55 +00:00
Patrice Mandin
70dc3b7541 Resize window to fit asked video mode 2005-06-02 22:02:18 +00:00
Patrice Mandin
164ae65418 Enable/disable mouse focus 2005-06-02 22:00:48 +00:00
Patrice Mandin
da80b56f66 Add Centscreen extended modes support 2005-05-31 12:31:11 +00:00
Patrice Mandin
6aa48c2098 Used wrong offset in joystick packet 2005-05-20 20:37:28 +00:00
Sam Lantinga
65f934caa3 Date: Tue, 22 Mar 2005 23:50:20 +0100
From: Johannes Schmidt
Subject: [PATCH] Re: [SDL] SDL 1.2.8 Prerelease

On Saturday 18 December 2004 13:59, Stephane Marchesin wrote:
> >#error "The kernel sources in /usr/src/linux are not yet configured."
> >#error "Please run 'make cloneconfig && make dep' in /usr/src/linux/"
> >#error "to get a kernel that is configured like the running kernel."
> >#error "Alternatively, you can copy one of the config files"
> >#error "arch/$ARCH/defconfig.* to .config, and run"
> >#error "'make oldconfig && make dep' to configure the kernel"
> >#error "for that configuration."
> >-
>
> That's the Suse kernel sources...
> I think the only way out is to add a test in ./configure

Attached is a patch (it works for me[TM]) which adds a CheckLinuxVersion() to
configure.in and a check for HAVE_LINUX_VERSION_H to
src/cdrom/linux/SDL_syscdrom.c.
2005-05-20 07:34:34 +00:00
Patrice Mandin
28537e936f Add Falcon Centscreen extension support 2005-05-18 17:02:17 +00:00
Sam Lantinga
ac083458a7 Support SDL_VIDEO_X11_NODIRECTCOLOR for OpenGL visuals 2005-05-16 08:23:34 +00:00
Sam Lantinga
ff6c2a4bfd Date: Tue, 10 May 2005 22:15:25 +0100
From: Peter Naulls
Subject: RISC OS SDL patch

Some of the RISC OS audio code is no longer used do to the switch to
/dev/dsp, and can be removed as per the attached diff.
2005-05-16 07:43:46 +00:00
Sam Lantinga
fd3a818739 Eh, more correct. 2005-05-16 05:55:17 +00:00
Sam Lantinga
8a68142a92 Date: Mon, 02 May 2005 04:23:16 -0500
From: Jonathan Atkins
Subject: Re: [PATCH] *CRITICAL* 8bit direct RGB palette not being created

I think that SDL_AllocFormat should create the palette for all 8bit
surfaces.  And when the RGBAmasks match the normal 3:3:2:0 we need to
apply the old behavior.  If the mask doesn't match that, then we need
to make the right palette assuming the masks are valid (I don't think
we validate any masks for high color surfaces...so we wouldn't here)
Then there's always a palette available for the 8bit surfaces.
This restores the normal behavior and allows for masks to create
palettes automatically for odd masks even, which would be a neato
thing to have in there, as SDL never did this before.
2005-05-16 05:34:58 +00:00
Sam Lantinga
aac57c52e5 *** empty log message *** 2005-05-16 04:45:07 +00:00
Sam Lantinga
7ffdecda54 *** empty log message *** 2005-05-08 19:58:34 +00:00
Patrice Mandin
6291ed8ecf Add support for ARAnyM Atari emulator 2005-05-05 10:52:22 +00:00
Ryan C. Gordon
c2e4e74ef7 Patched to compile again on x86 systems that use the assembly blitters. 2005-04-20 05:57:39 +00:00
Ryan C. Gordon
b03c155abb Some work on using accelerated alpha blits with hardware surfaces.
From Stephane Marchesin's fork, don't know who originally wrote it.
2005-04-17 10:40:41 +00:00
Ryan C. Gordon
c04dafcbf9 SDL_CDOpen() fails on Linux if data track on disc is mounted in the
filesystem. Removing O_EXCL from open() call fixes this.

Problem and solution noted by "Fosters":
 http://www.libsdl.org/pipermail/sdl/2005-March/068028.html
2005-04-17 10:36:03 +00:00
Ryan C. Gordon
0374a15398 Holding down shift while moving the mouse's scrollwheel on MacOS X makes the
OS report these are "horizontal scrollwheel" events, which confuses gaming
 apps in several legitimate conditions. Now all scrollwheel events are made
 to look vertical when passed to the app.

Patch by John Knottenbelt.

 http://www.libsdl.org/pipermail/sdl/2005-March/067978.html
2005-04-17 10:32:41 +00:00
Ryan C. Gordon
64e340141a Mixer: Visual C MMX asm code now aligns loops to 16 bytes.
This patch came from Stephane Marchesin's codefork, but I don't know who
 wrote it originally.
2005-04-17 10:27:00 +00:00
Ryan C. Gordon
944dc01b12 Fixed direction key input on WinCE devices, thanks to
cal-at-splitreflection-com.

http://www.libsdl.org/pipermail/sdl/2005-April/068072.html
2005-04-17 10:23:58 +00:00
Ryan C. Gordon
eb4de39871 Altivec-optimized blitters!
Vast majority of this work is compliments of Bob Ippolito.

http://www.devolution.com/pipermail/sdl/2005-February/067466.html and many
 other posts.
2005-04-17 10:19:22 +00:00
Ryan C. Gordon
af505fdcfa Added some parentheses for a little more macro safety. Recommended by Petri
Kero, here: http://www.devolution.com/pipermail/sdl/2005-March/067630.html
2005-04-17 10:16:30 +00:00
Patrice Mandin
ceeecf9382 Release CPU when waiting 2005-04-01 15:19:26 +00:00
Patrice Mandin
6eccd4db50 Optimize also for 68020 and higher CPUs 2005-03-30 12:38:03 +00:00
Patrice Mandin
412bbf11e1 Disable debug code 2005-03-07 10:09:21 +00:00
Patrice Mandin
a118483d79 Dynamically create list of video modes, easier to add new ones 2005-03-07 10:00:58 +00:00
Patrice Mandin
a0dc766fb6 Was using width of surface instead of pitch to calculate length of surface width in words 2005-03-02 17:17:26 +00:00
Patrice Mandin
4de6d491f3 Preliminary support for Blowup and Screen Blaster 3 extensions on Atari Falcon 030 2005-02-22 17:57:40 +00:00
Ryan C. Gordon
54d5471cf7 Added testblitspeed to aid in profiling of SDL's blitters. 2005-02-15 11:50:33 +00:00
Sam Lantinga
b3f31e84a4 Ugly hack to make this work with gcc 2.x and 3.x
Thanks to Stephane Marchesin for the dirty dirty work.
2005-02-13 07:10:02 +00:00
Sam Lantinga
b2da79f8be Date: Tue, 01 Feb 2005 17:53:07 -0800
From: Bill May
Subject: [SDL] Diffs for dsp audio in case of failures.

The rewrite recently done for 1.2.8 forgot to handle error cases
by closing the audio.

Here is a patch that does.
2005-02-12 19:39:08 +00:00
Sam Lantinga
0998846e2c [SDL] [PATCH] fix FB_VideoQuit for ia64
Jesse Barnes
Fri Jan 14 11:13:54 PST 2005

I noticed that on my ia64 machine when SDL_Quit was called, the machine would
hang in weird ways.  It turned out to be caused by a machine check in the
memset() call near the top of FB_VideoQuit.  Generally memset shouldn't be
used on I/O regions like the framebuffer or other I/O device memory (the
Linux kernel has special routines for dealing with I/O memory), so I changed
the #ifdef __powerpc__ to #if defined(__powerpc__) || defined(__ia64__) and
SDL_Quit now works properly.  The change should probably be made
unconditional though since doing one byte at a time is the only way to be
portable, afaik.
2005-02-12 18:03:54 +00:00
Sam Lantinga
f37d4736d9 Date: Wed, 26 Jan 2005 13:37:09 GMT
From: Peter Naulls
Subject: RISC OS SDL Patches

Sam, I've attached a diff of the latest changes to libSDL for RISC OS
support.  These changes are by Alan Buckley and myself.

The most significant of these are:

  Optimised assembler blit rountines - I've attached the file
   src/video/riscos/SDL_riscosASM.s which is needed for this.

  Move to using /dev/dsp instead of its own audio implementation.
  This means that src/audio/riscos/SDL_drenderer.c should be removed

  Typo fixes.  Mainly correct spelling of "RISC OS", but some from elsewhere
  too.
2005-02-12 18:01:31 +00:00
Patrice Mandin
7aad2096cd clear convert.buf before filling it 2005-01-29 09:58:40 +00:00
Sam Lantinga
e69d32a51d The fix is going back in. :) 2005-01-25 17:58:44 +00:00
Sam Lantinga
3378f9fe8a Date: Mon, 24 Jan 2005 21:37:56 +0800
From: Chris Taylor
Subject: Patch to put back dynamic OpenGL loading for MPW

I sent a patch a while ago that removes dynamic OpenGL loading for
Macintosh Programmer's Workshop. Dynamic loading DOES actually work
when an SDL program is built with MPW, it just has to be set up for it.
(Whoops!!) This is the ideal way to get OpenGL extensions to work,
which D2X uses quite a few of.

This patch puts dynamic loading back in SDL for Mac OS 9. It applies to
current CVS. I noticed that two members need to be set when
DrawSprocket is used.
2005-01-25 16:57:11 +00:00
Sam Lantinga
ec15ddd4df Date: Sun, 16 Jan 2005 19:20:15 +0100
From: Stephane Marchesin
To: Kirill Ponomarew
Subject: [SDL] Problem on x86_64 with latest CVS (Re: sdl12 with gcc-2.95)

>-I../../src -I../../src/main/freebsd -I../../src/audio
>-I../../src/video -I../../src/video/XFree86/extensions
>-I../../src/events -I../../src/joystick -I../../src/cdrom
>-I../../src/thread -I../../src/timer -I../../src/endian
>-I../../src/file -I../../src/thread -MT SDL_endian.lo -MD -MP -MF
>.deps/SDL_endian.Tpo -c SDL_endian.c  -fPIC -DPIC -o
>.libs/SDL_endian.o
>{standard input}: Assembler messages:
>{standard input}:144: Error: suffix or operands invalid for `xchg'
>*** Error code 1
>
That's a totally different problem. This was introduced in CVS 4 days ago :
http://www.libsdl.org/cgi/cvsweb.cgi/SDL12/include/SDL_endian.h.diff?r1=1.11\
&r2=1.12

Just revert this patch.
2005-01-18 18:40:48 +00:00
Sam Lantinga
12274bb72e Date: Sat, 15 Jan 2005 15:06:01 -0600
From: Tyler Montbriand
Subject: [SDL] minor bugfix for test/testoverlay2.c

Programs that use malloc ought to #include <stdlib.h> .  On 32-bit systems you
can get away with not including it, but on 64-bit systems it will assume
malloc() returns a 32-bit integer and butcher the 64-bit pointers it returns.
2005-01-18 18:32:10 +00:00