
Filer
Filer is a resident application that moves between directories by using a cursor pointer and side buttons (4 buttons) and executes the target application that is associated with the extensions.
Filer also has many features such as power management, alarm event, time correction, file transfer between onHands/Ruputers, battery capacity monitoring and etc.

The communication with PC is handled by the execution file (Rshell) within MROM that is called "remote shell".  Filer executes this remote shell (Rshell) when the serial connection by using docking station or infrared remote connection is established.  For more information, refer to <RshellManu.txt> (located in ..\rshell\manual).


[Initialization]
 After OS is started, Filer is started as a child process by using the shell description in A:\config.sys file stored in MROM.

Filer is stored in MROM.
A program is running within MROM and the main memory (SRAM) 0x109B00 - 0x10D6FF uses this as a Filer resource data area.


[Overview of Filer Process]
Major process routine of Filer can be divided into the following groups.

 Directory structure display part
 * List/icon display

 Button (key) input event process part
 * Keep pressing key process
 * EL back light ON
 * Operation beep sound
 * Time check (keep pressing the FILER/TIME button)
 * Connection with docking station
 * Detection of various events

 File execution part
 * exf file execution
 * the associated file execution

 Alarm process part
 * Weekly alarm (Day of week, hour and minute)
 * User alarm (year, month, day, hour and minute) starting a child process
 * User alarm (year, month, day, hour and minute) starting a user application

 File transfer part
 * Send/Receive

 Remote shell communication part
 * Serial remote by using docking station
 * Infrared remote

 Battery capacity/low voltage monitoring part
 * Alarm event generation feature

 A subroutine that executes the Filer features while an application is running (so-called mini Filer) display part
 * Next application execution event generation feature

 Power management process part
 * Automatic OFF
 * Automatic timer


 Others
 * Time correction
 * Menu functions
 *    :



[Various Events]
Beside the buttons (key) that Filer controls, there are following events.

* User alarm event
   Monitor by a year, month, day, hour, minute unit.

* Weekly alarm event
   Monitor by a day of week, hour, minute unit.

* Automatic Power ON/OFF
   LCD ON/OFF by power management

* Battery capacity/voltage warning event (BLD event)
   Monitoring is repeated by the specified period.

* Automatic return event
   When a user does not operate any button more than 2 minutes on Menu screen, the event is returned to the original one.

* Power saver event
   Start displaying the saver display.

* 1Hz event
   1Hz event can be generated by turn the event flag switch ON.
   For more information, refer to <rupsysLibManu(c).txt> Keyin().

* Count down timer event
   1Hz event can be generated by turn the event flag switch ON.
   For more information, refer to <rupsysLibManu(c).txt> Keyin().

* Battery rear cover open event
   The battery rear cover is opened.

These events are generated by using the event features in bi_getbtn() functions.  For more information, refer to <wbiosLibManu(c)/(ASM).txt>.



[Application Execution]
* The following chart is the relationship between Filer and application that onHand/RuputerAPI is not used.

In other words, when you create an application by using only PsDOS library and W-BIOS library functions.

                      Application
      Filer            execution      Application
  +------------------+ ->->->->->->+----------------+ 
  |Application       |<-<-<-<-<-<- |  Application   |
  |execution         |  Normal     |  process       |
  |                  | Termination |                |
  |Next application  |             |                |
  |execution         |             +----------------+ 
  |Another appli-    |
  |cation execution  |
  +------------------+ 

In this case, various feature and events of Filer are not handled until the currently running application is terminated.

->The sample application of this format is stored in the following directory.
     "..\RupSDK\sample1"

->The basic is this format.  Therefore, an application is created from here, then in the final stage, you should incorporate Filer functions by using onHand/RuputerAPI library.


* The following is the relationship between Filer and application that onHand/RuputerAPI is used.

In other words, when you create an application by using only PsDOS library, W-BIOS library and onHand/RuputerAPI library functions.

For example, when you press the Filer button (key) in short period, you can call a mini Filer (Subroutine that executes the Filer features while an application is running).

Under this condition, if you press Enter key to execute the next application, a return value = -1 is returned from this subroutine that requests you to terminate the application.

In this case, you should terminate the application at your own responsibility.  When you terminate the application, Filer starts the next application automatically.

                     Application
      Filer           execution     Application
  +----------------+ ->->->->->->+----------------+ 
  | Application    |<-<-<-<-<-<- |  Application   | Alarm  +-------------+ 
  | execution      |   Normal    |   process      |->->->->|             |
  |                | Termination |                |        |child process|
  |Next application|             |                |<-<-<-<-|             |
  |execution       |<-<-<-<-<-<-<-                |        +-------------+ 
  |Another appli-  | Terminated  | ^              |
  |cation execution| immediately +-^--------------+ 
  +----------------+               ^          v ^
                                   ^          v ^
                       Application ^          v ^
    Mini Filer         termination ^          v ^
  +-----------------+  request     ^          v ^
  |Next application >->->->->->->->^          v ^
  |event issue!!    |                      Filer button (key)
  |                 |                         v ^
  |                 |<-<-<-<-<-<-<-<-<-<-<-<-<- ^
  +-----------------+->->->->->->->->->->->->->->


In addition, event process explained in [Various Events] can be handled.  We explain it later.

->The sample application of this format is stored in the following directory.
     "..\RupSDK\sample2"

->The main purpose is to correspond with the Filer event generation.
  The basic operation is created by only W-PsDOS library that ignores this event.  Then, you should incorporate Filer functions by using onHand/RuputerAPI library in the final stage. 

===============================================================================
 Copyright (c) 1998-1999.  Seiko Instruments Inc.  All rights reserved. 
===============================================================================
