IRC logs for #opendune on OFTC at 2010-03-06
            
01:36:46 *** glx has quit IRC
01:37:00 *** glx has joined #openDune
01:37:00 *** ChanServ sets mode: +o glx
04:33:15 *** glx has quit IRC
07:37:30 *** Yexo_ has joined #openDune
07:37:30 *** ChanServ sets mode: +v Yexo_
07:44:29 *** Yexo has quit IRC
10:59:31 <Xaroth> o/
13:06:43 *** Yexo_ is now known as Yexo
13:17:09 *** Yexo has quit IRC
13:17:34 *** Yexo has joined #openDune
13:17:34 *** ChanServ sets mode: +v Yexo
13:31:43 *** glx has joined #openDune
13:31:44 *** ChanServ sets mode: +o glx
13:31:58 <glx> hello
13:32:36 <TrueBrain> howdie :)
13:53:02 *** glx has quit IRC
13:53:13 *** glx has joined #openDune
13:53:13 *** ChanServ sets mode: +o glx
14:18:04 *** glx has quit IRC
14:18:15 *** glx has joined #openDune
14:18:15 *** ChanServ sets mode: +o glx
20:38:04 <TrueBrain> I am wondering why 1.07us and stuff don't load at all ... do they differ that much?
20:38:38 <TrueBrain> hard to trace in this stage
20:43:15 <glx> maybe because it doesn't have language specific stuff some global data are not at the same place
20:43:37 <TrueBrain> it somehow seems to detect that
20:44:04 <glx> different overlays?
20:44:14 <glx> with data in CS
20:44:40 <TrueBrain> owh, I now see my test-dirs are wrong, so it doesn't read any file :)
20:44:41 <TrueBrain> haha
20:47:57 <TrueBrain> k, 1.00 datafiles just crash
20:48:15 <TrueBrain> unresolved shit
20:48:29 <TrueBrain> I wanted to start the JIT, but lets not do that :p
20:48:49 <TrueBrain> 1.07hs crashes the same way
20:49:03 <TrueBrain> so does us
20:49:13 <TrueBrain> ah, and eu too
20:49:15 <TrueBrain> LOL
20:51:18 <TrueBrain> I should pay attention to what I symlink :)
20:51:25 <TrueBrain> ln -sf does no longer what I expect it to do
20:54:01 <TrueBrain> hmm .. it makes the jit crash
20:54:03 <TrueBrain> NOT NICE!
20:56:17 <TrueBrain> k ... 1.07 now 'loads'
20:56:20 <TrueBrain> it does skip the intro
20:56:41 <TrueBrain> but it doesn't really work :p
20:57:45 <DorpsGek> SVN: truebrain (r941) [JIT] -Add: mapped another function
20:57:46 <Xaroth> grr, if i configure my sound to 5.1.. which i have
20:57:57 <Xaroth> ventrilo only does front speaker sounds
20:58:08 <Xaroth> windows media player, only does front speaker sounds
20:58:09 <DorpsGek> SVN: truebrain (r942) -Update (r941): update decompiled code
20:58:11 <Xaroth> winamp.. same deal
20:58:26 <TrueBrain> use a decoder, and use a digital output
20:58:35 <TrueBrain> after that, all my problems where gone
20:58:56 <Xaroth> I've still to figure what microsoft is seeing as drivers :P
20:59:20 <Xaroth> I mean, in xp it all worked out of the box,
21:02:40 <TrueBrain> he, Dune2 has one more debug statement as left-over
21:02:44 <TrueBrain> the rest are all cleaned up
21:02:51 <TrueBrain> I wonder if this also holds for other dune versions ...
21:02:53 <TrueBrain> too much effort :p
21:03:35 <TrueBrain> in the optimal world we should decompile all other verions, and do a compare
21:03:40 <TrueBrain> who wants to take care of that? :p
21:04:08 <Xaroth> hm
21:04:10 <Xaroth> unknown device
21:04:12 <Xaroth> ATK0110
21:08:04 <tneo> hello is sound working in v0.3?
21:08:16 <tneo> and if so what was the timidity command again?
21:08:31 <TrueBrain> it says the timidity command on startup, if it cant find a MIDI port :)
21:08:37 <TrueBrain> timidity -iA
21:09:52 <Xaroth> hm, audtio drivers for Win7 x64
21:11:41 <Xaroth> HA
21:11:46 <Xaroth> ATK0110 driver for WindowsXP/Vista/Win7 32&64-bit
21:12:54 <TrueBrain> this is weird .. this debug line only prints the last line ...
21:12:58 <TrueBrain> that simply doesn't make sense :(
21:13:35 <glx> tneo: you have to set sound and music to 7 in config.c
21:13:58 <tneo> hmm timidity doesn't want to start :-(
21:14:08 <glx> maybe it's already started
21:14:14 <tneo> can't create mcop directory
21:14:40 <Xaroth> brb reboot :o
21:15:17 <tneo> oo ic
21:16:10 <TrueBrain> \n is 0x10, not?
21:16:17 <glx> yup
21:16:38 <TrueBrain> no, 0xA
21:16:38 <glx> hmm no 0x0A
21:16:46 <glx> and \r is 0x0C
21:16:48 <TrueBrain> and 0xC is \r
21:16:52 <TrueBrain> yes .. then you documented this string wrong :p
21:17:02 <TrueBrain> it has 0xD :p
21:17:13 <TrueBrain> carriage return ..
21:17:15 <TrueBrain> lol
21:17:47 <TrueBrain> no, \r is 0xD
21:17:51 <TrueBrain> pfew .. not going that crazy :)
21:17:52 <glx> indeed :)
21:18:02 <glx> windows EOL is 0A0D
21:18:15 <TrueBrain> this string is only \r
21:18:19 <TrueBrain> which linux does not like (at all)
21:18:27 <TrueBrain> well, it does what it should do
21:18:33 <TrueBrain> it goes back to the begin of the line
21:18:37 <TrueBrain> but .. not what I expect it to do :)
21:20:46 <TrueBrain> Program in memory: 274432
21:20:47 <TrueBrain> Buffer allocations: 234336
21:20:49 <TrueBrain> Misc allocations: 38640
21:20:50 <TrueBrain> Spare RAM: 101024
21:20:52 <TrueBrain> DOS prompt memory free must be 547408.
21:21:23 <DorpsGek> SVN: truebrain (r943) -Fix: fix up documentation about 353F:019E
21:22:05 <glx> tneo: if your system is like my VM, timidity is loaded at boot
21:22:23 <glx> but you maybe need to connect MIDI through to timidity
21:22:36 <tneo> and how to do that? :-/
21:22:45 <glx> aconnect -i -o
21:22:46 <tneo> and how to check it is running?
21:23:03 <tneo> client 0: 'System' [type=kernel]
21:23:04 <tneo> 0 'Timer '
21:23:04 <tneo> 1 'Announce '
21:23:04 <tneo> client 14: 'Midi Through' [type=kernel]
21:23:04 <tneo> 0 'Midi Through Port-0'
21:23:04 <tneo> client 16: 'TerraTec DMX6Fire' [type=kernel]
21:23:06 <tneo> 0 'MIDI-Front DMX6fire 0'
21:23:08 <tneo> 32 'Wavetable DMX6fire 0'
21:23:17 <TrueBrain> no timidity :)
21:23:23 <TrueBrain> besides, OpenDUNE will always pick client 14
21:23:34 <glx> oh real midi hardware?
21:23:50 <glx> try aconnect 14 16
21:24:15 <glx> hmm no it's just a MIDI plug I guess
21:24:24 <TrueBrain> 16:0 for sure is
21:24:27 <TrueBrain> 16:32 I dunno
21:25:43 <glx> btw I have 4 timidity ports at boot :)
21:26:52 <Xaroth|Work> oooOOoooo
21:26:53 <Xaroth|Work> this might work
21:26:54 <glx> and I have 0:1 (Announce) connected to 15:0 (not in the list)
21:28:00 <Xaroth> muuuuuch better
21:30:25 <TrueBrain> glx: voice drivers 0 till 3 use less memory than voice driver 4
21:30:29 <TrueBrain> can you maybe tell me what it is?
21:31:09 <glx> http://glx.dnsalias.net:8080/opendune/drivers.txt
21:31:50 <glx> hmm not very explicit ;)
21:32:12 <TrueBrain> music driver 1 uses much less memory than the others
21:32:17 <TrueBrain> 0x1500 less
21:32:31 <TrueBrain> well, I am currently just guessing it is memory we talk about, but I am counting numbers :p
21:32:44 <glx> Ad Lib(R) Gold Music Synthesizer Card
21:32:58 <TrueBrain> the 'Gold' part indeed gives the suggestion it is better :p
21:33:31 <glx> gold is driver 4
21:33:48 <TrueBrain> if (config->musicDrv == 1) {
21:33:49 <TrueBrain> emu_si += 0x59D8;
21:33:51 <TrueBrain> } else if (config->musicDrv != 0) {
21:33:52 <TrueBrain> emu_si += 0x7530;
21:33:54 <TrueBrain> }
21:34:32 <TrueBrain> btw, doing the function in B480 :)
21:34:35 <TrueBrain> the main(), so it seems
21:34:46 <glx> ha yes it does a lot ;)
21:35:05 <TrueBrain> so far I am not impressed :)
21:35:29 <glx> just some weird checks
21:35:53 <TrueBrain> hehe, I played too much with DOS
21:36:02 <TrueBrain> I just understand what it does 1 block before the PSP
21:36:06 <TrueBrain> there the MSB is, with the size :p
21:36:22 <glx> yes it checks memory
21:44:06 <glx> oh I still have http://devs.opendune.org/~glx/libemu.diff
21:44:40 <TrueBrain> maybe reverse the check and make it return?
21:44:46 <TrueBrain> less likely to cause problems later :)
21:44:58 <glx> oh right
21:45:04 <glx> and less hacky too
21:47:10 <glx> refreshed
21:47:33 <TrueBrain> fine by me :)
21:47:40 <TrueBrain> if (g_global->variable_00A0 - memoryNeeded - 0x84530 < 0) {
21:47:42 <TrueBrain> printf("Insufficient memory by %ld bytes.\n", g_global->variable_00A0 - memoryNeeded - 0x84530);
21:47:43 <TrueBrain> exit(1);
21:47:45 <TrueBrain> }
21:47:46 <TrueBrain> tralalala
21:47:51 <TrueBrain> @calc 0x84530
21:47:51 <DorpsGek> TrueBrain: 542000
21:47:55 <TrueBrain> 542k of memory :o
21:48:11 <glx> @calc 640 - 542
21:48:11 <DorpsGek> glx: 98
21:48:37 <TrueBrain> 0x7530 for audio
21:48:43 <TrueBrain> @calc 0x3E80 + 0x7D0
21:48:43 <DorpsGek> TrueBrain: 18000
21:48:44 <TrueBrain> for voice
21:48:50 <TrueBrain> owh, and
21:48:51 <TrueBrain> @calc 0x1770
21:48:51 <DorpsGek> TrueBrain: 6000
21:48:53 <TrueBrain> at all times
21:48:57 <TrueBrain> no idea why that is seperated ...
21:49:37 <glx> so mouse driver and dune2, no more
21:50:17 <glx> maybe MSCDEX could be loaded too, but probably too much
21:50:33 <glx> not needed anyway ;)
21:50:43 <TrueBrain> hmm .. it first checks how big dune2.exe is in the memory, and it seems to add that to the 'available' memory
21:56:48 <TrueBrain> g_global->variable_00A0 = g_global->variable_009C;
21:56:52 <TrueBrain> if (g_global->variable_00A0 - memoryNeeded - 0x84530 < 0) {
21:56:57 <TrueBrain> memoryNeeded + 0x84530 - g_global->variable_009C;
21:57:06 <TrueBrain> sometimes I really really really do not get Dune :(
21:57:40 <TrueBrain> ah, no, A0 is wrong :)
21:57:41 <TrueBrain> pfew :)
22:00:40 <DorpsGek> SVN: glx (r944) [LibEMU] -Codechange: allow JIT to continue after loading a crash.bin
22:04:21 <TrueBrain> voice driver is indeed disabled with no XMS
22:06:07 <glx> IIRC it's disabled at 2 places
22:06:26 <TrueBrain> it tries to allocate a small piece of memroy int he XMS
22:06:30 <TrueBrain> if that fails, it disables it too
22:06:44 <TrueBrain> maybe if I uncover this a bit more, I can even write a simple XMS replacement :)
22:07:27 <TrueBrain> @calc 0xDE2B0
22:07:27 <DorpsGek> TrueBrain: 910000
22:07:35 <TrueBrain> it tries to allocate 910k in the XMS, I think
22:10:17 <glx> l__0152 ?
22:10:43 <TrueBrain> yes
22:13:45 <TrueBrain> it only does voice in XMS
22:13:51 <TrueBrain> all other things are done in the lower memory
22:14:32 <glx> f__23E1_0004_0014_2BC0 calls different things depending on last arg
22:15:20 <TrueBrain> but it is all related to XMS, not?
22:15:47 <TrueBrain> if we can write some temporary thing for it, you can get your voices :)
22:15:53 <TrueBrain> (more work! :p)
22:16:07 <TrueBrain> I have no idea how XMS works ... maybe it is VERY simple, with a few clever memcpy
22:16:12 <TrueBrain> but I don't know how it switches ...
22:16:15 <glx> well f__23E1_0004_0014_2BC0 allocates in normal memory too
22:16:50 <TrueBrain> well, the 0x40 switch :)
22:17:24 <glx> 0x10 for driver's buffer
22:19:01 <glx> oh last arg is a flag indeed
22:19:48 <TrueBrain> the first byte in the (decoded) config is a bit weird :p
22:20:14 <glx> variable_0000 ?
22:20:21 <TrueBrain> yes
22:20:34 <TrueBrain> it always does the same, except when it is '2'
22:20:36 <TrueBrain> well, 9
22:21:43 <TrueBrain> emu_bx = config->variable_0000 - 7;
22:21:44 <TrueBrain> if (emu_bx > 0x5) goto l__01CC;
22:22:00 <TrueBrain> so .. variable_0000 < 7 || variable_0000 > 12, goto 01CC
22:22:03 <TrueBrain> right? :)
22:23:17 <TrueBrain> "Unrecognized graphic mode!\r\n"
22:23:19 <TrueBrain> ah :)
22:23:34 <glx> oh right graphic mode
22:24:13 <TrueBrain> from 7 till 12 are valid, and not 9
22:24:55 <TrueBrain> makes little sense atm
22:25:29 <TrueBrain> g_global->variable_6C76 = 3;
22:25:30 <TrueBrain> if (config->graphicDrv >= 7 && config->graphicDrv <= 11 && config->graphicDrv != 9) {
22:25:32 <TrueBrain> g_global->variable_6C76 = 3;
22:25:33 <TrueBrain> makes no sense either
22:26:12 <glx> hehe
22:26:34 <glx> and I guess variable_6C76 is video mode
22:26:46 <TrueBrain> 80x25?
22:26:48 <TrueBrain> :)
22:26:57 <TrueBrain> I dunno what it represents .. it is always 3 :p
22:28:00 <TrueBrain> hmm .. the only valid music drivers are between 8 and 11?
22:28:14 <glx> and it's always compared to 3
22:28:45 <TrueBrain> owh, no, we never loaded it with any value between 8 and 11 ...
22:29:08 <TrueBrain> euh, and 12
22:29:48 <glx> 01fd 01fd 01fd 01fd 01fd
22:29:55 <glx> 0->4
22:30:06 <TrueBrain> yes, not decoded :)
22:30:20 <glx> nice stuff ;)
22:30:29 <TrueBrain> you can't configure the video mode
22:30:30 <glx> why not use a goto????
22:30:36 <TrueBrain> in setup that is
22:30:38 <TrueBrain> glx: switches
22:30:41 <TrueBrain> a switch causes this
22:30:45 <TrueBrain> no switch-resolving, like modern compilers
22:31:04 <TrueBrain> euh ...
22:31:09 <TrueBrain> 8 till 12 are 'disabled'
22:31:12 <TrueBrain> it changes it to '1'
22:32:09 <glx> http://glx.dnsalias.net:8080/opendune/drivers.txt <-- makes sense
22:32:25 <TrueBrain> why?
22:32:28 <TrueBrain> as 13 is allowed
22:32:33 <glx> all ADL
22:32:55 <TrueBrain> check number 13
22:33:04 <glx> hmm 5
22:33:45 <TrueBrain> the soundDrv is never checked
22:34:05 <TrueBrain> stupid, this musicDrv check is after the memory allocation tsuff
22:34:11 <TrueBrain> and '1' needs less memory
22:36:57 <glx> hmm 13 should be disabled too
22:37:52 <TrueBrain> then please check the code and see if I am not going nuts :p
22:37:59 <TrueBrain> at 01E7
22:38:41 <glx> as 8 to 13 are non existant in data files
22:38:45 <TrueBrain> yes
22:38:48 <glx> not in sound.pak
22:38:48 <TrueBrain> but please check the code
22:38:52 <TrueBrain> B480:01E7
22:38:56 <TrueBrain> it does allow 13, not?
22:40:20 <TrueBrain> musicDrv - 8 <= 4, change to 1
22:40:31 <TrueBrain> so musicDrv >= 8 && musicDrv <= 12, change to 1
22:40:34 <TrueBrain> yes, 13 will pass through
22:41:06 <glx> indeed
22:41:37 <glx> let's see what happens if I set it to 13 :)
22:41:52 <TrueBrain> @base 10 16 13
22:41:52 <DorpsGek> TrueBrain: D
22:42:13 <TrueBrain> just double checked with dosbox, 13 is indeed allowed
22:43:13 <glx> and it runs
22:43:23 <TrueBrain> haha, indeed, a bit later it resets voiceDrv AGAIN :p
22:43:31 <TrueBrain> runs, but did it load the other drv?
22:43:36 <TrueBrain> as with 12 it loads to, but switches to drv1
22:43:43 <glx> music 13, sound 7
22:43:59 <glx> I hear sounds in intro but no music
22:44:12 <TrueBrain> weird that 'sound' is never validated
22:44:17 <TrueBrain> as it expected it to always be the same
22:45:39 <glx> if (filename == NULL || !File_Exists(filename)) return false; <-- of course it doesn't crash ;)
22:45:57 <TrueBrain> hehe
22:46:09 <glx> so 13 is like 0
22:46:13 <TrueBrain> but okay .. that seemly is a bug, I think they intended to disable 13 too
22:46:27 <glx> not disable, but redirect
22:47:22 <TrueBrain> emu_get_memory16(emu_ds, 0x00, 0x6CD5) = 0;
22:47:23 <TrueBrain> emu_get_memory16(emu_ds, 0x00, 0x6CD3) = 0xFA00;
22:47:25 <TrueBrain> as uint32
22:47:31 <TrueBrain> is it 0xFA00 or 0xFA000000
22:48:24 <glx> 0xFA000000 (LE)
22:49:40 <TrueBrain> This: /* 6CD3(64) */ PACK uint32 variable_6CD3[8][2]; /*!< ?? Array init in f__B480_0000_0018_A09B(). */
22:49:45 <TrueBrain> is what you claim, yet I can only find [5]?
22:50:24 <TrueBrain> owh, it should even be 9 in size ..
22:52:13 <glx> linked to 6C93
22:54:06 <glx> cs__253D.c:258
22:54:25 <glx> 6C93 and 6CD3 are accessed the same way
22:54:52 <TrueBrain> in that case 6C93 can also be 9 long :p
22:55:25 <glx> I can't remember in what order I did it :)
22:55:45 <TrueBrain> well, I have a <= 8 here, so :)
22:56:53 <TrueBrain> emu_get_memory16(emu_ds, 0x00, 0x6C82) = 0x353B;
22:56:54 <TrueBrain> emu_get_memory16(emu_ds, 0x00, 0x6C80) = 0x20;
22:56:59 <TrueBrain> cs = 0x20, if it is a csip32 pair, right?
22:57:32 <TrueBrain> no, the ip
22:57:34 <TrueBrain> pfew :)
22:57:40 <TrueBrain> File_Error_Wrapper
22:57:42 <TrueBrain> whoho
22:58:23 <glx> CS:IP are stored reversed ;)
22:59:57 <TrueBrain> fonts really is a hack :)
23:02:06 <TrueBrain> eeuuhh ...
23:02:10 <TrueBrain> 02F4: jne 02F6
23:02:13 <TrueBrain> 02F6: ..
23:02:20 <TrueBrain> sounds ... useful?
23:03:30 <glx> looks like dune2 source ;)
23:05:18 <TrueBrain> owh, I was wrong about my 9
23:05:24 <TrueBrain> despite the <= 8, it is uint32 access
23:05:28 <TrueBrain> as it is a [2]
23:05:33 <TrueBrain> it just accesses 4 elements
23:05:37 <TrueBrain> (1 till 5)
23:05:42 <TrueBrain> well, till 4 :p
23:06:12 <TrueBrain> it is used to calculate the stats I just showed, when exiting the game
23:06:26 <TrueBrain> so it has to do with the memory manager :)
23:06:48 <TrueBrain> I am suprised by the initial values ...
23:06:49 <TrueBrain> what ever
23:07:24 <glx> aren't these memory area used when loading files?
23:07:39 <TrueBrain> dunno
23:08:20 <TrueBrain> 'Program in memory:' g_global->sizeExecutable + g_global->variable_66F4 - g_global->memoryFree
23:08:31 <glx> at least accessed in emu_File_ReadLengthFile()
23:10:36 <Xaroth> (dutch quote incomming) Als gevolg van een storing kunt u momenteel problemen ondervinden bij gebruik van onze dienst Nieuwsgroepen. Onze excuses voor dit ongemak. Wij stellen alles in het werk om de storing zo spoedig mogelijk op te lossen.
23:10:41 <Xaroth> -_-
23:10:43 <Xaroth> stupid kpn
23:10:58 <TrueBrain> poor you
23:13:22 <Xaroth> still don't know which idiot calls one of their server after an explosion (supernova) ...
23:13:23 <TrueBrain> those 6CD3 are how many bytes are free
23:13:26 <Xaroth> that's asking for trouble!
23:18:31 <TrueBrain> Insufficient memory by -100432 bytes.
23:18:35 <TrueBrain> think I did something wrong ;)
23:20:42 <Xaroth> lol
23:21:49 <TrueBrain> ps, glx, it was 0xFA00, not 0xFA000000
23:22:29 <TrueBrain> hmm, stats when leaving the game are vastly differen :(
23:23:32 <glx> ha right, I just checked in debugger
23:23:49 <TrueBrain> ha, no, values are identical :)
23:24:14 <TrueBrain> do we want to keep this debug information ... might be useful to discover what it does? Maybe ...
23:24:19 <TrueBrain> so I need to make it non-crashing I guess
23:25:00 <TrueBrain> @0x1c
23:25:03 <TrueBrain> @cals 0x1c
23:25:07 <TrueBrain> @calc 0x1c
23:25:07 <DorpsGek> TrueBrain: 28
23:25:09 <TrueBrain> typing is hard :p
23:32:16 <TrueBrain> Program in memory: 12288
23:32:17 <TrueBrain> Buffer allocations: 37728
23:32:19 <TrueBrain> Misc allocations: 38640
23:32:20 <TrueBrain> Spare RAM: 35488
23:32:22 <TrueBrain> DOS prompt memory free must be 23120.
23:32:23 <TrueBrain> not completely ....
23:32:57 <glx> in dosbox?
23:33:29 <TrueBrain> no, in my conversion
23:39:51 <TrueBrain> Program in memory: 274432
23:39:52 <TrueBrain> Buffer allocations: 234336
23:39:54 <TrueBrain> Misc allocations: 38640
23:39:55 <TrueBrain> Spare RAM: 101024
23:39:57 <TrueBrain> DOS prompt memory free must be 547408.
23:39:58 <TrueBrain> perfect match :)
23:40:54 <glx> nice
23:41:43 <TrueBrain> one crash remaining
23:41:45 <TrueBrain> a weird one
23:44:19 <TrueBrain> not related to overlay manager ... then what?! :(
23:46:08 <glx> where?
23:46:40 <TrueBrain> the very last function
23:47:50 <TrueBrain> hmm .. even a clean build should crash, when I look at the code ... :s
23:49:49 <TrueBrain> wait, possible my \r -> \n rewrite
23:50:11 <TrueBrain> yeah :)
23:50:40 <glx> rewrite without validity check?
23:50:53 <TrueBrain> the debug thing checks on \r
23:50:54 <TrueBrain> not on \n