Subversion Repositories Kolibri OS

Rev

Rev 7049 | Rev 7219 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
3866 punk_joker 1
#define MEMSIZE 0xA0000
3067 leency 2
#include "..\lib\kolibri.h"
5482 leency 3
#include "..\lib\mem.h"
4
#include "..\lib\strings.h"
3067 leency 5
#include "..\lib\file_system.h"
6
 
5482 leency 7
#include "..\lib\dll.h"
7049 leency 8
#include "..\lib\obj\libio.h"
5499 leency 9
#include "..\lib\obj\libini.h"
5482 leency 10
 
3109 leency 11
#ifndef AUTOBUILD
12
#include "lang.h--"
13
#endif
3067 leency 14
 
15
/////////////////////////////////////////////////////////////////////////////////////////
3975 leency 16
/////////////////////////              Program data                  ////////////////////
3067 leency 17
/////////////////////////////////////////////////////////////////////////////////////////
18
 
19
struct ioctl_struct
20
{
21
	dword	handle;
22
	dword	io_code;
23
	dword	input;
24
	dword	inp_size;
25
	dword	output;
26
	dword	out_size;
27
};
28
 
29
#define DEV_ADD_DISK 1	//input = structure add_disk_struc
30
#define DEV_DEL_DISK 2	//input = structure del_disk_struc
31
 
32
struct add_disk_struc
33
{
34
	dword DiskSize; // in sectors, 1 sector = 512 bytes. Include FAT service data
35
	unsigned char DiskId; // from 0 to 9
36
};
37
 
38
struct del_disk_struc
39
{
40
	unsigned char DiskId; //from 0 to 9
41
};
42
 
43
 
44
ioctl_struct ioctl;
45
add_disk_struc add_disk;
46
del_disk_struc del_disk;
47
 
48
int driver_handle;
49
 
5482 leency 50
dword disk_sizes[10];
51
 
7051 leency 52
_ini ini = { "/sys/settings/tmpdisk.ini", "DiskSizes" };
53
 
3067 leency 54
/////////////////////////////////////////////////////////////////////////////////////////
3975 leency 55
/////////////////////////                    Code                    ////////////////////
3067 leency 56
/////////////////////////////////////////////////////////////////////////////////////////
57
#include "t_console.c"
5482 leency 58
#include "t_gui.c"
3067 leency 59
 
60
 
61
void main()
62
{
63
	driver_handle = LoadDriver("tmpdisk");
64
	if (driver_handle==0)
65
	{
5482 leency 66
		notify("'TmpDisk\nError: /rd1/1/drivers/tmpdisk.obj driver loading failed\nvirtual disk wouldn't be added' -tE");
3067 leency 67
		ExitProcess();
68
	}
3440 leency 69
 
5482 leency 70
	GetDiskSizesFromIni();
3067 leency 71
 
72
	if (param)
73
		Console_Work();
74
	else
75
		Main_Window();
76
 
5482 leency 77
	SaveDiskSizesToIni();
3067 leency 78
	ExitProcess();
79
}
80
 
5482 leency 81
 
82
void GetDiskSizesFromIni()
83
{
84
	char i, key[2];
85
	if (load_dll2(libini, #lib_init,1)!=0) notify("Error: library doesn't exists - libini");
5659 leency 86
	key[1]=0;
5482 leency 87
	for (i=0; i<=9; i++)
88
	{
89
		key[0]=i+'0';
7051 leency 90
		disk_sizes[i] = ini.GetInt(#key, 0);
5482 leency 91
	}
92
}
93
 
94
void SaveDiskSizesToIni()
95
{
96
	char i, key[2];
5659 leency 97
	key[1]=0;
5482 leency 98
	for (i=0; i<=9; i++)
99
	{
100
		key[0]=i+'0';
7051 leency 101
		ini.SetInt(#key, disk_sizes[i]);
5482 leency 102
	}
103
}
104
 
105
 
3067 leency 106
stop: