#gemrb@irc.freenode.net logs for 22 Apr 2010 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[02:00:27] --> _pickle has joined #GemRb
[02:13:54] <-- _pickle has left IRC (Remote host closed the connection)
[04:45:21] <-- tomprince_loki has left IRC (Ping timeout: 265 seconds)
[04:46:21] <-- tomprince has left IRC (Ping timeout: 245 seconds)
[06:40:52] --> tomprince_loki has joined #GemRb
[06:42:29] --> tomprince has joined #GemRb
[06:45:00] --> lynxlynxlynx has joined #GemRb
[06:45:00] --- ChanServ gives channel operator status to lynxlynxlynx
[06:58:09] --- Gekz_ is now known as Gekz
[07:08:44] <-- edheldil has left IRC (*.net *.split)
[07:08:45] <-- Lightkey has left IRC (*.net *.split)
[07:08:47] <-- |Cable| has left IRC (*.net *.split)
[07:08:48] <-- lynxlynxlynx has left IRC (*.net *.split)
[07:08:49] <-- Gekz has left IRC (*.net *.split)
[07:08:51] <-- fuzzie has left IRC (*.net *.split)
[07:08:52] <-- tomprince has left IRC (*.net *.split)
[07:08:53] <-- tomprince_loki has left IRC (*.net *.split)
[07:08:53] <-- wjp has left IRC (*.net *.split)
[07:08:54] <-- xrogaan has left IRC (*.net *.split)
[07:08:55] <-- cfchris6_ has left IRC (*.net *.split)
[07:08:56] <-- CIA-74 has left IRC (*.net *.split)
[07:13:50] --> lynxlynxlynx has joined #GemRb
[07:13:50] --> tomprince has joined #GemRb
[07:13:50] --> tomprince_loki has joined #GemRb
[07:13:50] --> cfchris6_ has joined #GemRb
[07:13:50] --> |Cable| has joined #GemRb
[07:13:50] --> Gekz has joined #GemRb
[07:13:50] --> Lightkey has joined #GemRb
[07:13:50] --> fuzzie has joined #GemRb
[07:13:50] --> edheldil has joined #GemRb
[07:13:50] --> CIA-74 has joined #GemRb
[07:13:50] --> wjp has joined #GemRb
[07:13:50] --> xrogaan has joined #GemRb
[07:39:23] --> barra_library has joined #GemRb
[08:09:50] --> tombhadAC has joined #GemRb
[08:14:43] <-- tombhadAC has left IRC (Ping timeout: 252 seconds)
[08:39:38] <-- |Cable| has left IRC (Remote host closed the connection)
[08:44:32] <fuzzie> g'morning
[09:51:35] <edheldil> hi
[09:56:47] <Gekz> http://hyperboleandahalf.blogspot.com/2010/04/alot-is-better-than-you-at-everything.html
[12:41:06] <tomprince_loki> morning
[12:49:30] <Gekz> hi
[12:52:09] <Gekz> http://apple.slashdot.org/story/10/04/22/1222221/Android-Ported-To-iPhone?from=twitter
[13:48:55] <edheldil> it's of course banned with the new license
[13:49:34] <Gekz> who gives a fuck
[13:49:36] <Gekz> I'm so drunk
[14:40:23] --> Gekz_ has joined #GemRb
[14:40:46] <-- Gekz has left IRC (Read error: Connection reset by peer)
[15:29:27] <-- barra_library has left IRC (Read error: Connection reset by peer)
[15:45:46] --> Avenger has joined #GemRb
[15:45:57] --- ChanServ gives channel operator status to Avenger
[15:46:00] <Avenger> hello
[15:48:06] <tomprince_loki> Hello.
[15:48:56] <Avenger> i started to see how the changes impacted msvc6 compilation
[15:49:50] <tomprince_loki> I don't think there is anything yet that is too difficult to fix.
[15:50:20] <tomprince_loki> I was curious why you want to keep msvc6 compatibility for *gemrb*.
[15:50:23] <Avenger> so far it is utter suckage
[15:50:41] <Avenger> because i like it better than any further versions
[15:51:18] <lynxlynxlynx> heh
[15:51:43] <Avenger> i tried msvc7 it has some good features, but already started on a path i don't prefer
[15:51:57] <Avenger> and further versions are even more dumbed down
[15:53:57] <Avenger> i get these, any idea ?
[15:53:59] <Avenger> c:\program files\microsoft visual studio\vc98\include\vector(59) : error C2036: 'class ResourceDesc *' : unknown size
[15:54:01] <Avenger> c:\program files\microsoft visual studio\vc98\include\vector(58) : while compiling class-template member function '__thiscall std::vector<class ResourceDesc,class std::allocator<class ResourceDesc> >::~std::vector<class ResourceDesc,class st
[15:54:02] <Avenger> d::allocator<class ResourceDesc> >(void)'
[15:54:34] <tomprince_loki> That is easy to fix: add ResourceDesc.h to Plugins.h
[15:54:36] <Avenger> already added resourcedesc to the project
[15:55:02] <Avenger> hmm, and why is that needed only for windows?
[15:55:36] <Avenger> you mean plugin.h ?
[15:55:52] <tomprince_loki> It is only need for MSVC6, I am fairly certain. MSVC6 insists on completely instantiating any template that is used, where as other compilers only do it as needed.
[15:55:55] <tomprince_loki> No PluginMgr.h
[15:56:21] <tomprince_loki> I think newer msvcs probably handle it just fine.
[15:56:56] <Avenger> i see, so instead of the forward declaration, of class ResourceDesc, i just add its header
[15:57:29] <Avenger> it works, thanks
[15:57:47] <Avenger> down to 70 errors :)
[15:57:55] <tomprince_loki> That was why I was asking about msvc6, since there are other places where I would like to use some templates, but they won't work with msvc6, for similiar reasons.
[15:58:36] <Avenger> i think this is the files moved from core
[15:59:05] <tomprince_loki> Yes, you probably need to add proper include paths in compile command line.
[15:59:07] <Avenger> i think it is not needed to move and rename classes at this point
[15:59:54] <Avenger> hmm, what exactly changed with the core classes?
[16:00:20] <tomprince_loki> They just got moved from gemrb/plugins/Core to gemrb/core.
[16:00:56] <Avenger> i get tons of these: e:\gemrb\gemrb\plugins\core\gamedata.cpp(0) : fatal error C1033: cannot open program database 'e:\gemrb\gemrb\plugins\core\debug\vc60.pdb'
[16:00:58] <Avenger> GameScript.cpp
[16:02:15] <tomprince_loki> I have no idea, but there is no more plugins/core/gamedata.cpp, just core/gamedata.cpp
[16:02:58] <Avenger> ok, maybe my copy from linux to windows didn't work
[16:03:06] <-- Avenger has left IRC (Quit: ChatZilla 0.9.86 [Firefox 3.6/20100115144158])
[16:05:29] <lynxlynxlynx> grrr, i've just deleted all of the strref dumps
[16:06:42] <fuzzie> just the weidu ones?
[16:07:08] <lynxlynxlynx> i probably have a backup somewhere
[16:07:40] <lynxlynxlynx> i don't think it was done with weidu though, the bg2_strings.txt you sent me is in a different format
[16:08:22] <fuzzie> ok. it would be easy enough to recreate those.
[16:08:28] <fuzzie> i mean, the weidu ones.
[16:31:24] --> Avenger has joined #GemRb
[16:31:54] --- ChanServ gives channel operator status to Avenger
[16:33:07] <Avenger> well, these renames give me lots of work for nothing
[16:33:18] <tomprince_loki> If you are using windows for development, it seems like TortoiseGit is a fairly nice package for interacting with git.
[16:34:25] <Avenger> no, i use linux
[16:35:05] <Avenger> i got the sandbox on linux, and use it mostly, unless i couldn't find some problem with gdb/valgrind
[16:35:36] <Avenger> i simply copy it over to windows, and upload the windows project files
[16:35:53] <tomprince_loki> Well, I guess that is my question ... if you do development on linux, why do we need to support msvc6?
[16:36:07] <Avenger> doubt tortoisegit would help me much in rewriting the project files
[16:36:14] <Avenger> -->i got the sandbox on linux, and use it mostly, unless i couldn't find some problem with gdb/valgrind
[16:36:34] <Avenger> msvc6's debugger is great
[16:36:37] <tomprince_loki> No. I don't know if it works, but cmake theoreticaly should be able to generate project files.
[16:36:42] <fuzzie> yeah, the debugging situation on linux is .. embarassingly bad
[16:37:05] <Avenger> anjuta is not too bad, IF you never seen msvc6 :D
[16:37:25] <fuzzie> well, it still rests on top of gdb, which enjoys not cooperating
[16:37:30] <fuzzie> at least it's not Apple's gdb, i guess..
[16:38:27] <Avenger> i still get these frigging errors
[16:39:19] <Avenger> oddly they start only with Item.cpp
[16:39:31] <Avenger> so in the beginning, it compiles nicely
[16:39:37] <tomprince_loki> Have you tried cmake to generate project files? Not that that would help with those errors.
[16:40:03] <Avenger> cmake is a new dependency
[16:41:07] <fuzzie> can you make proper project files with cmake?
[16:41:36] <lynxlynxlynx> if the project files are in text form, you could fix them with autoreplace
[16:41:40] <fuzzie> i think i made my opinion on changing-for-the-sake-of-change clear already, so i will be quiet on that front :)
[16:42:27] <tomprince_loki> It claims to be able to generate proper project files.
[16:43:38] --> kahen has joined #GemRb
[16:44:02] <Avenger> part of the change is fine, like getting rid of empty classes (desc stuff)
[16:44:10] <Avenger> but renaming sucks
[16:44:42] <Avenger> E:\gemrb\gemrb\core\Video.cpp(35) : error C2039: 'pow' : is not a member of 'std'
[16:44:52] <Avenger> i also don't like these :)
[16:45:17] <wjp> ah, those would be my fault
[16:45:19] <fuzzie> oh, that is wjp :) i didn't think to check
[16:45:37] <Avenger> hmm, guess this is the lameness of msvc6
[16:45:43] <wjp> does it work without the std::?
[16:45:46] <Avenger> any idea how could it be fixed?
[16:45:49] <Avenger> trying
[16:46:12] <Avenger> yes
[16:46:22] <Avenger> now i got more crap elsewhere ;)
[16:46:26] <Avenger> but that is normal
[16:46:38] <Avenger> redefined i's
[16:47:41] <Avenger> in interface's destructor, all those i's are size_t anyway, i guess
[16:48:19] <fuzzie> Avenger: do you think it is a good idea to do Cleanup on the effect queue from the GUIScript code, when removing items?
[16:48:59] <Avenger> i don't know what cleanup does
[16:49:23] <CIA-74> GemRB: 03wjpalenstijn * r39d2255544d1 10gemrb/gemrb/core/Video.cpp: Remove std:: for MSVC6
[16:49:24] <Avenger> the original IE seems to remove all effects, and reapply them whenever you change an item
[16:50:08] <Avenger> let me fix the compile problems first :) i'm down to 9 errors in core
[16:50:30] <Avenger> these thingies --> const TypeID MoviePlayer::ID = {};
[16:50:44] <Avenger> they say this: E:\gemrb\gemrb\core\ImageMgr.cpp(27) : error C2059: syntax error : '}'
[16:51:11] <Avenger> those lines don't match, but you get the picture
[16:51:24] <Avenger> oddly enough i got only 3 of those
[16:51:42] <Avenger> only 3 of those typeID declarations exist?
[16:52:28] <Avenger> if i write this; {0}
[16:52:30] <Avenger> it works
[16:52:37] <tomprince_loki> So far.
[16:53:23] <tomprince_loki> That doesn't work with gcc.
[16:53:31] <wjp> error: too many initializers for 'const TypeID'
[16:53:36] <wjp> maybe just give it an int member?
[16:54:05] <Avenger> where is it
[16:54:07] <wjp> or maybe a char* could be useful for debugging sometime?
[16:54:16] <wjp> core/Plugin.h
[16:54:50] <Avenger> so, msvc6 doesn't like empty classes
[16:55:02] <Avenger> what if you don't write {} ?
[16:55:25] <Avenger> if it is empty, you don't have to initialize it
[16:55:33] <tomprince_loki> error: uninitialized const 'ImageMgr::ID'
[16:55:36] <wjp> error: uninitialized const 'MoviePlayer::ID'
[16:55:49] <tomprince_loki> :)
[16:56:07] <tomprince_loki> But, a const char* member makes sense.
[16:56:45] <wjp> shall I add one? (called 'name'?)
[16:57:35] <tomprince_loki> description?
[16:57:47] <wjp> works for me
[17:00:48] <Avenger> yes
[17:01:07] <Avenger> core now compiles, but i got trouble in the plugins
[17:01:18] <Avenger> also due to the moved core
[17:02:11] <tomprince_loki> I think the solution to that is adding the proper /I flags.
[17:02:56] <Avenger> yes, i'm working on that
[17:03:29] <CIA-74> GemRB: 03wjpalenstijn * r1f61a86bda8a 10gemrb/gemrb/core/ (5 files): Add description member to previously empty class TypeID for MSVC6
[17:10:01] <Avenger> E:\gemrb\gemrb\plugins\2DAImporter\2DAImporter.cpp(117) : error C2664: 'RegisterPlugin' : cannot convert parameter 2 from 'class Plugin *(void)' to 'class Plugin *(__cdecl *)(void)'
[17:10:02] <Avenger> None of the functions with this name in scope match the target type
[17:10:15] <Avenger> the first plugin almost compiles :)
[17:10:41] <Avenger> what's this cdecl mismatch?
[17:13:57] <lynxlynxlynx> tomprince_loki: any objection to renaming the cmake project to "gemrb"? It would save me one hardcode and I can't see ${CMAKE_PROJECT_NAME} being used anywhere directly
[17:14:38] <tomprince_loki> I'm not sure. I think it has something to do with MSVC6 deciding that PluginMgr::RegisterPlugin takes a __cdecl function pointer.
[17:14:43] <tomprince_loki> lynxlynxlynx: no.
[17:15:13] <Avenger> we don't have #include "../Core/ResourceMgr.h" anymore, right?
[17:15:25] <Avenger> areimp still has it
[17:15:54] <Avenger> oh, hmm, odd
[17:16:28] <Avenger> did you change the area importer too????
[17:16:39] <tomprince_loki> AREImp is old, it should AREImporter.
[17:16:53] <tomprince_loki> I went and changed the names to match the directories.
[17:17:02] <Avenger> oh my ...
[17:17:17] <tomprince_loki> So that class == directory == filename.
[17:17:21] <Avenger> i'll shoot myself with a hering
[17:17:50] <Avenger> ahh ok, these are only filename changes
[17:18:28] <tomprince_loki> You should try and see if cmake generates good project files, so that you don't need to worry about updating the project files. I am using cmake here, so they stay up to date.
[17:19:21] <tomprince_loki> Not that there should be many more changes. But once it gets some testing, I plan to split ACMImporter into ACMReader, OGGReader and WAVReader.
[17:20:10] <-- Avenger has left IRC (Quit: ChatZilla 0.9.86 [Firefox 3.6.3/20100401080539])
[17:22:26] --> Avenger has joined #GemRb
[17:22:29] --- ChanServ gives channel operator status to Avenger
[17:22:41] <Avenger> ok, before someone rewrites gemrb to c# or java, ask me :)
[17:23:36] <Avenger> i got totally confused by the imp/importer stuff too, i guess, i cannot do this port today
[17:25:18] <Avenger> what's worse, i just scrapped all previous edits on the windows part
[17:25:24] <Avenger> well, except the project files
[17:27:11] <Avenger> wjp, these gamma correction tables mean, you made gamma ramps work?
[17:27:31] <Avenger> i don't remember this worked before :)
[17:27:51] <fuzzie> just correcting them for the savegame previews, i think
[17:28:01] <wjp> yeah, they're for gamma-correct scaling
[17:28:05] <Avenger> oh, i see
[17:28:22] <Avenger> so this isn't to make both the gamma/brightness work
[17:28:38] <wjp> so that if you scale, say, a checkerboard pattern of black and white pixels you get a gray image of the same visual brightness (in theory)
[17:33:02] <CIA-74> GemRB: 03avenger_teambg * rd334ea5489f4 10gemrb/gemrb/core/Interface.cpp: fixed msvc6 compatibility
[17:33:11] <tomprince_loki> Avenger, does MSVC6 support doing things like if (void* ptr = NULL { <...do something with ptr...> } else { ... } ?
[17:33:46] <Avenger> == ?
[17:33:57] <tomprince_loki> no =.
[17:34:27] <Avenger> i don't think that syntax would work
[17:34:42] <Avenger> declaration in if ?
[17:34:51] <tomprince_loki> It is valid C++.
[17:35:02] <tomprince_loki> I know it works on g++.
[17:35:19] <Avenger> if(void *ptr = NULL) { } else { } ???
[17:35:26] <tomprince_loki> Yes.
[17:35:31] <Avenger> that would never be true
[17:35:40] <tomprince_loki> No, not with null.
[17:35:50] <fuzzie> isn't that just a scope issue?
[17:36:11] <Avenger> i think msvc6 would have several issues with that :)
[17:36:26] <tomprince_loki> That is the use for it yes. I think it looks clearer too, even without the scoping.
[17:36:27] <Avenger> 1. cannot declare in if(), 2. it would always be the same
[17:36:29] <fuzzie> i mean, msvc6 dumps 'ptr' in the parent scope
[17:36:41] <fuzzie> even if it would work
[17:36:53] <Avenger> yes, that's right fuzzie, it dumps it in for
[17:36:57] <wjp> I'd just avoid it :-)
[17:37:12] <Avenger> that's a bug i hate, actually
[17:37:23] <wjp> generally I dislike putting assignments in ifs
[17:37:34] <tomprince_loki> But if you had something like if(SomeType *ptr = GetSomeTypeOrNULL()) { do something with ptr } else { do something if null }
[17:37:43] <Avenger> but it is something i can fix, and i'm willing to fix those. i never complained about those ;)
[17:38:18] <Avenger> i don't think i like that tom :)
[17:38:26] <tomprince_loki> wjp: generally I agree, but I'd make an exception for declarations.
[17:38:29] <Avenger> i would rather avoid them
[17:38:36] <Avenger> even if it would compile
[17:39:01] <Avenger> i'm pretty sure msvc6's scope is messed up
[17:39:46] <Avenger> well, i will continue this porting attempt in the weekend, this is more work than i can do now
[17:39:51] <Avenger> see you later
[17:39:57] <-- Avenger has left IRC (Quit: bye!)
[17:40:25] --> |Cable| has joined #GemRb
[17:41:35] <tomprince_loki> I'm not going to push it, but i find the first clearer than the second: http://pastebin.com/4E8NqM87
[17:42:02] <wjp> I don't
[17:42:06] <lynxlynxlynx> me neither
[17:42:12] <tomprince_loki> ok.
[17:43:13] <fuzzie> it is *tidier*, but it seems considerably less clear
[17:44:45] <tomprince_loki> I guess those things to tend to be the same for me. :)
[17:47:27] <tomprince_loki> It is "If we can get this thing, which we call ptr, then do something with it else do something else" vs "call the result of getting this thing ptr; if ptr is not null, do something with ptr else do something else". At least for me. But ... I'll drop it, since it isn't an issue. :)
[17:48:14] <fuzzie> the trouble is that you're binding the "if we can get this thing" and the "store this thing for use" into a single statement, i think
[17:48:22] <wjp> IMO it makes it harder to see what's actually happening on that line
[18:03:08] <-- tomprince_loki has left IRC (*.net *.split)
[18:03:08] <-- wjp has left IRC (*.net *.split)
[18:08:10] <CIA-74> GemRB: 03lynxlupodian * r51f4a0ec3fb4 10gemrb/CMakeLists.txt: cmake: added a make dist target
[18:08:50] --> tomprince_loki has joined #GemRb
[18:08:50] --> wjp has joined #GemRb
[18:12:32] --> edheldil_ has joined #GemRb
[18:33:53] --> kettuz has joined #GemRb
[18:46:04] <-- edheldil_ has left IRC (Ping timeout: 276 seconds)
[18:55:51] <CIA-74> GemRB: 03lynxlupodian * r76869e99b9e6 10gemrb/CMakeLists.txt: cmake: default the build type to release
[18:55:53] <CIA-74> GemRB: 03lynxlupodian * r4d50721916a5 10gemrb/gemrb/docs/en/Building-cmake.txt: Building-cmake.txt: update for changes and generalise
[18:55:54] <CIA-74> GemRB: 03lynxlupodian * r02599f3f39f8 10gemrb/CMakeLists.txt: cmake: autogenerate the rpm specs
[19:24:47] --> edheldil_ has joined #GemRb
[19:31:16] <-- tomprince has left IRC (Ping timeout: 265 seconds)
[19:31:18] <-- tomprince_loki has left IRC (Ping timeout: 276 seconds)
[19:36:22] <-- edheldil_ has left IRC (Ping timeout: 264 seconds)
[19:50:01] --> edheldil_ has joined #GemRb
[20:45:55] <-- edheldil_ has left IRC (Ping timeout: 246 seconds)
[20:53:32] <-- lynxlynxlynx has left IRC (Remote host closed the connection)
[21:28:55] --> cfchris6 has joined #GemRb
[21:31:53] <-- cfchris6_ has left IRC (Ping timeout: 260 seconds)
[22:00:13] --> edheldil_ has joined #GemRb
[22:05:02] --> tomprince_loki has joined #GemRb
[22:20:56] <-- kettuz has left IRC (Quit: Leaving)
[22:55:27] --> tomprince has joined #GemRb
[23:17:11] <-- edheldil_ has left IRC (Ping timeout: 245 seconds)
[23:22:16] --> edheldil_ has joined #GemRb