;// 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