File name a640m010100.dtx.txt# The main part of this file describes the D5100 "A" firmware, ver 1.01
#
# A special part is also included but commented out (can be disassembled using a640m010100updatecode.dtx.txt):
# - the copy of code @0xBFC0A000-0xBFC0ED69 to RAM 0xFFFF4000-0xFFFF8D69 performed by code 0xBFC1C742-0xBFC1C76A is described in -i and -m
############################## File map: D5100
-i 0xBFC00000-0xBFCBFFFF=0x00000000
#-i 0xFFFF4000-0xFFFFFFFF=0x10000000
############################### Memory map:
-m 0xBFC00000-0xBFC0000F=CODE:32
-m 0xBFC00380-0xBFC003CF=CODE:32
-m 0xBFC00400-0xBFC004CB=CODE:32
#-m 0xBFC004CC-0xBFC004FF=DATA:W
-m 0xBFC00500-0xBFC0084B=CODE:32
#-m 0xBFC0084C-0xBFC00863=DATA:W
-m 0xBFC00864-0xBFC0095B=CODE:16
#-m 0xBFC0095C-0xBFC009A3=DATA:W
-m 0xBFC009A4-0xBFC02BE7=CODE:32
-m 0xBFC02BE8-0xBFC03F8B=CODE:16
# Indirection table for interrupts using 16-bit ISA
-m 0xBFC03F90-0xBFC041CF=DATA:L
# Interrupt table
-m 0xBFC041D0-0xBFC043CF=DATA:L
# Unknown data with some indirection tables
-m 0xBFC043D0-0xBFC0444F=DATA:L
# exception table
-m 0xBFC04450-0xBFC0448F=DATA:L
-m 0xBFC04490-0xBFC044BB=DATA:L
# TCB Task table
# Table defining ITRON Tasks (Table of 0xD records of 0x14 bytes)
-m 0xBFC044BC-0xBFC0478B=DATA:L
## 0xFF area
# Copyright msg
-m 0xBFC07FB0-0xBFC07FDF=DATA:L
# Area @0xBFC08000-0xBFC08FFF is copied to RAM 0xFFFF0000-0xFFFF0FFF
#-m 0xBFC08000-0xBFC08FFF
# Area @0xBFC09000-0xBFC09FFF is copied to RAM 0xFFFF1000-0xFFFF1FFF
#-m 0xBFC09000-0xBFC09FFF
# Area @0xBFC0A000-0xBFC0ED69 is copied to RAM 0xFFFF4000-0xFFFF8D69 by the code at 0xBFC1C742-0xBFC1C76A
-m 0xBFC0A000-0xBFC0A007=DATA:L
# Do not disassemble, because code is at wrong address
#-m 0xBFC0A008-0xBFC0A12B=CODE:32
#-m 0xBFC0A12C-0xBFC0D66F=CODE:16
-m 0xBFC0D9F8-0xBFC0ED43=CODE:32
-m 0xBFC0ED44-0xBFC0ED69=DATA:L
-m 0xBFC10000-0xBFC1417D=CODE:16
-m 0xBFC14180-0xBFC15AB7=CODE:32
-m 0xBFC15AB8-0xBFC8DD3B=CODE:16
# Mostly pointers
-m 0xBFC8DD3C-0xBFC96F9F=DATA:L
-m 0xBFC971A0-0xBFC971A3=DATA:L
-m 0xBFC97304-0xBFC9764B=DATA:L
-m 0xBFC98E00-0xBFC9927B=DATA:L
-m 0xBFC9A9F0-0xBFC9AAD7=DATA:L
-m 0xBFC9AB8C-0xBFC9AC0B=DATA:L
-m 0xBFC9C784-0xBFC9C803=DATA:L
-m 0xBFC9CBD0-0xBFC9CBEF=DATA:L
-m 0xBFC9D360-0xBFC9D36B=DATA:L
-m 0xBFC9E45C-0xBFC9E57F=DATA:L
## 0xFF area
#exception handler area
# -m 0xFFFF3E8C-0xFFFF3EAC=DATA
#####################################################
## Code @0xBFC0A000-0xBFC0ED69 is copied to RAM 0xFFFF4000-0xFFFF8D69 by the code at 0xBFC1C742-0xBFC1C76A
##
#-m 0xFFFF4000-0xFFFF4007=DATA:L
#-m 0xFFFF4008-0xFFFF412B=CODE:32
#-m 0xFFFF412C-0xFFFF766F=CODE:16
##0xFF
##-m 0xFFFF7670-0xFFFF7977=DATA:L
#
#####################################################
############################### Symbols
-s 0xBFC00000=reset_or_nmi
-s 0xBFC00380=exception_handler
-s 0xBFC00400=interrupt_handler
-s 0xBFC00490=maybe_null
-s 0xBFC00634=fl |