Plot and Draw Routines#
from BiboAssembler Toolsdisk 1
Fast 2 color (Graphics 8) plot#
The data "
00010 PLOT LDY OLDY Zeilen-
00020 LDA TABLO,Y addresse
00030 STA PNT als
00040 LDA TABHI,Y Pointer
00050 STA PNT+1 setzen
00060 LDA OLDX
00070 PHA X MOD 8
00080 AND #7 nach <X>
00090 TAX
00100 LDA COLOR Farbe
00110 AND #1 MOD 2
00120 TAY nach <Y>
00130 LDA COLFILL,Y Farbyte holen
00140 AND EMASK,X unnoetige Bits
00150 STA HOLD ausmaskieren
00160 PLA X/8=
00170 LSR Byteoffset
00180 LSR
00190 LSR
00200 TAY in Zeile 0x1F <Y>
00210 LDA (PNT),Y Graphicbyte Holen
00220 AND CMASK,X alten Wert ausmaskieren
00230 ORA HOLD und durch neuen ersetzen
00240 STA (PNT),Y speichern
00250 RTS
00260 ;
00270 ------------------------------
00280 * *
00290 * Farbwerte und Loeschmasken *
00300 * *
00310 ------------------------------
00320 COLFILL .HX 00FF
00330 EMASK .HX 8040201008040201
00340 CMASK .HX 7FBFDFEFF7FBFDFE
" is not legal for a JDOM character content: 0x1f is not a legal XML character.
Fast 4 Color Plot (Graphics 15)#
The data "
00010 PLOT LDY OLDY Zeilen-
00020 LDA TABLO,Y addresse
00030 STA PNT als
00040 LDA TABHI,Y Pointer
00050 STA PNT+1 setzen
00060 LDA OLDX
00070 PHA X MOD 4
00080 AND #3 nach <X>
00090 TAX
00100 LDA COLOR Farbe
00110 AND #3 MOD 4
00120 TAY nach <Y>
00130 LDA COLFILL,Y Farbyte holen
00140 AND EMASK,X unnoetige Bits
00150 STA HOLD ausmaskieren
00160 PLA X/4=
00170 LSR Byteoffset
00180 LSR
00190 TAY in Zeile 0x1F <Y>
00200 LDA (PNT),Y Graphicbyte Holen
00210 AND CMASK,X alten Wert ausmaskieren
00220 ORA HOLD und durch neuen ersetzen
00230 STA (PNT),Y speichern
00240 RTS
00250 ;
00260 ------------------------------
00270 * *
00280 * Farbwerte und Loeschmasken *
00290 * *
00300 ------------------------------
00310 COLFILL .HX 0055AAFF
00320 EMASK .HX C0300C03
00330 CMASK .HX 3FCFF3FC
" is not legal for a JDOM character content: 0x1f is not a legal XML character.
Fast Plot for 16 color modes (Graphics 9)#
The data "
00010 PLOT LDY OLDY Zeilen-
00020 LDA TABLO,Y addresse
00030 STA PNT als
00040 LDA TABHI,Y Pointer
00050 STA PNT+1 setzen
00060 LDA OLDX
00070 PHA X MOD 2
00080 AND #1 nach <X>
00090 TAX
00100 LDA COLOR Farbe
00110 AND #$F MOD 16
00120 TAY nach <Y>
00130 LDA COLFILL,Y Farbyte holen
00140 AND EMASK,X unnoetige Bits
00150 STA HOLD ausmaskieren
00160 PLA X/2=
00170 LSR Byteoffset
00180 TAY in Zeile 0x1F <Y>
00190 LDA (PNT),Y Graphicbyte Holen
00200 AND CMASK,X alten Wert ausmaskieren
00210 ORA HOLD und durch neuen ersetzen
00220 STA (PNT),Y speichern
00230 RTS
00240 ;
00250 ------------------------------
00260 * *
00270 * Farbwerte und Loeschmasken *
00280 * *
00290 ------------------------------
00300 COLFILL .HX 00112233445566778899AABBCCDDEEFF
00310 EMASK .HX F00F
00320 CMASK .HX 0FF0
" is not legal for a JDOM character content: 0x1f is not a legal XML character.
Fast Draw Routines#
The data "
00010 .LI OFF
00020 ;
00030 OLDX .EQ $D5
00040 OLDY .EQ $D4
00050 TOX .EQ $DB
00060 TOY .EQ $DA
00070 ADX .EQ $E0
00080 ADX2 .EQ $E1
00090 ADY .EQ $E2
00100 ADY2 .EQ $E3
00110 DX .EQ $E4
00120 DY .EQ $E5
00130 SL .EQ $E6
00140 COUNT .EQ $E8
00150 COLOR .EQ $E9
00160 HOLD .EQ $EA
00170 *
00180 PNT .EQ $D0
00190 ;
00200 SETTABLE LDA $58 Tabelle
00210 STA $00 der
00220 LDA $59 Anfangs-
00230 STA $01 addresse
00240 LDY #0 der
00250 SET LDA $0 Bild-
00260 STA TABLO,Y schirm-
00270 LDA $1 zeilen
00280 STA TABHI,Y erzeugen
00290 CLC (192 Zeilen)
00300 LDA $0
00310 ADC #40 UNBEDINGT
00320 STA $0 NACH DEM
00330 BCC SS1 GRAPHICAUFRUF
00340 INC $1 UND VOR DER
00350 SS1 INY BENUTZUNG
00360 CPY #192 DER GRAPHICROUTINEN
00370 BNE SET AUFRUFEN.
00380 RTS
00390 ;
00400 ;
00410 DRAWLINE LDX #0 Richtungen
00420 STX ADX2 vorbezetzen
00430 STX ADY
00440 STX SL+1
00450 INX
00460 STX COUNT
00470 STX ADY2
00480 STX ADX
00490 ;
00500 LDA TOX Punktabstand
00510 SEC berechnen
00520 SBC OLDX
00530 BCS DSKIP1
00540 DEC ADX gegebenenfalls
00550 DEC ADX Richtung
00560 LDA OLDX aendern
00570 SEC
00580 SBC TOX
00590 DSKIP1 STA DX 0x1FDelta X
00600 *
00610 LDA TOY Das gleiche
00620 SEC fuer die
00630 SBC OLDY Y-Koor-
00640 BCS DSKIP2 dinate
00650 DEC ADY2
00660 DEC ADY2
00670 LDA OLDY
00680 SEC
00690 SBC TOY
00700 DSKIP2 STA DY
00710 LDA DX Ist
00720 CMP DY dy>dx,
00730 BCS DSKIP3
00740 LDX DX dann
00750 LDA DY dx und dy
00760 STA DX vertauschen
00770 STA DX
00780 TXA
00790 STA DY
00800 LDA ADX auch Richtungen
00810 STA ADX2 fuer X und Y
00820 LDA ADY2 Koordinaten
00830 STA ADY vertauschen
00840 LDA #0
00850 STA ADX
00860 STA ADY2
00870 DSKIP3 LDA DX DX/2
00880 LSR fuer Fehler-
00890 STA SL groesse setzen
00900 LDA DX mehr als
00910 BEQ RETURN 1 Punkt setzen?
00920 JSR PLOT Punkt setzen
00930 ;
00940 MAIN LDA OLDX Richtungen
00950 CLC zu Koor-
00960 ADC ADX dinaten
00970 STA OLDX rechnen
00980 LDA OLDY
00990 CLC
01000 ADC ADY
01010 STA OLDY
01020 INC COUNT
01030 *
01040 LDA SL Fehler-
01050 CLC groesse
01060 ADC DY SL+DY
01070 STA SL
01080 BCC .1
01090 INC SL+1
01100 *
01110 .1 LDA SL+1 SL>DX?
01120 *
01130 BNE SUB
01140 LDA DX
01150 CMP SL
01160 BCS DPLOT
01170 *
01180 SUB LDA SL SL=SL-DX
01190 SEC
01200 SBC DX
01210 STA SL
01220 BCS .1
01230 DEC SL+1
01240 *
01250 .1 LDA OLDX Schritt in
01260 CLC 2. Richtung
01270 ADC ADX2 machen
01280 STA OLDX
01290 LDA OLDY
01300 CLC
01310 ADC ADY2
01320 STA OLDY
01330 *
01340 DPLOT LDA DX Letzter Punkt
01350 CMP COUNT erreicht
01360 BCC RETURN Ja!
01370 JSR PLOT Sonst Punkt setzen
01380 JMP MAIN Wiederholen
01390 ;
01400 RETURN LDA TOY OLD-Koor.
01410 STA OLDY =TO-Koor.
01420 LDA TOX
01430 STA OLDX
01440 JMP PLOT Punkt setzen.
01450 *
01460 OPENS STA $2B Graphicstufe setzen
01470 LDA #0 Ohne Textfenster
01480 STA $2A
01490 LDA #$70 Source Code
01500 STA $6A sichern
01510 JSR OPEN OS-OPEN
01520 JMP SETTABLE Tabelle setzen
01530 *
01540 OPEN LDA $E411 ROM-Jump
01550 PHA ueber
01560 LDA $E410 Stack
01570 PHA
01580 RTS
01590 ------------------------------
01600 TABLO .BL 192 Platz fuer
01610 TABHI .BL 192 Tabellen
" is not legal for a JDOM character content: 0x1f is not a legal XML character.
Graphics 9 Draw Demo#
00010 .LI OFF 00020 .OR $4000 00030 * 00040 * 00050 * 00060 * 00070 * 00080 * 00090 START LDA #$90 Source Code 00100 STA $6A sichern 00110 * 00120 LDA #$0 Graphic 9 00130 STA $2A aufrufen 00140 LDA #$9 00150 STA $2B 00160 JSR OPEN 00170 * 00180 LDA #79 Werte und 00190 STA X Cursor 00200 STA $56 vorbereiten 00210 STA $56 00220 STA $5C 00230 * 00240 LOOP LDA X Punkt 00250 STA $55 (X,0) in 00260 AND #$F Farbe 00270 STA COL X MOD 16 00280 LDA #0 setzen 00290 STA $54 00300 LDX #6 00310 JSR PLOT 00320 DEC $55 00330 LDA #79 Verbindungs- 00340 SEC linie nach 00350 SBC X (79-x,191) 00360 STA $5B ziehen 00370 LDA #191 00380 STA $5A 00390 LDX #$A 00400 JSR DRAW 00410 DEC X X=X+1 00420 LDA X Bis X negativ 00430 BPL LOOP 00440 ------------------------------ 00450 WAIT JMP WAIT endlos 00460 ------------------------------ 00470 X .HX 00 00480 Y .HX 00 00490 COL .HX 00 00500 ------------------------------ 00510 ------------------------------ 00520 OPEN LDA $E411 Screen 00530 PHA OPEN 00540 LDA $E410 ueber 00550 PHA Stack 00560 RTS 00570 ------------------------------ 00580 DRAW LDA #17 Drawkommando 00590 STA $22 setzen 00600 PLOT LDA $E411,X Screen PUT 00610 PHA ueber 00620 LDA $E410,X Stack 00630 PHA Jump 00640 LDA COL 00650 RTS
Graphics 9 Demo 2#
00010 .LI OFF 00020 .OR $4000 00030 * 00040 S LDA #$90 HiMem 00050 STA $6A runtersetzen 00060 * 00070 LDA #$0 Graphic 9 00080 STA $2A aufrufen 00090 LDA #$9 00100 STA $2B 00110 JSR OPEN 00120 * 00130 LDA #0 Cursor- 00140 STA X sitionen 00150 STA $56 setzen 00160 STA $5C 00170 * 00180 LOOP LDA X Von-Ko- 00190 STA $55 ordinate 00200 EOR #$F und Farbe 00210 STA COL setzen 00220 LDA #0 00230 STA $54 00240 * 00250 LDX #6 Punkt 00260 JSR PLOT setzen 00270 * 00280 DEC $55 00290 * 00300 LDA #79 Linie 00310 STA $5B nach 00320 LDA #191 79,191 00330 STA $5A ziehen 00340 LDX #$A 00350 JSR DRAW 00360 * 00370 LDA #0 Punkt 00380 STA $54 0,0 00390 STA $55 setzen 00400 LDX #6 00410 JSR PLOT 00420 DEC $55 00430 * 00440 LDA #79 und mit 00450 SEC Punkt 00460 SBC X 79-X,191 00470 STA $5B durch 00480 LDA #191 Linie 00490 STA $5A verbinden 00500 LDX #$A 00510 JSR DRAW 00520 * 00530 INC X X=X+1 00540 LDA X Wiederholen 00550 CMP #80 bis X=80 00560 BNE LOOP 00570 ------------------------------ 00580 WAIT JMP WAIT Endlos 00590 ------------------------------ 00600 X .HX 00 00610 Y .HX 00 00620 COL .HX 00 00630 ------------------------------ 00640 ------------------------------ 00650 OPEN LDA $E411 Screen 00660 PHA OPEN 00670 LDA $E410 ueber 00680 PHA Stack 00690 RTS Jump 00700 ------------------------------ 00710 DRAW LDA #17 Draw-Kommando 00720 STA $22 setzen 00730 PLOT LDA $E411,X Point-PUT 00740 PHA Vector 00750 LDA $E410,X auf Stack 00760 PHA legen 00770 LDA COL Farbe nach <A> 00780 RTS Jump
Graphic 8 Demo#
- File GR8PACK.INC
The data "
00010 XO .EQ $D0
00020 YO .EQ $D2
00030 XT .EQ $D3
00040 YT .EQ $D5
00050 AX .EQ $D6
00060 AX2 .EQ $D8
00070 AY .EQ $DA
00080 AY2 .EQ $DB
00090 DX .EQ $DC
00100 DY .EQ $DE
00110 SL .EQ $DF
00120 C .EQ $E1
00130 *
00140 OFF1 .EQ $E3
00150 OFF2 .EQ $E4
00160 BIT1 .EQ $E5
00170 BIT2 .EQ $E6
00180 *
00190 PNT .EQ $E7
00200 *
00210 BX1 .EQ $E9
00220 BY1 .EQ $EB
00230 BX2 .EQ $EC
00240 BY2 .EQ $EE
00250 *
00260 SAVMSC .EQ $58
00270 *
00280 *
00290 *
00300 *
00310 *
00320 *
00330 *
00340 OPENGR8 LDA #0 Graphic
00350 STA $2A 8 Bild-
00360 LDA #8 schirm
00370 STA $2B oeffen
00380 LDA #$70
00390 STA $6A
00400 JSR SOPEN
00410 *
00420 LDA SAVMSC
00430 STA PNT
00440 LDA SAVMSC+1
00450 STA PNT+1
00460 LDY #0
00470 *
00480 .1 LDA PNT Zeilen-
00490 STA LOTAB,Y addressen
00500 LDA PNT+1 tabelle
00510 STA HITAB,Y erzeugen
00520 CLC
00530 LDA PNT
00540 ADC #40
00550 STA PNT
00560 BCC .2
00570 INC PNT+1
00580 .2 INY
00590 CPY #192
00600 BCC .1
00610 *
00620 LDX #0 Tabelle
00630 .3 TXA mit
00640 LSR Offset/8
00650 LSR
00660 LSR erzeugen
00670 STA RSH8,X
00680 INX
00690 BNE .3
00700 RTS
00710 ------------------------------
00720 SOPEN LDA $E411 Rom
00730 PHA jump
00740 LDA $E410 fuer
00750 PHA OPEN
00760 RTS
00770 ------------------------------
00780 PLOT LDX YO Zeilenaddresse
00790 LDA LOTAB,X nach
00800 STA PNT pointer
00810 LDA HITAB,X
00820 STA PNT+1
00830 *
00840 LDY XO+1 Byte-
00850 LDX XO offset
00860 LDA HI,Y aus X-
00870 ORA RSH8,X Koordinate
00880 TAY berechnen
00890 *
00900 TXA Bit innerhalb
00910 AND #7 Byte
00920 *
00930 MO ORA #0 +0 oder +8 je nach Modus
00940 TAX
00950 LDA (PNT),Y Byte laden
00960 CM ORA MASK,X Manipulieren
00970 STA (PNT),Y Speichern
00980 RTS
00990 *
01000 MASK .HX 80402010080402017FBFDFEFF7FBFDFE
01010 HI .HX 0020
01020 *
01030 CMD .HX 1D3D5D Opcodes fuer ORA, AND, EOR
01040 OFF .HX 000800 Maskenoffset
01050 ------------------------------
01060 SETMODE LDA CMD,X Opcode
01070 STA CM setzen
01080 STA CM1
01090 AND #$F3 0x1Fauf indiziert Y-Opcode umrechnen
01100 STA CM2
01110 LDA OFF,X Maskenoffset
01120 STA MO+1 setzen
01130 STA MO1+1
01140 RTS
01150 ------------------------------
01160 HLINE LDX XO+1 Byte und
01170 LDA HI,X Bit Pos-
01180 LDX XO itionen
01190 ORA RSH8,X der Start
01200 STA OFF1 X-Koor-
01210 TXA dinate
01220 AND #7 berechnen
01230 STA BIT1
01240 *
01250 LDX XT+1 Das selbe
01260 STX XO+1 mit der
01270 LDA HI,X Ziel
01280 LDX XT X-Koor-
01290 STX XO dinate
01300 ORA RSH8,X und
01310 STA OFF2 Start=Ziel
01320 TXA Koordinate
01330 AND #7
01340 STA BIT2
01350 *
01360 LDA OFF1 Subtraktion
01370 SEC der Bytepositionen
01380 SBC OFF2 Wenn Ergebnis
01390 STA DX >=0 dann vertauschen
01400 BCS EXOFF
01410 *
01420 HOTHER LDA OFF2 Absulutwert
01430 SEC der Bytepositionen
01440 SBC OFF1
01450 STA DX
01460 JMP HSETRD 0x1Fweiter
01470 *
01480 EXOFF LDX OFF2 Byte und
01490 LDA OFF1 Bit Posi-
01500 STA OFF2 tionen
01510 STX OFF1 vertau-
01520 LDX BIT1 schen
01530 LDA BIT2
01540 STA BIT1
01550 STX BIT2
01560 *
01570 HSETRD LDX YO Addresse
01580 LDA LOTAB,X des Zei-
01590 STA PNT lenanfangs
01600 LDA HITAB,X in Pointer
01610 STA PNT+1 Register
01620 *
01630 LDA DX Start und Ziel Koordinate
01640 BNE HLINE2 im selben Byte? Nein0x1F0x1F0x1F
01650 *
01660 LDX BIT1 Balkenwert
01670 LDY BIT2 berechnen
01680 LDA HMASK1,Y
01690 AND HMASK2,X
01700 STA SETBY+1 und ein-
01710 LDY OFF1 setzen
01720 JMP SETBY
01730 *
01740 HLINE2 CMP #2 Start und Ziel Koordinate in
01750 BCC SETBORD 2 nebeneinanderliegenden Byte? Ja 0x1F0x1F
01760 *
01770 LDY OFF1 Bytes zwischen
01780 LDA #$FF OFF1+1 und
01790 STA SETBY+1 OFF2-1
01800 INY mit #$FF
01810 HLL1 JSR SETBY fuellen
01820 INY
01830 CPY OFF2
01840 BCC HLL1
01850 *
01860 SETBORD LDY OFF1 Werte
01870 LDX BIT1 fuer
01880 LDA HMASK1,X Randbytes
01890 STA SETBY+1 einsetzen
01900 JSR SETBY
01910 LDY OFF2
01920 LDX BIT2
01930 LDA HMASK2,X
01940 STA SETBY+1
01950 *
01960 SETBY LDA #$FF
01970 CM2 ORA (PNT),Y
01980 STA (PNT),Y
01990 RTS
02000 *
02010 HMASK1 .HX FF7F3F1F0F070301
02020 HMASK2 .HX 80C0E0F0F8FCFEFF
02030 ------------------------------
02040 VLINE LDX XO+1 Byteposition
02050 LDA HI,X bestimmen
02060 LDX XO
02070 ORA RSH8,X
02080 TAY
02090 *
02100 LDA YO Anzahl
02110 SEC der
02120 SBC YT Zeilen
02130 BCC OTHER bestimmen
02140 LDX YT <X> haelt
02150 STA DY die kleinere
02160 JMP VSETRD der beiden
02170 * Y-Koordinaten
02180 OTHER LDA YT
02190 SEC
02200 SBC YO
02210 STA DY
02220 LDX YO
02230 *
02240 VSETRD INC DY
02250 LDA LOTAB,X Zeilenaddresse
02260 STA PNT holen
02270 LDA HITAB,X
02280 STA PNT+1
02290 LDA XO Bitposition
02300 AND #7 bestimmen
02310 MO1 ORA #0 + Modusoffset
02320 TAX
02330 VLL LDA (PNT),Y Byte manipulieren
02340 CM1 ORA MASK,X
02350 STA (PNT),Y
02360 CLC Pointer
02370 LDA PNT +40
02380 ADC #40 Fuer
02390 STA PNT naechste
02400 BCC VLSK Bildzeile
02410 INC PNT+1
02420 VLSK DEC DY Wiederholen
02430 BNE VLL
02440 LDA YT Koordinaten-
02450 STA YO anpassung
02460 RTS
02470 *
02480 DRAWLINE LDX #0 Erklaerung
02490 STX C siehe
02500 STX C+1 im
02510 STX AX2 DRAW.INC
02520 STX AX2+1 File
02530 STX AY
02540 STX SL+1
02550 STX AX+1
02560 INX
02570 STX AX
02580 STX AY2
02590 LDA XO
02600 EOR XT
02610 BNE TST2
02620 EOR XO+1
02630 EOR XT+1
02640 BNE TST2
02650 JMP VLINE
02660 *
02670 TST2 LDA YO
02680 EOR YT
02690 BNE NORMDRAW
02700 JMP HLINE
02710 *
02720 NORMDRAW JSR PLOT
02730 *
02740 SEC
02750 LDA XT
02760 SBC XO
02770 STA DX
02780 LDA XT+1
02790 SBC XO+1
02800 BPL D1OK
02810 *
02820 LDA #$FF
02830 STA AX
02840 STA AX+1
02850 SEC
02860 LDA XO
02870 SBC XT
02880 STA DX
02890 LDA XO+1
02900 SBC XT+1
02910 *
02920 D1OK STA DX+1
02930 SEC
02940 LDA YT
02950 SBC YO
02960 BCS D2OK
02970 *
02980 LDA #$FF
02990 STA AY2
03000 SEC
03010 LDA YO
03020 SBC YT
03030 *
03040 D2OK STA DY
03050 *
03060 LDA DX+1
03070 BNE MAIN1
03080 LDA DY
03090 CMP DX
03100 BEQ SWITCH
03110 BCC MAIN1
03120 *
03130 SWITCH LDA DX
03140 PHA
03150 LDA DY
03160 STA DX
03170 PLA
03180 STA DY
03190 LDA AX
03200 STA AX2
03210 LDA AX+1
03220 STA AX2+1
03230 LDA AY2
03240 STA AY
03250 LDA #0
03260 STA AX
03270 STA AX+1
03280 STA AY2
03290 *
03300 MAIN1 LDA DX+1
03310 LSR
03320 LDA DX
03330 ROR
03340 STA SL
03350 LDA DX
03360 ORA DX+1
03370 BNE DRAWM
03380 JMP PLOT
03390 *
03400 DRAWM LDA XO
03410 CLC
03420 ADC AX
03430 STA XO
03440 LDA XO+1
03450 ADC AX+1
03460 STA XO+1
03470 CLC
03480 LDA YO
03490 ADC AY
03500 STA YO
03510 INC C
03520 BNE DS1
03530 INC C+1
03540 *
03550 DS1 LDA SL
03560 CLC
03570 ADC DY
03580 STA SL
03590 BCC DS2
03600 INC SL+1
03610 *
03620 DS2 LDA DX+1
03630 CMP SL+1
03640 BEQ TST
03650 BCS OUTP
03660 BCC ADDJ
03670 TST LDA DX
03680 CMP SL
03690 BEQ ADDJ
03700 BCS OUTP
03710 *
03720 ADDJ CLC
03730 LDA XO
03740 ADC AX2
03750 STA XO
03760 LDA XO+1
03770 ADC AX2+1
03780 STA XO+1
03790 *
03800 LDA YO
03810 CLC
03820 ADC AY2
03830 STA YO
03840 *
03850 SEC
03860 LDA SL
03870 SBC DX
03880 STA SL
03890 LDA SL+1
03900 SBC DX+1
03910 STA SL+1
03920 *
03930 OUTP LDA DX+1
03940 CMP C+1
03950 BNE OUTP1
03960 LDA DX
03970 CMP C
03980 BNE OUTP1
03990 JMP PLOT
04000 *
04010 OUTP1 JSR PLOT
04020 JMP DRAWM
04030 ------------------------------
04040 LOTAB .BL 192
04050 HITAB .BL 192
04060 RSH8 .BL 256
04070 ------------------------------
04080 *
04090 BOX LDA BX1
04100 STA XO Zeichnet
04110 LDA BX1+1 einen
04120 STA XO+1 Rahmen
04130 LDA BY1 mit
04140 STA YO den
04150 STA YT beiden
04160 LDA BX2 gegen-
04170 STA XT ueber-
04180 LDA BX2+1 liegen-
04190 STA XT+1 den Eck-
04200 JSR DRAWLINE Punktko-
04210 LDA BY2 ordi-
04220 STA YT naten
04230 JSR DRAWLINE aus
04240 LDA BX1 BX1,BY1
04250 STA XT und
04260 LDA BX1+1 BX2,BY2
04270 STA XT+1
04280 JSR DRAWLINE
04290 LDA BY1
04300 STA YT
04310 JMP DRAWLINE
" is not legal for a JDOM character content: 0x1f is not a legal XML character.
- File GR8PACK2.DEM
00010 .LI OFF 00020 .OR $4000 00030 * 00040 * 00050 * 00060 * 00070 * 00080 * 00090 * 00100 * 00110 ------------------------------ 00120 .IN "D:GR8PACK.INC" 00130 ------------------------------ 00140 * 00150 DEMO JSR OPENGR8 00160 LDX #2 00170 JSR SETMODE 00180 LDA #0 00190 STA WERT 00200 * 00210 LL1 LDA #191 00220 SEC 00230 SBC WERT 00240 STA WERT2 00250 STA YO 00260 LDA #0 00270 STA $2C6 00280 STA XO 00290 STA XO+1 00300 LDA #319 00310 STA XT 00320 LDA /319 00330 STA XT+1 00340 LDA WERT 00350 STA YT 00360 JSR DRAWLINE 00370 LDA WERT 00380 STA YO 00390 LDA #0 00400 STA XO 00410 STA XO+1 00420 LDA WERT2 00430 STA YT 00440 JSR DRAWLINE 00450 LDA WERT 00460 CLC 00470 ADC #7 00480 CMP #192 00490 BCC .1 00500 SEC 00510 SBC #192 00520 .1 STA WERT 00530 LDA #$FF 00540 CMP 764 00550 BEQ LL1 00560 STA 764 00570 JSR OPENGR8 00580 * 00590 DM2 LDA WERT 00600 STA BX1 00610 STA BY1 00620 LDA #0 00630 STA BX1+1 00640 LDA #191 00650 SEC 00660 SBC WERT 00670 STA BY2 00680 LDA #319 00690 LDX /319 00700 SEC 00710 SBC WERT 00720 STA BX2 00730 BCS .1 00740 DEX 00750 .1 STX BX2+1 00760 JSR BOX 00770 LDA WERT 00780 CLC 00790 ADC #115 00800 CMP #192 00810 BCC .2 00820 SEC 00830 SBC #192 00840 .2 STA WERT 00850 LDA #$FF 00860 CMP 764 00870 BEQ DM2 00880 STA 764 00890 JMP DEMO 00900 * 00910 WERT .HX 00 00920 WERT2 .HX 00
Add new attachment
Only authorized users are allowed to upload new attachments.