Files
ZPU/software/common/rafile.h

45 lines
1.3 KiB
C

#ifndef RAFILE_H
#define RAFILE_H
/* Utility functions to provide the Minimig OSD code with file access
at single-byte rather than 512-byte-block granularity.
Copyright (c) 2012 by Alastair M. Robinson
Contributed to the Minimig project, which is free software;
you can redistribute it and/or modify it under the terms of
the GNU General Public License as published by the Free Software Foundation;
either version 3 of the License, or (at your option) any later version.
Minimig is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "fat.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct
{
fileTYPE file;
unsigned long size;
unsigned long ptr;
unsigned char buffer[512]; // Each RandomAccessFile has its own sector_buffer
} RAFile;
int RARead(RAFile *file,unsigned char *pBuffer, unsigned long bytes);
int RASeek(RAFile *file,unsigned long offset,unsigned long origin);
int RAOpen(RAFile *file,const char *filename);
#ifdef __cplusplus
}
#endif
#endif