rawOpen :: FilePath -> PhysIOMode -> IO (PhysFS_File, String)
rawOpen fp mode = 
    let (open,msg) = case mode of
                       PhysAppendMode -> (physfsOpenAppend, "PHYSFS_openAppend")
                       PhysReadMode   -> (physfsOpenRead  , "PHYSFS_openRead"  )
                       PhysWriteMode  -> (physfsOpenWrite , "PHYSFS_openWrite" )
    in do h <- withCString fp open
          return (h, msg)
rawOpen :: FilePath -> PhysIOMode -> IO (PhysFS_File, String)
rawOpen fp mode = 
    let (open,msg) = case mode of
                       PhysAppendMode -> (physfsOpenAppend, "PHYSFS_openAppend")
                       PhysReadMode   -> (physfsOpenRead  , "PHYSFS_openRead"  )
                       PhysWriteMode  -> (physfsOpenWrite , "PHYSFS_openWrite" )
    in do h <- withCString fp open
          return (h, msg)
rawOpen fp mode = 
    let (open,msg) = case mode of
                       PhysAppendMode -> (physfsOpenAppend, "PHYSFS_openAppend")
                       PhysReadMode   -> (physfsOpenRead  , "PHYSFS_openRead"  )
                       PhysWriteMode  -> (physfsOpenWrite , "PHYSFS_openWrite" )
    in do h <- withCString fp open
          return (h, msg)