Desktop Development Environment (DDE) from RISC OS Open (ROOL)
==============================================================

This is the RISC OS Desktop Development Environment. It is the recommended
toolchain for developing RISC OS software and is essential for building any
of the software products published on the RISC OS Open website:

  https://www.riscosopen.org/content/downloads/risc-os-tarballs

The DDE includes a C compiler, ARM assembler, linker, C++ translator and a
number of other essential and useful tools. All of these tools are built to
run on, and create code for, ARM-based RISC OS machines.


Installation
============

Using RISC OS, copy the contents of the DDE directory over the top of the
root of your main drive. This should merge the DDE with your disc image and
put everything into the right place (the "AcornC/C++" directory should be next
to your "!Boot" application).

Once copied, you should install the Developer !System components by running
(double-clicking) the file:

  "$.AcornC/C++.Developer.!SysMerge"

This is a required step for a number of the DDE tools, notably !DDT.

Once installed, you should be able to build the demonstration source code
components by following these steps:

* Open "AcornC/C++" and !SetPaths should run automatically (the first time
    it is 'seen' by RISC OS after every boot) - this initialises a number
    of important system variables, amongst other things.

* Open "Sources.DDE-Examples"

* Open one of the example folders (e.g. "Skeletons.examplemod")

* Run the MkRam (or Mk) script to build a RAM-loadable version of that
    component

These examples make heavy use of the RISC OS "shared makefiles", which are
a fundamental part of the standard build system and enable easier migration
to different toolchains in future (see "$.AcornC/C++.Makefiles").


How To
======

There are a number of manuals included with the DDE (see "Documents.Manuals")
to help you understand more about how the various tools work:

  * Archimedes BASIC Compiler
  * Acorn Assembler
  * Acorn C/C++
  * Desktop Tools
  * RISC OS Style Guide
  * User Interface Toolbox

These reflect the latest feature set at the time of writing; check the issue
date inside the front cover if uncertain, and use the form inside the back
cover if you can think of ways to improve these. In addition, there may be
last minute release notes and change logs (see "Documents.DDE").

You should take a look at the RISC OS Programmer's Reference Manual (PRM)
which is also provided and contains detailed documentation about how RISC OS
works and the various APIs available. The PRMs are now quite dated, being
based on OS 3.60 from 1995, but we aim to update those in future. For the
time being, you should try to keep in mind that there may be obsolete
information there.

Finally, there is lots of information on the ROOL website:

  https://www.riscosopen.org/wiki/documentation/show/HomePage

Specifically, there are outline guides to building on RISC OS here:

  https://www.riscosopen.org/wiki/documentation/show/How%20to%20build%20RISC%20OS
  https://www.riscosopen.org/wiki/documentation/show/Developer's%20guide%20to%20RISC%20OS%20builds
  https://www.riscosopen.org/wiki/documentation/show/Builder
  https://www.riscosopen.org/wiki/documentation/show/Build%20FAQ


Support
=======

RISC OS Open is staffed entirely by volunteers so your best route to support
is through our forums, where your questions will be seen by ROOL and by other
members of the RISC OS developer community:

  https://www.riscosopen.org/forum/

If you run into specific issues with using the DDE and aren't finding the
support you need on the forums, please email tools@riscosopen.org.


Credits
=======

Many thanks to Pace Micro Technology for the Acorn C/C++ tools; Alan Glover
and Pineapple Software for ABC; Piccolo Systems for A8Time; Nicholas Clark
for Perl and Steve Revill for SID. The Acorn manuals were updated and
converted by Paul & Tracey Skirrow with further sweeping updates by James
Byrne and Ben Avison.

-- RISC OS Open
