Hi,

> "Warning: Selector 'signal' of object at a6f0 could not be written to
> (E:\src\freesci\src\engine\ksound.c L68)"

Note that this doesn't have to be bad.


> So I investigate that object:
> 
> >heapobj 0xa6f0
> Class GhostWander
> Species=a6f0, Superclass=89e0
> Local variables @ 0x9b44
> Variable selectors:
>   species[0000] = a6f0 %GhostWander
>   superClass[0002] = 89e0 %Motion
>   -info-[0004] = 8000
>   name[002e] = bc2c
>   client[005a] = 0000 (0)
>   caller[0126] = 0000 (0)
>   x[0008] = 0000 (0)
>   y[0006] = 0000 (0)
>   dx[005c] = 0000 (0)
>   dy[005e] = 0000 (0)
>   b-moveCnt[0060] = 0000 (0)
>   b-i1[0062] = 0000 (0)
>   b-i2[0064] = 0000 (0)
>   b-di[0066] = 0000 (0)
>   b-xAxis[0068] = 0000 (0)
>   b-incr[006a] = 0000 (0)
>   --INVALID--[01fe] = 0000 (0)
>   --INVALID--[0200] = 0000 (0)
>   --INVALID--[0202] = 0000 (0)
>   --INVALID--[0204] = 0000 (0)

Hrm. This smells like the incomplete syscall list early SCI games have...

> Intersting. I do a list selectors and notice that they only go up to 1fd.
> Looks like we aren't reading all the selectors, or the value for the total
> number of them is wrong.

Or they simply aren't present. SCI games of this age don't have all kernel
functions listed either.

> Any idea how I could check this out?

Try increasing the value added in line 175 (soon to be 174, as I'm going
to remove the comment in the next commit) in vocab_debug.c to test this,
please (no, this will not fix the problem; if it helps, please don't
commit it).


llap,
 Christoph


Reply via email to