Skip to content

Commit 8c395ce

Browse files
committed
Initial check-in
This first check-in uses the original unmodified code from: https://www.allegro.cc/depot/CastleAdventure/
0 parents  commit 8c395ce

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

117 files changed

+20063
-0
lines changed

.gitignore

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# Build results
2+
[Bb]in/*
3+
[Oo]bj/*
4+
[Bb]uild/*
5+
[Dd]ebug/*
6+
[Rr]elease/*
7+
[Ss]tub/[Dd]ebug/*
8+
[Ss]tub/[Rr]elease/*
9+
10+
# Compiled Object files
11+
*.slo
12+
*.lo
13+
*.o
14+
*.obj
15+
16+
# Precompiled Headers
17+
*.gch
18+
*.pch
19+
20+
# Other Visual Studio files
21+
.vs/*
22+
RC*
23+
ipch/*
24+
*.ipch
25+
*.user
26+
*.suo
27+
*.aps
28+
*.log
29+
*.tlog
30+
*.ncb
31+
*.res
32+
*.sdf
33+
*.opensdf
34+
*.lastbuildstate
35+
*.ipsh
36+
*.idb
37+
*.db
38+
.opendb
39+
*.opendb
40+
*.TMP

Castle.sln

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
2+
Microsoft Visual Studio Solution File, Format Version 12.00
3+
# Visual Studio 15
4+
VisualStudioVersion = 15.0.28307.902
5+
MinimumVisualStudioVersion = 10.0.40219.1
6+
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Castle Adventure", "Castle.vcxproj", "{3381E1EC-B600-467A-8EFA-EAD3D5053D35}"
7+
EndProject
8+
Global
9+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
10+
Debug|Win32 = Debug|Win32
11+
Release|Win32 = Release|Win32
12+
EndGlobalSection
13+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
14+
{3381E1EC-B600-467A-8EFA-EAD3D5053D35}.Debug|Win32.ActiveCfg = Debug|Win32
15+
{3381E1EC-B600-467A-8EFA-EAD3D5053D35}.Debug|Win32.Build.0 = Debug|Win32
16+
{3381E1EC-B600-467A-8EFA-EAD3D5053D35}.Release|Win32.ActiveCfg = Release|Win32
17+
{3381E1EC-B600-467A-8EFA-EAD3D5053D35}.Release|Win32.Build.0 = Release|Win32
18+
EndGlobalSection
19+
GlobalSection(SolutionProperties) = preSolution
20+
HideSolutionNode = FALSE
21+
EndGlobalSection
22+
GlobalSection(ExtensibilityGlobals) = postSolution
23+
SolutionGuid = {DCD97CAD-351D-4E43-A400-5E566EB78627}
24+
EndGlobalSection
25+
EndGlobal

Castle.vcxproj

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<ItemGroup Label="ProjectConfigurations">
4+
<ProjectConfiguration Include="Debug|Win32">
5+
<Configuration>Debug</Configuration>
6+
<Platform>Win32</Platform>
7+
</ProjectConfiguration>
8+
<ProjectConfiguration Include="Release|Win32">
9+
<Configuration>Release</Configuration>
10+
<Platform>Win32</Platform>
11+
</ProjectConfiguration>
12+
</ItemGroup>
13+
<PropertyGroup Label="Globals">
14+
<ProjectGuid>{3381E1EC-B600-467A-8EFA-EAD3D5053D35}</ProjectGuid>
15+
<RootNamespace>Castle</RootNamespace>
16+
</PropertyGroup>
17+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
18+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
19+
<ConfigurationType>Application</ConfigurationType>
20+
<PlatformToolset>v141</PlatformToolset>
21+
<CharacterSet>MultiByte</CharacterSet>
22+
<WholeProgramOptimization>true</WholeProgramOptimization>
23+
</PropertyGroup>
24+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
25+
<ConfigurationType>Application</ConfigurationType>
26+
<PlatformToolset>v141</PlatformToolset>
27+
<CharacterSet>MultiByte</CharacterSet>
28+
</PropertyGroup>
29+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
30+
<ImportGroup Label="ExtensionSettings">
31+
</ImportGroup>
32+
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
33+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
34+
</ImportGroup>
35+
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
36+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
37+
</ImportGroup>
38+
<PropertyGroup Label="UserMacros" />
39+
<PropertyGroup>
40+
<_ProjectFileVersion>15.0.28307.799</_ProjectFileVersion>
41+
</PropertyGroup>
42+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
43+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
44+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
45+
<ClCompile>
46+
<Optimization>Disabled</Optimization>
47+
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);allegro\include</AdditionalIncludeDirectories>
48+
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
49+
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
50+
<WarningLevel>Level4</WarningLevel>
51+
</ClCompile>
52+
<Link>
53+
<AdditionalDependencies>%(AdditionalDependencies);allegro\Lib\alleg.lib</AdditionalDependencies>
54+
<GenerateDebugInformation>true</GenerateDebugInformation>
55+
<TargetMachine>MachineX86</TargetMachine>
56+
</Link>
57+
<PostBuildEvent>
58+
<Command>copy /Y "$(ProjectDir)allegro\Lib\alleg40.dll" "$(ProjectDir)$(Configuration)\" &gt;nul
59+
copy /Y "$(ProjectDir)Extras\castle.dat" "$(ProjectDir)$(Configuration)\" &gt;nul
60+
copy /Y "$(ProjectDir)Extras\data.dat" "$(ProjectDir)$(Configuration)\" &gt;nul
61+
copy /Y "$(ProjectDir)Extras\ddraw.dll" "$(ProjectDir)$(Configuration)\" &gt;nul
62+
copy /Y "$(ProjectDir)Extras\dinput.dll" "$(ProjectDir)$(Configuration)\" &gt;nul
63+
copy /Y "$(ProjectDir)Extras\dxwrapper.dll" "$(ProjectDir)$(Configuration)\" &gt;nul
64+
copy /Y "$(ProjectDir)Extras\dxwrapper.ini" "$(ProjectDir)$(Configuration)\" &gt;nul</Command>
65+
</PostBuildEvent>
66+
</ItemDefinitionGroup>
67+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
68+
<ClCompile>
69+
<Optimization>MaxSpeed</Optimization>
70+
<IntrinsicFunctions>true</IntrinsicFunctions>
71+
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories);allegro\include</AdditionalIncludeDirectories>
72+
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
73+
<FunctionLevelLinking>true</FunctionLevelLinking>
74+
<WarningLevel>Level4</WarningLevel>
75+
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
76+
</ClCompile>
77+
<Link>
78+
<AdditionalDependencies>%(AdditionalDependencies);allegro\Lib\alleg.lib</AdditionalDependencies>
79+
<GenerateDebugInformation>true</GenerateDebugInformation>
80+
<OptimizeReferences>true</OptimizeReferences>
81+
<EnableCOMDATFolding>true</EnableCOMDATFolding>
82+
<TargetMachine>MachineX86</TargetMachine>
83+
</Link>
84+
<PostBuildEvent>
85+
<Command>copy /Y "$(ProjectDir)allegro\Lib\alleg40.dll" "$(ProjectDir)$(Configuration)\" &gt;nul
86+
copy /Y "$(ProjectDir)Extras\castle.dat" "$(ProjectDir)$(Configuration)\" &gt;nul
87+
copy /Y "$(ProjectDir)Extras\data.dat" "$(ProjectDir)$(Configuration)\" &gt;nul
88+
copy /Y "$(ProjectDir)Extras\ddraw.dll" "$(ProjectDir)$(Configuration)\" &gt;nul
89+
copy /Y "$(ProjectDir)Extras\dinput.dll" "$(ProjectDir)$(Configuration)\" &gt;nul
90+
copy /Y "$(ProjectDir)Extras\dxwrapper.dll" "$(ProjectDir)$(Configuration)\" &gt;nul
91+
copy /Y "$(ProjectDir)Extras\dxwrapper.ini" "$(ProjectDir)$(Configuration)\" &gt;nul
92+
</Command>
93+
</PostBuildEvent>
94+
</ItemDefinitionGroup>
95+
<ItemGroup>
96+
<ClCompile Include="Source\Castle.cpp" />
97+
</ItemGroup>
98+
<ItemGroup>
99+
<ClInclude Include="Source\data.h" />
100+
<ClInclude Include="Source\resource.h" />
101+
</ItemGroup>
102+
<ItemGroup>
103+
<Image Include="Source\Castle1.ico" />
104+
<Image Include="Source\Castle2.ico" />
105+
</ItemGroup>
106+
<ItemGroup>
107+
<ResourceCompile Include="Source\Castle.rc" />
108+
</ItemGroup>
109+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
110+
<ImportGroup Label="ExtensionTargets">
111+
</ImportGroup>
112+
</Project>

Castle.vcxproj.filters

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<ItemGroup>
4+
<Filter Include="Source Files">
5+
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
6+
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
7+
</Filter>
8+
<Filter Include="Header Files">
9+
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
10+
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
11+
</Filter>
12+
<Filter Include="Resource Files">
13+
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
14+
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
15+
</Filter>
16+
</ItemGroup>
17+
<ItemGroup>
18+
<ClCompile Include="Source\Castle.cpp">
19+
<Filter>Source Files</Filter>
20+
</ClCompile>
21+
</ItemGroup>
22+
<ItemGroup>
23+
<ClInclude Include="Source\data.h">
24+
<Filter>Header Files</Filter>
25+
</ClInclude>
26+
<ClInclude Include="Source\resource.h">
27+
<Filter>Header Files</Filter>
28+
</ClInclude>
29+
</ItemGroup>
30+
<ItemGroup>
31+
<Image Include="Source\Castle1.ico">
32+
<Filter>Resource Files</Filter>
33+
</Image>
34+
</ItemGroup>
35+
<ItemGroup>
36+
<Image Include="Source\Castle2.ico">
37+
<Filter>Resource Files</Filter>
38+
</Image>
39+
</ItemGroup>
40+
<ItemGroup>
41+
<ResourceCompile Include="Source\Castle.rc">
42+
<Filter>Resource Files</Filter>
43+
</ResourceCompile>
44+
</ItemGroup>
45+
</Project>

Extras/castle.dat

9.06 KB
Binary file not shown.

Extras/data.dat

49.2 KB
Binary file not shown.

Extras/ddraw.dll

368 KB
Binary file not shown.

Extras/dinput.dll

368 KB
Binary file not shown.

Extras/dxwrapper.dll

1.66 MB
Binary file not shown.

Extras/dxwrapper.ini

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
;; Config file for DirectX DLL Wrapper
2+
[General]
3+
RealDllPath = AUTO
4+
WrapperMode = AUTO
5+
LoadCustomDllPath =
6+
ExcludeProcess =
7+
IncludeProcess =
8+
RunProcess =
9+
WaitForProcess = 0
10+
DisableLogging = 0
11+
12+
[Plugins]
13+
LoadPlugins = 0
14+
LoadFromScriptsOnly = 0
15+
16+
[Compatibility]
17+
Dd7to9 = 1
18+
D3d8to9 = 0
19+
DDrawCompat = 0
20+
Dinputto8 = 1
21+
DisableGameUX = 0
22+
DSoundCtrl = 0
23+
DxWnd = 0
24+
EnableDdrawWrapper = 0
25+
HandleExceptions = 0
26+
SingleProcAffinity = 0
27+
28+
[DDrawCompat]
29+
DDrawCompat20 = 0
30+
DDrawCompat21 = 0
31+
DDrawCompatExperimental = 0
32+
DDrawCompatDisableGDIHook = 0
33+
DDrawCompatNoProcAffinity = 0
34+
35+
[ddraw]
36+
ConvertToDirectDraw7 = 0
37+
ConvertToDirect3D7 = 0
38+
DdrawOverrideBitMode = 0
39+
40+
[Dd7to9]
41+
AutoFrameSkip = 0
42+
DdrawEmulateSurface = 0
43+
DdrawLimitDisplayModeCount = 0
44+
DdrawUseNativeResolution = 0
45+
DdrawClippedWidth = 0
46+
DdrawClippedHeight = 0
47+
DdrawOverrideWidth = 0
48+
DdrawOverrideHeight = 0
49+
DdrawOverrideRefreshRate = 0
50+
DdrawIntegerScalingClamp = 0
51+
DdrawMaintainAspectRatio = 0
52+
53+
[d3d9]
54+
AntiAliasing = 0
55+
EnableVSync = 0
56+
EnableWindowMode = 0
57+
FullscreenWindowMode = 0
58+
WindowModeBorder = 0
59+
60+
[FullScreen]
61+
FullScreen = 0
62+
ForceWindowResize = 0
63+
WaitForWindowChanges = 0
64+
65+
[DSoundCtrl]
66+
Num2DBuffers = 0
67+
Num3DBuffers = 0
68+
ForceCertification = 0
69+
ForceExclusiveMode = 0
70+
ForceSoftwareMixing = 0
71+
ForceHardwareMixing = 0
72+
PreventSpeakerSetup = 0
73+
ForceHQ3DSoftMixing = 0
74+
ForceNonStaticBuffers = 0
75+
ForceVoiceManagement = 0
76+
ForcePrimaryBufferFormat = 0
77+
PrimaryBufferBits = 16
78+
PrimaryBufferSamples = 44100
79+
PrimaryBufferChannels = 2
80+
ForceSpeakerConfig = 0
81+
SpeakerConfig = 6

License.txt

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
/**
2+
* Copyright (C) 2001 DanielH (https://www.allegro.cc/members/danielh/)
3+
*
4+
* Code taken from (https://www.allegro.cc/depot/CastleAdventure/)
5+
*
6+
* Updated by Elisha Riedlinger in 2019
7+
*
8+
* This software is provided 'as-is', without any express or implied warranty. In no event will the
9+
* authors be held liable for any damages arising from the use of this software.
10+
* Permission is granted to anyone to use this software for any purpose, including commercial
11+
* applications, and to alter it and redistribute it freely, subject to the following restrictions:
12+
*
13+
* 1. The origin of this software must not be misrepresented; you must not claim that you wrote the
14+
* original software. If you use this software in a product, an acknowledgment in the product
15+
* documentation would be appreciated but is not required.
16+
* 2. Altered source versions must be plainly marked as such, and must not be misrepresented as
17+
* being the original software.
18+
* 3. This notice may not be removed or altered from any source distribution.
19+
*/

README.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Castle Adventure
2+
### Introduction
3+
This project is a remake of the old DOS Castle Adventure game written in 1984. You are trapped in a castle. You must find a way to get out while killing baddies and collecting goodies. The map is the same as the old game.
4+
5+
The code was written for [allegro.cc](https://www.allegro.cc/). The code was written for DirectDraw v3 and DirectInput v3. However, I am using [dxwrapper](https://github.com/elishacloud/dxwrapper) to convert this to Direct3D9 and DirectInput8.
6+
7+
I'm using this remake of the old game because this one most closely represents the old DOS game.
8+
9+
www.thealmightyguru.com/Reviews/CastleAdventure/
10+
11+
### Old DOS Game
12+
This is what the original DOS game looked like:
13+
14+
<img src="https://raw.githubusercontent.com/elishacloud/wiki-attachments/master/Castle-Adventure/dos-title.png" alt="" data-canonical-src="https://raw.githubusercontent.com/elishacloud/wiki-attachments/master/Castle-Adventure/dos-title.png" width="256" height="192" /> &nbsp;&nbsp;&nbsp;&nbsp; <img src="https://raw.githubusercontent.com/elishacloud/wiki-attachments/master/Castle-Adventure/dos-opening.png" alt="" data-canonical-src="https://raw.githubusercontent.com/elishacloud/wiki-attachments/master/Castle-Adventure/dos-opening.png" width="256" height="192" /> &nbsp;&nbsp;&nbsp;&nbsp; <img src="https://raw.githubusercontent.com/elishacloud/wiki-attachments/master/Castle-Adventure/dos-gameplay.png" alt="" data-canonical-src="https://raw.githubusercontent.com/elishacloud/wiki-attachments/master/Castle-Adventure/dos-gameplay.png" width="256" height="192" />
15+
16+
### Remake
17+
Here is what the remake looks like:
18+
19+
<img src="https://raw.githubusercontent.com/elishacloud/wiki-attachments/master/Castle-Adventure/new-opening.png" alt="" data-canonical-src="https://raw.githubusercontent.com/elishacloud/wiki-attachments/master/Castle-Adventure/new-opening.png" width="512" height="384" />
20+
21+
### License
22+
Copyright (C) 2001 [DanielH](https://www.allegro.cc/members/danielh/), code taken from [allegro.cc](https://www.allegro.cc/depot/CastleAdventure/)
23+
24+
Updated by Elisha Riedlinger in 2019
25+
26+
This software is provided 'as-is', without any express or implied warranty. In no event will the author(s) be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:
27+
28+
1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
29+
2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
30+
3. This notice may not be removed or altered from any source distribution.
31+
32+
### Development
33+
This version of Castle Adventure is written in C++ using Microsoft Visual Studio Community 2017.
34+
35+
Thanks for stopping by!

0 commit comments

Comments
 (0)