***************************************************************/\r
\r
#include "pf_all.h"\r
+\r
+#ifdef WIN32\r
#include <crtdbg.h>\r
+#endif\r
\r
#define SYSTEM_LOAD_FILE "system.fth"\r
\r
/* Use local copy of CODE_BASE for speed. */\r
#define LOCAL_CODEREL_TO_ABS( a ) ((cell *) (((int32) a) + CodeBase))\r
\r
+static const char *pfSelectFileModeCreate( int fam );\r
+static const char *pfSelectFileModeOpen( int fam );\r
+\r
+/**************************************************************/\r
+static const char *pfSelectFileModeCreate( int fam )\r
+{\r
+ const char *famText = NULL;\r
+ switch( fam )\r
+ {\r
+ case (PF_FAM_WRITE_ONLY + PF_FAM_BINARY_FLAG):\r
+ famText = PF_FAM_BIN_CREATE_WO;\r
+ break;\r
+ case (PF_FAM_READ_WRITE + PF_FAM_BINARY_FLAG):\r
+ famText = PF_FAM_BIN_CREATE_RW;\r
+ break;\r
+ case PF_FAM_WRITE_ONLY:\r
+ famText = PF_FAM_CREATE_WO;\r
+ break;\r
+ case PF_FAM_READ_WRITE:\r
+ famText = PF_FAM_CREATE_RW;\r
+ break;\r
+ default:\r
+ famText = "illegal";\r
+ break;\r
+ }\r
+ return famText;\r
+}\r
+\r
/**************************************************************/\r
-const char *pfSelectFileMode( int fam )\r
+static const char *pfSelectFileModeOpen( int fam )\r
{\r
- char *famText = NULL;\r
+ const char *famText = NULL;\r
switch( fam )\r
{\r
case (PF_FAM_READ_ONLY + PF_FAM_BINARY_FLAG):\r
Temp = M_POP; /* caddr */\r
if( Scratch < TIB_SIZE-2 )\r
{\r
- const char *famText = pfSelectFileMode( TOS );\r
+ const char *famText = pfSelectFileModeCreate( TOS );\r
pfCopyMemory( gScratch, (char *) Temp, (uint32) Scratch );\r
gScratch[Scratch] = '\0';\r
- DBUG(("Create file = %s\n", gScratch ));\r
+ PRT(("Create file = %s with famTxt %s\n", gScratch, famText ));\r
FileID = sdOpenFile( gScratch, famText );\r
TOS = ( FileID == NULL ) ? -1 : 0 ;\r
M_PUSH( (cell) FileID );\r
Temp = M_POP; /* caddr */\r
if( Scratch < TIB_SIZE-2 )\r
{\r
- const char *famText = pfSelectFileMode( TOS );\r
+ const char *famText = pfSelectFileModeOpen( TOS );\r
pfCopyMemory( gScratch, (char *) Temp, (uint32) Scratch );\r
gScratch[Scratch] = '\0';\r
DBUG(("Open file = %s\n", gScratch ));\r