While porting my sound engine to other platforms I came across several platform limitations.
The easier one, turned out to be Win32 and Windows Mobile, of course. The harder ones, Symbian and Palm.
What I’ve learned so far is that when coding multiplatform code, its really hard to keep the design as we want. We often need to hack stuff to defeat platform limitations.
With the limitations I knew about, I started refactoring and changing the design of the library. When I had all set, to avoid Symbian limitations, and started the Palm port, more problems!
The lack of documentation on some platforms doesn’t help either.
It’s really frustrating this kind of situation when we have scarce documentation, follow the rules, and it still fails. A lot of trial and error, where along the way we find small platform quirks which are not documented, or deeply buried in the documentation.
I’ve done a lot of refactoring, to account for the limitations I already knew about while at the same time keeping a reasonably clean design, but then I found more limitations on Palm.
It’s time for more refactoring to overcome more limitations!
I usually like to say…
If it can be done, I can do it.… But it may take a while!
Multiplatform issues
czPlayer Sound System
Finally I resumed work in some of my own projects. I’ve been working on my Sound System (czPlayer), which I intend to license to BitRabbit.
About czPlayer Sound System:
Platforms supported:
- Win32
- Pocket PC
- Symbian
- Palm
Features:
- Sound.. of course. ![]()
- MOD and IT support
- More to come.
czPlayer codebase started around 1998, when I created a music disk (See http://en.wikipedia.org/wiki/Music_disk ) with some friends. I’ve done all the code, and two friends of mine the gfx and sfx. We we were still using MS-DOS at that time.
Everything was coded in Watcom C++ compiler which was the best DOS compiler at the time, and the PMODE/W dos extender.
I think we’ve done everything in our summer vacations, in 2-3 months
At that time, czPlayer was called Jupiter Sound System or something like that. It had nice features for a DOS sound library, supporting SB mono to SB 16, Gravis Ultrasound with both hardware and software mixing to overcome some limitations. See (http://en.wikipedia.org/wiki/Gravis_Ultrasound)
Maybe I’ll post here a video or the music disk itself later.
Anyway, most of the code was refactored by now, and doesn’t look like the old code.
It’s nice to be back to my projects.
Alpha testers needed for GalacticMelee online game
Alpha testers needed.
Go on and dogfight…
From the site…
Galactic Melee is a physics based massively multiplayer space combat action game. You are a single fighter pilot among hundreds, carving a path through the chaos of fighter to fighter battle. Become the top ranked dueler in tournament mode. Kill in 90 seconds or die yourself in wave-based survivor mode. Or mine asteroids to buy carriers, launching waves of your fighters at the enemy starbase in Armada.
Skill decides battles, not equipment, or level, or time spent grinding. As a Trainee in your first battle, with minimal equipment, you can challenge the most advanced fighters in the universe. Can you make a name for yourself among thousands?