C 64
Statistik

Grafik-Erweiterung und DCopy für Aktien-Manager/Wahlhochrechnung

Diese beiden kurzen Erweiterungen können Sie universell einsetzen. Zusammen mit Aktien-Manager und Wahlhochrechnung sind sie ein gutes Beispiel für eine sinnvolle Computeranwendung.

Grafik-Erweiterung

Diese Erweiterung wurde so kurz und einfach wie möglich gehalten und auf die notwendigsten Befehle beschränkt Durch die Lage in Page 1 wird kein Basic-Speicherplatz verbraucht. Das Besondere an dieser Erweiterung ist, daß zwar nur die hohe Auflösung von 320x200 Punkten möglich ist, aber trotzdem alle 16 Farben auf einmal dargestellt werden können (allerdings nur jeweils eine Farbe pro 8x8-Punkte-Feld).

Folgende Befehle sind mit dieser Erweiterung möglich (Ausdrücke in Klammern können weggelassen werden):

← Gx Grafik einschalten / x=Hintergrundfarbe
← C Grafik löschen
← T Grafik ausschalten
← Dx,y(;z) Punkt zeichnen / x=X-Koordinate (0 - 319) / y=Y-Koordinate (0 - 200) / z=Farbe
← Lx,yTOx,y(;z) Linie zeichnen / Anfangs- und Endpunkt eingeben / z=Farbe
← Px,y(,ax,ay)(;z)"Text": Text drucken / x,y=Koordinaten der linken oberen Ecke / ax,ay=Ausdehnung in x,y-Richtung / z=Farbe
← F1000 Bei auftretendem Fehler springt Programm in Zeile 1000 (dort kann mit PEEK(52000) die Fehlernummer und mit PEEK(52001)4-256*Peek(52002) die Fehlerzeile ausgelesen werden)
← E Abschalten der Erweiterung

Die Grafik liegt im Bereich $E000 bis $FFFF

DCopy

Die Druckerroutine für den MPS-802-Drucker liegt im Bereich $C700 bis $C850 und kann zusammen mit der Grafik-Erweiterung verwendet werden. Im Grundaufbau entspricht sie der Routine aus 64’er Ausgabe 10/84 Seite 83.

Wenn Sie einen anderen Drucker als den MPS-802 besitzen, besteht die Möglichkeit, an Stelle des Programms »DCopy« eine Hardcopy-Routine für Ihren Drucker zu verwenden. Dabei ist darauf zu achten, daß der Grafikbildschirm im Speicherbereich $E000 bis $FFFF liegt. Die Routine selbst kann in jedem nicht vom Hauptprogramm beziehungsweise der Grafik-Routine verwendeten Bereich stehen. Gut geeignet ist beispielsweise der Bereich $C700 bis $CFFFF. Je nachdem wo Ihre Druck-Routine liegt, müssen Sie den SYS-Befehl im Hauptprogramm anpassen.

(Björn Fiethe/aw)
PROGRAMM : GRAFIK-E_MS    C000 C569
-----------------------------------
C000 : 78 AD 08 03 8D FB CB AD   F5
C008 : 09 03 8D FC CB A9 34 8D   8C
C010 : 08 03 A9 C0 8D 09 03 AD   A5
C018 : 14 03 8D F9 CB AD 15 03   D5
C020 : 8D FA CB A9 E6 8D 14 03   83
C028 : A9 C0 8D 15 03 A5 01 8D   B4
C030 : F8 CB 58 60 20 73 00 F0   AF
C038 : 04 C9 5F F0 05 A2 01 4C   19
C040 : 7F C0 20 73 00 C9 47 D0   A3
C048 : 03 4C 8F C0 C9 43 D0 03   6D
C050 : 4C F8 C0 C9 54 D0 03 4C   F2
C058 : 13 C1 C9 44 D0 03 4C 5E   5A
C060 : C1 C9 4C D0 03 4C F5 C1   21
C068 : C9 50 D0 03 4C 23 C3 C9   6E
C070 : 45 D0 03 4C 2F C1 C9 46   1C
C078 : D0 03 4C E7 C4 A2 02 C6   D1
C080 : 7A A5 7A C9 FF D0 02 C6   C1
C088 : 7B CA D0 F3 6C FB CB AD   4C
C090 : 11 D0 09 20 8D 11 D0 A9   48
C098 : 39 8D 18 D0 AD 16 D0 29   D9
C0A0 : EF 8D 16 D0 AD 00 DD 29   9A
C0A8 : FC 8D 00 DD 20 D2 C0 A9   16
C0B0 : 00 85 14 A9 CC 85 15 A0   3C
C0B8 : 00 8E FD CB A2 04 B1 14   31
C0C0 : 29 F0 0D FD CB 91 14 C8   8F
C0C8 : D0 F4 E6 15 CA D0 EF 4C   FA
C0D0 : AE A7 20 73 00 20 9E B7   B3
C0D8 : E0 10 B0 01 60 AD F8 CB   FB
C0E0 : 85 01 58 4C 48 B2 A5 9D   71
C0E8 : D0 03 6C F9 CB AD F8 CB   3A
C0F0 : 85 01 20 1C C1 6C F9 CB   80
C0F8 : A0 00 84 FE A9 E0 85 FF   51
C100 : A2 20 98 91 FE C8 D0 FB   7C
C108 : E6 FF CA D0 F6 20 73 00   F9
C110 : 4C AE A7 20 1C C1 20 73   D8
C118 : 00 4C AE A7 A9 1B 8D 11   AB
C120 : D0 A9 15 8D 18 D0 AD 00   7B
C128 : DD 09 03 8D 00 DD 60 78   5E
C130 : AD FB CB 8D 08 03 AD FC   C9
C138 : CB 8D 09 03 AD F9 CB 8D   61
C140 : 14 03 AD FA CB 8D 15 03   24
C148 : A9 8B 8D 00 03 A9 E3 8D   42
C150 : 01 03 AD F8 CB 85 01 58   FB
C158 : 20 73 00 4C AE A7 20 73   4B
C160 : 00 20 EB B7 20 D4 C1 78   03
C168 : AD F8 CB 29 FD 85 01 20   FA
C170 : 7B C1 AD F8 CB 85 01 58   F4
C178 : 4C AE A7 E0 C8 B0 54 A4   CE
C180 : 15 F0 0A C0 02 B0 4C A5   CA
C188 : 14 C9 40 B0 46 8E F7 CB   F7
C190 : 8A 4A 4A 4A A8 A5 14 29   76
C198 : F8 85 24 85 26 B9 2A C5   71
C1A0 : 18 65 15 85 25 4A 66 26   EB
C1A8 : 4A 66 26 4A 66 26 18 69   C3
C1B0 : B0 85 27 8A 29 07 79 43   75
C1B8 : C5 A8 A5 14 29 07 AA BD   AE
C1C0 : 5C C5 11 24 91 24 98 4A   F9
C1C8 : 4A 4A A8 AD F6 CB 91 26   77
C1D0 : AE F7 CB 60 48 A9 3B 8E   55
C1D8 : F5 CB A0 00 D1 7A D0 10   2F
C1E0 : 68 20 D2 C0 48 8A 0A 0A   3A
C1E8 : 0A 0A 0D FD CB 8D F6 CB   97
C1F0 : AE F5 CB 68 60 20 73 00   6E
C1F8 : 20 EB B7 8E F3 CB A5 14   2A
C200 : 8D FE CB A5 15 8D FF CB   09
C208 : A9 A4 20 FF AE 20 EB B7   16
C210 : 20 D4 C1 86 60 A5 14 85   6A
C218 : 61 A5 15 85 62 78 AD F8   D4
C220 : CB 29 FD 85 01 A9 00 85   18
C228 : 5C A5 60 38 ED F3 CB B0   85
C230 : 05 E9 00 49 FF 18 66 5C   66
C238 : 85 59 A5 61 38 ED FE CB   86
C240 : A8 A5 62 ED FF CB AA B0   7B
C248 : 0D 98 E9 00 49 FF A8 8A   68
C250 : E9 00 49 FF AA 18 66 5C   49
C258 : 86 5B 84 5A 8A D0 07 C4   CD
C260 : 59 B0 03 A0 00 2C A0 FF   CA
C268 : 84 FF 98 D0 0A A5 59 85   6A
C270 : 57 A9 00 85 58 F0 08 A5   C5
C278 : 5A 85 57 A5 5B 85 58 18   93
C280 : 66 58 66 57 AD FE CB 85   A4
C288 : 14 AD FF CB 85 15 AE F3   90
C290 : CB 20 7B C1 A5 FF F0 42   25
C298 : AD FE CB C5 61 D0 07 AD   84
C2A0 : FF CB C5 62 F0 2B 20 FE   29
C2A8 : C2 A5 57 18 65 59 AA A4   2B
C2B0 : 58 90 01 C8 C4 5B 90 12   37
C2B8 : D0 04 C5 5A 90 0C 20 17   5F
C2C0 : C3 38 8A E5 5A AA 98 E5   28
C2C8 : 5B A8 86 57 84 58 4C 84   49
C2D0 : C2 AD F8 CB 85 01 58 4C   7B
C2D8 : AE A7 AD F3 CB C5 60 F0   92
C2E0 : F0 20 17 C3 A5 5A 18 65   77
C2E8 : 57 B0 09 C5 59 B0 05 85   CD
C2F0 : 57 4C 84 C2 E5 59 85 57   D5
C2F8 : 20 FE C2 4C 84 C2 24 5C   79
C300 : 10 09 EE FE CB D0 03 EE   5D
C308 : FF CB 60 AD FE CB D0 03   52
C310 : CE FF CB CE FE CB 60 24   C3
C318 : 5C 50 04 EE F3 CB 60 CE   38
C320 : F3 CB 60 20 73 00 20 EB   A5
C328 : B7 48 8E F0 CB A5 14 8D   1A
C330 : F1 CB A5 15 8D F2 CB A9   06
C338 : 2C A0 00 D1 7A D0 2C 68   9E
C340 : 20 73 00 20 EB B7 20 D4   C5
C348 : C1 48 A5 14 10 03 4C 48   F4
C350 : B2 8D EF CB 0A 0A 0A A8   A9
C358 : 88 8C EE CB 8A 30 EF 8D   60
C360 : ED CB 0A 0A 0A 8D EC CB   4F
C368 : 4C 82 C3 A9 01 8D EF CB   EF
C370 : 8D ED CB A9 07 8D EE CB   4C
C378 : A9 08 8D EC CB 68 20 D4   50
C380 : C1 48 AD 26 03 8D EA CB   75
C388 : AD 27 03 8D EB CB A9 AB   56
C390 : 8D 26 03 A9 C3 8D 27 03   72
C398 : 68 20 A0 AA AD EA CB 8D   0A
C3A0 : 26 03 AD EB CB 8D 27 03   FC
C3A8 : 4C AE A7 85 D7 78 8A 48   E2
C3B0 : 98 48 A5 D7 48 AD F1 CB   22
C3B8 : AC F2 CB AE F0 CB 18 6D   4F
C3C0 : EE CB 85 14 90 01 C8 84   B5
C3C8 : 15 E0 C8 B0 1B A5 15 F0   AB
C3D0 : 0A C9 01 D0 13 A5 14 C9   5B
C3D8 : 40 B0 0D AD F2 CB 85 15   37
C3E0 : AD F1 CB 85 14 4C F8 C3   38
C3E8 : 8A 18 6D EC CB AA A9 00   30
C3F0 : 85 15 85 14 E0 C0 B0 04   C3
C3F8 : 68 4C 06 C4 68 68 A8 68   DE
C400 : AA A5 D7 18 58 60 C9 0E   42
C408 : D0 0B AD 18 D0 09 02 8D   45
C410 : 18 D0 4C FD C3 C9 8E D0   C9
C418 : 0B AD 18 D0 29 FD 8D 18   03
C420 : D0 4C FD C3 C9 12 D0 07   8D
C428 : A9 01 85 C7 4C FD C3 C9   03
C430 : 92 D0 05 A9 00 4C 2A C4   35
C438 : C9 20 90 0C C9 40 90 10   B8
C440 : C9 60 90 0A C9 80 90 03   88
C448 : 4C FD C3 E9 1F 2C E9 3F   3A
C450 : 85 FB A9 00 85 FC A0 03   06
C458 : 06 FB 26 FC 88 D0 F9 A5   C7
C460 : C7 F0 07 A5 FC 18 69 04   54
C468 : 85 FC AD 18 D0 29 02 F0   1A
C470 : 06 A5 FC 18 69 08 2C A5   5E
C478 : FC 18 69 D0 85 FC AD F8   DE
C480 : CB 29 F9 85 01 8E F0 CB   EF
C488 : A0 00 AD ED CB 85 56 84   9D
C490 : FE A9 08 85 FF B1 FB 85   9E
C498 : FD A5 14 48 A5 15 48 AD   F5
C4A0 : EF CB 85 55 A5 FD 0A 90   14
C4A8 : 03 20 7B C1 E6 14 D0 02   29
C4B0 : E6 15 C6 55 D0 EE 06 FD   16
C4B8 : C6 FF D0 E3 68 85 15 68   06
C4C0 : 85 14 E8 A4 FE C6 56 D0   3F
C4C8 : C8 C8 C0 08 D0 BC AD F8   C1
C4D0 : CB 85 01 A4 15 A5 14 38   72
C4D8 : 6D EE CB 8D F1 CB 90 01   23
C4E0 : C8 8C F2 CB 4C FD C3 20   28
C4E8 : 73 00 20 8A AD 20 F7 B7   E0
C4F0 : A9 0A 8D 00 03 A9 C5 8D   B1
C4F8 : 01 03 A5 14 8D E8 CB A5   01
C500 : 15 8D E9 CB 4C AE A7 4C   41
C508 : 74 A4 8A 30 FA 8D 20 CB   AB
C510 : A5 3A 8D 22 CB A5 39 8D   64
C518 : 21 CB AD E8 CB 85 14 AD   3C
C520 : E9 CB 85 15 4C A3 A8 FF   77
C528 : 03 01 E0 E1 E2 E3 E5 E6   D3
C530 : E7 E8 EA EB EC ED EF F0   A3
C538 : F1 F2 F4 F5 F6 F7 F9 FA   AB
C540 : FB FC FE 00 40 80 C0 00   84
C548 : 40 80 C0 00 40 80 C0 00   04
C550 : 40 80 C0 00 40 80 C0 00   0C
C558 : 40 80 C0 00 80 40 20 10   B3
C560 : 08 04 02 01 00 00 FF FF   0B
C568 : 22                        16
Listing 1. Grafikerweiterung für Aktien-Manager und Wahlhochrechnung
PROGRAMM : DCOPY          C700 C851
-----------------------------------
C700 : A9 69 A2 04 A0 05 20 E8   0B
C708 : C7 A9 64 A2 04 A0 00 20   97
C710 : E8 C7 A2 64 20 C9 FF A9   B5
C718 : 8D 20 D2 FF A9 6A A2 04   EA
C720 : A0 06 20 E8 C7 A2 6A 20   64
C728 : C9 FF A9 14 20 D2 FF A2   BC
C730 : 64 20 C9 FF A9 8D 20 D2   44
C738 : FF 20 FD AE 20 9E B7 E0   34
C740 : 29 B0 0C 86 FC 20 FD AE   BB
C748 : 20 9E B7 E0 10 90 06 20   9F
C750 : C7 C7 4C 48 B2 8A 0A 0A   D3
C758 : 0A 0A 85 FF A2 00 86 FE   0B
C760 : 8E 3C 03 A9 00 8D 3D 03   6A
C768 : 20 F3 C7 20 30 C8 F0 29   D7
C770 : A2 69 20 C9 FF A2 00 BD   99
C778 : 3E 03 20 D2 FF E8 E0 08   75
C780 : D0 F5 A9 0D 20 D2 FF A2   35
C788 : 64 20 C9 FF 20 3E C8 A9   D9
C790 : FE 20 D2 FF A9 8D 20 D2   80
C798 : FF 18 A5 FE 69 08 85 FE   D7
C7A0 : 90 02 E6 FF 20 E1 FF F0   DE
C7A8 : 1E EE 3D 03 AD 3D 03 C9   51
C7B0 : 28 D0 B5 A2 64 20 C9 FF   70
C7B8 : A9 0D 20 D2 FF EE 3C 03   B9
C7C0 : AD 3C 03 C9 19 D0 9C A9   63
C7C8 : 69 20 C3 FF A9 0D 20 D2   5B
C7D0 : FF A9 64 20 C3 FF A2 6A   5D
C7D8 : 20 C9 FF A9 24 20 D2 FF   A0
C7E0 : A9 6A 20 C3 FF 4C CC FF   D4
C7E8 : 20 BA FF A9 00 20 BD FF   92
C7F0 : 4C C0 FF 78 A5 01 29 FD   AE
C7F8 : 85 01 A2 00 8A 9D 3E 03   3B
C800 : E8 E0 08 D0 F8 A9 80 85   5E
C808 : FD A0 00 B1 FE A2 00 0A   A5
C810 : 90 0A 48 BD 3E 03 05 FD   7B
C818 : 9D 3E 03 68 E8 E0 08 D0   FA
C820 : EE 46 FD C8 C0 08 D0 E3   21
C828 : A5 01 09 02 85 01 58 60   53
C830 : A2 00 8A DD 3E 03 D0 05   7A
C838 : E8 E0 08 D0 F6 60 18 A5   CB
C840 : FC 6D 3D 03 AA F0 08 A9   48
C848 : 20 20 D2 FF CA D0 FA 60   0D
C850 : 44                        2A
Listing 2. MPS 802 Hardcopyroutine für Aktien-Manager und Wahlhochrechnung.
PDF Diesen Artikel als PDF herunterladen
Mastodon Diesen Artikel auf Mastodon teilen
← Vorheriger ArtikelNächster Artikel →