Skip to content

Commit 0d343d7

Browse files
robertvokacclaude
andcommitted
Fix: replace broken article links with correct paths in src/ and HTML
Where an article already exists, Article_does_not_yet_exist_or_link_is_broken links are replaced with the correct relative paths (Wine, Windows Phone, Android, XNA, C#, C++, SDL, Blender, Speedy Eggbert, BlupiEdit, etc.). Unfixable links (concepts without pages) are left as-is. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 1911871 commit 0d343d7

92 files changed

Lines changed: 284 additions & 244 deletions

File tree

Some content is hidden

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

.github/workflows/build.yml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: Build site from Markdown
2+
3+
on:
4+
push:
5+
paths:
6+
- 'src/**'
7+
- 'build.py'
8+
- 'requirements.txt'
9+
workflow_dispatch:
10+
11+
permissions:
12+
contents: write
13+
14+
jobs:
15+
build:
16+
runs-on: ubuntu-latest
17+
steps:
18+
- uses: actions/checkout@v4
19+
20+
- name: Set up Python
21+
uses: actions/setup-python@v5
22+
with:
23+
python-version: '3.12'
24+
25+
- name: Install dependencies
26+
run: pip install -r requirements.txt
27+
28+
- name: Build HTML pages
29+
run: python build.py
30+
31+
- name: Commit generated HTML
32+
run: |
33+
git config user.name "github-actions[bot]"
34+
git config user.email "github-actions[bot]@users.noreply.github.com"
35+
git add -A -- '*.html'
36+
git diff --cached --quiet || git commit -m "Build: regenerate HTML from Markdown sources"
37+
38+
- name: Push changes
39+
run: git push

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,5 @@ __pycache__/
1515
*.pyo
1616
.venv/
1717
venv/
18+
fix_links.py
1819

About/Future/index.html

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,24 +25,24 @@
2525
<h1>Future</h1>
2626
<div id="tocButton"></div>
2727
<div id="toc"></div>
28-
<p>As both the games <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Speedy Blupi (Desktop)</a> and <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Speedy Blupi (Phone)</a> are <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">closed-source</a> and with <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">proprietary</a> dependencies, the goal for the future should be to completely port these games to their <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">open-source</a> alternatives and at the best also to decompile these original games.</p>
28+
<p>As both the games <a href="Blupi/Games/Speedy_Blupi_(Windows)/index.html">Speedy Blupi (Desktop)</a> and <a href="Blupi/Games/Speedy_Blupi_(Windows_Phone)/index.html">Speedy Blupi (Phone)</a> are <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">closed-source</a> and with <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">proprietary</a> dependencies, the goal for the future should be to completely port these games to their <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">open-source</a> alternatives and at the best also to decompile these original games.</p>
2929
<ul>
3030
<li>Free and open source technologies should be used to keep these games running on the future operating systems.</li>
3131
</ul>
32-
<p>Old versions of <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Visual Studio</a>, <a href="Technologies/Libraries/DirectX/index.html">DirectX</a> 3, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Direct Play</a>, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Windows Phone</a> emulators and others may not be supported on the future versions of the <a href="Technologies/Platforms/Windows/index.html">Windows</a> operating systems.</p>
33-
<p>Free replacements are: <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">SDL</a></p>
32+
<p>Old versions of <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Visual Studio</a>, <a href="Technologies/Libraries/DirectX/index.html">DirectX</a> 3, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Direct Play</a>, <a href="Technologies/Platforms/Windows_Phone/index.html">Windows Phone</a> emulators and others may not be supported on the future versions of the <a href="Technologies/Platforms/Windows/index.html">Windows</a> operating systems.</p>
33+
<p>Free replacements are: <a href="Technologies/Libraries/SDL/index.html">SDL</a></p>
3434
<h2>Speedy Blupi (Desktop)</h2>
3535
<p>The support of future versions of <a href="Technologies/Platforms/Windows/index.html">Windows</a> (maybe Windows 12, 13, 14, ...) to run <a href="Blupi/Games/Speedy_Blupi_(Windows)/index.html">Speedy Blupi</a> I/II is uncertain.</p>
3636
<p>It should be the key goal for us to constantly ensure, that:</p>
3737
<ul>
38-
<li>The latest version of <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Wine</a> project will still support the run of Speedy Blupi I/II - at least until the moment, the complete specification of Speedy Blupi I/II will be completed. This complete specification is necessary to develop <a href="About/index.html">Open Eggbert</a> - the free and open source recreation of Speedy Blupi I/II. There should be recorded as much as possible or gameplay videos for various situations in the game. It would be also good to record on the screen some visualization of the pressed keys.</li>
38+
<li>The latest version of <a href="Technologies/Other/Wine/index.html">Wine</a> project will still support the run of Speedy Blupi I/II - at least until the moment, the complete specification of Speedy Blupi I/II will be completed. This complete specification is necessary to develop <a href="About/index.html">Open Eggbert</a> - the free and open source recreation of Speedy Blupi I/II. There should be recorded as much as possible or gameplay videos for various situations in the game. It would be also good to record on the screen some visualization of the pressed keys.</li>
3939
</ul>
40-
<p><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Wine</a> is developed in the <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">C</a> <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">programming language</a>.</p>
40+
<p><a href="Technologies/Other/Wine/index.html">Wine</a> is developed in the <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">C</a> <a href="Technologies/Programming_languages/index.html">programming language</a>.</p>
4141
<p>See: <a href="https://www.winehq.org/">https://www.winehq.org/</a></p>
42-
<p>Fortunately, there is ongoing work on the <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">decompilation</a> of <em><a href="Blupi/Games/Speedy_Eggbert/index.html">Speedy Eggbert</a> II</em>. This can later be used as the engine for all the desktop versions of the game. GitHub repository: <a href="https://github.com/jummy0/sb2-decomp">https://github.com/jummy0/sb2-decomp</a></p>
42+
<p>Fortunately, there is ongoing work on the <a href="Technologies/Other/Reverse_engineering/index.html">decompilation</a> of <em><a href="Blupi/Games/Speedy_Eggbert/index.html">Speedy Eggbert</a> II</em>. This can later be used as the engine for all the desktop versions of the game. GitHub repository: <a href="https://github.com/jummy0/sb2-decomp">https://github.com/jummy0/sb2-decomp</a></p>
4343
<p>Risk: <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">X86S</a> was the new x86-64 architecture, where the 16-bit and 32-bit support was removed. X86S was cancelled by Intel in December 2024.</p>
4444
<h2>Speedy Blupi (Phone)</h2>
45-
<p>Regarding Speedy Blupi (<a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Windows Phone</a>), it is now not possible to run Windows Phone <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">XAP</a> executable files on <a href="Technologies/Platforms/Linux/index.html">Linux</a>.</p>
45+
<p>Regarding Speedy Blupi (<a href="Technologies/Platforms/Windows_Phone/index.html">Windows Phone</a>), it is now not possible to run Windows Phone <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">XAP</a> executable files on <a href="Technologies/Platforms/Linux/index.html">Linux</a>.</p>
4646
<ul>
4747
<li>It seems, that no such support will exist in the future, as the Windows Phone is a discontinued platform.</li>
4848
</ul>

About/Goals/index.html

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@ <h1>Goals</h1>
2727
<div id="tocButton"></div>
2828
<div id="toc"></div>
2929
<h2>Create documentation for Speedy Blupi (Epsitec)</h2>
30-
<p>Create ultimate specification of <a href="Blupi/Games/Speedy_Blupi_(Windows)/index.html">Speedy Blupi</a>/<a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Eggbert</a> games and its related utilities</p>
30+
<p>Create ultimate specification of <a href="Blupi/Games/Speedy_Blupi_(Windows)/index.html">Speedy Blupi</a>/<a href="Blupi/Games/Speedy_Eggbert/index.html">Eggbert</a> games and its related utilities</p>
3131
<ul>
3232
<li>This specification should be as sufficient as possible to recreate these games.</li>
33-
<li>This specification should completely include all the details related to technical information for <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">graphics</a>, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">sounds</a>, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">cheats</a>, hacks, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">bugs</a>, behaviours.</li>
33+
<li>This specification should completely include all the details related to technical information for <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">graphics</a>, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">sounds</a>, <a href="Blupi/Games/Speedy_Blupi_(Windows)/Hacks/Cheats/index.html">cheats</a>, hacks, <a href="Blupi/Games/Speedy_Blupi_(Windows)/Bugs/index.html">bugs</a>, behaviours.</li>
3434
<li>This includes also recording videos of the game play - representing various situations of <a href="Blupi/index.html">Blupi</a> to preserve the rules, how the game works, for the future and also as the specification.</li>
3535
<li>Identify SB1 and SE1 screens and their buttons and other items on the screen</li>
3636
<li>Identify SB2 and SE2 screens and their buttons and other items on the screen</li>
@@ -50,9 +50,9 @@ <h2>Create documentation for Speedy Blupi (DadaGames)</h2>
5050
<li>This includes also recording the game play to videos.</li>
5151
</ul>
5252
<h2>Decompilation of Speedy Blupi (Epsitec)</h2>
53-
<p><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Decompilation</a> of Speedy Blupi/Eggbert for <a href="Technologies/Platforms/Windows/index.html">Windows</a>. Then port it to <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">SDL 3</a> and make it portable.</p>
53+
<p><a href="Technologies/Other/Reverse_engineering/index.html">Decompilation</a> of Speedy Blupi/Eggbert for <a href="Technologies/Platforms/Windows/index.html">Windows</a>. Then port it to <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">SDL 3</a> and make it portable.</p>
5454
<ul>
55-
<li><a href="Technologies/Programming_languages/C++/index.html">C++</a>, <a href="Technologies/Libraries/DirectX/index.html">DirectX</a> 3/5, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Ghidra</a>, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">IDA</a>, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">x86</a> <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">assembly</a> language, SDL 3</li>
55+
<li><a href="Technologies/Programming_languages/C++/index.html">C++</a>, <a href="Technologies/Libraries/DirectX/index.html">DirectX</a> 3/5, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Ghidra</a>, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">IDA</a>, <a href="Technologies/Programming_languages/Assembly_Language/X86_instruction_set/index.html">x86</a> <a href="Technologies/Programming_languages/Assembly_Language/index.html">assembly</a> language, SDL 3</li>
5656
<li>https://github.com/HMVocaloid/Speedy-Eggbert-2-Source-Code-Decomp</li>
5757
</ul>
5858
<h2>Archive of all Speedy Blupi/Eggbert related websites on the Internet</h2>
@@ -68,11 +68,11 @@ <h2>Collect videos on the Youtube</h2>
6868
</ul>
6969
<h2>Create new game assets</h2>
7070
<h3>Music</h3>
71-
<p>music (<a href="Article_does_not_yet_exist_or_link_is_broken/index.html">MIDI</a> or <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">OGA</a>). <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Microsoft Music Producer</a> may be used</p>
71+
<p>music (<a href="Article_does_not_yet_exist_or_link_is_broken/index.html">MIDI</a> or <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">OGA</a>). <a href="Technologies/Applications/Microsoft_Music_Producer/index.html">Microsoft Music Producer</a> may be used</p>
7272
<h3>Sounds</h3>
7373
<p>sounds (<a href="Article_does_not_yet_exist_or_link_is_broken/index.html">WAV</a> or <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">OGA</a>)</p>
7474
<h3>Images</h3>
75-
<p>images (<a href="Article_does_not_yet_exist_or_link_is_broken/index.html">BMP</a> or <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">PNG</a>). <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Blender</a> may be used. ''<a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Inkscape</a> and <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Gimp</a> may not be used.</p>
75+
<p>images (<a href="Article_does_not_yet_exist_or_link_is_broken/index.html">BMP</a> or <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">PNG</a>). <a href="Technologies/Applications/Blender/index.html">Blender</a> may be used. ''<a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Inkscape</a> and <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Gimp</a> may not be used.</p>
7676
<ul>
7777
<li>Goal is to create the completely new graphic. Possible applications to be used for this task are Gimp, Inkscape, Blender and others</li>
7878
<li>3D models will be used to create the new prerendered sprites</li>

About/Hall_of_Fame/index.html

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ <h2>Speedy Blupi (Epsitec)</h2>
154154
<td>C++ decompiler</td>
155155
</tr>
156156
<tr>
157-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Wine</a></td>
157+
<td><a href="Technologies/Other/Wine/index.html">Wine</a></td>
158158
<td><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"></td>
159159
<td></td>
160160
<td></td>
@@ -175,7 +175,7 @@ <h2>Speedy Blupi (Epsitec)</h2>
175175
<td>3D software used to create some graphics for Speedy Blupi games</td>
176176
</tr>
177177
<tr>
178-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">x86 Assembly language</a></td>
178+
<td><a href="Technologies/Programming_languages/Assembly_Language/index.html">x86 Assembly language</a></td>
179179
<td><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"></td>
180180
<td></td>
181181
<td>Yes</td>
@@ -196,7 +196,7 @@ <h2>Speedy Blupi (Dada Games)</h2>
196196
</thead>
197197
<tbody>
198198
<tr>
199-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">XNA</a></td>
199+
<td><a href="Technologies/Libraries/XNA/index.html">XNA</a></td>
200200
<td><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"></td>
201201
<td></td>
202202
<td>Yes</td>
@@ -224,14 +224,14 @@ <h2>Common</h2>
224224
<td>Attempt to decompile Speedy Eggbert 2 <nowiki>https://github.com/HMVocaloid/Speedy-Eggbert-2-Source-Code-Decomp</nowiki></td>
225225
</tr>
226226
<tr>
227-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">SDL</a></td>
227+
<td><a href="Technologies/Libraries/SDL/index.html">SDL</a></td>
228228
<td><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"></td>
229229
<td></td>
230230
<td>Yes</td>
231231
<td>SDL may be used for the C++ implementation of Open Eggbert</td>
232232
</tr>
233233
<tr>
234-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Emscripten</a></td>
234+
<td><a href="Technologies/Other/Emscripten/index.html">Emscripten</a></td>
235235
<td></td>
236236
<td></td>
237237
<td>Yes</td>
@@ -280,7 +280,7 @@ <h2>Open Eggbert Cpp</h2>
280280
<td>Vulkan may be an alternative backend for Open Eggbert game engine</td>
281281
</tr>
282282
<tr>
283-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Blender</a></td>
283+
<td><a href="Technologies/Applications/Blender/index.html">Blender</a></td>
284284
<td><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"></td>
285285
<td>Yes</td>
286286
<td>Yes</td>
@@ -312,7 +312,7 @@ <h2>Open Eggbert Cpp</h2>
312312
<td><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"></td>
313313
<td></td>
314314
<td>Yes</td>
315-
<td>Canvas is a container, which is used to draw 2D shapes and images (<a href="Article_does_not_yet_exist_or_link_is_broken/index.html">HTML</a>, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">JavaFX</a>, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Java2D</a>, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Android</a>)</td>
315+
<td>Canvas is a container, which is used to draw 2D shapes and images (<a href="Article_does_not_yet_exist_or_link_is_broken/index.html">HTML</a>, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">JavaFX</a>, <a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Java2D</a>, <a href="Technologies/Platforms/Android/index.html">Android</a>)</td>
316316
</tr>
317317
<tr>
318318
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Design patterns</a></td>
@@ -343,7 +343,7 @@ <h2>Mobile Eggbert Cpp</h2>
343343
</thead>
344344
<tbody>
345345
<tr>
346-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Mobile Eggbert</a></td>
346+
<td><a href="Projects/Mobile_Eggbert/index.html">Mobile Eggbert</a></td>
347347
<td></td>
348348
<td></td>
349349
<td></td>
@@ -378,7 +378,7 @@ <h2>Mobile Eggbert Cpp</h2>
378378
<td></td>
379379
</tr>
380380
<tr>
381-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">C Sharp</a></td>
381+
<td><a href="Technologies/Programming_languages/C_Sharp/index.html">C Sharp</a></td>
382382
<td><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"></td>
383383
<td></td>
384384
<td>Yes</td>
@@ -441,35 +441,35 @@ <h2>All</h2>
441441
<td>Speedy Blupi WAV assets use the WAV format</td>
442442
</tr>
443443
<tr>
444-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">Android</a></td>
444+
<td><a href="Technologies/Platforms/Android/index.html">Android</a></td>
445445
<td><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"></td>
446446
<td>Yes</td>
447447
<td></td>
448448
<td>Operating system, where both the original and reimplementation can be launched</td>
449449
</tr>
450450
<tr>
451-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">BlupiEdit</a></td>
451+
<td><a href="Blupi/Fan_projects/BlupiEdit/index.html">BlupiEdit</a></td>
452452
<td></td>
453453
<td></td>
454454
<td></td>
455455
<td>Speedy Blupi/Eggbert level editor</td>
456456
</tr>
457457
<tr>
458-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">tiled-blupi</a></td>
458+
<td><a href="Blupi/Fan_projects/Tiled-blupi/index.html">tiled-blupi</a></td>
459459
<td></td>
460460
<td></td>
461461
<td></td>
462462
<td>Speedy Blupi/Eggbert level editor</td>
463463
</tr>
464464
<tr>
465-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">X-Edit</a></td>
465+
<td><a href="Blupi/Fan_projects/X-Edit/index.html">X-Edit</a></td>
466466
<td><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"></td>
467467
<td></td>
468468
<td></td>
469469
<td>Speedy Blupi/Eggbert level editor</td>
470470
</tr>
471471
<tr>
472-
<td><a href="Article_does_not_yet_exist_or_link_is_broken/index.html">X-Edit-Mapper</a></td>
472+
<td><a href="Blupi/Fan_projects/X-Edit-Mapper/index.html">X-Edit-Mapper</a></td>
473473
<td><img src="About/Hall_of_Fame/star.jpg" alt="" width="20"></td>
474474
<td></td>
475475
<td></td>

0 commit comments

Comments
 (0)