[Scummvm-cvs-logs] CVS: scummvm/bs2 tony_gsdk.cpp,1.6,1.7 tony_gsdk.h,1.2,1.3

Torbj?rn Andersson eriktorbjorn at users.sourceforge.net
Wed Sep 17 07:34:16 CEST 2003


Update of /cvsroot/scummvm/scummvm/bs2
In directory sc8-pr-cvs1:/tmp/cvs-serv25353

Modified Files:
	tony_gsdk.cpp tony_gsdk.h 
Log Message:
Rewrote Read_file() to use our File class, and removed the unused functions
Direct_read_file() and Direct_write_file().

This change is completely untested, but that should be ok since Read_file()
(which is now the only function left in tony_gsdk.cpp) only seems to be
used in debug builds.

Perhaps we should remove these files completely?


Index: tony_gsdk.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/bs2/tony_gsdk.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- tony_gsdk.cpp	3 Aug 2003 15:38:27 -0000	1.6
+++ tony_gsdk.cpp	17 Sep 2003 14:33:47 -0000	1.7
@@ -17,133 +17,42 @@
  * $Header$
  */
 
-//===================================================================================================================
-//
-// File - tony_gsdk.cpp
-//
-//===================================================================================================================
-
-
-//general odds and ends
-
-#include <sys/stat.h>
-//#include <fcntl.h>
-//#include <io.h>
-#include <stdarg.h>
-#include <stdio.h>
-#include <stdlib.h>
+// general odds and ends
 
 #include "stdafx.h"
-//#include "src\driver96.h"
+#include "driver/driver96.h"
 #include "debug.h"
-#include "header.h"
-#include "layers.h"
 #include "memory.h"
-#include "protocol.h"
-#include "resman.h"
 #include "tony_gsdk.h"
+#include "sword2.h"
+#include "common/file.h"
 
-// TODO replace with file class
-
-//-----------------------------------------------------------------------------------------------------------------------
-//-----------------------------------------------------------------------------------------------------------------------
-uint32	Read_file(const char	*name,	mem	**membloc, uint32	uid)	//Tony25Apr96
-{
-//read the file in and place into an allocated MEM_float block
-//used for non resources manager files - stuff like fonts, etc.
-//returns bytes read or 0 for error
-
-	FILE	*fh=0;	//file pointer
-	uint32	end;
-
+uint32 Read_file(const char *name, mem **membloc, uint32 uid) {	// Tony25Apr96
+	// read the file in and place into an allocated MEM_float block
 
+	// FIXME: As far as I can see, this function is only used in debug
+	// builds, so maybe it should be removed completely?
 
-	fh = fopen(name, "rb");	//open for binary reading
+	File fh;
+	uint32 size;
 
-	if	(fh==NULL)
-	{	Zdebug("Read_file cannot open %s", name);
-		return(0);
+	if (!fh.open(name, g_sword2->getGameDataPath())) {
+		Zdebug("Read_file cannot open %s", name);
+		return 0;
 	}
 
-//ok, find the length and read the file in
-	fseek(fh, 0, SEEK_END);	//get size of file
-   end = ftell(fh);	//finally got the end
+	size = fh.size();
 
-	*membloc= Twalloc(end, MEM_float, uid);	//reserve enough floating memory for the file
+	// reserve enough floating memory for the file
+	*membloc = Twalloc(size, MEM_float, uid);
 	
-	fseek( fh, 0, SEEK_SET );	//back to beginning of file
-
-	if	(fread( (*membloc)->ad, sizeof(char), end,fh) < end)
-	{	Zdebug("Read_file read fail %d", name);
-		return(0);
-	}
-
-	fclose(fh);
-
-	return(end);	//ok, done it - return bytes read
-}
-//-----------------------------------------------------------------------------------------------------------------------
-int32	Direct_read_file(const char	*name,	char	*ad)	//Tony1May96
-{
-//load the file directly into the memory location passed
-//memory must be pre-allocated
-
-	FILE	*fh=0;	//file pointer
-	uint32	end;
-
-
-	fh = fopen(name, "rb");	//open for binary reading
-
-	if	(fh==NULL)
-	{	Zdebug("Direct_read_file cannot open %s", name);
-		return(0);
-	}
-
-//ok, find the length and read the file in
-	fseek(fh, 0, SEEK_END);	//get size of file
-   end = ftell(fh);	//finally got the end
-	fseek( fh, 0, SEEK_SET );	//back to beginning of file
-
-	if	(fread( ad, sizeof(char), end,fh) < end)
-	{	Zdebug("Direct_read_file read fail %d", name);
-		return(0);
-	}
-
-	fclose(fh);
-
-
-	return(end);	//ok, done it - return bytes read
-}
-//-----------------------------------------------------------------------------------------------------------------------
-int32	Direct_write_file(const char	*name,	char	*ad, uint32 total_bytes)	//Tony1May96
-{
-//load the file directly into the memory location passed
-	FILE	*fh;
-
-	fh = fopen(name, "wb");	//open for writing
-
-	if	(fh==NULL)
-	{	Zdebug("Direct_write_file open fail %d", name);
-		return(-1);
-	}
-
-	if	(fwrite( ad, 1, total_bytes, fh)!=total_bytes)
-	{	Zdebug("Direct_write_file write fail %d", name);
-		return(-1);
+	if (fh.read((*membloc)->ad, size) != size) {
+		Zdebug("Read_file read fail %d", name);
+		return 0;
 	}
 
-	fclose(fh);
+	fh.close();
 
-	return(0);	//ok, done it
+	//ok, done it - return bytes read
+	return size;
 }
-
-//-----------------------------------------------------------------------------------------------------------------------
-//-----------------------------------------------------------------------------------------------------------------------
-//-----------------------------------------------------------------------------------------------------------------------
-//-----------------------------------------------------------------------------------------------------------------------
-//-----------------------------------------------------------------------------------------------------------------------
-//-----------------------------------------------------------------------------------------------------------------------
-//-----------------------------------------------------------------------------------------------------------------------
-//-----------------------------------------------------------------------------------------------------------------------
-//-----------------------------------------------------------------------------------------------------------------------
-

Index: tony_gsdk.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/bs2/tony_gsdk.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- tony_gsdk.h	28 Jul 2003 02:37:47 -0000	1.2
+++ tony_gsdk.h	17 Sep 2003 14:33:47 -0000	1.3
@@ -20,14 +20,8 @@
 #ifndef	TONY_GSDK
 #define	TONY_GSDK
 
-//#include "src\driver96.h"
 #include "memory.h"
 
-
-
-uint32	Read_file(const char	*name,	mem	**membloc, uint32 uid);
-int32	Direct_read_file(const char	*name,	char	*ad);
-int32	Direct_write_file(const char	*name,	char	*ad, uint32 total_bytes);
-
+uint32 Read_file(const char *name, mem **membloc, uint32 uid);
 
 #endif





More information about the Scummvm-git-logs mailing list