|
From: <je...@us...> - 2007-05-18 19:51:34
|
Revision: 1377
http://cs-sdl.svn.sourceforge.net/cs-sdl/?rev=1377&view=rev
Author: jendave
Date: 2007-05-18 12:51:25 -0700 (Fri, 18 May 2007)
Log Message:
-----------
Added Paths:
-----------
trunk/scsharp/
trunk/scsharp/AUTHORS
trunk/scsharp/COPYING
trunk/scsharp/ChangeLog
trunk/scsharp/HACKING
trunk/scsharp/INSTALL
trunk/scsharp/NEWS
trunk/scsharp/README
trunk/scsharp/SCSharp.sln
trunk/scsharp/SCSharp.suo
trunk/scsharp/credits.txt
trunk/scsharp/docs/
trunk/scsharp/docs/Makefile.am
trunk/scsharp/docs/Makefile.in
trunk/scsharp/docs/NOTES
trunk/scsharp/docs/bin-files
trunk/scsharp/docs/cmdbtns
trunk/scsharp/docs/directory-layout
trunk/scsharp/docs/got-files
trunk/scsharp/docs/images.dat
trunk/scsharp/docs/spk-file
trunk/scsharp/docs/sprites.dat
trunk/scsharp/docs/tilesets
trunk/scsharp/docs/wireframes
trunk/scsharp/lib/
trunk/scsharp/lib/net-2.0/
trunk/scsharp/lib/net-2.0/ICSharpCode.SharpZipLib.dll
trunk/scsharp/lib/net-2.0/SdlDotNet.dll
trunk/scsharp/lib/net-2.0/SdlDotNet.xml
trunk/scsharp/lib/net-2.0/Tao.Sdl.dll
trunk/scsharp/lib/net-2.0/Tao.Sdl.xml
trunk/scsharp/lib/net-2.0/nunit.framework.dll
trunk/scsharp/monodev.sh
trunk/scsharp/nantfiles.bat
trunk/scsharp/nantfiles.sh
trunk/scsharp/prebuild.xml
trunk/scsharp/scsharp.FxCop
trunk/scsharp/sharpdev2.bat
trunk/scsharp/src/
trunk/scsharp/src/SCSharp/
trunk/scsharp/src/SCSharp/App.config
trunk/scsharp/src/SCSharp/App.ico
trunk/scsharp/src/SCSharp/Properties/
trunk/scsharp/src/SCSharp/Properties/AssemblyInfo.cs
trunk/scsharp/src/SCSharp/Properties/Resources.Designer.cs
trunk/scsharp/src/SCSharp/Properties/Resources.resx
trunk/scsharp/src/SCSharp/Properties/Settings.Designer.cs
trunk/scsharp/src/SCSharp/Properties/Settings.cs
trunk/scsharp/src/SCSharp/Properties/Settings.settings
trunk/scsharp/src/SCSharp/SCSharp.cs
trunk/scsharp/src/SCSharp/SCSharp.csproj
trunk/scsharp/src/SCSharp/SCSharp.csproj.user
trunk/scsharp/src/SCSharp/bin/
trunk/scsharp/src/SCSharp/bin/Debug/
trunk/scsharp/src/SCSharp/bin/Debug/App.config
trunk/scsharp/src/SCSharp/bin/Debug/ICSharpCode.SharpZipLib.dll
trunk/scsharp/src/SCSharp/bin/Debug/SCSharp.vshost.exe
trunk/scsharp/src/SCSharp/bin/Debug/SCSharpLib.dll
trunk/scsharp/src/SCSharp/bin/Debug/SCSharpLib.pdb
trunk/scsharp/src/SCSharp/bin/Debug/SCSharpLib.xml
trunk/scsharp/src/SCSharp/bin/Debug/SdlDotNet.dll
trunk/scsharp/src/SCSharp/bin/Debug/SdlDotNet.xml
trunk/scsharp/src/SCSharp/bin/Debug/Tao.Sdl.dll
trunk/scsharp/src/SCSharp/bin/Debug/Tao.Sdl.xml
trunk/scsharp/src/SCSharp/bin/Debug/scsharp.exe
trunk/scsharp/src/SCSharp/bin/Debug/scsharp.exe.config
trunk/scsharp/src/SCSharp/bin/Debug/scsharp.pdb
trunk/scsharp/src/SCSharp/bin/Debug/scsharp.vshost.exe.config
trunk/scsharp/src/SCSharp/obj/
trunk/scsharp/src/SCSharp/obj/Debug/
trunk/scsharp/src/SCSharp/obj/Debug/Refactor/
trunk/scsharp/src/SCSharp/obj/Debug/ResolveAssemblyReference.cache
trunk/scsharp/src/SCSharp/obj/Debug/SCSharp.App.ico
trunk/scsharp/src/SCSharp/obj/Debug/SCSharp.Properties.Resources.resources
trunk/scsharp/src/SCSharp/obj/Debug/SCSharp.csproj.GenerateResource.Cache
trunk/scsharp/src/SCSharp/obj/Debug/TempPE/
trunk/scsharp/src/SCSharp/obj/Debug/scsharp.exe
trunk/scsharp/src/SCSharp/obj/Debug/scsharp.pdb
trunk/scsharp/src/SCSharp/obj/SCSharp.csproj.FileList.txt
trunk/scsharp/src/SCSharp/scsharp.snk
trunk/scsharp/src/SCSharpLib/
trunk/scsharp/src/SCSharpLib/App.ico
trunk/scsharp/src/SCSharpLib/MpqLib/
trunk/scsharp/src/SCSharpLib/MpqLib/Bin.cs
trunk/scsharp/src/SCSharpLib/MpqLib/BinElement.cs
trunk/scsharp/src/SCSharpLib/MpqLib/BitStream.cs
trunk/scsharp/src/SCSharpLib/MpqLib/Chk.cs
trunk/scsharp/src/SCSharpLib/MpqLib/FlingyDat.cs
trunk/scsharp/src/SCSharpLib/MpqLib/Fnt.cs
trunk/scsharp/src/SCSharpLib/MpqLib/Glyph.cs
trunk/scsharp/src/SCSharpLib/MpqLib/Got.cs
trunk/scsharp/src/SCSharpLib/MpqLib/Grp.cs
trunk/scsharp/src/SCSharpLib/MpqLib/IMpqResource.cs
trunk/scsharp/src/SCSharpLib/MpqLib/ImagesDat.cs
trunk/scsharp/src/SCSharpLib/MpqLib/LinkedNode.cs
trunk/scsharp/src/SCSharpLib/MpqLib/MapDataDat.cs
trunk/scsharp/src/SCSharpLib/MpqLib/Mpq.cs
trunk/scsharp/src/SCSharpLib/MpqLib/MpqArchive.cs
trunk/scsharp/src/SCSharpLib/MpqLib/MpqArchiveContainer.cs
trunk/scsharp/src/SCSharpLib/MpqLib/MpqBlock.cs
trunk/scsharp/src/SCSharpLib/MpqLib/MpqContainer.cs
trunk/scsharp/src/SCSharpLib/MpqLib/MpqDirectory.cs
trunk/scsharp/src/SCSharpLib/MpqLib/MpqHash.cs
trunk/scsharp/src/SCSharpLib/MpqLib/MpqHeader.cs
trunk/scsharp/src/SCSharpLib/MpqLib/MpqHuffman.cs
trunk/scsharp/src/SCSharpLib/MpqLib/MpqStream.cs
trunk/scsharp/src/SCSharpLib/MpqLib/MpqWavCompression.cs
trunk/scsharp/src/SCSharpLib/MpqLib/PKLibDecompress.cs
trunk/scsharp/src/SCSharpLib/MpqLib/ParallaxLayer.cs
trunk/scsharp/src/SCSharpLib/MpqLib/ParallaxObject.cs
trunk/scsharp/src/SCSharpLib/MpqLib/ScriptBin.cs
trunk/scsharp/src/SCSharpLib/MpqLib/SfxDataDat.cs
trunk/scsharp/src/SCSharpLib/MpqLib/Smk.cs
trunk/scsharp/src/SCSharpLib/MpqLib/Spk.cs
trunk/scsharp/src/SCSharpLib/MpqLib/SpritesDat.cs
trunk/scsharp/src/SCSharpLib/MpqLib/Tbl.cs
trunk/scsharp/src/SCSharpLib/MpqLib/Trigger.cs
trunk/scsharp/src/SCSharpLib/MpqLib/TriggerAction.cs
trunk/scsharp/src/SCSharpLib/MpqLib/TriggerCondition.cs
trunk/scsharp/src/SCSharpLib/MpqLib/TriggerData.cs
trunk/scsharp/src/SCSharpLib/MpqLib/UnitInfo.cs
trunk/scsharp/src/SCSharpLib/MpqLib/UnitsDat.cs
trunk/scsharp/src/SCSharpLib/Properties/
trunk/scsharp/src/SCSharpLib/Properties/AssemblyInfo.cs
trunk/scsharp/src/SCSharpLib/Properties/Resources.Designer.cs
trunk/scsharp/src/SCSharpLib/Properties/Resources.resx
trunk/scsharp/src/SCSharpLib/Properties/Settings.Designer.cs
trunk/scsharp/src/SCSharpLib/Properties/Settings.settings
trunk/scsharp/src/SCSharpLib/SCSharpLib.csproj
trunk/scsharp/src/SCSharpLib/SCSharpLib.csproj.user
trunk/scsharp/src/SCSharpLib/SCSharpLib.xml
trunk/scsharp/src/SCSharpLib/UI/
trunk/scsharp/src/SCSharpLib/UI/BriefingRunner.cs
trunk/scsharp/src/SCSharpLib/UI/Builtins.cs
trunk/scsharp/src/SCSharpLib/UI/ButtonElement.cs
trunk/scsharp/src/SCSharpLib/UI/Cinematic.cs
trunk/scsharp/src/SCSharpLib/UI/ComboBoxElement.cs
trunk/scsharp/src/SCSharpLib/UI/ConnectionScreen.cs
trunk/scsharp/src/SCSharpLib/UI/CreditsScreen.cs
trunk/scsharp/src/SCSharpLib/UI/CursorAnimator.cs
trunk/scsharp/src/SCSharpLib/UI/DialogBoxElement.cs
trunk/scsharp/src/SCSharpLib/UI/EndMissionDialog.cs
trunk/scsharp/src/SCSharpLib/UI/EntryDialog.cs
trunk/scsharp/src/SCSharpLib/UI/EstablishingShot.cs
trunk/scsharp/src/SCSharpLib/UI/ExitConfirmationDialog.cs
trunk/scsharp/src/SCSharpLib/UI/FFmpeg.cs
trunk/scsharp/src/SCSharpLib/UI/Game.cs
trunk/scsharp/src/SCSharpLib/UI/GameMenuDialog.cs
trunk/scsharp/src/SCSharpLib/UI/GameModeDialog.cs
trunk/scsharp/src/SCSharpLib/UI/GameScreen.cs
trunk/scsharp/src/SCSharpLib/UI/GlobalResources.cs
trunk/scsharp/src/SCSharpLib/UI/GuiUtil.cs
trunk/scsharp/src/SCSharpLib/UI/HelpDialog.cs
trunk/scsharp/src/SCSharpLib/UI/ImageElement.cs
trunk/scsharp/src/SCSharpLib/UI/KeystrokeDialog.cs
trunk/scsharp/src/SCSharpLib/UI/LabelElement.cs
trunk/scsharp/src/SCSharpLib/UI/ListBoxElement.cs
trunk/scsharp/src/SCSharpLib/UI/LoadSavedScreen.cs
trunk/scsharp/src/SCSharpLib/UI/LoginScreen.cs
trunk/scsharp/src/SCSharpLib/UI/MainMenu.cs
trunk/scsharp/src/SCSharpLib/UI/MapRenderer.cs
trunk/scsharp/src/SCSharpLib/UI/MarkupScreen.cs
trunk/scsharp/src/SCSharpLib/UI/NetworkDialog.cs
trunk/scsharp/src/SCSharpLib/UI/ObjectivesDialog.cs
trunk/scsharp/src/SCSharpLib/UI/OkCancelDialog.cs
trunk/scsharp/src/SCSharpLib/UI/OkDialog.cs
trunk/scsharp/src/SCSharpLib/UI/OptionsDialog.cs
trunk/scsharp/src/SCSharpLib/UI/Painter.cs
trunk/scsharp/src/SCSharpLib/UI/Pcx.cs
trunk/scsharp/src/SCSharpLib/UI/PlayCustomScreen.cs
trunk/scsharp/src/SCSharpLib/UI/ProtossReadyRoomScreen.cs
trunk/scsharp/src/SCSharpLib/UI/QuitMissionDialog.cs
trunk/scsharp/src/SCSharpLib/UI/Race.cs
trunk/scsharp/src/SCSharpLib/UI/RaceSelectionScreen.cs
trunk/scsharp/src/SCSharpLib/UI/ReadyRoomScreen.cs
trunk/scsharp/src/SCSharpLib/UI/Resources.cs
trunk/scsharp/src/SCSharpLib/UI/RestartConfirmationDialog.cs
trunk/scsharp/src/SCSharpLib/UI/SmackerPlayer.cs
trunk/scsharp/src/SCSharpLib/UI/SoundDialog.cs
trunk/scsharp/src/SCSharpLib/UI/SpeedDialog.cs
trunk/scsharp/src/SCSharpLib/UI/Sprite.cs
trunk/scsharp/src/SCSharpLib/UI/SpriteManager.cs
trunk/scsharp/src/SCSharpLib/UI/SwooshPainter.cs
trunk/scsharp/src/SCSharpLib/UI/TerranReadyRoomScreen.cs
trunk/scsharp/src/SCSharpLib/UI/TextBoxElement.cs
trunk/scsharp/src/SCSharpLib/UI/TitleScreen.cs
trunk/scsharp/src/SCSharpLib/UI/UIDialog.cs
trunk/scsharp/src/SCSharpLib/UI/UIElement.cs
trunk/scsharp/src/SCSharpLib/UI/UIPainter.cs
trunk/scsharp/src/SCSharpLib/UI/UIScreen.cs
trunk/scsharp/src/SCSharpLib/UI/Unit.cs
trunk/scsharp/src/SCSharpLib/UI/Utilities.cs
trunk/scsharp/src/SCSharpLib/UI/VideoDialog.cs
trunk/scsharp/src/SCSharpLib/UI/ZergReadyRoomScreen.cs
trunk/scsharp/src/SCSharpLib/bin/
trunk/scsharp/src/SCSharpLib/bin/Debug/
trunk/scsharp/src/SCSharpLib/bin/Debug/ICSharpCode.SharpZipLib.dll
trunk/scsharp/src/SCSharpLib/bin/Debug/SCSharpLib.dll
trunk/scsharp/src/SCSharpLib/bin/Debug/SCSharpLib.pdb
trunk/scsharp/src/SCSharpLib/bin/Debug/SCSharpLib.xml
trunk/scsharp/src/SCSharpLib/bin/Debug/SdlDotNet.dll
trunk/scsharp/src/SCSharpLib/bin/Debug/SdlDotNet.xml
trunk/scsharp/src/SCSharpLib/bin/Debug/Tao.Sdl.dll
trunk/scsharp/src/SCSharpLib/bin/Debug/Tao.Sdl.xml
trunk/scsharp/src/SCSharpLib/obj/
trunk/scsharp/src/SCSharpLib/obj/Debug/
trunk/scsharp/src/SCSharpLib/obj/Debug/Refactor/
trunk/scsharp/src/SCSharpLib/obj/Debug/Refactor/SCSharp.dll
trunk/scsharp/src/SCSharpLib/obj/Debug/Refactor/SCSharp.dll.dll
trunk/scsharp/src/SCSharpLib/obj/Debug/Refactor/SCSharpLib.dll
trunk/scsharp/src/SCSharpLib/obj/Debug/SCSharp.App.ico
trunk/scsharp/src/SCSharpLib/obj/Debug/SCSharp.Properties.Resources.resources
trunk/scsharp/src/SCSharpLib/obj/Debug/SCSharpLib.csproj.GenerateResource.Cache
trunk/scsharp/src/SCSharpLib/obj/Debug/SCSharpLib.dll
trunk/scsharp/src/SCSharpLib/obj/Debug/SCSharpLib.pdb
trunk/scsharp/src/SCSharpLib/obj/Debug/TempPE/
trunk/scsharp/src/SCSharpLib/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll
trunk/scsharp/src/SCSharpLib/obj/SCSharpLib.csproj.FileList.txt
trunk/scsharp/src/SCSharpLib/scsharp.snk
trunk/scsharp/tests/
trunk/scsharp/tests/Bmp.cs
trunk/scsharp/tests/DumpChk.cs
trunk/scsharp/tests/DumpGrp.cs
trunk/scsharp/tests/DumpIScript.cs
trunk/scsharp/tests/DumpTbl.cs
trunk/scsharp/tests/FontFoo.cs
trunk/scsharp/tests/Makefile.am
trunk/scsharp/tests/Makefile.in
trunk/scsharp/tests/Properties/
trunk/scsharp/tests/Properties/AssemblyInfo.cs
trunk/scsharp/tests/SCSharpTests.nunit
trunk/scsharp/tests/TestTesult.xml
trunk/scsharp/tests/Tests.csproj
trunk/scsharp/tests/Tests.csproj.user
trunk/scsharp/tests/Tga.cs
trunk/scsharp/tests/bin/
trunk/scsharp/tests/bin/Debug/
trunk/scsharp/tests/bin/Debug/ICSharpCode.SharpZipLib.dll
trunk/scsharp/tests/bin/Debug/SCSharpLib.dll
trunk/scsharp/tests/bin/Debug/SCSharpLib.pdb
trunk/scsharp/tests/bin/Debug/SCSharpLib.xml
trunk/scsharp/tests/bin/Debug/SCSharpTests.dll
trunk/scsharp/tests/bin/Debug/SCSharpTests.pdb
trunk/scsharp/tests/bin/Debug/SdlDotNet.dll
trunk/scsharp/tests/bin/Debug/SdlDotNet.xml
trunk/scsharp/tests/bin/Debug/Tao.Sdl.dll
trunk/scsharp/tests/bin/Debug/Tao.Sdl.xml
trunk/scsharp/tests/bin/Debug/nunit.framework.dll
trunk/scsharp/tests/obj/
trunk/scsharp/tests/obj/Debug/
trunk/scsharp/tests/obj/Debug/Refactor/
trunk/scsharp/tests/obj/Debug/SCSharpTests.dll
trunk/scsharp/tests/obj/Debug/SCSharpTests.pdb
trunk/scsharp/tests/obj/Debug/TempPE/
trunk/scsharp/tests/obj/Tests.csproj.FileList.txt
trunk/scsharp/tests/scsharp.snk
trunk/scsharp/vs2005.bat
Added: trunk/scsharp/AUTHORS
===================================================================
--- trunk/scsharp/AUTHORS (rev 0)
+++ trunk/scsharp/AUTHORS 2007-05-18 19:51:25 UTC (rev 1377)
@@ -0,0 +1 @@
+Chris Toshok <to...@hu...>
\ No newline at end of file
Added: trunk/scsharp/COPYING
===================================================================
--- trunk/scsharp/COPYING (rev 0)
+++ trunk/scsharp/COPYING 2007-05-18 19:51:25 UTC (rev 1377)
@@ -0,0 +1,28 @@
+StormLib is released under an unknown (to me) license. It has
+multiple copyright holders.
+
+All of the SCSharp specific code is released under an X11 license.
+Use it as you see fit. The license text is included below.
+
+
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
Added: trunk/scsharp/ChangeLog
===================================================================
--- trunk/scsharp/ChangeLog (rev 0)
+++ trunk/scsharp/ChangeLog 2007-05-18 19:51:25 UTC (rev 1377)
@@ -0,0 +1,505 @@
+2006-05-29 Chris Toshok <to...@hu...>
+
+ * Makefile.am (release): fix this target so that it works again.
+
+ * NEWS: include news for the first time.
+
+ * configure.ac: bump to 0.0000008.
+
+ * HACKING: fix up the .smk entry, with various options for
+ projects, and remove the managed stormlib project since Foole's is
+ working.
+
+ * RELEASE_README: s/starcraft/scsharp
+
+ * src/scsharp.exe.config-example: add the new options.
+
+ * src/scsharp.exe.config: can't put -- in the middle of comments.
+
+2006-05-29 Chris Toshok <to...@hu...>
+
+ * SCSharp/Makefile.am (MCSFLAGS): define USE_STORM_DLL if
+ ENABLE_STORMLIB == true.
+
+ * src/scsharp.exe.config: add some comments about the debugging
+ options, and add a new one to enable the unmanaged mpq library.
+
+ * Tests/dump-iscript.cs (DumpIScript.ctor): we assume the mpq
+ passed in is the stardat.mpq.
+
+ * SCSharp/SCSharp.UI/Painter.cs (.ctor): add back in a constructor
+ taking a Surface so the font-foo test continues to work.
+
+ * SCSharp/SCSharp.Mpq/Mpq.cs: USE_STORM_DLL no longer switches
+ between managed/unmanaged implementations, but compiles in the
+ optional unmanaged version as well.
+
+ * Makefile.am (SUBDIRS): only build in StormLib if ENABLE_STORMLIB
+ == true.
+
+ * configure.ac: add AC_ARG_ENABLE for --enable-stormlib. If it's
+ left out, only the managed version is built.
+
+2006-05-29 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/Game.cs (CreateWindow): switch to new Painter
+ ctor.
+ (KeyboardDown): add handling for Ctrl-F to switch between
+ fullscreen and windowed mode.
+
+ * SCSharp/SCSharp.UI/UIDialog.cs: s/Game/Painter for the screen
+ nres constants.
+
+ * SCSharp/SCSharp.UI/Sprite.cs: same.
+
+ * SCSharp/SCSharp.UI/Cinematic.cs: same.
+
+ * SCSharp/SCSharp.UI/GameScreen: same.
+
+ * SCSharp/SCSharp.UI/UIScreen.cs (FirstPaint): revert to this
+ the non-disgusting hack version.
+
+ * SCSharp/SCSharp.UI/Painter.cs: move the SCREEN_RES_X/Y constants
+ here, from Game.cs.
+ (Fullscreen): new property, allow switching between fullscreen and
+ not.
+
+2006-05-26 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.Mpq/Chk.cs (ReadFromStream): change the loop so
+ that it'll work with both StormLib and the managed .mpq stuff.
+
+2006-05-24 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/GuiUtil.cs (RenderGlyph): add a hack to
+ antialias the fonts. of course this is yet another hack on top of
+ the already hackish nature of font rendering.
+
+2006-05-24 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/GameScreen.cs: track the Unit currently under
+ the cursor, and when we click on it, spew a little info about it.
+
+2006-05-24 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/Game.cs (DisplayTitle): use the FirstPainted
+ event to determine when the title screen is shown, rather than the
+ Ready event (which is emitted when it finishes loading.)
+ (TitleScreenReady): pass in both stardatMpq and broodatMpq to the
+ GlobalResources ctor so it can load both sets of resources.
+
+ * SCSharp/SCSharp.UI/Builtins.cs: add mapdata.dat and mapdata.tbl.
+
+ * SCSharp/SCSharp.UI/GlobalResources.cs: rework things in this
+ class to handle loading both the broodwar and starcraft assets.
+ Use Game.PlayingBroodwar to implicitly switch between the
+ different versions when using just the resource name, but allow
+ explicit access to each version when necessary.
+
+ * SCSharp/SCSharp.Mpq/Mpq.cs (GetTypeFromResourcePath): handle
+ mapdata.dat.
+
+ * SCSharp/SCSharp.Mpq/MapDataDat.cs: new class, just a set of
+ indices into mapdata.tbl.
+
+ * SCSharp/SCSharp.UI/GameModeDialog.cs (LoadResources): explicitly
+ use broodat's gluAll.tbl to get the dialog title. This keeps us
+ from crashing if we select "Original", then exit back to the main
+ menu and open this dialog again.
+
+ * SCSharp/SCSharp.UI/Painter.cs (Tick): rename "Animate" to this.
+ (DrawText): remove unused, empty function.
+
+ * SCSharp/SCSharp.UI/RaceSelectionScreen.cs
+ (BroodwarCampaigns_MapDataStart): stop hardcoding the strings
+ here. instead, hardcode the indices into the mapdata.dat file.
+ (StarcraftCampaigns_MapDataStart): same.
+ (LoadResources): in the campaign element activate delegates, just
+ call SelectCampaign.
+ (SelectCampaign): factor out a lot of shared code here. Use the
+ campaign indices to determine the correct prefix. Also, switch to
+ the establishing shot for the given scenario. It'll take care of
+ starting up the ready room.
+
+ * SCSharp/SCSharp.UI/ReadyRoomScreen.cs (LoadResources): in the
+ start_element activate delegate, stop the briefing before
+ switching to the game screen.
+ (StopBriefing): remove our Events.Tick handler.
+ (FirstPaint): remove the AddToPainter/RemoveFromPainter
+ runner.Tick hack, and just hook up to Events.Tick.
+ (BriefingRunner.Tick): change this to a Tick event handler from a
+ painter. Keep track of total elapsed, and change sleepUntil to an
+ int from a DateTime.
+ (EstablishingShot): new markup screen, used for showing the
+ establishing shot/text before the ready room is displayed.
+
+ * SCSharp/SCSharp.UI/MarkupScreen.cs (Paint): add handling for
+ PageLocation.LowerLeft.
+ (AddMarkup): add handling for </SCREENLOWERLEFT>.
+ (AddToPainter): remove the FirstPainted stuff from here. we'll
+ just use UIScreen's.
+ (RemoveFromPainter): same.
+ (FirstPaint): change FirstPainted to this, overriding UIScreen's.
+
+ * SCSharp/SCSharp.UI/UIScreen.cs (FirstPaint): emit our
+ FirstPainted event and remove the painter delegate.
+ (AddToPainter): add the FirstPaint delegate.
+ (RemoveFromPainter): remove the FirstPaint delegate.
+
+ * SCSharp/SCSharp.UI/MainMenu.cs (LoadResources): in the
+ intro_element delegate, remove the ifdefs. Just switch to the
+ cinematic. If it fails to play we'll return to the main menu.
+
+ * SCSharp/SCSharp.UI/SmackerPlayer.cs: catch the
+ DllNotFoundException if we couldn't load ffmpegglue.dll, and just
+ finish immediately in that case whenever someone plays a movie.
+
+2006-05-15 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/ReadyRoomScreen.cs (FirstPaint): remove
+ unused function.
+ (UnhighlightPortrait): only set the background if the portrait is
+ still visible.
+ (ShowPortrait): set the portrait's background to the unhighlighted
+ frame.
+ (HidePortrait): clear the portrait's background.
+
+ * SCSharp/SCSharp.UI/Game.cs: better handle the differentiation
+ between "what mpqs do i have installed?" and "which version
+ (original/expansion) am i playing?" GlobalResources still doesn't
+ load both sets, however.
+
+2006-05-14 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/ReadyRoomScreen.cs: why do i insist on
+ writing threaded code? there's no need for it here. Also, make
+ things work a lot better. highlight the current speaker, set the
+ background/font/effects/cursor stuff correctly.
+
+ * SCSharp/SCSharp.UI/RaceSelectionScreen.cs: use the tutorials for
+ protoss/terran. zerg doesn't work for some reason. there are no
+ triggers.
+
+ * SCSharp/SCSharp.UI/UIElement.cs: kind of a hack, but allow a
+ "background .pcx" to be supplied. it's used to highlight the
+ current speaker in the mission briefings.
+
+2006-05-14 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/GameScreen.cs (.ctor): add a constructor
+ that's useful from the readyroom.
+ (PlaceInitialUnits): deal with a null template, which happens with
+ campaigns.
+
+ * SCSharp/SCSharp.UI/RaceSelectionScreen.cs: make this work for
+ both broodwar and original race selection screens. Hardcode the
+ first scenarios for each campaign here as well - eventually
+ they'll come from mapdata.dat/tbl.
+
+ * SCSharp/SCSharp.UI/Game.cs (.ctor): don't add anything to the
+ mpq container - let the PlayingBroodWar setter do that.
+ (set_PlayingBroodWar): clean this up a bit.
+ (set_Race): add setter.
+
+ * SCSharp/SCSharp.UI/ReadyRoomScreen.cs: subclass ReadyRoomScreen
+ for each race, since at least the zerg screen has different
+ element indices. Write an initial pass of the briefing runner,
+ which displays text and plays .wav files. There are definite
+ threading + Sdl audio issues here.
+
+ * SCSharp/SCSharp.UI/Builtins.cs: replace the race specific ready
+ room strings with a formatable string.
+
+ * SCSharp/SCSharp.Mpq/IScriptBin.cs (GetScriptEntryOffset): don't
+ throw an exception here, just return 0. the caller can handle
+ that.
+
+ * SCSharp/SCSharp.Mpq/Chk.cs: add mission briefing support (add
+ trigger, condition, action classes).
+
+ * SCSharp/SCSharp.Mpq/Mpq.cs (Add): return if mpq == null.
+ (Remove): same.
+ (Clear): new function, call mpqs.Clear.
+ (GetStreamForResource): spew something if we're going to return
+ null.
+
+2006-05-13 Chris Toshok <to...@hu...>
+
+ * src/scsharp.cs (Main): switch from just 1 CD directory setting
+ to 2.
+
+ * src/scsharp.exe.config: add the new CD directory settings.
+
+ * SCSharp/SCSharp.UI/RaceSelectionScreen.cs (.ctor): load the
+ correct resource depending on if we're BW or SC.
+
+ * SCSharp/SCSharp.UI/Game.cs (.ctor): change the way we look for
+ and load mpq's. Keep track of both BW and SC install.exe's.
+ (PlayingBroodWar): this property is initialized to true if
+ broodat.mpq is found, and causes either the bw or sc cd to become
+ available for resource lookups.
+
+ * SCSharp/SCSharp.UI/MainMenu.cs (ShowGameDialog): add some code
+ to display a dialog if the user is missing the correct CD
+ install.exe.
+
+ * SCSharp/SCSharp.UI/LoginScreen.cs (ResourceLoader): we don't
+ cache the race selection screen anymore, as it changes depending
+ on whether you pick BW/SC.
+
+ * SCSharp/SCSharp.UI/PlayCustomScreen.cs (ResourceLoader): no more
+ cached race selection screen.
+
+ * SCSharp/SCSharp.UI/LoadSavedScreen.cs: same.
+
+ * SCSharp/SCSharp.UI/Builtins.cs: add the original campaign ui.
+
+ * SCSharp/SCSharp.UI/ButtonElement.cs (MouseEnter): only play the
+ sound if the button is sensitive -- maybe we shouldn't even get
+ called if we're insensitive?
+
+ * SCSharp/SCSharp.UI/MarkupScreen.cs (ResourceLoader): call
+ LoadMarkup, and add it as an abstract method.
+
+ * SCSharp/SCSharp.UI/CreditsScreen.cs (LoadMarkup): rename
+ ResourceLoader to this.
+
+ * SCSharp/SCSharp.UI/UIElement.cs (.ctor): cache x1/y1 here so the
+ setters so we don't keep modifying the BinElement's coordinates
+ each time we display a dialog, shifting it further and further
+ down and to the right.
+ (X1): use the cached value.
+ (Y1): same.
+
+2006-05-13 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.dll.sources: add the MpqReader sources.
+
+ * SCSharp/Makefile.am (MCSFLAGS): add -d:USE_STORM_DLL
+
+ * SCSharp/SCSharp.Mpq/Mpq.cs: add a series of USE_STORM_DLL ifdefs
+ to choose between libStorm.so and Foole's managed MpqReader.
+
+ * SCSharp/SCSharp.Mpq/MpqStructs.cs,
+ SCSharp/SCSharp.Mpq/MpqArchive.cs,
+ SCSharp/SCSharp.Mpq/MpqStream.cs,
+ SCSharp/SCSharp.Mpq/PKLibDecompress.cs: add 0.02 of Foole's
+ managed Mpq reading code. It doesn't work quite yet, but this way
+ we can test it with scsharp.
+
+2006-05-10 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.Mpq/Mpq.cs (GetResource): don't cache .smk files
+ (the cinematics at least are enormous).
+ (GetTypeFromResourcePath): make .smk files use a Stream instead of
+ our Smk class.
+
+ * SCSharp/SCSharp.UI/SmackerPlayer.cs: use FFmpeg to display .smk
+ files. This works on my machine, but lacks audio and the glue
+ code is in general pretty ugly. Going to take a look at using
+ gstreamer tonight. With this in mind, I'm not adding
+ SmackerPlayer.cs+Cinematic.cs to the build, and I'm not going to
+ check in the ffmpegglue code.
+
+ * SCSharp/SCSharp.UI/Cinematic.cs: new file, basically takes over
+ the screen and runs a SmackerPlayer.
+
+ * SCSharp/SCSharp.UI/ButtonElement.cs (MouseEnter): rename
+ MouseOver to this.
+
+ * SCSharp/SCSharp.UI/GuiUtil.cs (CreateSurface): make this public.
+
+ * SCSharp/SCSharp.UI/RaceSelectionScreen.cs (ResourceLoader): add
+ delegates for MouseEnter/MouseLeave to display the incomplete
+ messages. we always show them at the moment, instead of getting
+ that information from the .spc file.
+
+ * SCSharp/SCSharp.UI/MainMenu.cs (ShowGameModeDialog): factor this
+ code out from both the single/multiplayer delegates.
+ (ResourceLoader): add ifdef'ed code for the intro cinematic, and
+ use ShowGameModeDialog for single/multiplayer.
+
+ * SCSharp/SCSharp.UI/UIElement.cs: switch from MouseOver to
+ MouseEnter+MouseLeave.
+
+ * SCSharp/SCSharp.UI/UIScreen.cs: switch from MouseOver to
+ MouseEnter+MouseLeave so we can implement things like the strings
+ on the race selection screen where they tell you previous
+ campaigns haven't been completed yet.
+ (KeyboardDown): guard against Elements being null.
+
+2006-05-08 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/GuiUtil.cs (CreateSurface): refactor the
+ duplicated code from
+ CreateSurfaceFromRGBAData/CreateSurfaceFromRGBData here.
+ (CreateSurfaceFromRGBAData): call CreateSurface
+ (CreateSurfaceFromRGBData): call CreateSurface
+
+2006-05-01 Chris Toshok <to...@hu...>
+
+ * Tests/Makefile.am (font_foo_exe_REFS): more build fixes.
+
+ * configure.ac: add a check for mono >= 1.1.14
+
+2006-05-01 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.Mpq/Mpq.cs: Make GetStreamForResource public so
+ it can be used to extract files from mpq archives.
+
+2006-04-30 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/Unit.cs (CreateSprite): implement.
+
+ * SCSharp/SCSharp.UI/GameScreen.cs (PlaceInitialUnits): use Unit
+ everywhere.
+
+ * SCSharp/SCSharp.UI/Sprite.cs (.ctor): add a little more info to
+ the spew.
+
+ * SCSharp/SCSharp.UI/GlobalResources.cs (ResourceLoader): remove
+ spew.
+ (LoadSingleThreaded): load without spawning off a worker thread.
+ useful in tools and tests.
+
+2006-04-10 Chris Toshok <to...@hu...>
+
+ * Makefile (VERSION): bump to 0.0000002.
+
+2006-04-10 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/OkCancelDialog.cs: use 254,0 for
+ translucent,transparent.
+
+ * SCSharp/SCSharp.UI/OkDialog.cs: same.
+
+ * SCSharp/SCSharp.UI/EntryDialog.cs: same.
+
+2006-04-10 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/GameModeDialog.cs (.ctor): set
+ background_path to null, as we'll load it in ResourceLoader.
+ (ResourceLoader): manually load the background, using its specific
+ translucent/transparent indices.
+
+ * SCSharp/SCSharp.UI/GuiUtil.cs (SurfaceFromStream): always
+ use our managed Pcx loader.
+ (SurfaceFromStream): for the Stream,bool overload, pass in 252,0
+ for translucent,transparent, respectively.
+ (SurfaceFromStream): for the Stream overload, pass -1,-1.
+
+ * SCSharp/SCSharp.UI/UIScreen.cs (ResourceLoader): pass -1,-1
+ to the Pcx.ReadFromStream calls.
+
+ * SCSharp/SCSharp.UI/CreditsScreen.cs (ResourceLoader): pass
+ -1,-1 to the Pcx.ReadFromStream calls.
+
+ * SCSharp/SCSharp.UI/Pcx.cs (ReadFromStream): allow the
+ passing in of translucent/transparent indices.
+
+ * SCSharp/SCSharp.Mpq/Bin.cs (ElementFlags): include the
+ unknown flages as Unknown/Unused.
+
+2006-04-10 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/ReadyRoomScreen.cs: first pass.
+
+ * SCSharp/SCSharp.UI/Builtins.cs: add ready room builtins.
+
+2006-04-10 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/ListBoxElement.cs: track cursor when
+ list becomes empty/non-empty. Set it initially to -1.
+
+ * SCSharp/SCSharp.UI/LoginScreen.cs (OkElement delegate): if
+ we don't have a selected id, return immediately. This should only
+ happen if the list is empty.
+
+ * SCSharp/SCSharp.UI/ConnectionScreen.cs: add Ok dialog when
+ people select Battle.net.
+
+ * SCSharp/SCSharp.UI/credits.txt: thank the
+ mono/sdl/sdldotnet projects.
+
+2006-04-10 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/ConnectionScreen.cs: populate the
+ ListBox element with our choices, and handle the cursor moving
+ properly. Ifdef this for the time being to only display
+ Battle.net.
+
+ * SCSharp/SCSharp.UI/GameModeDialog.cs: insert the title
+ string in the dialog, and change Canceled/Activated to
+ Cancel/Activate.
+
+ * SCSharp/SCSharp.UI/UIDialog.cs: keep track of the parent
+ UIScreen that popped us up.
+ (ShowDialog): overload this so we can remove ourselves from the
+ painter before showing the new dialog. In a better world we'd
+ just show the new popup at a higher layer.
+ (DismissDialog): overload to add ourselves back to the painter.
+
+ * SCSharp/SCSharp.UI/GuiUtil.cs: add another ComposeText
+ overload.
+
+ * SCSharp/SCSharp.UI/MainMenu.cs: pop up Ok dialogs with
+ messages about missing functionality (no cinematics and no
+ campaign editor.)
+
+ * SCSharp/SCSharp.UI/LoginScreen.cs (ResourceLoader): for the
+ ok button pop up a dialog saying what we should do in this case.
+ Also add functionality for the new button (pops up an entry
+ dialog) and delete button (pops up an ok/cancel dialog).
+ (KeyboardDown): forward on UpArrow/DownArrow to the list box
+ element.
+ (NameAlreadyExists): pop up an OkDialog.
+
+ * SCSharp/SCSharp.UI/UIPainter.cs: clean up warnings, and
+ make it compile with -define:SHOW_ELEMENT_BORDERS.
+
+ * SCSharp/SCSharp.UI/CreditsScreen.cs: clean up some
+ warnings.
+
+ * SCSharp/SCSharp.UI/Builtins.cs: add some more strings for
+ the login screen dialogs.
+
+ * SCSharp/SCSharp.UI/UIElement.cs (Mpq): add getter.
+ (Text): use ClearSurface.
+ (Sensitive): same.
+ (Palette): new getter/setter.
+ (Font): new getter/setter.
+ (ClearSurface): new protected method.
+ (CreateSurface): provider base class implementation that handles
+ the types we don't provider subclasses for.
+
+ * SCSharp/SCSharp.UI/UIScreen.cs (HandleKeyboardUp): return
+ immediately for keypresses corresponding to modifier keys.
+ (HandleKeyboardDown): same.
+ (ActivateElement): if the element isn't sensitive, don't activate
+ it.
+ (ResourceLoader): create different UIElement subclasses depending
+ on the BinElement's type.
+
+ * SCSharp/SCSharp.UI/TextBoxElement.cs: new UIElement,
+ allowing text editing. No flashing cursor displayed yet.
+
+ * SCSharp/SCSharp.UI/OkCancelDialog.cs: a question dialog,
+ containing a message and Ok/Cancel buttons.
+
+ * SCSharp/SCSharp.UI/OkDialog.cs: a simple message dialog,
+ containing a message and Ok button.
+
+ * SCSharp/SCSharp.UI/EntryDialog.cs: new Dialog containing a
+ title, text entry, and Ok/Cancel buttons.
+
+ * SCSharp/SCSharp.UI/ImageElement.cs: new UIElement
+ displaying an image.
+
+ * SCSharp/SCSharp.UI/ListBoxElement.cs: new UIElement,
+ displaying a list. doesn't do scrolling yet.
+
+2006-04-09 Chris Toshok <to...@hu...>
+
+ * SCSharp/SCSharp.UI/GameModeDialog.cs (ResourceLoader): add
+ title text.
+
Added: trunk/scsharp/HACKING
===================================================================
--- trunk/scsharp/HACKING (rev 0)
+++ trunk/scsharp/HACKING 2007-05-18 19:51:25 UTC (rev 1377)
@@ -0,0 +1,78 @@
+Things are obviously in a tremendous state of flux. There are
+numerous pieces of code that are undergoing large amounts of changes,
+and I periodically commit upwards of 20 files at a time with super
+helpful commit messages like "sync". Even with this current state of
+affairs, I'd like people looking at the code, and if they feel moved
+to contribute, so much the better.
+
+Please contact me if you're interested in working in a specific area
+so we can try to avoid stepping on each others' toes.
+
+There are a couple of large, well contained tasks that could be done
+largely independently of everything else. I'll get to them
+eventually, but they're all free for the taking. I've ordered them in
+terms of size/difficulty/coolness, from hardest to easiest (and
+therefore coolest to least cool):
+
+ 1. Smacker player:
+
+ There are format docs up at:
+
+ http://wiki.multimedia.cx/index.php?title=Smacker
+
+ Clearly I don't understand the docs (and video codecs and
+ huffman trees in general) and couldn't get it to work.
+ This is of course assuming the spec itself is valid. I
+ don't know that it is.
+
+ This task would result in all of the animated portraits,
+ the cut scenes, the animations in the main menu and race
+ selection screen (pretty much anything that's animated
+ that's not a unit/flingy) being visible. It's not strictly
+ necessary for the game, but it's definitely got eyecandy
+ value.
+
+ A couple of possible options are available here:
+
+ One would be porting/wrapping the ffmpeg[1] .smk codec so
+ that we can use it. I've done some preliminary work for
+ this, enough to get cinematics working without audio. the
+ ffmpeg codec seems to have problems with the portrait and
+ main menu smk's, though (possibly because they loop?) so it
+ doesn't work for those yet. I don't think this is a good
+ long-term solution though, as maintaining a player that can
+ deal with framerate/audio sync stuff seems like a pain in
+ the ass.
+
+ The second solution would be to take the gstreamer bindings
+ being worked on for this year's Mono Project SoC and use
+ them to build up a playback engine. This would probably
+ require some native coding as well. There's a sdl sink in
+ gstreamer now, but it appears to only target the YUV
+ overlays, not RGB surfaces, which is what we'd need to
+ integrate it into our painter.
+
+ Given that scsharp *should* run on windows as well, and
+ there's already a native .dll for decoding smacker video on
+ windows, an interesting side project would be p/invoke into
+ that library for doing playback when on the windows
+ platform. Anyone up for it?
+
+ 3. Figure out font rendering so that we can operate with either SC
+ or BW assets. the best solution would enable us to render
+ fonts from the data contained in the
+ Stardat.mpq/Broodat.mpq archives, but I'd settle for a
+ solution that works with either CD's install.exe.
+
+ 4. The parallax (SPK) renderer used for the starfield
+ background on platform levels renders a 2x2 white rectangle
+ for each star. apparently the .spk file contains bitmap
+ data for the stars. Figure out the format and render the
+ stars correctly.
+
+Email me if you're interested in any of the above tasks, and I'll get
+some more info to you regarding where in the code changes will be
+likely, and answer any other questions you might have.
+
+welcome,
+toshok
\ No newline at end of file
Added: trunk/scsharp/INSTALL
===================================================================
--- trunk/scsharp/INSTALL (rev 0)
+++ trunk/scsharp/INSTALL 2007-05-18 19:51:25 UTC (rev 1377)
@@ -0,0 +1,236 @@
+Installation Instructions
+*************************
+
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
+Software Foundation, Inc.
+
+This file is free documentation; the Free Software Foundation gives
+unlimited permission to copy, distribute and modify it.
+
+Basic Installation
+==================
+
+These are generic installation instructions.
+
+ The `configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation. It uses
+those values to create a `Makefile' in each directory of the package.
+It may also create one or more `.h' files containing system-dependent
+definitions. Finally, it creates a shell script `config.status' that
+you can run in the future to recreate the current configuration, and a
+file `config.log' containing compiler output (useful mainly for
+debugging `configure').
+
+ It can also use an optional file (typically called `config.cache'
+and enabled with `--cache-file=config.cache' or simply `-C') that saves
+the results of its tests to speed up reconfiguring. (Caching is
+disabled by default to prevent problems with accidental use of stale
+cache files.)
+
+ If you need to do unusual things to compile the package, please try
+to figure out how `configure' could check whether to do them, and mail
+diffs or instructions to the address given in the `README' so they can
+be considered for the next release. If you are using the cache, and at
+some point `config.cache' contains results you don't want to keep, you
+may remove or edit it.
+
+ The file `configure.ac' (or `configure.in') is used to create
+`configure' by a program called `autoconf'. You only need
+`configure.ac' if you want to change it or regenerate `configure' using
+a newer version of `autoconf'.
+
+The simplest way to compile this package is:
+
+ 1. `cd' to the directory containing the package's source code and type
+ `./configure' to configure the package for your system. If you're
+ using `csh' on an old version of System V, you might need to type
+ `sh ./configure' instead to prevent `csh' from trying to execute
+ `configure' itself.
+
+ Running `configure' takes awhile. While running, it prints some
+ messages telling which features it is checking for.
+
+ 2. Type `make' to compile the package.
+
+ 3. Optionally, type `make check' to run any self-tests that come with
+ the package.
+
+ 4. Type `make install' to install the programs and any data files and
+ documentation.
+
+ 5. You can remove the program binaries and object files from the
+ source code directory by typing `make clean'. To also remove the
+ files that `configure' created (so you can compile the package for
+ a different kind of computer), type `make distclean'. There is
+ also a `make maintainer-clean' target, but that is intended mainly
+ for the package's developers. If you use it, you may have to get
+ all sorts of other programs in order to regenerate files that came
+ with the distribution.
+
+Compilers and Options
+=====================
+
+Some systems require unusual options for compilation or linking that the
+`configure' script does not know about. Run `./configure --help' for
+details on some of the pertinent environment variables.
+
+ You can give `configure' initial values for configuration parameters
+by setting variables in the command line or in the environment. Here
+is an example:
+
+ ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
+
+ *Note Defining Variables::, for more details.
+
+Compiling For Multiple Architectures
+====================================
+
+You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory. To do this, you must use a version of `make' that
+supports the `VPATH' variable, such as GNU `make'. `cd' to the
+directory where you want the object files and executables to go and run
+the `configure' script. `configure' automatically checks for the
+source code in the directory that `configure' is in and in `..'.
+
+ If you have to use a `make' that does not support the `VPATH'
+variable, you have to compile the package for one architecture at a
+time in the source code directory. After you have installed the
+package for one architecture, use `make distclean' before reconfiguring
+for another architecture.
+
+Installation Names
+==================
+
+By default, `make install' installs the package's commands under
+`/usr/local/bin', include files under `/usr/local/include', etc. You
+can specify an installation prefix other than `/usr/local' by giving
+`configure' the option `--prefix=PREFIX'.
+
+ You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files. If you
+pass the option `--exec-prefix=PREFIX' to `configure', the package uses
+PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files still use the regular prefix.
+
+ In addition, if you use an unusual directory layout you can give
+options like `--bindir=DIR' to specify different values for particular
+kinds of files. Run `configure --help' for a list of the directories
+you can set and what kinds of files go in them.
+
+ If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving `configure' the
+option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+Optional Features
+=================
+
+Some packages pay attention to `--enable-FEATURE' options to
+`configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+is something like `gnu-as' or `x' (for the X Window System). The
+`README' should mention any `--enable-' and `--with-' options that the
+package recognizes.
+
+ For packages that use the X Window System, `configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the `configure' options `--x-includes=DIR' and
+`--x-libraries=DIR' to specify their locations.
+
+Specifying the System Type
+==========================
+
+There may be some features `configure' cannot figure out automatically,
+but needs to determine by the type of machine the package will run on.
+Usually, assuming the package is built to be run on the _same_
+architectures, `configure' can figure that out, but if it prints a
+message saying it cannot guess the machine type, give it the
+`--build=TYPE' option. TYPE can either be a short name for the system
+type, such as `sun4', or a canonical name which has the form:
+
+ CPU-COMPANY-SYSTEM
+
+where SYSTEM can have one of these forms:
+
+ OS KERNEL-OS
+
+ See the file `config.sub' for the possible values of each field. If
+`config.sub' isn't included in this package, then this package doesn't
+need to know the machine type.
+
+ If you are _building_ compiler tools for cross-compiling, you should
+use the option `--target=TYPE' to select the type of system they will
+produce code for.
+
+ If you want to _use_ a cross compiler, that generates code for a
+platform different from the build platform, you should specify the
+"host" platform (i.e., that on which the generated programs will
+eventually be run) with `--host=TYPE'.
+
+Sharing Defaults
+================
+
+If you want to set default values for `configure' scripts to share, you
+can create a site shell script called `config.site' that gives default
+values for variables like `CC', `cache_file', and `prefix'.
+`configure' looks for `PREFIX/share/config.site' if it exists, then
+`PREFIX/etc/config.site' if it exists. Or, you can set the
+`CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all `configure' scripts look for a site script.
+
+Defining Variables
+==================
+
+Variables not defined in a site shell script can be set in the
+environment passed to `configure'. However, some packages may run
+configure again during the build, and the customized values of these
+variables may be lost. In order to avoid this problem, you should set
+them in the `configure' command line, using `VAR=value'. For example:
+
+ ./configure CC=/usr/local2/bin/gcc
+
+causes the specified `gcc' to be used as the C compiler (unless it is
+overridden in the site shell script). Here is a another example:
+
+ /bin/bash ./configure CONFIG_SHELL=/bin/bash
+
+Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
+configuration-related scripts to be executed by `/bin/bash'.
+
+`configure' Invocation
+======================
+
+`configure' recognizes the following options to control how it operates.
+
+`--help'
+`-h'
+ Print a summary of the options to `configure', and exit.
+
+`--version'
+`-V'
+ Print the version of Autoconf used to generate the `configure'
+ script, and exit.
+
+`--cache-file=FILE'
+ Enable the cache: use and save the results of the tests in FILE,
+ traditionally `config.cache'. FILE defaults to `/dev/null' to
+ disable caching.
+
+`--config-cache'
+`-C'
+ Alias for `--cache-file=config.cache'.
+
+`--quiet'
+`--silent'
+`-q'
+ Do not print messages saying which checks are being made. To
+ suppress all normal output, redirect it to `/dev/null' (any error
+ messages will still be shown).
+
+`--srcdir=DIR'
+ Look for the package's source code in directory DIR. Usually
+ `configure' can determine that directory automatically.
+
+`configure' also accepts some other, not widely useful, options. Run
+`configure --help' for more details.
+
Added: trunk/scsharp/NEWS
===================================================================
--- trunk/scsharp/NEWS (rev 0)
+++ trunk/scsharp/NEWS 2007-05-18 19:51:25 UTC (rev 1377)
@@ -0,0 +1,19 @@
+Changes from 0.0000007 to 0.0000008.
+
+ * inclusion of Foole's managed port of StormLib. The
+ unmanaged version is still included, but is no longer built
+ by default. Additionally, to use the unmanaged version even
+ after building it, you have to enable a configuration
+ option. Look at scsharp.exe.config for more details.
+
+ * The ready room code is now in. Barring glitches in audio
+ playback which seem legion, the mission briefings should
+ proceed as normal, including establishing shots.
+
+ * Text rendering is now (more or less) anti-aliased and
+ pretty.
+
+ * The code handles the distinction between "broodwar is
+ installed" and "user selected broodwars" better now.
+
+ * lots of misc fixes.
Added: trunk/scsharp/README
===================================================================
--- trunk/scsharp/README (rev 0)
+++ trunk/scsharp/README 2007-05-18 19:51:25 UTC (rev 1377)
@@ -0,0 +1,27 @@
+Things you need to do to make this work:
+
+1) You need mono version 1.1.14 or newer.
+
+2) Make your "Program Files\Starcraft" directory available on your
+ linux box. Either copy it or mount your windows volume.
+
+3) Do the same with the "install.exe" file from the Broodwars CD.
+ This release requires that file be present. It can live on the CD,
+ or you can copy it to the local filesystem. It must be the Broodwars
+ CD at the moment, due to the fact that the font code only works
+ with the files on the BW cd for some reason.
+
+4) Edit the scsharp.exe.config file and point it at the directories
+ from 1) and 2).
+
+5) Make sure you have the following SDL packages installed (these
+ versions should work, as well as newer ones.):
+
+ SDL-1.2.9 (http://www.libsdl.org/download-1.2.php)
+ SDL_gfx-2.0.13 (http://www.ferzkopp.net/Software/SDL_gfx-2.0/)
+ SDL_mixer-1.2.6 (http://www.libsdl.org/projects/SDL_mixer/release/)
+ SDL_image-1.2.4 (http://www.libsdl.org/projects/SDL_image/release/)
+
+7) That's it. The following should be enough:
+
+ $ mono scsharp.exe
Added: trunk/scsharp/SCSharp.sln
===================================================================
--- trunk/scsharp/SCSharp.sln (rev 0)
+++ trunk/scsharp/SCSharp.sln 2007-05-18 19:51:25 UTC (rev 1377)
@@ -0,0 +1,36 @@
+Microsoft Visual Studio Solution File, Format Version 9.00
+# Visual Studio 2005
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SCSharpLib", "src\SCSharpLib\SCSharpLib.csproj", "{1A51DB16-582A-4231-98DB-E4622F79D208}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SCSharp", "src\SCSharp\SCSharp.csproj", "{7D4C7304-8496-4F1C-8FDF-9AF647FE199C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests", "tests\Tests.csproj", "{29C81049-8557-4D06-B187-EF52765DB46E}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{468F1D07-AD17-4CC3-ABD0-2CA268E4E1A6}"
+ ProjectSection(SolutionItems) = preProject
+ prebuild.xml = prebuild.xml
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {1A51DB16-582A-4231-98DB-E4622F79D208}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1A51DB16-582A-4231-98DB-E4622F79D208}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1A51DB16-582A-4231-98DB-E4622F79D208}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1A51DB16-582A-4231-98DB-E4622F79D208}.Release|Any CPU.Build.0 = Release|Any CPU
+ {7D4C7304-8496-4F1C-8FDF-9AF647FE199C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {7D4C7304-8496-4F1C-8FDF-9AF647FE199C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {7D4C7304-8496-4F1C-8FDF-9AF647FE199C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {7D4C7304-8496-4F1C-8FDF-9AF647FE199C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {29C81049-8557-4D06-B187-EF52765DB46E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {29C81049-8557-4D06-B187-EF52765DB46E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {29C81049-8557-4D06-B187-EF52765DB46E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {29C81049-8557-4D06-B187-EF52765DB46E}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
Added: trunk/scsharp/SCSharp.suo
===================================================================
(Binary files differ)
Property changes on: trunk/scsharp/SCSharp.suo
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/scsharp/credits.txt
===================================================================
--- trunk/scsharp/credits.txt (rev 0)
+++ trunk/scsharp/credits.txt 2007-05-18 19:51:25 UTC (rev 1377)
@@ -0,0 +1,46 @@
+</COMMENT credits for SCSharp>
+</FADESPEED 100>
+
+</COMMENT #############################################################>
+</BACKGROUND glue\palmm\backgnd.pcx>
+</FONTCOLOR glue\palmm\tfont.pcx>
+</SCREENCENTER>
+SCSharp Programming
+
+Chris Toshok
+</PAGE>
+
+</COMMENT #############################################################>
+</BACKGROUND glue\palzv\backgnd.pcx>
+</FONTCOLOR glue\palmm\tfont.pcx>
+
+</SCREENLEFT>
+Special Thanks To
+
+Justin Olbrantz
+Ladislav Zezula
+</PAGE>
+
+</SCREENLEFT>
+Special Thanks To
+
+The folks at Campaign Creations
+</PAGE>
+
+</SCREENLEFT>
+Thanks To
+
+The Starcraft Modding Community.
+</PAGE>
+
+</SCREENLEFT>
+Thanks To
+
+The Mono Project
+The SDL Project
+The SdlDotNet Project
+</PAGE>
+
+</SCREENCENTER>
+Credits for Starcraft Brood War
+</PAGE>
\ No newline at end of file
Property changes on: trunk/scsharp/credits.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: trunk/scsharp/docs/Makefile.am
===================================================================
--- trunk/scsharp/docs/Makefile.am (rev 0)
+++ trunk/scsharp/docs/Makefile.am 2007-05-18 19:51:25 UTC (rev 1377)
@@ -0,0 +1,2 @@
+
+EXTRA_DIST=bin-files cmdbtns directory-layout got-files images.dat NOTES spk-file sprites.dat tilesets wireframes
\ No newline at end of file
Added: trunk/scsharp/docs/Makefile.in
===================================================================
--- trunk/scsharp/docs/Makefile.in (rev 0)
+++ trunk/scsharp/docs/Makefile.in 2007-05-18 19:51:25 UTC (rev 1377)
@@ -0,0 +1,317 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = docs
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO = @ECHO@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_STORMLIB_FALSE = @ENABLE_STORMLIB_FALSE@
+ENABLE_STORMLIB_TRUE = @ENABLE_STORMLIB_TRUE@
+EXEEXT = @EXEEXT@
+F77 = @F77@
+FFLAGS = @FFLAGS@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+RANLIB = @RANLIB@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_F77 = @ac_ct_F77@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+mono_CFLAGS = @mono_CFLAGS@
+mono_LIBS = @mono_LIBS@
+oldincludedir = @oldincludedir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = bin-files cmdbtns directory-layout got-files images.dat NOTES spk-file sprites.dat tilesets wireframes
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu docs/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+distclean-libtool:
+ -rm -f libtool
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+ list='$(DISTFILES)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_bu...
[truncated message content] |