SDL Vs Kallistios

If you have any questions on programming, this is the place to ask them, whether you're a newbie or an experienced programmer. Discussion on programming in general is also welcome. We will help you with programming homework, but we will not do your work for you! Any porting requests must be made in Developmental Ideas.
Post Reply
Vectrix Quest
DCEmu Fast Newbie
DCEmu Fast Newbie
Posts: 22
https://www.artistsworkshop.eu/meble-kuchenne-na-wymiar-warszawa-gdzie-zamowic/
Joined: Thu Nov 14, 2013 1:10 pm
Has thanked: 0
Been thanked: 0

SDL Vs Kallistios

Post by Vectrix Quest »

Is there any difference between coding a Dreamcast game in SDL and Kallistios in terms of memory footprint, speed, graphics display or are they both equal? Any assistance in this matter would be greatly appreciated.

Sincerely,

Vectrix Quest
User avatar
BlueCrab
The Crabby Overlord
The Crabby Overlord
Posts: 5658
Joined: Mon May 27, 2002 11:31 am
Location: Sailing the Skies of Arcadia
Has thanked: 9 times
Been thanked: 69 times
Contact:

Re: SDL Vs Kallistios

Post by BlueCrab »

Yes, there is a drastic difference.

SDL is a layer on top of KOS, so it will always use more resources than just using KOS directly to do an otherwise identical program (in functionality). The version of SDL included with KOS in its kos-ports tree is known to leak memory quite badly, and pretty much every other port of SDL to the Dreamcast (that I know of) has problems.

Speed wise, SDL does everything by drawing to the framebuffer. That means, in practical terms, that you're using the CPU to do what the GPU can do for you. Also, the framebuffer itself is a lot slower to access via the CPU than main ram (especially if you're using a cached area to access it), so that can become a concern too.

Simply put, if you're developing something specifically for the Dreamcast, I wouldn't recommend using SDL. If you're developing something for both a PC and Dreamcast, I'd recommend making some sort of abstraction library yourself and avoiding SDL on the Dreamcast. I've done similar things in the past when developing cross-platform stuff.

Also, moved to the appropriate forum. :wink:
Post Reply