CB030 Memory Map

The memory map of CB030 at reset is as follow:

  • EPROM from 0x0 to 0x3FFFFFF, the EPROM is 512K (0x0-0x7FFFF), the memory is aliased every 512K up to 0x3FFFFFF.
  • RAM from 0x4000000 to 0xBFFFFFF. If the DRAM is single bank 16 meg DRAM, it is located at 0x4000000-0x5000000 and aliased three time to 0x8000000. If the DRAM is 64 meg, then it is located at 0x4000000-0x7FFFFFF. If the DRAM is 128meg it is located from 0x4000000-0xBFFFFFF.
  • I/O from 0xFFFF0000 to top of memory
    • 68681 address is 0xFFFFF000-0xFFFFFFFF
    • Compact flash interface is 0xFFFFE000-0xFFFFEFFF
    • RAM/ROM swap register is 0xFFFF8000-0xFFFF8FFF, any access (read or write) to 0xFFFF8000 will cause EPROM to swap memory map with first bank of DRAM such that EPROM is located at 0x4000000-0x7FFFFFF and DRAM that was formerly located from 0x4000000-0x7FFFFFF is now located at 0x0-0x3FFFFFF

EQU template for 68681

DUART    equ $FFFFF000    * base address of 68692 DUART
MRA    equ $FFFFF000    * mode reg A
SRA    equ $FFFFF002    * status A (read)
CSRA    equ $FFFFF002    * clock select reg (write)
CRA    equ $FFFFF004    * command register (write only)
RHRA    equ $FFFFF006    * Rx Hold reg A (read)
THRA    equ $FFFFF006    * Tx Holding reg (write)
IPCR    equ $FFFFF008    * Input port change reg (read)
ACR    equ $FFFFF008    * Aux control reg (write)
ISRD    equ $FFFFF00A    * interrupt status reg (read)
IMRD    equ $FFFFF00A    * interrupt mask reg (write)
CTU    equ $FFFFF00C    * Counter/timer upper (read)
CTL    equ $FFFFF00E    * counter/timer lower (read)
CTUR    equ $FFFFF00C    * Counter/timer preload upper (write)
CTLR    equ $FFFFF00E    * counter/timer preload lower (write)
MR1B    equ $FFFFF010    * mode reg B
SRB    equ $FFFFF012    * status reg B
RHRB    equ $FFFFF016    * Rx holding reg B
IVRD    equ $FFFFF018    * interrupt vector reg
STOPCTR    equ $FFFFF01E    * stop counter command reg (read)
STARTCTR equ $FFFFF01C    * start counter command reg (read)
SETOPR    equ $FFFFF01C    * bit set output register bits (write)
CLROPR    equ $FFFFF01E    * bit clear output register (write)
OPCR    equ $FFFFF01A    * output configuration register(write)

EQU template for CF interface

CFdata  equ $FFFFE000       * CF data register
CFerr   equ $FFFFE001       * CF error reg
CFsectcnt equ $FFFFE002      * CF sector count reg
CF07    equ $FFFFE003       * CF LA0-7
CF815   equ $FFFFE004       * CF LA8-15
CF1623  equ $FFFFE005       * CF LA16-23
CF2427  equ $FFFFE006       * CF LA24-27
CFstat  equ $FFFFE007       * CF status/command reg
builderpages/plasmo/tiny030/cb030/cb030memmap.txt · Last modified: 2020/01/23 09:47 by plasmo
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0