 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 09.07.2008, 18:26 Titel: |
|
|
csde: sorry, aber wenn das große bitmap immer noch dieser pixelige schriftzug ist, den ich beim ersten mal gesehen habe, brauchst du dafür echt keine "vektordaten", "bitmaps", oder sonstwas...
da reicht ein einfaches PRINTen und dann das scannen der textausgabe mittelst POINT und vergrößerte ausgaben mittels LINE... _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 09.07.2008, 19:16 Titel: |
|
|
Jojo hat Folgendes geschrieben: | csde: sorry, aber wenn das große bitmap immer noch dieser pixelige schriftzug ist, den ich beim ersten mal gesehen habe, brauchst du dafür echt keine "vektordaten", "bitmaps", oder sonstwas...
da reicht ein einfaches PRINTen und dann das scannen der textausgabe mittelst POINT und vergrößerte ausgaben mittels LINE... |
Ne eben nich, die brauchen wieder zuviel Speicher
(Nein war nur ein Scherz...)
Der soll ja auch so pixelig sein So frei nach dem Motto "Back to the roots!". Das ganze GUI habe ich eigentlich nach irgendsoeinem QB Programm designed, ich glaube das habe ich in dem ABC-Archiv gefunden, weiss leider nicht mehr wie das hiess.
Das hatte jedenfalls auch bei Übeschriften so einen Weißton, darunter ein leicht gräulicher Schatten.
Normaler Text war da gelb, Rahmen von Buttos waren genau wie die Überschriften weiss, mit grauem Schatten, Aufschrift der Buttons war ebenfalls Weiß mit grauem Schatten.
Einen 3D Effekt beim Klicken gab es (glaube ich) nicht.
Wenn ich noch rausfinde, wie man per CPUID folgendes auslesen kann: -SSE4
-SSE4a
-SSE5
So dann bin ich zufrieden, das Programm fertig, und das Projekt abgeschlossen.
Und das Bild wird weiterhin so schön pixelig sein.
Die Sache mit dem komprimierten Bitmap als Array war nur so eine Faulenzer-Lösung
Warum sollte man denn den Platz verschwenden, wenn man ihn sparen kann, und für andere Sachen nutzten kann, ohne die Binary weiter aufzublähen.
Einige Leute finden Monsterbinarys vielleicht toll, weil die Leute dann denken, dass da viel Code hintersteckt. Ich nicht.
Ich freue mich eher, wenn die Leute sich fragen, wie man soviel Funktionalität in eine so kleine Binary stopfen kann, ohne alles oder überwiegend in Assembler zu schreiben.
Eine große Binary zu erzeugen ist keine Kunst, Das geht ganz einfach.
Ein paar unnötige Ressourcen rein, und schon ist sie gaanz groß.
Ich muss allerdings auch zugeben, dass ich vor ca. 1 Jahr auch nur darauf geschaut habe, mehr Code zu schreiben (=Zeilenzahl, was ich auch nicht so toll finde (mit Absicht den Code aufzublähen)), und die Binary größer zu machen (oben erläutert).
Ich glaube man merkt auch, dass ich im Gegensatz zu früher, sehr Schreibfreudig geworden bin, und auch versuche auf die Rechtschreibung, Grammatik, und auch die Groß/Kleinschreibung zu achten.
Aber das ist wieder eine andere Geschichte.
Jedenfalls finde ich meine aktuelle Lösung mit einem Array und einer einfachen Schleife sehr elegant und klein.
Denn, wie ich schon sagte, es ist keine Kunst eine große Binary oder viel Code zu erzeugen.
Es ist, im Gegensatz, eine Kunst, in wenig Code eine hohe Funktionalität zu haben. |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 09.07.2008, 19:34 Titel: |
|
|
28398 hat Folgendes geschrieben: |
Einige Leute finden Monsterbinarys vielleicht toll, weil die Leute dann denken, dass da viel Code hintersteckt.
|
Habe ich zu keiner Zeit behauptet, finde diese Art der Optimierung aber ganz einfach überflüssig, da eben diese paar KB nirgends wirklich ins Gewicht fallen.
Und was UPX leistet, ist ja auch nicht dein Verdienst. _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 09.07.2008, 19:51 Titel: |
|
|
Zitat: | Ich vergleiche das gerne mit Demos |
stimmt übrigens überhaupt nicht. Auf sizecoding kommt's nur bei Intros an... (4k/64k sind keine Demos, sondern Intros...) _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 09.07.2008, 20:00 Titel: |
|
|
Jojo hat Folgendes geschrieben: | Zitat: | Ich vergleiche das gerne mit Demos |
stimmt übrigens überhaupt nicht. Auf sizecoding kommt's nur bei Intros an... (4k/64k sind keine Demos, sondern Intros...) |
Wieder was gelernt.
@Mao:
Jo, UPX komprimiert das Programm von 127 KB auf 59 KB (68 KB eingespart).
Durch meine Optimierungen gings von 161 KB auf 127 KB (34 KB eingespart, zufällig genau die Hälfte von obiger Einsparung)
Meiner Meinung schadets aber auch nicht, warum sollte man es also nicht machen? |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 09.07.2008, 20:07 Titel: |
|
|
bei einer standard VB-exe nützt UPX leider für den download nicht wirklich was. packe ich eine EXE mit UPX, ist das ZIP mitunter größer als mit der ungepackten version - ist allerdings nur ein unterschied von wenigen KB (also selbst bei modem-usern nur eine 1 sekunde) und dafür ein "großer" unterschied auf der festplatte. (hotel-manager: 800kb versus 250kb) _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1876 Wohnort: D59192
|
Verfasst am: 09.07.2008, 20:08 Titel: |
|
|
Code: | Screen 18,32
Dim As String Ftext ="S32BRBDU7ERRFHLLGD3LR3BD3BR5BL2BDU8D8R3EU4HLLGD4BR8BL2BDBU5" _
+ "UUER3FBD2BL5FR3FDDGL3HBR8BRBL2BU5D5FRREU5D8GLLHBU3BR8BL2BU3UERRFHLLGDFRRFDGLL" _
+ "HBR8BL2BDU7ERRFD7U7ERRFD7BUBR4BL2U4ERRFD4GLLHBR8BL2BDU6DERRFD5U4BD3BR4BL2"
Dim As Uinteger posy=70, posx = 90
Pset(posx,posy),0: Draw"C"+Str(Rgb(255,255,0))+Ftext
Pset(posx+4,posy),0: Draw"C"+Str(Rgb(255,155,0))+Ftext
Pset(posx+4,posy+1),0: Draw"C"+Str(Rgb(255,255,0))+Ftext
Pset(posx+2,posy),0: Draw"C"+Str(Rgb(255,155,0))+Ftext
sleep |
_________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 09.07.2008, 20:44 Titel: |
|
|
Sieht nice aus, volta.
Darf man fragen wie du das gemacht hast? |
|
Nach oben |
|
 |
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1876 Wohnort: D59192
|
Verfasst am: 09.07.2008, 21:18 Titel: |
|
|
Mit DRAW (Font) auf meiner HP
Download fontdraw.zip _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 10.07.2008, 14:12 Titel: |
|
|
Neue Version, neue CPUID Features (diesmal sogar von mir rausgesucht und umgesetzt )
Changelog:
-Added SSE4.1 support
-Added SSE4.2 support
-Added SSE4a support
-Added SSE5 support
-Added UMC support
-Added Cyrix support (Vendor)
-Added NexGen support (Vendor)
-Added Centaur support (Vendor)
-Added Rise Technology support (Vendor)
-Added SiS support (Vendor)
-Added Transmeta support (Vendor)
-Added National Semiconductor support (Vendor)
Wie man relativ gut sieht, ging es mir bei diesem Update hauptsächlich um die Streaming SIMD Extensions, und den bekanntesten CPU Herstellern.
Die neuen Streaming SIMD (Single Instruction, Multiple Data (Wow, hätte nie gedacht das ich das einmal auswendig könnte...)) Extensions wurden natürlich in den Report eingegliedert, SSE4.1 und SSE4.2 vor AMDs Erweiterungen SSE4a und SSE5a...
Zuletzt bearbeitet von 28398 am 10.07.2008, 20:15, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 10.07.2008, 19:38 Titel: |
|
|
28398 hat Folgendes geschrieben: |
Meiner Meinung schadets aber auch nicht, warum sollte man es also nicht machen?
|
Deine Optimierungen? Weil es in meinen Augen für so paar KB ohne triftigen Grund Zeitverschwendung ist. _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 10.07.2008, 20:14 Titel: |
|
|
Mao hat Folgendes geschrieben: | 28398 hat Folgendes geschrieben: | Meiner Meinung schadets aber auch nicht, warum sollte man es also nicht machen? | Deine Optimierungen? Weil es in meinen Augen für so paar KB ohne triftigen Grund Zeitverschwendung ist. | Wenn ich Spass daran habe, die Zeit dazu habe, und auch noch Lust, warum sollte ich es dann nicht machen?
@Topic:
Falls hier jemand einen Computer mit etwas neueren Prozessoren (AMD K10-Serie (Phenom) und neuere Intel Core 2 Duo/Quad) hat, würde ich ihn bitten zu schauen, ob die Features SSE4.1/4.2 (Intel), oder SSE4a oder SSE5a (AMD) richtig erkannt werden.
Ich glaube alle 45-nm Core2-Prozessoren von Intel haben SSE4.1 (SSE4.2 soll erst mit dem Core2-Nachfolger Nehalem erscheinen), jeder AMD Phenom hat SSE4a Support (Soweit ich weiss gibt es noch keinen Prozessor mit dem Bulldozer-Kern).
Dazu einfach den Report erstellen lassen, und nachschauen ob das stimmt.
Das wäre echt super! |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 10.07.2008, 20:17 Titel: |
|
|
28398 hat Folgendes geschrieben: |
Wenn ich Spass daran habe, die Zeit dazu habe, und auch noch Lust, warum sollte ich es dann nicht machen?
|
Ich hab nie gesagt, dass du es nicht langeweile-bedingt machen sollst.
Allerdings hast du dich damit so gerühmt, als wäre es extrem wichtig, nicht ein KB zu viel in der Binary stecken zu haben. Kleine Binarys sind toll, aber die paar KB sind in meinen Augen selbst für Analog-Modem-User sinnlos. _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 10.07.2008, 20:23 Titel: |
|
|
Mao hat Folgendes geschrieben: | 28398 hat Folgendes geschrieben: |
Wenn ich Spass daran habe, die Zeit dazu habe, und auch noch Lust, warum sollte ich es dann nicht machen?
| Ich hab nie gesagt, dass du es nicht langeweile-bedingt machen sollst.
Allerdings hast du dich damit so gerühmt, als wäre es extrem wichtig, nicht ein KB zu viel in der Binary stecken zu haben. Kleine Binarys sind toll, aber die paar KB sind in meinen Augen selbst für Analog-Modem-User sinnlos. |
Ich habe nie gesagt, dass das ultra-wichtig ist.
Das ist ebenfalls nicht das Primärziel dieses Projekts.
Das Primärziel dieses Projektes ist es, ein Systemanalyse und Diagnosetool zu schreiben, dass aus nur einer Datei (=Binary) besteht, und viele verschiedene Informationen über den Computer ausgibt.
Zudem soll das ganze soweit es Möglich ist, auf mehreren Platformen laufen. |
|
Nach oben |
|
 |
Mao
Anmeldungsdatum: 25.09.2005 Beiträge: 4409 Wohnort: /dev/hda1
|
Verfasst am: 10.07.2008, 21:56 Titel: |
|
|
Hast du vllt. nicht ausdrücklich so erwähnt, aber kommt in deinem ellenlangen Freuden-Post über die Optimierung so rüber.
Ich würde B2T vorschlagen, da der eigentliche Sinn des Topics ja die Präsentation deines Projekts war und nicht eine Diskussion über sinnvolle oder sinnfreie Minimal-Optimierungen. _________________ Eine handvoll Glück reicht nie für zwei.
--
 |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 11.07.2008, 03:16 Titel: |
|
|
Update
Changelog:
-Added section graphics
-Added name of graphics card
-Added graphics card manufacturer
-Added openGL version
-Added max. hardware lights
-Added max. texture size
-Added max. viewport size
-Added supported texture units
-Added stereo rendering detection
-Added openGL extension list
(Das witzige an der Sache ist, dass sogar schon vor dem Update vom 10.7.2008 die Größe die Binary exakt 60416 Bytes beträgt - sogar jetzt noch...) |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 12.07.2008, 19:49 Titel: |
|
|
Update
Changelog:
-If you're running an earlier version of windows (e.g. win98) fbSysMon will use now another function to retrieve memory information. On newer variants of windows it will be used the new function for that. |
|
Nach oben |
|
 |
The_Muh aka Mark Aroni

Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 12.07.2008, 20:06 Titel: |
|
|
Gibs davon auch ne linux-version?
Compilen kann ichs nämlich net _________________ // nicht mehr aktiv // |
|
Nach oben |
|
 |
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 12.07.2008, 21:00 Titel: |
|
|
Ich hatte schonmal erwähnt, dass es auf Linux läuft.
Aufgrund einer defekten VM und eines Hardwaredefekts kann ich jedoch nicht compilen... andLinux läuft schliesslich (noch) nicht auf AMD64. |
|
Nach oben |
|
 |
The_Muh aka Mark Aroni

Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 15.07.2008, 00:14 Titel: |
|
|
geht nicht, Compiler-Output:
test.bas(785) error 41: Variable not declared, Format in '.Runtime = Format(SI.uptime, "s") & " sec."'
test.bas(785) warning 12(0): Implicit variable allocation, Format
test.bas(787) error 67: Array not dimensioned, before '(' in '.Runtime = Format((SI.uptime/60)/60, "h") & " hours"'
... Noch fragen?
/edit: wenn ich die beiden zeilen lösche, bzw ein ' vorhänge (also zum Kommentar mache) dann kann ichs Compilieren, aber:
- CPU load
- Uptime
- Color depth
- Resolution
- Architecture
funzen nicht.
und die Ram-anzeige war beim ersten starten auch nicht korrekt.
Mein Sys: Archlinux Coredump, kernelversion: 2.6.25.10
Grafische Oberfläche: Gnome, version 2.22.3 _________________ // nicht mehr aktiv // |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|