I’d love to help with MacSDL
I’m James Turner, CS student in Edinburgh. I’m currently learning SDl, cause
I’m working on an OSS project (for Linux initially) and don’t know X at all
I think I can see how to hammer DrawSprorcket underneath to get fullscreen
modes, pafe-fliping in hardware. Also hooking in the Mac threads manager and
sempahores should not be too hard, once I learn it :).
Right now, however, the basic Mac library is blowing up at HW Surface Lock.
I’m confused by the code, becuase you’re using GetGWorldPixMaps, and also
LockPixels(), both of which should only work on GWorlds. All you have is a
GDevice and a Window.
Knowing apple, the calls do work, once they detect there’s no 'official’
GWorld there. However, most people in Mac land just grab the baseAddr from the
portPixMap of the window and starting blitting.
What’s currently f**ing up is that the ‘portRect’ of the system (which is used
to offset by the origin) is return nonsene values (-68, which is possible
(likely, even)) and -1111 which is obviously not. When the baseAddr is offset
by these, it obviously explodes, and I get bad pointers and then invalid
memory accesses.
I’m still trying to figure out the code ineraction
Once the basic functionaliy is stable, implementing everything else should not
be hard. Eg color updates, direct copies.
The drawSprocket support should also be fine. But sprites in video-RAM are
probably impossible. Ah well.
Nice to find such a great library, keep up the good work, I’ll try and make
Metrowerks build dynamiclly if I get the chance…
James Turner