Software

 Oktober 2005


-----
 

Ausgangssituation

Ein Computer ist nur so toll wie seine Software. Und diese gibt es wie Sand am Meer - auch kostenlos. Manchmal hätte ich aber gerne etwas, dass ich so noch nicht gefunden habe. Manchmal bin ich auch nur zu faul zum Suchen. Oder mir kommt eine Idee, die ich einfach mal ausprobieren möchte und dann suche ich Verzweifelt, ob nicht jemand ein Problem für meine schöne Lösung hat.  

   

Meine Lösung

Ich werde hier nach und nach ein paar von meinen kleinen Programmen vorstellen.
Vielleicht kann sie ja jemand brauchen - hat also ein Problem für meine Lösung.  

   


Hier eine Übersicht zum drinrumklicken:

Caps-Lock Taste ausbauen
Serielles Terminal
PERL installieren
Homepage bauen
Widerstände berechnen
Welche Rechner sind an?
Windows-2000 Rechner ratz-fatz runterfahren
Testen, ob es was neues auf meiner Homepage gibt
Sudoku Spielfeld
Passwort-Tresor
Datenblätter anzeigen
Webserver mit Atmel ATxmega Prozessor
Spannungsteiler dimensionieren
Taschenrechner für Bastler
UPX-Kompressor
OpenSCAD

 


Los geht's:
-----
 

Caps-Lock Taste ausbauen

[Bild(9.5k)]

sO eIN VERFLIXTER fEHLER: aLS iCH tab DRÜCKEN WOLLTE, BIN ICH AUF DIE cAPS-lOCK-tASTE gekommen.  

  Die Taste stammt aus der Schreibmaschinenzeit, wo man mit der Shift-Taste das ganze Typenbett angehoben hat. Damit der kleine Finger nicht abstirbt, hat ein Ingenieur den armen Sekretärinnen eine Feststelltaste spendiert. Aber heute?  

  Im Ernst: Mir hat die Taste bisher viel mehr geschadet als irgendeinen Nutzen davongetragen. Bisher hab ich bei allen Tastaturen die Taste rausgehebelt, eine T-förmige  

[Bild(3.0k)]

Musterklammer druntergelegt und die Taste wieder draufgesteckt, damit der Arbeitgeber nicht denkt, ich würde Tasten klauen.
Die Musterklammer verhindert zuverlässig die Betätigung!  

  Wenn man dieses Betriebssystem von Klein-Weich aus Redmond benutzt, kann man die Taste auch softwaremäßig abklemmen. Weil ich immer wieder vergessen hab, in welcher Zeitschrift ich gelesen habe, wie man das macht, hab ich das Wissen einfach in ein kleines Delphi-Programm gegossen.
Einfach runterladen und aufrufen. Das Programm ist selbsterklärend!  

  Ihr könnt euch das Programm unter folgender Adresse runterladen, und dabei ein letztes Mal die Nützlichkeit dieser bescheuerten Taste auskosten.  

[Bild(25.6k)]

Ja, der Dateiname ist wirklich Case-sensitiv!
Bedankt euch für die Idee bei Gunnar - ich hätte einfach einen Link eingefügt!  

  ACHTUNG: DIE SOFTWARE IST VERALTET!  

  Meine Software funktioniert nur bis Windows XP (ja, so lange gibt es diese Homepage schon). Aber zum Glück bin ich ja nicht der einzige Bastler mit diesem Problem. Bei Markus Melk findet man die Software CapsLock Goodbye 2.0.11 für Windows 2000/XP/2003/Vista/Win7/Win8. Die habe ich inzwischen auch im Einsatz und finde sie ausgesprochen super!
-----
 

   

Serielles Terminal

Wenn man öfters Hyperterm benutzen muss, weil man ZOC nicht kaufen möchte, und der tollen Animation am Programmstart genauso wenig abgewinnen kann, wie der Anti-Intuitiven Bedienung, dann ist der Moment gekommen, etwas Eigenes zu schaffen.  

  Ich gebe euch hiermit ein völlig unausgegorenes Stück Software, welches Daten von der seriellen Schnittstelle empfängt und in einem VT100 Terminal darstellt (also alle möglichen Escape-Sequenzen interpretiert). Tastendrücke werden natürlich auch über die Serielle versandt.  

  Ich nutze die Software zur Kommunikation mit den Einchip-Computern (z.B. PICs), die ich so verbaue. Die brauchen alle die gleichen Parameter: 8N1, No Handshake. Nur die Baudrate und die COM-Schnittstelle sind unterschiedlich.
Damit ich nicht immer einstellen muss, welche Parameter ich gerade brauche, hab ich die Einstellung der Baudrate und der Schnittstelle einfach in den Programmnamen eingebaut:
Nenn' die Software COM2_9600.exe, oder nenn' Sie COM1_38400.exe - Ratet mal, was passiert.  

  Sonderfunktionen: Fehlanzeige.  

  Nachtrag: Der Kram wird von mir jetzt nicht mehr weiterentwickelt - trotz (oder wegen) der vielen kleinen Unzulänglichkeiten.
Wozu auch? Ich bin auf ein Spitzenprogramm gestossen. Echt der Hammer: HTerm - ein beeindruckend komfortables (kostenloses) Terminalprogramm, für das ich mein Scheißprogramm glatt wegwerfen würde, wenn es nicht so praktisch wäre.
-----
 

PERL installieren

Ja, ihr braucht PERL!  

  Perl (nicht Pearl) ist eine Art Programmiersprache - und einfach nur genial! Deshalb nutze ich es recht gerne für Quick-And-Dirty Programme.
Perl ist quasi der Heißkleber des Programmierens:
Man kann damit sehr schnell und einfach alles mögliche mit Texten anstellen.  


Und weshalb solltet ihr das brauchen?
Einfach, weil ich eine Unmenge an Helferleins in dieser Sprache zusammengebastelt habe. Und wenn ihr auch nur eins davon nutzen wollt, braucht ihr PERL!  

  Als Unix/Linux Anwender habt ihr das normalerweise installiert. Als Windooze-Anwender: Das ActivePerl-Paket kann kostenlos bei ActiveState heruntergeladen werden. Oder ihr versucht es auf CPAN - der Internetseite für Perl. Ladet das Paket runter und installiert es halt.  

  Vorsicht vor Drittanbietern (Abzockfalle!).
Wenn man seine Adresse angeben soll (Registrieren), damit man ActivePerl bekommt, ist meist was faul...  

  Wenn ich an sowas gerate, gebe ich gerne eine der Adressen der Datenschutzbeauftragten an und nutze eine Wegwerf-Mail Adresse wie z.B. www.eintagsmail.de
Sollte ich dann aus versehen einen Vertrag über ein 192,- Euro Im Monat Internet-Abo abgeschlossen haben, landet die Zahlungsaufforderung aufgrund meiner miesen kleinen Urkundenfälschung wenigstens bei einem kompetenten Ansprechpartner (grins).  


 

  Wenn man irgendein Programmier-Problem hat, das irgendwie mit Texten oder Internet-Kommunikation zu tun hat, lohnt es sich oft, auf CPAN vorbeizuschauen um zu prüfen, ob es für das Problem nicht ein nützliches Perl-Modul gibt.  

Homepage bauen

Wie ich auf Making of... erklärt habe, generiere ich meine Seiten mit einem Satz aus 3 Perl Scripten. Die Scripte gibt's hier:  

  mkhtml.pl Wandelt eine Quelltextdatei in HTML um.
mkupload.pl Ermittelt die hochzuladenden Dateien und kopiert sie in ein bestimmtes Verzeichnis.
ftp.pl Schiebt die Dateien auf die Homepage. Natürlich müsst ihr Homepage und Passwort im Script ändern!  

  Wie man das Ganze einrichtet und wie die Verzeichnisse heißen müssen, hab ich noch nicht beschrieben. Entweder ihr findet es selber raus (einfach in die Perl-Scripte linsen) - oder fragt halt... Da diese Scripte leben , also bei Bedarf immer wieder erweitert werden, können sich die hier hinterlegten Programme schon mal ohne Ankündigung ändern.  

  Bisher hat sich allerdings niemand gemeldet, der diese Scripte einsetzen will. In der Software-Welt hat sich inzwischen auch viel getan, daher schweife ich mal kurz ab:
Inzwischen gibt es eine ganze Reihe von Content Management Systemen (CMS), mit denen es einem deutlich erleichtert wird eine eigene Website zu bauen. Zu den bekanntesten gehören wohl WordPress, Typo3 und Joomla. Sie funktionieren nach einem Baukastenprinzip und damit können viele Arten von Homepages erstellt werden. Besondere Kenntnisse in Programmierung muss man hierfür nicht haben und die meisten sind sogar kostenlos Open Source Anwendungen (wie meine Scripte ja auch). WordPress und viele andere CMS basieren auf der Programmiersprache PHP. Ihre Syntax ist an C und Perl angelehnt und diese Open Source Skriptsprache ist auch für Anfänger relativ einfach zu erlernen. Allerdings gibt es sogar PHP Programmierer, die sich auf die Skriptsprache PHP spezialisiert haben. Mit PHP hat man fast unbegrenzte Möglichkeiten, sowohl für den privaten als auch gewerblichen Bau von Websites. Für besondere und tiefergehende Umsetzungen von PHP-Anwendungen kann es auch Sinn machen, einen PHP Programmierer bzw. Entwickler zu beauftragen. In diesem Berufsfeld werden Anwendungen verwaltet und Websites sowie systembasierte Programme erstellt. Bei besonderem Bedarf einer Betreuung kann es auch gut sein, sich an eine PHP Agentur zu wenden. Eine solche Agentur hat Fachleute, die auf PHP spezialisiert sind und die kriegen auch Anforderungen an richtig komplexe Webseiten umgesetzt.
-----
 

Widerstände berechnen

Um z.B 7900 Ohm zusammenzubasteln braucht man welche Widerstände?  

  Diese Frage beantwortet r3_calc.pl für 2 und 3 Widerstände in Reihe. Die Eingabe erfolgt in Ohm. Beispielsweise 7k9 oder 0R72, wobei der Buchstabe R, K oder M (groß oder klein ) erkannt wird. Hier die Lösung:  

[Bild(41.9k)]

 

  Die Parallelschaltung von 2 bzw.3 Widerständen ermittelt man mit r3_calc_parallel.pl Das Progamm hat noch einen Schönheitsfehler: es listet auch Kombinationen, die durch reines Vertauschen der Widerstände entstehen. Gut, kann man sich halt eine Kombination aussuchen...  

  Inzwischen gibt's den Rechner bei mir auch als Online-Version unter
http://www.ne555.de/cgi-bin/r3.cgi  

  Update 2016:  

  Wenn man Javascript zuläßt, habe ich auch eine deutlich modernere Variante. Die bietet auf Wunsch die Möglichkeit, eine eigene Bauteilsammlung anzulegen. Beide Varianten kommen mit je einer einfachen HTML-Datei aus. Es müssen keine Bilder, CSS, JS oder JQuery Dateien nachgeladen werden. Man kann diese Datei also runterladen und dann offline benutzen.  

  Einfach mal ausprobieren:
Ohne eigene Bauteile
Mit eigenen Bauteilen
Geschrieben sind die beiden Tools in meiner neuen Lieblingssprache JavaScript . Die eigenen Bauteillisten speichert der Browser mittels "localStore" lokal auf der Platte.  

 
-----
 

Welche Rechner sind an?

In einem Netzwerk weiß man oft nicht, welche IP-Adressen belegt sind.
Dieses 230K kleine Programm listet alle mit PING erreichbaren Rechner auf: subnetping.zip  

[Bild(26.4k)]

Nein, keine Bildstörung - die IP-Adressen wurden bewusst unleserlich gemacht (ich wollt' nur mal ausprobieren wie das geht). Links sind die nicht erreichbaren Rechner (Timeout), rechts die Geräte, die geantwortet haben. Für einen weiteren Scan muss man das Tool neu starten.
Das Programm als Administrator starten (sonst hat das Programm kein Recht einen PING auszuführen) und den Punkt hinter der 3. Zahl nicht vergessen!  

 
-----
 

Windows-2000 Rechner ratz-fatz runterfahren

Mit der Zeit dauert es immer länger, bis mein PC runterfährt. Inzwischen nudelt der Ewigkeiten rum um irgendwelche Benutzereinstellungen zu sichern.  

  Windooze versucht einmal jede Sekunde die Benutzereinstellungen zu speichern. Und das bis zu 60 Mal. Also eine Minute warten auf nix - denn wenn das Speichern gehen würde, könnte er es ja gleich machen.
Auch lässt Windows den Prozessen 20s Zeit sich zu beenden. Anschließend schießt er sie einfach ab.  

  So'n Quatsch. Wenn ich will dass der aus geht, hat der AUS zu gehen! Was sollen die Anwendungen noch mal nach Hause telefonieren oder ewig auf nicht eintreffende Ereignisse warten? Das im Internet recherchierte Wissen, wie man dem PC Feuer unter'm Hintern macht, hab ich in ein kleines Delphi-Programm gepackt. Das gibt's (inklusive Sourcen) als fastshutdown.zip Wobei man eigentlich nur einmal das fastshutdown.exe starten muss. Damit kann man die Einstellungen in der Registry ändern - oder wieder die Standardwerte eintragen.
Geht für Win2k und XP.  

[Bild(11.7k)]


Ein wenig Vorsicht ist jedoch angebracht: Wenn man das Kill-Timeout recht kurz wählt, sollte man vor dem Turbo-Runterfahren alles gespeichert haben und am Besten alle Programme schließen. Sonst geht vielleicht doch mal was verloren...  

  Hier noch ein paar Alternativen:
Ab Windooze XP soll auch folgendes gehen: einfach eine Verknüpfung mit
shutdown.exe -s -t 00
erstellen. Dann wird der Rechner sofort ausgeschaltet, wenn man die Verknüpfung anklickt.  

  Ein anderer Tipp ist:  

----------------------------------------------------------------------
      1) CTRL-ALT-DEL drücken
      2) CTRL-ALT gedrückt halten
      3) Mit der Maus auf Shutdown klicken
----------------------------------------------------------------------

Aber dabei muss man ja immer selbst aktiv werden - und sich den Kram merken...  

 
-----
 

Testen, ob es was neues auf meiner Homepage gibt

Da der Wunsch an mich herangetragen wurde, eine Möglichkeit zu bieten, aus der Ferne zu testen, ob ich was neues geschrieben habe, bin ich heute mal die Gute Fee und schreib eine Software die ich überhaupt nicht gebrauchen kann!  

[Bild(2.1k)]

Ich hab einen Script gestrickt, der die Chronologie anzeigt, sofern es was Neues gibt. Sonst beendet er sich mit einer entsprechenden Meldung.  

  Das Perl-Script zabncheck.pl prüft einen eigens für EUCH eingerichteten Versionszähler auf dieser Homepage. Den werde ich jedes Mal verändern, wenn ich was neues habe. Das Script braucht natürlich PERL - siehe oben!
Für Unix-Anwender gibt's den Script auch mit anderen Zeilenumbrüchen: zabncheck.pl_unix  

  Das Script braucht Schreibrechte in seinem Verzeichnis. Es legt die Datei zabexcheck.dat an, in welcher einfach die zuletzt gefundene Zahl des Versionszählers gespeichert ist. Wenn der Versionszähler größer ist, wird der Firefox mit meiner Chronologie-Seite gestartet. Wer den Firefox nicht mag, muss halt den Script entsprechend abändern...
Zum Testen kann man übrigens die zabexcheck.dat Datei einfach mit einem Editor öffnen und die Werte verändern.  

  Den Script muss man dann gelegentlich z.B. jeden Tag/Woche einmal aufrufen (bitte nicht öfter!). Also ab damit in den Autostart-Ordner, als geplante Task einrichten oder für die Unixler: einen Cron-Job anlegen.  

  HINWEIS: im Mai 2010 wurden die Scripte geändert, da meine Homepage umgezogen ist. Die Script-Version von 2007 funktioniert demnächst nicht mehr. Bitte die aktuelle Version (Version 2010) benutzten.  

 
-----
 

Sudoku Spielfeld

Nachdem das Sudoku-Rätselfieber auch meine Familie gepackt hat, hab ich mir auch mal so ein Rätsel angesehen und bin gleich frustriert worden. Irgendwo hatte ich einen Fehler gemacht.
Blöd, dass ein Zettel keinen Undo-Button hat. außerdem gibt es Rätsel, die sind echt knifflig. Da wäre manchmal eine kleine Hilfe ganz nett...  

[Bild(8.9k)]

Also hab ich mal eben ein Spielfeld zusammengeklickt und ein wenig Know-how reinprogrammiert. Das Teil dient nicht dazu, jedes Rätsel selbsttätig zu lösen, dafür gibt es ja genügend andere Programme. Es ist auch kein Rätselgenerator.
Aber es kann dem Frust am Lösen vorbeugen. So kann das Spielfeld einen Tipp abgeben, welches Feld man sich mal genauer ansehen könnte. Und es kann analysieren, welche Ziffern auf welchem Feld überhaupt noch möglich sind und Testen, ob denn noch alles logisch ist.  

[Bild(14.8k)]

 

  Die Idee hinter diesem Programm ist es, dem Anfänger und Fortgeschrittenen bei Bedarf etwas zu helfen. Für Profis ist das wahrscheinlich weniger was.
Das Programm sudokulyse.exe kommt in der knapp 200KByte großen sudokulyse.zip Datei, die man sich irgendwohin entpackt. Ich hab ein paar Ausgangsspielfelder mit steigendem Schwierigkeitsgrad beigelegt, damit man gleich mal anfangen kann.
Wie man das Teil bedient, steht in der eingebauten (recht spartanischen) Hilfe. Die sollte man zumindest überfliegen, damit man weiß, wie man ein Ausgangsspielfeld eingeben muss.  

 
-----
 

Passwort-Tresor

Mit diesem Programm kann man Texte vor dem Zugriff anderer sicher schützen. Näheres dazu steht auf einer eigenen Seite: HIER  

 
-----
 

Datenblätter anzeigen

Zum fixen finden und Betrachten der unzähligen Datenblätter, die sich so mit der Zeit angesammelt haben. Näheres dazu steht auch auf einer eigenen Seite: HIER
-----
 

Webserver mit Atmel ATxmega Prozessor

Den ATxmega Prozessor finde ich so interessant, dass ich unbedingt was damit machen musste.
Also habe ich es mir angetan und den TCP/IP-Stack von Ulrich Radig so umgestrickt, dass er auf einem Atmel Atxmega128A1 läuft.  

  Das Teil ist nun Webserver und Telnet-Server, holt sich die Uhrzeit mittels NTP aus dem Netz und kann Daten zwischen serieller Schnittstelle und einem TCP/IP-Client austauschen.  

  Als Hardwareplattform dient ein AVR-Net-IO von Pollin und ein AVR ATxmega - Entwicklungsmodul von Alvidi. Auf dem Modul sind zuätzlich ein Spannungsregler, externes Ram, ein Micro-SD Kartenslot und 2 RS232-Pegelwandler verbaut.  

[Bild(135.1k)]

Die Software gibts hier: xmega_net_io_2009_11_11.zip
Näheres steht in der darin enthaltenen Readme-Datei.
Eine hilfreiche Seite für Umsteiger und XMEGA-Neulinge fand ich hier.
-----
 

Spannungsteiler dimensionieren

Einen Spannungsteiler aus 2 Widerständen braucht man in fast jeder analogen Schaltung. Mit der Formel U2 = U1 * R1 / ( R1+R2) kann man die Ausgangsspannung einfach berechnen.  

  Durch umformen kriegt man auch R1 oder R2 raus, wenn die anderen Werte gegeben sind.  

  Wenn ich aber z.B. eine Spannung von 5V auf 1V runterteilen will und für R1 mal einen 10K Widerstand annehme, dann brauche ich für R2 rechnerisch R2 = (U1-U2)*R1/U2 = 4*10000/1 = 40K.  

  Den gibt's natürlich nicht - also nehme ich 39K oder 47K. Oder soll ich besser für R1 mal 12K probieren?  

  Es ist jedesmal eine nervende Zirkelei.  

  Daher habe ich ein kleines Berechnungsprogramm geschrieben, welches mir in Zukunft dabei hilft.  

  Für einen ersten Eindruck gibt's drei Beispiele.
1) Die Widerstandswerte und die Eingangsspannung sind gegeben, Ausgangsspannung und Querstrom werden berechnet:  

[Bild(41.0k)]

Die Widerstandswerte lassen sich rauf und runter schrauben, wobei nur die Werte der entsprechenden Normreihe (z.B. E12) benutzt werden. Wer die Reihen nicht kennt, kann die verfügbaren Werte über 9 Dekaden in der Liste am rechten Rand ablesen.  

  2) Jetzt kommt die wirklich hilfreiche Funktion:
Wenn beide Spannungen bekannt sind, sucht der Rechner passende Widerstände raus. Dabei kann man den Strombereich in dem gesucht werden soll einschränken.
Hier mal das Beispiel um von 5V auf 1V zu kommen:  

[Bild(42.9k)]

 

  3) Und als letztes Beispiel suche ich mal den Widerstand R1, wenn alles andere bekannt ist:  

[Bild(41.1k)]

 

  Die Software gibts zusammen mit einigen anderen *.exe dieser Seite hier: 43exe.zip (147K, Version 1.4)
Und der Quellcode (Delphi 5) dazu: spannungsteiler.zip (27K - echt, mehr ist es nicht)  

 
-----
 

  Für die Berechnung von Hochspannungsteilern habe ich auch was gestrickt.
Dabei gibt man neben den Spannungen an, wieviel Spannung und Leistung ein einzelner Widerstand verträgt. Das Programm gibt dann aus, wieviele Widerstände man in Reihe schalten muss. Dabei wird auch ein Lastwiderstand (RL) berücksichtigt.  

  Hier ein Beispiel für eine solche Berechnung:  

[Bild(35.0k)]


Die Software dazu ist hier drin: 43exe.zip (143K, Version 1.5)
Und der Deplhi 5 Quellcode dazu: hv_teiler.zip (schlappe 21K)  

 
-----
 

Taschenrechner für Bastler

Warum auch immer verschwindet der Taschenrechner neben meinem Computer immer wieder. Genau dann, wenn ich ihn brauche ist er nicht da!  

  Aber warum brauche ich eigentlich einen Taschenrechner, wo ich doch einen dicken Computer habe, der tausendmal Leistungsfähiger ist?
Ganz einfach: Ergonomie!  

  Die Windows-Taschenrechner sind auf Mausbedienung ausgelegt. Zwar kann man die auch mit der Tastatur bedienen, muß nach der Tastenbelegung aber länger suchen. Wenn man das erste Mal versucht, in den Windows-eigenen Taschenrechner 4,7e-9 (für einen 4,7nF Kondensator) einzugeben wird man das verstehen.  

[Bild(41.9k)]

Man kann nicht etwa 4,7e-9 tippen. Nö, wie man sich aus dem 9. Kapitel der Hilfestellung zusammenreimen kann, muss man statt e das x und statt Minus auf F9 drücken. Also einfach die Tasten 4 , 7 x F9 9 tippen. Oder halt wild mit der Maus rumklicken, da man das nach 3 Wochen natürlich wieder vergessen hat.  

  Weil mich das gestört hat, habe ich mir gedacht, mal eben einen Taschenrechner selbst zu programmieren. Das ist ja eigentlich eine typische Übungsaufgabe die schon hunderte vor mir gelöst haben. Ich war dann doch erstaunt, auf wieviel Probleme man bei einem so trivial erscheinenden Programm stößt! Dauernd hat man es mit Überlauf-, Konvertierungs- und Rundungsfehlern zu tun.  

  Aber jetzt isser da: Mein persönlicher Taschenrechner ohne Mausbedienung - ein Tastenrechner!
Und so sieht er aus:  

[Bild(9.0k)]

Völlig unspektakulär! Aber mit ein paar ungewöhnlichen Eigenschaften.  

  In den Rechner kann ich 4,7e-9 eingeben und bekomme das auch als Wert. Ungewöhnlich ist, dass man auch 4,7n oder 4n7 eingeben kann.
Damit versteht der Rechner auch 10n*47k  

  Die Tastenbelegung kriegt man mit der Fragezeichen-Taste (oder ß):  

[Bild(88.9k)]

Ein paar Sonderfunktionen:  

* Da man den Kehrwert recht häufig braucht, liegt er auf der Leertaste.

* Modulo berechnet den Rest beim ganzzahligen Teilen - eine Funktion die ich leider noch auf keinem Taschenrechner gefunden habe. Das ist eine praktische Funktion, wenn man z.B. einen Raum mit 2,10m Länge hat und dort Spanplatten von 62,5cm Breite verbaut. Wie breit ist dann die letzte Platte? Genau: 210%62,5=22,5

* Zwei parallel geschaltet Widerstände mit 3k3 und 47k berechnet man mit 1 / (1/3300 + 1/47000) = 3083,5. Auf meinem Rechner gibt's dafür die Parallel-Funktion: man tippt dafür 3k3|47k=

[Bild(11.7k)]

 

  Die Software ist nur eine einzelne Datei.
Es gibt keine Hilfedatei, keine Konfiguration, keine Registrierung, keine Lizenzvereinbarung und das Programm muß nicht installiert werden. Die Benutzung erfolgt einfach durch starten der Datei - natürlich auf eigene Gefahr (Wer hat Angst vorm Tastenrechner?)  

  Viele Funktionen könnten noch eingebaut werden, aber für meinen Bastel-Rechenbedarf reicht's schon.  

  Einfach mal runterladen und ausprobieren: 43exe.zip  

  Und hier der Quelltext dazu (für Deplhi 5): tastenrechner.zip (211K)  

 
-----
 

   

UPX-Kompressor

Das Programm UPX komprimiert Programme (*.exe Dateien) und bastelt einen automatischen Entpacker davor. Ein so komprimiertes Programm kann man ganz normal starten. Der Effekt ist, dass das Programm weniger Platz auf der Platte braucht und meist auch schneller startet.
Und ich spare Platz auf meiner Homepage.  

  Damit ich sowas wie meine Spannungsteilerprogramme mal eben komprimieren kann, ist die Kommandozeilenversion von UPX unbequem. Da es die grafischen Oberflächen zu UPX noch nicht gab, hatte ich irgendwann mal ein simples Programm geschrieben, welches eine Dateien per Drag-Drop entgegennimmt und dann UPX aufruft.  

  Das Programm ist so simpel und bequem, dass ich mir die inzwischen existierenden UPX-GUI Programme noch nicht angesehen habe. Ich veröffentliche meinen Kram hier jetzt, damit man sich notfalls abgucken kann, wie man das mit dem Drag&Drop unter Windows machen kann.  

  Quellcode und Programme: upxcompress.zip  

  Die beiden Dateien im Unterverzeichnis Programme irgendwo in ein Verzeichnis auf der Platte kopieren und eine Verknüpfung auf UPXcompress.exe auf dem Desktop ablegen.  

  Es reicht, die zu komprimierende Datei auf das Symbol auf dem Desktop zu ziehen, man muß UPXcompress.exe nicht vorher starten. Ich habe UPX in Version 3.5 beigepackt. Eventuell sollte man sich eine neuere Version holen.  

 
-----
 

OpenSCAD

Zum konstruieren von 3D-Objekten nutze ich OpenSCAD. Das ist eine kostenlose CAD Software in der man sich Objekte nicht mit der Maus zusammenklickt, sondern sie in Textform beschreibt. So erzeugt cube([20,25,60]); einen Quader mit den Kantenlängen 20mm, 25mm und 60mm. In einem Vorschaubild wird dieser dann angezeigt. Die Maus wird nur benutzt, um die erzeugten Objekte im Vorschaubild von allen Seiten zu betrachten. Einen Zylinder erzeugt cylinder(d=10, h=50); , den gleichen Zylinder in 6-eckig bekommt man mit cylinder(d=10, h=50, $fn=6);  

  Das Programm ist anfangs recht gewöhnungsbedürftig, aber man bekommt nach einer Weile damit auch ziemlich komplexen Kram hin. Ein riesen Vorteil: bisher wurde ich noch nicht einmal von Programmfehlern genervt. Super Qualität!  

  Um meine häufigsten Befehle nicht immer wieder tippen zu müssen, habe ich mir mit mittels der Software AutoHotKey (AHK) Hotkeys für OpenSCAD gebastelt. Dazu muss man sich AHK installieren und dann meinen AHK Script openscad.ahk herunterladen und doppelklicken. Bei mir liegt der Script im Startup-Ordner von Windows und ist damit immer aktiv.
Der Script bewirkt, dass nur in OpenSCAD einige Tasten eine neue Bedeutung haben. Ihr könnt den Script mit einem Editor an eure Bedürfnisse anpassen, meine Version ist halt schon mal eine gute Grundlage.  

  Hier meine momentanen Tastenkürzel nach Alphabet:  

----------------------------------------------------------------------
Alt-c: cylinder()
Alt-Shift-C cube([]);  Cursor steht in neuer Zeile (Siehe Alt-q)
Alt-d: difference() {  } - gleich mit union() als erstem Element
Alt-f:  Bietet durchmesserabhängige Anzahl Segmente bei runden Dingen (Statt $fn) -  man setzt dann $fs=1 für grobe und $fs=0.3 für feine Auflösung. Spart beim Entwerfen Rechenzeit.
Alt-h: hull() {  }
Alt-i: intersection(){  }
Alt-l linear_extrude() {  }
Alt-m: mirror([]) 
Alt-Shift-M: minkowski() {  }
Alt-n: $fn=
Alt-q: cube([]) ;   Cursor steht zwischen eckigen Klammern  (q klingt wie Anfang von cube)
Alt-r: rotate([])
Alt-Shift-R: resize(newsize=[])
Alt-s: scale([])
Alt-t: translate([])
Alt-Shift-T: translate([0,0,-0.01])   Nutze ich oft, damit senkrechte Bohrungen an den Grenzflächen nicht flimmern
Alt-u: union() {  }
Alt-x: text  mit linearExtrude und Textattributen (zum rauslöschen der unbenutzten Attribute)
Strg-0 .. Strg-9: color()   - Zehn verschiedene Farben um Objekte schneller zu finden
----------------------------------------------------------------------
Kommentieren
   
Startseite

Diese Seiten sind darauf optimiert mit möglichst jedem Browser zu funktionieren.

Aber der Seitenquelltext (strg-U) sieht auch interessant aus, zumindest wenn man ihn mit einem Monospace Font in sehr kleiner Schriftgröße betrachtet.

Valid HTML 4.01! CSS ist valide!