home *** CD-ROM | disk | FTP | other *** search
- ;==============================
- ;= =
- ;=zeichensatz initialisieren =
- ;=und setzen (w) by pit =
- ;= =
- ;==============================
-
- :zsin lda #$1c ;$1c steht fuer adresse $3800
- sta $d018 ;und in $d018 schreiben. anhand
- ;dieser adresse, "weiss" der
- ;vic, wo er den Charset suchen
- ;muss
- lda #$0f ;farbwerte fuer farbe zwei und
- sta $d022 ;drei in die beiden entsprech-
- lda #$0c ;enden vic-register schreiben
- sta $d023 ;farbe 3 muss im Farb-ram
- ;gesetzt werden
- lda #$18 ;multicolor einschalten
- sta $d016 ;
- rts ;und zurueck
-
-
- ;==============================
- ;= =
- ;=zeichensatz wieder =
- ;=zuruecksetzen (w) by pit =
- ;= =
- ;==============================
-
- :reset lda #$c8 ;multicolor-register auf
- sta $d016 ;normalwert zurueckstellen
- lda #$15 ;normalen zeichensatz
- sta $d018 ;wieder einschalten
- jsr $e544 ;bildschirm komplett
- ;loeschen
- rts ;zurueck
-
-
- ;==============================
- ;= =
- ;=integer-zahl ausgeben =
- ;=(w) by pit =
- ;= =
- ;==============================
-
- :inte lda #$00 ;zahl wird
- sta $d6 ;an ausgege-
- lda #$00 ;ben an cursor
- sta $d3 ;position
-
- ldx #$00 ;lb
- lda #$00 ;hb
- jsr $bdcd
- rts
-
-
- ;==============================
- ;= =
- ;=einfache textausgabe =
- ;=(w) by pit =
- ;= =
- ;==============================
-
- :txto ldx #$00 ;
- :txo2 lda $0000,x ;textadresse (dass kann
- ;zum beispiel auch ein
- ;label sein und
- jsr $ffd2 ;text per betriebssystem
- ;ausgeben
- inx ;zaehler erhoehen
- cpx #$00 ;wenn anzahl der bytes
- ;erreicht
- bne txo2 ;
- rts ;geht es wieder zurueck
-
-
- ;==============================
- ;= =
- ;=stringausgabe (am ende muss =
- ;=ein nullbyte stehen (w) pit =
- ;= =
- ;==============================
-
- :stri lda #$00 ;cursor setzen
- sta $d6 ;(die betriebssystem-
- lda #$00 ;routine braucht in
- sta $d3 ;diesem fall nicht
- ;aufgerufen zu werden
-
- lda #$00 ;lb
- ldy #$00 ;hb
- jsr $ab1e ;$ muss $00-byte am ende haben
- rts
-
-
-
-
-