Commit graph

87 commits

Author SHA1 Message Date
Bill Currie
15a5254f04 [build] Get ncurses support working again
Some minor errors dues to getting win32 building (and not testing the
results properly in Linux).
2021-03-29 17:54:39 +09:00
Bill Currie
88ff254f42 Get QF cross-compiling using MXE/mingw32
This includes -win clients (no clue if anything actually works yet).
2021-03-27 20:09:37 +09:00
Bill Currie
a9bd436837 [build] Autoconfiscate printf format attribute
I don't know if gnu_printf is appropriate for all cases, but it is
needed for mingw32.
2021-03-27 19:52:59 +09:00
Bill Currie
86b5b30b45 Merge branch 'master' into vulkan 2020-06-25 14:03:52 +09:00
Bill Currie
9986b57a77 [console] Use sig_atomic_t for SIGWINCH
If it's not defined on other platforms, something can be done in
config.h
2020-03-23 16:16:50 +09:00
Bill Currie
178c8dec85 [console] Fix server console resize
I goofed when doing the win32 fixes
2020-03-23 16:01:07 +09:00
Bill Currie
4e4d1b99b4 Clean up all the system shutdown calls
I added Sys_RegisterShutdown years ago and never really did anything
with it: now any system that needs to be shutdown can ensure it gets
shutdown on program exit, and in the correct order (ie, reverse to init
order).
2019-07-12 23:15:26 +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
e27d7cbd2d Handle alloca "correctly".
Use AC_FUNC_ALLOCA and the #ifdef mess suggested by the autoconf docs
(hidden in qfalloca.h).
2013-01-22 21:02:50 +09:00
Bill Currie
23a38738fc Massive whitespace cleanup.
Lots of trailing whitespace and otherwise blank lines.
2012-05-22 08:23:22 +09:00
Bill Currie
bc1b483525 Nuke the rcsid stuff.
It's pretty useless in git.
2012-04-22 10:56:32 +09:00
Bill Currie
ce6ab908a5 Don't include the specific plugin headers in plugin.h.
This lets files that use plugins not depend on plugins they don't use.
2012-02-13 22:02:07 +09:00
Bill Currie
f75b0a611b Some compile fixes for OpenBSD 2011-08-25 22:35:20 +09:00
Bill Currie
c8e1d7b45a Fix the API for inputline->enter().
Pass the inputline object rather than the input text, allowing access to
both user_data and the input text.
2011-03-27 08:03:39 +09:00
Bill Currie
de04e1b602 Lots of win32 (mingw cross) build fixes.
HTTP (curl) support is missing, but everything else builds.
2010-12-23 11:40:16 +09:00
Bill Currie
b49614a44f a bit of ncurses related cleanup
doesn't fix the corrupted input line when the output window is busy, but that
might be a gnome-terminal bug (seems to be ok on the linux console)
2010-01-13 06:52:42 +00:00
Bill Currie
edabbd5abe fix inputline updates when tab completion produces a large list
o never use stdscr: curses does not support overlapping windows. though
    stdscr was used only for getting the screen size, this is not necessary as
    the TIOCGWINSZ can be used instead.
  o batch the prints generated by tab comletion to avoid frequent updates of
    the screen. this seems to have fixed the corrupted output of the inputline
2010-01-13 06:47:48 +00:00
Bill Currie
e35ca56c1e wrap the call to Con_BasicCompleteCommandLine in a local function 2010-01-13 06:47:21 +00:00
Bill Currie
d66934942d nuke Con_Printf and Con_DPrintf and use Sys_* instead 2007-11-06 10:17:14 +00:00
Bill Currie
7925e16d73 audit the usage of view_draw. It is really meant for draw callbacks, not direct usage by the application. 2007-04-09 00:22:17 +00:00
Bill Currie
2894182ec5 The status bar in the quakeworld server curses console finally does something. Currently only cpu usage, but as a proof-of-concept, it more than does its job. 2007-04-09 00:10:10 +00:00
Bill Currie
c6ea999d4d whee, finally. stateful console mode :) nukes cl_chatmode. 2007-04-07 05:50:29 +00:00
Bill Currie
3fb03fc2be hah, should have been using __attribute__((used)) all that time (rather
than __attribute__((unused))). fixes the missing console in -x11
2005-08-04 15:27:09 +00:00
Bill Currie
3a709cac0f revamp the server curses code to use views (planning on "watch windows" for
debugging things)
2005-06-14 11:30:33 +00:00
Bill Currie
4a8bc0a4c4 bit of a reorg to get most code out of the way of #ifdefs, bit of a speedup
for screen updates and add a simple escape sequence parser for home and end
in debian's xterm (which seems to have borked terminfo?)
2005-06-13 09:41:48 +00:00
Bill Currie
565bb92057 con_data clash. oops. :) 2005-06-08 10:07:48 +00:00
Bill Currie
501180aaac gcc-4.0 fixes. even found some bugs :) (names /not/ mangled this time) 2005-06-08 06:35:48 +00:00
Bill Currie
7ff1534e9d bah, fix one, create another... 2004-01-27 05:23:36 +00:00
Bill Currie
3a85dbda18 d'oh 2004-01-22 04:42:06 +00:00
Bill Currie
d9a582a741 fix the print mangling of scrolled back screens (thought of this about 10s
after committing:P)
2004-01-22 04:28:24 +00:00
Bill Currie
62ef6f9549 scrollback 90% working. prints will mangle things, but ^L will clean it up 2004-01-22 04:07:39 +00:00
Bill Currie
d3e7be755b flush sv_logfile on each print 2003-10-22 09:04:18 +00:00
Bill Currie
9210829573 PLUGIN_INFO decl cleanup 2003-08-01 19:53:46 +00:00
Bill Currie
6063fb75d9 make the console run at full speed no matter what demo_speed is at. what a
lot of work for such a simple concept :P
2003-07-25 22:21:47 +00:00
Bill Currie
4cabc2db82 fix a non-curses build issue 2003-06-04 18:07:12 +00:00
Bill Currie
c2c3a62956 nuke Qexpand_squiggle. instead, expand ~ to $HOME on qfs initialization and
cache the value.

don't call Qopen directly in the engine. instead call QFS_Open (generic) or
QFS_WOpen (write only, zip flag).

rework QFS_NextFilename to use a dstring (avoiding a potential buffer
overflow), support 10000 files and work from the top-level fs_userpath
directory. adjust QFS_WriteFile and QFS_WriteBuffers etc to suit.

make sw32 screenshots actually get written.

hopefully everything gets written to the right places :)
2003-05-23 17:17:01 +00:00
Bill Currie
62e36ef747 make /command work when not using curses 2003-04-26 05:12:16 +00:00
Bill Currie
fb1a5f67f2 kill debug print :P 2003-04-17 03:31:45 +00:00
Bill Currie
eb099ae0d3 make qf gcc 3.3 clean 2003-04-17 00:01:48 +00:00
Bill Currie
589c3e4e49 get nq-server working properly 2003-04-16 05:06:19 +00:00
Bill Currie
761a7546dd re-arrange things so __attribute__ and __builtin_expect are properly
autoconfiscated so rcsid will continue to work with gcc 3.3
2003-01-15 15:31:36 +00:00
Bill Currie
71196fedf6 make gcc more anal about prototypes, string constants and function
visibility (ie, global functions must have a prototype)
2003-01-06 18:28:13 +00:00
Ragnvald Maartmann-Moe IV
46a093faba Change sv_use_curses default to 0, until curses has scrollback support. 2002-12-02 20:03:12 +00:00
Bill Currie
ec47e08e1c go back to using QFile, quakeio.h and quakefs.h 2002-08-27 07:16:28 +00:00
Bill Currie
0963c2476d improved server logging. "logfile" is gone from qw-server to be replaced
with "sv_logfile" and thus giving nq-server logging as well.
2002-08-07 18:46:53 +00:00
Bill Currie
ad6e025a91 take cmd.[ch] back to basics. the gib code is temporarily gone pending
renovations. cmd_source handling is a little hacky in nq, but it's working.
2002-07-31 05:19:03 +00:00
Bill Currie
ef81af9245 the "two birds with one stone" commit
1) when /not/ building static plugins, the plugin info name is, once again,
   PluginInfo, but is still type_name_PluginInfo for static plugins. This
   allows plugins to be symlinked (highly desirable for the debian packages,
   and likely others). This also requires plugins to /not/ be loaded with
   RTLD_GLOBAL.
2) because of 1, snd_alsa_0_9 has to explicitly load libasound itself. This
   just happens to fix my segfault on shutdown in RedHat 6.2.
2002-04-19 20:08:54 +00:00
Bill Currie
5f2dea43f6 break the dependency between cmd.h and dstring.h 2002-03-18 16:47:04 +00:00
Bill Currie
5a2538faaf dstring.[ch]:
create dsprintf and dvsprintf to do formated prints to dynamic strings.
rest
	Use the new functions :)
2002-03-08 23:11:42 +00:00
Bill Currie
a78ea1464b provide stubs for the client-only functions (they might prove useful in the
server later anyway). this fixes nq-server's segs
2002-01-19 04:37:47 +00:00