                save
                listing off   ; kein Listing über diesen File

;****************************************************************************
;*                                                                          *
;*   AS 1.41 - Datei REG78K0.INC                                            *
;*   								            *
;*   Sinn : enthält Registerdefinitionen für 78K0 (uPD78070A)               *
;* 									    *
;*   letzte Änderungen :  1.10.1996                                         *
;*                                                                          *
;****************************************************************************

                ifndef  regz78k0inc      ; verhindert Mehrfacheinbindung

reg8k0inc       equ     1

                if      (MOMCPUNAME<>"78070")
                 fatal  "Falscher Prozessortyp eingestellt: nur 78070 erlaubt!"
		endif


                if      MOMPASS=1
                 message "78K0-Register-Definitionen (C) 1996 Alfred Arnold"
		endif

;----------------------------------------------------------------------------
; CPU-Kern

SP              equ     0ff1ch          ; Stackpointer

PSW             equ     0ff1eh          ; Statuswort

;----------------------------------------------------------------------------
; Taktgenerator

PCC             equ     0fffbh          ; Steuerung Prozessortakt

OSMS            equ     0fff2h          ; Taktteiler ein/ausschalten

OSTS            equ     0fffah          ; Wartezeit, um nach STOP-Auflösung

;----------------------------------------------------------------------------
; Bus-Interface

EBTS            equ     0ff3fh          ; Multiplex an/aus (fest auf aus)

IMS             equ     0fff0h          ; Größe internes RAM (fest 1K)

MM              equ     0fff8h          ; Wait-State-Steuerung

;----------------------------------------------------------------------------
; Interrupt-Steuerung

INTM0           equ     0ffech          ; Flankenwahl INTP0...INTP2
INTM1           equ     0ffedh          ; Flankenwahl INTP3...INTP6
SCS             equ     0ff47h          ; Auswahl Abtastrate INTP0

IF0L            equ     0ffe0h          ; Interrupts aufgetreten ?
IF0H            equ     0ffe1h
IF0             equ     IF0L
IF1L            equ     0ffe2h

MK0L            equ     0ffe4h          ; Maskierungsregister
MK0H            equ     0ffe5h
MK0             equ     IF0L
MK1L            equ     0ffe6h

PR0L            equ     0ffe8h          ; Prioritäten
PR0H            equ     0ffe9h
PR0             equ     IF0L
PR1L            equ     0ffeah

;----------------------------------------------------------------------------
; Ports

P0              equ     0ff00h          ; Datenregister Port 0
PM0             equ     0ff20h          ; Datenrichtungsregister Port 0

P1              equ     0ff01h          ; Datenregister Port 1
PM1             equ     0ff21h          ; Datenrichtungsregister Port 1

P2              equ     0ff02h          ; Datenregister Port 2
PM2             equ     0ff22h          ; Datenrichtungsregister Port 2

P3              equ     0ff03h          ; Datenregister Port 3
PM3             equ     0ff23h          ; Datenrichtungsregister Port 3

P6              equ     0ff06h          ; Datenregister Port 6
PM6             equ     0ff26h          ; Datenrichtungsregister Port 6

P7              equ     0ff07h          ; Datenregister Port 7
PM7             equ     0ff27h          ; Datenrichtungsregister Port 7

P9              equ     0ff09h          ; Datenregister Port 9
PM9             equ     0ff29h          ; Datenrichtungsregister Port 9

P10             equ     0ff0ah          ; Datenregister Port 10
PM10            equ     0ff2ah          ; Datenrichtungsregister Port10

P12             equ     0ff0ch          ; Datenregister Port 12
PM12            equ     0ff2ch          ; Datenrichtungsregister Port 12

P13             equ     0ff0dh          ; Datenregister Port 13
PM13            equ     0ff2dh          ; Datenrichtungsregister Port 13

PUOH            equ     0fff3h          ; Pull-Up-Register Port 0..7
PUOL            equ     0fff7h          ; Pull-Up-Register Port 8..13

;----------------------------------------------------------------------------
; Timer

TM0             equ     0ff14h          ; Zählwert Timer 0
CR00            equ     0ff10h          ; Vergleichs/Fangregister 0 Timer 0
CR01            equ     0ff12h          ; Vergleichs/Fangregister 1 Timer 0
TCL0            equ     0ff40h          ; Taktauswahl Timer 0
TMC0            equ     0ff48h          ; Betriebsart Timer 0
CRC0            equ     0ff4ch          ; Steuerung Fang/Vergleichsregister Timer 0
TOC0            equ     0ff4eh          ; Ausgabesteuerung Timer 0

TM1             equ     0ff18h          ; Zählwert Timer 1
CR10            equ     0ff16h          ; Vergleichs/Fangregister Timer 1
TCL1            equ     0ff41h          ; Taktauswahl Timer 1
TMC1            equ     0ff49h          ; Betriebsart Timer 1

TM2             equ     0ff19h          ; Zählwert Timer 2
CR20            equ     0ff17h          ; Vergleichs/Fangregister Timer 2
TCL2            equ     0ff42h          ; Taktauswahl Timer 2 / Uhren-Timer / Watchdog / Summer
TMC2            equ     0ff4ah          ; Betriebsart Timer 2 / Uhren-Timer

TMS             equ     TM1             ; Zählwert Timer 1+2 im 16-Bit-Modus
TOC1            equ     0ff4fh          ; Ausgabesteuerung Timer 1+2

TM5             equ     0ff51h          ; Zählwert Timer 5
CR50            equ     0ff50h          ; Vergleichsregister Timer 5
TCL5            equ     0ff52h          ; Taktauswahl Timer 5
TMC5            equ     0ff53h          ; Betriebsart Timer 5

TM6             equ     0ff55h          ; Zählwert Timer 6
CR60            equ     0ff54h          ; Vergleichsregister Timer 6
TCL6            equ     0ff56h          ; Taktauswahl Timer 6
TMC6            equ     0ff57h          ; Betriebsart Timer 6

;----------------------------------------------------------------------------
; Watchdog

WDTM            equ     0fff9h          ; Betriebsart

;----------------------------------------------------------------------------
; serielle Schnittstelle

; Kanal 0
SIO0            equ     0ff1ah          ; Datenregister
SVA             equ     0ff62h          ; Slave-Adresse
TCL3            equ     0ff43h          ; Taktauswahl Kanal 0/1
CSIM0           equ     0ff60h          ; Betriebsart
SBIC            equ     0ff61h          ; Bus-Steuerung
SINT            equ     0ff63h          ; Interrupt-Timing

; Kanal 1
SIO1            equ     0ff1bh          ; Datenregister
ADTP            equ     0ff6ah          ; Adreßzeiger bei Blockempfang/versand
CSIM1           equ     0ff68h          ; Betriebsart
ADTC            equ     0ff69h          ; Steuerung Blockbetrieb
ADTI            equ     0ff6bh          ; Geschwindigkeit Blockversand

; Kanal 2
TXS             equ     0ff74h          ; Datenregister
RXB             equ     0ff74h
SIO2            equ     TXS
ASIM            equ     0ff70h          ; Schnittstellenparameter
ASIS            equ     0ff71h          ; Statusregister
CSIM2           equ     0ff72h          ; Betriebsart
BRGC            equ     0ff73h          ; Baudratenwahl

;----------------------------------------------------------------------------
; A/D-Wandler

ADCR            equ     0ff1fh          ; Ergebnisregister Wandlung

ADM             equ     0ff80h          ; Betriebsart

ADIS            equ     0ff84h          ; Umschaltung Ports als Analogeingänge

;----------------------------------------------------------------------------
; D/A-Wandler

DACS0           equ     0ff90h          ; Analogwert Wandler 0

DACS1           equ     0ff91h          ; Analogwert Wandler 1

DAM             equ     0ff96h          ; Betriebsart

;----------------------------------------------------------------------------
; Echtzeitausgabe

RTBL            equ     0ff30h          ; Ausgabedaten
RTBH            equ     0ff31h
RTPM            equ     0ff34h          ; Betriebsart
RTPC            equ     0ff36h          ; Steuerung

;----------------------------------------------------------------------------
; Vektoradressen

Vec_Reset       equ     0000h           ; Reset
Vec_INTWDT      equ     0004h           ; Watchdog
Vec_INTP0       equ     0006h           ; externe Interrupts
Vec_INTP1       equ     0008h
Vec_INTP2       equ     000ah
Vec_INTP3       equ     000ch
Vec_INTP4       equ     000eh
Vec_INTP5       equ     0010h
Vec_INTP6       equ     0012h
Vec_INTCSI0     equ     0014h           ; serielle Schnittstellen
Vec_INTCSI1     equ     0016h
Vec_INTSER      equ     0018h
Vec_INTSR       equ     001ah
Vec_INTCSI2     equ     Vec_INTSR
Vec_INTST       equ     001ch
Vec_INTTM3      equ     001eh           ; Uhren-Timer
Vec_INTTM00     equ     0020h           ; Timer
Vec_INTTM01     equ     0022h
Vec_INTTM1      equ     0024h           ; Vergleicher Timer 1
Vec_INTTM2      equ     0026h           ; Vergleicher Timer 2
Vec_INTAD       equ     0028h           ; A/D-Wandler
Vec_INTTM5      equ     002ah           ; Vergleicher Timer 5
Vec_INTTM6      equ     002ch           ; Vergleicher Timer 6
Vec_BRK         equ     003eh           ; BRK-Befehl

;----------------------------------------------------------------------------
; Speicheradressen

BUFRAM          equ     0fac0h          ; Puffer-RAM
BUFRAMEND       equ     0fadfh

IRAM            equ     0fb00h          ; internes RAM
IRAMEND         equ     0fedfh          ; dahinter sind die Register gemappt!

;----------------------------------------------------------------------------

                endif                   ; von IFDEF...
		restore                 ; wieder erlauben



