H8300-boot
Actual source code can be downloaded using a Darcs tool:
darcs get http://rtime.felk.cvut.cz/repos/h8300-boot
This will create a copy of the repository on your computer. You can upgrade your repository using the command:
darcs pull
If you have an acount on the rtime server, you can use ssh-based access to the repository. If an administrater gave you the right for writing to the repository, you can not only read (pull) repository but also write (push) changes to the repository.
The syntax for getting the repo is:
darcs get <login>@rtime.felk.cvut.cz:/var/repos/h8300-boot
Browsing of project sources is also possible via web interface.
Compiling
First, you have to configure the make-system for a board you plan to use. For h8canusb execute the following command from h8300-boot directory:
ln -s board/h8canusb/config.h8canusb config.target make default-config
Then, you can change default configuration of what is compiled by copying config.omk-default to config.omk. In the copied file change default configuration as you want and delete other lines you want to have default value.
After typing
make
everithing is goning to compile and if the compilation is completed without errors, you can use this build environment for building your own applications.
Compiling one application only
To compile only a part of sources (e.g. your own application), change the directory to where your applications resides and run
make
This will (re)compile everithing in current directory and all subdirectories. The result of compilation can be found under the _compiled direcotry (located at root of h8300-boot directory structure). The structure of _compiled directory is as follows:
- bin
- binary programs for target system
- bin-utils
- binary programs for host system (PC)
- include
- header files which are used when compiling for target
- libs
- compiled libraries for target
There is another directory called _build where are stored intermediate products of compilation such as object files, linker maps and dependency descriptions. You can delete files in <_build corresponding to your application by issuing
make clean
If you want to delete both _compiled and _build directories, run
make distclean
Loading and running an application
To load an application to the target processor, run
make load
This load the application from current directory to either RAM or FLASH memory. Which one is selected depends on a value of DEFAULT_LD_SCRIPT_VARIANT variable. First word from value of this variable determines the default memory location for loading (and running). This variable can be set globaly in config.target or locally in Makefile.omk.
If you want to load an application to different memory location, use one of
make load-flash make load-ram
You can run loaded application by running one of the following
make run make run-ram make run-flash
Bootstrapping the processor
In order to be able to load applications to the target system, there have to be a bool loader program in processor's FLASH memory. The loader program is located at app/bloader directory and you can load it to the processor by
sh bootstrap
from bloader direcotry.
Using KDevelop for development
KDevelop is a very good IDE for developing various kind of applications. It can be easily used to develop software for H8300 processors and can be well integrated with OMK make-system.
If you want to use KDevelop for development, follow theese points:
- Import project to KDevelop (from menu choose Project -> Import existing project). Select the type of project to Generic C Application (Custom Makefile)