ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/include/macos_util.h
(Generate patch)

Comparing BasiliskII/src/include/macos_util.h (file contents):
Revision 1.1 by cebix, 1999-10-03T14:16:26Z vs.
Revision 1.7 by cebix, 2000-07-22T16:07:23Z

# Line 1 | Line 1
1   /*
2   *  macos_util.h - MacOS definitions/utility functions
3   *
4 < *  Basilisk II (C) 1997-1999 Christian Bauer
4 > *  Basilisk II (C) 1997-2000 Christian Bauer
5   *
6   *  This program is free software; you can redistribute it and/or modify
7   *  it under the terms of the GNU General Public License as published by
# Line 21 | Line 21
21   #ifndef MACOS_UTIL_H
22   #define MACOS_UTIL_H
23  
24 + #include "cpu_emulation.h"
25 +
26  
27   /*
28   *  Queues
# Line 68 | Line 70 | enum {
70          closErr                 = -24,
71          abortErr                = -27,
72          notOpenErr              = -28,
73 +        dskFulErr               = -34,
74 +        nsvErr                  = -35,
75          ioErr                   = -36,
76 +        bdNamErr                = -37,
77 +        fnOpnErr                = -38,
78 +        eofErr                  = -39,
79 +        posErr                  = -40,
80 +        tmfoErr                 = -42,
81 +        fnfErr                  = -43,
82          wPrErr                  = -44,
83 +        fLckdErr                = -45,
84 +        fBsyErr                 = -47,
85 +        dupFNErr                = -48,
86          paramErr                = -50,
87 +        rfNumErr                = -51,
88 +        permErr                 = -54,
89          nsDrvErr                = -56,
90 +        extFSErr                = -58,
91          noDriveErr              = -64,
92          offLinErr               = -65,
93          noNybErr                = -66,
# Line 93 | Line 109 | enum {
109          fmt1Err                 = -82,
110          fmt2Err                 = -83,
111          verErr                  = -84,
112 <        memFullErr              = -108
112 >        memFullErr              = -108,
113 >        dirNFErr                = -120
114   };
115  
116   // Misc constants
# Line 156 | Line 173 | enum { // IOParam struct
173          ioActCount = 40,
174          ioPosMode = 44,
175          ioPosOffset = 46,
176 <        ioWPosOffset = 46       // Wide positioning offset when ioPosMode has kWidePosOffsetBit set
176 >        ioWPosOffset = 46,      // Wide positioning offset when ioPosMode has kWidePosOffsetBit set
177 >        SIZEOF_IOParam = 50
178   };
179  
180   enum {  // CntrlParam struct
# Line 228 | Line 246 | enum { // DeferredTask struct
246  
247  
248   // Functions
249 < extern void Enqueue(uint32 elem, uint32 list);  // Enqueue QElem in list
250 < extern int FindFreeDriveNumber(int num);                // Find first free drive number, starting at "num"
251 < extern void MountVolume(void *fh);                              // Mount volume with given file handle (see sys.h)
234 < extern bool HasMacStarted(void);                                // Test if basic MacOS initializations are done
249 > extern void EnqueueMac(uint32 elem, uint32 list);       // Enqueue QElem in list
250 > extern int FindFreeDriveNumber(int num);                        // Find first free drive number, starting at "num"
251 > extern void MountVolume(void *fh);                                      // Mount volume with given file handle (see sys.h)
252   extern void FileDiskLayout(loff_t size, uint8 *data, loff_t &start_byte, loff_t &real_size);    // Calculate disk image file layout given file size and first 256 data bytes
253  
254 + // Construct four-character-code from string
255 + #define FOURCC(a,b,c,d) (((uint32)(a) << 24) | ((uint32)(b) << 16) | ((uint32)(c) << 8) | (uint32)(d))
256 +
257 + // Test if basic MacOS initializations (of the ROM) are done
258 + static inline bool HasMacStarted(void)
259 + {
260 +        return ReadMacInt32(0xcfc) == FOURCC('W','L','S','C');  // Mac warm start flag
261 + }
262 +
263   #endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines