As found by BLooperZ, the original French EGA release of Monkey1 can be
made to work with the DISK09.LEC file from the "Roland Update" that
Disney still hosts to this day, as long as the index is patched to use
proper offsets. A French release of DISK09.LEC possibly existed back
then, but if it did it appears to be completely lost to time today, so
using the file from the English EGA release is just way easier.
It's possible for ScummVM to fix this on-the-fly while loading the
resource, but some users prefer patching the 000.LFL index file instead,
which is required if one wants to use MT-32 with the original
interpreter (through DOSBox or DREAMM, for example).
Win95 scrollbar loading is refactored to use existing `borders` array
in `datafiles.cpp`, Added no-border scrollbar for MacOS, Win95.
This is to support scrollable text cast members in Director, which
will be used by `totaldistortion-win` game.
--start-movie="ATD\HD\bbTWRFL2.DXR@392" totaldistortion-win
Like more foreign versions on the same section of the md5 table,
the version was erroneously set to HE 98. Setting it to HE 99 fixes
the issue and correctly allows the game to run without crashing.
The GRIM define was incorrectly spelled GRIME which cause no shader
files to be included to the project preventing the game to start.
The freescape shader file freescape_triange.vertex also contained
a spelling error preventing the game to start.
Delete the old graphic handling in the IOS7 backend which is not
used anymore after implementing iOSGraphicsManager.
The Accelerate framework is not used anymore. The OpenGLGraphics
manager handles the different color formats.
The ios7 backend implements the graphic handling in the backend code.
iOS supports OpenGL through the OpenGL Framework since iOS 2.0. It's
marked as deprecated but is still shipped with the SDKs for iPhoneOS
and tvOS and will hopefully be so for some time.
The ios7 backend can therefore utilize the OpenGLGraphicsManager to
handle all graphics.
Implement an iOSGraphicsManager class that can be used in the ios7
backend. The iOSGraphicsManager will require some callback functions
in the ios7 backend. createOpenGLContext() will be called to ask the
backend to create an OpenGL context in which the graphic manager can
draw. The function returns the ID of the renderbuffer which shall be
used when creating the framebuffer object this differ iOS from other
platforms). A custom RenderBufferTarget class is added to address
this.
destroyOpenGLContext() will be called to make sure that the old GLES
context is not reused. notifyContextDestroy() does call the function
OpenGLContext.reset() but that will not destroy the context.
refreshScreen() will be called to ask the backend to present the
drawn graphics on the screen. getSystemHiDPIScreenFactor() is called
to get the screen scaling factor. getScreenWidth() and
getScreenHeight() are called to get the width and height of the
surface to draw on.
This commit adds the class but the ios7 backend doesn't make use of
it quite yet. To use it require the ios7 to be a child class of the
ModularGraphicsBackend. That change requires a lot of changes which
will be targeted in separate commits.
Update docportal and github ci worker to only disable the feature
opengl_classic_game since opengl and opengl_shaders are required to
compile the OpenGLGraphicsManager.
This gives an option for creating a project where the event
handling is centralized in a single processing loop, and is
then dispatched to 'views' that contain the game logic.
Like the original skeleton engine, the created events-based
engine contains a single default view showing a palette cycle.
The Chinese version doesn't have the credits, neither the player nor the required data files. So the enigne would crash when trying to load these. I have also checked with the original that it doesn't do anything else for the credits.
AppData id should really be a rDNS but its filename and desktop
filename must match this id.
This commit makes everything match.
The provides directive must not mention its own desktop file but
launchable should.
This was introduced by ce6a9d8e8e. That
commit accidentally placed the second definition on parser_iso instead
of parser_macbinary, leading argparse to raise an error at runtime.