In the attached save, USE the radio and dial 3412 (the
number for the Meteor Police). You'll see the Earth
from space, and then pan right to a Meteor Police car.
Then the game will just hang there forever until you
press F5 or ESC.
(Yesterday, I posted on the forums saying that this
made the come non-completable; today when I realized
you could at least press ESC to get on with the game.
It sure had ME stuck!)
I'm testing on Windows 2000, using Maniac NES (English
US), ScummVM 0.8.0CVS (Oct 15 2005 21:10:23), Features
compiled in: Vorbis FLAC MP3 zLib MPEG2
Save right before Bernard calls police
Logged In: YES
user_id=611886
I've also attached a screenshot of the hang.
Screenshot of hang
Logged In: YES
user_id=56060
Several scenes in the game start the camera at the far
left side of the room and then attempt to pan all the
way to the right before proceeding. Since the NES
engine treats the screen width as 224 (ignoring the
left and right 16 pixels) while ScummVM treats it as
256, the camera is unable to pan far enough and the
scene hangs (until aborted with ESC).
The most obvious occurrence is the "Maniac Mansion"
logo scroll during the intro, though this also happens
when calling the Meteor Police.
Logged In: YES
user_id=166507
More comments from quietust
the "proper" way to fix the scrolling issue in MM NES would
be to define 2 extra "panes" on the window 16 pixels wide on
each side.
though handling sprites in those areas would be tricky
the NES engine treats the screen as only 224 pixels wide the
easiest way to fix that is to actually MAKE the screen 224
pixels wide and then pad it to 256 within the graphics code
an extra 2 virtual screens would probably be simplest
the NES version doesn't even allow you to move the cursor
into them so you wouldn't have to respond to clicks in them
Logged In: YES
user_id=12935
Originator: NO
I am not sure whether adding 2 extra "panes" on the window side would be a good idea. At least I don't see how it would allow to emulate the original game correctly (aside from the fact it would be quite difficult to implement).
Today I experimented with some changes, but there still is something I can't quite grasp, making it hard for me to come up with a proper solution.
In particular, I am not sure how to reconcile the following observations (made with the help of a NES emulator):
* In the intro (meteor crashing down etc.), there are no bordes left or right. The room is 480 pixel wide, and is scrolled to its full extent
* In the first actual game playing room (the one with the big moon etc.), the room is only 224 pixels. The missing 32 pixels are added as black borders left and right
* In the second room (in front of the mansion), things are different yet again -- it is 480 pixels wide (like the intro screen), but here a 16 pixel black border is added to the left, while a 8 pixel wide black border is added on the right
Now, it wouldn't be hard to add a 16pixel border on the left, and a 8 (or 16, if needed) wide border to the right on the fly. But that doesn't explain why the intro screen looked different. Anybody got some idea? Maybe the engine itself handled it differently?
Logged In: YES
user_id=166507
Originator: NO
In original all this depended on room width. Narrower rooms had those borders added. But here is the trick, when a wide room is drawn, 0 starts at third column, and game used this feature of wider display, i.e. in kitchen you could see Edna before she notices you and escape.
What is in SVN now is a dirty attempt to reach that functionality. If you would come with a cleaner solution, that would be fantastic.
Logged In: YES
user_id=12935
Originator: NO
I still don't understand how this explains the difference I observed on the intro room... ?
Fixed in SVN. Though I do not see screen paning in this particular case (a regression?), now intro works well and also on the kitchen it is possible to see Edna without her noticing you first.