diff options
author | Nicola Mettifogo | 2007-08-11 21:08:08 +0000 |
---|---|---|
committer | Nicola Mettifogo | 2007-08-11 21:08:08 +0000 |
commit | ccfd109e2539c3d1ec46d1f93ffda7001f86d326 (patch) | |
tree | 37864fc01e6f41df4f872f8b6d2869fc6c5eccf7 /engines/parallaction/disk_br.cpp | |
parent | f1cbf3f9b636edf0360bb4287d987d85f7aa2cab (diff) | |
download | scummvm-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.cpp | 23 |
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; } |