E.1. Bibliothek (BIBL.S)

 

;// dienstag, 20.februar 1990  16.17 uhr

;

; DATEI BIBL.S

; PROJEKT EDDI3

 

ADRE MACRO

 

FALSE EQU 0

TRUE EQU .NOT.FALSE

 

; PROGRAMM-OPTIONEN

GROSS EQU FALSE  VOLLBILDDARSTELLUNG

STEH EQU FALSE  STEHENDES BILD

 

; PROGRAMMPARAMETER

REPVAL EQU 100  REPEAT-ZAEHLER-WERT (TASTATUR-WARTEZEIT)

WTVAL EQU 50  LAUF-WARTESCHLEIFE  (TASTATUR-REPEAT-RATE)

 

OFFSET EQU -5  KORREKTURWERT FUER WPCAS

PIXEL EQU 80  ANZAHL PIXEL PRO BILD

ZEILEN EQU 72  ANZAHL ZEILEN PRO BILD

BILDER EQU 42  BILDER IM SPEICHER

UPOFF EQU 34  OFFSET ZUM OBEREN BILDSCHIRMRAND

LPOFF EQU 8  OFFSET ZUM UNTEREN BILDSCHIRMRAND

 

; BELEGUNG IO3PB

WPCAS EQU $01  PB0:  PRESET CAS

WP1 EQU $02  PB1:  PRESET ZEILE

WPRAS EQU $04  PB2:  PRESET RAS

CPIX EQU $08  PB3:  CPU/PICTURE UMSCHALTUNG

CSCPU EQU $10  PB4:  CPU-ZUGRIFF AUF RAM

RAMOE EQU $20  PB5:  OE-SPEICHER

RAMWE EQU $40  PB6:  WE-SPEICHER

RECRQ EQU $80  PB7:  RECORD-REQUEST

 

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

; I/O-ADRESSEN

IO3 EQU $2040  3. 6522 AUF TC12-CPU

IO3PB EQU IO3+0

IO3PA EQU IO3+1

IO3DB EQU IO3+2

IO3DA EQU IO3+3

IO3T1CL EQU IO3+4

IO3T1CH EQU IO3+5

IO3T1LL EQU IO3+6

IO3T1LH EQU IO3+7

IO3T2CL EQU IO3+8

IO3T2CH EQU IO3+9

IO3S EQU IO3+10

IO3A EQU IO3+11

IO3P EQU IO3+12

IO3I EQU IO3+13

IO3E EQU IO3+14

IO3O EQU IO3+15

 

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

 

; BILDSPEICHER-ADRESSEN

PMEM EQU $8000  PMEM: PAGE-MEMORY

PMCF EQU PMEM+0  PMEM: XILINX-CONFIGURATION

PMRAS EQU PMEM+0  PMEM: RAS-SETZPULS

PMCAS EQU PMEM+1  PMEM: CAS-SETZIMPULS

PMROW1 EQU PMEM+2  PMEM: ZEILEN-SETZPULS #1

 

PMCPIX EQU PMEM+4  PMEM: CPU-MODUL UMSCHALTEN

PMREC EQU PMEM+5  PMEM: REC-MODUS UMSCHALTEN

 

PMLUM EQU PMEM+8  PMEM: LUMINANZ

PMCRO EQU PMEM+9  PMEM: CHROMA

 

PMPORT EQU PMEM+11  PMEM: I/O-PORT

PMIRES EQU PMEM+12  PMEM: IRQ-RESET WIEDERGABE

 

 ENDM ;  ADRE

 

; **************************************************************

; BEFEHLS-MAKROS

; **************************************************************

VIERLSR MACRO

 LSR A

 LSR A

 LSR A

 LSR A

 ENDM

 

VIERASL MACRO

 ASL A

 ASL A

 ASL A

 ASL A

 ENDM

 

DREILSR MACRO

 LSR A

 LSR A

 LSR A

 ENDM

 

DREIASL MACRO

 ASL A

 ASL A

 ASL A

 ENDM

 

ZWEILSR MACRO

 LSR A

 LSR A

 ENDM

 

ZWEIASL MACRO

 ASL A

 ASL A

        ENDM

 

BNE_L MACRO N

 BEQ BNE&INDX

 JMP &N

BNE&INDX;

 ENDM

 

BEQ_L MACRO N

 BNE BEQ&INDX

 JMP &N

BEQ&INDX;

 ENDM

 

BCS_L MACRO N

 BCC BCS&INDX

 JMP &N

BCS&INDX;

 ENDM

 

BCC_L MACRO N

 BCS BCC&INDX

 JMP &N

BCC&INDX;

 ENDM

 

BVS_L MACRO N

 BVC BVS&INDX

 JMP &N

BVS&INDX;

 ENDM

 

BVC_L MACRO N

 BVS BVC&INDX

 JMP &N

BVC&INDX;

 ENDM

 

BMI_L MACRO N

        BPL        BMI&INDX

 JMP &N

BMI&INDX;

 ENDM

 

BPL_L MACRO N

 BMI BPL&INDX

 JMP &N

BPL&INDX;

        ENDM

 

; **************************************************************

; GLOBALE ADRESSEN

; **************************************************************

GLOBAL MACRO

;   START.S

 GLBL R0,R1,R2,R3,R4,R5,R6,R7  UNIVERSALREGISTER

 GLBL VMODE  VIDEOMODUS

;   IRQ.S

 GLBL IRQA  EINSPRUNG MASKIERBARER INTERRUPT

 GLBL NMIA  EINSPRUNG NICHT MASKIERBARER INTERRUPT

;   UNTER.S

 GLBL BIN2BCD  KONVERTIERUNG BINAER -> BCD

 GLBL        INCCAS                CAS-ADRESSE ERHOEHEN

 GLBL DECCAS  CAS-ADRESSE ERNIEDRIGEN

 GLBL INCRAS  RAS-ADRESSE ERHOEHEN

 GLBL DECRAS  RAS-ADRESSE ERNIEDRIGEN

 GLBL ICCAS  CCAS ERHOEHEN

        GLBL DCCAS  CCAS ERNIEDRIGEN

 GLBL        ICRAS                CRAS ERHOEHEN

        GLBL DCRAS  CRAS ERNIEDRIGEN

 GLBL ICRW1  ZEILE ERHOEHEN

 GLBL DCRW1  ZEILE ERNIEDRIGEN

 GLBL CCCAS  CAS-BEREICHSABFRAGE

 GLBL CCRAS  RAS-BEREICHSABFRAGE

 GLBL CCROW  ROW-BERECHSABFRAGE

 GLBL WAIT  WARTEN

 GLBL WTLAUF  WARTESCHLEIFE FUER LAUF

 GLBL CHSET  ZEICHENSATZ-TABELLE

 GLBL XILUP  XILINX-KONFIGURATION LADEN

 GLBL CCAS  CAS-ZAEHLER (OFFSET)

 GLBL CRAS  RAS-ZAEHLER (BILDNUMMER)

 GLBL CRW1  ZEILENZAEHLER

;   XILINX.S

 GLBL XILINXS  STARTADRESSE XILINX-DATEN

 GLBL XILINXL  LAENGE XILINX-DATEN

;   FREMD.S

 GLBL ANZR  ANZEIGEREGISTER DARSTELLEN

 GLBL TAAU  TASTATUR SCANNEN

 GLBL ANRE  ANZEIGEREGISTER

;   TAST.S

 GLBL ATINIT  ANZEIGE UND TASTATUR INITIALISIEREN

 GLBL CONIN  ZEICHEN VON TASTATUR EINLESEN

 GLBL        TASLOW                LOW-LEVEL-TASTATURFUNKTIONEN AUSFUEHREN

        GLBL ANZNEU  ANZEIGE AUFFRISCHEN

 GLBL IBUFB  SCRATCH-EINGABEREGISTER

 GLBL        ANZLED1         STATUS-LED'S

 

 ENDM ;  GLOBAL

 

 END