1.1 --- a/README.txt Tue Jun 20 18:20:16 2023 +0200
1.2 +++ b/README.txt Tue Sep 12 17:20:10 2023 +0200
1.3 @@ -35,7 +35,7 @@
1.4
1.5 See the following Web pages for more information about this work:
1.6
1.7 -https://www.boddie.org.uk/paul/Landfall.html
1.8 +https://projects.boddie.org.uk/Landfall
1.9
1.10 The author can be contacted at the following e-mail address:
1.11
2.1 --- a/docs/wiki/Getting_Started Tue Jun 20 18:20:16 2023 +0200
2.2 +++ b/docs/wiki/Getting_Started Tue Sep 12 17:20:10 2023 +0200
2.3 @@ -9,17 +9,14 @@
2.4 need to be applied. This patch distribution can be obtained from the following
2.5 location:
2.6
2.7 -[[https://www.boddie.org.uk/paul/L4Re-Fiasco.OC.html]]
2.8 +[[https://projects.boddie.org.uk/L4Re-Fiasco.OC-patches]]
2.9
2.10 -The "current archive" should be obtained since the "initial archive" is merely
2.11 -provided for historical purposes. Instructions about applying the patches are
2.12 -provided in the distributed archive, as is a summary of the issues related to
2.13 -configuring and building the software. Building can be done after the steps
2.14 -described below.
2.15 +Instructions about applying the patches are provided in the patch
2.16 +distribution, as is a summary of the issues related to configuring and
2.17 +building this software. This document serves as a more detailed reference for
2.18 +the configuration and building of the Landfall components in particular.
2.19
2.20 -Some dependencies are also needed and these are documented in a section below.
2.21 -To actually build the software, various development tools are required, and
2.22 -suggestions are also provided in the dependencies section.
2.23 +<<TableOfContents(2)>>
2.24
2.25 == Configuring this Software ==
2.26
2.27 @@ -67,39 +64,109 @@
2.28 (The repository root of the L4Re/Fiasco.OC distribution typically contains a
2.29 directory called `fiasco` and a directory called `l4`.)
2.30
2.31 +== Obtaining Software Dependencies ==
2.32 +
2.33 +As noted in the [[Prerequisites|prerequisites]] document, a number of other
2.34 +software dependencies are needed to be able to build the software. Various
2.35 +additional development tools and components are required, and these can be
2.36 +installed on a Debian system as follows (with appropriate privileges):
2.37 +
2.38 +{{{
2.39 +apt-get install build-essential python unifont
2.40 +}}}
2.41 +
2.42 +The idl4re distribution must be installed within the `l4` directory of the
2.43 +L4Re/Fiasco.OC distribution and the `idl` program built. This can be done as
2.44 +follows within that directory:
2.45 +
2.46 +{{{
2.47 +hg clone https://hg.boddie.org.uk/L4Re/idl4re
2.48 +cd idl4re
2.49 +make
2.50 +}}}
2.51 +
2.52 +See the idl4re documentation for more information.
2.53 +
2.54 +The libipc package must be installed within the `l4/pkg` directory of the
2.55 +L4Re/Fiasco.OC distribution. This is purely a matter of obtaining the `libipc`
2.56 +directory from the Departure distribution. Within the `l4` directory, the
2.57 +package can be installed as follows:
2.58 +
2.59 +{{{
2.60 +hg clone https://hg.boddie.org.uk/L4Re/departure
2.61 +mkdir pkg/departure-minimal
2.62 +cp -R departure/libipc pkg/departure-minimal
2.63 +}}}
2.64 +
2.65 +Further integration of these distributions will hopefully make the
2.66 +installation of this software easier in future.
2.67 +
2.68 == Building the Software ==
2.69
2.70 With this software installed into the appropriate location, the instructions
2.71 -for building Fiasco.OC and L4Re can now be followed. (They are provided in the
2.72 -L4Re-Fiasco.OC-patches distribution.) This process should proceed without
2.73 -error.
2.74 +for building Fiasco.OC and L4Re can now be followed. Such instructions are
2.75 +provided in the L4Re-Fiasco.OC-patches distribution, but can be summarised as
2.76 +follows. For Fiasco.OC:
2.77 +
2.78 +{{{
2.79 +cd fiasco
2.80 +make BUILDDIR=mybuild
2.81 +cd mybuild
2.82 +make config
2.83 +}}}
2.84 +
2.85 +After interacting with the configuration dialogue:
2.86 +
2.87 +{{{
2.88 +make -j
2.89 +}}}
2.90 +
2.91 +For L4Re:
2.92 +
2.93 +{{{
2.94 +cd l4
2.95 +make B=mybuild
2.96 +make O=mybuild config
2.97 +}}}
2.98 +
2.99 +After interacting with the configuration dialogue:
2.100 +
2.101 +{{{
2.102 +make -j
2.103 +}}}
2.104
2.105 As a consequence of building Fiasco.OC and L4Re, a payload can be generated
2.106 and deployed for one of the examples provided by this software distribution.
2.107 -For example, in the l4 subdirectory of the unpacked L4Re/Fiasco.OC
2.108 -distribution, the following commands might be run:
2.109 -
2.110 -{{{
2.111 -cp conf/landfall-examples/mips-qi_lb60-keypad-demo.list conf/modules.list
2.112 -~/L4/Landfall/tools/listlibs.sh \
2.113 - conf/landfall-examples/mips-qi_lb60-keypad-demo.list >> conf/modules.list
2.114 -make O=mybuild uimage E=mips-qi_lb60-keypad-demo-example
2.115 -}}}
2.116 +For example, in the `l4` subdirectory of the unpacked L4Re/Fiasco.OC
2.117 +distribution, a number of commands might be run.
2.118
2.119 First, a module list is copied from the `conf/landfall-examples` directory to
2.120 `conf/modules.list`, this being the place where the build system obtains the
2.121 details of the software to include in the payload.
2.122
2.123 +{{{
2.124 +cp conf/landfall-examples/mips-qi_lb60-keypad-demo.list conf/modules.list
2.125 +}}}
2.126 +
2.127 The module lists provide details of essential programs and resources but may
2.128 also require libraries if shared libraries are being used. The `listlibs.sh`
2.129 invocation produces a manifest of required libraries for a given list of
2.130 programs or modules. This manifest augments the module list provided.
2.131
2.132 +{{{
2.133 +~/L4/Landfall/tools/listlibs.sh \
2.134 + conf/landfall-examples/mips-qi_lb60-keypad-demo.list >> conf/modules.list
2.135 +}}}
2.136 +
2.137 Finally, the make invocation combines programs and libraries found in the
2.138 `mybuild` directory and uses the indicated payload to construct, in this case,
2.139 an example demonstrating use of the Ben NanoNote's keypad. Here, the `E`
2.140 parameter corresponds to the `entry` line in the `conf/modules.list` file.
2.141
2.142 +{{{
2.143 +make O=mybuild uimage E=mips-qi_lb60-keypad-demo-example
2.144 +}}}
2.145 +
2.146 == Deploying the Software ==
2.147
2.148 The resulting payload should reside in the created images directory and be
3.1 --- a/docs/wiki/Landfall Tue Jun 20 18:20:16 2023 +0200
3.2 +++ b/docs/wiki/Landfall Tue Sep 12 17:20:10 2023 +0200
3.3 @@ -9,12 +9,12 @@
3.4 * [[http://projects.goldelico.com/p/letux400/|Letux 400]]
3.5 * [[https://www.elinux.org/MIPS_Creator_CI20|MIPS Creator CI20]]
3.6
3.7 -It builds on [[http://www.boddie.org.uk/paul/L4Re-Fiasco.OC.html|work]] done
3.8 -to make L4Re available on these platforms, itself building on work by others
3.9 -to port L4Re and Fiasco.OC to the MIPS architecture.
3.10 +It builds on the [[https://projects.boddie.org.uk/L4Re-Fiasco.OC-patches]]
3.11 +distribution that makes L4Re available on these platforms, itself building on
3.12 +work by others to port L4Re and Fiasco.OC to the MIPS architecture.
3.13
3.14 -{{attachment:P5300454-800x600.JPG||alt=The Spectrum example on the Ben
3.15 -NanoNote and Letux 400}}
3.16 +{{attachment:P5300454-800x600.JPG||alt=The Spectrum example on the Ben NanoNote
3.17 +and Letux 400}}
3.18
3.19 == Documentation ==
3.20
4.1 --- a/docs/wiki/Prerequisites Tue Jun 20 18:20:16 2023 +0200
4.2 +++ b/docs/wiki/Prerequisites Tue Sep 12 17:20:10 2023 +0200
4.3 @@ -19,13 +19,21 @@
4.4 .. [[http://unifoundry.com/unifont.html]]
4.5 ==
4.6 L4Re
4.7 -(this work's foundation) || Tested with repository version r83 \\
4.8 +(this work's foundation) || Tested with the project's Git repositories and
4.9 + .. packages from Subversion repository version r83
4.10 + .. \\
4.11 .. [[http://l4re.org/]]
4.12 ==
4.13 L4Re-Fiasco.OC-patches
4.14 -(needed for device support) || Tested with snapshot-2020-06-17 \\
4.15 +(needed for device support) || Tested with snapshot-2023-06-21 \\
4.16 .. [[https://www.boddie.org.uk/paul/L4Re-Fiasco.OC.html]]
4.17 ==
4.18 +idl4re
4.19 +(needed to generate code) || [[https://projects.boddie.org.uk/idl4re]]
4.20 +==
4.21 +libipc
4.22 +(needed for IPC and idl4re) || [[https://projects.boddie.org.uk/Departure]]
4.23 +==
4.24 MoinLight
4.25 (needed for documentation) || [[https://projects.boddie.org.uk/MoinLight]]
4.26 ==