mirror of
https://github.com/V2RetroComputing/analog.git
synced 2024-11-28 19:49:45 +00:00
d9be2ed9cd
New autodetect routines for Apple II+, IIe (Platinum), IIgs (ROM03). Timing tweaks to improve compatibility on IIgs and IIe. Corrected text rendering on all supported machines. Initial Super HiRes support (not recommended to use at this time) Monochrome DHGR and HGR support activated with IIgs MONOCOLOR or NEWVID registers. 80 Column mode on IIe and IIgs.
55 lines
1.5 KiB
C
55 lines
1.5 KiB
C
#pragma once
|
|
|
|
#define FS_COMMAND 0x0
|
|
#define FS_FILE 0x1
|
|
#define FS_FLAGS 0x1
|
|
#define FS_SIZELSB 0x2
|
|
#define FS_SIZEMSB 0x3
|
|
#define FS_OFFLSB 0x2
|
|
#define FS_OFFMSB 0x3
|
|
#define FS_WHENCE 0x4
|
|
#define FS_BUSY 0xD
|
|
#define FS_STATUS 0xE
|
|
#define FS_EXECUTE 0xF
|
|
|
|
#define FS_O_RD 1
|
|
#define FS_O_WR 2
|
|
#define FS_O_APPEND 4
|
|
#define FS_O_EXISTING 8
|
|
#define FS_O_CREATE 16
|
|
#define FS_O_TRUNC 32
|
|
|
|
#define FS_SEEK_SET 0
|
|
#define FS_SEEK_CUR 1
|
|
#define FS_SEEK_END 2
|
|
|
|
typedef enum {
|
|
FS_OPEN = 0x10,
|
|
FS_CLOSE = 0x11,
|
|
FS_READ = 0x12,
|
|
FS_WRITE = 0x13,
|
|
FS_SEEK = 0x14,
|
|
FS_TELL = 0x15,
|
|
PRODOS_COMMAND = 0x20,
|
|
} fscommand_t;
|
|
|
|
typedef enum {
|
|
FS_ERR_OK = 0, // No error
|
|
FS_ERR_IO = -1, // Error during device operation
|
|
FS_ERR_CORRUPT = -2, // Corrupted
|
|
FS_ERR_NOENT = -3, // No directory entry
|
|
FS_ERR_EXIST = -4, // Entry already exists
|
|
FS_ERR_NOTDIR = -5, // Entry is not a dir
|
|
FS_ERR_ISDIR = -5, // Entry is a dir
|
|
FS_ERR_NOTEMPTY = -7, // Dir is not empty
|
|
FS_ERR_BADF = -8, // Bad file number
|
|
FS_ERR_FBIG = -9, // File too large
|
|
FS_ERR_INVAL = -10, // Invalid parameter
|
|
FS_ERR_NOSPC = -11, // No space left on device
|
|
FS_ERR_NOMEM = -12, // No more memory available
|
|
FS_ERR_NOATTR = -13, // No data/attr available
|
|
FS_ERR_NAMETOOLONG = -14 // File name too long
|
|
} fserror_t;
|
|
|
|
void fs_handler(uint8_t slot);
|