ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/BeOS/xpram_beos.cpp
Revision: 1.1.1.1 (vendor branch)
Committed: 1999-10-03T14:16:25Z (25 years, 1 month ago) by cebix
Branch: cebix
CVS Tags: release-0_7-2, snapshot-21101999, start
Changes since 1.1: +0 -0 lines
Log Message:
Imported sources

File Contents

# User Rev Content
1 cebix 1.1 /*
2     * xpram_beos.cpp - XPRAM handling, BeOS specific stuff
3     *
4     * Basilisk II (C) 1997-1999 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
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     if ((fd = open(xpram_path.Path(), O_WRONLY | O_CREAT, 0664)) >= 0) {
62     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     }