WonderWitch 技術情報 2000/11/01

2000年11月1日公開の技術情報です。

ANKフォントを設定してしまうと元に戻せませんでした

テキスト画面BIOSの機能、TEXT_SET_ANK_FONTを用いてANKフォントを設定してしまうと、 プログラム終了まで元に戻せないという問題がありました。

システムが提供するフォントを利用するよう設定を初期化する機能を用意し、 ライブラリ関数 text_reset_ank_font() として提供しました。

また、この関数のプロトタイプ宣言を sys/text.h に追加しました。

修正されたファイルをダウンロードページから取得できるようにしました。

ダウンロードページ


lcd_get_segments()関数に不具合がありました

ライブラリ関数、lcd_get_segments()に不具合があり正しく動作しませんでした。

不具合を修正した関数を含むライブラリを準備し、 修正されたファイルをダウンロードページから取得できるようにしました。

ダウンロードページ


SYS_INT_TIMER_COUNTUP割り込み要因を正しくハンドリングできませんでした

システム制御BIOSの機能、SYS_INTERRUPT_SET_HOOKを利用する際に、 割り込み要因としてSYS_INT_TIMER_COUNTUPを指定すると正しく割り込みを取得できませんでした。

この不具合に対応したFreyaOSを準備し、 修正されたファイルをダウンロードページから取得できるようにしました。

ダウンロードページ


電源ON時のシェルリジューム起動を抑制するオプションを用意しました

FreyaOSの起動時にシェルのリジュームを抑制する機能を用意し、 対応したFreyaOSのバイナリーファイルをダウンロードできるようにしました。 また、この機能の具体的な使い方を説明するドキュメントを技術情報として公開しました。

ダウンロードページ
シェルリジューム抑制機能の説明


シンプルモード時に$MEG_AUTORUNをスキップするようにしました

シンプルモードでデフォルトシェルMegを起動する場合でも/rom0/init.rcの記述内容は無視されず、 $MEG_AUTORUNにしたがってユーザプログラムを起動していました。 このため、$MEG_AUTORUNで起動するプログラムに終了手段がない場合、 通常の手順でMegを起動することができなくなるという問題がありました。

この問題を解決するため、シンプルモード時には$MEG_AUTORUNによる指定を無視するよう変更しました。

この変更に対応したFreyaOSを準備し、修正されたファイルをダウンロードページから取得できるようにしました。

ダウンロードページ


ILinfoのメンバーをアクセスするマクロを用意しました

ILの共通機能、IL#_get_info()関数が返すILinfo構造体のメンバーは、 farポインタが格納されているため、そのままアクセスしても正しいアドレスが得られませんでした。

この問題を解決するため、IL#_get_info()関数の返すILinfo構造体へのポインタから 各メンバーをアクセスするマクロをsys/indirect.hに提供しました。

修正されたファイルをダウンロードページから取得できるようにしました。

ダウンロードページ


ディスプレイモード毎の定義可能キャラクタ数に関する説明がありませんでした

ディスプレイモードによっては、定義可能なキャラクタの最大数が128個になる件に関する説明がドキュメントにありませんでした。 この件に関する説明を技術情報ページに掲載しました。

ディスプレイモード毎の定義可能キャラクタ数に関する説明


Copyright (C) 2000 Qute Corporation. All rights reserved.
Copyright (C) BANDAI 2000