aboutsummaryrefslogtreecommitdiff
path: root/engines/parallaction/disk_br.cpp
diff options
context:
space:
mode:
authorNicola Mettifogo2007-08-11 21:08:08 +0000
committerNicola Mettifogo2007-08-11 21:08:08 +0000
commitccfd109e2539c3d1ec46d1f93ffda7001f86d326 (patch)
tree37864fc01e6f41df4f872f8b6d2869fc6c5eccf7 /engines/parallaction/disk_br.cpp
parentf1cbf3f9b636edf0360bb4287d987d85f7aa2cab (diff)
downloadscummvm-rg350-ccfd109e2539c3d1ec46d1f93ffda7001f86d326.tar.gz
scummvm-rg350-ccfd109e2539c3d1ec46d1f93ffda7001f86d326.tar.bz2
scummvm-rg350-ccfd109e2539c3d1ec46d1f93ffda7001f86d326.zip
Added partial cursor support for Big Red Adventure. Small adjustments to generalize disk code for multiple cursors.
svn-id: r28537
Diffstat (limited to 'engines/parallaction/disk_br.cpp')
-rw-r--r--engines/parallaction/disk_br.cpp23
1 files changed, 21 insertions, 2 deletions
diff --git a/engines/parallaction/disk_br.cpp b/engines/parallaction/disk_br.cpp
index babe6043a6..a889e9c298 100644
--- a/engines/parallaction/disk_br.cpp
+++ b/engines/parallaction/disk_br.cpp
@@ -75,9 +75,28 @@ Graphics::Surface* DosDisk_br::loadHead(const char* name) {
}
-Graphics::Surface* DosDisk_br::loadPointer() {
+Graphics::Surface* DosDisk_br::loadPointer(const char *name) {
debugC(5, kDebugDisk, "DosDisk_br::loadPointer");
- return 0;
+
+ char path[PATH_LEN];
+ sprintf(path, "%s.ras", name);
+
+ Common::File stream;
+ if (!stream.open(path))
+ errorFileNotFound(path);
+
+ stream.skip(4);
+ uint width = stream.readUint32BE();
+ uint height = stream.readUint32BE();
+ stream.skip(20);
+ stream.skip(768);
+
+ Graphics::Surface *surf = new Graphics::Surface;
+
+ surf->create(width, height, 1);
+ stream.read(surf->pixels, width * height);
+
+ return surf;
}