Open main menu

Difference between revisions of "User:Buddha^/GSoC2007-ProjectDiary"

Added done work on 2007-06-19.
(Added done work on 2007-07-18.)
(Added done work on 2007-06-19.)
Line 242: Line 242:
It looks like some call is jumping in the middle of a "shr al, 1" instruction.
It looks like some call is jumping in the middle of a "shr al, 1" instruction.
I'll see about that tomorrow...
I'll see about that tomorrow...
== 2007-06-19 (Tuesday) - Got prototypes for AGI256 and AGI256-2 working ==
The jump instruction that was pointing in the middle of a "shr al, 1"
instruction (I talked about that in yesterday's post) was part of some
obsolete Hercules graphics mode code. So it was never used in AGI256's
or AGI256-2's code.
Reverse engineered some more of the AGI256. Tried a prototype in ScummVM
based on a theory about how AGI256 works. Didn't work straight away... some
things were off. So took another look at the blitting function
in AGIOBJS.OVL as the blitting function was one of the points were I
wanted/needed more information. Finally at some point it worked!
AGI256 prototype support for ScummVM is here :-).
Encouraged or just on a plain roll I looked at the AGIOBJS.OVL differences
in the blitting function between AGI256 and AGI256-2. There wasn't much
difference in them. Just that the AGI256-2 didn't use mirroring or
run length encoding for its views (That info I had already got from
AGI256-2's readme, though) and little else (How it wrote the pixels into
memory for one). Tried another prototype for supporting AGI256-2 and other
some fiddling and coding, it now works too.
There's some discrepancy in AGI256-2's intro (The background area surrounding
the AGI256-logo, the color bar and the authors text isn't all black, it's
partially grey). But I get something very similar when I run the AGI256-2's
hacked AGI.EXE from command line in full screen mode under Windows
2000 (Although as I tried it just now, it doesn't always do that).
Running the AGI256-2 demo just by clicking on the AGI256-2's hacked
AGI.EXE in Explorer works correctly. So I'm not sure what's causing it
exactly. Gotta look into it...
417

edits