diff --git a/apps/c1p/BASIC/OSI/README.md b/apps/c1p/BASIC/OSI/README.md
new file mode 100644
index 000000000..84256c45c
--- /dev/null
+++ b/apps/c1p/BASIC/OSI/README.md
@@ -0,0 +1,19 @@
+---
+layout: page
+title: OSI Challenger 1P BASIC Programs
+permalink: /apps/c1p/BASIC/OSI/
+---
+
+OSI Challenger 1P BASIC Programs
+--------------------------------
+
+- [BASIC MATH](math/)
+- [CHECKING](checking/)
+- [COUNTER](counter/)
+- [POKER](poker/)
+- [PRESIDENTS](presidents/)
+- [STAR WARS](starwars/)
+- [TRIG TUTOR](trigtutor/)
+
+The project also includes some of [Jeff's](https://twitter.com/jeffpar) [BASIC Programs](../jeffpar/) written
+from 1979 to 1980.
diff --git a/apps/c1p/BASIC/OSI/CHECKING.BAS b/apps/c1p/BASIC/OSI/checking/CHECKING.BAS
similarity index 100%
rename from apps/c1p/BASIC/OSI/CHECKING.BAS
rename to apps/c1p/BASIC/OSI/checking/CHECKING.BAS
diff --git a/apps/c1p/BASIC/OSI/checking/README.md b/apps/c1p/BASIC/OSI/checking/README.md
new file mode 100644
index 000000000..3fbc16074
--- /dev/null
+++ b/apps/c1p/BASIC/OSI/checking/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Challenger 1P BASIC Programs: CHECKING.BAS"
+permalink: /apps/c1p/BASIC/OSI/checking/
+---
+
+{% highlight basic %}
+{% include_relative CHECKING.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/OSI/COUNTER.BAS b/apps/c1p/BASIC/OSI/counter/COUNTER.BAS
similarity index 100%
rename from apps/c1p/BASIC/OSI/COUNTER.BAS
rename to apps/c1p/BASIC/OSI/counter/COUNTER.BAS
diff --git a/apps/c1p/BASIC/OSI/counter/README.md b/apps/c1p/BASIC/OSI/counter/README.md
new file mode 100644
index 000000000..144d9d8e3
--- /dev/null
+++ b/apps/c1p/BASIC/OSI/counter/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Challenger 1P BASIC Programs: COUNTER.BAS"
+permalink: /apps/c1p/BASIC/OSI/counter/
+---
+
+{% highlight basic %}
+{% include_relative COUNTER.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/OSI/MATH.BAS b/apps/c1p/BASIC/OSI/math/MATH.BAS
similarity index 100%
rename from apps/c1p/BASIC/OSI/MATH.BAS
rename to apps/c1p/BASIC/OSI/math/MATH.BAS
diff --git a/apps/c1p/BASIC/OSI/math/README.md b/apps/c1p/BASIC/OSI/math/README.md
new file mode 100644
index 000000000..1dec1915c
--- /dev/null
+++ b/apps/c1p/BASIC/OSI/math/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Challenger 1P BASIC Programs: MATH.BAS"
+permalink: /apps/c1p/BASIC/OSI/math/
+---
+
+{% highlight basic %}
+{% include_relative MATH.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/OSI/POKER-CR.BAS b/apps/c1p/BASIC/OSI/poker/POKER-CR.BAS
similarity index 100%
rename from apps/c1p/BASIC/OSI/POKER-CR.BAS
rename to apps/c1p/BASIC/OSI/poker/POKER-CR.BAS
diff --git a/apps/c1p/BASIC/OSI/POKER.BAS b/apps/c1p/BASIC/OSI/poker/POKER.BAS
similarity index 100%
rename from apps/c1p/BASIC/OSI/POKER.BAS
rename to apps/c1p/BASIC/OSI/poker/POKER.BAS
diff --git a/apps/c1p/BASIC/OSI/poker/README.md b/apps/c1p/BASIC/OSI/poker/README.md
new file mode 100644
index 000000000..d939c82ea
--- /dev/null
+++ b/apps/c1p/BASIC/OSI/poker/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Challenger 1P BASIC Programs: POKER.BAS"
+permalink: /apps/c1p/BASIC/OSI/poker/
+---
+
+{% highlight basic %}
+{% include_relative POKER.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/OSI/PRESIDENTS.BAS b/apps/c1p/BASIC/OSI/presidents/PRESIDENTS.BAS
similarity index 100%
rename from apps/c1p/BASIC/OSI/PRESIDENTS.BAS
rename to apps/c1p/BASIC/OSI/presidents/PRESIDENTS.BAS
diff --git a/apps/c1p/BASIC/OSI/presidents/README.md b/apps/c1p/BASIC/OSI/presidents/README.md
new file mode 100644
index 000000000..170775201
--- /dev/null
+++ b/apps/c1p/BASIC/OSI/presidents/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Challenger 1P BASIC Programs: PRESIDENTS.BAS"
+permalink: /apps/c1p/BASIC/OSI/presidents/
+---
+
+{% highlight basic %}
+{% include_relative PRESIDENTS.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/OSI/seawolfe/README.md b/apps/c1p/BASIC/OSI/seawolfe/README.md
new file mode 100644
index 000000000..521f48ca5
--- /dev/null
+++ b/apps/c1p/BASIC/OSI/seawolfe/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Challenger 1P BASIC Programs: SEAWOLFE.BAS"
+permalink: /apps/c1p/BASIC/OSI/seawolfe/
+---
+
+{% highlight basic %}
+{% include_relative SEAWOLFE.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/OSI/SEAWOLFE.BAS b/apps/c1p/BASIC/OSI/seawolfe/SEAWOLFE.BAS
similarity index 100%
rename from apps/c1p/BASIC/OSI/SEAWOLFE.BAS
rename to apps/c1p/BASIC/OSI/seawolfe/SEAWOLFE.BAS
diff --git a/apps/c1p/BASIC/OSI/starwars/README.md b/apps/c1p/BASIC/OSI/starwars/README.md
new file mode 100644
index 000000000..c368bb599
--- /dev/null
+++ b/apps/c1p/BASIC/OSI/starwars/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Challenger 1P BASIC Programs: STARWARS.BAS"
+permalink: /apps/c1p/BASIC/OSI/starwars/
+---
+
+{% highlight basic %}
+{% include_relative STARWARS.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/OSI/STARWARS.BAS b/apps/c1p/BASIC/OSI/starwars/STARWARS.BAS
similarity index 100%
rename from apps/c1p/BASIC/OSI/STARWARS.BAS
rename to apps/c1p/BASIC/OSI/starwars/STARWARS.BAS
diff --git a/apps/c1p/BASIC/OSI/tankfortwo/README.md b/apps/c1p/BASIC/OSI/tankfortwo/README.md
new file mode 100644
index 000000000..2ddc0b75a
--- /dev/null
+++ b/apps/c1p/BASIC/OSI/tankfortwo/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Challenger 1P BASIC Programs: TANKFORTWO.BAS"
+permalink: /apps/c1p/BASIC/OSI/tankfortwo/
+---
+
+{% highlight basic %}
+{% include_relative TANKFORTWO.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/OSI/TANKFORTWO.BAS b/apps/c1p/BASIC/OSI/tankfortwo/TANKFORTWO.BAS
similarity index 100%
rename from apps/c1p/BASIC/OSI/TANKFORTWO.BAS
rename to apps/c1p/BASIC/OSI/tankfortwo/TANKFORTWO.BAS
diff --git a/apps/c1p/BASIC/OSI/trigtutor/README.md b/apps/c1p/BASIC/OSI/trigtutor/README.md
new file mode 100644
index 000000000..d098bc5f4
--- /dev/null
+++ b/apps/c1p/BASIC/OSI/trigtutor/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Challenger 1P BASIC Programs: TRIGTUTOR.BAS"
+permalink: /apps/c1p/BASIC/OSI/trigtutor/
+---
+
+{% highlight basic %}
+{% include_relative TRIGTUTOR.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/OSI/TRIGTUTOR.BAS b/apps/c1p/BASIC/OSI/trigtutor/TRIGTUTOR.BAS
similarity index 100%
rename from apps/c1p/BASIC/OSI/TRIGTUTOR.BAS
rename to apps/c1p/BASIC/OSI/trigtutor/TRIGTUTOR.BAS
diff --git a/apps/c1p/BASIC/README.md b/apps/c1p/BASIC/README.md
index 4c5f9a234..7e95f8d0f 100644
--- a/apps/c1p/BASIC/README.md
+++ b/apps/c1p/BASIC/README.md
@@ -1,27 +1,13 @@
---
layout: page
-title: Challenger 1P BASIC Applications
+title: Challenger 1P BASIC Programs
permalink: /apps/c1p/BASIC/
---
-Challenger 1P BASIC Applications
----
+Challenger 1P BASIC Programs
+----------------------------
-The following BASIC applications were supplied by Ohio Scientific:
+BASIC programs for the Challenger 1P have been archived from the following authors:
-- [BASIC MATH](OSI/MATH.BAS)
-- [CHECKING](OSI/CHECKING.bas)
-- [COUNTER](OSI/COUNTER.BAS)
-- [POKER](OSI/POKER.BAS)
-- [PRESIDENTS](OSI/PRESIDENTS.BAS)
-- [STAR WARS](OSI/STARWARS.BAS)
-- [TRIG TUTOR](OSI/TRIGTUTOR.BAS)
-
-The project also includes some eclectic BASIC programs written by [Jeff Parsons](https://twitter.com/jeffpar) from 1979 to 1980:
-
-- [CHECKERS](jeffpar/CHECKERS.BAS)
-- [HANG WOMAN](jeffpar/HANGWOMAN.BAS)
-- [LIFE](jeffpar/LIFE.BAS)
-- [OTHELLO](jeffpar/OTHELLO.BAS)
-- [SOFORECAST](jeffpar/SOFORECAST.BAS)
-- [TUBELIST](jeffpar/TUBELIST.BAS)
+- [Jeff Parsons](jeffpar/)
+- [Ohio Scientific](OSI/)
diff --git a/apps/c1p/BASIC/jeffpar/README.md b/apps/c1p/BASIC/jeffpar/README.md
new file mode 100644
index 000000000..c432be8a0
--- /dev/null
+++ b/apps/c1p/BASIC/jeffpar/README.md
@@ -0,0 +1,19 @@
+---
+layout: page
+title: "Jeff's Challenger 1P BASIC Programs"
+permalink: /apps/c1p/BASIC/jeffpar/
+---
+
+Jeff's Challenger 1P BASIC Programs
+-----------------------------------
+
+Below are some BASIC programs written by [Jeff Parsons](https://twitter.com/jeffpar) from 1979 to 1980:
+
+- [CHECKERS](checkers/)
+- [HANG WOMAN](hangwoman/)
+- [LIFE](life/)
+- [OTHELLO](othello/)
+- [SOFORECAST](soforecast/)
+- [TUBELIST](tubelist/)
+
+The project also includes an archive of Ohio Scientific's [BASIC Programs](../OSI/).
diff --git a/apps/c1p/BASIC/jeffpar/CHECKERS.BAS b/apps/c1p/BASIC/jeffpar/checkers/CHECKERS.BAS
similarity index 100%
rename from apps/c1p/BASIC/jeffpar/CHECKERS.BAS
rename to apps/c1p/BASIC/jeffpar/checkers/CHECKERS.BAS
diff --git a/apps/c1p/BASIC/jeffpar/checkers/README.md b/apps/c1p/BASIC/jeffpar/checkers/README.md
new file mode 100644
index 000000000..4f1a73501
--- /dev/null
+++ b/apps/c1p/BASIC/jeffpar/checkers/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Jeff's Challenger 1P BASIC Programs: CHECKERS.BAS"
+permalink: /apps/c1p/BASIC/jeffpar/checkers/
+---
+
+{% highlight basic %}
+{% include_relative CHECKERS.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/jeffpar/HANGWOMAN.BAS b/apps/c1p/BASIC/jeffpar/hangwoman/HANGWOMAN.BAS
similarity index 100%
rename from apps/c1p/BASIC/jeffpar/HANGWOMAN.BAS
rename to apps/c1p/BASIC/jeffpar/hangwoman/HANGWOMAN.BAS
diff --git a/apps/c1p/BASIC/jeffpar/hangwoman/README.md b/apps/c1p/BASIC/jeffpar/hangwoman/README.md
new file mode 100644
index 000000000..33173d88b
--- /dev/null
+++ b/apps/c1p/BASIC/jeffpar/hangwoman/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Jeff's Challenger 1P BASIC Programs: HANGWOMAN.BAS"
+permalink: /apps/c1p/BASIC/jeffpar/hangwoman/
+---
+
+{% highlight basic %}
+{% include_relative HANGWOMAN.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/jeffpar/LIFE.BAS b/apps/c1p/BASIC/jeffpar/life/LIFE.BAS
similarity index 100%
rename from apps/c1p/BASIC/jeffpar/LIFE.BAS
rename to apps/c1p/BASIC/jeffpar/life/LIFE.BAS
diff --git a/apps/c1p/BASIC/jeffpar/life/README.md b/apps/c1p/BASIC/jeffpar/life/README.md
new file mode 100644
index 000000000..c321b6b94
--- /dev/null
+++ b/apps/c1p/BASIC/jeffpar/life/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Jeff's Challenger 1P BASIC Programs: LIFE.BAS"
+permalink: /apps/c1p/BASIC/jeffpar/hangwoman/
+---
+
+{% highlight basic %}
+{% include_relative LIFE.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/jeffpar/OTHELLO.BAS b/apps/c1p/BASIC/jeffpar/othello/OTHELLO.BAS
similarity index 100%
rename from apps/c1p/BASIC/jeffpar/OTHELLO.BAS
rename to apps/c1p/BASIC/jeffpar/othello/OTHELLO.BAS
diff --git a/apps/c1p/BASIC/jeffpar/othello/README.md b/apps/c1p/BASIC/jeffpar/othello/README.md
new file mode 100644
index 000000000..a21211863
--- /dev/null
+++ b/apps/c1p/BASIC/jeffpar/othello/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Jeff's Challenger 1P BASIC Programs: OTHELLO.BAS"
+permalink: /apps/c1p/BASIC/jeffpar/othello/
+---
+
+{% highlight basic %}
+{% include_relative OTHELLO.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/jeffpar/soforecast/README.md b/apps/c1p/BASIC/jeffpar/soforecast/README.md
new file mode 100644
index 000000000..51bef1b0a
--- /dev/null
+++ b/apps/c1p/BASIC/jeffpar/soforecast/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Jeff's Challenger 1P BASIC Programs: SOFORECAST.BAS"
+permalink: /apps/c1p/BASIC/jeffpar/soforecast/
+---
+
+{% highlight basic %}
+{% include_relative SOFORECAST.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/jeffpar/SOFORECAST.BAS b/apps/c1p/BASIC/jeffpar/soforecast/SOFORECAST.BAS
similarity index 100%
rename from apps/c1p/BASIC/jeffpar/SOFORECAST.BAS
rename to apps/c1p/BASIC/jeffpar/soforecast/SOFORECAST.BAS
diff --git a/apps/c1p/BASIC/jeffpar/tubelist/README.md b/apps/c1p/BASIC/jeffpar/tubelist/README.md
new file mode 100644
index 000000000..816a0e622
--- /dev/null
+++ b/apps/c1p/BASIC/jeffpar/tubelist/README.md
@@ -0,0 +1,9 @@
+---
+layout: page
+title: "Jeff's Challenger 1P BASIC Programs: TUBELIST.BAS"
+permalink: /apps/c1p/BASIC/jeffpar/tubelist/
+---
+
+{% highlight basic %}
+{% include_relative TUBELIST.BAS %}
+{% endhighlight %}
diff --git a/apps/c1p/BASIC/jeffpar/TUBELIST.BAS b/apps/c1p/BASIC/jeffpar/tubelist/TUBELIST.BAS
similarity index 100%
rename from apps/c1p/BASIC/jeffpar/TUBELIST.BAS
rename to apps/c1p/BASIC/jeffpar/tubelist/TUBELIST.BAS
diff --git a/apps/c1p/all.xml b/apps/c1p/all.xml
index c48efa11b..d46b1bc04 100644
--- a/apps/c1p/all.xml
+++ b/apps/c1p/all.xml
@@ -7,19 +7,19 @@
- 6502 Game of Life (JP)
- 6502 BCD Tests
- 6502 VFLAG Tests
- - CHECKERS (JP)
- - HANGWOMAN (JP)
- - LIFE (JP)
- - OTHELLO (JP)
- - SOFORECAST (JP)
- - TUBELIST (JP)
- - BASIC MATH
- - CHECKING
- - COUNTER
- - POKER
- - PRESIDENTS
- - STAR WARS
- - TRIG TUTOR
+ - CHECKERS (JP)
+ - HANGWOMAN (JP)
+ - LIFE (JP)
+ - OTHELLO (JP)
+ - SOFORECAST (JP)
+ - TUBELIST (JP)
+ - BASIC MATH
+ - CHECKING
+ - COUNTER
+ - POKER
+ - PRESIDENTS
+ - STAR WARS
+ - TRIG TUTOR
- SPACEWAR
Load
diff --git a/apps/c1p/samples.xml b/apps/c1p/samples.xml
index 8f0fec338..dde26193b 100644
--- a/apps/c1p/samples.xml
+++ b/apps/c1p/samples.xml
@@ -1,13 +1,13 @@
- - BASIC MATH
- - CHECKING
- - COUNTER
- - POKER
- - PRESIDENTS
- - STAR WARS
- - TRIG TUTOR
+ - BASIC MATH
+ - CHECKING
+ - COUNTER
+ - POKER
+ - PRESIDENTS
+ - STAR WARS
+ - TRIG TUTOR
Load