*************************************************************************
* Anleitung zum DEMOMAKER (v1.1) *
*************************************************************************
Demomaker-Files:
- DEMOMA.BAS (mit DEMOMA.BIN) ist Hauptprogramm
- DEMOMA.DOC ist dieses Dokumentations-File
- *.FNT = Zeichens{tze(Fonts) der Zeichen &20-&7F(32-127)
- *.TEX = Textfiles mit Ascii-Texten
- *.BAL = Balken-Files mit Farbwerten und Gr|~e der Balken
DEMOMAKER (v1.1) ist ein PD-Programm und darf (soll sogar) frei kopiert
werden. Demomaker ist geeignet f}r CPC 464/664/6128
Demomaker ist aus dem Wunsch entstanden, Mitteilungen in interessanter
Form zu verschicken.
Einige Vorbemerkungen:
WICHTIG :
- Die Programme d}rfen nur komplett weitergegeben werden.
- Die Programme d}rfen nicht kommerziell eingesetzt werden.
Ich }bernehme keinerlei Garantie f}r Sch{den irgendwelcher
Art, die durch Benutzung der Software oder der Informationen
auf der Diskette entstehen.
Falls Sie mich
unterst}tzen m|chten,
hier mein Spendenkonto: ***************************
* Marco Vieth *
* Kto.Nr: 54111091 *
* Sparkasse Paderborn *
* BLZ : 47250101 *
***************************
Falls Sie Fragen haben, ***************************
hier meine Adresse: * Marco Vieth *
* Auf dem ]kern 4 *
* 4791 Lichtenau-Atteln *
***************************
Doch nun zur Anleitung:
Alle Funktionen lassen sich von Men}s aufrufen.
Dabei sollten sich viele Teile selbst erkl{ren.
Zu den Filearten:
- Eine fertige Demo setzt sich aus Steuerprogramm, Text, Balken,
Zeichensatz zusammen. Sie kann im Hauptmen} geladen und abgespeichert
werden.
- .TEX-Files sind Ascii-Texte, die maximal &A00 Zeichen lang sein
d}rfen.
- .FON-Files sind Zeichensatzdateien, die die Zeichenmatrizen der
Zeichen &20-&7F (32-127) beinhalten. Sie sind &300 Bytes lang.
Falls kein eigener Zeichensatz geladen ist, wird der Rom-Zeichensatz
benutzt. Die Demo ist dann um &300 Bytes k}rzer !!
- .BAL-Files sind BalkenFiles mit den Farbwerten des Balkens.
Sie bestehen aus 52 Bytes: 1 Byte Hintergrundout, 1 Byte Balkenbreite
(1 bis 50) und maximal 50 Byte Farbouts des Balkens.
Aus diesen Files lassen sich Demos zusammensetzen.
- Demo starten:
Mit diesem Aufruf k|nnen Sie sich Ihre Demo ansehen. Abbruch w{hrend
der Textausgabe mit < SPACE >, am Textende mit jeder beliebigen Taste.
Die meisten Erl{uterungen braucht das "Editieren:"
- Text editieren:
Hier k|nnen Sie ihre Texte schreiben. Dabei wird ein eventuell schon
vorhandener Text angezeigt und Anf}gen ist m|glich.
Im Unterschied zu einem normalen Editor wird jede Tastendruck
abgespeichert (auch Steuerzeichen) und Cursorbewegungen.
Beenden der Eingabe mit < ESC >.
Zu den Steuerzeichen: Sie k|nnen fast alle Steuerzeichen verwenden,
die Sie aus den CPC-Handbuch kennen, z.B. Bildschirm l|schen,
Bildschirmmodus setzen,Cursor bewegen, Bereiche l|schen ...
(zu erreichen ]ber CTRL & Buchstabentaste). Symbole definieren
funktioniert nicht. Auch Pen und Paper bleiben ohne Wirkung.
Daf}r gibt es folgende Zusatzsteuerzeichen:
- CTRL & eckige Klammer auf (=Ctrl27) Zeichenfarben definieren.
Dieser Ctrl-Code erwartet 8 Parameter mit den Pens(0 bis 15), aus
denen die einzelnen Zeichen bestehen sollen.
- Zeichen editieren:
Die Zeilenpens eines Zeichens ver{ndern. Hier m}ssen die Farbbytes
angegeben werden (&F0=Pen 1 im Mode 1 ...)
- Balken editieren:
Es k|nnen die Hintergrundfarbe und die Farben des Balkens ver{ndert
werden. Dabei m}ssen FARBOUTS angegeben werden !!
Die "normalen" Inks k|nnen nicht direkt verwendet werden, sie werden
erst durch eine Tabelle in Farbwertregister umgewandelt, die dann
mittels OR &40 (64) ans Gate-Array geschickt werden:
Ink/Border Farbout Ink/Border Farbout
0 20+64 16 7+64
1 4+64 17 15+64
2 21+64 18 18+64
3 28+64 19 2+64
4 24+64 20 19+64
5 29+64 21 26+64
6 12+64 22 25+64
7 5+64 23 27+64
8 12+64 24 10+64
9 22+64 25 3+64
10 6+64 26 11+64
11 23+64 27 1+64
12 30+64 28 8+64
13 0+64 29 9+64
14 31+64 30 16+64
15 14+64 31 17+64
Ein Balken kann aus maximal 50 Rasterzeilen bestehen.
- Zu "Sonstiges":
- Ausgabegeschwindigkeit:
Gibt an, wie schnell die einzelnen Zeichen ausgegeben werden sollen
(1=sehr schnell bis 255=lahm). Dabei werden Steuerzeichen zusammen
mit ihren Parametern ausgegeben.
- Balkenmove:
Hier k|nnen verschiedene Parameter zur Balkenbewegung ver{ndert
werden. Ich habe versucht, m|gliche Fehleingaben abzufangen.
Trotzdem ist es sinnvoll, die gerade geschriebene Demo vorher
abzuspeichern, bevor damit experimentiert wird !!
- Zeilenanzahl:
Anzahl der Rasterzeilen,innerhalb derer sich der Balken bewegen
kann 1 bis &85 (133).
- Balkenmovespeed:
Bewegungsgeschwindigkeit des Balkens in 1/50.Sekunden
(1=sehr schnell,255=sehr lahm)
- Prozessdauer:
Anzahl der Prozesse(hier Interrupts), die nach dem Frame-Fly vor
dem "Zeichnen" des Balkens f}r die Textausgabe ausgef}hrt werden.
Abh{ngig von der Zeilenanzahl. Bei 2 f{ngt der Bereich f}r den
Balken ziemlich weit oben an (nach 2 Interrupts f}r den Prozess
der Textausgabe), bei 5 ziemlich weit unten.
- Interruptnachhol:
Anzahl der Interrupts, die nach dem Balken "nachgeholt" werden
sollen, um auf insgesamt 6 Interrupts pro Bildaufbau zu kommen.
Diese Variable wird automatisch vor jedem Editieren je nach
Prozessdauer f}r die jeweils maximale Zeilenanzahl gesetzt. Der
Interrupt dient auch der Tastaturabfrage, so da~ ein 0-setzen bei
zu gro~er Zeilenanzahl und Prozessdauer eine "EndlosDemo"
verursacht (wenn also der Bereich f}r den Balken ziemlich weit
nach unten reicht).
- Balkenstartposition:
Startposition des Balkens. Sie reicht von 0(oben) bis Zeilen-
anzahl minus Balkenbreite (unten).
- Balkenaddierwert:
Der Wert, um den sich die Balkenposition jedesmal ver{ndern soll.
Reicht von 1 (Standardwert) bis ...
M|gliche Belegungen:
Prozessdauer: Zeilenanzahl: Interruptnachhol:
2 max &85(133) 4 bei Zeilanz &85
3 max &73(115) 4 bei Zeilanz &51
4 max &42(066) 5 bei Zeilanz &20
5 max &17(023)? 6 bei Zeilanz &08
Noch ein paar Anmerkungen:
Falls der Balken bei der Demo flimmern sollte, dauern der
Prozess, das Balkenzeichnen und die Interrupts l{nger als ein
Bildschirmaufbau. In diesem Fall Interruptnachhol, Zeilenanzahl
oder Prozessdauer verringern, so da~ unterhalb des Balkens mehr
Platz verbleibt. Dies kann auch manchmal n|tig sein, wenn l{ngere
Interrupt-Routinen (Frame-Fly-, Ticker- oder Fast-Ticker-Event)
eingeh{ngt sind (z.B.,um einen Sound zu spielen).
Nach einmaligem Aufruf der Demo sind die Vektoren zur Frame-Fly-
Behandlung umgebogen. Es kann dann immer nur ein Frame-Fly
eingeh{ngt werden (KL ADD FRAMEFLY), der dann w{hrend der Demo
ausgef}hrt wird. Daf}r bietet die Variable 'extein' einen Word-
Speicherplatz f}r die Adresse einer "externen" Routine , die vor
der Demo aufgerufen wird, entsprechend 'extaus' nach der Demo
(&0000 bedeutet unbenutzt).
Viel Spa~ beim Schreiben von Demos ...
Marco Vieth
Stand: 23.3.1991
---------------------------------------------------------------------------