home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er
/
64ER_CD.iso
/
86xx
/
8610b.d64
/
vg-print.src
(
.txt
)
< prev
Wrap
Commodore BASIC
|
1995-03-30
|
3KB
|
89 lines
50 SYS9*4096
100 ;
110 ;
120 ;
130 ;VIZAWRITE GRAFIKPRINT
140 ; VERSION 3.0
150 ;
160 ;(C) 1986 MARKT&TECHNIK
170 ;
180 ; WRITTEN BY
190 ; RALF LENZ
200 ; AM LANDGRABEN 12
210 ; 4290 BOCHOLT-BARLO
220 ;
230 .OPT OO
240 ;
250 *= $0365;STARTADRESSE DES PROGRAMMS
260 ;
270 PRINT = $F1CA;AUSGABE EINES ZEICHENS
280 GRAPHCODE = $A8;CODE FUER GRAFIK
290 CR = $0D;CARRIAGE RETURN
300 ;
310 INIT LDA #<NEWOUT;OUTPUTVEKTOR AUF
320 STA $0326;EIGENE ROUTINE VERSTELLEN
330 LDA #>NEWOUT
340 STA $0327
350 RTS
360 ;
370 NEWOUT PHA;ZU DRUCKENDES BYTE AUF STAPEL
380 LDA $9A;PRUEFEN, OB AUSGABE AUF DRUCKER
390 CMP #4
400 BNE NOPRINTER;AUSGABE NICHT AUF DRUCKER
410 PLA;DRUCKBYTE ZURUECKHOLEN
420 CMP #GRAPHCODE;PRUEFEN, OB GRAFIKZEILE
430 BNE NOGRAPHIK;NORMALER TEXTAUSDRUCK
440 STY YZW;Y-REGISTER ZWISCHENSPEICHERN
450 LDY #0
460 STY FLAG;FLAG FUER NIBBLE
470 BIN320 LDA TABELLE1,Y;DRUCKER AUF 320 BINAER-
480 JSR PRINT;DATEN EINSTELLEN
490 INY
500 CPY #5
510 BNE BIN320
520 LDY YZW;Y-REGISTER ZURUECKHOLEN
530 LDA #<GRAPHOUT;OUTPUTVEKTOR ERNEUT
540 STA $0326;VERSTELLEN FUER AUSGABE VON
550 LDA #>GRAPHOUT;GRAFIK
560 STA $0327;OUTPUTVEKTOR ERNEUT VERSTELLEN
570 EXIT CLC
580 RTS
590 NOPRINTER PLA;DRUCKBYTE ZURUECKHOLEN
600 NOGRAPHIC JMP PRINT;NORMALE OUTPUT-ROUTINE
610 ;
620 GRAPHOUT CMP #GRAPHCODE;PRUEFEN, OB ZEILENENDE
630 BNE G1
640 CLC;ENDE DER GRAFIKZEILE ERREICHT.
650 JMP INIT;OUTPUT-VEKTOR ZURUECKSTELLEN
660 G1 CMP #63;PRUEFEN, OB ILLEGALER CODE (0-63)
670 BCC EXIT
680 AND #%00001111;NUR UNTERES NIBBLE VERWENDEN
690 PHA; UND AUF STAPEL
700 LDA FLAG;OBERES ODER UNTERES NIBBLE
710 BNE NIBBLE2
720 ;
730 NIBBLE1 INC FLAG;FLAG=1
740 PLA;NIBBLE ZURUECKHOLEN
750 STA STORE;UND ZWISCHENSPEICHERN
760 CLC
770 RTS
780 ;
790 NIBBLE2 DEC FLAG;FLAG=0
800 PLA;NIBBLE ZURUECKHOLEN
810 ASL;UND UM 4 BIT NACH LINKS SCHIEBEN
820 ASL:ASL:ASL
830 ORA STORE;VERKNUEPFEN MIT UNTEREM NIBBLE
840 JSR PRINT;UND AUSGEBEN
850 RTS
860 ;
870 YZW .BYTE 00;ZWISCHENSPEICHER FUER Y-REGISTER
880 TABELLE1 .BYTE $1B;ESCAPE SENDEN
881 .BYTE $2A;'*' FUER 8-NADEL-BITMUSTER-MODUS
882 .BYTE $06;MODUS 0-6 ANWAEHLEN,HIER 6 VOREINGESTELLT
883 .BYTE $40,$01;320-PUNKTE-DICHTE
890 STORE .BYTE 00;SPEICHER FUER GRAFIKBYTE
900 FLAG .BYTE 00;FLAG FUER OBERES/UNTERES NIBBLE
910 ;
920 ;
930 ;