[Scummvm-git-logs] scummvm master -> 457628ecb8a409ede654fcb9fc886c8b84907fdc

neuromancer noreply at scummvm.org
Mon Jan 15 19:54:53 UTC 2024


This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
9182a9971b FREESCAPE: added some code for handling eclipse cga dos
457628ecb8 FREESCAPE: fixed IPHONE specific code to set better default controls


Commit: 9182a9971bcda3bd3477f742e6accb1cadd04c96
    https://github.com/scummvm/scummvm/commit/9182a9971bcda3bd3477f742e6accb1cadd04c96
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2024-01-15T20:55:05+01:00

Commit Message:
FREESCAPE: added some code for handling eclipse cga dos

Changed paths:
    engines/freescape/games/eclipse/dos.cpp


diff --git a/engines/freescape/games/eclipse/dos.cpp b/engines/freescape/games/eclipse/dos.cpp
index 3025b9e21b1..0cb53af86e2 100644
--- a/engines/freescape/games/eclipse/dos.cpp
+++ b/engines/freescape/games/eclipse/dos.cpp
@@ -28,6 +28,12 @@
 namespace Freescape {
 
 extern byte kEGADefaultPalette[16][3];
+byte kEclipseCGAPaletteRedGreen[4][3] = {
+	{0x00, 0x00, 0x00},
+	{0x55, 0xff, 0x55},
+	{0xff, 0x55, 0x55},
+	{0xff, 0xff, 0x55},
+};
 
 void EclipseEngine::initDOS() {
 	_viewArea = Common::Rect(40, 32, 280, 132);
@@ -57,11 +63,26 @@ void EclipseEngine::loadAssetsDOSFullGame() {
 		_border = load8bitBinImage(&file, 0x210);
 		_border->setPalette((byte *)&kEGADefaultPalette, 0, 16);
 	} else if (_renderMode == Common::kRenderCGA) {
+		file.open("SCN1C.DAT");
+		if (file.isOpen()) {
+			_title = load8bitBinImage(&file, 0x0);
+			_title->setPalette((byte *)&kEclipseCGAPaletteRedGreen, 0, 4);
+		}
+		file.close();
 		file.open("TOTEC.EXE");
 
 		if (!file.isOpen())
 			error("Failed to open TOTEC.EXE");
-		load8bitBinary(&file, 0x7bb0, 4); // TODO
+
+		loadFonts(&file, 0xd403);
+		load8bitBinary(&file, 0x2530, 4);
+		for (auto &it : _areaMap) {
+			it._value->addStructure(_areaMap[255]);
+			for (int16 id = 183; id < 207; id++)
+				it._value->addObjectFromArea(id, _areaMap[255]);
+		}
+		_border = load8bitBinImage(&file, 0x210);
+		_border->setPalette((byte *)&kEclipseCGAPaletteRedGreen, 0, 4);
 	} else
 		error("Invalid or unsupported render mode %s for Total Eclipse", Common::getRenderModeDescription(_renderMode));
 }


Commit: 457628ecb8a409ede654fcb9fc886c8b84907fdc
    https://github.com/scummvm/scummvm/commit/457628ecb8a409ede654fcb9fc886c8b84907fdc
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2024-01-15T20:55:05+01:00

Commit Message:
FREESCAPE: fixed IPHONE specific code to set better default controls

Changed paths:
    engines/freescape/freescape.cpp


diff --git a/engines/freescape/freescape.cpp b/engines/freescape/freescape.cpp
index 0d577502792..fc9c98c513c 100644
--- a/engines/freescape/freescape.cpp
+++ b/engines/freescape/freescape.cpp
@@ -167,11 +167,11 @@ FreescapeEngine::FreescapeEngine(OSystem *syst, const ADGameDescription *gd)
 
 	// Workaround to make the game playable on iOS: remove when there
 	// is a better way to hint the best controls
-#ifdef TARGET_OS_IOS
+#ifdef IPHONE
 	const Common::String &gameDomain = ConfMan.getActiveDomainName();
 	ConfMan.setBool("gamepad_controller", true, gameDomain);
 	ConfMan.setBool("gamepad_controller_minimal_layout", true, gameDomain);
-	ConfMan.set("gamepad_controller_directional_input", "dpad", gameDomain);
+	ConfMan.setInt("gamepad_controller_directional_input", 1 /* kDirectionalInputDpad */, gameDomain);
 #endif
 
 	g_freescape = this;




More information about the Scummvm-git-logs mailing list