Skip to content

Instantly share code, notes, and snippets.

@bgK
bgK / myst_windowed.hexdiff
Created January 29, 2011 09:50
Windowed mode patch for Myst Masterpiece Edition
# Allow moving the window
00029FEA: 0F E9
00029FEB: 85 1B
00029FEC: 1A 03
00029FED: 03 00
# Prevent the window from maximising by itself
0002A028: E5 DE
0002A029: 00 02
**** Build of configuration Debug for project scummvm ****
make -j all
error: unknown option `dirty'
usage: git describe [options] <committish>*
--contains find the tag that comes after the commit
--debug debug search strategy on stderr
--all use any ref in .git/refs
--tags use any tag in .git/refs/tags

Prerequisites

Installing

From a computer, download the installable package of the PS3 port from ScummVM's main site. It should be a .pkg file. Copy it to an USB drive.

diff --git a/engines/mohawk/myst_stacks/mechanical.cpp b/engines/mohawk/myst_stacks/mechanical.cpp
index 79de033..ec1fc4c 100644
--- a/engines/mohawk/myst_stacks/mechanical.cpp
+++ b/engines/mohawk/myst_stacks/mechanical.cpp
@@ -41,6 +41,7 @@
_mystStaircaseState = false;
_fortressPosition = 0;
+ _gearsWereRunning = false;
}
void LinkServer::OnServerStart()
{
UpdateData(TRUE);
lanlink.numslaves = m_numplayers+1;
lanlink.type = m_prottype;
lanlink.server = true;
lanlink.speed = m_speed==1 ? true : false;
sf::IPAddress addr;
const Graphics::Surface *VideoDecoder::decodeNextFrame() {
_needsUpdate = false;
readNextPacket();
VideoTrack *track = findNextVideoTrack();
if (!track)
return 0;
const Graphics::Surface *frame = track->decodeNextFrame();
diff --git a/engines/myst3/inventory.cpp b/engines/myst3/inventory.cpp
index 49e563b..254c680 100644
--- a/engines/myst3/inventory.cpp
+++ b/engines/myst3/inventory.cpp
@@ -284,6 +284,7 @@ DragItem::DragItem(Myst3Engine *vm, uint id):
_movieStream = movieDesc->getData();
_bink.setDefaultHighColorFormat(Graphics::PixelFormat(4, 8, 8, 8, 8, 0, 8, 16, 24));
_bink.loadStream(_movieStream);
+ _bink.start();
diff --git a/video/video_decoder.cpp b/video/video_decoder.cpp
index 967bbb5..b87134d 100644
--- a/video/video_decoder.cpp
+++ b/video/video_decoder.cpp
@@ -195,12 +195,13 @@ bool VideoDecoder::setReverse(bool reverse) {
// Attempt to make sure all the tracks are in the requested direction
for (TrackList::iterator it = _tracks.begin(); it != _tracks.end(); it++)
- if ((*it)->getTrackType() == Track::kTrackTypeVideo && ((VideoTrack *)*it)->isReversed() != reverse)
+ if ((*it)->getTrackType() == Track::kTrackTypeVideo && ((VideoTrack *)*it)->isReversed() != reverse) {
diff --git a/engines/myst3/gfx.cpp b/engines/myst3/gfx.cpp
index 9c5b4f7..66a1ce1 100644
--- a/engines/myst3/gfx.cpp
+++ b/engines/myst3/gfx.cpp
@@ -77,8 +77,10 @@ OpenGLTexture::OpenGLTexture(const Graphics::Surface *surface) {
height = surface->h;
format = surface->format;
- internalHeight = upperPowerOfTwo(height);
- internalWidth = upperPowerOfTwo(width);
<NAME>Manny's got company</NAME>
<DATE>September 2nd, 2014</DATE>
<AUTHOR>bgk</AUTHOR>
<BODY>
<p>
Adding support for Myst III: Exile to ResidualVM is nearly done.
Now, we only need your help to find the last rough edges by playing the game thoroughly and reporting any issues you encounter.
</p>
<p>
If you are interested, locate your copy of the game, and <a href="http://www.residualvm.org/downloads/">download</a> a daily build (not the 0.1.1 release build).