; -----------------------------------------------------------------------
; : RP.INC - include datoteka za projekt RP :
; : (C) 26.11.1990 Leon Kos, Cerknica cesta 4.maja 11a :
; -----------------------------------------------------------------------
PAGE 98 ;Nastavimo {tevilo vrstic na eno stran
;Skupne definicije za projekt REKLAMNI PANEL
X EQU 0DDh ;byte za sinteti~ne ukaze
Y EQU 0FDh ;byte za sinteti~ne ukaze
;Konfiguracijske definicije
VIDEOPORTS EQU 12 ;{tevilo portov displaya
VIDEOLINES EQU 9 ;{tevilo vrstic displaya
VIDEOPAGES EQU 2 ;{tevilo video strani
;I/O naslovi
P1 EQU 80h ;LS365 in LS374 I/O port
RTC EQU 40h ;Ura realnega ~asa
PIO EQU 00h ;Paralelni port
SIO EQU 0C0h ;Serijski port
VIDEO EQU VIDEOPORTS-1 ;Video MREQ port
;P1 365 bit maske - glej P1INMASK
INT1 EQU 00000010b ;detekcija prve vrstice
KCLK EQU 00000100b ;keyboard clock
KDATA EQU 00001000b ;keyboard data
LK1 EQU 01000000b ;skaka~ {t. 1
LK2 EQU 00100000b ;skaka~ {t. 2
LK3 EQU 00010000b ;skaka~ {t. 3
;P1 374 bit maske - glej P1OUTMASK
DSP EQU 00100000b ;DS signal
WDC EQU 00001000b ;Watch Dog Clock
KCLKD EQU 00000010b ;Keyboard Clock Data
KDATAD EQU 00000001b ;Kbd Data Data
NMIEN EQU 00010000b ;NMI enable
;Naslovi v RAMU
STACK EQU 8800h ;za~etek sklada in konec rama
RAMSTART EQU 8000h ;za~etek RAMa
VIDEORAM EQU 8100h ;za~etek Video spomina
PAGESIZE EQU (VIDEOPORTS+2)*VIDEOLINES
TXTBEG EQU VIDEORAM+VIDEOPAGES*PAGESIZE+VIDEOPORTS/2
TXTLAST EQU STACK-50;zadnji naslov za podatke
;Naslovi spremenljivk v RAMU
P1OUTMASK EQU 8000h ;byte maska za 374 port
P1INMASK EQU 8001h ;byte maka za 365 port
CHARS EQU 8002h ;kazalec na za~etek tabele oblike ~rk
CHARSDE EQU 8004h ;kazalec, kamor kopira PO_CHAR
CURDPAGE EQU 8006h ;aktivna stran video displaya
CURPAGEPTR EQU 8007h ;kazalec na trenutno video stran
TTYDLY EQU 800Ah ;Teletype mode scroll delay
SCRUPDNDLY EQU 800Bh ;delay za scroll gor ali dol
KEYSDOWN EQU 800Ch ;tipke INS=7,CAPS,NUM,SCRL,ALT,CTRL,LSH,RSH=0
KEYSTOGGLE EQU 800Dh ;tipke INS=7,CAPS,NUM,SCRL=4
TXTEND EQU 800Eh ;kazalec na konec podatkov
FLASHDLY EQU 8010h ;zakasnitev pri utripanju
TIMEDLY EQU 8011h ;zakasnitev pri izpisu casa
CPTR EQU 8012h ;cursor - teko~i kazalec na pozicijo v textu
TXTCRC EQU 8014h ;kontrolna vsota teksta
TIMECURSOR EQU 8016h ;pozicija kurzor pri editiranju ~asa
;RST labele
CLRWDT EQU 08h ;Brisi Watch Dog
;Makro ukazi
MOVI MACRO index, dest, data ;;Sinteti~ni Z80 ukaz.
DEFB index
LD dest,data
ENDM ;;primer MOVI X A, L
SWAP MACRO ;;Zamenja 4 bitna bloka v akumulatorju
REPT 4
rlca
ENDM
ENDM
TSTBIT MACRO bitmask,port
in a,(port)
and bitmask
ENDM
PUSHALL MACRO
push hl
push de
push bc
push af
ENDM
POPALL MACRO
pop af
pop bc
pop de
pop hl
ENDM
HEXASC MACRO
and 0fh ;Konverzija HEX v ASCII kodo
add a,90h
daa
adc a,40h
daa
ENDM
SETP1 MACRO bitmask
ld a,(P1OUTMASK) ; pri`ge bitmask na P1
or bitmask
ld (P1OUTMASK),a
out (P1),a
ENDM
CLRP1 MACRO bitmask
ld a,(P1OUTMASK) ; pri`ge bitmask na P1
and NOT bitmask
ld (P1OUTMASK),a
out (P1),a
ENDM