# B-Free プロジェクトアーカイブ

> B-Free プロジェクトの成果物です。

- IBMPC (互換機) 版

  - version 0.0.1 1996/07/22 source
    ITRON をロードし、ITRON からキーボード入力ができる状態になった。

  - version 0.0.2 1996/07/22 source
    Version 0.0.1 に BTRON の make 環境を追加した。

  - version 0.0.3 1996/07/22 source
    Version 0.0.2 に ITRON/pc98/pc98.h の登録を追加した。

  - version 0.0.4 1996/07/22 source
    Version 0.0.3 に ITRON/pc98/*.c の登録を追加した。

  - version 0.0.5 1996/07/22 source
    Version 0.0.4 に ITRON/io/*.c の登録を追加した。

  - version 0.0.6 1996/07/22 source
    Version 0.0.5 に BTRON/make/getsize の登録を追加した。

  - version 0.0.7 1996/07/23 source
    タイマー制御の追加。ただし、また未完成。

  - version 0.0.8 1996/07/23 source
    Version 0.0.7 には boot の変更がなかったので追加した。 (インターバルタイマの設定には boot の処理が必要のため。... なぜ？)

  - version 0.0.9 1996/07/24 source
    Version 0.0.8 には、ITRON/i386/interrupt.s の修正が含まれていなか ったので、それを入れた。

  - version 0.0.10 1996/07/24 source
    以下の変更を行った。
    1. 割り込みの初期化をきちんと行うようにした(これまでは、ITRON 内では初期化が正常に行われていなかった)。この変更に伴なって Version 0.0.8 の変更を 2nd boot から削除した。
    2. インターバルタイマを 10ms 毎に動かすように変更した(これまで は、1ms 毎になっていた)。
    3. port manager をカーネル (kernel/BTRON/make/btron) に組み込 んだ。
    4. キーボードにて '=' + Shift を押したとき、これまでは '=' し か出ていなかったが、正常に '+' を出るように変更した。
    5. カーネルに ITRON 以外のモジュールが入っているときに、起動時 に実行するように処理を加えた (PC9801 版では以前からある機能)。
    6. make 環境に port manager と kernlib の作成環境を追加した。

  - version 0.0.11 1996/07/26 source
    以下の変更を行なった。
    1. boot プログラムがモジュールをメモリにロードするときに FD の ブロック番号を表示していた部分を削除した。
    2. console デバイスドライバを追加した。
    3. keyboard デバイスドライバを追加した。
    4. init プログラムを追加した。
    5. demo プログラムが実行できなくなった。

  - version 0.0.12 1996/07/29 source
    以下の変更を行なった。
    1. FD ドライバの追加 (BTRON/device/fd765a)
    2. init プログラムに openfd/readfd コマンドを追加。

           	   openfd <return>
           	   readfd <開始位置(バイト)> <return>

       と入力することによって、FD の任意の位置から 10 バイト読み取 ることができる。
    3. kernlib/dma.c の中で DMA の上位アドレス (16 から 23) を設定 する処理で 19 から 4 ビットを 0 クリアしていた。これでは、 DMA の転送処理が 1M バイト以上の領域には行えない。そこで、 19 から 4 ビットを 0 クリアしないようにした。

  - version 0.0.13 1996/08/12 source
    IDE から立ち上げるための改良を行った。 主な変更は以下のとおり：
    1. 1stboot として IDE HD から立ち上げるための 1stboot_hd を作成した。
    2. 2ndboot に IDE 操作用のモジュール (ide.c/ide.h) を追加した。
    3. 2ndboot のコマンドに ideboot を追加した。

  - version 0.0.14 1996/08/13 source
    メモリを 16MB までしか認識していなかったのを 256MB まで認識で きるように変更した。

  - version 0.0.15 1996/10/30 source
    ITRON 中心核に vget_csl システムコールを追加。このシステムコー ルは、現在のカーソル位置を返す。ただし、ITRON 中心核がコンソー ルに直接表示している時のみ使用できる。
    BTRON マネージャ用のディレクトリ (kernel/BTRON/manager) を追加。

  - version 0.0.16 1996/11/6 source
    POSIX マネージャのディレクトリを追加。 kernel/POSIX/manager

  - version 0.0.17 1996/11/6 source
    IDE デバイスドライバの登録。 kernel/BTRON/device/ide

  - version 0.0.18 1996/11/6 source
    以下の変更を行った。
    1) vset_cns システムコールの追加。
    2) カーネルからの出力をコンソールデバイスドライバを介して行うよう
    に変更した。

  - version 0.0.19 1996/11/16 source
    以下の変更を行った。
    1) vsys_msc システムコールの追加。
    2) init プログラムに reset と halt コマンドを追加した。
    3) POSIX 環境の大幅見直しを行った。
    4) POSIX 環境での最初のファイルシステム (SFS) のためのツール
    (mkfs/statfs) を作成した。

  - version 0.0.20 1997/4/6 source
    OS に ELF 形式の実行ファイルを使用できるようにした。 (OS ファイルを作成時に ELF 形式の実行ファイルから a.out 形式に 変換するようにした)

  - version 0.0.21 1997/5/11 source
    IDE ドライバの中身を作成。

  - version 0.0.22 1997/6/30 source
    ブートプログラムをすべて ELF モードでコンパイルするようにした。 今までは、オブジェクトは a.out 形式でコンパイルしていた。 (-b i486-linuxout を指定していた) HD からのブート処理を修正。SFS ファイルシステムを認識するように した。 今までは、HD からのブートはファイルシステムではなく、パーティシ ョンの先頭のブロックから読み込んでいた。

  - version 0.0.23 1997/6/30 source
    従来型の OS のロード処理を有効にした(2nd boot)。 (従来型のロード処理では、FD にベタに書き込まれた OS を読み込む)

  - version 0.0.24 1997/6/30 source
    BTRON MM のコメントの漢字コードを SJIS から EUC に変更した。 BTRON MM のメモリ管理の初期化処理時に page fault になっていたバグ を修正した。

  - version 0.0.25 1997/7/4 source
    POSIX マネージャの修正。 root ファイルシステムをマウントし、ファイルをオープンできるようにした。 ただし、Floppy disk drive の種類によっては、失敗する場合あり。 (FD ドライバにバグがある？)

  - version 0.0.26 1997/7/6 source
    POSIX マネージャおよび IDE ドライバの修正。
    POSIX ファイルシステム (SFS) の任意のファイルを open し、read でき るようにした。
    IDE ドライバをパーティションを認識して read できるように修正した。
    (ドライバへの要求メッセージ中の dd エントリを有効にした。このエント リを IDE ドライバは今までは無視していた)

  - version 0.0.27 1997/7/7 source
    POSIX マネージャ、IDE ドライバ、そして BTRON/init の修正。
    - POSIX マネージャ
      close、chmod、chown システムコールの中身を作成した。
    - IDE ドライバ
      write 時にもパーティション情報を意識するよう変更した。
      (まだ、テスト不十分)
    - BTRON/init
      POSIX 関係の処理のうち、プリミティブなものを posix_if.c に移
      動した。なお、posix_if.c は新規作成したファイル。

  - version 0.0.28 1997/7/9 source
    POSIX マネージャの修正。
    psc_getegid_f、psc_geteuid_f、psc_getgid_f、psc_getuid_f、psc_rewind_f の各関数の中身を作成した。

  - veriosn 0.0.29 1997/10/12 source
    POSIX lowlib の追加。
    Console ドライバにグラフィック表示の機能を追加。
    POSIX マネージャにファイル write 処理を追加した。
    (write システムコール)

  - veriosn 0.0.30 1997/10/18 source
    kernel/BTRON/kernlib/dma.c を変更。
    (I/O -> memory の処理を正常にできるようにした)

  - veriosn 0.0.31 1997/10/23 source
    - kernel/POSIX/manager/syscall.c
      不要な関数 psc_fseek_f (), psc_fstat_f () を削除した。
      psc_rewinddir_f () の中身を作成した。
      psc_rmdir_f () の中で使っているパラメータの構造体が
      par_remove だったので、par_rmdir に変更した。
    - kernel/POSIX/manager/posix_syscall.h
      struct psc_rewinddir, struct psc_rmdir の中身を作成した。
    - kernel/POSIX/manager/process.c
      proc_set_gid () を作成した。

  - veriosn 0.0.32 1997/10/24 source
    - kernel/POSIX/manager/以下の次のファイルを更新。
      .depend Makefile elf.h exec.c filesystem.c memory.c posix.h
      posix_mm.h posix_proc.h posix_syscall.h process.c syscall.c vmtree.c
      主に exec システムコールの処理を追加した。
    - kernel/BTRON/kernlib/sys_task.c
      関数 vcre_tsk() を追加した。この関数は、タスク ID を自動的に割り当て
      る以外は cre_tsk() と同様の処理を行う。
    - kernel/BTRON/kernlib/sys_virtual.c
      関数 vunm_reg() を追加した。この関数は、仮想メモリページのアンマップを行う。

  - veriosn 0.0.33 1997/10/25 source
    POSIX マネージャに fork 関係の処理を追加した。

  - veriosn 0.0.34 1997/10/28 source
    NE2000 ドライバの(ちょっとした)修正。
    各種ヘッダファイルの変更。

  - veriosn 0.0.35 1997/11/10 source
    NE2000 ドライバの変更 NE2000 アダプタの SA_PROM の読み取り処理の追加。 1 フレーム分のデータの書き込み処理の追加。

- PC9801版
  - version 0.1.1 source

  - version 0.1.2 source

- 開発用のツール類
  - 8086用アセンブラ/リンカ
  - カーネル作成用

Copyright (C) 1996,1997 B-Free Project