#nuvie@irc.freenode.net logs for 25 Aug 2010 (GMT)

Archive Today Yesterday Tomorrow
Nuvie homepage

[00:12:33] --> Kirben has joined #nuvie
[04:48:03] <-- servus has left IRC (Quit: :wq)
[05:05:55] --> servus has joined #nuvie
[06:32:52] <-- servus has left IRC (Quit: :wq)
[06:46:47] --> servus has joined #nuvie
[07:55:39] <-- servus has left IRC (Quit: :wq)
[08:19:59] --> servus has joined #nuvie
[08:37:12] <-- servus has left IRC (Quit: :wq)
[08:54:34] --> servus has joined #nuvie
[08:56:02] --> Yuv422 has joined #nuvie
[09:20:13] <-- Yuv422 has left IRC (Quit: Yuv422)
[11:54:30] --> Yuv422 has joined #nuvie
[12:20:18] <Yuv422> http://pastebin.com/aqfrEr05
[12:20:46] <Yuv422> a list of the functions in my u6 idb database
[12:20:51] <wjp> not bad
[12:21:10] <Yuv422> :)
[12:21:21] <wjp> a large number of the unnamed ones are likely low-level stuff?
[12:21:32] <Yuv422> yeah
[12:21:46] <Yuv422> I've been focusing on the interesting game logic
[12:21:55] <wjp> very sensible :-)
[12:22:26] <Yuv422> I've just found the code that draws the sky, sun moon map
[12:23:02] <Yuv422> u6 uses lookup tables for everything
[12:23:35] <Yuv422> I found some funny code the other day
[12:23:58] <Yuv422> the developers were trying to save space by using a packed bit array
[12:24:13] <Yuv422> they wanted to use byte alignment
[12:24:25] <Yuv422> but the compiler chose word alignment
[12:24:39] <Yuv422> so their array was doubled in size
[12:25:18] <Yuv422> with the data in the lower byte of each word
[12:25:24] <wjp> hehe, oops
[12:26:15] <Yuv422> it's nice when you find things like that
[12:26:41] <Yuv422> I also found some logic that had been disabled
[12:27:19] <Yuv422> the people that rush up to talk to the avatar were meant to pick pocket the player
[12:27:32] <Yuv422> but the code for that cannot be called
[12:34:29] <Yuv422> wjp I had a look at the idados code and there seems to be a lot of differences between the idados dosbox code and the vendor code
[12:34:39] <Yuv422> more than the idados changes
[12:34:55] <wjp> oh?
[12:34:57] <wjp> let me check
[12:40:06] <wjp> ah, I already updated vendor to 0.74, but haven't merged that to trunk yet
[12:40:16] <Yuv422> ah
[12:40:19] <Yuv422> cool
[12:40:48] <wjp> vendor r44 should be the one trunk is based off currently
[12:41:07] <Yuv422> right
[12:41:28] <wjp> (which is 0.73 with one core_prefetch patch from qbix)
[12:41:47] <Yuv422> cool
[12:42:31] <Yuv422> looks like hexrays changed the debugger a bit to add support reg tpes
[12:42:33] <Yuv422> type
[12:56:50] <wjp> support reg types?
[12:58:24] <Yuv422> sorry, register value types
[12:58:54] <Yuv422> int, float etc
[13:01:37] <wjp> ah, I see. Useful
[13:13:39] <Yuv422> common functionality it grouped together in the u6 exe
[13:13:45] <Yuv422> makes sense I guess
[13:14:31] <Yuv422> once you get the gist of what the functions in a segment do you can kinda make an imformed guess about the rest
[13:15:22] * wjp nods
[13:15:42] <wjp> it sounds likely the segments were separate .obj files
[13:16:07] <Yuv422> yeah
[13:21:26] <Yuv422> there is lots of code like this in u6
[13:21:31] <Yuv422> seg002:09D6 mov word ptr u6_driver_call, 6
[13:21:31] <Yuv422> seg002:09DC push word ptr unk_31D10
[13:21:31] <Yuv422> seg002:09E0 call u6_driver_call ; Indirect Call Far Proce
[13:21:45] <Yuv422> which messes with the decompiler
[13:22:39] <Yuv422> so I put in a system where you can direct the decompiler by using comments
[13:22:52] <Yuv422> so I do this
[13:23:04] <Yuv422> call u6_driver_call ; D:FuncArgs=1
[13:23:23] <Yuv422> which tells the decompiler the number of args to the function
[13:24:07] <wjp> nice; interactive decompiling :-)
[13:24:15] <Yuv422> hehe yeah
[13:24:20] <Yuv422> it's a bit of a hack
[13:24:24] <Yuv422> but it works
[13:43:15] <-- Yuv422 has left IRC (Quit: Yuv422)
[13:46:26] <-- Kirben has left IRC (Ping timeout: 276 seconds)
[14:11:17] <-- clvn-_ has left IRC (Ping timeout: 258 seconds)
[18:32:02] <servus> ... use_rubberducky?
[19:01:49] --> waddler has joined #nuvie
[19:02:10] <-- waddler has left #nuvie
[20:58:49] --> Yuv422 has joined #nuvie
[22:25:11] <-- Yuv422 has left IRC (Quit: Yuv422)
[22:48:24] --> Kirben has joined #nuvie