Grafik-Ladebildschirm


Grafik-Ladebildschirm

von FlorianD » So 16. Feb 2020, 13:24
Hallo,

1. Frage
wer kann mir erklären, wie ich möglichst unaufwändig einen GR.15 Bildschirm als Ladebildschirm programmieren kann?
Geht das, indem ich einfach die Grafik erzeuge, und dann DisplayList, Grafikspeicher, Farbinfos und die entsprechenden Vektoren in ein Binary abspeichere?
Und danach dann das eigentlich Binary dranhänge?
Gibts da vielleicht ein Tool für?

2. Frage
Wie kriege ich möglichst einfach eine auf dem Mac erstellte Grafik kleingerechnet und umgewandelt? Ich habe eine Grafik im 4:3 Format, die ich nun auf 160x192 runterskaliere (soweit krieg ich es noch hin), aber wie geht man dann weiter vor?

Re: Grafik-Ladebildschirm

von skriegel » So 16. Feb 2020, 15:35
Frage 1 kann ich nicht beantworten.

Frage 2: Wenn Du die Grafik schon klein gerechnet hast (ich nehme da GraphicConverter von Lemkesoft für), kannst sie mit WUDSN IDE in ein für den Atari lesbares Format bringen. Dazu einfach die Grafik in WUDSN IDE öffnen, dann kommt statt eines Codes ein Fenster mit entsprechenden Optionen.

Das sieht dann in etwa so aus (nur ein Beispiel):

WUDSNIDE_pics.jpg
WUDSNIDE_pics.jpg (166.57 KiB) 1332-mal betrachtet

Re: Grafik-Ladebildschirm

von CharlieChaplin » So 16. Feb 2020, 16:14
Nun,

wie man das als Programmierer macht, weiß ich nicht, da ich nicht programmieren kann. Es gibt aber tatsächlich Tools bzw. Konverter auf dem Atari die einem das abnehmen. Eines stammt von Analog oder Antic und heißt MIC2BIN.BAS, also ein Atari Basic Programm, das dein MIC (62 Sector, unkomprimiert) oder PIC (Koala/Micro-Illustrator, komprimiert) Gr. 15 Bild in ein COM-File umwandelt. Vielleicht lässt sich das Programm ja auch so erweitern (oder ändern), dass man damit Gr.8, Gr.9, Gr. 9+11 Bilder (62 Sektoren, unkomprimiert) in COM-Files umwandeln kann...

Das Gr.15 Bild wird übrigens als ML-Datei geladen und initialisiert, mit einem Tastendruck verschwindet das Bild vom Bildschirm und es wird weitergeladen. (Das Bild ist also nicht während des ganzen Ladevorgangs zu sehen, sondern nur bevor das Programm geladen wird, d.h. der Speicher den das Bild belegt, ist nach einem Tastendruck wieder verfügbar.) Wenn du das Bild also generiert hast, kannst du mit copy+append dein ML-Programm an das (COM-)Bild anhängen. Für Rasta und G2F-Bilder gibt es glaube ich ein ähnliches Tool auf dem PC (wobei man nach dem Laden eines Rasta/G2F Bildes den Bildschirm vollständig löschen und die PM's "abschalten" muss, da man sonst die Überreste der PM's als Datenmüll auf dem Screen sieht, schon dutzendfach erlebt.)

Das konvertierte Gr.15 Bild bzw. das COMfile schaltet übrigens das Atari Basic nicht ab, also ggf. die kurze Basic-off Routine davorhängen oder selber dafür sorgen, dass Basic abgeschaltet wird. Die Länge eines solchen konvertierten Gr. 15 Bildes beträgt 64 oder 66 Sektoren, da es nunmehr eine Comfile ist, lässt es sich prima platzsparend packen (meist so um die 50%-80%)...

Grafik-Ladebildschirm

von Erhard » Mo 17. Feb 2020, 09:12
Hi,

FlorianD hat geschrieben:Geht das, indem ich einfach die Grafik erzeuge, und dann DisplayList, Grafikspeicher, Farbinfos und die entsprechenden Vektoren in ein Binary abspeichere?


meines Erachtens genau so. Du kannst Dir ja bestehende Programme daraufhin anschauen. Da Du ja auch Tools suchst, die Dich dabei unterstützen. Ich kenne hier zwei, mit denen Du die Einzelteile zusammenfügen oder aus einem bestehenden Ganzen einzelne Blöcke herausziehen kannst.

Falls Du mit SpartaDOS arbeitest kannst Du das Programm Superpacker von Jiri Bernasek nehmen.

Auf dem PC in einem Kommandozeilenfenster bietet sich ATARICOM von Hias an, zu finden unter https://www.horus.com/~hias

Die Programmierarbeit, die zwischen dem Bild und dem fertigen Intro liegt kannst Du mit einem beliebigen Assembler (z.B. Mac/65) erledigen, auf dem PC mit einem Cross-Assembler oder mit WUDSN.

Bei WUDSN ist ohne Teilnahme am WUDSN-Kurs auf der Fujiama 2019 der Einstiegswiderstand vielleicht recht hoch, dafür kannst Du da auch direkt alle Teile zusammenfügen, hast Möglichkeiten zur Fehlersuche und kannst per einfachem Klick Dein Projekt im Emulator starten und schauen, wie alles läuft und aussieht.

Wobei ich der Meinung bin, daß abschließende Tests auf einem echten Atari stattfinden sollten.

CU, Erhard

Re: Grafik-Ladebildschirm

von pps » Di 25. Feb 2020, 18:02
Bezüglich der möglichen Ladezeit wäre es sicher sinnvoll, wenn man das Bild z. B. mit Hilfe von graph2font in Grafik 12 umwandelt. Die Fonts benötigen weniger Platz und somit ist das Bild schneller geladen.

Graph2font soll wohl auch am Mac über Windows Emulation laufen.

Ich könnte Dir helfen. Sinnvoll wäre das sicher am besten über TeamViewer oder ähnlichem...

Re: Grafik-Ladebildschirm

von pps » Di 25. Feb 2020, 20:47
FlorianD hat geschrieben:Hallo,

1. Frage
wer kann mir erklären, wie ich möglichst unaufwändig einen GR.15 Bildschirm als Ladebildschirm programmieren kann?
Geht das, indem ich einfach die Grafik erzeuge, und dann DisplayList, Grafikspeicher, Farbinfos und die entsprechenden Vektoren in ein Binary abspeichere?
Und danach dann das eigentlich Binary dranhänge?
Gibts da vielleicht ein Tool für?

Also, Der Weg ist beschrieben, aber beim Lesen sieht man Deutlich die :?:

Man macht das im Prinzip genau so. Damit das Bild dann auch bei schneller SIO nicht "übersehen" wird, wäre mindestens ein Timer oder ein Warten auf Tastendruck, oder Joystickknopf sinnvoll, bevor man das eigentliche Programm weiterladen lässt.

    * Erstelle Dein Bild
    * Starte Deinen "LOADER" z.B. bei $2000 (das sollte bei allen DOS ohne Probleme gehen.
    * dort gleich die DL laden
    * im eigentlichen Programm dann DL in 560/561 einschreiben und die Farben einstellen
    * Tastendruck abwarten
    * mit RTS beenden
    * nicht vergessen, auch das Bild im Code zu laden vor dem INI
    * mit INI LOADER statt RUN starten
    * nun kann auch das eigentliche Programm direkt geschrieben werden und am Ende mit RUN "Eigentliches Programm" gestartet werden - WICHTIG: das Bild sollte in einem frei bleibenden Speicherbereich liegen, bis man es nicht mehr sieht.