home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er
/
64ER_CD.iso
/
91xx
/
9109a.d64
/
protokoll.src
< prev
next >
Wrap
Text File
|
1995-03-30
|
7KB
|
333 lines
;=======================================
; BASIC-ZEILE MIT SYS-ADRESSE
;=======================================
* = $0801 ;PROG.START
.BYTE $0D,$08,$B2,$07
.BYTE $9E,$28,$32,$30
.BYTE $36,$35,$29,$00
.BYTE $00,$00,$EA,$EA
.BYTE $EA,$EA,$EA,$EA
;=======================================
; INITIALISIERUNG
;=======================================
;---------------------------------------
; KOPIEREN DES BASIC AUS DEM ROM INS RAM
;---------------------------------------
VON1 = $A000
BIS1 = $C000
LDA# <VON1
STA $FA
LDA# >VON1
STA $FB
LDA# <BIS1
STA $FC
LDA# >BIS1
STA $FD
LDY# 0
KOP2 LDA ($FA),Y
STA ($FA),Y
INC $FA
BNE KOP3
INC $FB
KOP3 LDX $FD
CPX $FB
BNE KOP2
LDX $FC
CPX $FA
BNE KOP2
;---------------------------------------
; KERNAL AUS DEM ROM INS RAM
;---------------------------------------
VON2 = $E000
BIS2 = $0000
LDA# <VON2
STA $FA
LDA# >VON2
STA $FB
LDA# <BIS2
STA $FC
LDA# >BIS2
STA $FD
LDY# 0
KOPB LDA ($FA),Y
STA ($FA),Y
INC $FA
BNE KOPC
INC $FB
KOPC LDX $FD
CPX $FB
BNE KOPB
LDX $FC
CPX $FA
BNE KOPB
;---------------------------------------
; VERLEGEN BIS ZIEL-1 NACH $E422
; KOPIEREN
;---------------------------------------
COP1 LDA# <VERLEGEN
STA $FA
LDA# >VERLEGEN
STA $FB
LDA# $22
STA $FC
LDA# $E4
STA $FD
LDY# $00
COP2 LDA ($FA),Y
STA ($FC),Y
INC $FC
BNE COP3
INC $FD
COP3 INC $FA
BNE COP4
INC $FB
COP4 LDX $FB
CPX# >ZIEL
BNE COP2
LDX $FA
CPX# <ZIEL
BNE COP2
;---------------------------------------
; ZIEL BIS HILFE-1 NACH $E460
; KOPIEREN
;---------------------------------------
COPA LDA# <ZIEL
STA $FA
LDA# >ZIEL
STA $FB
LDA# $60
STA $FC
LDA# $E4
STA $FD
LDY# $00
COPB LDA ($FA),Y
STA ($FC),Y
INC $FC
BNE COPC
INC $FD
COPC INC $FA
BNE COPD
INC $FB
COPD LDX $FB
CPX# >HILFE
BNE COPB
LDX $FA
CPX# <HILFE
BNE COPB
;---------------------------------------
; CHROUT BEI $E716 AUF ERWEITERUNG
; ZEIGEN LASSEN (DRUCKER-AUSGABE)
;---------------------------------------
CHR1 LDA# $4C
LDX# $60 ; JMP $E460
LDY# $E4
STA $E716
STX $E717
STY $E718
;---------------------------------------
; IRQ BEI $EA31 AUF ERWEITERUNG ZEIGEN
; LASSEN (TASTEN-ABFRAGE)
;---------------------------------------
IRQ1
LDX# $25 ; JSR $E422+3
LDY# $E4
STX $EA32
STY $EA33
;---------------------------------------
; KONTROLLREGISTER AUF NULL SETZEN
;---------------------------------------
KON1 LDA# 0
STA $E445 ;KONTROLLE
;---------------------------------------
; NEUES KERNEL EINSCHALTEN
;---------------------------------------
NEU LDA# .53
STA $01
;---------------------------------------
; TEXT AUSGEBEN
;---------------------------------------
LDX# $00
AUSGEBEN LDA TEXT,X
BEQ AUSGEBEN1
JSR $FFD2 ;CHROUT
INX
BNE AUSGEBEN
AUSGEBEN1 RTS ;BASIC
;=======================================
; HAUPTROUTINEN, DIE INS KERNAL
; KOPIERT WERDEN
;=======================================
;---------------------------------------
; JMP $A644 DER AUSGABE-ROUTINE DER EIN-
; SCHALTMELDUNG VORVERLEGEN
;---------------------------------------
VERLEGEN .BYTE $4C,$44,$A6
;---------------------------------------
; IRQ-ABFRAGE
;---------------------------------------
SPRUNG LDX $028D
CPX# $07 ;SHIFT CTRL C=
BNE SPRUNG1
INC $D021 ;HINTERGRUND
DEC $D021 ;BESTAETIGUNG
CPX $E446 ;SPEICHER
BEQ SPRUNG1
LDA $E445 ;KONTROLLE
EOR# $EA
STA $E445 ;KONTROLLE
SPRUNG1 STX $E446 ;SPEICHER
JMP $FFEA ;IRQ WEITER
;---------------------------------------
KONTROLLE NOP
;---------------------------------------
SPEICHER NOP
;---------------------------------------
; PROTOKOLL AUF DRUCKER
;---------------------------------------
ZIEL PHA
LDA $E445 ;KONTROLLE
BEQ ZIEL1
TXA
PHA
TYA
PHA
LDY# $01 ;GROSS/GRAFIK
LDA $D018
ROR
ROR
BCC GROSS
LDY# $07 ;GROSS/KLEIN
GROSS LDA# $04
LDX# $04 ;DRUCKER
JSR $FFBA ;SETFLS
LDA# $00
JSR $FFBD ;SETNAM
JSR $FFC0 ;OPEN
BCS FEHLER ;FEHLERMELDUNG
LDX# 4 ;DRUCKER
JSR $FFC9 ;CHKOUT
PLA
TAY
PLA
TAX
PLA
JSR $FFD2 ;CHROUT
PHA
TXA
PHA
TYA
PHA
LDA# 4
JSR $FFC3 ;CLOSE
LDA# $03 ;AUSGABEGERAET
STA $9A ;BILDSCHIRM
FEHLER PLA
TAY
PLA
TAX
ZIEL1 PLA
PHA
STA $D7
JMP $E719 ;CHROUT WEITER
;---------------------------------------
HILFE NOP ;KOPIERHILFE
;---------------------------------------
TEXT .BYTE $0D
.BYTE 'INITIALISIERUNG '
.BYTE 'BEENDET',$0D
.BYTE 'EIN- UND AUSSCHALTEN: '
.BYTE 'SHIFT + C= + CTRL',$0D
.BYTE 'NACH EINEM RESET MIT '
.BYTE 'POKE 1,53 WIEDER ',$0D
.BYTE 'AKTIVIERBAR!',$0D
.BYTE $0D,$00
.END