Bill Currie
302a462c32
Make SetMouse timeout after 2 seconds
...
This makes sure that some unchecked event doesn't cause a lockup.
However, blocking input is really not the way to go: need to implement a
state machine and use non-blocking event reads.
2019-07-10 22:28:33 +09:00
Bill Currie
980cf58ac5
Wait for the window to be visible before mouse warping
...
This fixes the hang during fullscreen startup on my system (the motion
events weren't being generated because there was no window to see the
motion).
2019-07-10 22:28:33 +09:00
Bill Currie
a4f963f67b
Add a cvar to block use of x11 vidmode
...
Or really, allow it if the user specifically requests it: the default is
blocked. Modern systems (particularly displays) do not really like
changing resolution, so doing so by default seems rather wrong.
2019-07-10 22:28:33 +09:00
Bill Currie
4eb6cf6f9e
Make SetMouse timeout after 2 seconds
...
This makes sure that some unchecked event doesn't cause a lockup.
However, blocking input is really not the way to go: need to implement a
state machine and use non-blocking event reads.
2019-07-10 22:24:11 +09:00
Bill Currie
203d981675
Wait for the window to be visible before mouse warping
...
This fixes the hang during fullscreen startup on my system (the motion
events weren't being generated because there was no window to see the
motion).
2019-07-10 22:18:51 +09:00
Bill Currie
d5cb432911
Add a cvar to block use of x11 vidmode
...
Or really, allow it if the user specifically requests it: the default is
blocked. Modern systems (particularly displays) do not really like
changing resolution, so doing so by default seems rather wrong.
2019-07-10 22:15:39 +09:00
Bill Currie
2771e9c573
Correct extension handling
...
I had missed a critical bit from the cookbook.
2019-07-10 13:16:46 +09:00
Bill Currie
68449d0f6f
Create a window and a surface for vulkan
...
Yay, segfaults in R_Init :)
2019-07-09 16:33:44 +09:00
Bill Currie
8ee06d75a9
Separate render and presentation initialization
...
This paves the way for clean initialization of the Vulkan renderer, and
very much cleans up the older renderer initialization code as gl and sw
are no longer intertwined.
2019-07-09 01:00:47 +09:00
Bill Currie
cb10175824
Pass vid_internal to R_LoadModule
...
This fixes the segfault and pushes things very much in the desired
direction of proper system independence for rendering and presentation
separation (though things were headed in the right direction before).
2019-07-08 14:04:03 +09:00
Bill Currie
6ee2df8445
Move vid callbacks into vid_internal
...
Currently segfaults because viddef is an alias for *r_data->vid, which
has not yet been initialized (chicken and egg).
2019-07-08 13:40:29 +09:00
Bill Currie
3e1520c246
Move vid callback access into vid
...
The plan is to move the callbacks into a "private" struct.
2019-07-08 12:46:22 +09:00
Bill Currie
34bcf7faab
Do a pure/const/noreturn/format attribute pass.
...
I always wanted these, but as gcc now provides warnings for functions that
could do with such attributes, finding all the functions is much easier.
2018-10-09 12:42:21 +09:00
Bill Currie
59e85b7d5e
Fix a pile of dead assignments.
...
Some were actual bugs!
2018-09-08 22:23:57 +09:00
Bill Currie
1eb1622420
Fix some strncat issues.
2018-09-07 21:27:34 +09:00
Bill Currie
2329fb1885
Fix some warnings and bitrot.
2016-10-25 00:10:30 +09:00
Bill Currie
bd52e46adf
Merge branch 'master' into win
2016-01-22 01:10:49 +09:00
Bill Currie
f163e35f21
Add a builtin to get keydown.
2016-01-10 13:33:05 +09:00
Bill Currie
9cb23ba67e
Clean up some error messages.
...
The contractions took the emphasis off where it needed to be.
2016-01-04 16:12:36 +09:00
Bill Currie
aecea5c350
Document most of they key binding system.
2016-01-04 16:11:15 +09:00
Bill Currie
59f60d1ba7
Enable the Key_StringToKeynum builtin.
...
I don't know why I didn't do it earlier other than lack of need.
2016-01-04 16:10:22 +09:00
Bill Currie
7c16acf4aa
Make Key_GetBinding take an imt instead of a name.
2016-01-04 16:06:48 +09:00
Bill Currie
331b054d4a
Fix an inappropriate reuse of a variable.
...
Using "ax"is for the joystick "var"iable is a bit confusing.
2015-06-18 21:22:31 +09:00
Bill Currie
d1f1375df5
Increase number of supported joystick buttons.
...
Also fix a bug where despite supporting 32 buttons, only 18 were actually
supported, and a similar issue for the number of axes.
My saitek x52 has 34 buttons and 10 axes. Whee.
2014-08-17 11:35:40 +09:00
Bill Currie
f5501fbf24
Fix a pile of automake deprecation warnings.
...
s/INCLUDES/AM_CPPFLAGS/g
I <3 sed :)
2013-11-24 13:11:50 +09:00
Bill Currie
0f75bdce17
Set the default joystick preamp to 0.01.
...
At the request of johnnyonflame. I probably should have done this when I
removed the builtin 1/100 scaling from the joystick code.
2013-04-19 13:54:30 +09:00
Bill Currie
9047c3e4ad
Fix the invalid keydest errors.
...
Once and for all: remove the default and move the Sys_Error outside the
switch (changing appropriate breaks to returns). Now gcc will let me know
when I forget to update the switch statements.
2013-02-02 15:22:09 +09:00
Bill Currie
37dfad8e04
Add a command to simulate typing.
...
It doesn't support backspace or enter yet, but it got the job done for now.
2013-01-29 14:44:33 +09:00
Bill Currie
8de4db0e2d
Fix some sizeof snafus.
...
I'd failed to notice these earlier.
2013-01-28 21:52:18 +09:00
Bill Currie
bc2fa38468
Provide support for axis names.
...
x/y/z and pitch/yaw/roll (or p/y/r). Johnny's numbers still work, too, of
course.
2013-01-28 21:09:21 +09:00
Bill Currie
9a24c99cf6
Remove the force 1/100 scaling.
...
That's part of amp's (or preamp's) job.
2013-01-28 19:37:48 +09:00
Bill Currie
5c08e97b0b
Ensure the axis button's state starts at 0.
...
realloc doesn't do that for us.
2013-01-28 19:37:12 +09:00
Bill Currie
1811d00568
Use the correct index for pressing an axis button.
...
Oops.
2013-01-28 19:36:25 +09:00
Bill Currie
4163a3a8f2
Reduce the default deadzone to 500.
...
12500 seems a tad high when the range is +/- 32767.
2013-01-28 18:10:49 +09:00
Bill Currie
0ff66268e7
Redo the button axis setup to use key names.
...
Johnny's number->J_AXISn mapping is preserved, but I had intended for any
key to be supported (J_AXISn was just to ensure free keys were available).
This gives both methods (and some range checking on the axis button
number).
2013-01-28 18:06:30 +09:00
Bill Currie
42c2666036
Clear out some old cruft.
...
With the new joystic axis system, those cvars are no longer needed.
2013-01-28 18:06:06 +09:00
Bill Currie
475d90e96f
Expose Key_StringToKeynum.
2013-01-28 16:34:29 +09:00
Bill Currie
2336b0bcc8
Do some more code split-up.
2013-01-28 16:02:33 +09:00
Bill Currie
3e27689ca8
Begin splitting the code into more easily digested chunks.
...
While MH's code certainly does the job, it's rather hard to follow with
functions doing different jobs on different calls.
2013-01-27 20:04:34 +09:00
Bill Currie
1740e14d2a
Do a const-correctness run on palettes.
2013-01-27 19:57:40 +09:00
Bill Currie
173af3a992
Tweak the deadzone code to work better with pre-amp.
...
Everthing was fine with pre-amp == 1, but if it was anything else, the
offset would become invalid.
2013-01-27 14:30:13 +09:00
Bill Currie
f5e1983e0f
Produce prettier floats in the output.
2013-01-27 14:09:48 +09:00
Bill Currie
dfbb68d573
Terminate the option arrays.
...
Before they terminate QF.
2013-01-27 14:08:01 +09:00
Bill Currie
1a33d2f682
Do a whitespace run.
...
Just for long-term sanity's sake.
2013-01-27 14:05:24 +09:00
Johnny on Flame
e3e0d6aaa9
Add menu commands + fixes
2013-01-27 13:17:13 +09:00
Johnny on Flame
ee436d89f6
More in-game console command documentation for in_joy
2013-01-27 13:17:13 +09:00
Johnny on Flame
86e7392e7a
A few fixes + boundary checks
2013-01-27 13:17:12 +09:00
Johnny on Flame
637d751aa7
Saves axes behaviours on the config file.
2013-01-27 13:17:12 +09:00
Johnny on Flame
4f92bceb4f
Joystick configuration commands.
2013-01-27 13:17:12 +09:00
Bill Currie
c56a075199
Get MH's vid_win.c mostly working for sw and sw32.
...
There are still a great many problems, but pixels get to the screen in the
right place (for windowed mode, anyway).
2013-01-27 12:53:58 +09:00