Update for JFDuke3D 20041013 Release
by Jonathon Fowler (jonof@edgenetwork.org)
http://jonof.edgenetwork.org/index.php?p=jfduke3d


Duke3D Source Updates
---------------------

The only change made to the source of the 20041013 release is the replacement
of the last line of jaudiolib\fx_man.c with this:

extern void MUSIC_Update(void);
void AudioUpdate(void) { MUSIC_Update(); }

Here is the GNU 'diff' output of the change:

diff -urd /f/r/duke3d/source/jaudiolib/fx_man.c /e/ports/duke3d/jaudiolib/fx_man.c
--- /f/r/duke3d/source/jaudiolib/fx_man.c   Tue Oct 12 16:43:32 2004
+++ /e/ports/duke3d/jaudiolib/fx_man.c      Fri Oct 15 12:03:40 2004
@@ -1070,4 +1070,5 @@ void FX_StopRecord
    }
 #endif

-void AudioUpdate(void) { }
+extern void MUSIC_Update(void);
+void AudioUpdate(void) { MUSIC_Update(); }


The included DUKE3D.EXE incorporates this fix.


Build Editor Source Updates
---------------------------

A problem with a sprite being inserted after saving a map (Esc, S) is
corrected with this patch to build.c:

diff -urp /f/r/build/src/build.c /e/ports/build/src/build.c
--- /f/r/build/src/build.c      Wed Oct 13 12:19:40 2004
+++ /e/ports/build/src/build.c  Thu Oct 14 10:52:50 2004
@@ -182,6 +182,7 @@ long menuselect(void);
 long getfilenames(char *path, char kind[6]);
 void clearfilenames(void);

+void clearkeys(void) { memset(keystatus,0,sizeof(keystatus)); }

 static int osdcmd_restartvid(const osdfuncparm_t *parm)
 {
@@ -2436,6 +2437,7 @@ long gettile(long tilenum)
                                        break;
                                }
                        }
+                       clearkeys();
                }
                while (tilenum < topleft) topleft -= (xtiles<<gettilezoom);
                while (tilenum >= topleft+(tottiles<<(gettilezoom<<1))) topleft += (xtiles<<gettilezoom);
@@ -5314,6 +5316,7 @@ void overheadeditor(void)
                                        showframe(1);
                                }
                        }
+                       clearkeys();
                }

                //nextpage();
@@ -5833,8 +5836,7 @@ short getnumber16(char namestart[80], sh
                        break;
                }
        }
-       keystatus[0x1c] = 0;
-       keystatus[0x1] = 0;
+       clearkeys();
        return((short)oldnum);
 }

@@ -5877,8 +5879,7 @@ short getnumber256(char namestart[80], s
                        danum = -danum;
                }
        }
-       keystatus[0x1c] = 0;
-       keystatus[0x1] = 0;
+       clearkeys();

        lockclock = totalclock;  //Reset timing



The included BUILD.EXE incorporates this fix.

