Ich hatte so etwas in der Art wie Jirka auch geschrieben - allerdings habe ich es wohl nicht abgeschickt -- ich werde alt?
Ach nein,es war im anderen Thread! -- habe nur den Überblick verloren ![]()
Ich hatte so etwas in der Art wie Jirka auch geschrieben - allerdings habe ich es wohl nicht abgeschickt -- ich werde alt?
Ach nein,es war im anderen Thread! -- habe nur den Überblick verloren ![]()
Erfurter Programmiertreffen
Hab ich was verpasst?
Mit der Idee ein "how to" zu schreiben kann ich mich gut anfreunden. Andererseits: Im Objects-Manual gibt es schon ein Kapitel dazu: "16 Impex Library" - ich hab das mal gelesen und ich glaube mich zu erinneren, dass das recht gut beschrieben war. Alternativ ergänzt man dieses Kapitel, falls der Bedarf besteht - zumindest mit einem Verweis auf das hier .... ---->>>
Vielleicht sollte man den Filter dann gar nicht als Teil der Distri machen, sondern als GOC-Sample (Library/SDK_C) ?
Rainer
Ich hab mal reingeschaut und bin raus. Laut Kommentar konvertiert er erst PBM zu PCX um dann den PCX_Filter drauf anzuwenden??? "Load Portable Bitmap (PBM P1) file to Windows 3.x Device Independent Bitmap format." Ob er das dann wirklich so macht, bin ich aber nicht sicher. Die Kommentare sind noch Original und passen daher scheinbar nicht zum Code.
Ich bin nicht einmal sicher ob Dateizugriffe über FILE * unter GEOS überhaupt gehen.
Der Common-Teil ist Assembler - ob der korrekt ist, keine Ahnung.
PBM ist so simpel, dass es wahrscheinlich einfacher ist, eine Import-Lib selber zu schreiben, als den KI Code zu debuggen. Ich nutze KI gerne um mir Anregungen zu geben, mir Algorithmen erklären zu lassen (soll er doch die Internetrecherche machen) und gerne auch mal als Pseudocode auszugeben. Aber die GEOS-spezifische Implementation muss man dann schon selber machen.
Rainer
O-Ton Bario: "Leuchtstarkes Liquid-Crystal-Display" ![]()
Coole Sache! Erste Test liefen durchaus erfolgreich. Die Dosbox mit 100 000 Zyklen scheint manchmal an ihre Grenzen zu kommen, da wird es zwischendurch etwas langsamer ![]()
Drei Kleinigkeiten hätte ich da noch: 1. Währen des Ladens eine Sanduhr (application.MarkBusy) wäre schön 2. Bitte die Ladezeit nicht auf 4 Stellen nach dem Komma - da kommt wieder der Lehrer durch
und 3. Geht eine Anzeige der Gesamtzeit??
LG
Rainer
Ich denke wir sprechen aneinander vorbei. Ich nutzte da unsere Geoseigene Übersetzer-App ResEdit.
Nein, ich denke nicht. Natürlich nutze ich auch den ResEdit. Im Kern baue ich ein GEOS (bei buildbbx 'nttools' angeben, das enthält ResEdit), kopiere die Überszungsdateien an eine anderen Ort und setzte ein paar Umgebungsvariablen, rufe dann das SDK script prodloc.cmd dass dann das tools-GEOS startet und die Übersetzung läuft automatisch an.
Wenn ich mich recht erinnere übergibst du prodloc den Pfad zu den Übersezungsdateien - die müssen also nicht im repo liegen - dann meckert git auch nicht.
Wenn du willst können wir das gerne im Detail besprechen, z.B. in Syhra oder wenn du willst auhc per PM.
LG
Rainer
Nein, das ist nicht nötig. Ich kämpfe gerade an der "final frontier of glue". ![]()
Kannste machen. Kannst aber auch direkt den Grafik-Export aus dem Dateimenü nehmen.
Das war dann weniger Klasse😄 OK, wenn ich das nochmal versuche kopiere ich Die Übersetzungen vorher aus dem Repository woanders hin, so dass die Originale nicht angepackt werden.
Mache ich auch so. D.h. ein schönes Script macht das alles in einem rutsch für mich ![]()
An der Stelle noch ein kleiner Featurerequest: Ein Log, in dem ich halt sehe, wo noch etwas zu tun ist.
Ich leite den Output einfach in eine Datei um.
Rainer
Hallo Nico,
tatsächlich, du hast Recht, die erste beta schreibt die Maske von Mono-Icons nicht. Aber komprimiert/unkomprimiert funktioniert.
Ohne maske, unkopressed
@visMoniker NicoTest2 = { /* 24 bytes */
size = standard;
style = icon;
color = gray1;
aspectRatio = normal;
cachedSize = 8, 9;
gstring {
GSDrawBitmapAtCP (15),
Bitmap (8, 9, BMC_UNCOMPACTED, (BMF_MONO) ),
0xC3, 0x66, 0x3C, 0x18, 0x18, 0x3C, 0x66, 0xC3,
0x81,
GSEndString()
}
}
Maske, unkompressed
@visMoniker NicoTest2 = { /* 24 bytes */
size = standard;
style = icon;
color = gray1;
aspectRatio = normal;
cachedSize = 8, 9;
gstring {
GSFillBitmapAtCP (15),
Bitmap (8, 9, BMC_UNCOMPACTED, (BMF_MONO) ),
0xC3, 0x66, 0x3C, 0x18, 0x18, 0x3C, 0x66, 0xC3,
0x81,
GSEndString()
}
}
Maske, kompressed
@visMoniker NicoTest2 = { /* 33 bytes */
size = standard;
style = icon;
color = gray1;
aspectRatio = normal;
cachedSize = 8, 9;
gstring {
GSFillBitmapAtCP (24),
Bitmap (8, 9, BMC_PACKBITS, (BMF_MONO) ),
0x00, 0xC3, 0x00, 0x66, 0x00, 0x3C, 0x00, 0x18,
0x00, 0x18, 0x00, 0x3C, 0x00, 0x66, 0x00, 0xC3,
0x00, 0x81,
GSEndString()
}
}
Display More
ich habe wie du absichtlich die transparenten Pixel weiß gemalt, aber das ist letztlich egal. Ob Transparent oder komprimiert siehst du am Bitmap-Statement und an der Anzahl der Datenbytes. Hier gibt es den seltenen Fall, dass "komprimiert" mehr Daten erzeugt als unkomprimiert. Deswegen gibt es den Punkt"Größe minimieren"
Unkomprimiert, keine Transparenz
@visMoniker MonoNicoTest = { /* 25 bytes */
size = standard;
style = icon;
color = gray1;
aspectRatio = normal;
cachedSize = 8, 10;
gstring {
GSDrawBitmapAtCP (16),
Bitmap (8, 10, BMC_UNCOMPACTED, (BMF_MONO) ),
0x3C, 0x7F, 0xC3, 0xF0, 0xC0, 0xF0, 0xC0, 0xC3,
0x7F, 0x3C,
GSEndString()
}
}
Komprimiert, keine Transparenz
@visMoniker MonoNicoTest = { /* 35 bytes */
size = standard;
style = icon;
color = gray1;
aspectRatio = normal;
cachedSize = 8, 10;
gstring {
GSDrawBitmapAtCP (26),
Bitmap (8, 10, BMC_PACKBITS, (BMF_MONO) ),
0x00, 0x3C, 0x00, 0x7F, 0x00, 0xC3, 0x00, 0xF0,
0x00, 0xC0, 0x00, 0xF0, 0x00, 0xC0, 0x00, 0xC3,
0x00, 0x7F, 0x00, 0x3C,
GSEndString()
}
}
Unkomprimert, Transparenz
@visMoniker MonoNicoTest = { /* 35 bytes */
size = standard;
style = icon;
color = gray1;
aspectRatio = normal;
cachedSize = 8, 10;
gstring {
GSDrawBitmapAtCP (26),
Bitmap (8, 10, BMC_UNCOMPACTED, (BMF_MONO | BMT_MASK) ),
0xFF, 0x3C, 0xFF, 0x7F, 0xFF, 0xC3, 0xFF, 0xF0,
0xFF, 0xC0, 0xFF, 0xF0, 0xFF, 0xC0, 0xFF, 0xC3,
0xFF, 0x7F, 0xFF, 0x3C,
GSEndString()
}
}
Display More
Hallo Nico, danke für das Feedback.
Gut wäre Ansicht Zoom. Oder habe ich was übersehen .
Dazu muss man im Optionen-Menü die Pixel-Größe ändern. Das Standard-Verfahren "Ansicht -> Zoom" geht hier nicht ohne weiteres und wäre auch doppelte Arbeit.
Wenn ich neue Datei erstelle muss ich die Vorgabeformate löschen.
Das ist eine Konzept-Frage. Er legt beim Anlegen einer Datei immer ein leeres Standard-Icon-Set an, weil man das häufig braucht. Und damit der Einsteiger erst einmal etwas hat, womit er probieren kann (ganz wichtiger Aspekt!) Wenn man es nicht braucht: Menü "Icon Set" -> Set löschen. (zwei Klicks)
Eventuell eine Vorlage erstellen.
Jetzt bin ich aus. Du fasst dich immer extrem kurz, so dass ich häufig nicht weiß, in welchem Kontext du gerade bist. Manchmal ist mehr eben auch wirklich mehr ![]()
LG
Rainer
Sorry ist nicht nötig, ist ja keine Pflicht
Eher eine Danke von mir an dich. Und je mehr ihn benutzen, desto eher fallen Probleme auf.
nschu Du benutzt ja noch den alten buggy Icon Editor. Schau mal hier:
Der sollte schon alles können, was du aktuell brauchst. Außerdem wäre das Benutzen auch ein test, ob alles so funktioniert, wie geplant.
Rainer
Ich habe das Thema nur am Rande verfolgt, deswegen die eventuell "dummen" Nachfragen. Es würde also evtl. helfen, wenn der Iconeditor sw/sw "Icons" als .pbm exportieren könnte? Eventuell auch .pbm einlesen?
Das klingt nicht sooo schwer (Aufwändig ist das Blocken von"nicht sw/ws" Icons
) Aber ich würde es nur auf die ToDo-Liste schreiben (und dann im Extras-Menü ansiedeln) wenn ihr sagt, ja, das lohnt den Aufwand.
Rainer
Man könnte das bei der Auswahl Goc ESP dann als Char hinzufügen !
Ich steh grad auf dem Schlauch. Kannst du mir erklären, was du damit meinst?
Code müsste dann so sein :
byte 6 ;width
byte 7 ;# rowsbyte 0x38,0x44,0xf0,0x40,0xe0,0x44,0x38
Auch hier die dumme Frage: ich welche Art von Datei muss das geschrieben werden? Einfach so ohne Header, Klammern usw??
LG
Rainer
Nicht wirklich
Ein Branch verhält sich so wie eine Kopie des aktuellen Repo, in der du beliebige Änderungen vornehmen kannst, ohne dass es sofort auf das aktuelle Repo (den master-Branch) zurückwirkt. Das heißt, du kannst Codefiles, Übersetzungsdateien, Hilfen usw ändern und alles bleibt auf den neuen branch beschränkt. Später kannst du alles mit dem master zusammenführen (oder alles wegschmeißen). Einziges "Problem": Binärdateien (Hilfesource, Übersetzerdateien ... ) können nicht mehr automatisch zusammengeführt werde, wenn sie an BEIDEN Orten geändert wurden. Ansonsten: Lass uns den Rest per PM besprechen.
Rainer
Ja, genau so habe ich mir das gedacht. Fragt sich noch, was Falk dazu meint ![]()
Noch mal kurz zum ändern der englischen Hilfe. Im konkreten Fall steht da an der Stelle eigentlich auch schon wieder Murks..
Genau so sehe ich das auch.
Ich würde aber trotzdem bei Done bleiben - in Deutschen dann "Fertig"?
Rainer