CHANGES_JSP_STUDY

     Author: takemasa

この文書は、CVSのタグ毎に修正箇所の説明を行う。ソースコードは以下の
URLより閲覧できる。このURLのCVSビューアには、ファイルのバージョン毎の
比較機能もついている。
http://sourceforge.jp/cvs/view/toppersjsp4lpc/jsp_study/

また、ソースコードのCVSリポジトリへのアクセスは、以下のURLに
説明がある。
http://sourceforge.jp/projects/toppersjsp4lpc/cvs/
ソースツリーのCVS内部でのモジュール名はjsp_studyである。

以下はCVSのタグ毎の変更の概要である。

* step_14_registers
LPC2388のメモリ・マップど・レジスタをmmrXXXX形式で変数アクセスできる
ように変更した。このタグの版もSRAMでの実行用である。FLASH ROMからの
実行をするためには、step_13_flash同様、Makefile.configを書き換える。

* step_13_flash
FLASH ROMからの実行に対応した。Makefile.configを書き換えて、LD
スクリプトを lpc2388_sram.ld から lpc2388_flash.ld にすることで
FLASHから起動する。

なお、SRAMから起動する場合、lpc2388_sram.ld は、.DATAセクション初期化
シンボルとしてダミー値を与える。sys_initialize()は、ダミー値を検出する
と、例外ベクトルの初期値化をやめる。これは、SRAM動作値は初期値がデバッガ
から与えられているからである。

* step_12_pll
PLLを使ってCPUを72MHzで動作させている。sample1の動作を確認済み。

* step_11_timer
TIMER3を使ってシステムタイマーを実装した。LED点滅プログラムで試験済み。

* step_10_vic
割り込みまわりの初期化を追加し、割り込み出入り口処理、割り込み
ベクトルの処理をVICを使用するものに切り替えた。

この版からlogging機能を使ってUARTにテキストメッセージが出力できる。
(2400bps)

* step_09_ld
lpc2388_sram.ldを修正し、IntegratorからLPC2388にメモリマップを
変更した。メモリマップは05_vic_timerから持ってきたものを修正して
しようした。

Integrator依存部はGDB Stubの存在を仮定していたため、
メモリマップをLPC2388に合わせるとメモリがあふれる。そのため、
Makefile.configを書き直してスタブを取り外している。また、
jsp/sample/sample1.hは、LPC2388がターゲットの場合、タスクあたり
8KBのスタック領域を割り当てていた。これは大きすぎてメモリに入らない
ため、タスクあたり1kBになるよう書き直した。

* step_08_serial
シリアル関連のコードを修正して、アドレスや割り込みハンドラ番号を
LPC2388にあわせた。

* step_07_sys_config_h
/jsp/config/armv4/cq_frk_nxp_arm/sys_config.h をCQ-FRK-NXP-ARM用に
軽く変更。ターゲット名とコメント、割り込みハンドラ番号の整理などを行った。
割り込みその物の処理に関わる部分や、シリアルはとりあえず置いておく。

* step_06_sys_defs_h
/jsp/config/armv4/cq_frk_nxp_arm/sys_defs.h をCQ-FRK-NXP-ARM用に
変更。なお、TARGET_NAMEマクロはsys_config.hに移した。

* step_05_build_only
cq_frk_nxp_armからintegrator関連ファイルを取り除き、とりあえずビルドが
通るだけの状態まで持ってきた。
コードはでたらめなので動作はしない。SIO関連は、汎用UARTモジュールと
入れ替えており、そのため、Makefile.dependの内容を書き換えている。また、
LDスクリプトのファイル名はlpc2388_sram.ldに名前を変更した。内容は
変えていない。
serial.cfgは、持ってきたファイルがTX/RX分離だったので、共通方式に
変更した。
のちに修正が必要になるところは、コメントに "TODO"と書いてある。

* step_04_copied_from_integrator:
integratorのシステム依存部をコピーして、cq_frk_nxp_armシステム依存部
とした。この状態でビルドはできるが、生成されるのは当然intengratorで
走るコードである。以降の作業の起点となるタグである。

* step_03_codesourcery:
Codesourcery g++ lite 2009Q1 のGNUツールチェーンでビルドができるよう、
jsp_study/config/armv4/Makefile.config のTARGETマクロを修正した。
このタグの版では、-C arvm4 -S integrator のビルドが可能である。

* step_02_gpp43:
g++ ver 4.3.xでビルドができるよう、コンフィグレータのソースコードの
一部に変更を加えた。この変更無しでも古いg++であればビルドはできる。

jsp_study/README_JSP_STUDY と jsp_study/CHANGES_JSP_STUDYを
加えた。

* step_01_original:
TOPPERS/JSP 1.4.3のソースコードのエンコードをEUC_jpからUTF8に変更
したもの。その他の修正は行っていない。