IRC logs for #opendune on OFTC at 2009-10-04
            
02:43:56 *** glx has quit IRC
09:47:14 <Xaroth> morning
10:14:11 <TrueBrain> morning to you too
10:14:28 <Xaroth> :)
10:24:02 <TrueBrain> I am having this work related issue, that I need to sync output from a screen with a printer ... as in: the actions; it can happen things get a priority, then the first print in the printer is not the entry they should be handling (as the screen indicates) .. but how to keep that clean :s
10:26:23 <TrueBrain> but okay ... OpenDUNE ... lets continue :p
10:38:04 <Xaroth> o_O
10:42:14 <TrueBrain> I am still having troubles with those wrappers and stuff ...
10:48:13 <DorpsGek> SVN: truebrain (r118) -Add: emu_Building_CleanAll()
10:59:18 <DorpsGek> SVN: truebrain (r119) -Add: introduce a struct/union 'csip' to store CS:IP, instead of using uint32 and bitshifting all the time
11:27:50 <DorpsGek> SVN: truebrain (r120) -Add: a 'makedepend' version (from OpenTTD) to ensure the right files are recompiled when headers change
11:27:56 <TrueBrain> I hope I did that last one correct ..
11:39:09 <TrueBrain> k, one function left in 1082, of which I can't figure out what it really does
11:47:10 <DorpsGek> SVN: truebrain (r121) -Fix: emu_Building_Allocate() used the wrong params
11:49:57 <TrueBrain> from what kind of game element you can only have 16 in Dune2?
11:52:02 <Xaroth> hm
11:53:19 <TrueBrain> as I found all relevant code for it ... Allocate, FindFirst, FindNext, CleanAll, ...
11:53:38 <TrueBrain> it is almost identical to Buildings, just 83 bytes big, and a max of 16 items
11:54:04 <TrueBrain> 1 is created in the first level
11:54:16 <Xaroth> 16 of each vehicle type?
11:54:24 <TrueBrain> no
11:54:27 <Xaroth> construction yards? :P
11:54:34 <TrueBrain> that is possible
11:54:44 <Xaroth> worm?
11:54:51 <Xaroth> that's not a building toh
11:55:02 <TrueBrain> worm .. wouldn't that be a normal unit?
11:55:07 <Xaroth> ye
11:55:20 <TrueBrain> and 16 worms? :p
11:55:54 * Xaroth shrugs
11:57:01 <TrueBrain> is there a worm in the first level?
11:57:07 <Xaroth> er, dunno
11:57:08 <Xaroth> never saw one
11:57:14 <Xaroth> but it's related to buildings innit?
11:57:17 <Xaroth> then i'd say CY
11:57:24 <Xaroth> that's the only building you get in most levels anyhow
11:57:27 <TrueBrain> it has the same code, but so will the units
11:57:34 <TrueBrain> so it is not really related (or it doesn't have to, anyway)
11:57:38 <Xaroth> hm
11:58:44 <TrueBrain> it does a lookup as soon as you get 'enemy approaching'
11:59:28 <Xaroth> o_O
11:59:46 <TrueBrain> 1423 is related
12:00:30 <TrueBrain> AIs?
12:00:34 <Xaroth> possibly
12:00:41 <TrueBrain> every time I approach an enemy unit, it activates
12:00:46 <TrueBrain> (with id '0')
12:00:55 <TrueBrain> so the game is built to handle 16 AIs? :p
12:01:14 <Xaroth> worms, player, enemies
12:01:28 <Xaroth> 3 enemies in last game, 1 worm ai, 1 player AI for unit behavior
12:01:29 <TrueBrain> maybe 'script engines'
12:01:31 <TrueBrain> or something of the like
12:01:33 <Xaroth> yeh
12:02:46 <TrueBrain> k, documented, and we check back on that later :p
12:02:54 <TrueBrain> Xaroth: how is your progress on 0C3A going?
12:03:09 <Xaroth> stalled atm, helping missus on her project -_-
12:03:13 <TrueBrain> ;)
12:03:56 <TrueBrain> hmm .. again a function with nearly identical code, but again the order of the code is completley different :p
12:04:31 <DorpsGek> SVN: truebrain (r122) -Fix: typo in struct element
12:06:42 *** glx has joined #openDune
12:06:42 *** ChanServ sets mode: +v glx
12:07:58 <Xaroth> o/ glx
12:08:34 <TrueBrain> k ... 0x42 in size, with a max of 6 entries ...
12:08:41 <TrueBrain> that can be houses, I guess
12:09:01 <Xaroth> Atreides, Ordos, Harkonnen, Sardukar, Fremen
12:10:19 <TrueBrain> glx: with that patch, OpenDUNE uses (via svn:externals) the depend of OpenTTD :p
12:10:31 <glx> hehe
12:10:34 <glx> good
12:10:40 <Xaroth> o_O
12:14:07 <DorpsGek> SVN: truebrain (r123) -Fix (r118): Building_CleanAll is more Building_Init, and document what goes in and out
12:19:22 <TrueBrain> I don't get this piece of code ... it initializes, what I suspect houses
12:19:32 <TrueBrain> it memsets the whole array
12:19:38 <TrueBrain> it then walks the array to see if there is an active house
12:19:40 <TrueBrain> like: HUH?!
12:19:54 <Xaroth> o_O
12:20:42 <TrueBrain> I read it over 3 times now, it really does say that :s
12:21:10 <Xaroth> odd
12:21:41 <TrueBrain> the only reason I can see to do that, is if you do it before the memset :s
12:23:51 <TrueBrain> yeah, our guess was correct: they are house s:)
12:24:13 <TrueBrain> when Is tart the A, I get ID 1 and 2. When I start the O I get ID 0 and 2 :)
12:24:24 <TrueBrain> (A = Artreidus and O = Ordus of course)
12:26:16 <Xaroth> yeh
12:26:18 <TrueBrain> Xaroth: I think we should rename OwnerID to HouseID, and fix owner/house shit later :p
12:26:25 <Xaroth> agreed
12:26:37 <Xaroth> for now the game doesn't support more than 1 of the same house anyways
12:28:40 <TrueBrain> hmm .. naming conflict .. a Building is called Building
12:28:42 <TrueBrain> (the struct)
12:28:47 <TrueBrain> a house is called House, the struct
12:28:52 <TrueBrain> but now how to call the enum of houses :p
12:29:04 <Xaroth> House?
12:29:14 <TrueBrain> there is already a struct House, I just told you :p
12:29:39 <Xaroth> hrnf
12:38:08 <TrueBrain> I wonder if I now should take over that loop over houses at Init or not ...
12:38:14 <TrueBrain> if you ask me, it is complete garbage ...
12:43:21 <Xaroth> I'd say take it over for now, it might be something dodgy that we'll find further on
12:43:32 <Xaroth> but mark that it's garbage
12:49:29 <TrueBrain> code is inconsistant
12:49:31 <TrueBrain> which annoys me
12:49:47 <TrueBrain> example: when you do a Get_ByIndex for a building, you can get even buildings that are not located
12:49:51 <TrueBrain> when you try the same for houses, it fails
12:49:58 <TrueBrain> when you request an invalid index at buildings, it fails
12:50:03 <TrueBrain> when you do it for houses, it doesn't fail
12:51:52 <Xaroth> o_O
12:52:41 <TrueBrain> so how ever, the programming consistancy of Dune2 is a bit poor :p
12:54:20 <TrueBrain> of course OpenTTD also has a Get and GetValid, so that can explain for the check-if-exists, but not-bound-checking is just wrong :p
12:59:03 <TrueBrain> even more inconsistancies .. brr ...
13:00:42 <TrueBrain> Xaroth: Remote IP address:&#32;10.42.42.8 <- mantis doesn't lookup past the proxy :(
13:00:59 <Xaroth> thing is tho, ottd has people looking at the code
13:01:05 <Xaroth> I doubt any outsider saw the dune code
13:01:12 <Xaroth> and that should be fixable if i can find a generic include
13:05:37 <TrueBrain> @calc 0x986C - 0x87D8
13:05:37 <DorpsGek> TrueBrain: 4244
13:05:40 <TrueBrain> @base 10 16 4244
13:05:40 <DorpsGek> TrueBrain: 1094
13:27:34 *** Alberth has joined #openDune
13:28:23 <TrueBrain> hello Alberth :)
13:28:32 <Alberth> hello
13:28:43 <TrueBrain> more dutch people ... something is wrong with this world :p :p
13:28:58 <glx> I can say the same for openttd team ;)
13:29:17 <TrueBrain> yes :p
13:29:54 <TrueBrain> when we started this project, opendune.org was already registered ... by Dutch people :) They were kind enough to give us the domain :)
13:32:54 <TrueBrain> hmm .. houses are never freed .. or not yet anyway :p
13:32:58 <TrueBrain> maybe on destroy that happens ..
13:45:14 <TrueBrain> The jump was triggered at decompiled/cs__1391.c:1391 <- What are the odds?! :) :) :)
13:45:54 <Alberth> probably larger than you think.
13:46:59 <TrueBrain> the chance that a filename contains no hex-chars and the chance a file is of the size of his segment .. I think it is somewhere around 1 in a milion :p
13:47:13 <Alberth> I once calculated how many people you need on average to have two people born at the same day. It was only 23 people iirc.
13:47:48 <TrueBrain> yeah, but this is not the same kind of chance-problem ;) :p
13:47:53 <TrueBrain> still amusing :)
13:55:30 <TrueBrain> why oh why does tracing problems take most of the time :(
13:59:03 <Xaroth> because it always does :/
13:59:44 <DorpsGek> SVN: truebrain (r124) -Add: House init/allocate/get/find functions
14:00:12 <TrueBrain> 1240 lines done, 144756 to go :p
14:00:47 <Xaroth> we need a counter for that :P
14:01:47 <TrueBrain> well, minor problem is that those 1240 lines are C lines, and the other asm lines, so it is not comparable ..
14:02:11 <glx> and not everything is decompiled
14:02:34 <TrueBrain> that too :)
14:02:45 <TrueBrain> many is, but for sure not all :)
14:06:51 <TrueBrain> I still have no idea what is in that array of 16 items ..
14:07:09 <Xaroth> any info from dosbox?
14:07:20 <TrueBrain> nothing that stands out
14:12:49 <TrueBrain> @base 16 10 66
14:12:49 <DorpsGek> TrueBrain: 102
14:12:55 <TrueBrain> 102 .. max units?
14:13:31 <Xaroth> nah, max units is defined in in the scen files
14:13:47 <Xaroth> there's a 'global' max units/buildings tho, but i think that was 255ish or so
14:14:15 <TrueBrain> sure? As I have another 'pool' like thingy, with a max of 0x66 (102)
14:14:25 <Xaroth> might be for buildings
14:14:36 <TrueBrain> no, we already had thatone :)
14:14:44 <Xaroth> hm
14:14:46 <TrueBrain> that has a max of 82 (with 3 'special' buildings, so 79)
14:17:06 <TrueBrain> when creating this what-ever, it checks in the house for 2 values .. I guess 'current' and 'max'
14:21:44 <TrueBrain> yeah, Xaroth, it is Units
14:21:50 <Xaroth> hm
14:21:54 <Xaroth> global max for units then?
14:22:14 <TrueBrain> mostly it reads a value from seomwhere .. I can only guess based on your info that it is from scenario data
14:22:21 <TrueBrain> but at init the value 0x66 is used
14:24:31 <TrueBrain> Alberth: about your bug report, it indeed still happens a lot that it crashes when doing stuff in a slightly different way ;)
14:24:39 <TrueBrain> mostly using keyboard only helps a lot ;)
14:32:26 <TrueBrain> @calc 0x3300 / 0x80
14:32:26 <DorpsGek> TrueBrain: 102
14:32:35 <TrueBrain> Xaroth: I keep on getting 102 back as max value :)
14:32:38 <Alberth> ok :)
14:33:01 <Xaroth> TrueBrain: could it be a 'default' value?
14:33:06 <TrueBrain> no
14:33:09 <TrueBrain> it is a very hard value
14:33:10 <Xaroth> so pool cap
14:33:19 <TrueBrain> it clears 0x3300 bytes on initialization
14:33:28 <TrueBrain> 1 unit consumes 0x80 bytes
14:33:36 <TrueBrain> which leaves 102 possible units at any given time
14:33:40 * Xaroth nods
14:33:43 <Xaroth> so absolute cap
14:33:47 <TrueBrain> yes
14:34:03 <TrueBrain> I believe most scenarios limit you to 30 vehicles or something?
14:34:08 <Xaroth> think so yeh
14:35:04 <TrueBrain> but where House and Building does some bound-checking, Units does not (well, expect with scenario data from time to time)
14:35:12 <TrueBrain> so I guess if it overflows, it just works
14:35:21 <TrueBrain> (overwriting what ever memory is behind him)
14:47:49 <TrueBrain> Xaroth: those '16' items pool is most likely carry-alls and those other thingies :p
14:48:35 <Xaroth> :o
14:48:40 <Xaroth> Ornithopters
14:50:33 <TrueBrain> so: Building, House, Unit, ... how to name that category? :p
14:52:02 <nsz> airunit
14:52:36 <TrueBrain> strangly enough, I can't find the 'Allocate' function of those .. hmm ..
14:54:52 <TrueBrain> ah, there :) Lol
14:55:23 <TrueBrain> hmm .. no ..
14:55:34 <TrueBrain> of those Pools, there is one function I still don't get
14:55:42 <TrueBrain> it walks over all possible entries in the memory, and it counts the active ones
14:56:18 <TrueBrain> rebuilding the fast-lookup array
14:57:59 <TrueBrain> I guess now it becomes time we play past lvl1 :p
14:58:28 <nsz> can you remove the questioning?
14:58:40 <TrueBrain> the answers are easy enough
14:58:48 <nsz> not for me :(
14:58:54 <TrueBrain> http://dune2k.com/Duniverse/Games/DuneII/Manual
14:59:28 <nsz> whatever.. it's still annoying ;)
14:59:33 <TrueBrain> :)
15:00:01 <TrueBrain> locate where it is done, and patch it ;)
15:00:21 <TrueBrain> on a positive note: save once passed lvl1, and you can always load that savegame ;)
15:04:07 <TrueBrain> grr .. sometimes the mouse still acts up :(
15:06:52 <TrueBrain> nsz: okay, it is annoying :p
15:09:02 <TrueBrain> and backspace doesn't work ... haha :)
15:14:12 <TrueBrain> [JIT] New function B4DA:15C5; recorded
15:14:13 <TrueBrain> [JIT] Jumped from B4DA:1581 to B4DA:15C5; recorded
15:14:15 <TrueBrain> when I enter correct data
15:14:18 <TrueBrain> so somewhere there is the validation :p
15:16:08 *** Xaroth_ has joined #openDune
15:18:08 <TrueBrain> nsz: decompiled/cs__B4DA.c line 6909, change if (emu_flags.zf to if (!emu_flags.zf
15:18:14 <TrueBrain> all wrong answers are now correct :p
15:18:42 <nsz> nice :)
15:18:51 <TrueBrain> (and yes, correct answers are wrong :p)
15:20:35 <TrueBrain> hmm .. starting the JIT when needed causes the code to jump to places it should never jump to ..
15:21:12 <TrueBrain> so lets run everything inside the JIT :)
15:21:58 *** Xaroth has quit IRC
15:23:31 <TrueBrain> but with full JIT, the above trick of course doesn't work
15:23:32 <TrueBrain> hmm
15:28:18 <TrueBrain> k, 2 houses done, one to go ...
15:31:39 <TrueBrain> http://devs.opendune.org/~truebrain/savegames/
15:31:43 <TrueBrain> to ease up everything :)
15:33:48 <DorpsGek> SVN: truebrain (r125) [JIT] -Add: mapped another 193 functions (correct security question, start of campaign 2)
15:33:55 <TrueBrain> (this is JIT only data, no decompiled stuff)
15:34:34 <proyvind_> hmm, is there a teaser out there that I can test? :)
15:34:42 <TrueBrain> teaser-2 'works'
15:34:43 <TrueBrain> not really
15:34:46 <TrueBrain> Windows even less :p
15:34:53 <proyvind_> I'm no windows whore :p
15:34:54 <TrueBrain> I guess we should start the release cycle soon :)
15:35:00 <TrueBrain> in that case, compile trunk :p
15:35:35 <proyvind_> maybe I'kk just do that.. :o)
15:35:59 <TrueBrain> it works relative well .. just crashes from time to time because of non-decompiled functions :)
15:37:24 <TrueBrain> whoho, radar :)
15:38:06 <TrueBrain> stupid sandworm ... :(
15:38:15 <TrueBrain> oh, no, it was a bloom :p
15:45:02 <TrueBrain> stupid mouse and race-conditions :(
15:47:30 <Xaroth_> rawr
15:47:35 *** Xaroth_ is now known as Xaroth
15:47:43 *** ChanServ sets mode: +o Xaroth
15:49:37 <TrueBrain> GRRR! This is freaking annoying!! :p
15:50:56 <DorpsGek> SVN: truebrain (r126) [JIT] -Add: mapped another 174 functions (campaign 2)
15:55:03 <DorpsGek> SVN: truebrain (r127) -Add (r125, r126): the decompiled code reflecting latest JIT data
15:55:07 <TrueBrain> there :)
16:00:09 <Xaroth> right, time to bring missus home, then dinner (i think), then OpenDUNE time.
16:02:58 <TrueBrain> :) :)
16:10:20 *** Xaroth_ has joined #openDune
16:12:18 <proyvind_> d'oh
16:12:21 <proyvind_> when trying to run it
16:12:28 <proyvind_> I just get a "press any key to continue"
16:12:30 <proyvind_> or somethjing
16:12:33 <proyvind_> then it exits
16:12:33 <proyvind_> :(
16:12:39 <proyvind_> not good enough!
16:12:46 <proyvind_> you need to start all over!
16:12:47 <proyvind_> :p
16:14:41 *** Xaroth is now known as Guest175
16:14:41 *** Xaroth_ is now known as Xaroth
16:14:54 *** ChanServ sets mode: +o Xaroth
16:15:51 <proyvind_> oh
16:15:52 <proyvind_> I suck
16:16:00 <proyvind_> I need to read docs betterr
16:17:07 <proyvind_> hmm, no sound support yet?
16:17:31 *** Guest175 has quit IRC
16:18:39 <Xaroth> who needs sound? :P
16:18:53 <Xaroth> no dinner yet
16:33:41 <proyvind_> even I have sound already in my dune 2 clone! ;p
16:34:12 <glx> hmm msvc needs an update again (but no hurry)
16:34:17 <Xaroth> We're not making a clone, we're doing a remake :)
16:34:27 <Xaroth> or well
16:34:33 <Xaroth> or actually the other way around
16:34:55 <proyvind_> yeah
16:34:56 <proyvind_> clone
16:34:57 <proyvind_> remake
16:35:00 <proyvind_> whatever
16:35:09 <proyvind_> everyone else is using the word "clone
16:35:09 <proyvind_> "
16:35:13 <proyvind_> for their projects
16:35:17 <Xaroth> yeh
16:35:19 <Xaroth> they aren't :P
16:35:32 <proyvind_> I have honestly not used it myself before just now, my first time actually!
16:35:48 <proyvind_> but I have been awake since friday as well..
16:35:57 <proyvind_> maybe that's why
16:35:58 <proyvind_> :p
16:43:47 <Xaroth> gawd damnit
16:43:50 <Xaroth> my connection is shaky
16:55:53 <TrueBrain> proyvind_: so you are going to add sound support for us? :) :)
16:58:09 <TrueBrain> glx: I copied your 'authorized_keys' from openttd to opendune, and you can now commit ;) Maybe easier with all those MSVC updates :p
16:58:32 <TrueBrain> same commit style .. in fact .. most things are the same :p Location is /var/repos/svn/opendune/trunk
16:58:41 <TrueBrain> of course, if you like ;) You can also always just send me your patches ;)
16:58:53 <glx> hmm I need to relocate :)
16:59:02 <TrueBrain> (and secure.opendune.org of course ... I copied too much from OpenTTD :p)
16:59:13 <Xaroth> \o/
16:59:14 <TrueBrain> oh, I assumed that was okay with you too Xaroth ;)
16:59:35 <Xaroth> I was tempted to suggest it earlier, but the missus kept stealing my attentionn
16:59:41 <Xaroth> so he's got my vote
17:00:33 * TrueBrain goes to play some more
17:03:14 <TrueBrain> 2700 .. so .. 4 times a full harvester ...
17:03:16 <TrueBrain> BORING
17:03:17 <TrueBrain> :p
17:03:37 <Xaroth> FOR THE LOVE OF
17:03:47 <Xaroth> got a ping -t running on my gateway for kpn/planet
17:03:58 <Xaroth> every now and then there's just a lack of response for 2-3 seconds
17:04:05 <Xaroth> kicking me out of some of my remote sessions
17:04:08 <TrueBrain> Packetloss! WHOHO!
17:04:28 <glx> stupid putty, I need to first log using ssh to store the key, then it can be used by svn
17:04:41 <Xaroth> pageant
17:04:52 <Xaroth> works for putty as well
17:05:54 <TrueBrain> glx: dev-space is btw also identical to OpenTTD ..
17:06:06 <TrueBrain> account-passwords not yet ;)
17:08:01 <TrueBrain> bah, mouse-button hangs again ... that really happens too often :'(
17:08:23 <glx> winscp works too :)
17:08:47 <Xaroth> yeh, all putty-aware stuff uses pageant, <3
17:09:03 <glx> I don't use pageant :)
17:09:40 <Xaroth> o_O
17:10:20 <TrueBrain> bah, mission almost done, but because of my fucked-up mouse I can't finish :(
17:11:14 <TrueBrain> I really need to figure out why it fucks up ...
17:11:36 <glx> hmm msvc fails to compile
17:11:44 <TrueBrain> details?
17:12:54 <glx> something related to csip in union csip
17:13:10 <TrueBrain> I use the same trick for libemu ..
17:13:15 <TrueBrain> so I assumed it would be safe :)
17:13:43 <TrueBrain> maybe the fact there is a csip inside the csip?
17:13:45 <TrueBrain> would be weird
17:13:59 <TrueBrain> or is the assert_compile complaining?
17:16:41 <glx> csip in csip is the problem
17:16:51 <TrueBrain> k, so we need to rename that a bit :)
17:17:02 <TrueBrain> stupid MSVC :(
17:17:18 <glx> maybe it's because it compiles as C++
17:17:21 <TrueBrain> euh .. what is a reasonable name ... euh ..
17:17:27 <TrueBrain> full?
17:17:57 <TrueBrain> well, I completely miss why by any standard I wouldn't be allowed to create a member with the same name as the parent :p
17:18:03 <TrueBrain> oh .. ctor
17:18:05 <TrueBrain> lol
17:18:06 <TrueBrain> you are right :)
17:18:31 <glx> unions can have constructor ?
17:18:46 <TrueBrain> dunno .. but I can guess it complains because of that ;)
17:20:08 <glx> ha yes they can
17:21:58 <DorpsGek> SVN: truebrain (r128) -Fix: rename type csip to csip32, to avoid conflict in C++ with its member csip (which is not his ctor)
17:25:15 <TrueBrain> k, H2 done .. running O2 now .. pff .. pompiedom ...
17:25:22 <DorpsGek> SVN: glx (r129) -Update: MSVC project file
17:25:29 <TrueBrain> concratz glx ;)
17:26:34 *** Xaroth has quit IRC
17:32:45 <TrueBrain> k, A1 ....
17:32:48 <TrueBrain> euh, A2 :p
17:33:56 <TrueBrain> euh ... out of money .... euh ....
17:44:51 *** Xaroth has joined #openDune
17:44:51 *** ChanServ sets mode: +o Xaroth
17:45:11 <Xaroth> grr
17:47:43 <TrueBrain> the A and O are much easier in lvl2
17:49:53 <Xaroth> heh
17:50:01 <Xaroth> ordos is harder at a later point
17:50:08 <Xaroth> well, not if you use hax, but still
17:56:18 <DorpsGek> SVN: truebrain (r130) [JIT] -Add: mapped another 86 functions (campaign 2, start of campaign 3)
17:56:22 <TrueBrain> s/86/96/
17:56:23 <TrueBrain> oh well
17:56:40 <TrueBrain> new savegames online
17:57:31 <TrueBrain> how many campaigns are there? :)
17:57:38 <Xaroth> er
17:57:43 <Xaroth> 9 per side or something?
17:57:47 <TrueBrain> pff :p
17:57:50 <Xaroth> each 2 or 3 options
17:58:13 <TrueBrain> well, these options are not really relevant to the decompiling
17:58:20 <TrueBrain> as they just load other scenario data, but with the same principles
17:58:34 <TrueBrain> in fact, after playing H and O, A contributes very little
17:58:48 <Xaroth> Ornis, Fremen
17:58:50 <Xaroth> :)
17:58:58 <TrueBrain> you can't play them :p
17:59:04 <Xaroth> no, but they are used
17:59:08 *** Xaroth has left #openDune
17:59:08 *** Xaroth has joined #openDune
17:59:09 *** ChanServ sets mode: +o Xaroth
17:59:14 <Xaroth> er o_O
17:59:35 <Xaroth> dunno why it wanted me to rejoin there..
18:00:12 <Xaroth> ooo dinner
18:00:16 <TrueBrain> enjoy
18:04:53 <TrueBrain> lol, lvl3 gave a LOT of new functions :)
18:05:12 <glx> you'll need to finish the game to get all stuff :)
18:05:24 <TrueBrain> even then, we won't have everything :p
18:09:05 <Xaroth> we just need to play it over and over again
18:09:08 <Xaroth> or have minions, to do that
18:09:14 <TrueBrain> and even then ... ;)
18:09:37 <TrueBrain> for example, there are debug stuff, which are not activated :p
18:11:00 <TrueBrain> hmm .. clean exit ..
18:11:05 <TrueBrain> that happens a lot .. that the game just exists :p
18:11:07 <TrueBrain> I blame my mouse :(
18:11:20 <TrueBrain> darn .. I was doing so well :(
18:13:12 <TrueBrain> cs__3EEE is weird ...
18:14:26 <TrueBrain> it just recorded a bit of data there which is .. strange ..
18:18:07 <TrueBrain> okay .. something broke big time :)
18:20:30 <TrueBrain> manual tried to correct it ... we will see if in the future this gives any additional problems :)
18:23:08 <TrueBrain> but on this rate I never get lvl3 finished ...
18:23:13 <Xaroth> heh
18:26:48 <TrueBrain> whoho, I scared away a worm :)
18:26:56 <Xaroth> heh
18:27:02 <Xaroth> pewpew ftw :P
18:27:12 <TrueBrain> and out of money ... nice ...
18:28:32 <TrueBrain> and again, the same route .... and it crashes ...
18:28:43 <TrueBrain> it calls a function which is garbaged for some reason ..
18:30:15 <TrueBrain> for all I know my functions are wrong :p Ghehe :)
18:31:23 <Xaroth> they wouldn't make much sense if they were wrong
18:31:36 <TrueBrain> well, off-by-one or wrong-bound-check
18:31:40 <TrueBrain> (buffer-overflow in result)
18:31:54 <TrueBrain> but yes, chances are low
18:32:00 <TrueBrain> hmm .. 2 sandworms ...
18:32:14 <Xaroth> think there's 2 or 3 on most maps
18:32:42 <TrueBrain> going to kill one again :)
18:33:29 <TrueBrain> (yes, I have time to waste :p)
18:34:15 <TrueBrain> 1A34:0D5C has to do with it :p
18:35:37 <TrueBrain> [EMU] INT 0x21 AL 0x4C application termination
18:35:39 <TrueBrain> :'(
18:35:40 <TrueBrain> AGAIN!
18:38:18 <TrueBrain> why do units driv eover blooms ... that is just STUPID
18:38:23 <Xaroth> haha
18:38:50 <TrueBrain> don't laugh you ... get to work .. 0C3A is waiting for you :p
18:38:58 * Xaroth shudders
18:39:02 <Xaroth> trying to catch up with what I did
18:49:34 <TrueBrain> a bloomfield inside concrete .. weird
18:49:43 <Xaroth> er
18:50:03 <Xaroth> try, impossible?
18:50:13 <TrueBrain> I remember it always happened in some levels
19:05:03 <TrueBrain> A3 finished ... finally :p
19:11:41 <DorpsGek> SVN: truebrain (r131) [JIT] -Add: mapped another 243 functions (campaign 3, start of campaign 4)
19:15:22 <DorpsGek> SVN: truebrain (r132) -Add (r130, r131): the decompiled code reflecting latest JIT data
19:15:35 <TrueBrain> k, enough playing for one day ... I am getting annoyed by looking at a 640x400 screen on 1680x1050
19:15:38 <TrueBrain> not good for the eyes
19:15:41 <Xaroth> heh
19:15:55 <Xaroth> the other way around is just as bad :P
19:18:56 <TrueBrain> Xaroth: what was it .. -Fix (#2), or what syntax were we going to use?
19:19:18 <Xaroth> [@Xaroth]: so -Fix 1,2,3,4: will work as well
19:19:27 <Xaroth> ( ) are allowed
19:19:29 <Xaroth> [ ] are as well
19:19:31 <Xaroth> # allowed
19:19:33 <TrueBrain> that is a tiny bit too unclear, without # or what ever :p
19:19:39 <Xaroth> r<number> will be ignored
19:20:06 <DorpsGek> SVN: truebrain (r133) [JIT] -Fix (#2): jump to resolved function, but never seen by me
19:20:29 <TrueBrain> hmm .. you did change it to report from the name of the committer?
19:20:41 <Xaroth> i think I did yeh
19:20:56 <DorpsGek> SVN: truebrain (r134) -Fix (#2, r133): update decompiled code too
19:20:57 <Xaroth> (0000006)
19:20:57 <Xaroth> TrueBrain (administrator)
19:20:58 <TrueBrain> there Alberth ;)
19:21:55 <TrueBrain> not the most clear, Mantis .... but I guess it is just a bit getting used to
19:22:58 <Alberth> thanks for the quick fix ;)
19:23:15 <TrueBrain> I wonder what the next entry will be which makes it crash ;) :p
19:23:46 <TrueBrain> Xaroth: can you edit your message on bugs.opendune.org, it states un-true information (or out-dated)
19:23:55 <Xaroth> ?
19:23:56 <TrueBrain> or post an update
19:23:58 <TrueBrain> :p
19:24:03 <Xaroth> wait what
19:24:09 <TrueBrain> go to main_page.php
19:24:44 <Xaroth> you can edit it as well
19:24:48 <TrueBrain> nope
19:24:49 <TrueBrain> tried
19:24:50 <Xaroth> log in, go to edit news
19:25:02 <TrueBrain> oh, THERE
19:25:04 <TrueBrain> lol
19:25:07 <TrueBrain> that is a bit ... hidden :s
19:25:28 <TrueBrain> k, tnx
19:25:32 <Xaroth> :)
19:25:39 <Xaroth> mantis is lots of hidden stuff :P
19:25:52 <TrueBrain> but the #2 monitoring is kind of nice :)
19:26:40 <TrueBrain> I guess soon I will see if I can make a ToC-v2 or what ever, which resolves much more code, and tries to rewrite it in code we will rewrite to too anyway :p
19:28:19 <TrueBrain> and I guess we need a few people who play with the JIT attached :p Just that is not as simple as it sounds ...
19:28:34 <TrueBrain> mostly as it requires you to run Linux :p
19:29:13 <Xaroth> heh
19:29:22 <Xaroth> unless you can make it run on *dows
19:29:41 <TrueBrain> well, it would be possible, just I don't feel like going through that mess of doing so :p
19:31:47 <Alberth> Issue #3 :) http://paste.openttd.org/217131
19:32:07 <Alberth> trying to press 'p' of proceed to play for atreides :)
19:33:19 <Alberth> or should I throw such things in the tracker ?
19:33:43 <Xaroth> hm, for now i doubt it'll be useful
19:33:56 <TrueBrain> Alberth: why do you get those things, and I don't? :'(
19:34:50 <TrueBrain> you did find a nice function :)
19:36:11 <Alberth> I tried to decode it myself, but failed miserably. I guess I should first read and understand the whole 80386 processor manual :)
19:36:19 <TrueBrain> hehe :)
19:36:24 <TrueBrain> this is a 'simple' case statement
19:36:46 <TrueBrain> just f__07C9_005F_0015_22E3 and f__07C9_0066_000E_D629 share code, and together they got everything
19:36:48 <TrueBrain> alone they do not
19:36:55 <TrueBrain> for me it always goes via 0066 .. for you via 005F :p
19:37:30 <TrueBrain> makes you wonder why .. or just fix it .. hmm .. :p
19:37:40 <Alberth> what do those numbers mean? 07c9 is the segment, and 005f seems to be the offset
19:37:47 <TrueBrain> yup
19:38:05 <Xaroth> CS:IP:Len:crc iirc
19:38:10 <TrueBrain> yup :)
19:41:49 <TrueBrain> hmm .. that function is somehow interesting :)
19:42:46 <TrueBrain> it has 4 options ... something like -2, -1, 1 or 2 ..
19:44:45 <TrueBrain> it is something when the game runs ...
19:45:31 <TrueBrain> a 'clamp' function?
19:47:23 <Xaroth> clamp?
19:47:39 <TrueBrain> make sure a value is between 2 other values
19:47:43 *** Yexo has joined #openDune
19:47:49 <TrueBrain> 30 15 60
19:47:51 <TrueBrain> 4 2 8
19:47:52 <TrueBrain> 128 1 255
19:47:54 <TrueBrain> random values of parameters
19:47:56 <Alberth> another Dutch person :)
19:48:13 <Yexo> hello
19:48:28 <Alberth> hello
19:48:33 <Xaroth> Yexo was here first tho :P
19:49:57 <Alberth> (09:38:25 PM) TrueBrain: makes you wonder why <-- uppercase vs lowercase?
19:50:08 <Alberth> (I used lowercasE)
19:50:11 <TrueBrain> Alberth: you can't type uppercase :p
19:50:22 <TrueBrain> my SDL glue only handles lowercase :p
19:50:36 <TrueBrain> but it is not the handler of the p, what I was hoping for
19:50:42 <TrueBrain> but it is something in-game
19:50:51 <TrueBrain> it is called often
19:51:11 <TrueBrain> the first part makes sure that the second value is / 2 of the first, and the third * 2 of the first
19:51:16 <Alberth> you have the mentat in the picture, that is saying things
19:51:17 <TrueBrain> (or bigger)
19:51:52 <Alberth> some text at the top, and a picture in the background (like the news at TV)
19:54:05 <TrueBrain> yeah, but this function is after that :) When you click Proceed, it goes to ingame, and then this function is called immediatly, and a lot :)
19:55:01 <Alberth> some io event handler possibly
19:56:20 <TrueBrain> doesn't look like it .. the rate and numbers change when I do things in the game
19:56:23 <TrueBrain> like moving units
20:00:43 <TrueBrain> often the function is called with constant values .. which makes it an even more weird function :p
20:00:47 <TrueBrain> oh well .. let me patch it up for you
20:04:27 <DorpsGek> SVN: truebrain (r135) [JIT] -Fix: 2 jumps to resolved functions, but never seen by me (reported by Alberth)
20:04:53 <Alberth> ah, another try :)
20:04:54 <DorpsGek> SVN: truebrain (r136) -Fix (r135): update decompiled code too
20:05:19 <TrueBrain> I really can't make anything out of that function :) Some kind of magic ;)
20:06:59 <Alberth> it's working now for me
20:07:07 <TrueBrain> good :)
20:07:15 <TrueBrain> tha tI like to hear ;)
20:07:16 <TrueBrain> MSVC?
20:07:30 <Alberth> linux
20:07:37 <TrueBrain> that explains why it works ;)
20:07:39 <TrueBrain> haha :)
20:07:44 <TrueBrain> 32bit? 64bit?
20:08:43 <Alberth> 32bit at a 64bit AMD
20:08:57 <TrueBrain> hmm .. here too .. so I wonder where those minor changes come from ...
20:09:31 <TrueBrain> oh, who cares ... the changes are not wrong :)
20:11:10 <Alberth> http://paste.openttd.org/217136
20:11:32 <TrueBrain> yeah, you will keep on getting them for the time being
20:11:32 <Alberth> 3.9 slabs and 1 enemy into the game :)
20:11:38 <TrueBrain> in this case it has to do with buildings
20:11:51 <TrueBrain> just try again ;) Ghehe :)
20:14:42 <Alberth> I assume you like me reporting these things. If not, plz say so.
20:15:06 <TrueBrain> well, past this point they are not really useful atm
20:15:15 <TrueBrain> for 0C3A for example you should slap Xaroth to hurry up :p :p
20:16:33 <TrueBrain> 4300 unresolved calls ...
20:18:08 <Xaroth> O_O
20:18:12 <TrueBrain> of the 18k calls to 11k functions
20:22:39 <Alberth> oh, I remember, I could shoot my own buildings :p
20:22:47 <TrueBrain> haha
20:28:53 <TrueBrain> from the 345 far calls, 154 are in fact resolvalbe
20:31:02 <Alberth> good night
20:31:06 <TrueBrain> night Alberth
20:31:15 *** Alberth has left #openDune
20:31:19 <TrueBrain> from the 4300, I can in theory resolve 1500 without too much effort
20:31:24 <TrueBrain> so that is not such a big win
20:50:17 <TrueBrain> oh well, enough for today
20:50:23 <TrueBrain> night all
20:50:36 <Xaroth> nn TrueBrain
20:55:48 <TrueBrain> any progress btw Xaroth? :)
20:56:30 <Xaroth> meh, cleaning up, trying to figure out wth it's actually doing
20:56:36 <TrueBrain> haha :)
20:56:38 <TrueBrain> good luck ;)
20:56:53 <Xaroth> you say it's got something to do with buildings, but I don't see anything :P
20:57:08 <TrueBrain> 0C3A, that first function, is 100% building related
20:57:13 <TrueBrain> and if you don't see that, you have to clean your eyes :p
20:57:21 <TrueBrain> Building_Allocate() gives it away :p
20:58:22 <Xaroth> yeh but i'm more talking about the logic i see
20:58:25 <Xaroth> the LFP stuff
20:58:38 <TrueBrain> at -0x4 and -0x6 the pointer to the building is stored
20:58:40 <TrueBrain> lfp just loads it back
20:59:12 <TrueBrain> emu_lfp(&emu_es, &emu_bx.x, &emu_get_memory16(emu_ss, emu_bp, -0x4));
20:59:13 <TrueBrain> emu_orws(&emu_get_memory16(emu_es, emu_bx.x, 0x4), 0x4);
20:59:23 <TrueBrain> just means: b->variable_04 |= 0x0004
20:59:32 <TrueBrain> (where b is the Building * from allocate)
21:01:57 <TrueBrain> and what I can tell the rest is just data organizing, putting things at the right place, etc etc
21:04:38 <Xaroth> hm
21:05:07 <TrueBrain> and FYI, I currently rewrite a function 3 times before it is what you see in SVN :) (first I rewrite it to remove a few asm shit, then I restructure it to be one function, then I make sense out of it :p)
21:05:55 <Xaroth> heh
21:08:42 <TrueBrain> so, got a bit further now? :)
21:13:53 <TrueBrain> oh, yeah, I was going to bed :) Second attempt ;)
21:42:52 <TrueBrain> bah, failed again :p
21:49:41 <Xaroth> heh, no, decided to rewrite it in a more neatly fashion
21:50:10 <Xaroth> and fighting with MSVC
21:50:39 <Xaroth> booked anti-slip course thing, for my beerday
21:55:57 <Xaroth> hm, TrueBrain, am i correct to assume that the LFP just mindlessly keeps re-loading the same memoryblocks over and over again>?