Can I just ask the Mac developers to clarify the current status of the Allegro Intel Mac Port?
We are looking at porting the latest shareware game we are working on to the Mac and we are concerned that the Intel Mac port is not ready to allow us to do this easily.
What are the problem areas that the Mac developers are aware of?
Thank you,
Richard.
Well, I've got an intel mac and as far as I know it works as well as the PPC version. I recently checked to SVN in some stuff to build a universal binary version of the library. Contact me separately if you need any help on testing/porting.
Pete
]]>Is there a reason the mouse cursor is shown when the mouse is installed in fullscreen. I can't seem to hide it or make it go away, it's pretty annoying.
[edit]
Someone else seems to have the issue as well in the RPs other thread.
Thanks Pete. I'll see what the others say about any problems they've encountered.
]]>On the mouse thing, if I run this code (also attached)
1 | #include <allegro.h> |
2 | |
3 | int main(void) |
4 | { |
5 | allegro_init(); |
6 | install_mouse(); |
7 | install_keyboard(); |
8 | enable_hardware_cursor(); |
9 | set_gfx_mode(GFX_AUTODETECT_FULLSCREEN, 640, 480, 0, 0); |
10 | show_mouse(screen); |
11 | readkey(); |
12 | show_mouse(NULL); |
13 | readkey(); |
14 | set_gfx_mode(GFX_TEXT, 0, 0, 0, 0); |
15 | return 0; |
16 | } |
17 | END_OF_MAIN() |
The mouse cursor disappears when I press a key and doesn't come back. Have you got code where it does come back or have I misunderstood or what?
Pete
]]>What ever I did, either with Allegro calls or the Windows specific API I couldn't hide the mouse after show_mouse(screen) if it was a hardware cursor.
]]>What ever I did, either with Allegro calls or the Windows specific API
Are we still talking about Mac OSX or are you trying to blow my tiny mind
Now I come to think about it, was this a colour depth related thing? Juvinious and Runesabre, can you tell me what colour depth you're using? Does everything work with my code (in 8bpp)?
Pete
]]>Sorry! I got confused with the other thread in which I had a problem with using a hardware cursor under Windows. DOH!
]]>OK, fellows, can you try this patch (against 4.2 SVN)
(also attached)
1 | Index: src/macosx/qzmouse.m |
2 | =================================================================== |
3 | --- src/macosx/qzmouse.m (revision 7458) |
4 | +++ src/macosx/qzmouse.m (working copy) |
5 | @@ -337,7 +337,7 @@ |
6 | |
7 | if (!requested_cursor) |
8 | return -1; |
9 | - |
10 | + [NSCursor performSelectorOnMainThread: @selector(unhide) withObject: nil waitUntilDone: NO]; |
11 | osx_change_cursor(requested_cursor); |
12 | |
13 | return 0; |
14 | @@ -350,7 +350,7 @@ |
15 | */ |
16 | void osx_mouse_hide(void) |
17 | { |
18 | - osx_change_cursor(osx_blank_cursor); |
19 | + [NSCursor performSelectorOnMainThread: @selector(hide) withObject: nil waitUntilDone: NO]; |
20 | } |
I haven't checked it thoroughly but it seems to work. The underlying problem AFAICS is that it ignores custom cursors in fullscreen mode, but the mouse code (both the cross-platform and Mac specific) is pretty murky (OS cursors were not implemented nicely, I don't think)
Pete
]]>My Mac application currently runs at 32 bit. UPDATE: Tonight I figured out why I couldn't get my Mac app to run at 15bit color depth. Mac Allegro fails to create a bitmap on calls to create_system_bitmap() if the color depth is 15bit and the screen is in fullscreen. Switching to create_bitmap() seems to solve the problem.
For Mac and Linux, I use show_os_cursor(MOUSE_CURSOR_ARROW) when I want to show a system mouse and show_os_cursor(MOUSE_CURSOR_NONE) when I want to hide the ssytem mouse and use a custom mouse cursor specific to my application using my display renderer.
On Mac fullscreen, the show_os_cursor(MOUSE_CURSOR_NONE) has no affect, so I had to #define special code to not use my custom mouse when running on Mac fullscreen. If memory serves correctly (it's been a couple months since I grappled with the mouse issue), calls to show_mouse() and scare/unscare mouse didn't seem to do anything on Mac fullscreen.
When I run in Mac windowed mode, the call to show_os_cursor(MOUSE_CURSOR_NONE) works.
Overall, the Allegro mouse code seems squirrely in general. On Windows, I have to use the show_mouse(), scare/unscare_mouse() calls to get the results I want in fullscreen and window. show_os_cursor() doesn't seem to produce correct results. At least not consistent results as I get on Linux or Mac.
]]>yes. allegro works. so your app can be a Universal PPC\Core Duo.
]]>