o extend MemoryReadStream with XOR facility
o implement MemoryWriteStream
o _fileHandle now is a reference to BaseScummFile class and is created on the fly
o implement ScummNESFile class which is basically extract_mm_nes utility
o update NES MM md5's due to above changes
NOTE: to run MM NES now you need to remove *.LFL files and (probably) rename
ROM to standard conventional name 'Maniac Mansion (XXX).nes'
svn-id: r17300
o Swap palette entries 0x00 and 0x1D in all necessary places. This gets
rid of gray background
o added a function NES_loadCostumeSet(int n) in order to do #1 for sprites
o Widen screen to 256 pixels and center narrow rooms in it
o Partial fix for subtitle rendering, now at least first line is
rendered with identation
svn-id: r17212
o Doesn't crash when going upstairs. Now game is playable up to
the green tentacle
o Proper subtitles colors
o Room mask is decoded but doesn't affect sprites yet
o Inventory draw issues fixed
o Fix actors position when they're facing right
svn-id: r17191
o Actors do not leave trails, though background isn't restored since
that code always uses two buffers and nes isn't. I have to switch it to
use two
o Add Swedish version of MM NES
o Code formatting fixes
svn-id: r17156
formatting standards. Earlier we had half of vars named with leading
underscore and half without it.
Now code in actor.cpp is considerably more readable.
svn-id: r17068
get at least 640x400 window. And finally we have means of implementing
nice looking GUI.
Also updated all backends. If your backend has ability to run with 640x400 or
640x480 resolution then read patch tracker item to find out details. Other
port maintainers shouldn't worry, as this patch doesn't affect them, they
still get their 320x200.
svn-id: r17055
tends to be unappliable anymore, so that's why I decided to commit it when
it required not so much work of manual patching.
I've checked validness of it against IDB but we still have main question open:
How to plug it in properly into our palette code?
svn-id: r16973
missed some unusual mode switching. This implementation let us avoid two nasty
hacks in scumm.cpp.
*Now* we could return to OSystem layers.
patch.
svn-id: r16855
Differences against patch:
o Updated documentation
o Fixed text colors
o Implemented Hercules dithering
Ditherers are based on loom ega and monkey ega, so for zak and mm they're
wrong, i.e. these games look better than with original ditherers.
TODO:
Proper ditherers for zak & MM
EGA ditherers for VGA SCUMM v5 games
svn-id: r16816
o Fixed ScummEngine_v72he::o72_openFile() so autogenerated names also
checked for substitution.
o New case 0 in o100_actorOps() used by Russian updated freddicove. Number
of stack items weren't checked against disassembly
svn-id: r16792
of the game uses. (Unfortunately the data files do not all use the same
capitilization. Some are named "PuttPuttTTT"-something, while others are
named "puttputtTTT"-something.)
svn-id: r16770
method. Right now it is used to eliminate those Windows HE titles which
have different target base names.
If you want to use it, then define another entry in substDataFileNameTable[].
If your version with different base name has other features then you need
to define GF_MULTIPLE_VERSIONS for main entry and add any additional
entries to multiple_versions_md5_settings based on MD5 of the entry.
svn-id: r16764
* baseball2003 and Soccer2004 use Bink videos but just for intro movies and
logos, so we may add them.
* artdemo and readdemo also use Bink, but seems that additionally it uses
them in cutscenes, but since there are just few of them, not like in
full games, we may try to look at them too
* SoccerMLS is (alsmost) working. It runs the intro, shows menu, lets
to select from it but then fails at some Wiz stuff and there is no
hotspots to choose. I think it may be related to overall HE99 problem
with inventory where there is a bug preventing from item selection
o baseball2003 and Soccer2004 featured new LECF index block. Add stub for it
o SoccerMLS used kernelSetFunction 2001 in intro. add stub for it
o Alternative russian freddi3 uses badly formatted logo substitution in intro,
so error() in default case in Gdi::drawBMAPBg() was replaced with warning().
svn-id: r16722
TODO:
o Allow reading from non-processed game executable. Now you need to get
.bin file out of it
o Use color versions of cursors
o Combine MacResExtractor with Win32ResExtractor. Now I just stupidly
create 2 objects and do not use new cursor caching code.
svn-id: r16713
Committed for review/criticize. No further support by the engine, i.e.
detected games will not run, but most complex task is done. Will finish
it tomorrow unless some nasty bugs will pop up.
svn-id: r16686