git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
InitRD - Libc++, libm, bochs, dbserver
[tpg/acess2.git]
/
Usermode
/
Applications
/
axwin3_src
/
WM
/
input.c
diff --git
a/Usermode/Applications/axwin3_src/WM/input.c
b/Usermode/Applications/axwin3_src/WM/input.c
index
bd23c0b
..
29ef004
100644
(file)
--- a/
Usermode/Applications/axwin3_src/WM/input.c
+++ b/
Usermode/Applications/axwin3_src/WM/input.c
@@
-8,6
+8,7
@@
#include <common.h>
#include <acess/sys.h>
#include <wm_input.h>
#include <common.h>
#include <acess/sys.h>
#include <wm_input.h>
+#include <stddef.h>
// TODO: Move out to a common header
typedef struct
// TODO: Move out to a common header
typedef struct
@@
-21,7
+22,7
@@
typedef struct
// === IMPORTS ===
extern void Video_SetCursorPos(short X, short Y);
const char *gsMouseDevice;
// === IMPORTS ===
extern void Video_SetCursorPos(short X, short Y);
const char *gsMouseDevice;
-extern int giTerminalFD;
+extern int giTerminalFD
_Input
;
extern int giScreenWidth;
extern int giScreenHeight;
extern int giScreenWidth;
extern int giScreenHeight;
@@
-36,45
+37,46
@@
int Input_Init(void)
tNumValue num_value;
// Open mouse for RW
tNumValue num_value;
// Open mouse for RW
- giMouseFD =
o
pen(gsMouseDevice, 3);
+ giMouseFD =
_SysO
pen(gsMouseDevice, 3);
// Set mouse limits
// TODO: Update these if the screen resolution changes
num_value.Num = 0; num_value.Value = giScreenWidth;
// Set mouse limits
// TODO: Update these if the screen resolution changes
num_value.Num = 0; num_value.Value = giScreenWidth;
-
ioc
tl(giMouseFD, JOY_IOCTL_GETSETAXISLIMIT, &num_value);
+
_SysIOC
tl(giMouseFD, JOY_IOCTL_GETSETAXISLIMIT, &num_value);
num_value.Value = giScreenWidth/2;
giInput_MouseX = giScreenWidth/2;
num_value.Value = giScreenWidth/2;
giInput_MouseX = giScreenWidth/2;
-
ioc
tl(giMouseFD, JOY_IOCTL_GETSETAXISPOSITION, &num_value);
+
_SysIOC
tl(giMouseFD, JOY_IOCTL_GETSETAXISPOSITION, &num_value);
num_value.Num = 1; num_value.Value = giScreenHeight;
num_value.Num = 1; num_value.Value = giScreenHeight;
-
ioc
tl(giMouseFD, JOY_IOCTL_GETSETAXISLIMIT, &num_value);
+
_SysIOC
tl(giMouseFD, JOY_IOCTL_GETSETAXISLIMIT, &num_value);
num_value.Value = giScreenHeight/2;
giInput_MouseY = giScreenHeight/2;
num_value.Value = giScreenHeight/2;
giInput_MouseY = giScreenHeight/2;
-
ioc
tl(giMouseFD, JOY_IOCTL_GETSETAXISPOSITION, &num_value);
+
_SysIOC
tl(giMouseFD, JOY_IOCTL_GETSETAXISPOSITION, &num_value);
return 0;
}
void Input_FillSelect(int *nfds, fd_set *set)
{
return 0;
}
void Input_FillSelect(int *nfds, fd_set *set)
{
- if(*nfds < giTerminalFD
) *nfds = giTerminalFD
;
+ if(*nfds < giTerminalFD
_Input) *nfds = giTerminalFD_Input
;
if(*nfds < giMouseFD) *nfds = giMouseFD;
if(*nfds < giMouseFD) *nfds = giMouseFD;
- FD_SET(giTerminalFD, set);
+ FD_SET(giTerminalFD
_Input
, set);
FD_SET(giMouseFD, set);
}
void Input_HandleSelect(fd_set *set)
{
FD_SET(giMouseFD, set);
}
void Input_HandleSelect(fd_set *set)
{
- if(FD_ISSET(giTerminalFD, set))
+ if(FD_ISSET(giTerminalFD
_Input
, set))
{
uint32_t codepoint;
static uint32_t scancode;
#define KEY_CODEPOINT_MASK 0x3FFFFFFF
{
uint32_t codepoint;
static uint32_t scancode;
#define KEY_CODEPOINT_MASK 0x3FFFFFFF
- if( read(giTerminalFD, &codepoint, sizeof(codepoint)) != sizeof(codepoint) )
+ size_t readlen = _SysRead(giTerminalFD_Input, &codepoint, sizeof(codepoint));
+ if( readlen != sizeof(codepoint) )
{
// oops, error
{
// oops, error
- _SysDebug("Terminal read failed?
"
);
+ _SysDebug("Terminal read failed?
(%i != %i)", readlen, sizeof(codepoint)
);
}
// _SysDebug("Keypress 0x%x", codepoint);
}
// _SysDebug("Keypress 0x%x", codepoint);
@@
-117,8
+119,8
@@
void Input_HandleSelect(fd_set *set)
mouseinfo = (void*)data;
mouseinfo = (void*)data;
-
s
eek(giMouseFD, 0, SEEK_SET);
- i =
r
ead(giMouseFD, data, sizeof(data));
+
_SysS
eek(giMouseFD, 0, SEEK_SET);
+ i =
_SysR
ead(giMouseFD, data, sizeof(data));
i -= sizeof(*mouseinfo);
if( i < 0 ) {
_SysDebug("Mouse data undersized (no header)");
i -= sizeof(*mouseinfo);
if( i < 0 ) {
_SysDebug("Mouse data undersized (no header)");
UCC
git Repository :: git.ucc.asn.au