⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changelog

📁 doom游戏
💻
📖 第 1 页 / 共 3 页
字号:
	* Bug: core dump when using doom.wad or doom1.wad
	  without a "-file UNUSED/doom2.wad". Version
	  dependend handling of stuff (double shotgun)
	  comes to mind.

	* doomdef.h: 
	  SNDSERV enables external sound server
	  support. SNDINTR enables internal sound
	  output with timer (asynchronous). Default
	  is internal, synchronous.

	* i_sound.c (I_HandleSoundTimer): 
	  Okay, the plasma/double shotgun sound bug
	  (crapyy sund when firing nose-to-wall) is
	  obviously a problem with blocking at
	  refresh - smaller screen size makes it go
	  away.
	  I won't do threads w/o a proper gdb, and
	  I can't do whatever Dave Taylor did with
	  LinuxQuake w/o the sources, thus I broke
	  down and implemented a timer based solution.
	  Seems to work fine, given the fact that
	  this is the first time ever I implemented
	  sound handling.

Fri Dec 19 10:02:48 1997    <bk@gamers.org>

	* m_menu.c/i_sound.c/s_sound.c:
 	  Removed a few more inconsistencies due to
	  old internal sound handling (DOS),
	  external (Linux sndserver), and
	  new internal (the unfinished merge of
	  both the former).
	  The Options/Sound/Music volume menu is
 	  accessible now. It was due to an internal
	  scaling of the menu (effective range 0-15),
	  up to 0..120, by multiply with 8 scattered
 	  all over the place, that we got a
	   v_video.c: I_Error ("Bad V_DrawPatch")
	  Now I am using the menu resolution
	  everywhere, and scaling should only be done
	  in the actual mixing/output.
	
	* OK, obviously this hasn't been updated in months.
	  This is because: a) most of the time nothing
	  happened, and b) when something got done, it was
	  too much to keep track of it by CVS and/or ChangeLog.

	  Basically, what happened in the meantime is that
	  I did not find a publisher who believed that the book
	  sales would be worth doing it. Within the limited
	  amount of time that I could dedicate to a project
	  that will not generate any revenue whatsoever,
	  I spent some time on cleaning up the Linux code
	  base which works, essentially. I might or might not
	  be able to participate in a Mesa+Voodoo+Glide based
	  GLDOOM port for Linux. I won't waste a minute on
	  Win32 without getting paid for it.
  
	  Because of the legal issues involved with the
	  DMX sound library id licensed for DOS DOOM, Linuxdoom
	  is the only code base that has sound support at all.
	  Other UNIX ports (SGI, Sun) could probably be revived
	  and integrated w/o too many problems. There is no
	  Win32 port - I never had access to WinDOOM or
	  Jim Dose's GLDOOM sources. There is no Linux
	  OpenGL (read: Mesa) support yet - that'd involve
	  internal changes which will best be done after a
 	  public source release.

	  John Carmack opted for a release of the Linux code.
	  I have removed all DMX references I could get a
	  hold of, but preserved some of the original
	  sound handling within DOOM that interfaced
	  with DMX. Linuxdoom (like previous UNIX ports)
	  used a separate sound server binary. I did some
	  work on putting the sound server module back into
	  the engine. It works, but shutdown (pending sounds),
 	  and sound output parallel to refresh (blocking)
	  is crappy, and there is a problem with double
	  shotgun and plasma at close distance (as well as
	  with lots of other noises going on). As the
	  mixing code is identical to the separate
	  soundserver, and as it doesn't seem to be a
	  blocking issue, I am currently at a loss - I
 	  wonder whether the IPC communication with the
	  soundserver process introduced a delay that
	  changed behaviour, or whether I simply overlooked
	  a bug. I am currently lacking the time to track
	  this down, so I am keeping both internal and
	  soundserver source.

	  I did remove DOS and Watcom specifics. I did also
	  remove the texture mapping and fixed point assembly.
	  From my experience, it isn't worth the trouble
	  to ue GCC inline assembler, as performance of 
	  the same loop written in C is perfectly sufficient.
	  On demand I will put both assembly modules into some
	  documentation, as they are probably of historic
	  interest.

	  There is no Sun DGA, Irix, or other non-Linux stuff
	  in this code base (at least, not intentionally). 
	  They will be back when ports to other UNIX 
	  environments will be merged back (I can't do 
	  testing, and the modules were separate and not
	  consistent, so I refrained from wasting time on
	  this prior to a public release).

	  While I made only minor changes to the actual code
	  (some fixes, some cleaning up of SHM and audio),
	  I did a huge amount of shuffling around. I
 	  introduced many more header files and modules,
	  some of them laughably small (doing these changes
 	  is bound to screw up CVS, so no CVS record anymore
	  for the time being). I would introduce even more
	  separation if I had the time. Splitting the
	  animation/AI/behaviour code that defines 
	  "DOOM - The Game" into a separate game.so (like
          Quake2 does) should definitely be done. Separating
	  a ref_soft.so aka "DOOM - The Engine", and defining
	  a clean interface prior to introducing a ref_gl.so
	  is recommended as well.

	  I am going to purge some more leftovers, remove 
	  the obsolete CVS history except for comments,
  	  and try to clean up the last "implicit declaration"
 	  and "unused variable" warnings. Except for enabling
	  cheats in nightmare (to have more fun while testing),
	  I did not change the game mechanics at all. I would
	  strongly advise against doing so w/o the proper
	  separations suggested above. I will not waste time
	  on fixing detail and blocky mode, lack of resize,
	  or other stuff that it better addressed by a proper
	  GLDOOM port.

	
Sat Aug 16 08:07:16 1997    <bk@hal.gamers.org>

	* p_pspr.c:
 	  Moved the sprite animation stuff from doomdef.h here.

	* info.h:
	  Added #ifndef __INFO__ for multiple inclusion. I am
	  not going to deal with multigen, or changing the
	  original DOOM monster animation anyway.

	* p_spec.h/c:
 	  Moved anim_t etc., locally used only. There is
	  another anim_t in wi_stuff.h/c, now local as well,
	  so collisions on header inclusion should not occur.
          #include "doomdef.h"
          #include "doomstat.h"
	  these should now be topmost includes.
	
	* doomstat.h, doomdef.h, wi_stuff.h, d_player.h:
	  I moved wbstartstruct_t to d_player.h, and wminfo
	  to doomstat.h. Basically, I will try to move all
	  global state related stuff into doomstat.h, and
	  all data structures defined for state variables
	  into doomdef.h - this will be kinda greek tragedy,
	  and never finished, but a body can try.

	* wi_stuff.h/c, wi_data.h: 
          Removed wi_data.h, put all local stuff blah... see
	  below.
          I have found several unused global variables,
	  started outcommenting them with //U, will remove
	  them later. It might be Watcom/PC stuff, or
	  somebody put the actual numbers into the implementation
	  instead of using STARDIST, ANIMPERIOD & Cie.
	
	* st_stuff.h/c: from doomdef.h, local stuff moved
	  into st_stuff.c, etc.
	  In the current revisions, I am tolerating warnings
	  of the "implicit declaration" kind - the linker
	  resolves the stuff, and it will be handy in 
	  unmangling the modules once the headers contain
	  only the globally visible stuff.

	* am_map.h/c, am_data.h:
 	  Removed am_data.h, put all local stuff into
	  am_map.c, moved globally needed headers from
	  doomdef.h into am_map.h.

	* p_saveg.h, p_setup.h, p_tick.h:
 	  created, stuff from doomde.h moved there

	* d_main.c, d_net.c, doomdef.h: 
	  Decided to dump mprintf, as only needed for
	  Watcom support which is not going to happen.

	* doomdef.h: 
	  Moved function prototypes to appropriate headers:
	  d_main.h, d_net.h.

Fri Aug 15 16:38:53 1997    <bk@hal.gamers.org>

	* doomstat.h:
	  added a few more comments, regrouped some of the
	  state variables.

	* doomdata.h: added a few more comments.

Thu Aug 14 10:38:37 1997    <bk@hal.gamers.org>

	* g_game.c (G_DoLoadLevel): 
	  copied the skyflatnum determination here, from
	  the R_InitSkyMap - once should be sufficient.

	* Makefile, r_sky.h/c: 
	  added r_sky module. The sky handling was scattered
	  over r_bsp, r_main, r_plane, doomstat.h...

	* r_bsp.c, r_main.c, r_segs.c:
 	  Removed RD_* calls from R_debug.m, NeXT switches.

	* r_local.h:
	  Removed the R_debug.m NeXT specific debugging
	  code headers. Removed "drawbsp" flag from
	  here, and r_main.c, too.

	* r_data.c: 
	  Started to remove NORMALUNIX switches, using
	  LINUX instead. Basically, different UNIX
	  platforms using the same code should simply
	  be ANDed in the #ifdef switches.

	* r_draw.c:
	  Removed some more, but not all WATCOMC support.
	  There is an unresolved problem with the fuzzy
	  blitting in the lowres (blocky) modes - either
	  the "detailshift" flag triggered lowres mode
	  will be removed, or the bug has to be fixed.

	* r_bsp.h, r_draw.h, r_things.h, r_data.h,
	  r_segs.h, r_main.h, r_plane.h: 
          Created from r_local.h. 
	
	* Back to work.
	  Till March 22nd, a lot of source shuffling and addition
	  of new header files, separating stuff, and creating
	  new, smaller modules. Some Watcom/PC/DMX/NeXT etc.
	  related stuff got removed, but not all (yet). None of
	  this ended up in the Log (sorry) or the revision control
	  (CVS is not well suited while number of files and
	  respective names change a lot, especially if stuff gets
	  deleted and/or re-introduced).
	  Major change: part of the sound code got copied from the
	  separate Linux sndserver sources to the linuxdoom source.
	  Re-integration and removal of sndserver pending.
	  Nothing of importance happend since then (priorities).

Mon Feb  3 16:41:05 1997    <bk@gamers.org ()>

        * m_misc.c:
          Created m_argv, m_random and m_bbox, kept remains in m_misc
          for the time being. Misc. files changed to include only
          necessary modules. Moved bbox definitions from doomdata.h. 

        * m_menu.h:
          Created from doomdef.h. Misc. changes in dependend modules.
          I am not going to list every affected file from now on.
          See Log entries within each file. 

        * dstrings.h:
          Now handles multi-language support and switches.
          So far, only english (default) and french are available. 

        * d_englsh.h: 
          Created from dstrings.h. 

        * g_game.h:
          Created, from doomdef.h. 

        * am_map.c, st_stuff.c, wi_stuff.c: 
        * Makefile: 
          Added m_cheat, removed dutils. Doubly linked list stuff unused.

        * m_cheat.h, m_cheat.c:
          Created, basci cheat string scrambling and check, from dutils.h
          and dutils.c. 

        * doomdef.h
          Moved screen declaration to v_video.h.

        * dutils.h, dutils.c
          Remode code for f_wipe.h and f_wipe.c.

        * Makefile
        * d_main.c,
          Added f_wipe files.

        * f_wipe.h, f_wipe.c: 
          Created, screen wipe/melt at mission begin, from dutils.h
          and dutils.c.

        * d_textur.h:
          Created from doomdata.h. Separates all the patch/texture
          defintions. Needed for v_video module. 

        * r_local.h, wi_stuff.h, st_lib.h, hu_lib.h: 
        * i_x.c, d_main.c, m_menu.c, m_misc.c: 
          Added v_video.h.

        * v_video.h:
          Created. Using headers from doomdef.h. Forward of patch_t.
          Moved bool and byte to doomtype.h.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -