Our newest team member, Ryan, has not only been fixing lots of my
poorly-hacked code, but has also been playing through the game, and
finding lots of plot-related bugs. For me, this means more work on
the Usecode-interpreter, which has been the most frustrating, and
the most satisfying, part of this project.
And I think I've got the solution to most of the problems.
First, the ABRT opcode, which I was interpreting the same as a RET,
is really like a 'throw' in Java; it not only returns, but passes its effect
upwards to the caller. In addition, the 0x4 opcode, which I was interpreting
as a 'jmp-if-done', is really a 'catch', and the previously 'unknown'
opcode, 0x40, is always the target of a 'catch'. So if a called function
returns with an ABRT, control should pass immediately there. I'll
give this all a try tonight.
I'm a news junkie, and have been following the Middle East peace
talks almost hourly. It's depressing, but I see no way the two sides
can compromise on Jerusalem when both have religious reasons
for their claims. My proposal (which, of course, nobody
really cares about:-)) would be for them to share sovereignty, with
a city council made up of representatives from both sides, and an
integrated police force.
I know it seems improbable that the two sides could ever trust each
other to do something like that. But then, weren't Britain and France
mortal enemies for hundreds of years, with each claiming the other's