ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/BeOS/xpram_beos.cpp
Revision: 1.3
Committed: 2000-04-10T18:52:59Z (24 years, 7 months ago) by cebix
Branch: MAIN
CVS Tags: snapshot-13072000
Changes since 1.2: +1 -1 lines
Log Message:
- updated copyright info: 1999->2000

File Contents

# User Rev Content
1 cebix 1.1 /*
2     * xpram_beos.cpp - XPRAM handling, BeOS specific stuff
3     *
4 cebix 1.3 * Basilisk II (C) 1997-2000 Christian Bauer
5 cebix 1.1 *
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
8     * the Free Software Foundation; either version 2 of the License, or
9     * (at your option) any later version.
10     *
11     * This program is distributed in the hope that it will be useful,
12     * but WITHOUT ANY WARRANTY; without even the implied warranty of
13     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14     * GNU General Public License for more details.
15     *
16     * You should have received a copy of the GNU General Public License
17     * along with this program; if not, write to the Free Software
18     * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19     */
20    
21     #include <StorageKit.h>
22     #include <unistd.h>
23    
24     #include "sysdeps.h"
25     #include "xpram.h"
26    
27    
28     // XPRAM file name and path
29     const char XPRAM_FILE_NAME[] = "BasiliskII_XPRAM";
30     static BPath xpram_path;
31    
32    
33     /*
34     * Load XPRAM from settings file
35     */
36    
37     void LoadXPRAM(void)
38     {
39     // Construct XPRAM path
40     find_directory(B_USER_SETTINGS_DIRECTORY, &xpram_path, true);
41     xpram_path.Append(XPRAM_FILE_NAME);
42    
43     // Load XPRAM from settings file
44     int fd;
45     if ((fd = open(xpram_path.Path(), O_RDONLY)) >= 0) {
46     read(fd, XPRAM, 256);
47     close(fd);
48     }
49     }
50    
51    
52     /*
53     * Save XPRAM to settings file
54     */
55    
56     void SaveXPRAM(void)
57     {
58     if (xpram_path.InitCheck() != B_NO_ERROR)
59     return;
60     int fd;
61 cebix 1.2 if ((fd = open(xpram_path.Path(), O_WRONLY | O_CREAT, 0666)) >= 0) {
62 cebix 1.1 write(fd, XPRAM, 256);
63     close(fd);
64     }
65     }
66    
67    
68     /*
69     * Delete PRAM file
70     */
71    
72     void ZapPRAM(void)
73     {
74     // Construct PRAM path
75     find_directory(B_USER_SETTINGS_DIRECTORY, &xpram_path, true);
76     xpram_path.Append(XPRAM_FILE_NAME);
77    
78     // Delete file
79     unlink(xpram_path.Path());
80     }