Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 4 5 [6] 7 8 ... 13

Author Topic: Kobold Quest port status?  (Read 12347 times)

Jaqie Fox

  • Bay Watcher
  • Genuine Girl Techie!
    • View Profile
Re: Kobold Quest port status?
« Reply #75 on: May 17, 2007, 05:49:00 pm »

re how to test and run multiple operating ystems on a single PC: the best way is with the free version of VMware. it emulates an entire PC in the 'host' OS, even has an actual BIOS file licened from (IIRC) phoenixBIOS.  Check out vmware, I use it pretty constantly here. the only thign to be aware of is the increased RAM demands for running multiple OSes concurrently. 1GB is prettymuch minimal.... but compared to the alternative of having multiple PCs more RAM is dirt cheap.
Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: Kobold Quest port status?
« Reply #76 on: May 17, 2007, 06:03:00 pm »

Yeah, that's actually how I ran the aborted Linux port -- on a VMWare Ubuntu.  There was a little lag, sure, but it worked fine.  I gather VMWare wouldn't help with a Mac port unless I broke some kind of law though.
Logged
The Toad, a Natural Resource:  Preserve yours today!

Peristarkawan

  • Bay Watcher
    • View Profile
Re: Kobold Quest port status?
« Reply #77 on: May 17, 2007, 06:08:00 pm »

The LGPL issue is unfortunate. I haven't looked at the code yet, but it sounds like a revived porting effort would have to start over from scratch.

I'm not a licensing expert, but would it be feasible to turn the KQ code into an open-source library derivative of Wine and then just have DF link it? That should allow you to release DF on your own terms using section 6a or 6b of the LGPL.

If the issue is the "must allow modification and reverse engineering" clause of section 6, then I think that would prohibit you from using any LGPL library at all, including SDL.

Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: Kobold Quest port status?
« Reply #78 on: May 17, 2007, 06:14:00 pm »

It was my impression that you could use an LGPL DLL and not release the source code of your own project (since you don't become a derivative work at that point, and the modifications can occur at the DLL level), but I don't know much about it.

As for turning KQ into a library, I doubt it would have to go that far, but whatever works.  My requirements are that it has to be easy for me to understand how to lay DF on top of it, and I have to be able to release it without releasing the source code of DF.

Logged
The Toad, a Natural Resource:  Preserve yours today!

Peristarkawan

  • Bay Watcher
    • View Profile
Re: Kobold Quest port status?
« Reply #79 on: May 17, 2007, 06:35:00 pm »

quote:
Originally posted by Toady One:
<STRONG>It was my impression that you could use an LGPL DLL and not release the source code of your own project (since you don't become a derivative work at that point, and the modifications can occur at the DLL level), but I don't know much about it.</STRONG>

Right, that's what section 6 covers. It does seem to include the annoying requirement that the DF license must allow users to modify and reverse-engineer the DF executable. I brought it up because the current DF license agreement doesn't permit modification of the executable.

It may be somewhat ignorable. The SDL overview of the license doesn't even mention it.

Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: Kobold Quest port status?
« Reply #80 on: May 17, 2007, 06:44:00 pm »

From what I've managed to google, people seem confused.  Section 6 seems dangerous to me.  Perhaps a non-SDL approach will be required, which I guess amounts to what, handling input in some way, and getting the OpenGL initialized in Linux?  Perhaps that's a lot of work.

edit:  To be specific, it seems like using the DLL would be fine, until such a point that a new version of the DLL is no longer compatible with the binary, at which point the binary must be opened up to allow compatibility.  This would put me at the mercy of whoever is maintaining the LGPL project.

[ May 17, 2007: Message edited by: Toady One ]

Logged
The Toad, a Natural Resource:  Preserve yours today!

Peristarkawan

  • Bay Watcher
    • View Profile
Re: Kobold Quest port status?
« Reply #81 on: May 17, 2007, 08:18:00 pm »

I think that setting up the OpenGL directly would be fairly platform-dependent. Right now I'm looking at possibly using ClanLib as an alternative to SDL that uses a BSD-style license. It looks promising, although I don't really know how it compares in terms of performance.
Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: Kobold Quest port status?
« Reply #82 on: May 17, 2007, 11:04:00 pm »

I guess as long as it's not awful, it's fine.  The performance issues with DF are mostly independent of any graphics etc, so a bit of overhead wouldn't be a major problem.  I think.
Logged
The Toad, a Natural Resource:  Preserve yours today!

X

  • Bay Watcher
    • View Profile
Re: Kobold Quest port status?
« Reply #83 on: May 17, 2007, 11:59:00 pm »

More to the point than any LGPL issues is that you don't even frekin' want WINE code in a KQ port - it's not needed.
Only the enabler code uses windows.h for anything relevant, and of that:
 enablerst::loop
 enablerst::create_window_GL
 enablerst::destroy_window_GL
 enablerst::register_window_class
 WindowProc
 WinMain
Wants rewriting from win32 to platform equivalents, and:
 enablerst::load_bitmap_header
 enablerst::load_bitmap_file
 enablerst::load_bitmap_file_with_alpha
 enablerst::save_texture_data_to_bmp
Want junking and replaced with stuff that calls libpng.

That's only ~750 lines total, and is not a technically hard task for anyone who knows a little about win32 and enough about their target platform. Add in finding other stray calls to stuff like MessageBox and re-routing through the enabler, the task is still of hours order, not days.
Anyway, it served its purpose of shutting up the I'd-port-this-if-you-gave-me-the-source bullshitters. Whining is easier than WINEing, but WINEing is easier than porting, and they're all about path of least resistance.

X

Logged

nornagon

  • Bay Watcher
    • View Profile
    • nornagon.net
Re: Kobold Quest port status?
« Reply #84 on: June 04, 2007, 01:27:00 am »

It turns out the LGPL is mostly fine, except for a reverse engineering clause in section 6. I guess I'll have a stab at porting stuff with glut. The windows-specific stuff I can see is mostly in enabler.cpp and a bit in files.cpp and definitions.cpp, yes? Are there any caveats I should be warned about?
Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: Kobold Quest port status?
« Reply #85 on: June 04, 2007, 02:34:00 am »

There are a few more MessageBox() in game.cpp, one in game.h.  GetTickCount() is used in game.cpp, interface.cpp, random.cpp.  Not sure what the other problems are beyond what X said.

[ June 04, 2007: Message edited by: Toady One ]

Logged
The Toad, a Natural Resource:  Preserve yours today!

nornagon

  • Bay Watcher
    • View Profile
    • nornagon.net
Re: Kobold Quest port status?
« Reply #86 on: June 05, 2007, 10:08:00 am »

Okay, finished. The game compiles and runs under linux, near-perfectly as far as I can tell (having never played the game under windows). The build process is a little involved, so I'm reluctant to post a tarball just yet, but if anyone wants to have a go, join us on worldirc.org #bay12games or private message me here. I'll try to have a nicely buildable tarball sometime soon.

Testing is still far from extensive, I think a few keybinding things may be broken (in particular, ctrl and alt, though shift seems to work). GLFW has some small quirks which I'm not entirely sure of, so they'll take a little prodding.

Logged

Peristarkawan

  • Bay Watcher
    • View Profile
Re: Kobold Quest port status?
« Reply #87 on: June 05, 2007, 10:52:00 am »

I was going to do a ClanLib port since it uses BSD licensing, but I never found the time to actually work on it. Glad to hear that somebody's picked this up.
Logged

nornagon

  • Bay Watcher
    • View Profile
    • nornagon.net
Re: Kobold Quest port status?
« Reply #88 on: June 05, 2007, 11:15:00 am »

GLFW is pretty nice for this purpose. It's sort of a GLUT replacement, with a few bells and whistles. SDL is possibly better still, but there lie licensing issues.
Logged

Peristarkawan

  • Bay Watcher
    • View Profile
Re: Kobold Quest port status?
« Reply #89 on: June 05, 2007, 07:35:00 pm »

Oh, I wasn't aware of that one.  Looks nice!  The other reason I was looking at ClanLib was that it includes modules for sound and for performing serialization in a platform-independent manner, but obviously there's no reason those things need to be handled by the same toolkit.
Logged
Pages: 1 ... 4 5 [6] 7 8 ... 13