home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
World of A1200
/
World_Of_A1200.iso
/
programs
/
develop
/
as65
/
connect_c64
/
screen.asm
< prev
Wrap
Assembly Source File
|
1995-02-27
|
2KB
|
67 lines
;*****************************
;Datenübertragung AMIGA -> C64
;
;Screen Routinen
;*****************************
;===============================
;Texte ausgeben
;X-Reg. low Byte der Textadresse
;Y-Reg. high Byte
;ACCU Offset zum Screen-Start
;===============================
print_txt
.block ;Blockstart
stx HELP ;Textadresse setzen
sty HELP+1
clc
adc SCREEN ;Offset zum Screenstart addieren
bcc set_low ;kein Überlauf
inc SCREEN+1 ;high Byte+1
set_low sta SCREEN
ldy #$00
loop lda (HELP),y ;Buchstabe holen
beq end ;alle ausgegeben
cmp #"A" ;Buchstabe >A
bmi output ;ja, nicht umwandeln
sec
sbc #64 ;in 64`er Bildschirmcode wandeln
output sta (SCREEN),y ;und ausgeben
iny
bne loop ;nächstes Zeichen
end ldx #<SCREEN_ADR ;low Byte des Screens
ldy #>SCREEN_ADR ;high Byte des Screens
stx SCREEN ;setzen
sty SCREEN+1 ;setzen
clc
rts
.bend
;==============
;Screen löschen
;==============
cls
lda #$04 ;High Byte Anzahl Ausgaben
sta HELP ;setzen
lda #SPACE
ldy #$00
clr sta (SCREEN),y
iny
bne clr
inc SCREEN+1 ;nächste Page setzten
dec HELP ;alle ausgegeben?
bne clr ;nein, weitere 256 Zeichen ausgeben
ldx #<SCREEN_ADR ;low Byte des Screens
ldy #>SCREEN_ADR ;high Byte des Screens
stx SCREEN ;setzen
sty SCREEN+1 ;setzen
rts