HD404889/HD404899/HD404878/HD404868 Series
28
RAM-mapped register area ($000 to $03F):
Interrupt control bit area ($000 to $003)
This area consists of bits used for interrupt control. Its configuration is shown in figure 3. Individual
bits can only be accessed by RAM bit manipulation instructions (SEM/SEMD, REM/REMD,
TM/TMD). There are restrictions on access to certain bits. The individual bits and instruction
restrictions are shown in figure 4.
Special register area ($004 to $01F, $024 to $03F)
This area comprises mode registers and data registers for external interrupts, the serial interface, timers,
LCD, A/D converter, etc., and I/O pin data control registers. Its configuration is shown in figures 2 and
5. These registers are of three kinds: write-only (W), read-only (R), and read/write (R/W). The
SEM/SEMD and REM/REMD instructions can be used on the LCD control register (LCR: $02C) and
the third bit of buzzer mode register (BMR3: $02E, 3), but RAM bit manipulation instructions cannot
be used on the other registers.
Register flag area ($020 to $023)
This area consists of the DTON and WDON flags and interrupt control bits. Its configuration is shown
in figure 3. Individual bits can only be accessed by RAM bit manipulation instructions (SEM/SEMD,
REM/REMD, TM/TMD). There are restrictions on access to certain bits. The individual bits and
instruction restrictions are shown in figure 4.
Memory register (MR) area ($040 to $04F):
In this data area, the 16 memory register digits (MR(0) to MR(15)) can also be accessed by the register-
register instructions LAMR and XMRA. The configuration of this area is shown in figure 6.
LCD data area: $050 to $06F (HD404889/HD404899/HD404878 Series)
$050 to $067 (HD404868 Series)
This 32-digit data area stores data to be displayed on an LCD. Data written in this area is automatically
outputed to segments as display data. "1" data indicates "on" and "0" data "off" (see the section of the LCD
circuit for details).
Data area: $090 to $38F (HD404889/HD404899/HD404878 Series)
$090 to $1BF (HD404868 Series)
For the 464 digits from $090 to $25F, the bank can be switched according to the value of the bank register
(V: $03F) (figure 7). The bank register value must always be set when accessing the area from $090 to
$25F. The data area from $260 to $38F can be addressed without a bank register setting.
Stack area ($3C0 to $3FF):
This is the stack area used to save the contents of the program counter (PC), status flag (ST), and carry flag
(CA) when a subroutine call (CAL or CALL instruction) or interrupt handling is performed. As four digits
are used for one level, the area can be used as a subroutine stack with a maximum of 16 levels. The saved
data and saved status information are shown in figure 6. The program counter is restored by the RTN and
RTNI instructions. The status and carry flags are restored by the RTNI instruction, but are not affected by
the RTN instruction. Any part of the area not used for saving can be used as a data area.