Commit graph

2281 commits

Author SHA1 Message Date
Ozkan Sezer
ac684328f8 fitzquake.bmp: added new miage file (24 bit, 32*32, converted from
fitzquake.ico)
fitz_bmp.h: new header, dumped bytes from fitzquake.bmp.
pl_linux.c (PL_SetWindowIcon): implemented window icon.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@82 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 21:23:09 +00:00
Ozkan Sezer
4cd210455d fitzquake.bmp: added new miage file (24 bit, 32*32, converted from
fitzquake.ico)
fitz_bmp.h: new header, dumped bytes from fitzquake.bmp.
pl_linux.c (PL_SetWindowIcon): implemented window icon.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@81 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 21:14:46 +00:00
Ozkan Sezer
e65e0b8292 pl_linux.c (PL_ErrorDialog): print to stderr. append a '\n' to the message.
updated the todo note.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@80 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 21:04:29 +00:00
Ozkan Sezer
6752e8588f gray_big.bmp, gray_big.lmp: added custom conback image files for QuakeSpasm.
mk_header.c : added tiny C source to generate conback.h header from the lmp.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@79 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 12:01:01 +00:00
Ozkan Sezer
3399f519f6 made loading of embedded custom conback friendly with dynamic gamedirs:
gl_draw.c (Draw_CheckConback): new proc.
 (Draw_Init): moved mod-provided gfx/conback.lmp check form here to
Draw_CheckConback().
draw.h (Draw_CheckConback): added prototype.
gl_texmgr.c (TexMgr_NewGame): call Draw_CheckConback().


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@78 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 09:55:32 +00:00
Ozkan Sezer
f8f8da4933 gl_draw.c: search for a mod-provided conback image in Draw_Init time
and cache the result, instead of doing it everytime.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@77 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 09:30:14 +00:00
Ozkan Sezer
eb9e15a9b3 the custom embedded comback image is intended to replace the id1 image ..
* .. when running in fitz-compatibility mode (-fitz command line switch)
* .. or when the mods themselves did not provide their own conback image
themselves, ie. the "Q" conback image of id1 is just not wanted. So, just
modify/corrupt the gfx/conback.lmp filename in the id1/pak0.pak file list,
achieving the intention that way.
common.c (kill_id1_conback): new QuakeSpasm customization helper.
 (COM_InitFilesystem): call kill_id1_conback() just after adding the id1
directory to the search path when not running in fitzmode.
gl_draw.c (Draw_ConbackPic): when not running in fitzmode, do search for
the gfx/conback.lmp file before loading the embedded custom image to see
whether the mod provided its own conback image.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@76 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 08:50:31 +00:00
Ozkan Sezer
ba628ca477 console.c (Con_TabComplete): added a workaround after the weirdness that has
been happening with the argument completion for the changelevel command after
the completion changes. from Steven.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@75 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 08:29:48 +00:00
Ozkan Sezer
e3d6b98d8b common.c (COM_FindFile): commented out the debug messages about finding
and not finding a file.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@74 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 08:20:20 +00:00
Ozkan Sezer
c31e8931a8 common.c (COM_Init): move the -fitz command line switch check before the
filesystem initialization.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@73 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 08:14:30 +00:00
Ozkan Sezer
7a25ce8599 host_cmd.c (Host_Changelevel_f): activate mouse input upon changelevel.
(from Steven.)


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@72 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 01:20:45 +00:00
Ozkan Sezer
6bc3c41370 cl_main.c (CL_NextDemo): fix for an obscure bug when there are no demos
listed with startdemos: run the game, go into a savegame or start a new
game, type F3 and press Esc enough times to go back to normal view, bring
down the console and enter "timedemo demo1". when the demo ends, the only
thing I was able to *see* was the loading label, no other activity at all,
although I can still do F10 (quit) and blindly press Y to exit the game,
so the engine didn't crash. problem was that CL_NextDemo() didn't check
if an actual nextdemo exists before calling SCR_BeginLoadingPlaque() which
set scr_drawloading to true, so scr_drawloading still remained as true..
fixed thusly.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@71 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 01:10:18 +00:00
Ozkan Sezer
b815a8c0d9 snd_mix.c (SND_InitScaletable): fixed the snd_scaletable init breakage with
gcc-4.1 and -O1 and higher From Kevin Shanahan (Tyrann). although the bug is
fixed in gcc, it is safer to have this workaround here.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@70 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 00:25:33 +00:00
Ozkan Sezer
18080769da gl_model.c (Mod_LoadModel): buf needn't be an unsigned int pointer, made
it into a byte pointer, extracted the mod type from the header by bit shifts.
also removed the unnecessary void pointer variable.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@69 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 00:20:08 +00:00
Ozkan Sezer
8e0638e867 gl_rmisc.c (R_Envmap_f): the envmap command can only be run when there's something
to render, ie. when connected to a server. besides, the refdef must be restored when
it is completed.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@68 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 00:05:14 +00:00
Ozkan Sezer
a3bae85fe6 pr_exec.c (PR_Profile_f): the profile command can only be run when the server is active.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@67 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-20 00:00:40 +00:00
Ozkan Sezer
cdfdf592bd cmd.c (Cbuf_Execute), net_dgrm.c (Datagram_GetMessage), net_loop.c (Loop_GetMessage):
replaced memcpy calls for overlapping areas with memmove().


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@66 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-19 23:55:17 +00:00
Ozkan Sezer
24fc57ac86 console.c: Steven's patch adding argument completion to map and changelevel
commands.  this is not a true argument completion, only a tiny hack for the
two aforementioned commands.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@65 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-19 16:35:13 +00:00
Ozkan Sezer
cb6a0bcaaf console.c: Steven's patch making console command completion display a little
more like bash, showing the maximum matching partial at the first time instead
of auto-completing to the first match.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@64 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-19 16:28:41 +00:00
Ozkan Sezer
9651def37b gl_vidsdl.c (VID_Toggle): removed extra failure message (left over from commit r62).
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@63 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-19 16:18:24 +00:00
Ozkan Sezer
53f35947f9 gl_vidsdl.c (VID_Toggle): made it so that when SDL_WM_ToggleFullScreen() fails,
a VID_Restart will be attempted (hoping ~that~ will succeed..)


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@62 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-19 16:03:45 +00:00
Ozkan Sezer
3365e343da use Steven's patch andallow for the 'demos' command to work in !fitzmod :
host_cmd.c (Host_Startdemos_f): reverted rev.50 change. when not fitzmode,
made it to directly go to the menu instead CL_NetxDemo().
menu.c (M_Main_Key): when not fitzmode, do not CL_NextDemo() for K_ESCAPE
case.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@61 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-19 13:32:21 +00:00
Ozkan Sezer
06544570de updated the copyleft file from ftp://ftp.gnu.org/gnu/Licenses/COPYING-2.0
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@60 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-19 12:40:45 +00:00
Ozkan Sezer
6fb90e547b removed the 9.5 MB Icon.psd file.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@59 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-19 12:20:09 +00:00
Ozkan Sezer
0c6f662e96 menu.c (OPTIONS_ITEMS): keep as 13 and don't define as 14 for windows,
because the SDL port seems to have removed the "use mouse" entry in the
options menu.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@58 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-19 11:55:21 +00:00
Ozkan Sezer
cd68be3496 console.c (Con_TabComplete): check for key_tabpartial[0] instead of strlen(key_tabpartial).
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@57 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-19 09:15:23 +00:00
Ozkan Sezer
26ca68aa97 gl_draw.c: fixed several strict aliasing violations about glpic_t.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@56 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-18 22:11:26 +00:00
Ozkan Sezer
4adada3d85 Makefile.w32, Makefile.w64: now that net_sdlnet.c is properly cleaned up
and is not messing with socket api functions, windows versions no longer
need linking to wsock32.dll or ws2_32.dll.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@55 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-18 22:02:13 +00:00
Ozkan Sezer
d6044da9bf net_sdlnet.c: cleanup and warning fixes: automatic changing of the "hostname"
cvar according to internet hostname has been removed. SDL_net doesn't provide
and equivalent of gethostname() and mixing APIs is not a good idea. servers
will be called "UNNAMED" if they don't set it themselves. Also removed the
inet_addr("127.0.0.1") call and replaced it with SDL_SwapBE32(INADDR_LOOPBACK).
defined INADDR_LOOPBACK as 0x7f000001 if not already defined. properly guarded
the AF_INET and MAXHOSTNAMELEN definitions to be on the safe side. replaced
all variables named 'socket' to 'socket_p' so as to avoid confusions with the
socket api. fixed two strict aliasing violations in SDLN_OpenSocket() and
SDLN_GetSocketAddr().


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@54 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-18 21:56:10 +00:00
Ozkan Sezer
45b0f40128 gl_draw.c (Draw_ConbackPic): new proc for drawing the normal conback image
in fitzmode mode otherwise drawing the custom QuakeSpasm conback from memory.
(Draw_ConsoleBackground): use the new Draw_ConbackPic().
Makefile, Makefile.w32, Makefile.w64: added conback.c to the build.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@53 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-18 16:55:28 +00:00
Ozkan Sezer
fa7aa93450 conback.c, conback.h: added new QuakeSpasm conback data.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@52 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-18 16:45:28 +00:00
Ozkan Sezer
de9eca45e1 draw.h, gl_draw.c, gl_vidsdl.c: removed my recently added Draw_ClearMenuPicCache()
helper. not necessary at all.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@51 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-18 16:00:34 +00:00
Ozkan Sezer
a5c45574d5 Steven's customizations:
host_cmd.c (Host_Startdemos_f): if not running in fitzmode, don't add demos
to the loop and set cls.demonum.to -1.
menu.c (M_Draw): if not running in fitzmode, quit immediately without the
dialog for the m_quit case.
sbar.c (Sbar_SoloScoreboard): restored the original behavior depending on
whether we are running in fitzmode.
Marked the code with /* QuakeSpasm customization: */ in those places.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@50 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-18 12:55:19 +00:00
Ozkan Sezer
0a26b3bc2d Makefile, Makefile.w32, Makefile.w64: renamed the binary name to quakespasm[.exe]
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@49 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-18 12:14:51 +00:00
Ozkan Sezer
4065ce7280 common.c (COM_Init): updated endianism check.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@48 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-18 12:00:31 +00:00
Ozkan Sezer
44ad29724b common.c, common.h: added check for '-fitz' command line switch which, if true,
makes quakespasm to run in fitzquake mode and disable custom quakespasm hacks.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@47 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-18 11:45:18 +00:00
Ozkan Sezer
0dce9ae100 in_sdl.c: made total_dx, total_dy and FilterMouseEvents() static. added
a boolean no_mouse. added check for '-nomouse' command line switch which
disables all mouse events.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@46 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-18 11:33:12 +00:00
Ozkan Sezer
04e31c1ac6 main.c (main): Fixed the utterly broken SDL active event mask usage. In
its original form, gcc rightfully considered that case a dead code even
when not optimizing. Commented out the contents of the case for now.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@45 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-18 10:33:33 +00:00
Ozkan Sezer
7a8705bc34 gl_vidsdl.c (VID_MenuKey): fixed a typo: cursor position 4 controls vid_vsync,
not vid_fullscreen.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@44 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-17 23:37:24 +00:00
Ozkan Sezer
6c7d3d7205 console.c, gl_vidsdl.c, host_cmd.c, in_sdl.c, main.c, menu.c, net_sdl.c,
net_sdlnet.c, sys_sdl.c: a lot of space-to-tab whitespace tidy-ups in the
files created or touched by the SDL port. no actual code change.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@43 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-17 23:32:04 +00:00
Ozkan Sezer
9d9354165c Makefile.w32, Makefile.w64: make sure to link to the correct winsock
library, which must be what SDL_net.dll is already linked to, which is
wsock32.dll for win32, and ws2_32.dll for win64 (mingw-w64.)


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@42 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-17 19:23:00 +00:00
Ozkan Sezer
afe632313d Makefile.w64: now that native amd64 builds work, added a Win64 makefile for
cross-compilation using mingw-w64.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@41 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-17 16:40:41 +00:00
Ozkan Sezer
aa24149247 pl_win.c: Fixed for win64 (GCL_HICON is deprecated, use GCLP_HICON and
SetClassLongPtr.)


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@40 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-17 16:39:20 +00:00
Ozkan Sezer
222ea1945c Makefile, Makefile.w32: now that native amd64 builds work, adjusted for CPUFLAGS.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@39 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-17 15:25:25 +00:00
Ozkan Sezer
89e17301c9 64 bit compatibility effort, 4/nn: x86_64 works just fine now, yey!
the QuakeC interpreter used to use string pointer offsets from pr_strings
even when the pointers lead to engine data which is often well out of
32bit range on a 64bit architecture and they lead to crashes.  they now
go through the new PR_SetEngineString and PR_GetString functions which
turn any address outside the pr_strings area into an index into a table
of engine string addresses, adding new string addresses to the table as
needed. the engine strings table is allocated with 256 entries at first
(see the PR_STRING_ALLOCSLOTS definition in pr_edict.c) and its size is
incremented by 256 as needed and re-allocated on the zone. managing that
allocation and reallocation is accomplished by the recently added Z_Realloc
function. implementation based on the uhexen2 (hexen2: hammer of thyrion)
engine which, in turn, is loosely based on twilight and quakeforge engines.
pr_strings range check is from tyrquake.
pr_edict.c: added the new PR_SetEngineString, PR_GetString, PR_AllocString
public functions and the new private PR_AllocStringSlots function. made
ED_NewString private to pr_edict.c and reworked it to return an index to a
newly allocated string.
progs.h: added prototypes for the new public PR_SetEngineString, PR_GetString
and PR_AllocString functions.
host_cmd.c, pr_cmds.c, pr_edict.c, pr_exec.c, progs.h, sv_main.c, sv_phys.c:
modifed to use the new PR_SetEngineString and PR_GetString functions.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@38 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-17 15:04:50 +00:00
Ozkan Sezer
90d1f32d75 pr_cmds.c (pr_builtin): made static.
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@37 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-17 11:05:24 +00:00
Ozkan Sezer
bed9185cae pr_cmds.c: changed pr_string_temp to cycle between 16 static buffers in
order to handle many prints in ftos and vtos calls.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@36 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-17 11:03:34 +00:00
Ozkan Sezer
8899591d25 64 bit compatibility effort, 3/nn:
pr_edict.c (type_size): make it 1, not sizeof(void*)/4, because quake progs
is strictly 32 bits where sizeof(void*) is 4.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@35 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-17 07:28:44 +00:00
Ozkan Sezer
f9928b24ac 64 bit compatibility effort, 2/nn: type correctness work in common.h,
gl_draw.c, gl_model.c, gl_sky.c, gl_texmgr.c, gl_texmgr.h, r_alias.c,
r_brush.c, r_part.c, r_world.c, snd_mem.c.  next step will be server
side (progs) work which is actually the heart of the problems.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@34 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-16 21:26:11 +00:00
Ozkan Sezer
9e861e3102 64 bit compatibility effort, 1/nn: type correctness work in common.c,
common.h, gl_vidsdl.c, mathlib.h, zone.c, zone.h. added Z_Realloc as a
new function (will be used later.) next step will be type correctness
work in opengl stuff.


git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@33 af15c1b1-3010-417e-b628-4374ebc0bcbd
2010-02-16 21:22:20 +00:00