view README.AmigaOS @ 3877:81f66f258d77 SDL-1.2

Fixed bug #281 ------- Comment #2 From Christian Walther 2006-07-23 07:37 [reply] ------- Wow, that was an interesting bug to chase. It was a timing issue: it seems that for some reason, a certain time must pass between ShowMenuBar() being called in QZ_UnsetVideoMode() and the application quitting. Before rev. 1885, this delay was provided by the slow hand-coded fade. With the asynchronous Core Graphics fading introduced in rev. 1885, that delay was no longer present (most of the time) and the bug became apparent. Adding an SDL_Delay(100) somewhere between ShowMenuBar() and the end of QZ_VideoQuit() lowered the frequency of the bug appearing from "almost every time" to "very rarely" here. However, there is another solution: doing the ShowMenuBar() before releasing the captured display instead of afterwards. Apparently, no delay is necessary in that case, and it looks nicer to me anyway because it is the reverse order of the way things are set up in the beginning: capture display - set video mode - hide menu bar - ... - show menu bar - reset video mode - release captured display. So, this is what the attached patch does. In addition, I've taken the liberty of - removing some unused code that I forgot to remove in rev. 1885, - fixing two warnings about undeclared functions in SDL_QuartzVideo.m by including OpenGL.h (whose name is a bit misleading - it only declares CGL stuff, so there's no interference with SDL_opengl.h).
author Sam Lantinga <slouken@libsdl.org>
date Sun, 24 Sep 2006 01:27:40 +0000
parents 75a95f82bc1f
children 6d2e1961661a
line wrap: on
line source

This is the porting of 1.2.0 version of SDL (the latest stable one)
to AmigaOS/68k.

All the bugs known of the past version have been corrected. And I've
added all the new SDL features.

This version of SDL needs Cybergraphx V3 (r69+) or CyberGraphX V4
and AHI v3+. Probably it works also with P96 or CGXAga, but it's 
untested.

This version is available as linked library for SAS/C and GCC, only 68k this 
time, a powerup (ppcemu compatible) and a morphos version will be ready quite 
soon (i hope).

Implemented:

- 8/16/24/32bit video modes, both fullscreen and windowed.
- Hardware surfaces.
- CGX blitting acceleration.
- CGX colorkey blitting acceleration.
- AHI audio (8/16 bit, with any audio format), always uses unit 0 for now.
- Thread support (maybe not 100% compatible with other implementations)
- Semaphores 
- Window resizing and backdrop windows (NEW)
- Joystick/Joypad support.

To do:

- CDRom audio playing support
- OpenGL (A guy was working on it but I've lost his tracks :( )

The SAS/C library is distributed with debug info attached, to strip debug info 
simply add STRIPDEBUG argument to the linker.

NOTE: SDL includes debug output using kprintf, to disable it add to your 
project a function like this:

void kprintf(char *a,...)
{
}

Otherwise you can redirect the debug to a console window with sushi, sashimi or
similar tools (the default output is the internal serial port). 

For info, support, bugfix and other feel free to mail me:

Gabriele Greco (gabriele.greco@aruba.it)

You can find also a small SDL Amiga page at:
http://ggreco.interfree.it/sdl.html