Quake3World.com Forums
Programming Discussion
UI code
Login
|
Profile
|
|
FAQ
|
Search
|
IRC
Print view
Previous topic
|
Next topic
Topic Starter
Topic: UI code
nexus024
Commander
Joined: 06 Oct 2006
Posts: 145
Posted: 02-04-2012 02:18 PM
I have been struggling with getting ui_* files to utilize the qcommon.h file. Specifically I need to be able to access functions such as NET_OutOfBandPrint(). Does anyone know if this is possible?
Top
^misantropia^
Mentor
Joined: 12 Mar 2005
Posts: 3957
Posted: 02-04-2012 05:03 PM
You can't, unless you hack the engine too.
Top
nexus024
Commander
Joined: 06 Oct 2006
Posts: 145
Posted: 02-04-2012 08:20 PM
Can you point me in the right direction to hack the engine?
Top
speaker
Veteran
Joined: 13 Jan 2008
Posts: 166
Posted: 02-05-2012 01:08 AM
System calls from the UI module to the main engine are implemented in the following source files:
ui_public.h -- enumeration of system calls (UI_PRINT, etc.)
ui_local.h -- prototypes of the system calls, e.g. 'void trap_Print(const char *string);'
ui_syscalls.asm -- enumerations (whatever?) for the Quake assembler (e.g. -2 for UI_PRINT)
cl_ui.c -- the main engine functions that are called when the system call is made, see the huge switch module in 'CL_UISystemCalls'
If you plan to use DLLs instead of VM modules, then you also have to modify 'ui_syscalls.c'.
Studying these files will give you an idea about how the whole system call stuff is implemented. Try to imitate what the already implemented calls do.
Top
nexus024
Commander
Joined: 06 Oct 2006
Posts: 145
Posted: 02-05-2012 06:29 AM
Perfect, Thanks!
Top
Quake3World.com
|
Forum Index
|
Programming Discussion